Ignore:
Timestamp:
May 5, 2014, 11:38:51 AM (11 years ago)
Author:
aslmd
Message:

MESOSCALE. A necessary complement commit to r1234 where a upgraded interface making use of modules was proposed. Completed the new formulation for module_lmd_driver for newphys with improved interface with both ini/bdy conditions and physical parameterizations. Changed the Registry accordingly. Finished changes about I/O with the LMD physics (see LMDZ.MARS/README). Made all those changes compatible for old interface, and LES runs (checked with test cases), as well as old input files. Changed makemeso to account for full flexibility on changin nx ny ntracers nproc with newphys. Cleaned the now obsolete bits of code used in LMD physics shared with the GCM. ----- Everything is now ready to properly code both restart runs and nesting for mesoscale runs with new physics.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/MESOSCALE/LMD_MM_MARS/makemeso

    r1234 r1236  
    116116    2) compilo='g95' ; numproc=1 ;;
    117117    3) compilo='mpi'
    118        if [[ "${WHERE_MPI}" = "" ]] 
     118       if [[ "${WHERE_MPI}" = "" ]]
    119119       then
    120120         echo Please initialize the variable WHERE_MPI in your environnement
    121121         exit
    122        fi
    123        echo How many processors ? e.g. 1, 2, 4, 6, 8, 12, 16, 20, 24, 32, 64, 128 ; read numproc ;;
     122       fi ;;
    124123    4) compilo='ifort' ; numproc=1 ;;
    125     5) compilo='mpifort' ; echo How many processors ? e.g. 1, 2, 4, 6, 8, 12, 16, 20, 24, 32, 64, 128 ; read numproc ;;
    126     7) compilo='mpixlf' ; echo How many processors ? e.g. 1, 2, 4, 6, 8, 12, 16, 20, 24, 32, 64, 128 ; read numproc ;;
    127 ### for tests
    128 99) compilo='gnu' ; numproc=1 ;;
     124    5) compilo='mpifort' ;;
     125    7) compilo='mpixlf' ;;
     126    ### for tests
     127   99) compilo='gnu' ; numproc=1 ;;
    129128    *) echo not supported by this script ; exit ;;
    130129  esac
     130  # number of processors
     131  if [[ "${phys}" == "newphys_" ]]
     132  then
     133   numproc=999
     134  else
     135   case ${reply} in
     136    3) echo How many processors ? e.g. 1, 2, 4, 6, 8, 12, 16, 20, 24, 32, 64, 128 ; read numproc ;;
     137    5) echo How many processors ? e.g. 1, 2, 4, 6, 8, 12, 16, 20, 24, 32, 64, 128 ; read numproc ;;
     138    7) echo How many processors ? e.g. 1, 2, 4, 6, 8, 12, 16, 20, 24, 32, 64, 128 ; read numproc ;;
     139   esac
     140  fi
     141
    131142  # dimensions
    132143  if [ ${donotcompile} -eq 0 ]
    133144  then   
    134   echo Grid points in longitude ? ; read lon
    135   echo Grid points in latitude ? ; read lat
    136145  # ngrid: now dynamically set in newphys 03/2014
    137146   if [[ "${phys}" == "newphys_" ]]
     
    139148      lon=999
    140149      lat=999
    141       numproc=999
     150   else
     151      echo Grid points in longitude ? ; read lon
     152      echo Grid points in latitude ? ; read lat
    142153   fi
    143154  echo Number of vertical levels ? ; read level
     
    186197            fi
    187198         else
    188             echo Number of tracers ? ; read tra
    189199            # tracers: now dynamically set in newphys 09/2013
    190200            if [[ "${phys}" == "newphys_" ]]
     
    192202              tra=999
    193203            else
     204              echo Number of tracers ? ; read tra
    194205              if [ ${tra} -eq 0 ]
    195206              then
     
    246257          if [[ "${phys}" == "newphys_" ]]
    247258          then
     259            if [[ "${config}" != "les" ]]
     260            then
    248261              cp ../../SRC/WRFV2/Registry/Registry.EM.newphys Registry/Registry.EM
     262            else
     263              cp -L ../../SRC/LES/WRFV2/Registry/Registry.EM.newphys Registry/Registry.EM
     264            fi
    249265          fi
    250266          cd phys
     
    257273          cd Registry ; ln -sf ../mars_lmd_new_${scenario}/Registry.EM . ; cd ..
    258274        fi
    259      #ln -sf meso_callkeys_newphys.h meso_callkeys.h
    260      cd Registry ; Registry.bash ; cd ..
    261275
    262276     # remove files adapted to parallel GCM and useless for mesoscale
     
    349363         echo MPICH is in ${WHERE_MPI}
    350364       fi
    351   echo you will use ${numproc} processors
    352   echo you have ${lon} x points
    353   echo '         '${lat} y points
    354   echo '         '${level} z points
     365  echo you have ${level} z points
    355366  echo '         '${dom} domains
    356   echo '         '${tra} tracers
    357367  if [[ "${phys}" == "newphys_" ]]
    358368  then
    359     echo '         '${scat} scatterers
     369   echo you have ${scat} scatterers
     370   echo number of processors can be changed without recompiling
     371   echo x points can be changed without recompiling
     372   echo y points can be changed without recompiling
     373   echo number of tracers can be changed without recompiling
     374  else
     375   echo you will use ${numproc} processors
     376   echo you have ${lon} x points
     377   echo '         '${lat} y points
     378   echo '         '${tra} tracers
    360379  fi
    361380  echo '****************************************'
     
    364383  touch last
    365384  echo ${reply} >> last
    366      if [ "${compilo}" = "mpi" -o "${compilo}" = "mpifort" -o "${compilo}" = "mpixlf" ]
    367      then
     385  if [[ "${phys}" != "newphys_" ]]
     386  then
     387    if [ "${compilo}" = "mpi" -o "${compilo}" = "mpifort" -o "${compilo}" = "mpixlf" ]
     388    then
    368389     echo ${numproc} >> last
    369      fi
    370   echo ${lon} >> last
    371   echo ${lat} >> last
     390    fi
     391    echo ${lon} >> last
     392    echo ${lat} >> last
     393  fi
    372394  echo ${level} >> last
    373395  echo ${dom} >> last
    374   echo ${tra} >> last
     396  if [[ "${phys}" != "newphys_" ]]
     397  then
     398   echo ${tra} >> last
     399  fi
    375400  echo ${scat} >> last
    376401  #echo ${answer} >> last
Note: See TracChangeset for help on using the changeset viewer.