符号计算
计算符号大全
计算符号大全计算符号是用来表示数学运算的符号。
它们可以是算术运算符、比较运算符、逻辑运算符、赋值运算符、位运算符和特殊符号。
算术运算符算术运算符用于执行算术运算,包括加法、减法、乘法、除法、取余数和幂运算。
加法:+减法:-乘法:*除法:/取余数:%幂运算:^比较运算符比较运算符用于比较两个值的大小关系。
等于:==不等于:!=大于:>大于等于:>=小于:<小于等于:<=逻辑运算符逻辑运算符用于对布尔值进行逻辑运算,包括与运算、或运算、非运算。
与运算:&&或运算:||非运算:!赋值运算符赋值运算符用于将一个值赋给一个变量。
赋值:=加法赋值:+=减法赋值:-=乘法赋值:*=除法赋值:/=取余数赋值:%=幂运算赋值:^=位运算符位运算符用于对二进制位进行操作,包括按位与运算、按位或运算、按位异或运算、按位取反运算、左移运算、右移运算。
特殊符号特殊符号包括括号、方括号、花括号、逗号、分号、冒号、问号、省略号等。
计算符号的优先级计算符号的优先级决定了它们在表达式中执行的顺序。
优先级高的符号会先执行,优先级低的符号会后执行。
计算符号的优先级从高到低如下:1. 括号2. 一元运算符(如取负号、取反号)3. 幂运算符4. 乘法运算符、除法运算符、取余数运算符5. 加法运算符、减法运算符6. 比较运算符7. 逻辑运算符8. 赋值运算符运算符的结合性运算符的结合性决定了当多个具有相同优先级的运算符出现在表达式中时,它们执行的顺序。
运算符的结合性有两种:左结合和右结合。
左结合:运算符从左向右执行。
右结合:运算符从右向左执行。
例如,加法运算符和减法运算符都是左结合的,这意味着在表达式中,加法运算符和减法运算符会从左向右执行。
而赋值运算符是右结合的,这意味着在表达式中,赋值运算符会从右向左执行。
计算符号的用法计算符号可以用于编写数学表达式、逻辑表达式和计算机程序。
2和3相加。
x大于0并且y小于10,则表达式为真。
数学计算符号范文
数学计算符号范文一、数学操作符1.加法操作符:用符号"+"表示,表示两个数相加,如2+3=52.减法操作符:用符号"-"表示,表示两个数相减,如5-2=33.乘法操作符:用符号"×"或"*"表示,表示两个数相乘,如2×3=64.除法操作符:用符号"÷"或"/"表示,表示两个数相除,如6÷3=25.幂操作符:用符号"^"表示,表示一个数的指数运算,如2^3=86.开根号操作符:用符号"√"表示,表示一个数的平方根或立方根等,如√4=27.绝对值操作符:用符号","表示,表示一个数的绝对值,如-3,=38. 对数操作符:用符号 "log" 表示,表示一个数的对数运算,如log100 = 2二、数学关系符号1.等于关系符号:用符号"="表示,表示两个数或表达式相等,如2+3=52.不等于关系符号:用符号"≠"表示,表示两个数或表达式不相等,如2+3≠63.大于关系符号:用符号">"表示,表示一个数大于另一个数,如5>34.小于关系符号:用符号"<"表示,表示一个数小于另一个数,如3<55.大于等于关系符号:用符号"≥"表示,表示一个数大于或等于另一个数,如5≥36.小于等于关系符号:用符号"≤"表示,表示一个数小于或等于另一个数,如3≤5三、数学集合符号1.包含关系符号:用符号"∈"表示,表示一个元素属于一个集合,如2∈{1,2,3}。
2.不包含关系符号:用符号"∉"表示,表示一个元素不属于一个集合,如4∉{1,2,3}。
MATLAB的符号计算
diff(s,’v’,n)
【例】求导数: 2 d s in x dx x = sym('x'); diff(sin(x^2),x) ans = 2*cos(x^2)*x
%定义符号变量 %求导运算
3.积分函数 积分函数int(s ,v,a,b)可以对被积函 数或符号表达式s求积分。其引用格式为: int(s ,v,a,b) 说明:
1、建立m-文件rigid.m如下: function dy=rigid(t,y) dy=zeros(3,1); dy(1)=y(2)*y(3); dy(2)=-y(1)*y(3); dy(3)=-0.51*y(1)*y(2);
1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 2 4 6 8 10 12
例1
解
d2y dx
2
0 应表达为:D2y=0.
求
du 1 u 2 的通解. dt
输入命令:dsolve('Du=1+u^2','t')
结 果:u = tg(t-c)
例2
求微分方程的特解.
d 2 y dy 2 4 29 y 0 dx dx y (0) 0, y ' (0) 15
解
2、取t0=0,tf=12,输入命令: [T,Y]=ode45('rigid',[0 12],[0 1 1]); plot(T,Y(:,1),'-',T,Y(:,2),'*',T,Y(:,3),'+')
3、结果如图 图中,y1的图形为实线,y2的图形为“*”线,y3的图形为“+”线.
符号计算的理论基础和算法
符号计算的理论基础和算法符号计算,是指使用计算机代替人进行运算和推理,主要是针对数学和逻辑领域进行的。
符号计算可以解决一些人难以手算的问题,尤其是涉及到符号运算(如代数运算、微积分、逻辑等)或者大量数据处理的问题。
符号计算的实现需要基于一定的理论基础和算法,下面分别进行介绍。
一、理论基础符号计算的理论基础主要来源于数学和计算机科学。
其中,数学提供了一些基本的理论框架,如逻辑、代数、集合论、方程求解等,而计算机科学则提供了一些实现符号计算的基础技术,如数据结构、算法、编译器等。
在数学方面,符号计算主要涉及到代数和微积分两个领域。
代数是一种研究代数结构(如群、环、域等)及其运算规律的数学学科,它是符号计算的基础。
符号计算中的代数可以处理各种代数式,如多项式、有理式、根式等,并支持诸如因式分解、化简、展开等一系列运算。
微积分是研究函数和极限的数学学科,也是符号计算的重要领域。
符号计算可以处理各种微积分问题,如求导、积分、极限等,以及微分方程等高级问题。
此外,符号计算还需要使用一些数值方法,如迭代、数值逼近等,来处理那些无法用纯符号方法求解的问题。
在计算机科学方面,符号计算的实现需要基于一些关键技术,如数据结构、算法、编程语言等。
数据结构是计算机存储和操作数据的基本方式,符号计算需要使用一些数据结构来存储和处理符号对象,如多项式、表达式、函数等。
算法是符号计算的核心,符号计算需要使用一些高效的算法来处理各种代数和微积分问题,如快速多项式乘法、多项式分解、微积分运算等。
编程语言是实现符号计算的重要工具,如Maple、Mathematica、Maxima等,这些编程语言提供了一些强大的符号计算库和数学函数库。
二、算法符号计算的算法涉及到代数、微积分、逻辑等领域,下面列举一些常见算法。
1. 多项式加减乘除算法。
多项式是符号计算中常见的数据类型,加减乘除是符号计算中常见的运算。
快速多项式乘法算法(如Kronecker算法、Toom-Cook算法、NTT算法)可以将多项式乘法时间从O(n^2)降低到O(n log n)或O(n^(1.5)),提高了多项式计算的效率。
符号计算在线性代数中
符号计算在线性代数中线性代数作为数学的一个重要分支,在许多科学领域和工程技术中起着重要的作用。
符号计算是一种利用计算机代替人工计算的方法,在线性代数中也有着广泛应用。
一、符号计算的基本概念符号计算是一种利用数学软件或计算机代替人工计算的方法。
它能够处理和操作符号,而不仅仅只是处理数值。
符号计算可以对代数表达式进行化简、求解方程、进行计算等操作,从而简化了复杂运算的过程。
在线性代数中,符号计算可以帮助我们进行矩阵的运算、求解线性方程组、计算特征值和特征向量等。
通过符号计算,我们可以快速而准确地得到线性代数中的重要结果,提高了计算效率和准确性。
二、符号计算在矩阵运算中的应用1. 矩阵的相加和相乘:符号计算可以帮助我们进行矩阵的相加和相乘运算。
通过符号计算软件,我们可以输入两个矩阵的表达式,然后进行运算,得到结果。
这样可以避免手工计算中容易出错的问题。
2. 矩阵的转置和逆:符号计算可以用来计算矩阵的转置和逆。
通过符号计算软件,我们可以输入矩阵的表达式,然后进行转置和求逆运算,得到结果。
这样可以简化复杂的计算过程,提高运算效率。
三、符号计算在线性方程组求解中的应用1. 方程组的求解:符号计算可以帮助我们求解线性方程组。
通过符号计算软件,我们可以输入方程组的表达式,然后进行求解运算,得到方程组的解。
这样可以节省大量的计算时间和人力物力。
2. 矩阵的特征值和特征向量:符号计算可以用来计算矩阵的特征值和特征向量。
通过符号计算软件,我们可以输入矩阵的表达式,然后进行特征值和特征向量的计算,得到结果。
这些结果可以帮助我们分析矩阵的性质和特点。
四、符号计算在线性代数中的其他应用1. 行列式的计算:符号计算可以用来计算矩阵的行列式。
通过符号计算软件,我们可以输入矩阵的表达式,然后进行行列式的计算,得到结果。
这样可以快速而准确地求解行列式的值。
2. 矩阵的特殊运算:符号计算可以帮助我们进行矩阵的特殊运算,如广义逆矩阵、伪逆矩阵等的计算。
符号计算
—— matlab 不仅具有数值运 算功能,还开发了在matlab环 境下实现符号计算的工具包 Symbolic Math Toolbox
符号运算的功能
• 符号表达式、符号矩阵
的创建 • 符号线性代数 • 因式分解、展开和简化 • 符号代数方程求解 • 符号微积分 • 符号微分方程
[
a, 2*b]
0]
[3*a,
这就完成了一个符号矩阵的创建。
注意:符号矩阵的每一行的两端都有方
括号,这是与 matlab数值矩阵的
一个重要区别。
符号矩阵的修改
指令修改
用A1=subs(A, ‘new’, ‘old’)来修改 A(行标,列标)=符号表达式
例如:A =[ a, 2*b] [3*a, 0] A(2,2)=sym(‘4*b’) A = [ a, 2*b] [3*a, 4*b] A2=subs(A, 'c', 'b') A2 =[ a, 2*c] [3*a, 4*c]
符号矩阵与数值矩阵的转换
将数值矩阵转化为符号矩阵
函数调用格式:sym(A) A=[1/3,2.5;1/0.7,2/5] A= 0.3333 2.5000 1.4286 0.4000 sym(A) ans = [ 1/3, 5/2] [10/7, 2/5]
将符号矩阵转化为数值矩阵
函数调用格式: double(A)向双精度数值转 换
2. 任意精度的数学运算
在symbolic中有三种不同的算术运算:
1. 数值类型 3. vpa类型
matlab的浮点算术运算
2. 有理数类型 maple的精确符号运算
maple的任意精度算术 运算
第二章 符号计算
2.5 符号计算基本运算符 矩阵运算: + , - , * , / , \ , ^ , ' 数组运算: + , - , .* , ./ , .\ , .^, .‘
2.6 符号计算中函数指令 (表2.1-2) 三角、双曲函数:sin、cosh等 指数、对数函数:exp、expm、log(即ln) 复数函数:conj(共轭)、real、abs (模) 矩阵分解:eig 方程求解:solve 微积分函数:diff、int 绘图函数:ezplot
第二章 符号计算
—— matlab 不仅具有数值运算功能,还开 发了在matlab环境下实现符号计算的工具 包Symbolic Math Toolbox,通过调用Maple 软件实现符号计算。 Maple——强大的符号运算软件
介绍教材第二章内容
Matlab程序设计
符号运算的功能 • • • • • • 符号表达式、符号矩阵的创建 符号线性代数 因式分解、展开和简化 符号矩阵分析和代数方程解 符号微积分 微分方程符号解法
• 默认自变量为 ‘t‘,可任意指定自变量‘x‘, ‗u‘等 • 解中任意常数C的数目等于缺少的初始条件数 • 解存放在构架数组S中 • 微分方程的各阶导数项以大写字母D表示
Matlab程序设计
dy dy 或 y的一阶导数—— Dy dt dx
d y d y 2 或 2 y的二阶导数—— D2y dt dx d y d y y 的 n 阶导数 —— Dny n 或 n dt dx
(4) syms a b c x;
f3= ax^2+bx+c
%二次三项式
Matlab程序设计
例2.1-5: 区分数值矩阵、字符矩阵、符号矩阵
计算机符号计算
计算机符号计算
《计算机符号计算》
一、什么是符号计算
符号计算也称计算机符号化模型是一种以符号,而不是常规数值,表示计算机中问题的方法,它将常规的计算问题用符号抽象出来,使得计算机能够自动识别、处理和推理这些问题。
符号计算有两类:一类是符号逻辑计算,另一类是符号模拟计算。
符号逻辑计算是用逻辑表示(包括命题逻辑、概念逻辑、形式逻辑等)建立的符号模型来描述问题的,进而运用推理机制来求解问题;而符号模拟计算是模拟问题本身,通过符号表示和计算机编程等来求解问题。
二、符号计算的优势
1、易操作:符号计算的操作极其简单,因此在计算机中实现符
号计算非常容易,而传统的数值计算则比较复杂。
2、健壮性:符号计算在健壮性方面好于数值计算,能更好地抵
御不确定性和变化的环境。
3、易理解:符号计算能够直观地显示计算过程,被计算的对象
用字符符号表示,容易深入理解,更容易验证计算结果的正确性。
4、准确性:符号计算是通过计算机的模拟,使得能够考虑到计
算中的所有复杂性,从而达到更高的准确性。
三、符号计算的应用
符号计算的应用非常广泛,主要有以下几个方面:
1、模拟计算:符号计算是一种精确模拟,它能够将复杂的现实问题模拟出来,以满足精确模拟的要求。
2、控制系统设计:符号计算能够提供许多便利的方法来处理不确定性和复杂性,因此在控制系统设计中也有广泛应用。
3、智能推理:符号计算本身就是一种智能推理,它能够解决复杂的知识推理问题。
4、大数据处理:符号计算可以帮助处理大数据,它能够快速地处理巨大的数据集,从而得出数据模型和关联结构。
符号计算
x ln(1 t 2 ) d2y 例 5 已知 ,求 2 ,并把结果化简。 dx y t arctan t
解 MATLAB 程序如下: syms t x=log(1+t^2);y=t-atan(t); simplify (diff(diff(y,t)/diff(x,t),t)/diff(x,t))
x x0
基本格式为: L=limit(fun,x,x0,’left’或’right’) 说明: (1)若加上参数’left’代表左极限, ‘right’代表右极限; (2)若 x0 为 ,可用 inf 表示。 例 1 计算极限 lim
x 1
1 e
1 x 1 1
2 e x 1
解 MATLAB 语句为: syms x; limit((1+exp(1/(x-1)))/(2-exp(1/(x-1))),x,1,'left') ans = 1/2
注意:如果 n 为非负整数,则 factor(n)计算 n! 。 例如:syms x t; F=(x^2+x*exp(-t)+1)*(x+exp(-t)) F1=collect(F) %默认按 x 的同幂项系数进行合并 F2= collect(F,exp(-t)) 结果:F = (x + 1/exp(t))*(x^2 + x/exp(t) + 1) F1 = x^3 + (2/exp(t))*x^2 + (1/exp(2*t) + 1)*x + 1/exp(t) F2 = x/exp(2*t) + (2*x^2 + 1)/exp(t) + x*(x^2 + 1) 例如:syms a x; G=x^3-a^3; g1=factor(x^4-5*x^3+5*x^2+5*x-6) g2=factor(G) g3=factor(4) 结果:g1 = (x - 1)*(x - 2)*(x - 3)*(x + 1) g2 = -(a - x)*(a^2 + a*x + x^2) g3 = 24 例如:vpa(pi,20)
第5章 符号运算
号变量a,因此系统不能进行f-a运算,给出了错误信息。
字符串、表达式或字符表达式等等。
【例6-1】使用sym函数创建符号变量和符号表达式。 分别输入以下语句:
x=sym('x') y=sym('hello') z=sym('(1+sqrt(5))/2') f= sym ('a*x^2+b*x+c') f-a 返回结果依次为:
5.1 符号变量的创建
符号变量和符号表达式的创建
sym函数 定义单个符号变量
>>f1=sym(‘ax^2+bx+c’) %创建符号变量f1和一个符号表达式
>>a=sym(‘a’)
syms函数 一次定义多个符号变量
>> clear
>> syms a b c x
>> whos
Name Size
Bytes Class Attributes
例 反函数
>>clear >>syms x y >>finverse(1/tan(x)) ans =
atan(1/x) >>f = x^2+y; >>finverse(f,y) ans =
符号计算
5、符号表达式与数值表达式之间的转换 利用函数sym可以将数值表达式变换成它 的符号表达式。
例如:
执行的结果
sym(1.5) sym(3.14)
ans =3/2 ans =157/50
函数numeric或eval可以将符号表达 式换成数值表达式
例如:
phi='(1+sqrt(5))/2' numeric(phi) eval('234/5')
expand(s) %对符号表达式s进行展开 collect(s) %对符号表达式s合并同类项 collect(s,v) %对符号表达式s按变量v合 并同类项
例如:
syms a b x y; A=a^3-b^3; factor(A) %对A分解因式 s=(-7*x^2-8*y^2)*(-x^2+3*y^2); expand(s) %对s展开 collect(s,x) %对s按变量x合并同类项 factor(sym('420')) %对符号整数分解因式
3、使用已经定义的符号变量组成符号表达式
例如:
syms x y; v=3*x^2-5*y+2*x*y+6
执行的结果
v =3*x^2-5*y+2*x*y+6
三、基本的符号运算 1、符号表达式的四则运算
在Matlab中的符号运算除了可以与数字运算一样 使用+、-、*、\、^进行四则运算外,还提供了一些 四则运算的函数。
sin 2 a cos2 a 78
Matlab程序
syms a b x y alp m=sym('[a^3-b^3 sin(alp)^2+cos(alp)^2;(15*x*y-3*x^2)/(x-5*y) 78]') factor(m) %对符号矩阵因式分解 simplify(m) %对符号矩阵化简处理
第4讲符号计算基础
• limit(f,x,a,'right'):求符号函数f的极限值。'right'表
示变量x从右边趋近于a。
• limit(f,x,a,'left'):求符号函数f的极限值。'left'表示
变量x从左边趋近于a。
二、微积分
• 【例3】求极限
lim
x →0
x (e
sin x
+ 1) − 2(e 3 sin x
int('被积表达式','积分变量','积分上限', '积分下限')—— 定积分 ——缺省时为不定积分
二、微积分
• 【例5】求下述积分。 • 求积分:
∫
1 1 + x
2
dx
• syms x
• int(‘1/(1+x^2)',x)
• ans = • atan(x)
二、微积分
• 【例6】求下述积分。 • 求积分:
dy + x, 求 dx
二、微积分
• 3.积分函数 • 积分函数int(s ,v,a,b)可以对被积 函数或符号表达式s求积分。其引用格式 为: • int(s ,x,a,b)
• 说明: • int(s,x),表示以x为自变量,对被积函数或符号 表达式s求不定积分。 • int(s ,x,a,b)表示是进行定积分运算。a、b分别 表示定积分的下限和上限。
' ' 的内容可以是符号表达式,也可 以是符号方程。 例: f1='a∗x^2+b∗x+c' —— 二次三项式 f2= 'a∗x^2+b∗x+c=0' —— 方程 f3='Dy+y^2=1' ——微分方程 ※符号表达式或符号方程可以赋给符 号变量,以后调用方便;也可以不赋 给符号变量直接参与运算
符号计算
[ 2 ]
[ x ]
【*例6.1.4-1】对独立自由符号变量的自动辨认。
(1)生成符号变量
syms a b x X Y;k=sym('3');z=sym('c*sqrt(delta)+y*sin(theta)');
EXPR=a*z*X+(b*x^2+k)*Y;
(2)找出EXPR中的全部自由符号变量
findsym(EXPR) %除常数符号k外的所有独立符号变量都被列出
a3=sym([1/3,pi/7,sqrt(5),pi+sqrt(5)],'e') %带估计误差的有理表示 <3>
a4=sym('[1/3,pi/7,sqrt(5),pi+sqrt(5)]') %绝对准确的符号数值表示 <4>
a24=a2-a4
a1 =
0.3333 0.4488 2.2361 5.3777
a3 =
[ 1/3, 0.2+sqrt(2)pi]
a1_a2 =
[ 0, 1.4142135623730951010657008737326-2^(1/2), 0]
【*例6.1.1-3】把字符表达式转换为符号变量
y=sym('2*sin(x)*cos(x)') %把字符表达式转换为符号变量
ans =
1
ans =
1
ans =
1
(5)利用whos观察内存变量的类别和其它属性
whos Mn Mc Ms %观察三个变量的类别和属性
符号计算
定义符号矩阵
>>syms a b c d; >>A=[a b; c d]; >> B=[a b; c d]; >>A*B ans= a^2+b*c a*b+b*d a*c+c*d b*c+d^2
solve指令用法
例: • syms a b c x; solve(‘a*x^2 + b*x + c’) • 当没有指定变量的时候,matlab默认求解的 是关于x的一元二次方程的解,求解的结果 为: • ans = • -(b + (b^2 –4*a*c)^(1/2))/(2*a) • -(b -(b^2 - 4*a*c)^(1/2))/(2*a)
%sym的输入量为科学记述数
精准符号数字或数 字表达式的创建 R3=sin(sym(3/10))
R3=
sin(3/10) %sym的输入量为有理分数
R4=sin(sym(‘3/10’)) R4=
%sym的输入量为“整数构 成的有理分数”字符串数字
sin(3/10)
精准符号数字或数 字表达式的创建 disp(*‘R1属于什么类别?答:’,class(R1)+) R1属于什么类别?答:1 disp(*‘R1与R4是否相等?(是为1,否为0) 答:’,int2str(logical(R1==R4))+) R1与R4是否相等?(是为1,否为0)答:1
第四章 符号计算
定义
所谓符号计算,是指在运算时,无须事 先对变量赋值,而将所得到结果以标准的符 号形式来表示。 例如,在符号变量运算过程中pi就用pi 表示,而不是具体的近似数值3.14或 3.14159。 使用符号变量进行运算能最大限度减 少运算过程中因舍入造成的误差。符号变 量也便于进行运算过程的演示。
第6章 符号计算
在科学研究和工程应用中,除了存在大量的数 值计算外,还有对符号对象进行的运算, MATLAB通过符号运算工具箱(symbolic math toolbox)来直接对抽象的符号对象进行各种计 算,并获得问题的解析解
符号对象的建立
建立符号对象:MATLAB提供了两个建立符号对象的 函数sym和syms,两个函数的用法不同 Sym函数用来建立单个符号量,调用格式 符号量名=sym(‘符号字符串’) 该函数可以建立一个符号量、符号字符串可以是常量、 变量、函数或表达式 Syms函数一次可以定义多个符号变量,调用格式 syms 符号变量名1 符号变量名2 …符号变量名n
n +1
(1) (2)
函数的泰勒级数
将函数展开为泰勒级数:taylor(f, v, n, a) 表示将函数f按变量v展开为泰勒级数,展开到 第n项(即变量v的n-1次幂)为止,n的默认值 为6,v的默认值与diff函数相同,参数a指定将 函数f在自变量v=a处展开,a的默认值为0
例:求函数在指定点的泰勒级数展开式
(1) ln( x + x +1)在x = 0处的泰勒展开式
2
1 + 2 x + 3x 2 (2) 在x = 1处的5阶泰勒展开式 2 1 - 2 x - 3x
(1)
(2)
符号代数方程求解
代数方程指未涉及微积分运算的方程, MATLAB里用solve实现,调用格式为:
Solve(s):求解符号表达式s的代数方程,变量为默认 Solve(s,v):求解符号表达式s的代数方程,变量为v Solve(s1,s2,…,sn, v1,v2,…,vn):求解符号表达式 s1,s2,…,sn组成的代数方程组,变量分别为v1,v2,…,vn
第四讲符号运算
-5-
1 ans = 1 (5)利用 whos 观察内存变量的类别和其它属性 >> whos Mn Mc Ms % 观察三个变量的类别和属性 Name Size Bytes Class Mc 1x9 18 char array Mn 2x2 32 double array Ms 2x2 408 sym object Grand total is 21 elements using 458 bytes
-3-
例 4.1.3 用符号计算验证三角等式 sin ϕ1 cos ϕ 2 − cos ϕ 1 sin ϕ 2 = sin(ϕ1 − ϕ 2 ) 。 >> syms fai1 fai2; >> y=simple(sin(fai1)*cos(fai2)-cos(fai1)*sin(fai2)) y= sin(fai1-fai2)
4.1.2 符号计算中的算符和基本函数
由于新版 MATLAB 采用了重载技术,使得用来构成符号计算表达式的算符和基本函 数,无论在形状、名称上,还是在使用方法上,都与数值计算中的算符和基本函数几乎完全 相同。这无疑给编程带来极大的便利。 下面就符号计算中的基本算符和函数作简单的归纳。 (1) 基本运算符 算符“+”,“-”,“*”,“\”,“/”, “^”分别实现矩阵的加、减、乘、左除、右除、求 幂运算。 算符“.*”,“./”,“.\”,“.^”分别实现“元素对元素”的数组乘、除、求幂。 算符“’”,“.’”分别实现矩阵的共轭转置、非共轭转置。 (2) 关系运算符 在符号对象的比较中,没有“大于”、“大于等于”、“小于”、“小于等于”的概念, 而只有是否“等于”的概念。 算符“= =”,“~ =”分别对算符两边的对象进行“相等”、“不等”的比较。当事实 为“真”时,比较结果用 1 表示;当事实为“假”时,比较结果则用 0 表示。 (3) 三角函数、双曲函数及它们的反函数 除 atan2 仅能用于数值计算外,其余的三角函数(如 sin) 、双曲函数(如 cosh) 及它们的反函数(如 asin,acosh) ,无论在数值计算还是符号计算中,它们的使 用方法相同。 (4) 指数、对数函数 在数值、符号计算中,函数 sqrt,exp,expm 的使用方法完全相同。至于对数函 数,符号计算中只有自然对数 log(即一般教材中用 ln),而没有数值计算中的 log2,log10。 (5) 复数函数 涉及复数的共轭 conj、求实部 real、求虚部 imag 和求模 abs 函数,在符号、数 值计算中的使用方法相同。但注意,在符号计算中,MATLAB 没有提供求相 角的命令。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四章符号计算
1、选择题
1)运行命令a=sym('pi','d'),则对于变量a的描述 A 是正确的。
A. A是符号变量
B.a显示为10位的数值
C. a显示为32位的数值
D. A不存在
2)运行下列命令,则变量a的类型是 A 。
Syms a
a=sin(2)
A. sym
B. double
C. char
D. int
3)运行下列命令,则 D 是正确的描述。
Syms a b c a
A=[a b;c d]
A. A占用的内存小于100B
B. 创建了5个符号变量
C. A占用的内存是a、b、c、d之和
D. A不存在
4)运行下列命令后变量C的值是 A 。
A=sym([5 5;6 6]);
B=sym([1 2;3 4]);
C=A.*B
[5,10] [5 10] [5*1,5*2]
A.[18,24]
B. [18 24]
C. [6*3,6*4]
D. 出错
5)运行命令“a=double(sym('sin(pi/2)'))”,则变量a是 C 。
A. 符号变量
B. 字符串'1'
C. Double型1
D. 出错
6)符号表达式g=sym('sin(a*z)+cos(w*v)')中的自由变量是 C 。
A. a B. z C. w D. v
7)将符号表达式化简为嵌套形式,使用 D 函数。
A.collect
B.expand
C. factor
D. hornor
8)积分表达式
2
0cos()x dtdx
π
⎰⎰的实现使用下面的 B 命令。
A. int(int(cos(x)),0,pi/2)
B. int(int(cos(x),'t'),0,pi/2)
C. int(int(cos(x)),'t',0,pi/2)
D. int(int(cos(x),'t',0,pi/2))
9)运行命令y=dsovle('x*D2y-3Dy=x^2','t')求解微分方程,则 B 。
A. Dy是指dy/dx
B. 得出y的通解有一个常数C1
C. D2y是指d2y/dx
D. 得出y的通解有两个常数C1和C2 10)运行命令f=solve('x^2+1'),则 B 。
A. f是有两个数值元素的行向量
B. f是有两个数值元素的列向量
C. f是符号对象
D. F只有一个元素
2. 分别使用sym 和syms创建符号表达式“sin(x)+cos(y)”。
3. 创建符号常量pi,并分别使用十进制、十六进制和有理数型格式表示。
4. 使用magic函数创建3×3矩阵,并转化为符号矩阵,查看符号矩阵与数值矩阵的不同。
5. 分别对符号矩阵
a b
A
c d
⎡⎤
=⎢⎥
⎣⎦
和
c d
B
a b
⎡⎤
=⎢⎥
⎣⎦
进行加、点乘、点除和比较是否相等
运算,并对A计算行列式和对数log10的运算。
6. 创建数值变量a=ln(10),并分别转化为有理数和8位精度的VPA性符号对象。
7. 确定下列符号表达式中的自由变量
1/(log(t)+log10(w*t)) sqrt(t)/y 10*i+x*j exp(-a*result)
答案:w y x result
8. 对符号表达式y=x2-1中的x-1用a或5替换,并求y的反函数。
9. 对符号表达式2
=+-分别用collect、expland和simplify函数化简,
f x x
cos sin
并与simple函数的结果比较。
10.已知符号表达式f=x3+5x2+4小,g=e-x,求复合函数f(g(x)),并将f转化为多项式系数。
11. 分别对符号表达式f=sin(ax)中的变量a 和x 进行一阶微分和二阶微分,并计算f当x在[0,2π]范围内的积分。
12. 对符号表达式y=2tsin(t+n/4),n为参数。
求t 趋向1的极限值,并使用级数求前10项的和。
13.求解符号方程组
1234
124
1234
1234
2328
36
87 7225
x x x x
x x x
x x x x
x x x x
-++=
⎧
⎪++=
⎪
⎨
-++=
⎪
⎪+-+=
⎩。
14.求符号微分方程dy/dx+ytgx=cosx的通解和当y(0)=2的特解。