当前位置:文档之家› 基于matlab的数学实验-高等数学中的若干问题

基于matlab的数学实验-高等数学中的若干问题

基于matlab的数学实验-高等数学中的若干问题
基于matlab的数学实验-高等数学中的若干问题

基于MATLAB的数学实验

——高等数学中的若干问题(一)§1.1数列及其极限

1.1.1引言

极限(Limit )是高等数学中应用最普遍的基本概念之一,因而,正确地理解和把握极限的概念是非常重要的,借助于直观的想象和解释,不仅可以帮助我们理解和把握这一表述抽象的数学定义,而且对利用极限定义的其他数学概念如微分(Differential)、积分(Integral)和无穷级数的敛散性(Convergence and Divergence of Infinite Series)等重要概念的理解也是有帮助的。

1.1.2数列的收敛与发散

例1.1

让我们首先考察如下的数列:

x

n

n

n

=

+

sin()

12

,n=12

,, (1.1)

如果我们把x

n 看成是沿x轴运动的点P在t n

=时刻所处的位置,那么容易

看出(也容易证明),随着时间t→+∞,动点P趋近于原点0。这个事实可借助于软件MATLAB直观地观察到,应用如下程序

sequence01.m:

%CONVERGENCE AND LIMIT OF SEQUENCE

k=700;

n=1:3:k;

x=sin(n)./(10+n);

e=input('Input epsilon, Please: epsilon=')

t=e\10;

for m=1:t;

if m>1/e;

N=m

break

end

end

plot(n,x)

hold on

title('CONVERGENCE AND LIMIT OF SEQUENCE')

gtext('xn = sin(n)/(10+n)')

可得到图1.1:

用上述程序还可以对任意给定的ε>0,求出N,使得当n N

>时,满足不等

式:x

n -<

0ε。此外,我们还可以使用MATLAB程序文件seqnummovie1.m和

seqnummovie2.m演示动点P趋近于原点0的动态过程。这两个文件如下:

seqmovie01.m:

l=2;

m=moviein(l);

k=100;

n=1:k;

x=sin(n)./(10+n);

for j=1:1

for i=1:k/2

plot(x(2.*i),n(2.*i),'ro'); axis([-0.15,0.15,-200,1E+4]) m(:,j)=getframe;

end

end

movie(m)

seqmovie02.m:

l=10

M = moviein(l);

k=1000;

n=1:k;

y=n-n;

for i=1:10

for j=1:k

x(j)=10*sin(j-i)/(10+j-i);

end

plot(n,y,'r')

hold on

plot(n(5*i),x(5*i),'o');

hold on

plot(n(10*i),x(10*i),'o');

hold on

plot(n(20*i),x(20*i),'o');

hold on

plot(n(30*i),x(30*i),'o');

plot(n(40*i),x(40*i),'o');

hold on

plot(n(50*i),x(50*i),'o');

plot(n(60*i),x(60*i),'o');

hold on

plot(n(70*i),x(70*i),'o');

plot(n(80*i),x(80*i),'o');

hold on

plot(n(90*i),x(90*i),'o'); plot(n(100*i),x(100*i),'o'); axis([0,1020,-0.5,0.5]) M(:,i) = getframe; hold off end

movie(M,12)

plot(n(1:3:k),x(1:3:k),n,y,'r')

1.1.3 思考与实验

为了对极限概念的理解以及极限问题的讨论和计算,特别是对高等数学中的两个在理论上和应用方面都十分重要的极限:

lim lim lim lim n n n n

x x x

x n y x →∞→∞→∞→∞=+?

? ??

?=+?? ????????????

?1111 (1.2) lim lim sin lim lim sin n n n x x x n n y x x →∞→∞→→∞=?? ?

?

?=?

??

???10 (1.3) 可以通过类似的实验进行研究和讨论,此外,下面的问题也是重要的,并且需要研究和讨论: 问题与实验1.1

选择适当的例子找出收敛数列(函数)趋近于极限的典型方式,并通过实验进行观察,你能发现多少种不同的收敛的方式? 问题与实验1.2

选择适当的例子找出发散数列(函数)的典型发散方式(过程),并通过实验进行观察,你能发现多少种不同的发散的方式? 下面的例子可能是具有启发性的: 例1.2

()[

]

x n n

n n

=++-10112

, n =12,, (1.4)

由于当n m =2时,x n n n =+102;由于当n m =+21时,x n

n =10

,所以数列{}x n 有两个典型的子数列: 发散的子数列:m m

x m 45

2+=

; 收敛的子数列:x m m 2110

21

+=

+; 程序文件sequence04.m 绘制的图1.2显示了数列{}x n 的演化过程,文件内容如下:

sequence02.m :

n=1:50;

x=10./n+(1+(-1).^n).*n; y=n-n; grid

for i=1:50;

if 2*round(n(i)/2)~=n(i) plot(n(i),x(i),'r*') axis([0,50,-10,110]) hold on else

plot(n(i),x(i),'*') axis([0,50,-10,110]) hold on end end

plot(n,y,'k')

title('Example two of sequence') gtext('subsequence one') gtext('subsequence two') hold off

大家还可以根据自己的研究和实验目的构造各种适宜的数列(数学模型),并借助于MATLAB进行实验和研究。

§1.2关于数项级数的实验与讨论

通过学习高等数学,读者已经初步认识到级数做为描述变量间关系的一种数学模型,在理论分析和科学计算方面起着重要的作用。借助于功能强大的科学计算软件MATLAB进行实验和研究,可以得到直观的认识。为了能有效地使用级数这一工具于科学研究和工程实践,正确地理解和把握级数的基本性质是首要的前提。

例1.3

考察P 级数:

S n

p

n ==∞

1

1, (1.5) 级数(1.5)的前n 项和S k n p k n

==∑

1

1

,其收敛性条件为: p p >≤??

?11,,收敛

发散

