Matlab, operator A/B

88 visualizzazioni (ultimi 30 giorni)
bayertom
bayertom il 14 Nov 2012
The manual is written:
A\B returns a least-squares solution to the system of equations A*x= B.
It means: x = inv (A'*A)*A'*B? However, the matrix A'*A is singular...
Let us suppose to have two row vectors:
A=[1 2 3]
B=[6 7 6]
A\B
[0 0 0;
0 0 0;
2.0000 2.3333 2.0000]
If ve use MLS:
C = inv (A'*A) singular matrix
C = pinv(A'*A)
[0.0051 0.0102 0.0153
0.0102 0.0204 0.0306
0.0153 0.0306 0.0459]
And
D= C*A'*B
[0.4286 0.5000 0.4286
0.8571 1.0000 0.8571
1.2857 1.5000 1.2857]
So results A\B and inv (A'*A)*A'*B are different... Could anybody wrote me a sequence of Matlab commands in the backgeound of A/B operation in this case?
  1 Commento
Matt J
Matt J il 14 Nov 2012
I think you really meant so say that pinv(A'*A)*A'*B and A\B are different. When A is singular inv (A'*A)*A'*B is undefined.

Accedi per commentare.

Risposta accettata

Matt J
Matt J il 14 Nov 2012
When A is singular there are infinite least squares solutions to A*X=B and A\B will pick just one of them, while pinv(A)*B picks another.
A/B is equivalent to (B'\A')'

Più risposte (0)

Categorie

Scopri di più su Linear Algebra in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by