source: branches/2011/dev_r2802_MERCATOR10_diadct/NEMOGCM/TOOLS/SECTIONS_DIADCT/src/declarations.f90 @ 2849

Last change on this file since 2849 was 2849, checked in by cbricaud, 9 years ago

tools to compute sections pathway

  • Property svn:executable set to *
File size: 3.9 KB
Line 
1MODULE declarations 
2  !!----------------------------------------------------------------------------
3  !!             *** declarations global varibles
4  !!
5  !!----------------------------------------------------------------------------
6
7  IMPLICIT NONE
8  PUBLIC
9
10  !! * Shared module variables
11  INTEGER, PUBLIC, PARAMETER   :: dp=8 , sp=4, wp=dp
12  INTEGER, PUBLIC, PARAMETER   :: nb_class_max  = 10            ! Max number of classes
13  INTEGER, PUBLIC, PARAMETER   :: nb_sec_max    = 150           ! Max number of sections
14  INTEGER, PUBLIC, PARAMETER   :: nb_point_max  = 2000          ! Max number of segment per section
15  INTEGER, PUBLIC, PARAMETER   :: nb_type_class = 14            ! Max number of types of classes
16  INTEGER, PUBLIC, PARAMETER   :: numnam=3                      ! Unit for namelist
17  INTEGER, PUBLIC, PARAMETER   :: numdctin=1                    ! Unit for input file
18  INTEGER, PUBLIC, PARAMETER   :: numdctout=2                   ! Unit for output file
19
20  INTEGER, PUBLIC              :: jpidta,jpjdta,jpizoom,jpjzoom !dimensions des fichiers lus
21  INTEGER, PUBLIC              :: jpi,jpj,jpiglo,jpjglo         !dimensions du domaine
22  INTEGER, PUBLIC              :: nlei,nlej,nlci,nlcj
23  INTEGER, PUBLIC              :: nb_sec                        ! Number of section read in input file
24  INTEGER, PUBLIC              :: nsecdebug = 0                 ! Number of the section to debug
25
26  INTEGER,  PUBLIC, DIMENSION(:)    , ALLOCATABLE :: mig
27  INTEGER,  PUBLIC, DIMENSION(:)    , ALLOCATABLE :: mjg 
28  REAL(wp), PUBLIC ,DIMENSION(:,:)  , ALLOCATABLE :: glamf,gphif,glamt,gphit,e1t
29!  REAL(wp), PUBLIC ,DIMENSION(:,:,:), ALLOCATABLE :: tmask
30  INTEGER,  PUBLIC ,DIMENSION(nb_sec_max)         :: num_sec_debug
31
32  TYPE POINT_SECTION
33     INTEGER :: I,J
34  END TYPE POINT_SECTION
35
36  TYPE COORD_SECTION
37     REAL(wp) :: lon,lat
38  END TYPE COORD_SECTION
39
40  TYPE SECTION
41     CHARACTER(len=60)                              :: name                ! name of the sec
42     LOGICAL                                        :: llstrpond           ! true if you want the computation of salinity and
43                                                                           ! temperature balanced by the transport
44     LOGICAL                                        :: ll_ice_section      ! icesurf and icevol computation
45     LOGICAL                                        :: ll_date_line        ! = T if the section crosses the date-line
46     TYPE(COORD_SECTION), DIMENSION(2)              :: coordSec            ! longitude and latitude of the extremities of the sec
47     INTEGER                                        :: nb_class            ! number of boundaries for density classes
48     INTEGER, DIMENSION(nb_point_max)               :: direction           ! vector direction of the point in the section
49     CHARACTER(len=40),DIMENSION(nb_class_max)      :: classname           ! caracteristics of the class
50     REAL(wp), DIMENSION(nb_class_max)              :: zsigi             ,&! insitu density classes    (99 if you don't want)
51                                                       zsigp             ,&! potential density classes    (99 if you don't want)
52                                                       zsal              ,&! salinity classes   (99 if you don't want)
53                                                       ztem              ,&! temperature classes(99 if you don't want)
54                                                       zlay                ! level classes      (99 if you don't want)
55     REAL(wp)                                       :: slopeSection        ! coeff directeur de la section
56     INTEGER                                        :: nb_point            ! nb de points de la section
57     TYPE(POINT_SECTION),DIMENSION(nb_point_max)    :: listPoint           ! list of point in the section
58  END TYPE SECTION
59
60  TYPE(SECTION),DIMENSION(nb_sec_max) :: secs ! Array of sections
61
62
63
64END MODULE declarations
Note: See TracBrowser for help on using the repository browser.