Initialize the physical model for a simulation: Depending on the physical model specified, this function calls the initialization function for that physical model. The latter is responsible for setting all the physics-specific functions that are required by the model.
46 if (nsims == 0)
return 0;
48 if (!sim[0].mpi.rank) {
49 printf(
"Initializing physics. Model = \"%s\"\n",sim[0].solver.model);
52 for (ns = 0; ns < nsims; ns++) {
161 fprintf(stderr,
"Error (domain %d): %s is not a supported physical model.\n",
171 fprintf(stderr,
"Error (domain %d): Interpolation type is defined as characteristic ", ns);
172 fprintf(stderr,
"but physics initializations returned NULL pointers for ");
173 fprintf(stderr,
"Get(Left,Right)Eigenvectors needed for characteristic-based ");
174 fprintf(stderr,
"reconstruction.\n");
182 fprintf(stderr,
"Error (domain %d): Splitting of hyperbolic flux requires a dFFunction ", ns);
183 fprintf(stderr,
"and its upwinding function UpwinddF.\n");
184 fprintf(stderr,
"Error: f(u) = [f(u) - df(u)] + df(u).\n");
185 fprintf(stderr,
"Error: dFFunction or UpwinddF (or both) is (are) NULL.\n");
195 fprintf(stderr,
"Error in InitializePhysics() (domain %d): Physical model %s does not yet have an immersed boundary treatment.\n",
int Euler2DInitialize(void *, void *)
int FPPowerSystemInitialize(void *, void *)
int(* PrintStep)(void *, void *, double)
#define _FP_POWER_SYSTEM_3BUS_
Structure containing variables and parameters specific to the 1D Shallow Water equations. This structure contains the physical parameters, variables, and function pointers specific to the 1D ShallowWater equations.
#define _LINEAR_ADVECTION_DIFFUSION_REACTION_
int NavierStokes3DInitialize(void *, void *)
int(* PhysicsOutput)(void *, void *, double)
int(* GFunction)(double *, double *, int, void *, double)
Structure defining a simulation.
Structure containing variables and parameters specific to the 1D Euler equations. This structure cont...
char SplitHyperbolicFlux[_MAX_STRING_SIZE_]
#define _NAVIER_STOKES_2D_
Structure containing variables and parameters specific to the 3D Navier Stokes equations. This structure contains the physical parameters, variables, and function pointers specific to the 3D Navier-Stokes equations.
int VlasovInitialize(void *, void *)
int ShallowWater2DInitialize(void *, void *)
int(* KFunction)(double *, double *, void *, int, int)
int(* HFunction)(double *, double *, int, int, void *, double)
int(* AveragingFunction)(double *, double *, double *, void *)
int(* FdFFunction)(double *, double *, int, void *, double)
int(* SFunction)(double *, double *, void *, void *, double)
int(* IBFunction)(void *, void *, double *, double)
int(* PhysicsInput)(void *, void *, int, int, int *)
int(* Upwind)(double *, double *, double *, double *, double *, double *, int, void *, double)
Structure containing variables and parameters specific to the linear advection-diffusion-reaction mod...
int(* FFunction)(double *, double *, int, void *, double)
#define _FP_POWER_SYSTEM_1BUS_
#define _FP_POWER_SYSTEM_
double(* ComputeCFL)(void *, void *, double, double)
int FPPowerSystem1BusInitialize(void *, void *)
int ShallowWater1DInitialize(void *, void *)
Structure containing variables and parameters specific to the 2D Shallow Water equations. This structure contains the physical parameters, variables, and function pointers specific to the 2D ShallowWater equations.
Structure containing all solver-specific variables and functions.
int Euler1DInitialize(void *, void *)
#define _SHALLOW_WATER_1D_
int(* PreStage)(int, double **, void *, void *, double)
int FPDoubleWellInitialize(void *, void *)
char interp_type[_MAX_STRING_SIZE_]
#define _SHALLOW_WATER_2D_
int(* PreStep)(double *, void *, void *, double)
int(* UpwindFdF)(double *, double *, double *, double *, double *, double *, int, void *, double)
Structure containing variables and parameters specific to the 2D Navier Stokes equations. This structure contains the physical parameters, variables, and function pointers specific to the 2D Navier-Stokes equations.
double(* ComputeDiffNumber)(void *, void *, double, double)
int LinearADRInitialize(void *, void *)
int(* PostStep)(double *, void *, void *, double, int)
int(* dFFunction)(double *, double *, int, void *, double)
int NavierStokes2DInitialize(void *, void *)
char model[_MAX_STRING_SIZE_]
int(* JFunction)(double *, double *, void *, int, int, int)
int BurgersInitialize(void *, void *)
int(* PostStage)(double *, void *, void *, double)
int(* UpwinddF)(double *, double *, double *, double *, double *, double *, int, void *, double)
Structure of MPI-related variables.
Structure containing variable and parameters specific to the 3-bus power system model. This structure contains the physical parameters and variables for the Fokker-Planck model for a 3-bus power system.
#define _NAVIER_STOKES_3D_
int(* GetRightEigenvectors)(double *, double *, void *, int)
int(* GetLeftEigenvectors)(double *, double *, void *, int)
int FPPowerSystem3BusInitialize(void *, void *)
int(* UFunction)(double *, double *, int, void *, void *, double)
int Numa3DInitialize(void *, void *)
int Numa2DInitialize(void *, void *)