source: trunk/LMDZ.COMMON/libf/dyn3d/iniconst.F @ 270

Last change on this file since 270 was 270, checked in by emillour, 13 years ago

Ehouarn: Mise a jour des dynamiques (seq et ) pour suivre
les changements et developpements de LMDZ5 terrestre
(mise a niveau avec LMDZ5 trunk, rev 1560). Ce qui ne devrais pas changer grand chose au fonctionnement de base du GCM).
Modification importante: correction du bug sur le cumul des flux de masse pour le transport des traceurs (mais dans les faits semble avoir peu d'impact).
(voir "commit_importants.log" pour les details des ajouts et modifications).

File size: 2.2 KB
Line 
1!
2! $Id: iniconst.F 1520 2011-05-23 11:37:09Z emillour $
3!
4      SUBROUTINE iniconst
5
6      USE control_mod
7#ifdef CPP_IOIPSL
8      use IOIPSL
9#else
10! if not using IOIPSL, we still need to use (a local version of) getin
11      use ioipsl_getincom
12#endif
13
14      IMPLICIT NONE
15c
16c      P. Le Van
17c
18c-----------------------------------------------------------------------
19c   Declarations:
20c   -------------
21c
22#include "dimensions.h"
23#include "paramet.h"
24#include "comconst.h"
25#include "temps.h"
26#include "comvert.h"
27#include "iniprint.h"
28
29
30      character(len=*),parameter :: modname="iniconst"
31      character(len=80) :: abort_message
32c
33c
34c
35c-----------------------------------------------------------------------
36c   dimension des boucles:
37c   ----------------------
38
39      im      = iim
40      jm      = jjm
41      lllm    = llm
42      imp1    = iim
43      jmp1    = jjm + 1
44      lllmm1  = llm - 1
45      lllmp1  = llm + 1
46
47c-----------------------------------------------------------------------
48
49      dtphys  = iphysiq * dtvr
50      unsim   = 1./iim
51      pi      = 2.*ASIN( 1. )
52
53c-----------------------------------------------------------------------
54c
55
56      r       = cpp * kappa
57
58      write(lunout,*) trim(modname),': R  CP  Kappa ',r,cpp,kappa
59c
60c-----------------------------------------------------------------------
61
62! vertical discretization: default behavior depends on planet_type flag
63      if (planet_type=="earth") then
64        disvert_type=1
65      else
66        disvert_type=2
67      endif
68      ! but user can also specify using one or the other in run.def:
69      call getin('disvert_type',disvert_type)
70      write(lunout,*) trim(modname),': disvert_type=',disvert_type
71     
72      if (disvert_type==1) then
73       ! standard case for Earth (automatic generation of levels)
74       call disvert(pa,preff,ap,bp,dpres,presnivs,nivsigs,nivsig,
75     &              scaleheight)
76      else if (disvert_type==2) then
77        ! standard case for planets (levels generated using z2sig.def file)
78        call disvert_noterre
79      else
80        write(abort_message,*) "Wrong value for disvert_type: ",
81     &                        disvert_type
82        call abort_gcm(modname,abort_message,0)
83      endif
84
85      END
Note: See TracBrowser for help on using the repository browser.