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

Diff of /trunk/filtrez/filtreg_scal.f

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 137 by guez, Wed May 6 15:51:03 2015 UTC revision 141 by guez, Fri Jun 5 19:21:08 2015 UTC
# Line 11  contains Line 11  contains
11      ! Objet : filtre matriciel longitudinal, avec les matrices pr\'ecalcul\'ees      ! Objet : filtre matriciel longitudinal, avec les matrices pr\'ecalcul\'ees
12      ! pour l'op\'erateur filtre.      ! pour l'op\'erateur filtre.
13    
     USE coefils, ONLY: sddv, unsddv  
14      USE dimens_m, ONLY: iim, jjm      USE dimens_m, ONLY: iim, jjm
15      use filtreg_hemisph_m, only: filtreg_hemisph      use filtreg_hemisph_m, only: filtreg_hemisph
16        USE inifgn_m, ONLY: sddv, unsddv
17      use inifilr_m, only: jfiltnu, jfiltsu, matriceun, matriceus, matrinvn, &      use inifilr_m, only: jfiltnu, jfiltsu, matriceun, matriceus, matrinvn, &
18           matrinvs           matrinvs
19      use nr_util, only: assert      use nr_util, only: assert
# Line 27  contains Line 27  contains
27      ! champ intensif ou extensif (pond\'er\'e par les aires)      ! champ intensif ou extensif (pond\'er\'e par les aires)
28    
29      ! Local:      ! Local:
30      REAL sdd1(iim), sdd2(iim)      REAL sdd(iim)
31    
32      !-----------------------------------------------------------      !-----------------------------------------------------------
33    
# Line 35  contains Line 35  contains
35      call assert(size(champ, 2) == jjm + 1, "filtreg_scal jjm + 1")      call assert(size(champ, 2) == jjm + 1, "filtreg_scal jjm + 1")
36    
37      IF (intensive) THEN      IF (intensive) THEN
38         sdd1 = sddv         sdd = sddv
        sdd2 = unsddv  
39      ELSE      ELSE
40         sdd1 = unsddv         sdd = unsddv
        sdd2 = sddv  
41      END IF      END IF
42    
43      if (direct) then      if (direct) then
44         call filtreg_hemisph(champ(:, 2:jfiltnu, :), sdd1, sdd2, matriceun)         call filtreg_hemisph(champ(:, 2:jfiltnu, :), sdd, matriceun)
45         call filtreg_hemisph(champ(:, jfiltsu:jjm, :), sdd1, sdd2, matriceus)         call filtreg_hemisph(champ(:, jfiltsu:jjm, :), sdd, matriceus)
46      else      else
47         call filtreg_hemisph(champ(:, 2:jfiltnu, :), sdd1, sdd2, - matrinvn)         call filtreg_hemisph(champ(:, 2:jfiltnu, :), sdd, - matrinvn)
48         call filtreg_hemisph(champ(:, jfiltsu:jjm, :), sdd1, sdd2, - matrinvs)         call filtreg_hemisph(champ(:, jfiltsu:jjm, :), sdd, - matrinvs)
49      end if      end if
50    
51    END SUBROUTINE filtreg_scal    END SUBROUTINE filtreg_scal

Legend:
Removed from v.137  
changed lines
  Added in v.141

  ViewVC Help
Powered by ViewVC 1.1.21