source: LMDZ4/branches/LMDZ4V5.0-dev/libf/phylmd/iniphysiq.F @ 2060

Last change on this file since 2060 was 1299, checked in by Laurent Fairhead, 15 years ago

Nettoyage general pour se rapprocher des normes et éviter des erreurs a la
compilation:

  • tous les FLOAT() sont remplacés par des REAL()
  • tous les STOP dans phylmd sont remplacés par des appels à abort_gcm
  • le common control défini dans le fichier control.h est remplacé par le module control_mod pour éviter des messages sur l'alignement des variables dans les déclarations
  • des $Header$ remplacés par des $Id$ pour svn

Quelques remplacements à faire ont pu m'échapper


General cleanup of the code to try and adhere to norms and to prevent some
compilation errors:

  • all FLOAT() instructions have been replaced by REAL() instructions
  • all STOP instructions in phylmd have been replaced by calls to abort_gcm
  • the common block control defined in the control.h file has been replaced by the control_mod to prevent compilation warnings on the alignement of declared variables
  • $Header$ replaced by $Id$ for svn

Some changes which should have been made might have escaped me

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.0 KB
RevLine 
[524]1!
[1299]2! $Id: iniphysiq.F 1299 2010-01-20 14:27:21Z fairhead $
[524]3!
4c
5c
6      SUBROUTINE iniphysiq(ngrid,nlayer,
7     $           punjours,
8     $           pdayref,ptimestep,
9     $           plat,plon,parea,pcu,pcv,
10     $           prad,pg,pr,pcpp)
[776]11      USE dimphy
12      USE mod_grid_phy_lmdz
13      USE mod_phys_lmdz_para
[766]14      USE comgeomphy
[805]15
[524]16      IMPLICIT NONE
17c
18c=======================================================================
19c
20c   subject:
21c   --------
22c
23c   Initialisation for the physical parametrisations of the LMD
24c   martian atmospheric general circulation modele.
25c
26c   author: Frederic Hourdin 15 / 10 /93
27c   -------
28c
29c   arguments:
30c   ----------
31c
32c   input:
33c   ------
34c
35c    ngrid                 Size of the horizontal grid.
36c                          All internal loops are performed on that grid.
37c    nlayer                Number of vertical layers.
38c    pdayref               Day of reference for the simulation
39c    firstcall             True at the first call
40c    lastcall              True at the last call
41c    pday                  Number of days counted from the North. Spring
42c                          equinoxe.
43c
44c=======================================================================
45c
46c-----------------------------------------------------------------------
47c   declarations:
48c   -------------
49 
[766]50cym#include "dimensions.h"
51cym#include "dimphy.h"
52cym#include "comgeomphy.h"
53#include "YOMCST.h"
[524]54      REAL prad,pg,pr,pcpp,punjours
55 
56      INTEGER ngrid,nlayer
[776]57      REAL plat(ngrid),plon(ngrid),parea(klon_glo)
58      REAL pcu(klon_glo),pcv(klon_glo)
[524]59      INTEGER pdayref
[805]60      INTEGER :: ibegin,iend,offset
[524]61 
62      REAL ptimestep
[1299]63      CHARACTER (LEN=20) :: modname='iniphysiq'
64      CHARACTER (LEN=80) :: abort_message
[524]65 
66      IF (nlayer.NE.klev) THEN
67         PRINT*,'STOP in inifis'
68         PRINT*,'Probleme de dimensions :'
69         PRINT*,'nlayer     = ',nlayer
70         PRINT*,'klev   = ',klev
[1299]71         abort_message = ''
72         CALL abort_gcm (modname,abort_message,1)
[524]73      ENDIF
74
[776]75      IF (ngrid.NE.klon_glo) THEN
[524]76         PRINT*,'STOP in inifis'
77         PRINT*,'Probleme de dimensions :'
78         PRINT*,'ngrid     = ',ngrid
[776]79         PRINT*,'klon   = ',klon_glo
[1299]80         abort_message = ''
81         CALL abort_gcm (modname,abort_message,1)
[524]82      ENDIF
[766]83c$OMP PARALLEL PRIVATE(ibegin,iend)
84c$OMP+         SHARED(parea,pcu,pcv,plon,plat)
[805]85     
86      offset=klon_mpi_begin-1
87      airephy(1:klon_omp)=parea(offset+klon_omp_begin:
88     &                          offset+klon_omp_end)
89      cuphy(1:klon_omp)=pcu(offset+klon_omp_begin:offset+klon_omp_end)
90      cvphy(1:klon_omp)=pcv(offset+klon_omp_begin:offset+klon_omp_end)
91      rlond(1:klon_omp)=plon(offset+klon_omp_begin:offset+klon_omp_end)
92      rlatd(1:klon_omp)=plat(offset+klon_omp_begin:offset+klon_omp_end)
[524]93
[879]94      call suphel
[766]95
96c$OMP END PARALLEL
97
[524]98      print*,'ATTENTION !!! TRAVAILLER SUR INIPHYSIQ'
99      print*,'CONTROLE DES LATITUDES, LONGITUDES, PARAMETRES ...'
100
101      RETURN
[1299]1029999  CONTINUE
103      abort_message ='Cette version demande les fichier rnatur.dat
104     & et surf.def'
105      CALL abort_gcm (modname,abort_message,1)
106
[524]107      END
Note: See TracBrowser for help on using the repository browser.