matlab编写函数文件求半径为r的圆球体积.

matlab编写函数文件求半径为r的圆球体积.,第1张

1、打开MATLAB,新建函数脚本。

2、然后在函数脚本中输入以下代码:function[area,perimeter]=circle(r)%计算不同rfprintf('thearea,周长的圆的面积,周长与r=\n')display(num2str(r))area=PI*r^2perimeter=2*PI*rend。

3、保存上面的函数脚本并创建一个新脚本(差侍Ctrl+N)。

4、在上面的脚本中,输入以下代码:关闭所有,清除所有;Clcformatcircle(3);圈(5);圈(10);圆(3);圈(5);Circle(10)是对Circle()函数的调用,这个函数的目的是计算半径分别为3、5和10的圆的面积和周长。

5、保存并运行上述脚本,并在命令窗口中获得结果。这些计算饥庆茄给了我们半径为3、5和10的圆的面积和周长。

6、还可以直接从命令窗口调用circle()函数来计算圆的面积和周长。例如,要计算半径为10的圆的烂察面积和周长,输入circle(10)并按enter键。

1、双击matlab软件图标,打开matlab软件脊雀档,可以看到matlab软件的界面。

2、通过语句[u,v,w]=sphere(56) 获得绘制岁拦球体的三维坐标。

3、使用语句:

subplot(2,2,1)

plot3(u,v,w)

title('plot3()')

将图片分成四份,在第一行第一列使用plot3()绘制球体,并使用函数title()添加标题。

4、使用语句:

subplot(2,2,2)

surf(u,v,w)

title('surf()')

将图片分成四份,在第一行第二列使用函数surf()绘制球体,并使用函数title()添加标题。

5、使用语句:

subplot(2,2,3)

surfl(u,v,w)

title('surfl()')

将图片分成四份,在第二行第一列使用函数surfl()绘制球体,并使用函数title()添加标题。

6、使用语句:

subplot(2,2,4)

mesh(u,v,w)

title('mesh()')

将图片分成四份,在第二樱乱行第二列使用函数mesh()绘制球体,并使用函数title()添加标题。

7、随后就可以看到绘制完成的球面方程。

clc,clear

%一个三维随机运动的小球

r=0.5%球的半径

%运动的范围

x1=0x2=30

y1=0y2=30

z1=0z2=30

%初始位置  随机生成

x0=rand(1)*(x2-x1-2*r)+x1

y0=rand(1)*(y2-y1-2*r)+y1

z0=rand(1)*(z2-z1-2*r)+z1

pos=[x0y0z0]

figure(1)

[x,y,z]  = ellipsoid(pos(1),pos(2),pos(3),r,r,r)

surf(x,y,z,ones(size(x))) %画出来球

n=200%随机运动的次数

p=1  %p可以用来控制每次运动距离的大小

for i=1:n

    %产生运动的方向与运动距离,用一个随机向量表示

    s=0

    while(s==0)

  如滚局      direct=rand(3,1)-0.5

        dd=direct/norm(direct,2)

        dd=dd*p

        post=pos+dd

        if (post(1)>=x1+r&&post(1)<=x2-r)&&(post(2)>=y1+r&&post(2)<=y2-r)&&(post(3)>=z1+r&&post(3)<=z2-r)

       渣让     s=1

        end

    end

    pos=pos+dd

    [x,y,z]  = ellipsoid(pos(1),pos(2),pos(3),r,r,r)

    surf(x,y,z,ones(size(x))) %画出来球

    axis([x1 x2 y1 y2 z1 z2])

    pause(0.1)  %设置暂停时备升间

end

因为是随机运动   如果每次运动的距离设置的不大,小球基本上是在初始位置的范围内运动


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12517054.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存