Solving Matrix Equations with Multiple Variable Vectors

5 次查看(过去 30 天)
I have an equation: S = QE
where Q is a 3x3 matrix with known constants,
S and E are both 3 element vectors. S has a single variable and E has 2 variables.
I want to solve for the 3 variables. This is what I tried:
E1 = 140e9; % [Pa]
E2 = 10e9; % [Pa]
G12 = 7e9; % [Pa]
V12 = 0.3;
V21 = V12;
syms tau Exx Eyy
S = [tau + 5e6;... % S11
-tau + 5e6;... % S22
-5e6]; % S12
Q = [E1/(1-V12*V21) V12*E2/(1-V12*V21) 0;... % All known values
V12*E2/(1-V12*V21) E2/(1-V12*V21) 0;...
0 0 0];
E = [Exx/2 + Eyy/2;...
Exx/2 + Eyy/2;...
Exx - Eyy];
solve(S == Q*E);
But it comes up empty. I've done this same process with a set of equations, but never in matrix form. I could, of course, expand this out by hand and input the seperate equations, but I'd rather not have to do that because I'd like to be able to turn this into a function. I'm pretty sure linsolve() won't work since the variable are not spread between 2 vectors. Not sure what else to try.
Any suggestions are appreciated, thanks.
  10 个评论

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Symbolic Math Toolbox 的更多信息

标签

产品


版本

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by