Vous êtes sur la page 1sur 7

%% Initiating valuables

m=1;%% no. of construction stage


n=30; %% no. of layers
t=2.5; %% Thickness of layer
Cu_mob_active=zeros(m,n); %% Mobilizable shear strength of active zone
Cu_mob_passive=zeros(m,n); %% Mobilizable shear strength of passive zone
Cu=zeros(1,n); %% Undrained shear strength
g_mob_active=zeros(m,n); %% Mobilizable shear strain of active zone
g_mob_passive=zeros(m,n); %% Mobilizable shear strain of passive zone
beta_active=zeros(m,n); %% Mobilizable strength ratio of active zone
beta_passive=zeros(m,n); %% Mobilizable strength ratio of passive zone
H=zeros(m,1); %% Excavation Depth
A=zeros(m,n); %% Area of shearing zone in active side
Ap=zeros(m,n);%% Total area of shearing zone in passive side
Ap1=zeros(m,n); %% Area of shearing zone 1 in passive side
Ap2=zeros(m,n); %% Area of shearing zone 2 in passive side
l=zeros(m,1); %% Wavelength of deformation
wall_energy=zeros(m,1); %% Elastic energy stored in the wall
wtemp=0; %% Assumed max. disp
gsat=zeros(1,n);%% Saturated unit weight
lower=zeros(1,n); %% Lower bound of layer
upper=zeros(1,n); %% Upper bound of layer
upper2=zeros(m,n); %% Integration upper bound of zone 2 in construction stage m
lower2=zeros(m,n); %% integration lower bound of zone 2 in construction stage m
active_zone=zeros(m,n); %% Active zone index
passive_zone=zeros(m,n); %% Passive zone index
D=zeros(m,1); %% Depth of mechanism
dga=zeros(m,n); %% Averaged shear strain increment in active zone
dgp1=zeros(m,n); %% Averaged shear strain increment in passive zone (Sector above)
dgp2=zeros(m,n); %% Averaged shear strain increment in passive zone (Triangle)
dgp3=zeros(m,n); %% Averaged shear strain increment in passive zone (Sector below)
dgp=zeros(m,n);%% Averaged shear strain increment in passive zone
dpw=zeros(m,n); %% Plastic work in layer n at excavation stage m
tpw=zeros(m,1); %% Total plastic work
dpep1=zeros(m,n);
dpep2=zeros(m,n);
dpep3=zeros(m,n);
dpea=zeros(m,n);
dpe=zeros(m,n); %% Change in PE in layer n at excavation stage m
tpe=zeros(m,1); %% Total change in PE
% User defined parameters
EI=2.3*10^6*0.9^3/12; % bending stiffness of wall
s=2.5; %% Support spacing
L=24; %% Length of the wall
B=70; %% width of excavation
%% g/gmax
X=[0,0.015585734,0.032343117,0.050409424,0.06994425,0.091134233,0.114199036,0.13939899
4,0.167044978,0.197511287,0.231252696,0.268827305,0.310927661,0.358423827,0.412424165,
0.474362904,0.546129411,0.630264282,0.730266386,0.851091702,1];
%% C_mob/Cu
Y=[0,0.05,0.1,0.15,0.2,0.25,0.3,0.35,0.4,0.45,0.5,0.55,0.6,0.65,0.7,0.75,0.8,0.85,0.9,
0.95,1];
%X=[0,0.000316228,0.001,0.003162278,0.01,0.031622777,0.1,0.316227766,1]; %% g/gmax
%Y=[0,0.010638298,0.042553191,0.095744681,0.20212766,0.382978723,0.638297872,0.8936170
21,1]; %% C_mob/Cu
gmax=4.9748; %% Max. shear strain
w=zeros(m,1); %% Maximum deformation of staged construction
error=zeros(m,1); %% Error of calculation
for y=1:n %% assigning bounds of n layers
upper(1,y)=(y-1)*t;
lower(1,y)=y*t;

