How to multiply an inverse matrix (nxn) by an array (nx1) using for loop

2 vues (au cours des 30 derniers jours)
Gabriel Sheets
Gabriel Sheets le 8 Fév 2022
Modifié(e) : James Tursa le 8 Fév 2022
I am new to Matlab and am trying to figure out an alternative way to multiply an inverse matrix J (2x2) by some f (2x1) other than using J\f. Here is what I have so far, however when I run it, it says that H is an unrecognized function or variable:
J_inv=inv(J);
for i=1:iter
H(J_inv,f)=J_inv*f;
end
Thanks in advance!

Réponses (1)

James Tursa
James Tursa le 8 Fév 2022
Not sure why you have a for-loop at all. Maybe you can explain this. If you just want to multiply the explicit inverse by a vector, just do it:
J_inv = inv(J);
f = your column vector
H = J_inv * f;
  3 commentaires
Gabriel Sheets
Gabriel Sheets le 8 Fév 2022
It definitely is not the most efficient way but a way nonetheless.
James Tursa
James Tursa le 8 Fév 2022
Modifié(e) : James Tursa le 8 Fév 2022
If you want a loop, then this outline:
m = size(J_inv,1); % number of rows of J_inv
for k=1:m
H(k) = ____; % insert dot product of J_inv k'th row and f vector here
end
I've left a bit of coding for you to do.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Loops and Conditional Statements 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