Ignore:
Timestamp:
Apr 25, 2014, 12:20:14 PM (10 years ago)
Author:
lguez
Message:

Removed unused variables pks, pk, pkf from main program unit gcm.

Encapsulated procedures exner_hyb, exner_hyb_p, exner_hyb_loc,
exner_milieu, exner_milieu_p and exner_milieu_loc into
modules. (Compulsory to allow optional arguments.)

In the procedures exner_hyb, exner_hyb_p, exner_hyb_loc, donwgraded
arguments alpha and beta to local variables. In exner_milieu,
exner_milieu_p and exner_milieu_loc, removed beta altogether. In the
six procedures exner_*, made pkf an optional argument. Made some
cosmetic modifications in order to keep the six procedures exner_* as
close as possible.

In the six procedures exner_*, removed the averaging of pks at the
poles: this is not useful because ps is already the same at all
longitudes at the poles. This modification changes the results of the
program. Motivation: had to do this for exner_hyb because we call it
from test_disvert with a few surface pressure values.

In all the procedures calling exner_*, removed the variables alpha and
beta. Also removed variables alpha and beta from module leapfrog_mod
and from module call_calfis_mod.

Removed actual argument pkf in call to exner_hyb* and exner_milieu*
from guide_interp, guide_main, iniacademic and iniacademic_loc (pkf
was not used in those procedures).

Argument workvar of startget_dyn is used only if varname is tpot or

  1. When varname is tpot or q, the actual argument associated to

workvar in etat0_netcdf is not y. So y in etat0_netcdf is a
place-holder, never used. So we remove optional argument y in the
calls to exner_hyb and exner_milieu from etat0_netcdf.

Created procedure test_disvert, called only by etat0_netcdf. This
procedure tests the order of pressure values at half-levels and full
levels.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/trunk/libf/dyn3dpar/leapfrog_p.F

    r1988 r2021  
    88     &                    time_0)
    99
     10      use exner_hyb_m, only: exner_hyb
     11      use exner_milieu_m, only: exner_milieu
     12      use exner_hyb_p_m, only: exner_hyb_p
     13      use exner_milieu_p_m, only: exner_milieu_p
    1014       USE misc_mod
    1115       USE parallel_lmdz
     
    149153      character*10 string10
    150154
    151       REAL,SAVE :: alpha(ip1jmp1,llm),beta(ip1jmp1,llm)
    152155      REAL,SAVE :: flxw(ip1jmp1,llm) ! flux de masse verticale
    153156
     
    241244      CALL pression ( ip1jmp1, ap, bp, ps, p       )
    242245      if (pressure_exner) then
    243         CALL exner_hyb( ip1jmp1, ps, p,alpha,beta, pks, pk, pkf )
     246        CALL exner_hyb( ip1jmp1, ps, p, pks, pk, pkf )
    244247      else
    245         CALL exner_milieu( ip1jmp1, ps, p, beta, pks, pk, pkf )
     248        CALL exner_milieu( ip1jmp1, ps, p, pks, pk, pkf )
    246249      endif
    247250c$OMP END MASTER
     
    705708c$OMP BARRIER
    706709         if (pressure_exner) then
    707            CALL exner_hyb_p(  ip1jmp1, ps, p,alpha,beta,pks, pk, pkf )
     710           CALL exner_hyb_p(  ip1jmp1, ps, p,pks, pk, pkf )
    708711         else
    709            CALL exner_milieu_p( ip1jmp1, ps, p, beta, pks, pk, pkf )
     712           CALL exner_milieu_p( ip1jmp1, ps, p, pks, pk, pkf )
    710713         endif
    711714c$OMP BARRIER
     
    918921c$OMP BARRIER
    919922          if (pressure_exner) then
    920             CALL exner_hyb_p(ip1jmp1,ps,p,alpha,beta,pks,pk,pkf)
     923            CALL exner_hyb_p(ip1jmp1,ps,p,pks,pk,pkf)
    921924          else
    922             CALL exner_milieu_p(ip1jmp1,ps,p,beta,pks,pk,pkf)
     925            CALL exner_milieu_p(ip1jmp1,ps,p,pks,pk,pkf)
    923926          endif
    924927c$OMP BARRIER
     
    10591062c$OMP BARRIER
    10601063        if (pressure_exner) then
    1061           CALL exner_hyb_p( ip1jmp1, ps, p,alpha,beta, pks, pk, pkf )
     1064          CALL exner_hyb_p( ip1jmp1, ps, p, pks, pk, pkf )
    10621065        else
    1063           CALL exner_milieu_p( ip1jmp1, ps, p, beta, pks, pk, pkf )
     1066          CALL exner_milieu_p( ip1jmp1, ps, p, pks, pk, pkf )
    10641067        endif
    10651068c$OMP BARRIER
Note: See TracChangeset for help on using the changeset viewer.