我有什么:将矢量传递给另一个矢量?
syms X Y
funcF = [ (X.^2 + Y.^2 + X -4), (Y*cos(X) + X*Y.^3 - 1) ]
z0 = [0.5, 2]
说我想传递给z0
,我不知道如何做到这一点。 (我的MATLAB的知识是不是最大的)
所以我目前正试图:
funcF = funcF(z0)
从本质上讲,我希望它打印的是这样的:
[#1 #2]
我有什么:将矢量传递给另一个矢量?
syms X Y
funcF = [ (X.^2 + Y.^2 + X -4), (Y*cos(X) + X*Y.^3 - 1) ]
z0 = [0.5, 2]
说我想传递给z0
,我不知道如何做到这一点。 (我的MATLAB的知识是不是最大的)
所以我目前正试图:
funcF = funcF(z0)
从本质上讲,我希望它打印的是这样的:
[#1 #2]
因为那表情是象征性的,你需要使用subs
。 subs
用你想要的任何东西代替符号变量......并且包括数字。另外,因为这是一个象征性的表达(谢谢纳赛尔),所以不需要逐点运营商(即.^
)。您可以删除这些并使用常规标量运算符。
因此,要替换X
和Y
在相应的值表达式中z0
:
>> syms X Y;
>> funcF = [ (X^2 + Y^2 + X -4), (Y*cos(X) + X*Y^3 - 1) ];
>> out = subs(funcF, {'X','Y'}, z0)
out =
[ 3/4, 2*cos(1/2) + 3]
啊好吧,试试这个,谢谢! – user2925439 2015-04-03 19:16:39
的“。”不需要,因为这些是syms而不是数字。其实我不认为这个“。”甚至在数值向量中支持syms。它在上面的工作,因为它似乎只是被忽略。但它不是必需的。 – Nasser 2015-04-03 19:17:09
@Nasser - 我只是复制并粘贴了OP在他/她的陈述中的内容,但你是对的。 – rayryeng 2015-04-03 19:23:23
不明白downvotes。 OP已经清楚地显示了他/她所尝试的以及困难在哪里。 – rayryeng 2015-04-03 19:05:59