Need help with solving this matrix equation
5 views (last 30 days)
Show older comments
Hello eveyone
Thank you all for being here and spendint time reading this. I have recently been stucked with this matrix equation.
The code is a formula which the "Final" parameter is a 6x6 matrix, where its parameters each contain 6 unknowns defined in syms section.
So overally I have 36 equations and 6 unknowns where 30 equation is probably not necessary and due to its complexity i cannot do it myself.
So i would appreciate if you guys show me solution of how to solve the eqations. solve or fsolve or any other methods in mind.
Thanks in advance.
%% Initials %%
syms c m11 m12 m13 m33 m44
CNB = [0.283810e2 0.217478e2 0.51749e1 0.1672e0 0.1051e0 -0.13248e1; 0.217478e2 0.285360e2 0.54735e1 0.252e-1 -0.2458e0 -0.11378e1; 0.51749e1 0.54735e1 0.5091929e3 0.1461e0 0.532e-1 -0.12607e1; 0.1672e0 0.252e-1 0.1461e0 0.4791e0 0.632e-1 -0.1902e0; 0.1051e0 -0.2458e0 0.532e-1 0.632e-1 0.2931e0 0.532e-1; -0.13248e1 -0.1378e0 -0.12607e1 -0.1902e0 0.532e-1 0.35093e1;];
EP0 = [0.26054e1 0.13450e1 0.15656e1 0.15e-2 -0.1103e0 -0.607e-1; 0.13450e1 0.27312e1 0.14808e1 -0.762e-1 0.1394e0 -0.92e-2; 0.15656e1 0.14808e1 0.29516e1 -0.1478e0 0.2659e0 -0.1484e0; 0.15e-2 -0.762e-1 -0.1478e0 0.10573e1 -0.41e-2 0.1034e0; -0.1103e0 0.1394e0 0.2659e0 -0.41e-2 0.7682e0 0.289e-1; -0.607e-1 -0.92e-2 -0.1484e0 0.1034e0 0.289e-1 0.7299e0;];
CPMD = [0.348547e2 0.26368e1 0.39404e1 0.4049e0 -0.2123e0 -0.9570e0; 0.26368e1 0.258356e2 0.49370e1 0.2765e0 -0.2727e0 -0.1206e0; 0.39404e1 0.49370e1 0.663384e2 -0.369e-1 -0.4342e0 0.1556e0; 0.4049e0 0.2765e0 -0.369e-1 0.1194965e3 -0.282e-1 -0.2629e0; -0.2123e0 -0.2727e0 -0.4342e0 -0.282e-1 0.1198436e3 0.9031e0; -0.9570e0 -0.1206e0 0.1556e0 -0.2629e0 0.9031e0 0.1142415e3;];
nu = 0.395e0;
s1111 = (5-4*nu)/(8*(1-nu)); s2222 = (5-4*nu)/(8*(1-nu)); s3333 = 0; s3311 = 0; s3322 = 0; s2323 = 0.5; s3131 = 0.5;
s2211 = (-1+4*nu)/(8*(1-nu)); s1122 = (-1+4*nu)/(8*(1-nu)); s2233 = nu/(2*(1-nu)); s1133 = nu/(2*(1-nu)); s1212 = (3-4*nu)/(4*(1-nu));
S = [s1111 s1122 s1133 0 0 0; s2211 s2222 s2233 0 0 0; s3311 s3322 s3333 0 0 0; 0 0 0 s2323 0 0; 0 0 0 0 s3131 0; 0 0 0 0 0 s1212;];
I6 = eye(6,6);
cm = 0.95-c; cp = 0.05; ci = c;
CI = [m11 m12 m13 0 0 0; m12 m11 m13 0 0 0; m13 m13 m33 0 0 0; 0 0 0 m44 0 0; 0 0 0 0 m44 0; 0 0 0 0 0 ((m11-m12)/2);];
%% Main %%
TP = I6 - S*inv(S+inv(CNB-EP0)*EP0);
eq1 = -(I6 + CI * inv(EP0) + CI * inv(EP0) ^ 2) * inv(EP0) * EP0;
eq2 = eq1 - I6 + S;
eq3 = eq2 ^ 2 + I6 - eq2;
TPI = I6 - S*((cp/(ci+cp))*inv(S+inv(CNB-EP0)*EP0)+eq3);
eq4 = (I6 - (((cp+ci)*(TPI))*inv(cm*I6))+(((cp+ci)*TPI)*inv(cm*I6))^2)*inv((cm*I6));
Final = EP0 - CPMD + ((cp*(CNB-CI)*TP)+((cp+ci)*(CI-EP0)*TPI))*eq4;
8 Comments
Walter Roberson
on 14 Sep 2020
I am running a custom minimizer that I developed that does a lot of grid searching. The values above were based on one iteration when the bounds were all set at +/- 100. I am running again with +/-600 bounds, but it will take several hours.
Answers (0)
See Also
Categories
Find more on Linear Algebra in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!