/[lmdze]/trunk/phylmd/screenc.f
ViewVC logotype

Annotation of /trunk/phylmd/screenc.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 38 - (hide annotations)
Thu Jan 6 17:52:19 2011 UTC (13 years, 4 months ago) by guez
Original Path: trunk/libf/phylmd/screenc.f90
File size: 3534 byte(s)
Extracted ASCII art from "inigeom" into a separate text file in the
documentation.

"test_disvert" now creates a separate file for layer thicknesses.

Moved variables from module "yomcst" to module "suphec_m" because this
is where those variables are defined. Kept in "yomcst" only parameters
of Earth orbit. Gave the attribute "parameter" to some variables of
module "suphec_m".

Variables of module "yoethf" were defined in procedure "suphec". Moved
these definitions to a new procedure "yoethf" in module "yoethf_m".

1 guez 3 !
2     ! $Header: /home/cvsroot/LMDZ4/libf/phylmd/screenc.F90,v 1.1.1.1 2004/05/19 12:53:09 lmdzadmin Exp $
3     !
4     SUBROUTINE screenc(klon, knon, nsrf, zxli, &
5     speed, temp, q_zref, zref, &
6     ts, qsurf, rugos, psol, &
7     ustar, testar, qstar, okri, ri1, &
8     pref, delu, delte, delq)
9 guez 38 use SUPHEC_M
10 guez 3 IMPLICIT NONE
11     !-----------------------------------------------------------------------
12     !
13     ! Objet : calcul "correcteur" des anomalies du vent, de la temperature
14     ! potentielle et de l'humidite relative au niveau de reference zref et
15     ! par rapport au 1er niveau (pour u) ou a la surface (pour theta et q)
16     ! a partir des equations de Louis.
17     !
18     ! Reference : Hess, Colman et McAvaney (1995)
19     !
20     ! I. Musat, 01.07.2002
21     !-----------------------------------------------------------------------
22     !
23     ! klon----input-I- dimension de la grille physique (= nb_pts_latitude X nb_pts_longitude)
24     ! knon----input-I- nombre de points pour un type de surface
25     ! nsrf----input-I- indice pour le type de surface; voir indicesol.inc
26     ! zxli----input-L- TRUE si calcul des cdrags selon Laurent Li
27     ! speed---input-R- module du vent au 1er niveau du modele
28     ! temp----input-R- temperature de l'air au 1er niveau du modele
29     ! q_zref--input-R- humidite relative au 1er niveau du modele
30     ! zref----input-R- altitude de reference
31     ! ts------input-R- temperature de l'air a la surface
32     ! qsurf---input-R- humidite relative a la surface
33     ! rugos---input-R- rugosite
34     ! psol----input-R- pression au sol
35     ! ustar---input-R- facteur d'echelle pour le vent
36     ! testar--input-R- facteur d'echelle pour la temperature potentielle
37     ! qstar---input-R- facteur d'echelle pour l'humidite relative
38     ! okri----input-L- TRUE si on veut tester le nb. Richardson entre la sfce
39     ! et zref par rapport au Ri entre la sfce et la 1ere couche
40     ! ri1-----input-R- nb. Richardson entre la surface et la 1ere couche
41     !
42     ! pref----input-R- pression au niveau de reference
43     ! delu----input-R- anomalie du vent par rapport au 1er niveau
44     ! delte---input-R- anomalie de la temperature potentielle par rapport a la surface
45     ! delq----input-R- anomalie de l'humidite relative par rapport a la surface
46     !
47     INTEGER, intent(in) :: klon, knon, nsrf
48     LOGICAL, intent(in) :: zxli, okri
49     REAL, dimension(klon), intent(in) :: speed, temp, q_zref
50     REAL, intent(in) :: zref
51     REAL, dimension(klon), intent(in) :: ts, qsurf, rugos, psol
52     REAL, dimension(klon), intent(in) :: ustar, testar, qstar, ri1
53     !
54     REAL, dimension(klon), intent(out) :: pref, delu, delte, delq
55     !-----------------------------------------------------------------------
56     !
57     ! Variables locales
58     INTEGER :: i
59     REAL, dimension(klon) :: cdram, cdrah, cdran, zri1, gref
60     !
61     !-------------------------------------------------------------------------
62     DO i=1, knon
63     gref(i) = zref*RG
64     ENDDO
65     !
66     ! Richardson at reference level
67     !
68     CALL coefcdrag (klon, knon, nsrf, zxli, &
69     speed, temp, q_zref, gref, &
70     psol, ts, qsurf, rugos, &
71     okri, ri1, &
72     cdram, cdrah, cdran, zri1, &
73     pref)
74     !
75     DO i = 1, knon
76     delu(i) = ustar(i)/sqrt(cdram(i))
77     delte(i)= (testar(i)* sqrt(cdram(i)))/ &
78     cdrah(i)
79     delq(i)= (qstar(i)* sqrt(cdram(i)))/ &
80     cdrah(i)
81     ENDDO
82     !
83     RETURN
84     END SUBROUTINE screenc

  ViewVC Help
Powered by ViewVC 1.1.21