Ignore:
Timestamp:
Apr 16, 2010, 11:50:10 AM (14 years ago)
Author:
Ehouarn Millour
Message:

Added possibility to run in "Shallow Water" mode. SW mode is automatically set if the number of atmospheric layers is 1.
To use SW mode, the model should be compiled without physics (makelmdz_fcm -p nophys) and/or without calls to the physics (i.e. set iflag_phys=0 in gcm.def).

-Updated some definitions and comments in run.def & gcm.def

-Fixed misplaced #ifdef CPP_EARTH in calfis.F + some write(lunout,*)

-Specific initialisation of fields for SW are done in sw_case_williamson91_6 (called by iniacademic, when read_start=.false.)

  • Checked (on Vargas & Brodie) that these changes don't alter usual bench GCM outputs.

EM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/calfis.F

    r1320 r1363  
    9898#include "comvert.h"
    9999#include "comgeom2.h"
     100#include "iniprint.h"
    100101
    101102c    Arguments :
     
    188189        debut = .TRUE.
    189190        IF (ngridmx.NE.2+(jjm-1)*iim) THEN
    190          PRINT*,'STOP dans calfis'
    191          PRINT*,'La dimension ngridmx doit etre egale a 2 + (jjm-1)*iim'
    192          PRINT*,'  ngridmx  jjm   iim   '
    193          PRINT*,ngridmx,jjm,iim
     191         write(lunout,*) 'STOP dans calfis'
     192         write(lunout,*)
     193     &   'La dimension ngridmx doit etre egale a 2 + (jjm-1)*iim'
     194         write(lunout,*) '  ngridmx  jjm   iim   '
     195         write(lunout,*) ngridmx,jjm,iim
    194196         STOP
    195197        ENDIF
     
    315317      CALL gr_dyn_fi(1,iip1,jjp1,ngridmx,pphis,zphis)
    316318      DO l=1,llm
    317         DO ig=1,ngridmx
    318            zphi(ig,l)=zphi(ig,l)-zphis(ig)
    319         ENDDO
     319        DO ig=1,ngridmx
     320           zphi(ig,l)=zphi(ig,l)-zphis(ig)
     321        ENDDO
    320322      ENDDO
    321323
     
    415417            z1(i)   =(rlonu(i)-rlonu(i-1))*pvcov(i,jjm,l)/cv(i,jjm)
    416418            z1bis(i)=(rlonu(i)-rlonu(i-1))*pdvcov(i,jjm,l)/cv(i,jjm)
    417         ENDDO
     419        ENDDO
    418420
    419421         DO i=1,iim
     
    422424            zsin(i)    = SIN(rlonv(i))*z1(i)
    423425            zsinbis(i) = SIN(rlonv(i))*z1bis(i)
    424         ENDDO
     426        ENDDO
    425427
    426428         zufi(ngridmx,l)  = SSUM(iim,zcos,1)/pi
     
    449451
    450452      if (planet_type=="earth") then
    451 
    452       print*,'PHYSIQUE AVEC NSPLIT_PHYS=',nsplit_phys
     453#ifdef CPP_EARTH
     454
     455      write(lunout,*) 'PHYSIQUE AVEC NSPLIT_PHYS=',nsplit_phys
    453456      zdt_split=dtphys/nsplit_phys
    454457      zdufic(:,:)=0.
     
    463466         lafin_split=lafin.and.isplit==nsplit_phys
    464467
    465 #ifdef CPP_EARTH
    466468         CALL physiq (ngridmx,
    467469     .             llm,
Note: See TracChangeset for help on using the changeset viewer.