/[lmdze]/trunk/filtrez/filtreg_v.f90
ViewVC logotype

Contents of /trunk/filtrez/filtreg_v.f90

Parent Directory Parent Directory | Revision Log Revision Log


Revision 328 - (show annotations)
Thu Jun 13 14:40:06 2019 UTC (4 years, 11 months ago) by guez
File size: 1180 byte(s)
Change all `.f` suffixes to `.f90`. (The opposite was done in revision
82.)  Because of change of philosopy in GNUmakefile: we already had a
rewritten rule for `.f`, so it does not make the makefile longer to
replace it by a rule for `.f90`. And it spares us options of
makedepf90 and of the compiler. Also we prepare the way for a simpler
`CMakeLists.txt`.

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 dimensions, ONLY: iim, jjm
16 use filtreg_hemisph_m, only: filtreg_hemisph
17 USE inifgn_m, ONLY: sddu, unsddu
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 sdd(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 sdd = merge(sddu, unsddu, intensive)
36
37 call filtreg_hemisph(champ(:, :jfiltnv, :), sdd, matricevn)
38 call filtreg_hemisph(champ(:, jfiltsv:jjm, :), sdd, matricevs)
39
40 END SUBROUTINE filtreg_v
41
42 end module filtreg_v_m

  ViewVC Help
Powered by ViewVC 1.1.21