Commit Graph

263 Commits (cc50b5bbef3e3f43edf4bd5f1cdd71ed283a4731)

Author SHA1 Message Date
Thorsten Liebig 3c45c28a66 Revision: integral parameter processing (voltage & current calc)
revision necessary to keep the object oriented concept consistent for upcoming new integral parameter
2010-08-11 12:28:09 +02:00
Thorsten Liebig 8adea2a449 missing header for win32 2010-08-10 12:19:59 +02:00
Thorsten Liebig bac2fc22f7 Mur-ABC: set a phase velocity to handle dispersive waveguides 2010-08-10 07:50:53 +02:00
Thorsten Liebig 992924a578 fix: alpha dump not in drawing units 2010-08-05 22:07:07 +02:00
Thorsten Liebig 742713bed0 pml: fix E-excite on the lower pml-bound 2010-08-03 17:14:03 +02:00
Thorsten Liebig 1b0a4d7366 no H-field excitation outside the FDTD-domain 2010-08-03 17:12:33 +02:00
Thorsten Liebig fc5e617abb leftover debug code removed 2010-08-03 17:08:43 +02:00
Thorsten Liebig c6bafbe885 sf_pml: read grading function from xml & fix: string handling 2010-07-30 17:51:39 +02:00
Thorsten Liebig 4d214c162f sf_pml: user defined grading function using the fparser lib 2010-07-30 17:02:21 +02:00
Thorsten Liebig b2ac68d835 sf_pml: moved Zm into GetKappaGraded 2010-07-30 15:29:19 +02:00
Thorsten Liebig e85f8ef8b7 allow boundary conditions strings e.g. "PEC" "PMC" or "PML_8" 2010-07-30 15:28:15 +02:00
Thorsten Liebig 3d1c7f22b9 update & fixes to sf_pml to support z-direction pml in clyindrical coords 2010-07-29 18:32:57 +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
Sebastian Held 56154aeb05 processfields: mesh correction for non-interpolated case 2010-07-20 16:30:41 +02:00
Sebastian Held 1f65648776 added discretization info to processfields.cpp
The coordinate snapping needs to be revised!
2010-07-20 11:42:47 +02:00
Sebastian Held e5930c7774 field probes: add info to text files 2010-07-20 11:37:19 +02:00
Sebastian Held e3904c0f18 changed node-interpolation in H-field dumps
average the H-fields not the currents
2010-07-19 09:04:13 +02:00
Sebastian Held 1a93650fa0 new H-field probe 2010-07-19 08:41:53 +02:00
Thorsten Liebig efe64fca4d pml warning only if using the pml 2010-07-17 15:22:51 +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 0ccbbab593 new probe type: E-field 2010-07-16 15:55:35 +02:00
Sebastian Held 55ac7137a3 minor documentation updates 2010-07-16 10:41:12 +02:00
Sebastian Held 5e904b112c write H-field excitation into file "ht"
If we have a separate signal for H-field excitation, we need to dump it.
The question is, do we really need a separate Signal?
2010-07-16 10:33:54 +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 050a595cd3 docu update & typo 2010-07-15 12:12:52 +02:00
Thorsten Liebig 7744bf6030 fix: missing Engine_Extension deconstructor 2010-07-15 12:11:48 +02:00
Thorsten Liebig fb164ba1fe update to console output regarding used timestep method & typo fix 2010-07-13 15:37:56 +02:00
Sebastian Held 59ffbb5100 Improve the speed of the SSE engine by using flush-to-zero
This change modifies the behaviour of the complete program, if the SSE engine is used.
A better approach may be to only enable flush-to-zero in IterateTS()...
2010-07-13 10:47:40 +02:00
Thorsten Liebig 911f7c5528 show extensions status & define const methods 2010-07-11 23:45:41 +02:00
Thorsten Liebig 03b03b9834 sse compression output: yes & no instead of 0/1 2010-07-11 19:53:02 +02:00
Thorsten Liebig 9b8c280504 dispersive engine extension: support inline methods 2010-07-11 17:21:59 +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
Sebastian Held a083c6d739 make excitation error message a bit more elaborate 2010-06-29 16:10:53 +02:00
Thorsten Liebig 91ecb547d6 fix in multithreading linesPerThread
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-06-29 12:44:47 +02:00
Thorsten Liebig 0f4a78cdbf new ProcessingIntegral as abstract base class to voltage and current processing 2010-06-28 19:45:19 +02:00
Thorsten Liebig e880fa3ee8 Processing: some code cleanups & consistencies
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-06-28 18:27:41 +02:00
Thorsten Liebig 6f06497dab Added frequency domain probe support
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-06-28 18:05:03 +02:00
Sebastian Held dd71ae33ae bugfix and optimization of compressed sse operator 2010-06-25 09:38:49 +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 3fd58b7e7c rewritten current calculation... 2010-06-18 12:52:02 +02:00
Thorsten Liebig b776061f7f new CalcTimestep for larger a timestep 2010-06-18 12:37:37 +02:00
Thorsten Liebig 87b8e22bf7 Add Probe-Box weighting (new in CSXCAD) 2010-06-16 12:50:19 +02:00
Thorsten Liebig 88b319cbba some typos & consol message fixes 2010-06-07 23:08:38 +02:00
Thorsten Liebig 11df0f5c37 array_ops: continue templates
Signed-off-by: Thorsten Liebig <thorsten.liebig@gmx.de>
2010-06-06 20:22:05 +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 ab0a4aaacb number of threads received by cylindrical operator & engine
Signed-off-by: Thorsten Liebig <thorsten.liebig@gmx.de>
2010-06-06 01:50:58 +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 b4c98632bf MT-Operator: now using multithreading for Calc_EC
Calc_PEC & Excitation should be next

