HyPar  1.0
Finite-Difference Hyperbolic-Parabolic PDE Solver on Cartesian Grids
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

◆ iter

int iter

Current iteration number

Definition at line 31 of file timeintegration_struct.h.

◆ n_iter

int n_iter

Total number of iterations

Definition at line 33 of file timeintegration_struct.h.

◆ restart_iter

int restart_iter

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

Definition at line 35 of file timeintegration_struct.h.

◆ waqt

double waqt

Current solution time

Definition at line 37 of file timeintegration_struct.h.

◆ dt

double dt

Time step size

Definition at line 39 of file timeintegration_struct.h.

◆ norm

double norm

Norm of the change in the solution at a time step

Definition at line 41 of file timeintegration_struct.h.

◆ max_cfl

double max_cfl

Maximum CFL at a time step

Definition at line 43 of file timeintegration_struct.h.

◆ max_diff

double max_diff

Maximum diffusion number at a time step

Definition at line 45 of file timeintegration_struct.h.

◆ simulation

void* simulation

Array of simulation objects of type SimulationObject

Definition at line 48 of file timeintegration_struct.h.

◆ nsims

int nsims

Number of simulation objects

Definition at line 50 of file timeintegration_struct.h.

◆ u_offsets

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.

◆ u_sizes

long* u_sizes

Local size of the solution of each simulation domain

Definition at line 57 of file timeintegration_struct.h.

◆ bf_offsets

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.

◆ bf_sizes

int* bf_sizes

Size of the boundary flux of each simulation domain

Definition at line 64 of file timeintegration_struct.h.

◆ u

double* u

Array to store the current solution

Definition at line 67 of file timeintegration_struct.h.

◆ rhs

double* rhs

Array to store the right-hand side

Definition at line 70 of file timeintegration_struct.h.

◆ u_size_total

long u_size_total

Local size of the solution vector

Definition at line 73 of file timeintegration_struct.h.

◆ bf_size_total

long bf_size_total

Local size of the boundary flux vector

Definition at line 76 of file timeintegration_struct.h.

◆ U

double** U

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

Definition at line 79 of file timeintegration_struct.h.

◆ Udot

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.

◆ rank

int rank

MPI rank of this process

Definition at line 84 of file timeintegration_struct.h.

◆ nproc

int nproc

Number of MPI processes

Definition at line 86 of file timeintegration_struct.h.

◆ BoundaryFlux

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.

◆ ResidualFile

void* ResidualFile

Pointer to file to write residual history if required

Definition at line 93 of file timeintegration_struct.h.

◆ TimeIntegrate

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.

◆ RHSFunction

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.

◆ iter_start_time

struct timeval iter_start_time

iteration start time

Definition at line 101 of file timeintegration_struct.h.

◆ iter_end_time

struct timeval iter_end_time

iteration end time

Definition at line 103 of file timeintegration_struct.h.

◆ iter_wctime

double iter_wctime

iteration wallclock time (in seconds)

Definition at line 105 of file timeintegration_struct.h.

◆ iter_wctime_total

double iter_wctime_total

Definition at line 106 of file timeintegration_struct.h.

◆ gpu_U

double* gpu_U

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

Definition at line 110 of file timeintegration_struct.h.

◆ gpu_Udot

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.

◆ gpu_BoundaryFlux

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: