Matlab求解具有量化变量的方程组

时间:2012-03-13 07:28:27

标签: matlab equation-solving

我正在尝试使用solve()来解决以下形式的方程组

eq1=a1x+a2y;
eq2=b1x+b2y;

其中a1 = .05表示值x<5,。1表示值为5

有没有办法解决这个问题?与sol = solve(eq1,eq2);

中一样

1 个答案:

答案 0 :(得分:1)

我不确定你在这里要做什么。你能发一个真实的例子(带数字)和你想要的输出吗?


我认为你正试图解决线性同步方程。假设这是你要做的事情:

我建议将所有等式乘以20,以使0.05的最小量子大小变为1.00。那么你的问题就变成了整数值线性方程的解。

请注意,如果系统受到完全约束(即,如果 n n 方程式上有 n 独立约束),那么只有一个解决方案,它可能不一定是整数解决方案。例如系统:

1 = 2a + 4b
3 =  a +  b

有解决方案a = 5.5b = -2.5。没有其他解决方案可行。

对于受限制不足的系统,即

0 = 3x + y
x > 0

然后会有无数个解决方案,其中一些可能同时xy都是整数值。 (或者可能根本没有整数解决方案。)