, 并且在p >1的情况下,p 越大S n 的收敛速度越快,p 越小S n 的收敛速度越慢,这一事实即可以通过简单地理论证明,也可以从下面的图示中明显地观察到:

绘制图1.3的MATLAB 程序文件 series01.m 如下:

series01.m :

n=1:200;

x1=1./n.^1.5;

x2=1./n.^2;

x3=1./n.^3;

k=200;

S1=zeros(size(x1));

S2=zeros(size(x2));

S3=zeros(size(x3));

S1(1)=x1(1);

S2(1)=x2(1);

S3(1)=x3(1);

for i=1:k-1

S1(i+1)=S1(i)+x1(i+1);

S2(i+1)=S2(i)+x2(i+1);

S3(i+1)=S3(i)+x3(i+1);

end

for i=1:k-1

if i<=10

plot(n(i),S1(i),'.',n(i),S2(i),'g.',n(i),S3(i),'r.')

hold on

elseif 3*round(n(i)/3)==n(i)

plot(n(i),S1(i),'.',n(i),S2(i),'g.',n(i),S3(i),'r.')

hold on

end

end

axis([0,k,0.8,2.6])

title('Example One of Series')

gtext('p=1.5')

gtext('p=2')

gtext('p=3')

hold off

例1.4

下面让我们来研究发散的P级数和Euler常数C。图1.4以P=0.9、1、1.5为例,使用程序文件series02.m:

series02.m:

n=1:500;

x1=1./n.^0.9;

x2=1./n;

x3=1./n.^1.5;

k=length(n);

S1=zeros(size(x1));

S2=zeros(size(x2));

S3=zeros(size(x3));

S1(1)=x1(1);

S2(1)=x2(1);

S3(1)=x3(1);

for i=1:k-1

S1(i+1)=S1(i)+x1(i+1);

S2(i+1)=S2(i)+x2(i+1);

S3(i+1)=S3(i)+x3(i+1);

end

for i=1:k-1

if i<=10

plot(n(i),S1(i),'.',n(i),S2(i),'g.',n(i),S3(i),'r.') hold on

elseif 15*round(n(i)/15)==n(i)

plot(n(i),S1(i),'.',n(i),S2(i), 'g.',n(i),S3(i),'r.') hold on

end

end

%axis([0,k,0.8,2.6])

title('Example One of Series')

gtext('p=0.9')

gtext('p=1')

gtext('p=1.5')

hold off

图1.4描述了三个P 级数的前n 项和S n 的演化情形,从中可以看出,当

n =500时,第三个P 级数(P =1.5)的前n 项和S n 几乎停止增长.而前两个级

数的前n 项和S n 仍有明显的增长趋势(增长速度是多少?)。让我们进一步讨论P =1(调和级数)的发散情形。大家已经知道数列L n n =+ln()1是发散的,现在我们考察级数

()x S L k

n n n n k n

=-=-+=∑111ln ,n =12,, (1.6) 的敛散性,先思考一下,这是两个发散级数的差,在没有具体讨论之前你对数列x n 的敛散性有何见解?下面的图1.5可提供一个直观的启示:

图1.5直观地提示我们:1、数列x

n 是单调增的;2、随着n的增加,x

n

的增长

速度趋近于零,事实上,利用程序文件series03.m: series03.m:

n=1:500;

C=0.57721567+0.*n;

L=log(1+n);

u=1./n;

k=length(n);

S=zeros(size(u));

S(1)=u(1);

for i=1:k-1

S(i+1)=S(i)+u(i+1);

end

x=S(n)-L(n);

plot(n,C,n,x,'r')

axis([0,k,0.3,0.65])

title('Euler Constant and Harmonic Series')

gtext('Euler Constant')

gtext('Harmonic Series')

mx=vpa(x(k),10)

可以进一步地验证:

n=1000,x n=0.5767160812;

n=10000,x n=0.5771656691;

n=50000,x n=0.5772056651,

的增长速度曲线如图1.6所示。

x

n

上述数据和通过实验得到的曲线揭示了数列x

收敛的可能性,事实上,数学家

n

的极限存在性,其极限值就是著名的Euler 常已经在理论上严格证明了数列x

n

数C=0.57721567…,目前人们还不知道Euler 常数是有理数还是无理数。

问题与实验1.3

能否给出数列x

n 收敛的几何解释?当然这需要首先体会到S

n

、特别是

L

n

的几何意义。

问题与实验1.4

根据你对数列x

n

收敛的几何解释(如果你确实得到了它的几何解释),你

能对数列x

n

做出怎样的不等式估计?首先得到的不等式估计是什么?你能对数

列x

n

做出的最精确的不等式估计是什么?

问题与实验1.5

也许你已经发现x

n

实质上是某个级数的前n项和(你能否写出这个级数的表

达式?),基于这样的思考角度,你对提出和讨论对x

n

做不等式估计的意义有何理解?给出的不等式估计、特别是精确的不等式估计可能用于那些方面?

问题与实验1.6

通过对问题1.3和问题1.4的讨论,你认为级数和积分、特别是和无穷区间广义积分之(Improper Integral)间有无内在的本质联系?如果你认为有联系,它们之间的联系是什么样的?

§1.3 关于函数项级数的简单实验与讨论

首先我们研究一下n

x

n

x

x/)

*

sin(

3/)

*

3

sin(

)

