diff --git a/src/pelagic_base.F90 b/src/pelagic_base.F90 index 446a109..afa2270 100644 --- a/src/pelagic_base.F90 +++ b/src/pelagic_base.F90 @@ -331,7 +331,8 @@ subroutine do_bottom(self,_ARGUMENTS_DO_BOTTOM_) ! Retrieve sinking rate (at centre of cell closest to the bottom) ! NB by ERSEM convention, this rate is returned in m/d, positive for sinking, negative for floating! - w = self%get_sinking_rate(_ARGUMENTS_LOCAL_) + ! Avoid negative sinking rate across the pelagic-benthic boundary to stop mass being moved from benthos to pelagic as conceptually incorrect for vertical movement + w = max(0._rk,self%get_sinking_rate(_ARGUMENTS_LOCAL_)) ! Store near-bed vertical velocity. Use FABM convention (m/s, negative for downward) to ! allow this custom fuctionality to be ultimately be replaced by a FABM API.