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 11053 for NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps_rewrite_time_filterswap/src/SAS – NEMO

Ignore:
Timestamp:
2019-05-24T12:53:06+02:00 (5 years ago)
Author:
davestorkey
Message:

2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps_rewrite_time_filterswap : Merge in latest changes from main branch and finish conversion of "h" variables. NB. This version still doesn't work!

Location:
NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps_rewrite_time_filterswap/src/SAS
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps_rewrite_time_filterswap/src/SAS/diawri.F90

    r10425 r11053  
    7878 
    7979    
    80    SUBROUTINE dia_wri( kt ) 
     80   SUBROUTINE dia_wri( kt, Kmm ) 
    8181      !!--------------------------------------------------------------------- 
    8282      !!                  ***  ROUTINE dia_wri  *** 
     
    9090      !! 
    9191      INTEGER, INTENT( in ) ::   kt      ! ocean time-step index 
     92      INTEGER, INTENT( in ) ::   Kmm     ! ocean time levelindex 
    9293      !!---------------------------------------------------------------------- 
    9394      !  
    9495      ! Output the initial state and forcings 
    9596      IF( ninist == 1 ) THEN 
    96          CALL dia_wri_state( 'output.init' ) 
     97         CALL dia_wri_state( 'output.init', Kmm ) 
    9798         ninist = 0 
    9899      ENDIF 
     
    330331#endif 
    331332 
    332    SUBROUTINE dia_wri_state( cdfile_name ) 
     333   SUBROUTINE dia_wri_state( cdfile_name, Kmm ) 
    333334      !!--------------------------------------------------------------------- 
    334335      !!                 ***  ROUTINE dia_wri_state  *** 
     
    344345      !!---------------------------------------------------------------------- 
    345346      CHARACTER (len=* ), INTENT( in ) ::   cdfile_name      ! name of the file created 
     347      INTEGER           , INTENT( in ) ::   Kmm              ! ocean time levelindex 
    346348      !! 
    347349      INTEGER :: inum 
     
    359361#endif 
    360362 
    361       CALL iom_rstput( 0, 0, inum, 'votemper', tsn(:,:,:,jp_tem) )    ! now temperature 
    362       CALL iom_rstput( 0, 0, inum, 'vosaline', tsn(:,:,:,jp_sal) )    ! now salinity 
    363       CALL iom_rstput( 0, 0, inum, 'sossheig', sshn              )    ! sea surface height 
    364       CALL iom_rstput( 0, 0, inum, 'vozocrtx', un                )    ! now i-velocity 
    365       CALL iom_rstput( 0, 0, inum, 'vomecrty', vn                )    ! now j-velocity 
    366       CALL iom_rstput( 0, 0, inum, 'vovecrtz', wn                )    ! now k-velocity 
    367       CALL iom_rstput( 0, 0, inum, 'sowaflup', emp - rnf         )    ! freshwater budget 
    368       CALL iom_rstput( 0, 0, inum, 'sohefldo', qsr + qns         )    ! total heat flux 
    369       CALL iom_rstput( 0, 0, inum, 'soshfldo', qsr               )    ! solar heat flux 
    370       CALL iom_rstput( 0, 0, inum, 'soicecov', fr_i              )    ! ice fraction 
    371       CALL iom_rstput( 0, 0, inum, 'sozotaux', utau              )    ! i-wind stress 
    372       CALL iom_rstput( 0, 0, inum, 'sometauy', vtau              )    ! j-wind stress 
     363      CALL iom_rstput( 0, 0, inum, 'votemper', ts (:,:,:,jp_tem,Kmm) )    ! now temperature 
     364      CALL iom_rstput( 0, 0, inum, 'vosaline', ts (:,:,:,jp_sal,Kmm) )    ! now salinity 
     365      CALL iom_rstput( 0, 0, inum, 'sossheig', ssh(:,:,         Kmm) )    ! sea surface height 
     366      CALL iom_rstput( 0, 0, inum, 'vozocrtx', uu (:,:,:,       Kmm) )    ! now i-velocity 
     367      CALL iom_rstput( 0, 0, inum, 'vomecrty', vv (:,:,:,       Kmm) )    ! now j-velocity 
     368      CALL iom_rstput( 0, 0, inum, 'vovecrtz', ww                    )    ! now k-velocity 
     369      CALL iom_rstput( 0, 0, inum, 'sowaflup', emp - rnf             )    ! freshwater budget 
     370      CALL iom_rstput( 0, 0, inum, 'sohefldo', qsr + qns             )    ! total heat flux 
     371      CALL iom_rstput( 0, 0, inum, 'soshfldo', qsr                   )    ! solar heat flux 
     372      CALL iom_rstput( 0, 0, inum, 'soicecov', fr_i                  )    ! ice fraction 
     373      CALL iom_rstput( 0, 0, inum, 'sozotaux', utau                  )    ! i-wind stress 
     374      CALL iom_rstput( 0, 0, inum, 'sometauy', vtau                  )    ! j-wind stress 
    373375  
    374376#if defined key_si3 
  • NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps_rewrite_time_filterswap/src/SAS/nemogcm.F90

    r10998 r11053  
    355355      Nbb = 1; Nnn = 2; Naa = 3; Nrhs = Naa 
    356356 
    357       ! Initialisation of temporary pointers (to be deleted after development finished) 
    358       CALL update_pointers( Nbb, Nnn, Naa ) 
    359357      !                             !-------------------------------! 
    360358      !                             !  NEMO general initialization  ! 
  • NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps_rewrite_time_filterswap/src/SAS/sbcssm.F90

    r10922 r11053  
    121121         IF( .NOT. ln_linssh ) e3t_m(:,:) = e3t_0(:,:,1) !clem: necessary at least for sas2D 
    122122         frq_m(:,:) = 1._wp                              !              - - 
    123          sshn (:,:) = 0._wp                              !              - - 
     123         ssh  (:,:,Kmm) = 0._wp                              !              - - 
    124124      ENDIF 
    125125       
    126126      IF ( nn_ice == 1 ) THEN 
    127          tsn(:,:,1,jp_tem) = sst_m(:,:) 
    128          tsn(:,:,1,jp_sal) = sss_m(:,:) 
    129          tsb(:,:,1,jp_tem) = sst_m(:,:) 
    130          tsb(:,:,1,jp_sal) = sss_m(:,:) 
    131       ENDIF 
    132       ub (:,:,1) = ssu_m(:,:) 
    133       vb (:,:,1) = ssv_m(:,:) 
     127         ts(:,:,1,jp_tem,Kmm) = sst_m(:,:) 
     128         ts(:,:,1,jp_sal,Kmm) = sss_m(:,:) 
     129         ts(:,:,1,jp_tem,Kbb) = sst_m(:,:) 
     130         ts(:,:,1,jp_sal,Kbb) = sss_m(:,:) 
     131      ENDIF 
     132      uu (:,:,1,Kbb) = ssu_m(:,:) 
     133      vv (:,:,1,Kbb) = ssv_m(:,:) 
    134134  
    135135      IF(ln_ctl) THEN                  ! print control 
  • NEMO/branches/2019/dev_r10721_KERNEL-02_Storkey_Coward_IMMERSE_first_steps_rewrite_time_filterswap/src/SAS/step.F90

    r10975 r11053  
    4747 
    4848   PUBLIC   stp   ! called by nemogcm.F90 
    49    PUBLIC   update_pointers ! called by nemo_init 
    5049 
    5150   !!---------------------------------------------------------------------- 
     
    105104                             CALL sbc    ( kstp, Nbb, Nnn )                   ! Sea Boundary Condition (including sea-ice) 
    106105 
    107                              CALL dia_wri( kstp )         ! ocean model: outputs 
     106                             CALL dia_wri( kstp,      Nnn )                   ! ocean model: outputs 
    108107 
    109108#if defined key_agrif 
     
    126125      IF( indic < 0  )  THEN 
    127126                             CALL ctl_stop( 'step: indic < 0' ) 
    128                              CALL dia_wri_state( 'output.abort' ) 
     127                             CALL dia_wri_state( 'output.abort', Nnn ) 
    129128      ENDIF 
    130       IF( kstp == nit000   ) CALL iom_close( numror )     ! close input  ocean restart file 
     129      IF( kstp == nit000   ) CALL iom_close( numror )           ! close input  ocean restart file 
    131130       
    132131      !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    133132      ! Coupled mode 
    134133      !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 
    135       IF( lk_oasis    )  CALL sbc_cpl_snd( kstp, Nnn )     ! coupled mode : field exchanges if OASIS-coupled ice 
     134      IF( lk_oasis    )  CALL sbc_cpl_snd( kstp, Nbb, Nnn )     ! coupled mode : field exchanges if OASIS-coupled ice 
    136135 
    137136#if defined key_iomput 
     
    153152   END SUBROUTINE stp 
    154153 
    155    SUBROUTINE update_pointers( Kbb, Kmm, Kaa ) 
    156       !!---------------------------------------------------------------------- 
    157       !!                     ***  ROUTINE update_pointers  *** 
    158       !! 
    159       !! ** Purpose :   Associate temporary pointer arrays. 
    160       !!                For IMMERSE development phase only - to be deleted 
    161       !! 
    162       !! ** Method  : 
    163       !!---------------------------------------------------------------------- 
    164       INTEGER, INTENT( in ) :: Kbb, Kmm, Kaa ! time level indices 
    165  
    166       ub => uu(:,:,:,Kbb); un => uu(:,:,:,Kmm); ua => uu(:,:,:,Kaa) 
    167       vb => vv(:,:,:,Kbb); vn => vv(:,:,:,Kmm); va => vv(:,:,:,Kaa) 
    168       wn => ww(:,:,:) 
    169       hdivn => hdiv(:,:,:) 
    170  
    171       sshb =>  ssh(:,:,Kbb); sshn =>  ssh(:,:,Kmm); ssha =>  ssh(:,:,Kaa) 
    172       ub_b => uu_b(:,:,Kbb); un_b => uu_b(:,:,Kmm); ua_b => uu_b(:,:,Kaa) 
    173       vb_b => vv_b(:,:,Kbb); vn_b => vv_b(:,:,Kmm); va_b => vv_b(:,:,Kaa) 
    174  
    175       tsb => ts(:,:,:,:,Kbb); tsn => ts(:,:,:,:,Kmm); tsa => ts(:,:,:,:,Kaa) 
    176  
    177       e3t_b => e3t(:,:,:,Kbb); e3t_n => e3t(:,:,:,Kmm); e3t_a => e3t(:,:,:,Kaa) 
    178       e3u_b => e3u(:,:,:,Kbb); e3u_n => e3u(:,:,:,Kmm); e3u_a => e3u(:,:,:,Kaa) 
    179       e3v_b => e3v(:,:,:,Kbb); e3v_n => e3v(:,:,:,Kmm); e3v_a => e3v(:,:,:,Kaa) 
    180  
    181       e3f_n => e3f(:,:,:) 
    182  
    183       e3w_b  => e3w (:,:,:,Kbb); e3w_n  => e3w (:,:,:,Kmm) 
    184       e3uw_b => e3uw(:,:,:,Kbb); e3uw_n => e3uw(:,:,:,Kmm) 
    185       e3vw_b => e3vw(:,:,:,Kbb); e3vw_n => e3vw(:,:,:,Kmm) 
    186  
    187       gdept_b => gdept(:,:,:,Kbb); gdept_n => gdept(:,:,:,Kmm)  
    188       gdepw_b => gdepw(:,:,:,Kbb); gdepw_n => gdepw(:,:,:,Kmm)  
    189       gde3w_n => gde3w(:,:,:) 
    190  
    191    END SUBROUTINE update_pointers 
    192  
    193154   !!====================================================================== 
    194155END MODULE step 
Note: See TracChangeset for help on using the changeset viewer.