MATLAB水波模拟源代码.doc

MATLAB水波模拟源代码.doc

ID:55550685

大小:122.00 KB

页数:5页

时间:2020-05-16

MATLAB水波模拟源代码.doc_第1页
MATLAB水波模拟源代码.doc_第2页
MATLAB水波模拟源代码.doc_第3页
MATLAB水波模拟源代码.doc_第4页
MATLAB水波模拟源代码.doc_第5页
资源描述:

《MATLAB水波模拟源代码.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、functionwaterwave%WATERWAVE%2DShallowWaterModel%%Lax-Wendrofffinitedifferencemethod.%Reflectiveboundaryconditions.%Randomwaterdropsinitiategravitywaves.%Surfaceplotdisplaysheightcoloredbymomentum.%Plottitleshowst=simulatedtimeandtv=ameasureoftotalvariation.%An

2、exactsolutiontotheconservationlawwouldhaveconstanttv.%Lax-Wendroffproducesnonphysicaloscillationsandincreasingtv.%%Information:%Author:cuixing%qq:%email:@qq.com%Parametersn=64;%gridsizeg=9.8;%gravitationalconstantdt=0.01;%hardwiredtimestepdx=1.0;dy=1.0;nplotst

3、ep=8;%plotintervalndrops=5;%maximumnumberofdropsdropstep=500;%dropintervalD=droplet(1.5,21);%simulateawaterdrop%Initializegraphics[surfplot,top,start,stop]=initgraphics(n);%Outerloop,restarts.whileget(stop,'value')==0set(start,'value',0)H=ones(n+2,n+2);U=zeros

4、(n+2,n+2);V=zeros(n+2,n+2);Hx=zeros(n+1,n+1);Ux=zeros(n+1,n+1);Vx=zeros(n+1,n+1);Hy=zeros(n+1,n+1);Uy=zeros(n+1,n+1);Vy=zeros(n+1,n+1);ndrop=ceil(rand*ndrops);nstep=0;%Innerloop,timesteps.whileget(start,'value')==0&&get(stop,'value')==0nstep=nstep+1;%Randomwat

5、erdropsifmod(nstep,dropstep)==0&&nstep<=ndrop*dropstepw=size(D,1);i=ceil(rand*(n-w))+(1:w);j=ceil(rand*(n-w))+(1:w);H(i,j)=H(i,j)+rand*D;end%ReflectiveboundaryconditionsH(:,1)=H(:,2);U(:,1)=U(:,2);V(:,1)=-V(:,2);H(:,n+2)=H(:,n+1);U(:,n+2)=U(:,n+1);V(:,n+2)=-V(

6、:,n+1);H(1,:)=H(2,:);U(1,:)=-U(2,:);V(1,:)=V(2,:);H(n+2,:)=H(n+1,:);U(n+2,:)=-U(n+1,:);V(n+2,:)=V(n+1,:);%Firsthalfstep%xdirectioni=1:n+1;j=1:n;%heightHx(i,j)=(H(i+1,j+1)+H(i,j+1))/2-dt/(2*dx)*(U(i+1,j+1)-U(i,j+1));%xmomentumUx(i,j)=(U(i+1,j+1)+U(i,j+1))/2-...

7、dt/(2*dx)*((U(i+1,j+1).^2./H(i+1,j+1)+g/2*H(i+1,j+1).^2)-...(U(i,j+1).^2./H(i,j+1)+g/2*H(i,j+1).^2));%ymomentumVx(i,j)=(V(i+1,j+1)+V(i,j+1))/2-...dt/(2*dx)*((U(i+1,j+1).*V(i+1,j+1)./H(i+1,j+1))-...(U(i,j+1).*V(i,j+1)./H(i,j+1)));%ydirectioni=1:n;j=1:n+1;%heigh

8、tHy(i,j)=(H(i+1,j+1)+H(i+1,j))/2-dt/(2*dy)*(V(i+1,j+1)-V(i+1,j));%xmomentumUy(i,j)=(U(i+1,j+1)+U(i+1,j))/2-...dt/(2*dy)*((V(i+1,j+1).*U(i+1,j+1)./H(i+1,j+1))-...(V(i+1,j).*U(i+1,j)

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。