关于Matlabsubs matlab subs函数

subs

Symbolic substitution in symbolic expression_r_r_r or matrix

在符号表达式或矩阵中进行符号替换

Syntax

R = subs(S)
R = subs(S, new)
关于Matlabsubs matlab subs函数
R = subs(S, old, new)

Description

R = subs(S) replaces alloccurrences of variables in the symbolic expression_r_r_r Swith values obtained from the calling function, or the MATLABworkspace.

R = subs(S, new) replaces thedefault symbolic variable in S with new.

R = subs(S, old, new) replacesold with new in the symbolic expression_r_r_rS.

old is a symbolic variable or a string representing avariable name. new is a symbolic or numeric variable orexpression_r_r_r. That is, R = subs(S,old,new) uates S at old =new. The substitution is first attempted as a MATLABexpression_r_r_r resulting in the computation being done in doubleprecision arithmetic if all the values in new are doubleprecision. Convert the new values to sym toensure symbolic or variable precision arithmetic.

If old and new are vectors or cell arrays ofthe same size and type, each element of old is replaced bythe corresponding element of new. If S andold are scalars and new is an array or cellarray, the scalars are expanded to produce an array result. Ifnew is a cell array of numeric matrices, the substitutionsare performed elementwise (i.e., subs(x*y,{x,y},{A,B}) returns A.*B whenA and B are numeric).

If subs(s,old,new) does notchange s, subs(s,new,old)is tried. This provides backwards compatibility with previousversions and eliminates the need to remember the order of thearguments. subs(s,old,new,0) doesnot switch the arguments if s does not change.

R = subs(S)用由调用函数或Matlab工作空间中获取的值替代了在符号表达式S中的所有当前的变量。

R = subs(S, new)利用new的值代替符号表达式S中的默认符号。

R = subs(S, old,new) 利用new的值代替符号表达式中old的值,old为符号变量或是字符串变量名。new是一个符号货数值变量或表达式。也就是说R= subs(S,old,new)在old=new的条件下重新计算了表达式S。这种替换第一次作为Matlab表达式被尝试,如果所有在new中的数值是双精度的,计算是以双精度算术运算进行的。讲new值转化为符号可以验证符号货变量的运算精度。

如果old和new是大小和类型相同的向量或是元包数组,每一个old的元素都将被相应新的元素替换。

如果S和old是标量,new是数组或元包数组,则扩展标量去计算一个数组结果。

如果new是个数值矩阵元包数组,替换讲运行为/智能元素/(i.e.,subs(x*y,{x,y},{A,B}) returns A.*B whenA and B are numeric)。

如果subs(s,old,new) 没有改变S,则将会试行subs(s,new,old)。这将为前面的版本提供向前的兼容性,消除记忆参数顺序。subs(s,old,new,0)不改变参数,如果S没有改变。

一个较为综合的例子:http://blog.sina.com.cn/s/blog_4b94ff130100ge7n.html

Examples

Single Input

Suppose a = 980 and C2 = 3 exist in theworkspace.

The statement

y = dsolve('Dy = -a*y')

produces

y =C2/exp(a*t)

Then the statements

a = 980; C2 = 3; subs(y)

produce

ans =3/exp(980*t)

Single Substitution

syms a b;subs(a + b, a, 4)

returns

ans =b + 4

Multiple Substitutions

syms a b;subs(cos(a) + sin(b), {a, b}, {sym('alpha'), 2})

returns

ans =sin(2) + cos(alpha)

Scalar Expansion Case

syms t;subs(exp(a*t), 'a', -magic(2))

returns

ans =[   1/exp(t--), 1/exp(3*t)][ 1/exp(4*t), 1/exp(2*t)]

Multiple Scalar Expansion

syms x y;subs(x*y, {x, y}, {[0 1; -1 0], [1 -1; -2 1]})

returns

ans =     0    -1     2     0

  

爱华网本文地址 » http://www.413yy.cn/a/25101016/305105.html

更多阅读

MATLAB 各种 对数函数 用法以及实例 matlab 对数函数

MATLAB 各种 对数函数 用法以及实例——简介在MATLAB运算当中,我们常常需要求对数,在编写M文件的过程中,我们也需要表示对数,下面我就通过一些示例介绍一下如何在MATLAB中求对数。MATLAB 各种 对数函数 用法以及实例——工具/原料MATLA

matlab中如何定义函数 matlab输入函数表达式

matlab中如何定义函数——简介许多时候希望将特定的代码(算法)书写成函数的形式,提高代码的可封装性与重复性,简化代码设计,提高执行效率!下面简单介绍一下matlab中的函数定义与使用。matlab中如何定义函数——工具/原料matlab 7.0及以上

matlab中同一文件定义子函数的方法 matlab定义函数的方法

matlab中同一文件定义子函数的方法有时子函数可能很短,就几行,可能希望将多个函数定义放在同一个.m文件中,这里就存在一个子函数的定义问题。在matlab中一个.m文件中可以有多个的子函数,但仅能有一个主函数,并且M文件名必须和主函数相同

声明:《关于Matlabsubs matlab subs函数》为网友岁月不饶人分享!如侵犯到您的合法权益请联系我们删除