文档库 最新最全的文档下载
当前位置:文档库 › Matlab数学实验报告4

Matlab数学实验报告4

Matlab数学实验报告4
Matlab数学实验报告4

MATLAB与科学计算

实验报告

指导老师:易昆南

实验时间:大二年级上学期

学院:数学科学与计算技术学院

专业班级:统计0902

姓名:丁克明

学号:1304090112

目录

1.学生成绩管理 (3)

2.函数极限问题 (5)

3.蛛网模型 (7)

4.水塔模型 (10)

5.混沌问题 (12)

6.koch曲线 (14)

7.拉格朗日与三次样条插值以及曲线拟合 (17)

8.解线性方程组 (20)

9.矩阵对角化 (23)

10.矩阵标准化 (24)

11.摸球实验 (26)

12.钉板问题 (26)

13.火车问题 (28)

一、学生成绩管理

学号1304090112班级统计0902姓名丁克明指导教师易昆南实验题目学生成绩管理程序评分

1、设计(实习)目的:

1结合实际问题展现MATLAB在生活和学习方面的广泛应用

2学会利用MATLAB编程并求解实际问题

3学会并运用for循环和switch结构,以及MATLAB中已有函数如sum

4了解单元数组cell和结构数组struct的作用,学会创建这些数组.

2、实验内容:

编写一个学生成绩管理的函数程序:将学生成绩按五个等级划分:优秀(90以上),良好(80-90),中等(70-79),及格(60-69),不及格(60以下)对输入的学生成绩按五个等级划分后,打印学生姓名,得分,等级,并计算全班最高分、最低分、平均分。

3、详细设计

clear

for i=1:10

a{i}=89+i;

b{i}=79+i;

c{i}=69+i;

d{i}=59+i;

end

c=[d,c];

Name=input('please input name:');

Score=input('please input score:');

n=length(Score);

Rank=cell(1,n);

S=struct('Name',Name,'Score',Score,'Rank',Rank);

for i=1:n

switch S(i).Score

case100

S(i).Rank='满分';

case a

S(i).Rank='优秀';

case b

S(i).Rank='良好';

case c

S(i).Rank='及格';

case d

S(i).Rank='不及格';

end

end

disp(['学生姓名','得分','等级']);

for i=1:n

disp([S(i).Name,blanks(6),num2str(S(i).Score),blanks(6),S(i).Rank]);

end

s=0;

for i=1:n

s=S(i).Score+s;

end

averscore=s/n;

t=S(1).Score;

for i=1:(n-1)

