MATLAB与数值分析
实验报告
报告人: 朱泽智 学 号: 2015020904033 时 间: 第五周周二7:30
一、 实验目的
通过上机编程实验,使我们熟悉对MATLAB软件平台的使用,使学生掌握MATLAB的编程技巧.
二、 实验原理
1. 给定一个n维向量x?x1,x2,?,xn?1,xn ,编写MATLAB程序,实现以下编程实现以下计算,用户能输入不同的初值n以及系数i。
??x1?x2???xi?1?xiy?xi?1?xi?1??xn?1xn
2. 编程实现奥运5环图,允许用户输入环的直径。
3. 绘制以下二元函数的三维图像,采用mesh、meshc和surf等三维函数命令
z?sinx2?y2x?y22,x???10,10?,y???10,10?
4. 使用一个以上函数(function)的方式实现一个动画图形显示:使蓝色的小球沿着正弦曲线运动。
根据matlab的程序设计对其进行程序编辑实现上面的要求。
三、 实验方案 1. clear all
close all clc n=input; x=input;
i1=input; sum=0; for ii=1:i1 sum=sum+x(ii); end plu=1; for jj=(i1+1):n plu=plu*x(jj); end y=sum/plu; fprintf
2.figure;
grid on; hold on; axis equal;
r=input('key in the r\\n'); d=r/3;
p=pi/2:0.01:7*pi/4; y=r*sin(p);x=r*cos(p); plot(x,y,'b','linewidth',6);
p=pi/4:0.01:5*pi/4; y=r*sin(p);x=r*cos(p);
plot(x+r+r+2*d,y,'k','linewidth',6);
p=-pi/2:0.01:5*pi/4; y=r*sin(p);x=r*cos(p);
plot(x+4*d+4*r,y,'r','linewidth',6);
p=0:0.01:2*pi;
y=r*sin(p);x=r*cos(p);
plot(x+r+1*d,y-r,'y','linewidth',6);
p=5*pi/4:0.01:7*pi/4; y=r*sin(p);x=r*cos(p);
plot(x+r+r+2*d,y,'k','linewidth',6);
p=0:0.01:2*pi;
y=r*sin(p);x=r*cos(p);
plot(x+3*r+3*d,y-r,'g','linewidth',6);
p=-pi/4:0.01:pi/2;
y=r*sin(p);x=r*cos(p); plot(x,y,'b','linewidth',6);
p=-pi/4:0.01:pi/4;
y=r*sin(p);x=r*cos(p);
plot(x+r+r+2*d,y,'k','linewidth',6);
p=5*pi/4:0.01:3*pi/2; y=r*sin(p);x=r*cos(p);
plot(x+4*d+4*r,y,'r','linewidth',6);
3. clear all;
close all; clc; x=-10:0.1:10; y=-10:0.1:10; [X,Y]=meshgrid(x,y); u=sqrt(X.^2+Y.^2); z=sin(u)./u; figure(1) meshc(z) figure(2) mesh(z)
figure(3) surf(z)
4.
t=0:pi/500:10*pi; y=sin(t);
plot(t,y,'m');
h=line('color',[0,0,1],'marker','.','markersize',50); for i=1:length(t);
set(h,'xdata',t(i),'ydata',y(i)); M(i)=getframe; end movie(M);
四、 实验结果 1.
2.
3.
4.
五、 分析与讨论
自己设计程序并运行后发现很多的问题,首先在第三个问题中开始并没有做到让三个图同时出现,在老师的指导下做到了用figure来实现多个图同时出现的情况。其次在第四个问题中没有做到让小球运行的轨迹显示出来。还有待完善。总体来说,本次实验较为成功的完成了给出的四个问题。