Commit Graph

111 Commits

Author SHA1 Message Date
Thorsten Liebig
aba33c58bd excitation moved to its own extension
the benefit of this approach is, that the excitation
is subject to the extensions priorities
2011-03-16 16:26:01 +01:00
Thorsten Liebig
43e1f43c42 new operator method: GetYeeCoords & usage to calc excitations and metal 2011-03-16 12:26:41 +01:00
Thorsten Liebig
8e2fce0e8c reduce AdrOp usage 2011-03-14 15:58:38 +01:00
Thorsten Liebig
9d51971c26 MPI: fix for cylindrical coordinate engine + MPI 2011-03-10 10:39:07 +01:00
Thorsten Liebig
b73004be48 new method to dump excitation signals 2011-03-10 10:34:40 +01:00
Thorsten Liebig
02f929aa53 fix: allow missing exciation... 2011-02-08 10:35:23 +01:00
Thorsten Liebig
2e2f75807e Operator-Base: access stored discrete material 2011-01-31 12:22:21 +01:00
Thorsten Liebig
24bac9499f allocate dynamic CSX and allow access from basic operator 2011-01-31 12:00:00 +01:00
Thorsten Liebig
67d1307fdf fixed the operator resetting & cleanup + a lot of memory leaks fixed 2011-01-24 11:11:45 +01:00
Thorsten Liebig
ea496b6129 operator: new material data storage for post-processing purposes 2011-01-07 10:55:31 +01:00
Thorsten Liebig
3104335dce replaced GetMeshDelta by GetEdgeLength & partially removed AdrOp 2010-12-08 16:55:27 +01:00
Thorsten Liebig
57ead21ccc real abstract base classes for common operator and engine-interface 2010-12-07 14:47:22 +01:00
Thorsten Liebig
9d3761b1d0 Init style: applied astyle.sh
astyle --style=allman --indent=tab --indent-cases {} \;

please apply this style prior to any future commit

Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-12-06 15:31:11 +01:00
Thorsten Liebig
70ae86d63f moved all FDTD extensions to folder FDTD/extensions
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-12-06 15:30:47 +01:00
Thorsten Liebig
2f531b99c6 moved all processing classes to Common/
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-12-06 10:44:25 +01:00
Thorsten Liebig
16263e8f9a new Operator_Base class
- This class is meant as an abstract base for any time-domain and rect-grid numerical solver.
- All processing methods should only use this base class

Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-12-06 10:00:08 +01:00
Sebastian Held
5900e2726c more logical boundary handling 2010-11-04 07:48:15 +01:00
Sebastian Held
d31b3ffbb2 updated debug dumps
The debug dump routines do not work correctly in cylinder coords (--nativeFieldDumps may help)!
2010-10-27 11:17:58 +02:00
Thorsten Liebig
1586c76af6 Merge remote branch 'seb/master' 2010-10-20 10:48:18 +02:00
Sebastian Held
dcc9f86c8a --debug-PEC improvements 2010-10-20 09:25:50 +02:00
Sebastian Held
4e91cb95dc bugfix: --debug-PEC now works with all engines; operator now uses Get... and Set... functions 2010-10-20 07:26:16 +02:00
Thorsten Liebig
7dec28731c changed CSXCAD API handling used primitives 2010-10-19 16:54:35 +02:00
Thorsten Liebig
b6362495d8 operator: fix in PEC curves
Operator::FindPath method is not optimal yet,
will find weird pathes in some occasions,
at least they will be closed now... hopefully :)

Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-10-12 12:49:44 +02:00
Thorsten Liebig
06bbec106f new extension: upml
Operator extension implementing an uniaxial perfectly matched layer (upml)

This new pml implementation is going to replace the old split-field pml
2010-10-05 11:51:12 +02:00
Thorsten Liebig
5e244bf7cb fixed crashing "--debug-operator" option with sse-compressed engines 2010-10-03 20:15:20 +02:00
Thorsten Liebig
060b93d089 operator: removed redundant methods using integer positions 2010-09-17 15:34:39 +02:00
Sebastian Held
d42d2f0108 dump_PEC: don't use depreciated MainOp 2010-09-17 12:08:49 +02:00
Sebastian Held
cc4ffd235f dump_PEC: get the scaling right 2010-09-17 10:50:06 +02:00
Thorsten Liebig
8d657430c0 Merge branch with multigrid
Conflicts:
	FDTD/operator.h
	FDTD/operator_cylinder.cpp
