21 #define __FUNCT__ "PetscPreTimeStep"
30 TSGetApplicationContext(ts,&context);
32 fprintf(stderr,
"Error in PetscPreTimeStep: Null context!\n");
37 int nsims = context->
nsims;
45 TSGetTimeStep(ts,&dt);
47 TSGetStepNumber(ts,&iter);
54 TSGetType(ts,&time_scheme);
56 for (
int ns = 0; ns < nsims; ns++) {
82 if (!strcmp(time_scheme,TSARKIMEX)) {
95 for (
int ns = 0; ns < nsims; ns++) {
113 PetscFunctionReturn(0);
int npoints_local_wghosts
#define _ArraySetValue_(x, size, value)
int TransferVecFromPETSc(double *const, const Vec, void *, const int, const int)
int(* PhysicsOutput)(void *, void *, double)
int(* FFunction)(double *, double *, int, void *, double)
int(* NonlinearInterp)(double *, void *, void *, double, int(*)(double *, double *, int, void *, double))
std::vector< double > op_times_arr
double * StepBoundaryIntegral
Class implementing interface with libROM.
int TransferVecToPETSc(const double *const, Vec, void *, const int, const int)
#define _ArrayCopy1D_(x, y, size)
int OutputSolution(void *, int, double)
Structure containing the variables for time-integration with PETSc.
PetscErrorCode PetscPreTimeStep(TS)
struct timeval iter_start_time
Structure defining a simulation.
Some basic definitions and macros.
Contains macros and function definitions for common array operations.
int(* ApplyBoundaryConditions)(void *, void *, double *, double *, double)
int MPIExchangeBoundariesnD(int, int, int *, int, void *, double *)
int(* PreStep)(double *, void *, void *, double)
Structure of MPI-related variables.
C++ declarations for MPI-related functions.
int(* ApplyIBConditions)(void *, void *, double *, double)
Structure containing all solver-specific variables and functions.