My Project
 All Classes Files Functions Variables Macros
atm2geo.F90
Go to the documentation of this file.
1 !
2 ! $Header$
3 !
4 SUBROUTINE atm2geo ( im, jm, pte, ptn, plon, plat, pxx, pyy, pzz )
5  USE dimphy
7  IMPLICIT NONE
8  include 'dimensions.h'
9  include 'YOMCST.h'
10 !
11 ! Change wind local atmospheric coordinates to geocentric
12 !
13  INTEGER, INTENT (in) :: im, jm
14  REAL, DIMENSION (im,jm), INTENT (in) :: pte, ptn
15  REAL, DIMENSION (im,jm), INTENT (in) :: plon, plat
16  REAL, DIMENSION (im,jm), INTENT(out) :: pxx, pyy, pzz
17 
18  REAL :: rad
19 
20 
21  rad = rpi / 180.0e0
22 
23  pxx(:,:) = &
24  - pte(:,:) * sin(rad * plon(:,:)) &
25  - ptn(:,:) * sin(rad * plat(:,:)) * cos(rad * plon(:,:))
26 
27  pyy(:,:) = &
28  + pte(:,:) * cos(rad * plon(:,:)) &
29  - ptn(:,:) * sin(rad * plat(:,:)) * sin(rad * plon(:,:))
30 
31  pzz(:,:) = &
32  + ptn(:,:) * cos(rad * plat(:,:))
33 
34 ! Value at North Pole
35  IF (is_north_pole) THEN
36  pxx(:, 1) = - pte(1, 1)
37  pyy(:, 1) = - ptn(1, 1)
38  pzz(:, 1) = pzz(1,1)
39  ENDIF
40 
41 ! Value at South Pole
42  IF (is_south_pole) THEN
43  pxx(:,jm) = pxx(1,jm)
44  pyy(:,jm) = pyy(1,jm)
45  pzz(:,jm) = pzz(1,jm)
46  ENDIF
47 
48 END SUBROUTINE atm2geo