if(S(i).Score

t=S(i+1).Score;

end

end

m=S(1).Score;

for i=1:(n-1)

if(S(i).Score>S(i+1).Score)

m=S(i+1).Score;

end

end

disp(['平均成绩']);

disp([averscore]);

disp(['最高分']);

disp(t);

disp(['最低分']);

disp(m);

4、实验结果:

5、实验总结:

这是我第一次接触matlab并运用matlab解决实际问题,在以前学习C++的时候,解决一个问题的代码会很繁琐。但相同的问题,在matlab中却变得很简单。这就是matlab的强大之处。运用它可以方便的解决许多实际问题。

知道了这一点,我决心以后会认真的学习这样一门课程。同时,它也给我们枯燥的数学公式的学习带来了动手解决实际问题的机会。是将理论与实际相结合的方法。让我们更加体会到知识的力量是强大的,我们应该更好的掌握科学技术和相关理论知识,并能够将其运用于实际生活当中。

在解决这个问题的时候也确实遇到了一些问题。比如如何输入符号数组和数值数组的问题,当时一直不理解。当通过查询资料,和同学讨论,最后明白了。输入符号时,符号要用单引号,而数据就不需要了。

通过这样一次实践,我更加明白了动手的必要性。只有理论知识是远远不够的。所以以后一定要加强自己的动手能力,勤动手。

二、函数极限问题

学号1304090112班级统计0902姓名丁克明指导教师易昆南实验题目函数极限问题评分

1、设计(实习)目的:

1结合实际问题展现MATLAB在生活和学习方面的广泛应用

2学会利用MATLAB编程并求解实际问题

3学会并运用movie和moviein函数,以及plot结构。

4理解getframe以及学会运用axis调节坐标抽

2、实验内容:

自选函数,运用plot进行绘图。并使用movie以及moviein,制作函数极限动画。

3、详细设计

clear

m=moviein(16);

hold on

for i=1:50

for j=1:i

t1=(j-1)*5;

t2=j*5;

t=t1:0.01:t2;

axis([0,40,-1,1])%限制动画的坐标显示大小

plot(t,0,'.r')

plot(t,1./t,'.')

end

m(:,i)=getframe;

end

movie(m,50)

clear

m=moviein(16)

hold on

for i=1:10

for j=1:i

t1=(j-1)*pi/10;

t2=j*pi/10;

t=t1:0.01:t2;

axis([0,5*pi/2,-1,1])%限制动画的坐标显示大小plot(pi-0.1,t,'.k')

plot(pi-0.1,-t,'.k')

plot(pi+0.1,-t,'.k')

plot(pi+0.1,t,'.k')

plot(t,0,'.r')

plot(t,sin(t),'.')

t1=(20-j)*pi/10;

t2=(21-j)*pi/10;

t=t1:0.01:t2;

axis([0,5*pi/2,-1,1])%限制动画的坐标显示大小plot(t,0,'.r')

plot(t,sin(t),'.')

end

m(:,i)=getframe;

end

movie(m,50)

4、实验结果:

5、实验总结:

使用matlab进行绘图觉得很有意思,简单的代码,却能绘出各种颜色的图形动画。在学习的过程中还是有很多的问题。还有很多方面的东西不够了解,只能边尝试边查询资料,让自己能够更了解,更明白。以便绘出更好的图形。

三、蛛网模型

学号1304090112班级统计0902姓名丁克明指导教师易昆南实验题目蛛网模型评分

1、设计(实习)目的:

1.学会运用Matlab解决实际问题

2.进一步掌握Matlab的一些基本操作

3.通过范例体会Matlab的初步建模过程

4学会用做动画

2、实验内容:

已知前两年的猪肉的产量和猪肉的价格分别为:39吨,28吨,12元/公斤,17元/公斤,根据前一年的猪肉价格影响后一年猪肉产量当年猪肉产量影响当年猪肉价格的线性关系,编写程序,利用动画原理画出前十年猪肉的产量——价格的动态图形。(参数设置为,

c1=39,c2=28,c3=36,

r1=12,r2=17,k=16)。

3、详细设计

clear

%c1为产量1,c2为产量2,c3为产量3,r1为

%肉价1,r2为肉价2,k为K年后产量与肉价

%是否稳定

hold off

c1=39;c2=28;c3=36;

r1=12;r2=17;k=16;

a1=[c11;c21];%系数矩阵

b1=[r1,r2]';%列向量

a2=[r11;r21];

b2=[c2,c3]';

a=a1\b1;

b=a2\b2;%

x0(1)=c1;

for n=1:30

y0(n)=a(1)*x0(n)+a(2);%a(1)a(2)为矩阵元素的引用,下行类似

x0(n+1)=b(1)*y0(n)+b(2);

x(n)=x0(n);

y(n)=x0(n+1);

end

plot(x,y0,'-g',y,y0,'-b')

hold on

m=moviein(100);

for n=1:k

for j=1:30

t1=x0(n)+(j-1)*(x0(n+1)-x0(n))/30;

t2=x0(n)+j*(x0(n+1)-x0(n))/30;

if t2

t=t1;

t1=t2;

t2=t;%这样做方便画图

else

end

t=t1:0.01:t2;

plot(t,y0(n),'.r')%划横线

t1=y0(n)+(j-1)*(y0(n+1)-y0(n))/30;

t2=y0(n)+j*(y0(n+1)-y0(n))/30;

if t2

t=t1;

t1=t2;

6、实验总结:

通过做此实验,让我对MATLAB有更进一步的了解,学会怎样才能正确运用MATLAB求解实际问题,了解如何利用数学模型去解释和分析社会经济问题,特别是这个典型经济问题的求解。我对MATLAB还不是特别熟悉,过程中遇到了很多问题,经过与同学讨论得到了良好的解决,希望以后会有进步。

四、水塔模型

学号1304090112班级统计0902姓名丁克明指导教师易昆南实验题目水塔问题评分

1、设计(实习)目的:

1掌握用MATLAB来求最值

2学会在一个闭区间求最值

3学会解决实际问题。

2、实验内容:

水塔问题:在地面上建有一座圆柱形水塔,水塔内部的直径为d,并且在地面处开了一个高为H

的小门.现在要对水塔内部进行维修施工,施工方案要求把一根长为l(l>d)的水管运到水塔内部.请

问水塔的门高H多高时,才有可能成功地把水管搬进水塔内?

3、详细设计

一:

Clear

function x=lt523(l,d,h)

k1=0;

a=0

l=7;

d=3

ymax=0;

k2=0;

b=pi/2;

h=3;

while(b-a)>10^(-2)

k2=k2+1;

m=0;

a=0;

if k1==0

n=ceil(b/h)-1

else

n=ceil(b/h);

end

for i=1:n+1;

x(i)=a+(i-1)*(b-a)/n;

y(i)=l*sin(x(i))-d*tan(x(i));

end

for i=1:n

if y(i)>ymax

ymax=y(i);

a=x(i-1);

else y(i)

b=x(i);

end

end

m=m+1;

k1=k1+1;

h=(b-a)/5;

end

a

b

x=(a+b)/2

t=0:0.01:1.35

y1=l*sin(t)-d*tan(t);

plot(t,y1,'-b')

方法:2

syms h x h=8*sin(x)-2*tan(x);

d1=0;d2=pi/2;

d0=(d1+d2)/2;

d=0.03;a=subs(h,x,d1);

b=subs(h,x,d2);

c=subs(h,x,d0);

for n=d1:d:d2

if(((c-a)/(d0-d1))*((b-c)/(d2-d0)))<0 d1=d1+d;d2=d2-d;d0=(d1+d2)/2; a=subs(h,x,d1);

b=subs(h,x,d2);

c=subs(h,x,d0);

end end

d0hold on

axis([0,pi/2,-5,5])

x=0:0.05:pi/2;

五、混沌问题

plot(x,8*sin(x)-2*tan(x),'-b')4、实验图像:

5、实验总结:

通过做此实验,让我对MATLAB 有更进一步的了解,学会怎样才能正确运用MATLAB 求解实际问题,了解如何利用数学模型去解释和分析社会经济问题,特别是这个典型经济问题的求解。我对MATLAB 还不是特别熟悉,过程中遇到了很多问题,经过与同学讨论得到了良好的解决,希望以后会有进步。

学号

1304090112班级

统计0902

姓名

丁克明

指导教师易昆南

实验题目

混沌问题

1、设计(实习)目的:

1.了解MATLAB 在实际问题中的应用

2.学会利用MATLAB 做图并求解实际问题2、实验内容:

利用迭代方法绘制混沌图形3、详细设计:x0=0.3;hold on

for k=1:100

a=3+(k-1)/100;

for i=1:300

x0=a*x0*(1-x0);

if i>100

plot(a,x0,'r.')

end

end

end

4、实验图像:

5、实验总结:

实际的绘图进一步让我体会到了matlab功能的强大。他能在实际生活中解决很多人工无法解决的复杂问题。

通过做此实验,让我对MATLAB有更进一步的了解,学会怎样才能正确运用MATLAB求解实际问题,了解如何利用数学模型去解释和分析社会经济问题,特别是这个典型经济问题的求解。我对MATLAB还不是特别熟悉,过程中遇到了很多问题,经过与同学讨论得到了良好的解决,希望以后会有进步。

六、koch曲线

学号1304090112班级统计0902姓名丁克明指导教师易昆南实验题目Koch曲线评分

1、设计(实习)目的:

1.了解MATLAB在实际问题中的应用

2.学会利用MATLAB做图并求解实际问题

2、实验内容:

绘制雪花曲线和其他一个美丽图形

3、详细设计:

1、雪花曲线

p=[00;100];

n=2;

A=[cos(pi/3)-sin(pi/3);sin(pi/3)cos(pi/3)];

for k=1:4

d=diff(p)/3;

m=4*n-3;

q=p(1:n-1,:);

p(5:4:m,:)=p(2:n,:);

p(2:4:m,:)=q+d;

p(3:4:m,:)=q+d+d*A';

p(4:4:m,:)=q+2*d;

n=m;

end

plot(p(:,1),p(:,2))

axis([010010])

2、

p=[010;100;0-10;-100;010];

n=5;

A=[0-1;10];

for k=1:5

d=diff(p)/3;m=4*n-3;

q=p(1:n-1,:);p(5:4:m,:)=p(2:n,:);

p(2:4:m,:)=q+d;

p(3:4:m,:)=q+2*d+d*A';

p(4:4:m,:)=q+2*d;

n=m;

end

plot(p(:,1),p(:,2))

axis([-1010-1010])

3、花草树木

p=[50;510];

n=2;

A=[cos(pi/3)-sin(pi/3);sin(pi/3)cos(pi/3)];

B=[cos(-pi/3)-sin(-pi/3);sin(-pi/3)cos(-pi/3)]; for k=1:4

d=diff(p)/3;

d1=d(1:2:n,:);

m=5*n;

q1=p(1:2:n-1,:);

p(10:10:m,:)=p(2:2:n,:);

p(1:10:m,:)=p(1:2:n,:);

p(2:10:m,:)=q1+d1;

p(3:10:m,:)=p(2:10:m,:);

p(4:10:m,:)=q1+d1+d1*A';

p(5:10:m,:)=p(2:10:m,:);

p(6:10:m,:)=q1+2*d1;

p(7:10:m,:)=p(6:10:m,:);

p(8:10:m,:)=q1+2*d1+d1*B';

p(9:10:m,:)=p(6:10:m,:);

n=m;

end

plot(p(:,1),p(:,2))

axis([010010])

4、实验图像:

1、雪花曲线

2、

3、

七、拉格朗日插值与三次样条插值以及曲线拟合

5、实验总结:

通过做此实验,让我对MATLAB 有更进一步的了解,学会怎样才能正确运用MATLAB 求解实际问题,了解如何利用数学模型去解释和分析社会经济问题,特别是这个典型经济问题的求解。我对MATLAB 还不是特别熟悉,过程中遇到了很多问题,经过与同学讨论得到了良好的解决,希望以后会有进步。

学号

1304090112班级

统计0902

姓名

丁克明

指导教师易昆南

实验题目

拉格朗日插值与三次样条插值以及曲线拟

1、设计(实习)目的:

1.了解MATLAB 在实际问题中的应用

2.学会利用MATLAB 做图并求解实际问题2、实验内容:

拉格朗日插值和曲线拟合

(拟合)用下面一组数据拟合0.0.2()kt c t a be =+中的参数a ,b ,k

j t 1002003004005006007008009001000

i

c 4.54 4.99 5.35 5.65 5.90 6.10 6.26 6.39 6.50 6.59

3、详细设计:1.拉格朗日插值x1=1:0.1:5;x0=[1,3,5];y0=[1,9,25];

x=[2,2.5,3,3.5,4,4.5];for i=1:6

s=0;

for k=1:3

p=1;

for j=1:3

if j~=k

p=p*(x(i)-x0(j))/(x0(k)-x0(j));end end

s=p*y0(k)+s;

end

y(i)=s;

end

plot(x1,x1.^2,'b',x,y,'*r')

2.三次样条插值

x0=0:0.1:5;

y0=x0.^2;

x=0:0.5:5;

y=interp1(x0,y0,x,'spline');

plot(x0,y0,'b',x,y,'*r')

3.曲线拟合

f=inline('x(1)+x(2)*exp(0.02*x(3)*tdata)','x','tdata'); tdata=100:100:1000;

cdata=[4.54,4.99,5.35,5.65,5.90,6.10,6.26,6.39,6.50,6.59]; [x,JM]=lsqcurvefit(f,[111],tdata,cdata);

x

JM

plot(tdata,cdata)

4、实验图像:

1.拉格朗日插值

2.三次样条插值

3.拟合

5、实验总结:

这次的试验个人觉得就拉格郎日的振荡比较难做,虽然写出来了一眼看的就很清楚,不过其思想还是找了挺多资料后在同学的帮助下才得以完成;至于其他的试验让我学习到了更多的知识,开阔了眼界,明白了多种方法,对于以后的解题思路有了更多的思考余地,这次试验中用到了拉格郎日插值法,分段线性插值,三次样条插值,拟合的基本原理

八、解线性方程组

学号1304090112班级统计0902姓名丁克明指导教师易昆南实验题目解线性方程组评分

1、设计(实习)目的:

1.了解MATLAB在实际问题中的应用

2.学会利用MATLAB做图并求解实际问题

2、实验内容:

1/比较用逆矩阵法、除法、克拉默法则解方程Ax=b的用时和误差

2/求解方程组最多零解

3、详细设计:

1、

A=rand(100)*1.e2;

x=ones(100,1);

b=A*x;

tic

y=inv(A)*b;

toc

err=norm(y-x)

res=norm(A*y-b)

tic

y=A\b;

toc

err=norm(y-x)

res=norm(A*y-b)

tic

a=det(A)

for i=1:100

MATLAB实验报告50059

实验一MATLAB操作基础 实验目的和要求: 1、熟悉MATLAB的操作环境及基本操作方法。 2、掌握MATLAB的搜索路径及设置方法。 3、熟悉MATLAB帮助信息的查阅方法 实验内容: 1、建立自己的工作目录,再设置自己的工作目录设置到MA TLAB搜索路径下,再试 验用help命令能否查询到自己的工作目录。 2、在MA TLAB的操作环境下验证课本;例1-1至例1-4,总结MATLAB的特点。 例1-1

例1-2 例1-3 例1-4

3、利用帮助功能查询inv、plot、max、round等函数的功能。 4、完成下列操作: (1)在matlab命令窗口输入以下命令: x=0:pi/10:2*pi; y=sin(x); (2)在工作空间窗口选择变量y,再在工作空间窗口选择回绘图菜单命令或在工具栏中单击绘图命令按钮,绘制变量y的图形,并分析图形的含义。

5、访问mathworks公司的主页,查询有关MATLAB的产品信息。 主要教学环节的组织: 教师讲授实验目的、开发环境界面、演示实验过程,然后同学上机练习。 思考题: 1、如何启动与退出MA TLAB集成环境? 启动: (1)在windows桌面,单击任务栏上的开始按钮,选择‘所有程序’菜单项,然后选择MA TLAB程序组中的MA TLABR2008b程序选项,即可启动 MATLAB系统。 (2)在MA TLAB的安装路径中找到MA TLAB系统启动程序matlab.exe,然后运行它。 (3)在桌面上建立快捷方式后。双击快捷方式图标,启动MA TLAB。 退出: (1)在MA TLAB主窗口file菜单中选择exitMATLAB命令。 (2)在MA TLAB命令窗口中输入exit或quit命令。 (3)单击MATLAB主窗口的关闭按钮。 2、简述MATLAB的主要功能。 MATLAB是一种应用于科学计算领域的数学软件,它主要包括数值计算和符 号计算功能、绘图功能、编程语言功能以及应用工具箱的扩展功能。 3、如果一个MATLAB命令包含的字符很多,需要分成多行输入,该如何处理?

Matlab实验报告3

实验三函数的可视化与Matlab作图 一、按要求绘制如下曲线(面): 1. 在[0,4pi]上画sin(x),cos(x)在同一图像中,其中cos(x)图像用红色小圆圈,并在函数图上标注“y=sin(x)”,”y=cos(x)”,X轴,Y轴,标题为“正弦余弦函数图像。”答:>> clear >> clf, x=linspace(0,4*pi,200);y1=sin(x);y2=cos(x); plot(x,y1,'k-',x,y2,'ro') >> title('正弦余弦函数图像。') >> legend('y=sin(x)','y=cos(x)') >> ylabel('\it{Y轴}'); >> xlabel('\it{X轴}'); 2.任意绘制彗星曲线图。 答:>> clf; >> x=[1:10]; y=[5 6 3 4 8 1 10 3 5 6]; >> z=0:0.1:100; x=sin(z);y=cos(z).*10; >> %三维彗星图 comet3(x,y,z) >> %二维彗星图

t = -pi:pi/200:pi; comet(t,tan(sin(t))-sin(tan(t)))

3.在多窗口中绘制y=sin(t)*sin(t);y1=sin(3*t+2.5);y2=sin(5*t+5)并加以标注。答:>> clf; t=0:0.1:4*pi; subplot(3,1,1),plot(sin(t).*sin(t)),legend('y=sin(t)*sin(t)') subplot(3,1,2),plot(sin(3*t+2.5)),legend('y1=sin(3*t+2.5)') subplot(3,1,3),plot(sin(5*t+5)),legend('y2=sin(5*t+5)') 4.自拟题目绘制三维线图。 绘制以下方程y1=sin(t),y2=cos(t),x=t在t=[0,2π] 对应的三维曲线。 >> clf; >> t=0:pi/10:2*pi; >> y1=sin(t);y2=cos(t); >> plot3(y1,y2,t);grid on; >> xlabel('Dependent Variable Y1'); >> ylabel('Dependent Variable Y2'); >> zlabel('Dependent Variable X'); >> title('Sin and Cos Curve');

Matlab数学实验报告一

数学软件课程设计 题目非线性方程求解 班级数学081 姓名曹曼伦

实验目的:用二分法与Newton迭代法求解非线性方程的根; 用Matlab函数solve、fzero、fsolve求解非线性方程(组)的解。 编程实现二分法及Newton迭代法; 学会使用Matlab函数solve、fzero、fsolve求解非线性方程(组)的解。 通过实例分别用二分法及迭代法解非线性方程组并观察收敛速度。 实验内容: 比较求exp(x)+10*x-2的根的计算量。(要求误差不超过十的五次方) (1)在区间(0,1)内用二分法; (2)用迭代法x=(2-exp(x))/10,取初值x=0 。 试验程序 (1)二分法: format long syms x s=exp(x)+10*x-2 a=0; b=1; A=subs(s,a) B=subs(s,b) f=A*B %若f<0,则为由根区间 n=0; stop=1.0e-5; while f<0&abs(a-b)>=stop&n<=100; Xk=(a+b)/2; %二分 M= subs(s, Xk); if M* A<0 symbol=1 %若M= subs(s, Xk)为正,则与a二分 b= Xk else symbol=0 % 若M= subs(s, Xk)为负,则与b二分 a= Xk end n=n+1 end Xk n (2)牛顿迭代法; format long

syms x s= (2-exp(x))/10; %迭代公式 f=diff(s); x=0; %迭代初值 a=subs(f,x); %判断收敛性(a是否小于1) s=(2-exp(x))/10; stop=1.0e-5; %迭代的精度 n=0; while a<1&abs(s-x)>=stop&n<=100; x=s %迭代 s=(2-exp(x))/10; n=n+1 end 实验结果: (1)二分法: symbol =1 b =0.50000000000000 n =1 symbol =1 b =0.25000000000000 n =2 symbol =1 b =0.12500000000000 n =3 symbol =0 a =0.06250000000000 n =4 symbol =1 b =0.09375000000000 n =5 symbol =0 a =0.07812500000000 n =6 symbol =1 b =0.09054565429688 n =15 symbol =1 b =0.09053039550781 n =16 symbol =0 a =0.09052276611328 n =17 Xk =0.09052276611328 n =17 (2)迭代法 由x =0.10000000000000 n =1 x =0.08948290819244 n =2 x =0.09063913585958 n =3 x =0.09051261667437 n =4 x =0.09052646805264 n =5 试验结果可见用二分法需要算17次,而用迭代法求得同样精度的解仅用5次,但由于迭代法一般只具有局部收敛性,因此通常不用二分法来求得非线性方程的精确解,而只用它求得根的一个近似解,再用收敛速度较快的迭代法求得其精确解。

MATLAB实验报告第三章

M3-1 (1)ts=0;te=5;dt=0.01; >>sys=tf([2,1],[1,3,2]); >> t=ts:dt:te; >> x=exp(-3*t).*heaviside(t); >> y=lsim(sys,x,t); >>plot(t,y); >>xlabel('time(sec)'); >>ylabel('y(t)'); 系统的零状态响应 (2)y 的数值解为: M3-2,在图示电路中(1)建立该系统的微分方程;(2)用inpulse 函数求系统的单位冲击响应; (3)用step 函数求系统的单位阶跃响应。 解:(1)有图可知,方程的微分方程为:LC/R*Y(t)’’+C*Y(t)’+Y(t)/R=X(t) 带入数据得 1/6*Y(t)’’+1/2*Y(t)’+Y(t)=X(t) (2)>>ts=0;te=5;dt=0.01; >>sys=tf([1],[1/6,1/2,1]); >> t=ts:dt:te; >> y=impulse(sys,t); >>plot(t,y); >>xlabel('Time(sec)') >>ylabel('h(t)') 00.51 1.52 2.5 3 3.5 4 4.55 time(sec)y (t )

系统的冲击响应 (3)>>ts=0;te=5;dt=0.01; >>sys=tf([1],[1/6,1/2,1]); >> t=ts:dt:te; >> y=step(sys,t); >>plot(t,y); >>xlabel('Time(sec)') >>ylabel('d(t)') M3_3求下列二阶系统的单位阶跃响应。 (1)y ’’(t)+0.2y ’(t)+y(t)=x(t) >>ylabel('d(t)') >>ts=0;te=10;dt=0.01; >>sys=tf([1],[1,0.2,1]); >> t=ts:dt:te; >> y=step(sys,t); >>plot(t,y) Time(sec)h (t )Time(sec)d (t )

MATLAB实验报告(1-4)

信号与系统MATLAB第一次实验报告 一、实验目的 1.熟悉MATLAB软件并会简单的使用运算和简单二维图的绘制。 2.学会运用MATLAB表示常用连续时间信号的方法 3.观察并熟悉一些信号的波形和特性。 4.学会运用MATLAB进行连续信号时移、反折和尺度变换。 5.学会运用MATLAB进行连续时间微分、积分运算。 6.学会运用MATLAB进行连续信号相加、相乘运算。 7.学会运用MATLAB进行连续信号的奇偶分解。 二、实验任务 将实验书中的例题和解析看懂,并在MATLAB软件中练习例题,最终将作业完成。 三、实验内容 1.MATLAB软件基本运算入门。 1). MATLAB软件的数值计算: 算数运算 向量运算:1.向量元素要用”[ ]”括起来,元素之间可用空格、逗号分隔生成行向量,用分号分隔生成列向量。2.x=x0:step:xn.其中x0位初始值,step表示步长或者增量,xn为结束值。 矩阵运算:1.矩阵”[ ]”括起来;矩阵每一行的各个元素必须用”,”或者空格分开; 矩阵的不同行之间必须用分号”;”或者ENTER分开。2.矩阵的加法或者减法运算是将矩阵的对应元素分别进行加法或者减法的运算。3.常用的点运算包括”.*”、”./”、”.\”、”.^”等等。

