79 |
real*8 lagran |
real*8 lagran |
80 |
real*4 arrayin(-1:nx_in+2 , -1:ny_in+2) |
real*4 arrayin(-1:nx_in+2 , -1:ny_in+2) |
81 |
real*8 x_in (-1:nx_in+2), y_in(-1:ny_in+2) |
real*8 x_in (-1:nx_in+2), y_in(-1:ny_in+2) |
82 |
|
real*8 ninety PARAMETER ( ninety = 90. ) |
83 |
integer i, j, k, l, js, bi, bj, sp, interp_unit |
integer i, j, k, l, js, bi, bj, sp, interp_unit |
84 |
_RS xG(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
_RS xG(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy) |
85 |
_RS threeSixtyRS, NorthValue |
_RS threeSixtyRS, NorthValue |
119 |
enddo |
enddo |
120 |
c y_in(ny_in+1) = y_in(ny_in) + lat_inc(ny_in-1) |
c y_in(ny_in+1) = y_in(ny_in) + lat_inc(ny_in-1) |
121 |
c y_in(ny_in+2) = y_in(ny_in) + 2.*lat_inc(ny_in-1) |
c y_in(ny_in+2) = y_in(ny_in) + 2.*lat_inc(ny_in-1) |
122 |
y_in(ny_in+1) = min( y_in(ny_in) + lat_inc(ny_in-1), 90 ) |
y_in(ny_in+1) = min( y_in(ny_in) + lat_inc(ny_in-1), ninety ) |
123 |
y_in(ny_in+2) = min( y_in(ny_in) + 2.*lat_inc(ny_in-1), 90) |
y_in(ny_in+2) = min( y_in(ny_in) + 2.*lat_inc(ny_in-1), ninety ) |
124 |
|
|
125 |
C enlarge boundary |
C enlarge boundary |
126 |
do j=1,ny_in |
do j=1,ny_in |
142 |
C gradient at North Pole |
C gradient at North Pole |
143 |
C For V (method=11,12) set to northernmost zonal value at 90N, |
C For V (method=11,12) set to northernmost zonal value at 90N, |
144 |
C as is already done above in order to allow cross-PoleArctic flow |
C as is already done above in order to allow cross-PoleArctic flow |
145 |
if (y_in(ny_in+1).eq.90) then |
if (y_in(ny_in+1).eq.ninety) then |
146 |
if (method.eq.1 .or. method.eq.2) then |
if (method.eq.1 .or. method.eq.2) then |
147 |
NorthValue = 0 |
NorthValue = 0 |
148 |
do i=1,nx_in |
do i=1,nx_in |
158 |
enddo |
enddo |
159 |
endif |
endif |
160 |
endif |
endif |
161 |
if (y_in(ny_in+2).eq.90) then |
if (y_in(ny_in+2).eq.ninety) then |
162 |
if (method.eq.1 .or. method.eq.2) then |
if (method.eq.1 .or. method.eq.2) then |
163 |
NorthValue = 0 |
NorthValue = 0 |
164 |
do i=1,nx_in |
do i=1,nx_in |