Example: Individual Beam
Cross Section
The coordinates of the edges of the
cross section are defined as usual. That means Y points to the right, Z
points upwards. This system is called the "global coordinate system". The
origin of this coordinate system has to be at the leftmost edge and the
lowest edge of the cross section. Later a second, local yzcoordiantesystem
is defined. The axiss of this local system points against the global axes.
The reason is that the deflection downwards is defined positive.
The cross section which is considered
here has the form of two T's standing side by side. This is shown in the
following figure. Here the global YZsystem is shown.
The dimensions of the cross section
are
> 
a:=2/3:b:=1/6:d:=4/3:e:=9/10:f:=1/4:

Then the coordinates of the edges are
> 
EP:=[[0,e],[a,e],[a,0],[a+b,0],[a+b,e],[a+b+d,e],[a+b+d,0],[a+b+d+b,0],[a+b+d+b,e],[a+b+d+b+a,e],[a+b+d+b+a,e+f],[0,e+f]]:

With the function area
and the keyword plot
, a graphic is shown. Here the cross section is defined
as a polygon.
> 
area('plot','polygon',EP);

In this representation the global coordinates
are shown as the axes of the Maplecoordinatesystem, the local axes, which
are the reference for the following results are displayed by green arrows.
The local coordinate system has its origin in the center of gravity of the
cross section.
The cross section also can be defined
as a combination of simple cross sections:
Big rectangle (index 1)
> 
R1:=['rectangle',a+b+d+b+a,e+f];

Small outer rectangles (index 2 and
3)
Small middle rectangle (index 4)
The list of partial cross sections
is then:
The positions of the rectangles with
respect to the origin of the global coordinate system are:
> 
Oy[3]:=a+b+d+b:Oz[3]:=0:

The coordinates are combined as lists
> 
Oy:=[seq(Oy[i],i=1..4)];

> 
Oz:=[seq(Oz[i],i=1..4)];

The big rectangle is too large, so
the small rectangles must be removed. The list L is:
Again the input is graphically shown
> 
area('plot',P,Oy,Oz,Lst);

The cross section values are calculated
by use of the function area
> 
QS:=area('calc','polygon',EP):

The area of the cross section is extracted
from the result
The Ycoordinate of the center of gravity
in global coordinates is
And the Zcoordinate
The moment of inertia with respect
to the yaxis is
The moment of inertia with respect
to the zaxis is (is used for the following additional consideration)
Here the Maplefunction expand yields
a totally different result of that what one will think first time.
For better examples, some additional
considerations with respect to different shapes of cross sections are made:
1. Which thickness must a rectangle
have that has the same moment of inertia with respect to the yaxis and
the same width as the above given cross section?
A rectangle with the height H and the
width
has the following values of the cross
section:
> 
QSr:=area('calc','rectangle',B,H);

The moment of inertia of both cross
sections with respect to the yaxis are compared
Of course only positive real values
are possible solutions. This yields:
> 
Lsg:=evalf(solve({V,H>0},H));

The rectangle is shown in the following
figure
> 
area('plot','rectangle',B,H);

The area of the rectangle is
This rectangle has a considerably greater
area and so a higher need of material and a higher weight than the cross
section above.
2. Which Iprofile has the same area
and the same moments of inertia with respect to the yaxis and with respect
to the zaxis as the given cross section? As an additional condition, the
thickness of all plates of the Iprofile of the beam shall be the same.
For the Iprofile we get
> 
QSI:=area('calc',Iprofile,B,H,t,t);

The needed values of this result are
altogether there are three unknown
values and three conditions:
This conditions allow many solutions.
But some additional conditions reduce the number of the solutions. The first
additional conditions are that only positive values are possible for B,
H and t:
Further, solutions only make sense
when the width of the cross section is greater than the web, and the height
is greater than the double of the flange:
The solution is now
> 
Lsg:=evalf(solve({B1,B2,B3,N1,N2,N3,N4,N5},{B,H,t}));

