Changeset 2726 in lmdz_wrf
- Timestamp:
- Oct 17, 2019, 2:21:35 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tools/module_generic.f90
r2725 r2726 1268 1268 ii = 0 1269 1269 DO ir=1, d1r 1270 DO iv=1, d1v 1271 IF ( (refv(ir) /= missval) .AND. (vals(iv) == refv(ir)) )THEN 1272 ii = ii + 1 1273 indices(ii,:) = (/ ir, iv /) 1274 samevalues(ii) = refv(ir) 1275 END IF 1276 END DO 1270 IF (refv(ir) /= missval) THEN 1271 DO iv=1, d1v 1272 IF (vals(iv) == refv(ir)) THEN 1273 ii = ii + 1 1274 indices(ii,:) = (/ ir, iv /) 1275 samevalues(ii) = refv(ir) 1276 END IF 1277 END DO 1278 END IF 1277 1279 END DO 1278 1280 … … 1281 1283 END SUBROUTINE index_samevals1D_RK 1282 1284 1283 SUBROUTINE index_samevals2D_RK(d1r, d2r, refv, d1v, d2v, d12v, vals, ii, indices, samevalues) 1285 SUBROUTINE index_samevals2D_RK(d1r, d2r, refv, d1v, d2v, d12v, vals, ii, indices, missval, & 1286 samevalues) 1284 1287 ! Subroutine to search for the indices of the same values between 2 2D RK series of values allowing 1285 1288 ! repetitions … … 1288 1291 1289 1292 INTEGER, INTENT(in) :: d1r, d2r, d1v, d2v, d12v 1293 REAL(r_k), INTENT(in) :: missval 1290 1294 REAL(r_k), DIMENSION(d1r,d2r), INTENT(in) :: refv 1291 1295 REAL(r_k), DIMENSION(d1v,d2v), INTENT(in) :: vals … … 1304 1308 ! ii: quantity of same values found 1305 1309 ! indices: output 1310 ! missval: missing value 1306 1311 ! samevalues: values where coincidence is found 1307 1312 … … 1313 1318 DO ir1=1, d1r 1314 1319 DO ir2=1, d2r 1315 DO iv1=1, d1v 1316 DO iv2=1, d2v 1317 IF (vals(iv1,iv2) == refv(ir1,ir2)) THEN 1318 ii = ii + 1 1319 indices(ii,1,1) = ir1 1320 indices(ii,1,2) = ir2 1321 indices(ii,2,1) = iv1 1322 indices(ii,2,2) = iv2 1323 samevalues(ii) = refv(ir1,ir2) 1324 END IF 1320 IF (refv(ir1,ir2) /= missval) THEN 1321 DO iv1=1, d1v 1322 DO iv2=1, d2v 1323 IF (vals(iv1,iv2) == refv(ir1,ir2)) THEN 1324 ii = ii + 1 1325 indices(ii,1,1) = ir1 1326 indices(ii,1,2) = ir2 1327 indices(ii,2,1) = iv1 1328 indices(ii,2,2) = iv2 1329 samevalues(ii) = refv(ir1,ir2) 1330 END IF 1331 END DO 1325 1332 END DO 1326 END DO1333 END IF 1327 1334 END DO 1328 1335 END DO
Note: See TracChangeset
for help on using the changeset viewer.