Element.beam2e
m (→Stiffness Matrix K) |
(→Stiffness Matrix K) |
||
| (12 intermediate revisions by one user not shown) | |||
| Line 1: | Line 1: | ||
The following article describes the use of the <tt>element.beam2e</tt> command. | The following article describes the use of the <tt>element.beam2e</tt> command. | ||
| − | This command defines a simple, two-node Euler beam | + | This command defines a simple, two-node elastic Bernulli-Euler beam element. |
=Syntax= | =Syntax= | ||
| Line 13: | Line 13: | ||
!width="150"|default | !width="150"|default | ||
|- | |- | ||
| − | id || The elemental id ||align="center"| integer ||align="center"|- | + | |id || The elemental id ||align="center"| integer ||align="center"|- |
|- | |- | ||
|dof<sub>1-2</sub> || The elemental [[node|nodes]] ||align="center"| integer ||align="center"|- | |dof<sub>1-2</sub> || The elemental [[node|nodes]] ||align="center"| integer ||align="center"|- | ||
| Line 23: | Line 23: | ||
=Examples= | =Examples= | ||
| + | Define a two-dimensional beam with id 1, start node 1, end node 2, material id 2 and section id 3. | ||
element.beam2e(2,1,2,2,3) | element.beam2e(2,1,2,2,3) | ||
=Comments= | =Comments= | ||
[[Node]]s, [[material]] and [[section]] '''must''' be already defined. | [[Node]]s, [[material]] and [[section]] '''must''' be already defined. | ||
| + | |||
| + | =Theory= | ||
=Implementation= | =Implementation= | ||
| + | The implementation of the Bernulli-Euler beam follows closely the implementation of ''Cook et al''.<ref>R.D. Cook, d.S. Malkus and M.E. Plesha, ''"Concepts and Applications of Finite Element Analysis"'', 3<sub>rd</sub> Edition, John Wiley & Sons, 1989, p.216</ref> Special care is taken to avoid matrix multiplications in favor of efficiency. | ||
| + | |||
==General== | ==General== | ||
The element length and directional cosines are given as: | The element length and directional cosines are given as: | ||
| Line 40: | Line 45: | ||
==Stiffness Matrix K== | ==Stiffness Matrix K== | ||
| + | The stiffness matrix K in global coordinates is given as: | ||
<pre> | <pre> | ||
K(0,0)= K1; K(0,1)= K2; K(0,2)= K4; K(0,3)=-K1; K(0,4)=-K2; K(0,5)= K4; | K(0,0)= K1; K(0,1)= K2; K(0,2)= K4; K(0,3)=-K1; K(0,4)=-K2; K(0,5)= K4; | ||
| Line 66: | Line 72: | ||
==Residual vector R== | ==Residual vector R== | ||
| − | + | The residual vector in global coordinates is given as: | |
R = facS*Fint - facG*Fgravity - facP*Fext | R = facS*Fint - facG*Fgravity - facP*Fext | ||
where <tt>facS</tt>, <tt>facG</tt> and <tt>facP</tt>, factors controlled by [[group.state]]. In local coordinates this yields, | where <tt>facS</tt>, <tt>facG</tt> and <tt>facP</tt>, factors controlled by [[group.state]]. In local coordinates this yields, | ||
| Line 76: | Line 82: | ||
R[4]=facS*(- K12*u[1] - K6*u[2] + K12*u[4] - K6*u[5]) - facG*( 0.5*b[1]*L); | R[4]=facS*(- K12*u[1] - K6*u[2] + K12*u[4] - K6*u[5]) - facG*( 0.5*b[1]*L); | ||
R[5]=facS*( K6*u[1] + K2*u[2] - K6*u[4] + K4*u[5]) - facG*(-b[1]*L*L/12.); | R[5]=facS*( K6*u[1] + K2*u[2] - K6*u[4] + K4*u[5]) - facG*(-b[1]*L*L/12.); | ||
| − | R-=facP*Fext | + | R-=facP*Fext; |
</pre> | </pre> | ||
and transforming it from local to global, | and transforming it from local to global, | ||
| Line 89: | Line 95: | ||
R[4]=R4; | R[4]=R4; | ||
</pre> | </pre> | ||
| + | |||
| + | =Notes= | ||
| + | <references/> | ||
| + | |||
=See also= | =See also= | ||
Latest revision as of 15:36, 19 February 2007
The following article describes the use of the element.beam2e command. This command defines a simple, two-node elastic Bernulli-Euler beam element.
Contents |
[edit] Syntax
element.beam2e(id,dof1,dof2,mat,sec)
where
| Parameter | description | type | default |
|---|---|---|---|
| id | The elemental id | integer | - |
| dof1-2 | The elemental nodes | integer | - |
| mat | The element material | integer | - |
| sec | The element section | integer | - |
[edit] Examples
Define a two-dimensional beam with id 1, start node 1, end node 2, material id 2 and section id 3.
element.beam2e(2,1,2,2,3)
[edit] Comments
Nodes, material and section must be already defined.
[edit] Theory
[edit] Implementation
The implementation of the Bernulli-Euler beam follows closely the implementation of Cook et al.<ref>R.D. Cook, d.S. Malkus and M.E. Plesha, "Concepts and Applications of Finite Element Analysis", 3rd Edition, John Wiley & Sons, 1989, p.216</ref> Special care is taken to avoid matrix multiplications in favor of efficiency.
[edit] General
The element length and directional cosines are given as:
L=sqrt((y2-y1)*(y2-y1)+(x2-x1)*(x2-x1)); c=(x2-x1)/L; s=(y2-y1)/L;
In what follows, E denotes Young modulus, A and J cross-sectional area and moment of inertia respectively and b is the vector of gravity loads in local coordinates.
[edit] Stiffness Matrix K
The stiffness matrix K in global coordinates is given as:
K(0,0)= K1; K(0,1)= K2; K(0,2)= K4; K(0,3)=-K1; K(0,4)=-K2; K(0,5)= K4; K(1,0)= K2; K(1,1)= K3; K(1,2)= K5; K(1,3)=-K2; K(1,4)=-K3; K(1,5)= K5; K(2,0)= K4; K(2,1)= K5; K(2,2)= K6; K(2,3)=-K4; K(2,4)=-K5; K(2,5)= K7; K(3,0)=-K1; K(3,1)=-K2; K(3,2)=-K4; K(3,3)= K1; K(3,4)= K2; K(3,5)=-K4; K(4,0)=-K2; K(4,1)=-K3; K(4,2)=-K5; K(4,3)= K2; K(4,4)= K3; K(4,5)=-K5; K(5,0)= K4; K(5,1)= K5; K(5,2)= K7; K(5,3)=-K4; K(5,4)=-K5; K(5,5)= K6;
where,
K1=C1*c*c+C2*s*s; K2=(C1-C2)*c*s; K3=C1*s*s+C2*c*c; K4=-C3*s; K5=C3*c; K6=4*E*J/L; K7=2*E*J/L;
with
C1=E*A/L; C2=12*E*J/(L*L*L); C3=6*E*J/(L*L);
[edit] Residual vector R
The residual vector in global coordinates is given as:
R = facS*Fint - facG*Fgravity - facP*Fext
where facS, facG and facP, factors controlled by group.state. In local coordinates this yields,
R[0]=facS*( KN*u[0] - KN*u[3]) - facG*( 0.5*b[0]*L); R[1]=facS*( K12*u[1] + K6*u[2] - K12*u[4] + K6*u[5]) - facG*( 0.5*b[1]*L); R[2]=facS*( K6*u[1] + K4*u[2] - K6*u[4] + K2*u[5]) - facG*( b[1]*L*L/12.); R[3]=facS*(- KN*u[0] + KN*u[3]) - facG*( 0.5*b[0]*L); R[4]=facS*(- K12*u[1] - K6*u[2] + K12*u[4] - K6*u[5]) - facG*( 0.5*b[1]*L); R[5]=facS*( K6*u[1] + K2*u[2] - K6*u[4] + K4*u[5]) - facG*(-b[1]*L*L/12.); R-=facP*Fext;
and transforming it from local to global,
R0=c*R[0]-s*R[1]; R1=s*R[0]+c*R[1]; R3=c*R[3]-s*R[4]; R4=s*R[3]+c*R[4]; R[0]=R0; R[1]=R1; R[3]=R3; R[4]=R4;
[edit] Notes
<references/>
[edit] See also
- node module.
- material module.
- section module.
- element module.
- User guide.