Ignore:
Timestamp:
Nov 14, 2022, 6:39:11 PM (2 years ago)
Author:
abierjon
Message:

Mars GCM:
Non-retrocompatible changes of the program util/aeroptical.F90 :

  • make the program more generic, as the user now specify in aeroptical.def the aerosols to be computed, as well as the necessary information for each aerosol, that are : aerosol_name,aerosol_mmr(GCM variable name),aerosol_reff(GCM variable name or single value in m),aerosol_rho(value in kg/m3),optpropfile_name
  • creation of a separate module aeropt_mod.F90 that can be used by other programs (e.g. for the MCD), with one subroutine reading the ASCII optical properties file, one subroutine interpolating optical properties at a given (wvl,reff) tuple, and one subroutine deallocating the module variables.
  • modify the compile program to compile this module aeropt_mod.F90 along with the aeroptical.F90 program. There is no change for the user, which just has to run the command 'compile aeroptical' like before.
  • correct the handling of user's wavelength or particle sizes that do not lie within the boundaries of the optical properties file.

AB

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.MARS/util/compile

    r2451 r2817  
    2424#  in the C library and "-lnetcdff" should be replaced with "-lnetcdf")
    2525
    26 $COMPILER $COMPILER_OPTIONS $1.F90 \
     26code=$1.F90 # default
     27# some programs need to compile external modules
     28if [[ "$code" == aeroptical.F90 ]]
     29then
     30  code="aeropt_mod.F90 $code"
     31fi
     32
     33$COMPILER $COMPILER_OPTIONS $code \
    2734-I$NETCDF_HOME/include \
    2835-L$NETCDF_HOME/lib -lnetcdff \
Note: See TracChangeset for help on using the changeset viewer.