/[MITgcm]/MITgcm/pkg/fizhi/fizhi_init_fixed.F
ViewVC logotype

Diff of /MITgcm/pkg/fizhi/fizhi_init_fixed.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.11 by molod, Tue Jun 15 21:18:18 2004 UTC revision 1.24 by molod, Tue May 24 16:29:38 2005 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2  C $Name$  C $Name$
3    
4    #include "FIZHI_OPTIONS.h"
5         subroutine fizhi_init_fixed (myThid)         subroutine fizhi_init_fixed (myThid)
6  c-----------------------------------------------------------------------  c-----------------------------------------------------------------------
7  c  Routine to initialise the fizhi package.  c  Routine to initialise the fizhi package.
# Line 21  c   3) For now, the fizhi package contai Line 22  c   3) For now, the fizhi package contai
22  c      routines, so this routine will also initialize the alarms.  c      routines, so this routine will also initialize the alarms.
23  c-----------------------------------------------------------------------  c-----------------------------------------------------------------------
24         implicit none         implicit none
 #include "CPP_OPTIONS.h"  
25  #include "SIZE.h"  #include "SIZE.h"
26  #include "fizhi_SIZE.h"  #include "fizhi_SIZE.h"
27  #include "fizhi_land_SIZE.h"  #include "fizhi_land_SIZE.h"
# Line 33  c--------------------------------------- Line 33  c---------------------------------------
33  #include "chronos.h"  #include "chronos.h"
34  #include "gridalt_mapping.h"  #include "gridalt_mapping.h"
35  #include "GRID.h"  #include "GRID.h"
36    #include "PARAMS.h"
37    
38         integer myThid         integer myThid
39    
40         integer i,j,bi,bj         integer i,j,L,bi,bj
41         integer im1, im2, jm1, jm2, idim1, idim2, jdim1, jdim2         integer im1, im2, jm1, jm2, idim2, jdim2
42         integer nymdb,nhmsb         integer nymdb,nhmsb
43         character*40 vegdata         character*40 vegdata
44           _RL pressure0(Nrphys+1)
45         _RL pressure(Nrphys)         _RL pressure(Nrphys)
46         _RL lats(sNx,sNy,Nsx,Nsy), lons(sNx,sNy,Nsx,Nsy)         _RL lats(sNx,sNy,Nsx,Nsy), lons(sNx,sNy,Nsx,Nsy)
47         _RL fracland(sNx,sNy,Nsx,Nsy)         _RL fracland(sNx,sNy,Nsx,Nsy)
48           _RL tempoverlap(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nsx,Nsy)
49    
        idim1 = 1-OLx  
50         idim2 = sNx+OLx         idim2 = sNx+OLx
        jdim1 = 1-OLy  
