== 17/09/08 ==
>>> Build a version with new soil but old radiative transfer,
    but keeping possibility of switching back to new radiative transfer),
    which incorporates changes & improvements currently included in the
    'reference version' GCM (see /u/emlmd/LMDZ.MARS.mixdyn)

>>> start by modifying makegcm as in /u/emlmd/LMDZ.MARS.mixdyn, so that it runs
    without environment variables and set LIBOGCM to /tmp15/emlmd/libo

>>> directory contents of 'aeronomars', 'grid' and 'filtrez' are simillar
    to those in /u/emlmd/LMDZ.MARS.mixdyn

>>> in bibio , only file mxva.F needed be upgraded

>>> get phymars and dyn3d contents from /u/emlmd/LMDZ.MARS.mixdyn
    (and remove all *old files)

>>> check differences between dyn3d and /u/emlmd/LMDZ.MARS.170908/libf/dyn3d
    and upgrade when necessary:
    - removed 'netcdf.inc' file (has nothing to do there!)
    - comgeom.h and comgeom.h : made fortran90 compliant
    - control.h : made fortran90 compliant
    - dynredem.F : more read/write controls + comments in english
    - ini_archive.F : new soil/thermal inertia changes
    - integrd.F : added additional information to output when crashing
    - lect_start_archive.F : new soil/thermal inertia changes
    - newstart.F : new soil/thermal inertia changes + comments in english
    - start2archive.F : new soil/thermal inertia changes
    - vanleer.F : removed inapropriate 'external' statement
    - write_archive.F : enable writting a subterranean field

>>> check differences between phymars and /u/emlmd/LMDZ.MARS.170908/libf/phymars
    and upgrade when necessary:
    New soil stuff:
    - added comsoil.h
    - iniwrite.F : new soil changes
    - added iniwritesoil.F90 and writediagsoil.F90 for subterranean fields
    - added interp_line.F (for subterranean grid interpolation)
    - adapted phyetat0.F for subterranean temperature & inertia
    - adapted physdem1.F to include new soil stuff
    - physiq.F : added calls to writediagsoil 
    - soil.F : new routine (fixed vertical grid + variable thermal inertia)
    - added soil_settings.F (to read/initialize/interpolate soil properties)
    - updated surfdat.h (since thermal inertia is now in comsoil.h)
    - updated tabfi.F : include new soil properties
    - updated testphys1d.F
    - updated dimphys.h (set nsoil=18 as default)

== 18/09/08 ==
>>> add the possibility of easily switching to Tran radiative transfert
    - updated aerdust.h.ocke97 (changed some variables name) so it can
      replace aerdust.h (which is currently the same as aerdust.h.clan91).
    - imported Tran's 'gfluxv.F' routine
    - imported Trans' version of 'swr.F' routine, saved it as 'swr.F.toon'

>>> Backup of 'old' Morcrette swr.F is 'swr.F.morc'
    NB: to switch from one radiative transfer to the other, just copy
    swr.F.morc or swr.F.toon to swr.F (and eventually 'touch swr.F' so that
    makegcm recompiles swr.F)
    No other dependencies (swr.F.toon uses 'gfluxv.F' and swr.F.morc uses
    'dedd.F').

>>> Changed the latter, so that users can switch from one to the other
    - modified swr.F.toon to become swr_toon.F (and to include gfluxv.F)
    - modified swr.F.morc to become swr_fouquart.F (and to include dedd.F)
    - added a flag in callkeys.h, swrtype (parameter to be set/changed by
      the user 1=Fouquart and 2=Toon)
    - update readtesassim so that the coefficient by which opacity
      is multiplied is set according to the 'swrtype' parameter

== 25/09/08 ==
>>> Implement the use of tracer-by-name in physics
    - in phymars/tracer.h set 'noms' length to 20 (instead of 10)
    - in phymars/callsedim2q.F and phymars/callsedim.F, use tracers by name
    - in phymars/dustopacity.F, use tracers by name
    - in phymars/vdifc.F, use tracers by name

