state Derived Type

type, public :: state


Components

Type Visibility Attributes Name Initial
double precision, public, dimension(:,:,:,:,:), pointer :: B0 => Null()

Time-independent magnetic field at cell center and cell interface

double precision, public, dimension(:,:,:,:), pointer :: J0 => Null()

Time-independent electric current density at cell center

double precision, public, dimension(:,:,:,:), pointer :: ds => Null()

Cell sizes at cell center in length unit

double precision, public, dimension(:,:,:,:), pointer :: dsC => Null()

Cell sizes at cell face in length unit. Never associated: the matching geo_t member was dropped because its only reader, b_from_vector_potentialA, needs stagger_grid, which this fork does not support. That routine mpistops before touching this.

double precision, public, dimension(:,:,:), pointer :: dt => Null()

Cell local timesteps

double precision, public, dimension(:,:,:), pointer :: dvolume => Null()

Volumes of a cell

double precision, public, dimension(:,:,:,:), pointer :: dx => Null()

Cell sizes in coordinate units

double precision, public, dimension(:,:,:,:,:), pointer :: equi_vars => Null()

Time-independent equi vars (B0 is not into this array)

integer, public :: igrid = -1

ID of a grid block

logical, public, dimension(:), pointer :: is_physical_boundary(:) => Null()

If it face a physical boundary

integer, public :: istep = -1

timelevel

integer, public :: ixGmax1

index range of block array in cell centers

integer, public :: ixGmax2

index range of block array in cell centers

integer, public :: ixGmax3

index range of block array in cell centers

integer, public :: ixGmin1

index range of block array in cell centers

integer, public :: ixGmin2

index range of block array in cell centers

integer, public :: ixGmin3

index range of block array in cell centers

integer, public :: ixGsmax1

index range of block array in cell faces

integer, public :: ixGsmax2

index range of block array in cell faces

integer, public :: ixGsmax3

index range of block array in cell faces

integer, public :: ixGsmin1

index range of block array in cell faces

integer, public :: ixGsmin2

index range of block array in cell faces

integer, public :: ixGsmin3

index range of block array in cell faces

integer, public :: level

level of AMR

double precision, public, dimension(:), pointer :: special_values => Null()

special values for a block

double precision, public, dimension(:,:,:,:), pointer :: surface => Null()

Areas of cell-center surfaces. Never associated: the matching geo_t member was dropped because its only reader is curlvector's Stokesbased branch, which mpistops before touching this.

double precision, public, dimension(:,:,:,:), pointer :: surfaceC => Null()

Areas of cell-face surfaces

double precision, public, dimension(:,:,:,:), pointer :: w => Null()

Variables, normally cell center conservative values

double precision, public, dimension(:,:,:,:), allocatable :: wc

Variables, cell corner values

double precision, public, dimension(:,:,:,:), allocatable :: we

Variables, cell edge values

double precision, public, dimension(:,:,:,:), pointer :: wextra => Null()

extra variables do not need ghost cell and equation flux

double precision, public, dimension(:,:,:,:), pointer :: ws => Null()

Variables, cell face values

double precision, public, dimension(:,:,:,:), pointer :: x => Null()

Cell-center positions


Source Code

  type state
     !> ID of a grid block
     integer :: igrid=-1
     !> index range of block array in cell centers
     integer :: ixGmin1,ixGmin2,ixGmin3,ixGmax1,ixGmax2,ixGmax3
     !> index range of block array in cell faces
     integer :: ixGsmin1,ixGsmin2,ixGsmin3,ixGsmax1,ixGsmax2,ixGsmax3
     !> level of AMR
     integer :: level
     !> timelevel
     integer :: istep=-1
     !> If it face a physical boundary
     logical, dimension(:), pointer :: is_physical_boundary(:) =>Null()
     !> Variables, normally cell center conservative values
     double precision, dimension(:,:,:,:), pointer :: w => Null()
     !> Variables, cell face values
     double precision, dimension(:,:,:,:), pointer :: ws => Null()
     !> Variables, cell edge values
     double precision, dimension(:,:,:,:), allocatable :: we
     !> Variables, cell corner values
     double precision, dimension(:,:,:,:), allocatable :: wc
     !> extra variables do not need ghost cell and equation flux
     double precision, dimension(:,:,:,:), pointer :: wextra=>Null()
     !> Time-independent magnetic field at cell center and cell interface
     double precision, dimension(:,:,:,:,:), pointer :: B0=>Null()
     !> Time-independent electric current density at cell center
     double precision, dimension(:,:,:,:), pointer :: J0=>Null()
     !> Time-independent equi vars (B0 is not into this array)
     double precision, dimension(:,:,:,:,:), pointer :: equi_vars=>Null()
     !> Cell-center positions
     double precision, dimension(:,:,:,:), pointer :: x=>Null()
     !> Cell sizes in coordinate units
     double precision, dimension(:,:,:,:), pointer :: dx=>Null()
     !> Cell local timesteps
     double precision, dimension(:,:,:), pointer :: dt=>Null()
     !> Cell sizes at cell center in length unit
     double precision, dimension(:,:,:,:), pointer :: ds=>Null()
     !> Cell sizes at cell face in length unit.  Never associated: the
     !> matching geo_t member was dropped because its only reader,
     !> b_from_vector_potentialA, needs stagger_grid, which this fork does
     !> not support.  That routine mpistops before touching this.
     double precision, dimension(:,:,:,:), pointer :: dsC=>Null()
     !> Volumes of a cell
     double precision, dimension(:,:,:), pointer :: dvolume=>Null()
     !> Areas of cell-center surfaces.  Never associated: the matching geo_t
     !> member was dropped because its only reader is curlvector's
     !> Stokesbased branch, which mpistops before touching this.
     double precision, dimension(:,:,:,:), pointer :: surface=>Null()
     !> Areas of cell-face surfaces
     double precision, dimension(:,:,:,:), pointer :: surfaceC=>Null()
     !> special values for a block
     double precision, dimension(:), pointer :: special_values=>Null()
  end type state