Directory trunk/libf/dyn3d/

Total Files:
16
Deleted Files:
2
Lines of Code:
8266

[root]/trunk/libf/dyn3d

Lines of Code

trunk/libf/dyn3d/ Lines of Code

Developers

Author Changes Lines of Code Lines per Change
Totals 86 (100.0%) 1940 (100.0%) 22.5
dcugnet 47 (54.7%) 1119 (57.7%) 23.8
emillour 8 (9.3%) 437 (22.5%) 54.6
fhourdin 4 (4.7%) 237 (12.2%) 59.2
lguez 8 (9.3%) 95 (4.9%) 11.8
fairhead 7 (8.1%) 29 (1.5%) 4.1
oboucher 7 (8.1%) 15 (0.8%) 2.1
evignon 1 (1.2%) 5 (0.3%) 5.0
lmdz-users 2 (2.3%) 3 (0.2%) 1.5
crisi 2 (2.3%) 0 (0.0%) 0.0

Most Recent Commits

dcugnet 2022-09-21 12:47 Rev.: 4270

Fix for reprobus

2 lines of code changed in 1 file:

  • trunk/libf/dyn3d: dynetat0.F90 (+2 -2)
dcugnet 2022-09-21 10:41 Rev.: 4268

Last (hopefully) fix for REPROBUS and exceptions about HNO3.

4 lines of code changed in 1 file:

  • trunk/libf/dyn3d: dynetat0.F90 (+4 -4)
dcugnet 2022-09-21 10:16 Rev.: 4266

Fix for reprobus

3 lines of code changed in 1 file:

  • trunk/libf/dyn3d: dynetat0.F90 (+3 -2)
dcugnet 2022-09-21 09:58 Rev.: 4265

Add modifications for sequantial version of dynetat0 + fix in reprobus case.

16 lines of code changed in 1 file:

  • trunk/libf/dyn3d: dynetat0.F90 (+16 -1)
lguez 2022-09-20 16:09 Rev.: 4256

Remove `include netcdf.inc`

They have become useless.

0 lines of code changed in 1 file:

  • trunk/libf/dyn3d: guide_mod.F90 (-2)
lguez 2022-09-20 16:09 Rev.: 4255

Replace `nf_noerr` by `nf90_noerr`

We want to remove `include netcdf.inc`, eventually.

41 lines of code changed in 1 file:

  • trunk/libf/dyn3d: guide_mod.F90 (+41 -40)
lguez 2022-09-20 16:09 Rev.: 4254

Replace `nf_get_vara_type` by `nf90_get_var`

The immediate motivation is a bug fix: `nf_get_vara_type` was called
with scalar instead of array actual arguments for dummy array
arguments start and count. Correcting this, we might as well take the
opportunity to use `nf90_get_var`, so we no longer need to test
`NC_DOUBLE` and we have half as many calls.

22 lines of code changed in 1 file:

  • trunk/libf/dyn3d: guide_mod.F90 (+22 -84)
lguez 2022-09-20 16:09 Rev.: 4253

Replace `nf_def_var` by `nf90_def_var`

The immediate motivation is a bug fix: `nf_def_var` was called with a
scalar instead of array actual argument for dummy array argument
vdims. The simplest way to correct this bug is to replace by a call to
`nf90_def_var`.

20 lines of code changed in 1 file:

  • trunk/libf/dyn3d: guide_mod.F90 (+20 -20)
lguez 2022-09-20 16:09 Rev.: 4252

Bug fix: remove comma before i/o item list

This was accepted by compilers as a legacy extension.

10 lines of code changed in 1 file:

  • trunk/libf/dyn3d: guide_mod.F90 (+10 -10)
evignon 2022-09-14 15:14 Rev.: 4246

controle dans les .def du presnivs limite en dessous duquel on ne guide plus
si guide_BL=false
Etienne, pour valentin

5 lines of code changed in 1 file:

  • trunk/libf/dyn3d: guide_mod.F90 (+5 -1)
dcugnet 2022-07-04 23:45 Rev.: 4193

* Modifications in readSections to allow a continuation line character "\":
in both "tracer.def" and "isotopes_params.def", information for a single
tracer or isotope can now be stored on several lines.
* Modifications in "dispTable" and associated routines to allow too wide tables
to be displayed as several shorter sub-tables: each sub-table is at most
"nMaxCol" characters wide (typically: number of characters displayable in a
tandard screen window) and the first "nHead" columns (typically: name, index,
etc.) are duplicated in each sub-table. A default value for nMaxCol, called
maxTableWidth (currently = 192) is available in readTracFiles_mod.
* Subroutine "readIsotopesFile" becomes a function with a boolean returned
error value "lerr" used to trigger an external aborting function (no STOP).

