Skip to content

Commit 85b6ccb

Browse files
Updates readme with latest driver available inputs.
1 parent ef295f2 commit 85b6ccb

1 file changed

Lines changed: 15 additions & 3 deletions

File tree

README.md

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ MFEM is included as a submodule (`external/mfem-geg`) and built automatically. T
102102
### Defining a JSON file
103103

104104
Cases can be defined by parsing a JSON file with the problem information. See a complete [example](https://github.com/OpenSEMBA/dgtd/blob/main/testData/maxwellInputs/1D_PEC/1D_PEC.json) of a valid JSON file.
105+
Each case must follow the enforced repository naming layout: the case folder name, the `.json` filename, the `.msh` filename, and `model.filename` must all share the same `<case_name>` base, and `model.filename` must not include a path.
105106
An OpenSEMBA/dgtd JSON file must have the following structure. Legend: **[REQUIRED]** = must be present; **[OPTIONAL]** = has a default value (shown).
106107

107108
- solver_options:
@@ -148,7 +149,9 @@ An OpenSEMBA/dgtd JSON file must have the following structure. Legend: **[REQUIR
148149
- **tags**:
149150
- Array of integers. Mesh boundary attribute IDs. (Surfaces in 3D, Segments in 2D, Points in 1D.)
150151
- **type**:
151-
- String. Boundary condition class. Can be `"PEC"`, `"PMC"`, `"SMA"`, or `"SGBC"`.
152+
- String. Boundary condition class. Can be `"PEC"`, `"PMC"`, `"SMA"`, `"SGBC"`, or `"SBC_PML"`.
153+
- *(For `type: "SGBC"` or `type: "SBC_PML"` only)* exporter_probe:
154+
- Boolean. If `true` and a top-level `probes.exporter` exists, also exports the internal SGBC sub-solver fields using the exporter cadence. The dataset is named `InsideSGBC_tag<first_tag>`.
152155
- *(For `type: "SGBC"` only)* material:
153156
- Object. Defines a single-layer surface general boundary condition. Mutually exclusive with `layers`.
154157
- relative_permittivity: Double. Defaults to `1.0`.
@@ -163,6 +166,9 @@ An OpenSEMBA/dgtd JSON file must have the following structure. Legend: **[REQUIR
163166
- Object. Boundary conditions applied to the outer and inner faces of the SGBC sub-domain. Can be placed at the boundary level or inside `material` (the latter is kept for backward compatibility).
164167
- left: String. Condition on the outer (field-side) face. Can be `"PEC"`, `"PMC"`, or `"SMA"`.
165168
- right: String. Condition on the inner face. Can be `"PEC"`, `"PMC"`, or `"SMA"`.
169+
- *(For `type: "SBC_PML"` only)*
170+
- Automatic absorbing-layer shortcut built on the SGBC machinery. `material`, `layers`, and `sgbc_boundaries` must not be provided.
171+
- The current preset generates one lossless vacuum layer sized from the maximum source frequency estimate, with fixed order/segment defaults, and forces the internal right boundary to `SMA`.
166172

167173
- probes:
168174
- Object. Controls data extraction. If undefined, no data is recorded.
@@ -181,6 +187,11 @@ An OpenSEMBA/dgtd JSON file must have the following structure. Legend: **[REQUIR
181187
- **polarization**: String. Component to record. Can be `"X"`, `"Y"`, or `"Z"`.
182188
- **position**: Array of doubles. Spatial coordinates. Same constraints as for `point`.
183189
- steps / saves: (steps and saves are mutually exclusive; see `exporter` above for details)
190+
- farfield:
191+
- Array. Each entry exports E/H fields on a near-to-far-field surface submesh for later far-field post-processing. Output is written under `Exports/<run-mode>/<case>/NearToFarFieldProbes/<name>/rank<rank>`.
192+
- **tags**: Array of integers. Boundary tags that define the near-to-far-field surface.
193+
- name: String. Defaults to `"NearFieldProbe"`.
194+
- steps / saves: (steps and saves are mutually exclusive; see `exporter` above for details)
184195
- domain_snapshot:
185196
- Object. Periodic full-domain field snapshot (alternative to the incremental exporter).
186197
- name: String. Output name. Defaults to mesh filename (e.g. `mesh.msh` → `mesh`).
@@ -199,6 +210,7 @@ An OpenSEMBA/dgtd JSON file must have the following structure. Legend: **[REQUIR
199210

200211
- **sources**:
201212
- Array. Defines the electromagnetic excitation. At least one source is required.
213+
- All entries in `sources` are instantiated and superimposed during the run. Multiple simultaneous planewave entries are supported.
202214
- **type**: String. Can be `"initial"`, `"planewave"`, or `"dipole"`.
203215

204216
*For `type: "initial"` — volumetric initial condition:*
@@ -217,15 +229,15 @@ An OpenSEMBA/dgtd JSON file must have the following structure. Legend: **[REQUIR
217229
- **propagation**: Array of 3 doubles. Wave propagation direction vector.
218230
- **magnitude**: Object.
219231
- **spread**: Double. Standard deviation $\sigma$ of the Gaussian envelope.
220-
- **mean**: Array of doubles. Position of the Gaussian center projected onto the propagation axis at $t = 0$. Typically set behind the TFSF box. Provide as a 1-, 2-, or 3-component vector matching the mesh dimension.
232+
- mean: Array of doubles. Optional. Position of the Gaussian center projected onto the propagation axis at $t = 0$. Provide as a 1-, 2-, or 3-component vector matching the mesh dimension. If omitted, the solver auto-computes a value aligned with `propagation` so the pulse starts about $5\sigma$ before the most upstream TFSF point.
221233
- frequency: Double (Hz). Carrier frequency. If defined, wraps the Gaussian in a sinusoidal modulation (modulated Gaussian). If omitted, a broadband Gaussian pulse is used.
222234

223235
*For `type: "dipole"` — derivative-Gaussian dipole source within a TFSF box:*
224236
- **tags**: Array of integers. Mesh boundary tags that form the TFSF interface surface.
225237
- **magnitude**: Object.
226238
- **length**: Double. Dipole length.
227239
- **spread**: Double. Gaussian spread parameter.
228-
- **mean**: Double. Gaussian center position along the dipole axis.
240+
- mean: Double. Optional. Gaussian center position along the dipole axis. If omitted, the solver auto-computes it from the nearest TFSF-surface radius and clamps it to a stable minimum.
229241

230242

231243
## MOR To ParaView Post-Processing

0 commit comments

Comments
 (0)