Changeset 12783
- Timestamp:
- 2020-04-20T20:19:21+02:00 (3 years ago)
- Location:
- branches/UKMO/dev_r5518_obs_oper_update_reanalysis4/NEMOGCM/NEMO/OPA_SRC/OBS
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/dev_r5518_obs_oper_update_reanalysis4/NEMOGCM/NEMO/OPA_SRC/OBS/obs_level_search.h90
r7960 r12783 13 13 !! ** Method : Straightforward search 14 14 !! 15 !! ** Action : 15 !! ** Action : Will return level associated with T-point below the obs 16 !! depth, except when observation is in the top box will 17 !! return level 2. Also, if obs depth greater than depth 18 !! of last wet T-point (kpk-1) will return level kpk. 16 19 !! 17 20 !! History : … … 21 24 !! ! 2006-10 (A. Weaver) Cleanup 22 25 !! ! 2008-10 (K. Mogensen) Remove assumptions on grid. 26 !! ! 2020-04 (R. King/RJR) Add Rob's fix 27 !! ! https://code.metoffice.gov.uk/trac/utils/ticket/335 23 28 !!---------------------------------------------------------------------- 24 29 … … 43 48 DO ji = 1, kobs 44 49 kobsk(ji) = 1 45 depk: DO jk = 2, kgrd 50 depk: DO jk = 2, kgrd-1 46 51 IF ( pgrddep(jk) >= pobsdep(ji) ) EXIT depk 47 52 END DO depk -
branches/UKMO/dev_r5518_obs_oper_update_reanalysis4/NEMOGCM/NEMO/OPA_SRC/OBS/obs_prep.F90
r11461 r12783 16 16 USE par_kind, ONLY : & ! Precision variables 17 17 & wp 18 USE dom_oce ! ocean space and time domain 18 19 USE in_out_manager ! I/O manager 19 20 USE obs_profiles_def ! Definitions for storage arrays for profiles … … 1100 1101 !! ! 2007-01 (K. Mogensen) Rewrite of parts of obs_scr 1101 1102 !! ! 2007-06 (K. Mogensen et al) Reject obs. near land. 1103 !! ! 2020-04 (R. King/RJR) Add Rob's fix 1104 !! ! https://code.metoffice.gov.uk/trac/utils/ticket/335 1102 1105 !!---------------------------------------------------------------------- 1103 1106 !! * Modules used … … 1163 1166 REAL(KIND=wp), DIMENSION(2,2,kprofno) :: & 1164 1167 & zglam, & ! Model longitude at grid points 1165 & zgphi ! Model latitude at grid points 1168 & zgphi, & ! Model latitude at grid points 1169 & zbathy ! Index of deepest wet level at grid points 1166 1170 INTEGER, DIMENSION(2,2,kprofno) :: & 1167 1171 & igrdi, & ! Grid i,j … … 1171 1175 INTEGER :: iig, ijg ! i,j of observation on model grid point. 1172 1176 INTEGER :: jobs, jobsp, jk, ji, jj 1177 REAL(KIND=wp) :: maxdept, maxdepw 1173 1178 1174 1179 ! Get grid point indices … … 1221 1226 CALL obs_int_comm_2d( 2, 2, kprofno, kpi, kpj, igrdi, igrdj, plam, zglam ) 1222 1227 CALL obs_int_comm_2d( 2, 2, kprofno, kpi, kpj, igrdi, igrdj, pphi, zgphi ) 1228 CALL obs_int_comm_2d( 2, 2, kprofno, kpi, kpj, igrdi, igrdj, REAL(mbathy), zbathy ) 1223 1229 ! Need to know the bathy depth for each observation for sco 1224 1230 CALL obs_int_comm_3d( 2, 2, kprofno, kpi, kpj, kpk, igrdi, igrdj, fsdepw(:,:,:), & … … 1261 1267 DO jobsp = kpstart(jobs), kpend(jobs) 1262 1268 1269 ! Calculate max T and W depths of 2x2 grid 1270 maxdept=zgdept(1,1,NINT(zbathy(1,1,jobs)),jobs) 1271 maxdepw=zgdepw(1,1,NINT(zbathy(1,1,jobs))+1,jobs) 1272 DO jj = 1, 2 1273 DO ji = 1, 2 1274 IF ( zgdept(ji,jj,NINT(zbathy(ji,jj,jobs)),jobs) > maxdept ) THEN 1275 maxdept = zgdept(ji,jj,NINT(zbathy(ji,jj,jobs)),jobs) 1276 END IF 1277 IF ( zgdepw(ji,jj,NINT(zbathy(ji,jj,jobs))+1,jobs) > maxdepw ) THEN 1278 maxdepw = zgdepw(ji,jj,NINT(zbathy(ji,jj,jobs))+1,jobs) 1279 END IF 1280 END DO 1281 END DO 1282 1263 1283 ! Flag if the observation falls outside the model spatial domain 1264 1284 IF ( ( pobslam(jobs) < -180. ) & … … 1267 1287 & .OR. ( pobsphi(jobs) > 90. ) & 1268 1288 & .OR. ( pobsdep(jobsp) < 0.0 ) & 1269 & .OR. ( pobsdep(jobsp) > gdepw_1d(kpk)) ) THEN1289 & .OR. ( pobsdep(jobsp) >= maxdepw) ) THEN 1270 1290 kobsqc(jobsp) = IBSET(kobsqc(jobsp),11) 1271 1291 kosdobs = kosdobs + 1 … … 1334 1354 pobsdep(jobsp) = MINVAL(zgdept(1:2,1:2,1,jobs)) 1335 1355 ENDIF 1356 1357 ! Set observation depth equal to that of the last wet T-point 1358 IF ( ( pobsdep(jobsp) > maxdept ) .AND. & 1359 & ( pobsdep(jobsp) < maxdepw ) ) THEN 1360 pobsdep(jobsp) = maxdept 1361 ENDIF 1336 1362 1337 1363 #if defined key_bdy
Note: See TracChangeset
for help on using the changeset viewer.