Log of /trunk/phylmd/Thermcell
Directory Listing
Revision
265 -
Directory Listing
Modified
Tue Mar 20 09:35:59 2018 UTC
(6 years, 5 months ago)
by
guez
Rename module dimens_m to dimensions.
Revision
254 -
Directory Listing
Modified
Mon Feb 5 10:39:38 2018 UTC
(6 years, 6 months ago)
by
guez
Move Sources/* to root directory.
Revision
178 -
Directory Listing
Modified
Fri Mar 11 18:47:26 2016 UTC
(8 years, 5 months ago)
by
guez
Original Path:
trunk/Sources/phylmd/Thermcell
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.
Revision
157 -
Directory Listing
Modified
Mon Jul 20 16:01:49 2015 UTC
(9 years, 1 month ago)
by
guez
Original Path:
trunk/Sources/phylmd/Thermcell
Just encapsulated SUBROUTINE vlsplt in a module and cleaned it.
In procedure vlx, local variables dxqu and adxqu only need indices
iip2:ip1jm. Otherwise, just cleaned vlx.
Procedures dynredem0 and dynredem1 no longer have argument fichnom,
they just operate on a file named "restart.nc". The programming
guideline here is that gcm should not be more complex than it needs by
itself, other programs (ce0l etc.) just have to adapt to gcm. So ce0l
now creates files "restart.nc" and "restartphy.nc".
In order to facilitate decentralizing the writing of "restartphy.nc",
created a procedure phyredem0 out of phyredem. phyredem0 creates the
NetCDF header of "restartphy.nc" while phyredem writes the NetCDF
variables. As the global attribute itau_phy needs to be filled in
phyredem0, at the beginnig of the run, we must compute its value
instead of just using itap. So we have a dummy argument lmt_pas of
phyredem0. Also, the ncid of "startphy.nc" is upgraded from local
variable of phyetat0 to dummy argument. phyetat0 no longer closes
"startphy.nc".
Following the same decentralizing objective, the ncid of "restart.nc"
is upgraded from local variable of dynredem0 to module variable of
dynredem0_m. "restart.nc" is not closed at the end of dynredem0 nor
opened at the beginning of dynredem1.
In procedure etat0, instead of creating many vectors of size klon
which will be filled with zeroes, just create one array null_array.
In procedure phytrac, instead of writing trs(: 1) to a text file,
write it to "restartphy.nc" (following LMDZ). This is better because
now trs(: 1) is next to its coordinates. We can write to
"restartphy.nc" from phytrac directly, and not add trs(: 1) to the
long list of variables in physiq, thanks to the decentralizing of
"restartphy.nc".
In procedure phyetat0, we no longer write to standard output the
minimum and maximum values of read arrays. It is ok to check input and
abort on invalid values but just printing statistics on input seems too
much useless computation and out of place clutter.
Revision
150 -
Directory Listing
Modified
Thu Jun 18 13:49:26 2015 UTC
(9 years, 2 months ago)
by
guez
Original Path:
trunk/Sources/phylmd/Thermcell
Removed unused arguments of groupe, cv3_undilute2, cv_undilute2,
interfsur_lim, drag_noro, orodrag, gwprofil
Chickened out of revision 148: back to double precision in
invert_zoom_x (and overloaded rtsafe).
Revision
105 -
Directory Listing
Modified
Thu Sep 4 10:40:24 2014 UTC
(9 years, 11 months ago)
by
guez
Removed intermediate variables in calcul_fluxs.
Revision
91 -
Directory Listing
Modified
Wed Mar 26 17:18:58 2014 UTC
(10 years, 4 months ago)
by
guez
Removed unused variables lock_startdate and time_stamp of module
calendar.
Noticed that physiq does not change the surface pressure. So removed
arguments ps and dpfi of subroutine addfi. dpfi was always 0. The
computation of ps in addfi included some averaging at the poles. In
principle, this does not change ps but in practice it does because of
finite numerical precision. So the results of the simulation are
changed. Removed arguments ps and dpfi of calfis. Removed argument
d_ps of physiq.
du at the poles is not computed by dudv1, so declare only the
corresponding latitudes in dudv1. caldyn passes only a section of the
array dudyn as argument.
Removed variable niadv of module iniadvtrac_m.
Declared arguments of exner_hyb as assumed-shape arrays and made all
other horizontal sizes in exner_hyb dynamic. This allows the external
program test_disvert to use exner_hyb at a single horizontal position.
Revision
82 -
Directory Listing
Modified
Wed Mar 5 14:57:53 2014 UTC
(10 years, 5 months ago)
by
guez
Changed all ".f90" suffixes to ".f".
Revision
76 -
Directory Listing
Modified
Fri Nov 15 18:45:49 2013 UTC
(10 years, 9 months ago)
by
guez
Moved everything out of libf.
Revision
71 -
Directory Listing
Modified
Mon Jul 8 18:12:18 2013 UTC
(11 years, 1 month ago)
by
guez
Original Path:
trunk/libf/phylmd/Thermcell
No reason to call inidissip in ce0l.
In inidissip, set random seed to 1 beacuse PGI compiler does not
accept all zeros.
dq was computed needlessly in caladvtrac. Arguments masse and dq of
calfis not used.
Replaced real*8 by double precision.
Pass arrays with inverted order of vertical levels to conflx instead
of creating local variables for this inside conflx.
Revision
54 -
Directory Listing
Modified
Tue Dec 6 15:07:04 2011 UTC
(12 years, 8 months ago)
by
guez
Original Path:
trunk/libf/phylmd/Thermcell
Removed Numerical Recipes procedure "ran1". Replaced calls to "ran1"
in "inidissip" by calls to intrinsic procedures.
Split file "interface_surf.f90" into a file with a module containing
only variables, "interface_surf", and single-procedure files. Gathered
files into directory "Interface_surf".
Added argument "cdivu" to "gradiv" and "gradiv2", "cdivh" to
"divgrad2" and "divgrad", and "crot" to "nxgraro2" and
"nxgrarot". "dissip" now uses variables "cdivu", "cdivh" and "crot"
from module "inidissip_m", so it can pass them to "gradiv2",
etc. Thanks to this modification, we avoid a circular dependency
betwwen "inidissip.f90" and "gradiv2.f90", etc. The value -1. used by
"gradiv2", for instance, during computation of eigenvalues is not the
value "cdivu" computed by "inidissip".
Extracted procedure "start_inter_3d" from module "startdyn", to its
own module.
In "inidissip", unrolled loop on "ii". I find it clearer now.
Moved variables "matriceun", "matriceus", "matricevn", "matricevs",
"matrinvn" and "matrinvs" from module "parafilt" to module
"inifilr_m". Moved variables "jfiltnu", "jfiltnv", "jfiltsu",
"jfiltsv" from module "coefils" to module "inifilr_m".
Revision
52 -
Directory Listing
Modified
Fri Sep 23 12:28:01 2011 UTC
(12 years, 11 months ago)
by
guez
Original Path:
trunk/libf/phylmd/Thermcell
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.
Revision
47 -
Directory Listing
Added
Fri Jul 1 15:00:48 2011 UTC
(13 years, 1 month ago)
by
guez
Original Path:
trunk/libf/phylmd/Thermcell
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.