2010-09-08 16:37:40 +02:00
Thorsten Liebig
20ade0f053 new: enable cascaded multi-grids... incl. an example 2010-09-08 16:07:28 +02:00
Thorsten Liebig
bd4794ecc4 NEW: cylindrical multigrid FDTD
this is a new multi grid approach for the cylindrical FDTD.
The FDTD domain will be split in two regions in radial direction.
The "inner" region will have half as many disc-lines in alpha direction and therefore allow for a much larger timestep which increases the simulation speed.

Todo:
- currently only a homogeneous disc is allowed in alpha direction
- some extensions have to be tested and prepared for this approach (e.g. pml)
- speed enhancement and more efficient memory usage
- lots and lots of testing...
2010-09-08 07:36:32 +02:00
Thorsten Liebig
12c26f834a always show the optimal timestep 2010-09-02 22:12:03 +02:00
Thorsten Liebig
f7360cbdc1 Dump material as a vector instead of averaged. 2010-09-02 15:35:57 +02:00
Thorsten Liebig
df3e7c0c12 major operator revision
- now the equivalent circuits are calculated by first calculating the averaged material properties
- this approach should also be save for the cylindrical FDTD

This needs some further testing, especially for the cylindrical operator!!
2010-09-02 15:35:13 +02:00
Thorsten Liebig
594b38e345 operator: set a forced timestep 2010-08-30 08:25:10 +02:00
Thorsten Liebig
6fa9fef29f fix operator: fixing a critical error in the mue-weighting 2010-08-23 22:15:52 +02:00
Thorsten Liebig
35939584df cleanup: renaming voltage excitation E_* to Volt_* 2010-08-16 13:28:19 +02:00
Thorsten Liebig
0319c35f55 count and show excitations per direction 2010-08-16 13:22:40 +02:00
Thorsten Liebig
1b0a4d7366 no H-field excitation outside the FDTD-domain 2010-08-03 17:12:33 +02:00
Thorsten Liebig
8316b1c2bd Operator: GetNodeArea & Update/fix in Calc_EffMatPos method
- new method GetNodeArea will return the area of a node for a given direction
- methods Calc_ECPos & Calc_EffMatPos now const
- Calc_EffMatPos in Operator class updated to use new functions GetMeshDelta & GetNodeArea
- Calc_EffMatPos introduced (fixed) in Operator_Cylinder (need some testing)
- treatment of E_alpha=0 at r==0 moved from Calc_ECPos to Electric-BC
2010-07-29 18:30:50 +02:00
Thorsten Liebig
d3434906a3 new: split field pml implementation started
todo:
- pml edges and corners
- flexible profile definition
- lots of testing !!!

Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-07-16 17:25:32 +02:00
Sebastian Held
f7edb2f1fd changed openEMS dumps from drawing units to unit of meters
the better approach is to create a new class (e.g. Dump)which contains all dump formats (currently vtk and hdf5). This class will then be responsible to choose a dump mode: in drawing units or in meters
2010-07-15 12:58:48 +02:00
Thorsten Liebig
fb164ba1fe update to console output regarding used timestep method & typo fix 2010-07-13 15:37:56 +02:00
Thorsten Liebig
911f7c5528 show extensions status & define const methods 2010-07-11 23:45:41 +02:00
Thorsten Liebig
ebacc62812 fix: new timestep not (always) stable for cylinder-coords, using the old one... 2010-06-22 12:49:51 +02:00
Thorsten Liebig
b776061f7f new CalcTimestep for larger a timestep 2010-06-18 12:37:37 +02:00
Thorsten Liebig
88b319cbba some typos & consol message fixes 2010-06-07 23:08:38 +02:00
Thorsten Liebig
97de0e84ee make memory allocators templates (to allow for other types than FDTD_FLOAT)
Signed-off-by: Thorsten Liebig <thorsten.liebig@gmx.de>
2010-06-06 20:00:24 +02:00
Thorsten Liebig
08fd499194 operator: multithreaded CalcPEC 2010-06-06 01:47:32 +02:00
Thorsten Liebig
e816d50cc1 operator: split up CalcPEC as preparation for easier multithreading
Signed-off-by: Thorsten Liebig <thorsten.liebig@gmx.de>
2010-06-06 00:53:05 +02:00