source: LMDZ6/branches/Amaury_dev/libf/grid/lmdz_fxy_new.f90 @ 5132

Last change on this file since 5132 was 5122, checked in by abarral, 4 months ago

fix lmdz_fxy

  • 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.1 KB
Line 
1! This module replaces grid/fxy_new.h
2
3MODULE lmdz_fxy_new
4  USE comconst_mod, ONLY: pi
5  USE serre_mod, ONLY: pxo, pyo, alphax, alphay, transx, transy
6  IMPLICIT NONE; PRIVATE
7  PUBLIC fx, fxprim, fy, fyprim
8  INCLUDE "dimensions.h"
9  INCLUDE "paramet.h"
10CONTAINS
11  REAL FUNCTION ripx(ri)
12    REAL, INTENT(IN) :: ri
13    ripx = (ri - 1.0) * 2. * pi / REAL(iim)
14  END FUNCTION ripx
15
16  REAL FUNCTION fx(ri)
17    REAL, INTENT(IN) :: ri
18    fx = ripx(ri) + transx + alphax * SIN(ripx(ri) + transx - pxo) - pi
19  END FUNCTION fx
20
21  REAL FUNCTION fxprim(ri)
22    REAL, INTENT(IN) :: ri
23    fxprim = 2. * pi / REAL(iim) * (1. + alphax * COS(ripx(ri) + transx - pxo))
24  END FUNCTION fxprim
25
26  REAL FUNCTION bigy(rj)
27    REAL, INTENT(IN) :: rj
28    bigy = 2. * (REAL(jjp1) - rj) * pi / jjm
29  END FUNCTION bigy
30
31  REAL FUNCTION fy(rj)
32    REAL, INTENT(IN) :: rj
33    fy = (bigy(rj) + transy + alphay * SIN(bigy(rj) + transy - pyo)) / 2. - pi / 2.
34  END FUNCTION fy
35
36  REAL FUNCTION fyprim(rj)
37    REAL, INTENT(IN) :: rj
38    fyprim = (pi / jjm) * (1. + alphay * COS(bigy(rj) + transy - pyo))
39  END FUNCTION fyprim
40END MODULE lmdz_fxy_new
Note: See TracBrowser for help on using the repository browser.