- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验四 MATAB符号运算
实验四 MATLAB符号运算
实验目的
掌握符号变量和符号表达式的创建,掌握MATLAB的symbol工具箱的一些基本应用。
实验内容
(1) 符号变量、表达式、方程及函数的表示。
(2) 符号微积分运算。
(3) 符号表达式的操作和转换。
(4) 符号微分方程求解。
三、实验步骤
1. 符号运算的引入
在数值运算中如果求,则可以不断地让x接近于0,以求得表达式接近什么数,但是终究不能令,因为在数值运算中0是不能作除数的。MATLAB的符号运算能解决这类问题。输入如下命令:
f=sym(sin(pi*x)/x)
limit(f,x,0)
f=sym(sin(pi*x)/x)
f =
sin(pi*x)/x
limit(f,x,0)
ans =
Pi
2. 符号常量、符号变量、符号表达式的创建
1) 使用sym( )创建
输入以下命令,观察Workspace 中A、B、f是什么类型的数据,占用多少字节的内存空间。
A=sym(1)
B=sym(x)
f=sym(2*x^2+3*y-1)
clear
f1=sym(1+2)
f2=sym(1+2)
f3=sym(2*x+3)
f4=sym(2*x+3)
x=1
f4=sym(2*x+3)
A=sym(1)
A =
1
B=sym(x)
B =
x
f=sym(2*x^2+3*y-1)
f =
2*x^2+3*y-1
clear
f1=sym(1+2)
f1 =
1+2
f2=sym(1+2)
f2 =
3
f3=sym(2*x+3)
f3 =
2*x+3
f4=sym(2*x+3)
??? Undefined function or variable x.
x=1
x =
f4=sym(2*x+3)
f4 =
5
通过看MATLAB的帮助可知,sym( )的参数可以使字符串或数值类型,无论是哪种类型都会生成符号类型数据。
使用syms 创建
syms x y z
x,y,z
f1=x^2+2*x+1
f2=exp(y)+exp(z)^2
f3=f1+f2
clear
syms x y z
x,y,z
x =
x
y =
y
z =
z
f1=x^2+2*x+1
f1 =
x^2+2*x+1
f2=exp(y)+exp(z)^2
f2 =
exp(y)+exp(z)^2
f3=f1+f2
f3 =
x^2+2*x+1+exp(y)+exp(z)^2
通过以上实验,知道生成符号表达式的第二种方法:由符号类型的变量经过运算(加减乘除等)得到,又如:
f1=sym(x^2+y+sin(2))
syms x y
f2=x^2+y+sin(2)
x=sym(2),y=sym(1)
f3=x^2+y+sin(2)
y=sym(w)
f4=x^2+y+sin(2)
f1=sym(x^2+y+sin(2))
f1 =
x^2+y+sin(2)
syms x y
f2=x^2+y+sin(2)
f2 =
x^2+y+4095111552621091/4503599627370496
x=sym(2),y=sym(1)
x =
2
y =
1
f3=x^2+y+sin(2)
f3 =
26613109689473571/4503599627370496
y=sin(w)
??? Undefined function or method sin for input arguments of type char.
y=sym(w)
y =
w
f4=x^2+y+sin(2)
f4 =
22109510062103075/4503599627370496+w
思考题:syms x 是不是相当于
理解:这两个式子是不相同的。syms x 是定义x为符号变量,而是给x赋值。
3. 符号复诊创建】
syms a1 a2 a3 a4
A=[a1 a2;a3 a4]
A(1),A(3)
syms a1 a2 a3 a4
A=[a1 a2;a3 a4]
A =
[ a1, a2]
[ a3, a4]
A(1),A(3)
ans =
a1
ans =
a2
或者
B=sym([ b1 b2;b3 b
文档评论(0)