PHI1 factor for transforming spectra to finite water depth spectra CALL: tr = phi1(w,h) tr = vector of transformation factors w = angular frequency h = water depth Example: Transform a JONSWAP spectrum to a spectrum for waterdepth = 30 m S = jonswap; S1=S; S1.S=S1.S.*phi1(S1.w,30);
% CHAPTER2 Modelling random loads and stochastic waves |
001 function ph=phi1(w,h) 002 %PHI1 factor for transforming spectra to finite water depth spectra 003 % 004 % CALL: tr = phi1(w,h) 005 % 006 % tr = vector of transformation factors 007 % w = angular frequency 008 % h = water depth 009 % 010 % Example: Transform a JONSWAP spectrum to a spectrum for waterdepth = 30 m 011 % S = jonswap; 012 % S1=S; S1.S=S1.S.*phi1(S1.w,30); 013 014 % Reference 015 % Buows, E., Gunther, H., Rosenthal, W. and Vincent, C.L. (1985) 016 % 'Similarity of the wind wave spectrum in finite depth water: 1 spectral form.' 017 % J. Geophys. Res., Vol 90, No. C1, pp 975-986 018 019 % Tested on: Matlab 5.2 020 % History: 021 % by pab 16.02.2000 022 g=gravity; 023 if h==inf, % special case infinite water depth 024 ph=ones(size(w)); 025 return 026 end 027 ph=zeros(size(w)); 028 029 k1=w2k(w,0,inf); 030 dw1=2*w/g; % dw/dk|h=inf 031 k2=w2k(w,0,h); 032 033 dw2=ph; 034 ix=find(k1~=0); 035 036 dw2(ix)=dw1(ix)./(tanh(k2(ix)*h)+k2(ix)*h./cosh(k2(ix)*h).^2); % % dw/dk|h=h0 037 ph(ix)=(k1(ix)./k2(ix)).^3.*dw2(ix)./dw1(ix);
Comments or corrections to the WAFO group