Thorsten Liebig
1dff63d2cd
cylinder engine extension should use inline functions for field accesss
2011-03-18 14:46:27 +01:00
Thorsten Liebig
7ac5ab67c8
Operator & Operator_Cylinder: changes to material averaging methods
...
Operator:
- new method to setup the mesh: SetupCSXGrid()
- Most methods handling material and operator calculations are now protected.
- New method for accessing the material distribution.
Operator_Cylinder:
- overloaded SetupCSXGrid() handling cylindrical specialties
- This commit adds an additional line in alpha-direction
in case of a closed cylinder simulation. Thereby the material averaging
will be accurate at the alpha-interface
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2011-03-18 14:17:09 +01:00
Thorsten Liebig
be7e543232
fix in Excitation length comparison
2011-03-18 10:06:28 +01:00
Thorsten Liebig
caacbb9d9d
critical fixes in excitation extension
2011-03-17 11:38:01 +01:00
Thorsten Liebig
14b0dd5104
ext: fix in mur-ABC extension
2011-03-17 10:29:48 +01:00
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
3742478ca9
sorting engine methods and some docu updates
2011-03-16 12:16:09 +01:00
Thorsten Liebig
005eb3a4f6
MPI: added an additional line at the upper MPI-bound for correct material averaging
...
This also fixes the current send and receive issue
--> Engine_MPI::SendReceiveCurrents()
2011-03-15 09:41:29 +01:00
Thorsten Liebig
edb40489d7
MPI: tell MPI-operator about global mesh and its position in it
2011-03-14 16:20:33 +01:00
Thorsten Liebig
8e2fce0e8c
reduce AdrOp usage
2011-03-14 15:58:38 +01:00
Thorsten Liebig
92d60b3204
fix in cylindrical multigrids: check for valid number of subgrids
2011-03-14 10:37:12 +01:00
Thorsten Liebig
f630abf813
MPI: external libs info reflects MPI usage
2011-03-10 10:39:08 +01:00
Thorsten Liebig
3cbadd5c82
MPI: DumpExciationsSignals for rank 0 only
2011-03-10 10:39:08 +01:00
Thorsten Liebig
9c061e9d84
MPI: redirect output for ranks>0 to file
...
changes to main.cpp:
read global command line arguments first to allow for immediate output redirection
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2011-03-10 10:39:08 +01:00
Thorsten Liebig
75fb5a0cc9
MPI: fix in handling SplitN_? equal 1 or smaller
2011-03-10 10:39:08 +01:00
Thorsten Liebig
28c5b496ed
MPI: fix in enabling MPI Operator
2011-03-10 10:39:08 +01:00
Thorsten Liebig
8d09a7ee28
MPI: allow requested number of splits
2011-03-10 10:39:08 +01:00
Thorsten Liebig
eb7524b6f6
MPI: Setup MPI now allows split in all directions with defitions read from xml-file
...
Warning: depends on API changes in CSXCAD!
2011-03-10 10:39:08 +01:00
Thorsten Liebig
20d6547235
MPI: added cylindrical multigrid support
...
The cylindrical multigrid scheme needed a workaround:
An additional barrier is necessary to prevent a simultaneous MPI comm access.
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2011-03-10 10:39:08 +01:00
Thorsten Liebig
14e12f9138
MPI: new methode to define neighbors
2011-03-10 10:39:08 +01:00
Thorsten Liebig
729a92c5e1
MPI: move mpi mesh split to openEMS_FDTD_MPI
2011-03-10 10:39:08 +01:00
Thorsten Liebig
bfcd85e3e6
MPI: fix: buffer init can handle all interface directions
2011-03-10 10:39:08 +01:00
Thorsten Liebig
211b6b7331
MPI: debug dumps prepend its rank to output filenames
2011-03-10 10:39:07 +01:00
Thorsten Liebig
9b55eab2f8
MPI: ciritcal fix: the interface area needs to be updated in both ranks
2011-03-10 10:39:07 +01:00
Thorsten Liebig
23df0f63a0
MPI: critital fix in current update/transfer
...
The normal current component at the upper boundaries are not updated
by the conventional engine as is needed for the interface interaction.
Workaround: transfer all three current components --> larger data transfer
Todo: needs to be properly fixed in the future!
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2011-03-10 10:39:07 +01:00
Thorsten Liebig
9d51971c26
MPI: fix for cylindrical coordinate engine + MPI
2011-03-10 10:39:07 +01:00
Thorsten Liebig
8d2d645a26
MPI: insert MPI engine into main engines inheritance scheme
...
new inheritance scheme:
[..] -> SSE_Compressed -> MPI -> Multithreading -> [..]
2011-03-10 10:39:07 +01:00
Thorsten Liebig
b395546483
MPI: some fixes in handling the MPI engine
2011-03-10 10:39:07 +01:00
Thorsten Liebig
3b402e976b
MPI: disable/rename processings if they are in conflict
2011-03-10 10:39:07 +01:00
Thorsten Liebig
27a4b9f482
MPI: synchronize time step + new MPI_Enabled flag
2011-03-10 10:39:07 +01:00
Thorsten Liebig
e2628740fc
new openEMS_FDTD_MPI for better MPI handling
2011-03-10 10:39:07 +01:00
Thorsten Liebig
9364ecd292
first working MPI implementation
...
todo:
- only/mainly rank 0 takes care of output
- rank 0 manages end-criteria, energy calculation
- field dumps split between ranks --> prevent file corruption
- a lot more...
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2011-03-10 10:39:07 +01:00
Thorsten Liebig
895e6c635d
initial MPI support
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
7df39bafcb
fix: missing operator construction
2011-02-08 11:42:59 +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
10537d75ab
fill missing material storage in cylindrical multigrids
2011-01-25 10:27:51 +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
c0c66518c1
new dump type: total current density (rotH) field dump
2011-01-10 11:15:22 +01:00
Thorsten Liebig
c5a689b67c
fixed GetRawField handling
2011-01-10 11:14:23 +01:00
Thorsten Liebig
24a2e3007a
FDTD Engine Interface: update to GetRawField
2011-01-07 16:29:08 +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
043ec7c1a1
processing constructor with Engine_Interface_Base only
...
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-12-07 16:47:23 +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
Thorsten Liebig
32cbdc5d0b
removed FDTD engine from (nearly) all processing classes
...
todo:
- remove FTDT operator from all processingX and replace by abstract-base-operator?
- remove FDTD engine from ProcessCurrent
- remove or cleanup ProcessEField + ProcessHField
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-12-06 10:00:08 +01:00
Thorsten Liebig
ab1119f468
new: Engine_Interface
...
This is a new common class designed as an interface between an engine
and the processing routines which should become a part of common as well.
todo:
- migrate all processings to use this interface only
- lots of testing...
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-12-06 10:00:08 +01:00
Thorsten Liebig
2d12db5ea6
Merge remote branch 'seb/master'
2010-11-04 12:20:23 +01:00
Thorsten Liebig
ce56184681
multi-threading support for MUR-ABC added
2010-11-04 12:13:43 +01:00
Sebastian Held
5900e2726c
more logical boundary handling
2010-11-04 07:48:15 +01:00
Sebastian Held
6728cee054
minor bugfix: missing initialization
2010-10-28 21:50:50 +02: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
Thorsten Liebig
4f8aa3faa8
fix in Operator_SSE_Compressed: cleanup old compression prior to an InitOperator()
2010-10-26 18:47:21 +02:00
Thorsten Liebig
f204bc2723
Mode matching probe: fixed an error in HField interpolation
...
Now also excluding the boundaries from the MM.
Updated waveguide example: Rect_Waveguide.m
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-10-26 08:30:35 +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
Sebastian Held
16e0e2f3f2
bugfix: correct scaling of --debug-boxes
2010-10-11 21:05:02 +02:00
Thorsten Liebig
c1250ce34d
upml ext: save memory and speedup
...
Instead of using an additional voltage/current array mirroring the main volt/curr,
the upml extension now swaps volt with volt_flux and curr with curr_flux
before and after the main engine updates.
This saves memory and therefore also increases the upml speed.
2010-10-07 19:25:22 +02:00
Sebastian Held
5cc6438ab7
engine_sse_compressed: speed up
2010-10-07 14:39:54 +02:00
Thorsten Liebig
672f2a436a
upml extension: operator get functions and disabled pml in non-pml regions
2010-10-06 15:07:17 +02:00
Thorsten Liebig
043ef6ec4c
extensions: multithreading support added
...
every extension can either implement the single threaded methods e.g. DoPreVoltageUpdates()
or the multithreading aquivalent method e.g. DoPreVoltageUpdates(int threadID)
Engine_Ext_UPML class is an example for a multithreading extensions
2010-10-06 10:30:55 +02:00
Thorsten Liebig
1b2ac008e7
fix in upml operator
2010-10-06 10:04:19 +02:00
Thorsten Liebig
430a04e9e4
new/better method to assign jobs to working threads
2010-10-05 17:24:36 +02:00
Thorsten Liebig
ae281d3dea
upml extension: use inline engine access methods
...
todo: further speed optimization for this extension...
Signed-off-by: Thorsten Liebig <Thorsten.Liebig@gmx.de>
2010-10-05 11:51:12 +02:00
Thorsten Liebig
6c00a844d2
upml extension: added support for cylindrical multigrid meshes
2010-10-05 11:51:12 +02:00
Thorsten Liebig
66c79aabe6
mur-abc extension copy-constructor should be protected
2010-10-05 11:51:12 +02:00
Thorsten Liebig
684e864a75
upml extension: added support for cylindrical meshs
2010-10-05 11:51:12 +02:00
Thorsten Liebig
cc50b5bbef
ShowStat method added to upml extension
2010-10-05 11:51:12 +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
887e07a394
define vtk dump data type
...
Using double as vtk data type will fix some errors/warnings in Paraview about a datasize mismatch.
2010-10-05 11:51:12 +02:00
Thorsten Liebig
007e8c72f3
doc: comments on extensions priority executing order
2010-10-03 20:15:20 +02:00
Thorsten Liebig
5e244bf7cb
fixed crashing "--debug-operator" option with sse-compressed engines
2010-10-03 20:15:20 +02:00
Thorsten Liebig
f6663eeccb
multithreading engine: removed separate excitation thread
...
the excitation is now handled by the first (ID=0) "conventional" thread
2010-10-02 18:06:38 +02:00
Thorsten Liebig
1c24877bf4
operator extensions, fixed missing deconstructor
2010-10-02 17:55:19 +02:00
Thorsten Liebig
fb3ccd36bf
engine: update handling extensions & multithreading priority handling fixed
2010-10-02 17:54:34 +02:00
Thorsten Liebig
af922a10bc
new extension priority system
2010-09-25 19:23:53 +02:00
Thorsten Liebig
832792eb8e
fixed multigrid interpolation, added closed_cylinder support
2010-09-24 12:01:38 +02:00
Thorsten Liebig
8870a20787
fixed extensions handling for cylindrical multigrid
2010-09-22 16:08:39 +02:00
Thorsten Liebig
8c95f21858
extensions check for CylindircalMultiGrid & allow Mur-ABC in radial direction
2010-09-22 09:58:45 +02:00
Thorsten Liebig
060b93d089
operator: removed redundant methods using integer positions
2010-09-17 15:34:39 +02:00
Thorsten Liebig
1e78e5c2d6
fix vtk-dump: vector fields consider mesh type
...
furthermore:
- new argument: --nativeFieldDumps to dump original FDTD field components for debugging purposes
- show global arguments on startup
2010-09-17 15:34:39 +02:00
Thorsten Liebig
482de93d3d
fix in operator_sse_compression gcc compatibility check
2010-09-17 15:34:39 +02:00
Thorsten Liebig
9dcf42f080
skip filling "et" and "ht" with 0 after excitation is done
2010-09-17 15:34:39 +02:00
Sebastian Held
b0a0d69faf
bugfix 32-bit SSE-compressed: aligned allocator for STL vector
2010-09-17 15:06:09 +02:00
Sebastian Held
d42d2f0108
dump_PEC: don't use depreciated MainOp
2010-09-17 12:08:49 +02:00
Sebastian Held
8cd01c9c0c
compatibility with gcc-4.1.2 (for ABI2 builds)
2010-09-17 11:07:52 +02:00
Sebastian Held
cc4ffd235f
dump_PEC: get the scaling right
2010-09-17 10:50:06 +02:00
Thorsten Liebig
ab701c4a7f
new allow multiple ProcessIntegral and ProcessModeMatch using this to dump mode purity additionally
2010-09-09 10:02:33 +02:00
Thorsten Liebig
e3c0805ad9
fix in number of threads calc for multigrid engine
2010-09-08 16:57:10 +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
a52cd4711a
MT operator: new separate calc start-stop lines method
2010-09-03 12:14:25 +02:00
Thorsten Liebig
fc2b60ba3e
Operator Extension clone method: allows to create a copy/clone of an existing extension
...
This will be necessary for the upcoming multi-grid approach...
2010-09-03 11:53:33 +02:00
Thorsten Liebig
db0f4ab3e0
MT-engine has access to MT-operator
2010-09-02 22:16:37 +02:00
Thorsten Liebig
93fcd44f42
missing gpl header in cylinder extension
2010-09-02 22:14:40 +02:00
Thorsten Liebig
12c26f834a
always show the optimal timestep
2010-09-02 22:12:03 +02:00
Thorsten Liebig
cabdf4a84a
clear extensions method allows saver reset of MT engine
2010-09-02 22:04:35 +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
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
e081a9cf94
Engine API: GetVolt/GetCurr methodes spilt up to Get/Set
2010-08-30 08:25:10 +02:00
Thorsten Liebig
b75476cc04
apply clear inheritance for cylindrical coords operator
2010-08-30 08:25:10 +02:00
Sebastian Held
23a3f6fb9c
simplified memory management
2010-08-26 15:54:19 +02:00
Sebastian Held
cc51c2334d
indention changed
2010-08-26 15:47:04 +02:00
Sebastian Held
ea7047f7e7
feature: SSE operator compression will now always work at maximum compression
2010-08-26 14:50:23 +02:00
Thorsten Liebig
4d67bab7c7
fix in calculation of numThreads --> calculation moved to operator
2010-08-25 15:27:59 +02:00
Thorsten Liebig
6ad49b9cae
excitation: warning for unknown types fixed...
2010-08-23 22:52:08 +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
42e1968348
cylindrical op: cylinder extension should be always first to execute
2010-08-23 21:53:29 +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
2a9dc040dc
new process: mode matching integral parameter
...
todo: should use a special CSX property in the future
and have its own fundamental mode functions
2010-08-16 11:53:43 +02:00
Thorsten Liebig
de054658ef
avoid vector copy operation
2010-08-11 18:48:23 +02:00
Thorsten Liebig
c3407c7730
define mesh-type in Processing base class
2010-08-11 18:46:47 +02:00
Thorsten Liebig
e843b6dcd3
fix: not using curr amplitude in "ht", maybe NULL !!!
2010-08-11 18:44:34 +02:00
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