- Timestamp:
- 2011-02-15T12:58:59+01:00 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/TAM_V3_0/NEMOTAM/OPATAM_SRC/TRA/traadv_cen2_tam.F90
r1885 r2587 127 127 PUBLIC tra_adv_cen2_adj ! routine called by traadv_tam.F90 128 128 PUBLIC tra_adv_cen2_adj_tst! routine called by tst.F90 129 #if defined key_tst_tlm 129 130 PUBLIC tra_adv_cen2_tlm_tst! routine called by tamtst.F90 131 #endif 130 132 131 133 REAL(wp), DIMENSION(jpi,jpj) :: & … … 935 937 936 938 END SUBROUTINE tra_adv_cen2_adj_tst 937 939 #if defined key_tst_tlm 938 940 SUBROUTINE tra_adv_cen2_tlm_tst( kumadt ) 939 941 !!----------------------------------------------------------------------- … … 968 970 USE tamtrj ! writing out state trajectory 969 971 USE par_tlm, ONLY: & 972 & tlm_bch, & 970 973 & cur_loop, & 971 974 & h_ratio … … 1027 1030 & z3r 1028 1031 CHARACTER(LEN=14) :: cl_name 1029 CHARACTER (LEN=128) :: file_out, file_wop 1032 CHARACTER (LEN=128) :: file_out, file_wop, file_xdx 1030 1033 CHARACTER (LEN=90) :: FMT 1031 1034 REAL(KIND=wp), DIMENSION(100):: & … … 1084 1087 ! Output filename Xn=F(X0) 1085 1088 !-------------------------------------------------------------------- 1086 file_wop='trj_wop_tradv_cen2'1087 1089 CALL tlm_namrd 1088 1090 gamma = h_ratio 1091 file_wop='trj_wop_tradv_cen2' 1092 file_xdx='trj_xdx_tradv_cen2' 1089 1093 !-------------------------------------------------------------------- 1090 1094 ! Initialize the tangent input with random noise: dx … … 1151 1155 ! Complete Init for Direct 1152 1156 !------------------------------------------------------------------- 1153 CALL istate_p1157 IF ( tlm_bch /= 2 ) CALL istate_p 1154 1158 1155 1159 ! *** initialize the reference trajectory … … 1184 1188 ! Compute the direct model F(X0,t=n) = Xn 1185 1189 !-------------------------------------------------------------------- 1186 CALL tra_adv_cen2(nit000, un, vn, wn) 1187 IF ( cur_loop .EQ. 0) CALL trj_wri_spl(file_wop) 1190 IF ( tlm_bch /= 2 ) CALL tra_adv_cen2(nit000, un, vn, wn) 1191 IF ( tlm_bch == 0 ) CALL trj_wri_spl(file_wop) 1192 IF ( tlm_bch == 1 ) CALL trj_wri_spl(file_xdx) 1188 1193 !-------------------------------------------------------------------- 1189 1194 ! Compute the Tangent 1190 1195 !-------------------------------------------------------------------- 1191 IF ( cur_loop .NE. 0) THEN 1192 !-------------------------------------------------------------------- 1193 ! Storing data 1194 !-------------------------------------------------------------------- 1195 zta_out (:,:,:) = ta (:,:,:) 1196 zsa_out (:,:,:) = sa (:,:,:) 1197 1196 IF ( tlm_bch == 2 ) THEN 1198 1197 !-------------------------------------------------------------------- 1199 1198 ! Initialize the tangent variables: dy^* = W dy … … 1214 1213 ! Compute the scalar product: ( L(t0,tn) gamma dx0 ) ) 1215 1214 !-------------------------------------------------------------------- 1216 1217 1215 zsp2_Ta = DOT_PRODUCT( ta_tl, ta_tl ) 1218 1216 zsp2_Sa = DOT_PRODUCT( sa_tl, sa_tl ) 1219 1217 1220 1218 zsp2 = zsp2_Ta + zsp2_Sa 1221 1222 1219 !-------------------------------------------------------------------- 1223 1220 ! Storing data 1224 1221 !-------------------------------------------------------------------- 1225 1222 CALL trj_rd_spl(file_wop) 1226 1227 1223 zta_wop (:,:,:) = ta (:,:,:) 1228 1224 zsa_wop (:,:,:) = sa (:,:,:) 1229 1225 CALL trj_rd_spl(file_xdx) 1226 zta_out (:,:,:) = ta (:,:,:) 1227 zsa_out (:,:,:) = sa (:,:,:) 1230 1228 !-------------------------------------------------------------------- 1231 1229 ! Compute the Linearization Error … … 1372 1370 END SUBROUTINE tra_adv_cen2_tlm_tst 1373 1371 #endif 1374 1372 #endif 1375 1373 !!====================================================================== 1376 1374 END MODULE traadv_cen2_tam
Note: See TracChangeset
for help on using the changeset viewer.