51         jdim2 = sNy+OLy         jdim2 = sNy+OLy
52         im1 = 1         im1 = 1
53         im2 = sNx         im2 = sNx
# Line 55  c--------------------------------------- Line 56  c---------------------------------------
56         nymdb = nymd0         nymdb = nymd0
57         nhmsb = nhms0         nhmsb = nhms0
58    
59    #ifdef ALLOW_MNC
60           if (useMNC) then
61            call fizhi_mnc_init(myThid)
62           endif
63    #endif
64    
65         call fizhi_alarms(nymdb,nhmsb,deltaTClock)         call fizhi_alarms(nymdb,nhmsb,deltaTClock)
66    
67         do bj = myByLo(myThid), myByHi(myThid)         do bj = myByLo(myThid), myByHi(myThid)
# Line 67  c--------------------------------------- Line 74  c---------------------------------------
74         enddo         enddo
75         enddo         enddo
76         enddo         enddo
77         call fizhi_init_veg ( mythid, vegdata,idim2,jdim2,Nsx,Nsy,         vegdata = 'veg19232.data'
78       .                 nSx*nPx,nSy*nPy,maxtyp,nchp,lons,lats,         call fizhi_init_veg ( mythid, vegdata,im2,jm2,Nsx,Nsy,
79       .            surftype,tilefrac,igrd,ityp,chfr,chlt,chlon)       .         nSx*nPx,nSy*nPy,maxtyp,nchp,nchptot,nchpland,lons,lats,
80         .         surftype,tilefrac,igrd,ityp,chfr,chlt,chlon)
81    
82  C And now fill the earth export landtype  C And now fill the earth export landtype
83         do bj = myByLo(myThid), myByHi(myThid)         do bj = myByLo(myThid), myByHi(myThid)
# Line 79  C And now fill the earth export landtype Line 87  C And now fill the earth export landtype
87          do j=jm1,jm2          do j=jm1,jm2
88          do i=im1,im2          do i=im1,im2
89           landtype(i,j,bi,bj) = surftype(i,j,1,bi,bj)           landtype(i,j,bi,bj) = surftype(i,j,1,bi,bj)
90           if(fracland(i,j).ge.0.3.and.surftype(i,j,1,bi,bj).ge.100)           if(fracland(i,j,bi,bj).ge.0.3.and.surftype(i,j,1,bi,bj).ge.100)
91       .            landtype(i,j,bi,bj) = surftype(i,j,2,bi,bj)       .            landtype(i,j,bi,bj) = surftype(i,j,2,bi,bj)
92           if(sice(i,j,bi,bj).ne.0.0)landtype(i,j,bi,bj) = 101           if(sice(i,j,bi,bj).ne.0.0)landtype(i,j,bi,bj) = 101
93          enddo          enddo
# Line 87  C And now fill the earth export landtype Line 95  C And now fill the earth export landtype
95         enddo         enddo
96         enddo         enddo
97    
98  C Compute pressure profile to get methane and n2o values (bottom-up)  C Compute pressure profile to get methane and n2o values
99    C     - First bottom-up (in mb)
100    
101         pressure(1)=1000.         pressure0(1)=1000.
102         do L = 2,Nrphys+1         do L = 2,Nrphys+1
103          pressure(L)=pressure(L-1)-dpphys0(1,1,L-1,1,1)          pressure0(L)=pressure0(L-1)-dpphys0(1,1,L-1,1,1)/100.
104           enddo
105    C Now flip pressure to a top-down array and average to mid levels
106    C     to send to fizhi init chem
107           do L = 1,Nrphys
108            pressure(L)=(pressure0(Nrphys+2-L)+pressure0(Nrphys+1-L))/2.
109         enddo         enddo
110    
111         call fizhi_init_chem(mythid,         call fizhi_init_chem(mythid,
112       .      nlatsoz,nlevsoz,ntimesoz,latsoz,levsoz,ozone,       .      nlatsoz,nlevsoz,ntimesoz,latsoz,levsoz,ozone,
113       .      nlatsq,nlevsq,ntimesq,latsq,levsq,stratq,       .      nlatsq,nlevsq,ntimesq,latsq,levsq,stratq,
114       .      Nrphys,pressure,n20,methane,co2,cfc11,cfc12,cfc22)       .      Nrphys,pressure,n2o,methane,co2,cfc11,cfc12,cfc22)
115    
116    C Read dataset that contains topography variance (10m by 10m in a 2x2.5 box)
117            _BEGIN_MASTER( myThid )
118            CALL READ_REC_XY_RL('topvar19232.data',tempoverlap,1,0,mythid )
119            _END_MASTER(myThid)
120            _BARRIER
121    
122           do bj = myByLo(myThid), myByHi(myThid)
123           do bi = myBxLo(myThid), myBxHi(myThid)
124            do j=jm1,jm2
125            do i=im1,im2
126             phis_var(i,j,bi,bj) = tempoverlap(i,j,bi,bj)
127            enddo
128            enddo
129           enddo
130           enddo
131    
132         return         return
133         end         end

Legend:
Removed from v.1.11  
changed lines
  Added in v.1.24

  ViewVC Help
Powered by ViewVC 1.1.22