Parent Directory | Revision Log
Sticky Revision: |
In cv30_feed, iflag1 is 0 on entry so we can simplify the test for iflag1 = 7. In cv30_feed, for the computation of icb, replaced sequential search (with a useless end of loop on k) by a call to locate. In CV30 routines, replaced len, nloc, nd, na by klon or klev. Philosophy: no more generality than actually necessary. Converted as many variables as possible to named constants in cv30_param_m and downgraded pbcrit, ptcrit, dtovsh, dpbase, dttrig, tau, delta to local objects in procedures. spfac, betad and omtrain are useless and removed. Instead of filling the array sigp with the constant spfac in cv30_undilute2, just made sigp a constant in cv30_unsat. In cv_driver, define as allocatable variables that are only used on the range (ncum, nl).
Created module cv_thermo_m around procedure cv_thermo. Moved variables from module cvthermo to module cv_thermo_m, where they are defined. In ini_histins and initphysto, using part of rlon and rlat from phyetat0_m is pretending that we do not know about the dynamical grid, while the way we extract zx_lon(:, 1) and zx_lat(1, :) depends on ordering inside rlon and rlat. So we might as well simplify and clarify by using directly rlonv and rlatu. Removed intermediary variables in write_histins and phystokenc.
There was a function gr_phy_write_3d in dyn3d and a function gr_phy_write_2d in module grid_change. Moved them into a new module gr_phy_write_m under a generic interface gr_phy_write. Replaced calls to gr_fi_ecrit by calls to gr_phy_write. Removed arguments len, nloc and nd of cv30_compress. Removed arguments wd and wd1 of cv30_uncompress, wd of cv30_yield, wd of concvl, wd1 of cv_driver. Was just filled with 0. Removed option ok_gust in physiq, never used. In cv30_unsat, cv30_yield and cv_driver, we only need to define b to level nl - 1.
CV3 to CV30 (following LMDZ) (continued).
CV3 to CV30 (following LMDZ).
Moved variables date0, deltat, datasz_max, ncvar_ids, point, buff_pos, buffer, regular from module histcom_var to modules where they are defined. Removed procedure ioipslmpp, useless for a sequential program. Added argument datasz_max to histwrite_real (to avoid circular dependency with histwrite). Removed useless variables and computations everywhere. Changed real litteral constants from default kind to double precision in lwb, lwu, lwvn, sw1s, swtt, swtt1, swu. Removed unused arguments: paer of sw, sw1s, sw2s, swclr; pcldsw of sw1s, sw2s; pdsig, prayl of swr; co2_ppm of clmain, clqh; tsol of transp_lay; nsrf of screenp; kcrit and kknu of gwstress; pstd of orosetup. Added output of relative humidity.
Sources inside, compilation outside.
Renamed module cvparam to cv_param. Deleted procedure cv_param. Changed variables of module cv_param into parameters. In procedures cv_driver, cv_uncompress and cv3_uncompress, removed some arguments giving dimensions and used module variables klon and klev instead. In procedures gradiv2, laplacien_gam and laplacien, changed declarations of local variables because klevel is not always klev. Removed code for nudging surface pressure. Removed arguments pim and pjm of tau2alpha. Added assignment of false to variable first. Replaced real argument del of procedures foeew and FOEDE by logical argument.
Module pressure_var is now only used in gcm. Created local variables pls and p3d in etat0, added argument p3d to regr_pr_o3. In leapfrog, moved computation of p3d and exner function immediately after integrd, for clarity (does not change the execution). Removed unused arguments: ntra, tra1 and tra of cv3_compress; ntra, tra and traent of cv3_mixing; ntra, ftra, ftra1 of cv3_uncompress; ntra, tra, trap of cv3_unsat; ntra, tra, trap, traent, ftra of cv3_yield; tra, tvp, pbase, bbase, dtvpdt1, dtvpdq1, dplcldt, dplcldr, ntra of concvl; ndp1, ntra, tra1 of cv_driver Removed argument d_tra and computation of d_tra in concvl. Removed argument ftra1 and computation of ftra1 in cv_driver. ftra1 was just set to 0 in cv_driver, associated to d_tra in concvl, and set again to zero in concvl.
Changed all ".f90" suffixes to ".f".
Moved everything out of libf.
Deleted files cvparam3.f90 and nuagecom.f90. Moved variables from module cvparam3 to module cv3_param_m. Moved variables rad_chau1 and rad_chau2 from module nuagecom to module conf_phys_m. Read clesphys2_nml from conf_phys instead of gcm. Removed argument iflag_con from several procedures. Access module variable instead.
Split "conflx.f" into single-procedure files in directory "Conflx". Split "cv_routines.f" into single-procedure files in directory "CV_routines". Made module "cvparam" from included file "cvparam.h". No included file other than "netcdf.inc" left in LMDZE.
Split "thermcell.f" and "cv3_routines.f". Removed copies of files that are now in "L_util". Moved "mva9" and "diagetpq" to their own files. Unified variable names across procedures.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.
ViewVC Help | |
Powered by ViewVC 1.1.21 |