电脑基础知识7符号计算matlab_第1页
电脑基础知识7符号计算matlab_第2页
电脑基础知识7符号计算matlab_第3页
电脑基础知识7符号计算matlab_第4页
电脑基础知识7符号计算matlab_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

七:MATLAB符号计算MATLAB课堂content前言与数值运算的区别7.1符号计算基础7.2符号函数的极限7.3符号微积分7.4级数7.5代数方程的符号求解7.6常微分方程的符号求解7.7符号分析可视化7.8符号计算局限性和Maple调用张卫华MATLAB课堂数值运算中必须先对变量赋值,然后才能参与运算。符号运算无须事先对独立变量赋值,运算结果以标准的符号形式表达。 符号运算重点用于解决自然科学理论中,各种公式、表达式以及相应的推导问题前言:与数值运算的区别#@张卫华MATLAB课堂符号运算的特点:运算对象可以是没赋值的符号变量可以获得任意精度的解SymbolicMathToolbox——符号运算工具包通过调用Maple软件实现符号计算的。maple软件——主要功能是符号运算,它占据符号软件的主导地位。

前言张卫华MATLAB课堂7.1符号计算基础例:a=sym(‘a’)建立符号量a,

k2=sym('2');

建立单个符号量k2

用户可以在表达式中使用变量a和k2进行各种运算。7.1.1、建立符号变量和符号表达式1、sym函数

变量=sym(’变量名‘):用来建立单个符号变量,其中变量名可以是字符、字符串、表达式或字符表达式;

符号常量=sym(‘常量’);

用来建立单个符号常量张卫华MATLAB课堂例1:考察符号变量和数值变量的差别。在MATLAB命令窗口,输入命令:a=sym('a');b=sym('b');c=sym('c');d=sym('d');

%定义4个符号变量w=10;x=5;y=-8;z=11;%定义4个数值变量A=[a,b;c,d]%建立符号矩阵AB=[w,x;y,z]%建立数值矩阵Bdet(A)%计算符号矩阵A的行列式det(B)%计算数值矩阵B的行列式7.1.1、建立符号变量和符号表达式1、sym函数张卫华MATLAB课堂例2:比较符号常数与数值在代数运算时的差别。在MATLAB命令窗口,输入命令:pi1=sym('pi');k1=sym('8');k2=sym('2');k3=sym('3'); %定义符号变量和符号常量pi2=pi;r1=8;r2=2;r3=3;

%定义数值变量f1=sin(pi1/3)%计算符号表达式值s1=sin(pi2/3)%计算数值表达式值f2=sqrt(k1)%计算符号表达式值s2=sqrt(r1)%计算数值表达式值f3=sqrt(k3+sqrt(k2))%计算符号表达式值s3=sqrt(r3+sqrt(r2))%计算数值表达式值7.1.1、建立符号变量和符号表达式1、sym函数张卫华MATLAB课堂syms函数同时创建多个符号量:symsvar1var2…varn

