You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Mistakes in an FDTD problem setup should be detected and reported early to help the user learn, as well as to avoid finding out after running OpenEMS where possible.
FreeCAD-OpenEMS-Export is a good place to implement a rules checker, as it's closest to the problem configuration and geometry. One could argue that AppCSXCAD is already there for mesh inspection, but it's merely a viewer and not interacting with any other of the tools.
Which rules should be checked?
How should they be checked?
How should violations be reported? (e.g. via report view with links to help topics that guide towards resolving an issue, or point out the offending element / value)
Should a rules checker be implemented before (semi-)automatic mesh generation is being addressed?
FDTD rules of thumb
The first thing that comes to my mind is the impact of grid line placement around material boundaries.
What to do with zero-thickness and non-zero thickness conductors in the z direction?
1/3-2/3 grid line placement around material boundaries cannot always be satisfied without subgridding support. Pic below comes to mind.
Other aspects include boundary layers, reference plane - port distance, mesh smoothness, max. cell size, ...
When a port is specified based on a box-shaped volume, this results in a single source or load being placed in its center. Anecdotally, the paper below investigates the impact of point vs. linear ports on the simulation result. The user may wonder whether they are impacted, or whether they need to taper the feed and load ends of an RF circuit, or how much a simplified simulation deviates by applying such assumptions to geometry obtained from a PCB design.
For the user it's easy to specify nested regions with particular grid sizes, which can result in overlapping or closely spaced grid lines which, unless it has been addressed in the latest OpenEMS builds, can cause the simulation to fail. Below is my experimental implementation on the Matlab side. When in doubt, FreeCAD-OpenEMS-Export could also export the x, y, z lists explicitly after having generated, adjusted and cleaned up the values on the generator side.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Mistakes in an FDTD problem setup should be detected and reported early to help the user learn, as well as to avoid finding out after running OpenEMS where possible.
FreeCAD-OpenEMS-Export is a good place to implement a rules checker, as it's closest to the problem configuration and geometry. One could argue that AppCSXCAD is already there for mesh inspection, but it's merely a viewer and not interacting with any other of the tools.
FDTD rules of thumb
The first thing that comes to my mind is the impact of grid line placement around material boundaries.
Other aspects include boundary layers, reference plane - port distance, mesh smoothness, max. cell size, ...
From QuickWave Help: Useful Information
Further Reading
When a port is specified based on a box-shaped volume, this results in a single source or load being placed in its center. Anecdotally, the paper below investigates the impact of point vs. linear ports on the simulation result. The user may wonder whether they are impacted, or whether they need to taper the feed and load ends of an RF circuit, or how much a simplified simulation deviates by applying such assumptions to geometry obtained from a PCB design.
Takashi HIBINO, Naobumi MICHISHITA, and Hiroyuki ARAI,
Improved Implement of S-Parameter for the FDTD Method
Automated Mesh Checks and Repair
For the user it's easy to specify nested regions with particular grid sizes, which can result in overlapping or closely spaced grid lines which, unless it has been addressed in the latest OpenEMS builds, can cause the simulation to fail. Below is my experimental implementation on the Matlab side. When in doubt, FreeCAD-OpenEMS-Export could also export the x, y, z lists explicitly after having generated, adjusted and cleaned up the values on the generator side.
FreeCAD-OpenEMS-Export experimental branch:
Beta Was this translation helpful? Give feedback.
All reactions