zoukankan      html  css  js  c++  java
  • MATLAB符号运算(2)

    3.2.1  函数计算器

    函数  funtool

    格式  funtool   %该命令将生成三个图形窗口,Figure No.1用于显示函数f的图形,Figure No.2用于显示函数g的图形,Figure No.3为一可视化的、可操作与显示一元函数的计算器界面。在该界面上由许多按钮,可以显示两个由用户输入的函数的计算结果:加、乘、微分等。funtool还有一函数存储器,允许用户将函数存入,以便后面调用。在开始时,funtool显示两个函数f(x) = x与g(x) = 1在区间[-2*pi, 2*pi]上的图形。Funtool同时在下面显示一控制面板,允许用户对函数fg进行保存、更正、重新输入、联合与转换等操作。

    输入命令funtool后,生成的界面如下:

     

    3-1  函数工具funtool界面

     

                     

        

    3-2  函数f的图形                                                    图3-3  函数g的图形

    说明  文本输入框区域:控制面板的上面几行,可以输入文本;

    f = :显示代表函数f的符号表达式,可在该行输入其他有效的表达式来定义f,再按回车键即可在Figure No.1中画出图形;

    g = :显示代表函数g的符号表达式,可在该行输入其他有效的表达式来定义g,再按回车键即可在Figure No.2中画出g图形;

    x = :显示用于画函数fg的区间。可在该行输入其他的不同区间,再按回车键即可改变Figure No.1与Figure No.2中的区间;

    a = :显示一用于改变函数f的常量因子(见下面的操作按钮)。可在该行输入不同的常数。

    控制按钮区域:该区域有一些按钮,按下它们将对函数f转换成不同的形式与执行不同的操作。

    df/dx:函数f的导数;

    int f:函数f的积分(没有常数的一个原函数),当函数f的原函数不能用初等函数表示时,操作可能失败;

    simple f:化简函数f(若有可能);

    num f:函数的分子;

    den f:函数f的分母;

    1/f:函数f的倒数;

    finv:函数f的反函数,若函数的反函数不存在,操作可能失败;

    f+a:用f(x)+a代替函数f(x);

    f-a:用f(x)-a代替函数f(x);

    f*a:用f(x)+a代替函数f(x);

    f/a:用f(x)/a代替函数f(x);

    f^a:用f(x)^a代替函数f(x);

    f(x+a):用f(x+a)代替函数f(x);

    f(x*a):用f(x-a)代替函数f(x);

    f+g:用f(x)+g(x)代替函数f(x);

    f-g:用f(x)-g(x)代替函数f(x);

    f*g:用f(x)*g(x)代替函数f(x);

    f/g:用f(x)/g(x)代替函数f(x);

    g=f:用函数f(x)代替函数g(x);

    swap:函数f(x)与g(x)互换;

    Insert:将函数f(x)保存到函数内存列表中的最后;

    Cycle:用内存函数列表中的第二项代替函数f(x);

    Delete:从内存函数列表中删除函数f(x);

    Reset:重新设置计算器为初始状态;

    Help:显示在线的关于计算器的帮助;

    Demo:运行该计算器的演示程序;

    Close:关闭计算器的三个窗口。

     

    3.2.2  微积分

    命令1  极限

    函数  limit

    格式  limit(F,x,a)   %计算符号表达式F=F(x)的极限值,当xa时。

    limit(F,a)     %用命令findsym(F)确定F中的自变量,设为变量x,再计算F的极限值,当x→a时。

    limit(F)      %用命令findsym(F)确定F中的自变量,设为变量x,再计算F的极限值,当x→0时。

    limit(F,x,a,'right')limit(F,x,a,'left')   %计算符号函数F的单侧极限:左极限x→a- 或右极限x→a+。

    3-25

    >>syms x a t h n; 

    >>L1 = limit((cos(x)-1)/x)

    >>L2 = limit(1/x^2,x,0,'right')

    >>L3 = limit(1/x,x,0,'left')

    >>L4 = limit((log(x+h)-log(x))/h,h,0)

    >>v = [(1+a/x)^x, exp(-x)];

    >>L5 = limit(v,x,inf,'left')

    >>L6 = limit((1+2/n)^(3*n),n,inf)

    计算结果为:

    L1 =

         0

    L2 =

         inf

    L3 =

         -inf

    L4 =

         1/x

    L5 =

         [ exp(a),      0]

    L6 =

         exp(6)

    命令 导数(包括偏导数)

    函数  diff

    格式  diff(S,'v')diff(S,sym('v'))   %对表达式S中指定符号变量v计算S的1阶导数。

          diff(S)   %对表达式S中的符号变量v计算S的1阶导数,其中v=findsym(S)。

          diff(S,n)   %对表达式S中的符号变量v计算S的n阶导数,其中v=findsym(S)。

          diff(S,'v',n)   %对表达式S中指定的符号变量v计算S的n阶导数。

    3-26

    >>syms x y t

    >>D1 = diff(sin(x^2)*y^2,2)  %计算

    >>D2 = diff(D1,y)  %计算

    >>D3 = diff(t^6,6)

    计算结果为:

    D1 =

         -4*sin(x^2)*x^2*y^2+2*cos(x^2)*y^2

    D2 = 

         -8*sin(x^2)*x^2*y+4*cos(x^2)*y

    D3 =

         720

    命令 符号函数的积分

    函数  int

    格式  R = int(S,v)   %对符号表达式S中指定的符号变量v计算不定积分。注意的是,表达式R只是函数S的一个原函数,后面没有带任意常数C。

    R = int(S)  %对符号表达式S中的符号变量v计算不定积分,其中v=findsym(S)。

    R = int(S,v,a,b)   %对表达式s中指定的符号变量v计算从ab的定积分

    R = int(S,a,b)     %对符号表达式s中的符号变量v计算从ab的定积分,其中v=findsym(S)。

    3-27

    >>syms x z t alpha

    >>INT1 = int(-2*x/(1+x^3)^2)

    >>INT2 = int(x/(1+z^2),z)

    >>INT3 = int(INT2,x)

    >>INT4 = int(x*log(1+x),0,1) 

    >>INT5 = int(2*x, sin(t), 1) 

    >>INT6 = int([exp(t),exp(alpha*t)])

    计算结果为:

    INT1 =

          -2/9/(x+1)+2/9*log(x+1)-1/9*log(x^2-x+1)-2/9*3^(1/2)*atan(1/3*(2*x-1)*… 3^(1/2))-2/9*(2*x-1)/(x^2-x+1)

    INT2 =

           x*atan(z)

    INT3 =

           1/2*x^2*atan(z)

    INT4 =

           1/4

    INT5 =

           1-sin(t)^2

    INT6 =

           [ exp(t), 1/alpha*exp(alpha*t)]

    命令 常微分方程的符号解

    函数  dsolve

    格式  r = dsolve('eq1,eq2,','cond1,cond2,','v')

    说明  对给定的常微分方程(组)eq1,eq2,…中指定的符号自变量v,与给定的边界条件和初始条件cond1,cond2,.求符号解(即解析解)r;若没有指定变量v,则缺省变量为t;在微分方程(组)的表达式eq中,大写字母D表示对自变量(设为x)的微分算子:D=d/dx,D2=d2/dx2,…。微分算子D后面的字母则表示为因变量,即待求解的未知函数。初始和边界条件由字符串表示:y(a)=b,Dy(c)=d,D2y(e)=f,等等,分别表示,,;若边界条件少于方程(组)的阶数,则返回的结果r中会出现任意常数C1,C2,…;dsolve命令最多可以接受12个输入参量(包括方程组与定解条件个数,当然我们可以做到输入的方程个数多于12个,只要将多个方程置于一字符串内即可)。若没有给定输出参量,则在命令窗口显示解列表。若该命令找不到解析解,则返回一警告信息,同时返回一空的sym对象。这时,用户可以用命令ode23ode45求解方程组的数值解。

    3-28

    >>D1 = dsolve('D2y – Dy =exp(x)') 

    >>D2 = dsolve('t*D2f = Df*log((Dy)/t)') 

    >>D3 = dsolve('(Dy)^2 + y^2 = 1','s') 

    >>D4 = dsolve('Dy = a*y', 'y(0) = b')  % 带一个定解条件

    >>D5 = dsolve('D2y = -a^2*y', 'y(0) = 1', 'Dy(pi/a) = 0')  % 带两个定解条件

    >>[x,y] = dsolve('Dx = y', 'Dy = -x')  % 求解线性微分方程组

    >>[u,v] = dsolve(‘Du=u+v,Dv=u-v’)

    计算结果为:

    D1 =

         -exp(x)*t+C1+C2*exp(t)

    D2 =

         y(t)=Int(exp(t*diff(f(t),`$`(t,2))/diff(f(t),t))*t,t)+C1

    D3 =

         [        -1]

         [        1]

         [  sin(s-C1)]

         [ -sin(s-C1)]

    D4 =

         b*exp(a*t)

    D5 =

         cos(a*t)

    x = 

         cos(t)*C1+sin(t)*C2 

    y =

         -sin(t)*C1+cos(t)*C2

    u = 

        1/2*C1*exp(2^(1/2)*t) - 1/4*C1*2^(1/2)*exp(-2^(1/2)*t) + 1/4*C1*2^(1/2) *exp (2^(1/2)*t) + 1/2*C1*exp(-2^(1/2)*t) - 1/4*C2*2^(1/2)*exp(-2^(1/2)*t) +   1/4*C2 *2^(1/2)*exp(2^(1/2)*t)

    v = 

       -1/4*C1*2^(1/2)*exp(-2^(1/2)*t)+1/4*C1*2^(1/2)*exp(2^(1/2)*t)+1/2*C2*exp

             (2^(1/2)*t)+1/4*C2*2^(1/2)*exp(-2^(1/2)*t)-1/4*C2*2^(1/2)*exp(2^(1/2)*t)+  1/2*C2*exp(-2^(1/2)*t)

    3.2.3  符号函数的作图

    命令 画符号函数的等高线图

    函数  ezcontour

    格式  ezcontour(f)   %画出二元符号函数f=f(x,y)的等高线图。函数f将被显示于缺省的平面区域[-2π<x<2π,-2π<y<2π]内。系统将根据函数变动的激烈程度自动选择相应的计算栅格。若函数f在某些栅格点上没有定义,则这些点将不显示。

    ezcontour(f,domain)   %在指定的定义域domain内画出二元函数f(x,y),参量domain可以是四维向量[xmin,xmax,ymin,ymax]或二维向量[min,max](其中显示区域为:min<x<max,min<y<max)。

    ezcontour(,n)   %用指定n*n个栅格点(对定义域的一种划分),在缺省(若没有指定)的区域内画出函数f的图形。n的缺省值为60

    说明  该命令用函数表达式作为标题显示,同时显示坐标轴的恰当的刻度标签。

    3-29

    >>syms x y

    >>f = (1-x)^2*exp(-(x^2)-(y+1)^2)-5*(x/5-x^3-y^5)*sin(-x^2-y^2)-1/3*exp(-(x+1)^2-y^2);

         ezcontour(f,[-3,3],49)

    图形结果为图3-4

     

     

    命令 用不同颜色填充的等高线图

    函数  ezcontourf

    格式  ezcontourf(f)   %画出二元符号函数f=f(x,y)的等高线图,且在不同的等高线之间自动用不同的颜色进行填充。函数f将被显示于缺省的平面区域[-2π<x<2π,-2π<y<2π]内。系统将根据函数变动激烈程度自动选择相应的计算栅格。若函数f在某些栅格点上没有定义,则这些点将不显示。

    ezcontourf(f,domain)   %在指定的定义域domain内画出二元函数f(x,y)的等高线图,且在不同的等高线之间自动用不同的颜色进行填充。定义域domain可以是四维向量[xmin,xmax,ymin,ymax]或二维向量[min,max](其中显示区域为:min<x<max,min<y<max)。

    ezcontourf(,n)   %用指定n*n个栅格点(对定义域的一种划分),在缺省(若没有指定)的区域内画出函数f的等高线图,且在不同的等高线之间自动用不同的颜色进行填充。n的缺省值为60

    3-30

    >>syms x y

    >>f = (1-x)^2*exp(-(x^2)-(y+1)^2)-5*(x/5-x^3-y^5)*sin(-x^2-y^2)-1/3*exp(-(x+1)^2-y^2);

    ezcontourf(f,[-3,3],64)

    图形结果为图3-5

      

       

    3-4  等高线图                               图3-5  等高线填充图

    命令3  符号函数的三维网格图

    函数  ezmesh

    格式  ezmesh(f)   %画出二元数学符号函数f=f(x,y)的网格图。函数f将显示于缺省的平面区域[-2π<x<2π,-2π<y<2π]内。系统将根据函数变动的激烈程度自动选择相应的计算栅格。若函数f在某些栅格点上没有定义,则这些点将不显示。

    ezmesh(f,domain)   %在指定的定义域domain内画出二元函数f(x,y)的网格图,定义域domain可以是四维向量[xmin,xmax,ymin,ymax]或二维向量[min,max](其中显示区域为:min<x<max,min<y<max)。

    ezmesh(x,y,z)    %在缺省的矩形定义域范围[-2π<s<2π,-2π<t<2π]内画参数形式函数x=x(s,t)、y=y(s,t)、z=z(s,t)的二元函数z=f(x,y)的网格图。

    ezmesh(x,y,z,[smin,smax,tmin,tmax])  %在指定的矩形定义域范围[smin<s<smax,min<t<tmax]内画参数形式函数x=x(s,t)、y=y(s,t)、z=z(s,t)的二元函数z=f(x,y)的网格图。

    ezmesh(x,y,z,[min,max])   %用指定的矩形定义域[min<x<max,min<y<max]画出函数z=f(x,y)的网格图。

    ezmesh(f,…,n)   %用指定n*n个栅格点,在缺省(若没有指定)的区域内画出函数f网的图形。n的缺省值为60

    ezmesh(,'circ')   %在一圆形区域(圆心位于定义域在中心)的范围内画出函数f的网格图形。

    3-31

    >>syms x y

    >>ezmesh(x*sin(-x^2-y^2),40,’circ’)

    >>colormap [0 0 1]

    图形结果为:(图3-6

    命令4  同时画出曲面网格图与等高线图

    函数  ezmeshc

    格式  ezmeshc(f)   %画出二元数学符号函数z=f(x,y)的网格图形,同时在xy平面上显示其等高线图。函数f将被显示于缺省的平面区域[-2π<x<2π,-2π<y<2π]内。系统将根据函数变动的激烈程度自动选择相应的计算栅格。若函数f在某些栅格点上没有定义,则这些点将不显示。

    ezmeshc(f,domain)   %在指定的定义域domain内画出二元函数f(x,y)的网格图及其等高线图,domain可以是四维向量[xmin,xmax,ymin,ymax]或二维向量[min,max](其中显示区域为:min<x<max,min<y<max)

    ezmeshc(x,y,z)   %在缺省的矩形定义域范围[-2π<s<2π,-2π<t<2π]内画出参数形式函数x=x(s,t)、y=y(s,t)、z=z(s,t)的二元函数z=f(x,y)的网格图形与其等高线图。

    ezmeshc(x,y,z,[smin,smax,tmin,tmax])   %在指定的矩形定义域范围[smin<s<smax,tmin<t<tmax]内画出参数形式函数x=x(s,t)、y=y(s,t)、z=z(s,t)的二元函数z=f(x,y)的网格图形与其等高线图。

    ezsurfc(x,y,z,[min,max])   %用指定的定义域[min<x<max,min<y<max]画出函数z=f(x,y)的网格图与等高线图。

    ezmeshc(f,…,n)   %用指定n*n个栅格点,在缺省(若没有指定)的区域内画出函数f的网格图形与等高线图。n的缺省值为60

    ezmeshc(,'circ')   %在一圆形区域(圆心位于定义域在中心)的范围内画出函数f的网格图形及其等高线图。

    3-32

    >>syms x y

    >>ezmeshc(x*y/(1 + x^2 + y^2),[-5,5,-2*pi,2*pi],35)

    图形结果为图3-7

        

      

     

    3-6  三维网格图                                                图3-7  网格等高线图

    命令 画符号函数的图形

    函数  ezplot

    格式  ezplot(f)   %对于显式函数f=f(x),在缺省的范围[-π<x<π]上画函数f(x);对于隐函数f=f(x,y),在缺省的平面区域[-2π<x<2π,-2π<y<2π]上画函数f(x,y)的图形。

    ezplot(f,[min,max])   %在指定的范围[min<x<max]内画函数表达式f=f(x)。若没有图形窗口存在,则该命令先生成标题为Figure No.1的新窗口,再在该窗口中操作;若已经有图形窗口存在,则在标号最高的图形窗口中进行操作。

    ezplot(f,[xmin xmax],fign)   %在指定标号fign的窗口中、指定的范围[xmin xmax]内画出函数f=f(x)的图形。

    ezplot(f,[xmin,xmax,ymin,ymax])   %在平面矩形区域[xmin<x<xmax, ymin<y <ymax]上画出函数f(x,y)=0的图形。

    ezplot(x,y)   %在缺省的范围0<t<2π内画参数形式函数x=x(t)与y=y(t)的图形。

    ezplot(x,y,[tmin,tmax])   %在指定的范围[tmin < t < tmax]内画参数形式函数x=x(t)与y=y(t)的图形。

    ezplot(,figure)   %在由参量figure句柄指定的图形窗口中画函数图形。

    3-33

    >>syms x y

    >>ezplot(x^6-y^2)

    图形结果为图3-8

    3-34

    >>syms x

    >>ezplot(exp(x)*sin(x)/x)

    >>grid on

    图形结果为图3-9

    命令 三维参量曲线图

    函数  ezplot3

    格式  ezplot3(x,y,z)   %在缺省的范围0<t<2π内画空间参数形式的曲线x=x(t)、y=y(t)与z=z(t)的图形。

    ezplot3(x,y,z,[tmin,tmax])   %在指定的范围tmin < t < tmax.内画空间参数形式的曲线x=x(t)、y=y(t)与z=z(t)的图形。

    ezplot3(,'animate')   %以动画形式画出空间三维曲线。

     

          

        

    3-8  隐函数图                                      图3-9  显函数图

    3-35

    >>syms t; 

    >>ezplot3(t*sin(t), t*cos(t), t,[0,20*pi])

    图形结果为图3-10

    命令 画极坐标图形

    函数  ezpolar

    格式  ezpolar(f)   %在缺省的范围0<theta<2π内画极坐标函数rho=f(theta)的图形。且将函数关系式显示于图形下方。

    ezpolar(f,[a,b])   %在指定的范围a<theta<b内画极坐标函数rho=f(theta)的图形。且将函数关系式显示于图形下方。

    3-36

    >>syms t

    >>ezpolar(1+cos(5*t))

    图形结果为图3-11

     

             

        

    3-10  三维曲线图                                          图3-11   极坐标图

    命令8  三维带颜色的曲面图

    函数  ezsurf

    格式  ezsurf(f)   %画出二元数学符号函数z=f(x,y)的曲面图形。函数f将显示于缺省的平面区域[-2π<x<2π,-2π<y<2π]内。系统将根据函数的变动程度自动选择相应的计算栅格。若函数f在栅格点上没有定义,则这些点将不显示。

    ezsurf(f,domain)   %在指定的定义域domain内画出二元函数f(x,y)的曲面图形,domain可以是四维向量[xmin,xmax,ymin,ymax],或者是二维向量[min,max] (其中有min<x<max,min<y<max)

    ezsurf(x,y,z)   %在缺省的矩形定义域范围-2π<s<2π,-2π<t<2π内画出参数形式函数x=x(s,t)、y=y(s,t)与z=z(s,t)的曲面图形。

    ezsurf(x,y,z,[smin,smax,tmin,tmax])ezsurf(x,y,z,[min,max])   %用指定的定义域画出参数形式的曲面图形

    ezsurf(,n)   %用指定n*n个栅格点,在缺省(若没有指定)的区域内画出函数f的图形,n的缺省值为60

    ezsurf(,'circ')   %在一圆形中心位于定义域在中心的范围内画出函数f的曲面图形

    3-37

    >>syms x y

    >>ezsurf(real(atan(x+i*y)))

    图形结果为图3-12

    命令 同时画出曲面图与等高线图

    函数  ezsurfc

    格式  ezsurfc(f)   %画出二元数学符号函数z=f(x,y)的曲面图形与其等高线图。函数f将显示于缺省的平面区域[-2π<x<2π,-2π<y<2π]内。系统将根据函数的变动程度自动选择相应的计算栅格。若函数f在栅格点上没有定义,则这些点将不显示。

    ezsurfc(f,domain)   %在指定的定义域domain内画出二元函数f(x,y)的曲面图形及其等高线图,domain可以是四维向量[xmin,xmax,ymin,ymax]或二维向量[min,max](其中有min<x<max,min<y<max)

    ezsurfc(x,y,z)   %在缺省的矩形定义域范围-2π<s<2π,-2π<t<2π内画出参数形式函数x=x(s,t)、y=y(s,t)与z=z(s,t)的曲面图形与等高线图。

    ezsurfc(x,y,z,[smin,smax,tmin,tmax])ezsurfc(x,y,z,[min,max])   %用指定的定义域画出参数形式的曲面图形与等高线图

    ezsurfc(,n)   %用指定n*n个栅格点,在缺省(若没有指定)的区域内画出函数f的曲面图形与等高线图,n的缺省值为60

    ezsurfc(,'circ')   在一圆形中心位于定义域的中心范围内画出函数f的曲面图形与等高线图

    3-38

    >>syms x y

    >>ezsurfc(x*y/(1 + x^2 + y^2),[-5,5,-2*pi,2*pi],35,’circ’)

    图形结果为图3-13

     

                     

         

    3-12  三维曲面图                                     图3-13  三维曲面等高线图

    3.2.4  积分变换

    命令1  Fourier积分变换

    函数  fourier

    格式  F = fourier(f)   

    说明  对符号单值函数f中的缺省变量x(由命令findsym确定)计算Fourier变换形式。缺省的输出结果F是变量w的函数:

    若f = f(w),则fourier(f)返回变量为t的函数:F= F(t)。

    F = fourier(f,v) 对符号单值函数f中的指定变量v计算Fourier变换形式:

     

    F = fourier(f,u,v) 令符号函数f为变量u的函数,而F为变量v的函数:

    3-39

    >>syms x w u v

    >>f = sin(x)*exp(-x^2); F1 = fourier(f) 

    >>g = log(abs(w)); F2 = fourier(g) 

    >>h = x*exp(-abs(x)); F3 = fourier(h,u) 

    >>syms x real

    >>k = cosh(-x^2*abs(v))*sinh(u)/v

    >>F4 = fourier(k,v,u)

    计算结果为:

    F1 =

         -1/2*i*pi^(1/2)*exp(-1/4*(w-1)^2)+1/2*i*pi^(1/2)*exp(-1/4*(w+1)^2)

    F2 =

         fourier(log(abs(w)),w,t)

    F3 =

        -4*i/(1+u^2)^2*u

    F4 =

         sinh(u)*(1/2*fourier(1/v*exp(x^2*abs(v)),v,u)-i*atan(u/x^2))

    命令 逆Fourier积分变换

    函数  ifourier

    格式  f = ifourier(F)  

    说明  输出参量f = f(x)为缺省变量w的标量符号对象F的逆Fourier积分变换。即:F = F(w) → f = f(x)。若F = F(x),ifourier(F)返回变量t的函数:即:F = F(x) → f = f(t)。逆Fourier积分变换定义为:

    f = ifourier(F,u) 使函数f为变量uu为标量符号对象)的函数:

    f = ifourier(F,v,u) 使F为变量v的函数,f为变量u的函数:

    3-40

    >>syms w v x t

    >>syms a real

    >>f = sqrt(exp(-w^2/(4*a^2)));

    >>IF1 = ifourier(f)

    >>g = exp(-abs(x));

    >>IF2 = ifourier(g)

    >>h = sinh(-abs(w)) – 1;

    >>IF3 = simple(ifourier(h,t))

    >>syms w real

    >>k = exp(-w^2*abs(v))*sin(v)/v;

    >>IF4 = ifourier(k,v,t)

    计算结果为:

    IF1 =

         ifourier(exp(-1/4*w^2/a^2)^(1/2),w,x)

    IF2 =

         1/(1+t^2)/pi

    IF3 =

        -1/2*(pi*ifourier(exp(abs(w)),w,t)+pi*ifourier(exp(abs(w)),w,t)*t^2-…  1+2*pi*Dirac(t))/(1+t^2)/pi

    IF4 =

         1/2*(atan((t+1)/w^2)-atan((t-1)/w^2))/pi

    命令 Laplace变换

    函数  laplace

    格式  L = laplace(F) 

    说明  输出参量L = L(s)为有缺省符号自变量t的标量符号对象F的Laplace变换。即:F = F(t) → L = L(s)。若F = F(s),则fourier(F)返回变量为t的函数L。

    即:F = F(s) → L = L(t)。Laplace变换定义为:

    laplace(F,t) 使函数L为变量t(t为标量符号自变量)的函数:

    fourier(F,w,z) 使L为变量z的函数,F为变量w的函数:

    3-41

    >>syms x s t v

    >>f1= sqrt(t); 

    >>L1 = laplace(f) 

    >>f2 = 1/sqrt(s); 

    >>L2 = laplace(f2) 

    >>f3 = exp(-a*t); 

    >>L3 = laplace(f3,x) 

    >>f4 = 1 - sin(t*v); 

    >>L4 = laplace(f4,v,x)

    计算结果为:

    L1 =

         1/(s-1/s^2)

    L2 =

         (pi/t)^(1/2)

    L3 =

         1/(x+a)

    L4 =

         1/x-t/(x^2+t^2)

    命令4  逆Laplace变换

    函数  ilaplace

    格式  F = ilaplace(L)

    说明  输出参量F = F(t)为缺省变量s的标量符号对象L的逆Laplace变换

    即:F = F(w) → f = f(x)。若L = L(t),则ifourier(L)返回变量为x的函数F。即:F = F(x) → f = f(t)。逆Laplace变换定义为:

    其中c为使函数L(s)的所有的奇点位于直线s = c左边的实数。

    F = ilaplace(L,y) 使函数F为变量y(y为标量符号对象)的函数:

    F = ilaplace(L,y,x) 使F为变量x的函数,L为变量y的函数:

    3-42

    >>syms a s t u v x

    >>f = exp(x/s^2); 

    >>IL1 = ilaplace(f) 

    >>g = 1/(t-a)^2; 

    >>IL2 = ilaplace(g)

    >>k = 1/(u^2-a^2); 

    >>IL3 = ilaplace(k,x)

    >>y = s^3*v/(s^2+v^2); 

    >>IL4 = ilaplace(y,v,x)

    计算结果为:

    IL1 =

          ilaplace(exp(x/s^2),s,t)

    IL2 =

          x*exp(a*x)

    IL3 =

         1/(-a^2)^(1/2)*sin((-a^2)^(1/2)*x)

    IL4 =

         s^3*cos((s^2)^(1/2)*x)

    命令5  Riemann ζ-函数

    函数  zeta

    格式  Y = zeta(X)   %计算数值矩阵、或符号矩阵参量x中每一元素的ζ-函数值。ζ-函数定义为:

          Y = zeta(n, X)   %返回ζ(X)函数的n阶导数

    3-43

    >>syms x y

    >>Y1 = zeta(1.5) 

    >>Y2 = zeta(1.2:0.1:2.1) 

    >>Y3 = zeta([x 2;4 x+y]) 

    >>DZ = diff(zeta(x),x,3)

    计算结果为:

    Y1 =

         2.6124

    Y2 =

        Columns 1 through 7 

          5.5916    3.9319    3.1055    2.6124    2.2858    2.0543    1.8822

        Columns 8 through 10 

          1.7497    1.6449    1.5602

    Y3 =

         [   zeta(x,2),   zeta(2,2)]

         [   zeta(4,2), zeta(x+y,2)]

    DZ =

         zeta(3,x)

    命令6  z-变换

    函数  ztrans

    格式  F = ztrans(f)   %对缺省自变量为n(就像由命令findsym确定的一样)的单值函数f计算z-变换。输出参量F为变量z的函数:f = f(n) → F = F(z)。函数fz-变换定义为:

    若函数f = f (z),则ztrans(f)返回一变量为w的函数:f = f(z) → F = F(w)

          F = ztrans(f,w)  %用符号变量w代替缺省的z作为函数F的自变量

     

    F = ztrans(f,k,w)  %对函数f中指定的符号变量k计算z-变换:

    3-44

    >>syms a k w x n z

    >>f1 = n^4;  

    >>ZF1 = ztrans(f) 

    >>f2 = a^z;

    >>ZF2 = ztrans(g) 

    >>f3 = sin(a*n);

    >>ZF3 = ztrans(f,w) 

    >>f4 = exp(k*n^2)*cos(k*n);

    >>ZF4 = ztrans(f,k,x)

    计算结果为:

       ZF1 =

             z*(z^3+11*z^2+11*z+1)/(z-1)^5

       ZF2 =

             w/a/(w/a-1)

       ZF3 =

            -w*sin(a)/(-w^2+2*w*cos(a)-1)

       ZF5 =

            (x/exp(n^2)-cos(n))*x/exp(n^2)/(x^2/exp(n^2)^2-2*x/exp(n^2)*cos(n)+1)

    命令 逆z-变换

    函数  iztrans

    格式  f = iztrans(F) 

    说明  输出参量f = f(n)为有缺省变量z的单值符号函数F的逆z-变换。即:F = F(z) → f = f(n)。若F = F(n),则iztrans(F)返回变量为k的函数f(k)。

    即:F = F(n) → f = f(k)。逆z-变换定义为:,n =1,2,3,…

    其中R为一正实数,它使函数F(z)在圆域之外 |z|R是解析的。

    f = iztrans(F,k)   使函数f为变量kk为标量符号对象)的函数f(k):,k=1,2,3,…

    f = iztrans(F,w,k)   使函数F为变量w的函数,f为变量k的函数:k=1,2,3,…

    3-45

    >>syms a n k x z

    >>f1= 2*z/(z^2+2)^2; 

    >>IZ1 = iztrans(f1) 

    >>f2 = n/(n+1); 

    >>IZ2 = iztrans(f2)

    >>f3 = z/sqrt(z-a); 

    >>IZ3 = iztrans(f3,k)

    >>f4 = exp(z)/(x^2-2*x*exp(z)); 

    >>IZ4 = iztrans(f4,x,k)

    计算结果为:

         IZ1 =

               -1/8*sum(1/_alpha*(1/_alpha)^n,_alpha

         IZ2 =

               (-1)^k

         IZ3 =

               iztrans(z/(z-a)^(1/2),z,k)

         IZ4 =

               1/4*(-charfcn[0](k)-2*charfcn[1](k)*exp(z)+2^k*exp(z)^k)/exp(z)

  • 相关阅读:
    2013 新春快乐
    石头剪刀布游戏
    【MTK】MTK 报错集锦
    爱上双节棍男生的十五个理由
    Jni下NDK开发的bug问题汇总
    NDK中c语言logcat环境的搭建
    Android中Alertdialog对话框点击消失?
    Android上关于cmwap/cmnet网络切换的疑惑?
    Jni调用方法产生java.lang.UnsatisfiedLinkError错误
    android.os.NetworkOnMainThreadException问题
  • 原文地址:https://www.cnblogs.com/djcsch2001/p/2333948.html
Copyright © 2011-2022 走看看