


Calculate non-dimensional grain size D*
function [dstar] = ST_Dstar(d,varargin)
DESCRIPTION:
Convert grain size from d (m) to dimensionless D
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:
Dstar: nondimensional grain size
EXAMPLE USAGE
dstar = ST_Dstar(.0005,'temperature',10,'salinity',35,'sdens',2650)
Author(s):
Geoff Cowles (University of Massachusetts Dartmouth)
Pierre Cazenave (Plymouth Marine Laboratory)
Revision history
2017-03-27 Add support for matrices and some minor syntax changes.
==============================================================================

0001 function [dstar] = ST_Dstar(d,varargin) 0002 % Calculate non-dimensional grain size D* 0003 % 0004 % function [dstar] = ST_Dstar(d,varargin) 0005 % 0006 % DESCRIPTION: 0007 % Convert grain size from d (m) to dimensionless D 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 % Dstar: nondimensional grain size 0017 % 0018 % EXAMPLE USAGE 0019 % dstar = ST_Dstar(.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 % Revision history 0026 % 2017-03-27 Add support for matrices and some minor syntax changes. 0027 % 0028 %============================================================================== 0029 0030 global ftbverbose 0031 [~, subname] = fileparts(mfilename('fullpath')); 0032 if ftbverbose 0033 fprintf('\nbegin : %s\n', subname) 0034 end 0035 0036 % constants 0037 grav = 9.8106; %g 0038 T = 10; %T (C) 0039 S = 35; %S (PSU) 0040 sdens = 2650; %sediment density in kg/m^3 0041 0042 % parse arguments 0043 for i=1:2:length(varargin)-1 0044 keyword = lower(varargin{i}); 0045 if( ~ischar(keyword) ) 0046 error('incorrect usage of ST_Dstar') 0047 end; 0048 0049 switch(keyword(1:3)) 0050 0051 case 'tem' 0052 T = varargin{i+1}; 0053 case 'sal' 0054 S = varargin{i+1}; 0055 case 'sde' 0056 sdens = varargin{i+1}; 0057 otherwise 0058 error(['Can''t understand value for:' keyword]); 0059 end; %switch keyword 0060 end; 0061 0062 % calculate nu 0063 nu = SW_Kviscosity(T,S); 0064 0065 % calculate rho 0066 dens = SW_Density(T,S); 0067 0068 % calculate dstar 0069 if isscalar(dens) 0070 s = sdens/dens; 0071 dstar = ([grav*(s-1)/(nu^2)])^(1/3)*d; 0072 else 0073 s = sdens ./ dens; 0074 dstar = ([grav*(s-1)./(nu.^2)]).^(1/3).*d; 0075 end 0076 0077 if ftbverbose 0078 fprintf('end : %s\n', subname) 0079 end