Programa ACCP - Memoria.pdf

download Programa ACCP - Memoria.pdf

of 122

Transcript of Programa ACCP - Memoria.pdf

  • 8/10/2019 Programa ACCP - Memoria.pdf

    1/122

    Volume I: Report

    SOFTWARE FOR PLASTIC

    COLLAPSE

    COMPUTATION INSTRUCTURES

    TFG presented for the DEGREE in MECHANICAL

    ENGINEERINGby

    Benito Moya Fernndezand

    Cristina Hernndez Olivar

    Barcelona, June 11th 2014

    Director: Mr. David Snchez Molina

    Departamento de Resistencia de Materiales y Estructuras en la Ingeniera

    Department of Materials Strength and Structures in Engineering

    (DRMEE)

    Universitat Politcnica de Catalunya (UPC)

  • 8/10/2019 Programa ACCP - Memoria.pdf

    2/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 2

    Benito Moya Fernndez

    Abstract:At the moment there are much software for structural design and computation, each one with

    its advantages and disadvantages.

    There are software for Finite Elements Analysis too that, in a general manner, has the

    capability to show the tensile status from a part under load.

    But there is not a software that, based on the definition of a structure in classical terms (Nodes

    and bars arrangement, each one with his physical and constructive characteristics), and taking

    a combination of loads acting and evolving in the time, give us an approaching of when and

    how that structure collapses.

    In this way, this project wants to do the following.

    - From the basis of structural matrix calculation, set up a logical operative for a

    computer, for plastic collapse computation is structures.

    - One time established this operative, to define the necessary data, in scope to do these

    calculations with a computer. This means, in addition to indicate the necessary data, to

    establish the data structure, so a computer could understand and operate with them

    in efficient form. This acts on input and output data.

    - One time data and its structure defined, we need to indicate the flow and evolution in

    time from this data, getting the flow diagram for the software. This is very important,

    because it will define the transformation of the information, and where we want to

    arrive with each one of the transformations.

    - The flow diagram will define, by default, a block diagram. Each block will become an

    intermediate step. And in each step we will define the operative blocks, in scope to getthe desired transformation in the input information.

    - At this point we will have the capability of to establish the first step from the software:

    The software pseudo-code. We will define the computation basis that we will use in

    pseudo-code and we will do all of steps (blocks) from the software. In this manner we

    can do the final software implementation in any programing language.

    -

    At the end we will choose a programing language, to program the final application

    code.

    In the first software release, it will be limited to a plane tensile state; it wants to mean that we

    will work in two dimensions. The computational basis to work in two or three dimensions arethe same, but the implementation in pseudo-code and programing language are very different,

    in 3D is very hardest than 2D.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    3/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 3

    Benito Moya Fernndez

    Abstraccin:Actualmente existen muchos programas para el diseo y clculo de estructuras, cada uno de

    ellos con sus ventajas e inconvenientes.

    Existe software para el anlisis por elementos finitos que, de una manera general, tiene la

    capacidad de mostrar el estado tensional de un elemento bajo carga.

    Pero no existe un software que, basado en la definicin de una estructura en trminos clsicos

    (Conjunto de nudos y barras, cada uno con sus propiedades fsicas y constructivas), y tomando

    una combinacin de cargas actuando y evolucionando a lo largo del tiempo, nos d una

    aproximacin de cuando y como la estructura colapsa.

    En este sentido, este proyecto pretende hacer lo siguiente:

    - Partiendo de las bases del clculo matricial aplicado a estructuras, establecer una

    operativa lgica para una computadora, para el colapso plstico de estructuras.

    - Una vez establecida sta operativa, definir los datos necesarios, con el objetivo de

    realizar estos clculos con una computadora. Esto significa, en adicin a los datos

    necesarios, establecer la estructura de estos datos, para que una computadora pueda

    interpretarlos y operar con ellos de una manera eficiente. Esto afecta a los datos de

    entrada y los de salida.

    - Una vez estn definidos los datos y su estructura, necesitamos indicar el flujo de estos

    datos y su evolucin en el tiempo, obteniendo el diagrama de flujo del programa. Esto

    es muy importante porque define las transformaciones de la informacin, y donde

    queremos llegar con cada una de ellas.

    -

    El diagrama de flujo os definir, por defecto, el diagrama de bloques. Cada bloque serun paso intermedio. Y cada paso definir la operativa del bloque, con el objetivo de

    obtener la transformacin deseada en la informacin de entrada.

    - En este punto tendremos la capacidad de definir el primer paso del software, el

    pseudo-cdigo del programa. Definiremos las bases de computacin que usaremos en

    dicho pseudo-cdigo y realizaremos todos los pasos intermedios (bloques) para el

    programa. De esta manera podremos realizar la implementacin final del programa en

    cualquier lenguaje de programacin.

    - Al final escogeremos un lenguaje de programacin, para programar el cdigo final de

    la aplicacin.

    En la primera edicin de este programa, se ha limitado al estado de tensiones en un plano,

    esto quiere decir que trabajaremos en dos dimensiones. Las bases de computacin para

    trabajar en dos o tres dimensiones son las mismas, pero el pseeudo-cdigo y la programacin

    final son muy diferentes, la programacin en 3D es mucho ms ardua que en 2D.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    4/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 4

    Benito Moya Fernndez

    Abstracci:Actualment existeixen molts programes pel clcul i disseny destructures, cadascun dells amb

    els seus avantatges i inconvenients.

    Existeixen programes per lanlisi per elements finits que, duna manera general, tenen la

    capacitat de mostrar lestat tensional dun element sota crrega.

    Per no existeix cap programa que, basat amb la definici duna estructura en els seus termes

    clssics (Conjunt de nusos y barres, cadascuna dells amb les seves propietats fsiques i

    constructives), i agafant una combinaci de crregues actuant i evolucionant al llarg del temps,

    ens doni una aproximaci de quan i com lestructura collapsa.

    En aquest sentit, aquest projecte vol fe el segent:

    - Partint de les bases de clcul matricial aplicades a estructures, establir una operativa

    lgica per una computadora, pel collapse plstic destructures.

    - Una vegada establida aquesta operativa, definir les dades necessries, amb lobjectiu

    de realitzar els clculs amb una computadora. Aix significa, a ms de les dades

    necessries, establir lestructura daquestes dades, perqu una computadora pugui

    interpretar-los i operar amb ell duna manera eficient. Aix afecta tant a les dades

    dentrada com a les de sortida.

    - Una vegada definides les dades i la seva estructura, necessitem indicar el flux

    daquestes dades i la seva evoluci en el temps, obtenint el diagrama de flux del

    programa. Aix s molt important perqu defineix les transformacions, i on volem

    arribar amb cadascuna delles.

    -

    El diagrama de flux definir, per defecte, el diagrama de blocs. Cadascun dels blocsesdevindr un pas entremig. I cada pas definir loperativa del bloc, amb lobjectiu

    dobtenir la transformaci desitjada amb la informaci dentrada.

    - En aquest punt tindrem la capacitat de definir el primer pas del programa, el

    pseudocodi del programa. Definirem les bases de computaci que farem servir dins del

    mencionat pseudocodi i realitzarem tots els passos entremig (blocs) pel programa.

    Daquesta manera podrem realitzar la implementaci final del programa en qualsevol

    llenguatge de programaci.

    - Finalment escollirem un llenguatge de programaci, per programar el codi final de

    laplicaci.

    A la primera edici daquest programa, sha limitat a lestat tensional dins dun pla, aix vol dir

    que treballarem en dues dimensions. Les bases de computaci per treballar en dues o tres

    dimensions son les mateixes, per el pseudo-codi i la programaci final son molt diferents, la

    programaci en 3D es molt mes complicada que en 2D.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    5/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 5

    Benito Moya Fernndez

    Contents

    Abstract: .............................................................................................................................2

    Abstraccin: ........................................................................................................................3

    Abstracci: ..........................................................................................................................4

    1. Introduction ............................................................................................................6

    2. Report .....................................................................................................................72.1 Software target ............................................................................................................7

    2.1.1 Graphical User Interfaces (GUI) ............................................................................7

    2.1.2 Program capabilities .............................................................................................7

    3. Solved examples ......................................................................................................9

    3.1 Single straight beam. ....................................................................................................9

    3.2 Half portico, all rigid nodes .........................................................................................10

    4. Calculation basis .................................................................................................... 17

    4.1 Matrix calculation basis. .............................................................................................17

    4.1.1 Stiffness Matrix in Local Reference System (LRS) ...............................................18

    4.1.2 Nodal force vector in Local Reference System (LRS). ..........................................20

    4.1.3 General reactions and displacements .................................................................294.1.4 Global reference system .....................................................................................30

    4.1.5 Global matrix assembly ......................................................................................30

    4.2 Resolution procedure .................................................................................................33

    4.2.1 Previous requirements .......................................................................................33

    4.2.2 Calculation procedure ........................................................................................34

    5. Data for calculations .............................................................................................. 41

    5.1 General data ...............................................................................................................42

    5.2 Descriptive data ..........................................................................................................42

    5.2.1 Nodes .................................................................................................................42

    5.2.2 Beams .................................................................................................................43

    5.3 Operative data ............................................................................................................45

    6. Data Base .............................................................................................................. 48

    7. Software description .............................................................................................. 49

    7.1 Functional program description .................................................................................49

    7.1.1 Data input ...........................................................................................................51

    7.1.2 Calculations ........................................................................................................56

    7.1.3 Result presentation. ...........................................................................................57

    7.2 Internal workings ........................................................................................................59

    7.2.1 Data input and preparation ................................................................................61

    7.2.2 Calculations ........................................................................................................83

    7.2.3 Presentation of solutions ..................................................................................106

    7.3 Programming ............................................................................................................108

    7.3.1 Data base programming ...................................................................................109

    7.3.2 Application programming .................................................................................112

    8. Bibliography ........................................................................................................ 114

    9. Quick Start Guide ................................................................................................. 115

    9.1 Project ......................................................................................................................115

    10. ANNEX I - Budget ................................................................................................. 121

    10.1 Developing expenses ................................................................................................121

    10.2 Business expenses ....................................................................................................121

    10.3 Sale price ..................................................................................................................121

    11. ANNEX II Code in Visual Basic ............................................................................ 122

  • 8/10/2019 Programa ACCP - Memoria.pdf

    6/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 6

    Benito Moya Fernndez

    1. IntroductionAt the moment there are much software for structural design and computation, each one with

    its advantages and disadvantages.

    There are software for Finite Elements Analysis too that, in a general manner, has the

    capability to show the tensile status from a part under load.

    But there is not a software that, based on the definition of a structure in classical terms (Nodes

    and bars arrangement, each one with his physical and constructive characteristics), and taking

    a combination of loads acting and evolving in the time, give us an approaching of when and

    how that structure collapses.

    In this way, this project wants to do the following.

    - From the basis of structural matrix calculation, set up a logical operative for a

    computer, for plastic collapse computation is structures.

    - One time established this operative, to define the necessary data, in scope to do these

    calculations with a computer. This means, in addition to indicate the necessary data, to

    establish the data structure, so a computer could understand and operate with them

    in efficient form. This acts on input and output data.

    - One time data and its structure defined, we need to indicate the flow and evolution in

    time from this data, getting the flow diagram for the software. This is very important,

    because it will define the transformation of the information, and where we want to

    arrive with each one of the transformations.

    - The flow diagram will define, by default, a block diagram. Each block will become an

    intermediate step. And in each step we will define the operative blocks, in scope to getthe desired transformation in the input information.

    - At this point we will have the capability of to establish the first step from the software:

    The software pseudo-code. We will define the computation basis that we will use in

    pseudo-code and we will do all of steps (blocks) from the software. In this manner we

    can do the final software implementation in any programing language.

    -

    At the end we will choose a programing language, to program the final application

    code.

    In the first software release, it will be limited to a plane tensile state; it wants to mean that we

    will work in two dimensions. The computational basis to work in two or three dimensions arethe same, but the implementation in pseudo-code and programing language are very different,

    in 3D is very hardest than 2D.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    7/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 7

    Benito Moya Fernndez

    2. Report

    2.1Software target

    As we have indicated, this application is intended to fill the gap for calculating the plastic

    collapse in structures, in scope to get this we will program the graphic interfaces and

    performances that we will explain below.

    2.1.1 Graphical User Interfaces (GUI)

    The program has a limited number of friendly Graphical User Interfaces, at specific application

    and for specific operations, we can list the following (In the Annex IVApplication description,

    we can find a more detailed explanation about the GUIs, and we can see an image from each

    one of it):

    - Welcome screen: Is the first screen we can see when the program starts, in this screen

    we can choose the basic options from initial job.

    -

    Creation/edition of structures screen: Is the screen that will appears when we choosecreate a new structure, or load a saved structure, in the welcome screen. (In this case,

    the saved structure will appear in the graphic area).

    - Output data screen: Is the screen when will appear the result data from the

    computations.

    There are others screens that will appear in some cases (Information Windows, Message

    boxes, etc). Is too long make a list for all Windows and screens. The three listed above are

    the basic screens, others screens are hanged from these.

    2.1.2

    Program capabilitiesIn this program release, the computation capabilities implemented are for plastic collapse

    computation in structures, with the performances explained bellow.

    - Structural capabilities. Will be described more detailed on Annex IComputation

    basis:

    o Two dimensions structures with a maximum of 200 nodes, we can define each

    node independently as a support node or structural node.

    o Straight beams with a constant section, we can define independently each

    junction in both nodes for each beam.

    -

    Load capabilities. Will be described more detailed on Annex IComputation basis:o

    Uniform loads must be defined on beams; between two nodes (No free spaces

    on loaded beam are permitted).

    o Uniform load are limited to three types: Triangle, constant and trapezoidal

    loads.

    o We can define a point load on any place on the beam.

    o

    The loads evolution function along the time can be defined independently for

    each load. The evolution function is restricted to linear, quadratic, cubic, and

    square root from time.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    8/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 8

    Benito Moya Fernndez

    - Calculation procedure. The detailed calculations procedure is explained on Annex I

    Computation basis:

    o Structural Matrix Calculation applied to plastic collapse.

    o Matrix determinant solver, the reduced (1) stiffness matrix determinant is

    equal to zero when the structure collapses.

    -

    Data presentation. On Annex II Calculation data, are explained all data we use for

    calculations, both internally and externally data:

    o Data input via the GUI. Text mode available via keyboard.

    o Structure layout and detailed list printing available.

    o

    Data output via the GUI, presentation in text mode, availability for printing

    with the following data:

    Nodes plasticization list, with time (order) for each plasticization.

    Loads level for each plasticization.

    o Data output via the GUI, presentation in graphical mode, with the following

    data: Drawing of structure, on the graphical window, indicating the position

    and order of appearance for each node plasticization.

    Individual data presentation for each plasticized node, selecting on

    each one in the pop up list.

    o Availability for jumping to each one presentation (Graphical or text).

    o Availability for show individual load diagram from each beam.

    o Availability for show saved data form older projects.

    - Pre-programmed data base. Explained with more detail on Annex III Data base:

    o

    Common steel profiles included.

    o

    Availability for programming self-defined profiles, and save these profiles to

    further uses.

    - Data storage. Explained with detail on Annex IV Software description. Availability for

    two storage modes:

    o Project TXT mode: Self-defined text file (*.DCP file type) with structure beams

    definition. Editable with common text editor.

    o Solution TXT mode: Self-defined text file (*.RCP file type) with plastic collapse

    solution data.

    o Data base storage: Standard Microsoft Access data base

    (1) The reduced stiffness matrix includes the columns that have a free movement in Z axis

    (Rotational movement). This mean that at least one beam has an articulated junction

    to this support.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    9/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 9

    Benito Moya Fernndez

    3. Solved examplesThree examples are shown below, solved them in a manual way, using the same system that

    the program uses. And after each manual solution, program solution is shown for each one.

    3.1Single straight beam.

    The first example is a continuous straight beam, with point load in the middle of the beam.

    This example is very illustrative, because we can solve it in two ways, we can solve it with

    classical torque formulas manually, and we can solve it with matrix calculations with the

    program.

    After all we can compare all solutions.

    In matrix calculations; because we need at least a 3x3 matrix and if we have only two rigid

    nodes, we dont have a matrix; we must put a dummy node in an intermediate location in the

    beam. With that we get a 3x3 matrix.

    This dummy node doesnt change the calculations results.

    The manual calculations for a straight beam are:

    ( )

    In example, for a beam with 1000mm length, and a profile IPE-100 we have:

    When the load Farrives to 86.680N the beam collapses.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    10/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 10

    Benito Moya Fernndez

    If we program this data on software:

    Node 1 : Absolute position (3,000 ; 3,000)Type : Support

    Node 2 : Absolute position (3,250 ; 3,000)Type : Not support

    Node 3 : Absolute position (4,000 ; 3,000)Type : Support

    Beam 1 : Profile IPE-100Start node1 (Junction rigid)

    End node2 (Junction rigid)

    No load defined

    Beam 2 : Profile IPE-100

    Start node2 (Junction rigid)

    End node3 (Junction rigid)

    Load: Point load250 N/lapseLinear function

    Distance from start node 250mm

    In Minimum step between iterations we program the value 0,1

    The program gives us the data shown below:

    - The structure collapses at time lapse 346,8

    - This lapse means that the load is 86.700 N

    And the program indicates that a new articulation appears at absolute point (3,500 ; 3,000),

    this means that the new node appears in the center of the beam.

    The difference between manual load and computed load is because we have a minimum step

    of 25N (250N/Lapse x 0,1 Minimum iteration step) and only when the load is bigger than beam

    cans support, collapse arrive. In the previous step load is lower than collapse load:

    3.2

    Half portico, all rigid nodes

    The second example proposed is the half portico. We will solve this example only by matrix

    calculations way (Manual and program).

    The structure appears in drawing:

    With manual calculations we will arrive until the first articulation appears, because the

    following steps are similar in each stage.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    11/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 11

    Benito Moya Fernndez

    First step is composing the elemental stiffness matrix from each beam:

    Beam N 1:

    - Start node : 1

    -

    End node : 2- Profile : IPE-100

    - Beam length : 2.000mm

    - Profile area : 1.030 mm

    - Y Inertia : 1.710.000 mm4

    - Wpl Y : 39.400 mm

    - Angle : 90

    -

    Young modulus : 210000 MPa

    - Rp 0,2% : 275 MPa

    -

    Load defined as:

    o

    Point load500 t (N)o Angle 180 in general axis - Location 1000mm from start node

    Elemental stiffness matrix in local axis:

    0 0

    0 0

    0

    0

    0

    0

    0 0 0 00

    0

    0

    0

    0 0 0 0

    0 0

    0 0

    0 0 0 0

    0 0

    0 0

  • 8/10/2019 Programa ACCP - Memoria.pdf

    12/122

  • 8/10/2019 Programa ACCP - Memoria.pdf

    13/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 13

    Benito Moya Fernndez

    Beam N 2:

    - Start node : 2

    - End node : 3

    -

    Profile : IPE-100

    -

    Beam length : 2.000mm- Profile area : 1.030 mm

    - Y Inertia : 1.710.000 mm4

    - Wpl Y : 39.400 mm

    -

    Angle : 90

    - Young modulus : 210000 MPa

    - Rp 0,2% : 275 MPa

    - Load defined as:

    o Point load500 N/Lapse

    o

    Angle 270 - Location 1000mm from start node

    Elemental stiffness matrix and forces are the same for local and general axis (Angle for this

    beam is zero)

    0 0 0 0

    0 0

    0 0

    0 0 0 0

    0 0

    0 0

    0

    -250t

    || -125000t

    0

    -250t

    125000t

  • 8/10/2019 Programa ACCP - Memoria.pdf

    14/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 14

    Benito Moya Fernndez

    And now we must to compose general stiffness matrix and forces:

    4158 0 4158000 -4158 0 4158000 0 0 0

    0 250950 0 0 -250950 0 0 0 0

    4158000 0 5544000000 -4158000 0 2772000000 0 0 0

    -4158 0 -4158000 112308 0 4158000 -108150 0 0

    0 -250950 0 0 251488,65 538650 0 -538,65 538650

    4158000 0 2772000000 -4158000 538650 12726000000 0 -538650 35910000

    0 0 0 -108150 0 0 108150 0 0

    0 0 0 0 -538,65 -538650 0 538,65 -538650

    0 0 0 0 538650 359100000 0 -538650 718200000

    -250t

    0

    125000t

    -250t

    || -250t

    -250000t

    0

    -250t

    125000t

    In first stage we can reduce the stiffness matrix the columns and arrows 1, 2, 3, 7, 8 and 9;

    because those columns and arrows are not affected by movements (Are supports with all

    movements restricted).

  • 8/10/2019 Programa ACCP - Memoria.pdf

    15/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 15

    Benito Moya Fernndez

    Now we have a matrix system like the figure:

    Or in other way:

    One system with three equations.

    The solution for this system is:

    Now we can solve the system in two ways:

    -

    Solve displacements in function of parameter t, through multiple iterations, andcheck forces and torques for each beam (In the same way that program uses).

    - Using an inverse analysis, because we want know when a new articulation appears.

    We can check beam by beam, what torque I need to arrive to plasticization in the

    beam.

    We choose the second way, because we know the displacements in one node in function from

    parameter t

    In our example, both beams have the same profile, and the torque we need to cause the

    plasticization is:

    In this case, for node 2, each beam increases the torque on node the same quantity, so we can

    suppose that each beam receives the same torque from complete structure (this theorization

    is correct because we have a symmetric system on a diagonal through node 2).

  • 8/10/2019 Programa ACCP - Memoria.pdf

    16/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 16

    Benito Moya Fernndez

    Then:

    ||

    The program calculation, just arriving to first articulation, indicates the next data:

    - The first articulation appears at time lapse 43,375

    - The torque on beam is 10.875.000 Nmm

    - The plasticization is on beam number two

    The next step is analyze structure and re-compose general matrix, recalculate and find the next

    articulations.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    17/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 17

    Benito Moya Fernndez

    4. Calculation basis

    4.1Matrix calculation basis.

    Like we have mentioned in the introduction, the calculation basis for plastic collapse in

    structures is the same that we can use in classical mathematics for matrix calculations.

    Here we dont like do a matrix calculation course, so we will not stop in the calculations

    demonstration.

    Only we stop briefly explain those concepts that, for some special reason, may be relevant for

    the program understanding.

    For every structure, and starting from matrix calculation basis, we can define the Stiffness

    Matrixfrom a structure like the composition of each beam to these matrix.

    For each beam we can define a particular matrix system (Stiffness matrix and nodes loads),

    attending to geometrical and physical parameters from beam (Material, profile, length, nodes

    fixation, etc). Like we can see in figure 1:

    So each beam has associated a local matrix system like:

  • 8/10/2019 Programa ACCP - Memoria.pdf

    18/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 18

    Benito Moya Fernndez

    In a simplified manner we can write:

    || || || ||Where:

    -

    R is the nodes reactions vector.

    - F is the nodes forces vector, associated to the beam.

    - K is the stiffness matrix.

    - Dis the displacements vector

    The index () indicates that we are in local reference system

    We know how to calculate the stiffness matrix in local system too. We can convert the system

    to the general reference system applying a rotation with the appropriate degrees and side.

    4.1.1

    Stiffness Matrix in Local Reference System (LRS)The stiffness matrix in LRS means that the beam is in horizontal position, the node on the left

    side is the origin node, and the node on the right side is the destination node.

    We can define three types of stiffness matrix, in accordance with the nodes fixation.

    Straight beam with both rigid nodes:

    0 0

    0 0

    0

    0

    0

    0

    0 0 0 0

    0 0

    0

    0

    (2)

    Where:

    -

    L is the beam length

    - A is the beam section area.

    - I is the moment of inertia from beam profile

    - E is the Young modulus.

    Note: There are others simplified expressions, but are irrelevant for the application purpose.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    19/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 19

    Benito Moya Fernndez

    Straight beam with one rigid node and other articulated node:

    0 0

    0 0

    0

    0

    0

    0 0 0

    0 0 0 0

    0 0

    0

    0 0 0 0 0 0 (3)

    In this case we have supposed that the rigid node is on the left side. In the other case, theterms must be inverted, and the matrix is as:

    0 0

    0 0

    0 0 0

    0 0 0 0 0 0

    0 0

    0 0

    0 0 0 0 0 0

    (4)

    Straight beam with both articulated nodes:

    0 0

    0 0

    0 0 0 0 0 0

    0 0 0 0 0 0

    0 0 0 0

    0 0 0 0 0 0

    0 0 0 0 0 0 (5)

  • 8/10/2019 Programa ACCP - Memoria.pdf

    20/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 20

    Benito Moya Fernndez

    4.1.2 Nodal force vector in Local Reference System (LRS).

    The nodal force vector, rather, the contribution of the forces present in the beam on the nodal

    forces set in the structure, will depend of the beam loads.

    We will avoid the demonstration that nodal forces caused by the bars would be the same

    reactions on supports (no horizontal or vertical displacement) of the same features as the linksof the bars (rigid or articulated), but changed sign.

    At this time, the calculations here explained are intended for to compose the LRS matrix set

    (local stiffness, reactions, forces and displacements), to assembly the general matrix system.

    All these calculations will be used one more time in the reverse process, the analysis of all and

    every one of the beams, once known the forces, torques and displacements in all nodes in the

    general matrix system.

    We will do:

    ||

    (6)

    In this way, in dependence from the junction type in the nodes we can find:

    - Two articulated nodes

    - One articulated node and one rigid node

    - Two rigid nodes.

    But for the matrix calculation in structures, we only take the nodal forces that a beam

    generates in the following conditions:

    - We take the bar independently from the structure, and consider both nodes rigid.

    - The nodal will be the same as the reactions in the nodes, but inverting sign.

    The reactions depend from loads on the beam, logically if we dont take count with the own

    weight, and the beam has no loads, there are no reactions, and the beam dont contributes to

    the structure (On nodal forces).

    With the loads, we can find many distributions (Localized or distributed loads), and the

    distribution law can take many forms.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    21/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 21

    Benito Moya Fernndez

    Here is where perhaps we have the greatest limitation, because we discard all loads with

    irregular distribution (Those loads we cant define through a mathematical function), its

    implementation by software can be very difficult.

    We will distinguish between point and distributed loads.

    We must limit the point loads, because make many point loads on the same beam isnt logical,

    for that we can use distributed load.

    For the distributed loads we can define many distribution laws, but for practicality we will limit

    these loads to only one type. We will define this type as trapezoidal load.

    This loads organization give us, as discussed below, four combinations, one point load and

    three distributed loads.

    Point loads: We will define the point load applied in any place on the beam and with any

    incidence angle, like the figure:

    In these conditions, we can decompose the force in two components, the horizontal

    component, co-linear with the beam axis and other one vertical, perpendicular to the same

    axis.

    Note: The sign comes from international sign convention (Positive to UP and RIGHT side,

    negative to DOWN and LEFT side). If we draw the force on the other side from the beam

    (stretching instead of pushing the beam) the forces appear like the figure, and we dont need

    the sign.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    22/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 22

    Benito Moya Fernndez

    In these conditions the forces will be:

    For the horizontal reactions we have:

    For the vertical reactions and torques we have:

    So the nodal forces vector, in local reference system, for one beam with a point load in any

    point on the beam and with any incidence angle, would read:

    ||

    (7)

  • 8/10/2019 Programa ACCP - Memoria.pdf

    23/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 23

    Benito Moya Fernndez

    Distributed loads: Like we have explained in the beginning of this section, the distributed loads

    are limited to only one type we have named trapezoidal load, like the figure:

    Although is presented in normal distribution (perpendicular to beam axis), we can find other

    no normal distribution. In example, the wind load on a roof. So we will define the general

    distributed load like in the figure:

    We introduce the constraint that the load is over the entire length of the beam, because if we

    leave free areas (with no load) on the beam, the calculation will be more complicated.

    This is not a limit for calculation, because in we need free areas in a beam, we can define

    auxiliary nodes in the desired beam.

    Any other type of distributed load can be defined as a variant of this, so for example, a load

    with uniform distribution across the bar would be a special case in which:

    And triangular load that would cover the entire bar would be one that:

    This allows us to use only one calculation procedure, having defined the reactions in nodes 1

    and 2.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    24/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 24

    Benito Moya Fernndez

    Calculate directly the reactions produced by this geometry can be tricky, but we can apply

    superposition, as shown in the picture:

    The independent calculation for each part of load, although is not simply, is more easy than

    direct calculation.

    For each case we have that there are two components (As in point load), one horizontal part,

    co-linear to beam axis, and other one perpendicular to the same axis.

    Uniformly distributed load: If we define the uniformly distributed load like shown in the

    picture:

    We have that the reactions will come defined by the expressions:

    -

    Horizontal reaction (co-linear to beam axis):

    - Normal reaction (Perpendicular to beam axis): We define the normal component like

    in the drawing:

    In these conditions we have that the vertical reactions are:

    And the induced torques on the nodes is:

  • 8/10/2019 Programa ACCP - Memoria.pdf

    25/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 25

    Benito Moya Fernndez

    With all this, the vector of nodal forces in LRS for a rod with a uniformly distributed load and

    inclined, would be as follows:

    ||

    (8)

    Triangular load: If we define the triangular load like the figure:

    We have that the reactions and torques comes from the expressions:

    - Horizontal reaction (co-linear to beam axis): With the load distribution like the figure,

    the reactions would be:

    -

    Normal reaction (Perpendicular to beam axis): We define the normal component like

    in the drawing:

  • 8/10/2019 Programa ACCP - Memoria.pdf

    26/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 26

    Benito Moya Fernndez

    We have that the vertical reactions come from the expressions:

    And the induced torques on the nodes is:

    In case with inverted load, and the higher load side would be in the node 2, like in thepicture bellow:

    The horizontal reactions will be:

    The vertical reactions will be:

    And the torques will be:

  • 8/10/2019 Programa ACCP - Memoria.pdf

    27/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 27

    Benito Moya Fernndez

    In these conditions, we can define the vector of nodal forces in LRS, for a triangular load as:

    If the higher load is in the node 1:

    ||

    (9)

    In the other case:

    ||

    (10)

  • 8/10/2019 Programa ACCP - Memoria.pdf

    28/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 28

    Benito Moya Fernndez

    Finally, for a composite trapezoidal load we would have:

    Case 1, higher load in node 1:

    ||

    (11)

    Case 2, higher load in node 2:

    ||

    (12)

    These two expressions are those implemented in the program, regardless of what type of load

    is applied, since the values of the parameters that define the charge will determine its type.

    This does not mean that, to facilitate data entry, will schedule a series of menus that

    somehow, and pre-define the type of load.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    29/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 29

    Benito Moya Fernndez

    4.1.3 General reactions and displacements

    The general reactions and displacements are part of the problem to solve, so that we use it in

    Global Reference System (GRS), although we translate it after to LRS.

    There are special nodes in the set of structure nodes, nodes where we know displacements

    and reactions, these nodes help us to solve the system

    - At support nodes all displacements are zero in all directions, so we can do:

    0

    0

    || || 0

    0

    0

    0 (13)

    At a node other than a support all reactions will be zero, then we can do:

    0

    0

    || || 0

    0

    0

    0 (14)

    This mean that in all supports, in general matrix system (In global reference system), all

    displacements will be zero.

    In the same way, in all nodes other than support, in general matrix system, we will take all

    reactions like as zero.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    30/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 30

    Benito Moya Fernndez

    4.1.4 Global reference system

    Like we have already explained, the conversion to global reference system is made applying a

    rotation to beam

    We must take care with local reference system, because although that the beam is in

    horizontal position, if the origin node is on the right, really the beam is rotated 180 degrees.

    The matrix for change the reference system comes defined like:

    0 0 0 0 0 0 0 0

    0 0 1 0 0 0

    0 0 0 00 0 0 00 0 0 0 0 1 (15)

    Being the angle that is necessary to turn the local reference system to match the global

    reference system.

    To change the entire matrix system we must do:

    Nodal forces:

    For the nodal forces, we will do the operation:

    || || || Stiffness matrix:

    For the stiffness matrix, we will do the operation:

    || || We will do both operations for all and each one of the beams.

    4.1.5 Global matrix assembly

    With all we have seen in the last section, we can get a set of matrix and nodal force vectors for

    all an each of one of beams. Now we need to compose, beginning in this set, the global

    stiffness matrix, and the global forces vector.

    Each beams node,its name and number is irrelevant, has correspondence with a general node

    in the structure.

    Each beams stiffness matrix can be divided in four sub-matrices with rank 3x3, like in the

    scheme:

  • 8/10/2019 Programa ACCP - Memoria.pdf

    31/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 31

    Benito Moya Fernndez

    (18)

    Each one of these sub-matrix has relation with other sub-matrix with the same range, included

    in the general stiffness matrix, relate mode is well known.

    In example, we will suppose that the local node A has correspondence with the general node

    3, and the local node B has correspondence with the general node 5, like we can see below:

    As we can find through the structural matrix calculations, from this structure we can extract a

    matrix with range 24x24 (3 columns and 3 arrows for each node), the general stiffness matrix

    appears like:

    (19)

    From this representation it follows that in the sub-matrix 3-3 (row 3 column 3) corresponds tothe sub-matrix from beam AA, in the same way the sub-matrix 3-5 (row 3 column 5)

    corresponds to the sub-matrix from beam AB.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    32/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 32

    Benito Moya Fernndez

    We will do the general matrix assembly adding in each general sub-matrix all and each one

    sub-matrix in all beams that have correspondence.

    In the same way we will do with the general nodal forces vector.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    33/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 33

    Benito Moya Fernndez

    4.2Resolution procedure

    The resolution procedure is, in a general view, the same that we can use for manual

    calculations.

    There is the caveat that, manually, we are the processor, and we can discern the type of

    problem, choosing one path or another when it comes to solving the equations system, based

    on that type.

    In this case: A logical calculations structure, that allows us to program it in a computer, we

    must to choose a set of environment variables, these variables restrict the number of possible

    solutions to program, in scope to making this project an allowable work from the point of view

    of the resources and time available.

    For do that we must begin from a previous limitations (Typology of structures that we want to

    solve) and restricted calculi parameters.

    4.2.1 Previous requirements

    As we have commented, we will limit the software to a typology of structures and restricted

    calculi parameters.

    - The equations system is presented in a matrix view like:

    || || || || Where:

    o R is the reactions in the supports from a load combination on the structure.

    o

    F is the nodal forces in the structure.

    o K is the structure stiffness matrix.

    o dis the nodes displacements.

    - Each node will be defined, in each one of the four parts from the equation, by all

    beams that connect with the node.

    -

    For calculations, in addition to all the premises of the matrix calculations in structures,

    we will restrict:

    o We will calculate only plane structures (2D structures).

    o In all nodes other than support, the reaction is zero.

    o

    In all support nodes, the displacements and rotations are zero.o All applied loads are defined (Or we can define it) in a nodal form,

    unequivocally, both in its magnitude and its evolution along the time.

    With all this we can define the calculation procedure.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    34/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 34

    Benito Moya Fernndez

    4.2.2 Calculation procedure

    The calculation procedure is based in, through linear combinations of rows from stiffness

    matrix; convert the matrix in its diagonal form.

    || || || || || The identity matrix in this case acts as a wildcard, linear combinations of rows and columns

    that apply to the stiffness matrix, apply it to the identity matrix. This will leave us the

    equations system like:

    || || || || ||

    Where C is a coefficients matrix to apply to addition vector Reactions and Forces

    In this way, for each row (separate equation) we get an expression like:

    That we can write like:

    It wants mean: The displacements in a node, in a determinate sense (Vertical or horizontal), is

    function from a linear combination of all and each of one the forces and reactions in thestructure.

    In this stage, we can look at point where the displacements are zero (The supports) from these

    points we can take:

    We will obtain many expressions of this type as supports having the structure (Actually

    equations triple support points), allowing us to establish a new equations system, to find the

    reactions in terms of the forces applied to the structure

    It wants mean: The reactions in all supports are proportionally to a linear combination of all

    and each of one the forces and reactions in the structure.

    Once we found the reactions of all the supports and in every way, we solve the rest of the

    system to find the displacements and rotations of all nodes, using the expression (24).

    All steps to obtain the stiffness matrix, making the diagonal of this matrix and construction of

    coefficients matrix, are steps that we make at the beginning of the calculation process. From

  • 8/10/2019 Programa ACCP - Memoria.pdf

    35/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 35

    Benito Moya Fernndez

    this we get displacements and rotations in each node, and we make the reverse process,

    obtaining the result torques in each node from each beam, and solving the stresses in all

    beams.

    Basically, for all and each of one the beam the process is:

    Find for each beam a displacements vector like:

    || (27)

    This vector is only the nodes displacements from both nodes of the beam, previously

    calculated.

    On this vector we apply a rotation, equal in magnitude, but reverse in sense, to the rotation

    applied before to forces vector from beam, then appears a vector like:

    ||

    (28)

    We can see that the rotations are the same in both vectors.

    In this new context, we can establish a new equations system as follows:

    || || ||

  • 8/10/2019 Programa ACCP - Memoria.pdf

    36/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 36

    Benito Moya Fernndez

    The bsub-index indicates that is a particular expression for each beam, is a direct solution,

    solving the multiplication we can get the nodal forces from the beam.

    With this we can solve the stress along the beam, found the maximum stress and verifying

    what load is greater than the beam can resist.

    Operate with all these data (Forces and torques) may be very hard, so we will make the

    following simplifications:

    First simplification:

    -

    Is well known that the normal stresses distribution and torque distribution, along the

    beam, have a law in manner that when the normal stress is maximum, the torque

    stress is zero and vice versa.

    - Normally, in a structure, the torque stresses are very much bigger than the normal

    stresses.-

    So, we can dispense the normal stress when we will calculate the stress law in the

    beam.

    Second simplification:

    - In a general manner, the axial forces cant make an articulation (Strictly talking),

    because they are parallel to axis, they can make only a beam break, and this appears

    only when the axial force is very big, and an articulation is formed before it, through

    torque stress.

    - So, we can dispense the axial forcers when we will calculate the stress law in the

    beam.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    37/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 37

    Benito Moya Fernndez

    With these conditions we can tell:

    - For the plastic collapse in structures, we only need to count the flexion torque on the

    end from all and each of one of beams, and not-nodal loads.

    -

    The torque evolution along the beam will determine where, when and how the

    articulation can be formed.

    Now, for the resolution, we must to do:

    - Define in a clear, logically and structured manner, how the torque will evolve along the

    beam.

    - In the same way, define the possibility that the beam will collapse in a concrete point.

    For the torque evolution along the beam, we will apply the superposition theorem, exploding

    the torque in two parts, the hyper-static part and the iso-static part.

    -

    The hyper-static part is easy to solve, in fact the hyper-static nodal torques are theanswers from expression (29). The fact that the nodes have been articulated or fixed

    nodes, will come implicit with the solutions, so if the node is articulated the torque will

    be zero, If other value appears with an articulated node, there are a mistake on

    calculations. The torque evolution along the beam is very easy, because is a linear

    interpolation between both nodes, is very important the torque sign:

    The expression that will define the torque is:

    In this expression, each torque must been taken in count with his sign.

    Note: Node 2 torque, although is negative, is presented in positive sense, because we

    want the result torque presented on the side of the traction. In the same way, when

    both torques are in the same sense, in the beam appears a zero crossing (The flexion

    torque is zero).

  • 8/10/2019 Programa ACCP - Memoria.pdf

    38/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 38

    Benito Moya Fernndez

    - The iso-static part depends exclusively from the loads on the beam, obviously if there

    are not load on the beam, the iso-static part will be null.

    In the same way we did with the reactions calculation from each beam, and having as

    target to compose the general matrix system, we will restrict the calculations only on a

    point load on the beam, in the concentrate loads case:

    Or, in the distributed load case, we will restrict the load to a trapezoidal form, like we

    did in the section 4.2.1

    Defining all others cases like a variant of this case. In the same way we did with the

    reactions. So we can define only one calculations procedure

    As we have indicated at begin of this chapter, we will obviate the axil forces when we calculate

    the plastic collapse; so we only take in count the forces perpendicular to the beam.

    In the point forces case, we can see that the torque evolves along the beam with the

    expression:

    With this, the total torque on a beam with point loads applied, will be the addition of both iso-

    static and hyper-static components, the expression will be:

  • 8/10/2019 Programa ACCP - Memoria.pdf

    39/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 39

    Benito Moya Fernndez

    With the distribute loads case, we return to apply superposition theory.

    We will define L as total beam length between nodes 1 and 2. In these conditions, and without

    axial load, we have for each part that we have divided the trapezoidal load:

    -

    Uniform load: Torque in x function is:

    -

    Triangular load: The triangular load has a problem, is easier starting calculations fromnode where load is zero. The torque expression in x function will be the same,

    independently how the load is distributed, we will invert the axis system if necessary,

    because start the calculations from other side, force us to use superposition theory in

    each fraction of x. The torque expression with this particularity will be:

    -

    Trapezoidal load: The trapezoidal load, logically and with the starting node

    particularity, will be the addition of other two loads.

    In these conditions, the total torque along a beam with distributed loads will be given us by

    the expression:

  • 8/10/2019 Programa ACCP - Memoria.pdf

    40/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 40

    Benito Moya Fernndez

    The expressions (30), (32) and (36) are those that define the torques on the beams in function

    of applied loads. These expressions are the only expressions programmed, because the load

    definition will obviate the part of expression that is not necessary.

    In example: For an uniformly distributed load, q1=q2, the last part in expression (36) is zero

    To find a valid solution, we must find the point (The geometrically point x) where the

    expressions arrive to the maximum value, and make these values equals to the maximum

    stress that the beam can support, in this way we can find the load that makes a plastic

    articulation in the point.

    In the point load case, if the articulation is not yet created on the nodes, will be created in the

    load application point, so to find the load that creates an articulation, we only need make the

    torque force in this point be equal to the plastic moment resistance from the beam, and solve

    the equation.

    The distributed load case is more complicated, we must to derivate the torque expression in

    function from x and make the derivative expression equal to zero, to find the point where is

    located the maximum torque.

    The torque derivative expression in function from x is:

    So:

    So the maximum moment is calculated by substituting this value in expression (36).

    Although appears complicated, we must remember that all values for expression (39) are

    known, they are the numeric values from beam length and loads. After we only need put the

    value given from expression (39), the x value, in the expression (36)

  • 8/10/2019 Programa ACCP - Memoria.pdf

    41/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 41

    Benito Moya Fernndez

    5. Data for calculations

    All we have saw in the Annex-I will be structured in a logically manner, ever from a computer

    point of view, sometime this could be in discordance with a clear representation from an

    operator point of view, we will try take in count both points of view when defining the data.

    From computer point of view we will define:

    -

    Space economy: All data must be organized in a way that may not be duplicated, nor

    unnecessary occupied memory.

    -

    Structured data: Structures must be established for to group those similar data, in a

    way that the pass between procedures could be easy and fast, making the programing

    process more efficient.

    From operator point of view we will define:

    - Clear: Avoid ambiguities that complicate data entry, program maintenance, etc

    - Organized: In the structures, the data will be organized in a way that they appear clear

    and intelligible.

    With these preliminary we can separate the necessary data in:

    -

    General data, they will define the basic project principles.

    - Descriptive data, they will define the structure description.

    -

    Operative data, basically the internal data that the program will use in calculations.

    -

    Storage data, basically the same data from inputs and outputs, they can be stored in a

    hard disc

    All these data are described with more details, dividing them in other subgroups, and thesesubgroups are the data structures that the program works. These structures contain the

    variables for calculations.

    We will made a variables declaration in pseudo-code, for use it after in the programing code.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    42/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 42

    Benito Moya Fernndez

    5.1General data

    These data give us the general information about the project, are reserved for identification

    data:

    - Project name.

    -

    Project author.

    - Begin date.

    - Last modification date.

    - Structure construction material.

    These data are in example; more data can be added if necessary.

    5.2Descriptive data

    The physical structure description is made with accepting some conventions, these

    conventions are name conventions valid to work in a computer.

    Basically a structure is defined trough a nodes set, between these nodes are located beams,

    and some beams have loads associated.

    These two basic structures (Nodes and beams) will be the basic elements to define our

    structure in our application.

    5.2.1 Nodes

    Node, without relations with other elements, is an abstract concept, because is a location in

    space, it defines the dimensions of structure, but with nothing connected to it makes no sense.

    From this point of view, to define a node we need:

    - Tag: A name/number for the node, an identification

    - Space location: X and Y coordinate, in absolute reference.

    -

    Typology: With this feature we want define the node type, general or support node.

    This is a data type that group four variables, its definition in pseudo-code will be:

    Declare NODE As Type

    POSITION_X As Real

    POSITION_Y As Real

    NODE_TYPE As Boolean

    End Declare

    But this is only a node, our structure will be a nodes group, at this time we have limited the

    nodes number to 200, but in all case will be greater than 1 (If we have only one beam, we need

    at least two nodes). To operate with all nodes at once, in example to pass all nodes between

    two procedures with only one instruction, we need to group them in a variable. This variable

    must have a dynamic elements number in run time, and allow us to work with each element

  • 8/10/2019 Programa ACCP - Memoria.pdf

    43/122

  • 8/10/2019 Programa ACCP - Memoria.pdf

    44/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 44

    Benito Moya Fernndez

    o Q2 parameter indicates distance from starting node.

    - 2Uniform distributed load.

    o Q1 and Q2 parameters are equals, and indicate load magnitude.

    - 3Triangular distributed load

    o

    Q1 parameter indicates load magnitude and Q2 parameter will be zero.

    Or

    o

    Q2 parameter indicates load magnitude and Q1 parameter will be zero.

    - 4Trapezoidal distributed load.

    o Q1 parameter indicates load magnitude in starting node.

    o

    Q2 parameter indicates load magnitude in ending node.

    The incidence angle is obviously. Is a Boolean parameter that will define with what reference

    system are defined the loads. We do that to make more easy data input, in example for the

    wind load, is very easy to define a horizontal wind load on general axis, but define it on

    inclined beam is very difficult, because is possible that we have defined the beam between

    two nodes in the structure, nodes located in a position, so we dont know the beam angle. If

    we set this parameter to true, the software will convert the incidence angle.

    The evolution function is a parameter, this parameter will select a function from functions

    library.

    Like nodes, we need a variable type definition for beams, to group the different fields that

    compose the complete beam description. This variable declaration appears like:

    Declare BEAM As Type

    STA_NODE As Integer Number from starting node

    STA_TYPE As Boolean Junction type in starting node

    END_NODE As Integer Number from ending node

    END_TYPE As Boolean Junction type in ending node

    PROFILE As Text Profile definition

    WP As Real Plastic Strength moment

    ROTATED As Boolean Beam rotation on X Axis

    LOAD As Integer Load type

    INCIDENCE As Real Incidence angle for load

    REFERENCE As Boolean Reference system for load

    VALUE_1 As Real Parameter 1 for load

    VALUE_2 As Real Parameter 2 for load

    FUNCTION As Integer Load evolution function

    End Declare

    As we can see, like in nodes declaration, there are not identifications defined, this is because

    all beams will be defined by starting and ending nodes, so no further identification is needed.

    And also like with the nodes, we need to group beams in a matrix, for the same reason. So we

    will define the matrix:

    Declare BEAMS_SET As Array (Stages, Elements_Number) of BEAM.

    Beam position in the matrix allow us identify it for calculations.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    45/122

  • 8/10/2019 Programa ACCP - Memoria.pdf

    46/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 46

    Benito Moya Fernndez

    We can see the concept for three dimension array in the picture bellow.

    For the rest of operative data we will do the same, but with care with the arrays dimensions.

    In the same way we will do with the coefficients matrix, we will declare this matrix as you cansee:

    Declare COEFFICIENTS As ARRAY (M ; N*3 ; N*3) Of Double

    All other matrices will have two dimensions, and their ranks are (M ; 3*N) in all cases.

    Displacements matrix.

    Declare DISPLACEMENTS As ARRAY (M ; 3*N) of Double

    Reactions matrix.

    Declare REACTION As ARRAY (M ; 3*N) of Double

  • 8/10/2019 Programa ACCP - Memoria.pdf

    47/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 47

    Benito Moya Fernndez

    Nodal forces matrix.

    Declare N_FORCES As ARRAY (M ; 3*N;[num]) of Double

    Note: [num] is an integer, which will be defined later in the program description, which is

    imposed by the diversity of existing load functions.

    Operationally, the program needs to also control the instant of occurrence of each articulation,

    this can be controlled with a one-dimensional array (a vector), which are stored moments of

    progress of each phase, its declaration would be:

    Declare PHASES As ARRAY (M) of Double

    Note that we used PHASE instead STAGE, because this last name is reserved (For better

    program understanding) to actual PHASE number. We assign a value to this variable in a

    sentence:

    STAGE = PHASES.ELEMENTS_NUMBER

    Furthermore, for calculations is interesting to keep each and every one of the diagonal

    matrices, until the appearance of the plastic collapse of the structure, in addition to stress

    values, reactions and displacement from each node at each phase. This is motivated by the

    following:

    - Every time an articulation appears we need re-compose the matrix, at least to put the

    new stiffness values from new structure. Furthermore, if articulation appears outside

    an existing node, we must add three columns and three arrows to the new matrix,

    because we will have a new node.

    - Once re-assembled the matrix, we must recalculate and save stress values,

    displacements and reactions for each time of appearance of the articulation, with a

    view to taking them as input data for continue the next phase calculations.

    - The above two points must be made every time a new phase appears, and for each

    and every one of the stages preceding the current phase calculation.

    Also the program will use more variables and constants in run time, these variables and

    constants are not interesting at this time, because almost all of them are control variables, and

    have not relevance at this moment, so we will obviate their description.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    48/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 48

    Benito Moya Fernndez

    6. Data BaseProgram includes a data base for standard profiles and materials. The data base can be used as

    alternative storage system for project data.

    This data base is programed with Microsoft Access, and we can access it through SQL

    statements. Taking advantage of this implementation, applies also to create and save own

    manufacturing profiles (eg girders), and different materials of the pre-programmed, in order to

    be able to be used them in subsequent projects.

    From the point of view of projects is an effective storage system that allows us to save

    different versions of each project, and access them agile

    As a database is structured in tables, which we can divide in two areas: Projects area and

    materials area.

    Materials area has two tables, one for construction materials and other one for profiles

    Construction materials table has five fields:

    - Tag (Material commercial reference or standard designation).

    - Description.

    - Yield stress.

    -

    Young modulus.

    - Density.

    Profiles table has ten fields:

    - Family (HEB, UPN, etc).

    - Profile number (100, 120).

    - Description.

    -

    Area

    - Inertia Y

    - Inertia Z

    - Resistant plastic moment Y

    - Resistant plastic moment Z

    -

    Weight (Kg/m)

    -

    Drawing (*)

    NOTE (*): Drawing refers to an image stored in the same application folder (In the computers

    hard disk), when a profile is selected the program shows a profiles image, to help us in

    selection. A further detailed description from this capability is given in Annex IV Application

    description.

    Project area has three tables, which contains the same data as those described for the

    projects, except projects table, which contains one more field to indicate the revision index of

    the project.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    49/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 49

    Benito Moya Fernndez

    7. Software descriptionThe software is a program type called Windows Form, that means program shows us a set

    of forms (windows) where the process is developed.

    Previously we will do a functional description of program, how develops all processes, from

    starting to the final data presentation (In the screen or printed).

    After that, we will do a more detailed description from internal function, what and how to do

    in all processes, to get the expected result. We will write in pseudo-code all of most important

    routines to solve the calculations, and we will justify them.

    Finally, enter a little more into the details of the program, indicating the language chosen and

    the reasons, explaining the solutions to critical program processes

    7.1Functional program description

    The program is similar to many existing programs for Windows in the market.

    When we start the program, a welcome screen like shown more bellow appears:

    On this screen we can choose basic start options:

    - Start a new project.

    -

    Load an existing project.

    -

    Maintenance Jobs.

    Each on one of these options closes this window and opens a new one.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    50/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 50

    Benito Moya Fernndez

    With Start new projectoption, we will open a project input general data screen, here we can

    input all general data from a new project, in a screen like you can see more bellow:

    Then, after pressing OK button, will open the window that allows us to edit structures, as

    shown:

    On it we can distinguish the marked areas.

    1- Drawings area, graphic window where we can design our structure.

    2-

    Tools palette, where program shows all we need to create and/or edit our structure.3- Data area, where the program shows the edition/selection data

    4- Options belt, where we can see the active commands line, the program gives us

    information all time, and we can select some graphical modes.

    Drawing area is in white, because we have selected create a new project.

    This screen functions are described with more details in section 7.1.1Data input.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    51/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 51

    Benito Moya Fernndez

    If selected option is Load existing project, a file browser will appear:

    On this dialog box we can select the project to open, and after to press OK button, same

    structures edition window will appear, but now showing selected structure in browser.

    The program doesntask us for project data, because they are of the stored project. Ever we

    can access to them by pop up menu File with option Project thatopens general data dialog

    box.

    If selected option is Maintenance, a window with a three folders tab will appear:

    Where we can choose following options in a Tab Control:

    - Projects data base

    -

    Materials data base

    - Profiles data base

    - Project beams and nodes

    In section 7.1.4Maintenance Option we will describe with more details these options.

    7.1.1 Data input

    As we have told, we will do data input from a structure on edition screen. For that we have

    three ways:

    -

    Directly on graphic area.

    - Manually

    - A combination of both ways.

    All this must be doing in a logic sequence, which means, a beam is defined between twonodes; we cant define a beam if we havent any node, or only one node. The program has the

  • 8/10/2019 Programa ACCP - Memoria.pdf

    52/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 52

    Benito Moya Fernndez

    capability to detect this malfunction and, if we try to define a beam when we have less than

    two nodes, it gives us an error message. A logic sequence to define a structure will be:

    - Define nodes.

    -

    Create beams.

    -

    Define loads.

    This sequence is flexible, that means, if we have created a set of nodes, and after starting

    beams creation process need more nodes, we can create without problems.

    Also we can delete nodes if later we dont need them. In this way we can remark

    - The program gives us an error message if we try to create a beam when less than two

    nodes are created. Dont allow us to create a beam until exist at least two nodes.

    - The program gives us an error message if we try to create two beams between the

    same two nodes, independently if the order from nodes is inverted from one beam to

    other. In example: If we define a beam between nodes 1 and 2, we cant define a

    beam between nodes 2 and 1. The program will give us a message Duplicated beam

    and dont allow us to create it.

    Although this seems a handicap, if we want create a composed beam in example,

    really isnt, to define a composed beam we need to create it on profiles data base, and

    after use it in the structure.

    - The program will advise us if we try to delete a node with a beam connected. This

    advertisement tells us that if we delete the node, all beams connected will be deleted

    too. If we accept the advertisement, all connected beams will be deleted.

    -

    If we try to delete a beam with loads defined, the program will advise that if we deletethe beam, all associated loads will be deleted.

    -

    When saving a structure, manually or previously to calculations, the program advises

    us if there are free nodes and if we want to delete them, if we agree all free nodes will

    be deleted, if we disagree the program will return to edition screen.

    Direct data input: We can do direct data input on graphic area, with choosing tool from tools

    box, when we drop mouse pointer on desired tool it keeps selected, from this moment we can

    see that the mouse pointer changes to

    tool icon when on drawing area.

    Basic tools for edition are:

    - Node

    - Beam

    - Load

    - New

    -

    Delete

    - Edit

    - Zoom In

    - Zoom out

    As you can see, all icons are very intuitive.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    53/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 53

    Benito Moya Fernndez

    The tools "new", "edit" and "delete" are used with tools of node, beam and load; that means

    when any element tool is selected must have care which option (new, delete or edit) is

    selected.

    All time, while mouse pointer is in to graphic area, we can see in data area following

    information:

    - XY pointer coordinates.

    - Active selection, in case any item is selected in edition mode.

    - Characteristics of the active selection.

    Manual data input: Ever we can do data input manually, to do that we can Access to edition

    dialog boxes through pop up menu Edition. In this menu we can find the submenu New

    that give us three options: Node, Beam or Load. With each one of these options opens a

    dialog box, different for each one of them, where we can define all data from nodes, beams

    and loads.

    These dialog boxes are the same for editing existing elements, but here we can select the nodeidentification tag, but we cant change it. In a new node case, the identification number will be

    given us by computer.

    In beam case, where we select both nodes (Starting and ending node) in graphic window, the

    same dialog box opens in both cases (New and edit). Here we can select nodes, invert nodes,

    select profiles and inclusively define loads.

    Loads are defined on beams, and in fact we will define them on same dialog box, we can do it

    at same time than beams or more later. Only we have disabled modify beam definitions

    (nodes, profile and nodes order), to prevent accidental modification; and vice-versa, when weare editing a beam we can see existing loads, but we cant modify them.

    NOTE: When we define loads must have specially care with selected reference system (Local or

    general), because the loads rotation is different in each case.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    54/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 54

    Benito Moya Fernndez

    The loads definition is made in the following way:

    - On beams edition screen we have a button to add loads, if we click on it a new window

    will opens for loads edition.

    - In this window we have some option groups. The first group is for load selection:

    o No load, if we select this option, we will delete all defined loads, will be the

    default selection when we define a new beam.

    o Point load.

    o

    Uniformly distributed load

    o Triangular load

    o Trapezoidal load.

    If we select triangular or trapezoidal load a new options group will appears; where we

    can select where is located the starting node (node where load is lowest).

    Second options group is to select load function, this means define load evolution along

    the time. And we have too a text box to define the time factor, because all functions

    are defined with a unitary time factor, but on calculation time we can modify this

    unitary time factor multiplying it by this factor.

    To avoid an infinite number of load functions, in a first instance load functions are

    limited to four evolution laws:

    Linear function, with the expression:

    Quadratic function, with the expression:

    Cubic function, with the expression:

    Square root, with the expression:

    Where (q) is the factor that load increases each time lapse, in accordance with defined

    factors.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    55/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 55

    Benito Moya Fernndez

    We should define incidence angle from load, and the reference system for this angle.

    About this we can remark:

    Angles are ever positive and are defined in a positive rotation sense

    (counter-clock wise)

    Independently from reference system chosen, a load with incidence

    angle zero is a load parallel to X axis, an ascendant load will have an

    incidence angle of 90 and a descendant load will have an incidence

    angle of 270

    We suggest define loads in general reference system, is better and

    easier to define loads in reference to structure than to beam.

    Once defined all data from our structure:

    -

    Nodes.

    -

    Beams.- Loads.

    And always before calculations, we must save data on disk, this will cause a review of

    structure, program will revise that there arent alone nodes (without beams connected), there

    arent incongruences, and saves a copy on hard disk. After all of this we can launch

    calculations.

  • 8/10/2019 Programa ACCP - Memoria.pdf

    56/122

  • 8/10/2019 Programa ACCP - Memoria.pdf

    57/122

  • 8/10/2019 Programa ACCP - Memoria.pdf

    58/122

    Escola Universitaria dEnginyeria Tcnica Industrial de Barcelona

    Degree Final JobSoftware for Plastic Collapse Computation in Structures

    Cristina Hernndez Olivar 58

    Benito Moya Fernndez

    Sample of detailed mode presentation window:

  • 8/10/2019 Programa ACCP - Memoria.pdf

    59/122

  • 8/10/2019 Programa ACCP - Memoria.pdf