source: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3dpar/covnat.F @ 3269

Last change on this file since 3269 was 1357, checked in by Ehouarn Millour, 15 years ago

Some cleanup and fixing the possibility to output fields in the dynamics, on the dynamical grids.

CLEANUPS:

  • arch-PW6_VARGAS.fcm : add potentially benefic compiling options
  • removed obsolete "control.h" in dyn3d/dyn3dpar (module control_mod.F90 is used instead)

OUTPUTS in the dynamics (3 sets of files, one for each grid: scalar, u, v):

  • removed "com_io_dyn.h" common; use module "com_io_dyn_mod.F90" instead
  • updated "initdynav.F","inithist.F","writehist.F" and "writedynav.F" in bibio: which field will be written is hard coded there.
  • flags "ok_dyn_ins" and "ok_dyn_ave" (loaded via conf_gcm.F) trigger output of fields in the dynamics: if ok_dyn_ins is true, then files "dyn_hist.nc", "dyn_histu.nc" and "dyn_histv.nc" are written (the frequency of the outputs is given by 'iecri' in run.def; values are written every 'iecri' dynamical step). if ok_dyn_ave is true then files "dyn_hist_ave.nc", "dyn_histu_ave.nc" and "dyn_histv_ave.nc" are written (the rate at which averages and made/written, in days, is given by 'periodav' in run.def).

EM

File size: 1.1 KB
Line 
1!
2! $Header$
3!
4      SUBROUTINE covnat (klevel,ucov, vcov, unat, vnat )
5      IMPLICIT NONE
6
7c=======================================================================
8c
9c   Auteur:  F Hourdin Phu LeVan
10c   -------
11c
12c   Objet:
13c   ------
14c
15c  *********************************************************************
16c    calcul des compos. naturelles a partir des comp.covariantes
17c  ********************************************************************
18c
19c=======================================================================
20
21#include "dimensions.h"
22#include "paramet.h"
23#include "comgeom.h"
24
25      INTEGER klevel
26      REAL ucov( ip1jmp1,klevel ),  vcov( ip1jm,klevel )
27      REAL unat( ip1jmp1,klevel ), vnat( ip1jm,klevel )
28      INTEGER   l,ij
29
30
31      DO l = 1,klevel
32         DO ij = 1, iip1
33            unat (ij,l) =0.
34         END DO
35
36         DO ij = iip2, ip1jm
37            unat( ij,l ) = ucov( ij,l ) / cu(ij)
38         ENDDO
39         DO ij = ip1jm+1, ip1jmp1 
40            unat (ij,l) =0.
41         END DO
42
43         DO ij = 1,ip1jm
44            vnat( ij,l ) = vcov( ij,l ) / cv(ij)
45         ENDDO
46
47      ENDDO
48      RETURN
49      END
Note: See TracBrowser for help on using the repository browser.