Only one solution remains. This cross
section is shown in the next figure
> 
area('plot',Iprofile,B,H,t,t);

Now we go back to the original cross
section:
> 
area('plot','polygon',EP);

The beam is made from concrete with
the elastic modulus (in N/m)
Further, the deformation of the beam
under load is considered. For the bending stiffness with respect to the
yaxis we get
Calculation of the Deformation,
the Internal Forces and Influence Lines for an Individual Beam
We first consider the following situation:
The beam is simply supported at both ends and has the length L. A concentrated
force F acts at the distance xF from the left end of the beam. Shear deformations
are not accounted for.
To solve the problem, the boundary
conditions must be formulated.
The left end (x=0) in fixed in the
vertical direction and it is freely rotatable. Thus we have:
The same conditions are at the right
end of the beam (x=L):
The solution is calculated by the function
beam with
type=3:
> 
dfrm:=beam(3,x,F,xF,EI,[RB1,RB2,RB3,RB4]):

The deflection of the beam is
> 
deflection:=simplify(dfrm[1]);

This general form of the solution is
very complex. So here the solution is shown for some special values .
The length of the beam is (in m)
The force is (in N)
For five positions we show the the
deformation line. Notice that in reality the deformations point downwards.
> 
x1:=L/10:x2:=L/5:x3:=L/3:x4:=L/2:x5:=2*L/3:

> 
P1:=plot(subs(xF=x1,deflection),x=0..L,color=red,
thickness=3): 
> 
P2:=plot(subs(xF=x2,deflection),x=0..L,color=green,
thickness=3): 
> 
P3:=plot(subs(xF=x3,deflection),x=0..L,color=blue,
thickness=3): 
> 
P4:=plot(subs(xF=x4,deflection),x=0..L,color=magenta,
thickness=3): 
> 
P5:=plot(subs(xF=x5,deflection),x=0..L,color=brown,
thickness=3): 
The position of the force is shown
by a vertical line with the same color as the deformation line.
> 
PF1:=curve([[x1,0],[x1,subs({xF=x1,x=x1},deflection)]],color=red):

> 
PF2:=curve([[x2,0],[x2,subs({xF=x2,x=x2},deflection)]],color=green):

> 
PF3:=curve([[x3,0],[x3,subs({xF=x3,x=x3},deflection)]],color=blue):

> 
PF4:=curve([[x4,0],[x4,subs({xF=x4,x=x4},deflection)]],color=magenta):

> 
PF5:=curve([[x5,0],[x5,subs({xF=x5,x=x5},deflection)]],color=brown):

> 
display({P1,P2,P3,P4,P5,PF1,PF2,PF3,PF4,PF5},title="deflection");

The function deform
can be used to calculate influence lines. As
an example we consider here the influence line of the bending moment in
the middle of the beam with respect to the position xF of the force F. The
bending moment depends on x and xF:
The bending moment in the middle of
the beam depends on the position xF of the force F:
> 
ELM:=simplify(subs(x=L/2,My));

The influence line is shown in the
following figure
> 
plot(ELM,xF=0..L,thickness=3,
title="influence line My(x=L/2)"); 
For comparison the situation is considered
when the beam is fixed at both ends (no rotations are possible). The boundary
conditions are then:
The solution is again calculated by
use of the function beam
> 
dfrm:=beam(3,x,F,xF,EI,[RB1,RB2,RB3,RB4]):

The deformation is again very complex
> 
biegelinie:=simplify(dfrm[1]);

For the above five positions of the
force F, the following figure shows the deformation.
> 
P1:=plot(subs(xF=x1,deflection),x=0..L,color=red,
thickness=3): 
> 
P2:=plot(subs(xF=x2,deflection),x=0..L,color=green,
thickness=3): 
> 
P3:=plot(subs(xF=x3,deflection),x=0..L,color=blue,
thickness=3): 
> 
P4:=plot(subs(xF=x4,deflection),x=0..L,color=magenta,
thickness=3): 
> 
P5:=plot(subs(xF=x5,deflection),x=0..L,color=brown,
thickness=3): 
The position of the force is shown
by a vertical line with the same color as the deformation line.
> 
PF1:=curve([[x1,0],[x1,subs({xF=x1,x=x1},deflection)]],color=red):

