TimeEvolution input documentation

Initialize time evolution parameters

Used to initialize class qimpy.transport.TimeEvolution.

YAML template:

dt: 0.0             # Time step for evolution.
dt-save: 0.0        # Time interval at which to save results.
t-max: 0.0          # Stop evolution at this time.
n-collate: 0        # Number of save-steps to collect into each checkpoint file.
integrator: RK2     # Integrator for time-stepping: RK2 or RK4.
steady-state: null  # Steady state options.

Parameters:

dt

Type: float, Default: 0.0

Time step for evolution. If zero, this is set to the maximum stable time step for advection.

dt-save

Type: float, Default: 0.0

Time interval at which to save results. This will be rounded to the nearest multiple of dt to ensure that the results are written at uniform intervals.

t-max

Type: float, Default: 0.0

Stop evolution at this time.

n-collate

Type: int, Default: 0

Number of save-steps to collect into each checkpoint file. Collecting together several saves can substantially improve performance by amortizing the latency associated with disk I/O and GPU transfers. The results in the checkpoint have an additional outermost dimension corresponding to the number of collated steps.

integrator

Type: string, Default: RK2

Integrator for time-stepping: RK2 or RK4.

steady-state

Type: string or typing.Union[str, float], Default: null

Steady state options. EXPERIMENTAL: works only with a single process and geometry domain for now. Specify a dictionary of rho0_path for initial state, method for solver, nit for number of iterations and nit_save for iterations to save at.