How do you plot values from a cell array?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
% Clearing EVERYTHING
clear all
close all
clc
%Variables
Em = 2.4 ; % Em = Youngs modulus of the matrix [GPa]
vm = 0.34; % Poisson's Ratio matrix
Ef = 76; % Ef = Youngs modulus of the fiber [GPa]
vf = 0.22; % Poisson's Ratio fiber
Vm = 0.4; % Marix Volume fraction
Vf = 0.6; % Fiber Volume fraction
Angle = -90:1:90; %Angle of the force in Deg => Rad
force = [0.150 0 0]'; %[xx yy xy]---[GPa]
tv = 0.13; %Length [m]
%Shear moduli
Gm = Em/(2*(1+vm)); %matrix
Gf = Ef/(2*(1+vf)); %fiber
%Bulk modui
Km = Em/(3*(1-2*vm));
Kf = Ef/(3*(1-2*vf));
%Moduli referred to lamina axes
E1 = Em*Vm+ (Ef*Vf);
%passions ratio
top = (vf-vm)*(1/Km - 1/Kf)*(Vm*Vf);
bottom = Vm/Kf + Vf/Km + 1/Gm;
v12 = (vm*Vm)+ (vf*Vf) + (top/bottom);
%Shear modulus
G12 = Gm + ((Vf)/((1/(Gf -Gm))+(Vm/(2*Gm))));
%bulk modulus
K_star = Km + (Vf/((1/(Kf - Km)) + (Vm/(Km +Gm))));
%{
************Key*********
B - beta
y - Gama
a - alpha
p - Rho
%}
%Variables required for G23 calculations
Bm = 1/(3-(4*vm));
Bf = 1/(3-(4*vf));
y = Gf/Gm;
a = (Bm - (y*Bf))/(1 + (y*Bf));
p = (y +Bm)/(y-1);
%Shear modulus G23
if (Gf > Gm && Kf>Km)
top = (1+Bm)*Vf;
bottom = p -((1+ (3 * (Bm^2) * (Vm^2))/((a * (Vf^3) + 1))))*Vf;
G23 = Gm*(1+ (top/bottom));
elseif (Gf < Gm && Kf < Km)
top = (1+Bm)*Vf;
bottom = p -((1+ (3 * (Bm^2) * (Vm^2))/((a * (Vf^3) + Bm))))*Vf;
G23 = Gm*(1+ (top/bottom));
end
%Elasticity
E2 = 4/ ((1/G23)+(1/K_star)+((4*v12^2)/E1));
%Calcuations
Z = (E1-((v12^2)*E2))/E1;
Q11= E1/Z;
Q22 = E2/Z;
Q12 = (v12*E2)/Z;
Q66 = G12;
Q_matrix = [Q11 Q12 0;
Q12 Q22 0;
0 0 Q66];
anglev = (-90:1:90)*pi/180; % Angle Vector
for k1 = 1:length(anglev)
angle{k1} = anglev(k1); % Angle
m{k1} = cos(angle{k1});
n{k1} = sin(angle{k1});
Stress_matrix_1{k1}= [m{k1}^2 n{k1}^2 -2*m{k1}*n{k1};
n{k1}^2 m{k1}^2 2*m{k1}*n{k1};
m{k1}*n{k1} -m{k1}*n{k1} m{k1}^2-n{k1}^2];
Strain_matrix_1{k1} = [ m{k1}^2 n{k1}^2 -m{k1}*n{k1};
n{k1}^2 m{k1}^2 m{k1}*n{k1};
2*m{k1}*n{k1} -2*m{k1}*n{k1} m{k1}^2-n{k1}^2];
Q_bar{k1} = (Stress_matrix_1{k1})*(Q_matrix)*inv(Strain_matrix_1{k1});
S_bar{k1} = inv(Q_bar{k1});
strain{k1} = S_bar{k1}*force;
strain_xx{k1} = strain{k1}(1,1);
% z = cell2mat(strain_xx{k1});
% hold on ;
%plot (Angle, strain_xx{k1}); hold on;
%grid on;
%mesh(Angle, strain_xx{k1})
end
At the end of this piece of code I want to plot strain_xx but I can't because it is a cell array can anyone help?
0 Kommentare
Antworten (1)
Siehe auch
Kategorien
Mehr zu Resizing and Reshaping Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!