> 
PF2:=curve([[x2,0],[x2,subs({xF=x2,x=x2},deflection)]],color=green):

> 
PF3:=curve([[x3,0],[x3,subs({xF=x3,x=x3},deflection)]],color=blue):

> 
PF4:=curve([[x4,0],[x4,subs({xF=x4,x=x4},deflection)]],color=magenta):

> 
PF5:=curve([[x5,0],[x5,subs({xF=x5,x=x5},deflection)]],color=brown):

> 
display({P1,P2,P3,P4,P5,PF1,PF2,PF3,PF4,PF5},title="deflection");

Again the influence line for the bending
moment in the middle of the beam is considered. The bending moment depends
on x and xF:
The bending moment in the middle of
the beam depends on the position xF of the force F:
> 
ELM:=simplify(subs(x=L/2,My));

The influence line is shown in the
following figure
> 
plot(ELM,xF=0..L,thickness=3,
title="influence line My(x=L/2)"); 
The influence line of the fixedend
moment at the left end of the beam is calculated as a function of the position
of F.
> 
ELM:=simplify(subs(x=0,My));

The influence line is shown in the
following figure
> 
plot(ELM,xF=0..L,thickness=3,
title="influence line M(x=0)"); 
In the same way influence lines of
deflections can be calculated. We now consider the rotation of the beam
at x=L/3:
> 
phi:=simplify(dfrm[2]):

> 
ELphi:=simplify(subs(x=L/3,phi));

The following figure shows the rotation
of the cross section of the beam at x=L/3 caused by a force F at variable
position. The variable is not the position where the rotation is considered
but the position of the force.
> 
plot(ELphi,xF=0..L,thickness=3,
title="influence line phi(x=L/3))"); 
Now we go back to the simply supported
beam
What is the deformation of this beam
caused by its own weight? With the density (in kg/m)
and the gravity (in m/s)
the load is (in N/m)
The deformation is calculated by use
of the function beam with
type=1:
> 
dfrm:=beam(1,x,q,EI,[RB1,RB2,RB3,RB4]);

Because of the continual character
of the input values, the result is very clearly formulated, in contrast
to the situation above. The deflection is now
The graphical result:
> 
plot(deflection,x=0..L,color=red,
thickness=3, title="deflection"); 
The maximal deflection caused by own
weight is
> 
evalf(maximize(deflection,x=0..L,location)[2]);

Calculation of the Stresses
We now consider the normal stress caused
by bending. (Irregularities at the end of the beam are not regarded).
The maximum zcoordinate of the cross
section is (with respect to the local coordinates) the distance from the
center of gravity to the lowest point of the cross section. From the figure
above we get
The minimum zcoordinate is the distance
from the center of gravity to the highest point of the cross section. With
regarding the sign we get
The maximum stress caused by bending
thus follows as a function of the position x along the beam and the position
z inside the cross section with the bending moment
to
> 
sigma(x,z):=simplify(My/EI*z);

Here the stress is independent of the
yposition. In the following figure the distribution of the stress is shown
> 
plot3d(sigma(x,z),x=0..L,z=zmin..zmax,
axes=boxed, shading=ZHUE, title="bending stress", style=PATCHCONTOUR,
orientation=[90,180]); 
The maximum stress is (in N/m)
> 
s[max]:=evalf(maximize(sigma(x,z),x=0..L,z=zmin..zmax,location)[2]);

In N/mm the maximal tensile stress
is
Of course, concrete itself cannot hold
this stress. In reality reinforced concrete is used in such cases.
The minimum stress is (in N/m)
> 
s[min]:=evalf(minimize(sigma(x,z),x=0..L,z=zmin..zmax,location)[2]);

