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 4120 – NEMO

Changeset 4120


Ignore:
Timestamp:
2013-10-24T10:29:13+02:00 (11 years ago)
Author:
andrewryan
Message:

Refactored offline_obs_oper to be nemo_gcm. Renamed ooomod.F90 to ooo_intp.F90 since it now contains the interpolation steps only. Renamed namelist to ooo.nml since it contains settings for the offline obs_oper only.

Location:
branches/2013/dev_r3987_UKMO4_OBS/NEMOGCM/NEMO/OOO_SRC
Files:
1 deleted
1 edited
2 moved

Legend:

Unmodified
Added
Removed
  • branches/2013/dev_r3987_UKMO4_OBS/NEMOGCM/NEMO/OOO_SRC/nemogcm.F90

    r4116 r4120  
    6363   USE xios 
    6464#endif 
     65   USE ooo_data        ! Offline obs_oper data 
     66   USE ooo_read        ! Offline obs_oper read routines 
     67   USE ooo_intp        ! Offline obs_oper interpolation 
    6568 
    6669   IMPLICIT NONE 
    6770   PRIVATE 
    6871 
     72   PUBLIC   nemo_gcm    ! called by nemo.f90 
    6973   PUBLIC   nemo_init   ! needed by AGRIF 
    7074   PUBLIC   nemo_alloc  ! needed by TAM 
     
    7983CONTAINS 
    8084 
     85   SUBROUTINE nemo_gcm 
     86         !!---------------------------------------------------------------------- 
     87         !!                    ***  SUBROUTINE offline_obs_oper *** 
     88         !! 
     89         !! ** Purpose : To use NEMO components to interpolate model fields 
     90         !!              to observation space. 
     91         !! 
     92         !! ** Method : 1. Initialise NEMO 
     93         !!             2. Initialise offline obs_oper 
     94         !!             3. Cycle through match ups 
     95         !!             4. Write results to file 
     96         !! 
     97         !!---------------------------------------------------------------------- 
     98         !! Class 4 output stream switch 
     99         USE obs_fbm, ONLY: ln_cl4 
     100         !! Initialise NEMO 
     101         CALL nemo_init 
     102         !! Initialise Offline obs_oper data 
     103         CALL ooo_data_init( ln_cl4 ) 
     104         !! Loop over various model counterparts 
     105         DO jimatch = 1, cl4_match_len 
     106            IF (jimatch .GT. 1) THEN 
     107               !! Initialise obs_oper 
     108               CALL dia_obs_init 
     109            END IF 
     110            !! Interpolate to observation space 
     111            CALL ooo_interp 
     112            !! Pipe to output files 
     113            CALL dia_obs_wri 
     114            !! Reset the obs_oper between 
     115            CALL dia_obs_dealloc 
     116         END DO 
     117         !! Safely stop MPI 
     118         IF(lk_mpp) CALL mppstop  ! end mpp communications 
     119   END SUBROUTINE nemo_gcm 
    81120 
    82121   SUBROUTINE nemo_init 
  • branches/2013/dev_r3987_UKMO4_OBS/NEMOGCM/NEMO/OOO_SRC/ooo_intp.F90

    r4119 r4120  
    1 MODULE ooomod 
     1MODULE ooo_intp 
    22   !!====================================================================== 
    3    !!                    ***  MODULE ooo *** 
     3   !!                    ***  MODULE ooo_intp *** 
    44   !! ** Purpose : Run NEMO observation operator in offline mode 
    55   !!====================================================================== 
    66   !! NEMO modules 
     7   USE in_out_manager 
    78   USE diaobs 
    8    USE nemogcm 
    9    USE lib_mpp 
    10    USE in_out_manager 
    11    USE obs_fbm, ONLY: ln_cl4 
    129   !! Offline obs_oper modules 
     10   USE ooo_read 
    1311   USE ooo_data 
    14    USE ooo_read 
    1512 
    1613   IMPLICIT NONE 
    1714   PRIVATE 
    1815 
    19    PUBLIC offline_obs_oper 
     16   PUBLIC ooo_interp 
    2017 
    2118   CONTAINS 
    22  
    23       SUBROUTINE offline_obs_oper 
    24          !!---------------------------------------------------------------------- 
    25          !!                    ***  SUBROUTINE offline_obs_oper *** 
    26          !! 
    27          !! ** Purpose : To use NEMO components to interpolate model fields 
    28          !!              to observation space. 
    29          !! 
    30          !!---------------------------------------------------------------------- 
    31          !! Initialise NEMO 
    32          CALL nemo_init 
    33          !! Initialise Offline obs_oper data 
    34          CALL ooo_data_init( ln_cl4 ) 
    35          !! Loop over various model counterparts 
    36          DO jimatch = 1, cl4_match_len 
    37             IF (jimatch .GT. 1) THEN 
    38                !! Initialise obs_oper 
    39                CALL dia_obs_init 
    40             END IF 
    41             !! Interpolate to observation space 
    42             CALL ooo_interp 
    43             !! Pipe to output files 
    44             CALL dia_obs_wri 
    45             !! Reset the obs_oper between 
    46             CALL dia_obs_dealloc 
    47          END DO 
    48          !! Safely stop MPI 
    49          IF(lk_mpp) CALL mppstop  ! end mpp communications 
    50       END SUBROUTINE offline_obs_oper 
    5119 
    5220      SUBROUTINE ooo_interp 
     
    7846      END SUBROUTINE ooo_interp 
    7947 
    80 END MODULE ooomod 
     48END MODULE ooo_intp 
Note: See TracChangeset for help on using the changeset viewer.