当前位置:网站首页>【海浪建模1】海浪建模的理论分析和matlab仿真
【海浪建模1】海浪建模的理论分析和matlab仿真
2022-07-05 00:49:00 【fpga和matlab】
1.软件版本
matlab2017b
2.系统原理
海浪建模的设计主要涉及到海浪模型的确定,海浪的各个参数的计算等,本系统,
海浪模型如下:
在现实中,海浪模型的种类有很多,这里采用这个模型,主要是因为该模型的效果和你给出的网站上的效果最为接近。
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;
%周期T
T = 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));
end
4.测试结果
仿真操作如上上图所示,
首先点击START开始模拟海浪的效果,然后点击stop可以暂停。
上图3标签就是网站上对应的调整风速度大小的按键。
4所显示就是海浪的各个参数。具体参数的计算见上一页的理论介绍
5这里是3D效果的显示,可以从不同的角度进行观察海浪(MATLAB中GUI的AXIS无法直接用鼠标旋转进行三维显示,所以需要通过这个功能进行显示)
A19-06
边栏推荐
- GDB常用命令
- Detailed explanation of openharmony resource management
- Huawei employs data management experts with an annual salary of 2million! The 100 billion market behind it deserves attention
- uniapp微信小程序拿来即用的瀑布流布局demo2(方法二)(复制粘贴即可使用,无需做其他处理)
- Actual combat simulation │ JWT login authentication
- The waterfall flow layout demo2 (method 2) used by the uniapp wechat applet (copy and paste can be used without other processing)
- 【selenium自动化】常用注解
- P4408 [noi2003] truant children (tree diameter)
- 全栈开发提效神器——ApiFox(Postman + Swagger + Mock + JMeter)
- Distributed base theory
猜你喜欢
海思3559万能平台搭建:YUV422的踩坑记录
两个数相互替换
Relationship between classes and objects
JS how to realize array to tree
It's too convenient. You can complete the code release and approval by nailing it!
抓包整理外篇——————状态栏[ 四]
Implementation steps of master detail detail layout mode of SAP ui5 application
Continuous modification of business scenario functions
Daily question brushing record (13)
Get to know ROS for the first time
随机推荐
Inventory of more than 17 typical security incidents in January 2022
2022.07.03 (LC 6108 decryption message)
分布式BASE理论
“薪資倒掛”、“畢業生平替” 這些現象說明測試行業已經...
Safety learning week4
ORB(Oriented FAST and Rotated BRIEF)
There is a new Post-00 exam king in the testing department. I really can't do it in my old age. I have
6. Scala operator
PyTorch: In-place Operation
Huawei employs millions of data governance experts! The 100 billion market behind it deserves attention
[circuit design] optocoupler use and circuit design summary
leetcode518,377
【Unity】InputSystem
TS quick start - functions
Get to know ROS for the first time
Paxos 入门
Acwing164. Accessibility Statistics (topological sorting +bitset)
每日刷题记录 (十三)
Learning of basic amplification circuit
Upload avatar on uniapp