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 2587 for branches/TAM_V3_0/NEMOTAM/OPATAM_SRC/tamtst.F90 – NEMO

Ignore:
Timestamp:
2011-02-15T12:58:59+01:00 (13 years ago)
Author:
vidard
Message:

refer to ticket #798

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/TAM_V3_0/NEMOTAM/OPATAM_SRC/tamtst.F90

    r1885 r2587  
    5454#endif 
    5555 
     56   USE step_tam_cpd        ! Temporary 
     57 
    5658   IMPLICIT NONE 
    5759 
     
    6062 
    6163   PUBLIC & 
    62       & tstopt, &          !: Scalar product test of the adjoint routines 
     64      & tsttam, &          !: Scalar product test of the adjoint routines 
    6365      & numadt             !: File unit number for adjoint test output 
    6466 
     
    6971CONTAINS 
    7072 
    71    SUBROUTINE tstopt 
     73   SUBROUTINE tsttam 
    7274      !!----------------------------------------------------------------------- 
    7375      !! 
    74       !!                  ***  ROUTINE tstopt  *** 
     76      !!                  ***  ROUTINE tsttam  *** 
    7577      !! 
    76       !! ** Purpose : Apply various tests (linearization, adjoint, gradient) 
    77       !!              on the NEMOVAR code. 
     78      !! ** Purpose : Apply various tests (linearization, adjoint) 
     79      !!              on the NEMOTAM code. 
    7880      !! 
    7981      !! ** Method  :  
     
    8587      !!        ! 07-11 (A. Weaver) Add adjoint tests 
    8688      !!        ! 09-03 (I. Mirouze) Filter call depends on type 
    87       !!        ! 09-08 (F. Vigilant) Add tangent tests 
     89      !!        ! 09-08 (F. Vigilant) Split TAM and Var and add tangent tests 
    8890      !!----------------------------------------------------------------------- 
    8991      !! * Modules used 
     
    133135      CALL par_esp 
    134136 
    135       ! --------------------------------------------------------------- 
    136       ! 1) Test the adjoint of the components of B 
    137       ! --------------------------------------------------------------- 
    138  
    139       ! Moved to NEMOVAR 
    140  
    141       ! ----------------------------------------------------- 
    142       ! 2) Test the adjoint of H 
    143       ! ----------------------------------------------------- 
    144  
    145       ! Moved to NEMOVAR 
    146  
    147137#if defined key_tam 
    148       ! ----------------------------------------------------- 
    149       ! 3) Test the adjoint of the simplification operator 
    150       ! ----------------------------------------------------- 
    151  
    152       ! Not yet implemented 
    153  
    154       ! ----------------------------------------------------- 
    155       ! 4) Test the adjoint of the components of M (NEMOTAM) 
    156       ! ----------------------------------------------------- 
    157138 
    158139      IF ( ln_tst_nemotam ) THEN 
    159140 
    160141         IF ( ln_tst_cpd_tam ) THEN 
     142            ! ----------------------------------------------------- 
     143            ! 1) Test the adjoint of the components of M (NEMOTAM) 
     144            ! ----------------------------------------------------- 
    161145            ! *** initialize the reference trajectory 
    162146            ! ------------ 
     
    206190            IF (lwp) WRITE(numadt,*) 
    207191 
    208             IF( lk_dynspg_rl ) & 
    209                 & CALL dyn_spg_adj_tst( numadt )    ! Surface pressure gradient 
     192            CALL dyn_spg_adj_tst( numadt )    ! Surface pressure gradient 
    210193 
    211194            IF (lwp) WRITE(numadt,*) 
     
    292275         ENDIF 
    293276 
    294          ! *** Time-loop operator 
    295          ! ---------------------- 
     277         ! ----------------------------------------------------- 
     278         ! 2) Test the adjoint of of M (NEMOTAM) 
     279         ! ----------------------------------------------------- 
    296280         IF ( ln_tst_stp_tam ) THEN 
    297281 
     
    303287 
    304288         ENDIF 
    305  
    306          ! *** Tangent accuracy 
     289#if defined key_tst_tlm 
     290         ! ----------------------------------------------------- 
     291         ! 3)  Test the Tangent accuracy 
    307292         ! ---------------------- 
    308293         IF ( ln_tst_tan ) THEN      
     
    310295            IF (ln_tst_tan_cpd) THEN 
    311296 
    312                CALL flush(numout) 
    313  
    314297               CALL dyn_hpg_tlm_tst( numadt ) 
    315298 
    316                CALL flush(numout) 
    317  
    318                IF( lk_dynspg_rl ) & 
    319                   & CALL dyn_spg_tlm_tst( numadt ) 
    320  
    321                CALL flush(numout) 
     299               CALL dyn_spg_tlm_tst( numadt ) 
     300 
     301               CALL sol_sor_tlm_tst( numadt ) 
    322302 
    323303               CALL zps_hde_tlm_tst( numadt ) 
    324304 
    325                CALL flush(numout) 
    326  
    327305               CALL tra_sbc_tlm_tst( numadt ) 
    328306 
    329                CALL flush(numout) 
    330  
    331307               CALL dyn_adv_tlm_tst( numadt ) 
    332308 
    333                CALL flush(numout) 
    334  
    335309               CALL eos_tlm_tst( numadt ) 
    336310 
    337                CALL flush(numout) 
    338  
    339311               CALL bn2_tlm_tst( numadt ) 
    340312 
    341                CALL flush(numout) 
    342  
    343313               CALL tra_zdf_tlm_tst( numadt ) 
    344314 
    345                CALL flush(numout) 
    346  
    347315               CALL tra_adv_tlm_tst( numadt )        
    348316 
    349                CALL flush(numout) 
    350              
    351317               CALL tra_ldf_tlm_tst( numadt )  
    352318        
    353                CALL flush(numout) 
    354319            ELSE 
    355320 
     
    363328 
    364329         ENDIF 
    365  
     330#endif 
    366331      ENDIF 
    367332#endif 
     
    372337      IF (lwp) THEN 
    373338         WRITE(numout,*) 
    374          WRITE(numout,*) ' tstopt: Finished testing operators' 
     339         WRITE(numout,*) ' tsttam: Finished testing operators' 
    375340         WRITE(numout,*) ' ------' 
    376341         WRITE(numout,*) 
    377342      ENDIF 
    378343      CALL flush(numout) 
    379    END SUBROUTINE tstopt 
     344   END SUBROUTINE tsttam 
    380345 
    381346END MODULE tamtst 
Note: See TracChangeset for help on using the changeset viewer.