


Calculate critical shear stress in Pascals (equivalent to N/m^2)
function [wset] = ST_taucr(d,varargin)
DESCRIPTION:
Calculate critical shear stress for threshold of motion in Pa
INPUT:
d: sediment grain size in m
[optional] 'temperature' = temperature of the seawater in C [default=10]
[optional] 'salinity' = salinity of seawater in PSU [default=35]
[optional] 'sdens' = sediment density in kg/m^3 [default=2650]
OUTPUT:
taucr: critical shear stress in N/m^2
EXAMPLE USAGE
TCR = ST_taucr(.0005,'temperature',10,'salinity',35,'sdens',2650)
Author(s):
Geoff Cowles (University of Massachusetts Dartmouth)
Pierre Cazenave (Plymouth Marine Laboratory)
References
Soulsby Dynamics of Marine Sands (SC77)
Revision history
2017-03-27 Add support for matrices.
==============================================================================

0001 function [taucr] = ST_taucr(d,varargin) 0002 % Calculate critical shear stress in Pascals (equivalent to N/m^2) 0003 % 0004 % function [wset] = ST_taucr(d,varargin) 0005 % 0006 % DESCRIPTION: 0007 % Calculate critical shear stress for threshold of motion in Pa 0008 % 0009 % INPUT: 0010 % d: sediment grain size in m 0011 % [optional] 'temperature' = temperature of the seawater in C [default=10] 0012 % [optional] 'salinity' = salinity of seawater in PSU [default=35] 0013 % [optional] 'sdens' = sediment density in kg/m^3 [default=2650] 0014 % 0015 % OUTPUT: 0016 % taucr: critical shear stress in N/m^2 0017 % 0018 % EXAMPLE USAGE 0019 % TCR = ST_taucr(.0005,'temperature',10,'salinity',35,'sdens',2650) 0020 % 0021 % Author(s): 0022 % Geoff Cowles (University of Massachusetts Dartmouth) 0023 % Pierre Cazenave (Plymouth Marine Laboratory) 0024 % 0025 % References 0026 % Soulsby Dynamics of Marine Sands (SC77) 0027 % 0028 % Revision history 0029 % 2017-03-27 Add support for matrices. 0030 %============================================================================== 0031 0032 global ftbverbose 0033 [~, subname] = fileparts(mfilename('fullpath')); 0034 if ftbverbose 0035 fprintf('\nbegin : %s\n', subname) 0036 end 0037 0038 % constants 0039 grav = 9.8106; %g 0040 T = 10; %T (C) 0041 S = 35; %S (PSU) 0042 sdens = 2650; %sediment density in kg/m^3 0043 0044 % parse arguments 0045 for i=1:2:length(varargin)-1 0046 keyword = lower(varargin{i}); 0047 if( ~ischar(keyword) ) 0048 error('incorrect usage of ST_wset') 0049 end; 0050 0051 switch(keyword(1:3)) 0052 0053 case 'tem' 0054 T = varargin{i+1}; 0055 case 'sal' 0056 S = varargin{i+1}; 0057 case 'sde' 0058 sdens = varargin{i+1}; 0059 otherwise 0060 error(['Can''t understand value for:' keyword]); 0061 end; %switch keyword 0062 end; 0063 0064 0065 % calculate rho 0066 dens = SW_Density(T,S); 0067 0068 % calculate dstar 0069 dstar = ST_Dstar(d, 'temp', T, 'sal', S, 'sdens', sdens); 0070 0071 % calculate theta_cr and then taucr 0072 if ismatrix(dstar) 0073 theta_cr = (0.30./(1+1.2.*dstar)) + 0.055.*[1 - exp(-.020.*dstar)]; 0074 taucr = theta_cr.*grav.*(sdens-dens).*d; 0075 else 0076 theta_cr = (0.30/(1+1.2*dstar)) + 0.055*[1 - exp(-.020*dstar)]; 0077 taucr = theta_cr*grav*(sdens-dens)*d; 0078 end 0079 0080 if ftbverbose 0081 fprintf('end : %s\n', subname) 0082 end