diff --git a/prep_regions/get_surfinf.f90 b/prep_regions/get_surfinf.f90 index 4b6eeb85d57453c7e4029c6b4f5d955b1743251c..bd81909f4a56fc9096fe919dd8bbbb45fc1eb6ed 100644 --- a/prep_regions/get_surfinf.f90 +++ b/prep_regions/get_surfinf.f90 @@ -216,7 +216,8 @@ subroutine get_surfinf(files, config, recs, cdryair, obstimes, avetimes, surfinf grid = grid/outheight(1) if ( lsatellite ) then ! convert from column SRR units to that consistent with mole fractions - grid = grid/cdryair(i) + ! no longer needed with new FP code +! grid = grid/cdryair(i) endif ! add to total surface influence surfinf(:,:) = surfinf(:,:) + sum(grid(ix1:ix2,jy1:jy2,:),dim=3) diff --git a/prep_satellite/average.f90 b/prep_satellite/average.f90 index 5ba267b5d713fe3dcdf3a3302af08b457710d61b..335590a3e9f0bc0abb72af91b6fd18481cdcb47d 100644 --- a/prep_satellite/average.f90 +++ b/prep_satellite/average.f90 @@ -366,6 +366,10 @@ subroutine average(settings, idate, itime, xpoints, ypoints, zpoint1, zpoint2, v iretr_keep(nn) = iretr(n) endif end do + if (nn.eq.0) then + ! reject this box -> no retrievals within +/- 2SD + cycle + endif ! calculate mean of kept retrievals warea(:) = 0. do n = 1, nn diff --git a/prep_satellite/get_bremen.f90 b/prep_satellite/get_bremen.f90 index a9c8e23b5bd40afc9148673c1ecd3587d0be0ec4..55925461bfc7bf2d02475653d273987bf4500709 100644 --- a/prep_satellite/get_bremen.f90 +++ b/prep_satellite/get_bremen.f90 @@ -284,6 +284,11 @@ subroutine get_bremen(settings) ! exclude retrievals if not for current day if ( floor(jdmeas).ne.jd ) cycle call caldate(jdmeas, jjjjmmdd, hhmiss) + ! check date and time + if (isnan(real(hhmiss)).or.(jjjjmmdd.lt.0)) then + write(logid,*) 'WARNING: problem with itime, idate for file, nmeas, jdmeas = ',trim(filereadlist(n)), nm, jdmeas + cycle + endif nretr = nretr + 1 idate(nretr) = jjjjmmdd itime(nretr) = hhmiss diff --git a/prep_satellite/get_tropomi.f90 b/prep_satellite/get_tropomi.f90 index 0462e7a541693b47aed9d40da67cdea28e4263cf..850d7c6c3c1a41ca6a0a5b2a1764681b17aab550 100644 --- a/prep_satellite/get_tropomi.f90 +++ b/prep_satellite/get_tropomi.f90 @@ -411,6 +411,12 @@ subroutine get_tropomi(settings) if ( floor(jdmeas).ne.jd ) cycle if ( vmr(np,nm,nt).ge.bignum ) cycle call caldate(jdmeas, jjjjmmdd, hhmiss) + ! check date and time + if (isnan(real(hhmiss)).or.(jjjjmmdd.lt.0)) then + write(logid,*) 'WARNING: problem with itime, idate for file, nmeas, npixel, jdmeas = ',& + trim(filereadlist(n)), nm, np, jdmeas + cycle + endif nretr = nretr + 1 idate(nretr) = jjjjmmdd itime(nretr) = hhmiss