sin(+

+

+

的图象

x=-2*pi:0.01:2*pi;

%n=input('please input the variable n=')

for n=2:3:50

y=sin(x);

for i=1:n

y=y+sin((2*i+1)*x)/(2*i+1);

end plot(x,y) pause end

问题与实验1.7

通过此例的图象以及问题本身的形式,你是否能够得到在∞→n 的情况下此例有更简单的表达式?并是否得到其内在的联系?如果有,对于你的想法给出充分的证明!

§1.4 关于Fourier 级数的实验与讨论(一般了解)

我们知道以T 为周期的函数()f t ,如果满足Dirichlet 条件,那么就可以展成Fourier 级数,并且在区间[]-T T 22

,上的连续点处Fourier 级数的三角形式和指数形式分别为:

()()f t a a n t b n t n n n =++=∞

∑0

1

2cos sin ωω (1.7)

()f t c c e c e n jn t n n j t

n n =+

=

=-∞

=-∞

∑∑0ωω (1.8)

其中ωπ

=

2T

是基频,ωωn n =是第n 项的频率,以及 ()a T

f t n tdt n T T =-?

22

2cos ω n =012,,, (1.9)

()b T

f t n tdt n T T =

-?

2

2

2sin ω n =12,, (1.10)

()c T f t e dt n jn t

T T

=--?12

2ω, n =±±012,,, (1.11) 是相应形式Fourier 级数的系数, 问题与实验1.8

选择适当的函数将其展成相应的Fourier 级数,通过实验观察随着展开项的增加其逼近程度如何?

§1.5 关于Tylor 级数的简单实验及其进一步的问题(一般了解)

Tylor 展式是高等数学中非常重要的一个部分,无论对其他问题理论的充实

还是对某些问题的实际求解,都发挥着举足轻重的作用。因而我们在掌握其理论的同时,如果能进一步了解其内在的实质,就能将其作用发挥得淋漓尽致。最后,借助于直观的图象,不仅可以帮助我们理解和把握其数学性质,而且对进一步掌握其内在本质起到一定的作用。Tylor 展式的一般形式为

()()n n n x x n x f x f x f )(!

)

(01

0)(0-+=∑

= 特殊地,若00=x ,称其为麦克劳林(Maclaurin )展式,几种典型(你所记得的有哪几种?)的麦克劳林展式在实际应用中很有作用,首先以)sin(x 的麦克劳林展式为例,研究其随着展开项的增加其逼近程度:

x=-2*pi:0.01:2*pi; y1=sin(x); y2=x-x.^3/6; y3=y2+x.^5/120; y4=y3-x.^7/(1200*6*7);

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实验作业

数学软件与数学实验作业 一.《数学软件》练习题(任选12题,其中19-24题至少选2题): 3.对下列各式进行因式分解. (1). syms x y >> factor(x^5-x^3) (2). syms x y >> factor(x^4-y^4) (3). syms x >> factor(16-x^4) (4). syms x >> factor(x^3-6*x^2+11*x-6) (5). syms x y >> factor((x+y)^2-10*(x+y)+25) (6). syms x y >> factor(x^2/4+x*y+y^2) (7). syms x y a b >> factor(3*a*x+4*b*y+4*a*y+3*b*x) (8). syms x >> factor(x^4+4*x^3-19*x^2-46*x+120) 5.解下列方程或方程组. (1).solve('(y-3)^2-(y+3)^3=9*y*(1-2*y)') (2). solve('3*x^2+5*(2*x+1)') (3). solve('a*b*x^2+(a^4+b^4)*x+a^3*b^3','x') (4). solve('x^2-(2*m+1)*x+m^2+m','x') (5). [x,y]=solve('4*x^2-9*y^2=15','2*x-3*y=15') 6.计算极限. (1). syms x f=(exp(x)-exp(-x))/sin(x); limit(f,x,0) (2) syms x >> f=(x/(x-1)-1/log(x)); >> limit(f,x,1) (3). syms x >> f=(1-cos(x))/x^2; >> limit(f,x,0)

MATLAB数学实验第二版答案(胡良剑)

数学实验答案 Chapter 1 Page20,ex1 (5) 等于[exp(1),exp(2);exp(3),exp(4)] (7) 3=1*3, 8=2*4 (8) a为各列最小值,b为最小值所在的行号 (10) 1>=4,false, 2>=3,false, 3>=2, ture, 4>=1,ture (11) 答案表明:编址第2元素满足不等式(30>=20)和编址第4元素满足不等式(40>=10) (12) 答案表明:编址第2行第1列元素满足不等式(30>=20)和编址第2行第2列元素满足不等式(40>=10) Page20, ex2 (1)a, b, c的值尽管都是1,但数据类型分别为数值,字符,逻辑,注意a与c相等,但他们不等于b (2)double(fun)输出的分别是字符a,b,s,(,x,)的ASCII码 Page20,ex3 >> r=2;p=0.5;n=12; >> T=log(r)/n/log(1+0.01*p) Page20,ex4 >> x=-2:0.05:2;f=x.^4-2.^x; >> [fmin,min_index]=min(f) 最小值最小值点编址 >> x(min_index) ans = 0.6500 最小值点 >> [f1,x1_index]=min(abs(f)) 求近似根--绝对值最小的点 f1 = 0.0328 x1_index = 24 >> x(x1_index) ans = -0.8500 >> x(x1_index)=[];f=x.^4-2.^x; 删去绝对值最小的点以求函数绝对值次小的点 >> [f2,x2_index]=min(abs(f)) 求另一近似根--函数绝对值次小的点 f2 = 0.0630 x2_index = 65 >> x(x2_index) ans = 1.2500

matlab微积分基本运算

matlab 微积分基本运算 §1 解方程和方程组解 1. 线性方程组求解 对于方程 AX = B ,其中 A 是( m ×n )的矩阵有三种情形: 1)当n=m 且A 非奇异时,此方程为“恰定”方程组。 2)当 n > m 时,此方程为“超定”方程组。 3)当n

