data.py¶
LevelSetData
dataclass
¶
LevelSetData(
Δx: float,
Δt: float = 0,
n_total: int | None = None,
i_step: int | None = None,
t_total: float = 0,
Δt_reinitialize: float = 0.1,
κ_boost: float = 1,
n_slabfailure: int | None = None,
n_pad_pixels: int | None = None,
band_width: float | None = None,
fm_order: int | None = None,
n_pixels_xz0: tuple[int, int] | None = None,
n_pixels_xz: tuple[int, int] | None = None,
do_extend_line: bool = True,
do_φ_everywhere: bool | None = None,
domain: Domain | None = None,
raw_domain: Domain | None = None,
surface: (
StraightLineSurface
| ErrorFunctionSurface
| SemiCircularArcSurface
| QuarterCircularArcSurface
| None
) = None,
substrate: (
OneLayerSubstrate | TwoLayerSubstrate | MultiLayerSubstrate | None
) = None,
model: Isotropic | Step | ExponentialActivation | None = None,
gma: GeometricMechanicsAnalysis | None = None,
)
Base data class for front propagation.
Parameters¶
Δx: float
Grid spacing in x and z directions (assumed equal).
Δt: float = 0
Size of time step. Zero value indicates "not set yet".
Value obtained from Δt_raw in JSON parameters file.
n_total: int | None = None
Total number of time steps to take. None indicates "not set yet".
i_step: int | None = None
Index of time step.
t_total: float = 0
Total duration of simulation. Zero value indicates "not set yet".
Δt_reinitialize: float = 0.1
Period of reinitialization of φ signed-distance function grid.
κ_boost: float = 1
Scale factor for boosting numerical viscosity.
n_slabfailure: int | None = None
Width of slab to fail (be removed) in pixels (in x direction).
n_pad_pixels: int | None = None
Width of vertical padding (in pixels) above & below main grid.
Value obtained from pad_width_raw in JSON parameters file.
band_width: float | None = None
Width of level-set band across which signed-distance fn φ is computed.
Value obtained from n_band_width_raw in JSON parameters file.
fm_order: int | None = None
Order of fast marching computational stencil (only 2 seems reliable).
do_extend_line: bool = True
Choose to extend surface line artifically to ensure spanning of [0,1] z.
do_φ_everywhere: bool | None = None
compute φ across grid when measuring pixel offsets from line
surface: ( StraightLineSurface | ErrorFunctionSurface | SemiCircularArcSurface | QuarterCircularArcSurface | None ) = None
Surface class instance.
substrate: ( OneLayerSubstrate | TwoLayerSubstrate | MultiLayerSubstrate | None ) = None
Substrate class instance.
model: Isotropic | Step| ExponentialActivation | None = None
Erosion speed model class instance.
gma: GeometricMechanicsAnalysis | None = None
Geometric mechanics analysis class instance.
Attributes¶
n_pixels_xz0: tuple[int,int] | None = None Location of (0,0) in pixels on grid. n_pixels_xz: tuple[int,int] | None = None Size of grid in pixels. domain: Domain | None = None Grid domain including padding around rasterized surface line. raw_domain: Domain | None = None Grid domain, prior to padding, set purely by rasterized surface line.
Methods:
-
__post_init__–Supply default values for unspecified parameters. Generate bounds etc.
__post_init__
¶
Supply default values for unspecified parameters. Generate bounds etc.