gsat(1,y)=18;
end;
upper(1,1)=0.0000000000001;
for y=1:n %% assigning bounds of n layers
if t*y<=10
Cu(1,y)=14.5+0.35*t*(y-0.5);%% defining shear strength
else
Cu(1,y)=18+7/15*(t*(y-0.5)-10);%% defining shear strength
end
gsat(1,y)=18;
end;
for x=1:m %% Assigning Height of excavation
H(x,1)=x*s;
end;
for x=1:m %% Initialize error term to be 1
for y=1:n
error(x,y)=1;
end;
end;
wtemp=0.01; %Initial guess for max. soil movement
for x=1:m %% excavation stage m
upperbound=0.3;
lowerbound=0.0001;
limit=0.01;
while (abs(error(x,1))>limit)
l(x,1) = 1.5*(L-H(x,1));
% l(x,1) = B*sqrt(2)/2+s+10;
%l(x,1)=50;
for y=1:n %% layers n
%% Calculate depth of mechanism
D(x,1)=H(x,1)-s+l(x,1);
%% Zone checking for each layer for active side
if D(x,1)<=upper(1,y)
active_zone(x,y)=0;
elseif ( (H(x,1)-s)<=upper(1,y) )
active_zone(x,y)=2;
else
active_zone(x,y)=1;
end;
%% Zone checking for each layer for passive side
if (upper(1,y)>=H(x,1)) && (upper(1,y)<D(x,1))
if (D(x,1)>=lower(1,y))
passive_zone(x,y)=3;
else
passive_zone(x,y)=4;
end;
else
passive_zone(x,y)=0;
end;
%% Calculating Area of shearingin active side
if (active_zone(x,y)==0)
A(x,y)=0; %% Shearing Area of Zone 0
elseif active_zone(x,y)==1
A(x,y)=(lower(1,y)-upper(1,y))*l(x,1); %% Shearing Area of Zone 1
elseif active_zone(x,y)==2
upper2(x,y)=upper(1,y)-H(x,1)+s; %% Integration upper bound for
zone 2

if (lower(1,y)-H(x,1)+s)>l(x,1)

%% Integration lower bound

