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/TAM/trj_tam.F90 – NEMO

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

refer to ticket #798

Location:
branches/TAM_V3_0/NEMOTAM/OPATAM_SRC/TAM
Files:
1 added
1 moved

Legend:

Unmodified
Added
Removed
  • branches/TAM_V3_0/NEMOTAM/OPATAM_SRC/TAM/trj_tam.F90

    r2586 r2587  
    3232   USE wzvmod             !  vertical velocity 
    3333   
     34   USE oce_tam, ONLY : &      ! Dynamics and active tracers defined in memory 
     35      & un_tl, vn_tl, tn_tl, & 
     36      & wn_tl, hdivn_tl, rotn_tl,              & 
     37#if defined key_dynspg_flt 
     38      & sshn_tl, & 
     39#endif 
     40      & sn_tl 
     41   
    3442   IMPLICIT NONE 
    3543 
     
    3947      & trj_rea,     &   !: Read trajectory at time step kstep into now fields 
    4048      & trj_rd_spl,  &   !: Read simple data (without interpolation) 
    41       & trj_wri_spl      !: Write simple data (without interpolation) 
     49      & trj_wri_spl, &   !: Write simple data (without interpolation) 
     50      & tl_trj_wri,  &   !: Write simple linear-tangent data 
     51      & tl_trj_ini,  &   !: initialize the model-tangent state trajectory 
     52      & trj_deallocate   !: Deallocate all the saved variable 
     53 
     54   LOGICAL, PUBLIC :: &  
     55      & ln_trjwri_tan = .FALSE.   !: No output of the state trajectory fields 
     56 
     57   CHARACTER (LEN=40), PUBLIC, PARAMETER :: & 
     58      & c_tantrj = 'tl_trajectory'                !: Filename for storing the  
     59                                                   !: linear-tangent trajectory 
     60   INTEGER, PUBLIC :: &           
     61      & nittrjfrq_tan         !: Frequency of trajectory output for linear-tangent 
    4262 
    4363   !! * Module variables 
     64   LOGICAL, SAVE :: &  
     65      & ln_mem = .FALSE.      !: Flag for allocation  
    4466   INTEGER, SAVE :: inumtrj1 = -1, inumtrj2 = -1 
    4567   REAL(wp), SAVE :: & 
     
    107129CONTAINS 
    108130 
     131   SUBROUTINE tl_trj_ini 
     132      !!----------------------------------------------------------------------- 
     133      !! 
     134      !!                  ***  ROUTINE tl_trj_ini *** 
     135      !! 
     136      !! ** Purpose : initialize the model-tangent state trajectory  
     137      !! 
     138      !! ** Method  :  
     139      !! 
     140      !! ** Action  : 
     141      !!                    
     142      !! References :  
     143      !! 
     144      !! History : 
     145      !!        ! 10-07 (F. Vigilant)  
     146      !!----------------------------------------------------------------------- 
     147 
     148      IMPLICIT NONE 
     149 
     150      !! * Modules used 
     151      NAMELIST/namtl_trj/ nittrjfrq_tan, ln_trjwri_tan 
     152 
     153      ln_trjwri_tan = .FALSE. 
     154      nittrjfrq_tan = 1 
     155 
     156      REWIND ( numnam ) 
     157      READ   ( numnam, namtl_trj ) 
     158 
     159      ! Control print 
     160      IF(lwp) THEN 
     161         WRITE(numout,*) 
     162         WRITE(numout,*) 'tl_trj_ini : Linear-Tagent Trajectory handling:' 
     163         WRITE(numout,*) '~~~~~~~~~~~~' 
     164         WRITE(numout,*) '          Namelist namtl_trj : set trajectory parameters' 
     165         WRITE(numout,*) '             Logical switch for writing out state trajectory         ', & 
     166            &            ' ln_trjwri_tan = ', ln_trjwri_tan 
     167         WRITE(numout,*) '             Frequency of trajectory output                          ', & 
     168            &            ' nittrjfrq_tan = ', nittrjfrq_tan 
     169      END IF 
     170   END SUBROUTINE tl_trj_ini 
     171 
    109172   SUBROUTINE trj_rea( kstp, kdir ) 
    110173      !!----------------------------------------------------------------------- 
     
    242305               & ) 
    243306#endif 
     307       ln_mem = .TRUE. 
    244308 
    245309         ENDIF 
     
    310374 
    311375         ENDIF 
    312 ! added 
     376 
    313377         IF ( ( kstp - nit000 + 1 /= 0 ) .AND. ( kdir == -1 ) ) THEN 
    314378            ! We update the input filename  
     
    321385            ENDIF 
    322386         ENDIF 
    323 ! end added 
     387 
    324388         ! Read record 1 
    325389 
     
    328392 
    329393            IF ( kdir == -1 ) inrcm = inrcm - 1 
    330 !added 
    331394!            inrc = inrcm 
    332395            ! temporary fix: currently, only one field by step time 
    333396            inrc = 1 
    334397            stpr1 = (inrcm - 1) * nittrjfrq 
    335 !            stpr1 = (inrc - 1) * nittrjfrq  
    336 !end added 
    337398 
    338399            ! bug fixed to read several time the initial data 
     
    351412            IF ( inumtrj1 /= -1 )   CALL iom_open( cl_asmtrj, inumtrj1 ) 
    352413 
    353             CALL iom_get( inumtrj1, jpdom_data, 'emp'   , empr1   , inrc ) 
    354             CALL iom_get( inumtrj1, jpdom_data, 'emps'  , empsr1  , inrc ) 
    355             CALL iom_get( inumtrj1, jpdom_data, 'un'    , unr1    , inrc ) 
    356             CALL iom_get( inumtrj1, jpdom_data, 'vn'    , vnr1    , inrc ) 
    357             CALL iom_get( inumtrj1, jpdom_data, 'tn'    , tnr1    , inrc ) 
    358             CALL iom_get( inumtrj1, jpdom_data, 'sn'    , snr1    , inrc ) 
    359             CALL iom_get( inumtrj1, jpdom_data, 'avmu'  , avmur1  , inrc ) 
    360             CALL iom_get( inumtrj1, jpdom_data, 'avmv'  , avmvr1  , inrc ) 
    361             CALL iom_get( inumtrj1, jpdom_data, 'avt'   , avtr1   , inrc ) 
     414            CALL iom_get( inumtrj1, jpdom_autoglo, 'emp'   , empr1   , inrc ) 
     415            CALL iom_get( inumtrj1, jpdom_autoglo, 'emps'  , empsr1  , inrc ) 
     416            CALL iom_get( inumtrj1, jpdom_autoglo, 'un'    , unr1    , inrc ) 
     417            CALL iom_get( inumtrj1, jpdom_autoglo, 'vn'    , vnr1    , inrc ) 
     418            CALL iom_get( inumtrj1, jpdom_autoglo, 'tn'    , tnr1    , inrc ) 
     419            CALL iom_get( inumtrj1, jpdom_autoglo, 'sn'    , snr1    , inrc ) 
     420            CALL iom_get( inumtrj1, jpdom_autoglo, 'avmu'  , avmur1  , inrc ) 
     421            CALL iom_get( inumtrj1, jpdom_autoglo, 'avmv'  , avmvr1  , inrc ) 
     422            CALL iom_get( inumtrj1, jpdom_autoglo, 'avt'   , avtr1   , inrc ) 
    362423#if defined key_ldfslp 
    363             CALL iom_get( inumtrj1, jpdom_data, 'uslp'  , uslpr1  , inrc ) 
    364             CALL iom_get( inumtrj1, jpdom_data, 'vslp'  , vslpr1  , inrc ) 
    365             CALL iom_get( inumtrj1, jpdom_data, 'wslpi' , wslpir1 , inrc ) 
    366             CALL iom_get( inumtrj1, jpdom_data, 'wslpj' , wslpjr1 , inrc ) 
     424            CALL iom_get( inumtrj1, jpdom_autoglo, 'uslp'  , uslpr1  , inrc ) 
     425            CALL iom_get( inumtrj1, jpdom_autoglo, 'vslp'  , vslpr1  , inrc ) 
     426            CALL iom_get( inumtrj1, jpdom_autoglo, 'wslpi' , wslpir1 , inrc ) 
     427            CALL iom_get( inumtrj1, jpdom_autoglo, 'wslpj' , wslpjr1 , inrc ) 
    367428#endif 
    368429#if defined key_zdfddm 
    369             CALL iom_get( inumtrj1, jpdom_data, 'avs'   , avsr1   , inrc ) 
    370 #endif 
    371             CALL iom_get( inumtrj1, jpdom_data, 'ta'    , tar1    , inrc ) 
    372             CALL iom_get( inumtrj1, jpdom_data, 'sa'    , sar1    , inrc ) 
    373             CALL iom_get( inumtrj1, jpdom_data, 'tb'    , tbr1    , inrc ) 
    374             CALL iom_get( inumtrj1, jpdom_data, 'sb'    , sbr1    , inrc ) 
     430            CALL iom_get( inumtrj1, jpdom_autoglo, 'avs'   , avsr1   , inrc ) 
     431#endif 
     432            CALL iom_get( inumtrj1, jpdom_autoglo, 'ta'    , tar1    , inrc ) 
     433            CALL iom_get( inumtrj1, jpdom_autoglo, 'sa'    , sar1    , inrc ) 
     434            CALL iom_get( inumtrj1, jpdom_autoglo, 'tb'    , tbr1    , inrc ) 
     435            CALL iom_get( inumtrj1, jpdom_autoglo, 'sb'    , sbr1    , inrc ) 
    375436#if defined key_tradmp 
    376             CALL iom_get( inumtrj1, jpdom_data, 'hmlp'  , hmlp1   , inrc ) 
     437            CALL iom_get( inumtrj1, jpdom_autoglo, 'hmlp'  , hmlp1   , inrc ) 
    377438#endif 
    378439#if defined key_traldf_eiv 
    379             CALL iom_get( inumtrj1, jpdom_data, 'aeiu'  , aeiur1  , inrc ) 
    380             CALL iom_get( inumtrj1, jpdom_data, 'aeiv'  , aeivr1  , inrc ) 
    381             CALL iom_get( inumtrj1, jpdom_data, 'aeiw'  , aeiwr1  , inrc ) 
     440            CALL iom_get( inumtrj1, jpdom_autoglo, 'aeiu'  , aeiur1  , inrc ) 
     441            CALL iom_get( inumtrj1, jpdom_autoglo, 'aeiv'  , aeivr1  , inrc ) 
     442            CALL iom_get( inumtrj1, jpdom_autoglo, 'aeiw'  , aeiwr1  , inrc ) 
    382443#endif 
    383444            CALL iom_close( inumtrj1 ) 
     
    450511         ! Read record 2 
    451512 
    452 !!         IF ( ( kstp /= nitend ) .AND. ( kdir == 1  ) .OR. & 
    453 !!            & ( kstp == nitend ) .AND. ( kdir == -1 ) ) THEN     
    454 ! change 
    455513         IF ( ( ( kstp /= nitend ) .AND. ( kdir == 1  )) .OR. & 
    456514            &   ( kstp == nitend ) .AND.(  kdir == -1   ) ) THEN 
    457 ! end change 
    458 !added 
    459 !            ! Need to open next saved file when kstp = initial step    
    460 !            IF  ( kstp - nit000 + 1 == 0 ) THEN      
    461             ! Need to open next saved file when kstp = initial step    
    462 ! change      
    463 !            IF ( ( kstp /= nitend ) .AND. ( kdir == 1 ) ) THEN  
    464 ! end change 
    465 ! end added 
     515 
    466516               ! Define the input file  
    467517               IF  (  kdir == -1   ) THEN 
     
    479529 
    480530               CALL iom_open( cl_asmtrj, inumtrj2 )  
    481 ! change 
    482 !            END IF 
    483 !end change 
     531 
    484532 
    485533            inrcp = inrcm + 1 
    486534            !            inrc  = inrcp 
    487 !added 
    488535            inrc = 1  ! temporary  fix 
    489 !end added 
     536 
    490537            stpr2 = (inrcp - 1) * nittrjfrq  
    491             CALL iom_get( inumtrj2, jpdom_data, 'emp'   , empr2   , inrc ) 
    492             CALL iom_get( inumtrj2, jpdom_data, 'emps'  , empsr2  , inrc ) 
    493             CALL iom_get( inumtrj2, jpdom_data, 'un'    , unr2    , inrc ) 
    494             CALL iom_get( inumtrj2, jpdom_data, 'vn'    , vnr2    , inrc ) 
    495             CALL iom_get( inumtrj2, jpdom_data, 'tn'    , tnr2    , inrc ) 
    496             CALL iom_get( inumtrj2, jpdom_data, 'sn'    , snr2    , inrc ) 
    497             CALL iom_get( inumtrj2, jpdom_data, 'avmu'  , avmur2  , inrc ) 
    498             CALL iom_get( inumtrj2, jpdom_data, 'avmv'  , avmvr2  , inrc ) 
    499             CALL iom_get( inumtrj2, jpdom_data, 'avt'   , avtr2   , inrc ) 
     538            CALL iom_get( inumtrj2, jpdom_autoglo, 'emp'   , empr2   , inrc ) 
     539            CALL iom_get( inumtrj2, jpdom_autoglo, 'emps'  , empsr2  , inrc ) 
     540            CALL iom_get( inumtrj2, jpdom_autoglo, 'un'    , unr2    , inrc ) 
     541            CALL iom_get( inumtrj2, jpdom_autoglo, 'vn'    , vnr2    , inrc ) 
     542            CALL iom_get( inumtrj2, jpdom_autoglo, 'tn'    , tnr2    , inrc ) 
     543            CALL iom_get( inumtrj2, jpdom_autoglo, 'sn'    , snr2    , inrc ) 
     544            CALL iom_get( inumtrj2, jpdom_autoglo, 'avmu'  , avmur2  , inrc ) 
     545            CALL iom_get( inumtrj2, jpdom_autoglo, 'avmv'  , avmvr2  , inrc ) 
     546            CALL iom_get( inumtrj2, jpdom_autoglo, 'avt'   , avtr2   , inrc ) 
    500547#if defined key_ldfslp 
    501             CALL iom_get( inumtrj2, jpdom_data, 'uslp'  , uslpr2  , inrc ) 
    502             CALL iom_get( inumtrj2, jpdom_data, 'vslp'  , vslpr2  , inrc ) 
    503             CALL iom_get( inumtrj2, jpdom_data, 'wslpi' , wslpir2 , inrc ) 
    504             CALL iom_get( inumtrj2, jpdom_data, 'wslpj' , wslpjr2 , inrc ) 
     548            CALL iom_get( inumtrj2, jpdom_autoglo, 'uslp'  , uslpr2  , inrc ) 
     549            CALL iom_get( inumtrj2, jpdom_autoglo, 'vslp'  , vslpr2  , inrc ) 
     550            CALL iom_get( inumtrj2, jpdom_autoglo, 'wslpi' , wslpir2 , inrc ) 
     551            CALL iom_get( inumtrj2, jpdom_autoglo, 'wslpj' , wslpjr2 , inrc ) 
    505552#endif 
    506553#if defined key_zdfddm 
    507             CALL iom_get( inumtrj2, jpdom_data, 'avs'   , avsr2   , inrc ) 
    508 #endif 
    509             CALL iom_get( inumtrj2, jpdom_data, 'ta'    , tar2    , inrc ) 
    510             CALL iom_get( inumtrj2, jpdom_data, 'sa'    , sar2    , inrc ) 
    511             CALL iom_get( inumtrj2, jpdom_data, 'tb'    , tbr2    , inrc ) 
    512             CALL iom_get( inumtrj2, jpdom_data, 'sb'    , sbr2    , inrc ) 
     554            CALL iom_get( inumtrj2, jpdom_autoglo, 'avs'   , avsr2   , inrc ) 
     555#endif 
     556            CALL iom_get( inumtrj2, jpdom_autoglo, 'ta'    , tar2    , inrc ) 
     557            CALL iom_get( inumtrj2, jpdom_autoglo, 'sa'    , sar2    , inrc ) 
     558            CALL iom_get( inumtrj2, jpdom_autoglo, 'tb'    , tbr2    , inrc ) 
     559            CALL iom_get( inumtrj2, jpdom_autoglo, 'sb'    , sbr2    , inrc ) 
    513560#if defined key_tradmp 
    514             CALL iom_get( inumtrj2, jpdom_data, 'hmlp'  , hmlp2   , inrc ) 
     561            CALL iom_get( inumtrj2, jpdom_autoglo, 'hmlp'  , hmlp2   , inrc ) 
    515562#endif 
    516563#if defined key_traldf_eiv 
    517             CALL iom_get( inumtrj2, jpdom_data, 'aeiu'  , aeiur2  , inrc ) 
    518             CALL iom_get( inumtrj2, jpdom_data, 'aeiv'  , aeivr2  , inrc ) 
    519             CALL iom_get( inumtrj2, jpdom_data, 'aeiw'  , aeiwr2  , inrc ) 
     564            CALL iom_get( inumtrj2, jpdom_autoglo, 'aeiu'  , aeiur2  , inrc ) 
     565            CALL iom_get( inumtrj2, jpdom_autoglo, 'aeiv'  , aeivr2  , inrc ) 
     566            CALL iom_get( inumtrj2, jpdom_autoglo, 'aeiw'  , aeiwr2  , inrc ) 
    520567#endif 
    521568            CALL iom_close( inumtrj2 ) 
     
    526573         ENDIF 
    527574 
     575      ENDIF 
     576 
     577      ! Add warning for user 
     578      IF ( (kstp == nitend) .AND. ( MOD( kstp - nit000 + 1, nittrjfrq ) /= 0 )  ) THEN 
     579          IF(lwp) WRITE(numout,*) '   Warning ! nitend (=',nitend, ')', & 
     580               &                  ' and saving frequency (=',nittrjfrq,') not compatible.' 
    528581      ENDIF 
    529582 
     
    611664      !! *Module udes 
    612665      USE iom   
     666      USE sol_oce, ONLY : & ! solver variables 
     667      & gcb, gcx 
    613668      !! * Arguments 
    614669      !! * Local declarations 
     
    647702      CALL iom_rstput( fd, fd, inum, 'grv'  , grv  ) 
    648703      CALL iom_rstput( fd, fd, inum, 'rn2'  , rn2  ) 
     704      CALL iom_rstput( fd, fd, inum, 'gcb'  , gcb  ) 
     705      CALL iom_rstput( fd, fd, inum, 'gcx'  , gcx  ) 
    649706 
    650707      CALL iom_close( inum ) 
     
    668725      !! *Module udes 
    669726      USE iom                 ! I/O module 
     727      USE sol_oce, ONLY : & ! solver variables 
     728      & gcb, gcx 
    670729      !! * Arguments 
    671730      !! * Local declarations 
     
    704763      CALL iom_get( inum, jpdom_autoglo, 'grv'  , grv,  fd ) 
    705764      CALL iom_get( inum, jpdom_autoglo, 'rn2'  , rn2,  fd ) 
     765      CALL iom_get( inum, jpdom_autoglo, 'gcb'  , gcb,  fd ) 
     766      CALL iom_get( inum, jpdom_autoglo, 'gcx'  , gcx,  fd ) 
    706767 
    707768      CALL iom_close( inum ) 
     
    709770   END SUBROUTINE trj_rd_spl 
    710771 
     772   SUBROUTINE tl_trj_wri(kstp) 
     773      !!----------------------------------------------------------------------- 
     774      !! 
     775      !!                  ***  ROUTINE tl_trj_wri *** 
     776      !! 
     777      !! ** Purpose : Write SimPLe data to file the model state trajectory 
     778      !! 
     779      !! ** Method  :  
     780      !! 
     781      !! ** Action  : 
     782      !! 
     783      !! History :  
     784      !!        ! 10-07 (F. Vigilant)  
     785      !!----------------------------------------------------------------------- 
     786      !! *Module udes 
     787      USE iom   
     788      !! * Arguments 
     789      INTEGER, INTENT(in) :: & 
     790         & kstp           ! Step for requested trajectory 
     791      !! * Local declarations 
     792      INTEGER :: & 
     793         & inum           ! File unit number 
     794      INTEGER :: & 
     795         & it 
     796      CHARACTER (LEN=50) :: & 
     797         & filename 
     798      CHARACTER (LEN=100) :: & 
     799         & cl_tantrj       
     800 
     801      ! Initialize data and open file 
     802      !! if step time is corresponding to a saved state 
     803      IF ( ( MOD( kstp - nit000 + 1, nittrjfrq_tan ) == 0 )  ) THEN        
     804 
     805         it = kstp - nit000 + 1 
     806 
     807            ! Define the input file  
     808            WRITE(cl_tantrj, FMT='(A,A,I5.5,".nc")' ) TRIM( c_tantrj ), '_', it 
     809            cl_tantrj = TRIM( cl_tantrj ) 
     810 
     811            IF(lwp) THEN 
     812               WRITE(numout,*) 
     813               WRITE(numout,*)'Writing linear-tangent fields from : ',TRIM(cl_tantrj) 
     814               WRITE(numout,*) 
     815            ENDIF 
     816 
     817            CALL iom_open( cl_tantrj, inum, ldwrt = .TRUE., kiolib = jprstlib) 
     818             
     819            ! Output trajectory fields 
     820            CALL iom_rstput( it, it, inum, 'un_tl'   , un_tl   ) 
     821            CALL iom_rstput( it, it, inum, 'vn_tl'   , vn_tl   ) 
     822            CALL iom_rstput( it, it, inum, 'tn_tl'   , tn_tl   ) 
     823            CALL iom_rstput( it, it, inum, 'sn_tl'   , sn_tl   ) 
     824            CALL iom_rstput( it, it, inum, 'wn_tl'   , wn_tl   ) 
     825            CALL iom_rstput( it, it, inum, 'hdivn_tl', hdivn_tl) 
     826            CALL iom_rstput( it, it, inum, 'rotn_tl' , rotn_tl ) 
     827#if defined key_dynspg_flt 
     828            CALL iom_rstput( it, it, inum, 'sshn_tl' , sshn_tl ) 
     829#endif 
     830            CALL iom_close( inum ) 
     831 
     832         ENDIF 
     833 
     834   END SUBROUTINE tl_trj_wri 
     835 
     836 
     837   SUBROUTINE trj_deallocate 
     838      !!----------------------------------------------------------------------- 
     839      !! 
     840      !!                  ***  ROUTINE trj_deallocate *** 
     841      !! 
     842      !! ** Purpose : Deallocate saved trajectory arrays 
     843      !! 
     844      !! ** Method  :  
     845      !! 
     846      !! ** Action  : 
     847      !! 
     848      !! History :  
     849      !!        ! 2010-06 (A. Vidard) 
     850      !!----------------------------------------------------------------------- 
     851 
     852         IF ( ln_mem ) THEN 
     853            DEALLOCATE(  & 
     854               & empr1,  & 
     855               & empsr1, & 
     856               & empr2,  & 
     857               & empsr2  & 
     858               & ) 
     859 
     860            DEALLOCATE(    & 
     861               & unr1,     & 
     862               & vnr1,     & 
     863               & tnr1,     & 
     864               & snr1,     & 
     865               & avmur1,   & 
     866               & avmvr1,   & 
     867               & avtr1,    & 
     868               & tar1,     & 
     869               & sar1,     & 
     870               & tbr1,     & 
     871               & sbr1,     & 
     872               & unr2,     & 
     873               & vnr2,     & 
     874               & tnr2,     & 
     875               & snr2,     & 
     876               & avmur2,   & 
     877               & avmvr2,   & 
     878               & avtr2,    & 
     879               & tar2,     & 
     880               & sar2,     & 
     881               & tbr2,     & 
     882               & sbr2      & 
     883               & ) 
     884 
     885#if defined key_traldf_eiv 
     886#if defined key_traldf_c3d 
     887#elif defined key_traldf_c2d 
     888            DEALLOCATE(  & 
     889               & aeiur1, & 
     890               & aeivr1, & 
     891               & aeiwr1, & 
     892               & aeiur2, & 
     893               & aeivr2, & 
     894               & aeiwr2  & 
     895               & ) 
     896#elif defined key_traldf_c1d 
     897#endif 
     898#endif 
     899 
     900#if defined key_ldfslp 
     901            DEALLOCATE( & 
     902               & uslpr1,   & 
     903               & vslpr1,   & 
     904               & wslpir1,  & 
     905               & wslpjr1,  & 
     906               & uslpr2,   & 
     907               & vslpr2,   & 
     908               & wslpir2,  & 
     909               & wslpjr2   & 
     910               & ) 
     911#endif 
     912 
     913#if defined key_zdfddm 
     914            DEALLOCATE( & 
     915               & avsr1,    & 
     916               & avsr2     & 
     917               & ) 
     918#endif 
     919 
     920#if defined key_tradmp 
     921            DEALLOCATE( & 
     922               & hmlp1,    & 
     923               & hmlp2     & 
     924               & ) 
     925#endif 
     926    ENDIF 
     927     END SUBROUTINE trj_deallocate 
    711928#endif 
    712929END MODULE trj_tam 
Note: See TracChangeset for help on using the changeset viewer.