举例:计算一个函数并绘制出在对应区间上对应的值。 2).MATLAB软件的符号运算:定义符号变量的语句格式为”syms 变量名” 2.MATLAB软件简单二维图形绘制 1).函数y=f(x)关于变量x的曲线绘制用语:>>plot(x,y) 2).输出多个图像表顺序:例如m和n表示在一个窗口中显示m行n列个图像,p 表示第p个区域,表达为subplot(mnp)或者subplot(m,n,p) 3).表示输出表格横轴纵轴表达范围:axis([xmax,xmin,ymax,ymin]) 4).标上横轴纵轴的字母:xlabel(‘x’),ylabel(‘y’) 5).命名图像就在subplot写在同一行或者在下一个subplot前:title(‘……’) 6).输出:grid on 举例1:

数学实验“几种常见的求积分近似解的方法”实验报告(内含matlab程序)

西京学院数学软件实验任务书

实验二十一实验报告 一、实验名称:Romberg 积分法,Gauss 型积分法,高斯-勒让德积分法,高斯-切比雪夫积分法,高斯-拉盖尔积分法,高斯-埃尔米特积分法。 二、实验目的:进一步熟悉Romberg 积分法,Gauss 型积分法,高斯-勒让德积分法,高斯-切比雪夫积分法,高斯-拉盖尔积分法,高斯-埃尔米特积分法。 三、实验要求:运用Matlab/C/C++/Java/Maple/Mathematica 等其中一种语言完成程序设计。 四、实验原理: 1.Romberg 积分法: 龙贝格积分法是用里查森外推算法来加快复合梯形求积公式的收敛速度,它的算法如下,其中()i m T 是通过一系列逼近原定积分的龙贝格分值. 计算(0)1[()()]2 b a T f a f b -= + 对1,2,3,k n = ,计算下列各步: 21()(1)1 111 1(21)()[()]222k k k k k j b a j b a T T f a ---=---=++∑

