Function 符号函数系统的输入向量
假设我写了一个包含3个可分离函数的函数(方程组)。 我想为变量的3个不同值计算这个函数的值,但我不想使用“subs”函数。我想做的是输入一个包含我的变量所需值的向量,然后计算主函数,它是一个向量。我怎么能那样做?。请注意,我不想通过每个变量调用函数。这是我的密码:Function 符号函数系统的输入向量,function,matlab,system,equation,Function,Matlab,System,Equation,假设我写了一个包含3个可分离函数的函数(方程组)。 我想为变量的3个不同值计算这个函数的值,但我不想使用“subs”函数。我想做的是输入一个包含我的变量所需值的向量,然后计算主函数,它是一个向量。我怎么能那样做?。请注意,我不想通过每个变量调用函数。这是我的密码: syms x y z f1 = symfun(x.^2+3.*x.*y,[x,y,z]); f2 = symfun(z.^3+y-x.^3-12,[x,y,z]); f3 = symfun(2*z+x.*y+z.*x+1,[x,y,z
syms x y z
f1 = symfun(x.^2+3.*x.*y,[x,y,z]);
f2 = symfun(z.^3+y-x.^3-12,[x,y,z]);
f3 = symfun(2*z+x.*y+z.*x+1,[x,y,z]);
f = [f1;f2;f3];
我的意思是通过计算
f
函数,例如:f([12 4 6])
不是通过f(12 4 5)
不是最优雅的,但目前我能想到的最好方法是将它放在函数包装器中。这可能是将输入作为数组传递的一种方法。这将在索引要传递到symfcn
(符号函数)的数组输入之间架起一座桥梁
这不是最优雅的,但目前我能想到的最好的方法是将它放在函数包装器中。这可能是将输入作为数组传递的一种方法。这将在索引要传递到
symfcn
(符号函数)的数组输入之间架起一座桥梁
或内联:g=@(x)f(x(1),x(2),x(3))代码>或内联:g=@(x)f(x(1),x(2),x(3))代码>
f([12 4 6])
function [Results] = f(Inputs)
syms x y z
f1(x,y,z) = x.^2+3.*x.*y;
f2(x,y,z) = z.^3+y-x.^3-12;
f3(x,y,z) = 2*z+x.*y+z.*x+1;
Sym_Functions = [f1;f2;f3];
Results = Sym_Functions(Inputs(1),Inputs(2),Inputs(3));
end