Giter Club home page Giter Club logo

agros2d's People

Contributors

certik avatar deniq avatar fmach avatar karban avatar l-korous avatar lukaskoudela avatar panek50 avatar ppkk avatar tonda avatar vkotlan avatar vopickafrantisek avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

agros2d's Issues

Flux calculation

Is it possible to calculate magnetic flux through the surface in magnetostatic simulationin the postprocessor? And another thing: Is it possible to calculate coils inductance and/or mutual inductances?
If not, it would be nice to have this option, especially first one seems to be easy to implement as another result from the surface integration.

building under qt5

I am attempting to build this from source in ubuntu (trusty) without using a PPA (I intend to try to install on an Arch machine so this is practice on an easier system to learn how) and having trouble. I wanted to use QT5 so I followed the steps in the install guide for qt5, but cmake fails with vague errors. I looked at CMakeLists.txt and changed line 22 to
SET(WITH_QT5 YES)

this changed the output of cmake . to claim that there is no cmakelists.txt file in the hermes directory. IS there a build step missing? Do I need to manually build Hermes first? Help a newb out.

Fix welcome message according to the latest Hermes2D

class Hermes2DLogoMessage {
public:
Hermes2DLogoMessage() {
printf("\n-------------------------------------------------\n");
printf(" This application uses Hermes2D.\n");
printf(" Hermes2D is a C++ library for rapid \n");
printf(" development of adaptive FEM and hp-FEM solvers\n");
printf(" developed by the hp-FEM group at UNR\n");
printf(" and distributed under the GPL license.\n");
printf(" For more details visit http://hpfem.org/.\n");
printf("-------------------------------------------------\n");
fflush(stdout);
}
};

Postprocessor panel

