数值计算功能PPT课件.ppt
关于数值计算功能第一张,PPT共八十一页,创作于2022年6月数值运算的功能数值运算的功能创建矩阵创建矩阵矩阵运算矩阵运算多项式运算多项式运算线性方程组线性方程组数值统计数值统计线性插值线性插值函数优化函数优化微分方程的数值解微分方程的数值解第二张,PPT共八十一页,创作于2022年6月一、一、Matlab的基本计算功能的基本计算功能函数名称函数名称函数名称函数名称函数功能函数功能函数功能函数功能函数名称函数名称函数名称函数名称函数功能函数功能函数功能函数功能abs(x)abs(x)取绝对值取绝对值取绝对值取绝对值sign(x)sign(x)符号函数符号函数符号函数符号函数angle(z)angle(z)复数的相角复数的相角复数的相角复数的相角rem(x,y)rem(x,y)x/yx/y取余取余取余取余sqrt(x)sqrt(x)开平方开平方开平方开平方gcd(x,y)gcd(x,y)最大公因数最大公因数最大公因数最大公因数real(z)real(z)复数的实部复数的实部复数的实部复数的实部lcm(x,y)lcm(x,y)最小公倍数最小公倍数最小公倍数最小公倍数imag(z)imag(z)复数的虚部复数的虚部复数的虚部复数的虚部exp(x)exp(x)自然指数自然指数自然指数自然指数conj(z)conj(z)共轭复数共轭复数共轭复数共轭复数pow2(x)pow2(x)2 2的指数的指数的指数的指数1 1、常用基本数学函数、常用基本数学函数、常用基本数学函数、常用基本数学函数P38P38第三张,PPT共八十一页,创作于2022年6月以以以以2 2为底的对数为底的对数为底的对数为底的对数log2(x)log2(x)朝零方向取整朝零方向取整朝零方向取整朝零方向取整fix(x)fix(x)自然对数自然对数自然对数自然对数log(x)log(x)四舍五入取整四舍五入取整四舍五入取整四舍五入取整round(x)round(x)以以以以1010为底的对数为底的对数为底的对数为底的对数log10(x)log10(x)将实数化为分数将实数化为分数将实数化为分数将实数化为分数rat(x)rat(x)求余值为求余值为求余值为求余值为x-x-y.*floor(x./y)y.*floor(x./y)mod(x,y)mod(x,y)朝正无穷大方向朝正无穷大方向朝正无穷大方向朝正无穷大方向取整取整取整取整ceil(x)ceil(x)求向量长度求向量长度length(x)length(x)朝负无穷方向取朝负无穷方向取朝负无穷方向取朝负无穷方向取整整整整floor(x)floor(x)函数功能函数功能函数功能函数功能函数名称函数名称函数名称函数名称函数功能函数功能函数功能函数功能函数名称函数名称函数名称函数名称2 2、MatlabMatlab常用的三角函数常用的三角函数常用的三角函数常用的三角函数P38P38有:有:sin(x),cos(x),tan(x),sind(x),tand(x)asin(x),acos(x),atan(x)等等第四张,PPT共八十一页,创作于2022年6月二、命令行的基本操作二、命令行的基本操作1.创建矩阵的方法创建矩阵的方法(1)直接输入法直接输入法规则:规则:矩阵元素必须用矩阵元素必须用 括住括住矩阵元素必须用逗号或空格分隔矩阵元素必须用逗号或空格分隔 在在 内矩阵的行与行之间必须内矩阵的行与行之间必须 用分号分隔用分号分隔第五张,PPT共八十一页,创作于2022年6月 矩阵元素可以是任何矩阵元素可以是任何matlab表达表达式式,可以是,可以是实数实数,也可以是,也可以是复数复数,复数可用特殊函数复数可用特殊函数i,j 输入输入 a=1,2,3;4,5,6 矩阵元素矩阵元素a=1 2 3 4 5 6x=2 pi/2;sqrt(3)3+5i第六张,PPT共八十一页,创作于2022年6月符号的作用符号的作用逗号逗号和和分号分号的作用的作用 逗号和分号可作为指令间的分逗号和分号可作为指令间的分隔符,隔符,matlab允许多条语句在同一允许多条语句在同一行出现。行出现。分号分号如果出现在指令后,屏幕如果出现在指令后,屏幕上将上将不显示结果不显示结果,但,但存储存储在工作在工作空间中。空间中。当一个指令或矩阵太长时,可用当一个指令或矩阵太长时,可用续行续行第七张,PPT共八十一页,创作于2022年6月 用于选出矩阵指定行、列及元素。用于选出矩阵指定行、列及元素。a=A(:,2:4)或或 a=A(:,2,3,4)冒号冒号的作用:的作用:用于生成等间隔的向量,用于生成等间隔的向量,默认间隔为默认间隔为1。i=3:2:7循环语句循环语句for n=1:10第八张,PPT共八十一页,创作于2022年6月(2)用用matlab函数创建矩阵函数创建矩阵(P19-20)空阵空阵空阵空阵 matlabmatlab允许输入空阵,当一项操作无结果允许输入空阵,当一项操作无结果允许输入空阵,当一项操作无结果允许输入空阵,当一项操作无结果时,返回空阵。时,返回空阵。时,返回空阵。时,返回空阵。rand(m,n)rand(m,n)随机矩阵或随机矩阵或随机矩阵或随机矩阵或rand(n)rand(n)eye(m,n)eye(m,n)单位矩阵或单位矩阵或单位矩阵或单位矩阵或eye(n)eye(n)zeros(m,n)zeros(m,n)全部元素都为全部元素都为全部元素都为全部元素都为0 0的矩阵的矩阵的矩阵的矩阵 ones(m,n)ones(m,n)全部元素都为全部元素都为全部元素都为全部元素都为1 1的矩阵的矩阵的矩阵的矩阵 linspace(a,b,n)linspace(a,b,n)生成生成生成生成abab之间之间之间之间n n个数值线性分布的向量个数值线性分布的向量个数值线性分布的向量个数值线性分布的向量 logspace(a,b,n)logspace(a,b,n)生成生成生成生成1010a a1010b b之间按对数等分的之间按对数等分的之间按对数等分的之间按对数等分的n n个元个元个元个元素的向量素的向量素的向量素的向量第九张,PPT共八十一页,创作于2022年6月r=eye(3)r=1 0 0 0 1 0 0 0 1r=eye(3,4)r=1 0 0 0 0 1 0 0 0 0 1 0r=eye(4,3)r=1 0 0 0 1 0 0 0 1 0 0 0第十张,PPT共八十一页,创作于2022年6月 还有伴随矩阵、稀疏矩阵、魔方矩阵、还有伴随矩阵、稀疏矩阵、魔方矩阵、对角矩阵、范德蒙等矩阵的创建,就不一对角矩阵、范德蒙等矩阵的创建,就不一一介绍了。一介绍了。注意:注意:matlab严格区分大小写字母,因此严格区分大小写字母,因此a与与A是两个不同的变量。是两个不同的变量。第十一张,PPT共八十一页,创作于2022年6月(3)用用M文件创建矩阵文件创建矩阵适用于较大的矩阵且需经常调用的矩阵。适用于较大的矩阵且需经常调用的矩阵。%mymatrix.m creation of matrix JZJZ=1,2,3,4,5;6,7,8,9,10;11,12,13,14,15;取取mymatrix名保存名保存若若JZ已由其它文件运行后生成而需经常调用,已由其它文件运行后生成而需经常调用,可用可用save指令保存。指令保存。save mymatrix JZ(4)从外部数据文件调入矩阵从外部数据文件调入矩阵load mymatrix JZ第十二张,PPT共八十一页,创作于2022年6月三、三、矩阵的修改与操作矩阵的修改与操作 直接修改直接修改 可用可用 键找到所要修改的矩阵,用键找到所要修改的矩阵,用键移键移动到要修改的矩阵元素上即可修改动到要修改的矩阵元素上即可修改。指令修改指令修改 可以用可以用A(,)=来修改。来修改。(1)矩阵的修改矩阵的修改(5)多维矩阵多维矩阵第十三张,PPT共八十一页,创作于2022年6月例如例如a=1 2 0;3 0 5;7 8 9a=1 2 0 3 0 5 7 8 9a(3,3)=0a=1 2 0 3 0 5 7 8 0还可以用函数还可以用函数subs、find函数修改。函数修改。第十四张,PPT共八十一页,创作于2022年6月(2)矩阵的子阵矩阵的子阵矩阵的子阵可以通过标量、向量、冒号标矩阵的子阵可以通过标量、向量、冒号标志来引用和赋值志来引用和赋值A(v,w),v,w中任何一个可以是冒号中任何一个可以是冒号“:”、标量、向量、标量、向量常见常见A(v,w)形式有:形式有:A(i,j)、A(:,j)、A(:,j:k)、A(i:j,k:h)、A(i,j,k,h)、A(i:j)等等第十五张,PPT共八十一页,创作于2022年6月(3)矩阵的操作矩阵的操作 空阵空阵 可利用可利用清除矩阵中部分行或列来清除矩阵中部分行或列来改变维数改变维数,其作用与借助向量标识得到其作用与借助向量标识得到的矩阵子块相同。的矩阵子块相同。例:例:已知已知A=1,2,3,4;5,6,7,8;9,10,11,12,要,要消去消去A中的第中的第1列与第列与第4列得到列得到B阵。阵。B=A;B(:,1,4)=,与与B=A(:,2,3)或或B=A(:,2:3)结果相同结果相同 2 3 6 7 10 11第十六张,PPT共八十一页,创作于2022年6月矩阵的扩展矩阵的扩展a.利用矩阵标识块赋值指令扩展利用矩阵标识块赋值指令扩展X(m1:m2,n1:n2)=A生成新阵生成新阵X,矩阵除了赋矩阵除了赋值阵值阵A和已存在的元素外,其余为和已存在的元素外,其余为0 b.利用方括号和小矩阵生成大矩阵利用方括号和小矩阵生成大矩阵例:例:利用利用A=1,2,7,8;-1,19,7,10生成生成44的的B阵,使其第阵,使其第1、2行,第行,第1至至3列元素取列元素取A阵第阵第2列至第列至第4列元素,第列元素,第3、4行元素全为行元素全为1,其余,其余为为0。第十七张,PPT共八十一页,创作于2022年6月法一:法一:B=zeros(4,4);B(1:2,1:3)=A(:,2:4);B(3:4,:)=ones(2,4)法二:法二:B=A(:,2:4),zeros(2,1);ones(2,4)2 7 8 0 19 7 10 0 1 1 1 1 1 1 1 1或或B(1:2,1:3)=A(:,2:4);B(3:4,1:4)=ones(2,4)第十八张,PPT共八十一页,创作于2022年6月矩阵的结构变换矩阵的结构变换P91-94rot90(A,k):逆时针旋转逆时针旋转fliplr:左右翻左右翻flipud:上下翻上下翻diag:抽取主对角线或生成对角阵抽取主对角线或生成对角阵tril(A,k):抽取主下三角抽取主下三角(k=0,+1,-1,)triu(A,k):抽取主上三角抽取主上三角(k=0,+1,-1,)B=reshape(A,m,n)根据根据A阵重组为阵重组为m n的的B阵阵第十九张,PPT共八十一页,创作于2022年6月1.矩阵加、减(矩阵加、减(,)运算)运算规则:与线性代数运算规则相同规则:与线性代数运算规则相同四、矩阵运算四、矩阵运算2.矩阵乘(矩阵乘()运算运算规则:与线性代数运算规则相同规则:与线性代数运算规则相同第二十张,PPT共八十一页,创作于2022年6月A=1,3,pi,i;6,8,3+i,5;B=1,2,3,4;5,6,7,8;D=A+B,C=3+BD=D=2.0000 5.0000 6.1416 4.0000+1.0000i 2.0000 5.0000 6.1416 4.0000+1.0000i 11.0000 14.0000 10.0000+1.0000i 13.0000 11.0000 14.0000 10.0000+1.0000i 13.0000 a=1 2 3;4 5 6;7 8 0;b=1;2;3;c=a*bc=14 32 23第二十一张,PPT共八十一页,创作于2022年6月 a p a 自乘自乘p次幂次幂方阵方阵1的整数的整数3.矩阵乘方矩阵乘方 an,ap,pa对于对于p的其它值的其它值,计算将涉及特征值计算将涉及特征值和特征向量,如果和特征向量,如果p是矩阵,是矩阵,a是标量是标量ap使用特征值和特征向量自乘到使用特征值和特征向量自乘到p次次幂;如幂;如a,p都是矩阵,都是矩阵,ap则无意义。则无意义。第二十二张,PPT共八十一页,创作于2022年6月 inv inv 矩阵求逆矩阵求逆矩阵求逆矩阵求逆 rank rank 求矩阵的秩求矩阵的秩求矩阵的秩求矩阵的秩 det det 行列式的值行列式的值行列式的值行列式的值 eig eig 矩阵的特征值矩阵的特征值矩阵的特征值矩阵的特征值 diagdiag 对角矩阵对角矩阵对角矩阵对角矩阵 矩阵转置矩阵转置矩阵转置矩阵转置 sqrt sqrt 矩阵开方矩阵开方矩阵开方矩阵开方 4.矩阵的其它运算矩阵的其它运算(P96)第二十三张,PPT共八十一页,创作于2022年6月 数组运算指元素对元素的算术运算,数组运算指元素对元素的算术运算,与通常意义上的由符号表示的线性代数与通常意义上的由符号表示的线性代数矩阵运算不同矩阵运算不同1.数组加减数组加减(.+,.-)a.+b a.-b5.矩阵的数组运算矩阵的数组运算 对应元素相加减(与矩阵加减对应元素相加减(与矩阵加减等效)等效)第二十四张,PPT共八十一页,创作于2022年6月2.数组乘除数组乘除(,./,.)a b a,b两数组必须有相同的两数组必须有相同的行行 和列两数组相应元素相乘。和列两数组相应元素相乘。a=1 2 3;4 5 6;7 8 9;b=2 4 6;1 3 5;7 9 10;a.*bans=2 8 18 4 15 30 49 72 90 第二十五张,PPT共八十一页,创作于2022年6月a./b=b.a a的元素被的元素被b的对应元素除的对应元素除a.b=b./a b的元素被的元素被a的对应元素除的对应元素除例例:a=1 2 3;b=4 5 6;c1=a.b;c2=b./ac1=4.0000 2.5000 2.0000c2=4.0000 2.5000 2.0000第二十六张,PPT共八十一页,创作于2022年6月3.数组乘方数组乘方(.)元素对元素的幂元素对元素的幂例例:a=1 2 3;b=4 5 6;z=a.2z=1.00 4.00 9.00z=a.bz=1.00 32.00 729.00第二十七张,PPT共八十一页,创作于2022年6月五、关系运算、逻辑运算及其函数五、关系运算、逻辑运算及其函数 关系运算和逻辑运算均按照数组运算的规则关系运算和逻辑运算均按照数组运算的规则关系运算和逻辑运算均按照数组运算的规则关系运算和逻辑运算均按照数组运算的规则和定义进行的。和定义进行的。和定义进行的。和定义进行的。1、关系运算关系运算(2)运算规则运算规则,=,=,=,=(1)关系运算符关系运算符 a.a.两个标量比较两个标量比较两个标量比较两个标量比较 关系成立值为关系成立值为关系成立值为关系成立值为1 1,否则为,否则为,否则为,否则为0 0;b.b.两个同维数组比较两个同维数组比较两个同维数组比较两个同维数组比较第二十八张,PPT共八十一页,创作于2022年6月每一对应元素间进行比较,结果为同维的每一对应元素间进行比较,结果为同维的每一对应元素间进行比较,结果为同维的每一对应元素间进行比较,结果为同维的0-10-1矩阵;矩阵;矩阵;矩阵;c.c.一标量与数组比较一标量与数组比较一标量与数组比较一标量与数组比较标量与数组中的每一元素作比较,结果为标量与数组中的每一元素作比较,结果为标量与数组中的每一元素作比较,结果为标量与数组中的每一元素作比较,结果为0-10-1矩阵。矩阵。矩阵。矩阵。A=35,1,6;26,19,24;3,32,7;B=9;C=9*eye(size(A);C=9 0 0 0 9 0 0 0 9D=rem(A,3)=0D=0 0 1 0 0 1 1 0 0D1=CAD2=0 1 1 0 0 0 1 0 0第二十九张,PPT共八十一页,创作于2022年6月(3)find函数函数 找出向量或数组中非零元素的位置标识,找出向量或数组中非零元素的位置标识,数组按列顺序找。数组按列顺序找。格式:格式:i=find(x)i为非零元素的序号为非零元素的序号(以列为顺序)(以列为顺序)i,j=find(x)i,j分别为非零元素的行号和列号分别为非零元素的行号和列号A=3,5,-4,0;5,9,-1,5;i=find(A=0)j,k=find(A=0)i=i=5 5 6 6 7 7j=j=1 1 2 2 1 1k=k=3 3 3 3 4 4第三十张,PPT共八十一页,创作于2022年6月2、逻辑运算逻辑运算(2)运算规则运算规则&,|,&,|(1)逻辑运算符逻辑运算符 a.a.非零元素的逻辑量为真,其代码为非零元素的逻辑量为真,其代码为非零元素的逻辑量为真,其代码为非零元素的逻辑量为真,其代码为1 1,否则为,否则为,否则为,否则为0 0。b.b.两个标量比较两个标量比较两个标量比较两个标量比较 a&b,a&b,真真为真(真真为真(真真为真(真真为真(1 1),否则为),否则为),否则为),否则为0 0;a|b,a|b,其一真则真(其一真则真(其一真则真(其一真则真(1 1),否则为),否则为),否则为),否则为0 0;a,a,真变假(真变假(真变假(真变假(0 0),假变真(),假变真(),假变真(),假变真(1 1)。)。)。)。&当运算符左边为当运算符左边为当运算符左边为当运算符左边为1 1时,才继续执行符号右边的运算时,才继续执行符号右边的运算时,才继续执行符号右边的运算时,才继续执行符号右边的运算|当运算符左边为当运算符左边为当运算符左边为当运算符左边为0 0时,才继续执行符号右边时,才继续执行符号右边时,才继续执行符号右边时,才继续执行符号右边的运算的运算第三十一张,PPT共八十一页,创作于2022年6月c.c.两个同维数组比较两个同维数组比较两个同维数组比较两个同维数组比较同一位置按标量规则进行运算,结果为同维的同一位置按标量规则进行运算,结果为同维的同一位置按标量规则进行运算,结果为同维的同一位置按标量规则进行运算,结果为同维的0-10-1数组。数组。数组。数组。d.d.标量与数组标量与数组标量与数组标量与数组 标量与数组中每个元素作逻辑运算,结果为的标量与数组中每个元素作逻辑运算,结果为的标量与数组中每个元素作逻辑运算,结果为的标量与数组中每个元素作逻辑运算,结果为的0-10-1数组。数组。数组。数组。e e.逻辑运算符的优先级逻辑运算符的优先级逻辑运算符的优先级逻辑运算符的优先级&|&|优先级依次递减优先级依次递减优先级依次递减优先级依次递减,(3)逻辑函数逻辑函数all(A)all(A):A:A为向量,若其全为非零元素,值为为向量,若其全为非零元素,值为为向量,若其全为非零元素,值为为向量,若其全为非零元素,值为1 1,否则,否则,否则,否则 为为为为0 0;A A为数组,则对为数组,则对为数组,则对为数组,则对A A每一列以向量规则运算,值为每一列以向量规则运算,值为每一列以向量规则运算,值为每一列以向量规则运算,值为0-10-1向向向向量。量。量。量。第三十二张,PPT共八十一页,创作于2022年6月数学运算、关系运算和逻辑运算三者优先级顺序数学运算、关系运算和逻辑运算三者优先级顺序数学运算、关系运算和逻辑运算三者优先级顺序数学运算、关系运算和逻辑运算三者优先级顺序(P62)(P62):(1)(1),.,.,.,.(2)(2),*,/,.*,./,.,+,-,:,*,/,.*,./,.,+,-,:(3)(3),=,=,=,=,=,=(4)(4)&,|,&,|&,|,&,|any(A)any(A):A:A为向量,若有一元素非零,值为为向量,若有一元素非零,值为为向量,若有一元素非零,值为为向量,若有一元素非零,值为1 1,否则,否则,否则,否则 为为为为0 0;A A为数组,则对为数组,则对为数组,则对为数组,则对A A每一列以向量规则运算,值为每一列以向量规则运算,值为每一列以向量规则运算,值为每一列以向量规则运算,值为0-10-1向量。向量。向量。向量。isinf(A)isinf(A):返回一个与返回一个与返回一个与返回一个与A A同维的数组同维的数组同维的数组同维的数组,中相应位置元素的值为无穷大中相应位置元素的值为无穷大中相应位置元素的值为无穷大中相应位置元素的值为无穷大时的值为时的值为时的值为时的值为1,1,否则为否则为否则为否则为0.0.isnan(A)isnan(A):返回一个与返回一个与返回一个与返回一个与A A同维的数组同维的数组同维的数组同维的数组,isfinite(A)isfinite(A):返回一个与返回一个与返回一个与返回一个与A A同维的数组同维的数组同维的数组同维的数组,第三十三张,PPT共八十一页,创作于2022年6月六、线性代数方程组求解六、线性代数方程组求解matlab中有两种除运算左除和右除。中有两种除运算左除和右除。对于方程对于方程Ax=b,A 为为mn矩阵,有三种情矩阵,有三种情况:况:当当m=n时,此方程成为时,此方程成为“恰定恰定”方程方程 当当mn时,此方程成为时,此方程成为“超定超定”方程方程 当当mn时,此方程成为时,此方程成为“欠定欠定”方程方程 matlab定义的除运算可以很方便地解上定义的除运算可以很方便地解上述三种方程述三种方程第三十四张,PPT共八十一页,创作于2022年6月对于方程对于方程Ax=0,称为齐次方程,其有两种可能的解:称为齐次方程,其有两种可能的解:(a)零解零解,充要条件是,充要条件是R(A)=n,若是方阵若是方阵,则则|A|0;(b)非非零解零解,充要条件是,充要条件是R(A)n(有基础解系有基础解系)齐次方程齐次方程Ax=0的求解利用行阶梯函数的求解利用行阶梯函数:R=rref(A)或或 有理基函数有理基函数 Z=null(A,r)(即基础解系即基础解系)r表示表示Z的列向量是方程的列向量是方程Ax=0的有理基的有理基.1.齐次方程组的求解齐次方程组的求解第三十五张,PPT共八十一页,创作于2022年6月A=1,1,2,-1;2,2,4,-2;2,1,1,-1;2,2,1,2;format ratR=rref(A)例例:x1+x2+2x3-x4=0 2x1+2x2+4x3-2x4=0 2x1+x2+x3-x4=0 2x1+2x2+x3+2x4=0结果:结果:R=1 0 0 -4/3 0 1 0 3 0 0 1 -4/3 0 0 0 0 第三十六张,PPT共八十一页,创作于2022年6月通解通解通解通解Z=null(A,r)结果:结果:Z=4/3 -3 4/3 1第三十七张,PPT共八十一页,创作于2022年6月2.非齐次方程组的求解非齐次方程组的求解非齐次线性方程组求解步骤非齐次线性方程组求解步骤非齐次线性方程组求解步骤非齐次线性方程组求解步骤:(1 1)判断)判断)判断)判断Ax=bAx=b是否有解是否有解是否有解是否有解,若有则继续二步若有则继续二步若有则继续二步若有则继续二步;(2 2)求求求求Ax=bAx=b的一个特解的一个特解的一个特解的一个特解;若是恰定方程若是恰定方程若是恰定方程若是恰定方程,x=inv(A),x=inv(A)b b (det(A)=0)(det(A)=0)或或或或x=Ab x=Ab 运算求解方程运算求解方程运算求解方程运算求解方程,而超定方程和欠定方程而超定方程和欠定方程而超定方程和欠定方程而超定方程和欠定方程x=Abx=Ab ;(3 3)求)求)求)求Ax=0Ax=0的通解的通解的通解的通解;求求求求基础解系基础解系基础解系基础解系 :Z=null(A,r)Z=null(A,r)(4 4)Ax=bAx=b的通解等于的通解等于的通解等于的通解等于Ax=0Ax=0的通解与的通解与的通解与的通解与Ax=bAx=b的一个特解相加。的一个特解相加。的一个特解相加。的一个特解相加。对于方程对于方程Ax=b,称为非齐次方程。称为非齐次方程。Ax=b其解存在三种可能:其解存在三种可能:其解存在三种可能:其解存在三种可能:(a a)无解,充要条件是)无解,充要条件是)无解,充要条件是)无解,充要条件是R(A)R(A,b)R(A)R(A,b)(b b)唯一解,充要条件是)唯一解,充要条件是)唯一解,充要条件是)唯一解,充要条件是R(A)=R(A,b)=nR(A)=R(A,b)=n(c c)无穷解,充要条件是)无穷解,充要条件是)无穷解,充要条件是)无穷解,充要条件是R(A)=R(A,b)nR(A)=R(A,b)n第三十八张,PPT共八十一页,创作于2022年6月例例:x1+x2-3x3-x4=1 2x1+2x2+x3-2x4=3 2x1+x2+x3-x4=2 A=1,1,-3,-1;2,2,1,-2;2,1,1,-1;b=1;3;2;A=1,1,-3,-1;2,2,1,-2;2,1,1,-1;b=1;3;2;B=A,b;ra=rank(A);rb=rank(B);B=A,b;ra=rank(A);rb=rank(B);format rat format ratif ra=rb&ra=length(A(1,:)if ra=rb&ra=length(A(1,:)x=Ab x=Abelseif ra=rb&ralength(A(1,:)elseif ra=rb&ra0%非齐次方程组非齐次方程组非齐次方程组非齐次方程组 if rank(A)=rank(A,b)%方程组相容方程组相容方程组相容方程组相容 if rank(A)=n%有唯一解有唯一解有唯一解有唯一解 x=Ab;else%方程组有无穷多个解方程组有无穷多个解方程组有无穷多个解方程组有无穷多个解,基础解系基础解系基础解系基础解系 disp(原方程组有有无穷个解,其齐次方程组原方程组有有无穷个解,其齐次方程组原方程组有有无穷个解,其齐次方程组原方程组有有无穷个解,其齐次方程组的基础解系为的基础解系为的基础解系为的基础解系为y y,特解为,特解为,特解为,特解为x);y=null(A,r);x=Ab;end第四十张,PPT共八十一页,创作于2022年6月 else%方程组不相容,无解方程组不相容,无解方程组不相容,无解方程组不相容,无解 disp(方程组无解方程组无解);end else%齐次方程组齐次方程组齐次方程组齐次方程组 if rank(A)=n%列满秩列满秩列满秩列满秩 x=zero(m,1)%0 0解解解解 else%非非非非0 0解解解解 disp(方程组有无穷个解,基础解系为方程组有无穷个解,基础解系为x);x=null(A,r);end endreturn第四十一张,PPT共八十一页,创作于2022年6月3.非线性方程的解法非线性方程的解法二分法:二分法:erfen(fun,x0,xf,esp)迭代法:迭代法:newton ger4.非线性方程组的解法非线性方程组的解法不动点迭代法:不动点迭代法:iterateproNewton迭代法:迭代法:newtonpro第四十二张,PPT共八十一页,创作于2022年6月1、多项式创建多项式创建 f(x)=anxn+an-1xn-1+a0 可用行向量可用行向量 p=an an-1 a1+a0表示表示六、六、多项式运算(多项式运算(P111)2、多项式运算多项式运算(1)roots 求多项式的根求多项式的根例:求例:求x3+4x2+2x+1的根的根p=1,4,2,1;r=roots(p)第四十三张,PPT共八十一页,创作于2022年6月结果:结果:r=-3.5115 -0.2442+0.4745i -0.2442-0.4745i可利用可利用poly指令和指令和r返回多项式形式返回多项式形式pp=poly(r);f=poly2sym(pp)或或f=poly2str(pp,x)函数文件,显示函数文件,显示数学多项式的形式数学多项式的形式结果:结果:x3+4*x2+2*x+1第四十四张,PPT共八十一页,创作于2022年6月(2)求多项式的值求多项式的值 格式:格式:f=polyval(p,s)p为多项式系数向量,为多项式系数向量,s为数值或数组为数值或数组(3)多项式乘、除运算多项式乘、除运算(向量的卷积和解向量的卷积和解卷积卷积)乘(卷积)乘(卷积):c=conv(a,b)d,r=deconv(c,a)余数余数c除除a后的整数后的整数除(解卷积)除(解卷积):第四十五张,PPT共八十一页,创作于2022年6月 n=1:50;%定义序列的长度定义序列的长度定义序列的长度定义序列的长度 hb=zeros(1,50);hb(1)=1;hb(2)=2.5;hb(3)=2.5;hb(4)=1;close all;subplot(3,1,1);stem(hb);title(系统系统 hbn);m=1:50;%定义序列的长度定义序列的长度定义序列的长度定义序列的长度例例:第四十六张,PPT共八十一页,创作于2022年6月A=444.128;%设置信号的有关参数设置信号的有关参数设置信号的有关参数设置信号的有关参数a=50*sqrt(2.0)*pi;T=0.001;%采样率采样率采样率采样率w0=50*sqrt(2.0)*pi;x=A*exp(-a*m*T).*sin(w0*m*T);subplot(3,1,2);stem(x);title(输入信号输入信号 xn);y=conv(x,hb);subplot(3,1,3);stem(y);title(输出信号输出信号yn);第四十七张,PPT共八十一页,创作于2022年6月第四十八张,PPT共八十一页,创作于2022年6月(4)多项式微分多项式微分命令格式:命令格式:polyder(p):求求p的微分的微分polyder(a,b):求多项式求多项式a(x)*b(x)乘积的微分乘积的微分p,q=polyder(a,b):求多项式求多项式a(x)/b(x)商的微分商的微分例:例:a=1 2 3 4 5;poly2str(a,x)ans=x4+2 x3+3 x2+4 x+5b=polyder(a)结果:结果:b=4 6 6 4poly2str(b,x)结果:结果:ans=4 x3+6 x2+6 x+4第四十九张,PPT共八十一页,创作于2022年6月七、数值微积分及微分方程求解七、数值微积分及微分方程求解1、差分与微分、差分与微分dx=diff(x,k)结果为结果为(m-k)xn维维k阶差分阵阶差分阵dyx=diff(y)./diff(x)2 2、积分、积分、积分、积分trapz(x,y)梯形法积分梯形法积分quad(函数文件函数文件函数文件函数文件,x0,xf,tol,trace)x0,xf,tol,trace)自适应递推辛普生法(低阶)自适应递推辛普生法(低阶)quad8(函数文件函数文件函数文件函数文件,x0,xf,tol,trace)x0,xf,tol,trace)自适应牛顿自适应牛顿柯西法(高阶)柯西法(高阶)dblquad8(函数文件函数文件,x0,xf,y0,yf,tol,trace)二重定积分二重定积分第五十张,PPT共八十一页,创作于2022年6月format shorts=quad8(jifen,0,pi)function y=jifen(x)y=x.*sin(x)./(1+(cos(x).2);s=2.4674求:求:取取取取jifen文文文文件名保存件名保存件名保存件名保存另开编辑窗口另开编辑窗口第五十一张,PPT共八十一页,创作于2022年6月微分方程求解的仿真算法有多种,常用的有微分方程求解的仿真算法有多种,常用的有Euler(欧拉法)欧拉法)、Runge Kutta(龙龙 格格-库塔法。库塔法。Euler法法称一步法,用于一阶微分方程称一步法,用于一阶微分方程3、微分方程求解、微分方程求解格式:格式:x,y=eulerpro(fun,x0,xf,y0,h)第五十二张,PPT共八十一页,创作于2022年6月龙格龙格-库塔法库塔法:实际上取两点斜率的平均:实际上取两点斜率的平均 斜率来计斜率来计算的,其精度高于欧拉算法算的,其精度高于欧拉算法。龙格龙格-库塔法:库塔法:ode23 ode45x,y=ode23(函数文件函数文件,x0,xf,y0,tol,trace)x,y=ode45(函数文件函数文件,x0,xf,y0,tol,trace)说明:说明:(1)函数文件的书写中,必须书写成一阶微分方程)函数文件的书写中,必须书写成一阶微分方程dy/dx=f(x,y)的形式的形式;函数文件须以函数文件须以file(x,y)形式;形式;(2)微积分的上下限,是已知的初始条件,其为列向量,)微积分的上下限,是已知的初始条件,其为列向量,且高阶项在前。且高阶项在前。第五十三张,PPT共八十一页,创作于2022年6月例:例:求求x+(x2-1)x+x=0,已知已知x|t=0=0,x|t=0=0.25.为方便令为方便令x1=x,x2=x分别对分别对x1,x2求一求一阶导数,整理后写成一阶微分方程组阶导数,整理后写成一阶微分方程组形式形式 x1=x2 x2=x2(1-x12)-x11.建立建立m文件文件2.解微分方程解微分方程第五十四张,PPT共八十一页,创作于2022年6月建立建立m文件文件function xdot=wf(t,x)xdot=zeros(2,1)xdot(1)=x(2)xdot(2)=x(2).*(1-x(1).2)-x(1)给定区间、初始值给定区间、初始值;求解微分方程求解微分方程t0=0;tf=20;x0=0.25,0;t,x=ode23(wf,t0,tf,x0)plot(t,x)第五十五张,PPT共八十一页,创作于2022年6月第五十六张,PPT共八十一页,创作于2022年6月八、拟合与插值八、拟合与插值1.多项式拟合多项式拟合2.利用最小二乘法,根据已知数据拟合出多项利用最小二乘法,根据已知数据拟合出多项式系数式系数格式:格式:p=polyfit(x,y,n)例:例:已知五组数据已知五组数据(1,5),(2,43),(3,128),(4,280),(5,500),试拟合数据的趋势试拟合数据的趋势x=1:5;y=5,43,128,280,500;p=polyfit(x,y,3)结果:结果:p=1.7500 15.0357 -20.7143 9.2000第五十七张,PPT共八十一页,创作于2022年6月x1=0:0.1:6;y1=polyval(p,x1);plot(x,y,*,x1,y1,-r)第五十八张,PPT共八十一页,创作于2022年6月2.插值插值插值的定义插值的定义是对某些集合给定的数据点之是对某些集合给定的数据点之间函数的估值方法。间函数的估值方法。当不能很快地求出所需中间点的函数时,插当不能很快地求出所需中间点的函数时,插值是一个非常有价值的工具。值是一个非常有价值的工具。Matlab提供了一维、二维、提供了一维、二维、三次样条等许多三次样条等许多插值选择插值选择第五十九张,PPT共八十一页,创作于2022年6月(1)Lagrange插值插值 对于对于(x1,y1),(xn,yn)已知值,可求出已知值,可求出x1 xn间任何间任何x对应下的对应下的y值。值。格式:格式:y=lagrange(x0,y0,x)第六十张,PPT共八十一页,创作于2022年6月v利用已知点确定未知点利用已知点确定未知点v粗糙粗糙 精确精确v集合大的集合大的 简化的简化的(2)分段线性插值)分段线性插值 intep1、interp2、linear、spline三次样条插值、三次样条插值、cubic三次插值。三次插值。(3)Hermite插值插值 要求节点上函数值相等,导数值相等,甚至要求节点上函数值相等,导数值相等,甚至要求高阶导数值相等。要求高阶导数值相等。格式:格式:y=