ADflow  v1.0
ADflow is a finite volume RANS solver tailored for gradient-based aerodynamic design optimization.
IOModule.f90
Go to the documentation of this file.
1 module iomodule
2 !
3 ! Constants and variables used in the IO routines.
4 !
5  use constants, only: inttype, realtype, mpi_offset_kind
6  implicit none
7  save
8 !
9 ! Definition of the parameters.
10 !
11  ! The maximum amount of data a processor can read in one call
12  ! to su_file_read. This value is 2Gbyte.
13 
14  integer(kind=mpi_offset_kind), parameter :: &
15  maxsizeio = 2147483648_mpi_offset_kind
16 
17  ! Definition of the possibilities for storing data.
18 
19  integer(kind=intType), parameter :: nodedata = 1
20  integer(kind=intType), parameter :: celldatanohalo = 2
21  integer(kind=intType), parameter :: celldataplushalo = 3
22 
23 !
24 ! Definition of the derived datatype IOType, which is used to
25 ! to make the IO as general as needed.
26 !
27  type iotype
28 
29  ! pointerOffset: offset due to the usage of a pointer to a
30  ! subarray. The Fortran standard is such that
31  ! the starting indices of the pointer array
32  ! is 1, no matter what the original starting
33  ! index is. This can lead to a shift in the
34  ! indices.
35  ! w: The variable(s) to be read/written.
36 
37  integer(kind=intType) :: pointeroffset
38 
39  real(kind=realtype), dimension(:, :, :, :), pointer :: w
40 
41  end type iotype
42 
43 !
44 ! Definition of the variables used for both CGNS
45 !
46  ! IOVar(nDom,nIOFiles): Array of the derived datatype IOType to
47  ! facilitate a general IO implementation.
48 
49  type(iotype), dimension(:, :), allocatable :: iovar
50 
51 end module iomodule
integer(kind=inttype), parameter celldataplushalo
Definition: IOModule.f90:21
type(iotype), dimension(:, :), allocatable iovar
Definition: IOModule.f90:49
integer(kind=mpi_offset_kind), parameter maxsizeio
Definition: IOModule.f90:14
integer(kind=inttype), parameter celldatanohalo
Definition: IOModule.f90:20
integer(kind=inttype), parameter nodedata
Definition: IOModule.f90:19