It would be great to configure postprocessor options from the front panels. Now to control what kind of result is displayed, we have open new window "Scene properties". Moreover some options are hidden in Tools->Options->View->Postprocessor (at least 4 clicks to target :(). I'm deeply convinced that "user experience" will benefit a lot if we make postprocessing easier.

ps.
This is my first oficial Issue, so let me introduce myself. My name is Bartosz Sawicki, and two weeks ago Pavel showed me Agros2d on CPEE conference. And I loved it - I think that it is perfect for teaching students basics of EMF and FEM. Now I'm finishing polish translation.

Curvilinear elements

Add basic support for curvilinear elements (arcs only) using output from Triangle.

Segfault with "none" boundary

When external edge is not connected with any boundary condition, program closes with segmentation fault. This is obviously incorrect model, but it shouldn't lead to Segfault.

$ ./agros2d
Segfault caught. Printing stacktrace:
Necessary function backtrace() missing.
Done. Exiting the program.

Tested on 'hpfem/master' using Windows and Linux.

Moving objects by mouse

This is nothing new, but maybe we could improve a way in which elements are moved in the preprocessor panel. I get used to ++ (it is definitely not intuitive for beginners).

This time I'd like to write about implementation of moving algorithm, which makes object moves "delayed" comparing to the mouse pointer.
It is only my guest, but it seems that Agros2D is using MouseMove event, which is not to precise about relative location of the mouse pointer. It shoud be more accurate to store original location of the mousePress event, and calculate difference from current coordinates. Does it make sense?

Test

Testing issue

warning for negative radius

I suggest to add warning if user choose node with negative radius.

When I was starting with agros2d, I had problems related with drawing geometry for axis-symmetrical cases. You have to avoid nodes with negative radius. So, for example, if you draw full circle, you will actually get two spheres, so the solution will be doubled.

XSD configuration

When attempting to configure cmake, I get the following error which does not seem to be addressed in the installation README:

CMake Error at hermes/CMakeLists.txt:330 (find_package):
By not providing "FindXSD.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "XSD", but
CMake did not find one.

Could not find a package configuration file provided by "XSD" with any of
the following names:

XSDConfig.cmake
xsd-config.cmake

Add the installation prefix of "XSD" to CMAKE_PREFIX_PATH or set "XSD_DIR"
to a directory containing one of the above files. If "XSD" provides a
separate development package or SDK, be sure it has been installed.

Compilation failed

Freshly cloned repository does not compile.
$ ./agros2d.sh comp
(...)
make[1]: Entering directory `/home/sawickib/agros2d/hermes2d'
g++ -c -m64 -pipe -fopenmp -O2 -w -D_REENTRANT -fPIC -DQT_WEBKIT -DNOGLUT -DWITH_UMFPACK -DH2D_DISABLE_MULTIMESH_TESTS -DWITH_PARALUTION -DWITH_MUMPS -DHAVE_FMEMOPEN -DHAVE_LOG2 -DWITH_MUMPS -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I../3rdparty/paralution/src -Iinclude -Iinclude/adapt -Iinclude/boundary_conditions -Iinclude/function -Iinclude/integrals -Iinclude/mesh -Iinclude/quadrature -Iinclude/projections -Iinclude/refinement_selectors -Iinclude/shapeset -Iinclude/space -Iinclude/views -Iinclude/weakform -I../hermes_common -I../hermes_common/include -I../hermes_common/include/solvers -I/usr/include/google -I/usr/include/suitesparse -I/usr/include/google -I. -o build/api2d.o src/api2d.cpp
src/api2d.cpp:25:42: fatal error: xercesc/util/PlatformUtils.hpp: No such file or directory
compilation terminated.

command "modifyboundary()" doesn't work properly

hi, i tried this simple script with Agros 2D 2.0.2.1173 under windows 7 x64

model

newdocument("unnamed", "planar", "heat", 1, 2, "disabled", 1, 1, 0, "steadystate", 1, 1, 0)

boundaries

addboundary("adiabatico", "heat_heat_flux", 0, 0, 0)
addboundary("interno", "heat_heat_flux", 0, 7.69, 20)
addboundary("esterno", "heat_heat_flux", 0, 25, 0)

materials

addmaterial("isolante", 0, 0.04, 0, 0)
addmaterial("laterizio", 0, 0.25, 0, 0)
addmaterial("calcestruzzo", 0, 2, 0, 0)

edges

addedge(-1.0836, 0, 0, 0, 0, "interno")
addedge(0, 0, 0.3, 0, 0, "interno")
addedge(0.3, 0, 1.3836, 0, 0, "interno")
addedge(1.3836, 0, 1.3836, 0.2, 0, "adiabatico")
addedge(1.3836, 0.2, 1.3836, 0.3612, 0, "adiabatico")
addedge(1.3836, 0.3612, 0.3, 0.3612, 0, "esterno")
addedge(0.3, 0.3612, 0, 0.3612, 0, "esterno")
addedge(0, 0.3612, -1.0836, 0.3612, 0, "esterno")
addedge(-1.0836, 0.3612, -1.0836, 0.2, 0, "adiabatico")
addedge(-1.0836, 0.2, -1.0836, 0, 0, "adiabatico")
addedge(0.3, 0, 0.3, 0.2, 0, "none")
addedge(0.3, 0.2, 0.3, 0.3612, 0, "none")
addedge(0, 0, 0, 0.2, 0, "none")
addedge(0, 0.2, 0, 0.3612, 0, "none")
addedge(-1.0836, 0.2, 0, 0.2, 0, "none")
addedge(0.3, 0.2, 1.3836, 0.2, 0, "none")

labels

addlabel(-0.1, 0.201, 0, 0, "isolante")
addlabel(-0.1, 0.1, 0, 0, "laterizio")
addlabel(0.001, 0.001, 0, 0, "calcestruzzo")
addlabel(0.301, 0.201, 0, 0, "isolante")
addlabel(0.301, 0.1, 0, 0, "laterizio")

solve()
print surfaceintegral(0)['F']

modifyboundary("interno", "heat_heat_flux", 0, 4, 20)
solve()
print surfaceintegral(0)['F']

but both prints show the same value -6.4492

although two separate script without modifyboundary() print two different values (-6.4492 vs -6.46363) modifying directly the boundary creation with addboundary("interno", "heat_heat_flux", 0, 7.69, 20) to addboundary("interno", "heat_heat_flux", 0, 4, 20)

in conclusion, it seems that the command modifyboundary() has no effects on the boundary previously added.

Best Regards

Segmentation fault on ubuntu

If I want to add a field I get a segmentation fault error and the applications crashes. This problem occurs under ubuntu 15.04 and ubuntu 15.10 for both the 4.0 and the 3.2 versions from the download page.

I couldn't try it with a freshly compiled version because the compilation doesn't work, too.

Move nodes by mouse

It would be great if we could enable user to transform point coordination not only by Transform dialog, but also by natural mouse movement. I image that one can drag selected nodes in similar way like it can be done in Inkscape, for example.

Please ship the plugin generator with binary distributions.

I downloaded agros2d through the Ubuntu ppa and modified the resources/modules/ ... xml. Later, I realized the actual solvers were using a precompiled version of the module in the /usr/lib directory. I looked around, but don't see a way of regenerating these plugins with the binary distribution.

Did I miss something? If not, it would be great to include the generator project with the binary distribution so that I can play around with new modules without having to clone the entire git repository.

Thanks, and nice work overall!

Memory management

Hello,

What could be the cause for such an error:
Mesh View: Linearizer (initial mesh) processing failed: Hermes::realloc_with_check() failed to reallocate 194799600 bytes.

I am currently modelling an ac machine, and gemetry isn't too difficult. The PC i am working on has Win10, 4GB of RAM and intel i3 CPU.

Other thing i am just curious of is, why there isn't option to define field depth for post calculations ?

Error browsing boundary types in modifyBoundary in pyfield.cpp

It will only work for the first boundary type in boundaryTypes(), the other valid boundary types will throw an exception

 // browse boundary types
    foreach (Module::BoundaryType boundaryType, sceneBoundary->fieldInfo()->boundaryTypes())
    {
        if (QString::fromStdString(type) == boundaryType.id())
        {
            sceneBoundary->setType(QString::fromStdString(type));
            break;
        }
        else
            throw invalid_argument(QObject::tr("Wrong boundary type '%1'.").arg(QString::fromStdString(type)).toStdString());
    }

Snap to grid toolbar

In my opinion snapping to grid is one of the most important features of vector graphic design interface. It would be more comfortable if one could control grid and snapping from front window. Maybe we could add toolbar with three icons: show grid, snap to grid, show rulers?

agros2d-remote doesn't work properly

Hi, I tried the following commands under win7 pro x64 and under ubuntu 12.04 (found on the documentation in this repository: https://github.com/hpfem/agros2d/blob/master/resources_source/doc/source/program_features/program_features.rst#remote-control )

agros2d-remote -script "./data/script/electrostatic_axisymmetric_capacitor.py"

doesn't work under win nor under ubuntu (even trying --script and /script)

altough commands

agros2d-remote "opendocument("./data/electrostatic_planar_capacitor.a2d")"
agros2d-remote "solve()"

work under windows (but don't work under ubuntu)

maybe it could be an issue relative to an Unicode caveat in Qt

http://stackoverflow.com/questions/2918353/obtaining-command-line-arguments-in-a-qt-application

Regards

Meshing does not work when using X11-Forwarding

Rather strange problem: The meshing fails when running Agros2d over X11 Forwarding.

Steps to reproduce / how I ran it:

  • Install a virtual machine with ubuntu 13.10, amd64
  • add agros2d ppa (see Download page) and install
  • ssh into the vm ( -Y option for X11Forwarding)
  • launch agros2d and open some example (i used "Separator.a2d")
  • try to generate the mesh -> Error: "Mesh: Mesh loading failed: Vertices in element 0 share coordinates: [125, 146, 223]."

I tried again from "inside" the vm (without forwarding) and it works.

This is not a severe problem but somehow strange.

Minimim edge length

It looks like minimum edge length is 10um (10e-6m) ? Is there a way to overcome this limitation ?

Missing parenthesis in poisson equation label

On Wed, Mar 23, 2011 at 10:24 AM, Jakub Lev [email protected] wrote:

Hello,
in the module for electrostatic field there is equation div e grad f =
r. Is it correct? As for us it is not Poisson's equation. Maybe div(e
grad f) = r? We think, that both parenthesis are missing.
Thank you for answer and for very good program.

With regards, Jakub

Drawing vector fields.

Something seems to be wrong with drawing vector fields. Main scene window stop to respond when 'Vectors' option is marked on "Scene Properties". After moment it even change to completely black.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.