海浪建模的理论探讨与Matlab仿真实践

1.软件版本

matlab2017b

2.系统原理

海浪建模的设计主要涉及到海浪模型的确定,海浪的各个参数的计算等,本系统,

海浪模型如下:

【海浪建模1】海浪建模的理论分析和matlab仿真_软件版本

在现实中,海浪模型的种类有很多,这里采用这个模型,主要是因为该模型的效果和你给出的网站上的效果最为接近。

【海浪建模1】海浪建模的理论分析和matlab仿真_三维海浪建模_02

G为重力加速度,取常数9.8

3.核心源码

global Winds;   %风速global g; %重力加速度global kk; %仿真模型沙盘和实际区域的大小比例global Xmax;global Ymax;global Dxy;global flag;global VX;global VY;global VZ;flag = 0;g    = 9.8; %重力加速度kk   = 1/40; %仿真模型沙盘和实际区域的大小比例%仿真的间隔Dxy  = 4;%仿真覆盖的海域范围Xmax = 1000;Ymax = 1000;Start  = 200;x      = [Start:Dxy:Xmax];Ymax2  = round(Ymax/2);y      = [Start:Dxy:Ymax2];[xo,yo]= meshgrid(x,y);z2     = zeros(size(x));%海浪自身运动的波高r = (3.5325*Winds^2.5)/1000;%海浪自身运动的波长k = 2*g/(3*Winds^2);L = 2*pi/k;%周期TT = sqrt(2*pi*L/g);%波频率w = sqrt(2/3)*g/T;t = 0;while(flag == 0)    disp('the wind speed is');Winds    t = t + 1;    for i = 1:(Ymax2-Start)/Dxy+1        for j = 1:(Xmax-Start)/Dxy+1            %衰减系数            d             = sqrt((xo(1,j)-0)^2 + (yo(1,j)-0)^2);            alphas        = exp(-0.07*d) - 0.18;             z2(i,j)       = alphas*r*cos(k*sqrt((xo(1,j)-0)^2 + (yo(1,j)-0)^2) - w*t);        end    end    %显示局部效果    axes(handles.axes1);    surfl(xo,yo,z2);    axis([Start-50 Xmax+50 Start-50 Ymax2+50 -8 10]);    shading interp;    colormap([143/255,157/255,203/255]);    alpha(0.75);    lightangle(-30,90);        view([VX,VY,VZ]);            pause(0.1);                %海浪自身运动的波长    k = 2*g/(3*Winds^2);    Ls = 2*pi/k;    set(handles.edit1,'String',num2str(Ls));            %计算得到海浪的参数指标    %海浪自身运动的波高    rs = (3.5325*Winds^2.5)/1000;    set(handles.edit3,'String',num2str(rs));        %周期T    T = sqrt(2*pi*L/g);    %速度    c = g*T/(2*pi);     set(handles.edit4,'String',num2str(c));         %波频率    w = sqrt(2/3)*g/T;        set(handles.edit5,'String',num2str(w/2/pi));    end1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53.54.55.56.57.58.59.60.61.62.63.64.65.66.67.68.69.70.71.72.73.74.75.76.77.78.79.80.81.82.83.84.85.86.87.88.89.90.91.92.93.94.

4.测试结果

【海浪建模1】海浪建模的理论分析和matlab仿真_开发语言_03

仿真操作如上上图所示,

首先点击START开始模拟海浪的效果,然后点击stop可以暂停。

上图3标签就是网站上对应的调整风速度大小的按键。

4所显示就是海浪的各个参数。具体参数的计算见上一页的理论介绍

5这里是3D效果的显示,可以从不同的角度进行观察海浪(MATLAB中GUI的AXIS无法直接用鼠标旋转进行三维显示,所以需要通过这个功能进行显示)




免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空