复合材料作业7-2

复合材料作业7-2_第1张图片

具体计算代码如下:

%时间:2013年12月27日

clear all
close all
clc

global E1 v12 E2 v21 G12 Q11 Q12 Q22 Q66 alpha1 alpha2 T0 T
global Xt Xc Yt Yc S
pi=3.141592653;
E1=6.0e4;%1方向的弹性模量
E2=2.0e4;%2方向的弹性模量
v21=0.25;%泊松比
v12=v21*E2/E1;%泊松比
G12=1.0e4;%剪切模量
alpha1=6.0e-6;%1方向的热膨胀系数
alpha2=20e-6;%2方向的热膨胀系数
T0=120.0;%固化温度
T=20.0;%工作温度

Xt=1e3;Xc=Xt;
Yt=50;Yc=150;
S=50;

Q11=E1/(1-v12*v21);
Q12=v21*E2/(1-v12*v21);
Q22=E2/(1-v12*v21);
Q66=G12;
Q=[Q11 Q12 0;Q12 Q22 0;0 0 Q66]%大Q是原始的Qij


%#############################################
theta=pi/4.0;%theta,即层合板的铺设角度,习题7-2中为+45°/-45°

%计算在铺设角度下的大Q矩阵,这里的Q变为Q‘以区别于原始的Q矩阵
%这里设两种角度下应力的转换矩阵为TransP,TransN
x=cos(theta);y=sin(theta);
%这里的计算公式来自于书第52页
q11=Q11*(x^4)+2*(Q12+2*Q66)*(x^2)*(y^2)+Q22*(y^4);
q12=(Q11+Q22-4*Q66)*(y^2)*(x^2)+Q12*(y^4+x^4);
q22=Q11*(y^4)+2*(Q12+2*Q66)*(y^2)*(x^2)+Q22*(x^4);
q16=(Q11-Q12-2*Q66)*y*(x^3)+(Q12-Q22+2*Q66)*(y^3)*x;
q26=(Q11-Q12-2*Q66)*(y^3)*x+(Q12-Q22+2*Q66)*y*(x^3);
q66=(Q11+Q22-2*Q12-2*Q66)*(y^2)*(x^2)+Q66*(y^4+x^4);

q1=[q11 q12 q16;q12 q22 q26;q16 q26 q66]%注意这里的q66对应着矩阵的(3,3),容易错!
%q1代表+45°铺设的矩阵

%x,y自然坐标下的热膨胀系数
%alphap:alpha_positive,p表示正的意思,即计算的+45°铺设的系数
%同理,-45°用alphan_来表示,n:negative
alphap_x=alpha1*(x^2)+alpha2*(y^2);
alphap_y=alpha1*(y^2)+alpha2*(x^2);
alphap_xy=(alpha1-alpha2)*2*x*y;

alphap=[alphap_x alphap_y alphap_xy]';

%TransP:+45°下自然坐标系的应力和主方向应力的转换矩阵
TransP=[x^2 y^2 -2*x*y;y^2 x^2 2*x*y;x*y -x*y x^2-y^2];
%#################################################################


%################################################
%计算-45°铺设的各项系数和矩阵
o=-pi/4.0;
x=cos(o);y=sin(o);
q11=Q11*(x^4)+2*(Q12+2*Q66)*(x^2)*(y^2)+Q22*(y^4);
q12=(Q11+Q22-4*Q66)*(y^2)*(x^2)+Q12*(y^4+x^4);
q22=Q11*(y^4)+2*(Q12+2*Q66)*(y^2)*(x^2)+Q22*(x^4);
q16=(Q11-Q12-2*Q66)*y*(x^3)+(Q12-Q22+2*Q66)*(y^3)*x;
q26=(Q11-Q12-2*Q66)*(y^3)*x+(Q12-Q22+2*Q66)*y*(x^3);
q66=(Q11+Q22-2*Q12-2*Q66)*(y^2)*(x^2)+Q66*(y^4+x^4);

q2=[q11 q12 q16;q12 q22 q26;q16 q26 q66]%-45°铺设的矩阵

