Advection Parameters
AdvectionParameters control the level-set advection step (i.e., how the geometry is advanced in time based on the model-provided velocity field). These parameters mainly affect stability, accuracy, and runtime.
integrationScheme is a legacy name for spatialScheme and is deprecated.
| Field | Type | Default | Description |
|---|---|---|---|
spatialScheme | SpatialScheme | ENGQUIST_OSHER_1ST_ORDER | Spatial discretization scheme for the level-set advection. |
integrationScheme (deprecated) | SpatialScheme | ENGQUIST_OSHER_1ST_ORDER | Legacy alias for spatialScheme. Use spatialScheme instead. |
temporalScheme | TemporalScheme | FORWARD_EULER | Time integration scheme for advection. |
timeStepRatio | double | 0.4999 | CFL ratio used to compute the time step from the maximum stable step. Values closer to 0.5 are larger/faster but less conservative. |
dissipationAlpha | double | 1.0 | Lax–Friedrichs dissipation scaling. Higher values are more diffusive (more stable, less sharp). |
adaptiveTimeStepSubdivisions | unsigned | 20 | Subdivisions used when adaptive time stepping is enabled. Higher values can improve robustness near interfaces at increased cost. |
checkDissipation | bool | true | Enable dissipation checks (helps avoid unstable time steps). |
velocityOutput | bool | false | Write velocity output per step (useful for debugging/analysis; may increase I/O). |
ignoreVoids | bool | false | Ignore void regions during advection (model-dependent usefulness). |
adaptiveTimeStepping | bool | false | Enable adaptive time stepping when approaching material interfaces (primarily relevant for etching). |
Enum values
SpatialScheme corresponds to viennals::SpatialSchemeEnum (common options include ENGQUIST_OSHER_1ST_ORDER, ENGQUIST_OSHER_2ND_ORDER, LAX_FRIEDRICHS_1ST_ORDER, LAX_FRIEDRICHS_2ND_ORDER, WENO_5TH_ORDER).
TemporalScheme corresponds to viennals::TemporalSchemeEnum (FORWARD_EULER, RUNGE_KUTTA_2ND_ORDER, RUNGE_KUTTA_3RD_ORDER).
