当前位置:网站首页>【海浪建模2】三维海浪建模以及海浪发电机建模matlab仿真
【海浪建模2】三维海浪建模以及海浪发电机建模matlab仿真
2022-07-05 00:49:00 【fpga和matlab】
1.软件版本
matlab2017b
2.核心源码
function func_power_gen_machine(HHup,R_buoy,seepart,seeall);
if seepart == 0 & seeall == 1
%先产生固定部分
%第一:海底的圆柱体
t = 0:pi/20:2*pi;
RR = 100;
HH = -6.5;
x= 600+RR*sin(t);
y= 300+RR*cos(t)/2;
z=linspace(-8,HH,length(t));
X=meshgrid(x);
Y=meshgrid(y);
Z=[meshgrid(z)]';
surf(X,Y,Z);
xlabel('x'),ylabel('y'),zlabel('z')
shading interp;
colormap([255/255,100/255,103/255]);
hold on
clear X Y Z
%第二:上半部分的柱体
t = 0:pi/20:2*pi;
RR2 = 60;
HH2 = -6;
x= 600+RR2*sin(t);
y= 300+RR2*cos(t)/2;
z=linspace(-8,HH2,length(t));
X=meshgrid(x);
Y=meshgrid(y);
Z=[meshgrid(z)]';
surf(X,Y,Z);
xlabel('x'),ylabel('y'),zlabel('z')
shading interp;
colormap([255/255,100/255,103/255]);
hold on
clear X Y Z
%第三:线圈
HH3 = -8:0.5:-3;
for i = 1:floor(length(HH3)/2)
t = 0:pi/20:2*pi;
RR3 = 10;
x= 600+RR3*sin(t);
y= 300+RR3*cos(t)/2;
z=linspace(HH3(2*i-1),HH3(2*i),length(t));
X=meshgrid(x);
Y=meshgrid(y);
Z=[meshgrid(z)]';
plot3(X,Y,Z,'b');
xlabel('x'),ylabel('y'),zlabel('z')
shading interp;
colormap([255/255,100/255,103/255]);
hold on;
end
alpha(0.5);
clear X Y Z
HHup = HHup + 0.1;
%第四:滑动活塞
t = 0:pi/20:2*pi;
RR2 = 15;
x= 600+RR2*sin(t);
y= 300+RR2*cos(t)/2;
z=linspace(-6+HHup,-5+HHup,length(t));
X=meshgrid(x);
Y=meshgrid(y);
Z=[meshgrid(z)]';
surf(X,Y,Z);
xlabel('x'),ylabel('y'),zlabel('z')
shading interp;
colormap([255/255,100/255,103/255]);
hold on
alpha(0.5);
clear X Y Z
%第五:连接引线
t = 0:pi/20:2*pi;
RR2 = 0.01;
x= 600+RR2*sin(t);
y= 300+RR2*cos(t)/2;
z=linspace(-5+HHup,0+HHup,length(t));
X=meshgrid(x);
Y=meshgrid(y);
Z=[meshgrid(z)]';
plot3(X,Y,Z,'k');
xlabel('x'),ylabel('y'),zlabel('z')
shading interp;
colormap([255/255,100/255,103/255]);
hold on
alpha(0.5);
clear X Y Z
%第六:水面浮标,球形
t=linspace(0,pi,25);
p=linspace(0,2*pi,25);
[theta,phi]=meshgrid(t,p);
x= 600+R_buoy*sin(theta).*sin(phi);
y= 300+R_buoy*sin(theta).*cos(phi)/2;
z=R_buoy*cos(theta)/28 + HHup;
surf(x,y,z);
shading interp;
colormap([255/255,100/255,103/255]);
hold on
alpha(0.5);
alpha(0.5);
end
if seepart == 1 & seeall == 0
%第六:水面浮标,球形
t=linspace(0,pi,25);
p=linspace(0,2*pi,25);
[theta,phi]=meshgrid(t,p);
x= 600+R_buoy*sin(theta).*sin(phi);
y= 300+R_buoy*sin(theta).*cos(phi)/2;
z=R_buoy*cos(theta)/28 + HHup;
surf(x,y,z);
shading interp;
colormap([255/255,100/255,103/255]);
hold on
alpha(0.5);
alpha(0.5);
end
3.测试结果
在上一次的成果基础之上【海浪建模1】,加入了海浪发电机的动态效果,以及简单的计算一下发电量。根据设计要求,整个发电机之后,仿真的效果如下所示:
从这里可以看到,控制界面做了下调整,增加了三个按键,其中,part_View是海面浮标的动态效果,All_View是整个发电机的动态效果,Close the power mach则是关闭发电机的动态效果,仅仅显示海浪的效果,electricity则是显示发电量的效果。整个系统仿真结果如下所示:
最初的海浪建模:
点击Part_View按键:
调整视角滑动条,如下的效果:
点击All_View按键:
调整视角滑动条,如下的效果:
点击Close the power Mach按键:
A19-07
边栏推荐
- P4281 [AHOI2008]紧急集合 / 聚会(LCA)
- dotnet-exec 0.6.0 released
- P3304 [sdoi2013] diameter (diameter of tree)
- URL和URI
- 2022.07.03(LC_6108_解密消息)
- [paper reading] cavemix: a simple data augmentation method for brain vision segmentation
- It's too convenient. You can complete the code release and approval by nailing it!
- ORB(Oriented FAST and Rotated BRIEF)
- Pandora IOT development board learning (RT thread) - Experiment 4 buzzer + motor experiment [key external interrupt] (learning notes)
- 兩個數相互替換
猜你喜欢
测试部新来了个00后卷王,上了年纪的我真的干不过了,已经...
[selenium automation] common notes
兩個數相互替換
Implementation steps of master detail detail layout mode of SAP ui5 application
Relationship between classes and objects
Learn C language from scratch day 024
“薪資倒掛”、“畢業生平替” 這些現象說明測試行業已經...
Sorting selection sorting
Parsing of XML
What you learned in the eleventh week
随机推荐
Detailed explanation of openharmony resource management
AcWing164. 可达性统计(拓扑排序+bitset)
What you learned in the eleventh week
Reasons and solutions of redis cache penetration and avalanche
Playwright recording
Detailed explanation of multi-mode input event distribution mechanism
各大主流编程语言性能PK,结果出乎意料
Huawei employs millions of data governance experts! The 100 billion market behind it deserves attention
2022.07.03 (lc_6111_counts the number of ways to place houses)
P4281 [AHOI2008]紧急集合 / 聚会(LCA)
[selenium automation] common notes
Hill sort of sorting
Safety learning week4
[Yocto RM]10 - Images
College degree, what about 33 year old Baoma? I still sell and test, and my monthly income is 13K+
Operator explanation
PyTorch: In-place Operation
【报错】 “TypeError: Cannot read properties of undefined (reading ‘split‘)“
2022.07.03(LC_6109_知道秘密的人数)
Les phénomènes de « salaire inversé » et de « remplacement des diplômés » indiquent que l'industrie des tests a...