Commit Graph

82 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
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
2c3ebe5a7d new dump type: electric current density (J = kappa * E) 2011-01-07 16:12:07 +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
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
Thorsten Liebig
907ac3cff2 default debug flag and update/fix for cylindrical coords 2010-10-27 14:49:16 +02: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
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
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
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
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
200832b423 operator: setup excitation from xml 2010-08-30 08:25:10 +02:00
Thorsten Liebig
594b38e345 operator: set a forced timestep 2010-08-30 08:25:10 +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
55ac7137a3 minor documentation updates 2010-07-16 10:41:12 +02:00
Thorsten Liebig
050a595cd3 docu update & typo 2010-07-15 12:12:52 +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
b524b57be0 new: dispersive materials / first and simple lorentz/drude dispersive materials
todo:
- more material parameters for the lorents model (currently only the plasma frequencies)
- code documentation
- examples & validation
- speed optimizations

Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-07-06 10:01:26 +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
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
Thorsten Liebig
f0141f6c7e Operator: split Calc_EC into Init_EC + Calc_EC 2010-06-05 11:47:21 +02:00
Thorsten Liebig
7172e9e53d obey mesh type in material/operator/PEC dump 2010-06-02 17:21:58 +02:00
Sebastian Held
82befba245 new debug option: dump PEC
command line parameter: --debug-PEC
writes a file PEC_dump.vtk which can be visualized with paraview
visualize one component (x,y,z) at a time using arrow glyphs
2010-06-02 16:37:21 +02:00
Thorsten Liebig
0aada84f80 DumpOperator2File now available for all types of operators 2010-05-29 12:47:07 +02:00
Thorsten Liebig
23b917be5f update to Operator::ShowStat and derived operators 2010-05-19 11:42:56 +02:00
Thorsten Liebig
7f70f0fb4d engine independent multi-threading 2010-05-11 19:11:38 +02:00
Thorsten Liebig
54d0671d33 new: operator should create its engine 2010-05-11 19:11:38 +02:00
Thorsten Liebig
8cc2a2dd44 Moved special cylinder operations into op extentions 2010-05-11 19:11:37 +02:00
Thorsten Liebig
0a2f5fee5a update to Operator::ShowStat + count PEC 2010-05-10 09:14:29 +02:00
Sebastian Held
f762214eae split excitation from operator
The excitation variables and functions are separated into a class Excitation.
This allows completely different operator implementations (e.g. TLM) to use the excitations functions without deriving from class Operator.
2010-05-03 18:33:14 +02:00
Thorsten Liebig
2a3e8dd20f new: operator access functions 2010-04-30 19:40:08 +02:00
Thorsten Liebig
ab7a25d3ee separate excitation signal for voltages and currents 2010-04-30 11:28:53 +02:00
Thorsten Liebig
b1b1e71126 Operator: added H-field/current excitation 2010-04-29 00:28:07 +02:00
Thorsten Liebig
8787d793aa update to field excitation 2010-04-28 22:42:55 +02:00