1 | ! tracer parameters and arrays |
---|
2 | ! try to minimize use of allocatable arrays |
---|
3 | |
---|
4 | module tracer_vars |
---|
5 | |
---|
6 | use module3d_phy |
---|
7 | |
---|
8 | implicit none |
---|
9 | save |
---|
10 | |
---|
11 | integer, dimension(nx*ny) :: ix, jx |
---|
12 | |
---|
13 | !! The integer array indx_tr(i,j) yields an index value which is the |
---|
14 | !! ij subscript of the tracer archive array archive_tr(:,:,:) |
---|
15 | |
---|
16 | integer :: nij ! number of (i,j)->ij mappings |
---|
17 | |
---|
18 | integer, parameter :: unit_tr_dat=572 |
---|
19 | integer, parameter :: unit_tr_out=573 |
---|
20 | integer, parameter :: unit_tr_dep=574 |
---|
21 | |
---|
22 | integer, parameter :: maxspectimes=31 |
---|
23 | |
---|
24 | integer :: delttrout |
---|
25 | integer :: nspectimes |
---|
26 | real :: time_max_accu |
---|
27 | |
---|
28 | ! afq marion dufresne: tracer with no climat perturb |
---|
29 | ! i.e. we read the Forcage Tpert to compute past accumulation via |
---|
30 | ! rappact |
---|
31 | ! OR we read directly past accum (choice in namelist) |
---|
32 | ! if past accum is given it will still be read with the name Tpert |
---|
33 | ! the past accum given should be the ratio acc_palaeo / acc_present |
---|
34 | integer :: nft_tra ! number of snapshot Tpert |
---|
35 | integer :: type_accum ! Tpert is given (=0) or accpert (1) |
---|
36 | real :: rappact_tra ! accumulation ratio to convert Tpert |
---|
37 | real :: coeft_tra ! coeft to convert Tpert |
---|
38 | real,dimension(:),allocatable :: tpert_tra ! temperature perturbation |
---|
39 | real,dimension(:),allocatable :: tdate_tra ! time for Tpert |
---|
40 | |
---|
41 | |
---|
42 | integer, dimension(maxspectimes) :: trout |
---|
43 | real, dimension(nx) :: xgrid |
---|
44 | real, dimension(ny) :: ygrid |
---|
45 | |
---|
46 | real , dimension(nx*ny) :: TS_save |
---|
47 | real , dimension(nx*ny) :: hi_save |
---|
48 | real , dimension(nx*ny) :: bi_save |
---|
49 | |
---|
50 | !! Traced scalars (xd, yd, td) for sheet |
---|
51 | !! (deposition point and deposition time) for present and previous times |
---|
52 | |
---|
53 | ! dep, tableau (grille 'o') "origine de la glace" au temp time |
---|
54 | real , dimension(nz,nx-2,ny-2) :: xdep |
---|
55 | real , dimension(nz,nx-2,ny-2) :: ydep |
---|
56 | real , dimension(nz,nx-2,ny-2) :: tdep |
---|
57 | |
---|
58 | ! dep, tableau (grille 'o') "origine de la glace" a l'initialisation (a confirmer) |
---|
59 | real , dimension(nz,nx-2,ny-2) :: xdepk ! |
---|
60 | real , dimension(nz,nx-2,ny-2) :: ydepk ! |
---|
61 | real , dimension(nz,nx-2,ny-2) :: tdepk ! |
---|
62 | |
---|
63 | ! dep, tableau (grille 'o') "origine de la glace" au temp time, dimension pour outputs |
---|
64 | real , dimension(nx,ny,nz) :: xdep_out |
---|
65 | real , dimension(nx,ny,nz) :: ydep_out |
---|
66 | real , dimension(nx,ny,nz) :: tdep_out |
---|
67 | |
---|
68 | real , dimension(nz) :: lnzeta |
---|
69 | |
---|
70 | character (LEN=60) :: file_tr_dat, file_tr_out, file_tr_dep |
---|
71 | |
---|
72 | real , dimension(nx,ny,nz) :: uxsave |
---|
73 | real , dimension(nx,ny,nz) :: uysave |
---|
74 | real , dimension(nx,ny,nz) :: uzrsave |
---|
75 | |
---|
76 | real , allocatable, dimension(:) :: accucumul |
---|
77 | |
---|
78 | real, dimension(nx-2,ny-2) :: freezeon |
---|
79 | |
---|
80 | |
---|
81 | end module tracer_vars |
---|
82 | |
---|