/[MITgcm]/MITgcm/pkg/cfc/cfc11_forcing.F
ViewVC logotype

Diff of /MITgcm/pkg/cfc/cfc11_forcing.F

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

revision 1.10 by jmc, Tue Mar 16 00:14:47 2010 UTC revision 1.11 by jmc, Thu Jun 6 15:48:42 2013 UTC
# Line 47  C     == Local variables == Line 47  C     == Local variables ==
47        _RL  SURCFC11(1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL  SURCFC11(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
48        _RL  xintp(1-OLy:sNy+OLy)        _RL  xintp(1-OLy:sNy+OLy)
49         INTEGER I,J         INTEGER I,J
50         INTEGER myYear, lastYear, thisYear         _RL myYear
51           INTEGER lastYear, thisYear
52         _RL dtinc, aWght, bWght         _RL dtinc, aWght, bWght
53         _RL ACFC11north, ACFC11south         _RL ACFC11north, ACFC11south
54         INTEGER maxYear         INTEGER maxYear
# Line 56  C     == Local variables == Line 57  C     == Local variables ==
57  #endif  #endif
58         _RL yNorth, ySouth         _RL yNorth, ySouth
59    
   
60           DO j=1-OLy,sNy+OLy           DO j=1-OLy,sNy+OLy
61            DO i=1-OLx,sNx+OLx            DO i=1-OLx,sNx+OLx
62             SURCFC11(i,j)=0.d0             SURCFC11(i,j)=0.d0
# Line 70  C find atmospheric CFC Line 70  C find atmospheric CFC
70         thisYear=lastYear+1         thisYear=lastYear+1
71         maxYear=cfc_yearend-cfc_yearbeg         maxYear=cfc_yearend-cfc_yearbeg
72         if (thisYear.lt.maxYear) then         if (thisYear.lt.maxYear) then
73           dtinc=myYear-float(lastYear-1)           dtinc=myYear-(lastYear-1.d0)
74           aWght=0.5d0+dtinc           aWght=0.5d0+dtinc
75           bWght=1.d0-aWght           bWght=1.d0-aWght
76  c        IF (bi*bj.eq.1)  c        IF (bi*bj.eq.1)
77  c       &write(0,*) 'myYear = ',myYear,lastYear,dtinc,aWght  c    &      write(0,*) 'myYear = ',myYear,lastYear,dtinc,aWght
78           ACFC11north = ACFC11(lastYear,1)*bWght           ACFC11north = ACFC11(lastYear,1)*bWght
79       &                + ACFC11(thisYear,1)*aWght       &                + ACFC11(thisYear,1)*aWght
80           ACFC11south = ACFC11(lastYear,2)*bWght           ACFC11south = ACFC11(lastYear,2)*bWght
# Line 83  c       &write(0,*) 'myYear = ',myYear,l Line 83  c       &write(0,*) 'myYear = ',myYear,l
83           ACFC11north = ACFC11(maxYear,1)           ACFC11north = ACFC11(maxYear,1)
84           ACFC11south = ACFC11(maxYear,2)           ACFC11south = ACFC11(maxYear,2)
85         endif         endif
86  c      print*,'ACFC11north,ACFC11south', ACFC11north,ACFC11south,  c      print*,'YEAR,ACFC11north,ACFC11south',  myYear,
87  c    &                                   lastYear,thisYear  c    &        ACFC11north,ACFC11south
88  C provide gradient between N and S values  C provide gradient between N and S values
89    
90  C STEPH S INITIAL VERSION  C STEPH S INITIAL VERSION
91  #ifdef STEPH_GRAD  #ifdef STEPH_GRAD
92         DO j=1-OLy,sNy+OLy         DO j=1-OLy,sNy+OLy
93            DO i=1-OLx,sNx+OLx          DO i=1-OLx,sNx+OLx
94             if ((j.gt.int(sNy/2)+3.and.j.le.sNy).or.j.lt.1) then            if ((j.gt.int(sNy/2)+3.and.j.le.sNy).or.j.lt.1) then
95               ATMOSCFC11(i,j,bi,bj)=ACFC11north               ATMOSCFC11(i,j,bi,bj)=ACFC11north
96             endif            endif
97             if (j.ge.int(sNy/2)-3.and.j.le.int(sNy/2)+3) then            if (j.ge.int(sNy/2)-3.and.j.le.int(sNy/2)+3) then
98               a1=(float(j-int(sNy/2)+3)+.5)/7               a1=(float(j-int(sNy/2)+3)+.5)/7
99               a2=1.d0-a1               a2=1.d0-a1
100               ATMOSCFC11(i,j,bi,bj)=a1*ACFC11south +               ATMOSCFC11(i,j,bi,bj)=a1*ACFC11south +
101       &                             a2*ACFC11north       &                             a2*ACFC11north
102             endif            endif
103             if ((j.lt.int(sNy/2)-3.and.j.gt.0).or.j.gt.sNy) then            if ((j.lt.int(sNy/2)-3.and.j.gt.0).or.j.gt.sNy) then
104               ATMOSCFC11(i,j,bi,bj)=ACFC11south               ATMOSCFC11(i,j,bi,bj)=ACFC11south
105             endif            endif
106            ENDDO          ENDDO
107         ENDDO         ENDDO
108  #endif  #endif
109  c OCMIP VERSION  C OCMIP VERSION
110  #ifdef OCMIP_GRAD  #ifdef OCMIP_GRAD
111         yNorth =  10.0         yNorth =  10.0
112         ySouth = -10.0         ySouth = -10.0

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

  ViewVC Help
Powered by ViewVC 1.1.22