0.3188 两种方法所求方程组的解相同。 (2)MATLAB 解超定方程AX=B 的方法 对于方程 AX = B ,其中 A 是( m ×n )的矩阵, n > m ,如果A 列满秩,则此方程是没有精确解的。然而在实际工程应用中,求得其最小二乘解也是有意义的。基本解法有: 1)采用求伪逆运算解方程 x=pinv(A)*B 说明:此解为最小二乘解x=inv(A ’*A)*A*B,这里pinv(A) =inv(A ’*A)*A. 2)采用左除运算解方程 x=A\B 例2 “求伪逆”法和“左除”法求下列方程组的解 ??? ??=+=+=+1 221421 221 2121x x x x x x 命令如下: >> a=[1 2;2 4;2 2]; >> b=[1,1,1]'; >> xc=a\b %用左除运算解方程 运行得结果: xc = 0.4000 0.1000 >> xd=pinv(a)*b %用求伪逆运算解方程 运行得结果: xd = 0.4000 0.1000 >> a*xc-b %xc 是否满足方程ax=b 运行得结果: ans = -0.4000 0.2000 0.0000 可见xc 并不是方程的精确解。 (3) MATLAB 解欠定方程AX=B 的方法 欠定方程从理论上说是有无穷多个解的,如果利用求“伪逆”法和“左除”法来求解,只能得到其中一个解。基本方法: 1)采用求伪逆运算解方程 x=pinv(A)*B 2)采用左除运算解方程

高等数学MATLAB实验三 不定积分、定积分及其应用 实验指导书

实验三 不定积分、定积分及其应用 【实验类型】验证性 【实验学时】2学时 【实验目的】 1.掌握用MA TLAB 求函数不定积分、定积分的方法; 2.理解定积分的概念及几何意义; 3.掌握定积分的应用; 【实验内容】 1.熟悉利用MATLAB 计算不定积分的命令、方法; 2.通过几何与数值相结合的方法演示定积分的概念和定积分的几何意义; 【实验目的】 1.掌握利用MATLAB 计算不定积分的命令、方法; 2.通过几何与数值相结合的方法演示定积分的概念和定积分的几何意义; 3.掌握利用MATLAB 计算定积分、广义积分的命令、方法; 4.掌握利用MA TLAB 计算有关定积分应用的各种题型,包括平面图形的面积、旋转体的体积、平面曲线的弧长等; 【实验前的预备知识】 1.原函数与不定积分的概念; 2.不定积分的换元法和分部积分法; 3.定积分的概念; 4.微积分基本公式; 5.广义积分的敛散性及计算方法; 6.利用定积分计算平面图形的面积; 7.利用定积分计算旋转体的体积; 8.利用定积分计算平面曲线的弧长; 【实验方法或步骤】 一、实验使用的MATLAB 函数 1.int( f (x ) , x ); 求()f x 的不定积分; 2.int( f (x ), x , a , b );求()f x 在[,]a b 上的定积分;

3.int( f (x ) , x , -inf, inf );计算广义积分()d f x x ∞ -∞?; 4.solve('eqn1','eqn2',...,'eqnN','var1,var2,...,varN');求解n 元方程组; 二、实验指导 例1 计算不定积分cos 2x e xdx ? 。 输入命令: syms x; int(exp(x)*cos(2*x),x) 运行结果: ans = 1/5*exp(x)*cos(2*x)+2/5*exp(x)*sin(2*x) 例2 计算不定积分 。 输入命令: syms x; int(1/(x^4*sqrt(1+x^2))) 运行结果: ans = -1/3/x^3*(1+x^2)^(1/2)+2/3/x*(1+x^2)^(1/2) 例3 以几何图形方式演示、理解定积分()b a f x dx ?概念,并计算近似值。 先将区间[,]a b 任意分割成n 份,为保证分割加细时,各小区间的长度趋于0,在取分点时,让相邻两分点的距离小于2()/b a n -,分点取为()()/i i x a i u b a n =++-([0,1]i u ∈为随机数),在每一区间上任取一点1()i i i i i c x v x x +=+-([0,1]i v ∈为随机数)作积分和进行计算,程序如下: function juxs(fname,a,b,n) % 定积分概念演示,随机分割、 随机取近似,并求近似值 xi(1)=a; xi(n+1)=b; for i=1:n-1 xi(i+1)=a+(i+rand(1))*(b-a)/n; end

MATLAB实验报告

实验一 MATLAB 环境的熟悉与基本运算 一、实验目的及要求 1.熟悉MATLAB 的开发环境; 2.掌握MATLAB 的一些常用命令; 3.掌握矩阵、变量、表达式的输入方法及各种基本运算。 二、实验内容 1.熟悉MATLAB 的开发环境: ① MATLAB 的各种窗口: 命令窗口、命令历史窗口、工作空间窗口、当前路径窗口。 ②路径的设置: 建立自己的文件夹,加入到MATLAB 路径中,并保存。 设置当前路径,以方便文件管理。 2.学习使用clc 、clear ,了解其功能和作用。 3.矩阵运算: 已知:A=[1 2;3 4]; B=[5 5;7 8]; 求:A*B 、A.*B ,并比较结果。 4.使用冒号选出指定元素: 已知:A=[1 2 3;4 5 6;7 8 9]; 求:A 中第3列前2个元素;A 中所有列第2,3行的元素; 5.在MATLAB 的命令窗口计算: 1) )2sin(π 2) 5.4)4.05589(÷?+ 6.关系及逻辑运算 1)已知:a=[5:1:15]; b=[1 2 8 8 7 10 12 11 13 14 15],求: y=a==b ,并分析结果 2)已知:X=[0 1;1 0]; Y=[0 0;1 0],求: x&y+x>y ,并分析结果 7.文件操作 1)将0到1000的所有整数,写入到D 盘下的文件 2)读入D 盘下的文件,并赋给变量num

8.符号运算 1)对表达式f=x 3 -1 进行因式分解 2)对表达式f=(2x 2*(x+3)-10)*t ,分别将自变量x 和t 的同类项合并 3)求 3(1)x dz z +? 三、实验报告要求 完成实验内容的3、4、5、6、7、8,写出相应的程序、结果

MATLAB软件与基础数学实验