3 lines of code changed in 1 file:

  • trunk/libf/dyn3d: dynetat0.F90 (+3 -7)
dcugnet 2022-06-16 20:16 Rev.: 4170

The variable "types_trac" is the equivalent of "type_trac" in case multiple sections must be read
and used in "tracer.def" file.
Tests on the "type_trac" were replaced with tests on the vector "types_trac".
Most of the time, there are two components: 'lmdz' and a second one. The later has priority on 'lmdz'
and must be used for the tests. For more components, care must be taken to execute specific parts
of the code on the right tracers ; the tracers(:)%component has been created in that respect.

2 lines of code changed in 1 file:

  • trunk/libf/dyn3d: dynredem.F90 (+2 -2)
dcugnet 2022-05-09 12:35 Rev.: 4143

* Some variables are renamed or replaced by direct equivalents:
- iso_indnum -> tracers(:)%iso_iName
- niso_possibles -> niso
- iqiso -> iqIsoPha ; index_trac -> itZonIso
- ok_iso_verif -> isoCheck
- ntraceurs_zone -> nzone ; ntraciso -> ntiso
- qperemin -> min_qparent ; masseqmin -> min_qmass ; ratiomin -> min_ratio
* Some renamed variables are only aliased with the older name (using USE <module>, ONLY: <oldName> => <newName>) in routines where they are repeated many times.
* Few hard-coded indexes are now computed (examples: ilic, iso, ivap, irneb, iq_vap, iq_liq, iso_H2O, iso_HDO, iso_HTO, iso_O17, iso_O18).
* The IF(isoCheck) test is now embedded in the check_isotopes_seq and check_isotopes_loc routines (lighter calling).

241 lines of code changed in 8 files:

  • trunk/libf/dyn3d: advtrac.F90 (+5 -9), check_isotopes.F (del), check_isotopes.F90 (new 172), dynetat0.F90 (+3 -4), iniacademic.F90 (+4 -6), leapfrog.F (+15 -36), qminimum.F (+29 -27), vlsplt.F (+13 -13)
dcugnet 2022-04-08 16:47 Rev.: 4124

Remove solsym, ok_isotopes (=niso>0), ok_isotrac (=nzone>0)

20 lines of code changed in 5 files:

  • trunk/libf/dyn3d: check_isotopes.F (+11 -11), dynetat0.F90 (+1 -1), iniacademic.F90 (+2 -2), qminimum.F (+6 -9)
dcugnet 2022-04-05 15:44 Rev.: 4120

* New water names: H2Ov, H2Ol, H2Oi, H2Or -> H2O_g, H2O_l, H2O_s, H2O_r.
* Corrections for the lOldCode=.FALSE., not activated yet.

239 lines of code changed in 4 files:

  • trunk/libf/dyn3d: dynetat0.F90 (new 225), dynetat0.f90 (del), iniacademic.F90 (+12 -11), leapfrog.F (+2 -2)
fhourdin 2022-03-26 13:21 Rev.: 4113

replay, suite

2 lines of code changed in 1 file:

  • trunk/libf/dyn3d: replay3d.F90 (+2)
fhourdin 2022-03-26 01:54 Rev.: 4112

Replay, suite

193 lines of code changed in 1 file:

  • trunk/libf/dyn3d: replay3d.F90 (new 193)
oboucher 2022-03-15 15:20 Rev.: 4100

Tidying up and adding ok_guide to output

15 lines of code changed in 1 file:

  • trunk/libf/dyn3d: conf_gcm.F90 (+15 -16)
dcugnet 2022-01-25 20:14 Rev.: 4064

* minor fixes (unused variables suppressed, comas after a WRITE() statement, etc.)
* parser routines taken from version 7 of https://svn.lmd.jussieu.fr/tracers-parser
* few changes in infotrac, and few fixes of (at least) the sequential version:
- uadv and vadv were deallocated twice (fix was lost by mistake just before last commit)
- in [( dum(im), im=1, nm)] implicit loops, ifort evaluates "dum(im)" even if nm==0,
resulting in a crash, "im" being unitialized.

35 lines of code changed in 4 files:

  • trunk/libf/dyn3d: advtrac.F90 (+2 -2), dynetat0.f90 (+2 -2), dynredem.F90 (+6 -7), vlsplt.F (+25 -53)
dcugnet 2022-01-25 02:01 Rev.: 4063

Except if the bench fails, last commit before switching to the new parser.
* parser routines taken from version 6 of https://svn.lmd.jussieu.fr/tracers-parser
* significant changes in "infotrac", now close to its target version.
Modified old code is active (hard-coded flag: lOldCode=.TRUE.).
New code will be activated in the next commit, then old code will be suppressed.
* probably problems with the isotopic version, to be fixed after tgcc maintenance...

