Changeset 179 for codes/icosagcm/trunk/src/wind.f90
- Timestamp:
- 12/13/13 18:33:56 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
codes/icosagcm/trunk/src/wind.f90
r151 r179 184 184 END SUBROUTINE compute_wind_from_lonlat_compound 185 185 186 SUBROUTINE compute_wind2D_from_lonlat_compound(ulon, ulat, u) 187 USE icosa 188 189 IMPLICIT NONE 190 REAL(rstd) :: u(3*iim*jjm,3) 191 REAL(rstd) :: ulon(3*iim*jjm) 192 REAL(rstd) :: ulat(3*iim*jjm) 193 194 INTEGER :: i,j,ij 195 196 DO j=jj_begin-1,jj_end+1 197 DO i=ii_begin-1,ii_end+1 198 ij=(j-1)*iim+i 199 u(ij+u_right,:)=ulon(ij+u_right)*elon_e(ij+u_right,:)+ ulat(ij+u_right)*elat_e(ij+u_right,:) 200 u(ij+u_lup,:)=ulon(ij+u_lup)*elon_e(ij+u_lup,:) + ulat(ij+u_lup)*elat_e(ij+u_lup,:) 201 u(ij+u_ldown,:)=ulon(ij+u_ldown)*elon_e(ij+u_ldown,:) + ulat(ij+u_ldown)*elat_e(ij+u_ldown,:) 202 ENDDO 203 ENDDO 204 205 END SUBROUTINE compute_wind2D_from_lonlat_compound 206 186 207 SUBROUTINE compute_wind_perp_from_lonlat_compound(ulon, ulat, up) 187 208 USE icosa … … 210 231 END SUBROUTINE compute_wind_perp_from_lonlat_compound 211 232 233 SUBROUTINE compute_wind2D_perp_from_lonlat_compound(ulon, ulat, up) 234 USE icosa 235 236 IMPLICIT NONE 237 REAL(rstd) :: up(3*iim*jjm) 238 REAL(rstd) :: ulon(3*iim*jjm) 239 REAL(rstd) :: ulat(3*iim*jjm) 240 REAL(rstd) :: u(3*iim*jjm,3) 241 242 INTEGER :: i,j,ij 243 244 CALL compute_wind2D_from_lonlat_compound(ulon, ulat, u) 245 DO j=jj_begin-1,jj_end+1 246 DO i=ii_begin-1,ii_end+1 247 ij=(j-1)*iim+i 248 up(ij+u_right)=sum(u(ij+u_right,:)*ep_e(ij+u_right,:)) 249 up(ij+u_lup)=sum(u(ij+u_lup,:)*ep_e(ij+u_lup,:)) 250 up(ij+u_ldown)=sum(u(ij+u_ldown,:)*ep_e(ij+u_ldown,:)) 251 ENDDO 252 ENDDO 253 254 END SUBROUTINE compute_wind2D_perp_from_lonlat_compound 255 212 256 SUBROUTINE compute_wind_centered_lonlat_compound(uc, ulon, ulat) 213 257 USE icosa
Note: See TracChangeset
for help on using the changeset viewer.