HyPar  1.0
Finite-Difference Hyperbolic-Parabolic PDE Solver on Cartesian Grids
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
TimeIntegration Struct Reference

Structure of variables/parameters and function pointers for time integration. More...

#include <timeintegration_struct.h>

Data Fields

int iter
 
int n_iter
 
int restart_iter
 
double waqt
 
double dt
 
double norm
 
double max_cfl
 
double max_diff
 
void * simulation
 
int nsims
 
long * u_offsets
 
long * u_sizes
 
int * bf_offsets
 
int * bf_sizes
 
double * u
 
double * rhs
 
long u_size_total
 
long bf_size_total
 
double ** U
 
double ** Udot
 
int rank
 
int nproc
 
double ** BoundaryFlux
 
void * ResidualFile
 
int(* TimeIntegrate )(void *)
 
int(* RHSFunction )(double *, double *, void *, void *, double)
 
struct timeval iter_start_time
 
struct timeval iter_end_time
 
double iter_wctime
 
double iter_wctime_total
 
double * gpu_U
 
double * gpu_Udot
 
double * gpu_BoundaryFlux
 

Detailed Description

Structure of variables/parameters and function pointers for time integration.

This structure contains all the variables, parameters, and function pointers required for integrating the spatially-discretized semi-discrete ordinary differential equation in time

Definition at line 29 of file timeintegration_struct.h.

Field Documentation

int iter

Current iteration number

Definition at line 31 of file timeintegration_struct.h.

int n_iter

Total number of iterations

Definition at line 33 of file timeintegration_struct.h.

int restart_iter

Restart iteration number (0 for a non-restart simulation)

Definition at line 35 of file timeintegration_struct.h.

double waqt

Current solution time

Definition at line 37 of file timeintegration_struct.h.

double dt

Time step size

Definition at line 39 of file timeintegration_struct.h.

double norm

Norm of the change in the solution at a time step

Definition at line 41 of file timeintegration_struct.h.

double max_cfl

Maximum CFL at a time step

Definition at line 43 of file timeintegration_struct.h.

double max_diff

Maximum diffusion number at a time step

Definition at line 45 of file timeintegration_struct.h.

void* simulation

Array of simulation objects of type SimulationObject

Definition at line 48 of file timeintegration_struct.h.

int nsims

Number of simulation objects

Definition at line 50 of file timeintegration_struct.h.

long* u_offsets

Offsets (positions) for the solution of each simulation domain in the big array containing all the solutions

Definition at line 54 of file timeintegration_struct.h.

long* u_sizes

Local size of the solution of each simulation domain

Definition at line 57 of file timeintegration_struct.h.

int* bf_offsets

Offsets (positions) for the boundary flux of each simulation domain in the big array containing all the boundary fluxes

Definition at line 61 of file timeintegration_struct.h.

int* bf_sizes

Size of the boundary flux of each simulation domain

Definition at line 64 of file timeintegration_struct.h.

double* u

Array to store the current solution

Definition at line 67 of file timeintegration_struct.h.

double* rhs

Array to store the right-hand side

Definition at line 70 of file timeintegration_struct.h.

long u_size_total

Local size of the solution vector

Definition at line 73 of file timeintegration_struct.h.

long bf_size_total

Local size of the boundary flux vector

Definition at line 76 of file timeintegration_struct.h.

double** U

Arrays to store stage values for a multi-stage time-integration method

Definition at line 79 of file timeintegration_struct.h.

double** Udot

Arrays to store stage right-hand-sides for a multi-stage time-integration method

Definition at line 81 of file timeintegration_struct.h.

int rank

MPI rank of this process

Definition at line 84 of file timeintegration_struct.h.

int nproc

Number of MPI processes

Definition at line 86 of file timeintegration_struct.h.

double** BoundaryFlux

Array to store the flux integral at the physical boundary at each stage of a multi-stage time-integration method (to compute conservation errors)

Definition at line 90 of file timeintegration_struct.h.

void* ResidualFile

Pointer to file to write residual history if required

Definition at line 93 of file timeintegration_struct.h.

int(* TimeIntegrate)(void *)

Pointer to the function that takes one time step using the desired method

Definition at line 96 of file timeintegration_struct.h.

int(* RHSFunction)(double *, double *, void *, void *, double)

Pointer to the function that computes the right-hand-side

Definition at line 98 of file timeintegration_struct.h.

struct timeval iter_start_time

iteration start time

Definition at line 101 of file timeintegration_struct.h.

struct timeval iter_end_time

iteration end time

Definition at line 103 of file timeintegration_struct.h.

double iter_wctime

iteration wallclock time (in seconds)

Definition at line 105 of file timeintegration_struct.h.

double iter_wctime_total

Definition at line 106 of file timeintegration_struct.h.

double* gpu_U

Arrays to store stage values for a multi-stage time-integration method

Definition at line 110 of file timeintegration_struct.h.

double* gpu_Udot

Arrays to store stage right-hand-sides for a multi-stage time-integration method

Definition at line 112 of file timeintegration_struct.h.

double* gpu_BoundaryFlux

Array to store the flux integral at the physical boundary at each stage of a multi-stage time-integration method (to compute conservation errors)

Definition at line 115 of file timeintegration_struct.h.


The documentation for this struct was generated from the following file: