如何求解这种特殊的线性方程组



我一直在解决线性方程组以获得x。

是这样的;

A* ([4;0] + X*([4; 3] - [4;0])) = B

给定A = [-1 0; 0 -1; 1 1]B = [0; 0; 5]

我期望的解是一个最大的X可能是1/3的解。换句话说,X是一个满足条件的标量。

如果你有符号工具箱,你可以这样做:

A = [-1 0; 0 -1; 1 1];
B = [0;0;5];
syms X positive;
test = A*([4;0] + X*([4; 3] - [4;0]))-B;
solve(test<0,X);

这将给你一个范围(0,1/3),其中test<0为真。或者在这种情况下,你可以直接解test(3)==0来得到确切的答案。

否则,您可以编写一个函数来评估是否满足您的条件:

F = @(X)all(A*([4;0]+X*([4;3]-[4;0]))<B)

然后编写一些代码,手动计算不同X的F(X),直到您得到X的最大值的某个阈值

相关内容

  • 没有找到相关文章

最新更新