0% found this document useful (0 votes)
43 views9 pages

Modello Lastra: Stato Piano Di Tensione

The document contains the equations for a plane stress model of a thin plate with elliptical geometry under tension. The plate has dimensions a x b and is subjected to a point load P. The equations define the stress-strain relationship using Hooke's law and the potential energy formulation is used to derive the governing equations, which are then solved numerically to determine the displacement field. Stress distributions are plotted along selected edges.

Uploaded by

Salvatore Iolli
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views9 pages

Modello Lastra: Stato Piano Di Tensione

The document contains the equations for a plane stress model of a thin plate with elliptical geometry under tension. The plate has dimensions a x b and is subjected to a point load P. The equations define the stress-strain relationship using Hooke's law and the potential energy formulation is used to derive the governing equations, which are then solved numerically to determine the displacement field. Stress distributions are plotted along selected edges.

Uploaded by

Salvatore Iolli
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 9

MODELLO LASTRA

STATO PIANO DI TENSIONE

2Ly

x
a
2Lx

EQUAZIONE DELL' ELLISSE:


;
EQUAZIONE PARAMETRICHA:

y
2

Q
b

Ly

90

x
a
Lx
> restart: with(linalg): with(plots): Digits:=20:
> ee:=1000: nu:=0.15: kk:=1000000:
a:=4;
b:=2;
Lx:=10: Ly:=5:
p:=8: ppx:=1:

> u:=array(1..p*p):
v:=array(1..p*p):
ii:=0:
ua:=0:
va:=0:
for i from 1 to p do:
for j from 1 to p do:
ii:=ii+1:
ua:=ua+u[ii]*x^(i)*y^(j-1):
va:=va+v[ii]*x^(i-1)*y^(j):
od
od:
ua;
va:
> subs(x=0,ua); subs(y=0,va);

> eps:=array(1..3,[diff(ua,x), diff(va,y), diff(ua,y)+diff(va,x)]):


> DD:=array(1..3,1..3,[
[ee/(1-nu^2) , nu*ee/(1-nu^2),
0],
[nu*ee/(1-nu^2), ee/(1-nu^2),
0],
[ 0
,
0
, ee/(2*(1+nu))]]);
> sig:=evalm(DD&*eps):
> en:=evalm(transpose(eps)&*sig)/2:
> ener:=int(int(en,x=0..Lx),y=0..Ly):
> rx:=sqrt((1-y^2/b^2)*a^2):
en_for1:=int(en,x=0..rx):
en_foro:=int(en_for1,y=0..b):
> en_load:=-int(ppx*subs(x=Lx,ua),y=0..Ly):
> en_vinc:=kk/2*int(subs(y=0,va)^2,x=a..Lx)+
kk/2*int(subs(x=0,ua)^2,y=b..Ly):
en_vinc:=0:
> ept:=ener-en_foro+en_vinc+en_load:

> equ:=array(1..p*p): eqv:=array(1..p*p):


for i from 1 to p*p do:
equ[i]:=diff(ept,u[i]):
eqv[i]:=diff(ept,v[i]):
od:
> unk:={seq(u[i],i=1..p*p),seq(v[i],i=1..p*p)};
> eqn:={seq(equ[i],i=1..p*p),seq(eqv[i],i=1..p*p)}:
> sol:=solve(eqn,unk);

> uas:=subs(sol,ua):
> vas:=subs(sol,va):
> sx:=subs(sol,sig[1]);

> plot(subs(x=0,sx),y=b..Ly);

> sy:=subs(sol,sig[2]):
> plot(subs(y=0,sy),x=a..Lx);

> sxb := subs({x = 0, y = b}, sx);


:= 2.6632335566418074681
> sxa := subs({x = a, y = 0}, sy);
:=-2.461442985101932585

