File:Interference of water waves with bottom topography, relevant for microseism generation.gif
From Wikimedia Commons, the free media repository
Jump to navigation
Jump to search
Size of this preview: 800 × 267 pixels. Other resolutions: 320 × 107 pixels | 1,000 × 334 pixels.
Original file (1,000 × 334 pixels, file size: 532 KB, MIME type: image/gif, looped, 36 frames)
File information
Structured data
Captions
Summary
[edit]DescriptionInterference of water waves with bottom topography, relevant for microseism generation.gif |
English: This is an animation of the moving sea surface of 12 s waves in 100 m water depth propagating over a fixed bottom with a depth equal to 100 m plus some oscillation of amplitude 20 m. |
Date | |
Source |
using matlab |
Author | Ardhuin |
Licensing
[edit]I, the copyright holder of this work, hereby publish it under the following licenses:
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License.http://www.gnu.org/copyleft/fdl.htmlGFDLGNU Free Documentation Licensetruetrue |
This file is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported license.
- You are free:
- to share – to copy, distribute and transmit the work
- to remix – to adapt the work
- Under the following conditions:
- attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
- share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.
You may select the license of your choice.
% Here is my matlab source code ...
% this scripts computes the wave elevation and bottom pressure for a
% shoaling wave train, and estimates the k=0 spectral density
% which comes into the primary microseisms signal.
%clear; close all;
addpath /export/home/ardhuin/TOOLS/MATLAB
nx=2586;
dx1=65.757904031020715;
nz2=2268;
X2=linspace(0,nz2-1,nz2)*dx1./10;
nT=20
fall=linspace(0.005,0.1,nT);
wnum(1)=dispNewtonTH(fall(17),100);
Z2=100+20.*cos(wnum(1)*1.05.*X2);
for it=17:17 %1:nT
% Parameters for wind wave
a1=1;surfig=0;gam=0.5;gi=9.81;f=fall(it);imu=sqrt(-1);h1=4800;h2=0.001;om=2*pi*f;
% a1=1;surfig=0;gam=0.5;gi=9.81;f=fall(it);imu=sqrt(-1);h1=2400;h2=0.001;om=2*pi*f;
% a1=1;surfig=1;gam=0.5;gi=9.81;f=fall(it);imu=sqrt(-1);h1=3000;h2=0.001;om=2*pi*f;
nn=64;
Nx=21000*nn;
x=linspace(X2(1),X2(end),Nx);
ZZ=interp1(X2,Z2,x)';
dx=x(2)-x(1);
L=dx*Nx;
a=zeros(Nx,1);
iz2=find(ZZ < h2);
iz1=find(ZZ > h1);
h3=100;
ZZ(iz1)=h1;
if(length(iz2) > 0)
ZZ(iz2(1):end)=h2;
end
%ZZs = smoothn(ZZ,1E16);
%I=find(x >2E5 & x < 3.15E5);
%ZZ(I)=ZZs(I);
ZZ(iz2)=h2;
Hp=0.01;
% solves dispersion relation for estimating Airy wave solutions
wnum=zeros(Nx,1);
kx=zeros(Nx,1);
wnum(1)=dispNewtonTH(f,ZZ(1));a(1)=a1;
C=om/wnum(1);kh=wnum(1)*ZZ(1);pp=0.5*(1+(2*kh)/sinh(2*kh));Cginf=pp*C;
kinf=wnum(1);
for i=2:Nx
wnum(i)=dispNewtonTH(f,ZZ(i));
if i==2
kx(i)=kx(i-1)+wnum(i)*dx;
else
kx(i)=kx(i-1)+0.5*(wnum(i)+wnum(i-1))*dx;
end
if (mod(kx(i),80) < mod(kx(i-1),80))
%[i kx(i)]
%kx(i) = kx(i)+0.2*(rand-0.5);
end
%kh=wnum(i)*ZZ(i);
%pp=0.5*(1+(2*kh)/sinh(2*kh));
%Cg=pp*om/wnum(i);
%%[ZZ(i) Cg pp]
%dkm=0.05*(om/Cg)*cos(kx(i)/(3*pi^2));
%kx(i)=kx(i)+dkm*dx;
%%[wnum(i) dkm cos(kx(i)/pi^2)]
%%% THE AMPLITUDE IS CALCULATED from
%%% conservation of action: d/dx(Cg*E/sigma)=0--> Cg*A^2=const over the x-axis
%%%
C=om/wnum(i);kh=wnum(i)*ZZ(i);pp=0.5*(1+(2*kh)/sinh(2*kh));Cg=pp*C;
%
% limitation by breaking for wind waves ...
a(i)=a1.*min(sqrt(Cginf/Cg),ZZ(i)*gam);
end
Ldeep=2*pi/wnum(1);
%% This is for IG waves: constant amplitude in surf zone
indsurf=find (a > a1.*ZZ*gam*0.99);
if (surfig == 1 & length(indsurf) > 0)
a(indsurf)=a(indsurf(1));
end
inddry=find(ZZ < 0.0015);
a(inddry)=0.;
%kx=kx-kx(iz2); %-om/(sqrt(gi*Hp)).*2.*sqrt(abs(h2/Hp));
z=a.*(cos(kx));
zquad=a.*(sin(kx));
nphase=120;
Kphase=zeros(nphase,1);
Kqphase=zeros(nphase,1);
pb=a.*(cos(kx))./cosh(wnum.*ZZ);
pbquad=a.*(sin(kx))./cosh(wnum.*ZZ);
%%% Creates an animation of the surface elevation and bottom pressure
nfft=Nx;
figure(10)
fig=figure('Position',[1 1 600 200])
set(fig,'Color',[ 1 1 1]);
nt=36;
prefix='bottom2';
for ii=1:nt
ii
clf
phi=(ii-1)*2*pi/nt;
zphi=z.*cos(phi)+zquad.*sin(phi);
pphi=pb.*cos(phi)+pbquad.*sin(phi);
hold on
plot(x./1000,-ZZ./60-2.,'k-','LineWidth',1);
plot(x./1000,zphi./4,'b-','LineWidth',2);
plot(x./1000,pphi.*4-1.5,'r-','LineWidth',2);
hold off
xlabel('x (km)')
ht=text(0.5,0.8,'sea surface elevation / 4 (m)','Fontsize',16,'Color',[0 0 1])
ht=text(0.5,-2.9,'bottom pressure \times 4 - 1.5 (m)','Fontsize',16,'Color',[1 0 0])
ht=text(10,-2.9,'depth/60 -2 (m)','Fontsize',16,'Color',[0 0 0])
number=sprintf('%.4d',ii);
oname=[prefix '_' number '.png' ];
set(gcf, 'PaperPositionMode', 'auto')
set(gca,'Xlim',[0 15],'Ylim',[-4 0.9])
set(gca,'position',[0.05 0.2 0.92 0.74])
saveas(gcf, oname, 'png')
end
File history
Click on a date/time to view the file as it appeared at that time.
Date/Time | Thumbnail | Dimensions | User | Comment | |
---|---|---|---|---|---|
current | 08:30, 1 May 2014 | 1,000 × 334 (532 KB) | Ardhuin (talk | contribs) | Uploading a self-made file using File Upload Wizard |
You cannot overwrite this file.
File usage on Commons
There are no pages that use this file.
File usage on other wikis
The following other wikis use this file:
- Usage on en.wikipedia.org
- Usage on fr.wikipedia.org
- Usage on ja.wikipedia.org
- Usage on uk.wikipedia.org