for zone 2
lower2(x,y)=l(x,1);
else
lower2(x,y)=lower(1,y)-H(x,1)+s;
end;
if (D(x,1)-(H(x,1)-s))>=lower2(x,y)
b=lower2(x,y);
a=upper2(x,y);
A(x,y)=b/2*sqrt(l(x,1)^2-b^2)-a/2*sqrt(l(x,1)^2a^2)+l(x,1)^2/2*asin(b/l(x,1))-l(x,1)^2/2*asin(a/l(x,1));%% Shearing Area of Zone 2
else
b=(D(x,1)-(H(x,1)-s));
a=upper2(x,y);
A(x,y)=b/2*sqrt(l(x,1)^2-b^2)-a/2*sqrt(l(x,1)^2a^2)+l(x,1)^2/2*asin(b/l(x,1))-l(x,1)^2/2*asin(a/l(x,1));%% Shearing Area of Zone 2
end
end;
%% Calculating Area of shearing in passive side
if passive_zone(x,y)==0
Ap(x,y)=0;
elseif passive_zone(x,y)==3 %% Shearing Area of Zone 3
Ap(x,y)=t*B/2;
elseif passive_zone(x,y)==4%% Shearing Area of Zone 4
Ap(x,y)=(D(x,1)-upper(1,y))*B/2;
end;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Calculating averaged mobilizable shear strain and potential energy loss
for active zone
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
if active_zone(x,y)==0
dga(x,y)=0;
dpea(x,y)=0;
elseif active_zone(x,y)==1
dga(x,y)=2*wtemp*(lower(1,y)-upper(1,y))./A(x,y); %% average shear
strain in zone 1
%wy=-wtemp/2*(1-cos(2*pi*x1/L));
dpea(x,y)=gsat(1,y)*wtemp*l(x,1)/2*(lower(1,y)-upper(1,y)); %% PE
loss in zone 1
%%dg(x,y)=int(int( abs(wtemp*pi/l(x,1)*sin(2*pi*x1/l(x,1)))
,x1,0,l(x,1) ) ,y1,lower(1,y),upper(1,y) )/A(x,y);
elseif active_zone(x,y)==2
%%syms x1 y1;
%%wy=wtemp./2.*(1-cos(2.*pi./l(x,1).*sqrt(x1.^2+y1.^2))).*(x1./sqrt(x1.^2+y1.^2));
%%wx=wtemp./2.*(1cos(2*pi/l(x,1)*sqrt(x1^2+y1^2)))*(y1/sqrt(x1^2+y1^2));
%% PE loss in zone 2
Q = @(x1,y1) (gsat(1,y)*wtemp./2.*(1cos(2.*pi./l(x,1).*sqrt(x1.^2+y1.^2))).*(x1./sqrt(x1.^2+y1.^2))).*(x1.^2+y1.^2<=l(x,1)^2);
dpea(x,y) = dblquad(Q,-l(x,1),-0.00000000000000000001,lower2(x,y),-upper2(x,y));
%% Average shear strain in zone 2
% expression version 2
%
F = @(x1,y1)(abs(wtemp.*sin(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)).*pi./l(x,1)./(x1.^2.+y1.^2).*x1.^2.-

1./2.*wtemp.*(1.-cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)))./
(x1.^2.+y1.^2).^(1./2)+1./2.*wtemp.*(1.cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2))).*x1.^2./(x1.^2.+y1.^2).^(3./2)+
(wtemp.*sin(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)).*pi./l(x,1)./
(x1.^2.+y1.^2).*y1.^2.+1./2.*wtemp.*(1.-cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)))./
(x1.^2.+y1.^2).^(1./2)-1./2.*wtemp.*(1.cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2))).*y1.^2./
(x1.^2.+y1.^2).^(3./2)))).*(x1.^2+y1.^2<=l(x,1)^2);
% expression version 3
%
F = @(x1,y1)(sqrt(abs((wtemp.*sin(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)).*pi./l(x,1)./(x1.^2.+y1.^2).*x1.^2.1./2.*wtemp.*(1.-cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)))./
(x1.^2.+y1.^2).^(1./2)+1./2.*wtemp.*(1.cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2))).*x1.^2./(x1.^2.+y1.^2).^(3./2)+
(wtemp.*sin(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)).*pi./l(x,1)./
(x1.^2.+y1.^2).*y1.^2.+1./2.*wtemp.*(1.-cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)))./
(x1.^2.+y1.^2).^(1./2)-1./2.*wtemp.*(1.cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2))).*y1.^2./(x1.^2.+y1.^2).^(3./2))).^2
4.* (-wtemp.*sin(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)).*pi./l(x,1)./
(x1.^2.+y1.^2).*y1.*x1+1./2.*wtemp.*(1.cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2))).*x1./(x1.^2.+y1.^2).^(3./2).*y1).*
(wtemp.*sin(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)).*pi./l(x,1)./
(x1.^2.+y1.^2).*y1.*x1-1./2.*wtemp.*(1.cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2))).*x1./
(x1.^2.+y1.^2).^(3./2).*y1)
)).*(x1.^2+y1.^2<=l(x,1)^2));
%
Esx=
-wtemp.*sin(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)).*pi./l(x,1)./
(x1.^2.+y1.^2).*x1.^2.-1./2.*wtemp.*(1.-cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)))./
(x1.^2.+y1.^2).^(1./2)+1./2.*wtemp.*(1.cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2))).*x1.^2./(x1.^2.+y1.^2).^(3./2)
%
Esy=
(wtemp.*sin(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)).*pi./l(x,1)./
(x1.^2.+y1.^2).*y1.^2.+1./2.*wtemp.*(1.-cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)))./
(x1.^2.+y1.^2).^(1./2)-1./2.*wtemp.*(1.cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2))).*y1.^2./(x1.^2.+y1.^2).^(3./2))
%
Ey =
-wtemp.*sin(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)).*pi./l(x,1)./
(x1.^2.+y1.^2).*y1.*x1+1./2.*wtemp.*(1.cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2))).*x1./(x1.^2.+y1.^2).^(3./2).*y1 ;
%
Ex =
wtemp.*sin(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2)).*pi./l(x,1)./(x1.^2.+y1.^2).*y1.*x11./2.*wtemp.*(1.-cos(2.*pi./l(x,1).*(x1.^2.+y1.^2).^(1./2))).*x1./
(x1.^2.+y1.^2).^(3./2).*y1;
dga(x,y) = dblquad(F,-l(x,1),-0.00000000000000000001,-lower2(x,y),upper2(x,y))./A(x,y);
end;
%% Modify mobilized shear strain in layer in case of overlapping of
shear zone
if x>1
if active_zone(x,y)>0
if A(x,y)>A(x-1,y)
g_mob_active(x,y) = ( dga(x,y)*(A(x,y)-A(x-1,y))+(dga(x,y)
+g_mob_active(x-1,y))*A(x-1,y) )/(A(x,y));
%
g_mob_active(x,y) = ( dga(x,y)*(A(x,y)-A(x-1,y))+(dga(x,y)
+g_mob_active(x-1,y))*A(x-1,y) )/(A(x,y));
else
g_mob_active(x,y) =( dga(x,y)*(A(x-1,y)-A(x,y))+(dga(x,y)
+g_mob_active(x-1,y))*A(x,y) )/(A(x-1,y));

