62 lines
3.6 KiB
Fortran
Executable File
62 lines
3.6 KiB
Fortran
Executable File
MODULE declarations
|
|
!!----------------------------------------------------------------------------
|
|
!! *** declarations global varibles
|
|
!!
|
|
!! History: 2011: Clement Bricaud, Mercator-Ocean
|
|
!!
|
|
!!----------------------------------------------------------------------------
|
|
|
|
IMPLICIT NONE
|
|
PUBLIC
|
|
|
|
!! * Shared module variables
|
|
INTEGER, PUBLIC, PARAMETER :: dp=8 , sp=4, wp=dp
|
|
INTEGER, PUBLIC, PARAMETER :: nb_class_max = 10 ! Max number of classes
|
|
INTEGER, PUBLIC, PARAMETER :: nb_sec_max = 150 ! Max number of sections
|
|
INTEGER, PUBLIC, PARAMETER :: nb_point_max = 2000 ! Max number of segments per section
|
|
INTEGER, PUBLIC, PARAMETER :: nb_type_class = 10 ! Max number of types of classes
|
|
INTEGER, PUBLIC, PARAMETER :: numnam=3 ! Unit for namelist
|
|
INTEGER, PUBLIC, PARAMETER :: numdctin=1 ! Unit for input file
|
|
INTEGER, PUBLIC, PARAMETER :: numdctout=2 ! Unit for output file
|
|
|
|
INTEGER, PUBLIC :: jpi,jpj ! domain dimensions
|
|
INTEGER, PUBLIC :: nb_sec ! Number of sections read from input file
|
|
INTEGER, PUBLIC :: nsecdebug = 0 ! Number of the section to debug
|
|
|
|
REAL(wp), PUBLIC ,DIMENSION(:,:) , ALLOCATABLE :: glamf,gphif,glamt,gphit,e1t
|
|
INTEGER, PUBLIC ,DIMENSION(nb_sec_max) :: num_sec_debug
|
|
|
|
TYPE POINT_SECTION
|
|
INTEGER :: I,J
|
|
END TYPE POINT_SECTION
|
|
|
|
TYPE COORD_SECTION
|
|
REAL(wp) :: lon,lat
|
|
END TYPE COORD_SECTION
|
|
|
|
TYPE SECTION
|
|
CHARACTER(len=60) :: name ! name of the sec
|
|
LOGICAL :: llstrpond ! true if you want the computation of salt
|
|
! and heat transport
|
|
LOGICAL :: ll_ice_section ! ice surface and icevolume transport computation
|
|
LOGICAL :: ll_date_line ! = T if the section crosses the date-line
|
|
TYPE(COORD_SECTION), DIMENSION(2) :: coordSec ! longitude and latitude of the extremities of the section
|
|
INTEGER :: nb_class ! number of boundaries for density classes
|
|
INTEGER, DIMENSION(nb_point_max) :: direction ! vector direction of the point in the section
|
|
CHARACTER(len=40),DIMENSION(nb_class_max) :: classname ! characteristics of the class
|
|
REAL(wp), DIMENSION(nb_class_max) :: zsigi ,&! insitu density classes (99 if you don't want)
|
|
zsigp ,&! potential density classes (99 if you don't want)
|
|
zsal ,&! salinity classes (99 if you don't want)
|
|
ztem ,&! temperature classes(99 if you don't want)
|
|
zlay ! depth level classes (99 if you don't want)
|
|
REAL(wp) :: slopeSection ! slope of the section
|
|
INTEGER :: nb_point ! number of points in the section
|
|
TYPE(POINT_SECTION),DIMENSION(nb_point_max) :: listPoint ! list of points in the section
|
|
END TYPE SECTION
|
|
|
|
TYPE(SECTION),DIMENSION(nb_sec_max) :: secs ! Array of sections
|
|
|
|
|
|
|
|
END MODULE declarations
|