Ignore:
Timestamp:
Apr 2, 2016, 4:09:43 PM (9 years ago)
Author:
emillour
Message:

Mars GCM:

  • Got rid of references to "dimensions.h" from physics packages: use nbp_lon (=iim), nbp_lat (==jjp1) and nbp_lev from module mod_grid_phy_lmdz (in phy_common) instead.
  • Added "ioipsl_getin_p_mod.F90" (getin_p routine) in phy_common to correctly read in parameters from *.def files in a parallel environment.

EM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.MARS/libf/phymars/eofdump_mod.F90

    r1524 r1528  
    11module eofdump_mod
    22! this module controls the production of data for EOFs
     3! it won't work if run in parallel (but it's OK, we don't use it anymore...)
     4! Mainly kept for reference.
    35implicit none
    46! Dump profiles for EOFs every ieofs physics timesteps,
     
    1517      subroutine eofdump(ngrid,nlayer,u,v,t,rho,ps)
    1618
     19      use mod_grid_phy_lmdz, only: nbp_lon, nbp_lat
    1720      implicit none
    1821!
     
    2124!     Corrected small bug in sampling rate/count, EM 11/2007
    2225!
    23 #include "dimensions.h"
    2426!
    2527
     
    5254      if (mod(count+1,ieofs).eq.0) then
    5355!        write(*,*)'eofdump: dump --> ps(1)=',ps(1)
    54         do i=1,iim,eofskip
    55           do j=1+eofskip/2,jjm+1,eofskip
    56             ig = 1+ (j-2)*iim +i
     56        do i=1,nbp_lon,eofskip
     57          do j=1+eofskip/2,nbp_lat,eofskip
     58            ig = 1+ (j-2)*nbp_lon +i
    5759#ifdef NC_DOUBLE
    5860            write(uedata) (real(u(ig,l)),l=1,nlayer)
     
    8284      use time_phylmdz_mod, only: daysec, dtphys
    8385      USE comvert_mod, ONLY: aps,bps
     86      use mod_grid_phy_lmdz, only: nbp_lon, nbp_lat
    8487      implicit none
    8588!
    8689!     Initialise dumping of profiles for EOF calculations
    8790!
    88 #include "dimensions.h"
    8991
    9092      integer,intent(in) :: ngrid ! total number of physics grid points
     
    9698
    9799      if (firstcall) then
    98          npgrid=ngrid+2*(iim-1)
     100         npgrid=ngrid+2*(nbp_lon-1)
    99101         firstcall=.false.
    100102      endif
     
    111113      open(uehead,file='profiles.hdr',form='formatted')
    112114      write(uehead,*) 0.E+0,0,0,ieofs,1,0
    113       write(uehead,*) iim,npgrid/iim,npgrid,nlayer
     115      write(uehead,*) nbp_lon,npgrid/nbp_lon,npgrid,nlayer
    114116
    115       do i=1,iim,eofskip
    116         do j=1+eofskip/2,jjm+1,eofskip   
    117           ig = 1+ (j-2)*iim +i
     117      do i=1,nbp_lon,eofskip
     118        do j=1+eofskip/2,nbp_lat,eofskip   
     119          ig = 1+ (j-2)*nbp_lon +i
    118120          if(j.eq.1) stop 'Problem in ineofdump.F'
    119           if(j.eq.jjm+1) stop 'Problem in ineofdump.F'
     121          if(j.eq.nbp_lat) stop 'Problem in ineofdump.F'
    120122#ifdef NC_DOUBLE
    121123          write(uehead,*) real(long(ig)*180./pi),real(lati(ig)*180./pi)
Note: See TracChangeset for help on using the changeset viewer.