【问题标题】:Matlab get symbols from matrix to assign valueMatlab从矩阵中获取符号以赋值
【发布时间】:2017-10-25 20:59:25
【问题描述】:

我正在创建一个符号矩阵并使用它们声明一个函数:

x = syms('x', [1 2]);
f = x(1) + x(2)

所以 x 和 f 是:

x = [x1 x2];
f = x1 + x2

现在我想在 for 循环中为 x1x2 赋值并评估 f。但是当我使用时:

x(1) = value;

然后x 变为:

x = [1 x2]

并且x1 丢失了,所以我无法评估f。如何为x1x2、...、xn 赋值,然后评估f

【问题讨论】:

  • 如果有效,请采纳答案

标签: matlab symbols


【解决方案1】:

你应该像下面这样使用subs

subs(f,x1,value)

而不是将x1 的符号替换为一个值。 可以查看函数here的详细信息。

【讨论】:

  • 谢谢。我使用你的建议创建了一个带有 for 循环的函数,每次它通过替换一个值来减少函数。
  • 注意也可以同时替换所有值:subs(f, x, [value1 value2]
猜你喜欢
  • 2012-10-19
  • 2018-07-16
  • 2018-07-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-19
  • 2023-04-10
  • 1970-01-01
相关资源
最近更新 更多