Home > wafo > onedim > vc2sign.m

# vc2sign

## PURPOSE

Calculates ratio-significant value of the input vector.

## SYNOPSIS

hs=vc2sign(H,ratio);

## DESCRIPTION

```  VC2SIGN Calculates ratio-significant value of the input vector.

CALL: hs=vc2sign(H);
hs=vc2sign(H,ratio);
where

hs    = a three column matrix with 'ratio' in the first column,
the ratio-significant value of  H  in the second, and
a ratio-quantile in the third column.
H     = data vector.
ratio = a constant (0<ratio<1) defining the significant
value of the vector H. (optional input and only one
significant value is computed).

Example
x = load('sea.dat');
[vcf,h] = dat2steep(x); % extract Crest front velocity and wave height.
hs = vc2sign(h);
plot(hs(:,1),hs(:,2))
xlabel('Ratio'),ylabel('Ratio-significant wave height.')
hs3 = vc2sign(h,1/3);
Hs  = hs3(2)               % significant wave height
S   = dat2spec(x);
Hm0 = spec2char(S,'Hm0')   % significant wave height from spectrum

See also spec2char```

## CROSS-REFERENCE INFORMATION

This function calls:
 error Display message and abort function.
This function is called by:

## SOURCE CODE

```001 function hs=vc2sign(H,ratio);
002 % VC2SIGN Calculates ratio-significant value of the input vector.
003 %
004 %  CALL: hs=vc2sign(H);
005 %        hs=vc2sign(H,ratio);
006 %  where
007 %
008 %        hs    = a three column matrix with 'ratio' in the first column,
009 %                the ratio-significant value of  H  in the second, and
010 %                a ratio-quantile in the third column.
011 %        H     = data vector.
012 %        ratio = a constant (0<ratio<1) defining the significant
013 %                value of the vector H. (optional input and only one
014 %                significant value is computed).
015 %
016 % Example
017 %  x = load('sea.dat');
018 %  [vcf,h] = dat2steep(x); % extract Crest front velocity and wave height.
019 %  hs = vc2sign(h);
020 %  plot(hs(:,1),hs(:,2))
021 %  xlabel('Ratio'),ylabel('Ratio-significant wave height.')
022 %  hs3 = vc2sign(h,1/3);
023 %  Hs  = hs3(2)               % significant wave height
024 %  S   = dat2spec(x);
025 %  Hm0 = spec2char(S,'Hm0')   % significant wave height from spectrum
026 %
027 % See also spec2char
028
029 Hs=sort(H);
030 test=size(Hs);
031
032 if test(1)>1
033  Hs=Hs';
034 end
035
036 N=length(Hs);
037
038 if (nargin<2)
039   hs=ones(N,3);
040
041   hs(:,2)=flipud(cumsum(flipud(Hs')));
042
043   hs(:,2)=hs(:,2)./flipud([1:N]');
044   hs(:,1)=1-[0:N-1]'/N;
045   hs(:,3)=Hs';
046 else
047   if ratio <= 0
048     error('ratio  must be >0.')
049   end
050
051   if ratio > 1
052     error('ratio  must be <=1.')
053   end
054
055   N3=ceil((1-ratio)*N);
056   hs=[ratio sum(Hs(N3:N))/(N-N3+1)];
057 end
058```

Mathematical Statistics
Centre for Mathematical Sciences
Lund University with Lund Institute of Technology

Comments or corrections to the WAFO group

Generated on Thu 06-Oct-2005 02:21:16 for WAFO by m2html © 2003