如何在 fsolve 中修复解向量的分量?
How to fix components of solution vector in fsolve?
假设我有一个函数如下:
function f = fun(a,b,c)
f = a + b + c
end
现在我想找到解决方案如下:
function f = find_a(b,c)
f = fsolve(@fun, [0,b,c])
end
但是,我想保持 b
和 c
不变,只找到 a
的解决方案。我怎样才能做到这一点?
您可以创建一个匿名函数,其中一个输入调用 fun
,固定值为 b
和 c
:
function f = find_a(b,c)
f = fsolve(@(a)fun(a,b,c), 0)
end
假设我有一个函数如下:
function f = fun(a,b,c)
f = a + b + c
end
现在我想找到解决方案如下:
function f = find_a(b,c)
f = fsolve(@fun, [0,b,c])
end
但是,我想保持 b
和 c
不变,只找到 a
的解决方案。我怎样才能做到这一点?
您可以创建一个匿名函数,其中一个输入调用 fun
,固定值为 b
和 c
:
function f = find_a(b,c)
f = fsolve(@(a)fun(a,b,c), 0)
end