Sunteți pe pagina 1din 8

clc

clear all
close all
%% Material Properties ---------------------------------------------------H=1;
%Height [in]
L=4;
%Length [in]
E=3000;
%Elastic modulus [ksi]
nu=0.2;
%poissons ratio
D=E/(1-nu^2)*...
[1 nu
0;
nu
1
0;
0
0
(1-nu)/2];

%Hookes law plane stress

Ex=[0 4 4 0];
Ey=[0 0 1 1];
Edof=[1 1 2 3 4 7 8 5 6];

%Element X coordinate
%Element Y coordinate
%Element DOF

X1(1)=Ex(1);
X1(2)=Ey(1);
X2(1)=Ex(2);
X2(2)=Ey(2);
X3(1)=Ex(3);
X3(2)=Ey(3);
X4(1)=Ex(4);
X4(2)=Ey(4);
%% 2x2 gauss point integration
% Isoparametric
xi=[-1/sqrt(3) 1/sqrt(3)];
eta=[-1/sqrt(3) 1/sqrt(3)];
w_xi=[1 1];
w_eta=[1 1];

%Weight function
%Weight function

K_iso=zeros(8,8);

%Isoparametric Stiff. Mtrx

for i=1:2
for j=1:2

XX=[X1(1) X1(2);X2(1) X2(2);X3(1) X3(2);X4(1) X4(2)];


DN_Dxi=0.25.*[-(1-eta(j)) (1-eta(j)) (1+eta(j)) -(1+eta(j));
-(1-xi(i)) -(1+xi(i))
(1+xi(i)) (1-xi(i))];
J=DN_Dxi*XX;
DN_Dx=(J\DN_Dxi);
area=det(J);
B=[DN_Dx(1,1) 0 DN_Dx(1,2) 0 DN_Dx(1,3) 0 DN_Dx(1,4) 0;
0 DN_Dx(2,1) 0 DN_Dx(2,2) 0 DN_Dx(2,3) 0 DN_Dx(2,4);
DN_Dx(2,1) DN_Dx(1,1) DN_Dx(2,2) DN_Dx(1,2)...
DN_Dx(2,3) DN_Dx(1,3) DN_Dx(2,4) DN_Dx(1,4)];
K_iso=K_iso+B*D*B*w_xi(i)*w_eta(j)*det(J);
end
end
%% 2x2 gauss point integration
% Polynomial expansion
x_i=[-1/sqrt(3) 1/sqrt(3)];
y_i=[-1/sqrt(3) 1/sqrt(3)];
X=[L/2*x_i(1)+L/2 L/2*x_i(2)+L/2];
Y=[H/2*y_i(1)+H/2 H/2*y_i(2)+H/2];
w_x=[1 1];
w_y=[1 1];
K=zeros(8,8);
for i=1:2
for j=1:2
B_m=(1/4).*[Y(j)-X4(2) 0 X3(2)-Y(j)...
0 Y(j)-X2(2) 0 X1(2)-Y(j) 0;
0 X(i)-X2(1) 0 X1(1)-X(i) 0 X(i)-X4(1) 0 X3(1)-X(i);
X(i)-X2(1) Y(j)-X4(2) X1(1)-X(i) X3(2)-Y(j)...
X(i)-X4(1) Y(j)-X2(2) X3(1)-X(i) X1(2)-Y(j)];
K=K+B_m*D*B_m*w_x(i)*w_y(j)*H*L/4;
end
end
2

%% Check and compare


[CSS_K_iso,RBM_K_iso]=eig(K_iso);
[CSS_K,RBM_K]=eig(K);

%Eig Value and Vector


%Eig Value and Vector

eig(K_iso)=
1.0e+004 *
0.0000
0.0000
0.0000
0.0748
0.1927
0.4271
0.5312
1.2533
eig(K)=
1.0e+004 *
0.0000
0.0000
0.0000
0.0748
0.1927
0.4271
0.5312
1.2533
K =
1.0e+003 *
1.9271
0.4688
0.5729
-0.1563
-0.9635
-0.4688
-1.5365
0.1563

0.4688
4.2708
0.1563
1.9792
-0.4688
-2.1354
-0.1563
-4.1146

0.5729
0.1563
1.9271
-0.4687
-1.5365
-0.1562
-0.9635
0.4688

-0.1563
1.9792
-0.4687
4.2708
0.1563
-4.1146
0.4688
-2.1354
3

-0.9635
-0.4688
-1.5365
0.1563
1.9271
0.4687
0.5729
-0.1562

-0.4688
-2.1354
-0.1562
-4.1146
0.4687
4.2708
0.1563
1.9792

-1.5365
-0.1563
-0.9635
0.4688
0.5729
0.1563
1.9271
-0.4687

0.1563
-4.1146
0.4688
-2.1354
-0.1562
1.9792
-0.4687
4.2708

K_iso =
1.0e+003 *
1.9271
0.4687
0.5729
-0.1563
-0.9635
-0.4687
-1.5365
0.1563

0.4687
4.2708
0.1563
1.9792
-0.4688
-2.1354
-0.1563
-4.1146

0.5729
0.1563
1.9271
-0.4687
-1.5365
-0.1563
-0.9635
0.4688

-0.1563
1.9792
-0.4687
4.2708
0.1563
-4.1146
0.4687
-2.1354

-0.9635
-0.4688
-1.5365
0.1563
1.9271
0.4687
0.5729
-0.1563

-0.4687
-2.1354
-0.1563
-4.1146
0.4687
4.2708
0.1563
1.9792

-1.5365
-0.1563
-0.9635
0.4687
0.5729
0.1563
1.9271
-0.4687

%% Plotting
figure (1)
patch([0 4 4 0], [0 0 1 1], g)
patch([0+CSS_K(1,1) 4+CSS_K(3,1) 4+CSS_K(5,1) 0+CSS_K(7,1)],...
[0+CSS_K(2,1) 0+CSS_K(4,1) 1+CSS_K(6,1) 1+CSS_K(8,1)],b)
title(first eigen vector,fontsize,18)
axis equal
grid on
figure (2)
patch([0 4 4 0], [0 0 1 1], g)
patch([0+CSS_K(1,2) 4+CSS_K(3,2) 4+CSS_K(5,2) 0+CSS_K(7,2)],...
[0+CSS_K(2,2) 0+CSS_K(4,2) 1+CSS_K(6,2) 1+CSS_K(8,2)],b)
title(second eigen vector,fontsize,18)
axis equal
grid on
figure (3)
patch([0 4 4 0], [0 0 1 1], g)
patch([0+CSS_K(1,3) 4+CSS_K(3,3) 4+CSS_K(5,3) 0+CSS_K(7,3)],...
[0+CSS_K(2,3) 0+CSS_K(4,3) 1+CSS_K(6,3) 1+CSS_K(8,3)],b)
title(third eigen vector,fontsize,18)
axis equal
grid on

0.1563
-4.1146
0.4688
-2.1354
-0.1563
1.9792
-0.4687
4.2708

S-ar putea să vă placă și