函数定义符号变量var1,var2,…,varn等。用这种格式定义符号变量时不要在变量名上加字符分界符('),变量间用空格而不要用逗号分隔。7.1.1、建立符号变量和符号表达式2、syms函数张卫华MATLAB课堂可以用符号变量组成,也可以用sym直接建立例3用两种方法建立符号表达式。在MATLAB窗口,输入命令:U=sym('3*x^2+5*y+2*x*y+6')%定义符号表达式Usymsxy;%建立符号变量x、yV=3*x^2+5*y+2*x*y+6%定义符号表达式V2*U-V+6%求符号表达式的值7.1.1、建立符号变量和符号表达式3.符号表达式张卫华MATLAB课堂f='sin(x)+5x'f——符号变量名sin(x)+5x——符号表达式''——符号标识7.1.1、建立符号变量和符号表达式3.符号表达式符号变量赋值张卫华MATLAB课堂''的内容可以是符号表达式,也可以是符号方程。例:

f1='ax^2+bx+c'——二次三项式

f2='ax^2+bx+c=0'——方程

f3='Dy+y^2=1'——微分方程※符号表达式或符号方程可以赋给符号变量,以后调用方便;也可以不赋给符号变量直接参与运算7.1.1、建立符号变量和符号表达式3.符号表达式张卫华MATLAB课堂数值矩阵A=[1,2;3,4]A=[a,b;c,d]——不识别

用matlab函数sym创建矩阵(symbolic的缩写)命令格式:A=sym('[]')※符号矩阵内容同数值矩阵

※需用sym指令定义

※需用''标识7.1.1、建立符号变量和符号表达式4.符号矩阵张卫华MATLAB课堂例如:A=sym('[a,2*b;3*a,0]')A=[a,2*b][3*a,0]

注意:符号矩阵的每一行的两端都有方括号,这是与matlab数值矩阵的一个重要区别。7.1.1、建立符号变量和符号表达式4.符号矩阵张卫华MATLAB课堂用字符串直接创建矩阵

模仿matlab数值矩阵的创建方法

需保证各行元素包含的字符串有相同的长度。例:A=['[a,2*b]';'[3*a,0]']

A=[a,2*b][3*a,0]7.1.1、建立符号变量和符号表达式4.符号矩阵张卫华MATLAB课堂例4计算3阶范得蒙矩阵行列式的值。设A是一个由符号变量a,b,c确定的范得蒙矩阵。命令如下:symsabc;U=[a,b,c];A=[[1,1,1];U;U.^2]%建立范得蒙符号矩阵det(A)%计算A的行列式值7.1.1、建立符号变量和符号表达式4.符号矩阵张卫华MATLAB课堂

符号矩阵的修改

a.直接修改

可用、键找到所要修改的矩阵,直接修改

b.指令修改

用R=subs(S,old,new)来修改7.1.1、建立符号变量和符号表达式4.符号矩阵张卫华MATLAB课堂例如:>>A=['[a,2*b]';'[3*a,0]']

>>A=[a,2*b][3*a,0]A(1,2)=subs(2*b,b,c)

A=[a,2*c][3*a,0]7.1.1、建立符号变量和符号表达式4.符号矩阵张卫华MATLAB课堂将数值矩阵转化为符号矩阵函数调用格式:sym(A)例:A=[1/3,2.5;1/0.7,2/5]A=0.33332.50001.42860.4000sym(A)ans=[1/3,5/2][10/7,2/5]符号矩阵与数值矩阵的转换7.1.1、建立符号变量和符号表达式4.符号矩阵张卫华MATLAB课堂将符号矩阵转化为数值矩阵函数调用格式:

numeric(A)例:A=[1/3,5/2][10/7,2/5]

numeric(A)

ans=0.33332.50001.42860.40007.1.1、建立符号变量和符号表达式4.符号矩阵张卫华MATLAB课堂7.1.2、基本的符号运算1.符号表达式运算符号运算的运算符与函数和数值计算几乎完全相同基础运算符:+,-,*,/等关系运算符三角、双曲函数指数、对数函数复数函数矩阵代数命令(1)四则运算张卫华MATLAB课堂(1)、符号表达式的四则运算也可以用函数symadd

symsum

symmul

sysdiv

sympow实现例6符号表达式的四则运算示例。在MATLAB命令窗口,输入命令:symsxyz;f=2*x+x^2*x-5*x+x^3%符号表达式的结果为最简形式f=2*x/(5*x)%符号表达式的结果为最简形式f=(x+y)*(x-y)%符号表达式的结果不是x^2-y^2,而是(x+y)*(x-y)7.1.2、基本的符号运算1.符号表达式运算张卫华MATLAB课堂(1)、符号表达式的四则运算符号表达式的提取分子和分母运算如果符号表达式是一个有理分式或可以展开为有理分式,可利用numden函数来提取符号表达式中的分子或分母。其一般调用格式为:[n,d]=numden(s)该函数提取符号表达式s的分子和分母,分别将它们存放在n与d中。7.1.2、基本的符号运算1.符号表达式运算张卫华MATLAB课堂(2)、因式分解与展开S是符号表达式或符号矩阵factor(S)

对S分解因式。expand(S)

对S进行展开。collect(S)

对S合并同类项。collect(S,v)

对S按变量v合并同类项。7.1.2、基本的符号运算1.符号表达式运算张卫华MATLAB课堂例7对符号矩阵A的每个元素分解因式。命令如下:symsabxy;A=[2*a^2*b^3*x^2-4*a*b^4*x^3+10*a*b^6*x^4,3*x*y-5*x^2;4,a^3-b^3];factor(A)%对A的每个元素分解因式7.1.2、基本的符号运算1.符号表达式运算张卫华MATLAB课堂例8计算表达式S的值。命令如下:symsxy;s=(-7*x^2-8*y^2)*(-x^2+3*y^2);expand(s)%对s展开collect(s,x)%对s按变量x合并同类项(无同类项)factor(ans)%对ans分解因式7.1.2、基本的符号运算1.符号表达式运算张卫华MATLAB课堂(3)表达式化简MATLAB提供的对符号表达式化简的函数有:simplify(S)

应用函数规则对S进行化简。simple(S)

调用MATLAB的其他函数对表达式进行综合化简,并显示化简过程。例9化简symsxy;s=(x^2+y^2)^2+(x^2-y^2)^2;simple(s)%MATLAB自动调用多种函数对s进行化简,并显示每步结果7.1.2、基本的符号运算1.符号表达式运算张卫华MATLAB课堂矩阵代数运算数值运算和符号运算几乎相同1、符号矩阵的四则运算符号矩阵的四则运算与幂运算可直接用:+、-、*、.*、/、./、\、.\、^、.^实现。>>B=sym('[a,b;c,d]');>>C=sym('[x,y;z,w]');>>B*Cans=[a*x+b*z,a*y+b*w][c*x+d*z,c*y+d*w]7.1.2、符号矩阵运算2.符号矩阵运算张卫华MATLAB课堂2、符号矩阵的其他运算(1)转置运算:transpose>>B=sym('[a,b;c,d]');>>B‘%求转置共轭[conj(a),conj(c)][conj(b),conj(d)]>>transpose(B)%求转置[a,c][b,d]B=[a,b][c,d]张卫华MATLAB课堂(2)行列式运算:det(3)求逆:inv(A)或A^(-1)(4)求秩:rank(A)(5)求特征值:[V,D]=eig(A)>>A=sym('[1,2;3,4]')>>eig(A)A=[1,2][3,4]ans=[5/2+1/2*33^(1/2)][5/2-1/2*33^(1/2)]张卫华MATLAB课堂在symbolic中有三种不同的算术运算:数值类型matlab的浮点算术运算有理数类型maple的精确符号运算vpa类型maple的任意精度算术运算7.1.2、基本的符号运算3.任意精度的数学运算张卫华MATLAB课堂浮点算术运算1/2+1/3--(定义输出格式formatlong)ans=0.83333333333333符号运算sym(1/2)+(1/3)ans=5/6--精确解

7.1.2、基本的符号运算3.任意精度的数学运算张卫华MATLAB课堂任意精度算术运算digits(n)——设置可变精度,缺省16位vpa(x,n)——显示可变精度计算digits(25)vpa(1/2+1/3)%在digits指定精度下,给出结果ans=.83333333333333333333333337.1.2、基本的符号运算3.任意精度的数学运算张卫华MATLAB课堂vpa(5/6,40)%在40位精度下给出计算结果

ans=.8333333333333333333333333333333333333333

a=sym('[1/4,exp(1);log(3),3/7]')a=[1/4,exp(1)][log(3),3/7]vpa(a,10)ans=[.2500000000,2.718281828][1.098612289,.4285714286]7.1.2、基本的符号运算3.任意精度的数学运算张卫华MATLAB课堂findsym可以查找一个符号表达式中的的符号变量。findsym(S,n)函数返回符号表达式S中的n个符号变量,若没有指定n,则返回S中的全部符号变量。在求函数的极限、导数和积分时,如果用户没有明确指定自变量,MATLAB将按缺省原则确定主变量并对其进行相应微积分运算。可用findsym(S,1)查找系统的缺省变量,以最接近字符x的顺序排列默认自变量;若与X相同距离,则在x后面的优先;大写字母比所有的小写字母都靠后。。7.1.3、符号表达式中变量的确定张卫华MATLAB课堂7.2符号函数的极限limit函数的调用格式为:◆limit(f):◆limit(f,a):◆limit(f,x,a):◆limit(f,x,a,’right’):◆limit(f,x,a,’left’):张卫华MATLAB课堂例:10求极限。symsamx;f=(x^(1/m)-a^(1/m))/(x-a);limit(f,x,a)%求极限(1)f=(sin(a+x)-sin(a-x))/x;limit(f)%求极限(2)limit(f,inf)%在x→∞(包括+∞和-∞)处的极限limit(f,x,inf,'left')%求极限(3)f=(sqrt(x)-sqrt(a)-sqrt(x-a))/sqrt(x*x-a*a);limit(f,x,a,'right')

%求极限(4)张卫华MATLAB课堂7.3符号微积分7.3.1不定积分在MATLAB中,求不定积分的函数是int,其调用格式为:int(f,x)int函数求函数f对变量x的不定积分。参数x可以缺省,遵从缺省原则。张卫华MATLAB课堂例7.13求不定积分。命令如下:x=sym('x');f=(3-x^2)^3;int(f)%求不定积分(1)f=sqrt(x^3+x^4);int(f)%求不定积分(2)g=simple(ans)%调用simple函数对结果化简张卫华MATLAB课堂7.3.2符号函数的定积分int(f,x,a,b)a,b是积分上下限,x为积分变量,可省略例14求定积分。命令如下:x=sym('x');t=sym('t');int(abs(1-x),1,2)%求定积分(1)f=1/(1+x^2);int(f,-inf,inf)%求定积分(2)int(4*t*x,x,2,sin(t))%求定积分(3)f=x^3/(x-1)^100;I=int(f,2,3)

%用符号积分的方法求定积分(4)double(I)

%将上述符号结果转换为数值张卫华MATLAB课堂例15求椭球的体积。命令如下:symsabcz;f=pi*a*b*(c^2-z^2)/c^2;V=int(f,z,-c,c)V=4/3*pi*a*b*c张卫华MATLAB课堂例16轴的长度为10米,若该轴的线性密度计算公式是f(x)=6+0.3x千克/米(其中x为距轴的端点距离),求轴的质量。(1)符号函数积分。在MATLAB命令窗口,输入命令:symsx;f=6+0.3*x;m=int(f,0,10)(2)数值积分。先建立一个函数文件fx.m:functionfx=fx(x)fx=6+0.3*x;再在MATLAB命令窗口,输入命令:m=quad('fx',0,10,1e-6)张卫华MATLAB课堂7.3.3积分变换1.傅立叶(Fourier)变换fourier(fx,x,t)求函数f(x)的傅立叶像函数F(t)。ifourier(Fw,t,x)求傅立叶像函数F(t)的原函数f(x)。张卫华MATLAB课堂例计算f(t)=sin(t)的傅立叶变换及其逆变换。命令如下:symswt;y=sin(t);F=fourier(y,t,w)%求y的傅立叶变换f=ifourier(F,w,t)%求F的傅立叶逆变换例计算f(t)=1/t的傅立叶变换及其逆变换。命令如下:symswt;F=fourier(1/t,t,w)%求y的傅立叶变换f=ifourier(F,w,t)%求F的傅立叶逆变换说明:Dirac函数为单位脉冲函数。说明:Heaviside函数为单位阶跃函数。张卫华MATLAB课堂例7.18求函数的傅立叶变换及其逆变换。命令如下:symsxt;y=abs(x);Ft=fourier(y,x,t)%求y的傅立叶变换fx=ifourier(Ft,t,x)%求Ft的傅立叶逆变换2.拉普拉斯(Laplace)变换laplace(fx,x,t)

求函数f(x)的拉普拉斯像函数F(t)。ilaplace(Fw,t,x)

求拉普拉斯像函数F(t)的原函数f(x)。张卫华MATLAB课堂例7.19计算y=x2的拉普拉斯变换及其逆变换.命令如下:x=sym('x');y=x^2;Ft=laplace(y,x,t)%对函数y进行拉普拉斯变换fx=ilaplace(Ft,t,x)%对函数Ft进行拉普拉斯逆变换张卫华MATLAB课堂3.Z变换对数列f(n)进行z变换的MATLAB函数是:ztrans(fn,n,z)

求fn的Z变换像函数F(z)iztrans(Fz,z,n)

求Fz的z变换原函数f(n)例20求数列fn=e-n的Z变换及其逆变换。命令如下:symsnzfn=exp(-n);Fz=ztrans(fn,n,z)%求fn的Z变换f=iztrans(Fz,z,n)%求Fz的逆Z变换张卫华MATLAB课堂求导数用命令“diff”,相关的语法见下表输入格式含义diff(f)或diff(f,x)diff(f,2)或diff(f,x,2)diff(f,n)或diff(f,x,n)diff(S,'x')求表达式S关于x的导数diff(S,'x',n)求表达式S关于x的n次导数7.3.4符号求导张卫华MATLAB课堂例、求函数f(x)=ax2+bx+c的导数。解

输入及结果如下:f4=0>>symsabcx>>f1=diff(‘a*x^2+b*x+c’)%缺省对x求微分f1=2*a*x+b>>f2=diff(‘a*x^2+b*x+c’,2)%对x求二次微分f2=2*a>>f3=diff(f,a)%对a求微分f3=x^2>>f4=diff(f,a,2)>>

f='a*x^2+b*x+c'张卫华MATLAB课堂

例11求函数的导数。命令如下:symsabtxyz;f=sqrt(1+exp(x));diff(f)%求(1)。未指定求导变量和阶数,按缺省规则处理f=x*cos(x);diff(f,x,2)%求(2)。求f对x的二阶导数diff(f,x,3)%求(2)。求f对x的三阶导数f1=a*cos(t);f2=b*sin(t);diff(f2)/diff(f1)%求(3)。按参数方程求导公式求y对x的导数(diff(f1)*diff(f2,2)-diff(f1,2)*diff(f2))/(diff(f1))^3%求(3)。求y对x的二阶导数f=x*exp(y)/y^2;diff(f,x)%求(4)。z对x的偏导数diff(f,y)%求(4)。z对y的偏导数f=x^2+y^2+z^2-a^2;zx=-diff(f,x)/diff(f,z)%求(5)。按隐函数求导公式求z对x的偏导数zy=-diff(f,y)/diff(f,z)%求(5)。按隐函数求导公式求z对y的偏导数张卫华MATLAB课堂例:12在曲线y=x3+3x-2上哪一点的切线与直线y=4x-1平行。命令如下:x=sym('x');y=x^3+3*x-2;%定义曲线函数f=diff(y);%对曲线求导数g=f-4;solve(g)%求方程f-4=0的根,即求曲线何处的导数为4张卫华MATLAB课堂7.4级数7.4.1级数的符号求和级数符号求和函数symsum,调用格式为:symsum(a,n,n0,nn)其中a表示一个级数的通项,是一个符号表达式。n是求和变量,n省略时使用系统的默认变量。n0和nn是求和的开始项和末项。

例22求和。命令如下:n=sym('n');s1=symsum(1/n^2,n,1,inf)%求s1s2=symsum((-1)^(n+1)/n,1,inf)%求s2。未指定求和变量,缺省为ns3=symsum(n*x^n,n,1,inf)%求s3。此处的求和变量n不能省略。s4=symsum(n^2,1,100)%求s4。计算有限级数的和张卫华MATLAB课堂

7.4.2函数的泰勒级数MATLAB中提供了将函数展开为幂级数的函数taylor,其调用格式为:taylor(f,v,n,a)该函数将函数f按变量v展开为泰勒级数,展开到第n项(即变量v的n-1次幂)为止,n的缺省值为6。v的缺省值与diff函数相同。参数a指定将函数f在自变量v=a处展开,a的缺省值是0。例23求函数在指定点的泰勒展开式。命令如下:x=sym('x');f1=(1+x+x^2)/(1-x+x^2);f2=sqrt(1-2*x+x^3)-(1-3*x+x^2)^(1/3);taylor(f1,x,5)%求(1)。展开到x的4次幂时应选择n=5taylor(f2,6)%求(2)。MATLAB还提供可视化的Taylor级数计算器,使用方法:taylortool张卫华MATLAB课堂

例24将多项式表示成x+1的幂的多项式。命令如下:x=sym('x');p=1+3*x+5*x^2-2*x^3;f=taylor(p,x,-1,4)张卫华MATLAB课堂7.5代数方程的符号求解7.5.1线性方程组的符号求解MATLAB中提供了一个求解线性代数方程组的函数linsolve,其调用格式为:linsolve(A,b)张卫华MATLAB课堂例27求线性方程组AX=b的解。解方程组(1)的命令如下:A=[34,8,4;3,34,3;3,6,8];b=[4;6;2];X=linsolve(A,b)%调用linsolve函数求(1)的解A\b%用另一种方法求(1)的解解方程组(2)的命令如下:symsa11a12a13a21a22a23a31a32a33b1b2b3;A=[a11,a12,a13;a21,a22,a23;a31,a32,a33];b=[b1;b2;b3];X=linsolve(A,b)%调用linsolve函数求(2)的解XX=A\b%用左除运算求(2)的解张卫华MATLAB课堂7.5.2非线性方程组的符号求解求解非线性方程组的函数是solve,调用格式为:solve(s):求解符号表达式s的代数方程,求解变量为默认变量。solve(s,v):求解符号表达式s的代数方程,求解变量为v。solve(s1,s2,…,sn,v1,v2,…,vn):求解符号表达式s1,s2,…,sn组成的代数方程组,求解变量分别v1,v2,…,vn。例28解方程。命令如下:x=solve('1/(x+2)+4*x/(x^2-4)=1+2/(x-2)','x')%解方程(1)f=sym('x-(x^3-4*x-7)^(1/3)=1');x=solve(f)%解方程(2)x=solve('2*sin(3*x-pi/4)=1')%解方程(3)x=solve('x+x*exp(x)-10','x')%解方程(4)。仅标出方程的左端张卫华MATLAB课堂例29:求方程组的解。命令如下:[xy]=solve('1/x^3+1/y^3=28','1/x+1/y=4','x,y')%解方程组(1)[xy]=solve('x+y-98','x^(1/3)+y^(1/3)-2','x,y')%解方程组(2)Warning:Explicitsolutioncouldnotbefound.>InC:\MATLABR11\toolbox\symbolic\solve.matline136x=[emptysym]y=[]对方程组(2)MATLAB给出了无解的结论,显然错误,请看完全与其同构的方程组(3)。输入命令如下:[u,v]=solve('u^3+v^3-98','u+v-2','u,v')%解方程组(3)[xy]=solve('x^2+y^2-5','2*x^2-3*x*y-2*y^2')%解方程组(4)张卫华MATLAB课堂7.6常微分方程的符号求解求解常微分方程的函数dsolve。该函数的调用格式为:dsolve('eqn1','condition','var')该函数求解微分方程eqn1在初值条件condition下的特解。参数var描述方程中的自变量符号,省略时按缺省原则处理,若没有给出初值条件condition,则求方程的通解。dsolve在求微分方程组时的调用格式为:dsolve('eqn1','eqn2',…,'eqnN','condition1',…,'conditionN','var1',…,'varN')函数求解微分方程组eqn1、…、eqnN在初值条件conditoion1、…、conditionN下的解,若不给出初值条件,则求方程组的通解,var1、…、varN给出求解变量。另:在MATLAB中,用大写字母D表示导数,如:Dy表示y’D2y表示y’’,Dy(0)=5表示y’(0)=5,D3y+D2y+Dy-x+5=0表示y’’’+y’’+y’-x+5=0张卫华MATLAB课堂例30求微分方程的通解。命令如下:y=dsolve('Dy-(x^2+y^2)/x^2/2','x')%解(1)。方程的右端为0时可以不写y=dsolve('Dy*x^2+2*x*y-exp(x)','x')%解(2)y=dsolve('Dy-x/y/sqrt(1-x^2)','x')%解(3)例31求微分方程的特解。命令如下:y=dsolve('Dy=2*x*y^2','y(0)=1','x')%解(1)y=dsolve('Dy-x^2/(1+y^2)','y(2)=1','x')%解(2)张卫华MATLAB课堂

例32用微分方程的数值解法和符号解法解方程,并对结果进行比较。在MATLAB命令窗口,输入命令:y=dsolve('Dy+2*y/x-4*x','y(1)=2','x')%用符号方法得到方程的解析解为了求方程的数值解,需要按要求建立一个函数文件fxyy.m:functionf=fxyy(x,y)f=(4*x^2-2*y)/x;%只能是y'=f(x,y)的形式,当不是这种形式时,要变形。return输入命令:[t,w]=ode45('fxyy',[1,2],2);%得到区间[1,2]中的数值解,以向量t、w存储。为了对两种结果进行比较,在同一个坐标系中作出两种结果的图形。输入命令:x=linspace(1,2,100);y=x.^2+1./x.^2;%为作图把符号解的结果离散化plot(x,y,'b.',t,w,'r-');张卫华MATLAB课堂例33求微分方程组的解。命令如下:[x,y]=dsolve('Dx=4*x-2*y','Dy=2*x-y','t')%解方程组(1)[x,y]=dsolve('D2x-y','D2y+x','t')%解方程组(2)张卫华MATLAB课堂1.函数曲线图

ezplot(F,[a,b])

作函数F在[a,b]上的图

F可以是显函数、隐函数或参变量函数其表示可以是字符串、函数句柄、

Inline函数或匿名函数.[a,b]缺省为[-2*pi,2*pi]7.7符号分析可视化张卫华MATLAB课堂例:绘出符号表达式在[0,10]间的曲线程序:symsxy=x^2+exp(x);ezplot(y,[0,10])张卫华MATLAB课堂ezpolar(F,[a,b])

作极坐标函数F(

)在a<

<b上的图,[a,b]缺省值为[0,2*pi]ezplot3(x,y,z,[a,b])

作曲线x=x(t),y=y(t),z=z(t)在a<t<b上的三维曲线图,[a,b]的缺省值为[0,2*pi]2.函数曲面图ezmesh(z,[a,b,c,d])

作函数z(x,y)在

a<x<b,c<y<d上的图张卫华MATLAB课堂ezmesh(x,y,z,[a,b,c,d])

作参变量函数x(s,t),y(s,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论