- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6.替换函数subs的使用。 (1)试指出下面程序中的f1、f2、f3、f4、f5的值。 syms a x; f=a*sin(x)+5; f1=subs(f,sin(x),sym(y)) f2=subs(f,{a,x},{2,sym(pi/3)}) f3=subs(f,{a,x},{2,pi/3}) f4=subs(subs(f,a,2),x,0:pi/6:pi) f5=subs(f,{a,x},{0:6,0:pi/6:pi}) syms x y; f=2*x+y; subs(f,{x,y},{x+y,x-y}) (2)试指出下面替换的结果,并说明理由。 符号对象建立时可以附加属性: real、positive 和 unreal k=sym(k,positive) x=sym(x,real) x=sym(x,unreal) 表明 x 是实的 表明 k 是正的 去掉 x 的附加属性 符号表达式的建立 f2=sym(’sin(x)+cos(x)’) syms x f1=sin(x)+cos(x) f3=’sin(x)+cos(x)’ 用这种方法创建的符号表达式对空格很敏感,不要在字符间随意添加空格! 推荐! 符号变量与符号常量 a=sym(‘a’); b=sym(‘5’); c=sym(5); b、c有区别吗?hint:help sym 相关函数 findsym: 查找符号表达式中的符号变量 findsym(f)按字母顺序列出符号表达式 f 中的所有自由变量findsym(f,N)列出 f 中距离 x 最近的 N 个自由变量(i,j 除外) 默认自变量=findsym(f,1) a=sym(a);x=sym(x);k=sym(3); f=k*x+a; findsym(f) 例: ans=a,x 相关函数 subs:符号替换 subs(f): 用当前工作空间中存在的变量值,替换 f中所有出现的相同的变量,并进行简化计算。 subs(f,x,a):用 a 替换 f 中的 x ;a 是可以是 数/数值变量/表达式 或 符号变量/表达式。 若x与a为相同大小的向量或矩阵,则用a中相应的元素替换x中的元素; 若f,x为标量,而a是向量或矩阵,则f与x将扩展为与a相同形状的向量或矩阵。 例: syms x y f=2*x+y; x=3,y=4; subs(f) subs(f,x,’a’) syms x y a b f=2*x+y; subs(f,[x,y],[3,4]) subs(f,{x,y},{3,4}) subs(f,x,[1:3]) subs(f,{x,y},{[1:3],[5:7]}) subs(f,{x,y},{a+b,a-b}) subs(f,{x,y},{x+y,x-y}) ans=10 ans=2*x+y ans=10 ans=[2+y,4+y,6+y] ans=[7 10 13] ans=3*a+b ? 符号矩阵 使用sym函数直接生成 A=sym(’[1+x, sin(x); 5, exp(x)]’) 将数值矩阵转化成符号矩阵 B=[2/3, sqrt(2); 5.2, log(3)] C=sym(B) 符号矩阵中元素的引用和修改 A=sym(’[1+x, sin(x); 5, exp(x)]’) A(1,2) A(2,2)=sym(’cos(x)’) 能否用sym(‘B’)? 符号矩阵的基本运算 符号矩阵的基本运算与数值矩阵的基本运算相类似。 1) 基本运算符:+、-、*、\、/、^、.*、.\、./、.^、’ 、.’ 2) 三角函数与反三角函数:sin、cos、tan、… … 3) 指数、对数函数:sqrt、exp、log、… … 4) 复数函数:real、imag、conj、 abs 5) 矩阵函数:det、inv、rank、 … … (没有norm) 6) 矩阵元素的抽取:diag、tril、triu 六大常见符号运算 因式分解、展开、合并、简化及通分等 因式分解:factor syms x f=x^6 +1 s=factor(f) s =(1+x^2)*(x^4-x^2+1) factor 也可用于正整数的分解 大整数的分解 展开函数: expand 多项式展开 三角函数展开 该函数经常用于多项式展开,也常用于三角函数、指数函数和对数函数的展开中。 合并同类项: collect collect(f,v): 按指定变量 v 的次数合并系数; collect(f): 合并 f 中的默认自变量的各项系数。 findsym(f,1) 简化函数: s
文档评论(0)