对1,2,,m k = 和,1,2,,1i k k k =-- ,计算111 441 m i i i m m m m T T T --+-=- 随着计算的步骤的增加,()i m T 越来越逼近积分()b a f x dx ?。 2.Gauss 型积分法: 高斯积分公式的思想是用n 个不等距的节点123,,,n x x x x 对被积函数进行插值,然后对插值后的函数进行积分,其积分公式为: 1 1 1 ()()n k k k f x dx A f x -=≈∑? 如果积分区间不是[1,1]-,则需转换到此区间: 11()()222 b a b a b a b a f x dx f t dt ---+= +? ? 其中系数k A 、节点k x 与n 的关系如下表所示: 3.高斯-切比雪夫积分法: 第一类切比雪夫积分形式为: 1 1 ()()n k k k f x dx A f x -=≈∑? 其中k A n π= ,21cos 2k k x n π-= 4.高斯-拉盖尔积分法: 高斯-拉盖尔公式有两种形式: 1 ()()n x k k k e f x dx A f x +∞ -=≈∑?

matlab实验报告3详解

实验四、LTI系统的响应 课程名称: MATLAB应用技术专业班级:通信1422 学生学号: 1430119231 学生姓名:周妍智 所属院部:电子信息工程系指导教师:徐树梅 2015 —— 2016 学年第二学期