Signed-off-by: Thorsten Liebig <thorsten.liebig@gmx.de>
2010-06-05 11:50:13 +02:00
Thorsten Liebig f0141f6c7e Operator: split Calc_EC into Init_EC + Calc_EC 2010-06-05 11:47:21 +02:00
Thorsten Liebig 0954177dc6 operator debug dumps: more console infos & check first if file can be created
Signed-off-by: Thorsten Liebig <thorsten.liebig@gmx.de>
2010-06-04 14:08:42 +02:00
Thorsten Liebig 7172e9e53d obey mesh type in material/operator/PEC dump 2010-06-02 17:21:58 +02:00
Thorsten Liebig 610f4e62da processfields: allow different mesh types for vtk dump, e.g. cylindrical mesh dump 2010-06-02 16:41:26 +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
Sebastian Held 96144ed3a1 bugfix: snapping of current probes
(sorry...)
2010-06-02 08:57:45 +02:00
Thorsten Liebig 27bf0aac7d Warning for unused primitives 2010-05-29 17:40:18 +02:00
Thorsten Liebig 7ad8f4ac3c fixed broken sse-compressed operator!!! 2010-05-29 17:14:36 +02:00
Thorsten Liebig 0aada84f80 DumpOperator2File now available for all types of operators 2010-05-29 12:47:07 +02:00
Thorsten Liebig d96a592e05 Defining the compressed sse operator access functions 2010-05-29 12:45:38 +02:00
Thorsten Liebig 4bda515078 processfields: allow low level access to vtk write methods 2010-05-29 12:17:15 +02:00
Sebastian Held f671b52986 added command line option --showProbeDiscretization 2010-05-28 15:13:14 +02:00
Thorsten Liebig 5163c69e7e fix: data size is MiB instead of MB 2010-05-21 10:14:09 +02:00
Thorsten Liebig f71960c4e0 Adept compression cache to grid size 2010-05-21 08:22:41 +02:00
Thorsten Liebig 6bc146a3fb cylinder operator now based on multithreaded-operator 2010-05-20 23:51:40 +02:00
Thorsten Liebig dab5be229b multithreaded engine now a derived class of compressed sse engine, created by new operator_multithread class
- also fixed double init() call of engines
- operator_multithread open for future multithreaded operator creation
2010-05-20 22:02:06 +02:00
Sebastian Held df17dc23c6 evil hack to get multithreading working again
future: restructure the multithreading engine to only work on top the sse_compressed engine
2010-05-20 17:39:39 +02:00
Thorsten Liebig c71b0154a1 allow multiple excitations at the same edges (ignore priorities) 2010-05-20 15:17:30 +02:00
Thorsten Liebig 8212f039ed more console output regarding operator & engine usage 2010-05-19 21:25:15 +02:00
Thorsten Liebig f868eb328c operator_cylinder with flexible base class -> now sse-compressed 2010-05-19 21:10:48 +02:00
Thorsten Liebig 009eeef96a fix: number of lines already defined by engine base-class 2010-05-19 21:08:38 +02:00
Thorsten Liebig 23b917be5f update to Operator::ShowStat and derived operators 2010-05-19 11:42:56 +02:00
Thorsten Liebig de5bdc8ef6 introducing compressed sse operator & engine
use --engine=sse-compressed option to enable
2010-05-19 11:41:35 +02:00
Thorsten Liebig 72330844cc critical fix in engine field access methods 2010-05-18 14:10:11 +02:00
Thorsten Liebig 25777f7f27 cylinder extensions: two critical bug fixes 2010-05-17 15:44:03 +02:00
Thorsten Liebig f98314d55c mur_abc extension speedup by using inline engine functions 2010-05-17 13:10:14 +02:00
Thorsten Liebig 98c10c7628 define engine type and overload all GetVolt/GetCurr 2010-05-17 13:08:27 +02:00
Thorsten Liebig b2c436282e fix: init numTS in engine constructor 2010-05-17 13:05:41 +02:00
Thorsten Liebig a0c215a40c allow node-interpolated hdf5 dump 2010-05-12 20:40:35 +02:00
Thorsten Liebig a1ef3426f2 FIX in sse engine: init fields & fixed reset calls 2010-05-11 22:54:08 +02:00
Thorsten Liebig 10bbb9db79 write interpolation type info to vtk file 2010-05-11 21:03:16 +02:00
Thorsten Liebig 5e5a278ac7 new: node interpolated dump in processfields 2010-05-11 20:38:58 +02:00
Thorsten Liebig 279b348724 correction in H-field cell-interpolation 2010-05-11 20:38:09 +02:00
Thorsten Liebig 4245f26e5e fix of excite signal dump et 2010-05-11 19:11:38 +02:00
Thorsten Liebig abbe10bd9f fix: init sse correctly 2010-05-11 19:11:38 +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 74ba9eceff cylinder-operator docu 2010-05-11 19:11:37 +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
Thorsten Liebig 7cc2a7fcf2 bug fix in current integration 2010-05-07 22:59:02 +02:00
Thorsten Liebig 5b3ccd3f53 bug fix in interpolated h-field dump 2010-05-07 22:58:56 +02:00
Thorsten Liebig 065c05eeae limit the gauss excitation to max timesteps 2010-05-05 17:28:00 +02:00
Thorsten Liebig 09cc2c7360 added extension support to cylinder-operator/engine & removed some unused code 2010-05-03 23:08:47 +02:00
Thorsten Liebig ca8d2f8833 check whether extensions are cylinder-coords approved or not... 2010-05-03 22:37:29 +02:00
Thorsten Liebig fe483946d2 cylinder-operator: use operator.h EC calc 2010-05-03 22:36:04 +02:00
Sebastian Held 4cff6eebc5 minor fix 2010-05-03 21:20:49 +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 99a082e8a6 sse: small code-cleanup 2010-05-01 13:06:13 +02:00
Thorsten Liebig 63ef1b3ebf sse engine: changed the vector order to reduce copy operations 2010-05-01 12:57:43 +02:00
Thorsten Liebig d26986fe0d sse: removed more unnecessary methods & new operator access & names that make more sense 2010-04-30 19:41:44 +02:00