/[lmdze]/trunk/Sources/filtrez/filtreg_v.f
ViewVC logotype

Contents of /trunk/Sources/filtrez/filtreg_v.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 138 - (show annotations)
Fri May 22 23:13:19 2015 UTC (9 years ago) by guez
File size: 1286 byte(s)
Moved variable nb_files from module histcom_var to module
histbeg_totreg_m.

Removed unused argument q of writehist.

No history file is created in program ce0l so there is no need to call
histclo in etat0.

In phyredem, access variables rlat and rlon directly from module
phyetat0_m instead of having them as arguments. This is clearer for
the program gcm. There are bad side effects for the program ce0l: we
have to modify the module variables rlat and rlon in procedure etat0,
and we need the additional file phyetat0.f to compile ce0l.

1 module filtreg_v_m
2
3 IMPLICIT NONE
4
5 contains
6
7 SUBROUTINE filtreg_v(champ, intensive)
8
9 ! From filtrez/filtreg.F, version 1.1.1.1, 2004/05/19 12:53:09
10 ! Author: P. Le Van
11
12 ! Matrix filter on longitudes. Matrices have already been
13 ! computed. On v grid, direct filter only.
14
15 USE coefils, ONLY: sddu, unsddu
16 USE dimens_m, ONLY: iim, jjm
17 use filtreg_hemisph_m, only: filtreg_hemisph
18 use inifilr_m, only: jfiltnv, jfiltsv, matricevn, matricevs
19 use nr_util, only: assert
20
21 REAL, intent(inout):: champ(:, :, :) ! (iim + 1, jjm, :)
22 ! en entr\'ee : champ \`a filtrer, en sortie : champ filtr\'e
23
24 logical, intent(in):: intensive
25 ! false means the field is weighted by the area of the mesh
26
27 ! Local:
28 REAL sdd1(iim), sdd2(iim)
29
30 !-----------------------------------------------------------
31
32 call assert(size(champ, 1) == iim + 1, "filtreg_v iim + 1")
33 call assert(size(champ, 2) == jjm, "filtreg_v jjm")
34
35 IF (intensive) THEN
36 sdd1 = sddu
37 sdd2 = unsddu
38 ELSE
39 sdd1 = unsddu
40 sdd2 = sddu
41 END IF
42
43 call filtreg_hemisph(champ(:, :jfiltnv, :), sdd1, sdd2, matricevn)
44 call filtreg_hemisph(champ(:, jfiltsv:jjm, :), sdd1, sdd2, matricevs)
45
46 END SUBROUTINE filtreg_v
47
48 end module filtreg_v_m

  ViewVC Help
Powered by ViewVC 1.1.21