第二讲 matlab的符号运算1
MATLAB 中的符号运算

时函数的极限。
,求当 x 1, x 0 , x 0 , x
► syms x
%声明符号变量
► fx= 1/(1+exp(-1/x)); %建立符号函数fx
► limit(fx,x,1)
%求fx : x->1的极限
► limit(fx,x,0, 'right') %求fx : x->0的右极限
► limit(fx,x,0, 'left') %求fx : x->0的左极限
2、通过画图观察极限
lim
x0
cos
1 x
,
lim
x0
1 x
sin
1 x
,理解振荡间断点的
概念,无界量和无穷大量之间的关系。
3、设 y
3 e4t sin(4 2
3t
3
)
要求以
0.01秒为间隔,求出y的151个点,
并求出其导数的值和曲线.
fx=a*x^2+b*x+c %建立符号函数
solve(fx)
%求方程fx=0的符号解
ans = [ 1/2/a*(-b+(b^2-4*a*c)^(1/2))]
solve(fx, b )
%求方程fx=0关于变量b的符号解
ans = -(a*x^2+c)/x
上机练习题
1、已知函数 f (x) ex sin 4x, x [1,6] ,求出函数 f (x)的一阶导函数、 二阶导函数,并画出它们相应的曲线;研究函数性态,如单 调区间,极值点、拐点及凹凸区间。
或:
syms 符号变量1 符号变量2 …
f=表达式
例:符号多项式运算
MATLAB中的符号运算精品PPT课件

