|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
$ e% e, F6 x0 n5 f2 [
数值运算中的变量需要事先赋值,才能出现在表达式中参与运算。但人们经常需要对含有字符的矩阵和函数进行处理和运算,如求函数的微分、积分等等,这就需要进行符号运算。# @& s, E- N1 T1 n
MATLAB的符号运算利用符号数学工具箱进行、符号数学工具箱的功能主要包括符号表达式的创建、符号矩阵的运算、符号表达式的化简和替换、符号微积分、符号代数方程、符号微分方程、符号函数绘图等等。 | _) n7 d8 u5 w% K1 U
一、符号对象的创建
$ `* r& L" b. |' Z0 ] g1、字符串变量的创建8 e+ c; H$ q* C" h9 G4 o! ~3 f
字符串是一种特殊的符号对象,在数据处理、造表和函数求值中,字符串具有重要的应用。7 V$ I3 i5 S! ?' S
用单引号界定的字符序列称为字符串。
5 c8 q/ b( S! v( M例:
% g, z2 J- E% h" W# C4 S' T; s/ d5 F$ x* d) ?! F# h
s=‘hello’# L2 i( Z1 x7 ~( A2 f
回车后,显示7 s, \) u! G+ x9 K$ h
s=
! S4 B2 t% Q+ ~- M2 Z0 P4 ohello+ P" J3 j5 v+ ]2 J
5 z$ \! |% s$ Y$ m3 |8 s! s
指出:
G2 _( O' O2 Q' W- U$ @1)字符串中的字符可以是数字、英文字母、汉字、横线、括号、表达式、方程等。0 N; m; u+ b% I- @5 g. \% ]9 y. R
2)字符串也称字符串数据或字符变量。
6 e1 b, f! B2 p% E3)用赋值符号“=”把字符串赋给某个标识符,例例如s,这个标识符称为字符串变量,简称字符名。
, X8 O z; v0 ^% j& j2、符号变量和符号表达式的创建
+ X' K" O( w7 M; |; o) S( @) PMATLAB的符号数学工具箱提供了两个基本函数sym和syms,用来创建函数符号变量、符号表达式和符号矩阵。
' l2 y1 o& A0 s6 ?9 s& Z1)用函数sym建立符号变量、符号表达式和符号矩阵。: X( B) n& r. J& q4 w$ W, i* z
调用格式位:
{8 ?. F5 G* P' m变量=sym(‘表达式’) [$ Q+ C7 }" b. m/ H) [
: C0 Y# D& d: x7 C# K
y=sym('2+cos(x))
# \& i. r3 j$ t: W+ n6 ^6 _将显示
) o6 L s/ f5 o @. y) `y=
/ A4 [- z' ]4 ?% A! ~5 Y+ l$ m) k2+cos(x)8 y0 b7 E4 _( ~0 r2 y
* P6 y( a. ^7 w9 l2 Y2)用函数syms建立符号变量、符号表达式和符号矩阵。
$ v' k* u9 r+ A9 E+ M. i2 d- ]调用格式为:; O$ }/ v/ ~- T5 }, n
Syms var1 var2 var3…9 y. g+ o/ R5 d1 k
注意空格
- M/ K% R7 d0 b, X1 X8 ~. O; d& h' s& P
syms y u, I: B. [/ x Z r" @ V6 q6 Y" i
p=exp(-y/u)
5 z& E3 b8 j4 r% n5 l' Iq=y2+u3+u*y/ j' g" z) l$ a+ `" Q
/ Z0 T/ P+ H& S. G6 {1 n这样就建立了两个符号表达式,分别存放在变量p和q里: Y( ~, d8 w# e9 D* R
指出:1)由于syms函数书写简洁、意义清楚,符合MATLAB的习惯特点,一般提倡使用syms创建符号变量、符号表达式和符号矩阵。
8 Z1 }: l$ b6 z; |. G5 p9 D; T2)注意用单引号创建的字符串变量和用函数sym、syms创建的符号变量性质并不完全一样。在符号工具箱中,有些指令的参数既可以用字符串型数据也可以用符号型数据,但也有一些指令的参数必须用符号型数据。% ]/ s% x* `# A9 G( F6 W. h/ a
加法、求导等运算对数值形式的字符串和符号变量都按符号变量对待,不加区别,而级数求和命令symsum(s,‘n’,h,k)(s是通项表达式,n为级数的项数,h、k分别是求和的起止项数)中的s必须用符号表达式而不能用字符串。6 g* a/ P8 r$ d7 s2 I
3)MATLAB中,在没有规定的情况下,默认最接近x的字母表示自变量。, B6 g8 b* N7 q, ?1 f
+ z8 }. S" d4 o. J4 h
二、符号微积分
' [& u$ i9 @+ V, T& v0 h4 x' [, j% W4 M$ x0 G+ O8 E$ \4 w
limit(f,x,a) 求表达式f当x->a时的极限
( l+ |( u/ O- ^3 k: cdiff(f) 求表达式f对缺省变量的微分( g, r$ D% J8 `/ Q. {; t/ i
diff(f,n) 求表达式f对缺省变量求n阶微分
! e0 _- _) \: B6 Ddiff(f,v) 求表达式f对变量v的微分1 _6 M, c) I0 P
diff(f,v,n) 求表达式f对变量v的n阶微分) C" i0 Y) X2 o- X3 q% o" B
int(f) 求表达式f缺省变量的积分' m2 h: b7 F# _* T0 x! l' B/ @3 j6 v
int(f,v) 求表达式f对变量v的积分$ a7 I$ B, u) q. z) e
int(f,v,a,b) 求表达式f在区间(a,b)上对变量v的定积分3 ]* X- ]" ]3 v' t: S6 Y+ f
, m) O: l+ J3 ]+ [* R
|
|