Asked by Shelley
on 25 Apr 2013

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!

Answer by Shashank Prasanna
on 26 Apr 2013

Accepted Answer

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

Answer by bym
on 25 Apr 2013

You don't have enough points. 4 points < 5 unknowns

Shelley
on 26 Apr 2013

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?

Sign in to comment.

Opportunities for recent engineering grads.

Apply Today
## 0 Comments

Sign in to comment.