/[lmdze]/trunk/dyn3d/comgeom.f
ViewVC logotype

Annotation of /trunk/dyn3d/comgeom.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 57 - (hide annotations)
Mon Jan 30 12:54:02 2012 UTC (12 years, 4 months ago) by guez
Original Path: trunk/libf/dyn3d/comgeom.f90
File size: 3578 byte(s)
Write used namelists to file "" instead of standard output.

Avoid aliasing in "inidissip" in calls to "divgrad2", "divgrad",
"gradiv2", "gradiv", "nxgraro2" and "nxgrarot". Add a degenerate
dimension to arrays so they have rank 3, like the dummy arguments in
"divgrad2", "divgrad", "gradiv2", "gradiv", "nxgraro2" and "nxgrarot".

Extract the initialization part from "bilan_dyn" and make a separate
procedure, "init_dynzon", from it.

Move variables from modules "iniprint" and "logic" to module
"conf_gcm_m".

Promote internal procedures of "fxy" to private procedures of module
"fxy_m".

Extracted documentation from "inigeom". Removed useless "save"
attributes. Removed useless intermediate variables. Extracted
processing of poles from loop on latitudes. Write coordinates to file
"longitude_latitude.txt" instead of standard output.

Do not use ozone tracer for radiative transfer.

1 guez 3 module comgeom
2    
3     use dimens_m, only: iim, jjm
4     use paramet_m, only: ip1jmp1, ip1jm
5    
6     implicit none
7    
8     private iim, jjm, ip1jmp1, ip1jm
9    
10     real cu_2d(iim + 1, jjm + 1), cv_2d(iim + 1, jjm)
11     real cu(ip1jmp1), cv(ip1jm)
12     equivalence (cu, cu_2d), (cv, cv_2d)
13    
14     real unscu2_2d(iim + 1, jjm + 1)
15     real unscu2(ip1jmp1)
16     equivalence (unscu2, unscu2_2d)
17    
18 guez 46 real unscv2_2d(iim + 1, jjm)
19 guez 3 real unscv2(ip1jm)
20     equivalence (unscv2, unscv2_2d)
21    
22 guez 46 real aire_2d(iim + 1, jjm + 1), airesurg_2d(iim + 1, jjm + 1)
23 guez 3 real aire(ip1jmp1), airesurg(ip1jmp1)
24     equivalence (aire, aire_2d), (airesurg, airesurg_2d)
25    
26 guez 57 real aireu_2d(iim + 1, jjm + 1) ! in m2
27     real aireu(ip1jmp1) ! in m2
28 guez 3 equivalence (aireu, aireu_2d)
29    
30 guez 46 real airev_2d(iim + 1, jjm), unsaire_2d(iim + 1, jjm + 1)
31     real airev(ip1jm), unsaire(ip1jmp1)
32 guez 3 equivalence (airev, airev_2d), (unsaire, unsaire_2d)
33    
34 guez 46 real apoln, apols
35 guez 3
36 guez 46 real unsairez_2d(iim + 1, jjm)
37 guez 25 real unsairez(ip1jm)
38     equivalence (unsairez, unsairez_2d)
39 guez 3
40 guez 46 real alpha1_2d(iim + 1, jjm + 1)
41 guez 25 real alpha1(ip1jmp1)
42     equivalence (alpha1, alpha1_2d)
43 guez 3
44 guez 46 real alpha2_2d(iim + 1, jjm + 1)
45 guez 3 real alpha2(ip1jmp1)
46     equivalence (alpha2, alpha2_2d)
47    
48 guez 46 real alpha3_2d(iim + 1, jjm + 1), alpha4_2d(iim + 1, jjm + 1)
49 guez 3 real alpha3(ip1jmp1), alpha4(ip1jmp1)
50     equivalence (alpha3, alpha3_2d), (alpha4, alpha4_2d)
51    
52 guez 46 real alpha1p2_2d(iim + 1, jjm + 1)
53 guez 3 real alpha1p2(ip1jmp1)
54     equivalence (alpha1p2, alpha1p2_2d)
55    
56 guez 46 real alpha1p4_2d(iim + 1, jjm + 1), alpha2p3_2d(iim + 1, jjm + 1)
57     real alpha1p4(ip1jmp1), alpha2p3(ip1jmp1)
58 guez 3 equivalence (alpha1p4, alpha1p4_2d), (alpha2p3, alpha2p3_2d)
59    
60     real alpha3p4(ip1jmp1)
61 guez 46 real alpha3p4_2d(iim + 1, jjm + 1)
62 guez 3 equivalence (alpha3p4, alpha3p4_2d)
63    
64 guez 46 real fext_2d(iim + 1, jjm), constang_2d(iim + 1, jjm + 1)
65     real fext(ip1jm), constang(ip1jmp1)
66 guez 3 equivalence (fext, fext_2d), (constang, constang_2d)
67    
68     real rlatu(jjm + 1)
69     ! (latitudes of points of the "scalar" and "u" grid, in rad)
70    
71     real rlatv(jjm)
72     ! (latitudes of points of the "v" grid, in rad, in decreasing order)
73    
74     real rlonu(iim + 1) ! longitudes of points of the "u" grid, in rad
75    
76     real rlonv(iim + 1)
77     ! (longitudes of points of the "scalar" and "v" grid, in rad)
78    
79 guez 46 real cuvsurcv_2d(iim + 1, jjm), cvsurcuv_2d(iim + 1, jjm)
80     real cuvsurcv(ip1jm), cvsurcuv(ip1jm)
81 guez 3 equivalence (cuvsurcv, cuvsurcv_2d), (cvsurcuv, cvsurcuv_2d)
82    
83 guez 46 real cvusurcu_2d(iim + 1, jjm + 1), cusurcvu_2d(iim + 1, jjm + 1)
84     real cvusurcu(ip1jmp1), cusurcvu(ip1jmp1)
85 guez 3 equivalence (cvusurcu, cvusurcu_2d), (cusurcvu, cusurcvu_2d)
86    
87 guez 46 real cuvscvgam1_2d(iim + 1, jjm)
88 guez 3 real cuvscvgam1(ip1jm)
89     equivalence (cuvscvgam1, cuvscvgam1_2d)
90    
91 guez 46 real cuvscvgam2_2d(iim + 1, jjm), cvuscugam1_2d(iim + 1, jjm + 1)
92     real cuvscvgam2(ip1jm), cvuscugam1(ip1jmp1)
93 guez 3 equivalence (cuvscvgam2, cuvscvgam2_2d), (cvuscugam1, cvuscugam1_2d)
94    
95 guez 46 real cvuscugam2_2d(iim + 1, jjm + 1), cvscuvgam_2d(iim + 1, jjm)
96     real cvuscugam2(ip1jmp1), cvscuvgam(ip1jm)
97 guez 3 equivalence (cvuscugam2, cvuscugam2_2d), (cvscuvgam, cvscuvgam_2d)
98    
99     real cuscvugam(ip1jmp1)
100 guez 46 real cuscvugam_2d(iim + 1, jjm + 1)
101 guez 3 equivalence (cuscvugam, cuscvugam_2d)
102    
103 guez 46 real unsapolnga1, unsapolnga2, unsapolsga1, unsapolsga2
104 guez 3
105 guez 46 real unsair_gam1_2d(iim + 1, jjm + 1), unsair_gam2_2d(iim + 1, jjm + 1)
106     real unsair_gam1(ip1jmp1), unsair_gam2(ip1jmp1)
107 guez 3 equivalence (unsair_gam1, unsair_gam1_2d), (unsair_gam2, unsair_gam2_2d)
108    
109 guez 46 real unsairz_gam_2d(iim + 1, jjm)
110 guez 3 real unsairz_gam(ip1jm)
111     equivalence (unsairz_gam, unsairz_gam_2d)
112    
113 guez 46 real xprimu(iim + 1), xprimv(iim + 1)
114 guez 3
115     save
116    
117     end module comgeom

  ViewVC Help
Powered by ViewVC 1.1.21