Parent Directory | Revision Log
Sticky Revision: |
Sources inside, compilation outside.
The information in argument rdayvrai of calfis was redundant with the information in argument time. Furthermore, in the physics part of gcm, we need separately the day number (an integer) and the time of day. So, replaced real argument rdayvrai of calfis containing elapsed time by integer argument dayvrai containing day number. Corresponding change in leapfrog. In procedure physiq, replaced real argument rdayvrai by integer argument dayvrai. In procedures readsulfate and readsulfate_preind, replaced real argument r_day by arguments dayvrai and time. In procedure alboc, replaced real argument rjour by integer argument jour. alboc was always called by interfsurf_hq with actual argument real(jour), and the meaning of the dummy argument in alboc seems to be that it should be an integer. In procedure leapfrog, local variable time could not be > 1. Removed test. In physiq, replaced nint(rdayvrai) by dayvrai. This changes the results since julien now changes at 0 h instead of 12 h. This follows LMDZ, where the argument of ozonecm is days_elapsed+1.
Removed arguments day0, anne0 of procedures initdynav and inithist. Use directly day_ref, annee_ref instead. Moved variables annee_ref, day_ref of module temps to module dynetat0_m. Deleted variables dayref and anneeref of module conf_gcm_m and removed them from namelist conf_gcm_nml. These variables were troubling intermediary on the way to annee_ref and day_ref. Gave as default values to annee_ref and day_ref the default values of dayref and anneeref. Moved the test on raz_date from main unit gcm to procedure dynetat0. Created namelist dynetat0_nml. Read annee_ref and day_ref from standard input in dynetat0 and redefine them from "start.nc" if not raz_date. Rationale: 1 - Choose the best programming from the point of view of program gcm only, forgetting program ce0l. 2 - The normal case is to define annee_ref and day_ref from "start.nc" so put them in module dynetat0_m rather than in conf_gcm_m. 3 - Try to always read the same namelists in the same order regardless of choices in previous namelists. Downsides: 1 -We now need the file "dynetat0.f" for the program ce0l, because dynetat0_m is used by dynredem0. 2 - We need to define annee_ref and day_ref from procedure etat0. Removed useless variable day_end of module temps.
Imported writefield from LMDZ. Close at the end of gcm the files which were created by writefiled (not done in LMDZ). Removed procedures for the output of Grads files. Removed calls to dump2d. In guide, replaced calls to wrgrads by calls to writefield. In vlspltqs, removed redundant programming of saturation pressure. Call foeew from module FCTTRE instead. Bug fix in interpre: size of w exceeding size of correponding actual argument wg in advtrac. In leapfrog, call guide until the end of the run, instead of six hours before the end. Bug fix in readsulfate_preind: type of arguments.
Removed intermediate variables in calcul_fluxs.
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 "flincom.f90" into "flinclo.f90", "flinfindcood.f90", "flininfo.f90" and "flinopen_nozoom.f90", in directory "IOIPSL/Flincom". Renamed "etat0_lim" to "ce0l", as in LMDZ. Split "readsulfate.f" into "readsulfate.f90", "readsulfate_preind.f90" and "getso4fromfile.f90". In etat0, renamed variable q3d to q, as in "dynredem1". Replaced calls to Flicom procedures by calls to NetCDF95. In leapfrog, added call to writehist. Extracted ASCII art from "grid_noro" into a file "grid_noro.txt". Transformed explicit-shape local arrays into automatic arrays, so that test on values of iim and jjm is no longer needed. Test on weight: IF (weight(ii, jj) /= 0.) THEN is useless. There is already a test before: if (any(weight == 0.)) stop "zero weight in grid_noro" In "aeropt", replaced duplicated lines with different values of inu by a loop on inu. Removed arguments of "conf_phys". Corresponding variables are now defined in "physiq", in a namelist. In "conf_phys", read a namelist instead of using getin.
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 |