Just a general question - and some remarks !

Give some feedback on openEMS.

Moderators: thorsten, sebastian

Post Reply
hwe
Posts: 54
Joined: Mon 17 Dec 2012, 14:58

Just a general question - and some remarks !

Post by hwe » Mon 17 Dec 2012, 16:12

Hi,
over the last five to ten years I was following the open source / freeware software communities effort to establish a software package for EM field simulations (and EDA programs in general) to replace the commercial software tools like CST,HFSS,ADS,AWR,Sonnet ...etc.

There were some very nice approaches from universities, but most of them did not survive or were not developed any further because the creators / inverntors left the university or did not find time to maintain the package. As an example the package from TUM - I forgot the name - was stopped because the inventor left the university. Another tool was newly established for commercial use (no open source) by Petr Lorenz from the same departement of TUM.
Another example is QUCS (circuit simulator) as it is very nice to use, if you know the commercial tools like ADS or AWR. But it seems to face the same problems with maintainance and further development of the package occur now, because a new project calles QUCSStudio has been invented - hopefully QUCS will be continued and maintained further on !
Other packages like MEEP, or FreeFEM, Elmer and the whole CAElinux package do not have nice examples for RF / EM simulations and seem very complicated in use (at least for me, as I am a RF engineer and not a computational field theory specialist) and are mainly used for thermal, fluid or mechanical simulaitons.

Your OpenEMS package seem to be advantegous as uses existing opensource packages (Octave, Paraview, CSXCad) and you work on interfacing with even more existing open-source programms (like FreeCAD) which are well known - to simplify the entry of the structures. This allows the use of OpenEMS on "real" designs from other CAD packages and will hopefully save time - while the developers concentrate on the FDTD core. You also have tutorials for Microstrip, waveguides and antennas --> examples are the best advertisement for a tool. I think is is the right way to go !

I have some general questions on OpenEMS and your decision to create the package:
1) Why did you decide for FDTD and not for FEM (e.g. for FEM the CAElinux-package would provide already existing programms under GPL) ?
2) Why did you create your own FDTD engine instead of using aready existing FDTD engines (like meep, angora or other) ?
3) What license is OpenEMS (is it GPL) ?
4) Octave is a very good decision as scripting interface - is it possible to interface with scilab as well ?

I wish you and all the users that the OpenEMS package will survive a long time and will be continously maintainend under open-source !
I hope the lifetime of OpenEMS project is NOT limited to the time of dissertation of the creator/inventor and maintainance will stop after him/her leaving the university !

Best wishes and a long staying power for the project and the maintainers !
HWe

thorsten
Posts: 1393
Joined: Mon 27 Jun 2011, 12:26

Re: Just a general question - and some remarks !

Post by thorsten » Mon 17 Dec 2012, 19:57

Hi HWe,

thanks for this extensive feedback!
I hope the lifetime of OpenEMS project is NOT limited to the time of dissertation of the creator/inventor and maintainance will stop after him/her leaving the university !
Yes it is true that I work at a university and will finish my dissertation hopefully next year. But I'm not going to abandon openEMS that easily.
Sebastian for example left the university some time ago and he is still contributing and even maintaining the Linux binary packages. Furthermore I'm already developing openEMS mostly in my spare time at home and will continue to do so... Unless of course I would realize some day, that nobody is actually using openEMS any more...
Your OpenEMS package seem to be advantegous as uses existing opensource packages (Octave, Paraview, CSXCad) and you work on interfacing with even more existing open-source programms (like FreeCAD) which are well known - to simplify the entry of the structures. This allows the use of OpenEMS on "real" designs from other CAD packages and will hopefully save time - while the developers concentrate on the FDTD core.
Yes, this is where openEMS draws most of its usability by using lots of available software/libraries... e.g. Qt, vtk, boost, tinyxml, fparser, cgal etc...

To your questions:
1) FEM and FDTD are really fundamentally different. FEM just cannot handle large scale problems. While the memory and computational cost for FDTD increase linear with problem size, FEM scales with power of ~2?! That does not mean FEM is a bad method, just that it's strength are in small and oddly shaped structures which are suited to the unstructured mesh. FDTD is very efficient, but limited to its rectilinear meshes...
2) Every free FDTD algorithm I looked at had something I really did't like. E.g. Meep can only handle homogeneous meshes and has a lot of strange normalizations... Furthermore I wanted to implement the EC-FDTD method developed at our lab which has some advantages over the conventional FDTD. Have a look at our recent jounal paper: http://dx.doi.org/10.1002/jnm.1875
3) Yes it is GPL, the CSXCAD and QCSXCAD libraries are LGPL
4) I have not tried scilab, if it can run Matlab code, it should be possible to make the necessary changes... openEMS itself is after all just a command line program looking for an xml file to run... Maybe someone would like to look into it??

regards
Thorsten

hwe
Posts: 54
Joined: Mon 17 Dec 2012, 14:58

Re: Just a general question - and some remarks !

Post by hwe » Mon 17 Dec 2012, 20:36

Hi Thorsten,
your answer sounds promising !
I will definitively look into OpenEMS over the christmas weeks, as I have some spare time now and a "real" project I am working on during my daily work as RF designer. During that time I have full access to a HFSS v11 and Momentum (ADS) version for comparison purposes and if time allows I will post the comparison results here in the forum.

As I mentioned previously, the (in my opinion) most important thing to keep such a project alive is a big number of examples and application tutorials which can be adopted and modified according to the users needs. Engineers in industry or self-employed design-engineers cannot spend a lot of time to study and evaluate source code or theoretical applications during worktime - they need to do it in their spare time. This is why QUCS and Scilab became so popular - the more people can use it easily with examples, the more people will contribute and support and extend the software ! As I also mentioned, OpenEMS seems to work towards this direction !

So enough of blabla, I will start testing ...... ;-)

sebastian
Posts: 114
Joined: Mon 27 Jun 2011, 12:36
Contact:

Re: Just a general question - and some remarks !

Post by sebastian » Mon 17 Dec 2012, 22:12

Hi hwe,

the new scilab version is able to read and write xml files. This should make it simple to convert our Matlab scripts to Scilab. The automatic conversion did not work well, by the way.

OpenEMS will never be a competitor for commercial software packages, because of the missing support. The required GUI is also missing. But there is in fact a need for an advanced FDTD code. OpenEMS is fully open source and that makes a difference. It is important for researchers and also for free lancers and hobbyists. It is advanced enough to solve real world problems and at the same time easy to extend and adapt.

A few days ago a got dozens of Eagle layouts from Microwave and RF Technology laboratory (University Duisburg-Essen). These designs will serve as examples, to show how to analyze microstrip circuits.

regards,
Sebastian

Post Reply