Warning: Matrix is singular to working precision

1 vue (au cours des 30 derniers jours)
oun alsharif
oun alsharif le 14 Nov 2021
Modifié(e) : Chunru le 14 Nov 2021
a=[1, 0, 0, 0, -0.25, 0; 0, 1, 0, -0.25, 0, -0.25; 1, 0, 0, 0, -0.25, 0; 0, -0.25 0, 1, 0, 0; -0.25, 0, -0.25, 0, 1, 0; 0,-0.25, 0, 0, 0, 1];
b=[6.25,4.45,6.8,5.5,3.87,6.45];
c=b/a;
Warning: Matrix is singular to working precision.
i dont know why?

Réponses (1)

Chunru
Chunru le 14 Nov 2021
Modifié(e) : Chunru le 14 Nov 2021
Make sure your matrix "a" is full rank (rank(a) should be 6 instead of 5).
a=[1, 0, 0, 0, -0.25, 0; 0, 1, 0, -0.25, 0, -0.25; 1, 0, 0, 0, -0.25, 0; 0, -0.25 0, 1, 0, 0; -0.25, 0, -0.25, 0, 1, 0; 0,-0.25, 0, 0, 0, 1]
a = 6×6
1.0000 0 0 0 -0.2500 0 0 1.0000 0 -0.2500 0 -0.2500 1.0000 0 0 0 -0.2500 0 0 -0.2500 0 1.0000 0 0 -0.2500 0 -0.2500 0 1.0000 0 0 -0.2500 0 0 0 1.0000
rank(a)
ans = 5
b=[6.25,4.45,6.8,5.5,3.87,6.45]
b = 1×6
6.2500 4.4500 6.8000 5.5000 3.8700 6.4500
c=b/a;
Warning: Matrix is singular to working precision.
  1 commentaire
Walter Roberson
Walter Roberson le 14 Nov 2021
The important point here is the fact that a has rank 5, so the matrix is singular.
Notice that your first and third row are the same. Any matrix which has identical rows will be singular .

Connectez-vous pour commenter.

Catégories

En savoir plus sur Multidimensional Arrays dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by