Matlab 向循环中的匿名函数添加输出

Matlab 向循环中的匿名函数添加输出,matlab,Matlab,我有一个包含在匿名方程中的方程组。我不想在创建函数时定义所有方程,而是想在for循环的每个步骤中添加一个。这可能吗?我想如果你有一组线性方程组,你可以用矩阵来构造它,然后你可以通过向矩阵和/或其伴随的右侧向量添加行和列来自由地包含新的操作 如果你真的想使用匿名函数,比如说如果你的函数是非线性的,那么我建议你研究一下。比如说, A = cell(3,1); % Preallocate a 3 by 1 cell array for ii = 1:3 A{ii} = @(x)

我有一个包含在匿名方程中的方程组。我不想在创建函数时定义所有方程,而是想在for循环的每个步骤中添加一个。这可能吗?

我想如果你有一组线性方程组,你可以用矩阵来构造它,然后你可以通过向矩阵和/或其伴随的右侧向量添加行和列来自由地包含新的操作

如果你真的想使用匿名函数,比如说如果你的函数是非线性的,那么我建议你研究一下。比如说,

A = cell(3,1);          % Preallocate a 3 by 1 cell array
for ii = 1:3
  A{ii} = @(x) x^2+ii;  % Fill up the array with anonymous functions
end
现在,如果您检查单元格数组“A”中包含的内容

A = @(x)x^2+ii
    @(x)x^2+ii
    @(x)x^2+ii
不要担心“ii”的显示,而不是我们前面给出的循环变量的实际数量,MATLAB已经在内部用这些值替换了它们。更改当前函数范围中的“ii”也不会影响它们在“A”中的值。

因此,

A{1}(2)=5
A{2}(2)=6
A{3}(2)=7

如果您不熟悉单元阵列,可以了解它的用法


同样,你想要达到的目标可能会有所不同。我希望这对你有用。

我想如果你有一组线性方程组,你可以使用矩阵来构造它,然后你可以通过向矩阵和/或其伴随的右侧向量添加行和列来自由地包含新的操作

如果你真的想使用匿名函数,比如说如果你的函数是非线性的,那么我建议你研究一下。比如说,

A = cell(3,1);          % Preallocate a 3 by 1 cell array
for ii = 1:3
  A{ii} = @(x) x^2+ii;  % Fill up the array with anonymous functions
end
现在,如果您检查单元格数组“A”中包含的内容

A = @(x)x^2+ii
    @(x)x^2+ii
    @(x)x^2+ii
不要担心“ii”的显示,而不是我们前面给出的循环变量的实际数量,MATLAB已经在内部用这些值替换了它们。更改当前函数范围中的“ii”也不会影响它们在“A”中的值。

因此,

A{1}(2)=5
A{2}(2)=6
A{3}(2)=7

如果您不熟悉单元阵列,可以了解它的用法


同样,你想要达到的目标可能会有所不同。我希望这对您有用。

您是指匿名函数吗?你说的“包含在匿名方程中的方程组”是什么意思?你能提供你当前的代码让我们看看你想做什么吗?你说的是匿名函数吗?你说的“包含在匿名方程中的方程组”是什么意思?你能提供你当前的代码让我们看看你想做什么吗?