符号变量 当字符表达式中含有多于一个的变量时,只有一个变 量是独立变量。如果不告诉MATLAB哪一个变量是独 立变量,MATLAB将基于以下规则选择一个:
在符号表达式中缺省的独立变量是唯一的,除去i和j 的小写字母,不是单词的一部分。如果没有这种字 母,就选择x作为独立变量。如字符不是唯一的,就 选择在字母顺序中最接近x的字母。如果有相连的字 母,就选择在字母表中较后的那一个。
symvar( ' 3*i+4*j ' ) % i and j are equel to sqrt(-1) ans= x
symvar( ' y+3*s ' , ' t ' ) ans= s % find the variable closest to t rather than x
如果利用规则symvar不能找到一个缺省独立变量, 它便假定无独立变量并返回x。这一结论对含有由 多个字母组成的变量,如:alpha或s2的表达式, 或不含变量的符号常数均成立。如果需要,绝大多 数命令都使用用户选项以指定独立变量。
symvar( ' a*x+y*) % find the default symbolic variable ans= x
symvar( ' a*t+s/(u+3) ' ) % u is the closest to ' x ' ans= u
symvar( ' sin(omega) ' ) % ' omega ' is not a singlee character。 ans= x
MATLAB中的符号运算
2004.8.4
MATLAB所具有的符号数学工具箱与其 它所有工具不同,它适用于广泛的用 途,而不是针对一些特殊专业或专业 分支。另外,MATLAB符号数学工具 箱与其它的工具箱区别还因为它使用 字符串来进行符号分析,而不是基于 数组的数值分析。
《Matlab符号运算》课件

Matlab符号计算的注意事项
1 数据类型
深入了解符号计算中常用 的数据类型和应用。
2 精度问题
学习如何处理符号计算中 的精度和舍入误差。
3 限制
指出符号计算在某些情况 下的限制和局限性。
学习如何对符号表达式进行化简和拓展。
3
代数式求解与பைடு நூலகம்程求解
了解Matlab中解代数式和方程的高级符号求解技术。
Matlab符号计算的实例应用
符号计算在微积分中的应用 符号计算在矩阵中的应用
探索如何利用符号计算来解决微 积分中的难题。
学习如何使用符号计算解决矩阵 相关的问题和运算。
符号计算在工程问题中的 应用
Matlab符号运算的基本使用
定义符号变量
学习如何在Matlab中定义和使用 符号变量。
符号运算表达式的构建
了解如何构建和操作符号运算表 达式。
表达式求值
学习如何使用Matlab对符号表达 式进行求值。
Matlab符号运算的高级应用
1
高级符号计算
探索Matlab中更复杂的符号计算技巧和方法。
2
符号表达式的化简与扩展
《Matlab符号运算》PPT 课件
本课件将介绍Matlab符号运算的概念、基本使用、高级应用以及实例应用, 同时指出注意事项,帮助您全面了解和掌握Matlab的符号计算功能。
Matlab符号运算的概念
含义
深入探讨Matlab中符号运算的概念和作用。
优点
了解Matlab符号运算相比数值运算的优势和适用 范围。
第二讲 matlab的符号运算

例1. 按不同的方式合并同幂项 EXPR= sym('(x^2+x*exp(-t)+1)*(x+exp(-t))');
expr1=collect(EXPR)
expr2=collect(EXPR,'exp(-t)') 2
符号运算
4. factor(S)
符号计算的因式分解,S是待分解的符号多项式
例2. factor指令的使用
(1)除x外不含其他自由变量的情况 (2) 含其他自由变量的情况之一 syms a x; f1=x^4-5*x^3+5*x^2+5*x-6; factor(f1) (3)对正整数的质数分解 factor(1025) f2=x^2-a^2; factor(f2)
3
符号运算
5. expand(S) 例:syms x y;
ssfy1=simplify(ff), ssfy2=simplify(ssfy1) gg1=simple(ff), gg2=simple(gg1)
5
符号运算
7. subs(S,old,new)
把符号变量中的变量old用new代替,new可以 是一个符号,也可以是具体的数
例5. 用简单的算例演示subs的置换规则
(3) 符号常数置换
f2=subs(f,{a,x},{2,sym(pi/3)})
(6)数值数组置换之二
f5=subs(f,{a,x},{0:6,0: pi/6:pi})
6
(1)产生符号函数 syms a x; f=a*sin(x)+5; (2) 符号变量置换 f1=subs(f,‘sin(x)’,sym(‘y’)) (5)数值数组置换之一 f4=subs(subs(f,a,2), x,0: pi/6:pi) (4) 双精度数值置换 f3=subs(f,{a,x},{2, pi/3})
第八章 MATLAB的符号运算1

什么是符号运算 • 与数值运算的区别 ※ 数值运算中必须先对变量赋值, 然后才能参与运算。 ※ 符号运算无须事先对独立变量 赋值,运算结果以标准的符号形式 表达。
• 特点:
运算对象可以是没赋值的符号变量
可以获得任意精度的解
• Symbolic Math Toolbox——符号运算工具包 通过调用Maple软件实现符号计算的。
' ' 的内容可以是符号表达式,也可以是 符号方程。 例: f1='ax^2+bx+c' —— 二次三项式 f2= 'ax^2+bx+c=0' —— 方程 f3='Dy+y^2=1' ——微分方程 ※符号表达式或符号方程可以赋给符号变量,以 后调用方便;也可以不赋给符号变量直接参与运 算
(2)用sym函数建立符号表达式。 u=sym('3*x^2-5*y+2*x*y+6') u= 3*x^2-5*y+2*x*y+6 m=sym('[a,b;c,d]') m= [ a, b] [ c, d]
9.1.2 符号表达式运算 1.符号表达式的四则运算 数值运算中,所有矩阵运算操作指令都比较直观、简单。例如:a=b+c; a=a*b ;A=2*a^2+3*a-5等。而符号运算就不同了,所有涉及符 号运算的操作都有专用函数来进行,符号表达式的四则运算和其它表达式 的运算并无不同,但要注意,其运算结果依然是一个符号表达式。符号 表达式的加、减、乘、除运算可分别由函数symadd、symsub、symmul 和symdiv来实现,幂运算可以由sympow来实现。如: syms x f=2*x^2+3*x-5 g=x^2-x+7 symadd(f,g) symsub(f,g) symmul(f,g) symdiv(f,g) sympow(f,'3*x') 另外,与数值运算一样,也可以用+、-、*、/、^实现符号运算。
第2章 matlab的符号运算

>>p0 = sym(‘(1+sqrt(5))/2’)
p0 = (1+sqrt(5))/2 >>pr = sym((1+sqrt(5))/2,'r') pr =7286977268806824*2^(-52) >>e32r = vpa(abs(p0-pr),16) e32r = 0
%广义有理表示
Matlab程序设计
Matlab程序设计
2.2 符号数字 sc = sym(‘Num’) %符号常数sc的值精确等于Num 例:a = pi + sqrt(5) %a为数值类常量 sa = sym(‘pi + sqrt(5)’) %sa为符号数字常量
% sa = pi + sqrt(5), sym型; eval(sa) 为5.3777, double型
k = sym('k','positive');
Matlab程序设计
2.4 符号变量
符号变量与符号参数的创建方法相同,但表达式或 方程中作用不同. 确定自由符号变量: findsym(EXPR , N) %确认EXPR中距离x最近的N个自由符号变
量, 略去N表示全部
例2.1-1 用符号计算研究方程uz2+vz+w=0的解 syms u v w z Eq=u*z^2+v*z+w; %符号方程 r_1=solve(Eq) %一个方程只能解一个未知数w(离x最近) findsym(Eq,1) %只找一个自由符号变量,则找到w r_2=solve(Eq,z)
3.3 符号表达式的操作 例:化简 S=(x2+y2)2+(x2-y2)2 syms x y; S=(x^2+y^2)^2+(x^2-y^2)^2 simple(S) %系统自动试探各种函数化简 simple(ans) %使用多次找到最少字母的简化式 例2.2-3:对符号矩阵进行特征向量分解. syms a b c d W [V,D]=eig([a b;c d]) [RVD,W]=subexpr([V;D],W)
MATLAB第二讲__数值计算和符号计算
(4)数值运算中必须先对变量赋值;符号运算无须事先对变 量赋值,但必须先定义,运算结果以标准的符号表达 式形式给出。
Matlab基础应用 21
2.2.2 符号运算中的运算符
(1)基本运算符 符号矩阵:‚+”,‚-”,‚*‛,‚\”, ‚/”, ‚^”, ‚ ’ ” 符号数组:‚.*”,‚./”,‚.\‛,‚.^”, ‚.’ ” (2)关系运算符 运算符只有‚==”,‚~=”。
Matlab基础应用 7
1.3.4 多项式乘除运算(续)
例4: a(x)=x2+2x+3; b(x)=4x2+5x;求c=a(x)*b(x)。 解: >>a=[1 2 3];b=[4 5 0]; >>c=conv(a,b) c= 4 13 22 15 0 >>[d,r]=deconv(c,a) d= 4 5 0 r= 0 0 0 0 0
注意: 方法一只创建了符号表达式,没有创建符号变量; 而方法二既创建了符号表达式,又创建符号变量.
Matlab基础应用 19
2.1.3 创建符号矩阵
使用sym和syms命令创建
例4: A=sym(‘[a,b;c,d]’) A= [ a, b] [ c, d] syms f g h k B=[f,g;h,k] B=
%方法二
Name Size Bytes Class a 1x1 126 sym object b 1x1 126 sym object c 1x1 126 sym object f2 1x1 146 sym object x 1x1 126 sym object Grand total is 20 elements using 650 bytes
实验2 MATLAB的符号运算
实验2 MATLAB 的符号运算1、 演示:几种输入下产生矩阵的异同。
A1= [1/3,0.2+sqrt(2),pi]A2=sym([1/3,0.2+sqrt(2),pi])A3=sym(‘[1/3,0.2+sqrt(2),pi]’)A1=[1/3,0.2+sqrt(2),pi]A1 =0.3333 1.6142 3.1416A2=sym([1/3,0.2+sqrt(2),pi])A2 =[ 1/3, 7269771597999872*2^(-52),pi]A3=sym('[1/3,0.2+sqrt(2),pi]')A3 =[ 1/3, 0.2+sqrt(2), pi]2、 用符号计算验证三角等式)21sin(2sin 1cos 2cos 1sin ϕϕϕϕϕϕ-=-。
(sym 或syms,simple)3、 求矩阵⎥⎦⎤⎢⎣⎡=22211211a a a a A 的行列式、逆和特征根。
(syms,det,inv,eig )syms a11 a12 a21 a22>> A=[a11,a12;a21,a22]A =[ a11, a12][ a21, a22]>> det(A)ans =a11*a22-a12*a21>> inv(A)ans =[ a22/(a11*a22-a12*a21), -a12/(a11*a22-a12*a21)][ -a21/(a11*a22-a12*a21), a11/(a11*a22-a12*a21)]>> eig(A)ans =[ 1/2*a11+1/2*a22+1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)][ 1/2*a11+1/2*a22-1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2)]4、 求:⎥⎦⎤⎢⎣⎡x x t t adx d ln cos 3 ,⎥⎦⎤⎢⎣⎡x x t t a dt d t ln cos 32和⎥⎦⎤⎢⎣⎡x xt t adxdt d ln cos 32。
第2章 MATLAB的基本操作-符号运算
例
>>clear >> f1 =sym('(exp(x)+x)*(x+2)'); >> f2 = sym('a^3-1'); >> f3 = sym('1/a^4+2/a^3+3/a^2+4/a+ 5'); >> f4 = sym('sin(x)^2+cos(x)^2'); >> collect(f1) %合并同类项 ans = x^2+(exp(x)+2)*x+2*exp(x) >>expand(f1) %展开 ans = exp(x)*x+2*exp(x)+x^2+2*x >>factor(f2) %分解因式 ans = (a-1)*(a^2+a+1) >> [m,n]=numden(f3) %m为分子,n为分母 m= 1+2*a+3*a^2+4*a^3+5*a^4 n= a^4 >> simplify(f4) ans = 1
>>clear >>f1 = sym('1/(a-b) '); >>f2 = sym('2*a/(a+b) '); >>f3 = sym(' (a+1)*(b-1)* (a-b) '); >> f1+f2 %符号和 ans = 1/(a-b)+2*a/(a+b) >> f1*f3 %符号积 ans = (a+1)*(b-1) >> f1/f3 %符号商 ans = 1/(a-b)^2/(a+1)/(b-1)
matlab符号运算
第2章符号运算- Presentation Transcript1.第二章符号运算o MA TLAB 的数学计算=数值计算+符号计算o其中符号计算是指使用未定义的符号变量进行运算,而数值计算不允许使用未定义的变量。
2. 1. 符号变量、符号表达式和符号方程的生成o使用sym 函数定义符号变量和符号表达式o使用syms 函数定义符号变量和符号表达式3. 2 、用syms 创建符号变量o使用syms 命令创建符号变量和符号表达式o语法:o syms(‘arg1’, ‘arg2’, …, 参数) % 把字符变量定义为o% 符号变量o syms arg1 arg2 …, 参数% 把字符变量定义为符号变量的简洁形o% 式o说明:syms 用来创建多个符号变量,这两种方式创建的符号对象是相同的。
参数设置和前面的sym 命令相同,省略时符号表达式直接由各符号变量组成。
4.使用syms 函数定义符号变量和符号表达式▪>> syms a b c x▪>> f = a*x^2 + b*x + c▪ f =▪a*x^2 + b*x + c▪>> g=f^2+4*f-2▪g =▪(a*x^2+b*x+c)^2+4*a*x^2+4*b*x+4*c-2▪>>ex02015.符号方程的生成▪>> % 符号方程的生成▪>> % 使用sym 函数生成符号方程▪>> equation1='sin(x)+cos(x)=1'▪equation1 =▪sin(x)+cos(x)=1▪>>6. 2.2 符号形式与数值形式的转换o 1 、将符号形式转换为数值形式:o eval 与numerico例:a1='2*sqrt(5)+pi'o a1 =o2*sqrt(5)+pio b2=numeric(a2) % 转换为数值变量o b2 =o7.6137o b3=eval(a1)o b3 =o7.61377. 2.2 符号形式与数值形式的转换▪ 2 、数值形式转换为符号形式▪p=3.1416;▪q=sym(p)▪执行后屏幕显示:▪q=3927/1250▪numeric(q)▪屏幕显示:▪ans =▪ 3.14168. 2.2 符号形式与数值形式的转换3 、多项式与系数向量之间的转换3.1 sym2poly: 将多项式转化为对应的系数向量例:syms x p; p=x^3-4*x+5; sym2poly(p) 执行后屏幕显示:ans= 1 0 -4 5 9. 2.2 符号形式与数值形式的转换o 3 、多项式与系数向量之间的转换o 3.2 poly2sym: 将向量转化为对应的多项式o例o a=[1 0 -4 5];o poly2sym(a)o执行后屏幕显示o ans=o x^3-4*x+510. 3. 符号表达式( 符号函数) 的操作o(1) 符号表达式的四则运算o syms xo f=x^3-6*x^2+11*x-6;o g=(x-1)*(x-2)*(x-3);o h=x*(x*(x-6)+11)-6;o f+g-ho执行后输出:o ans =o x^3-6*x^2+11*x+(x-1)*(x-2)*(x-3)-x*(x*(x-6)+11)11.(1) 符号表达式的四则运算▪>> syms x y a b▪>> fun1=sin(x)+cos(y)▪fun1 =▪sin(x)+cos(y)▪>> fun2=a+b▪fun2 =▪a+b▪>> fun1+fun2▪sin(x)+cos(y)+a+b▪>>fun1*fun2▪ans =▪(sin(x)+cos(y))*(a+b)12.o(1) 将表达式中的括号进行展开: expando(2) 将表达式进行因式分解:factoro(3) 将一般的表达式变换为嵌套的形式:hornero(4) 将表达式按某一个变量的幂进行集项:collecto(5) 化简表达式:simplifyo(6) 化简表达式,使之成为书写长度最短的形式:simple13.o同一个数学函数的符号表达式的可以表示成三种形式,例如以下的f(x) 就可以分别表示为:o多项式形式的表达方式:o f(x)=x^3+6x^2+11x-6o因式形式的表达方式(factor) :o f(x)=(x-1)(x-2)(x-3)o嵌套形式的表达方式(horner) :o f(x)=x(x(x-6)+11)-614.集项-合并符号表达式的同类项o>> syms x y▪>> collect(x^2*y + y*x - x^2 - 2*x)▪ans =▪(y-1)*x^2+(y-2)*xo>> syms x y▪>> collect(x^2*y + y*x - x^2 - 2*x,y)▪ans =▪(x^2+x)*y-x^2-2*x15.符号多项式的嵌套(horner )▪>> syms x▪>> fun1=2*x^3+2*x^2-32*x+40▪fun1 =▪2*x^3+2*x^2-32*x+40▪>> horner(fun1)▪ans =▪40+(-32+(2+2*x)*x)*x▪>> fun2=x^3-6*x^2+11*x-6▪fun2 =▪x^3-6*x^2+11*x-6▪>> horner(fun2)▪ans =▪-6+(11+(-6+x)*x)*x16.符号表达式的化简(simplify)▪>> syms x▪>> fun1=(1/x+7/x^2+12/x+8)^(1/3)▪fun1 =▪(13/x+7/x^2+8)^(1/3)▪>> sfy1= simplify (fun1)▪sfy1 =▪((13*x+7+8*x^2)/x^2)^(1/3)▪>> sfy2= simple (sfy1)▪sfy2 =▪(13/x+7/x^2+8)^(1/3)17.subs 函数用于替换求值▪>> syms x y▪ f = x^2*y + 5*x*sqrt(y)▪ f =▪x^2*y+5*x*y^(1/2)▪>> subs(f, x, 3)▪ans =▪9*y+15*y^(1/2)▪>> subs(f, y, 3)▪ans =▪3*x^2+5*x*3^(1/2)▪>>subs(f,{x,y},{1,1})ex0202 ex0203 ex020418. 4 、反函数的运算(finverse )▪>> syms x y▪>> f = x^2+y▪ f =▪x^2+y▪>> finverse(f,y)▪ans =▪-x^2+y使用格式: 1 、g=finverse(f):f,g 均为单变量x 的符号函数; 2 、g=finverse(f,t) 返回值g 的自变量取为t ;19. 5 复合函数的运算(compose)▪>> syms x y z t u▪>> f = 1/(1 + x^2);▪>> g = sin(y);▪>> h = x^t;▪>> p = exp(-y/u) ;▪>> compose(f,g)▪ans =▪1/(1+sin(y)^2)▪>> compose(f,g,t)▪ans =▪1/(1+sin(t)^2)使用格式:Compose(f,g) % 返回当f=f(y) 和g=g(x) 时的复合函数f(g(x)) Compose(f,g,t) % 返回的复合函数以t 为自变量,即有f(g(t))20. 6 函数的极限、导数与积分o(1 )函数极限-limit 函数的使用o(2 )函数求导-diff 函数的使用o(3 )符号积分-int 函数的使用21.o符号极限(limit)假定符号表达式的极限存在,Symbolic Math Toolbox 提供了直接求表达式极限的函数limit ,函数limit 的基本用法如下表所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、符号计算基础
(一) 定义符号变量 z=x+i*y; %定义复数表达式 conj(z); %求共轭复数 expand(z*conj(z)) %求表达式与其共轭复数乘积的多项式 ans = x^2+y^2 若要去掉’x’的属性,可以使用下面语句 x = sym('x','unreal') 将’x’创建为纯格式的认符号变量 为了了解函数引用过程中使用的符号变量个数及变量名,可以 用findsym函数查询默认的变量。该函数的引用格式为:
findsym(f,n)
说明:f为用户定义的符号函数, n为正整数,表示查询变量的个数。 n=i, 表示查询 i 个系统默认变量。 n 值省略时表示查询符号函 数中全部系统默认变量。 findsym(f,2)
• (四) 生成符号函数 • 将表达式中的自变量定义为符号变量后, 赋值给符号函数名,即可生成符号函数。 例如有一数学表达式:
ax by f ( x, y ) 2 c
2 2
一、符号计算基础
(四) 生成符号函数
• 其用符号表达式生成符号函数fxy的过程为: • syms a b c x y %定义符号运算量 • fxy=(a*x^2+b*y^2)/c^2 %生成符号函数 • 生成符号函数 fxy后,即可用于微积分等符号 计算。
一、符号计算基础
(四) 生成符号函数
【例】定义一个符号函数
x、y的导数和对x的积分。
fxy=(a*x2+b*y2)/c2 ,分别求该函数对
%定义符号变量 %生成符号函数
syms a b c x y
fxy=(a*x^2+b*y^2)/c^2;
diff(fxy,x)
ans =2*a*x/c^2 diff(fxy, y) ans =2*b*y/c^2 int(fxy, x)
一、符号计算基础
• (三) 符号表达式
• 符号表达式由符号变量、函数、算术运算符等组成。 符号表达式的书写格式与数值表达式相同。例如,数学 表达式 1 5x •
2
• 其符号表达式为: 1+sqr(5*x))/2 • 注意,在定义表达式前应先将表达式中的字符x定义为 符号变量。
一、符号计算基础
%符号函数fxy对x求导数
%符号函数fxy对y求导数 %符号函数fxy对x求积分
ans =1/c^2*(1/3*a*x^3+b*y^2*x)
二、微积分
二、微积分
• (一) 微积分函数 • 1.求极限 • 函数limit用于求符号函数f的极限。系统可以 根据用户要求,计算变量从不同方向趋近于 指定值的极限值。该函数的格式及功能:
一、符号计算基础
(一) 定义符号变量
• 2、syms函数 • syms函数的功能与sym函数类似。syms 函数可以在一个语句中同时定义多个符 号变量,其一般格式为: • syms arg1 arg2 …argN • 用于将rg1, arg2,…,argN等符号创建为符 号型数据。
一、符号计算基础
• (二)默认符号变量 • 在数学表达式中,一般习惯于使用排在 字母表中前面的字母作为变量的系数, 而用排在后面的字母表示变量。例如: • f=ax2+bx+c • 表达式中的 a,b,c 通常被认为是常数,用 作变量的系数;而将x看作自变量。
一、符号计算基础
(二)默认符号变量 例如,数学表达式 f=x*n g=sin(a*t+b) 根据数学式中表示自变量的习惯,默认 a,b,c 为符号常数, x为符号变量。 若在MATLAB中表示上述表达式,首先用syms 函数定义 a,b,n,t,x为符号对象。在进行导数运算时,由于没 有指定符号变量,则系统采用数学习惯来确定表达式中 的自变量,默认a,b,c为符号常数,x,t为符号变量。 即 : 对函数f求导为:df/dx 对函数g求导为:dg/dt
第二讲 MATLAB的符号计算
主要内容
• 1. 符号计算基础
• 2. 微分积应用
• 3. 简化方程表达式
• 4. 解方程
• 5. 符号表达式替换
一、符号计算基础
(一) 定义符号变量
• 1、sym函数 • sym函数的主要功能是创建符号变量,以便进行符号运算,
也可以用于创建符号表达式或符号矩阵。用sym函数创建符 号变量的一般格式为:
二、微积分
• limit(f,x,a):求符号函数f(x)的极限值。即计算当变量x趋近
于常数a时,f(x)函数的极限值。
• limit(f,a):求符号函数f(x)的极限值。由于没有指定符号函数f
(x)的自变量,则使用该格式时,符号函数f(x)的变量为函数 findsym(f)确定的默认自变量,既变量x趋近于a。
一、符号计算基础
(二)默认符号变量 • • • • • • • • • • 【例 】查询符号函数 f=xn g=sin(at+b) 中的系统默认变量。 syms a b n t x %定义符号变量 f=x^n; %给定符号函数 g=sin(a*t+b); findsym(f,1) %在f函数中查询1个系统默认变量 ans= x 表示f函数中查询的1个系统默认变量为x。
一、符号计算基础
(一) 定义符号变量 a=sym(‘a’); %定义‘a’为符号运算量,输出变量名为a b=sym(‘b’); x=sym(‘x’); y=sym(‘y’); [x,y]=solve(a*x-b*y-1,a*x+b*y-5,x,y) %以a,b为符号常数,x,y为符号变量 即可得到方程组的解: x =3/a y =2/b
•
x = sym(‘x’)
• 其目的是将’x’创建为符号变量,以x作为输出变量名。每次 调用该函数,可以定义一个符号变量。
一、符号计算基础
(一) 定义符号变量
• 【例】作符号计算:
ax by 1 ax by 5
• a,b,x,y均为符号运算量。在符号运算前,应 先将a,b,x,y定义为符号运算量
一、符号计算基础
(一) 定义符号变量
• 【例】已知一复数表达式 z=x+i*y, 试 求其共轭复数,并求该表达式与其共轭复 数乘积的多项式。 • 为了使乘积表达式 x^2+y^2 非负,这 里,把变量x和y定义为实数。 • x=sym(‘x’,’real’); • y=sym(‘y’,’real’);