实验项目名称: LTI 系统的响应 实验学时: 16 学生姓名: 周妍智 实验地点: 微机11 实验日期: 2016.4.17 实验成绩: 批改教师: 徐树梅 批改时间: 一、 实验目的 1. 熟悉连续时间系统的单位冲激响应、阶跃响应的意义及求解方法 2. 熟悉连续(离散)时间系统在任意信号激励下响应的求解方法 3. 熟悉应用MATLAB 实现求解系统响应的方法 二、 实验原理 1.连续时间系统 对于连续的LTI 系统,当系统输入为f (t ),输出为y (t ),则输入与输出之间满足如下的线性常系数微分方程: () ()0 ()()n m i j i j i j a y t b f t ===∑∑,当系统输入为单位冲激信号δ(t )时产生 的零状态响应称为系统的单位冲激响应,用h(t)表示。若输入为单位阶跃信号ε(t )时,系统产生的零状态响应则称为系统的单位阶跃响应,记为g(t),如下图所示。 系统的单位冲激响应h (t )包含了系统的固有特性,它是由系统本身的结构及参数所决定的,与系统的输入无关。我们只要知道了系统的冲激响应,即可求得系统在不同激励下产生的响应。因此,求解系统的冲激响应h(t )对我们进行连续系统的分析具有非常重要的意义。 在MATLAB 中有专门用于求解连续系统冲激响应和阶跃响应, 并绘制其时域波形的函数impulse( ) 和step( )。如果系统输入为f (t ),冲激响应为h(t),系统的零状态响应为y (t ),则有:()()()y t h t f t =*。 若已知系统的输入信号及初始状态,我们便可以用微分方程的经典时域求解方法,求出系统的响应。但是对于高阶系统,手工计算这一问题的过程非常困难和繁琐。 在MATLAB 中,应用lsim( )函数很容易就能对上述微分方程所描述的系统的响应进行仿真,求出系统在任意激励信号作用下的响应。lsim( )函数不仅能够求出连续系统在指定的任意时间范围内系统响应的数值解,而且还能同时绘制出系统响应的时域波形图。 以上各函数的调用格式如下: ⑴ impulse( ) 函数 函数impulse( )将绘制出由向量a 和b 所表示的连续系统在指定时间范围内的单位冲激响应h (t )的时域波形图,并能求出指定时间范围内冲激响应的数值解。

MATLAB实验报告

