Hi Sergey!
On Sat, Mar 1, 2008 at 9:57 PM, Sergey Dolgov <sol...@gmail.com> wrote:
Hi Robert, Ondrej, others.
For some time now I've been planing to learn finite element method with the purpose of applying it to electrostatic problems arising in field emission calculations. I'm also fond of free software tools. I've been thinking of using libmesh, which seems to be rather powerful, but currently I would say that it is too hardcore for me, given how weak my knowledge of C++ is; plus I don't yet need advanced capabilities like parallel computation.
So while reading about sympy, I've stumbled upon sfepy, and I feel optimistic about it because 1) it looks like a still relatively simple implementation, and 2) it is wrtten mostly in Python (I've got some experience with Python, numpy, scipy, matplotlib).
What sfepy is lacking is of course documentation. I've read some introductory texts on FEM, but certainly don't feel knowledgeable enough to figure how to use sfepy right away. I wold say I need to close the gap between pure theory and sfepy implementation. Thus I've got two questions:
Do you think that using sfepy to learn FEM in general is a good idea? (By "using sfepy to learn FEM" I mean 1) learning how to describe the problem so that sfepy can solve it and 2) learning how sfepy actually works so that I can actually make modifications myself)
What book would you recommend as a guide to studying FEM (is there one that sfepy implementation follows more closely than the others)?
Sorry if my questions look silly -- they certainly do to me :)
Nonetheless, thanks for the great work!
Thanks for the feedback. I am glad that sympy is also useful in a way to build the community of people doing scientific calculations. Together with scipy + numpy + matplotlib, we want to have a nice environment for doing basically anything. The community around all these these tools is wonderful.
To learn about FEM, you can try my notes here:
http://libmesh.sourceforge.net/wiki/index.php/Main_Page#Examples
mainly this:
http://ondrej.certik.cz/site_media/libmesh/fem.ps
Let me know if it is useful and if you don't understand something, just ask.
From my own experience, sfepy is much easier to use than libmesh, but
As to doing electrostatics, that is perfectly possible with sfepy. But the documentation is missing, you need to read the sources directly. that's because I know already Python and also because Robert helped me write the solver for things that I needed. I think you won't loose time learning it. If you decided you don't like it, you can always write something on your own.
Right now I am actually in Austin at the Enthought headquarters, it's awesome to discuss things directly with people like Fernando (ipython), Travis (numpy). So while I am here I will visit the libmesh guys here and definitely discuss ways of doing FEM with them.
Ondrej