Newbie to openEMS

Give some feedback on openEMS.

Moderators: thorsten, sebastian

Post Reply
Tbur
Posts: 2
Joined: Sun 22 Feb 2015, 20:18

Newbie to openEMS

Post by Tbur » Tue 24 Feb 2015, 23:33

Hi all,
I'm a newbie to openEMS and octave too but after the tutorials and examples I've got anything to work fine (more less...). In the past I calculated a couple of projects with the Cray LC code (available from Kevin Thomas kjt@cray.com) so fortunately the concepts behind FDTD are known. I experienced OpenEMS as a very powerfull tool. It is able to crunch very large (in terms of wavelength !) problems e.g. 214 x 15 x 15 wavelengths with a average grid resolution of wavelength/15, about 2.5e8 cells and a peek memory about 18GByte ! With other very expensive and well known FEM based tools no chance! Memory usage of OpenEMS is very moderate compared to those tools.

Here some general questions:

1) What about the "et" and "ht" files (not the *.vtr dump files for Paraview!) in the result directory. They can have some significant size and contail a 2 column data set . What's the purpose of that files ?

2) With my project it would be convenient for me to run at first a silent simulation without any dump and after the wavefront reached the other end of the sim box 214 wavelengths away to "switch on" any dump because only from that time on dumps are meaningfull and necessary. That for example can be managed with Cray LC.

3) Is it possible to stop the simulation, then dump the simulation state, change something (no geometry, no material but add or change probes, dumps e.g.), reload the state and proceed with the simulation ?
This is possible with Cray LC.

Maybe some suggestions for future development.

I use the win 64 bit Version of OpenEMS.

Hardware : INTEL XEON E5 (16 Threads), 128GByte RAM
It's a fine tool. I appreciate it very much !

Best regards

Thomas Burchard

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

Re: Newbie to openEMS

Post by thorsten » Wed 25 Feb 2015, 18:18

Hi,
With other very expensive and well known FEM based tools no chance! Memory usage of OpenEMS is very moderate compared to those tools.
Well the FEM method is known to not scale linear with size and thus gets to its limit much quicker. But there are e.g. commercial FDTD tools that are magnitudes faster and still more efficient than openEMS ...

to your questions:
1) This files contain the excitation signal and can be used to normalize the voltages and currents to exclude the effect of the DFT. I assume you use a sinusoidal excitation? Because otherwise these files should only contain the short gaussian pulse and not end up being very large. Maybe I should make it possible to disable the creation of this files...

2) That is currently not possible, but would not be too much magic to implement. Maybe I can find the time...

3) That is currently not possible as well and would be a rather large effort to get done. Thus I do not see this "pause & resume" feature implemented any time soon. Sorry, but you are welcome to help :D
Hardware : INTEL XEON E5 (16 Threads), 128GByte RAM
With how many cores enabled to you get the best performance?? Because I have the feeling running on all 16 cores will not be the optimum...

regards
Thorsten

Tbur
Posts: 2
Joined: Sun 22 Feb 2015, 20:18

Re: Newbie to openEMS

Post by Tbur » Thu 26 Feb 2015, 16:58

Hi,

thanks a lot for your response:

1) Yes I use sinus excitation because I am interested in a steady state analysis for one frequency in the time domain. But I will try to do analysis in the frequency domain by using Gaus excitation also.

2) It would be sufficient to have a parameter (varargin 'keyword'/value combo) where you can determine after how many time steps dumping should be activated and/or deactivated again maybe. A interactive method should not be necessary at all.

3) This is meant as a more luxury method compared to 2). Not essential of course. I'm sorry I'm not a programmer. So my potential to help will be not very much.

"....With how many cores enabled to you get the best performance?? Because I have the feeling running on all 16 cores will not be the optimum..."
Does that mean that there exists a optimum in terms of CPU cores to be used ? Where can this be configuered for trying ?

My current analysis project:
Investigation of radio frequency scattering and propagation issues along a 150 meter long drilled hole into earth (rock, soil, obstacles wet and dry etc.) with a diameter of ca. 4m . Frequency 433MHz.

Regards

Thomas Burchard

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

Re: Newbie to openEMS

Post by thorsten » Fri 27 Feb 2015, 10:34

Hi,

yes we have observed that in most cases using all cores does not give the best performance.
The reason is that FDTD in often cases is memory bandwidth limited and not limited by the CPU power.
Thus less cores battling for the memory bandwidth bottleneck can be faster.

Try 8 or 12:

Code: Select all

 RunOpenEMS('/tmp/path_to_run_in','myfile.xml','--numThreads=8')
See: https://github.com/thliebig/openEMS/blo ... nEMS.m#L27

regards
Thorsten

Post Reply