6 lines of code changed in 2 files:

  • trunk/libf/dyn3d: dynetat0.f90 (+2 -1), dynredem.F90 (+4 -2)
dcugnet 2022-01-12 23:54 Rev.: 4056

Most of the changes are intended to help to eventually remove the constraints about the tracers assumptions, in particular water tracers.
- Remove index tables itr_indice and niadv, replaced by tracers(:)%isAdvected and tracers(:)%isH2OFamily.
Most of the loops are now from 1 to nqtot:
* DO iq=nqo+1,nqtot loops are replaced with:
DO iq=1,nqtot
IF(tracers(iq)%isH2Ofamily) CYCLE
* DO it=1,nbtr; iq=niadv(it+nqo)
and DO it=1,nqtottr; iq=itr_indice(it) loops are replaced with:
it = 0
DO iq = 1, nqtot
IF(.NOT.tracers(iq)%isAdvected .OR. tracers(iq)%isH2Ofamily) CYCLE
it = it+1
- Move some StratAer related code from infotrac to infotrac_phy
- Remove "nqperes" variable:
DO iq=1,nqpere loops are replaced with:
DO iq=1,nqtot
IF(tracers(iq)%parent/='air') CYCLE
- Cosmetic changes (justification, SELECT CASE instead of multiple IF...) mostly in advtrac* routines.

324 lines of code changed in 2 files:

  • trunk/libf/dyn3d: advtrac.F90 (+313 -362), iniacademic.F90 (+11 -15)
lguez 2022-01-10 14:59 Rev.: 4055

Check that the value of `iflag_top_bound` is valid

This check is useful because if `iflag_top_bound` is not between 0 and
2 then the program runs with an undefined value of lambda in procedure
`top_bound_loc`.

2 lines of code changed in 1 file:

  • trunk/libf/dyn3d: conf_gcm.F90 (+2)
dcugnet 2021-12-26 23:27 Rev.: 4052

Fixes for previous commit:
* few tracers(:)%nqChilds were errouneously replaced with tarcers(:)%nqDesc
* minor changes

13 lines of code changed in 4 files:

  • trunk/libf/dyn3d: dynetat0.f90 (+4 -5), iniacademic.F90 (+6 -6), vlsplt.F (+2 -2), vlspltqs.F (+1 -1)
dcugnet 2021-12-23 19:54 Rev.: 4050

Second commit for new tracers.
* include most of the keys in the tracers descriptor vector "tracers(:)".
* fix in phylmdiso/cv3_routines: fq_* variables were used where their fxt_* counterparts were expected.
* multiple IF(nqdesc(iq)>0) and IF(nqfils(iq)>0) tests suppressed, because they are not needed:
"do ... enddo" loops with 0 upper bound are not executed.
* remove French accents from comments (encoding problem) in phylmdiso/cv3_routines and phylmdiso/cv30_routines.
* modifications in "isotopes_verif_mod", where the call to function "iso_verif_tag17_q_deltad_chn" in "iso_verif_tag17_q_deltad_chn" was not detected at linking stage, although defined in the same module (?).

202 lines of code changed in 9 files:

  • trunk/libf/dyn3d: advtrac.F90 (new), check_isotopes.F (+3 -1), dynetat0.f90 (+12 -8), dynredem.F90 (+2 -3), iniacademic.F90 (+16 -17), vlsplt.F (+92 -108), vlspltqs.F (new)
dcugnet 2021-12-16 00:18 Rev.: 4046

First commit for new tracers.
* parser routines readTracFiles, strings_mod and tracer_types added in misc using revision 4 of
https://svn.lmd.jussieu.fr/tracers-parser
* tested in sequential and parallel mode using ioipsl.
* for now, only two fields of "tracers(:)" derived type vector are used: "name" and "longName".

9 lines of code changed in 3 files:

  • trunk/libf/dyn3d: dynetat0.f90 (+4 -3), dynredem.F90 (+5 -4)
crisi 2021-12-01 09:26 Rev.: 4037

correction dans check_isotopes

0 lines of code changed in 2 files:

  • trunk/libf/dyn3d: check_isotopes.F (new)
emillour 2021-11-17 13:58 Rev.: 4008

Fix previous commit, missing use added.
EM

1 lines of code changed in 1 file:

  • trunk/libf/dyn3d: vlsplt.F (+1 -1)
emillour 2021-11-17 13:06 Rev.: 4007

Some fixes for phylmdiso:
- serial advection scheme updated to match the ones in dyn3dmem
- follow up on the changes in tracer name string length from r4005
EM

