File karniadakis.hxx

class KarniadakisSolver : public Solver

Public Functions

KarniadakisSolver(Options *options)
BoutReal getCurrentTimestep()

Return the current internal timestep.

int init(int nout, BoutReal tstep)

Initialise the solver NOTE: nout and tstep should be passed to run, not init. Needed because of how the PETSc TS code works

int run()

Run the solver, calling monitors nout times, at intervals of tstep. This function is called by solve(), and is specific to each solver type

This should probably be protected, since it shouldn’t be called by users.

void resetInternalFields()

Should wipe out internal field vector and reset from current field object data.

Private Functions

void take_step(BoutReal dt)

Private Members

Array<BoutReal> f1
Array<BoutReal> f0
Array<BoutReal> fm1
Array<BoutReal> fm2
Array<BoutReal> S0
Array<BoutReal> Sm1
Array<BoutReal> Sm2
Array<BoutReal> D0
bool first_time
BoutReal out_timestep
int nsteps
BoutReal timestep
int nsubsteps
int nlocal