== 26/09/08 ==
>>> Change implementation strategy (for now); don't move surface tracer around
    i.e.: surface ice remains equivalent to qsurf(nqmx)=qsurf(i_h2o_vap)
          and likewise for surface tendencies ...
    - modified vdifc.F and callsedim.F back
    - modified initracer.F (so that water names are h2o_vap & h2o_ice)
    
== 29/09/08 ==
    - modified aeronomars/init_chimie_B (cosmetics)
    - corrected aeronomars/moldiff.F internal routine tridag; changed
      "pause" error messages to 'stop' messages
    - modified phymars/watercloud.F to use tracers by name
    - corrected aeronomars/molvis.F (undefined 'fac' and 'Akk' written to 
       output at first call)
    
== 30/09/08 ==
    - modified aeronomars/calchim.F to use tracers by name
    - adapted aeronomars/photochemist_B.F to use tracers by name
    - adapted aeronomars/chemtermos.F to use tracers by name
    - adapted aeronomars/concentrations.F to use tracers by name
    - corrected aeronomars/conduction.F (undefined 'Akk' written to output
      at first call)
    - adapted aeronomars/euvheat.F to use tracers by name
    - adapted aeronomars/moldiff.F and moldiffcoeff.F to use tracers by name

== 01/10/08 ==
    - For more compatibility with LMDZ4; mimic reading a 'traceur.def' file
      in the dynamics via a call to a routine 'iniadvtrac.F' and saving
      tracers names in 'advtrac.h'
     -> created 'iniadvtrac.F', 'advtrac.h' and modified gcm.F
    - modified 'dynetat0.F' so that tracers are loaded from 'start.nc' by name
    - modified 'dynredem.F' so that tracers are written to 'restart.nc'
      by name
    - modified 'initracer.F' tu use tracers by name

== 02/10/08 ==
    - removed use of 'nqchem_min' everywhere:
      adapted 'euvheat.F','inifis.F','physiq.F'
      (leave 'inichim.F' for later)
    - updated 'phyetat0' and 'physdem1.F' to read/write surface tracers by name
    - modify things so that surface water ice index is the same as
      atmospheric water ice (except when running without water ice; then
      simply set i_h2o_ice=i_h2o_vap).
      NB: the easiest is to have global storage of tracer names/indexes in
      tracer.h
      => changed initracer.F & tracer.h to have global igcm_something indexes

== 03/10/08 ==
    - adaptations for surface ice index, modified files:
      phyetat0.F : if there is a dynamical tracer 'h2o_vap' then load
                   surface tracer called 'h2o_ice' instead
      initracer.F : in 'old' tracer name case: move qsurf(nqmx)->qsurf(nqmx-1)
                    and set i_h2o_ice=i_h2o_vap if iceparty=.false.
      physdem1.F : if old tracer names: move qsurf(nqmx-1)->qsurf(nqmx)
                   if iceparty=.false., write surface tracer 'h2o_ice'
                   (and not 'h2o_vap') to file.
      adapted vdifc.F, callsedim.F & watercloud.F & physiq.F so that surface
      ice is now identified as qsurf(i_h2o_ice)
    - updated aeronomars/perosat.F (cosmetics)

== 06/10/08 ==
    - modify newstart.F and lect_start_archive.F to use tracers by name
== 07/10/08 ==
    - adapted inichim_newstart.F (added qsurf to arguments)
      and inichim_readcallphys.F
== 08/10/08 ==
    - implement reading traceur.def in dyn3d/iniadvtrac.F

== 16/10/08==
    -small change in inifis.F (only warn if too many tracers, compared
     to the expected number, not stop).
     - corrected bug in initracer.F
== 21/10/08 ==
    - modified newstart.F to load B.Diez subsurface ice maps.
    - corrected small bug (uninitialized variable) in interp_horiz.F
== 22/10/08 ==
    - updated iniwritediagsoil.F so that thermal inertia is written to
      diagsoil.nc
