Finding coefficients and constant for multivariable linear equation.

2 次查看(过去 30 天)
Hello
I want to find the coefficients and constant for the equation: A*x_1 + B*x_2 + C*x_3 + D*x_4 + E = 0, using 4 given points that satisfies the equation.
How do you do this in Matlab? I tried using regress and only got the trivial solution A=B=C=D=E=0.
Thanks in advance!

采纳的回答

Shashank Prasanna
Shashank Prasanna 2013-4-26
Shelley, to find a non-trivial solution you have to find the null space of your data matrix.
You data matrix with a column of ones (for the intercept term E):
>> M = [[1,1,1,1; 2,3,2,2; 4,5,4,6; 0,1,3,4],[1;1;1;1]]
M =
1 1 1 1 1
2 3 2 2 1
4 5 4 6 1
0 1 3 4 1
Regress will give you the trivial solution that is zeros. Since M above is rank deficient there are a family of solutions. The non-trivial solution would be the null space which you can compute as follows:
>> null(M)
ans =
-0.3536
0.3536
-0.7071
0.3536
0.3536

更多回答(1 个)

bym
bym 2013-4-25
You don't have enough points. 4 points < 5 unknowns
  1 个评论
Shelley
Shelley 2013-4-26
Okay I see. Then there must be some kind of constraint for the equation that makes it possible to find a uniqe solution. The points are: (1,1,1,1), (2,3,2,2), (4,5,4,6), (0,1,3,4) and the equation is for an affine space in R^4.
Anybody knows how to solve this?

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Mathematics 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by