In N/mm the extremal compressive stress
is
This stress can be tolerated by the
concrete.
Example: Continuous Beam
Cross Section
The continuous beam has a ringshaped cross section with a vertical web. The dimensions are in m
> 
d1:=1; d2:=96/100; t:=1/100;

The values of the cross section are calculated as a combination of simple shapes
> 
Ring:=['ring',d1/2,d2/2];

> 
Web:=['rectangle',t,d2];

The list of the partial cross sections is
The global YZcoordinate system has its origin at the leftmost, lowest edge of the cross section.
The position of both parts of the cross section with respect to the global YZcoordinate systems:
> 
Oy[2]:=(d1t)/2;Oz[2]:=(d1d2)/2;

The coordinates are combined as a list
> 
Oy:=[seq(Oy[i],i=1..2)];

> 
Oz:=[seq(Oz[i],i=1..2)];

Both parts of the cross section ate material The list L is thus:
The input is shown
> 
area('plot',P,Oy,Oz,L);

The values of the cross section are
> 
QS:=area('calc',P,Oy,Oz,L);

We now need the area (in m)
and the moment of inertia with respect to the yaxis (in m^4)
The material is steel with the density (in kg/m)
The gravity is (in m/s)
This yields the uniform load (in N/m) in all sections
The cross section should be loaded with water. This yield an additional uniform load of (in N/m)
> 
p:=(d2**2*Pi/4t*d2)*g*1000;

The elastic modulus of steel is (in N/m)
and the shear modulus is (in N/m)
The bending stiffness is
For the correcting factor k we assume
Thus the shearing stiffness is
The beam ranks over five fields
The position of the supports are (in m)
> 
s[1]:=0;s[2]:=6;s[3]:=12;s[4]:=24;s[5]:=30;s[6]:=36;

To use the function
beam
the input must be formulated as lists
> 
for i from 1 by 1 to n do

Calculation of the Deformation and the Internal Forces
The results are too complex to be shown in detail. We give the results graphically.
First the situation accounting for the shear deformation is considered
> 
dfrm1:=beam(5,n,s,x,qe,EIe):

> 
P1:=plot(dfrm1[1],x=0..s[n+1],color=red,legend="without shear deformation"):

Next the situation accounting for shear deformation is considered
> 
dfrm2:=beam(6,n,s,x,qe,EIe,GAe):

> 
P2:=plot(dfrm2[1],x=0..s[n+1],color=blue,legend="with shear deformation"):

The difference between both solutions is the pure shear deformation
> 
P3:=plot(dfrm2[1]dfrm1[1],x=0..s[n+1],color=brown,legend="pure shear deformation"):

> 
display([P1,P2,P3],title="deflection", thickness=3);

The part of the shear deformation referring to the total deformation shows the following figure
> 
plot((dfrm2[1]dfrm1[1])/dfrm2[1]*100,x=0..s[n+1],color=magenta,title="part of the sher deformation in percent");

For the case of shear deformation, the internal forces are considered.
Shearing force
> 
PQ:=plot(Q(x),x=0....s[n+1],color=blue,title="shearing force [N]"):

Bending moment
> 
PM:=plot(M(x),x=0....s[n+1],color=red,title="bending moment [Nm]"):

Calculation in the Case of Elastic Supports
Now we consider the situation that the supports are elastic. What is the influence of the internal forces?
The stiffness of the supports is (in N/m)
> 
for i from 2 by 1 to n do ke[i]:=k: od:

The supports at the end is only half of the supports in the inner.
> 
ke[1]:=k/2;ke[n+1]:=k/2;

The influence of the shear deformation is again considered.
Deflection without regarding the shear deformation
> 
dfrm7:=beam(7,n,s,x,qe,EIe,ke):

> 
P7:=plot(dfrm7[1],x=0..s[n+1],color=orange,legend="without shear deformation"):

Deflection with shear deformation
> 
dfrm8:=beam(8,n,s,x,qe,EIe,GAe,ke):

