10 #define ID(variable, idx, jdx, kdx) ((variable)*(d->Nx)*(d->Ny)*(d->Nz) + (idx)*(d->Ny)*(d->Nz) + (jdx)*(d->Nz) + (kdx)) 111 std::vector<std::string>
125 std::vector<std::string>
142 int id(
int var,
int i,
int j,
int k) {
143 return var * this->Nx * this->Ny * this->Nz + i * this->Ny * this->Nz + j * this->Nz + k;
164 double sigmaFunc(
double *
cons,
double * prims,
double * aux,
int i=-1,
int j=-1,
int k=-1);
205 Data(
int nx,
int ny,
int nz,
206 double xmin,
double xmax,
207 double ymin,
double ymax,
208 double zmin,
double zmax,
211 double cfl=0.5,
int Ng=4,
212 double gamma=5.0/3.0,
215 double mu1=-1.0e4,
double mu2=1.0e4,
218 bool funtionalSigma=
false,
double gam=12);
double * y
Specified coordinate location of the center of the compute cells (incl ghost cells) ...
int reportItersPeriod
Period with which time step data is reported to screen during program execution.
double dx
Witdth of specified spatial step.
int is
Cell IDs for interior grid points.
int js
Cell IDs for interior grid points.
int ny
Number of physical cells in specified direction.
int iters
Number of iterations that have been completed.
int memSet
Indicator that memory has been allocated for state vectors.
double dt
Width of current timestep.
int dims
Number of dimensions of simulation.
double * prims
Pointer to specified work array.
Data(int nx, int ny, int nz, double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, double endTime, PlatformEnv *env, double cfl=0.5, int Ng=4, double gamma=5.0/3.0, double sigma=1e3, double cp=0.1, double mu1=-1.0e4, double mu2=1.0e4, int frameskip=10, int reportItersPeriod=1, bool funtionalSigma=false, double gam=12)
Constructor – all vars specified by comma separated list.
double * sourceExtension
Pointer to specified work array.
std::vector< std::string > auxLabels
Vector of labels for the specified variables.
double dy
Witdth of specified spatial step.
double * source
Pointer to specified work array.
int Ny
Total number of compute cells in domain in the specified direction.
int frameSkip
Number of timesteps per file output.
int Ng
Number of ghost cells.
double * x
Specified coordinate location of the center of the compute cells (incl ghost cells) ...
double sigmaFunc(double *cons, double *prims, double *aux, int i=-1, int j=-1, int k=-1)
General form of conductivity.
std::vector< std::string > consLabels
Vector of labels for the specified variables.
int id(int var, int i, int j, int k)
Element ID function.
double * aux
Pointer to specified work array.
std::vector< double > optionalSimArgs
Array of optional arguments that depend on the simulation being run.
double zmax
Positional limits of domain in specified direction.
double mu1
Charge mass ratio of specified fluid species, q/m (for two fluid model)
int ks
Cell IDs for interior grid points.
double mu2
Charge mass ratio of specified fluid species, q/m (for two fluid model)
int Ntot
Total number of compute cells in domain in the specified direction.
int Nz
Total number of compute cells in domain in the specified direction.
double zmin
Positional limits of domain in specified direction.
int nz
Number of physical cells in specified direction.
double alphaY
Max wave speed in specified direction. As we are evolving EM fields, this is always the speed of ligh...
double * f
Pointer to specified work array.
std::vector< std::string > primsLabels
Vector of labels for the specified variables.
int bcsSet
Indicator that boundary conditions have been created (before this information about the domain decomp...
double alphaX
Max wave speed in specified direction. As we are evolving EM fields, this is always the speed of ligh...
double ymax
Positional limits of domain in specified direction.
double endTime
End time of simulation.
int nOptionalSimArgs
Number of elements to include in optionalSimArgs array.
double * cons
Pointer to specified work array.
double xmax
Positional limits of domain in specified direction.
int je
Cell IDs for interior grid points.
int ke
Cell IDs for interior grid points.
std::vector< std::string > optionalSimArgNames
Names of optionalSimArgs array elements.
int Naux
Number of specified variables.
int Nprims
Number of specified variables.
double xmin
Positional limits of domain in specified direction.
double gamma
Adiabatic index.
double * z
Specified coordinate location of the center of the compute cells (incl ghost cells) ...
double cp
Constant divergence cleaning term.
double gam
Exponent in the functional conductivity.
int ie
Cell IDs for interior grid points.
double cfl
Courant factor.
double ymin
Positional limits of domain in specified direction.
double dz
Witdth of specified spatial step.
bool functionalSigma
Are we using a functional (vs homogeneous) conductivity?
int nx
Number of physical cells in specified direction.
double alphaZ
Max wave speed in specified direction. As we are evolving EM fields, this is always the speed of ligh...
int Nx
Total number of compute cells in domain in the specified direction.
Object containing parameters required to populate Data, including from a restart file ...
int Ncons
Number of specified variables.
void initData(PlatformEnv *env, int nOptionalSimArgs=0, std::vector< double > optionalSimArgs=std::vector< double >(), std::vector< std::string > optionalSimArgNames=std::vector< std::string >())
Initialiser.
double * fnet
Pointer to specified work array.