> np:=10:
xy1:=array(1..np,1..2):
xy2:=array(1..np,1..2):
xy3:=array(1..np,1..2):
xy4:=array(1..np,1..2):
xy5:=array(1..np,1..2):
xi:=a: xf:=Lx:
dx:=(xf-xi)/(np-1):
for i from 1 to np do:
xy1[i,1]:=xi+(i-1)*dx:
xy1[i,2]:=0:
od:
yi:=0: yf:=Ly:
dy:=(yf-yi)/(np-1):
for i from 1 to np do:
xy2[i,1]:=Lx:
xy2[i,2]:=yi+(i-1)*dy:
od:
xi:=Lx: xf:=0:
dx:=(xf-xi)/(np-1):
for i from 1 to np do:
xy3[i,1]:=xi+(i-1)*dx:
xy3[i,2]:=Ly:
od:
yi:=Ly: yf:=b:
dy:=(yf-yi)/(np-1):
for i from 1 to np do:
xy4[i,1]:=0:
xy4[i,2]:=yi+(i-1)*dy:
od:
thi:=Pi/2: thf:=0:
dt:=(thf-thi)/(np-1):
for i from 1 to np do:
theta:=thi+(i-1)*dt:
xy5[i,1]:=a*cos(theta):
xy5[i,2]:=b*sin(theta):
od:
> sc:=100:
uv1:=array(1..np,1..2):
uv2:=array(1..np,1..2):
uv3:=array(1..np,1..2):
uv4:=array(1..np,1..2):
uv5:=array(1..np,1..2):
for i from 1 to np do:
uv1[i,1]:=xy1[i,1]+subs({x=xy1[i,1],y=xy1[i,2]},uas)*sc:
uv1[i,2]:=xy1[i,2]+subs({x=xy1[i,1],y=xy1[i,2]},vas)*sc:
od:
for i from 1 to np do:

uv2[i,1]:=xy2[i,1]+subs({x=xy2[i,1],y=xy2[i,2]},uas)*sc:
uv2[i,2]:=xy2[i,2]+subs({x=xy2[i,1],y=xy2[i,2]},vas)*sc:
od:
for i from 1 to np do:
uv3[i,1]:=xy3[i,1]+subs({x=xy3[i,1],y=xy3[i,2]},uas)*sc:
uv3[i,2]:=xy3[i,2]+subs({x=xy3[i,1],y=xy3[i,2]},vas)*sc:
od:
for i from 1 to np do:
uv4[i,1]:=xy4[i,1]+subs({x=xy4[i,1],y=xy4[i,2]},uas)*sc:
uv4[i,2]:=xy4[i,2]+subs({x=xy4[i,1],y=xy4[i,2]},vas)*sc:
od:
for i from 1 to np do:
uv5[i,1]:=xy5[i,1]+subs({x=xy5[i,1],y=xy5[i,2]},uas)*sc:
uv5[i,2]:=xy5[i,2]+subs({x=xy5[i,1],y=xy5[i,2]},vas)*sc:
od:
> p1:=listplot(xy1,color=red ,thickness=4,scaling=constrained):
p2:=listplot(xy2,color=red ,thickness=4):
p3:=listplot(xy3,color=red ,thickness=4):
p4:=listplot(xy4,color=red ,thickness=4):
p5:=listplot(xy5,color=red ,thickness=4):
d1:=listplot(uv1,color=blue,thickness=2):
d2:=listplot(uv2,color=blue,thickness=2):
d3:=listplot(uv3,color=blue,thickness=2):
d4:=listplot(uv4,color=blue,thickness=2):
d5:=listplot(uv5,color=blue,thickness=2):
display({p1,p2,p3,p4,p5,d1,d2,d3,d4,d5});

90

x
a

> plot(subs(x=0,sx),y=b..Ly);

> plot(subs(y=0,sy),x=a..Lx);

sxb := subs({x = 0, y = b}, sx)


:= := 7.400551650986888582
sya := subs({x = a, y = 0}, sy)
:= -1.5130282558749909250

> plot(subs(x=0,sx),y=b..Ly);

> sy:=subs(sol,sig[2]);
> plot(subs(y=0,sy),x=a..Lx);

sxb := subs({x = 0, y = b}, sx)


:= 4.6142470659220207478
sya := subs({x = a, y = 0}, sy)
:= -1.751367030005282608

You might also like