软件与基础数学实验 实验1 基本特性与基本运算 例1-1求[12+2×(7-4)]÷32的算术运算结果。 >> >> (12+2*(7-4))/3^2 s = 2 例1-2计算5!,并把运算结果赋给变量y 1; 1:5 *i; y 例1-3计算2开平方 >> 2^(0.5) s = 1.4142 >> 例1-4 计算2开平方并赋值给变量x(不显示) 查看x的赋值情况 2; ^(0.5); x 例1-4设 75 , 24= - =b a,计算|) tan(| |) | | sin(| b a b a + + 的值。 (-24)/180*; 75/180*; a1(a); b1(b); ();

(a11)/((c))^(0.5) 例1-5 设三角形三边长为2,3,4===c b a ,求此三角形的面积。 432; ()/2; (p*()*()*())^(0.5) 例1-7 设 ??????????=101654321A ,?? ??? ?????-=112311021B ,计算||,,A AB B A +,1-A 。 [1,2,3;4,5,6;1,0,1]; [-1,2,0;1,1,3;2,1,1]; ; *b; (a); (a); 例1-8 显示上例中矩阵A 的第2行第3列元素,并对其进行修改. [1,2,3;4,5,6;1,0,1]; (2,3); a(2,3)(' ') 例1-9 分别画出函数x x y cos 2 =和x x z sin = 在区间[-6π,6π]上的图形。 1; 1/6*:0.01:1/6*; (x.*x).*(x); (x); (); 例1-10 试求方程组??????????=????????? ?--432201624121X 的解。 [1,2,1;4,261,0,2]; [2;3;4]; (a)*b 例1-11 试求矩阵方程??????=????? ?????--111321201624121X 的解。 [1,2,1;4,261,0,2]; [1,2,3;1,1,1]; *(a)

MATLAB数学实验100例题解

一元函数微分学 实验1 一元函数的图形(基础实验) 实验目的 通过图形加深对函数及其性质的认识与理解, 掌握运用函数的图形来观察和分析 函数的有关特性与变化趋势的方法,建立数形结合的思想; 掌握用Matlab 作平面曲线图性的方法与技巧. 初等函数的图形 2 作出函数x y tan =和x y cot =的图形观察其周期性和变化趋势. 解:程序代码: >> x=linspace(0,2*pi,600); t=sin(x)./(cos(x)+eps); plot(x,t);title('tan(x)');axis ([0,2*pi,-50,50]); 图象: 程序代码: >> x=linspace(0,2*pi,100); ct=cos(x)./(sin(x)+eps); plot(x,ct);title('cot(x)');axis ([0,2*pi,-50,50]); 图象: cot(x) 4在区间]1,1[-画出函数x y 1 sin =的图形. 解:程序代码: >> x=linspace(-1,1,10000); y=sin(1./x); plot(x,y); axis([-1,1,-2,2]) 图象:

二维参数方程作图 6画出参数方程???==t t t y t t t x 3cos sin )(5cos cos )(的图形: 解:程序代码: >> t=linspace(0,2*pi,100); plot(cos(t).*cos(5*t),sin(t).*cos(3*t)); 图象: 极坐标方程作图 8 作出极坐标方程为10/t e r =的对数螺线的图形. 解:程序代码: >> t=0:0.01:2*pi; r=exp(t/10); polar(log(t+eps),log(r+eps)); 图象: 90270 分段函数作图 10 作出符号函数x y sgn =的图形. 解:

(完整版)Matlab学习系列15.数值计算—高数篇

15. 数值计算—高数篇 一、求极限 limit(f,x,a)——求极限 lim ()x a f x → limit(f,x,a,'right')——求右极限 lim ()x a f x +→ limit(f,x,a,'left')——求左极限 lim ()x a f x -→ 例1 求 2352 lim sin 53x x x x →∞++ 代码: syms x; y=(3*x^2+5)/(5*x+3)*sin(2/x); limit(y,x,inf) 运行结果:ans = 6/5 注:Matlab 求二元函数的极限,是用嵌套limit 函数实现的,相当于求的是累次极限,需要注意:有时候累次极限并不等于极限。 例2 求 30 lim 2x x x x a b +→?? + ??? 代码: syms x a b; y=((a^x+b^x)/2)^(3/x); limit(y,x,0,'right') 运行结果:ans = a^(3/2)*b^(3/2) 二、求导 diff(f,x,n)——求函数f 关于x 的n 阶导数,默认n=1

例3 求1sin 1cos x y x += +的1阶导数,并绘图 代码: syms x a b; y=((a^x+b^x)/2)^(3/x); limit(y,x,0,'right') 运行结果: y1 = cos(x)/(cos(x) + 1) + (sin(x)*(sin(x) + 1))/(cos(x) + 1)^2 例4 设sin xy z e =,求2,,z z z x y x y ??????? 代码: syms x y; z=exp(sin(x*y)); zx=diff(z,x) zy=diff(z,y) zxy=diff(zx,y) % 也等于diff(zy,x) -5 5 5 10 15 20 25 x (sin(x) + 1)/(cos(x) + 1) -5 05 -20 -15 -10-5 05 10 1520 25x cos(x)/(cos(x) + 1) + (sin(x) (sin(x) + 1))/(cos(x) + 1) 2

数学软件MATLAB实验报告 实验八

实验八:概率论与数理统计的MATLAB 实现 实验目的与要求: 能运用MATLAB 提供的针对概率统计课程的工具箱。 实验内容: 1、用normpdf函数计算正态概率密度函数。 该函数的调用格式为:Y=normpdf(X,MU,SIGMA) 2、用normpdf函数计算正态分布的分布函数。 该函数的调用格式为:F=normcdf(X,MU,SIGMA) 3、用chi2inv函数计算卡方分布的分布函数的逆函数。 分布函数的逆函数及其调用格式:x=chi2inv(P,v) 4、随机取8只活塞环,测得他们直径为(以mm计): 74.001 74.005 74.003 74.001 74.000 73.998 74.006 74.002 。 设环直径的测量值服从正态分布,现估计总体的方差2 程序代码: x=[74.001 74.005 74.003 74.001 74.000 73.998 74.006 74.002]; p=mle('norm',x); sigma2hatmle=p(2)^2 5、从一批灯泡中随机的取5只做寿命试验,测得寿命(以小时计)为: 1050 1100 1120 1250 1280 设灯泡寿命服从正态分布,求灯泡寿命平均值的95%置信区间。 程序代码: x=[1050 1100 1120 1250 1280]; [p,ci]=mle('norm',x,0.05) 6、下面列出的是某工厂随机选取的20只部件的装配时间(分): 9.8 10.4 10.6 9.6 9.7 9.9 10.9 11.1 9.6 10.2

10.3 9.6 9.9 11.2 10.6 9.8 10.5 10.1 10.5 9.7 设装配时间的总体服从正态分布,标准差为0.4,是否可以认为装配时间的均值在0.05的水平上不小于10. 0H :10<μ vs 1H :10≥μ 程序: %正态总体的方差已知时的均值检验 x1=[9.8 10.4 10.6 9.6 9.7 9.9 10.9 11.1 9.6 10.2]; x2=[10.3 9.6 9.9 11.2 10.6 9.8 10.5 10.1 10.5 9.7]; x=[x1 x2]'; m=10;sigma=0.4;a=0.05; [h,sig,muci]=ztest(x,m,sigma,a,1) 因此,在0.05的水平下,可以认为装配时间的均值不小于10。 7、某种电子元件的寿命x (以小时计)服从正态分布,2 δμ和均未知。现测得16只元件的寿命如下: 159 280 101 212 224 379 179 264 222 362 168 250 149 260 485 170 问是否有理由认为元件的平均寿命大于225(小时)? 0H :225≤μ vs 1H :225>μ 程序: %正态总体的方差求知时的均值检验 x=[159 280 101 212 224 379 179 264 222 362 168 250 149 260 485 170]; m=225;a=0.05; [h,sig,muci]=ttest(x,m,a,1)

实验一B Matlab基本操作与微积分计算

实验一Matlab基本操作与微积分计算 实验目的 1.进一步理解导数概念及其几何意义. 2.学习matlab的求导命令与求导法. 3.通过本实验加深理解积分理论中分割、近似、求和、取极限的思想方法. 4.学习并掌握用matlab求不定积分、定积分、二重积分、曲线积分的方法. 5.学习matlab命令sum、symsum与int. 实验内容 一、变量 1、变量 MA TLAB中变量的命名规则是: (1)变量名必须是不含空格的单个词; (2)变量名区分大小写; (3)变量名最多不超过19个字符; (4)变量名必须以字母打头,之后可以是任意字母、数字或下划线,变量名中不允许使用标点符号. 1、创建简单的数组 x=[a b c d e f ]创建包含指定元素的行向量 x=first:step: last创建从first起,逐步加step计数,last结束的行向量, step缺省默认值为1 x=linspace(first,last,n)创建从first开始,到last结束,有n个元素的行向量 x=logspace(first,last,n)创建从first开始,到last结束,有n个元素的对数分隔行向量. 注:以空格或逗号分隔的元素指定的是不同列的元素,而以分号分隔的元素指定了不同行的元素. 2、数组元素的访问 (1)访问一个元素: x(i)表示访问数组x的第i个元素. (2)访问一块元素: x(a :b :c)表示访问数组x的从第a个元素开始,以步长为b到第c个元素(但

不超过c),b可以为负数,b缺损时为1. (3)直接使用元素编址序号: x ([a b c d]) 表示提取数组x的第a、b、c、d个元素构成一个新的数组[x (a) x (b) x(c) x(d)]. 3、数组的运算 (1)标量-数组运算 数组对标量的加、减、乘、除、乘方是数组的每个元素对该标量施加相应的加、减、乘、除、乘方运算. 设:a=[a1,a2,…,an], c=标量, 则: a+c=[a1+c,a2+c,…,an+c] a .*c=[a1*c,a2*c,…,an*c] a ./c= [a1/c,a2/c,…,an/c](右除) a .\c= [c/a1,c/a2,…,c/an] (左除) a .^c= [a1^c,a2^c,…,an^c] c .^a= [c^a1,c^a2,…,c^an] (2)数组-数组运算 当两个数组有相同维数时,加、减、乘、除、幂运算可按元素对元素方式进行的,不同大小或维数的数组是不能进行运算的. 设:a=[a1,a2,…,an], b=[b1,b2,…,bn], 则: a +b= [a1+b1,a2+b2,…,an+bn] a .*b= [a1*b1,a2*b2,…,an*bn] a ./b= [a1/b1,a2/b2,…,an/bn] a .\b=[b1/a1,b2/a2,…,bn/an] a .^b=[a1^b1,a2^b2,…,an^bn] 三、矩阵 1、矩阵的建立 矩阵直接输入:从“[ ” 开始,元素之间用逗号“,”(或空格),行之间用分号“;”(或回车),用“ ]”结束. 特殊矩阵的建立: a=[ ] 产生一个空矩阵,当对一项操作无结果时,返回空矩阵,空矩阵的大小为零. b=zeros (m,n) 产生一个m行、n列的零矩阵 c=ones (m,n) 产生一个m行、n列的元素全为1的矩阵 d=eye (m,n) 产生一个m行、n列的单位矩阵 eye (n) %生成n维的单位向量 eye (size (A)) %生成与A同维的单位阵 2、矩阵中元素的操作 (1)矩阵A的第r行A(r,:) (2)矩阵A的第r列A(:,r) (3)依次提取矩阵A的每一列,将A拉伸为一个列向量A(:) (4)取矩阵A的第i1~i2行、第j1~j2列构成新矩阵:A(i1:i2, j1:j2) (5)以逆序提取矩阵A的第i1~i2行,构成新矩阵:A(i2:-1:i1,:) (6)以逆序提取矩阵A的第j1~j2列,构成新矩阵:A(:, j2:-1:j1 ) (7)删除A的第i1~i2行,构成新矩阵:A(i1:i2,:)=[ ] (8)删除A的第j1~j2列,构成新矩阵:A(:, j1:j2)=[ ] (9)将矩阵A和B拼接成新矩阵:[A B];[A;B] 3、矩阵的运算 (1)标量-矩阵运算同标量-数组运算. (2)矩阵-矩阵运算 a. 元素对元素的运算,同数组-数组运算.(A/B %A右除B; B\A%A左除B) b. 矩阵运算: 矩阵加法:A+B 矩阵乘法:A*B 方阵的行列式:det(A) 方阵的逆:inv(A)

南邮MATLAB数学实验答案(全)

第一次练习 教学要求:熟练掌握Matlab 软件的基本命令和操作,会作二维、三维几何图形,能够用Matlab 软件解决微积分、线性代数与解析几何中的计算问题。 补充命令 vpa(x,n) 显示x 的n 位有效数字,教材102页 fplot(‘f(x)’,[a,b]) 函数作图命令,画出f(x)在区间[a,b]上的图形 在下面的题目中m 为你的学号的后3位(1-9班)或4位(10班以上) 1.1 计算30sin lim x mx mx x →-与3 sin lim x mx mx x →∞- syms x limit((902*x-sin(902*x))/x^3) ans = 366935404/3 limit((902*x-sin(902*x))/x^3,inf) ans = 0 1.2 cos 1000 x mx y e =,求''y syms x diff(exp(x)*cos(902*x/1000),2) ans = (46599*cos((451*x)/500)*exp(x))/250000 - (451*sin((451*x)/500)*exp(x))/250 1.3 计算 22 11 00 x y e dxdy +?? dblquad(@(x,y) exp(x.^2+y.^2),0,1,0,1) ans = 2.1394 1.4 计算4 2 2 4x dx m x +? syms x int(x^4/(902^2+4*x^2)) ans = (91733851*atan(x/451))/4 - (203401*x)/4 + x^3/12 1.5 (10)cos ,x y e mx y =求 syms x diff(exp(x)*cos(902*x),10) ans = -356485076957717053044344387763*cos(902*x)*exp(x)-3952323024277642494822005884*sin(902*x)*exp(x) 1.6 0x =的泰勒展式(最高次幂为4).

Matlab 实验

一、实验目的 熟悉MATLAB 软件的用户环境;了解MATLAB 软件的一般命令;掌握MATLAB 向量、数组、矩阵操作与运算函数;掌握MATLAB 软件的基本绘图命令;掌握MATLAB 语言的几种循环、条件和开关选择结构,及其编程规范。 通过该实验的学习,使学生能灵活应用MATLAB 软件解决一些简单问题,能借助MATLAB 软件的绘图功能,对函数的特性进行探讨,广泛联想,大胆猜想,发现进而证实其中的规律。 二、实验仪器、设备或软件: 电脑,MATLAB 软件 三、实验内容 1.MATLAB 软件的数组操作及运算练习; 2.直接使用MATLAB 软件进行作图练习; 3.用MATLAB 语言编写命令M 文件和函数M 文件。 四、实验步骤 1.在D 盘建立一个自己的文件夹; 2.开启软件平台——MATLAB ,将你建立的文件夹加入到MATLAB 的搜索路径中; 3.利用帮助了解函数max, min, sum, mean, sort, length ,rand, size 和diag 的功能和用法; 4.开启MATLAB 编辑窗口,键入你编写的M 文件(命令文件或函数文件); 5.保存文件(注意将文件存入你自己的文件夹)并运行; 6.若出现错误,修改、运行直到输出正确结果; 7.写出实验报告,并浅谈学习心得体会。 五、实验要求与任务 根据实验内容和步骤,完成以下具体实验,要求写出实验报告(实验目的→问题→算法与编程→计算结果或图形→心得体会) 1. 已知矩阵??????????=321212113A , ???? ??????--=101012111B 要求:(1)屏幕输出A 与B ;(2)A 的转置A′;(3)求A+B 的值;(4)求A-B 的值;(5)求4A ;(6)求A×B ;(7)求A -1.

MATLAB_实验04 多元函数微积分

实验04 多元函数微积分 一实验目的 (2) 二实验内容 (2) 三实验准备 (2) 四实验方法与步骤 (3) 五练习与思考 (7)

一 实验目的 1 了解多元函数、多元函数积分的基本概念,多元函数的极值及其求法; 2 理解多元函数的偏导数、全微分等概念,掌握积分在计算空间立体体积或表面积等问题中的应用; 3 掌握MATLAB 软件有关求导数的命令; 4 掌握MATLAB 软件有关的命令. 二 实验内容 1 多元函数的偏导数,极值; 2 计算多元函数数值积分; 3计算曲线积分,计算曲面积分. 三 实验准备 1 建立符号变量命令为sym 和syms ,调用格式为: x=sym('x') 建立符号变量x ; syms x y z 建立多个符号变量x ,y ,z ; 2 matlab 求导命令diff 的调用格式: diff(函数(,)f x y ,变量名x) 求(,)f x y 对x 的偏导数 f x ??; diff(函数(,)f x y ,变量名x,n) 求(,)f x y 对x 的n 阶偏导数n n f x ??; 3 matlab 求雅可比矩阵命令jacobian 的调用格式: jacobian([f;g;h],[],,x y z )给出矩阵 f f f x y z g g g x y z h h h x y z ????? ???? ? ???? ???? ? ???? ?????? 4 MATLAB 中主要用int 进行符号积分,常用格式如下: ① int(s)表示求符号表达式s 的不定积分 ② int(s,x)表示求符号表达式s 关于变量x 的不定积分 ③ int(s,a,b)表示求符号表达式s 的定积分,a ,b 分别为积分的上、下限 ④ int(s,x,a,b)表示求符号表达式s 关于变量x 的定积分,a,b 分别为积分的上、下限 5 MATLAB 中主要用trapz,quad,quad8等进行数值积分,常用格式如下: ① trapz(x,y)采用梯形积分法,其中x 是积分区间的离散化向量,y 是与x 同维数的向量、用来表示被积函数. ② quad8('fun',a,b,tol)采用变步长数值积分,其中fun 为被积函数的M 函数名,a,b 分别为积分上、下限,tol 为精度,缺省值为1e-3. ③ dblquad('fun',a,b,c,d)表示求矩形区域的二重数值积分,其中fun 为被积函数的

MATLAB数学实验报告

Matlab 数学实验报告

一、实验目的 通过以下四组实验,熟悉MATLAB的编程技巧,学会运用MATLAB的一些主要功能、命令,通过建立数学模型解决理论或实际问题。了解诸如分岔、混沌等概念、学会建立Malthu模型和Logistic 模型、懂得最小二乘法、线性规划等基本思想。 二、实验内容 2.1实验题目一 2.1.1实验问题 Feigenbaum曾对超越函数y=λsin(πx)(λ为非负实数)进行了分岔与混沌的研究,试进行迭代格式x k+1=λsin(πx k),做出相应的Feigenbaum图 2.1.2程序设计 clear;clf; axis([0,4,0,4]); hold on for r=0:0.3:3.9 x=[0.1]; for i=2:150 x(i)=r*sin(3.14*x(i-1)); end pause(0.5) for i=101:150

plot(r,x(i),'k.'); end text(r-0.1,max(x(101:150))+0.05,['\it{r}=',num2str(r)]) end 加密迭代后 clear;clf; axis([0,4,0,4]); hold on for r=0:0.005:3.9 x=[0.1];

for i=2:150 x(i)=r*sin(3.14*x(i-1)); end pause(0.1) for i=101:150 plot(r,x(i),'k.'); end end 运行后得到Feigenbaum图

2.2实验题目二 2.2.1实验问题 某农夫有一个半径10米的圆形牛栏,长满了草。他要将一头牛拴在牛栏边界的桩栏上,但只让牛吃到一半草,问拴牛鼻子的绳子应为多长? 2.2.2问题分析 如图所示,E为圆ABD的圆心,AB为拴牛的绳子,圆ABD为草场,区域ABCD为牛能到达的区域。问题要求区域ABCD等于圆ABC 的一半,可以设BC等于x,只要求出∠a和∠b就能求出所求面积。先计算扇形ABCD的面积,2a÷π×πx2=2aπ2,再求AB的面积,用扇形ABE的面积减去三角形ABE的面积即可。

高等数学实验报告matlab

西安交通大学 高等数学 实验报告 班级 组员与学号 2013年

实验名称:学生成绩管理 一、实验目的 二、实验内容 三、详细编程 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 case 100 S(i).Rank='满分'; case a S(i).Rank='优秀'; case b S(i).Rank='良好'; case c S(i).Rank='及格'; otherwise 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).ScoreS(i+1).Score) m=S(i+1).Score; end end disp(['平均成绩']); disp([averscore]); disp(['最高分']); disp(t); disp(['最低分']); disp(m); 四、实验结果

