New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 4245 for branches/2013/dev_LOCEAN_CMCC_INGV_MERC_UKMO_2013/NEMOGCM/NEMO/OPA_SRC/OBS/diaobs.F90 – NEMO

Ignore:
Timestamp:
2013-11-19T12:19:21+01:00 (10 years ago)
Author:
cetlod
Message:

dev_locean_cmcc_ingv_ukmo_merc : merge in the MERC_UKMO dev branch with trunk rev 4119

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2013/dev_LOCEAN_CMCC_INGV_MERC_UKMO_2013/NEMOGCM/NEMO/OPA_SRC/OBS/diaobs.F90

    r4147 r4245  
    2121   USE par_oce 
    2222   USE dom_oce                  ! Ocean space and time domain variables 
     23   USE obs_fbm, ONLY: ln_cl4    ! Class 4 diagnostic switch 
    2324   USE obs_read_prof            ! Reading and allocation of observations (Coriolis) 
    2425   USE obs_read_sla             ! Reading and allocation of SLA observations   
     
    4849   PUBLIC dia_obs_init, &  ! Initialize and read observations 
    4950      &   dia_obs,      &  ! Compute model equivalent to observations 
    50       &   dia_obs_wri      ! Write model equivalent to observations 
     51      &   dia_obs_wri,  &  ! Write model equivalent to observations 
     52      &   dia_obs_dealloc  ! Deallocate dia_obs data 
    5153 
    5254   !! * Shared Module variables 
     
    8082   LOGICAL, PUBLIC :: ln_ssh         !: Logical switch for sea surface height 
    8183   LOGICAL, PUBLIC :: ln_sss         !: Logical switch for sea surface salinity 
     84   LOGICAL, PUBLIC :: ln_sstnight    !: Logical switch for night mean SST observations 
    8285   LOGICAL, PUBLIC :: ln_nea         !: Remove observations near land 
    8386   LOGICAL, PUBLIC :: ln_altbias     !: Logical switch for altimeter bias   
     
    167170         &            nmsshc, mdtcorr, mdtcutoff,                     & 
    168171         &            ln_reysst, ln_ghrsst, reysstname, reysstfmt,    & 
     172         &            ln_sstnight,                                    & 
    169173         &            ln_grid_search_lookup,                          & 
    170174         &            grid_search_file, grid_search_res,              & 
     
    176180         &            ln_velhradcp, velhradcpfiles,                   & 
    177181         &            ln_velfb, velfbfiles, ln_velfb_av,              & 
    178          &            ln_profb_enatim, ln_ignmis 
     182         &            ln_profb_enatim, ln_ignmis, ln_cl4 
    179183 
    180184      INTEGER :: jprofset 
     
    311315         WRITE(numout,*) '             Logical switch for GHRSST observations          ln_ghrsst = ', ln_ghrsst 
    312316         WRITE(numout,*) '             Logical switch for feedback SST data             ln_sstfb = ', ln_sstfb 
     317         WRITE(numout,*) '             Logical switch for night-time SST obs         ln_sstnight = ', ln_sstnight 
    313318         WRITE(numout,*) '             Logical switch for SSS observations                ln_sss = ', ln_sss 
    314319         WRITE(numout,*) '             Logical switch for Sea Ice observations         ln_seaice = ', ln_seaice 
     
    704709            nsstsets = nsstsets + 1 
    705710 
    706             ld_sstnight(nsstsets) = .TRUE. 
     711            ld_sstnight(nsstsets) = ln_sstnight 
    707712 
    708713            CALL obs_rea_sst_rey( reysstname, reysstfmt, sstdata(nsstsets), & 
     
    718723            nsstsets = nsstsets + 1 
    719724 
    720             ld_sstnight(nsstsets) = .TRUE. 
     725            ld_sstnight(nsstsets) = ln_sstnight 
    721726           
    722727            CALL obs_rea_sst( 1, sstdata(nsstsets), jnumsst, & 
     
    737742               nsstsets = nsstsets + 1 
    738743 
    739                ld_sstnight(nsstsets) = .TRUE. 
     744               ld_sstnight(nsstsets) = ln_sstnight 
    740745             
    741746               CALL obs_rea_sst( 0, sstdata(nsstsets), 1, & 
     
    13681373   END SUBROUTINE dia_obs_wri 
    13691374 
     1375   SUBROUTINE dia_obs_dealloc 
     1376      IMPLICIT NONE 
     1377      !!---------------------------------------------------------------------- 
     1378      !!                    *** ROUTINE dia_obs_dealloc *** 
     1379      !! 
     1380      !!  ** Purpose : To deallocate data to enable the obs_oper online loop. 
     1381      !!               Specifically: dia_obs_init --> dia_obs --> dia_obs_wri 
     1382      !! 
     1383      !!  ** Method : Clean up various arrays left behind by the obs_oper. 
     1384      !! 
     1385      !!  ** Action : 
     1386      !! 
     1387      !!---------------------------------------------------------------------- 
     1388      !! obs_grid deallocation 
     1389      CALL obs_grid_deallocate 
     1390 
     1391      !! diaobs deallocation 
     1392      IF ( nprofsets > 0 ) THEN 
     1393          DEALLOCATE(ld_enact, & 
     1394                  &  profdata, & 
     1395                  &  prodatqc) 
     1396      END IF 
     1397      IF ( ln_sla ) THEN 
     1398          DEALLOCATE(sladata, & 
     1399                  &  sladatqc) 
     1400      END IF 
     1401      IF ( ln_seaice ) THEN 
     1402          DEALLOCATE(sladata, & 
     1403                  &  sladatqc) 
     1404      END IF 
     1405      IF ( ln_sst ) THEN 
     1406          DEALLOCATE(sstdata, & 
     1407                  &  sstdatqc) 
     1408      END IF 
     1409      IF ( ln_vel3d ) THEN 
     1410          DEALLOCATE(ld_velav, & 
     1411                  &  velodata, & 
     1412                  &  veldatqc) 
     1413      END IF 
     1414   END SUBROUTINE dia_obs_dealloc 
     1415 
    13701416   SUBROUTINE ini_date( ddobsini ) 
    13711417      !!---------------------------------------------------------------------- 
Note: See TracChangeset for help on using the changeset viewer.