How to obtain matrix components

5 vues (au cours des 30 derniers jours)
Ali Tawfik
Ali Tawfik le 4 Fév 2019
Commenté : Star Strider le 5 Fév 2019
Hi All,
I am new to Matlab, and I'd like to obtain the following values: EL,VLT,VTL, and GLT from
x=[Q11 Q12 0;
Q12 Q22 0;
0 0 Q66]
the x is given equal to: =[20 0.7 0;
0.7 2 0;
0 0 0.7];
I have been trying with solve as indicated below, however, 0*1 sym is the result of each component: also maybe I should try to use subs, function but nothing working unfortunely
clear all;
clc;
close all;
syms EL vlt vtl ET GLT;
y=[EL/1-vlt*vtl vlt*ET/1-vlt*vtl 0;vlt*ET/1-vlt*vtl ET/1-vlt*vtl 0;0 0 GLT]==[20 0.7 0;0.7 2 0;0 0 0.7];
z= solve(y,EL,vlt,vtl,ET,GLT);

Réponse acceptée

Star Strider
Star Strider le 4 Fév 2019
You need to enclose the variables you are solving for in square brackets:
[EL,vlt,vtl,ET,GLT] = solve(y,[EL,vlt,vtl,ET,GLT]);
returning:
EL =
19
vlt =
-3/10
vtl =
10/3
ET =
1
GLT =
7/10
As desired.

Plus de réponses (1)

Ali Tawfik
Ali Tawfik le 5 Fév 2019
Hi Star, it's working, but I am not sure if the answer is correct releavant to the equations. But anyway thank you very much for your help!
  1 commentaire
Star Strider
Star Strider le 5 Fév 2019
As always, my pleasure!

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by