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

Annotation of /trunk/filtrez/filtreg_v.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 143 - (hide annotations)
Tue Jun 9 14:32:46 2015 UTC (8 years, 11 months ago) by guez
Original Path: trunk/Sources/filtrez/filtreg_v.f
File size: 1178 byte(s)
Removed argument d of procedure acc. Was probably here just because
automatic arrays were unknown.

eigen_sort was eigsrt from Numerical Recipes.

In procedure inifilr, create file "eignvl.txt" instead of writing to
standard output.

1 guez 137 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 guez 138 ! Matrix filter on longitudes. Matrices have already been
13     ! computed. On v grid, direct filter only.
14 guez 137
15     USE dimens_m, ONLY: iim, jjm
16     use filtreg_hemisph_m, only: filtreg_hemisph
17 guez 140 USE inifgn_m, ONLY: sddu, unsddu
18 guez 137 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 guez 138 ! false means the field is weighted by the area of the mesh
26 guez 137
27     ! Local:
28 guez 141 REAL sdd(iim)
29 guez 137
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 guez 143 sdd = merge(sddu, unsddu, intensive)
36 guez 137
37 guez 141 call filtreg_hemisph(champ(:, :jfiltnv, :), sdd, matricevn)
38     call filtreg_hemisph(champ(:, jfiltsv:jjm, :), sdd, matricevs)
39 guez 137
40     END SUBROUTINE filtreg_v
41    
42     end module filtreg_v_m

  ViewVC Help
Powered by ViewVC 1.1.21