Giter Site home page Giter Site logo

fem_beam_frame's Introduction

FEM Frame Calculator

This MATLAB script enables the calculation of the beams stress and displacements due to tensile/compressive and bending loads. The script is user friendly, as the input of the frame geometry can be done using an input.txt file

Example of Frame Calculation

The following frame is going to be analyzed and for each beam the stresses and displacments will be calculated

Case details

In the above frame we have 8 beams with different directions in the plane. In addition to the nodal forces, we also have distributed forces, while the load due to the same weight has been added to each beam. In addition, the framework was resolved, having as support, bracing at the lower nodes and joints.

Mathematical formulas

For each beam we have 3 degrees of freedom at each node, so 6 degrees of freedom in total. Therefore the local stiffness matrix k, has dimensions 6x6 with the following form:

C:\Users\user\AppData\Local\Microsoft\Windows\INetCache\Content.Word\ματ.jpg

But due to the random direction of each beam, as in lattices, we transform k, so that the projections of the axial and shear forces on the beam enter the global stiffness matrix. Therefore displacements are calculated in global coordinates.

Distributed and concentrated forces are entered according to global coordinates. Furthermore, the distributed forces are transformed into epicondials through the integral.

C:\Users\kfyti\Downloads\A3\Pic1.png

Although in the elements between nodes (4,5) and (5,6), they receive a distributed force not perpendicular to the neutral axis of the beam, no further transformation is needed. The reason this happens is because the distributed forces are transformed into epinodal forces in the global system and so we can proceed with the solution for the displacements of the frame, which are done in the global coordinate system.

The loading due to the same weight is included with the corresponding epicondicular forces and moments which produces a constant distributed force along the length of the beam. But if we have a vertical beam, the loading of the weight consists of two epinodal forces in the y direction, divided between the two nodes.

The above calculations are done with the following piece of code:

Beam data

The beam used for the frame is an i-beam, corresponding to the identification IPE-200. The cross-section is shown in the figure below and has the characteristics shown in the next table.

From these data we keep the area, the moment of inertia about the strong axis (for bending) and the density.

Area=28.5 cm2 I=1943 cm4 ρ=22,4 kg/m

While the modulus of elasticity was considered equal to Ε=200 GPa

From the solution of the framework, the displacements of the framework are obtained, where if K is the global stiffness matrix, and F the epinodal forces in the global system, the displacements in global coordinates are obtained as Dglobal=K-1F

ΓTo find the forces at each node in the local system, the linear transformation is done

f=k*T*Dglobal

Also, if in a beam we have the presence of a distributed force, then the equivalent epinodal forces must be removed from the above calculation (which are also found in the global system). This is done by the following act:

f=k*T*Dglobal-Τ*Fdist

The above calculations are done with the following piece of code:

Result calculation

The shear force and bending moment diagrams were obtained from finite element theory for the beam, where from the cubic shape function N and from the relations

C:\Users\kfyti\Downloads\A3\Pic1.png

The axial force diagrams were obtained from the local forces of each element in the x direction. In the beams where we have no distributed force in the x-axis, the construction of the diagram is simple, since we have constant axial stress within the beam. But for the two beams at the top of the frame, the distributed force has an x-axis component as well. Therefore, the diagram of the axial forces has a linear form and the values ​​of the local forces in the x direction, give the two extreme values.

The above calculations are done with the following piece of code:

Summarizing, the code [beam_frame.m] having as input the coordinates of the nodes, the epinodal and distributed forces on each edge (beam) and the characteristics of the cross section, gives the displacements of the nodes, the local forces on each node and the NQM diagrams for each beam.

1η Δοκός

C:\Users\user\AppData\Local\Microsoft\Windows\INetCache\Content.Word\1a.jpg

2η Δοκός

C:\Users\user\Desktop\2a.JPG

3η Δοκός

4η Δοκός

5η Δοκός

6η Δοκός

7η Δοκός

8η Δοκός

Τα ακόλουθα διαγράμματα για κάθε δοκό είναι για πάκτωση

1η Δοκός

2η Δοκός

3η Δοκός

4η Δοκός

5η Δοκός

6η Δοκός

7η Δοκός

8η Δοκός

From the above analysis we conclude that when we have joint support the vertical beams at the base have a greater stress due to bending moments.

The maximum bending moment for joint support appears in the beam of the right base at node 8 with a value of M_8=101.16 kNm, while the corresponding bending moment for compaction is M_8=75.75 kNm.

Also, the same picture applies to the roof beams, with those corresponding to the frame with the joint showing higher bending moments than those of the compaction. However, the maximum bending flow occurs in both cases at the base of the frame.

Use

In order to input the data:

Frame geometry

In the frame.txt, in each line pass 4 numbers, with the following order seperated by space: node_start_index node_final_index Length_in_X_direction Length_in_Y_direction

Boundary condition and concetrated loads

In the frame_dist_force.txt, in each line pass 4 numbers, with the following order seperated by space: node_index, Force_in_X_diection, Force_in_Y_diection, Moment_in_node, Fixed_in_X_direction, Fixed_in_Y_direction, Fixed_in_moment

node_start_index node_final_index Force_start_value Force_final_value

fem_beam_frame's People

Contributors

tribanocci avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.