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

Last change on this file since 5254 was 5246, checked in by abarral, 30 hours ago

Convert fixed-form to free-form sources .F -> .{f,F}90
(WIP: some .F remain, will be handled in subsequent commits)

  • 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.8 KB
RevLine 
[524]1!
[1403]2! $Id: fxy.f90 5246 2024-10-21 12:58:45Z abarral $
[524]3!
[5246]4SUBROUTINE fxy (rlatu,yprimu,rlatv,yprimv,rlatu1,yprimu1, &
5        rlatu2,yprimu2, &
6        rlonu,xprimu,rlonv,xprimv,rlonm025,xprimm025,rlonp025,xprimp025)
[524]7
[5246]8  USE comconst_mod, ONLY: pi
9  USE serre_mod, ONLY: pxo,pyo,alphax,alphay,transx,transy
[2598]10
[5246]11  IMPLICIT NONE
[524]12
[5246]13  ! Auteur  :  P. Le Van
14  !
15  ! Calcul  des longitudes et des latitudes  pour une fonction f(x,y)
16  !       a tangente sinusoidale et eventuellement avec zoom  .
17  !
18  !
19  include "dimensions.h"
20  include "paramet.h"
[524]21
[5246]22   INTEGER :: i,j
[524]23
[5246]24   REAL :: rlatu(jjp1), yprimu(jjp1),rlatv(jjm), yprimv(jjm), &
25         rlatu1(jjm), yprimu1(jjm), rlatu2(jjm), yprimu2(jjm)
26   REAL :: rlonu(iip1),xprimu(iip1),rlonv(iip1),xprimv(iip1), &
27         rlonm025(iip1),xprimm025(iip1), rlonp025(iip1),xprimp025(iip1)
[524]28
[5246]29  INCLUDE "fxy_new.h"
[524]30
31
[5246]32  !    ......  calcul  des  latitudes  et de y'   .....
33  !
34   DO j = 1, jjm + 1
35      rlatu(j) = fy    ( REAL( j )        )
36     yprimu(j) = fyprim( REAL( j )        )
37   ENDDO
[524]38
39
[5246]40   DO j = 1, jjm
[524]41
[5246]42     rlatv(j)  = fy    ( REAL( j ) + 0.5  )
43     rlatu1(j) = fy    ( REAL( j ) + 0.25 )
44     rlatu2(j) = fy    ( REAL( j ) + 0.75 )
[524]45
[5246]46    yprimv(j)  = fyprim( REAL( j ) + 0.5  )
47    yprimu1(j) = fyprim( REAL( j ) + 0.25 )
48    yprimu2(j) = fyprim( REAL( j ) + 0.75 )
[524]49
[5246]50   ENDDO
[524]51
[5246]52  !
53  ! .....  calcul   des  longitudes et de  x'   .....
54  !
55   DO i = 1, iim + 1
56       rlonv(i)     = fx    (   REAL( i )          )
57       rlonu(i)     = fx    (   REAL( i ) + 0.5    )
58    rlonm025(i)     = fx    (   REAL( i ) - 0.25  )
59    rlonp025(i)     = fx    (   REAL( i ) + 0.25  )
[524]60
[5246]61     xprimv  (i)    = fxprim (  REAL( i )          )
62     xprimu  (i)    = fxprim (  REAL( i ) + 0.5    )
63    xprimm025(i)    = fxprim (  REAL( i ) - 0.25   )
64    xprimp025(i)    = fxprim (  REAL( i ) + 0.25   )
65   ENDDO
[524]66
[5246]67  !
68   RETURN
69END SUBROUTINE fxy
[524]70
Note: See TracBrowser for help on using the repository browser.