Ignore:
Timestamp:
07/21/14 12:01:59 (10 years ago)
Author:
ymipsl
Message:

calling iniphysics directly from dynamico

YM

Location:
codes/icosagcm/branches/SATURN_DYNAMICO/LMDZ.COMMON/libf
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • codes/icosagcm/branches/SATURN_DYNAMICO/LMDZ.COMMON/libf/dyn3dpar/init_gcm_lmdz.F

    r222 r242  
    512512!     &                iflag_phys) 
    513513 
    514          zcufi(nbp)=1. 
    515          zcvfi(nbp)=1. 
    516  
    517          CALL iniphysiq(klon_glo,llm,daysec,day_ini,dtphys/nsplit_phys,  
    518      &                latfi,lonfi,airefi,zcufi,zcvfi,rad,g,r,cpp,  
    519      &                iflag_phys)  
     514!         zcufi(nbp)=1. 
     515!         zcvfi(nbp)=1. 
     516 
     517!         CALL iniphysiq(klon_glo,llm,daysec,day_ini,dtphys/nsplit_phys,  
     518!     &                latfi,lonfi,airefi,zcufi,zcvfi,rad,g,r,cpp,  
     519!     &                iflag_phys)  
    520520 
    521521#endif 
  • codes/icosagcm/branches/SATURN_DYNAMICO/LMDZ.COMMON/libf/phystd/comgeomphy.F90

    r222 r242  
    11module comgeomphy 
    22   real,save,allocatable :: airephy(:) 
    3    real,save,allocatable :: cuphy(:) 
    4    real,save,allocatable :: cvphy(:) 
    53   real,save,allocatable :: rlatd(:) 
    64   real,save,allocatable :: rlond(:) 
     
    1412  
    1513    allocate(airephy(klon_omp)) 
    16     allocate(cuphy(klon_omp)) 
    17     allocate(cvphy(klon_omp)) 
    1814    allocate(rlatd(klon_omp)) 
    1915    allocate(rlond(klon_omp)) 
  • codes/icosagcm/branches/SATURN_DYNAMICO/LMDZ.COMMON/libf/phystd/iniphysiq.F90

    r227 r242  
    1 subroutine iniphysiq(ngrid,nlayer, punjours, pdayref,ptimestep,          & 
    2                      plat,plon,parea,pcu,pcv,                            & 
    3                      prad,pg,pr,pcpp,iflag_phys) 
     1subroutine iniphysiq(nlayer, punjours, pdayref,ptimestep,          & 
     2                     plat,plon,parea,                                    & 
     3                     prad,pg,pr,pcpp,                                    & 
     4                     preff,ap,bp) 
    45 
    56use dimphy, only : klev ! number of atmospheric levels 
     
    1213                               klon_mpi 
    1314use comgeomphy, only : airephy, & ! physics grid area (m2) 
    14                        cuphy, & ! cu coeff. (u_covariant = cu * u) 
    15                        cvphy, & ! cv coeff. (v_covariant = cv * v) 
    1615                       rlond, & ! longitudes 
    1716                       rlatd ! latitudes 
     
    2019 
    2120implicit none 
    22 include "dimensions.h" 
    23 include "comvert.h" 
    2421 
    2522real,intent(in) :: prad ! radius of the planet (m) 
     
    2825real,intent(in) :: pcpp ! specific heat Cp 
    2926real,intent(in) :: punjours ! length (in s) of a standard day 
    30 integer,intent(in) :: ngrid ! number of horizontal grid points in the physics (full grid) 
    3127integer,intent(in) :: nlayer ! number of atmospheric layers 
    3228real,intent(in) :: plat(klon_mpi) ! latitudes of the physics grid 
    3329real,intent(in) :: plon(klon_mpi) ! longitudes of the physics grid 
    3430real,intent(in) :: parea(klon_mpi) ! area (m2) 
    35 real,intent(in) :: pcu(klon_mpi) ! cu coeff. (u_covariant = cu * u) 
    36 real,intent(in) :: pcv(klon_mpi) ! cv coeff. (v_covariant = cv * v) 
    3731integer,intent(in) :: pdayref ! reference day of for the simulation 
    38 real,intent(in) :: ptimestep !physics time step (s) 
    39 integer,intent(in) :: iflag_phys ! type of physics to be called 
     32real,intent(in) :: ptimestep ! physics time step (s) 
     33real,intent(in) :: preff      ! reference surface pressure (Pa) 
     34real,intent(in) :: ap(nlayer+1) ! hybrid coordinate at interfaces 
     35real,intent(in) :: bp(nlayer+1) ! hybrid coordinate at interfaces 
    4036 
    41 integer :: ibegin,iend,offset 
     37integer :: offset 
    4238character(len=20) :: modname='iniphysiq' 
    4339character(len=80) :: abort_message 
     
    5248ENDIF 
    5349 
    54 IF (ngrid.NE.klon_glo) THEN 
    55   write(*,*) 'STOP in ',trim(modname) 
    56   write(*,*) 'Problem with dimensions :' 
    57   write(*,*) 'ngrid     = ',ngrid 
    58   write(*,*) 'klon   = ',klon_glo 
    59   abort_message = '' 
    60   CALL abort_gcm (modname,abort_message,1) 
    61 ENDIF 
    6250 
    63 !$OMP PARALLEL PRIVATE(ibegin,iend) &  
    64         !$OMP SHARED(parea,pcu,pcv,plon,plat) 
     51!$OMP PARALLEL SHARED(parea,plon,plat) 
    6552       
    6653offset=0 
    6754airephy(1:klon_omp)=parea(offset+klon_omp_begin:offset+klon_omp_end) 
    68 cuphy(1:klon_omp)=pcu(offset+klon_omp_begin:offset+klon_omp_end) 
    69 cvphy(1:klon_omp)=pcv(offset+klon_omp_begin:offset+klon_omp_end) 
    7055rlond(1:klon_omp)=plon(offset+klon_omp_begin:offset+klon_omp_end) 
    7156rlatd(1:klon_omp)=plat(offset+klon_omp_begin:offset+klon_omp_end) 
Note: See TracChangeset for help on using the changeset viewer.