3D Frame Interpolation Functiones
3D Frame Interpolation Functiones
(OP)
Hello,
I have a question. I'm currently implementing a 3D spatial frame matlab FEM code based on Bernoulli beam. I'm building upon AJM Ferreira's book ''Matlab Codes for finite element Analysis'' formulations, because I want to automatize stress calculations on different configurations of a simple 3D frame, using matlab.
The issue is I can obtain the node displacements and reactions on restrictions, but I can't obtain the strain field, and thus the tension on the nodes, because I don't know the interpolation functions (or even better the strain displacement matrix B).
My question is, does anyone know any reference where I can get the interpolation functions of the 3d frame case? (or the B matrix). Or does anybody know another way to obtain the stresses on the nodes?
I've spent a lot of time looking for these interpolation functions but havn't had any luck on the net or in books.
Thanks a lot to any one who can give me a hand.
Alex
I have a question. I'm currently implementing a 3D spatial frame matlab FEM code based on Bernoulli beam. I'm building upon AJM Ferreira's book ''Matlab Codes for finite element Analysis'' formulations, because I want to automatize stress calculations on different configurations of a simple 3D frame, using matlab.
The issue is I can obtain the node displacements and reactions on restrictions, but I can't obtain the strain field, and thus the tension on the nodes, because I don't know the interpolation functions (or even better the strain displacement matrix B).
My question is, does anyone know any reference where I can get the interpolation functions of the 3d frame case? (or the B matrix). Or does anybody know another way to obtain the stresses on the nodes?
I've spent a lot of time looking for these interpolation functions but havn't had any luck on the net or in books.
Thanks a lot to any one who can give me a hand.
Alex





RE: 3D Frame Interpolation Functiones
But I'm still curious about how to do this 3d intrepolation. Does no one know enough about the math behind the FEA to give any insight into this particular problem?
RE: 3D Frame Interpolation Functiones
Doug Jenkins
Interactive Design Services
http://newtonexcelbach.wordpress.com/
RE: 3D Frame Interpolation Functiones
The strain field (call it epsilon(x)) would be, according to Euler-Bernoulli beam model, the second derivative of the displacement field with respect to the beam axis direction times the normal coordinate in the cross section: epsilon(x)=y*V(x)’’
The stress field would be simply: sigma(x)=E* y*V(x)’’
Now, for the 2d frame FEA, the deflection field (equation of the elastic) of a beam element is obtained by supposing it follows a cubic polynomial on x with four constants ( V(x)=a1 + a2*x + a3*x^2 + a4*x^3)) which are obtained by applying boundary conditions at the elements edges (x=0, x=L) of both the displacement and slope field ( theta(x)=V(x)’).
This gives you four equations in which the constants, the vertical displacements and slope on the edges are the variables. By expressing in matrix form, solving for the constants and rearranging the equations, you can obtain the displacement field V(x) as the product of a 1x4 first order Hermite polynomial vector ( [N] ) and the nodal displacement vectors (call it q = [v1, theta1, v2, theta2] ):
V(x) = [N]q
Where [N] = [ N1 , N2, N3, N4]
N1=1-x2/L2+2x3/L3, N2=1-2x2/L+x3/L2, N3=3x2/L2-2x3/L3, N4=-x2/L+x3/L2
So the rest is simple, the strain field is: epsilon(x)= y*V(x)’’= y (d2/dx2)[N]q=[B]q
Where [B] is called the strain-displacement vector, [B] = y d2([N])/dx2
And the stress field is
sigma(x) = E [B]q
If anyone wants a reference for interpolation of 2d beam elements in FEA a quick google search brings this lecture slides from Profesor Nam Ho Kim, of the Mechanical & Aerospace Engineering department of the University of Florida: http://www2.mae.ufl.edu/nkim/eml5526/Lect05.pdf
The stiffness matrix of an element can be obtained by performing a volume integration (in this case a line integral) of the product of the transpose of the strain-displacement vector times the regular vector times E, that is: E*integral( [B]’[B] ) from 0 to L (element length), by doing this you obtain the conventional stiffness matrix [K]=EI/L[12/L2 6L -12/L2 6/L; 6/L 4 -6/L etc….]
So this is how strain and stress fields are obtained for the 2d Bernoulli beam. What I want is to do the same for the 3d case. That is, I want the [B] vector (or matrix) that will give me the stress and strain field.
RE: 3D Frame Interpolation Functiones
RE: 3D Frame Interpolation Functiones
To apply the method to 3D you just need the stiffness matrix for a 2D beam (i.e. a line beam in 3D space), then apply the procedure shown in the last slide of the lecture.
You might like to have a look at my 3D frame analysis program at:
http://newtonexcelbach.wordpress.com/2013/01/22/3d...
The code is all open source; VBA, but you should be able to extract the required equations.
My main reference is Programming the Finite Element Method by Smith Margetts and Griffiths, which contains details of the 3D stiffness matrix, as well as code for many sample applications (plate and brick elements, as well as beams).
Doug Jenkins
Interactive Design Services
http://newtonexcelbach.wordpress.com/
RE: 3D Frame Interpolation Functiones
I actually stumbled upon and used your frame spreadsheet programs a couple of years ago when I studied FEM in university. They were very useful! I used the 2d programs but never checked out the 3d frame one but it looks very good and the large frame model you posted looks amazing! I'll definitley play around with it. Also thank you for the book reccomendation.