cosapp.drivers.time.bdf

Functions

bdf_weights_1(steps)

BDF weights for y_{n}, y_{n+1}.

bdf_weights_2(steps)

BDF weights for y_{n}, y_{n+1}, y_{n+2}.

bdf_weights_3(steps)

BDF weights for y_{n}, .., y_{n+3}.

bdf_weights_4(steps)

BDF weights for y_{n}, .., y_{n+4}.

Classes

BdfIntegrator([name, order, owner, ...])

Second-order Crank-Nicolson implicit integrator.

BdfWeights(order)

class cosapp.drivers.time.bdf.BdfIntegrator(name='BDF time driver', order: int = 2, owner: System | None = None, time_interval: tuple[float, float] | None = None, dt: float | None = None, record_dt: bool = False, **options)[source]

Bases: ImplicitTimeDriver

Second-order Crank-Nicolson implicit integrator.

property order: int

order of the BDF scheme

Type:

int

class cosapp.drivers.time.bdf.BdfWeights(order: int)[source]

Bases: object

bdf_weight_funcs = {1: <function bdf_weights_1>, 2: <function bdf_weights_2>, 3: <function bdf_weights_3>, 4: <function bdf_weights_4>}
counter
order
push_step(step: float) None[source]
replace_last_step(step: float) None[source]
reset() None[source]

Reset all steps and weights to zero.

steps
weights
cosapp.drivers.time.bdf.bdf_weights_1(steps: ndarray) list[float][source]

BDF weights for y_{n}, y_{n+1}.

cosapp.drivers.time.bdf.bdf_weights_2(steps: ndarray) list[float][source]

BDF weights for y_{n}, y_{n+1}, y_{n+2}.

cosapp.drivers.time.bdf.bdf_weights_3(steps: ndarray) list[float][source]

BDF weights for y_{n}, .., y_{n+3}.

cosapp.drivers.time.bdf.bdf_weights_4(steps: ndarray) list[float][source]

BDF weights for y_{n}, .., y_{n+4}.