Changeset 2346 for LMDZ5/trunk/libf/phylmd/regr_pr_av_m.F90
- Timestamp:
- Aug 21, 2015, 5:13:46 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/libf/phylmd/regr_pr_av_m.F90
r1907 r2346 40 40 use regr1_step_av_m, only: regr1_step_av 41 41 use mod_phys_lmdz_mpi_data, only: is_mpi_root 42 42 use mod_grid_phy_lmdz, only: nbp_lon, nbp_lat, nbp_lev 43 43 use mod_phys_lmdz_transfert_para, only: scatter2d 44 44 ! (pack to the LMDZ horizontal "physics" grid and scatter) … … 63 63 ! Variables local to the procedure: 64 64 65 include "dimensions.h"66 65 integer varid, ncerr ! for NetCDF 67 66 68 real v1( iim, jjm + 1, size(press_in_edg) - 1, size(name))67 real v1(nbp_lon, nbp_lat, size(press_in_edg) - 1, size(name)) 69 68 ! input fields at day "julien", on the global "dynamics" horizontal grid 70 69 ! First dimension is for longitude. … … 84 83 !-------------------------------------------- 85 84 86 call assert(size(v3, 1) == klon, size(v3, 2) == llm, "regr_pr_av v3 klon")85 call assert(size(v3, 1) == klon, size(v3, 2) == nbp_lev, "regr_pr_av v3 klon") 87 86 n_var = assert_eq(size(name), size(v3, 3), "regr_pr_av v3 n_var") 88 call assert(shape(paprs) == (/klon, llm+1/), "regr_pr_av paprs")87 call assert(shape(paprs) == (/klon, nbp_lev+1/), "regr_pr_av paprs") 89 88 90 89 !$omp master … … 102 101 ! Latitudes are in ascending order in the input file while 103 102 ! "rlatu" is in descending order so we need to invert order: 104 v1(1, :, :, :) = v1(1, jjm+1:1:-1, :, :)103 v1(1, :, :, :) = v1(1, nbp_lat:1:-1, :, :) 105 104 106 105 ! Duplicate on all longitudes: 107 v1(2:, :, :, :) = spread(v1(1, :, :, :), dim=1, ncopies= iim-1)106 v1(2:, :, :, :) = spread(v1(1, :, :, :), dim=1, ncopies=nbp_lon-1) 108 107 end if 109 108 !$omp end master … … 113 112 ! Regrid in pressure at each horizontal position: 114 113 do i = 1, klon 115 v3(i, llm:1:-1, :) = regr1_step_av(v2(i, :, :), press_in_edg, &116 paprs(i, llm+1:1:-1))114 v3(i, nbp_lev:1:-1, :) = regr1_step_av(v2(i, :, :), press_in_edg, & 115 paprs(i, nbp_lev+1:1:-1)) 117 116 ! (invert order of indices because "paprs" is in descending order) 118 117 end do
Note: See TracChangeset
for help on using the changeset viewer.