|  | 
 
| 
8 S! U' T3 _7 R. X% |( l
x
EDA365欢迎您登录!您需要 登录 才可以下载或查看,没有帐号?注册  数值运算中的变量需要事先赋值,才能出现在表达式中参与运算。但人们经常需要对含有字符的矩阵和函数进行处理和运算,如求函数的微分、积分等等,这就需要进行符号运算。
 3 `( F" B+ y0 {- `/ U2 oMATLAB的符号运算利用符号数学工具箱进行、符号数学工具箱的功能主要包括符号表达式的创建、符号矩阵的运算、符号表达式的化简和替换、符号微积分、符号代数方程、符号微分方程、符号函数绘图等等。
 , R, A- |: _$ x% V一、符号对象的创建& a2 ]5 p0 @  Q, [6 A; V- r& d
 1、字符串变量的创建# V; H; X; Q( a1 t# E
 字符串是一种特殊的符号对象,在数据处理、造表和函数求值中,字符串具有重要的应用。7 z0 r" ]+ m8 e: m- D$ k9 I
 用单引号界定的字符序列称为字符串。
 " [. k' ^& ]2 T  `7 [例:
 8 K; {* I; A) c2 v& V/ l9 Z6 m$ c3 D8 l
 s=‘hello’: V" ?1 m5 u2 |; T! E
 回车后,显示7 ]5 `% ^* ]2 y/ _( t
 s=
 ' u8 z( ?2 d: j& @0 X8 chello
 0 a8 k+ l9 h+ t7 r8 v4 [
 - k/ b4 j+ l: F5 ~6 A5 B" j指出:; y# z0 Z0 y8 Z4 h! B" h: Y
 1)字符串中的字符可以是数字、英文字母、汉字、横线、括号、表达式、方程等。* S/ h, a2 ~, t% l6 w+ i) C
 2)字符串也称字符串数据或字符变量。2 ~3 \# h) C3 N
 3)用赋值符号“=”把字符串赋给某个标识符,例例如s,这个标识符称为字符串变量,简称字符名。
 . {) w5 |' w7 {# d' H. t5 C: v2、符号变量和符号表达式的创建4 g% n5 ]- s& e
 MATLAB的符号数学工具箱提供了两个基本函数sym和syms,用来创建函数符号变量、符号表达式和符号矩阵。
 ; ^; k3 O/ s" _) S$ y9 I$ {/ C1)用函数sym建立符号变量、符号表达式和符号矩阵。* G3 }0 F% r& G! K; m2 U$ P- \; D
 调用格式位:+ f) J  z  R* d0 H- D4 A: W
 变量=sym(‘表达式’), ^( I( h- n! c; z' H4 d
 * {* Y* N8 j9 f+ M
 y=sym('2+cos(x))
 , i* ?( k. _5 i# L. Z将显示
 1 D. O& z0 \3 t% i! |y=
 0 L9 I; z/ x/ v3 L2 [2+cos(x)
 4 A0 v& B1 N7 U! X3 E# `* ^, v. |, q# H- \( k
 2)用函数syms建立符号变量、符号表达式和符号矩阵。9 a. x5 j/ C9 B! I" _
 调用格式为:
 ( I( ]% M. G1 a8 S, D8 [Syms var1 var2 var3…
 L0 K2 F2 g2 ?注意空格$ u" Z# M( n( Y2 t' ], V0 n: F
 ) ?/ r$ ~8 |7 X/ e# A; l
 syms y u
 ; Y7 U: H, s1 I' @/ f7 b7 yp=exp(-y/u)
 V8 j6 z: z1 ^! a) n% n" [q=y2+u3+u*y0 a* J3 _* p3 L
 4 Z0 ~8 n" K# D" \6 F( S' {
 这样就建立了两个符号表达式,分别存放在变量p和q里7 ^" d1 Z! v! `) [! O! O( d
 指出:1)由于syms函数书写简洁、意义清楚,符合MATLAB的习惯特点,一般提倡使用syms创建符号变量、符号表达式和符号矩阵。
 - e5 e& C! v8 @6 f2)注意用单引号创建的字符串变量和用函数sym、syms创建的符号变量性质并不完全一样。在符号工具箱中,有些指令的参数既可以用字符串型数据也可以用符号型数据,但也有一些指令的参数必须用符号型数据。
 7 U1 T& D- W* l加法、求导等运算对数值形式的字符串和符号变量都按符号变量对待,不加区别,而级数求和命令symsum(s,‘n’,h,k)(s是通项表达式,n为级数的项数,h、k分别是求和的起止项数)中的s必须用符号表达式而不能用字符串。* t3 v! d! p* N) B* N4 s( F
 3)MATLAB中,在没有规定的情况下,默认最接近x的字母表示自变量。
 ( {  Y- `1 o5 Q0 X" R5 K8 Y6 S
 9 X) V& q, y) A- I6 ?3 s二、符号微积分  B' r% q: e' R% B  D: k' K% O: ]$ q
 
 5 {, N. H$ K$ v& W* H9 S& jlimit(f,x,a) 求表达式f当x->a时的极限
 ( f  Z% i6 e  w% C& `diff(f) 求表达式f对缺省变量的微分
 # I: w/ o3 q1 l- @9 L' Zdiff(f,n) 求表达式f对缺省变量求n阶微分
 ; W6 ~; |/ Q2 G3 F( Wdiff(f,v) 求表达式f对变量v的微分
 5 s; ]" U5 w* r+ T) K  R1 wdiff(f,v,n) 求表达式f对变量v的n阶微分- s; n3 C- {: F- K0 @
 int(f) 求表达式f缺省变量的积分1 Z/ f. ^7 w7 X2 ?
 int(f,v) 求表达式f对变量v的积分
 8 }! H# |! Z# n2 e- lint(f,v,a,b) 求表达式f在区间(a,b)上对变量v的定积分
 ; I7 A$ A+ l1 s, W
 - q8 h1 Z$ O  y0 e$ j4 x/ f9 a. F
 | 
 |