%
g_mob_active(x,y) =( dga(x,y)*(A(x-1,y)-A(x,y))+(dga(x,y)
+g_mob_active(x-1,y))*A(x,y) )/(A(x,y));
end;
end;
else
g_mob_active(x,y) = dga (x,y);
end
%% Calculating beta values and mobilized strength
beta_active(x,y)= interp1(X,Y,g_mob_active(x,y)/gmax*100,'pchip');
Getting mobilizable strength ratio
Cu_mob_active(x,y)=Cu(1,y)*beta_active(x,y);

%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Calculating averaged mobilizable shear strain and potential energy loss
for passive zone
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
if passive_zone(x,y)==0
dgp(x,y)=0;
dpep1(x,y)=0;
dpep2(x,y)=0;
dpep3(x,y)=0;
elseif passive_zone(x,y)==3
%% PE loss in passive zone
Q_Ap1=@(x1,y1)(gsat(1,y).*l(x,1).*wtemp./4./B.*
(sin(2*pi.*y1./l(x,1))+2*pi.*y1./l(x,1)+pi) .*sin(pi.*x1./B) .*(y1+l(x,1)/2>0).*(y1l(x,1)/2<0).*(x1>=0).*(x1-B/2<=0));
dpep1(x,y)=dblquad(Q_Ap1,0.00000000000000000001,B/2, H(x,1)s+l(x,1)/2-lower(1,y) ,H(x,1)-s+l(x,1)/2-upper(1,y));
%%
Esy = pi.*l(x,1).*wtemp./4./B.^2.*(sin(2.*pi.*y1./l(x,1))
+2.*pi.*y1./l(x,1)+pi).*cos(pi.*x1./B)
%%
Esx =
-pi.*wtemp./l(x,1).*cos(pi.*x1./B).*sin(2.*pi.*y1./l(x,1))
%%
Ex =
-pi.*wtemp./B./2.*(1+cos(2.*pi.*y1./l(x,1))).*sin(pi.*x1./B)
%%
Ey = pi.* wtemp ./2./B
.*sin(pi.*x1./B).*(1+cos(2.*pi.*y1./l(x,1)))
F_Ap1=@(x1,y1)
(sqrt(
(
pi.*l(x,1).*wtemp./4./B.^2.*(sin(2.*pi.*y1./l(x,1))
+2.*pi.*y1./l(x,1)+pi).*cos(pi.*x1./B)
+
(pi.*wtemp./l(x,1).*cos(pi.*x1./B).*sin(2.*pi.*y1./l(x,1)) )
).^2
4.*(-pi.*wtemp./B./2.*(1+cos(2.*pi.*y1./l(x,1))).*sin(pi.*x1./B)).*(pi.*
wtemp ./2./B
.*sin(pi.*x1./B).*(1+cos(2.*pi.*y1./l(x,1))))
)
.*(y1+l(x,1)/2>0).*(y1-l(x,1)/2<0).*(x1>=0).*(x1-B/2<=0));
dgp1(x,y)=dblquad(F_Ap1,0.00000000000000000001,B/2, H(x,1)s+l(x,1)/2-lower(1,y) ,H(x,1)-s+l(x,1)/2-upper(1,y));
dgp(x,y)=dgp1(x,y)/Ap(x,y);
elseif passive_zone(x,y)==4
Q_Ap1=@(x1,y1)(gsat(1,y).*l(x,1).*wtemp./4./B.*
(sin(2*pi.*y1./l(x,1))+2*pi.*y1./l(x,1)+pi) .*sin(pi.*x1./B) .*(y1+l(x,1)/2>0).*(y1l(x,1)/2<0).*(x1>=0).*(x1-B/2<=0));
dpep1(x,y)=dblquad(Q_Ap1,0.00000000000000000001,B/2,-l(x,1)/2,
H(x,1)-s+l(x,1)/2-upper(1,y) );
F_Ap1=@(x1,y1)
(sqrt(
(
pi.*l(x,1).*wtemp./4./B.^2.*(sin(2.*pi.*y1./l(x,1))
+2.*pi.*y1./l(x,1)+pi).*cos(pi.*x1./B)
+
(-

pi.*wtemp./l(x,1).*cos(pi.*x1./B).*sin(2.*pi.*y1./l(x,1)) )
).^2
4.*(-pi.*wtemp./B./2.*(1+cos(2.*pi.*y1./l(x,1))).*sin(pi.*x1./B)).*(pi.*
wtemp ./2./B
.*sin(pi.*x1./B).*(1+cos(2.*pi.*y1./l(x,1))))
)
.*(y1+l(x,1)/2>0).*(y1-l(x,1)/2<0).*(x1>=0).*(x1-B/2<=0));
dgp1(x,y)=dblquad(F_Ap1,0.00000000000000000001,B/2,
-l(x,1)/2,H(x,1)-s+l(x,1)/2-upper(1,y) );

