matlab一个程序的每步意义求解释

n=20;w=(pi/30:(2*pi-pi/30)/19:2*pi);an=randn(1,20);rad=(-pi:2*pi/19:pi);g=9.8;h=zeros... n=20;
w=(pi/30:(2*pi-pi/30)/19:2*pi);
an=randn(1,20);
rad=(-pi:2*pi/19:pi);
g=9.8;
h=zeros(21,21);
j=1;
k=1;
t=0;
x=(-10:10);
y=(-10:10);
for o=1:300
t=t+0.1
for m=1:21
for n=1:21
for i=1:20
e=2*pi*rand();
a=(w(i)^2)/g;
h(j,k)=h(j,k)+an(i)*cos(a*x(j)*cos(rad(i))+a*y(k)*cos(rad(i)-w(i)*t+e));
end
k=k+1;
if k==21
k=1;
end
end
j=j+1;
if j==21
j=1;
end
end
p=surf(x,y,h)
F(o)=getframe
end
%movie2avi(F,'out.avi', 'compression', 'none');

如题是一个海浪模拟的程序,请问这个程序是如何运行的。。每步的意义和运用的海浪表达公式以及定义的w是什么。。。
写论文中,matlab基本都忘了求高人解答~ 高分送上
怎么运行明白~ 只是想知道这个程序运用的原公式=0= 否则不好解释这个程序是怎么得出来的
展开
 我来答
iwantt
2013-10-12 · TA获得超过2801个赞
知道小有建树答主
回答量:430
采纳率:100%
帮助的人:461万
展开全部

我把具体操作过程做了一个录像,你按照录像的操作就行


 

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
s3232913
2013-10-08
知道答主
回答量:4
采纳率:0%
帮助的人:5.8万
展开全部
打开MATLAB 新建一个空文件(Ctrl+N),把上面的代码复制到里面,点F5就可以运行了

这个程序就是模拟海浪的形态,就是在X Y平面内每一点的Z坐标
h(j,k)=h(j,k)+an(i)*cos(a*x(j)*cos(rad(i))+a*y(k)*cos(rad(i)-w(i)*t+e)); 这个就是Z坐标
至少公式的意义就不清楚了,定义的W就是用到计算h,h就是一个和随机数有关的有公式
p=surf(x,y,h) 这个就是画三围图的函数
你的程序里X和Y是从-10到10,就是在这个范围内画300张三围图
F(o)=getframe
把这300张实现动画播放
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式