Ignore:
Timestamp:
Apr 26, 2019, 11:18:52 AM (6 years ago)
Author:
emillour
Message:

Common dynamics:
Some work to enforce total tracer mass conservation in the dynamics.
Still to be further studied and validated.
For now these changes are triggered by setting a "force_conserv_tracer"
flag to ".true." in run.def (default is ".false." to not change anything
with respect to previous versions).
When force_conserv_tracer=.true. then:

  1. Rescale tracer mass in caladvtrac after tracer advection computations
  2. Recompute q ratios once atmospheric mass has been updated in integrd

These steps technically ensure total tracer mass conservation but it
might be the tracer advection scheme and/or time-stepping updating
sequence of fields that should be rethought or fixed.
EM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.COMMON/libf/dyn3d/conf_gcm.F90

    r1824 r2126  
    1717                         output_grads_dyn, periodav, planet_type, &
    1818                         raz_date, resetvarc, starttime, timestart, &
    19                          ecritstart
     19                         ecritstart,force_conserv_tracer
    2020  USE infotrac, ONLY : type_trac
    2121  use assert_m, only: assert
     
    233233  iapp_tracvl = iperiod
    234234  CALL getin('iapp_tracvl',iapp_tracvl)
     235
     236! Enforce tracer conservation in integrd & caladvtrac ?
     237  force_conserv_tracer = .false.
     238  CALL getin('force_conserv_tracer',force_conserv_tracer)
    235239
    236240!Config  Key  = iconser
     
    949953 write(lunout,*)' iphysiq = ', iphysiq
    950954 write(lunout,*)' iflag_trac = ', iflag_trac
     955 write(lunout,*)' iapp_tracvl = ', iapp_tracvl
     956 write(lunout,*)' force_conserv_tracer = ', force_conserv_tracer
    951957 write(lunout,*)' clon = ', clon
    952958 write(lunout,*)' clat = ', clat
Note: See TracChangeset for help on using the changeset viewer.