source: LMDZ6/branches/Amaury_dev/libf/dyn3d_common/iniconst.F90 @ 5128

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

Correct bug in vlspltqs_loc.f90 from r2270 where we call SSUM with incorrect arguments.
Merge the three different versions of abort_gcm into one
Fix seq, para 3D compilation broken from r5107 onwards
(lint) usual + Remove uneeded fixed-form continuations

  • 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
RevLine 
[1403]1! $Id: iniconst.F90 5128 2024-07-25 15:47:25Z abarral $
[5099]2
[1625]3SUBROUTINE iniconst
[524]4
[1625]5  USE control_mod
[5117]6  USE IOIPSL
[2597]7  USE comconst_mod, ONLY: im, imp1, jm, jmp1, lllm, lllmm1, lllmp1, &
[5118]8          unsim, pi, r, kappa, cpp, dtvr, dtphys
[2600]9  USE comvert_mod, ONLY: disvert_type, pressure_exner
[5118]10  USE lmdz_iniprint, ONLY: lunout, prt_level
11
[5128]12
[1625]13  IMPLICIT NONE
[5099]14
[1625]15  !      P. Le Van
[5099]16
[1625]17  !   Declarations:
18  !   -------------
[5099]19
[1625]20  include "dimensions.h"
21  include "paramet.h"
[524]22
[5118]23  CHARACTER(LEN = *), parameter :: modname = "iniconst"
24  CHARACTER(LEN = 80) :: abort_message
[5099]25
26
27
[1625]28  !-----------------------------------------------------------------------
29  !   dimension des boucles:
30  !   ----------------------
[524]31
[5118]32  im = iim
33  jm = jjm
34  lllm = llm
35  imp1 = iim
36  jmp1 = jjm + 1
37  lllmm1 = llm - 1
38  lllmp1 = llm + 1
[524]39
[1625]40  !-----------------------------------------------------------------------
[524]41
[5118]42  dtphys = iphysiq * dtvr
43  unsim = 1. / iim
44  pi = 2. * ASIN(1.)
[524]45
[1625]46  !-----------------------------------------------------------------------
[524]47
[5118]48  r = cpp * kappa
[524]49
[5118]50  WRITE(lunout, *) trim(modname), ': R  CP  Kappa ', r, cpp, kappa
[5099]51
[1625]52  !-----------------------------------------------------------------------
[524]53
[1625]54  ! vertical discretization: default behavior depends on planet_type flag
[5117]55  IF (planet_type=="earth") THEN
[5118]56    disvert_type = 1
[1625]57  else
[5118]58    disvert_type = 2
[5117]59  ENDIF
[1625]60  ! but user can also specify using one or the other in run.def:
[5118]61  CALL getin('disvert_type', disvert_type)
62  WRITE(lunout, *) trim(modname), ': disvert_type=', disvert_type
[1520]63
[1625]64  pressure_exner = disvert_type == 1 ! default value
[5101]65  CALL getin('pressure_exner', pressure_exner)
[1625]66
[5117]67  IF (disvert_type==1) THEN
[5118]68    ! standard case for Earth (automatic generation of levels)
69    CALL disvert()
[5117]70  ELSE IF (disvert_type==2) THEN
[5118]71    ! standard case for planets (levels generated using z2sig.def file)
72    CALL disvert_noterre
[1625]73  else
[5118]74    WRITE(abort_message, *) "Wrong value for disvert_type: ", disvert_type
75    CALL abort_gcm(modname, abort_message, 0)
[5117]76  ENDIF
[1625]77
78END SUBROUTINE iniconst
Note: See TracBrowser for help on using the repository browser.