Matrix inverse for non-square matrix
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I am trying to create a code that solves viscoelastic mechanical behavior problems using the collocation method. In order to do this I need to solve the following;
[A]{D}={B} where is D is the array needing to be solved. Therefore {D}=[A]^-1 {B} where A is a (j x k) matrix and B is a (k x 1) array making the resulting D a (j x 1) array. In my current code j = 11 and k = 1,400,000. I've tried the following codes but the results are not correct;
Dj = pinv(Akj).*Bk;
However, this results in a k x j matrix for D.
and;
Dj = (Akj.^(-1))*Bk;
Which does result in the correct j x 1 array for D, but I do not believe it is given the correct values.
Thank you for your time.
4 comentarios
Christine Tobler
el 15 de Abr. de 2019
I agree with David, probably the best would be to just use backslash.
Also, in your call
pinv(Akj).*Bk
the .* operator does an elementwise multiplication, not a matrix multiplication as you were probably intending.
The inv function errors for non-square matrices, so it should just not work, not give you any wrong results.
Respuestas (0)
Ver también
Categorías
Más información sobre Linear Algebra en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!