实验一 名称:连续时间信号分析 姓名:王嘉琦 学号:201300800636 班级:通信二班 一、实验目的 (一)掌握使用Matlab 表示连续时间信号 1、学会运用Matlab 表示常用连续时间信号的方法 2、观察并熟悉常用信号的波形和特性 (二)掌握使用Matlab 进行连续时间信号的相关运算 1、学会运用Matlab 进行连续时间信号的时移、反褶和尺度变换 2、学会运用Matlab 进行连续时间信号微分、积分运算 3、学会运用Matlab 进行连续时间信号相加、相乘运算 4、学会运用Matlab 进行连续时间信号卷积运算 二、实验条件 Matlab 三、实验内容 1、利用Matlab 命令画出下列连续信号的波形图。 (1))4/3t (2cos π+ 代码: k=2;w=3;phi=pi/4; t=0:0.01:3; ft=k*cos(w*t+phi); plot(t,ft),grid on; axis([0,3,-2.2,2.2]) title('余弦信号')

(2) )t (u )e 2(t -- 代码: k=-1;a=-1; t=0:0.01:3; ft=2-k*exp(a*t); plot(t,ft),grid on axis([0,3,2,3]) title('指数信号')

(3))]2()(u )][t (cos 1[--+t u t π 代码: k=1;w=pi;phi=0; t=0:0.01:2; ft=1+k*cos(w*t+phi); plot(t,ft),grid on; axis([0,3,0,2]) title('余弦信号')

matlab数学实验报告5

数学实验报告 制作成员班级学号 2011年6月12日

培养容器温度变化率模型 一、实验目的 利用matlab软件估测培养容器温度变化率 二、实验问题 现在大棚技术越来越好,能够将温度控制在一定温度范围内。为利用这种优势,实验室现在需要培植某种适于在8.16℃到10.74℃下能够快速长大的甜菜品种。为达到实验所需温度,又尽可能地节约成本,研究所决定使用如下方式控制培养容器的温度:1,每天加热一次或两次,每次约两小时; 2,当温度降至8.16℃时,加热装置开始工作;当温度达到10.74℃时,加热装置停止工作。 已知实验的时间是冬天,实验室为了其它实验的需要已经将实验室的温度大致稳定在0℃。下表记录的是该培养容器某一天的温度 时间(h)温度(℃)时间(h)温度(℃)09.68 1.849.31 0.929.45 2.959.13 3.878.981 4.989.65 4.988.811 5.909.41 5.908.691 6.839.18 7.008.5217.938.92 7.938.3919.048.66 8.978.2219.968.43 9.89加热装置工作20.848.22 10.93加热装置工作22.02加热装置工作10.9510.8222.96加热装置工作12.0310.5023.8810.59 12.9510.2124.9910.35 13.889.9425.9110.18 三、建立数学模型 1,分析:由物理学中的傅利叶传热定律知温度变化率只取决于温度

差,与温度本身无关。因为培养容器最低温度和最高温度分别是:8.16℃和10.74℃;即最低温度差和最高温度差分别是:8.16℃和10.74℃。而且,16.8/74.10≈1.1467,约为1,故可以忽略温度对温度变化率的影响2, 将温度变化率看成是时间的连续函数,为计算简单,不妨将温度变化率定义成单位时间温度变化的多少,即温度对时间连续变化的绝对值(温度是下降的),得到结果后再乘以一系数即可。 四、问题求解和程序设计流程1)温度变化率的估计方法 根据上表的数据,利用matlab 做出温度-时间散点图如下: 下面计算温度变化率与时间的关系。由图选择将数据分三段,然后对每一段数据做如下处理:设某段数据为{(0x ,0y ),(1x ,1y ),(2x , 2y ),…,(n x ,n y )},相邻数据中点的平均温度变化率采取公式: 温度变化率=(左端点的温度-右端点的温度)/区间长度算得即:v( 2 1i i x x ++)=(1+-i i y y )/(i i x x - +1). 每段首尾点的温度变化率采用下面的公式计算:v(0x )=(30y -41y +2y )/(2x -0x )v(n x )=(3n y -41+n y +2+n y )/(n x -2-n x )

MATLAB程序设计教程(第二版)第三章实验报告下载

大学社区网收集整理https://www.wendangku.net/doc/da13178901.html, 评分 日期湖南商学院北津学院实验报告 课程名称MATLAB科学计算编程语言 实验名称MATLAB程序设计 专业班级信科1121班 姓名xxx 学号xxx 实验日期2012年11月5日 2012—2013学年度第一学期 一、实验目的 1.掌握利用if语句、switch语句实现选择结构的方法。 2.掌握利用for语句、while语句实现循环结构的方法。 3.熟悉利用向量运算来代替循环操作的方法并理解MATLAB程序设计的特点 4.掌握定义和调用MATLAB函数的方法。

二、实验环境 系统windows7旗舰版 处理器Intel(R)Core(TM)i7-3610M CPU @ 2.30GHz 安装内存 4.00GB (3.07GB 可用)系统类型64位操作系统运行环境 MATLAB 5.3 三、实验基本原理 利用上课所学知识解决以下问题: 1.从键盘输入一个3位数的整数,将它反向输出。如输入639,输出936。 2.输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。 要求: (1)分别用if 语句和switch 语句实现。 (2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。3.输入20个数,求其中最大数和最小数。要求分别用循环结构和调用MATLAB 的max 函数、min 函数来实现。 4.23.0ln )3.0sin(23.03.0a a e e y a a +++?=?,当a 取-3.0、-2.9、-2.8、…、2.8、2.9、 3.0时,求各点的函数值。要求分别用顺序结构和循环结构实现。 5.当n 分别取100、1000、10000时,求下列各式的值: (1)) 6...(n 1...31211122222π=+++++(2)) 2...()12)(12()2)(2(...756653443122π =??? ?????+?????????××????????××????????××n n n n 要求分别用循环结构和向量运算(使用sum 函数)来实现。 6.建立5×6矩阵,要求输出矩阵第n 行元素。当n 值超过矩阵的行数时,自动转为输出矩阵最后一行元素,并给出出错信息。 7已知,o999 ) 20()30()40(f f f y += (1)当)5ln(10)(2 ++=n n n f 时,y 的值是多小。 (2)当+×+×+×=433221)(n f …+)1(+×n n 时,y 的值是多小。 8.先用函数的递归调用定义一个函数文件求 ∑=n i m i 1,然后调用该函数文件求

MATLAB实验报告

MATLAB程序设计语言 实 验 报 告 专业及班级:电子信息工程 姓名:王伟 学号:1107050322 日期 2013年6月20日

实验一 MATLAB 的基本使用 【一】 实验目的 1.了解MATALB 程序设计语言的基本特点,熟悉MATLAB 软件的运行环境; 2.掌握变量、函数等有关概念,掌握M 文件的创建、保存、打开的方法,初步具备将一般数学问题转化为对应计算机模型处理的能力; 3.掌握二维图形绘制的方法,并能用这些方法实现计算结果的可视化。 【二】 MATLAB 的基础知识 通过本课程的学习,应基本掌握以下的基础知识: 一. MATLAB 简介 二. MATLAB 的启动和退出 三. MATLAB 使用界面简介 四. 帮助信息的获取 五. MATLAB 的数值计算功能 六. 程序流程控制 七. M 文件 八. 函数文件 九. MATLAB 的可视化 【三】上机练习 1. 仔细预习第二部分内容,关于MATLAB 的基础知识。 2. 熟悉MATLAB 环境,将第二部分所有的例子在计算机上练习一遍 3. 已知矩阵???? ??????=??????????=123456789,987654321B A 。求A*B ,A .* B ,比较二者结果是否相同。并利用MATLAB 的内部函数求矩阵A 的大小、元素和、长度以 及最大值。 程序代码: >> A=[1 2 3;4 5 6;7 8 9]; >> B=[9 8 7;6 5 4;3 2 1]; >> A*B ans =

30 24 18 84 69 54 138 114 90 >> A.*B ans = 9 16 21 24 25 24 21 16 9 两者结果不同 >> [m,n]=size(A) m = 3 n = 3 >> b=sum(A) b = 12 15 18 >> a=length(A) a = 3 >>max(A) ans =

MATLAB实验报告

数字信号处理及MATLAB 实验报告 班级: 学号: 姓名:

4.7.2 例4,2 设x(n)是由两个正弦信号及白噪声的叠加,试用FFT文件对其作频谱分析。程序清单 %产生两个正弦加白噪声 N=256; f1=.1;f2=.2;fs=1; a1=5;a2=3; w=2*pi/fs; x=a1*sin(w*f1*(0:N-1))+a2*sin(w*f2*(0:N-1))+randn(1,N); %应用FFT求频谱 subplot(2,2,1); plot(x(1:N/4)); title('原始信号'); f=-0.5:1/N:0.5-1/N; x=fft(x); y=ifft(x); subplot(2,2,2); plot(f,fftshift(abs(x))); title('频域信号'); subplot(2,2,3); plot(real(x(1:N/4))); title('时域信号');

例4.3 设x(n)为长度N=6的矩形序列,用MATLAB程序分析FFT取不同长度时x(n)频谱的变化。N=8,32,64,时x(n)的FFT MATLAB实现程序如下。 x=[1,1,1,1,1,1]; N=8; y1=fft(x,N); n=0:N-1; subplot(3,1,1);stem(n,abs(y1),'.k');axis([0,9,0,6]); N=32; y2=fft(x,N); n=0:N-1; subplot(3,1,2);stem(n,abs(y2),'.k');axis([0,40,0,6]); N=64; y3=fft(x,N); subplot(3,1,3);stem(n,abs(y3),'.k');axis([0,80,0,6]);

MATLAB实验报告实例

MATLAB课程设计 院(系)数学与计算机学院 专业信息与计算科学 班级 学生姓名 学号 指导老师赵军产 提交日期

实验内容: 1. Taylor逼近的直观演示用Taylor 多项式逼近y = sin x. 已知正弦函数的Taylor 逼近式为 ∑= - - -- =≈ n k k k k x x P x 1 1 2 1 !)1 2( )1 ( ) ( sin. 实验目的: 利用Taylor多项式逼近y = sin x,并用图形直观的演示。 实验结果报告(含基本步骤、主要程序清单、运行结果及异常情况记录等): 1.将k从1取到5,得到相应的P = x-1/6*x^3+1/120*x^5-1/5040*x^7+1/362880*x^9; 2.用MATLAB进行Taylor逼近,取x的范围是(- 3.2,3.2);程序清单如下: syms x; y = sin(x); p = x - (x^3)/6 + (x^5)/120 - (x^7)/5040 + (x^9)/362880 x1 = -3.2:0.01:3.2; ya = sin(x1); y1 = subs(p,x,x1); plot(x1,ya,'-',x1,y1)

4.程序运行正常。 思考与深入: 取y = sin x 的Taylor 多项式为P 的逼近效果很良好,基本接近y = sin x 的图像,不过随着k 的取值变多,逼近的效果会越来越好。 实验内容: 2. 数据插值 在(,)[8,8][8,8]x y =-?-区域内绘制下面曲面的图形: 222 2 sin( )x y z x y += + 并比较线性、立方及样条插值的结果。 .

MATLAB实验报告实验二

实验二 MATLAB矩阵及其运算 学号:3121003104 姓名:刘艳琳专业:电子信息工程1班日期:2014.9.20 一实验目的 1、掌握Matlab数据对象的特点以及数据的运算规则。 2、掌握Matlab中建立矩阵的方法以及矩阵处理的方法。 3、掌握Matlab分析的方法。 二实验环境 PC_Windows 7旗舰版、MATLAB 7.10 三实验内容 4、1. (1)新建一个.m文件,验证书本第15页例2-1; (2)用命令方式查看和保存代码中的所有变量;

(3)用命令方式删除所有变量; (4)用命令方式载入变量z。 2. 将x=[4/3 1.2345e-6]在以下格式符下输出:短格式、短格式e方式、长格式、长格式e方式、银行格式、十六进制格式、+格式。 短格式 短格式e 长格式

长格式e方式 银行格式 十六进制格式 3.计算下列表达式的值 (1)w=sqrt(2)*(1+0.34245*10^(-6)) (2)x=(2*pi*a+(b+c)/(pi+a*b*c)-exp(2))/(tan(b+c)+a) a=3.5;b=5;c=-9.8; (3)y=2*pi*a^2*((1-pi/4)*b-(0.8333-pi/4)*a) a=3.32;b=-7.9; (4)z=0.5*exp(2*t)*log(t+sqrt(1+t*t)) t=[2,1-3i;5,-0.65];

4. 已知A=[1 2 3 4 5 ;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20],对其进行如下操作:(1)输出A在[ 7, 10]范围内的全部元素; (2)取出A的第2,4行和第1,3,5列; (3)对矩阵A变换成向量B,B=[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20]; (4)删除A的第2,3,4行元素; (1) (2)

浅析Matlab数学实验报告

数学实验报告 姓名: 班级: 学号: 第一次实验任务 过程: a=1+3i; b=2-i; 结果: a+b =3.0000 + 2.0000i a-b =-1.0000 + 4.0000i a*b = 5.0000 + 5.0000i a/b = -0.2000 + 1.4000i 过程: x=-4.5*pi/180; y=7.6*pi/180; 结果: sin(abs(x)+y)/sqrt(cos(abs(x+y))) =0.2098 心得:对于matlab 中的角度计算应转为弧度。 (1)过程: x=0:0.01:2*pi; y1=sin(x); y2=cos(x); y3=exp(x); y4=log(x); plot(x,y1,x,y2,x,y3,x,y4) plot(x,y1,x,y2,x,y3,x,y4) 结果: (2)过程:>> subplot(2,2,1) >> plot(x,y1) >> subplot(2,2,2) >> plot(x,y2) ./,,,,2,311b a b a b a b a i b i a ?-+-=+=计算、设有两个复数 6,7,5.4)

cos()sin(2=-=++y x y x y x ,其中、计算的图形。 下分别绘制)同一页面四个坐标系)同一坐标系下(、在( x y e y x y x y x ln ,,cos ,sin 213==== >> subplot(2,2,3) >> plot(x,y3) >> subplot(2.2.4) >> subplot(2,2,4) >> plot(x,y4) 结果: 心得:在matlab中,用subplot能够实现在同一页面输出多个坐标系的图像,应注意将它与hold on进行区别,后者为在同一坐标系中划出多条曲线。 5、随机生成一个3x3矩阵A及3x2矩阵B,计算(1)AB,(2)对B中每个元素平方后得到的矩阵C,(3)sinB,(4)A的行列式,(5)判断A是否可逆,若可逆,计算A的逆矩阵,(6)解矩阵方程AX=B,(7)矩阵A中第二行元素加1,其余元素不变,得到矩阵D,计算D。 过程:A=fix(rand(3,3).*10) ; B=fix(rand(3,3).*10);

《MATLAB及应用》实验报告4

实验报告 实验项目名称MATLAB绘图 所属课程名称MATLAB及应用 实验类型上机实验 实验日期2015年12月日指导教师谢芹 班级 学号 姓名 成绩

一、实验名称 MATLAB绘图 二、实验目的 (1)掌握绘制二维图形的常用函数。 (2)掌握绘制三维图形的常用函数。 (3)掌握绘制图形的辅助操作 三、实验原理 1. 绘制二维图形的常用函数 plot函数绘制二维曲线,常用格式有: plot(x):缺省自变量的绘图格式,x可为向量或矩阵。 plot(x, y):基本格式,x和y可为向量或矩阵。 plot(x1, y1, x2, y2,…):多条曲线绘图格式,在同一坐标系中绘制多个图形。 plot(x, y, ‘s’):开关格式,开关量字符串s设定了图形曲线的颜色、线型及标示符号。 2. 绘制三维图形的常用函数 (1)三维曲线图——plot3函数 plot3(x1, y1, z1, 's1', x2, y2, z2, 's2'…) (2)三维网格图——mesh函数为数据点绘制网格线: mesh(z) —— z为n×m的矩阵,x与y坐标为元素的下标位置 mesh(x, y, z) —— x, y, z分别为三维空间的坐标位置 (3)三维曲面图——由surf函数完成的,用法和mesh类似。 3. 绘制图形的辅助操作 title ——给图形加标题 xlable ——给x轴加标注 ylable ——给y轴加标注 text ——在图形指定的任意位置加标注 gtext ——利用鼠标将标注加到图形任意位置 grid on ——打开坐标网格线

grid off ——关闭坐标网格线 legend —— 添加图例 axis —— 控制坐标轴刻度 4. 特殊坐标系 极坐标图形—— polar(theta,rho(i,:)) 四、实验内容 1、绘制23sin(23)26 t y t e π-=+和它的导数在[0,4π]的曲线,并用适当的字体、大小标注其x 轴、y 轴及其函数。 2、采用两种不同方法绘制224y x xe z --=在]3,3[,-∈y x 的三维(透视)网格曲面。(提示:ezmesh; mesh; hidden ) 3、绘制下列极坐标图形 r=3(1-cos θ) r=2(1+cos θ) r=2(1+sin θ) r=cos3 θ r=exp(4π θ) 4、在同一坐标内,分别用不同线型和颜色绘制曲线0.510.2cos4x y e x π-= 和0.522cos x y e x π-=,标记两曲线交叉点。 五、实验过程及结果(含源代码) 六、实验总结

matlab实验报告

Matlab实验报告 ——定积分的近似计算 学生姓名: 学号: 专业:数学与应用数学专业

数学实验报告 实验序号:1001114030 日期:2012年10月20日 班级应一姓名陈璐学号1001114030 实验名称:定积分的近似运算 问题背景描述: 利用牛顿—莱布尼茨公式虽然可以精确地计算定积分的值,但它仅适合于被积分函数的原函数能用初等函数表达出来的情形。如果这点办不到或不容易办到, 这就有必要考虑近似计算的方法。在定积分的很多应用问题中,被积函数甚至没 有解析表达式,可能只是一条实验记录曲线,或者是一组离散的采样值,这时只 能应用近似方法去计算相应的定积分。 实验目的: 本实验将主要研究定积分的三种近似计算算法:矩形法、梯形法、抛物线发。对于定积分的近似数值计算,Matlab有专门函数可用。 实验原理与数学模型: 1.sum(a):求数组a的和。 2.format long:长格式,即屏幕显示15位有效数字。 3.double():若输入的是字符则转化为相应的ASCII码;若输入的是整型数之则转化为 相应的实型数值。 4.quad():抛物线法求数值积分。格式:quad(fun,a,b)。此处的fun是函数,并且

为数值形式,所以使用*、/、^等运算时要在其前加上小数点。 5.trapz():梯形法求数值积分。格式:trapz(x,y)。其中x为带有步长的积分区间;y为数 值形式的运算。 6.fprintf(文件地址,格式,写入的变量):把数据写入指定文件。 7.syms 变量1变量2……:定义变量为符号。 8.sym('表达式'):将表达式定义为符号。 9.int(f,v,a,b):求f关于v积分,积分区间由a到b。 10.subs(f,'x',a):将a的值赋给符号表达式f中的x,并计算出值。若简单地使用subs (f),则将f的所有符号变量用可能的数值代入,并计算出值。 实验所用软件及版本:Matlab 7.0.1

MATLAB原理应用实验报告第三章(符号运算)

《MATLAB原理及应用》实验报告 第三章MATLAB的符号运算 一.实验目的 1、掌握符号对象的命名方法 2、掌握符号表达式的基本运算 3、掌握符号级数的求法 二.实验设备 计算机、MATLAB软件 三.实验内容 1.确定符号表达式的变量 为了简化符号对象的操作和计算,MATLAB为用户提过了findsym命令。 r=findsym(S)确定符号表达式或者矩阵S中自由符号变量 r=findsym(S,n)确定符号表达式或者矩阵S中靠近x最近的n个独立符号变量。【实验3-1】使用MA TLAB的命令确定符号表达式的变量。 在MATLAB的命令窗口中输入下例内容: >> syms a x y z t 确定下面简单符号表达式中的符号变量信息: >>findsym(sin(pi*t)) ans = t 确定下面简单符号表达式中的符号变量信息: >>findsym(x+i*y-j*z) ans = x, y, z 确定下面简单符号表达式中的符号变量信息: >>findsym(a+y,1) ans = y 2.符号表达式元算 1.符号表达式的四则运算 表达式的四则运算与数字运算一样,用+、-、/、运算符实现,其运算结果依然是一个符号表达式。

【实验3-2】 在MATLAB的命令窗口中输入下例内容: >>f=sym('2*x^2+3*x-5');%定义符号表达式 g=sym('x^2-x+7'); f+g ans = 3*x^2+2*x+2 ans = 3*x^2+2*x+2 >> f^g ans = (2*x^2+3*x-5)^(x^2-x+7) 3.符号表达式的提取分子和分母运算 如果符号表达式是一个有理分式或可以展开为有理分式,可以可利用numden函数来提取符号表达式的分子或分母。期一般调用格式为[n,d]=numden函数来提取符号表达式 该函数提取的符号表达式s的分子和分母,分别将它们存放在n和d中。 【实验3-3】 在MA TLAB的命令窗口中输入下例内容: >> f= sym('a*x/(b+x)'); >> [n,d]=numden(f) n = a*x d = b+x numden函数在提取各部分之前,将符号表达式有利化后返回所得分子和分母 >> g=sym('(x^2+3)/(2*x-1)+3*x/(x+1)'); >> [n,d]=numden(g) n = x^3+7*x^2+3 d = (2*x-1)*(x+1) 如果符号表达式是一个符号矩阵,numden返回两个新矩阵n和d,其中n 是分子矩阵,d是分母矩阵。 >> h=sym('[3/2,(2*x+1)/3;a/x+a/y,x+4]') h = [ 3/2, (2*x+1)/3] [ a/x+a/y, x+4] >> [n,d]=numden(h) n = [ 3, 2*x+1] [ a*(y+x), x+4] d = [ 2, 3]

matlab实验报告

实验报告 实验课程:MATLAB综合实验 学生姓名: 学号: 专业班级: 2012年 5 月 20 日 实验四模拟滤波器频率特性测试 一、实验目的 1、掌握低通无源滤波器的设计; 2、学会将无源低通滤波器向带通、高通滤波器的转换; 3、了解常用有源低通滤波器、高通滤器、带通滤波器、带阻滤波器的结构与特性; 二、预备知识 1、学习“模拟滤波器的逼近”; 2、系统函数的展开方法; 3、低通滤波器的结构与转换方法; 预习报告中回答以下问题: 1、实际中常用的滤波器电路类型有哪些,有何特点? 2、有源滤波器、无源滤波器的概念,优缺点和各自的应用场合? 3、绘出低通、带通、带阻、高通四种滤波器的理想频响曲线及实际频响曲线,两者 有何根本区别,产生原因? 三、实验原理 模拟滤波器根据其通带的特征可分为: (1)低通滤波器:允许低频信号通过,将高频信号衰减; (2)高通滤波器:允许高频信号通过,将低频信号衰减; (3)带通滤波器:允许一定频带范围内的信号通过,将此频带外的信号衰减; (4)带阻滤波器:阻止某一频带范围内的信号通过,而允许此频带以外的信号衰减; 各种滤波器的频响特性图: 图2一1低通滤波器图2一2高通滤波器 图2一3带通滤波器图2一4带阻滤波器 在这四类滤波器中,又以低通滤波器最为典型,其它几种类型的滤波器均可从它转 化而来。 1、系统的频率响应特性是指系统在正弦信号激励下系统的稳态响应随激励信号频率变

化的情况。用矢量形式表示: 其中:|H(j ω)|为幅频特性,表示输出信号与输入信号的幅度比随输入信号频率的变化关系;φ(ω)为相频特性,表示输出信号与输入信号的相位差随输入信号频率的变化关系。 2、H(j ω)可根据系统函数H(s)求得:H(j ω)= H(s)︱s=j ω因此,对于给定的电路可根椐S 域模型先求出系统函数H(s),再求H(j ω),然后讨论系统的频响特性。 3、频响特性的测量可分别测量幅频特性和相频特性,幅频特性的测试采用改变激励信号的频率逐点测出响应的幅度,然后用描图法描出幅频特性曲线;相频特性的测量方法亦可改变激励信号的频率用双踪示波器逐点测出输出信号与输入信号的延时τ,根椐下面的公式推算出相位差 当响应超前激励时为 ()φω正,当响应落后激励时()φω为负。 四、实验原理图 图2一5实验电路 图中:R=38k Ω,C=3900pF ,红色框内为实验板上的电路。 五、实验前预习内容: 1、写出原理图中高、低通及并联后滤波器网络的电压移函数,计算截止频率,并画出幅 频特性及相频特性曲线; 2、测试频率特性时,测试点频率应如何选取。 六、实验内容及步骤: 将信号源CH1的信号波形调为正弦波,信号的幅度调为Vpp=10V 。 1、RC 高通滤波器的频响特性的测量: 将信号源的输出端(A)接实验板的IN1端,滤波后的信号OUT1接示波器的输入(B) 。根据被测电路的参数及系统的频特性,将输入信号的频率从低到高逐次改变十 次以上(幅度保持Vipp=10v) , 逐个测量输出信号的峰峰值大小(Vopp)及输出信号与输入信号的相位差 ,并将测量数据填入表一: 表一 得到幅频特性为: 2.RC 低通滤波器的频响特性的测量: 将信号源的输出(A)接实验板的IN2,滤波后的输出信号OUT2接示波器的输入(B) 。根

相关文档