/[lmdze]/trunk/dyn3d/sortvarc.f
ViewVC logotype

Log of /trunk/dyn3d/sortvarc.f

Parent Directory Parent Directory | Revision Log Revision Log


Sticky Revision:
(Current path doesn't exist after revision 327)

Revision 265 - (view) (annotate) - [select for diffs]
Modified Tue Mar 20 09:35:59 2018 UTC (6 years, 1 month ago) by guez
File length: 2595 byte(s)
Diff to previous 259
Rename module dimens_m to dimensions.

Revision 259 - (view) (annotate) - [select for diffs]
Modified Tue Mar 6 16:19:52 2018 UTC (6 years, 1 month ago) by guez
File length: 2593 byte(s)
Diff to previous 258
Try to clarify the logic. Remove module ener. Move variables from
module ener to module dynetat0_m, where they are defined in program
gcm. In sortvarc, I do not see how ptot0 could be 0, discard this possibility.

Remove dummy argument resetvarc of procedure sortvarc. The difference
is that sortvarc is called by caldyn or caldyn0 so just do different
processing in caldyn and caldyn0 instead of inside sortvarc.

No need for variables ang, etot, ptot, rmsdpdt, rmsv, stot, ztot to be
at module level in module sortvarc_m, downgrade them to arguments of
sortvarc. Instead of modyfying the meaning of ang, etot, ptot,
rmsdpdt, rmsv, stot, ztot from absolute quantities to variations of
these quantities, print the ratio in caldyn.


Revision 258 - (view) (annotate) - [select for diffs]
Modified Tue Mar 6 15:17:17 2018 UTC (6 years, 1 month ago) by guez
File length: 3222 byte(s)
Diff to previous 257
Remove unnecessary intermediary variables stotl and rmsvl. Move lines
around to group related computations.


Revision 257 - (view) (annotate) - [select for diffs]
Modified Tue Mar 6 14:49:28 2018 UTC (6 years, 1 month ago) by guez
File length: 3306 byte(s)
Diff to previous 256
Remove intermediary variable ge when not useful.


Revision 256 - (view) (annotate) - [select for diffs]
Modified Tue Mar 6 14:29:20 2018 UTC (6 years, 1 month ago) by guez
File length: 3354 byte(s)
Diff to previous 255
Replace sum(ge) - sum(ge(1, :)) by sum(ge(:iim, :)) in procedure
sortvarc. Remove intermediary variables vor and ztotl.


Revision 255 - (view) (annotate) - [select for diffs]
Modified Tue Mar 6 13:39:57 2018 UTC (6 years, 1 month ago) by guez
File length: 3499 byte(s)
Diff to previous 254
Use two dimensions of arrays for two space dimensions in procedure
sortvarc. Replace call to ssum by call to sum.


Revision 254 - (view) (annotate) - [select for diffs]
Modified Mon Feb 5 10:39:38 2018 UTC (6 years, 2 months ago) by guez
File length: 3549 byte(s)
Diff to previous 139
Move Sources/* to root directory.

Revision 139 - (view) (annotate) - [select for diffs]
Modified Tue May 26 17:46:03 2015 UTC (8 years, 11 months ago) by guez
Original Path: trunk/Sources/dyn3d/sortvarc.f
File length: 3549 byte(s)
Diff to previous 137
dynetat0 read rlonu, rlatu, rlonv, rlatv, cu_2d, cv_2d, aire_2d from
"start.nc" and then these variables were overwritten by
inigeom. Corrected this. Now, inigeom does not compute rlonu, rlatu,
rlonv and rlatv. Moreover, cu_2d, cv_2d, aire_2d are not written to
"restart.nc". Since xprimu, xprimv, xprimm025, xprimp025, rlatu1,
rlatu2, yprimu1, yprimu2 are computed at the same time as rlonu,
rlatu, rlonv, rlatv, and since it would not be convenient to separate
those computations, we decide to write xprimu, xprimv, xprimm025,
xprimp025, rlatu1, rlatu2, yprimu1, yprimu2 into "restart.nc", read
them from "start.nc" and not compute them in inigeom. So, in summary,
"start.nc" contains all the coordinates and their derivatives, and
inigeom only computes the 2D-variables.

Technical details:

Moved variables rlatu, rlonv, rlonu, rlatv, xprimu, xprimv from module
comgeom to module dynetat0_m. Upgraded local variables rlatu1,
yprimu1, rlatu2, yprimu2, xprimm025, xprimp025 of procedure inigeom to
variables of module dynetat0_m.

Removed unused local variable yprimu of procedure inigeom and
corresponding argument yyprimu of fyhyp.

Moved variables clat, clon, grossismx, grossismy, dzoomx, dzoomy,
taux, tauy from module serre to module dynetat0_m (since they are read
from "start.nc"). The default values are now defined in read_serre
instead of in the declarations. Changed name of module serre to
read_serre_m, no more module variable here.

The calls to fxhyp and fyhyp are moved from inigeom to etat0.

Side effects in programs other than gcm: etat0 and read_serre write
variables of module dynetat0; the programs test_fxyp and
test_inter_barxy need more source files.

Removed unused arguments len and nd of cv3_tracer. Removed unused
argument PPSOL of LWU.

Bug fix in test_inter_barxy: forgotten call to read_serre.


Revision 137 - (view) (annotate) - [select for diffs]
Modified Wed May 6 15:51:03 2015 UTC (8 years, 11 months ago) by guez
Original Path: trunk/Sources/dyn3d/sortvarc.f
File length: 3524 byte(s)
Diff to previous 134
Removed unused argument missval in ma_fucoll_r[1-3]1, ma_fufill_r[1-3]1.

Split filtreg into two procedures: filtreg_scal and filtreg_v. I did
not like the test on the extent of the argument and there was no
common code between the two cases: jjm and jjm + 1. Also, it is
simpler now to just remove the argument "direct" from filtreg_v instead
of allowing it and then stopping the program if it is false.

Removed the computation of pkf in reanalyse2nat, was not used.

As a consequence of the split of filtreg, had to extract the
computation of pkf out of exner_hyb. This is clearer anyway because we
want to be able to call exner_hyb with any size in the first two
dimensions (as in test_disvert). But at the same time exner_hyb
required particular sizes for the computation of pkf. It was
awkward. The only computation of pkf is now in leapfrog.


Revision 134 - (view) (annotate) - [select for diffs]
Modified Wed Apr 29 15:47:56 2015 UTC (9 years ago) by guez
Original Path: trunk/Sources/dyn3d/sortvarc.f
File length: 3507 byte(s)
Diff to previous 107
Sources inside, compilation outside.

Revision 107 - (view) (annotate) - [select for diffs]
Modified Thu Sep 11 15:09:15 2014 UTC (9 years, 7 months ago) by guez
File length: 3507 byte(s)
Diff to previous 104
Imported procedure grilles_gcm_sub from LMDZ. Had then to transform
local variable phis of etat to argument.

Replaced calls to lnblnk by calls to trim.

Removed arguments nlat, klevel and griscal of filtreg. Replaced
integer arguments ifiltre and iaire by logical arguments direct and
intensive.

Changed default values of guide_t and guide_q to false.


Revision 104 - (view) (annotate) - [select for diffs]
Modified Thu Sep 4 10:05:52 2014 UTC (9 years, 8 months ago) by guez
File length: 3494 byte(s)
Diff to previous 82
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.


Revision 82 - (view) (annotate) - [select for diffs]
Modified Wed Mar 5 14:57:53 2014 UTC (10 years, 2 months ago) by guez
File length: 4459 byte(s)
Copied from: trunk/dyn3d/sortvarc.f90 revision 80
Diff to previous 78
Changed all ".f90" suffixes to ".f".

Revision 78 - (view) (annotate) - [select for diffs]
Modified Wed Feb 5 17:51:07 2014 UTC (10 years, 2 months ago) by guez
Original Path: trunk/dyn3d/sortvarc.f90
File length: 4459 byte(s)
Diff to previous 76
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.


Revision 76 - (view) (annotate) - [select for diffs]
Modified Fri Nov 15 18:45:49 2013 UTC (10 years, 5 months ago) by guez
Original Path: trunk/dyn3d/sortvarc.f90
File length: 4459 byte(s)
Diff to previous 69
Moved everything out of libf.

Revision 69 - (view) (annotate) - [select for diffs]
Modified Mon Feb 18 16:33:12 2013 UTC (11 years, 2 months ago) by guez
Original Path: trunk/libf/dyn3d/sortvarc.f90
File length: 4459 byte(s)
Diff to previous 68
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.


Revision 68 - (view) (annotate) - [select for diffs]
Modified Wed Nov 14 16:59:30 2012 UTC (11 years, 5 months ago) by guez
Original Path: trunk/libf/dyn3d/sortvarc.f90
File length: 4424 byte(s)
Diff to previous 64
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.


Revision 64 - (view) (annotate) - [select for diffs]
Modified Wed Aug 29 14:47:17 2012 UTC (11 years, 8 months ago) by guez
Original Path: trunk/libf/dyn3d/sortvarc.f90
File length: 4405 byte(s)
Diff to previous 57
Removed variable lstardis in module comdissnew and procedures gradiv
and nxgrarot. lstardir had to be true. gradiv and nxgrarot were called
if lstardis was false. Removed argument iter of procedure
filtreg. iter had to be 1. gradiv and nxgrarot called filtreg with
iter == 2.

Moved procedure flxsetup into module yoecumf. Module yoecumf is only
used in program units of directory Conflx, moved it there.


Revision 57 - (view) (annotate) - [select for diffs]
Modified Mon Jan 30 12:54:02 2012 UTC (12 years, 3 months ago) by guez
Original Path: trunk/libf/dyn3d/sortvarc.f90
File length: 4408 byte(s)
Diff to previous 46
Write used namelists to file "" instead of standard output.

Avoid aliasing in "inidissip" in calls to "divgrad2", "divgrad",
"gradiv2", "gradiv", "nxgraro2" and "nxgrarot". Add a degenerate
dimension to arrays so they have rank 3, like the dummy arguments in
"divgrad2", "divgrad", "gradiv2", "gradiv", "nxgraro2" and "nxgrarot".

Extract the initialization part from "bilan_dyn" and make a separate
procedure, "init_dynzon", from it.

Move variables from modules "iniprint" and "logic" to module
"conf_gcm_m".

Promote internal procedures of "fxy" to private procedures of module
"fxy_m".

Extracted documentation from "inigeom". Removed useless "save"
attributes. Removed useless intermediate variables. Extracted
processing of poles from loop on latitudes. Write coordinates to file
"longitude_latitude.txt" instead of standard output.

Do not use ozone tracer for radiative transfer.


Revision 46 - (view) (annotate) - [select for diffs]
Modified Mon May 16 14:52:30 2011 UTC (12 years, 11 months ago) by guez
Original Path: trunk/libf/dyn3d/sortvarc.f90
File length: 4356 byte(s)
Diff to previous 43
Removed procedure "psextbar". "psextbar" was called but the result of
the call was not used.


Revision 43 - (view) (annotate) - [select for diffs]
Modified Fri Apr 8 12:43:31 2011 UTC (13 years ago) by guez
Original Path: trunk/libf/dyn3d/sortvarc.f90
File length: 4346 byte(s)
Diff to previous 33
"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.


Revision 33 - (view) (annotate) - [select for diffs]
Modified Fri Apr 9 10:56:14 2010 UTC (14 years ago) by guez
Original Path: trunk/libf/dyn3d/sortvarc.f90
File length: 4324 byte(s)
Diff to previous 27
Test namelist input in procedure "conf_gcm" rather than program unit
"gcm".

Compute "time" in procedure "sortvarc" rather than "leapfrog".

Rewrote "leapfrog" with a single loop on "itau" instead of two nested
loops on number of periodic matsuno-leapfrog cycles and leapfrog
iterations.


Revision 27 - (view) (annotate) - [select for diffs]
Modified Thu Mar 25 14:29:07 2010 UTC (14 years, 1 month ago) by guez
Original Path: trunk/libf/dyn3d/sortvarc.f90
File length: 3945 byte(s)
Diff to previous 25
"dyn3d" and "filtrez" do not contain any included file so make rules
have been updated.

"comdissip.f90" was useless, removed it.

"dynredem0" wrote undefined value in "controle(31)", that was
overwritten by "dynredem1". Now "dynredem0" just writes 0 to
"controle(31)".

Removed arguments of "inidissip". "inidissip" now accesses the
variables by use association.

In program "etat0_lim", "itaufin" is not defined so "dynredem1" wrote
undefined value to "controle(31)". Added argument "itau" of
"dynredem1" to correct that.

"itaufin" does not need to be a module variable (of "temps"), made it
a local variable of "leapfrog".

Removed calls to "diagedyn" from "leapfrog".


Revision 25 - (view) (annotate) - [select for diffs]
Modified Fri Mar 5 16:43:45 2010 UTC (14 years, 2 months ago) by guez
Original Path: trunk/libf/dyn3d/sortvarc.f90
File length: 3914 byte(s)
Diff to previous 23
Simplified "etat0_lim.sh" and "gcm.sh" because the full versions
depended on personal arrangements for directories and machines.

Translated included files into modules. Encapsulated procedures into modules.

Moved variables from module "comgeom" to local variables of
"inigeom". Deleted some unused variables in "comgeom".

Moved variable "day_ini" from module "temps" to module "dynetat0_m".

Removed useless test on variable "time" and useless "close" statement
in procedure "leapfrog".

Removed useless call to "inigeom" in procedure "limit".


Revision 23 - (view) (annotate) - [select for diffs]
Modified Mon Dec 14 15:25:16 2009 UTC (14 years, 4 months ago) by guez
Original Path: trunk/libf/dyn3d/sortvarc.f90
File length: 3909 byte(s)
Copied from: trunk/libf/dyn3d/sortvarc.f revision 22
Diff to previous 3
Split "orografi.f": one file for each procedure. Put the created files
in new directory "Orography".

Removed argument "vcov" of procedure "sortvarc". Removed arguments
"itau" and "time" of procedure "caldyn0". Removed arguments "itau",
"time" and "vcov" of procedure "sortvarc0".

Removed argument "time" of procedure "dynredem1". Removed NetCDF
variable "temps" in files "start.nc" and "restart.nc", because its
value is always 0.

Removed argument "nq" of procedures "iniadvtrac" and "leapfrog". The
number of "tracers read in "traceur.def" must now be equal to "nqmx",
or "nqmx" must equal 4 if there is no file "traceur.def". Replaced
variable "nq" by constant "nqmx" in "leapfrog".

NetCDF variable for ozone field in "coefoz.nc" must now be called
"tro3" instead of "r".

Fixed bug in "zenang".


Revision 3 - (view) (annotate) - [select for diffs]
Added Wed Feb 27 13:16:39 2008 UTC (16 years, 2 months ago) by guez
Original Path: trunk/libf/dyn3d/sortvarc.f
File length: 4539 byte(s)
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.

  Diffs between and
  Type of Diff should be a

  ViewVC Help
Powered by ViewVC 1.1.21