alphan_x=alpha1*(x^2)+alpha2*(y^2);
alphan_y=alpha1*(y^2)+alpha2*(x^2);
alphan_xy=(alpha1-alpha2)*2*x*y;

alphan=[alphan_x alphan_y alphan_xy]';

%TransN:-45°下自然坐标系应力与主方向应力的转换矩阵
TransN=[x^2 y^2 -2*x*y;y^2 x^2 2*y*x;x*y -x*y x^2-y^2];
%######################################################


%#####################################################
t1=1;t2=1;%t1,t2分别为两种角度铺设层的厚度,习题7-2中两者一样

A=q1*2.0*t1+q2*2.0*t2;
AA=pinv(A);% A*AA=I-->AA=pinv(A);AA为A的逆矩阵,即课本上的A'
detA=det(A);%因为在Matlab中A'代表转置运算所以用AA来区别
%######################################################


%################################################
%求解Nx,Ny,Nxy,deltT=工作温度(T)-固化温度(T0)
N=q1*alphap*(T-T0)*2*t1+q2*alphan*(T-T0)*2*t2;
Nx=N(1);
Ny=N(2);
Nxy=N(3);

%先计算中面应变 Eps(ε)
Eps=AA*N;
Eps_x=Eps(1);
Eps_y=Eps(2);
Eps_xy=Eps(3);

%再计算Eps0
syms Nxx%Nxx即为极限载荷
Eps0=AA*([Nxx 0 0]')+Eps;
Eps0_x=Eps0(1);
Eps0_y=Eps0(2);
Eps0_xy=Eps0(3);

%求各层应力Sigma,SigmaP表示+45°的应力,SigmaN表示-45°的应力
%计算+45°层的应力
SigmaP=q1*([(Eps0_x-alphap_x*(T-T0)) (Eps0_y-alphap_y*(T-T0)) (Eps0_xy-alphap_xy*(T-T0))]');
SigmaP_x=SigmaP(1);
SigmaP_y=SigmaP(2);
SigmaP_xy=SigmaP(3);
%以上均为自然坐标系下的应力,要利用屈服理论,须将其转换为主方向的应力
%sp1 sp2 sp12为sigma1sigma2 sigma12
sp=pinv(TransP)*([SigmaP_x SigmaP_y SigmaP_xy]');
sp1=sp(1);
sp2=sp(2);
sp12=sp(3);


%计算-45°层的应力
SigmaN=q2*([(Eps0_x-alphan_x*(T-T0)) (Eps0_y-alphan_y*(T-T0)) (Eps0_xy-alphan_xy*(T-T0))]');
SigmaN_x=SigmaN(1);
SigmaN_y=SigmaN(2);
SigmaN_xy=SigmaN(3);
%以上均为自然坐标系下的应力,要利用屈服理论,须将其转换为主方向的应力
sn=pinv(TransN)*([SigmaN_x SigmaN_y SigmaN_xy]');
sn1=sn(1);
sn2=sn(2);
sn12=sn(3);


%利用Hoffman区服理论计算极限载荷Nxx
%对于+45°的区服公式为ExpP
ExpP=(sp1^2)/(Xt*Xc)-(sp1*sp2)/(Xt*Xc)+(sp2^2)/(Yt*Yc)+(Xc-Xt)*sp1/(Xt*Xc)+(Yc-Yt)*sp2/(Yt*Yc)+(sp12^2)/(S^2)-1;
%对于-45°层的屈服公式为ExpN
ExpN=(sn1^2)/(Xt*Xc)-(sn1*sn2)/(Xt*Xc)+(sn2^2)/(Yt*Yc)+(Xc-Xt)*sn1/(Xt*Xc)+(Yc-Yt)*sn2/(Yt*Yc)+(sn12^2)/(S^2)-1;
%对方程进行求解
Nxx_P=solve(ExpP==0,Nxx);
Nxx_N=solve(ExpN==0,Nxx);

Nxx_P=double(Nxx_P);
Nxx_N=double(Nxx_N);
Nxx_P=max(Nxx_P)
Nxx_N=max(Nxx_N)


你可能感兴趣的:(matlab,复合材料,胡更开,大作业)