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 9296 for branches/UKMO/dev_r5518_GO6_package_asm_3d_bgc/NEMOGCM/NEMO/OPA_SRC/ASM/asmbkg.F90 – NEMO

Ignore:
Timestamp:
2018-01-31T16:27:16+01:00 (6 years ago)
Author:
dford
Message:

Move most of the BGC assimilation code into its own module, to make it more portable across versions/configurations. Partially apply the new naming conventions for BGC obs.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/dev_r5518_GO6_package_asm_3d_bgc/NEMOGCM/NEMO/OPA_SRC/ASM/asmbkg.F90

    r9292 r9296  
    5050   USE ice 
    5151#endif 
    52 #if defined key_hadocc 
    53    USE trc, ONLY: trn, & 
    54       &     pgrow_avg, & 
    55       &     ploss_avg, & 
    56       &     phyt_avg,  & 
    57       &     mld_max,   & 
    58       &     HADOCC_CHL 
    59    USE had_bgc_const, ONLY: cchl_p 
    60    USE par_hadocc 
    61 #elif defined key_medusa && defined key_foam_medusa 
    62    USE trc, ONLY: trn 
    63    USE sms_medusa, ONLY: pgrow_avg, & 
    64       &                  ploss_avg, & 
    65       &                  phyt_avg,  & 
    66       &                  mld_max 
    67    USE par_medusa 
     52#if defined key_top 
     53   USE asmbgc, ONLY: asm_bgc_bkg_wri 
    6854#endif 
    6955   IMPLICIT NONE 
     
    138124!            CALL iom_rstput( kt, nitbkg_r, inum, 'gcx'    , gcx               ) 
    139125            CALL iom_rstput( kt, nitbkg_r, inum, 'avt'    , avt               ) 
    140 #if defined key_hadocc 
    141             CALL iom_rstput( kt, nitbkg_r, inum, 'pgrow_avg'   , pgrow_avg             ) 
    142             CALL iom_rstput( kt, nitbkg_r, inum, 'ploss_avg'   , ploss_avg             ) 
    143             CALL iom_rstput( kt, nitbkg_r, inum, 'phyt_avg'    , phyt_avg              ) 
    144             CALL iom_rstput( kt, nitbkg_r, inum, 'mld_max'     , mld_max               ) 
    145             CALL iom_rstput( kt, nitbkg_r, inum, 'hadocc_nut'  , trn(:,:,:,jp_had_nut) ) 
    146             CALL iom_rstput( kt, nitbkg_r, inum, 'hadocc_phy'  , trn(:,:,:,jp_had_phy) ) 
    147             CALL iom_rstput( kt, nitbkg_r, inum, 'hadocc_zoo'  , trn(:,:,:,jp_had_zoo) ) 
    148             CALL iom_rstput( kt, nitbkg_r, inum, 'hadocc_pdn'  , trn(:,:,:,jp_had_pdn) ) 
    149             CALL iom_rstput( kt, nitbkg_r, inum, 'hadocc_dic'  , trn(:,:,:,jp_had_dic) ) 
    150             CALL iom_rstput( kt, nitbkg_r, inum, 'hadocc_alk'  , trn(:,:,:,jp_had_alk) ) 
    151             CALL iom_rstput( kt, nitbkg_r, inum, 'hadocc_chl'  , HADOCC_CHL(:,:,1)     ) 
    152             CALL iom_rstput( kt, nitbkg_r, inum, 'hadocc_cchl' , cchl_p(:,:,1)         ) 
    153 #elif defined key_medusa && defined key_foam_medusa 
    154             CALL iom_rstput( kt, nitbkg_r, inum, 'pgrow_avg'   , pgrow_avg        ) 
    155             CALL iom_rstput( kt, nitbkg_r, inum, 'ploss_avg'   , ploss_avg        ) 
    156             CALL iom_rstput( kt, nitbkg_r, inum, 'phyt_avg'    , phyt_avg         ) 
    157             CALL iom_rstput( kt, nitbkg_r, inum, 'mld_max'     , mld_max          ) 
    158             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_chn'  , trn(:,:,:,jpchn) ) 
    159             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_chd'  , trn(:,:,:,jpchd) ) 
    160             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_phn'  , trn(:,:,:,jpphn) ) 
    161             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_phd'  , trn(:,:,:,jpphd) ) 
    162             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_pds'  , trn(:,:,:,jppds) ) 
    163             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_zmi'  , trn(:,:,:,jpzmi) ) 
    164             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_zme'  , trn(:,:,:,jpzme) ) 
    165             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_din'  , trn(:,:,:,jpdin) ) 
    166             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_sil'  , trn(:,:,:,jpsil) ) 
    167             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_fer'  , trn(:,:,:,jpfer) ) 
    168             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_det'  , trn(:,:,:,jpdet) ) 
    169             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_dtc'  , trn(:,:,:,jpdtc) ) 
    170             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_dic'  , trn(:,:,:,jpdic) ) 
    171             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_alk'  , trn(:,:,:,jpalk) ) 
    172             CALL iom_rstput( kt, nitbkg_r, inum, 'medusa_oxy'  , trn(:,:,:,jpoxy) ) 
     126            ! 
     127#if defined key_top 
     128            CALL asm_bgc_bkg_wri( kt, inum ) 
     129            ! 
    173130#endif 
    174             ! 
    175131            CALL iom_close( inum ) 
    176132         ENDIF 
Note: See TracChangeset for help on using the changeset viewer.