dgp(x,y)=dgp1(x,y)/Ap(x,y);
end;
%% Modify mobilized shear strain in layer in case of overlapping of
shear zone
if x>1
if passive_zone(x,y)>0
g_mob_passive(x,y) = ( dgp(x,y)*(Ap(x,y)-Ap(x-1,y))+(dgp(x,y)
+g_mob_passive(x-1,y))*Ap(x-1,y) )/(Ap(x-1,y)+Ap(x,y));
end;
else
g_mob_passive(x,y) = dgp (x,y);
end
%% Calculating beta values and mobilized strength
beta_passive(x,y)= interp1(X,Y,g_mob_passive(x,y)/gmax*100,'pchip');
%% Getting mobilizable strength ratio
Cu_mob_passive(x,y)=Cu(1,y)*beta_passive(x,y);
end;
%% Virtual work principal
tpw(x,1)=0;
tpe(x,1)=0;
for j=1:n %% layers n for second excavation and onwards
dpw(x,j)=Cu_mob_active(x,j)*(dga(x,j)) *A(x,j)
+
Cu_mob_passive(x,j)*(dgp(x,j))*Ap(x,j);
tpw(x,1)=tpw(x,1)+dpw(x,j);
tpe(x,1)=tpe(x,1)+dpea(x,j)-dpep1(x,j)-dpep2(x,j)-dpep3(x,j);
end;
%Calculating elastic energy of the wall
if L-H(x,1)+s<l(x,1)
length_in_bending=L-H(x,1)+s;
else
length_in_bending=l(x,1);
end;
wall_energy(x,1)=
EI*wtemp^2*pi^4/l(x,1)^4*length_in_bending+EI*wtemp^2*pi^3/4/l(x,1)^3*sin(4*pi*length_
in_bending/l(x,1));
%error(x,1)=tpw(x,1)-tpe(x,1)+wall_energy(x,1);
error(x,1)=tpw(x,1)-tpe(x,1);
error(x,1)
x
wtemp
if abs(error(x,1))<limit
w(x,1)=wtemp;
end;
if error(x,1)>0
upperbound=wtemp;
wtemp=(upperbound+lowerbound)/2;
else
lowerbound=wtemp;

wtemp=(upperbound+lowerbound)/2;
end;
end;
end;
r=0.153;
deta_cantilever=0.02;
depth=transpose(0:0.1:50);
acc_deflection=zeros(length(depth),m);
deflection=zeros(length(depth),m);
for x=1:m
for y=1:length(depth)
if (depth(y,1)>H(x,1)-s) && (depth(y,1)<H(x,1)-s+l(x,1))
deflection(y,x)=w(x,1)/2*(1-cos(2*pi/l(x,1)*(depth(y,1)-H(x,1)+s)));
else
deflection(y,x)=0;
end;
end;
end;
for x=1:m
for y=1:length(depth)
if x==1
acc_deflection(y,x)=deflection(y,x)+deta_cantilever-deta_cantilever/L/(1r)*depth(y,1);
else
acc_deflection(y,x)=acc_deflection(y,x-1)+deflection(y,x);
end;
end;
end;
plot(acc_deflection(:,1),depth,acc_deflection(:,2),depth,acc_deflection(:,3),depth);
tpe
tpw
error

Vous aimerez peut-être aussi