1 |
|
module bernoui_m |
2 |
|
|
|
! $Header: /home/cvsroot/LMDZ4/libf/dyn3d/bernoui.F,v 1.1.1.1 2004/05/19 |
|
|
! 12:53:06 lmdzadmin Exp $ |
|
|
|
|
|
SUBROUTINE bernoui(ngrid, nlay, pphi, pecin, pbern) |
|
|
USE dimens_m |
|
|
USE paramet_m |
|
|
USE conf_gcm_m |
|
|
USE filtreg_m, ONLY: filtreg |
|
3 |
IMPLICIT NONE |
IMPLICIT NONE |
4 |
|
|
5 |
! ======================================================================= |
contains |
|
|
|
|
! Auteur: P. Le Van |
|
|
! ------- |
|
|
|
|
|
! Objet: |
|
|
! ------ |
|
|
! calcul de la fonction de Bernouilli aux niveaux s ..... |
|
|
! phi et ecin sont des arguments d'entree pour le s-pg ....... |
|
|
! bern est un argument de sortie pour le s-pg ...... |
|
|
|
|
|
! fonction de Bernouilli = bern = filtre de( geopotentiel + |
|
|
! energ.cinet.) |
|
|
|
|
|
! ======================================================================= |
|
|
|
|
|
! ----------------------------------------------------------------------- |
|
|
! Decalrations: |
|
|
! ------------- |
|
6 |
|
|
7 |
|
SUBROUTINE bernoui(phi, ecin, bern) |
8 |
|
|
9 |
! Arguments: |
! From LMDZ4/libf/dyn3d/bernoui.F, version 1.1.1.1 2004/05/19 12:53:06 |
|
! ---------- |
|
10 |
|
|
11 |
INTEGER nlay, ngrid |
! Author: P. Le Van |
|
REAL, INTENT (IN) :: pphi(ngrid*nlay), pecin(ngrid*nlay) |
|
|
REAL pbern(ngrid*nlay) |
|
12 |
|
|
13 |
! Local: |
! Objet: calcul de la fonction de Bernouilli aux niveaux s. |
14 |
! ------ |
! fonction de Bernouilli = bern = filtre de(geopotentiel + energ.cinet.) |
15 |
|
|
16 |
INTEGER ijl |
USE dimens_m, ONLY: jjm, llm |
17 |
|
USE filtreg_m, ONLY: filtreg |
18 |
|
|
19 |
! ----------------------------------------------------------------------- |
REAL, INTENT(IN):: phi(:, :, :), ecin (:, :, :)! (iim + 1, jjm + 1, llm) |
20 |
! calcul de Bernouilli: |
REAL, intent(out):: bern(:, :, :) ! (iim + 1, jjm + 1, llm) |
|
! --------------------- |
|
21 |
|
|
22 |
DO ijl = 1, ngrid*nlay |
!----------------------------------------------------------------------- |
|
pbern(ijl) = pphi(ijl) + pecin(ijl) |
|
|
END DO |
|
23 |
|
|
24 |
! ----------------------------------------------------------------------- |
bern = phi + ecin |
25 |
! filtre: |
CALL filtreg(bern, jjm + 1, llm, 2, 1, .TRUE.) |
|
! ------- |
|
26 |
|
|
27 |
CALL filtreg(pbern, jjp1, llm, 2, 1, .TRUE.) |
END SUBROUTINE bernoui |
28 |
|
|
29 |
! ----------------------------------------------------------------------- |
end module bernoui_m |
|
RETURN |
|
|
END SUBROUTINE bernoui |
|