实验七 matlab求解级数有关计算
- 格式:pdf
- 大小:264.11 KB
- 文档页数:7
实验七 连续信号与系统复频域分析的MATLAB 实现一、实验目的1. 掌握连续时间信号拉普拉斯变换的MATLAB 实现方法;2. 掌握连续系统复频域分析的MATLAB 实现方法。
二、实验原理1. 连续时间信号的拉普拉斯变换连续时间信号的拉普拉斯正变换和逆变换分别为:⎰∞∞--=dt e t f s F st )()(⎰∞+∞-=j j stds e s F j t f σσπ)(21)(Matlab 的符号数学工具箱(Symbolic Math Toolbox )提供了能直接求解拉普拉斯变换和逆变换的符号运算函数laplace()和ilaplace ()。
下面举例说明两函数的调用方法。
(1)拉普拉斯变换例1.求以下函数的拉普拉斯变换。
)()()2()()()1(221t te t f t e t f t t εε--==解:输入如下M 文件:syms tf1=sym('exp(-2*t)*Heaviside(t)'); F1=laplace(f1) %求f1(t)的拉普拉斯变换 f2=sym('t*exp(-t)*Heaviside(t)'); F2=laplace(f2) 运行后,可得如下结果:F1 = 1/(s+2) F2 = 1/(s+1)^2 (2)拉普拉斯逆变换例2.若系统的系统函数为1]Re[,231)(2->++=s s s s H 。
求冲激响应)(t h 。
解:输入如下M 文件:H=sym('1/(s^2+3*s+2)');h=ilaplace(H) %求拉普拉斯逆变换运行后,可得如下结果:h=exp(-t)-exp(-2*t) 2. 连续系统的复频域分析 若描述系统的微分方程为∑∑===Mj j j Ni i i t f b t ya 0)(0)()()(则系统函数为)()()()()(00s A s B sa sb s F s Y s H Ni ii Mj jj===∑∑== 其中,∑∑====Mj j j Ni i i s b s B s a s A 0)(,)(。
《管理数学实验》实验报告班级姓名实验1:MATLAB的数值运算【实验目的】(1)掌握MATLAB变量的使用(2)掌握MATLAB数组的创建,(3)掌握MA TLAB数组和矩阵的运算。
(4)熟悉MATLAB多项式的运用【实验原理】矩阵运算和数组运算在MA TLAB中属于两种不同类型的运算,数组的运算是从数组元素出发,针对每个元素进行运算,矩阵的运算是从矩阵的整体出发,依照线性代数的运算规则进行。
【实验步骤】(1)使用冒号生成法和定数线性采样法生成一维数组。
(2)使用MA TLAB提供的库函数reshape,将一维数组转换为二维和三维数组。
(3)使用逐个元素输入法生成给定变量,并对变量进行指定的算术运算、关系运算、逻辑运算。
(4)使用MA TLAB绘制指定函数的曲线图,将所有输入的指令保存为M文件。
【实验内容】(1)在[0,2*pi]上产生50个等距采样数据的一维数组,用两种不同的指令实现。
0:(2*pi-0)/(50-1):2*pi 或linspace(0,2*pi,50)(2)将一维数组A=1:18,转换为2×9数组和2×3×3数组。
reshape(A,2,9)ans =Columns 1 through 71 3 5 7 9 11 132 4 6 8 10 12 14Columns 8 through 915 1716 18reshape(A,2,3,3)ans(:,:,1) =1 3 52 4 6ans(:,:,2) =7 9 118 10 12 ans(:,:,3) =13 15 17 14 16 18(3)A=[0 2 3 4 ;1 3 5 0],B=[1 0 5 3;1 5 0 5],计算数组A 、B 乘积,计算A&B,A|B,~A,A= =B,A>B 。
A.*Bans=0 0 15 121 15 0 0 A&Bans =0 0 1 11 1 0 0 A|Bans =1 1 1 11 1 1 1~Aans =1 0 0 00 0 0 1A==Bans =0 0 0 01 0 0 0A>=Bans =0 1 0 11 0 1 0(4)绘制y= 0.53t e -t*t*sin(t),t=[0,pi]并标注峰值和峰值时间,添加标题y= 0.53t e -t*t*sint ,将所有输入的指令保存为M 文件。
MATLAB中的数学计算方法详解在科学研究和工程领域中,数学计算方法的应用是不可避免的。
MATLAB作为一种强大的数学工具,提供了丰富的数学函数和算法,为用户提供了便捷的数学计算方式。
本文将详细介绍MATLAB中常用的数学计算方法,包括数值计算、符号计算以及优化算法等。
一、数值计算方法数值计算是MATLAB中应用最广泛的数学计算方法之一。
它通过将数值代入数学模型,利用数值逼近的方式求得近似解。
MATLAB提供了各种数值计算函数,如插值、积分、微分等。
下面我们将介绍其中几种常用的数值计算方法。
1. 插值方法插值是一种通过已知数据点来估计未知数据点的方法。
在MATLAB中,可以使用interp1函数实现一维数据的插值。
该函数支持多种插值方法,例如线性插值、样条插值等。
用户只需提供已知的数据点和插值点,即可得到插值结果。
2. 数值积分方法数值积分是计算定积分近似值的方法。
在MATLAB中,可以使用quad函数来进行一维定积分计算。
该函数采用自适应的数值积分算法,能够适应不同类型的函数。
用户只需提供被积函数和积分区间,即可得到积分结果。
3. 数值微分方法数值微分是计算函数导数的方法。
在MATLAB中,可以使用diff函数对函数进行数值微分。
该函数可以计算一阶和二阶导数,还支持多点数值微分和符号数值微分。
通过数值微分,可以方便地求得函数在给定点的导数近似值。
二、符号计算方法符号计算是指在计算过程中处理符号表达式而不是数值。
MATLAB的Symbolic Math Toolbox提供了强大的符号计算功能,可以进行代数操作、求解方程、求导、积分等。
下面我们将介绍几种常用的符号计算方法。
1. 代数操作在MATLAB中,可以使用符号计算功能进行代数操作,如多项式求解、多项式展开、多项式化简等。
通过定义符号变量和符号表达式,可以进行各种代数计算,方便用户进行复杂的代数操作。
2. 方程求解MATLAB的符号计算工具箱提供了solve函数用于求解方程。
《MATLAB语言》课程论文运用MATLAB语言解决级数及其相关问题姓名:李娟娟学号:12010245220专业:电子信息工程班级:2010级电子班指导老师:汤全武学院:物理电气信息学院完成日期:2011/12/12运用MATLAB 语言解决级数及其相关问题(李娟娟 12010245220 2010级电子班)[摘要]无穷级数是高等数学中的一个重要组成部分,它是表示函数,研究函数的性质以及进行数值计算的一种工具。
运用MATLAB 语言来求解无穷级数求和、幂级数展开、泰勒级数展开以及研究傅里叶级数提供了方便,并且在复变函数中解决级数问题也可由MATLAB 来完成。
同时运用高等数学中级数来解决日常实际问题的情况也可通过MATLAB 程序来完成。
MATLAB 的运用大大减少工作量、节约时间,同时加深对高等数学、复变函数及MATLAB 语言的理解和学习。
[关键词]MATLAB 语言 无穷级数 级数求和 泰勒级数 傅里叶级数一、问题的提出级数作为高等数学和复变函数中的必学内容,要求我们必须掌握其定理内容及计算方法。
但级数强大的计算量和多字母的表达示让很多人无从下手,加上出错率高,更给级数运算再添麻烦。
为解决这一问题我们现在运用MATLAB 语言来求解高等数学中的级数问题,涉及常系数项级数求和、泰勒级数展开成幂级数以及函数的傅里叶级数的展开等。
二、常数项级数的求和与审敛高数中,一般的,如果给定一个数列123,,,...,...n u u u u则由这数列构成的表达式:123......n u u u u +++++ (1)叫做(常数项)级数,记为1n Un ∞=∑,即1n Un ∞=∑=123......n u uu u +++++其中第n 项n u 叫做级数的一般项。
做(常数项)级数(1)的前n 项和123...n n s u u u u =++++=1ni Ui =∑ (2)n s 称为级数的(1)部分和,当n 依次取1,2,3,……时,他们构成一个新数列 112123123,,,...s u s u u s u u u ==+=++123......,....n n s u u u u =+++++如果这个数列的极限存在,则称该级数收敛,并称级数的部分和(2)为级数的和。
实验七 matlab 求解级数有关计算1.级数的基本概念常数项级数:称用加号将数列n a 的项连成的式子+++++n a a a a 321为(常数项)无穷级数,简记为∑∞=1n na。
称级数∑∞=1n na前n 项构成的和∑==++++=nk kn n a a a a a S 1321为级数的部分和。
若SS n n =∞→lim ,则称级数∑∞=1n na收敛,其和为S 。
Taylor 级数:设函数)(x f 在包含a x =的区域内具有各阶导数,则称幂级数+-++-+-+=-∑∞=n n n n n a x n a f a x a f a x a f a f a x n a f )(!)()(!2)())((')()(!)()(2)2(0)(为函数)(x f 在a x =的Taylor 级数,当0=a 时称为Maclaurin(麦克劳林)级数。
2.级数的MATLAB 命令MATLAB 中主要用symsum,taylor 求级数的和及进行Taylor 展开。
例1 先用taylor 命令观测函数x y sin =的Maclaurin 展开式的前几项,例如观测前6项, 相应的MA TLAB 代码为:>>clear; syms x;>>taylor(sin(x),0,1) >>taylor(sin(x),0,2) >>taylor(sin(x),0,3) >>taylor(sin(x),0,4) >>taylor(sin(x),0,5) >>taylor(sin(x),0,6)结果为:ans =0 ans =x ans =xans =x-1/6*x^3 ans =x-1/6*x^3ans =x-1/6*x^3+1/120*x^5然后在同一坐标系里作出函数x y sin =和它的Taylor 展开式的前几项构成的多项式函数,,!5!3,!3,533 x x x y x x y x y +-=-==的图形,观测这些多项式函数的图形向x y sin =的图形的逼近的情况。
第七节 用MATLAB 求级数的和及其实验本节介绍用MATLAB 软件求级数的部分和,级数的和,判别级数的敛散性等的方法及其实验。
一、用MATLAB 求级数的部分和和级数的和symsum 是MATLAB 软件系统中符号求和(Symbolic summation )函数,它的调用格式和主要功能如下:调用格式一: symsum(S)其中S 为待求和的级数的通项表达式。
symsum(S)的功能是求出通项为S 的级数关于系统默认变量的有限和(例如n 从0到k-1的有限和)中含默认变量的部分(参见例1(2)S1和S2)。
如果不能确定系统默认变量,则可以用findsym(系统默认变量S) 命令来查询。
调用格式二: symsum(S,v)其中S 为待求和的级数的通项表达式,v 为求和变量。
symsum(S,v) 的功能是求出通项为S 的级数关于变量v 的有限和(例如v 从0到k-1的有限和)中含默认变量的部分(参见例1(3)S3和S4)。
如果不能确定自己所需的变量是系统默认变量,则需要在symsum 命令中加入求和变量的说明,格式为:symsum(S,v)调用格式三: symsum (S,a,b)或symsum (S,v,a,b)这种命令的功能是求从a 到 b 的级数的和。
其中b 可以取有限数,也可以取无穷(b=inf )。
此命令即可以用于求级数的部分和∑=nk k u 1,也可用于判别级数∑∞=1n nu 的收敛性。
【例1】求级数的下列部分和:(1) )5()1(1501+-+=∑n n xn n ;(2))sin()1(211k a kn k -∑-=)1,0(≠>a a ;(3) 23110m m n m +-=∑。
解(1)输入程序:>> syms n xS50= symsum((-1)^(n+1)*x/(n*(n+5)),n,1,50)运行后屏幕显示:S50 =16481582353306899727903/136874465604198187866000*x(2)输入程序:>> syms n aS1=symsum((-1)^n*a^2*sin(n))S2=symsum((-1)^n*a^2*sin(n),n,0,n-1)运行后屏幕显示:S1 =-1/2*(-1)^n*a^2*sin(n)+1/2*a^2*sin(1)/(cos(1)+1)*(-1)^n*cos(n)S2 =-1/2*(-1)^n*a^2*sin(n)+1/2*a^2*sin(1)/(cos(1)+1)*(-1)^n*cos(n)-1/2*a^2*sin(1)/(cos(1)+1)(3)输入程序: 23110m m n m +-=∑>> syms n mS3=symsum(3^(m+1)/2^m,m)S4=symsum(3^(m+1)/2^m,m,0,m-1)运行后屏幕显示:S3 =6*(3/2)^mS4 =6*(3/2)^m-6【例2】讨论下列级数的敛散性。
如何使用Matlab进行科学计算和数据分析Matlab(全称Matrix Laboratory)是一种常用的科学计算软件,在科学研究和数据分析中有着广泛的应用。
本文将针对如何使用Matlab进行科学计算和数据分析进行详细介绍,包括Matlab的基本操作、数据导入与处理、绘图与可视化、数值计算、统计分析等内容。
第一章:Matlab基本操作Matlab的基本操作包括环境设置、变量定义与操作、函数调用等。
首先,我们需要安装Matlab,并打开Matlab工作环境。
接下来,我们可以通过命令行界面或者脚本编辑器来输入和执行Matlab命令。
可以使用等号“=”来定义变量,并使用各种运算符进行数学运算。
此外,还可以通过调用Matlab的内置函数进行计算。
第二章:数据导入与处理在科学计算和数据分析中,我们经常需要从外部源导入数据并进行处理。
Matlab提供了多种方式来导入数据,包括读取文本文件、导入Excel文件、读取数据库等。
一旦数据被导入到Matlab 中,可以使用各种函数来进行数据处理,比如筛选、排序、合并等操作。
此外,还可以对数据进行清洗和转换,以便进一步分析。
第三章:绘图与可视化数据的可视化是科学计算和数据分析的重要环节之一。
Matlab提供了丰富的绘图函数,可以绘制二维和三维图形,包括散点图、线图、柱状图、等高线图等。
此外,Matlab还提供了自定义图形属性、添加标签、调整坐标轴等功能,使得绘图更加精美且易于理解。
通过可视化结果,我们可以更加直观地了解数据的分布和趋势。
第四章:数值计算Matlab具有强大的数值计算功能,可以进行各种数值运算和数值解析。
比如,可以求解线性方程组、进行数值积分、计算微分方程等。
Matlab内置了许多数值计算函数,可以极大地简化计算过程。
此外,Matlab还支持矩阵运算和向量化操作,提高计算效率。
第五章:统计分析数据分析常常需要进行统计分析,以获取数据的统计特征和推断性结论。
实验七 离散系统分析的MATLAB 实现一、实验目的1、掌握利用MATLAB 绘制系统零极点图的方法;2、掌握离散时间系统的零极点分析方法;3、学习离散系统响应的MATLAB 求解方法;4、掌握用MATALB 实现离散系统频率特性分析的方法;5、深刻理解离散系统的系统函数零极点对系统频响的影响,可以根据 零极点知识设计简单的滤波器。
二、基本原理(一)离散系统零极点线性时不变离散系统可用线性常系数差分方程描述,即()()N Miji j a y n i b x n j ==-=-∑∑ (1)其中()y k 为系统的输出序列,()x k 为输入序列。
将式(1)两边进行Z 变换,00()()()()()Mjjj Nii i b zY z B z H z X z A z a z-=-====∑∑ (2) 将式(2)因式分解后有:11()()()Mjj Nii z q H z Cz p ==-=-∏∏ (3)其中C 为常数,(1,2,,)j q j M =L 为()H z 的M 个零点,(1,2,,)i p i N =L 为()H z 的N 个极点。
系统函数()H z 的零极点分布完全决定了系统的特性,若某系统函数的零极点已知,则系统函数便可确定下来。
因此,系统函数的零极点分布对离散系统特性的分析具有非常重要意义。
(二)离散系统零极点图及零极点分析 1、零极点图的绘制设离散系统的系统函数为()()()B z H z A z =则系统的零极点可用MATLAB 的多项式求根函数roots()来实现,调用格式为:p=roots(A) 其中A 为待求根多项式的系数构成的行矩阵,返回向量p 则是包含多项式所有根的列向量。
如多项式为231()48B z z z =++,则求该多项式根的MATLAB 命令为为:A=[1 3/4 1/8]; P=roots(A) 运行结果为: P =-0.5000 -0.2500需注意的是,在求系统函数零极点时,系统函数可能有两种形式:一种是分子、分母多项式均按z 的降幂次序排列;另一种是分子、分母多项式均按1z -的升幂次序排列。
文章主题:深入探讨MATLAB中的多项式运算及求极限、复杂函数求极限MATLAB(Matrix Laboratory)是一款强大的数学软件,广泛应用于工程、科学、经济等领域。
在MATLAB中,多项式运算及求极限、复杂函数求极限是常见且重要的数学问题,对于提高数学建模和计算能力具有重要意义。
本文将从简到繁地探讨MATLAB中的多项式运算及求极限、复杂函数求极限,以帮助读者深入理解这一主题。
一、MATLAB中的多项式运算多项式是数学中常见的代数表达式,通常以系数的形式表示。
在MATLAB中,可以使用多种方法进行多项式的运算,如加法、减法、乘法、除法等。
对于两个多项式f(x)和g(x),可以使用“+”、“-”、“*”、“/”等运算符进行运算。
在实际应用中,多项式的运算往往涉及到多项式系数的提取、多项式的乘方、多项式的符号变化等操作。
MATLAB提供了丰富的函数和工具箱,如polyval、polyfit、roots等,可以帮助用户进行多项式的运算。
通过这些工具,用户可以方便地进行多项式的求值、拟合、求根等操作。
二、MATLAB中的多项式求极限求多项式的极限是微积分中常见的问题,对于研究函数的性质和图像具有重要意义。
在MATLAB中,可以通过lim函数来求多项式的极限。
lim函数可以接受不同的输入参数,如函数、变量、极限点等,从而计算多项式在某一点的极限值。
在进行多项式求极限时,需要注意的是对极限的性质和运算规则。
MATLAB中的lim函数遵循了标准的极限计算规则,如极限的四则运算法则、极限的有界性、极限的夹逼定理等。
用户可以通过lim函数灵活地进行多项式求极限的计算和分析。
三、MATLAB中的复杂函数求极限除了多项式,复杂函数在工程和科学中也具有广泛的应用。
MATLAB提供了丰富的函数和工具箱,如syms、limit、diff等,可以帮助用户进行复杂函数的求导、求极限等操作。
对于复杂函数的极限计算,需要综合运用代数运算、微分计算、极限性质等技巧。
MATLAB中的级数求和函数及其特定函数1. 引言在数学中,级数是由一系列项组成的无穷和。
级数求和是数学中一个重要的问题,它在科学计算、信号处理、统计学等领域都有广泛的应用。
在MATLAB中,我们可以使用内置的级数求和函数来计算级数的和。
本文将详细解释MATLAB中级数求和函数中的特定函数,包括函数的定义、用途和工作方式等。
我们将介绍两个常用的级数求和函数——阶乘级数和幂级数,并给出它们在MATLAB中的具体实现。
2. 阶乘级数2.1 函数定义阶乘级数是一个以阶乘函数为通项的级数,其通项公式为:,其中n!表示n的阶乘。
2.2 函数用途阶乘级数在数学分析中有广泛的应用,特别是在数学证明和数值计算中。
它可以用于近似计算各种数学函数,如指数函数和三角函数。
此外,阶乘级数还可以用于生成随机数序列,并在概率论中起到重要作用。
2.3 函数实现在MATLAB中,我们可以使用factorial函数计算阶乘级数的通项,使用symsum函数计算级数的和。
下面是一个示例代码:syms n; % 定义符号变量nterm = 1/factorial(n); % 阶乘级数的通项sum = symsum(term, n, 0, Inf); % 计算阶乘级数的和在上述代码中,我们首先使用syms函数定义符号变量n,然后使用factorial函数计算阶乘级数的通项,最后使用symsum函数计算级数的和。
3. 幂级数3.1 函数定义幂级数是一个以幂函数为通项的级数,其通项公式为:,其中a_n是级数的系数,x是变量。
3.2 函数用途幂级数在数学中有广泛的应用,特别是在微积分和数值计算中。
它可以用于近似计算各种数学函数,如指数函数、三角函数和对数函数。
此外,幂级数还可以用于解微分方程和计算复杂函数的性质。
3.3 函数实现在MATLAB中,我们可以使用coeffs函数获取幂级数的系数,使用polyval函数计算幂级数的和。
下面是一个示例代码:syms x; % 定义符号变量xf = exp(x); % 定义幂级数的函数n = 10; % 幂级数的阶数coeffs = coeffs(f, x, 'All'); % 获取幂级数的系数coeffs = coeffs(end-n+1:end); % 取幂级数的前n项系数powers = x.^(0:n-1); % 幂级数的底数term = coeffs .* powers; % 幂级数的通项sum = polyval(term, x); % 计算幂级数的和在上述代码中,我们首先使用syms函数定义符号变量x,然后使用exp函数定义幂级数的函数,接着使用coeffs函数获取幂级数的系数。
实验七 用matlab 求解常微分方程一、实验目的:1、熟悉常微分方程的求解方法,了解状态方程的概念;2、能熟练使用dsolve 函数求常微分方程(组)的解析解;3、能熟练应用ode45\ode15s 函数分别求常微分方程的非刚性、刚性的数值解;4、掌握绘制相图的方法二、预备知识:1.微分方程的概念未知的函数以及它的某些阶的导数连同自变量都由一已知方程联系在一起的方程称为微分方程。
如果未知函数是一元函数,称为常微分方程。
常微分方程的一般形式为),,",',,()(=n y y y y t F 如果未知函数是多元函数,成为偏微分方程。
联系一些未知函数的一组微分方程组称为微分方程组。
微分方程中出现的未知函数的导数的最高阶解数称为微分方程的阶。
若方程中未知函数及其各阶导数都是一次的,称为线性常微分方程,一般表示为)()(')()(1)1(1)(t b y t a y t a y t a y n n n n =++++-- 若上式中的系数ni t a i ,,2,1),( =均与t 无关,称之为常系数。
2.常微分方程的解析解有些微分方程可直接通过积分求解.例如,一解常系数常微分方程1+=y dt dy可化为dt y dy=+1,两边积分可得通解为1-=tce y .其中c 为任意常数.有些常微分方程可用一些技巧,如分离变量法,积分因子法,常数变异法,降阶法等可化为可积分的方程而求得解析解.线性常微分方程的解满足叠加原理,从而他们的求解可归结为求一个特解和相应齐次微分方程的通解.一阶变系数线性微分方程总可用这一思路求得显式解。
高阶线性常系数微分方程可用特征根法求得相应齐次微分方程的基本解,再用常数变异法求特解。
一阶常微分方程与高阶微分方程可以互化,已给一个n 阶方程),,",',()1()(-=n n y y y t f y 设)1(21,,',-===n n y y y y y y ,可将上式化为一阶方程组⎪⎪⎪⎩⎪⎪⎪⎨⎧====-),,,,(''''2113221n n nn y y y t f y yy y y y y反过来,在许多情况下,一阶微分方程组也可化为高阶方程。
第13讲 级数与方程符号求解(第9章MATLAB 符号计算)目的:1、掌握级数符号求和函数2、将函数展开为泰勒级数3、掌握代数方程符号求解的方法。
4、掌握微分方程符号求解的方法———————————————————————————————————— 1.掌握级数符号求和函数symsum( )()bk af k =∑=symsum(f,k,a,b)。
举例如下:(1)求11!n n ∞=∑ (该级数收敛) >>syms n;>>f=1/factorial(n); >>s=symsum(f,n,1,inf) s = exp(1)-1 (2)求11n n∞=∑ (该级数发散) >>syms n;>>s=symsum(1/n,n,1,inf) s = inf (3)求和函数211n n n x∞−=∑(级数收敛域为1x <)>>syms n x; >>f=n^2*x^(n-1); >>s(x)=symsum(f,n,1,inf)s(x) = piecewise(abs(x) < 1, -(x^2 + x)/(x*(x - 1)^3))上式结果中的piecewise是条件定义表达式:pw=piecewise(cond1,val1,cond2,val2,...)其含义是:如果条件condN成立,那么pw的值为valN,我们通常使用piecewise定义分段函数。
上题结果中之所以出现piecewise是因为级数是有收敛域的,只有当x在收敛域内时级数的和函数才存在。
如果不想结果中出现piecewise,可以在求和之前将x的取值范围用assume语句设置为级数的收敛域,但收敛域需要自己求出来。
例如:>>syms n x;>>assume(abs(x)<1);>>s(x)=symsum(n^2*x^(n-1),n,1,inf)s(x) = -(x^2 + x)/(x*(x - 1)^3)注:(1)熟悉piecewise后我们可以不设置x的取值范围,直接使用symsum求和,这样还可以变相的得到级数的收敛域。
实验七级数与方程符号求解
一、实验目的
1. 掌握级数求和的方法。
2. 掌握将函数展开为泰勒级数的方法。
3. 掌握微分方程符号求解的方法。
4. 掌握代数方程符号求解的方法。
二、实验内容
要求:命令手工 ( )输入!!!
1. 级数符号求和。
解:M命令:
运行结果:
2. 将lnx 在x=1处按5次多项式展开为泰勒级数。
解:M 命令:
运行结果:
3. 使用图形化的符号函数计算器。
4. 求下列方程的符号解。
22
25
(1)ln(1)2
(2)9110
1sin 1000(3)35sin 78.50(4)3580
x
x x x x
x y xe x x y +−
=++−=+⎧⎪+−=+−=⎨
+−=⎪⎩
解:M 命令:
5. 设计程序,完成两位数的加、减、乘、除四则运算,即输入两个整数,再输入一个运算符号,做相应的运算,并显示相应的结果。
6. 动画制作:使用对象方式产生,一个红色的小球沿着曲线运动的动画。
解:M命令:
常微分方程的知识:
1. 求微分方程初值问题的符号解。
224
290
(0)0,'(0)15d y dy
y dx
dx y y ⎧++=⎪⎨⎪==⎩
2. 求微分方程组的通解。
233453442dx
x y z dt dy
x y z dt dz
x y z dt ⎧=−+⎪⎪⎪=−+⎨⎪⎪=−+⎪⎩
解:M 命令:。
MATLAB 在级数中的应用二.MATLAB 在级数中的应用1.常数项级数的求和与审敛分析:在高等数学中,级数的求和及审敛是最基础,但也是很重要的一部分,有些级数的求和较为简单,而有些则不然,用传统的手解方法是很困难的,但这些问题用M ATLAB 求解会简单化。
因此,咋计算机的快速发展的背景下,我们要充分利用合理的资源来求解问题,以提高速率。
问题一. 求解级数s 1=32n xn ,∑∞==12n nx n s 的和 程序如下:n=sym('n') ; x=sym('x') ; %定义符号变量n,xs1=symsum(x^n/n*3^2,n,1,inf); %求s1,求和变量n 不能省略s1=-9*log(1-x)s2=x+2*x^2+3*x^3+...+n*x^n+... ; %求s2, 变量n 为1到ns2=x/(x-1)^2 问题二. 求级数2)1(21n n f -=,))1(212+=n n f 的和 程序如下: clear %清屏syms n ; %定义符号变量nf1=(2*n-1)/2^n; %级数f1的表达式f2=1/(n*(2*n+1)); %级数f2的表达式s3=symsum(f1,n,1,inf) %求s3,变量n 从1到无穷s4=symsum(f2,n,1,inf) %求s4,变量n 从1到无穷运行结果为:s3=3s4=2-2*log(2)说明:本例是收敛的情况,如果发散,则得到的和为inf ,因此,本方法就可以同时用来解决求和问题和收敛性问题。
问题三.求解级数3f =n x 2)sin(,n f x n n )1(14--=的和程序如下:clearsyms n x ; %定义符号变量n,xf3=sin(x)/n^2; %级数f3的表达式f4=(-1)^(n-1)*x^n/n; %级数f4的表达式s5=symsum(f3,n,1,inf) %变量n 从1到无穷s6=symsum(f4,n,1,inf) %变量n 从1到无穷运行结果为:s5=1/6*sin(x)*pi^2s6=log(1+x)说明:从这个例子可以看出,symsum ()这个函数不但可以处理常数项级数,也可以处理函数项级数。
[例7-1]求∑-==11n k knS ,∑==1012k kn S 。
【求解】编写myssum01.m 文件,内容如下: clear clcsyms n ks1=simple(symsum(n/k))%级数求和后化简 s2=simple(symsum(n/k,k,1,10)) %前1-10项求和后化简保存后,执行myssum01命令。
查看结果如下命令窗口显示的结果为: s1 =1/2*n*(n-1)/k s2 =7381/2520*n 结果:n S k k n S 25207381,2)1(21=-=[例7-2]对-p 级数∑∞=11n p n,求(1)和S ;(2)求部分和n S ;(3)作图并观察部分和序列的变化趋势。
【求解】建立-p 级数的和与部分和及其绘图文件。
编写p_sum.m 文件,内容如下: clearclcp=input('p='); syms ks=symsum(1/k^p,1,inf) %级数求和sn=[];%定义空向量for n=20:10:200s1=eval(symsum(1/k^p,1,n)); %级数求和,并求值 sn=[sn,s1];%写和值到空向量中endn=20:10:200;plot(n,sn,'m*') %作图if s~=infhold onn1=20:0.2:200; s=eval(s);plot(n1,s,'r-')hold off endlegend('部分和sn','和s',0)%图例xlabel('n') %坐标轴ylabel('sn')title('p-级数部分和散点图') %标题保存后,在命令窗口下调用该文件。
>>p_sump=1s =inf图7-1 p=1时级数散点图>>p_sump=2s =1/6*pi^2图7-2 p=2时级数散点图>>p_sump=3s =zeta(3)>> ss =1.2021图7-3 p=3时级数散点图结果分析:p=1时,调和级数∑∞=11n n发散,2≥p时p级数∑∞=11npn收敛,观察图形得知p越大,收敛速度越快。