F=Kff*uf - Matrix operation
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Greetings everyone, I am trying to do some simple matrix operation in Matlab.
I have equation: Ff=Kff*Uf where Ff is 3x1 matrix, Kff is 3x3 matrix and Uf is 3x1 matrix. As in the following picture.
How can I solve this to find U1,U2,U3 in matlab?
When I attempt solving this with matlab I get number of errors such as: (Error using / ).
Any help would be much appreciated. Thank you.
clc
clear
F = [383.02;
321.39;
0;];
Kff = [634.8 -191.2 -353.6;
-191.2 447.3 353.6;
-353.6 353.6 683;];
%%Uf = F./Kff
0 commentaires
Réponse acceptée
Rik
le 11 Mai 2021
You were almost there:
F = [383.02;
321.39;
0;];
Kff = [634.8 -191.2 -353.6;
-191.2 447.3 353.6;
-353.6 353.6 683;];
Uf=Kff\F
fprintf('%.5f\n',F-Kff*Uf)%check if they are indeed equal (within a rouding error)
0 commentaires
Plus de réponses (1)
EmirBeg
le 11 Mai 2021
Maybe like this?
F = [383.02;
321.39;
0;];
Kff = 10^2* [634.8 -191.2 -353.6;
-191.2 447.3 353.6;
-353.6 353.6 683];
Uf = F'/Kff; % You used a dot but u need to use ' to transpose
1 commentaire
Rik
le 11 Mai 2021
Almost. You would have to transpose the result again to make sure Uf is a column vector.
F = [383.02;321.39;0];
Kff = 10^2* [634.8 -191.2 -353.6;-191.2 447.3 353.6;-353.6 353.6 683];
Uf = (F.'/Kff).'
fprintf('%.5f\n',F-Kff*Uf)%check if they are indeed equal (within a rouding error)
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!