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 15574 for NEMO/branches/2021/dev_r14318_RK3_stage1/src/TOP/PISCES/SED/sed.F90 – NEMO

Ignore:
Timestamp:
2021-12-03T20:32:50+01:00 (3 years ago)
Author:
techene
Message:

#2605 #2715 trunk merged into dev_r14318_RK3_stage1

Location:
NEMO/branches/2021/dev_r14318_RK3_stage1
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2021/dev_r14318_RK3_stage1

    • Property svn:externals
      •  

        old new  
        99 
        1010# SETTE 
        11 ^/utils/CI/sette@14244        sette 
         11^/utils/CI/sette@HEAD        sette 
         12 
  • NEMO/branches/2021/dev_r14318_RK3_stage1/src/TOP/PISCES/SED/sed.F90

    r14086 r15574  
    77   !!        !  06-12  (C. Ethe)  Orignal 
    88   !!---------------------------------------------------------------------- 
     9   USE par_sed 
    910   USE oce_sed 
    1011   USE in_out_manager 
     
    2728   REAL(wp), PUBLIC               ::  reac_fe2            !: reactivity of Fe2+ in  [l.mol-1.s-1] 
    2829   REAL(wp), PUBLIC               ::  reac_feh2s          !: reactivity of Fe2+ in  [l.mol-1.s-1] 
    29    REAL(wp), PUBLIC               ::  reac_fes            !: reactivity of Fe with H2S in  [l.mol-1.s-1] 
    3030   REAL(wp), PUBLIC               ::  reac_feso           !: reactivity of FeS with O2 in  [l.mol-1.s-1] 
     31   REAL(wp), PUBLIC               ::  reac_fesp           !: precipitation of FeS  [mol.l-1.s-1] 
     32   REAL(wp), PUBLIC               ::  reac_fesd           !: Dissolution  of FeS  [s-1] 
    3133   REAL(wp), PUBLIC               ::  reac_cal            !: reactivity of cal in  [l.mol-1.s-1] 
    3234   REAL(wp), PUBLIC               ::  adsnh4              !: adsorption coefficient of NH4 
     35   REAL(wp), PUBLIC               ::  adsfe2              !: adsorption coefficient of Fe2 
    3336   REAL(wp), PUBLIC               ::  ratligc             !: C/L ratio in POC 
    3437   REAL(wp), PUBLIC               ::  so2ut  
     
    3740   REAL(wp), PUBLIC               ::  srDnit  
    3841   REAL(wp), PUBLIC               ::  dtsed               !: sedimentation time step 
    39    REAL(wp), PUBLIC               ::  dtsed2              !: sedimentation time step 
    4042   INTEGER , PUBLIC               ::  nitsed000 
    4143   INTEGER , PUBLIC               ::  nitsedend 
    42    INTEGER, PUBLIC                ::  nrseddt 
    43    REAL    , PUBLIC               ::  sedmask 
    44    REAL(wp), PUBLIC               ::  denssol                !: density of solid material 
    4544   LOGICAL , PUBLIC               ::  lrst_sed       !: logical to control the trc restart write 
    4645   LOGICAL , PUBLIC               ::  ln_rst_sed  = .TRUE.     !: initialisation from a restart file or not 
     
    5554   CHARACTER(len = 80) , PUBLIC   ::  cn_sedrst_out  !: suffix of pass. tracer restart name (output) 
    5655   CHARACTER(len = 256), PUBLIC   ::  cn_sedrst_outdir  !: restart output directory 
     56   INTEGER, PUBLIC                ::  nrosorder  !: order of the rosenbrock method 
     57   REAL(wp), PUBLIC               ::  rosatol   !: Tolerance for absolute error 
     58   REAL(wp), PUBLIC               ::  rosrtol   !: Tolerance for relative error 
    5759 
    5860   ! 
    59    REAL(wp), PUBLIC, DIMENSION(:,:,:), ALLOCATABLE ::  pwcp       !: pore water sediment data at given time-step 
    60    REAL(wp), PUBLIC, DIMENSION(:,:,:), ALLOCATABLE ::  pwcp0      !: pore water sediment data at initial time 
    61    REAL(wp), PUBLIC, DIMENSION(:,:,:), ALLOCATABLE ::  solcp      !: solid sediment data at given time-step 
    62    REAL(wp), PUBLIC, DIMENSION(:,:,:), ALLOCATABLE ::  solcp0     !: solid sediment data at initial time 
    63    REAL(wp), PUBLIC, DIMENSION(:,:,:), ALLOCATABLE ::  diff 
     61   REAL(wp), PUBLIC, DIMENSION(:,:,:),  ALLOCATABLE ::  pwcp, pwcpa 
     62   REAL(wp), PUBLIC, DIMENSION(:,:,:),  ALLOCATABLE ::  solcp, solcpa 
     63   REAL(wp), PUBLIC, DIMENSION(:,:,:),  ALLOCATABLE ::  diff 
    6464 
    6565   !! * Shared module variables 
    6666   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  pwcp_dta   !: pore water data at given time-step 
    6767   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  rainrm_dta !: rain data at at initial time 
    68    REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  rainrm     !: rain data at given time-step 
    6968   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  rainrg     !: rain of each solid component in [g/(cm**2.s)] 
    7069   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  fromsed    !: 
    7170   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  tosed      !: 
    72    REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  rloss      !:  
    73    REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  tokbot         
     71   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  rearatpom  !:  
     72   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  apluss, aminuss  !:  
    7473   ! 
    7574   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  temp       !: temperature 
    7675   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  salt       !: salinity 
    77    REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  press      !: pressure 
    78    REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  raintg     !: total massic flux rained in each cell (sum of sol. comp.) 
    7976   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  fecratio   !: Fe/C ratio in falling particles to the sediments 
    80    REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  dzdep      !: total thickness of solid material rained [cm] in each cell 
     77   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  dzdep, slatit, slongit   !: total thickness of solid material rained [cm] in each cell 
    8178   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  zkbot      !: total thickness of solid material rained [cm] in each cell 
    8279   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  wacc       !: total thickness of solid material rained [cm] in each cell 
     
    8784   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  volw3d     !:  ??? 
    8885   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  vols3d     !:  ??? 
     86   REAL(wp), PUBLIC, DIMENSION(:,:,:), ALLOCATABLE ::  volc 
     87   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  dens_sol   !: Density of each solid fraction 
    8988 
    9089 
     
    104103   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  ak123ps 
    105104   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  aksis  
     105   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  aknh3 
    106106   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  aksps  
     107   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  akh2s 
    107108   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  sieqs 
    108109   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  aks3s 
     
    117118   INTEGER , PUBLIC, SAVE                          ::  jpoce, indoce !: Ocean points ( number/indices ) 
    118119   INTEGER , PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  iarroce       !: Computation of 1D array of sediments points 
     120   INTEGER , PUBLIC, DIMENSION(:, : ), ALLOCATABLE ::  jarr       !: Computation of 1D array of sediments points 
     121   INTEGER , PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  jsvode, isvode   !: Computation of 1D array of sediments points 
     122 
    119123   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  epkbot        !: ocean bottom layer thickness 
    120124   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  gdepbot       !: Depth of the sediment 
     
    127131   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  db            !: bioturbation ceofficient 
    128132   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  irrig        !: bioturbation ceofficient 
     133   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  radssol, rads1sol 
     134   REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE ::  saturco3 
    129135   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  rdtsed        !:  sediment model time-step 
    130    REAL(wp), PUBLIC, DIMENSION(:,:  ), ALLOCATABLE :: sedligand 
     136   REAL(wp), PUBLIC, DIMENSION(:    ), ALLOCATABLE ::  rstepros      !:  Number of iteration of rosenbrock method 
    131137   REAL(wp)  ::   dens               !: density of solid material 
    132138   !! Inputs / Outputs 
     
    138144   CHARACTER( len = 20 ), DIMENSION(jpdia2dsed) ::  seddia2d, seddia2u 
    139145   ! 
    140    REAL(wp), PUBLIC, DIMENSION(:,:,:,:), ALLOCATABLE ::  trcsedi 
    141    REAL(wp), PUBLIC, DIMENSION(:,:,:,:), ALLOCATABLE ::  flxsedi3d 
    142    REAL(wp), PUBLIC, DIMENSION(:,:,:  ), ALLOCATABLE ::  flxsedi2d 
    143146 
    144147   INTEGER, PUBLIC ::  numsed = 27    ! units 
     
    158161         &      dz(jpksed)  , por(jpksed) , por1(jpksed)                  ,   & 
    159162         &      volw(jpksed), vols(jpksed), rdtsed(jpksed)  ,   & 
    160          &      trcsedi  (jpi,jpj,jpksed,jptrased)                        ,   & 
    161          &      flxsedi3d(jpi,jpj,jpksed,jpdia3dsed)                      ,   & 
    162          &      flxsedi2d(jpi,jpj,jpdia2dsed)                             ,   & 
    163163         &      mol_wgt(jpsol),                                           STAT=sed_alloc ) 
    164164 
Note: See TracChangeset for help on using the changeset viewer.