36 lines of code changed in 2 files:

  • trunk/libf/dyn3d: vlsplt.F (+36 -11)
emillour 2021-10-29 17:38 Rev.: 3995

Nudging: fixed some indexes in parallel about process domain boundaries and updated the serial nudging routine so that it matches the parallel one (they had diverged at some point).
Also added an "is_master" logical in the parallel_lmdz module to ease decreasing the number of messages written to standard output.
EM

386 lines of code changed in 1 file:

  • trunk/libf/dyn3d: guide_mod.F90 (+386 -198)
fhourdin 2021-08-06 16:30 Rev.: 3976

Options supplementaires pour iniacademic

42 lines of code changed in 2 files:

  • trunk/libf/dyn3d: iniacademic.F90 (+42 -25)
emillour 2021-06-21 17:15 Rev.: 3947

Nudging: fix the problem of having one extra step in the output guide_ins.nc file. This is done by reseting ok_guide to .false. once the restart file is generated, and thus in the ultimate forward Matsuno step that is done afterwards, nudging is not called.
EM

10 lines of code changed in 1 file:

  • trunk/libf/dyn3d: leapfrog.F (+10)
lmdz-users 2021-03-23 17:14 Rev.: 3865

Modifications from Thibaut to create an ESM with interactive CO2 + INCA aerosols

3 lines of code changed in 2 files:

  • trunk/libf/dyn3d: conf_gcm.F90 (+2), dynredem.F90 (+1 -1)
emillour 2021-01-18 21:02 Rev.: 3803

Make dynamics restart.nc file be in "64-bit offset" mode to enable generating large files. While at it also enforce this for limit.nc, guide_ins.nc and grilles_gcm.nc generated by the model.
EM

4 lines of code changed in 3 files:

  • trunk/libf/dyn3d: dynredem.F90 (+3 -2), guide_mod.F90 (+1 -1)
fairhead 2019-10-09 15:11 Rev.: 3579

Make aquaplanets run again (on jean-zay)
EM & MP

1 lines of code changed in 1 file:

  • trunk/libf/dyn3d: gcm.F90 (+1)
fairhead 2019-06-25 16:50 Rev.: 3540

Modifications needed for "real" calendar in 1D model
MPL/EM

12 lines of code changed in 4 files:

  • trunk/libf/dyn3d: conf_gcm.F90 (new), temps_mod.F90 (+1)
fairhead 2019-01-22 17:21 Rev.: 3435

"Historic" :-) commit merging the physics branch used for DYNAMICO with the LMDZ trunk.
The same physics branch can now be used seamlessly with the traditional lon-lat LMDZ
dynamical core and DYNAMICO.
Testing consisted in running a lon-lat LMDZ bucket simulation with the NPv6.1 physics package
with the original trunk sources and the merged sources. Tests were succesful in the sense that
numeric continuity was preserved in the restart files from both simulation. Further tests
included running both versions of the physics codes for one year in a LMDZOR setting in which
the restart files also came out identical.

Caution:
- as the physics package now manages unstructured grids, grid information needs to be transmitted
to the surface scheme ORCHIDEE. This means that the interface defined in surf_land_orchidee_mod.F90
is only compatible with ORCHIDEE version orchidee2.1 and later versions. If previous versions of
ORCHIDEE need to be used, the CPP key ORCHIDEE_NOUNSTRUCT needs to be set at compilation time.
This is done automatically if makelmdz/makelmdz_fcm are called with the veget orchidee2.0 switch
- due to a limitation in XIOS, the time at which limit conditions will be read in by DYNAMICO will be
delayed by one physic timestep with respect to the time it is read in by the lon-lat model. This is caused
by the line

IF (MOD(itime-1, lmt_pas) == 0 .OR. (jour_lu /= jour .AND. grid_type /= unstructured)) THEN ! time to read

in limit_read_mod.F90

Work still needed on COSP integration and XML files for DYNAMICO

EM, YM, LF

16 lines of code changed in 2 files:

  • trunk/libf/dyn3d: gcm.F90 (+16 -15)
lguez 2018-12-04 14:26 Rev.: 3416

No stop in leapfrog for normal end. Let the program end in the main
unit. We avoid the list of floating-point exceptions printed by
gfortran when invoking stop.

0 lines of code changed in 2 files:

  • trunk/libf/dyn3d: leapfrog.F (changed)
oboucher 2017-12-03 22:49 Rev.: 3103

Removing x permission from these files

0 lines of code changed in 6 files:

  • trunk/libf/dyn3d: guide_mod.F90 (new), ini_paramLMDZ_dyn.h (changed), write_paramLMDZ_dyn.h (new)
Generated by StatSVN 0.7.0