当前位置:网站首页>[wave modeling 1] theoretical analysis and MATLAB simulation of wave modeling
[wave modeling 1] theoretical analysis and MATLAB simulation of wave modeling
2022-07-05 00:53:00 【FPGA and MATLAB】
1. Software version
matlab2017b
2. System principle
The design of ocean wave modeling mainly involves the determination of ocean wave model , Calculation of various parameters of ocean waves , This system ,
The wave model is as follows :
In reality , There are many kinds of wave models , This model is used here , Mainly because the effect of this model is the closest to the effect on the website you give .
G Is the acceleration of gravity , Take the constant 9.8
3. Core source code
global Winds; % The wind speed
global g; % Acceleration of gravity
global kk; % The size ratio between the sand table of the simulation model and the actual area
global Xmax;
global Ymax;
global Dxy;
global flag;
global VX;
global VY;
global VZ;
flag = 0;
g = 9.8; % Acceleration of gravity
kk = 1/40; % The size ratio between the sand table of the simulation model and the actual area
% Interval of simulation
Dxy = 4;
% The sea area covered by the simulation
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));
% The wave height of the wave itself
r = (3.5325*Winds^2.5)/1000;
% The wave length of the wave itself
k = 2*g/(3*Winds^2);
L = 2*pi/k;
% cycle T
T = sqrt(2*pi*L/g);
% Wave frequency
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
% Attenuation coefficient
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
% Show local effects
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);
% The wave length of the wave itself
k = 2*g/(3*Winds^2);
Ls = 2*pi/k;
set(handles.edit1,'String',num2str(Ls));
% Calculate the parameter index of the wave
% The wave height of the wave itself
rs = (3.5325*Winds^2.5)/1000;
set(handles.edit3,'String',num2str(rs));
% cycle T
T = sqrt(2*pi*L/g);
% Speed
c = g*T/(2*pi);
set(handles.edit4,'String',num2str(c));
% Wave frequency
w = sqrt(2/3)*g/T;
set(handles.edit5,'String',num2str(w/2/pi));
end
4. test result
The simulation operation is shown in the above figure ,
First click on START Start simulating the effect of waves , And then click stop Can pause .
Upper figure 3 The tag is the corresponding button on the website to adjust the wind speed .
4 All parameters of the wave are displayed . See the theoretical introduction on the previous page for the calculation of specific parameters
5 Here is 3D Display of effect , You can observe the waves from different angles (MATLAB in GUI Of AXIS It is impossible to rotate the mouse directly for 3D display , So you need to display through this function )
A19-06
边栏推荐
- 潘多拉 IOT 开发板学习(RT-Thread)—— 实验4 蜂鸣器+马达实验【按键外部中断】(学习笔记)
- Arbitrum:二维费用
- “薪資倒掛”、“畢業生平替” 這些現象說明測試行業已經...
- P4281 [AHOI2008]紧急集合 / 聚会(LCA)
- 107. Some details of SAP ui5 overflow toolbar container control and resize event processing
- ORB(Oriented FAST and Rotated BRIEF)
- Daily question brushing record (13)
- Huawei employs data management experts with an annual salary of 2million! The 100 billion market behind it deserves attention
- What if the programmer's SQL data script coding ability is weak and Bi can't do it?
- “薪资倒挂”、“毕业生平替” 这些现象说明测试行业已经...
猜你喜欢
随机推荐
Multilingual Wikipedia website source code development part II
College degree, what about 33 year old Baoma? I still sell and test, and my monthly income is 13K+
华为200万年薪聘请数据治理专家!背后的千亿市场值得关注
2022.07.03(LC_6111_统计放置房子的方式数)
dotnet-exec 0.6.0 released
Poap: the adoption entrance of NFT?
npm install报错 强制安装
[error reporting] "typeerror: cannot read properties of undefined (reading 'split')“
初识ROS
【海浪建模3】三维随机真实海浪建模以及海浪发电机建模matlab仿真
Digital DP template
[Yocto RM]10 - Images
多模输入事件分发机制详解
Operator explanation
抓包整理外篇——————状态栏[ 四]
Introduction to the gtid mode of MySQL master-slave replication
Basic concept and usage of redis
Expose testing outsourcing companies. You may have heard such a voice about outsourcing
const、volatile和restrict的作用和用法总结
lambda表达式