> 
P8:=plot(dfrm8[1],x=0..s[n+1],color=cyan,legend="with shear deformation"):

The difference between both calculations is the pure shear deformation
> 
P9:=plot(dfrm8[1]dfrm7[1],x=0..s[n+1],color=grey,legend="pure shear deformation"):

> 
display([P7,P8,P9],title="deflection", thickness=3);

The following figure shows the part of the shear deformation referring to the total deformation
> 
plot((dfrm8[1]dfrm7[1])/dfrm8[1]*100,x=0..s[n+1],color=magenta,title="part of the sher deformation in percent");

Comparison of the total deflection in the case of elastic an the case of rigid supports (blue: rigid, cyan: elastic)
In the case of regarding the shear deformation, the internal forces are considered
Shearing force
> 
PQk:=plot(Qk(x),x=0....s[n+1],color=cyan,title="shearing force [N]"):

Comparison of the shearing force in the case of rigid and elastic supports (blue: rigid, cyan: elastic)
Bending moment
> 
PMk:=plot(Mk(x),x=0....s[n+1],color=orange,title="bending moment [Nm]"):

Comparison of the bending moment in the case of rigid and elastic supports (red: rigid, orange: elastic)
Example: Articulated Girder
Cross Section
The cross section is a Uprofile. The moment of inertia with respect to the zaxis shall be twice the moment of inertia with respect to the yaxis. In general the values of the cross section of a Uprofile is
> 
QS:=area('calc','Uprofile',B,H,t);

The thickness of the walls of the profile is 0.01m, the width is 0.1m
This yields
and the height of the cross section follows from the condition
> 
LH:=solve({Bed,H>0},H);

Next the cross section is shown
> 
area('plot','Uprofile',B,H,t);

The actual values of the cross section are (in m and m^4)
The cross section is again made by steel, that means (in N/m and kg/m):
> 
Emod:=210*10**9; rho:=7850;

Deformation of the Beam and Internal Forces
The beam consists of 5 sections
The position of the boundaries are (in m)
> 
s[1]:=0;s[2]:=5;s[3]:=7;s[4]:=9;s[5]:=12;s[6]:=20;

All fields have the same bending stiffness Emod*Iy
> 
for i from 1 by 1 to n do EI[i]:=Emod*Iy od;

The beam is loaded by its own weight. With the gravity (in m/s)
the uniform load is
> 
for i from 1 by 1 to n do q[i]:=A*rho*g od;

There is no distributed moment
> 
for i from 1 by 1 to n do m[i]:=0 od;

At the boundaries are the following conditions:
s[1]: simply supported, support type=2
s[2]: no support but a concentrated force of 1000 N and a concentrated moment of 3000 Nm, support type=[5, Q=10000, M=3000]
s[3]: simply supported, this sinks down 0.05m, support type=[8, w=0.05]
s[4]: simply supported, support type=8
s[5]: the beam is rotated at this point 0.01rad to the left side (notice: because the deflection is shown upwards positive the rotation occurs in the graphic to the right), support type=[9, phi=0.01]
s[6]: unrotatable but vertical relocatable, support type=3
These information are combined in lists. Because some variables are used above it is better to set the condition into quotation marks.
> 
LT:=[2,[5,'Q'=1000,'M'=3000],[8,'w'=0.05],8,[9,'phi'=0.01],3];

The deformation is now:
> 
dfrm:=beam(13,n,s,x,q,m,EI,LT):

The result is shown graphically. The positions of the boundaries are marked along the xaxis
> 
tml:=[seq(s[i],i=1..n+1)];

> 
plot(dfrm[1],x=0..s[n+1], xtickmarks=tml, title="deflection");

> 
plot(dfrm[2], x=0..s[n+1], xtickmarks=tml, title="rotation");

> 
plot(dfrm[3],x=0..s[n+1], xtickmarks=tml, title="bending moment");

> 
plot(dfrm[4],x=0..s[n+1], xtickmarks=tml, title="shearing force");

The support reactions at the boundaries are
Forces
Moments