source: LMDZ6/trunk/libf/dyn3d_common/fxy.f90 @ 5280

Last change on this file since 5280 was 5272, checked in by abarral, 17 months ago

Turn paramet.h into a module

  • Property copyright set to
    Name of program: LMDZ
    Creation date: 1984
    Version: LMDZ5
    License: CeCILL version 2
    Holder: Laboratoire de m\'et\'eorologie dynamique, CNRS, UMR 8539
    See the license file in the root directory
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.9 KB
Line 
1!
2! $Id: fxy.f90 5272 2024-10-24 15:53:15Z abarral $
3!
4SUBROUTINE fxy (rlatu,yprimu,rlatv,yprimv,rlatu1,yprimu1, &
5        rlatu2,yprimu2, &
6        rlonu,xprimu,rlonv,xprimv,rlonm025,xprimm025,rlonp025,xprimp025)
7
8  USE comconst_mod, ONLY: pi
9  USE serre_mod, ONLY: pxo,pyo,alphax,alphay,transx,transy
10
11  USE dimensions_mod, ONLY: iim, jjm, llm, ndm
12USE paramet_mod_h, ONLY: iip1, iip2, iip3, jjp1, llmp1, llmp2, llmm1, kftd, ip1jm, ip1jmp1, &
13          ip1jmi1, ijp1llm, ijmllm, mvar, jcfil, jcfllm
14IMPLICIT NONE
15
16  ! Auteur  :  P. Le Van
17  !
18  ! Calcul  des longitudes et des latitudes  pour une fonction f(x,y)
19  !       a tangente sinusoidale et eventuellement avec zoom  .
20  !
21  !
22
23
24
25   INTEGER :: i,j
26
27   REAL :: rlatu(jjp1), yprimu(jjp1),rlatv(jjm), yprimv(jjm), &
28         rlatu1(jjm), yprimu1(jjm), rlatu2(jjm), yprimu2(jjm)
29   REAL :: rlonu(iip1),xprimu(iip1),rlonv(iip1),xprimv(iip1), &
30         rlonm025(iip1),xprimm025(iip1), rlonp025(iip1),xprimp025(iip1)
31
32  INCLUDE "fxy_new.h"
33
34
35  !    ......  calcul  des  latitudes  et de y'   .....
36  !
37   DO j = 1, jjm + 1
38      rlatu(j) = fy    ( REAL( j )        )
39     yprimu(j) = fyprim( REAL( j )        )
40   ENDDO
41
42
43   DO j = 1, jjm
44
45     rlatv(j)  = fy    ( REAL( j ) + 0.5  )
46     rlatu1(j) = fy    ( REAL( j ) + 0.25 )
47     rlatu2(j) = fy    ( REAL( j ) + 0.75 )
48
49    yprimv(j)  = fyprim( REAL( j ) + 0.5  )
50    yprimu1(j) = fyprim( REAL( j ) + 0.25 )
51    yprimu2(j) = fyprim( REAL( j ) + 0.75 )
52
53   ENDDO
54
55  !
56  ! .....  calcul   des  longitudes et de  x'   .....
57  !
58   DO i = 1, iim + 1
59       rlonv(i)     = fx    (   REAL( i )          )
60       rlonu(i)     = fx    (   REAL( i ) + 0.5    )
61    rlonm025(i)     = fx    (   REAL( i ) - 0.25  )
62    rlonp025(i)     = fx    (   REAL( i ) + 0.25  )
63
64     xprimv  (i)    = fxprim (  REAL( i )          )
65     xprimu  (i)    = fxprim (  REAL( i ) + 0.5    )
66    xprimm025(i)    = fxprim (  REAL( i ) - 0.25   )
67    xprimp025(i)    = fxprim (  REAL( i ) + 0.25   )
68   ENDDO
69
70  !
71   RETURN
72END SUBROUTINE fxy
73
Note: See TracBrowser for help on using the repository browser.