作者fyq (推销员)
看板MATLAB
标题【问题】解矩阵但解须符合特定条件
时间Tue Jul 1 23:47:43 2014
各位好,
小弟有一个问题困扰许久
现在有一个连续方程组
S1X1+S2X2+error=S
T1X1+T2X2+error=T
PV1X1+PV2X2+error=PV
X1+X2+error=1
这是我拿来解水团成分的
其中S1 S2 T1 T2 PV1 PV2 和S T PV都是已知数
要解出X1 X2,
分别表示1水团和2水团分别在我的实际观测数据之中占了多少百分比。
所以我就写成
A=[S1 S2 1;T1 T2 1; PV1 PV2 1; 1 1 1];
U=[S; T; PV; 1];
A/U之後就是X1 X2 和error了
但是
这边我遇到一个问题
这样解出来的X1和X2有可能超过1或者是负值
而这是不可能在现实世界发生的
请问
该如何设入条件让0<X1<1 以及 0<X2<1呢?
谢谢大家的帮忙!!!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 124.8.84.220
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/MATLAB/M.1404229666.A.49A.html
1F:推 jack10313:关键字 Non-negative matrix factorization 07/02 00:11
2F:→ fyq:J<大,我查了你说的关键字,看完还是不知道如何使用... 07/02 15:11
3F:→ fyq:可以请您多说明一点吗? 07/02 15:11
4F:推 jack10313:没有办法 这属於硕班的能力 要自己研究才行 07/02 22:59
5F:→ fyq:好的,谢谢J大! 07/03 10:01
6F:→ fyq:不过後来想了一个方法,就是将姐出来的解normalize 07/03 10:02
7F:→ fyq:一样可以得到0<=X<=1的解答 07/03 10:02
8F:→ fyq:J大提供的程式码我会在自己研究,谢谢! 07/03 10:03
9F:推 kurt28:满好奇normalize得到的结果为何会跟另外加入constraint一样 07/03 16:57