/[lmdze]/trunk/libf/bibio/regr_pr.f90
ViewVC logotype

Diff of /trunk/libf/bibio/regr_pr.f90

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

revision 8 by guez, Mon Mar 31 12:51:21 2008 UTC revision 10 by guez, Fri Apr 18 14:45:53 2008 UTC
# Line 9  contains Line 9  contains
9      ! "regr_pr_av" stands for "regrid pressure averaging".      ! "regr_pr_av" stands for "regrid pressure averaging".
10      ! This function regrids a 2D latitude -- pressure variable to the      ! This function regrids a 2D latitude -- pressure variable to the
11      ! LMDZ 3D grid.      ! LMDZ 3D grid.
12        ! The target horizontal LMDZ grid is the "scalar" grid: "rlonv", "rlatu".
13        ! The target vertical LMDZ grid is the grid of layer boundaries.
14      ! We assume that the variable is already on the LMDZ "rlatu" latitude grid.      ! We assume that the variable is already on the LMDZ "rlatu" latitude grid.
15      ! There only remains to regrid in pressure at each horizontal      ! There only remains to regrid in pressure at each horizontal
16      ! position.      ! position.
17      ! The input variable does not depend on longitude, but the pressure      ! The input variable does not depend on longitude, but the pressure
18      ! at LMDZ mid-layers does.      ! at LMDZ layers does.
19      ! Therefore, the values on the LMDZ grid do depend on longitude.      ! Therefore, the values on the LMDZ grid do depend on longitude.
     ! The target horizontal LMDZ grid is the "scalar" grid: "rlonv", "rlatu".  
     ! The target vertical LMDZ grid is the grid of mid-layers.  
20      ! The variable is regridded by averaging.      ! The variable is regridded by averaging.
21    
22      use dimens_m, only: iim, jjm, llm      use dimens_m, only: iim, jjm, llm
23      use nrutil, only: assert      use nrutil, only: assert
24      use regr1_step_av_m, only: regr1_step_av      use regr1_step_av_m, only: regr1_step_av
25      use pressure_m, only: p3d      use pressure_var, only: p3d
26    
27      real, intent(in):: v(:, :)      real, intent(in):: v(:, :)
28      ! ("v(j, l)" is at latitude "rlatu(j)" and for pressure interval      ! ("v(j, l)" is at latitude "rlatu(j)" and for pressure interval
# Line 35  contains Line 35  contains
35      real regr_pr_av(iim + 1, jjm + 1, llm)      real regr_pr_av(iim + 1, jjm + 1, llm)
36      ! (variable adapted to the LMDZ grid      ! (variable adapted to the LMDZ grid
37      ! "regr_pr_av(i, j, l)" is at longitude "rlonv(i)", latitude      ! "regr_pr_av(i, j, l)" is at longitude "rlonv(i)", latitude
38      ! "rlatu(j)" and pressure level "pls(i, j, l)")      ! "rlatu(j)" and in pressure interval "[p3d(i, j, l+1), p3d(i, j, l)]")
39    
40      ! Variables local to the procedure:      ! Variables local to the procedure:
41      integer i, j      integer i, j
# Line 82  contains Line 82  contains
82      ! "regr_pr_int" stands for "regrid pressure interpolation".      ! "regr_pr_int" stands for "regrid pressure interpolation".
83      ! This function regrids a 2D latitude -- pressure variable to the      ! This function regrids a 2D latitude -- pressure variable to the
84      ! LMDZ 3D grid.      ! LMDZ 3D grid.
85        ! The target horizontal LMDZ grid is the "scalar" grid: "rlonv", "rlatu".
86        ! The target vertical LMDZ grid is the grid of mid-layers.
87      ! We assume that the variable is already on the LMDZ latitude grid.      ! We assume that the variable is already on the LMDZ latitude grid.
88      ! There only remains to regrid in pressure at each horizontal      ! There only remains to regrid in pressure at each horizontal
89      ! position.      ! position.
90      ! The input variable does not depend on longitude, but the pressure      ! The input variable does not depend on longitude, but the pressure
91      ! at LMDZ mid-layers does.      ! at LMDZ mid-layers does.
92      ! Therefore, the values on the LMDZ grid do depend on longitude.      ! Therefore, the values on the LMDZ grid do depend on longitude.
     ! The target horizontal LMDZ grid is the "scalar" grid: "rlonv", "rlatu".  
     ! The target vertical LMDZ grid is the grid of mid-layers.  
93      ! The variable is regridded by interpolation.      ! The variable is regridded by interpolation.
94    
95      use dimens_m, only: iim, jjm, llm      use dimens_m, only: iim, jjm, llm
96      use nrutil, only: assert      use nrutil, only: assert
97      use regr1_lint_m, only: regr1_lint      use regr1_lint_m, only: regr1_lint
98      use pressure_m, only: pls      use pressure_var, only: pls
99    
100      real, intent(in):: v(:, :)      real, intent(in):: v(:, :)
101      ! ("v(j, l)" is at latitude "rlatu(j)" and pressure level "press_in(l)".)      ! ("v(j, l)" is at latitude "rlatu(j)" and pressure level "press_in(l)".)

Legend:
Removed from v.8  
changed lines
  Added in v.10

  ViewVC Help
Powered by ViewVC 1.1.21