== 31/10/08 ==
    - changed xvik.F program so it works even if we don't have atmospheric
     temperature at hand (then it uses a 10km reference scale height) and so
     that it does surface pressure interpolation log-wise.
== 03/11/08 ==
    - modified physiq to compute (and output) co2 column.
    - added improvement by Francois in newcondens.F about computing CO2
      partial pressure. This behavior is turned on by setting internal logical
      flag 'improved_ztcond' to '.true.' (and running with a co2 tracer)
    - updated 'start2archive' to work with 'new' gcm output (soil, tracers ...)
== 04/11/08 ==
    - upgraded xvik program to look for temperature in 7th layer variable if
     there is no global atmospheric temperature field at hand.
== 05/11/08 ==
    - more modifs to newcondens.F: added another internal flag 'bound_qco2' to
     enforce (if set to .true.) that co2 mass mixing ratio remains bounded.
== 07/11/08 ==
    - corrected 'writediagfi' & 'writediagsoil' so that an error message is 
      issued if called with a variable name which is too long.
== 18/12/08 ==
    - corrected bug in dyn3d 'addfi.F', (dimensions of local array p())
== 23/02/09 ==
    - modified "aeronomars/param_read.F" to do strictly fortran data
     initialization (otherwise xlf compiler complains)
    - changed a few '1.e-30' to '1.d-30' in aeronomars/photochemist_B.F
     so that max functions has 2 doubles as arguments (otherwise xlf
     compiler complains)

==07/04/09 ==
    -cosmetic changes/minor improvements in the handling of tracers in:
     aeronomars/photochemist_B.F
     aeronomars/perosat.F
     aeronomoars/euvheat.F
     aeronomars/moldiffcoeff.F
     aeronomars/moldiff.F
     aeronomars/cocentrations.F
     aeronomars/chemtermos.F
     aeronomars/calchim.F

--> NB: still there are differences in outputs when order of tracers is changed

== 09/04/09 ==
>>> fixed problem in 'vdifc.F' which lead to different results when moving
    tracers around.

== 10/04/09 ==
>>> corrected small bug in diagnostic outputs of 'watercloud.F' (tendencies were
    not added to tracer values).

== 21/04/09 ==
>>> corrected small bug in "physdem1.F" about writing water ice surface tracer
    to file

== 07/05/09 ==
>>> very minor correction (firstcall not set to true after first call
    if no tracers) in convadj.F

== 30/06/09 ==
>>> Implement reading *def files with IOIPSL ersatz 'getin' function
   - import "ioipsl_errioipsl.F90","ioipsl_getincom.F90","ioipsl_stringop.F90"
     in bibio
   - adapted 'dyn3d/defrun_new.F' to use "getin" function
   - adapted 'phymars/inifis.F' to use "getin" function

== 01/07/09 ==
>>> Adapted 'create_make_gcm' so that the "use" in *.F files is identified and
    corresponding dependencies included in the makefile rules.

>>> Added the 3D scattering from aerosols by JB Madeleine:
    - minor changes in aerave.F
    - added the calls to aeropacity.F, and aeroptproperties.F in callradite.F
    - changed the calls to lwu.F and swr.F in lwmain.F and swmain.F, respectively
    - added 3D scattering properties in lwu.F and swr.F
    - added the new aeroptproperties.F, aeropacity.F and suaer.F90 routines
        (removed dustopacity.F)
    - updated aeropacity.F with new tracer names
    - changed the call to callradite.F in physiq.F, added the initialization 
        of reffrad and nueffrad (aerosol effective radius and variance)
    - removed all the lines relative to the old "activice" option, including
        temperature variation due to latent heat release (now in comments)
    - renamed nsize into naersize in watercloud.F, watersat.F and newsedim.F,
        to avoid conflicts with another "nsize" variable in the radiative transfer
    - added the statement of nuice in watercloud.F, which is the effective variance
        of the log-normal distribution for ice
    - updated yomaer.h and removed aerice.h (and corresponding "includes")

== 02/07/09 ==
>>> Adapted 'aeronomars/inichim_readcallphys.F' (called by newstart)
     to use "getin" routine.
    + minor correction in 'inifis.F' (close 'iradia.def' file)
