Commit Graph

281 Commits (4f8aa3faa8e4cad9b8b78013beb624da22f2159d)

Author SHA1 Message Date
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