source: trunk/WRF.COMMON/WRFV2/call_meso_inifis4.inc @ 3026

Last change on this file since 3026 was 1212, checked in by aslmd, 11 years ago

LMDZ.MARS + MESOSCALE

A quite major commit, at least for MESOSCALE.
In a word: any ngrid deserves to be free.

  • no need to recompile when changing number of horizontal grid points or number of processors
  • latest version of LMDZ.MARS physics can be used
  • WARNING! Nesting is still yet to be fixed (since r1027)

Also some small bug fixes to LMDZ.MARS.

Changes in LMDZ.MARS


--> fixed a potential bug in thermal plume model because zlmax was computed both in thermcell_main_mars and calltherm_interface... so made it an OUT argument of calltherm_interface. also: changed the name to limz. and added precompiling flags to avoid the use of planetwide in MESOSCALE. in MESOSCALE we just go high enough (nlayer-5) and do not care about computational cost (although we certainly gain from not using MAXVAL).
--> moved allocations upward in inifis. does not change anything for GCM, but make MESOSCALE modifications simpler, and overall make inifis better organized: first allocations, then reading callphys.def file.
--> added precompiling flags around lines that are both useless for MESOSCALE (notably I/O) and recently adapted to parallel computations in the GCM
--> tidied up what is MESOSCALE vs. GCM in surfini

Changes in MESOSCALE


--> changed makemeso to allow dynamically set nx ny nprocs
--> changed makemeso to remove links to Fortran code adapted to parallel GCM and useless for mesoscale
--> changed ngridmx to ngrid in inifis includes

File size: 4.4 KB
Line 
1!
2! part of the module_lmd_driver program
3! that is (number of domains)-dependent
4!
5
6
7SELECT CASE (id)
8
9       CASE(1)
10       CALL inifis(ngrid,nlayer, &
11#ifdef NEWPHYS
12               nq,  &
13#endif
14               wday_ini,wdaysec,                &
15               wappel_phys,                     &
16               lat_vec,lon_vec,aire_vec,1/reradius,g,r_d,cp,           &
17#ifdef NEWPHYS
18               dt,                                                     &
19#else
20               nq,dt,                                                &
21#endif
22               womeg,wmugaz,                                           &
23               wyear_day,wperiheli,waphelie,wperi_day,wobliquit,       &
24               wz0,wemin_turb,wlmixmin,                                &
25               wemissiv,wemissiceN,wemissiceS,walbediceN,walbediceS,   &
26               wiceradiusN,wiceradiusS,wdtemisiceN,wdtemisiceS,        &
27#ifdef NEWPHYS
28               walbedodat, wphisfi, wvolcapa, wz0tab,                  &
29#else
30               walbedodat, winertiedat, wphisfi,                       &
31#endif
32               wzmea,wzstd,wzsig,wzgam,wzthe,                          &
33               wtheta, wpsi)
34
35       CASE(2)
36       CALL d2_inifis(ngrid,nlayer, &
37#ifdef NEWPHYS
38               nq,  &
39#endif
40               wday_ini,wdaysec,                   &
41               wappel_phys,                        &
42               lat_vec,lon_vec,aire_vec,1/reradius,g,r_d,cp,           &
43#ifdef NEWPHYS
44               dt,                                                     &
45#else
46               nq,dt,                                                &
47#endif
48               womeg,wmugaz,                                           &
49               wyear_day,wperiheli,waphelie,wperi_day,wobliquit,       &
50               wz0,wemin_turb,wlmixmin,                                &
51               wemissiv,wemissiceN,wemissiceS,walbediceN,walbediceS,   &
52               wiceradiusN,wiceradiusS,wdtemisiceN,wdtemisiceS,        &
53#ifdef NEWPHYS
54               walbedodat, wphisfi, wvolcapa, wz0tab,                  &
55#else
56               walbedodat, winertiedat, wphisfi,                       &
57#endif
58               wzmea,wzstd,wzsig,wzgam,wzthe,                          &
59               wtheta, wpsi)
60
61       CASE(3)
62       CALL d3_inifis(ngrid,nlayer, &
63#ifdef NEWPHYS
64               nq,  &
65#endif
66               wday_ini,wdaysec,                   &
67               wappel_phys,                        &
68               lat_vec,lon_vec,aire_vec,1/reradius,g,r_d,cp,           &
69#ifdef NEWPHYS
70               dt,                                                     &
71#else
72               nq,dt,                                                &
73#endif
74               womeg,wmugaz,                                           &
75               wyear_day,wperiheli,waphelie,wperi_day,wobliquit,       &
76               wz0,wemin_turb,wlmixmin,                                &
77               wemissiv,wemissiceN,wemissiceS,walbediceN,walbediceS,   &
78               wiceradiusN,wiceradiusS,wdtemisiceN,wdtemisiceS,        &
79#ifdef NEWPHYS
80               walbedodat, wphisfi, wvolcapa, wz0tab,                  &
81#else
82               walbedodat, winertiedat, wphisfi,                       &
83#endif
84               wzmea,wzstd,wzsig,wzgam,wzthe,                          &
85               wtheta, wpsi)
86
87       CASE(4)
88       CALL d4_inifis(ngrid,nlayer, &
89#ifdef NEWPHYS
90               nq,  &
91#endif
92               wday_ini,wdaysec,                   &
93               wappel_phys,                        &
94               lat_vec,lon_vec,aire_vec,1/reradius,g,r_d,cp,           &
95#ifdef NEWPHYS
96               dt,                                                     &
97#else
98               nq,dt,                                                &
99#endif
100               womeg,wmugaz,                                           &
101               wyear_day,wperiheli,waphelie,wperi_day,wobliquit,       &
102               wz0,wemin_turb,wlmixmin,                                &
103               wemissiv,wemissiceN,wemissiceS,walbediceN,walbediceS,   &
104               wiceradiusN,wiceradiusS,wdtemisiceN,wdtemisiceS,        &
105#ifdef NEWPHYS
106               walbedodat, wphisfi, wvolcapa, wz0tab,                  &
107#else
108               walbedodat, winertiedat, wphisfi,                       &
109#endif
110               wzmea,wzstd,wzsig,wzgam,wzthe,                          &
111               wtheta, wpsi)
112
113
114
115!
116!       CASE(3:)
117!       print *, '** Mars ** Not supported ...'
118!       stop
119!
120END SELECT
Note: See TracBrowser for help on using the repository browser.