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

Changeset 10574


Ignore:
Timestamp:
2019-01-24T16:48:24+01:00 (6 years ago)
Author:
dford
Message:

Merge in functionality added to GO6 at r10149.

Location:
branches/UKMO/AMM15_v3_6_STABLE_package_collate_BGC_DA/NEMOGCM
Files:
7 edited
4 copied

Legend:

Unmodified
Added
Removed
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_BGC_DA/NEMOGCM/CONFIG/SHARED/namelist_ref

    r10268 r10574  
    12571257&nam_asminc   !   assimilation increments                               ('key_asminc') 
    12581258!----------------------------------------------------------------------- 
    1259     ln_bkgwri = .false.    !  Logical switch for writing out background state 
    1260     ln_trainc = .false.    !  Logical switch for applying tracer increments 
    1261     ln_dyninc = .false.    !  Logical switch for applying velocity increments 
    1262     ln_sshinc = .false.    !  Logical switch for applying SSH increments 
    1263     ln_asmdin = .false.    !  Logical switch for Direct Initialization (DI) 
    1264     ln_asmiau = .false.    !  Logical switch for Incremental Analysis Updating (IAU) 
    1265     nitbkg    = 0          !  Timestep of background in [0,nitend-nit000-1] 
    1266     nitdin    = 0          !  Timestep of background for DI in [0,nitend-nit000-1] 
    1267     nitiaustr = 1          !  Timestep of start of IAU interval in [0,nitend-nit000-1] 
    1268     nitiaufin = 15         !  Timestep of end of IAU interval in [0,nitend-nit000-1] 
    1269     niaufn    = 0          !  Type of IAU weighting function 
    1270     ln_salfix = .false.    !  Logical switch for ensuring that the sa > salfixmin 
    1271     salfixmin = -9999      !  Minimum salinity after applying the increments 
    1272     nn_divdmp = 0          !  Number of iterations of divergence damping operator 
     1259    ln_bkgwri      = .false. !  Logical switch for writing out background state 
     1260    ln_balwri      = .false. !  Logical switch for writing out balancing increments 
     1261    ln_trainc      = .false. !  Logical switch for applying tracer increments 
     1262    ln_dyninc      = .false. !  Logical switch for applying velocity increments 
     1263    ln_sshinc      = .false. !  Logical switch for applying SSH increments 
     1264    ln_asmdin      = .false. !  Logical switch for Direct Initialization (DI) 
     1265    ln_asmiau      = .false. !  Logical switch for Incremental Analysis Updating (IAU) 
     1266    ln_phytobal    = .false. !  Logical switch for phytoplankton multivariate balancing 
     1267    ln_slchltotinc = .false. !  Logical switch for applying slchltot increments 
     1268    ln_slchldiainc = .false. !  Logical switch for applying slchldia increments 
     1269    ln_slchlnoninc = .false. !  Logical switch for applying slchlnon increments 
     1270    ln_schltotinc  = .false. !  Logical switch for applying schltot increments 
     1271    ln_slphytotinc = .false. !  Logical switch for applying slphytot increments 
     1272    ln_slphydiainc = .false. !  Logical switch for applying slphydia increments 
     1273    ln_slphynoninc = .false. !  Logical switch for applying slphynon increments 
     1274    ln_sfco2inc    = .false. !  Logical switch for applying sfCO2 increments 
     1275    ln_spco2inc    = .false. !  Logical switch for applying spCO2 increments 
     1276    ln_plchltotinc = .false. !  Logical switch for applying plchltot increments 
     1277    ln_pchltotinc  = .false. !  Logical switch for applying pchltot increments 
     1278    ln_pno3inc     = .false. !  Logical switch for applying pno3 increments 
     1279    ln_psi4inc     = .false. !  Logical switch for applying psi4 increments 
     1280    ln_pdicinc     = .false. !  Logical switch for applying pdic increments 
     1281    ln_palkinc     = .false. !  Logical switch for applying palk increments 
     1282    ln_pphinc      = .false. !  Logical switch for applying pph increments 
     1283    ln_po2inc      = .false. !  Logical switch for applying po2 increments 
     1284    nitbkg         = 0       !  Timestep of background in [0,nitend-nit000-1] 
     1285    nitdin         = 0       !  Timestep of background for DI in [0,nitend-nit000-1] 
     1286    nitiaustr      = 1       !  Timestep of start of IAU interval in [0,nitend-nit000-1] 
     1287    nitiaufin      = 15      !  Timestep of end of IAU interval in [0,nitend-nit000-1] 
     1288    niaufn         = 0       !  Type of IAU weighting function 
     1289    ln_salfix      = .false. !  Logical switch for ensuring that the sa > salfixmin 
     1290    salfixmin      = -9999   !  Minimum salinity after applying the increments 
     1291    nn_divdmp      = 0       !  Number of iterations of divergence damping operator 
     1292    mld_choice_bgc = 1       !  MLD criterion to use for biogeochemistry assimilation 
     1293    rn_maxchlinc   = -999.0  !  maximum absolute non-log chlorophyll increment from ocean colour assimilation 
     1294                             !  <= 0 implies no maximum applied (switch turned off) 
     1295                             !   > 0 implies maximum absolute chl increment capped at this value 
    12731296/ 
    12741297!----------------------------------------------------------------------- 
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_BGC_DA/NEMOGCM/NEMO/OPA_SRC/ASM/asmbgc.F90

    r10149 r10574  
    436436      !! 
    437437      INTEGER,                      INTENT(in   ) :: knum       ! i/o unit 
    438       CHARACTER(LEN=13),            INTENT(in   ) :: cd_bgcname ! variable 
     438      CHARACTER(LEN=*),             INTENT(in   ) :: cd_bgcname ! variable 
    439439      REAL(wp), DIMENSION(jpi,jpj), INTENT(  out) :: p_incs     ! increments 
    440440      !! 
     
    474474      !! 
    475475      INTEGER,                          INTENT(in   ) :: knum       ! i/o unit 
    476       CHARACTER(LEN=13),                INTENT(in   ) :: cd_bgcname ! variable 
     476      CHARACTER(LEN=*),                 INTENT(in   ) :: cd_bgcname ! variable 
    477477      REAL(wp), DIMENSION(jpi,jpj,jpk), INTENT(  out) :: p_incs     ! increments 
    478478      !! 
     
    894894      REAL(wp), DIMENSION(kcycper), INTENT(IN) :: pwgtiau   ! IAU weights 
    895895      ! 
    896       INTEGER                      :: jk          ! Loop counter 
    897896      INTEGER                      :: it          ! Index 
    898897      REAL(wp)                     :: zincwgt     ! IAU weight for current time step 
     
    18441843      REAL(wp), DIMENSION(kcycper), INTENT(IN) :: pwgtiau   ! IAU weights 
    18451844      ! 
    1846       INTEGER  :: jk              ! Loop counter 
    18471845      INTEGER  :: it              ! Index 
    18481846      REAL(wp) :: zincwgt         ! IAU weight for current time step 
    1849       REAL(wp) :: zincper         ! IAU interval in seconds 
    18501847      !!---------------------------------------------------------------------- 
    18511848 
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_BGC_DA/NEMOGCM/NEMO/OPA_SRC/ASM/asmbkg.F90

    r9180 r10574  
    5151#endif 
    5252   USE asminc, ONLY: ln_avgbkg 
     53#if defined key_top 
     54   USE asmbgc, ONLY: asm_bgc_bkg_wri 
     55#endif 
    5356   IMPLICIT NONE 
    5457   PRIVATE 
     
    222225            ENDIF 
    223226             
     227#if defined key_top 
     228            CALL asm_bgc_bkg_wri( kt, inum ) 
     229#endif 
    224230            CALL iom_close( inum ) 
    225231 
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_BGC_DA/NEMOGCM/NEMO/OPA_SRC/ASM/asminc.F90

    r9537 r10574  
    5252   USE bdy_oce, ONLY: bdytmask   
    5353#endif   
     54   USE asmbgc           ! Biogeochemistry assimilation 
    5455 
    5556   IMPLICIT NONE 
     
    6263   PUBLIC   ssh_asm_inc    !: Apply the SSH increment 
    6364   PUBLIC   seaice_asm_inc !: Apply the seaice increment 
     65   PUBLIC   bgc_asm_inc    !: Apply the biogeochemistry increments 
    6466 
    6567#if defined key_asminc 
     
    7678   LOGICAL, PUBLIC :: ln_sshinc = .FALSE.      !: No sea surface height assimilation increment 
    7779   LOGICAL, PUBLIC :: ln_seaiceinc             !: No sea ice concentration increment 
     80   LOGICAL, PUBLIC :: lk_bgcinc = .FALSE.      !: No biogeochemistry increments 
    7881   LOGICAL, PUBLIC :: ln_salfix = .FALSE.      !: Apply minimum salinity check 
    7982   LOGICAL, PUBLIC :: ln_temnofreeze = .FALSE. !: Don't allow the temperature to drop below freezing 
     
    161164                               !               so only apply surft increments. 
    162165      !! 
    163       NAMELIST/nam_asminc/ ln_bkgwri, ln_avgbkg,                           & 
     166      NAMELIST/nam_asminc/ ln_bkgwri, ln_avgbkg, ln_balwri,                & 
    164167         &                 ln_trainc, ln_dyninc, ln_sshinc,                & 
     168         &                 ln_phytobal, ln_slchltotinc, ln_slchldiainc,    & 
     169         &                 ln_slchlnoninc, ln_schltotinc, ln_slphytotinc,  & 
     170         &                 ln_slphydiainc, ln_slphynoninc, ln_spco2inc,    & 
     171         &                 ln_sfco2inc, ln_plchltotinc, ln_pchltotinc,     & 
     172         &                 ln_pno3inc, ln_psi4inc, ln_pdicinc, ln_palkinc, & 
     173         &                 ln_pphinc, ln_po2inc,                           & 
    165174         &                 ln_asmdin, ln_asmiau,                           & 
    166175         &                 nitbkg, nitdin, nitiaustr, nitiaufin, niaufn,   & 
    167          &                 ln_salfix, salfixmin, nn_divdmp, nitavgbkg, mld_choice 
     176         &                 ln_salfix, salfixmin, nn_divdmp, nitavgbkg,     & 
     177         &                 mld_choice, mld_choice_bgc, rn_maxchlinc 
    168178      !!---------------------------------------------------------------------- 
    169179 
     
    205215         WRITE(numout,*) 'asm_inc_init : Assimilation increment initialization :' 
    206216         WRITE(numout,*) '~~~~~~~~~~~~' 
    207          WRITE(numout,*) '   Namelist namasm : set assimilation increment parameters' 
     217         WRITE(numout,*) '   Namelist nam_asminc : set assimilation increment parameters' 
    208218         WRITE(numout,*) '      Logical switch for writing out background state          ln_bkgwri = ', ln_bkgwri 
    209219         WRITE(numout,*) '      Logical switch for writing mean background state         ln_avgbkg = ', ln_avgbkg 
     220         WRITE(numout,*) '      Logical switch for writing out balancing increments      ln_balwri = ', ln_balwri 
    210221         WRITE(numout,*) '      Logical switch for applying tracer increments            ln_trainc = ', ln_trainc 
    211222         WRITE(numout,*) '      Logical switch for applying velocity increments          ln_dyninc = ', ln_dyninc 
     
    213224         WRITE(numout,*) '      Logical switch for Direct Initialization (DI)            ln_asmdin = ', ln_asmdin 
    214225         WRITE(numout,*) '      Logical switch for applying sea ice increments        ln_seaiceinc = ', ln_seaiceinc 
     226         WRITE(numout,*) '      Logical switch for phytoplankton balancing             ln_phytobal = ', ln_phytobal 
     227         WRITE(numout,*) '      Logical switch for applying slchltot increments     ln_slchltotinc = ', ln_slchltotinc 
     228         WRITE(numout,*) '      Logical switch for applying slchldia increments     ln_slchldiainc = ', ln_slchldiainc 
     229         WRITE(numout,*) '      Logical switch for applying slchlnon increments     ln_slchlnoninc = ', ln_slchlnoninc 
     230         WRITE(numout,*) '      Logical switch for applying schltot increments       ln_schltotinc = ', ln_schltotinc 
     231         WRITE(numout,*) '      Logical switch for applying slphytot increments     ln_slphytotinc = ', ln_slphytotinc 
     232         WRITE(numout,*) '      Logical switch for applying slphydia increments     ln_slphydiainc = ', ln_slphydiainc 
     233         WRITE(numout,*) '      Logical switch for applying slphynon increments     ln_slphynoninc = ', ln_slphynoninc 
     234         WRITE(numout,*) '      Logical switch for applying spco2 increments           ln_spco2inc = ', ln_spco2inc 
     235         WRITE(numout,*) '      Logical switch for applying sfco2 increments           ln_sfco2inc = ', ln_sfco2inc 
     236         WRITE(numout,*) '      Logical switch for applying plchltot increments     ln_plchltotinc = ', ln_plchltotinc 
     237         WRITE(numout,*) '      Logical switch for applying pchltot increments       ln_pchltotinc = ', ln_pchltotinc 
     238         WRITE(numout,*) '      Logical switch for applying pno3 increments             ln_pno3inc = ', ln_pno3inc 
     239         WRITE(numout,*) '      Logical switch for applying psi4 increments             ln_psi4inc = ', ln_psi4inc 
     240         WRITE(numout,*) '      Logical switch for applying pdic increments             ln_pdicinc = ', ln_pdicinc 
     241         WRITE(numout,*) '      Logical switch for applying palk increments             ln_palkinc = ', ln_palkinc 
     242         WRITE(numout,*) '      Logical switch for applying pph increments               ln_pphinc = ', ln_pphinc 
     243         WRITE(numout,*) '      Logical switch for applying po2 increments               ln_po2inc = ', ln_po2inc 
    215244         WRITE(numout,*) '      Logical switch for Incremental Analysis Updating (IAU)   ln_asmiau = ', ln_asmiau 
    216245         WRITE(numout,*) '      Timestep of background in [0,nitend-nit000-1]            nitbkg    = ', nitbkg 
     
    223252         WRITE(numout,*) '      Minimum salinity after applying the increments           salfixmin = ', salfixmin 
    224253         WRITE(numout,*) '      Choice of MLD for physics assimilation                  mld_choice = ', mld_choice 
     254         WRITE(numout,*) '      Choice of MLD for BGC assimilation                  mld_choice_bgc = ', mld_choice_bgc 
     255         WRITE(numout,*) '      Maximum absolute chlorophyll increment (<=0 = off)    rn_maxchlinc = ', rn_maxchlinc 
    225256      ENDIF 
    226257 
     
    263294         WRITE(numout,*) '       iitavgbkg_date = ', iitavgbkg_date 
    264295      ENDIF 
     296      IF ( ln_slchltotinc .OR. ln_slchldiainc .OR. ln_slchlnoninc .OR. & 
     297         & ln_schltotinc  .OR. ln_slphytotinc .OR. ln_slphydiainc .OR. & 
     298         & ln_slphynoninc .OR. ln_spco2inc    .OR. ln_sfco2inc    .OR. & 
     299         & ln_plchltotinc .OR. ln_pchltotinc  .OR. ln_pno3inc     .OR. & 
     300         & ln_psi4inc     .OR. ln_pdicinc     .OR. ln_palkinc     .OR. & 
     301         & ln_pphinc      .OR. ln_po2inc ) THEN 
     302         lk_bgcinc = .TRUE. 
     303      ENDIF 
    265304 
    266305      IF ( nacc /= 0 ) & 
     
    274313 
    275314      IF (      ( ( .NOT. ln_asmdin ).AND.( .NOT. ln_asmiau ) ) & 
    276            .AND.( ( ln_trainc ).OR.( ln_dyninc ).OR.( ln_sshinc ) .OR. ( ln_seaiceinc) )) & 
    277          & CALL ctl_stop( ' One or more of ln_trainc, ln_dyninc, ln_sshinc and ln_seaiceinc is set to .true.', & 
     315         & .AND.( ( ln_trainc ).OR.( ln_dyninc ).OR.( ln_sshinc ).OR.( ln_seaiceinc ).OR. & 
     316         &        ( lk_bgcinc ) )) & 
     317         & CALL ctl_stop( ' One or more of ln_trainc, ln_dyninc, ln_sshinc, ln_seaiceinc,', & 
     318         &                ' ln_(bgc-variable)inc is set to .true.', & 
    278319         &                ' but ln_asmdin and ln_asmiau are both set to .false. :', & 
    279320         &                ' Inconsistent options') 
     
    284325 
    285326      IF ( ( .NOT. ln_trainc ).AND.( .NOT. ln_dyninc ).AND.( .NOT. ln_sshinc ).AND.( .NOT. ln_seaiceinc ) & 
    286          &                     )  & 
    287          & CALL ctl_warn( ' ln_trainc, ln_dyninc, ln_sshinc and ln_seaiceinc are set to .false. :', & 
     327         & .AND.( .NOT. lk_bgcinc ) )  & 
     328         & CALL ctl_warn( ' ln_trainc, ln_dyninc, ln_sshinc, ln_seaiceinc,', & 
     329         &                ' ln_(bgc-variable)inc are set to .false. :', & 
    288330         &                ' The assimilation increments are not applied') 
    289331 
     
    310352         &                ' Assim bkg averaging period is outside', & 
    311353         &                ' the cycle interval') 
     354       
     355      IF ( lk_bgcinc ) CALL asm_bgc_check_options 
    312356 
    313357      IF ( nstop > 0 ) RETURN       ! if there are any errors then go no further 
     
    412456      ssh_iau(:,:)    = 0.0 
    413457#endif 
    414       IF ( ( ln_trainc ).OR.( ln_dyninc ).OR.( ln_sshinc ).OR.( ln_seaiceinc ) ) THEN 
     458      IF ( ( ln_trainc ).OR.( ln_dyninc ).OR.( ln_sshinc ).OR.( ln_seaiceinc ) & 
     459         &  .OR.( lk_bgcinc ) ) THEN 
    415460 
    416461         !-------------------------------------------------------------------- 
     
    545590         ENDIF 
    546591 
     592         IF ( lk_bgcinc ) THEN 
     593            CALL asm_bgc_init_incs( inum ) 
     594         ENDIF 
     595 
    547596         CALL iom_close( inum ) 
    548597  
     
    655704         CALL iom_close( inum ) 
    656705 
     706      ENDIF 
     707          
     708      IF ( lk_bgcinc ) THEN 
     709         CALL asm_bgc_init_bkg 
    657710      ENDIF 
    658711      ! 
     
    12761329 
    12771330   END SUBROUTINE seaice_asm_inc 
     1331 
     1332 
     1333   SUBROUTINE bgc_asm_inc( kt ) 
     1334      !!---------------------------------------------------------------------- 
     1335      !!                    ***  ROUTINE bgc_asm_inc  *** 
     1336      !!           
     1337      !! ** Purpose : Apply the biogeochemistry assimilation increments 
     1338      !! 
     1339      !! ** Method  : Call relevant routines in asmbgc 
     1340      !! 
     1341      !! ** Action  : Call relevant routines in asmbgc 
     1342      !! 
     1343      !!---------------------------------------------------------------------- 
     1344      !! 
     1345      INTEGER, INTENT(in   ) :: kt        ! Current time step 
     1346      ! 
     1347      INTEGER                :: icycper   ! Dimension of wgtiau 
     1348      !! 
     1349      !!---------------------------------------------------------------------- 
     1350       
     1351      icycper = SIZE( wgtiau ) 
     1352       
     1353      ! Ocean colour variables first 
     1354      IF ( ln_slchltotinc .OR. ln_slchldiainc .OR. ln_slchlnoninc .OR. & 
     1355         & ln_schltotinc  .OR. ln_slphytotinc .OR. ln_slphydiainc .OR. & 
     1356         & ln_slphynoninc ) THEN 
     1357         CALL phyto2d_asm_inc( kt, ln_asmdin, ln_asmiau, icycper, wgtiau ) 
     1358      ENDIF 
     1359       
     1360      ! Surface pCO2/fCO2 next 
     1361      IF ( ln_sfco2inc .OR. ln_spco2inc ) THEN 
     1362         CALL pco2_asm_inc( kt, ln_asmdin, ln_asmiau, icycper, wgtiau, & 
     1363            &               ln_trainc, t_bkginc, s_bkginc ) 
     1364      ENDIF 
     1365       
     1366      ! Profile pH next 
     1367      IF ( ln_pphinc ) THEN 
     1368         CALL ph_asm_inc( kt, ln_asmdin, ln_asmiau, icycper, wgtiau, & 
     1369            &             ln_trainc, t_bkginc, s_bkginc ) 
     1370      ENDIF 
     1371       
     1372      ! Then chlorophyll profiles 
     1373      IF ( ln_plchltotinc .OR. ln_pchltotinc ) THEN 
     1374         CALL phyto3d_asm_inc( kt, ln_asmdin, ln_asmiau, icycper, wgtiau ) 
     1375      ENDIF 
     1376       
     1377      ! Remaining bgc profile variables 
     1378      IF ( ln_pno3inc .OR. ln_psi4inc .OR. ln_pdicinc .OR. & 
     1379         & ln_palkinc .OR. ln_po2inc ) THEN 
     1380         CALL bgc3d_asm_inc( kt, ln_asmdin, ln_asmiau, icycper, wgtiau ) 
     1381      ENDIF 
     1382 
     1383   END SUBROUTINE bgc_asm_inc 
    12781384    
    12791385   !!====================================================================== 
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_BGC_DA/NEMOGCM/NEMO/OPA_SRC/ASM/asmpar.F90

    r9180 r10574  
    2020      & c_asmtrj = 'assim_trj',                  & !: Filename for storing the  
    2121                                                   !: reference trajectory 
    22       & c_asminc = 'assim_background_increments'  !: Filename for storing the  
     22      & c_asminc = 'assim_background_increments', & !: Filename for storing the  
    2323                                                   !: increments to the background 
    2424                                                   !: state 
     25      & c_asmbal = 'assim.balincs'                 !: Filename for storing the  
     26                                                   !: balancing increments calculated 
     27                                                   !: for biogeochemistry 
    2528 
    2629   INTEGER, PUBLIC :: nitbkg_r      !: Background time step referenced to nit000 
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_BGC_DA/NEMOGCM/NEMO/OPA_SRC/ZDF/zdftmx.F90

    r8058 r10574  
    3838   LOGICAL, PUBLIC, PARAMETER ::   lk_zdftmx = .TRUE.    !: tidal mixing flag 
    3939 
    40    !                       !!* Namelist  namzdf_tmx : tidal mixing * 
    41    REAL(wp) ::  rn_htmx     ! vertical decay scale for turbulence (meters) 
    42    REAL(wp) ::  rn_n2min    ! threshold of the Brunt-Vaisala frequency (s-1) 
    43    REAL(wp) ::  rn_tfe      ! tidal dissipation efficiency (St Laurent et al. 2002) 
    44    REAL(wp) ::  rn_me       ! mixing efficiency (Osborn 1980) 
    45    LOGICAL  ::  ln_tmx_itf  ! Indonesian Through Flow (ITF): Koch-Larrouy et al. (2007) parameterization 
    46    REAL(wp) ::  rn_tfe_itf  ! ITF tidal dissipation efficiency (St Laurent et al. 2002) 
    47  
    48    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:)   ::   en_tmx     ! energy available for tidal mixing (W/m2) 
    49    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:)  ::   mask_itf   ! mask to use over Indonesian area 
    50    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   az_tmx     ! coefficient used to evaluate the tidal induced Kz 
     40   !                              !!* Namelist  namzdf_tmx : tidal mixing * 
     41   REAL(wp)        ::  rn_htmx     ! vertical decay scale for turbulence (meters) 
     42   REAL(wp)        ::  rn_n2min    ! threshold of the Brunt-Vaisala frequency (s-1) 
     43   REAL(wp)        ::  rn_tfe      ! tidal dissipation efficiency (St Laurent et al. 2002) 
     44   REAL(wp)        ::  rn_me       ! mixing efficiency (Osborn 1980) 
     45   LOGICAL, PUBLIC ::  ln_tmx_itf  ! Indonesian Through Flow (ITF): Koch-Larrouy et al. (2007) parameterization 
     46   REAL(wp)        ::  rn_tfe_itf  ! ITF tidal dissipation efficiency (St Laurent et al. 2002) 
     47 
     48   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:)         ::   en_tmx     ! energy available for tidal mixing (W/m2) 
     49   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:), PUBLIC ::   mask_itf   ! mask to use over Indonesian area 
     50   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:)       ::   az_tmx     ! coefficient used to evaluate the tidal induced Kz 
    5151 
    5252   !! * Substitutions 
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_BGC_DA/NEMOGCM/NEMO/OPA_SRC/nemogcm.F90

    r9181 r10574  
    6161   USE asminc          ! assimilation increments      
    6262   USE asmbkg          ! writing out state trajectory 
     63   USE asmbgc          ! biogeochemical assimilation increments 
    6364   USE diaptr          ! poleward transports           (dia_ptr_init routine) 
    6465   USE diadct          ! sections transports           (dia_dct_init routine) 
     
    162163                IF( ln_dyninc ) CALL dyn_asm_inc( nit000 - 1 )    ! Dynamics 
    163164                IF( ln_sshinc ) CALL ssh_asm_inc( nit000 - 1 )    ! SSH 
     165                IF( lk_bgcinc ) CALL bgc_asm_inc( nit000 - 1 )    ! BGC 
    164166             ENDIF 
    165167          ENDIF 
     
    181183 
    182184      IF( lk_diaobs   )   CALL dia_obs_wri 
     185      ! 
     186      IF( ( lk_asminc ).AND.( ln_balwri ) ) CALL asm_bgc_bal_wri( nitend )  ! Output balancing increments 
    183187      ! 
    184188      IF( ln_icebergs )   CALL icb_end( nitend ) 
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_BGC_DA/NEMOGCM/NEMO/OPA_SRC/step.F90

    r9189 r10574  
    278278      ! Passive Tracer Model 
    279279      !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 
     280      IF( lk_asminc .AND. ln_asmiau .AND. lk_bgcinc ) & 
     281         &               CALL bgc_asm_inc( kstp )     ! biogeochemistry assimilation 
    280282                         CALL trc_stp( kstp )         ! time-stepping 
    281283#endif 
Note: See TracChangeset for help on using the changeset viewer.