高等数学实验报告matlab参考答案

成都大学 高等数学 实验报告 (MATLAB版) 班级 姓名 学号 注意: 1 这个答案可由教师保存; 2 每个班级注意保存实验报告。 成都大学高等数学教研室

2011年3月 高等数学实验报告1 基本计算与作图 班级 姓名 学号 完成时间 成绩 一、实验内容 基本计算,函数的表示,函数图形的显示. 二、预期目标 1.熟悉Matlab 软件的基本操作. 2.掌握基本计算,函数的表示与函数的作图命令. 3.学会利用Matlab 软件对函数进行分析研究. 三、练习内容 习题一 1.计算下列各式的值:(写出格式及执行结果,(1)为例式) (1)16 75; >> 75^16 ans = 1.0023e+030 (2) i 31-; (3) 23sin ; >> sqrt(1-3*i) >>sin(23*pi/180) ans = 1.4426 - 1.0398i ans = 0.3907 (4)π 2 arcsin ; (5)!88. >> asin(2/pi) >> factorial(88) ans = 0.6901 ans = 1.8548e+134 2. 3 tan ,2 π==b e a e ,计算: (1)5 3 3 2 532b a ab a -+; (2))sec(arctan a .

>> a=sqrt(exp(exp(1))); b=tan(pi^2/3); >> a=sqrt(exp(exp(1))); b=tan(pi^2/3); >> 2*a^2+3*a*b^3-5*a^3*b^5 >> sec(atan(a)) ans =30.3255 ans =4.0192 3.在计算机上练习以下语句的输入:((1)为求解格式) (1)1432 1 2 -+x bx ax ; (2)1 3ln 42sin 2+-??? ?? +x x x π; >> syms a b x >> syms x >> (3*a*x^2+4*b*x^(1/2))/(x-1) >> (sin(2*x+pi/4)-log(3*x))/sqrt(x^2+1) ans =(3*a*x^2+4*b*x^(1/2))/(x-1) ans = (sin(2*x+1/4*pi)-log(3*x))/(x^2+1)^(1/2) (3)x e x x 22 )2sin (cos -. >> syms x >> (cos(x)^2-sin(2*x))*exp(2*x) ans =(cos(x)^2-sin(2*x))*exp(2*x) 习题二(只写出输入格式) 1. 作出13 y x =的图象 >> x=linspace(0,3,100); >> y=x.^(1/3); >> plot(x,y) 参见图1 2.作出14x y ?? = ???的图象 3.作出14 log y x =的图象 >> x=linspace(-2,2,50); >> fplot('log(x)/log(1/4)',[0.1,3]) >> y= (1/4).^x; >> plot(x,y) 参见图2 参见图3 图1 图2 图3

相关主题
文本预览
相关文档 最新文档