Version:

salvus.mesh.algorithms.optimize_dt

salvus.mesh.algorithms.optimize_dt salvus mesh algorithms optimize_dt
A mesh smoother optimizing the miller estimate of the time step.

Functions

dgamma()

Compute the derivative of gamma.
SIGNATURE
def dgamma(
    m: UnstructuredMesh, ij: npt.NDArray, rho: float = 1.0
) -> npt.NDArray: ...
ARGUMENTS
Required
m
Type:UnstructuredMesh
Description:
The unstructured mesh object.
Required
ij
Type:npt.NDArray
Description:
ij
Optional
rho
Type:float
Default value:1.0
Description:
rho
RETURNS
Return type: npt.NDArray

dgamma_h()

Compute d gamma h.
SIGNATURE
def dgamma_h(
    m: UnstructuredMesh,
    h_ek_ref: float | npt.NDArray,
    g_exponent: int = 3,
    rho: float = 35.0,
) -> npt.NDArray: ...
ARGUMENTS
Required
m
Type:UnstructuredMesh
Description:
The mesh.
Required
h_ek_ref
Type:float | npt.NDArray
Description:
h_ek_ref
Optional
g_exponent
Type:int
Default value:3
Description:
g_exponent
Optional
rho
Type:float
Default value:35.0
Description:
rho
RETURNS
Return type: npt.NDArray

gamma()

Compute gamma.
SIGNATURE
def gamma(
    m: UnstructuredMesh,
    ij: npt.NDArray,
    rho: float = 1.0,
    return_gamma_max: bool = False,
    return_gamma_array: bool = False,
) -> npt.NDArray | float: ...
ARGUMENTS
Required
m
Type:UnstructuredMesh
Description:
The mesh.
Required
ij
Type:npt.NDArray
Description:
ij
Optional
rho
Type:float
Default value:1.0
Description:
rho
Optional
return_gamma_max
Type:bool
Default value:False
Description:
Return the max gamma value.
Optional
return_gamma_array
Type:bool
Default value:False
Description:
Return the gamme array.
RETURNS
Return type: npt.NDArray | float

gamma_h()

Compute gamma h.
SIGNATURE
def gamma_h(
    m: UnstructuredMesh,
    h_ek_ref: float | npt.NDArray,
    g_exponent: int = 3,
    rho: float = 35.0,
    return_gamma_h_max: bool = False,
) -> float | npt.NDArray: ...
ARGUMENTS
Required
m
Type:UnstructuredMesh
Description:
The mesh.
Required
h_ek_ref
Type:float | npt.NDArray
Description:
h_ek_ref
Optional
g_exponent
Type:int
Default value:3
Description:
g_exponent
Optional
rho
Type:float
Default value:35.0
Description:
rho
Optional
return_gamma_h_max
Type:bool
Default value:False
Description:
Return the max value of gamma_h.
RETURNS
Return type: float | npt.NDArray

optimize_dt()

Optimize the time step for a mesh and return a better mesh.
SIGNATURE
def optimize_dt(
    m: UnstructuredMesh,
    fixed_side_sets: list[list[set[tuple[int, int]]]] | None = None,
    maxiter: int = 50,
    rho: float = 35.0,
    rho_h: float = 35.0,
    weight_h: float = 0.0,
    h_ek_ref: npt.NDArray | float = 0.0,
    g_exponent: int = 3,
    scale_mesh: bool = True,
    scale_factor: float = 10000.0,
    verbose: bool = False,
) -> UnstructuredMesh: ...
ARGUMENTS
Required
m
Type:UnstructuredMesh
Description:
The mesh to optimize.
Optional
fixed_side_sets
Type:list[list[set[tuple[int, int]]]] | None
Default value:None
Description:
Element and side ids of the fixed side sets.
Optional
maxiter
Type:int
Default value:50
Description:
Maximum number of iterations.
Optional
rho
Type:float
Default value:35.0
Description:
rho
Optional
rho_h
Type:float
Default value:35.0
Description:
rho_h
Optional
weight_h
Type:float
Default value:0.0
Description:
weight_h
Optional
h_ek_ref
Type:npt.NDArray | float
Default value:0.0
Description:
h_ek_ref
Optional
g_exponent
Type:int
Default value:3
Description:
g_exponent
Optional
scale_mesh
Type:bool
Default value:True
Description:
Scale the mesh.
Optional
scale_factor
Type:float
Default value:10000.0
Description:
Scaling factor.
Optional
verbose
Type:bool
Default value:False
Description:
Verbosity.
RETURNS
Return type: UnstructuredMesh

optimize_dt_locally()

Locally optimize the time step of a mesh by finding the worst elements and only optimizing those.
SIGNATURE
def optimize_dt_locally(
    m: UnstructuredMesh,
    fixed_side_set_names: list[str],
    maxiter: int = 50,
    rho: float = 35.0,
    rho_h: float = 35.0,
    weight_h: float = 0.0,
    h_ek_ref: npt.NDArray[np.floating] | float = 0.0,
    g_exponent: int = 3,
    element_count_opt: int = 100,
    halo_width: int = 3,
    scale_factor: float = 10000.0,
    verbose: bool = False,
) -> UnstructuredMesh: ...
ARGUMENTS
Required
m
Type:UnstructuredMesh
Description:
The mesh to optimize.
Required
fixed_side_set_names
Type:list[str]
Description:
Names of the fixed side sets.
Optional
maxiter
Type:int
Default value:50
Description:
Maximum number of iterations.
Optional
rho
Type:float
Default value:35.0
Description:
rho
Optional
rho_h
Type:float
Default value:35.0
Description:
rho_h
Optional
weight_h
Type:float
Default value:0.0
Description:
weight_h
Optional
h_ek_ref
Type:npt.NDArray[np.floating] | float
Default value:0.0
Description:
h_ek_ref
Optional
g_exponent
Type:int
Default value:3
Description:
g_exponent
Optional
element_count_opt
Type:int
Default value:100
Description:
Number of elements to optimize.
Optional
halo_width
Type:int
Default value:3
Description:
Halo width around the problematic elements.
Optional
scale_factor
Type:float
Default value:10000.0
Description:
Scaling factor.
Optional
verbose
Type:bool
Default value:False
Description:
Verbosity.
RETURNS
Return type: UnstructuredMesh
PAGE CONTENTS