>>> Minor correction in 'dyn3d/dynetat0.F' and 'phymars/phyetat0.F'; do not
    attempt to reindex tracers if none were found.

>>> in 'deftank' added examples of 'traceur.def' files (traceur.def.co2 : 1
    co2 tracer; traceur.def.watercycle : 2 traceurs, water vapour and water ice
    tracer.def.chemistry : all 15 species)

== 06/07/09 ==
>>> Modified 'makegcm' and makegcm_g95' so that modules files are put 
    with libraries (and not in current directory)
    
== 21/07/09 ==
>>> Added in "testphys1d.F" a check that the (required) 'run.def' file is
    around (that file should contain the "INCLUDEDEF=callphys.def" instruction
    otherwise getin() calls won't work.
    Also added reding of 'traceur.def' (or initialisation of tracer names
    to dummy values q01,q02, ...) in testphys1d.F

== 22-24/07/09 == JBM
>>> Removed "iceparty" everywhere (calchim.F, inichim_readcallphys.F,
	chimie_data.h, inichim_newstart.F, photochemist_B.F, callkeys.h,
	callradite.F, callsedim.F, aeropacity.F, inifis.F, initracer.F, physdem1.F,
	physiq.F, watercloud.F). Water = .true. now implies the use of two
	tracers, i.e. water vapor and water ice.

>>> Removed fisice.h and stated the corresponding variables in the right
	places (physiq.F, callsedim.F, watercloud.F, newcondens.F, calchim.F);
	also removed unused cltop and clsurf variables in physiq.F.

>>> Removed the variable's splitting, which is now obsolete, in callradite.F
	(and its subroutines lwi.F, lwxb.F, lwxn.F, lwflux.F, lwmain.F, lwxd.F).
	Also removed the variable's splitting in calldrag_noro.F. Finally removed
	ndomain from dimradmars.h.

>>> Removed useless tests in aeropacity.F.

== 27-30/07/09 == JBM
>>> Cleaned the WRITEDIAGFI section in physiq.F, and moved the "mtot",
	"icetot" and "tauTES" variables from watercloud.F to physiq.F. Also
	cleaned the albedo change due to water ice deposition.

>>> Renamed rdust into rnuclei in callsedim.F, physiq.F and watercloud.F.

>>> Added a logical test for (water.and..not.tracer) in inifis.F.

>>> Removed "qsurf","zls" and "icount" from the list of inputs in
	watercloud.F (these variables were not used by the subroutine).

>>> Added a call to watercloud.F at firstcall, using typical dust optical
	depth (taufirstcall), in order to correctly initialize the ice particle
	size distribution for the radiative transfer scheme. Also created a new
	subroutine to load the effective radius and variance of the aerosols used
	by the radiative transfer scheme. Its name is updatereffrad.F, and it is
	called before aeroptproperties.F in callradite.F.

== 05/08/09 == JBM
>>> TES water-ice opacity is now fully computed using the radiatively active
	aerosol scheme. Absorption coefficient is calculated using Qext and
	omega at the IR reference wavelength. Omega was not computed before; it
	was only computed in the GCM channels, not at the reference wavelength.
	Thus it has been added in suaer.F90, aerave.F, yomaer.h, callradite.F,
	aeropacity.F and aeroptproperties.F. If "activice" is false, the
	TES opacity is computed using the old method (fit of the Qabs as a
	function of reff curve).

== 07/08/09 == EM
>>> Removed "iceparty" option from callphys.def

>>> modified physiq.F and initracer.F so that building of array niqchem() which
    contains the indexes of all chemistry tracers + water vapour and water
    ice is done in initracer.F (array niqchem(:) is now a common
    in tracer.h ).
    Also had to adapt inichim_newstart.F to behave similarly.

== 24/08/09 == EM included corrections by JBM
>>> Added declaration of nqchem(nqmx) local array in
    aeronomars/inichim_newstart.F

>>> Encapsulated calls to writediagfi & wstats in if (ngrid.ne.1) clause
    in phymars/aeropacity.F (otherwise it crashes in 1D).

== 26/08/09 == EM
>>> modified tracer.h, initracer.F, inichim_newstart.F and physiq.F to not use
    an niqchem() array (added in 07/08/09 changes)

>>> modified phymars/readtesassim.F90 and phymars/aeropacity.F so that
    assimilated dust for MY24 or MY25 or MY26 may be used (with iaervar=
    24,25 or 26); we keep iaervar=4 to also read MY24 dust for compatibility
    with older versions of code.
    Modified deftank/callphys.def : added comments about new iaervar values

== 25/09/09 == EM
>>> modified phymars/testphys1D.F : added incrementation of tracer values
    after call to physiq().

== 27/11/09 == EM
>>> updated comments in makegcm (translated help to english)

>> shifted to reading file traceur.def
   (dyn3d/iniadvtrac.F) in an Earth-LMDZ4 like way:
   first line == number of tracers
   and then tracer name (1 per line; later we'll add advection scheme type)
>> also updated example 'traceur.def' files in deftank accordingly

== 02/12/09 == EM
>>> upgraded testphys1d.F and profile.F to load run parameters with getin()
    function (from run.def ; no need for a "testphys1d.def" any more)
    added an example 'run.def.1d' file to 'deftank'

==10/12/09 == EM
>>> minor correction in testphys1d.F (was still checking if there is a
    testphys1d.def file around ; which is not used anymore)

==15/01/10 == JBM
>>> aeropacity.F: implemented a weighting of the dust opacity profile
  by using the dust size vertical profile defined in updatereffrad.F.
>>> aeroptproperties.F: changed the integration scheme (Gauss-Legendre)
  of the scattering parameters.
>>> suaer.F90: removed the use of an ad-hoc "solsir" factor. It is now
  directly computed from the scattering properties read in the ASCII
  files. Consequently, the IR extinction coefficient has been divided
  by solsir=2 in the ASCII file (called optprop_dustir_x0.5.dat instead
  of optprop_dustir.dat to allow compatibility with the older version
  and avoid chaos).
>>> updatereffrad.F: changed the dust size vertical profile.
>>> yomaer.h: the particle radius variable is now in simple precision,
  because the new scattering property integration scheme has changed.
>>> aeronomars/inichim_readcallphys.F (small) bug correction load value of
    'water' before testing its value...

== 18/01/10 == EM
>> added possibility to read (in inifis.F and aeropacity.F) the value of
   dust opacity tauvis from callphys.def file

== 01/02/10 == EM
>> added JBM updates of "callradite.F" (coments) "aeroptproperties.F" (bug fix
   of bad array bounds) and "aeropacity.F" (encapsulate wstats calls in
   if (callstats) )
>> added implementation of TES Cap albedos: "albedocaps.F90" and adapted
   "newcondens.F"  (and physiq.F, because added 'zls' argument to newcondens)
   and surfdat.h
>> changed default settings for dust : set a 1.3 factor in readtesassim.F90
   when using Toon radiative transfer, use M.Wolff-T-Matrix files in suaer.F90
 
== 03/02/10 == EM
>> Updated newstart.F in dyn3d, so that sub-surface thermal inertia values may
   be different in North and South hemispheres.

>> Updated "makegcm" and "makegcm_g95" scripts (cosmetic + default compilation
   option changes)
   
>> Minor changes in aeronomars/init_chimie_B.F (do not use lnblnk(); F90
   trim() intrinsic is much safer and better), and in initracer.F (better
   control over a possible array bound underflow).
   Also, in dyn3d/iniadvtrac.F, close input file properly,
   and in infis.F, more verbose message to output.

== 26/02/10 == EM
>> Updated makegcm and makegcm_g95 : default usage is now to set everything
   ("environment variables") in the script. Changed some default compilation
   options.
>>> removed 'float()' instructions in tabfi.F and iniwrite.F
    use "real()" to be compliant with standards.
>> Corrected small bug in testphys1d.F (look for file traceur.def)
   also added initialisation of tracers
>> Cleaned up inifis.F and initracer.F (some sanity checks were obsolete
   and/or wrong)
>> Improved writediagfi.F so that 1D (individual column in the GCM, or
   fields in testphys1d) data can be written in the diagfi.nc file
>> Minor changes/improvements in calls to writediagfi from physiq.F for dust

== 08/03/10 == EM
>> Minor update of "makegcm" and "makegcm_g95": use instruction "./makdim"
   (instead of "makdim"; in case "." is not in user's path)
>> put "real()" instructions instead of "float()" in dyn3d routines:
   disvert.F , dynredem.F , fluxstoke.F , fxhyp.F , fxy.F ,
   fxysinus.F , fyhyp.F , gcm.F , grid_atob.F , grid_noro.F , grid_noro1.F ,
   ini_archive.F , inigeom.F , newstart.F , ran1.F , sortvarc.F ,
   sortvarc0.F
>> Minor update of aeropacity.F (added if (callstats) around call to wstats)

== 28/04/10 == EM
>> Put the splitting in radiative transfer back in the model (JB):
   updated calldrag_noro.F  callradite.F  dimradmars.h  lwflux.F 
   lwi.F lwmain.F lwxb.F lwxd.F lwxn.F swmain.F
>> Fix bug (AS) in callradite.F (wrong loop boundaries line 332)
>> Fix bug (AS+JB) in "swr_toon.F" to enable running with more than
   100 levels...
>> Fix bug (JBM) in callsedim2q.F about setting pdqs_sed(:niq(iq)) to zero

== 25/08/10 == EM
>> Add a 'makegcm_gfortran' for compiling with gfortran
   and a 'makegcm_ifort' for compiling with ifort (on Gnome)
   
== 03/09/10 == EM
>> Modifications to enable running in double precision (using starts in r4
   or r8); just add options '-r8 -DNC_DOUBLE' to compile GCM in double precision
   -> adapted dyn3d/dynetat0.F, physmars/physdem1.F, phymars/soil_settings.F,
      phymars/readtesassim.F90, phymars/writediagfi.F, phymars/def_var.F90,
      phymars/writediagsoil.F90, phymars/wstats.F90, phymars/inistats.F
>> Added dyn3d/writediagdyn.F90 routine (to output scalar dynamical fields),
   adapted 'comconst.h' and 'comvert.h' to be Fortran77/Fortran 90 compatible.

== 14/12/10 == EM
>> Add -f option to #!/bin/csh in makegcm* scripts (to make sure that it is
   the bash environment compiler that is used as a default)
>> Update convadj.F with RW's version (fixes bug of non conservation of tracers
   in cases where convection stops at one level and starts at the next).

== 13/12/10 == EM
>> Update testphys1d.F so that initial tracer profiles may be loaded at
   initialization 

== 24/01/11 == JBM(+ some cleanup by EM)
>> Reactivated the "doubleq" method (two-moment scheme for dust
   transport) and connected it with the radiative transfer code. The
   opacity is set constant below a level indicated by the variable
   cstdustlevel in aeropacity.F to remove the thick layer of
   dust near the surface created by the constant lifting rate.
   The "density scaled opacity" used by the MCS team is computed
   and saved in dsodust.
   Updated routines: callradite.F, aeropacity.F, updatereffrad.F,
   callsedim.F, newsedim.F, initracer.F, vdifc.F, suaer.F90.
>> Added the use of named scatterers (same method as tracer-by-name)
   in the radiative transfer code. Scatterers are declared at
   firstcall in callradite.F (which is the equivalent of traceur.def)
   and the corresponding indices are saved in the common called
   aerkind.h (the equivalent of tracer.h).
   Updated routines: callradite.F, updatereffrad.F, aeropacity.F,
   suaer.F90, aerkind.h.
   EM: aerdust.h, aerdata.h and aerice.h are not used any more 
>> Merged callsedim2q.F and callsedim.F in one single routine
   callsedim.F to allow doubleq to be used with other tracers.
>> Added an input parameter called beta to newsedim.F, that allows
   to account for the shape of the particles in the computation of
   the sedimentation velocity.
>> Added the ability to transport a radiatively active population of
   submicron dust particles (flag "submicron" in callphys.def).
   Updated routines: callradite.F, updatereffrad.F, aeropacity.F,
   initracer.F, vdifc.F, suaer.F90, inifis.F, callkeys.h.
>> Connected the predicted size and amount of dust to the water
   cycle. The size of the particles is now given by rdust in
   updatereffrad.F, and the amount of cloud condensation nuclei
   (CCN) is given by ccn in aeropacity.F. The calculation of ccn is
   done in aeropacity.F because it's deduced from the opacity when
   doubleq is not used. rnuclei and dustcores are removed from
   watercloud.F and replaced by rdust and ccn.
   Updated routines: physiq.F, callradite.F, updatereffrad.F,
   aeropacity.F, watercloud.F.
>> Removed the "fake" call to watercloud.F in physiq.F which was used
   to give the size of the ice particles to the radiative transfer
   code at firstcall. Instead, rice is computed in updatereffrad.F
   using a simple equation and a typical amount of dust nuclei (ccn0).
>> Increased the number of Gauss integration points in
   aeroptproperties.F.
>> Added the ability to write the 3D scattering parameters of a
   given aerosol in the outputs using the out_qwg flag in
   aeroptproperties.
>> Changed "DO iir=1,4" into "DO iir=1,nir-1" in suaer.F90 (in case
   the number of infrared channels is changed).
>> Added nuice_ref in tracer.h and initracer.F, which is the
   effective variance of the log-normal distribution used for water-ice
   particles in the radiative transfer code.
>> Updated the computation of rice, reffice and rsedice in
   updatereffrad.F and callsedim.F.
>> Added nuice_sed in callsedim.F, which is the effective variance
   of the lognormal distribution used for the sedimentation of
   water-ice particles.
>> Added ccn_factor in watercloud.F, which is the ratio of the total
   number of dust particles over the number of condensation nuclei.
>> The variable beta is not saved anymore in newsedim.F.
>> Corrected the BIG bug in lwu.F that was responsible for unstabilities
   when clouds were radiatively active (FF+EM+JBM!)
>> Turned ilwd, ilwn and ilwb to 1 in inifis.F.
>> Added dust and ice visible opacities in the outputs.
   Modified routine: aeropacity.F.
>> Named water cycle tuneable parameters (nuice_sed, nuice_ref,
   alb_surfice, ccn_factor) which are mentioned at firstcall by the GCM
   (flag "water_param"). Modified routines: callsedim.F, physiq.F,
   watercloud.F.

== 25/01/2011 == EM
>> updated testphys1d.F: removed #include "aerdust.h"
>> cleanup in suaer.F90: no more calls to zerophys; added test to check
   there is no overflow of isize index (in visible domain averaged properties
   case)
>> minor cleanup in newsedim.F (make it more F90 oriented)
>> added flag 'TESicealbedo' (set to .true. to impose polar surface
   albedos as observed by TES) in callphys.def 
   
== 28/01/2011 == EM
>> added additional tests (to check correct reading of input files) in suaer.F90
>> updated inifis.F  so that the directory where external data files are to
   be found (e.g. TES opacities, dust properties, etc.) can be specified in
   run.def (or callphys.def) as " datadir = /path/to/the/directory "

== 29/01/2011 == AS
>> added updated mesoscale-related routines in phymars:
   ----------------------------------------------------------------------------
   NAME                       CHANGES compared to GCM counterpart 
   ----------------------------------------------------------------------------
   meso_callkeys.h        --> one variable is added [consider merging w/ GCM?] 
   meso_dustlift.F        --> stress + alpha default, or read in a file 
                               stress.def if here [consider merging w/ GCM?]
   meso_newcondens.F      --> correction on U V T tendencies is switched 
                               off (unstable in mesoscale) 
   meso_physiq.F          --> major modifications mainly related to I/O
   meso_slope.h           --> additional common for slope scheme
   meso_dimphys.h_ref     --> reference common serving as a basis for a 
                               compilation script (makemeso)
   meso_inifis.F          --> major modifications mainly related to I/O
   meso_param_slope.F90   --> slope scheme by Spiga and Forget GRL 2008 
                               [consider adding to GCM?]
   meso_readtesassim.F90  --> an old version because the new F90-compliant 
                               version needs the new makegcm scripts [TBD]
   meso_testphys1d.F      --> similar to GCM except for routine names
   ----------------------------------------------------------------------------
    NB: in meso_dustlift.F and meso_readtesassim.F90, the subroutines 
         have the same name as in the GCM.
         this is because those files are supposed to be copied 
         in specific temporary folders for compilation
>> any future change in the following GCM routines in phymars:
      - callkeys.h
      - dustlift.F
      - newcondens.F
      - physiq.F
      - inifis.F
      - readtesassim.F90
      - testphys1d.F
   will be in need to be impacted to the corresponding meso_ routines 
   [hence it is important to document this README file]
>> any change in any other GCM routines than the ones listed will
   have an effect in mesoscale simulations as well:
     -- the two models are being kept updated at the same time :)
     -- the two models would be possibly broken at the same time :(

== 15/02/2011 == EM
>> updated dissipation coefficients in indissip.F

== 25/02/2011 == EM
>> corrected bug in 'inifis.F' and 'datafile.h' to really be able to
   specify (in callphys.def; using datadir=/whatever/path/to/use ) the path
   to external datafiles (topography, surface properties, etc.)

== 28/02/2011 == JBM + AS
>> used settings reached by JBM to obtain his PhD results
      alb_surfice = 0.45  ---  in physiq.F and meso_physiq.F
      ccn_factor = 4.5    ---  in watercloud.F
      nuice_sed = 0.45    ---  in callsedim.F
>> NB: this is supposed to be further refined in the future

== 01/03/2011 == AS + JBM
>> nasty bug in the water cycle when iradia != 1  [no problem when iradia = 1]
   --> mesoscale runs w/ water cycle had strange 5-hour fluctuations in RICE, from 80mic to 5mic
>> PB: calculation of ccn [condensation nuclei] is done in callradite.F
      * ccn must be saved 
        --> corrected in physiq.F and meso_physiq.F
      * ccn must not be modified elsewhere [e.g. in watercloud, when divided by ccn_factor] 
        --> all calculations on ccn are now moved in callradite

== 03/03/2011 == AS
>> Added a pre-compilation flag MESOSCALE so that the LMDZ.MARS GCM
will compile without stating errors because of mesoscale routines.
[meso_physiq.F, meso_inifis.F]
>> Now, this MESOSCALE precompilation flag can be used to lower
the number of meso_* routines when adaptations for mesoscale
applications are not very extended.
   --> meso_testphys1d.F, meso_testphys1d.F, meso_dustlift.F
       routines were deleted and changes are now moved under 
       the MESOSCALE flag in the original GCM routines
   --> Completely transparent for GCM compilation 
       since it is devoid of the -DMESOSCALE option
   --> Very good for syncing because changes in dustlift, newcondens
       will be directly available in the mesoscale model

== 04/03/2011 == AS + JBM
>> new version version for aeroptproperties.F in phymars to limit uncertainties and be able to play with ngau
>> this was coded by JBM in his personal reference version but not transmitted to the team reference version

== 10/05/2011 == AS + JF
>> in newsedim.F used for mesoscale computations, spurious values close to the surface
   --> this was related to 1 - exp(-x) calculated as zero in w(ig,l) if x is very small
   --> fix: when this happens, replace exp(-x) by 1 - x since x ~ 0
>> in newsedim.F, "if (dztop.gt.epaisseur(ig,l)) then" was closed too soon by an "endif"
   --> hence basically the simple method was never used 
       and useless calculations with the complex method were carried out
   --> fix by moving the closing "endif" [in addition to corrections mentioned in the previous point]

