function - 函数符号系统的输入向量
问题描述
假设我编写了一个包含 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]);
f = [f1;f2;f3];
我的意思是f
通过例如计算函数:f([12 4 6])
而不是通过f(12 4 5)
解决方案
不是最优雅的,但我现在能想到的最好的就是把它放在一个函数包装器中。这可能是将输入作为数组传递的一种方法。这将弥合索引要传递给symfcn
(符号函数)的数组输入之间的差距。
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
推荐阅读
- python - 有条件地创建一个等于熊猫单元格中的值的列
- python - 分析字符串输入,直到它到达python中的某个元素
- c# - 在 C# 中具有相同类名的不同 HTML 节点
- node.js - Mongoose updateMany() 在嵌套模型中不起作用
- android - 如何在应用程序之外复制 Google Pay 流程?
- javascript - 颜色特定文本
- google-apps-script - 我可以使用谷歌应用脚本为谷歌工作表中的一张工作表创建密码吗?
- c# - IVI-COM Driver C# 如何在调用 Initialize 方法之前更改串口配置?
- firebird - 如何使用 Firebird 触发器从表中获取值
- javascript - 当我滑动输入范围滑块时,flexbox 中的表单元素不固定