Changeset 5297 for LMDZ6


Ignore:
Timestamp:
Oct 30, 2024, 2:17:34 PM (37 hours ago)
Author:
abarral
Message:

Turn gradsdef.h coefils.h into a module

Location:
LMDZ6/trunk/libf
Files:
7 edited
2 moved

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/dyn3d/wrgrads.F90

    r5271 r5297  
    33!
    44subroutine wrgrads(if,nl,field,name,titlevar)
     5  USE gradsdef_mod_h
    56  implicit none
    67
     
    1112  !    name    petit nom
    1213  !    titlevar   Titre
    13 
    14 INCLUDE "gradsdef.h"
    1514
    1615  !   arguments
  • LMDZ6/trunk/libf/dyn3d_common/gradsdef_mod_h.f90

    r5296 r5297  
    1 !
    2 ! $Header$
    3 !
    4 integer :: nfmx,imx,jmx,lmx,nvarmx
    5 parameter(nfmx=10,imx=200,jmx=150,lmx=200,nvarmx=1000)
     1! Replaces gradsdef.h
    62
    7 real :: xd(imx,nfmx),yd(jmx,nfmx),zd(lmx,nfmx),dtime(nfmx)
     3MODULE gradsdef_mod_h
     4  IMPLICIT NONE; PRIVATE
     5  PUBLIC xd, yd, zd, dtime, &
     6          imd, jmd, lmd, iid, jid, ifd, jfd, &
     7          unit, irec, nvar, ivar, itime, nld, firsttime, &
     8          var, fichier, title, tvar, nfmx, imx, jmx, lmx, nvarmx
    89
    9 integer :: imd(imx),jmd(jmx),lmd(lmx)
    10 integer :: iid(imx),jid(jmx)
    11 integer :: ifd(imx),jfd(jmx)
    12 integer :: unit(nfmx),irec(nfmx),itime(nfmx),nld(nvarmx,nfmx)
     10  INTEGER nfmx, imx, jmx, lmx, nvarmx
     11  parameter(nfmx = 10, imx = 200, jmx = 150, lmx = 200, nvarmx = 1000)
    1312
    14 integer :: nvar(nfmx),ivar(nfmx)
    15 logical :: firsttime(nfmx)
     13  REAL xd(imx, nfmx), yd(jmx, nfmx), zd(lmx, nfmx), dtime(nfmx)
    1614
    17 character(len=10) :: var(nvarmx,nfmx),fichier(nfmx)
    18 character(len=40) :: title(nfmx),tvar(nvarmx,nfmx)
     15  INTEGER imd(imx), jmd(jmx), lmd(lmx)
     16  INTEGER iid(imx), jid(jmx)
     17  INTEGER ifd(imx), jfd(jmx)
     18  INTEGER unit(nfmx), irec(nfmx), itime(nfmx), nld(nvarmx, nfmx)
    1919
    20 common/gradsdef/xd,yd,zd,dtime, &
    21       imd,jmd,lmd,iid,jid,ifd,jfd, &
    22       unit,irec,nvar,ivar,itime,nld,firsttime, &
    23       var,fichier,title,tvar
     20  INTEGER nvar(nfmx), ivar(nfmx)
     21  LOGICAL firsttime(nfmx)
     22
     23  CHARACTER*10 var(nvarmx, nfmx), fichier(nfmx)
     24  CHARACTER*40 title(nfmx), tvar(nvarmx, nfmx)
     25
     26END MODULE gradsdef_mod_h
  • LMDZ6/trunk/libf/dyn3d_common/inigrads.f90

    r5246 r5297  
    55        ,x,fx,xmin,xmax,jm,y,ymin,ymax,fy,lm,z,fz &
    66        ,dt,file,titlel)
    7 
    8 
     7  USE gradsdef_mod_h
    98  implicit none
    109
     
    1514  character(len=*),intent(in) :: file
    1615  character(len=*),intent(in) :: titlel
    17 
    18   INCLUDE "gradsdef.h"
    1916
    2017  ! data unit/66,32,34,36,38,40,42,44,46,48/
  • LMDZ6/trunk/libf/dyn3dmem/mod_filtreg_p.F90

    r5285 r5297  
    1414
    1515    USE dimensions_mod, ONLY: iim, jjm, llm, ndm
    16 USE paramet_mod_h
     16    USE paramet_mod_h
     17    USE coefils_mod_h
    1718IMPLICIT NONE
    1819
     
    5657    !            ifiltre =-2     filtre inverse
    5758    !
    58     !
    59 
    60 
    61     INCLUDE "coefils.h"
    6259    !
    6360    INTEGER,INTENT(IN) :: jjb,jje,ibeg,iend,nlat,nbniv,ifiltre,iter
  • LMDZ6/trunk/libf/dyn3dmem/wrgrads.f90

    r5246 r5297  
    33!
    44subroutine wrgrads(if,nl,field,name,titlevar)
     5  USE gradsdef_mod_h
    56  implicit none
    67
     
    1112  !    name    petit nom
    1213  !    titlevar   Titre
    13 
    14   INCLUDE "gradsdef.h"
    1514
    1615  !   arguments
  • LMDZ6/trunk/libf/filtrez/coefils_mod_h.f90

    r5296 r5297  
    1 !
    2 ! $Id $
    3 !
    4       COMMON/coefils/jfiltnu,jfiltsu,jfiltnv,jfiltsv,sddu(iim),sddv(iim)&
    5      & ,unsddu(iim),unsddv(iim),coefilu(iim,jjm),coefilv(iim,jjm),      &
    6      & modfrstu(jjm),modfrstv(jjm),eignfnu(iim,iim),eignfnv(iim,iim)    &
    7      & ,coefilu2(iim,jjm),coefilv2(iim,jjm)
    8 !c
    9       INTEGER jfiltnu ! index of the last lat line filtered in NH (U grid)
    10       INTEGER jfiltsu ! index of the first lat line filtered in SH (U grid)
    11       INTEGER jfiltnv ! index of the last lat line filtered in NH (V grid)
    12       INTEGER jfiltsv ! index of the first lat line filtered in SH (V grid)
    13       INTEGER modfrstu ! number of retained (ie: unfiltered) modes on U grid
    14       INTEGER modfrstv ! number of retained (ie: unfiltered) modes on V grid
    15       REAL    sddu,sddv,unsddu,unsddv,coefilu,coefilv,eignfnu,eignfnv
    16       REAL    coefilu2,coefilv2
     1! replacement for coefils.h
     2MODULE coefils_mod_h
     3  USE dimensions_mod, ONLY: iim, jjm, llm, ndm
     4  IMPLICIT NONE; PRIVATE
     5
     6  PUBLIC jfiltnu, jfiltsu, jfiltnv, jfiltsv, sddu, sddv, unsddu, unsddv, coefilu, coefilv, &
     7          modfrstu, modfrstv, eignfnu, eignfnv, coefilu2, coefilv2
     8
     9  INTEGER :: jfiltnu ! index of the last lat line filtered in NH (U grid)
     10  INTEGER :: jfiltsu ! index of the first lat line filtered in SH (U grid)
     11  INTEGER :: jfiltnv ! index of the last lat line filtered in NH (V grid)
     12  INTEGER :: jfiltsv ! index of the first lat line filtered in SH (V grid)
     13  INTEGER, DIMENSION(jjm) :: modfrstu ! number of retained (ie: unfiltered) modes on U grid
     14  INTEGER, DIMENSION(jjm) :: modfrstv ! number of retained (ie: unfiltered) modes on V grid
     15  REAL, DIMENSION(iim) :: sddu, sddv, unsddu, unsddv
     16  REAL, DIMENSION(iim, jjm) :: coefilu, coefilv, coefilu2, coefilv2
     17  REAL, DIMENSION(iim, iim) :: eignfnu, eignfnv
     18END MODULE coefils_mod_h
  • LMDZ6/trunk/libf/filtrez/filtreg.F90

    r5285 r5297  
    88
    99  USE dimensions_mod, ONLY: iim, jjm, llm, ndm
    10 USE paramet_mod_h
     10  USE paramet_mod_h
     11  USE coefils_mod_h
    1112IMPLICIT NONE
    1213  !=======================================================================
     
    4748  !            ifiltre =-2     filtre inverse
    4849  !
    49   !
    50 
    51 
    52   INCLUDE "coefils.h"
    5350
    5451  INTEGER :: nlat,nbniv,ifiltre,iter
  • LMDZ6/trunk/libf/filtrez/filtreg_mod.F90

    r5285 r5297  
    1515#endif
    1616  USE comgeom_mod_h
    17     USE serre_mod, ONLY: alphax
     17  USE serre_mod, ONLY: alphax
    1818  USE logic_mod, ONLY: fxyhypb, ysinus
    1919  USE comconst_mod, ONLY: maxlatfilter
    2020
    21     !    ... H. Upadhyaya, O.Sharma   ...
    22     !
    23     USE dimensions_mod, ONLY: iim, jjm, llm, ndm
    24 USE paramet_mod_h
     21  !    ... H. Upadhyaya, O.Sharma   ...
     22  !
     23  USE dimensions_mod, ONLY: iim, jjm, llm, ndm
     24  USE paramet_mod_h
     25  USE coefils_mod_h
    2526IMPLICIT NONE
    2627    !
     
    2829
    2930    !     Correction  le 28/10/97    P. Le Van .
    30     !  -------------------------------------------------------------------
    31 
    32 
    33     !  -------------------------------------------------------------------
    34     include "coefils.h"
     31
    3532
    3633    REAL  dlonu(iim),dlatu(jjm)
  • LMDZ6/trunk/libf/filtrez/inifgn.F90

    r5285 r5297  
    88  USE comgeom_mod_h
    99  USE dimensions_mod, ONLY: iim, jjm, llm, ndm
    10 USE paramet_mod_h
     10  USE paramet_mod_h
     11  USE coefils_mod_h
    1112IMPLICIT NONE
    12   !
    1313
    14 
    15 
    16   !
    1714  REAL :: vec(iim,iim),vec1(iim,iim)
    1815  REAL :: dlonu(iim),dlonv(iim)
     
    2017  REAL :: pi
    2118  INTEGER :: i,j,k,imm1,nrot
    22   !
    23   include "coefils.h"
    24   !
    2519  EXTERNAL SSUM, acc,eigen,jacobi
    2620  REAL :: SSUM
Note: See TracChangeset for help on using the changeset viewer.