15 subroutine irreg_to_grid(hgt_matrix,t_matrix,p_matrix,rh_matrix, &
16 env_hgt_matrix,env_t_matrix,env_p_matrix,env_rh_matrix)
40 real*8,
dimension(:,:),
intent(in) :: &
41 hgt_matrix,env_hgt_matrix,env_t_matrix,env_p_matrix,env_rh_matrix
44 real*8,
dimension(:,:),
intent(out) :: &
45 t_matrix,p_matrix,rh_matrix
49 integer,
parameter :: KR8 = selected_real_kind(15,300)
51 nprof =
size(hgt_matrix,1)
54 t_matrix(i,:),hgt_matrix(i,:),1000._kr8)
56 p_matrix(i,:),hgt_matrix(i,:),1000._kr8)
58 rh_matrix(i,:),hgt_matrix(i,:),1000._kr8)
66 subroutine order_data(hgt_matrix,hm_matrix,p_matrix,t_matrix, &
67 rh_matrix,sfc_radar,hgt_reversed)
94 integer,
intent(in) :: sfc_radar
97 real*8,
dimension(:,:),
intent(inout) :: &
98 hgt_matrix,p_matrix,t_matrix,rh_matrix
99 real*8,
dimension(:,:,:),
intent(inout) :: &
101 logical,
intent(out) :: hgt_reversed
105 logical :: hgt_descending
108 ngate =
size(hgt_matrix,2)
109 hgt_descending = hgt_matrix(1,1) > hgt_matrix(1,ngate)
114 (sfc_radar == 1 .and. hgt_descending) .or. &
115 (sfc_radar == 0 .and. (.not. hgt_descending)) &
119 hgt_matrix(:,:) = hgt_matrix(:,ngate:1:-1)
120 hm_matrix(:,:,:) = hm_matrix(:,:,ngate:1:-1)
121 p_matrix(:,:) = p_matrix(:,ngate:1:-1)
122 t_matrix(:,:) = t_matrix(:,ngate:1:-1)
123 rh_matrix(:,:) = rh_matrix(:,ngate:1:-1)
125 hgt_reversed = .
true.
127 hgt_reversed = .
false.
subroutine lin_interpolate(yarr, xarr, yyarr, xxarr, tol)
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL false
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL ulevSTD CALL &zphi philevSTD CALL &zx_rh rhlevSTD!DO klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon du jour ou toutes les read_climoz CALL true