Parent Directory | Revision Log
Links to HEAD: | (view) (annotate) |
Sticky Revision: |
Change all `.f` suffixes to `.f90`. (The opposite was done in revision 82.) Because of change of philosopy in GNUmakefile: we already had a rewritten rule for `.f`, so it does not make the makefile longer to replace it by a rule for `.f90`. And it spares us options of makedepf90 and of the compiler. Also we prepare the way for a simpler `CMakeLists.txt`.
Rename variable zmasq of module phyetat0_m to masque, which was already its name in "restartphy.nc". Rename variable fraclic of procedure etat0 to landice, which was already its name in "landiceref.nc". Style guide: we try to have the same names for identical data objects across the program. In procedure interfsurf_hq, in case is_sic, define tsurf instead of tsurf_new, avoiding a copy from tsurf_new to tsurf.
Move Sources/* to root directory.
clcdrag is no longer used in LMDZ. Replaced by cdrag in LMDZ. In cdrag in LMDZ, zxli is a symbolic constant, false. So removed case zxli true in LMDZE. read_sst is called zero (if no ocean point on the whole planet) time or once per call of physiq. If mod(itap - 1, lmt_pas) == 0 then we have advanced in time of lmt_pas and deja_lu is necessarily false. qsat[sl] and dqsat[sl] were never called. Added output of qsurf in histins, following LMDZ. Last dummy argument dtime of phystokenc is always the same as first dummy argument pdtphys, removed dtime. Removed make rules for nag_xref95, since it does not exist any longer.
New philosophy on compiler options. Removed source code for thermcep = f. (Not used in LMDZ either.)
Sources inside, compilation outside.
Moved a call to writefield from guide to tau2alpha. (dxdys does not change with itau.) So dxdys does not need to be a module variable any longer. Other variables of modules tau2alpha_m downgraded to local variables of tau2alpha, since they were not used elsewhere. Procedures write_field[13]d and formcoord were never called. Could then remove int2str. Inline writefield_gen into writefield. CreateNewField takes an integer array argument instead of 3 scalar integers. CreateNewField now creates a number of dimensions adapted to the rank of the output field, instead of always 4 dimensions. Changed names of variables of module write_field: fieldid to ncid, fieldindex to record, fieldvarid to varid. In writefield_gen, if index == -1, no need to call GetFieldIndex again, we know that the result is nbfield. In guide, moved calls to writefield for some variables inside if first_call: those variables do not change with time. Removed ztau: computed only to be output, does not seem meaningful. Removed writefield for aire: does not change with time and is already in "grilles_gcm.nc".
Removed procedure sortvarc0. Called sortvarc with an additional argument resetvarc instead. (Following LMDZ.) Moved current time computations and some printing statements from sortvarc to caldyn. Could then remove arguments itau and time_0 of sortvarc, and could remove "use dynetat0". Better to keep "dynetat0.f" as a gcm-only file. Moved some variables from module ener to module sortvarc. Split file "mathelp.f" into single-procedure files. Removed unused argument nadv of adaptdt. Removed dimension arguments of bernoui. Removed unused argument nisurf of interfoce_lim. Changed the size of argument lmt_sst of interfoce_lim from klon to knon. Removed case when newlmt is false. dynredem1 is called only once in each run, either ce0l or gcm. So variable nb in call to nf95_put_var was always 1. Removed variable nb. Removed dimension arguments of calcul_fluxs. Removed unused arguments precip_rain, precip_snow, snow of calcul_fluxs. Changed the size of all the arrays in calcul_fluxs from klon to knon. Removed dimension arguments of fonte_neige. Changed the size of all the arrays in fonte_neige from klon to knon. Changed the size of arguments tsurf and tsurf_new of interfsurf_hq from klon to knon. Changed the size of argument ptsrf of soil from klon to knon.
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.
Changed all ".f90" suffixes to ".f".
Moved procedure inigeom into module comgeom. In disvert, renamed s_sampling to vert_sampling, following LMDZ. Removed choice strato1. In case read, read ap and bp instead of s (following LMDZ). Added argument phis to start_init_orog and start_init_dyn, and removed variable phis of module start_init_orog_m. In etat0 and start_init_orog, renamed relief to zmea_2d. In start_init_dyn, renamed psol to ps. In start_init_orog, renamed relief_hi to relief. No need to set phis(iim + 1, :) = phis(1, :), already done in grid_noro. Documentation for massbar out of SVN, in massbar.txt. Documentation was duplicated in massdair, but not relevant in massdair. In conflx, no need to initialize pen_[ud] and pde_[ud]. In flxasc, used intermediary variable fact (following LMDZ). In grid_noro, added local variable zmea0 for zmea not smoothed and computed zphi from zmea instead of zmea0 (following LMDZ). This changes the results of ce0l. Removed arguments pen_u and pde_d of phytrac and nflxtr, which were not used.
Moved everything out of libf.
In procedure, "addfi" access directly the module variable "dtphys" instead of going through an argument. In "conflx", do not create a local variable for temperature with reversed order of vertical levels. Instead, give an actual argument with reversed order in "physiq". Changed names of variables "rmd" and "rmv" from module "suphec_m" to "md" and "mv". In "hgardfou", print only the first temperature out of range found.
"start_init_phys" is now called directly by "etat0" instead of through "start_init_dyn". "qsol_2d" is no longer a variable of module "start_init_phys_m", it is an argument of "start_init_phys". "start_init_dyn" now receives "tsol_2d" from "etat0". Split file "vlspltqs.f" into "vlspltqs.f90", "vlxqs.f90" and ""vlyqs.f90". In "start_init_orog", replaced calls to "flin*" by calls to NetCDF95.
"pi" comes from "nr_util". Removed subroutine "initialize" in module "comconst". Copied the content of "fxy_sin.h" into "fxysinus", instead of getting it from an "include" line. Removed file "fxy_sin.h". "ps" has rank 2 in "gcm" and "dynetat0". Assumed-shape for argument "q" of "integrd".
Extracted ASCII art from "inigeom" into a separate text file in the documentation. "test_disvert" now creates a separate file for layer thicknesses. Moved variables from module "yomcst" to module "suphec_m" because this is where those variables are defined. Kept in "yomcst" only parameters of Earth orbit. Gave the attribute "parameter" to some variables of module "suphec_m". Variables of module "yoethf" were defined in procedure "suphec". Moved these definitions to a new procedure "yoethf" in module "yoethf_m".
Inlined procedure "pression". Split "guide.f90" into "guide.f90" and "tau2alpha.f90". Split "read_reanalyse.f" into single-procedure files in directory "Read_reanalyse". Useless copy of variables in "iniphysiq". Directly define module variables in "gcm" and remove procedure "iniphysiq". Added "pressure-altitude" in "test_disvert".
Initial import
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 |