Você está na página 1de 160

7

UNIVERSIDADE POSITIVO i

Erica Damasceno de Almeida

Michele Fonsaca

CRIAÇÃO DE CÓDIGO COMPUTACIONAL DIDÁTICO PARA


CÁLCULO DE ESTRUTURAS RETICULADAS ESPACIAIS
VIA MÉTODO DOS DESLOCAMENTOS EM FORMULAÇÃO
MATRICIAL (CERBERUS)

Curitiba
2018
Erica Damasceno de Almeida

Michele Fonsaca

CRIAÇÃO DE CÓDIGO COMPUTACIONAL DIDÁTICO PARA


CÁLCULO DE ESTRUTURAS RETICULADAS ESPACIAIS
VIA MÉTODO DOS DESLOCAMENTOS EM FORMULAÇÃO
MATRICIAL (CERBERUS)

Trabalho de Conclusão de Curso


apresentado ao Curso de Engenharia Civil
da Universidade Positivo como requisito
parcial à obtenção do título de Engenheiro
Civil.
Orientador: MSc. Juliano Jorge Scremin

Curitiba
2018
7

RESUMO

Para projetar uma estrutura, é necessário estabelecer as forças internas e


deslocamentos em todos os pontos da estrutura, produzidos pelas cargas de projetos.
Devido à complexidade desta análise, foi inserido dentro do contexto do cálculo
estrutural, o uso de computadores, que se adaptaram facilmente à função devido a
utilização de formas matriciais em suas linguagens. Então, é apresentado neste trabalho,
o Método da Rigidez Direta em termos da sua formulação matricial e sua implementação
computacional para estruturas reticuladas planas e espaciais, com o objetivo de elaborar
uma rotina computacional, em linguagem de programação Python, para fins didáticos.
Para estabelecer a proposta didática, o software fornece como saída de resultados um
relatório que apresenta todas as etapas da análise da estrutura em estudo, como as
matrizes de rigidez e vetores de cargas elementares bem como todos os passos de
cálculo efetuados para obtenção dos resultados. Por fim, para garantir a confiabilidade
do software, vários exemplos foram resolvidos e tiveram seus resultados comparados a
outra ferramenta de cálculo consagrada no mercado.

Palavras-chave: Estruturas reticuladas; análise estrutural; método da rigidez.


ABSTRACT

When projecting a structure, it is necessary to stablish a structural the internal forces and
displacement in every point, produced by the project loads. Due to the complexity of this
analysis it was inserted inside of the context of structural calculus the use of computers,
and since they use matrixial forms as their languages, they handle it pretty easily. So, it
is shown in this project, The Direct Stiffness Method in terms of its matrixial formulation
and its computer implementation for flat and special reticulated structures, as objective,
to elaborate a computational routine, using the Python as programming language, for
educational purposes. To establish the educational proposal, the software has a result
output a report of all the steps taken in the analysis of the structure in study, just as the
matrixes of rigidity and the vectors of elementary loads, and all other steps calculated to
reach the results. Lastly, to ensure the reliability of the software, various examples were
resolved and had their results compared to another prestigious software available on the
market.

Keywords: Reticulated structure; Structural analysis; method of stiffness.


7

LISTA DE FIGURAS

Figura 1 - Os quatro níveis de abstração.. ........................................................................... 15


Figura 2 - Barra orientada em um eixo espacial.. ................................................................. 18
Figura 3 - Equilíbrio de um elemento infinitesimal de barra e direções positivas adotadas para
cargas distribuídas e esforços internos.. .............................................................................. 19
Figura 4 - Superposição de soluções básicas do Método das Forças. ................................. 22
Figura 5 - Sistema de referência Global. .............................................................................. 25
Figura 6 - Eixos locais e globais de uma barra..................................................................... 26
Figura 7 - Membro vertical de uma treliça espacial. ............................................................. 27
Figura 8 - Rotação de eixos em três dimensões. ................................................................. 28
Figura 9 - Sistema de numeração para um pórtico espacial................................................. 31
Figura 10 - Superposição dos efeitos. .................................................................................. 33
Figura 11 - Pórtico plano. ..................................................................................................... 33
Figura 12 - Forças nodais equivalentes. .............................................................................. 37
Figura 13 - Representação de deslocamentos e giros positivos. ......................................... 45
Figura 14 - Fluxograma do código ....................................................................................... 46
Figura 15 - Esquema para entrada de dados. ...................................................................... 47
Figura 16 - Esquema de montagem das matrizes de rotação dos membros da estrutura.. .. 49
Figura 17 - Esquema de montagem da matriz de rigidez local ............................................. 50
Figura 18 - Barra isolada, perfeitamente engastada e com carregamento qualquer.. .......... 51
Figura 19 - (a) Estrutura Isostática Auxiliar. (b)(c)(d) Casos básicos.................................... 52
Figura 20 - Esquema de composição do vetor de ações nodais. ......................................... 53
Figura 21 - Exemplo de plotagem no CERBERUS, sem carregamentos.............................. 55
Figura 22 - Convenção carregamentos nodais..................................................................... 56
Figura 23 - Convenção deslocamentos prescritos. .............................................................. 56
Figura 24 - Pórtico com barras inclinadas e carregamentos distribuídos.............................. 58
Figura 25 - Pórtico com barras inclinadas e carregamento nodal.. ....................................... 60
Figura 26 - Comparação da deformada - exemplo 1 ............................................................ 62
Figura 27 - Pórtico com barras inclinadas e carregamento no plano xy.. ............................. 63
Figura 28 - Comparação da deformada - exemplo 2 ............................................................ 65
Figura 29 - Pórtico com barras inclinadas e carregamentos pontuais. ................................. 66
Figura 30 - Comparação da deformada - exemplo 3 ............................................................ 68
LISTA DE TABELAS

Tabela 1 - Resultados de reações de apoio - Exemplo 2D................................................... 57


Tabela 2 - Resultados de deslocamentos - Exemplo 2D ...................................................... 58
Tabela 3 - Resultados de reações de apoio (forças) – exemplo 01. ..................................... 61
Tabela 4 - Resultados de reações de apoio (momentos) - exemplo 01. ............................... 61
Tabela 5 - Resultados de deslocamentos - exemplo 01 ....................................................... 61
Tabela 6 - Resultados de rotações - exemplo 01 ................................................................. 61
Tabela 7 - Resultados de reações de apoio (forças) - exemplo 02....................................... 63
Tabela 8 - Resultados de reações de apoio (momentos) - exemplo 02. ............................... 64
Tabela 9 - Resultados de deslocamentos - exemplo 02 ....................................................... 64
Tabela 10 - Resultados de rotações - exemplo 02 ............................................................... 64
Tabela 11 - Resultados de reações de apoio (forças) - exemplo 03..................................... 66
Tabela 12 - Resultados de reações de apoio (momentos) - exemplo 03. ............................. 67
Tabela 13 - Resultados de deslocamentos - exemplo 03 ..................................................... 67
Tabela 14 - Resultados de rotações - exemplo 03. .............................................................. 67
7

SUMÁRIO
1.INTRODUÇÃO ................................................................................................................... 7

1.1.OBJETIVO ....................................................................................................................... 9

1.1.1.Objetivo geral ................................................................................................................ 9

1.1.2.Objetivos específicos .................................................................................................... 9

1.2.JUSTIFICATIVA ............................................................................................................... 9

1.3.ORGANIZAÇÃO DO TRABALHO .................................................................................. 10

1.4.DELIMITAÇÕES DO TRABALHO .................................................................................. 11

2.REVISÃO BIBLIOGRÁFICA ............................................................................................ 12

3.FUNDAMENTAÇÃO TEÓRICA ........................................................................................ 14

3.1.ENGENHARIA ESTRUTURAL E ANÁLISE ESTRUTURAL ........................................... 14

3.2.SISTEMAS ESTRUTURAIS ........................................................................................... 15

3.3.DISCRETIZAÇÃO DA ESTRUTURA ............................................................................. 16

3.4.LEI DE HOOKE; MÓDULO DE ELASTICIDADE ............................................................ 16

3.6.DIAGRAMAS DE ESTADOS SOLICITANTES ............................................................... 17

3.7.RELAÇÃO ENTRE CARGAS, ESFORÇOS CORTANTES E MOMENTOS FLETORES 18

3.9.LIGAÇÕES INTERNAS E LIBERAÇÕES DE CONTINUIDADE ..................................... 20

3.10.CONDIÇÕES BÁSICAS DA ANÁLISE ESTRUTURAL................................................. 20

3.10.1.Condições de equilíbrio ............................................................................................. 20

3.10.2.Condições de compatibilidade entre deslocamentos e deformações ........................ 21

3.10.3.Leis constitutivas dos materiais ................................................................................. 21

3.11.MÉTODOS PARA ANÁLISE DE ESTRUTURAS RETICULADAS ESTATICAMENTE


INDETERMINADAS ............................................................................................................. 21

3.11.1.Método das forças .................................................................................................... 22

3.11.2.Método da Rigidez .................................................................................................... 23

3.12.LINGUAGEM PYTHON................................................................................................ 41

4.PROCEDIMENTOS METODOLÓGICOS ......................................................................... 43

4.1.METODOLOGIA DO TRABALHO .................................................................................. 43

4.2.METODOLOGIA DO CÓDIGO COMPUTACIONAL CERBERUS .................................. 44

4.2.2.Fluxograma do código do CERBERUS ....................................................................... 45


4.2.3.Entrada de dados da estrutura .................................................................................... 45

4.2.4.Rotina de renumeração dos graus de liberdade .......................................................... 48

4.2.5.Montagem das matrizes de rotação dos membros da estrutura .................................. 48

4.2.6.Montagem das matrizes de rigidez local ..................................................................... 49

4.2.7.Definição do vetor de cargas nodais ........................................................................... 50

4.2.8.Descontinuidades (Axial, Cisalhante e rotação) .......................................................... 53

4.2.9.Montagem da matriz de rigidez global ......................................................................... 54

4.2.10.Vetor de Deslocamentos ........................................................................................... 54

4.2.11.Deslocamentos desconhecidos e reações de apoio .................................................. 54

5.VALIDAÇÃO DO SOFTWARE ......................................................................................... 57

5.2.1.Pórtico com barras inclinadas e carregamento nodal em z ......................................... 59

5.2.2.Pórtico com barras inclinadas e carregamento distribuído no plano xy local ............... 61

5.2.3.Pórtico com barras inclinadas, carregamentos distribuídos no eixo xz e liberações de


continuidades ...................................................................................................................... 65

6.CONCLUSÃO ................................................................................................................... 69

REFERÊNCIAS BIBLIOGRÁFICAS .................................................................................... 70


7

1. INTRODUÇÃO

A estrutura é a parte resistente de uma construção, e pode ser definida como


uma composição de uma ou mais peças, ligadas entre si e ao meio exterior de forma
a compor um sistema em equilíbrio. Logo, a estrutura é um conjunto capaz de receber
solicitações externas, absorvê-las internamente e transmiti-las até os seus apoios ou
vínculos. Então, visando dimensionar elementos estruturais com a melhor relação
custo-benefício e sem comprometer a integridade e a durabilidade do conjunto, é
fundamental o desenvolvimento detalhado e crítico do cálculo estrutural destes
elementos (MARTHA, 2010).
Para projetar uma estrutura, é necessário estabelecer as forças internas e
deslocamentos em todos os pontos da estrutura, produzidos pelas cargas de projetos.
Um problema decorrente disso é que, ao se aumentar o grau de complexidade da
estrutura, aumenta-se também a complexidade e a grandeza dos cálculos a serem
realizados. Então, para mitigar este problema foi inserido, dentro do contexto do
cálculo estrutural, o uso de computadores que se adaptaram facilmente à função
devido a utilização de formas matriciais em suas linguagens, formas também vistas
na análise estrutural, como é o caso dos métodos de análise de flexibilidade e rigidez
(MCCORMAC, 2009).
Um projeto estrutural completo parte de uma concepção geral da estrutura e
termina com a documentação que possibilita a sua construção. Parte deste projeto
envolve o cálculo estrutural, que é o foco principal deste trabalho. Realizar o cálculo
de uma estrutura requer a elaboração de um modelo estrutural, que é a idealização
do comportamento da estrutura real. Uma possibilidade é a modelagem utilizando um
pórtico espacial, cujo domínio geométrico compreende a estrutura como um todo.
Definido o modelo estrutural, parte se para o modelo discreto, onde é definido o
método de análise e discretizado a estrutura. Criado o modelo discreto, normalmente
feito em barras, pode-se fazer uma implementação para se obter um modelo
computacional (MARTHA, 2010).
Impulsionados pelo advento da tecnologia e pela disponibilidade de uma gama
de ferramentas que possibilitam ao usuário automatizar os processos de cálculo e
análise de estruturas, foram desenvolvidos diversos softwares voltados para análise
estrutural, como o TQS, Cypecad, Ftool, Ansys, Sap 2000, entre outros. Esses
8

softwares diminuíram o tempo e os erros decorrentes do processo manual, obtendo


assim resultados numéricos e gráficos que jamais seriam possíveis se não houvesse
a disponibilidade de uso do computador (MARTHA, 2010).

Dentre as os métodos de análise existentes para o desenvolvimento destes


programas, está o método dos deslocamentos, que será utilizado no presente
trabalho, e foi também empregado para a composição do Ftool. Outro método
bastante utilizado, é o método dos elementos finitos, onde o modelo discreto é obtido
através da subdivisão do domínio da estrutura em subdomínios, que é utilizado pelo
programa SAP 2000, entre outros (SORIANO, 2005).

Atualmente através da disponibilidade de computadores pessoais, houve uma


mudança na forma com que as estruturas são analisadas e projetadas, e em
praticamente todas as graduações e escritórios os computadores são utilizados para
a resolução de problemas estruturais. Portanto, é de extrema importância que os
engenheiros estruturais desenvolvam uma compreensão do comportamento estrutural
para que, com alguns cálculos, possam verificar se os resultados da análise feita pelo
computador correspondem ao que se espera da estrutura. (LEET; UANG e GILBERT;
2009).
Os conceitos de Engenharia evoluíram e continuam sendo aprimorados, porém,
o que mais avançou nesses últimos anos foi a forma como esses conceitos são
aplicados no dia-a-dia de um engenheiro. É exatamente nesse contexto que entra em
cena o computador, com ele, cálculos inviáveis há algum tempo passaram a ser
resolvidos com grande rapidez e eficiência nos dias de hoje. (ALIO KIMURA, 2015).
Diante deste panorama que acaba de ser descrito, torna-se então cada vez
mais evidente a necessidade de ensinar e preparar os alunos de Engenharia Civil a
manipular corretamente um sistema computacional destinado a estruturas, onde o
Engenheiro deve estar apto a utilizá-lo de forma responsável, sabendo distinguir quais
são seus benefícios e as suas limitações. E sobretudo, colocar o conhecimento de
Engenharia sempre como sua meta principal. Logo, para deixar visível os processos
e cálculos realizados pelo programa, foi desenvolvido um relatório com a função de
detalhar os procedimentos de cálculo, para assim auxiliar didaticamente, expondo
assim a metodologia utilizada para a obtenção dos resultados.
9

1.1. OBJETIVO

1.1.1. Objetivo geral

Criação de uma ferramenta computacional capaz de calcular esforços e


deformações em estruturas reticuladas planas e espaciais, compostas somente de
barras retilíneas (treliças, pórticos e grelhas) empregando a vertente matricial do
Método da Rigidez (Método dos Deslocamentos) em conjunto com o Método das
Forças (Método da Flexibilidade), utilizando para tal a linguagem de programação
Python.

1.1.2. Objetivos específicos

 O software desenvolvido se propõe a fornecer como saída de resultados os


deslocamentos e esforços nodais dos modelos estruturais bem como as
respectivas equações de esforços cortantes, momentos fletores, momentos
torçores, rotações e deslocamentos de translação ao longo das barras
mediante os carregamentos aplicados;
 Como parte da proposta didática o software fornece como saída de resultados
as matrizes de rigidez e vetores de cargas elementares (em coordenadas
globais e locais) bem como todos os passos de cálculo efetuados para
obtenção dos resultados;

1.2. JUSTIFICATIVA

A revolução tecnológica teve um papel importante na Engenharia de Estruturas,


influenciando na maneira como os projetos estruturais são hoje elaborados. Diante
deste panorama, torna-se cada vez mais necessário ensinar e preparar os alunos de
Engenharia Civil a manipular corretamente um sistema computacional destinado à
elaboração de projetos estruturais. No mercado atual de Engenharia Civil, encontram-
se os mais diversos e variados softwares voltados para o cálculo estrutural, possuindo
como objetivo apenas apresentar o resultado final, sem demonstrar em momento
10

algum os métodos utilizados no processo de cálculo ou mesmo dizer em qual


metodologia eles foram baseados. Pode-se citar como um dos poucos exemplos de
programa educacional para análise estrutural no Brasil o programa FTOOL [Martha
2002], para estruturas reticuladas planas (ALIO KIMURA, 2015).

Portanto, esse trabalho tem como justificativa a necessidade de um software


que exponha os detalhes de cálculo com o objetivo de auxiliar didaticamente e de
forma gratuita, via disponibilização do programa no site de apoio do professor
orientador, a todos que têm interesse em aprender ou queiram se aprofundar no
método matricial dos deslocamentos voltado às estruturas.

1.3. ORGANIZAÇÃO DO TRABALHO

O presente trabalho é composto por seis capítulos. O primeiro capítulo é a


introdução, onde é destacada a importância do tema abordado e os motivos que
estimularam a realização do trabalho, para assim motivar pesquisas posteriores.

O segundo capítulo apresenta um resumo dos principais trabalhos correlatos


pesquisados, constituindo uma revisão da literatura.

Os conceitos e ferramentas utilizados neste trabalho estão expostos no terceiro


capítulo, que é responsável pela fundamentação teórica. Logo, neste capítulo é feita
a apresentação de definições e fundamentos da engenharia e da análise estrutural,
assim como também descreve os métodos de rigidez e das forças, e por último
também apresenta a análise matricial das estruturas.

No quarto capítulo se destaca a metodologia para a implementação


computacional dos métodos de rigidez e das forças. Neste capitulo é detalhado o
conjunto de técnicas e processos empregados para a formulação e produção do
programa, em que são detalhados os sistemas de coordenadas, a matriz de rotação,
a matriz de rigidez, as ações nodais, as vinculações nas extremidades das barras, as
reações de apoio, os deslocamentos prescritos e a organização do programa.

No quinto capítulo são resolvidos exemplos para os tipos de estrutura que o


programa propõe resolver, como pórticos planos e espaciais, treliças planas e
espaciais e grelhas, podendo assim comparar os resultados com os softwares SAP
11

2000 e Ftool. Neste capítulo também se apresentam as discussões dos resultados


obtidos, com o objetivo de validar o trabalho.

No sexto capítulo, mostram-se as conclusões obtidas com a execução deste


trabalho são discutidas sugestões para trabalhos futuros.

1.4. DELIMITAÇÕES DO TRABALHO

Para o correto funcionamento do aplicativo deve-se considerar as seguintes


condições:
 Todas as cargas serão perpendiculares ou paralelas ao eixo da barra;
 Serão admitidos apenas carregamentos distribuídos ao longo das barras, os
carregamentos concentrados vão ser dispostos somente nos nós, ou seja, para
inserção do carregamento concentrado será necessário subdividir a barra;
 As barras serão compostas por materiais homogêneos e isotrópicos;
 As cargas e as deformações da estrutura apresentarão proporcionalidade, ou
seja, os materiais que compõem a estrutura obedecem a Lei de Hooke;
 Não haverá mudanças na geometria da seção dos elementos ao longo do seu
eixo longitudinal;
 As deformações serão de menor magnitude em relação às dimensões reais da
estrutura.
12

2. REVISÃO BIBLIOGRÁFICA

A seguir será exposto um resumo dos principais trabalhos correlatos, que


serviram de insumo para a produção do presente trabalho. Os primeiros trabalhos
destacados ressaltam a importância de ferramentas educacionais.

SANDRO CÉSAR (2006), destaca em seu artigo a relevância de softwares


educativos, o uso do computador e de programas para a aprendizagem, já que
possibilitam o desenvolvimento fundamentado em uma teoria de aprendizagem de
forma autônoma.

ALIO KIMURA (2015), afirma que diante do panorama atual, torna-se cada vez
mais evidente a necessidade de ensinar e preparar os alunos de Engenharia Civil a
manipular corretamente um sistema computacional, pois o futuro Engenheiro deve
estar apto a utilizá-lo de forma responsável, sabendo distinguir quais os seus
benefícios e as suas limitações. E sobretudo, colocar o conhecimento em Engenharia
sempre como sua meta principal.

A seguir será exposto os principais trabalhos que retratam a criação de


softwares voltados para o cálculo de estruturas.

PAIZ, VANZELLA E GOMES (2007), desenvolveram um código computacional


para o cálculo didático de estruturas planas via métodos dos deslocamentos em
formulação matricial, com o objetivo de disponibilizar o programa gratuitamente, para
auxiliar didaticamente. O software elaborado além de fornecer as reações de apoios,
os esforços internos e deformações de estruturas bidimensionais, esboça os
diagramas e disponibiliza as equações dos esforços em cada barra, além de
apresentar um memorial de cálculo com os passos intermediários do procedimento de
cálculo.

DRUMMONT (2012), desenvolveu um artigo que trata da criação de um


software para análise de esforços e deslocamentos de estruturas planas ou espaciais
formadas por elementos de barras, com o objetivo de melhorar a interação entre o
usuário e o programa através da elaboração de uma interface gráfica que otimiza a
entrada de dados e permite a alteração ou ampliação de uma estrutura previamente
analisada com maior agilidade e controle para o cálculo de estruturas reticuladas
espaciais, utilizando a linguagem de programação C++
13

TEODORO (2014), também desenvolveu um trabalho com o objetivo de construir um


software baseado nas relações do Método da Rigidez, para resolução de estruturas
de barras de eixo reto contidas no plano e no espaço.
14

3. FUNDAMENTAÇÃO TEÓRICA

3.1. ENGENHARIA ESTRUTURAL E ANÁLISE ESTRUTURAL

Quando uma estrutura é projetada para servir uma função especifica, o


engenheiro tem que garantir segurança, estética e funcionalidade ao sistema, e ao
mesmo tempo assegurar economia e respeitar restrições ambientais. Todos esses
requisitos normalmente exigem vários estudos independentes com diversas soluções
até garantir uma forma estrutural mais apropriada. Esses procedimentos de projeto
normalmente demandam criatividade e conhecimentos técnicos, como o
entendimento das propriedades dos materiais e das leis da mecânica (HIBBELER,
2013).

O projeto Estrutural é constituído da disposição e o dimensionamento de


estruturas e de suas partes de modo que elas resistam os agentes externos de modo
satisfatório. Ou seja, ele envolve o arranjo geral do sistema, as análises preliminares,
os estudos de alternativas existentes para a estrutura, as considerações sobre os
carregamentos, a seleção de uma solução e a análise e o projeto final da estrutura
(MCCORMAC, 2009).

A parte da mecânica que estuda as estruturas é chamada de Análise Estrutural,


e consiste na determinação dos esforços e das deformações que elas ficam
submetidas quando solicitadas por agentes externos, essa fase do projeto estrutural
consiste em uma idealização do desempenho da estrutura (SÜSSEKIND, 1973).

A análise estrutural trabalha com quatro níveis de abstração com relação à


estrutura que está sendo analisada (figura 1). Os níveis de abstração possuem o
propósito de mostrar como uma estrutura de barras real é transformada no modelo
computacional. A figura apresenta como o primeiro nível de abstração a estrutura real,
ou seja, é a representação de como ela é construída. Já o modelo estrutural é o
segundo nível de abstração, e pode ser chamado também de modelo matemático, e
ele é uma idealização do desempenho da estrutura real considerando várias
simplificações sobre a geometria do modelo, as condições de suporte e o
comportamento dos materiais. O modelo discreto é o terceiro nível de abstração, e é
concebido seguindo as metodologias de cálculo escolhida para a sua análise (Método
das Forças ou Método dos Deslocamentos). O quarto nível de discretização é o
15

modelo computacional, que pode ser obtido através de uma formalização do método
dos deslocamentos direcionada a uma implementação computacional, e esse método
é chamado de método da rigidez direta (MARTHA, 2010).

Figura 1 - Os quatro níveis de abstração.


Fonte: Martha, 2010, p. 3

3.2. SISTEMAS ESTRUTURAIS

Os sistemas estruturais sãos constituídos de componentes, que são reunidos


de modo a formar sistemas estruturais. Neste trabalho, trataremos de estruturas
reticuladas, ou seja, estruturas compostas por elementos com uma dimensão
predominantemente maior que as outras duas dimensões, sendo esses elementos
chamados de barras (SORIANO E LIMA, 2004).

Uma treliça é um tipo especial de estrutura reticulada, pois é composta


totalmente por escoras e tirantes, e isso significa que todos os seus componentes
estão sujeitos apenas a forças axiais. As treliças podem ser planas ou espaciais e as
forças externas que agem sobre elas são admitidas atuando nas conexões do
sistema, logo os componentes não sofrem flexão (MCCORMAC, 2009).

Outro exemplo de estrutura reticulada são os pórticos, que são frequentemente


utilizados em edifícios e são concebidos pela combinação de barras com ligações
fixas ou de pinos. Assim como as treliças, os pórticos estendem-se em duas ou três
dimensões. Esse tipo de estrutura pode receber cargas tanto concentradas quanto
distribuídas, podendo ainda ser em qualquer parte e ângulo, assim como momentos
fletores e torçores aplicados (HIBBELER, 2013).

As grelhas são modelos estruturais reticulados constituídos por barras retas ou


curvas, situadas em um mesmo plano, onde as cargas externas somente solicitam
transversalmente. As barras se interceptam ou se cruzam mutuamente, e como a
carga ocorre na direção perpendicular ao plano e todos os binários têm seus vetores
16

no plano da grelha, a estrutura pode sofrer tanto torção como flexão em alguns de
seus membros (SORIANO, 2005).

3.3. DISCRETIZAÇÃO DA ESTRUTURA

Ao se analisar uma estrutura, a primeira coisa a se fazer é decompô-la em


estruturas mais simplificadas. Pela visão do método da rigidez, a simplificação ocorre
na transformação das barras que compõem a estrutura em elementos que são
compostos por dois nós, denominados nó inicial e nó final, que são representados por
coordenadas no sistema global da estrutura de forma a reproduzirem a mesma
inclinação e comprimento da barra real (GERE E WEAVER, 1981).

Como parte da discretização, são atribuídas a cada barra suas respectivas


propriedades (materiais e geométricas das seções), como o módulo de elasticidade
longitudinal e dimensões da seção transversal, que serão necessárias para
determinação das inércias dos eixos principais da seção transversal da barra
(MARTHA, 2010).

Feito isso, a próxima parte da discretização consiste em atribuir a cada barra o


carregamento axial, cortante e de flexão aplicado na estrutura em estudo. O
carregamento pode ser tanto posicionado em algum dos nós da barra, ser distribuído
por toda sua extensão ou se concentrar em algum ponto pertencente à barra,
escolhendo-se a distribuição que mais se assemelha com o que deve ocorrer na
estrutura real (GERE E WEAVER, 1981).

Para finalizar, o último passo a ser seguido é a determinação e locação dos


apoios da estrutura e a numeração dos nós e barras. Os apoios regem onde a
estrutura será impossibilitada de se deslocar ou rotacionar e a numeração será
utilizada para uma melhor organização e procedimento do cálculo matricial (MARTHA,
2010).

3.4. LEI DE HOOKE; MÓDULO DE ELASTICIDADE

Para determinar o diagrama tensão-deformação de um material que compõe a


estrutura é realizado um ensaio de tração em uma amostra do material. Esse
17

diagrama varia muito de material para material, e, para o mesmo material pode ocorrer
variações no diagrama tensão-deformação (BEER E JOHNSTON, 1995).
Os diagramas de tensão-deformação da maioria dos materiais apresentam uma
região inicial de comportamento elástico linear, onde a tensão é diretamente
proporcional à deformação específica, ou seja, esse material obedece a Lei de Hooke
(𝝈 = 𝑬𝜺). Onde o E representa o coeficiente angular da parte linear do diagrama
tensão-deformação, chamado de módulo de elasticidade do material, ou módulo de
Yung (BEER E JOHNSTON, 1995).
Quando um elemento estrutural é solicitado por uma tração, vai ocorrer um
alongamento no componente, que será acompanhado por uma contração lateral. A
correlação entre as deformações transversal e longitudinal é constante em materiais
elásticos, e é chamada de relação de Poisson. A através do coeficiente de Poisson e
o módulo de elasticidade é possível se obter o coeficiente de cisalhamento (G),
também conhecido por módulo de rigidez ou módulo de torção, é definido como a
razão entre a tensão de cisalhamento aplicada ao corpo e a
sua deformação específica (TIMOSHENKO E GERE, 1992).

3.5. PROPRIEDADES GEOMETRICAS

O momento de inercia é uma propriedade essencial para determinar a rigidez


de um componente estrutural, e expressa o grau de dificuldade em se alterar o estado
de movimento de um corpo em rotação. Logo, para se obter os coeficientes de rigidez
locais é necessário se conhecer as propriedades geométricas do seção transversal
do componente, que podem ser, a área da seção (A), momento de inercia polar (𝐼𝑥 ),
momento de inercia em torno do eixo y (𝐼𝑦 ) e o momento de inercia em torno do eixo
z (𝐼𝑧 ) (MARTHA, 2010).

3.6. DIAGRAMAS DE ESTADOS SOLICITANTES

Os diagramas mostram, em cada ponto, as solicitações (força normal, força


cortante, momento de flexão e momento de torção) que agem em uma estrutura.
Consideramos uma barra orientada em um sistema de eixos espacial (x, y e z), onde a
origem se encontra no centro de gravidade da seção, ilustrado na figura 2. De acordo
18

com a figura, a barra está solicitada pela força normal (N), pelas forças cortantes (Vy
e Vx), pelos momentos fletores (My e Mz) e pelo momento torçor (Mx) (MARGARIDO,
2001).

Os diagramas de estados (N, V e M) são muito importantes para o


dimensionamento das barras, eles consistem em gráficos no qual um dos eixos é o
próprio eixo da barra e o outro (normal a este) é onde se marca a somatória de N, V e
M. Então para determinar as dimensões de uma estrutura, de modo que ela não rompa
nem se deforme acima de certos valores limites, é preciso determinar esses
diagramas, e para isso é preciso primeiramente de suas equações (MARGARIDO,
2001).

Figura 2 - Barra orientada em um eixo espacial.


Fonte: Aluízio Fontana, 2001, p. 42.

3.7. RELAÇÃO ENTRE CARGAS, ESFORÇOS CORTANTES E MOMENTOS


FLETORES

Para poder representar os diagramas, pode-se desenvolver equações que


permitem fazer o traçado dos mesmos, além de existir relações matemáticas que
vinculam as cargas, os esforções cortantes e os momentos fletores em uma barra, de
modo a facilitar o desenvolvimento de diagramas (MCCORMAC, 2009).

Para essa análise, considera-se um elemento com uma carga q qualquer, e que
a barra esteja em equilíbrio, assim como qualquer elemento seu, como representado
na figura 3 (a). Então, considerando o elemento dx infinitesimal,e, admitida a carga
como constante, agem no elemento as ações demonstradas pela figura 3 (b)
(MARGARIDO, 2001).
19

Figura 3 - Equilíbrio de um elemento infinitesimal de barra e direções positivas adotadas para cargas
distribuídas e esforços internos.
Fonte: Martha, 2010, p. 60.

Através do equilíbrio das forças verticais, podemos desenvolver:

𝑉 − 𝑞𝑑𝑥 − (𝑉 + 𝑑𝑉) = 0 (1)

−𝑞𝑑𝑥 − 𝑑𝑉 = 0 (2)

𝑉 = − ∫ 𝑞 𝑑𝑥 (3)

E, através do equilíbrio do momento no ponto A, podemos obter:

𝑑𝑥
𝑀 + 𝑉𝑑𝑥 − 𝑞𝑑𝑥 − (𝑀 − 𝑑𝑀) = 0 (4)
2

𝑑𝑥 2
𝑉𝑑𝑥 − 𝑞 − 𝑑𝑀 = 0 (5)
2

𝑀 = ∫ 𝑉 𝑑𝑥 (6)

3.8. DEFLEXÃO DOS ELEMENTOS DA ESTRUTURA

As cargas transversais atuantes em um elemento da estrutura causam


deformações em seu eixo longitudinal, então nasce a necessidade de determinar
estas deformações que acontecem ao decorrer da estrutura em estudo, o interesse
de calcular estas deformações está no fato de existir especificações que admitem um
valor máximo para a deflexão (BEER E JOHNSTON, 1995).
Para determinar as equações de deslocamentos em elementos estaticamente
indeterminados, pode ser aplicado a solução da equação diferencial da linha elástica.
O processo consiste em estabelecer a equação diferencial, achar uma solução geral

36
20

e analisando as condições limites, determinar as constantes de integração


(TIMOSHENKO E GERE, 1992).

3.9. LIGAÇÕES INTERNAS E LIBERAÇÕES DE CONTINUIDADE

As barras de uma estrutura podem ser ligadas entre si ou com o meio exterior,
de modo a permitir deslocamentos relativos entre as extremidades. Essas liberações
de deslocamento são chamadas de articulações, e podem ser internas a estrutura,
quando a ligação é entre barras, e externas quando a ligação é entre a barra e o meio
externo (SORIANO, 2005).

A liberação de deslocamentos em uma estrutura indica a incapacidade de uma


barra em transmitir, seja para um apoio ou um nó, um ou mais tipos de esforços.
Então, serão introduzidos símbolos que indicam essa liberação de continuidade, que
irá indicar a falta de vínculos correspondentes aos esforços não transmitidos
(ALEBÍADES, 1986).

3.10. CONDIÇÕES BÁSICAS DA ANÁLISE ESTRUTURAL

Para que o modelo estrutural represente de maneira correta o funcionamento


da estrutura, é preciso considerar algumas condições matemáticas, que são a base
para a análise estrutural, são as condições de equilíbrio, as condições de
compatibilidade entre deslocamentos e as condições sobre o comportamento dos
materiais que compõem a estrutura. Alguns sistemas de equilíbrios indeterminados
podem ser solucionados através dos três tipos de condições (MARTHA, 2010).

3.10.1. Condições de equilíbrio

O equilíbrio estático de uma estrutura ou de um dos seus componentes


independentes é garantida quando é mantido um equilíbrio entre as forças e os
momentos que atuam no sistema. Em geral, isso requer que as equações de equilíbrio
de força e de momento sejam satisfeitas ao longo de três eixos independentes. Essa
condição só é válida quando os deslocamentos da estrutura são mínimos em relação
21

a dimensão total da estrutura. A análise das estruturas sobre essa condição é


denominada análise de primeira ordem (HIBBELER, 2013).

3.10.2. Condições de compatibilidade entre deslocamentos e deformações

Essas condições são as que garantem a continuidade da estrutura ao se


deformar, e são expressas por relações geométricas concebidas para garantir a
continuidade do modelo estrutural. As condições de compatibilidade podem se referir
aos vínculos externos da estrutura, ou podem ser internos. Os vínculos externos da
estrutura garantem que os deslocamentos e as deformações sejam compatíveis com
as hipóteses adotadas com respeito aos suportes ou ligações com outras estruturas.
Já os vínculos internos garantem que a estrutura permaneça contínua no interior das
barras e nas fronteiras entre elementos, ou seja, garante que as barras permaneçam
ligadas pelos nós que as conectam (MARTHA, 2010).

3.10.3. Leis constitutivas dos materiais

Neste trabalho serão considerados materiais idealizados no regime elástico-


linear, isto é, quando o material é descarregado, a deformação sofrida durante o
carregamento desaparecerá completamente. A capacidade que o material possui de
retornar à forma original, é denominada elasticidade. Quando um material se comporta
elasticamente e apresenta também, uma relação linear entre a tensão e a deformação,
é chamado de material linear elástico (TIMOSHENKO E GERE, 1992).

3.11. MÉTODOS PARA ANÁLISE DE ESTRUTURAS RETICULADAS


ESTATICAMENTE INDETERMINADAS

Estruturas estaticamente indeterminadas possuem mais forças desconhecidas


do que equações de equilíbrio estático, logo, elas não podem ser analisadas utilizando
apenas as equações de equilíbrio estático, então são necessárias equações
adicionais. São usados dois métodos gerais para a resolução de uma estrutura
hiperestática: Método das Forças e Método da Rigidez (MCCORMAC, 2009).
22

3.11.1. Método das forças

O Método das Forças, também chamado de método da flexibilidade, é um


método clássico para a análise de estruturas hiperestáticas lineares e elásticas, onde
se determina um conjunto de reações e/ou esforços superabundantes ao equilíbrio
estático da estrutura hiperestática, permitindo que as outras reações e/ou esforços
sejam determinados através das equações de equilíbrio (SORIANO, 2005).

No método das forças idealizamos uma estrutura estável, determinada através


da remoção de forças além das necessárias para manter a estrutura estável
(redundantes). Essa estrutura isostática é chamada de sistema principal e os
elementos derivados da eliminação dos vínculos são as incógnitas do problema. O
número de vínculos retirado da estrutura é igual ao grau de indeterminação. As cargas
de projeto, que já são especificadas, e as redundantes, que nesse estágio ainda são
desconhecidas, são aplicadas na estrutura liberada através de soluções básicas. As
soluções básicas não satisfazem isoladamente todas as condições de
compatibilidade, mas essas condições são restabelecidas depois da superposição dos
casos básicos (LEET; UANG e GILBERT; 2009).

Para facilitar o entendimento, toma-se como exemplo a treliça da figura 4(a),


onde a configuração deformada, representada pela linha tracejada, é mostrada de
forma exagerada apenas para fins didáticos. Para analisar a estrutura com respeito
às condições de equilíbrio, toma-se da mecânica clássica as equações de equilíbrio
da estática (MARTHA, 2010).

Figura 4 - Superposição de soluções básicas do Método das Forças.


Fonte: Martha, 2010, p. 31

Conforme mencionado, a solução do problema hiperestático pelo Método das


Forças é feita pela superposição de soluções básicas isostáticas, então, cria-se uma
23

estrutura isostática auxiliar, chamada de caso 0, que é mostrada na figura 4(b). São
eliminados os vínculos externos da estrutura original, onde são implantadas as
incógnitas chamadas de redundantes hiperestáticas. A escolha do caso 0 é arbitrária,
desde que seja estável estaticamente. Em seguida, é feita a resolução do caso 0
através do princípio dos trabalhos virtuais. Dele, obtém-se os termos de carga (δ𝑖0 ),
nas direções dos vínculos eliminados para a criação do caso 0 (MARTHA, 2010).

Para cada redundante, será criado um caso básico, que é a representação da


estrutura do caso 0, mas apenas com um valor unitário de carregamento aplicado no
local da redundante, como é mostrado o caso 1 na figura 4(c). Como a redundante faz
relação a restrição de uma força ou de um momento, a unidade de medida será
equivalente ao deslocamento ou rotação restringido. A esses coeficientes gerados se
dá o nome de coeficientes de flexibilidade (δ𝑖𝑗 ). A partir dos resultados obtidos nos
casos apresentados, pode-se utilizar superposição de efeitos para restabelecer as
condições de compatibilidade violadas na criação do caso 0, gerando a expressão (7)
(MARTHA, 2010).

δ10 + δ11 ∗ 𝑋1 = 0 (7)

A solução deste sistema resulta nos valores das reações de apoio , que podem
ser usadas para o cálculo dos esforços internos da estrutura original através da
multiplicação dos valores das redundantes pelos seus respectivos valores de
diagrama dos casos básicos, por exemplo, os momentos fletores finais (M) podem ser
obtidos pela superposição dos diagramas (expressão 8) (MARTHA, 2010).

𝑀 = 𝑀0 + 𝑀1 ∗ 𝑋1 (8)

3.11.2. Método da Rigidez

O Método da Rigidez, também conhecido como método dos deslocamentos,


consiste na determinação de um sistema de equações de equilíbrio, em que a matriz
dos coeficientes é chamada de matriz de rigidez e o vetor das forças independentes
é denominado vetor das forças nodais. Identifica-se então o significado físico de seus
coeficientes e revela-se que esse sistema pode ser obtido a partir dos sistemas de
24

equação de equilíbrio das diversas barras da estrutura consideradas isoladamente.


Em sequência, aplicam-se as condições geométricas de contorno (SORIANO, 2005).

Neste método são levados em conta os três grupos de condições básicas da


análise estrutural: condições de equilíbrio, condições de compatibilidade entre
deslocamentos e deformações e condições impostas pelas leis constitutivas dos
materiais. A metodologia de análise consiste em somar uma série de soluções básicas
(chamadas de casos básicos), que satisfazem as condições de compatibilidade, mas
não satisfazem as condições de equilíbrio da estrutura original, condição essa que só
é alcançada após haver a superposição dos efeitos de todos os casos básicos
envolvidos na análise (MARTHA, 2010).

No Método da Rigidez, as equações de equilíbrio são escritas em termos de


deslocamentos de nó desconhecidos, ou seja, os deslocamentos dos nós ou das
juntas são utilizados nas equações no lugar das forças redundantes utilizadas no
método das forças. Logo, os deslocamentos dos nós são tratados como incógnitas, e
as equações de equilíbrio são escritas para cada nó por meio das cargas aplicadas,
das propriedades dos elementos estruturais e dos deslocamentos desconhecidos dos
nós. Com isso, forma-se um conjunto de equações algébricas lineares que ao serem
resolvidas fornecem os deslocamentos dos nós (MCCORMAC, 2009).

Uma vez que os deslocamentos tenham sido determinados, as cargas


desconhecidas são determinadas a partir das equações de compatibilidade usando
as relações força-deslocamentos. Todo o método de deslocamento segue esse
raciocínio (HIBBELER, 2013).

A partir da estrutura com o seu carregamento original, obtém-se um caso básico


denominado caso 0, onde todas as deslocabilidades possíveis da estrutura são
restringidas (rotação, translação vertical e translação horizontal). No local onde as
deslocabilidades foram restringidas, surgem forças referentes a cada movimentação
que foi eliminada. Os valores destas forças compõem o vetor das forças nodais. Para
os demais casos, nos locais onde as deslocabilidades foram restringidas, aplicam-se
deslocamentos unitários (um caso para cada deslocabilidade), que criam esforços
chamados de “reações de apoio fictícias”, oriundos da rigidez da barra. Assim, através
da superposição dos efeitos gerados na estrutura, são obtidos os esforços que
compõem a matriz de coeficientes, conhecida como matriz de rigidez elementar de
cada barra. (MARTHA, 2010
25

Verifica-se ser mais simples obter o sistema de equações de cada barra em um


referencial próprio a ela, com o eixo de coordenadas surgindo na extremidade de cada
uma das barras, com o eixo x percorrendo-as longitudinalmente. Posteriormente,
obtida a matriz de rigidez elementar de cada barra, necessita ser feita uma
transformação das coordenadas locais em coordenadas globais da estrutura, através
de uma matriz de rotação de coordenadas. Com isso, a matriz de rigidez passa a ser
não singular e a resolução do sistema de equações resultante fornece os
deslocamentos nodais não restringidos. A partir desses deslocamentos podem ser
determinados os esforços internos nas extremidades das barras e as reações de apoio
da estrutura hiperestática (SORIANO, 2010).

O sistema de equações de equilíbrio é calculado pela multiplicação da matriz


de rigidez global pelo vetor global dos deslocamentos nodais, o que resulta no vetor
global das forças nodais. O vetor dos deslocamentos globais é dividido em dois, as
primeiras posições do vetor são ocupadas pelos deslocamentos nodais livres e
posteriormente seguem os deslocamentos restringidos, que quase sempre são nulos
devido estarem relacionados aos apoios da estrutura (SORIANO, 2005).

3.11.2.1. Sistema de Referência Global e Local das Estruturas

No método da rigidez, a geometria e o comportamento geral da estrutura são


referenciados através de um sistema de coordenadas cartesianas. Esse sistema pode
ser escolhido de maneira arbitrária, mas, para facilitar as seguintes explicações, será
fixado o sistema de referência global exemplificado pela figura 5 (KASSIMALI, 2015).

Figura 5 - Sistema de referência Global.


Fonte: os autores.
26

Para simplificar alguns resultados como o carregamento externo e esforços


internos em membros da estrutura, é imprescindível a adoção de um sistema local de
referência. Então, cada barra da estrutura apresentará um sistema de eixos locais,
para que os esforços e os carregamentos sejam orientados de forma simplificada
(MCCORMAC, 2009).

O sistema de coordenadas locais é estabelecido definindo primeiramente o eixo


x ao longo do eixo da barra. Uma vez que o eixo x já tenha sido definido, resta
unicamente estabelecer as direções para os eixos y e z. Como são possíveis muitas
escolhas para as direções, o que convém é tomar o eixo z como sendo horizontal, isto
é, existente no plano X-Z. E com isso, pode-se concluir que o eixo y se encontra em
um plano vertical que passa pelos eixos x e Y, como mostra a figura 6 (GERE E
WEAVER, 1981).

Figura 6 - Eixos locais e globais de uma barra.


Fonte: Gere e Weaver, 1981, p. 263

Quando os eixos locais são considerados da forma especificada acima, não há


ambiguidade em relação a suas orientações, exceto em relação a uma barra vertical.
Quando existe uma barra vertical na estrutura, como é o caso dos membros da figura
7(a) e 7(b), a posição do eixo z não fica definida no plano, logo, quando ocorre essa
situação o eixo z é tomado sempre ao longo do eixo Z. Com todas as direções e os
sentidos dos eixos do sistema local, os carregamentos e esforços ficam orientados a
partir deste sistema (GERE E WEAVER, 1981).
27

Figura 7 - Membro vertical de uma treliça espacial.


Fonte: Fonte: Gere e Weaver, 1981, p. 263

3.11.2.2. Matriz de rotação espacial

Quando os elementos de uma estrutura estão orientados em direções


diferentes, é essencial transformar as relações de rigidez para cada elemento do
sistema de coordenadas locais para um sistema comum de coordenadas globais,
então torna-se necessário a utilização de uma matriz de rotação de eixos
(KASSIMALI, 2016).

Considere a ação A mostrada na figura 8 em um eixo de coordenadas locais e


globais. A ação A, orientada ao longo do eixo XM, possui determinados ângulos em
relação aos eixos XS, YS e ZS, portanto, podemos considerar λ11 , λ12 e λ13 como sendo
os cossenos diretores do eixo xM em relação a esses eixos, λ21 , λ22 e λ23 , seguindo a
mesma linha, mas considerando ao eixo yM, e , λ31 , λ32 e λ33 para o eixo zM (GERE E
WEAVER, 1981).
28

Figura 8 - Rotação de eixos em três dimensões.


Fonte: Gere e Weaver, 1981, p. 240

A ação pode ser decomposta em relação aos seus eixos locais, o que resulta
nas seguintes relações:

𝐴𝑋𝑀 λ11 λ12 λ13 𝐴𝑋𝑀


𝐴𝑀 = [𝐴𝑌𝑀 ] = [λ21 λ22 λ23 ] [𝐴𝑌𝑀 ] (9)
𝐴𝑍𝑀 λ32 λ32 λ33 𝐴𝑍𝑀

Se uma matriz de rotação 𝑹 tridimensional é definida como se segue,

λ11 λ12 λ13


λ
𝑹 = [ 21 λ22 λ23 ] (10)
λ32 λ32 λ33

Então a equação 11 pode ser escrita na forma:

𝐴𝑀 = 𝑅𝐴𝑆 (11)

Partindo disso, é possível transformar as componentes da ação A em função


dos eixos globais através da seguinte relação:

𝐴𝑋𝑆 λ11 λ12 λ13 𝐴𝑋𝑀


𝐴𝑆 = [𝐴𝑌𝑆 ] = [λ21 λ22 λ23 ] [𝐴𝑌𝑀 ] (12)
𝐴𝑍𝑆 λ32 λ32 λ33 𝐴𝑍𝑀

Que pode ser escrita como:

𝐴𝑆 = 𝑅′𝐴𝑀 (13)

A primeira linha de componentes pode ser obtida dividindo-se o comprimento


da barra pela componente na direção da qual ser quer o cosseno. Para as duas linhas
29

seguintes, pode-se realizar rotações sucessivas de eixos para encontrar o cosseno


desejado. A primeira rotação se trata do giro de um ângulo β a partir do eixo XS, em
torno do eixo YS, criando um eixo 𝑥β . Este eixo 𝑥β ficará na interseção entre os planos
xM e YS, o que acaba por rotacionar também o eixo zM. Para a nova posição dos eixos
e considerando o eixo 𝑥β , tem-se a matriz 𝑹 (14) em relação ao eixo global da estrutura
(GERE E WEAVER, 1981).

cos β 0 𝑠𝑒𝑛 β
𝑹β = [ 0 1 0 ] (14)
−𝑠𝑒𝑛 β 0 cos β

Por observação geométrica da figura 6, pode-se concluir que:

𝐶𝑥 𝐶𝑧
cos β = √𝐶 2 𝑥+𝐶 2 𝑧
e sen β = √𝐶 2 𝑥+𝐶 2 𝑧
(15)

Onde Cx, Cy e Cz correspondem, respectivamente, aos cossenos diretores nas


direções XS, YS e ZS.
𝐶𝑥 𝐶𝑧
√𝐶 2 𝑥+𝐶 2 𝑧
0 √𝐶 2 𝑥+𝐶 2 𝑧
𝑹β = [ 0 1 0 ] (16)
𝐶𝑧 𝐶𝑥
− √𝐶 2 0
𝑥+𝐶 2 𝑧 √𝐶 2 𝑥+𝐶 2 𝑧

O segundo giro ocorre em torno do eixo zM, com um ângulo γ. O processo é


similar ao mostrado anteriormente, gerando uma matriz 𝑹γ :

√𝐶 2 𝑥 + 𝐶 2 𝑧 𝐶𝑦 0
𝑹γ = [ −𝐶𝑦 √𝐶 2 𝑥 + 𝐶 2 𝑧 0] (17)
0 0 1

Por fim, o produto das matrizes 16 e 17 gera a matriz de rotação final 𝑹:


30

𝐶𝑥 𝐶𝑦 𝐶𝑧
−𝐶𝑥𝐶𝑦 −𝐶𝑥𝐶𝑦
𝑹 = [√𝐶 2 𝑥+𝐶 2 𝑧 √𝐶 2 𝑥 + 𝐶 2 𝑧 √𝐶 2 𝑥+𝐶 2 𝑧 ] (18)
−𝐶𝑧 −𝐶𝑥
√𝐶 2 𝑥+𝐶 2 𝑧
0 √𝐶 2 𝑥+𝐶 2 𝑧

Essa matriz é matriz de rotação 𝑹 de uma treliça espacial. Caso a barra seja
paralela ao eixo YS, surgem ambiguidades em relação ao sentido da ação e fica-se
impossibilitada a utilização da matriz de rotação 𝑹, já que as componentes Cx e Cy
serão nulas, criando uma divisão por zero. Neste caso, a matriz de rotação para barras
paralelas ao eixo YS toma a forma da expressão 19 (GERE E WEAVER, 1981).

0 𝐶𝑦 0
𝑹 = [−𝐶𝑦 0 0] (19)
0 0 1

3.11.2.3. Graus de Liberdade

Os graus de liberdade de uma estrutura são deslocamentos independentes dos


nós (translações e rotações) que são essenciais para determinar a curva elástica da
estrutura quando submetida a uma carga arbitrária (KASSIMALI, 2015).

Visto que tanto as deformações axiais como as de flexão serão tomadas em


consideração na análise de pórticos espaciais, existe a possibilidade de que haja seis
deslocamentos independentes em cada nó. Esses deslocamentos são tomados como
as translações e os giros do nó nas direções X, Y e Z. Em pórticos planos, há a
possibilidade de haver três deslocamentos por nó, que são o giro na direção Z e as
translações nas direções X e Y (GERE E WEAVER, 1981).

No caso de treliças planas, cada nó tem apenas dois graus de liberdade, sendo
as translações nas direções X e Y, já que as barras são rotuladas em ambas as
extremidades e não há a transmissão de momento fletores, e, por consequência, a
rotação do nó. Já as treliças espaciais possuem três graus de liberdade por nó, sendo
as translações nas direções X, Y e Z. Não há giro do nó pelo mesmo motivo do caso da
treliça plana. Já a estrutura de grelha possui três deslocamentos possíveis, sendo uma
31

rotação, que ocorre em torno do’ eixo Z, e duas translações, relacionadas aos eixos X
e Y (MARTHA, 2010).

Em posse da numeração dos nós e barras, realizados na discretização da


estrutura, é necessário registrar os dois números de nó que estão associados ao início
e fim de cada barra, a fim de criar o vetor de incidências de cada barra e assegurar
que serão definidos corretamente quais os elementos da matriz de rigidez e do vetor
de cargas que irão receber as contribuições de cada membro (GERE E WEAVER,
1981).

Figura 9 - Sistema de numeração para um pórtico espacial.


Fonte: Gere e Weaver, 1981, p. 270

Depois de numerar os membros e os nós, a etapa seguinte na análise é


identificar todos os possíveis deslocamentos nodais e graus de liberdade. Os
possíveis deslocamentos nodais serão numerados pela mesma ordem que os nós,
desta forma, em um pórtico espacial, que é o caso mais completo em questão de
rotações e translações, a translação na direção de X será o deslocamento número 1,
a translação na direção de Y será o deslocamento número 2, a translação na direção
de Z será o deslocamento número 3, o giro em torno do eixo X será o deslocamento
número 4, e assim sucessivamente, até que sejam numeradas todas as
deslocabilidades de todos os nós, assim como se pode observar na figura 9. Em outros
modelos estruturais que não possuam todas as deslocabilidades livres, a numeração
segue o mesmo padrão, pulando os deslocamentos restringidos. A fim de organizar
melhor as matrizes, costumam-se numerar primeiro os nós não restringidos, deixando
32

por último os nós que possuem deslocabilidades restringidas (GERE E WEAVER,


1981).

3.11.2.4. Hipóteses simplificadoras

Para simplificar o processo de cálculo estrutural, na concepção do modelo


estrutural são adotadas hipóteses que permitem desenvolver os cálculos de forma
relativamente simples, sendo chamadas de hipóteses simplificadoras. As hipóteses
estão relacionadas quanto a geometria, condição de suporte, comportamento dos
materiais e solicitações que atuam sobre a estrutura (MARTHA, 2010).

As estruturas podem ter comportamento físico linear ou não linear, assim como
o comportamento geométrico, que pode ou não ser linear. Entende-se por
comportamento físico linear quando os materiais que constituem a barra possuem
diagrama tensão-deformação linear, onde as deformações aumentam linearmente
conforme é aumentada a tensão atuante sobre o elemento, e, depois de cessada a
solicitação, o material volta ao tamanho original, sem possuir deformações residuais
(SORIANO, 2005).

Caso a deformação não ocorra de forma linear, diz- se que o material possui
um comportamento físico não linear. Em relação ao comportamento geométrico, ele
será linear quando as equações de equilíbrio podem ser escritas na configuração não
deformada da estrutura, ou seja, na fase anterior à aplicação das ações externas,
apesar de já se supor que estas ações estejam atuando, criando assim uma análise
com pequeno deslocamento onde a tangente do ângulo de rotação é tomada igual ao
próprio ângulo em radiano, caso contrário, o material terá um comportamento
geométrico não linear (SORIANO, 2005).

Considerando que o material possua linearidade física e geométrica, pode-se


considerar o princípio da superposição dos efeitos, ilustrado na imagem 10. Este
princípio afirma que os carregamentos atuantes na estrutura podem ser decompostos
em vários carregamentos e que os esforços desses carregamentos decompostos
podem ser somados ao final, gerando o mesmo resultado que seria obtido caso os
carregamentos não fossem decompostos (KASSIMALI, 2015).
33

Figura 10 - Superposição dos efeitos.


Fonte: Kassimali, 2015, p.76

3.11.2.5. Sistema de equações de equilíbrio

Para apresentar o sistema de equações de equilíbrio do método dos


deslocamentos, toma-se o pórtico da imagem 11(a) e 11(b), em que se têm três barras
e quatro pontos nodais, com as barras numeradas e deslocamentos numerados
(SORIANO, 2005).

Figura 11 - Pórtico plano.


Fonte: Soriano, 2005, p.5
34

Em uma estrutura adequadamente vinculada e com comportamento linear, há


proporcionalidade entre as forças aplicadas e seus respectivos deslocamentos, assim,
ao aplicar uma força 𝑓1 , têm-se no pórtico o deslocamento d1 = δ11 ∗ 𝑓1 , onde δ11 é
um coeficiente de flexibilidade, que é influenciado pela geometria da estrutura, suas
condições de apoio e suas propriedades elásticas. Considerando um pórtico espacial,
e, seguindo nessa linha de aplicação de forças de maneira sucessiva em todos os nós
e relacionando-as com os deslocamentos gerados no primeiro grau de liberdade,
escreve-se o deslocamento total (20) (SORIANO, 2005).
12
∑𝑞=1 δ11 𝑓𝑞 (20)

Repetindo o procedimento anterior de aplicação de forças e os deslocamentos


causados em cada um dos graus de liberdade, obtém-se o sistema de equações que
relaciona as forças com os deslocamentos (21) (SORIANO, 2005).

δ1,1 δ1,2 δ1,3 δ1,4 δ1,5 δ1,6 δ1,7 δ1,8 δ1,9 δ1,10 δ1,11 δ1,12 𝑓1 𝑑1
δ2,1 δ2,2 δ2,3 δ2,4 δ2,5 δ2,6 δ2,7 δ2,8 δ2,9 δ2,10 δ2,11 δ2,12 𝑓2 𝑑2
δ3,1 δ3,2 δ3,3 δ3,4 δ3,5 δ3,6 δ3,7 δ3,8 δ3,9 δ3,10 δ3,11 δ3,12 𝑓3 𝑑3
δ4,1 δ4,2 δ4,3 δ4,4 δ4,5 δ4,6 δ4,7 δ4,8 δ4,9 δ4,10 δ4,11 δ4,12 𝑓4 𝑑4
δ5,1 δ5,2 δ5,3 δ5,4 δ5,5 δ5,6 δ5,7 δ5,8 δ5,9 δ5,10 δ5,11 δ5,12 𝑓5 𝑑5
δ6,1 δ6,2 δ6,3 δ6,4 δ6,5 δ6,6 δ6,7 δ6,8 δ6,9 δ6,10 δ6,11 δ6,12 𝑓6 𝑑6
= (21)
δ7,1 δ7,2 δ7,3 δ7,4 δ7,5 δ7,6 δ7,7 δ7,8 δ7,9 δ7,10 δ7,11 δ7,12 𝑓7 𝑑7
δ8,1 δ8,2 δ8,3 δ8,4 δ8,5 δ8,6 δ8,7 δ8,8 δ8,9 δ8,10 δ8,11 δ8,12 𝑓8 𝑑8
δ9,1 δ9,2 δ9,3 δ9,4 δ9,5 δ9,6 δ9,7 δ9,8 δ9,9 δ9,10 δ9,11 δ9,12 𝑓9 𝑑9
δ10,1 δ10,2 δ10,3 δ10,4 δ10,5 δ10,6 δ10,7 δ10,8 δ10,9 δ10,10 δ10,11 δ10,12 𝑓10 𝑑10
δ11,1 δ11,2 δ11,3 δ11,4 δ11,5 δ11,6 δ11,7 δ11,8 δ11,9 δ11,10 δ11,11 δ11,12 𝑓11 𝑑11
[ δ12,1 δ12,2 δ12,3 δ12,4 δ12,5 δ12,6 {𝑓
δ12,7 δ12,8 δ12,9 δ12,10 δ12,11 δ12,12 ] 12 } { 𝑑12 }

Em fórmula compacta, esse sistema se escreve:

Δ~𝑙𝑙 𝑓~𝑙 = 𝑑~𝑙 (22)

Onde Δ~𝑙𝑙 é uma matriz de flexibilidade, 𝑓~𝑙 é o vetor das forças nodais externas
e 𝑑~𝑙 é o vetor dos deslocamentos nodais. Como a matriz de flexibilidade não é
singular, a partir da equação anterior obtém-se a expressão 23 (SORIANO, 2005).

Δ−1
~𝑙𝑙 𝑑~𝑙 = 𝑓~𝑙 (23)

Adotando a notação

K ~𝑙𝑙 = Δ−1
~𝑙𝑙 (24)

A equação anterior toma a forma:


35

K ~𝑙𝑙 𝑑~𝑙 = f~𝑙 (25)

Onde K ~𝑙𝑙 é denominada matriz de rigidez restringida, por ter sido obtida
considerando os efeitos dos deslocamentos restringidos. Assim, o sistema fica:

K1,1 K1,2 K1,3 K1,4 K1,5 K1,6 K1,7 K1,8 K1,9 K1,10 K1,11 K1,12 𝑑1 𝑓1
K 2,1 K 2,2 K 2,3 K 2,4 K 2,5 K 2,6 K 2,7 K 2,8 K 2,9 K 2,10 K 2,11 K 2,12 𝑑2 𝑓2
K 3,1 K 3,2 K 3,3 K 3,4 K 3,5 K 3,6 K 3,7 K 3,8 K 3,9 K 3,10 K 3,11 K 3,12 𝑑3 𝑓3
K 4,1 K 4,2 K 4,3 K 4,4 K 4,5 K 4,6 K 4,7 K 4,8 K 4,9 K 4,10 K 4,11 K 4,12 𝑑4 𝑓4
K 5,1 K 5,2 K 5,3 K 5,4 K 5,5 K 5,6 K 5,7 K 5,8 K 5,9 K 5,10 K 5,11 K 5,12 𝑑5 𝑓5
K 6,1 K 6,2 K 6,3 K 6,4 K 6,5 K 6,6 K 6,7 K 6,8 K 6,9 K 6,10 K 6,11 K 6,12 𝑑6 𝑓6
= (26)
K 7,1 K 7,2 K 7,3 K 7,4 K 7,5 K 7,6 K 7,7 K 7,8 K 7,9 K 7,10 K 7,11 K 7,12 𝑑7 𝑓7
K 8,1 K 8,2 K 8,3 K 8,4 K 8,5 K 8,6 K 8,7 K 8,8 K 8,9 K 8,10 K 8,11 K 8,12 𝑑8 𝑓8
K 9,1 K 9,2 K 9,3 K 9,4 K 9,5 K 9,6 K 9,7 K 9,8 K 9,9 K 9,10 K 9,11 K 9,12 𝑑9 𝑓9
K 10,1 K 10,2 K 10,3 K 10,4 K 10,5 K 10,6 K 10,7 K 10,8 K 10,9 K 10,10 K 10,11 K 10,12 𝑑10 𝑓10
K 11,1 K 11,2 K 11,3 K 11,4 K 11,5 K 11,6 K 11,7 K 11,8 K 11,9 K 11,10 K 11,11 K 11,12 𝑑11 𝑓11
[ K 12,1 K 12,2 K 12,3 K 12,4 K 12,5 K 12,6 K 12,7 K 12,8 K 12,9 K 12,10 K 12,11 K 12,12 ] {𝑑12 } {𝑓12 }

3.11.2.6. Matriz de rigidez elementar e vetor de cargas local

Como descrito no tópico 3.9.2.1, é mais fácil para a resolução dos cálculos a
adoção de um sistema de referência local para cada barra. Isso implica na geração
de matrizes de rigidez elementares. Cada coeficiente é associado a um número de
grau de liberdade, o que facilitará o seu espalhamento na matriz de rigidez global que
posteriormente será calculada. Para uma barra espacial que possui engaste perfeito,
ou seja, possui todas as deslocabilidades restringidas, a matriz de rigidez fica com o
formato representado na equação 27 (GERE E WEAVER, 1981).
𝐸𝐴𝑋 𝐸𝐴𝑋
0 0 0 0 0 − 0 0 0 0 0
𝐿 𝐿
12𝐸𝐼𝑍 6𝐸𝐼𝑍 12𝐸𝐼𝑍 6𝐸𝐼𝑍
0 0 0 0 0 − 0 0 0
𝐿3 𝐿2 𝐿3 𝐿2
12𝐸𝐼𝑌 6𝐸𝐼𝑍 12𝐸𝐼𝑌 6𝐸𝐼𝑌
0 0 0 − 0 0 0 − 0 − 0
𝐿3 𝐿2 𝐿3 𝐿2
𝐺𝐼𝑋 𝐺𝐼𝑋
0 0 0 0 0 0 0 0 − 0 0
𝐿 𝐿
6𝐸𝐼𝑌 4𝐸𝐼𝑌 6𝐸𝐼𝑌 2𝐸𝐼𝑌
0 0 − 0 0 0 0 0 0
𝐿2 𝐿 𝐿2 𝐿
6𝐸𝐼𝑍 4𝐸𝐼𝑍 6𝐸𝐼𝑍 2𝐸𝐼𝑍
0 0 0 0 0 − 0 0 0
[𝐾𝑒] = 𝐿2 𝐿 𝐿2 𝐿 (27)
𝐸𝐴𝑋 𝐸𝐴𝑋
− 0 0 0 0 0 0 0 0 0 0
𝐿 𝐿
12𝐸𝐼𝑍 6𝐸𝐼𝑍 12𝐸𝐼𝑍 6𝐸𝐼𝑍
0 − 0 0 0 − 0 0 0 0 −
𝐿3 𝐿2 𝐿3 𝐿2
12𝐸𝐼𝑌 6𝐸𝐼𝑍 12𝐸𝐼𝑌 6𝐸𝐼𝑌
0 0 − 0 0 0 0 0 0
𝐿3 𝐿2 𝐿3 𝐿2
𝐺𝐼𝑋 𝐺𝐼𝑋
0 0 0 − 0 0 0 0 0 0 0
𝐿 𝐿
6𝐸𝐼𝑌 2𝐸𝐼𝑌 6𝐸𝐼𝑌 4𝐸𝐼𝑌
0 0 − 0 0 0 0 0 0
𝐿2 𝐿 𝐿2 𝐿
6𝐸𝐼𝑍 2𝐸𝐼𝑍 6𝐸𝐼𝑍 4𝐸𝐼𝑍
[ 0 0 0 0 0 − 0 0 0
𝐿2 𝐿 𝐿2 𝐿 ]

36
37

O vetor de cargas local pode ser montado através dos esforços nodais
calculados através do método das forças. Faz-se a distribuição esforços segundo a
numeração dos graus de liberdade atribuídos a cada deslocabilidade. No caso de uma
viga perfeitamente engastada, haverá valores de coeficiente em todas as
deslocabilidades (GERE E WEAVER, 1981).

3.11.2.7. Liberação de matrizes de graus de liberdade

Para a obtenção das matrizes de rigidez de barras que não sejam perfeitamente
engastadas, bem como o vetor de forças locais, dado à diversidade de tipos de
combinações e liberações de deslocamentos que podem ocorrer em uma mesma
barra, é mais prático modificar a matriz de rigidez e o vetor de esforços de
engastamento perfeito de barra em seu referencial local a partir do princípio das forças
nodais equivalentes, apresentada através da imagem 12 (SORIANO, 2009).

Figura 12 - Forças nodais equivalentes.


Fonte: Soriano,2009, p. 117
38

Considerando que o método dos deslocamentos se baseia em um sistema de


equações de equilíbrio considerando coordenadas globais, quando uma estrutura é
solicitada externamente, os efeitos gerados dessas ações devem ser transformados
em efeitos de forças nodais. A figura 12 busca exemplificar esse procedimento, onde
é representado um pórtico (a) que está sendo solicitado pelas forças P e p, e sobre
uma variação de temperatura t e uma deformação d. Na 12(b) cada barra do pórtico é
representada isoladamente, juntamente com a representação das reações de apoio
(esforços de engastamento perfeito). Na 12(c) o pórtico é representado juntamente
com os esforços de engastamento perfeito e as solicitações externas. Na parte (d) da
figura é representado as forças nodais equivalentes (esforços de engastamento
perfeito em sentidos contrários). Logo, as reações da imagem 12(a) da figura podem
ser obtidas pela soma das reações de apoio das partes 12(c) e 12(d), bem como os
esforços internos. A partir disso surge a expressão (28) (SORIANO, 2009).
𝑖 𝑖 𝑖 𝑖
𝑎~𝐿𝐹 = 𝑘~𝐿 𝑢~𝐿 𝑎~𝐿𝑆 (28)
𝑖
Onde 𝑎~𝐿𝐹 corresponde aos esforços internos finais nas extremidades das
𝑖 𝑖
barras, 𝑘~𝐿 indica a matriz de rigidez da barra no referencial local, 𝑢~𝐿 é o vetor de
𝑖
deslocamentos nodais no referencial local e 𝑎~𝐿𝑆 são os esforços de engastamento
perfeito em seu referencial local (SORIANO, 2009).

A j-ésima equação desse sistema tem a forma:


2𝑔 𝑖 𝑖
𝒂𝒊𝑱 = ∑𝑘=1 𝑘𝑗𝑘 𝑢𝑘 + 𝑎𝑗𝑖 (29)

Em que 𝒂𝒊𝑱 , 𝑎𝐽𝑖 e 𝑢𝑘𝑖 são, respectivamente, os coeficientes genéricos os vetores


𝑖 𝑖 𝑖 𝑖 𝑖
𝑎~𝐿𝐹 , 𝑎~𝐿𝑆 , e de 𝑢~𝐿 ; 𝑘𝑗𝑘 é o coeficiente genérico da matriz 𝑘~𝐿 e 2g é o número de
deslocamentos nodais da barra (SORIANO, 2009).

Considerando 𝑙 a ordem de um deslocamento na numeração local de barra


que se deseja liberar, a equação anterior pode er escrita sob a forma:

𝑙−1 2𝑔
𝑖 𝑖
0 = ∑ 𝑘𝑙𝑘 𝑢𝑘𝑖 + 𝑘𝑙𝑙𝑖 𝑢𝑙𝑖 + ∑ 𝑘𝑗𝑘 𝑢𝑘𝑖 + 𝑎𝑙𝑖 (30)
𝑘=1 𝑘=𝑙+1

Onde 𝑎𝑙𝑖 foi feito nulo na direção a ser liberada. Isolando nessa equação o
deslocamento 𝑢𝑙𝑖 , obtém-se:
38

𝑙−1 2𝑔
1 𝑖
𝑢𝑙𝑖 = 𝑖
− 𝑖 (∑ 𝑘𝑙𝑘 𝑢𝑘𝑖 + ∑ 𝑘𝑗𝑘 𝑢𝑘𝑖 + 𝑎𝑙𝑖 ) (31)
𝑘𝑙𝑙
𝑘=1 𝑘=𝑙+1

Substituindo esse deslocamento na equação 35, chega-se, para 𝑗 ≠ 𝑙, à


equação:

𝑙−1 2𝑔

𝑎𝑗𝑖 = ∑ 𝑘𝑗𝑘
𝑖′ 𝑖
𝑢𝑘𝑖 + ∑ 𝑘𝑗𝑘 𝑢𝑘𝑖 + 𝑎𝑙𝑖 (32)
𝑘=1 𝑘=𝑙+1

Onde anotam-se as notações:

𝑖′ 𝑖
𝑘𝑗𝑙𝑖
𝑘𝑗𝑘 = 𝑘𝑗𝑘 − 𝑘𝑖
𝑖 𝑙𝑘
𝑘𝑙𝑙
(33)
′ 𝑘𝑗𝑙𝑖 𝑖
𝑎𝑗𝑖 = 𝑎𝑗𝑖 − 𝑎𝑙
{ 𝑘𝑙𝑙𝑖

Assim, pode-se fazer uma substituição do deslocamento liberado nas demais


equações de equilíbrio da barra. Quando j e l são iguais, significa que aquele
coeficiente relacionado ao deslocamento foi liberado, substituindo o valor pelo número
0. Com essas notações, cria-se as matrizes de rigidez locais e o vetor de força local
para qualquer configuração de barra que não seja bi-engastada (SORIANO, 2009).

3.11.2.8. Matriz de rigidez e vetor de forças global e cálculo de deslocamentos e


forças

Se uma estrutura é composta por várias barras, e essas barras estão


localizadas no mesmo eixo de coordenadas globais, então a matriz de rigidez da
estrutura pode ser gerada pela combinação das matrizes de rigidez das barras
individuais já rotacionadas. Ou seja, a matriz de rigidez global surge da sobreposição
das matrizes elementares de cada barra, e assim como as matrizes elementares, ela
independe dos carregamentos que atuam sobre a estrutura (LEET; UANG e
GILBERT; 2009).

O espalhamento dos coeficientes rotacionados na matriz de rigidez global


segue a ordem que o coeficiente ocupava na matriz de rigidez local, em relação ao
seu grau de liberdade. Se lá a posição correspondia, por exemplo, ao grau de
liberdade dois em uma referida linha e ao grau de liberdade três em uma referida
40

coluna, na matriz de rigidez global a posição do elemento será linha dois, coluna três
(LEET; UANG e GILBERT; 2009).

A mesma linha de raciocínio seguirá a montagem do vetor global de cargas,


com a diferença que, se houverem cargas nodais na estrutura, elas entrarão neste
vetor, alocados nas respectivas colunas correspondentes ao número do grau de
liberdade em que está alocado o carregamento nodal que se deseja ser adicionado
(SORIANO, 2009).

Como visto na equação (3), as forças dos apoios restringidos surgem da


multiplicação da matriz de rigidez pelo vetor de deslocamentos, isto em coordenadas
locais. Para fazer a transformação para coordenadas globais, usa-se a matriz de
rotação R obtida na equação 18 (GERE E WEAVER, 1981).

[𝐑𝑻 ] ∗ [f~𝑙 ] = [𝐹] (34)

Onde F é o vetor de forças em coordenadas globais e 𝐑𝑻 será a matriz de


rotação transposta a fim de se adequar as dimensões necessárias para multiplicações
de matrizes. Isto é possível porque a transposta da matriz 𝐑 é igual ao seu inverso.
Da mesma forma, podemos obter o vetor de deslocamentos globais D, pela expressão
(35) (GERE E WEAVER, 1981).

[𝐑] ∗ [𝑑~𝑙 ] = [𝐷] (35)

Substituindo as equações 33 e 34 em 18, obtém-se:

[𝐹] = [𝐑𝑻 ] ∗ [𝐾~𝑙𝑙 ] ∗ [𝐑] ∗ [𝐷] (36)

Ou seja, a matriz de rigidez global K corresponde a:

[𝐾] = [𝐑𝑻 ] ∗ [𝐾~𝑙𝑙 ] ∗ [𝐑] (37)

Portanto:

[𝐹] = [𝐾] ∗ [𝐷] (38)

Montada a matriz de rigidez e o vetor de carga global, pode-se proceder o


cálculo dos deslocamentos dos apoios não restringidos e das reações de apoio. Para
que isso seja possível, é necessário dividir a matriz e o vetor de foças para evitar cair
em uma solução impossível de se calcular devido a possibilidade da matriz de rigidez
ser singular, já que o deslocamento referente aos graus de liberdade restringidos
equivale a 0. Portanto, é conveniente dividir a equação 31 entre os graus de liberdade
41

restringidos e os não restringidos, formando as submatrizes K11, K12, K21, K22 (39)
(GERE E WEAVER, 1981).

[𝐾11 ] [𝐾12 ]
𝐾=[ | ] (39)
[𝐾21 ] [𝐾22 ]

A submatriz K11 representa os graus de liberdade restringidos, enquanto as


restantes dizem respeito aos graus de liberdade livres. Da mesma forma, fica dividido
o vetor de forças e deslocamentos, de forma que:
𝐹𝑘 [𝐾 ] [𝐾 ] 𝐷𝑢
[𝐹𝑢] = [[𝐾11 ] |[𝐾12 ]] ∗ [𝐷𝑘 ] (40)
21 22

Onde Fk e Dk correspondem as forças e deslocamentos conhecidos,


respectivamente, assim como Fu e Du correspondem as forças e deslocamentos
desconhecidos (GERE E WEAVER, 1981).

Divindindo e isolando as incógnitas, tem-se:

{Du} = [𝐾11 ]−1 ∗ ({Fk} − [𝐾12 ] ∗ {Dk}) (41)

{Fu} = [𝐾21 ] ∗ {Du} + [𝐾22 ] ∗ {Dk} (42)

Com isso, é possível obter as reações de apoio e deslocamentos dos graus


de liberdade livres em coordenadas globais (GERE E WEAVER, 1981).

3.12. LINGUAGEM PYTHON

O Python é uma linguagem dinâmica que engloba variadas estruturas (listas,


dicionários, data / hora e outras) e uma abrangente coleção de módulos prontos para
uso. É uma linguagem altamente poderosa, já que possui uma biblioteca de funções
que comporta tarefas diversificadas, o que permite o desenvolvimento de grandes
projetos. O python é uma linguagem que possui código aberto, dispondo de
multiplataformas e comportando a orientação a objeto, já que tudo dentro do python é
um objeto, desde a mais simples variável. (MENEZES, 2010).
Dentre os ambientes de desenvolvimento integrado (IDE) para Python, o
Spyder é um dos que mais e destaca quando se trata da linguagem Python. Ele
oferece uma combinação de recursos de edição, análise, depuração e criação de perfil
de uma ferramenta, com um ambiente de desenvolvimento interativo, permitindo a
execução de comandos diretamente no terminal e depuração, além de possuir
recursos de introspecção, que permitem a análise do tipo e as propriedades de um
42

objeto (variável, função ou estrutura de dados) em tempo de execução (MENEZES,


2010).
Para o desenvolvimento de uma interface pode ser utilizado o PyQt, que é um
kit de ferramentas de widgets da GUI. O PyQt é uma interface Python para o Qt, é
uma mistura de linguagem de programação Python e da biblioteca Qt. Já o Matplotlib
é uma biblioteca de plotagem do Python que produz uma variedade de formatos
impressos e ambientes interativos entre plataformas (BORGES, 2010).
43

4. PROCEDIMENTOS METODOLÓGICOS

4.1. METODOLOGIA DO TRABALHO

Para o desenvolvimento do trabalho, primeiramente foi elaborada a revisão


bibliográfica referente à análise estrutural, seguida do estabelecimento do método e
da linguagem a ser empregue para a composição do trabalho e do CERBERUS. Logo,
através da revisão dos conceitos básicos da análise estrutural e dos métodos básicos
de resolução de estruturas hiperestáticas, foi estabelecido o método das forças e dos
deslocamentos (rigidez e matricial), como métodos necessários para a composição
do software.

O Método dos Deslocamentos foi adotado, devido a sua adaptação para os


métodos matriciais, proporcionando assim uma linguagem matemática conveniente
para manipulação por meio de computadores. O Método das Forças, apesar de não
ser convencional o seu uso para a manipulação por computadores, foi utilizado para
determinar as ações nodais, com o objetivo de possibilitar a transferência de qualquer
tipo de função de carregamento atuante para as extremidades da barra. A linguagem
Python foi escolhida pois promove os recursos necessários para a execução do
software, como bibliotecas com ferramentas de cálculo possibilitando a execução de
limites, diferenciais e integrais, além de também proporcionar simplicidade e
eficiência.

Inicialmente, o foco foi compreender o funcionamento de um código capaz de


resolver estruturas planas (treliças e pórticos), para depois evoluir na aplicação do
código e dos conceitos para elementos espaciais. Posteriormente foi elaborado o
código computacional, tendo como base as etapas da análise matricial de estruturas
reticuladas espaciais.
Para elaborar o código, primeiramente foram definidos os sistemas de
coordenadas globais, para possibilitar a consumação da ordem dos graus de
liberdades. Posteriormente foram determinados os sistemas de coordenadas locais,
para possibilitar a obtenção das matrizes de rigidez locais e matrizes de rotação.
Depois foram determinados os métodos de obtenção dos vetores tanto de força como
o de deslocamento. Então, possuindo todos esses dados, foi possível a transformação
de coordenadas locais para globais, e a obtenção da matriz de rigidez global.
44

Depois de todos os passos descritos anteriormente, foi possível a resolução da


estrutura, obtendo reações de apoios, esforços internos e deformações. Todos os
resultados obtidos com estruturas planas, foram comparados com o Ftool, já os
resultados obtidos com o código para estruturas espaciais foram comparados com o
SAP 2000.
Com o código de cálculo pronto, o próximo passo foi desenvolver uma interface
gráfica, para possibilitar uma entrada de dados de forma clara e simples. A interface
gráfica foi desenvolvida através das bibliotecas Matplotlib, responsável por gerar o
canvas onde é representado a estrutura, e o PyQT4, biblioteca voltada para a criação
da interface gráfica do programa, em um objeto diferente do código de cálculo.

4.2. METODOLOGIA DO CÓDIGO COMPUTACIONAL CERBERUS

4.2.1. Convenção de sinais

É imprescindível adotar uma convenção de sinais para as forças e


deslocamentos, para garantir os resultados certos e esperados, além de facilitar o
entendimento e a comunicação entre os engenheiros. A escolha da convenção a ser
utilizada é indiferente, pois, desde que seja seguida corretamente, irá trazer os
mesmos resultados assim como qualquer outra que tenha seu uso de forma correta
(MCCORMAC, 2009).

A convenção de Green, determina como positivos os deslocamentos com


direção horizontal e sentido para a direita e os deslocamentos com direção vertical e
sentido para cima. No caso do eixo z, que está perpendicular ao plano x-y, será
considerado como positivo aqueles deslocamentos que estiverem saindo do plano da
tela. Para os momentos, serão considerados como positivos aqueles que tiverem giro
anti-horário em relação ao eixo analisado. A figura 10 representa graficamente a
convenção descrita (MARTHA, 2010).
45

Figura 13 - Representação de deslocamentos e giros positivos.


Fonte: os autores.

Outra convenção a ser adotada é a convenção que rege o traçado dos


diagramas de esforços internos das barras. Para isso, toma-se a barra, orientada em
seu eixo de coordenadas locais e analisa-se onde se encontra a posição da fibra
inferior da barra, que estará situada na parte de baixo da barra se o sistema analisado
for o destrógeno, definido pela locação dos nós da barra e sua incidência. Quando o
ponto inicial da barra se situar a esquerda do ponto final tem-se um sistema
destrógeno, caso contrário, será um sistema levógeno, neste caso a fibra inferior da
barra estará situada na sua parte superior (MARTHA, 2010).
45

4.2.2. Fluxograma do código do CERBERUS

Figura 14 - Fluxograma do código.


Fonte: os autores.

4.2.3. Entrada de dados da estrutura

A entrada de dados (nível 1 do fluxograma – figura 14) compreende o


fornecimento de informações para o software promover a análise da estrutura. Essas
47

informações serão promovidas pelo usuário do programa, para que posteriormente


possam ser codificados de modo conveniente.

A localização de cada nó pertencente à estrutura será especificada por meio


de coordenadas geométricas, e a partir dos nós identificados, é possível indicar as
condições de apoio. A localização de dois nós pode permitir a locação de uma barra,
e deverão ser informadas obrigatoriamente as propriedades geométricas (Área da
seção, momento de inercia polar, momento de inercia do eixo y e momento de inercia
do eixo z) das seções e propriedades mecânicas do material (módulo de elasticidade
e coeficiente de poisson). Outra informação necessária é a identificação de
descontinuidades ao longo dos elementos da estrutura. O esquema da entrada de
dados está exemplificado na figura 15.

Figura 15 - Esquema para entrada de dados.


Fonte: os autores.

A informação dos carregamentos distribuídos, pode ser feita através das


intensidades aplicadas em cada extremidade da barra, ou também por meio de
equações de carregamento.
48

4.2.4. Rotina de renumeração dos graus de liberdade

Para a aplicação da análise matricial, como mencionado na revisão


bibliográfica, é preciso que os pontos extremos dos elementos discretos (barras),
sejam identificados, ou seja, o primeiro passo para uma aplicação matricial é a
identificação dos seus nós. Em uma estrutura espacial cada nó apresentara seis graus
de liberdade, que devem ser identificados através de números. Essa numeração dos
graus de liberdade permite dividir a matriz de rigidez da estrutura, pois possibilita
identificar de forma mais direta a localização dos graus de liberdades restringidos.

No software, para auxiliar a composição da matriz de rigidez e do vetor de


carregamento, foi gerado um vetor para os graus de liberdade de cada barra, onde os
graus de liberdade não restringidos são as variáveis primárias e são identificados com
os primeiros números do vetor, já os restringidos foram nomeados com os últimos
números.

Na entrada de dados é possível que o usuário informe os nós de forma


aleatória, ou seja, não necessariamente respeitando a ordem dos graus de liberdade,
logo, o programa precisa corrigir essa sequência (nível 2 do fluxograma – figura 14),
e para isso foi desenvolvido uma rotina de renumeração dos graus de liberdade, que
funciona através de dois laços que percorrem os nós da estrutura, sendo possível
assim renumerar os graus de liberdade da maneira imposta pela analise matricial.

4.2.5. Montagem das matrizes de rotação dos membros da estrutura

Quando os elementos de uma estrutura estão orientados em direções


diferentes, torna-se necessário realizar as transformações de eixos, como foi visto na
revisão bibliográfica, e para isso foi imprescindível a matriz de rotação R.

Para determinar a matriz de rotação de cada membro da estrutura foi


necessário definir os cossenos diretores, que são os cossenos dos ângulos que o eixo
local forma com o eixo global. A definição dos cossenos diretores e a posterior
montagem da matriz de rotação dos membros da estrutura, foi feito conforme o
esquema de montagem mostrado na figura 16.
49

Figura 16 - Esquema de montagem das matrizes de rotação dos membros da estrutura.


Fonte: os autores.

As etapas para composição da matriz de rotação, apresentada no esquema,


ocorre de maneira individual para cada barra existente na estrutura. Os passos se
iniciam com a entrada de dados, que possibilita o cálculo do comprimento das barras
e também dos catetos para cada eixo (x, y e z). Contendo os catetos e o comprimento
de cada membro da estrutura, é possível calcular agora os cossenos diretores,
conforme apresentado na Fundamentação Teórica, na seção 3.11.2.2, e assim
promover a composição da matriz de rotação (nível 3 do fluxograma– figura 14).

4.2.6. Montagem das matrizes de rigidez local

A matriz de rigidez de um elemento da estrutura expressa as forças na nas


extremidades do componente como função dos deslocamentos, estes elementos
podem ser conectados entre si de maneira a permitir ou não os deslocamentos, de
modo que os esforços seccionais correspondentes a esses deslocamentos fiquem
nulos. É a partir destes vínculos que é definido qual matriz de rigidez local será
50

admitida para cada caso. Existem quatro tipos de matriz de rigidez local, sendo
engaste-engaste, engaste-rótula, rótula-engaste e rótula-rótula.

No software, primeiramente foi utilizada somente a matriz de rigidez de


engaste-engaste (nível 4 do fluxograma – figura 14), para posteriormente, através de
um procedimento automático de liberação dos graus de liberdade, ser gerado a matriz
de rigidez correta para cada caso de vinculo. Logo, na primeira etapa, onde será
definida a matriz de rigidez local, considerando todas as barras como engaste-
engaste, os coeficientes de rigidez serão determinados a partir do comprimento e das
propriedades da barra. Então, a partir do modelo de matriz de rigidez engaste-engate,
determinado na seção 3.11.2.6. da revisão bibliográfica, e da entrada de dados, será
estabelecida a matriz de rigidez engaste-engaste para cada barra. O processo é
ilustrado na figura 17.

Figura 17 - Esquema de montagem da matriz de rigidez local.


Fonte: os autores.

4.2.7. Definição do vetor de cargas nodais

A composição do vetor de cargas nodais é realizada através da sobreposição


dos efeitos das cargas nodais e das ações nodais. As cargas nodais são informadas
pelo usuário na entrada de dados, e compreendem os carregamentos nodais na
estrutura. As ações nodais são geradas devido aos carregamentos distribuídos,
através da transferência deste para as extremidades da barra.

4.2.7.1. Ações nodais


51

Na aplicação da análise matricial, para possibilitar a definição das ações nodais


e assim compor o vetor de cargas, devem ser transferidos os carregamentos atuantes
ao longo da barra para suas extremidades (nível 5 do fluxograma – figura 14). Então,
foi considerada cada barra isoladamente, e através do Método das Forças foi
determinado as reações de apoio de cada barra, considerando primeiramente todos
os componentes como perfeitamente engastados, assim como a barra da figura 18.

Figura 18 - Barra isolada, perfeitamente engastada e com carregamento qualquer.


Fonte: os autores.

Os carregamentos distribuídos e as descontinuidades foram especificados na


entrada de dados, logo, foi necessária uma ferramenta capaz de calcular as reações
de apoio de cada barra isoladamente. Os valores dos carregamentos são orientados
através do sistema de coordenadas locais, então além do programa ter que corrigir as
descontinuidades das barras – por que elas serão consideradas como totalmente
engastadas – será preciso também converter os valores para o sistema de
coordenadas global.

O método das forças foi utilizado para determinar as ações nodais, e com a
intenção de efetivar as integrais que esse método impõe, foi preciso fazer uso da
biblioteca Sympy, que através da ferramenta de cálculo (possibilita a execução de
limites, diferenciais e integrais) foi possível realizar as integrais necessárias para o
emprego do método.

Para estabelecer as reações de apoio de cada barra isoladamente, foi utilizado


os passos apresentados na seção 3.11.1 da revisão bibliográfica. Primeiramente foi
criado a estrutura isostática auxiliar (sistema principal), obtida através da eliminação
de vínculos excedentes, ilustrada na figura 20 (a). Na figura 20(b) foram eliminados
dois vínculos externos (hiperestáticos), a rotação em B (MB) e a translação em B (VB),
e mantido o carregamento distribuído, formando o caso básico zero. Depois para
determinar os valores de MB e VB foi gerado mais dois casos básicos (b) e (c), que
isolaram os efeitos dos hiperestáticos. Dessa forma, geramos carregamentos distintos
52

sobre uma mesma geometria simplificada e isostática, que somados novamente


determinaram as reações superabundantes.

Figura 19 - (a) Estrutura Isostática Auxiliar. (b)(c)(d) Casos básicos.


Fonte: os autores.

Através desta divisão da estrutura, foi estabelecido equações de momentos


fletores para os três casos. Usufruindo do método da força unitária, e considerando
apenas os efeitos dos momentos fletores, foi possível definir os deslocamentos do
caso zero e os coeficiente de flexibilidade dos casos um e dois.

𝑀𝑖 ∗ 𝑀𝑗
𝑓𝑖𝑗 = δ𝑖𝑗 = ∫ 𝑑𝑥 (43)
𝐸𝐼

Dispondo das reações superabundantes as outras reações podem ser


determinadas através das equações de equilíbrio. O esquema seguido pelo código
para o cálculo das reações de apoio superabundantes, seguiu o esquema
demonstrado pela figura 20.

Os carregamentos axiais foram determinados isoladamente, pois o


carregamento axial distribuído não interfere nas reações de apoio verticais e de
momentos. Logo, com a intenção de compor os casos básicos, foi considerado a
reação NB como superabundante. E paralelamente com a determinação dos demais
casos foi determinado NB através da equação 8, e NA foi definido através das
equações de equilíbrio. Para definir os deslocamentos do caso zero e o coeficiente de
flexibilidade do caso um, foi utilizada a equação 44.

𝑁𝑖 ∗ 𝑁𝑗
𝑓𝑖𝑗 = δ𝑖𝑗 = ∫ 𝑑𝑥 (44)
𝐸𝐴
53

Os carregamentos distribuídos e as descontinuidades foram especificados na


entrada de dados, logo, o código é capaz de definir a equação adequada para cada
caso, e com isso calcular as reações de apoio. Os valores do carregamento nas
extremidades para os elementos são calculados no sistema de coordenadas local,
então, antes de ser adicionado ao vetor de cargas nodais é feito a sua conversão para
o sistema global. No código essa conversão e a posterior alimentação do vetor de
cargas com os valores das ações nodais, são realizados após a adição dos efeitos da
descontinuidade.

Figura 20 - Esquema de composição do vetor de ações nodais.


Fonte: os autores.

4.2.7.2. Forças nodais

Na entrada de dados foi informado as cargas nodais, e a partir da renumeração


dos graus de liberdade, foi composto a lista de graus de liberdade, com isso foi
possível compor o vetor com as cargas nodais na posição dos graus de liberdade
(nível 10 do fluxograma – figura 14).

4.2.8. Descontinuidades (Axial, Cisalhante e rotação)

A ferramenta empregada para admitir o efeito das descontinuidades (nível 6 do


fluxograma – figura 14) é a alteração das matrizes locais e do vetor de cargas,
anulando-se a rigidez na direção do grau de liberdade em que se encontra a
54

descontinuidade, e também anulando a força que iria surgir nessa direção, devido aos
deslocamentos (SORIANO, 2005).

4.2.9. Montagem da matriz de rigidez global

A matriz de rigidez global é obtida através do espalhamento da matriz de rigidez


local na global (nível 8 do fluxograma – figura 14), esse espalhamento é o
posicionamento dos coeficientes de rigidez na matriz de rigidez global, a partir dos
respectivos graus de liberdade.

4.2.10. Vetor de Deslocamentos

Na entrada de dados é informado os deslocamentos que ocorrem nos nós da


estrutura, através destes deslocamentos e da lista de graus de liberdade é definido o
vetor de deslocamentos das estruturas (nível 11 do fluxograma – figura 14).
Primeiramente no código é formado um vetor vazio com um número de linhas igual ao
número de graus de liberdade. Em seguida, o código posiciona os deslocamentos
prescritos (se houver).

4.2.11. Deslocamentos desconhecidos e reações de apoio

Como mencionado na seção 3.11.2.8. da revisão bibliográfica, montando um


sistema de equações com o vetor de carga global, a matriz de rigidez global e o vetor
de deslocamentos, com a numeração adequada dos graus de liberdade, é possível
fazer um recorte no sistema de equações (nível 12 e 13 do fluxograma – figura 14),
de forma a calcular os deslocamentos dos graus de liberdades livres e as reações de
apoio (nível 14 e 15 do fluxograma – figura 14).

4.2.12. Notação do programa

Para facilitar o entendimento do programa pelo usuário, foi desenvolvido uma


interface que busca idealizar a estrutura da uma forma mais simples, representando
55

as características da estrutura em estudo, para uma melhor visualização. A primeira


plotagem que o programa permite é a dos nós da estrutura, que pode ser identificado
por números na cor vermelha, e se o usuário preferir pode desabilitar a identificação
dos pontos. Depois ao informar os componentes da estrutura, pode-se visualiza-los e
identifica-los (números de cor azul).

Para representar as restrições dos nós, ao se clicar no botão plotar elas serão
representadas nos respectivos nós. O programa representa as restrições de
translação como linhas, e as rotações como círculos. A cor verde está relacionada
com o eixo x, vermelho com o y e azul com z. Depois de especificado as liberações
nas extremidades das barras, ao se clicar no botão plotar elas serão representadas
nas respectivas extremidades das barras. O programa permite a liberação somente
de rotação, onde os três primeiros campos se referem as rotações no início da barra,
e os últimos ao ponto final da barra. O programa representa a liberação como anel. A
cor verde está relacionada com o eixo x, vermelho com o y e azul com z. A figura 21
representa um exemplo de plotagem no CERBERUS, sem os carregamentos.

Figura 21 - Exemplo de plotagem no CERBERUS, sem carregamentos.


Fonte: os autores

Para representar os carregamentos nodais a convenção adotada pelo


programa está representado na figura 22. Depois de especificado os carregamentos
nodais, ao se clicar no botão plotar eles serão representados, onde os carregamentos
56

de forças estão representados na cor magenta, e os carregamentos de momentos


estão representados na cor ciano.

Figura 22 - Convenção carregamentos nodais.


Fonte: os autores

A entrada de carregamentos distribuídos é feita seguindo o eixo de coordenadas,


onde cada barra poderá conter carregamentos no plano xy, xz e axial. Os
carregamentos podem ser indicados através da intercidade nas duas extremidades
da barra (carregamento linear) ou através de uma função (carregamento qualquer).
Para dar entrada em um carregamento em forma de função, o usuário devera
selecionar o campo f(x) e indicar a carregamento, respeitando as indicações de
operações (x(*), ^(**), +(+) e –(-)). Os carregamentos distribuídos são orientados
através do eixo de coordenada local. Ao se clicar no botão plotar os carregamentos
distribuídos serão representados. Os deslocamentos prescritos são representados
todos pela cor preta, respeitando a convenção representada pela figura 23.

Figura 23 - Convenção deslocamentos prescritos.


Fonte: os autores

Após finalizar a entrada de dados da estrutura ela poderá ser calculada,


clicando no botão calcular. Ao clicar no botão, poderá ser visualizado as reações de
apoio na estrutura e executar a visualização de diagramas. Depois disto pode-se
visualizar os diagramas de esforços cortantes (plano xy e xz), o diagrama de axial, os
diagramas de momentos e a deformada da estrutura.
57

Depois de calculada a estrutura, pode-se gerar o relatório, onde é apresentado


os resultados dos esforços solicitantes e dos deslocamentos da estrutura em estudo,
além de detalhar o procedimento de cálculo. O relatório em PDF apresenta a entrada
de dados em forma de tabelas, seguido de determinações das propriedades
geométricas das seções transversais e a identificação dos graus de liberdade da
estrutura. Em seguida, para cada barra é apresentado o cálculo do comprimento, dos
cossenos diretores, montagem da matriz de rotação, matriz de rigidez elementar,
determinação das cargas nodais devido carregamento distribuído e o cálculo das
equações de esforços internos e deslocamentos. Como as matrizes utilizadas pelo
método são extensas, todas são apresentadas em um arquivo TXT. Um exemplo de
relatório será apresentado no anexo B.

Para possibilitar a compreensão de todas as notações adotadas pelo


CERBERUS é possível gerar o manual do usuário, que detalha todo o procedimento
de entrada de dados, e será apresentado no anexo A.

5. VALIDAÇÃO DO SOFTWARE

Neste capítulo, apresentam-se os resultados obtidos pela análise de estruturas


reticuladas. Estão apresentados também os resultados, para as mesmas estruturas,
resolvidas pelo SAP 2000 com o objetivo de validar o CERBERUS.

5.1. PÓRTICOS RETICULADOS PLANOS

5.1.1. Pórtico com barras inclinadas e carregamentos distribuídos

Para validar o pórtico apresentado na figura 24, foram determinadas reações


de apoio e deslocamentos, pelo CERBERUS e pelo Ftool, seguindo as numerações
de nós apresentados na figura 24. O pórtico apresenta quatro nós e três barras, sendo
duas inclinadas, e as forças externas atuantes são distribuídas em todas as barras.
Os nós 1 e 4 são vinculados externamente através de engastes. Através desse
exemplo foi possível validar a matriz de rotação, carregamento distribuído em barras
inclinadas e carregamento distribuído axial.
58

Figura 24 - Pórtico com barras inclinadas e carregamentos distribuídos


Fonte: os autores

Para a estrutura, foram estabelecidas as propriedades dos materiais (Módulo


de Elasticidade e Coeficiente de Poisson), e as propriedades geométricas da barra
(Área da seção, Momento de Inercia no Eixo x, Momento de Inercia no Eixo y e
Momento de Inércia no Eixo z) seguintes:

 𝐸 = 250 GPa
 𝜈 = 0,2
 𝐴 = 600 𝑐𝑚
 𝐼𝑥 = 34386 𝑐𝑚4
 𝐼𝑦 = 80000 𝑐𝑚4
 𝐼𝑧 = 11250 𝑐𝑚4

Os resultados obtidos pelo CERBERUS e pelo SAP 2000 estão representados


nas tabelas 1 e 2, relativas as reações de apoio, e nas tabelas 3 e 4, relativas aos
deslocamentos dos nós não restringidos.

REAÇÕES DE APOIO
F1 (kN) (Eixo x) F2 (kN) (Eixo z) M1 (kN.m) (Eixo y)
NÓ FTOOL CERBERUS ERRO FTOOL CERBERUS ERRO FTOOL CERBERUS ERRO
1 - 6,900 -6,900 0% 105,100 105.100 0% 145,60 145,60 0%
2 - - - - - - - - -
3 - - - - - - - - -
4 -23,100 -23,100 0% 4,900 4,900 0% - - -
Tabela 1 - Resultados de reações de apoio - Exemplo 2D
Fonte: os autores
58

DESLOCAMENTOS
D1 (kN) (Eixo x) D2 (kN) (Eixo Z) ϴ1 (rad) (Eixo y)
NÓ SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO
1 - - - - - - - - -
2 0,0122 0,0122 0% -0,0156 -0,0156 0% 0,0036 0,0036 0%
3 0,0119 0,0119 0% 0,0146 0,0146 0% 0,0043 0,0043 0%
4 - - - - - - - - -
Tabela 2 - Resultados de deslocamentos - Exemplo 2D
Fonte: os autores.

5.2. PÓRTICOS RETICULADOS ESPACIAIS

5.2.1. Pórtico com barras inclinadas e carregamento nodal em z

Para validar o pórtico apresentado na figura 25, foram determinadas reações


de apoio e deslocamentos, pelo CERBERUS e pelo SAP 2000, seguindo as
numerações de barras e nós apresentados na figura 25. O pórtico apresenta quatro
nós e três barras, sendo duas inclinadas, e a força externa atuante é pontual incidindo
no nó 2, com intensidade de 200 kN, na direção de z negativo. Os nós 1, 3 e 4 são
vinculados externamente através de engastes. Através desse exemplo foi possível
validar a matriz de rotação e carregamentos nodais para pórticos reticulados
espaciais.
60

Figura 25 - Pórtico com barras inclinadas e carregamento nodal.


Fonte: os autores.

Para a estrutura, foram estabelecidas as propriedades dos materiais (Módulo


de Elasticidade e Coeficiente de Poisson), e as propriedades geométricas da barra
(Área da seção, Momento de Inercia no Eixo x, Momento de Inercia no Eixo y e
Momento de Inércia no Eixo z) seguintes:

 𝐸 = 200 GPa
 𝜈 = 0,2
 𝐴 = 600 𝑐𝑚
 𝐼𝑥 = 34386 𝑐𝑚4
 𝐼𝑦 = 80000 𝑐𝑚4
 𝐼𝑧 = 11250 𝑐𝑚4

Os resultados obtidos pelo CERBERUS e pelo SAP 2000 estão representados


nas tabelas 3 e 4, relativas as reações de apoio, e nas tabelas 5 e 6, relativas aos
deslocamentos dos nós não restringidos.

FORÇAS
F1 (kN) (Eixo x) F2 (kN) (Eixo y) F3 (kN) (Eixo z)
NÓ SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO
1 0,046 0,046 0% 0,048 0,048 0% 0,211 0,211 0%
61

2 - - - - - - - - -
3 -0,046 -0,046 0% 0,048 0,048 0% 0,211 0,211 0%
4 0,000 0,000 0% -0,097 -0,097 0% 199,577 199,577 0%
Tabela 3 - Resultados de reações de apoio (forças) – exemplo 01.
Fonte: os autores.

MOMENTOS
M1 (kN.m) (Eixo x) M2 (kN.m) (Eixo y) M3 (kN.m) (Eixo z)
NÓ SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO
1 0,704 0,704 0% -0,449 -0,449 0% -0,015 -0,015 0%
2 - - - - - - - - -
3 0,704 0,704 0% 0,449 0,449 0% 0,015 0,015 0%
4 0,283 0,283 0% 0,000 0,000 0% 0,000 0,000 0%
Tabela 4 - Resultados de reações de apoio (momentos) - exemplo 01
Fonte: os autores.

DESLOCAMENTOS
D1 (kN) (Eixo x) D2 (kN) (Eixo y) D3 (kN) (Eixo z)
NÓ SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO
1 - - - - - - - - -
2 0,000 0,000 0% 0,000 0,000 0% 0,000 0,000 0%
3 - - - - - - - - -
4 - - - - - - - - -
Tabela 5 - Resultados de deslocamentos - exemplo 01
Fonte: os autores.

ROTAÇÕES
ϴ1 (rad) (Eixo x) ϴ2 (rad) (Eixo y) ϴ3 (rad) (Eixo z)
NÓ SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO
1 - - - - - - - - -
2 0,000 0,000 0% 0,000 0,000 0% 0,000 0,000 0%
3 - - - - - - - - -
4 - - - - - - - - -
Tabela 6 - Resultados de rotações - exemplo 01
Fonte: os autores.

Para validar os diagramas do software, a seguir será apresentada as deformadas


para o exemplo gerado pelo CERBERUS e pelo SAP2000.
62

Figura 26 - Comparação da deformada - exemplo 1


Fonte: os autores

5.2.2. Pórtico com barras inclinadas e carregamento distribuído no plano xy local

Para validar o pórtico apresentado na figura 27, foram determinadas reações


de apoio e deslocamentos, pelo CERBERUS e pelo SAP 2000, seguindo as
numerações de barras e nós apresentados na figura 27. O pórtico apresenta cinco
nós e quatro barras, sendo duas inclinadas, e um carregamento distribuído carregado
no plano xy, com intensidade de 30 Kn/m. Os nós 1 e 2 são vinculados externamente
liberando as rotações e o nó 5 é perfeitamente engastado. Através desse exemplo foi
possível validar o carregamento distribuído no plano xy local.
62

Figura 27 - Pórtico com barras inclinadas e carregamento no plano xy.


Fonte: os autores.

Para a estrutura foram estabelecidas as propriedades dos materiais (Módulo


de Elasticidade e Coeficiente de Poisson), e as propriedades geométricas da barra
(Área da seção, Momento de Inercia no Eixo x, Momento de Inercia no Eixo y e
Momento de Inercia no Eixo z) seguintes:

 𝐸 = 200 GPa
 𝜈 = 0,2
 𝐴 = 600 𝑐𝑚
 𝐼𝑥 = 34386 𝑐𝑚4
 𝐼𝑦 = 80000 𝑐𝑚4
 𝐼𝑧 = 11250 𝑐𝑚4

Os resultados obtidos pelo CERBERUS e pelo SAP 2000 estão representados


nas tabelas 7 e 8, relativas as reações de apoio, e nas tabelas 9 e 10, relativas aos
deslocamentos dos nós não restringidos.

FORÇAS
F1 (kN) (Eixo x) F2 (kN) (Eixo y) F3 (kN) (Eixo z)
NÓ SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO
1 88,159 88,159 0% 53,268 53,268 0% 58,831 58,831 0%
2 -88,159 -88,159 0% 53,268 53,268 0% -58,831 -58,831 0%
3 - - - - - - - - -
4 - - - - - - - - -
5 0,000 0,000 0% 43,464 43,464 0% 0,000 0,000 0%
Tabela 7 - Resultados de reações de apoio (forças) - exemplo 02
Fonte: os autores.
64

MOMENTOS
M1 (kN.m) (Eixo x) M2 (kN.m) (Eixo y) M3 (kN.m) (Eixo z)
NÓ SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO
1 - - - - - - - - -
2 - - - - - - - - -
3 - - - - - - - - -
4 - - - - - - - - -
5 -97,013 -97,013 0% 0,000 0,000 0% -75,516 -75,516 0%
Tabela 8 - Resultados de reações de apoio (momentos) - exemplo 02
Fonte: os autores.

DESLOCAMENTOS
D1 (kN) (Eixo x) D2 (kN) (Eixo y) D3 (kN) (Eixo z)
NÓ SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO
1 - - - - - - - - -
2 - - - - - - - - -
3 0,000 0,000 0% -0,001 -0,001 0% 0,000 0,000 0%
4 0,000 0,000 0% -0,240 -0,240 0% 0,000 0,000 0%
5 - - - - - - - - -
Tabela 9 - Resultados de deslocamentos - exemplo 02
Fonte: os autores

ROTAÇÕES
ϴ1 (rad) (Eixo x) ϴ2 (rad) (Eixo y) ϴ3 (rad) (Eixo z)
NÓ SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO
1 -0,033 -0,033 0% -0,026 -0,026 0% -0,005 -0,005 0%
2 -0,033 -0,033 0% 0,026 0,026 0% 0,005 0,005 0%
3 -0,003 -0,003 0% 0,000 0,000 0% -0,062 -0,062 0%
4 0,056 0,056 0% 0,000 0,000 0% 0,024 0,024 0%
5 - - - - - - - - -
Tabela 10 - Resultados de rotações - exemplo 02
Fonte: os autores

Para validar os esforços internos, a seguir será apresentada as deformadas para


o exemplo gerado pelo CERBERUS e pelo SAP2000.
65

Figura 28 - Comparação da deformada - exemplo 2


Fonte: os autores

5.2.3. Pórtico com barras inclinadas, carregamentos distribuídos no eixo xz e


liberações de continuidades

Para validar o pórtico apresentado na figura 29, foram determinadas reações


de apoio e deslocamentos, pelo CERBERUS e pelo SAP 2000, seguindo as
numerações de barras e nós apresentados na figura 29. O pórtico apresenta oito nós
e oito barras, sendo duas inclinadas, e a força externa atuante é uniformemente
distribuída na barra 2 e 5, com intensidade de 30 kN/m, no eixo xz local e na barra 1
uma força distribuída de 10 kN/m no eixo xz local. Os nós 1, 4, 5 e 8 são vinculados
externamente através de engastes, e as barras 2 e 5 apresentam liberações de
momentos em torno de y. Através desse exemplo foi possível validar a liberação nas
extremidades das barras e carregamento distribuído em uma barra inclinada.
66

Figura 29 - Pórtico com barras inclinadas e carregamentos pontuais.


Fonte: os autores.

Para a estrutura foram estabelecidas as propriedades dos materiais (Módulo


de Elasticidade e Coeficiente de Poisson), e as propriedades geométricas da barra
(Área da seção, Momento de Inercia no Eixo x, Momento de Inercia no Eixo y e
Momento de Inercia no Eixo z) seguintes:

 𝐸 = 200 GPa
 𝜈 = 0,2
 𝐴 = 600 𝑐𝑚
 𝐼𝑥 = 34386 𝑐𝑚4
 𝐼𝑦 = 80000 𝑐𝑚4
 𝐼𝑧 = 11250 𝑐𝑚4

Os resultados obtidos pelo CERBERUS e pelo SAP 2000 estão representados


nas tabelas 11 e 12, relativas as reações de apoio, e nas tabelas 13 e 14, relativas
aos deslocamentos dos nós não restringidos.

FORÇAS
F1 (kN) (Eixo x) F2 (kN) (Eixo y) F3 (kN) (Eixo z)
NÓ SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO
1 39,087 39,087 0% 0,419 0,419 0% 98,859 98,859 0%
2 - - - - - - - - -
3 - - - - - - - - -
4 -66,930 -66,930 0% -0,419 -0,419 0% 60,483 60,483 0%
5 49,966 49,808 0,3% 0,419 0,419 0% 61,141 61,141 0%
67

6 - - - - - - - - -
7 - - - - - - - - -
8 -51,966 -51,966 0% -0,409 -0,409 0% 59,517 59,517 0%
Tabela 11 - Resultados de reações de apoio (forças) - exemplo 03
Fonte: os autores.

MOMENTOS
M1 (kN.m) (Eixo x) M2 (kN.m) (Eixo y) M3 (kN.m) (Eixo z)
NÓ SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO
1 -1,914 -1,914 0% -151,908 -151,908 0% 0,157 0,157 0%
2 - - - - - - - - -
3 - - - - - - - - -
4 0,597 0,597 0% -198,413 -198,413 0% -1,124 -1,124 0%
5 -1,914 -1,914 0% -96,405 -96,405 0% 0,157 0,157 0%
6 - - - - - - - - -
7 - - - - - - - - -
8 0,597 0,597 0% -158,27 -158,27 0% -1,124 -1,124 0%
Tabela 12 - Resultados de reações de apoio (momentos) - exemplo 03
Fonte: os autores.

DESLOCAMENTOS
D1 (kN) (Eixo x) D2 (kN) (Eixo y) D3 (kN) (Eixo z)
NÓ SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO
1 - - - - - - - - -
2 0,037 0,037 0% -0,003 -0,003 0% -0,050 -0,050 0%
3 0,037 0,037 0% 0,000 0,000 0% 0,000 0,000 0%
4 - - - - - - - - -
5 - - - - - - - - -
6 0,030 0,030 0% -0,003 -0,003 0% -0,040 -0,040 0%
7 0,030 0,030 0% 0,000 0,000 0% 0,000 0,000 0%
8 - - - - - - - - -
Tabela 13 - Resultados de deslocamentos - exemplo 03
Fonte: os autores.

ROTAÇÕES
ϴ1 (rad) (Eixo x) ϴ2 (rad) (Eixo y) ϴ3 (rad) (Eixo z)
NÓ SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO SAP2000 CERBERUS ERRO
1 - - - - - - - - -
2 0,002 0,002 0% 0,017 0,017 0% 0,001 0,001 0%
3 0,000 0,000 0% 0,018 0,018 0% 0,001 0,001 0%
4 - - - - - - - - -
68

5 - - - - - - - - -
6 0,002 0,002 0% 0,015 0,015 0% 0,001 0,001 0%
7 0,000 0,000 0% 0,015 0,015 0% 0,001 0,001 0%
8 - - - - - - - - -
Tabela 14 - Resultados de rotações - exemplo 03
Fonte: os autores.

Para validar os esforços internos, a seguir será apresentada as deformadas para


o exemplo gerado pelo CERBERUS e pelo SAP2000.

Figura 30 - Comparação da deformada - exemplo 3


Fonte: os autores
69

6. CONCLUSÃO

Devido existência de vários métodos de análise estrutural, a adoção do método


dos deslocamentos, possibilitou a concepção de uma ferramenta capaz de idealizar o
comportamento de um sistema estrutural reticulado espacial e suas condições de
equilíbrio interno e externo. O método das forças se mostrou eficiente para determinar
as ações nodais, possibilitando a transferência de qualquer tipo de função de
carregamento atuante para as extremidades da barra. Para tanto, o emprego da
linguagem Python foi indispensável para prover os recursos necessários para a
execução do software, por meio de bibliotecas com ferramentas de cálculo
possibilitando a execução de limites, diferenciais e integrais, além de também
proporcionar simplicidade e eficiência.

Para garantir maior confiabilidade no CERBERUS, foram realizados quatro


exemplos, de maneira a validar todas as características de estruturas reticuladas
espaciais que o software contempla. As diferenças nos resultados dos exemplos
comparados com o SAP2000 são quase nulos e se devem a diferença dos métodos
utilizados para cálculo, já que o SAP se baseia no método dos elementos finitos. Já
no caso dos exemplos comparados com o Ftool, não há diferença entre os resultados,
já que tanto o CERBERUS quanto o Ftool utilizam o método da rigidez em seus
cálculos. Diante destes resultados pode-se garantir a aplicabilidade e a confiabilidade
do software CERBERUS.
70

REFERÊNCIAS BIBLIOGRÁFICAS

ALEBIADES V., Teoria das estruturas, ED. UFMG, 1986.

ALIO K., Informática aplicada em estruturas de concreto armado – Cálculo de


edifícios com o uso de sistemas computacionais. Ed. PINI, 2015.

ALMEIDA, M. C. F., Estruturas Isostáticas, Oficina de Textos, 2011.

BEER; PIERRE, F., Resistencia dos materiais. McGraw-Hill Ltda 1992.

BORGES, L. E., Python para Desenvolvedores. 2ª Ed. Rio de Janeiro: Edição do


autor, 2010.

DOWNEY, A., Think Python: How to Think Like a Computer Scientist. Massachusetts:
Green Tea Press, 2012.

DRUMONT, F. P.; SILVA, A. R., Desenvolvimento de um software para análise


estrutural de sistemas reticulados espaciais usando o método dos
deslocamentos. Disponível em <
https://www4.uninove.br/ojs/index.php/exacta/article/viewFile/3927/2389 >

GERE, J. M.; WEAVER, W. J., Análise de estruturas reticuladas. Rio de Janeiro:


Editora Guanabara, 1987.

HIBBELER, R. C., Análise das estruturas. Tradutor: Jorge Ritter. Revisor Técnico:
Pedro Viana.8ª Ed. São Paulo: Person Education do Brasil, 2013.

JESUS, R. T., Proposição de ferramenta computacional para análise e


tratamento de estruturas planas e espaciais constituídas por barras retas –
desenvolvimento e aplicação. São Leopoldo: 2014.

KASSIMALI, A., Análise estrutural. 1ª. São Paulo: Cengage Learning, 2016.

LEET, K. M.; UANG, C. M., Fundamentos da anlise estrutural. São Paulo: Editora
McGraw Ltda 2009

MARGARIDO, F. A., Fundamentos de estruturas – um programa para arquitetos


e engenheiras que se iniciam no estudo das estruturas. 2ª Ed. Rio de Janeiro:
Editora Ciência Moderna Ltda. 2010.

MARTHA, L. F., Análise de estruturas: Conceitos e Métodos Básicos. 1a Ed. Rio de


Janeiro: Elsevier, 2010.
71

MCCORMAC, J. C., Análise estrutural: Usando métodos clássicos e métodos


matriciais. 4ª Ed. São Paulo: Gen, 2009.

MENEZES, N. N. C., Introdução à programação com Python. São Paulo: Novatec


Editora, 2014.

PAIZ, A. F. M.; VENZELLA, D.; GOMES, L. J. P., Criação de código computacional


para cálculo didático de estruturas reticuladas planas via método dos
deslocamentos em formulação matricial. Disponível em <
remin.com/aulas/tcc/2017-Alysson_Diogo_Lucas-texto.pdf

SOARES, S. M. B., Análise matricial de estruturas de barras pelo método da


rigidez. Disponível em: <http://www.feng.pucrs.br/professores/soares>. Acesso em
15 de março 2018.

SORIANO, H. L., Análise de estruturas – formulação matricial e implementação


computacional. 1a Ed. Rio de Janeiro: Editora Ciência Moderna Ltda. 2005.

SORIANO, H.L. e Lima, Análise de Estruturas em Computadores: Estruturas


Reticuladas, Vol. I, 2a ed., Cadernos Didáticos UFRJ, Rio de Janeiro, RJ.

SÜSSEKIND, J. C. Curso de análise estrutural. Rio de Janeiro: Globo, 1981. v.1:


Estruturas Isostáticas, v. 2: Deformações em estruturas, Método das Forças.

TIMOSHENKO, S.; GERE, J. M. Mecânica dos sólidos. v. 1. Rio de Janeiro: LTC,


72

ANEXO A - MANUAL DO USUÁRIO

CERBERUS: CALCULO ESTRUTURAL DE PORTICOS RETICULADOS


ESPACIAIS

Este documento tem como objetivo apresentar a sequência de passos para o


uso correto do software CERBERUS, que foi desenvolvido como trabalho de
conclusão de curso, no ano de 2018, na Universidade Positivo. E

1. CONVENÇÃO DE SINAIS

É imprescindível adotar uma convenção de sinais para orientar as forças e os


deslocamentos, gerando assim resultados claros e facilitando o entendimento e a
comunicação entre os engenheiros. A convenção adotada pelo programa está
ilustrada a seguir:

A convenção para esforções internos está associada ao sistema de eixos locais


das barras. Para isso, toma-se a barra, orientada em seu eixo de coordenadas locais
e analisa-se onde se encontra a posição da fibra inferior da barra, que estará situada
na parte de baixo da barra se o sistema analisado for o destrógeno, definido pela
locação dos nós da barra e sua incidência. Quando o ponto inicial da barra se situar a
esquerda do ponto final tem-se um sistema destrógeno, caso contrário, será um
sistema levógeno, neste caso a fibra inferior da barra estará situada na sua parte
superior.
73

2. ENTRADA DE DADOS

Para efetuar a entrada de dados no CERBERUS é necessária conhecer o seu


eixo de coordenadas global, que é ilustrado pela figura abaixo.

Para facilitar o entendimento, toma-se como exemplo o pórtico abaixo, que


servira como exemplo para efetuarmos a entrada de dados no software.

2.1. PROPRIEDADES DAS BARRAS

As propriedades das barras são de suma importância para determinar a rigidez


e as deformações que ocorrem nas barras. Logo, deverão ser informados polo usuário
através dos botões de materiais e de seções.
74

2.1.1. Propriedades dos materiais

Ao clicar no botão de materiais o usuário poderá especificar o material que será


utilizado na estrutura em estudo. O programa apresenta alguns materiais pré-
definidos, mas o usuário pode modificar os campos editáveis. O software permite que
mais de um material seja selecionado.

2.1.2. Propriedades geométricas

Ao clicar no botão de Seção Transversais o usuário poderá informar os perfis


que serão utilizados na estrutura em estudo. Para possibilitar a utilização de qualquer
tipo de seção, e evitar simplificações indesejáveis pelo usuário, a entrada de dados
referente as seções é feita através dos valores de áreas e de momentos de inercia.
Abaixo serão indicados algumas formulas para determinação dessas propriedades.
75
76

A janela para informar as seções da estrutura estudada, diferente da janela de


materiais, não apresenta valores pré-definidos. O software permite que mais de uma
seção seja selecionada.
77

2.2. NÓS DA ESTRUTURA

Para informar os nós o usuário tem que orientar através do seu eixo de
coordenadas global. As coordenadas devem ser expressas em m (metros), e em caso
de números não inteiros, separar os algarismos utilizando ponto.
78

Ao listar as coordenadas, para visualizar o usuário poderá selecionar o botão

plotar, e se orientar através das marcações dos nós.

2.3. INCIDENCIAS DAS BARRAS

Neste campo serão informados o início e o fim das barras e suas respectivas
propriedades que foram previamente selecionadas nas janelas especificas.
79

Ao listar as incidências das barras, para visualizar o usuário poderá selecionar


o botão plotar e visualizar as barras.

2.4. RESTRIÇÃO DOS NÓS

Este campo se refere aos vínculos dos nós com meio exterior (apoios), onde
ao selecionar um campo o programa irá considerar que o deslocamento na direção
indicada está restringido.
80

Depois de especificado as restrições dos nós, ao se clicar no botão plotar elas


serão representadas nos respectivos nós. O programa representa as restrições de

translação como linhas, e as rotações como círculos. A cor verde está relacionada
com o eixo x, vermelho com o y e azul com z.

2.5. LIBERAÇÃO NAS EXTREMIDADES DAS BARRAS

Este campo se refere a vinculação entre as barras, onde ao selecionar o


programa irá considerar que o deslocamento na direção indicada esta livre.
81

Depois de especificado as liberações nas extremidades das barras, ao se clicar


no botão plotar elas serão representadas nas respectivas extremidades das barras. O
programa permite a liberação somente de rotação, onde os três primeiros campos se

referem as rotações no início da barra, e os últimos ao ponto final da barra. O


programa representa a liberação como anel. A cor verde está relacionada com o eixo
x, vermelho com o y e azul com z.

2.6. CARREGAMENTOS NODAIS

A entrada de carregamentos nodais é feita segundo o eixo de coordenada,


onde cada nó poderá conter seis carregamentos nodais, como indicado nas figuras
abaixo.
82

Depois de especificado os carregamentos nodais, ao se clicar no botão plotar


eles serão representados, onde os carregamentos de forças estão representados na
cor magenta, e os carregamentos de momentos estão representados na cor ciano.

2.7. CARREGAMENTOS DISTRIBUIDOS

A entrada de carregamentos distribuídos é feita seguindo o eixo de


coordenadas, onde cada barra poderá conter carregamentos no plano xy, xz e axial.
Os carregamentos podem ser indicados através da intercidade nas duas extremidades
da barra (carregamento linear) ou através de uma função (carregamento qualquer).
Para dar entrada em um carregamento em forma de função, o usuário devera
selecionar o campo f(x) e indicar a carregamento, respeitando as indicações de
operações (x(*), ^(**), +(+) e –(-)).
83

Os carregamentos distribuídos são orientados através do eixo de coordenada


local. Ao se clicar no botão plotar os carregamentos distribuídos serão representados.

2.8. DESLOCAMENTOS PRESCRITOS

A entrada de deslocamentos prescritos é feita seguindo o eixo de coordenadas,


onde em cada nó poderá conter 6 tipos de deslocamentos, como indicado nas figuras
abaixo.
84

Depois de especificado os deslocamentos prescritos, ao se clicar no botão


plotar eles serão representados, todos representados pela cor preta.
85

3. BOTÃO CALCULAR

Após finalizar a entrada de dados da estrutura ela poderá ser calculada,


clicando no botão calcular. Ao clicar no botão, poderá ser visualizado as reações de
apoio na estrutura e executar a visualização de diagramas.

4. GERAR DIAGRAMAS

Ao lodo do menu opção, existe a o menu gerar diagramas, que possui a função
de visualizar os diagramas de esforços cortantes (plano xy e xz), o diagrama de axial,
os diagramas de momentos e a deformada da estrutura.
86

Essas opções só podem ser selecionadas após o cálculo da estrutura. E ao


selecionar essas opções poderá ser visualizado os diagramas.

5. GERAR RELATÓRIO

Ao lodo da opção arquivo, existe o menu opção, dentro desse menu pode-se
gerar o relatório, onde é apresentado os resultados dos esforços solicitantes e dos

deslocamentos da estrutura em estudo, além de detalhar o procedimento de cálculo.


O relatório em PDF apresenta a entrada de dados em forma de tabelas, seguido de
determinações das propriedades geométricas das seções transversais e a
identificação dos graus de liberdade da estrutura. Em seguida, para cada barra é
apresentado o cálculo do comprimento, dos cossenos diretores, montagem da matriz
de rotação, matriz de rigidez elementar, determinação das cargas nodais devido
carregamento distribuído e o cálculo das equações de esforços internos e
deslocamentos. Como as matrizes utilizadas pelo método são extensas, todas são
apresentadas em um arquivo TXT.
87

ANEXO B - RELATÓRIO DE CÁLCULO CERBERUS: CÁLCULO DE


ESTRUTURAS ESPACIAIS RETICULADAS

Este relatório apresenta os resultados dos cálculos estruturais obtidos em relação a


estrutura acima ilustrada. O presente relatório também contempla o passo a passo
dos cálculos desenvolvidos, baseados no Método da Rigidez em formulação matricial,
em conjunto com o Método das Forças.
88

1 - ENTRADA DE DADOS

Os dados abaixo foram informados pelo usuário e encontram-se com as mesmas


unidades de medida solicitadas pela interface do programa.

1.1 - PROPRIEDADES DOS MATERIAIS QUE COMPÕEM A ESTRUTURA

1.2 - PROPRIEDADES DAS SEÇÕES TRANSVERSAIS QUE COMPÕEM A


ESTRUTURA

A cada barra foi necessário atribuir uma seção transversal e um material que a
compõe, dados necessários ao cálculo da matriz de rigidez da estrutura, vetor de
forças e equações de deslocamento/rotação.

1.3- NÓS E RESTRIÇÕES

Cada nó conta com 6 graus de liberdade, possíveis de serem restringidos ou não.


Consta aqui cada restrição de deslocamento informada pelo usuário em sua
respectiva direção, caracterizada pela palavra "Sim".

1.4 - INCIDÊNCIAS, VÍNCULOS E PROPRIEDADES DAS BARRAS

As incidências das barras são caracterizadas pelo nó em que elas se iniciam e pelo
89

nó em que elas terminam, o que ajuda a ordenar posteriormente os graus de liberdade


da estrutura. Além disso, consta aqui a vinculação referente a cada possibilidade de
giro da barra, indicada como "Engastada" ou "Rotulada".

1.5- ENTRADA DE DADOS DOS CARREGAMENTOS DISTRIBUÍDOS

Os carregamentos distribuídos são dispostos no eixo local da barra.

1.6 - CARGAS NODAIS

Os carregamentos nodais são dispostos no eixo global da estrutura.

2 - IDENTIFICAÇÃO DOS GRAUS DE LIBERDADE

Conforme a ordem dos nós informados e as suas restrições, é possível identificar os


graus de liberdade da estrutura, numerando primeiro os graus que estão livre e
posteriormente os restringidos.
90

3 - CONVERSÃO DE UNIDADES DAS PROPRIEDADES DOS MATERIAIS E


DAS SEÇÕES TRANSVERSAIS

O programa realiza os cálculos utilizando as unidades de força em kN/m 2 e as de


comprimento em m/m2, para isso basta multiplicar o módulo de elasticidade por 103.
As demais propriedades não sofrem alteração de unidade.

3.1.1 - MATERIAL 1 - Aco

E = 207000.000 MPa * 103 = 207000000.000 kN/m

3.2.1 - SEÇÃO TRANSVERSAL 1 (GENÉRICA) - Sec1

A = 600.000 cm2 / 104 = 6.00000e-02 m2

Ix = 34386.000 cm4 / 108 = 3.4386000e-04 m4

Iy = 80000.000 cm4 / 108 = 8.0000000e-04 m4

Iz = 11250.000 cm4 / 108 = 1.1250000e-04 m4

4 - MONTAGEM DAS MATRIZES DE RIGIDEZ

4.1 - BARRA 1

- Obtenção dos catetos (CX e CY) e cálculo do comprimento (L)

Coordenada X do nó inicial: Xi = 0.0

Coordenada Y do nó inicial: Yi = 0.0

Coordenada Z do nó iniciall: Zi = 0.0

Coordenada X do nó final: Xf = 2.5

Coordenada Y do nó final: Yf = 2.5

Coordenada Z do nó final: Zf = 2.5

CX = Xf - Xi = 0.0 - 0.0 = 0.0 m


91

CY = Yf - Yi = 2.5 - 0.0 = 2.5 m

CZ = Zf - Zi = 3.0 - 0.0 = 3.0 m

L = (CX^2 + CY^2 + CZ^2)1/2 = (0.02 + 0.6401843996642+ 0.7682212795972)1/2 =


3.90512483795 m

- Obtenção dos cossenos diretores (lX e lY)

lX = CX / L = 0.0 / 3.90512483795 = 0.000000

lY = CY / L = 2.5 / 3.90512483795 = 0.6401844

lZ = CZ / L = 3.0 / 3.90512483795 = 0.7682213

- Matrizes de rotação, rigidez elementar local, rigidez elementar global

Devido ao tamanho avantajado e para melhor visualização, as matrizes serão


descritas no arquivo de texto txt.

- Obtenção dos catetos (CX e CY) e cálculo do comprimento (L)

Coordenada X do nó inicial: Xi = 0.0

Coordenada Y do nó inicial: Yi = 2.5

Coordenada Z do nó iniciall: Zi = 2.0

Coordenada X do nó final: Xf = 3.0

Coordenada Y do nó final: Yf = 3.0

Coordenada Z do nó final: Zf = 3.0

CX = Xf - Xi = 2.0 - 0.0 = 2.0 m

CY = Yf - Yi = 3.0 - 2.5 = 0.5 m

CZ = Zf - Zi = 3.0 - 3.0 = 0.0 m

L = (CX^2 + CY^2 + CZ^2)1/2 = (0.9701425001452 + 0.2425356250362+ 0.02)1/2 =


2.06155281281 m
92

- Obtenção dos cossenos diretores (lX e lY)

lX = CX / L = 2.0 / 2.06155281281 = 0.9701425

lY = CY / L = 0.5 / 2.06155281281 = 0.2425356

lZ = CZ / L = 0.0 / 2.06155281281 = 0.000000

- Matrizes de rotação, rigidez elementar local, rigidez elementar global

Devido ao tamanho avantajado e para melhor visualização, as matrizes serão


descritas no arquivo de texto txt.

5 - MONTAGEM DA MATRIZ DE RIGIDEZ GLOBAL

Devido ao tamanho avantajado e para melhor visualização, a matriz será descrita no


arquivo de texto txt.

6 - MONTAGEM DO VETOR DE CARGAS


6.1 - BARRA 1

- Rotação das cargas devido ao carregamento distribuído para eixo global


Devido as cargas terem sido calculadas nos eixos locais das barras, é necessário a
transformação destes vetores para o eixo global da estrutura com a ajuda da matriz
de rotação de cada barra.

6.2 - BARRA 2

- Rotação das cargas devido ao carregamento distribuído para eixo global

Devido as cargas terem sido calculadas nos eixos locais das barras, é necessário a
transformação destes vetores para o eixo global da estrutura com a ajuda da matriz
de rotação de cada barra.
93

O vetor global de forças nodais da estrutura é composto pela soma das forças nodais
devido carregamento distribuído e, carregamento nodal, ambos em coordenadas
globais.

7 - DESLOCAMENTOS N

Conforme item 8 do relatório em arquivo de texto, são obtidos os valores abaixo após
distribuição conforme os graus de liberdade.

7.1 BARRA 1

7.2 BARRA 2

8 - REAÇÕES DE APOIO

As reações de apoio também são chamadas de forças desconhecidas, o


procedimento de cálculo encontra-se no item 9 do relatório de cálculo em arquivo de
texto.

9 - ESFORÇOS INTERNOS E EQUAÇÕES

9.1 - BARRA 1
94

9.1.1 - ESFORÇOS INTERNOS NAS EXTREMIDADES

Conforme item 9.1 do relatório em arquivo de texto, são obtidos os valores abaixo.

10.1.2 – EQUAÇÕES

- Equação de esforços axiais

N(x) = (n(x),dx) - Fxi

N(x) = [(0),dx] - 3.983 kN

N(x) [kN] = -3.9831

- Equação de momento torçor

Mx(x) = Mxi

Mx(x) [kNm] = 0.0

- Equação de rotação do eixo x

Rx(x) = [(Mx(x),dx] * 1/(G*Ix)

Rx(x) = [0]*1/(7.96154e+07 * 3.43860e-04)

Rx(x) [rad] = -3.9831

- Deslocamento horizontal
95

Dx(x) = (E * A )-1 * (N(x),dx) + Dix

Dx(x) = (2.07000e+08 kN/m² * 6.00000e-02 m² )-1 * [(-3.9831),dx] + 0.00000e+00 m

Dx(x) [m] = -3.207e-7*x

- Equação de esforços cortantes no plano xz

Vxz(x) = (qxz(x),dx) + Fzi

Vxz(x) = [(0),dx] + 1.618 kN

Vxz(x) [kN] = 1.6177

- Equação de momento fletor My

My(x) = -(Vxz(x),dx) + Myi

My(x) = -[(1.6177),dx] + -0.068 kN

My(x) [kNm] = 1.6177*x - 5.2537

- Condições de contorno

C1 = L-1 * [Dzj - Dzi + (E * Iy)-1 * [(My(x),dx (x=0)) - (My(x),dx (x=L)) ]

C1 = 3.905-1 m * {2.75844e-05 m - 0.00000e+00 m + (2.07000e+08 kN/m² *


8.00000e-04 m4)-1 *

[[(1.6177*x - 5.2537),dx],(x = L) - [(1.6177*x - 5.2537),dx],( x = 0)]}

C1 [rad] = -2.08227e-20 m

C2 = Dzi - (My(x),dx) (x=0)

C2 = 0.00000e+00 m -1.6177*x - 5.2537

C2 [m] = 0.00000e+00 m

- Equação de delocamento Dz
96

Dz(x) = [(My(x),dx) (x=0)] + C1*x + C2

Dz(x) = [(1.6177*x - 5.2537),dx] + 0.000 * x + -0.000

Dz(x) [m] = 1.6282e-6*x**3 - 1.5863e-5*x**2 - 2.0823e-20*x

- Equação de rotação Ry

Ry(x) = Dy(x)/x

R(x) = (1.6282e-6*x**3 - 1.5863e-5*x**2 - 2.0823e-20*x)/x

R(x) [rad] = 4.8845e-6*x**2 - 3.1725e-5*x - 2.0823e-20

- Equação de esforços cortantes no plano xy

Vxy(x) = (qxy(x),dx) + Fyi

Vxy(x) = [(0),dx] + 0.013 kN

Vxy(x) [kN] = 0.012599

- Equação de momento fletor Mz

Mz(x) = -(Vxy(x),dx) + Mzi

Mz(x) = -[(0.012599),dx] + -3.983 kN

Mz(x) [kNm] = 0.012599*x + 0.067845

- Condições de contorno

C1 = L-1 * [Dyj - Dyi + (E * Iz)-1 * [([Mz(x),dx] (x=0)) - ([Mz(x),dx ](x=L))] ]


97

C1 = 3.905-1 m * {-1.44942e-04 m - 0.00000e+00 m + (2.07000e+08 kN/m² *


1.12500e-04 m4)-1 *

[[(0.012599*x + 0.067845),dx],(p/ x = L) - [(0.012599*x + 0.067845),dx],(p/ x = 0)]}

C1 [rad] = 0.00000e+00 m

C2 = Dyi - ([Mz(x),dx] (x=0)

C2 = 0.00000e+00 m -0.012599*x + 0.067845

C2 [m] = -4.33806e-21 m

- Equação de delocamento Dz

Dy(x) = (Mz(x),dx (x=0)) + C1*x + C2

Dy(x) = [(0.012599*x + 0.067845),dx] + -0.000 * x + 0.000

Dy(x) [m] = 9.0169e-8*x**3 + 1.4567e-6*x**2 - 4.3381e-21*x

- Equação de rotação Ry

Rz(x) = Dy(x)/x

Rz(x) = (9.0169e-8*x**3 + 1.4567e-6*x**2 - 4.3381e-21*x)/x

Rz(x) [rad] = 2.7051e-7*x**2 + 2.9134e-6*x - 4.3381e-21

9.2 - BARRA 2

9.2.1 - ESFORÇOS INTERNOS NAS EXTREMIDADES

Conforme item 9.2 do relatório em arquivo de texto, são obtidos os valores abaixo.
98

10.2.2 – EQUAÇÕES

- Equação de esforços axiais

N(x) = (n(x),dx) - Fxi

N(x) = [(0),dx] - 0.305 kN

N(x) [kN] = -0.30481

- Equação de momento torçor

Mx(x) = Mxi

Mx(x) [kNm] = -6.73471010701e-05

- Equação de rotação do eixo x

Rx(x) = [(Mx(x),dx] * 1/(G*Ix)

Rx(x) = [-6.7347e-5]*1/(7.96154e+07 * 3.43860e-04)

Rx(x) [rad] = -0.30481

- Deslocamento horizontal

Dx(x) = (E * A )-1 * (N(x),dx) + Dix

Dx(x) = (2.07000e+08 kN/m² * 6.00000e-02 m² )-1 * [(-0.30481),dx] + 5.05941e-08 m


99

Dx(x) [m] = -2.4542e-8*x + 5.0594e-8

- Equação de esforços cortantes no plano xz

Vxz(x) = (qxz(x),dx) + Fzi

Vxz(x) = [(0),dx] + -5.904 kN

Vxz(x) [kN] = -5.9044

- Equação de momento fletor My

My(x) = -(Vxz(x),dx) + Myi

My(x) = -[(-5.9044),dx] + 0.498 kN

My(x) [kNm] = -5.9044*x + 0.80881

- Condições de contorno

C1 = L-1 * [Dzj - Dzi + (E * Iy)-1 * [(My(x),dx (x=0)) - (My(x),dx (x=L)) ]

C1 = 2.062-1 m * {0.00000e+00 m - -9.37519e-05 m + (2.07000e+08 kN/m² *


8.00000e-04 m4)-1 *

[[(-5.9044*x + 0.80881),dx],(x = L) - [(-5.9044*x + 0.80881),dx],( x = 0)]}

C1 [rad] = 6.56973e-05 m

C2 = Dzi - (My(x),dx) (x=0)

C2 = -9.37519e-05 m --5.9044*x + 0.80881

C2 [m] = -9.37519e-05 m

- Equação de deslocamento Dz
100

Dz(x) = [(My(x),dx) (x=0)] + C1*x + C2

Dz(x) = [(-5.9044*x + 0.80881),dx] + -0.000 * x + 0.000

Dz(x) [m] = -5.9424e-6*x**3 + 2.4421e-6*x**2 + 6.5697e-5*x - 9.3752e-5

- Equação de rotação Ry

Ry(x) = Dy(x)/x

R(x) = (-5.9424e-6*x**3 + 2.4421e-6*x**2 + 6.5697e-5*x - 9.3752e-5)/x

R(x) [rad] = -1.7827e-5*x**2 + 4.8841e-6*x + 6.5697e-5

- Equação de esforços cortantes no plano xy

Vxy(x) = (qxy(x),dx) + Fyi

Vxy(x) = [(0),dx] + 1.271 kN

Vxy(x) [kN] = 1.2712

- Equação de momento fletor Mz

Mz(x) = -(Vxy(x),dx) + Mzi

Mz(x) = -[(1.2712),dx] + -0.305 kN

Mz(x) [kNm] = 1.2712*x - 0.49847

- Condições de contorno

C1 = L-1 * [Dyj - Dyi + (E * Iz)-1 * [([Mz(x),dx] (x=0)) - ([Mz(x),dx ](x=L))] ]


101

C1 = 2.062-1 m * {0.00000e+00 m - 1.13936e-04 m + (2.07000e+08 kN/m² *


1.12500e-04 m4)-1 *

[[(1.2712*x - 0.49847),dx],(p/ x = L) - [(1.2712*x - 0.49847),dx],(p/ x = 0)]}

C1 [rad] = 1.13936e-04 m

C2 = Dyi - ([Mz(x),dx] (x=0)

C2 = 1.13936e-04 m -1.2712*x - 0.49847

C2 [m] = -7.18684e-05 m

- Equação de deslocamento Dz

Dy(x) = (Mz(x),dx (x=0)) + C1*x + C2

Dy(x) = [(1.2712*x - 0.49847),dx] + -0.000 * x + 0.000

Dy(x) [m] = 9.0977e-6*x**3 - 1.0703e-5*x**2 - 7.1868e-5*x + 0.00011394

- Equação de rotação Ry

Rz(x) = Dy(x)/x

Rz(x) = (9.0977e-6*x**3 - 1.0703e-5*x**2 - 7.1868e-5*x + 0.00011394)/x

Rz(x) [rad] = 2.7293e-5*x**2 - 2.1405e-5*x - 7.1868e-5

11 - TABELAS DE ESFORÇOS E DESLOCAMENTOS NAS SEÇÕES DAS


BARRAS
102

- TABELA DE ESFORÇOS SOLICITANTES - BARRA 1


103

- TABELA DE DESLOCAMENTOS LOCAIS - BARRA 1


104

- TABELA DE ESFORÇOS SOLICITANTES - BARRA 2


105

- TABELA DE DESLOCAMENTOS LOCAIS - BARRA 2


106

ANEXO C – CÓDIGO DE CÁLCULO CERBERUS

import numpy as np

import numpy.linalg as al

import sympy as sp

x = sp.symbols('x')

class CalcCBR(object):

def __init__(self):

# Carregamentos

self.qy = [] # Carregamento distribuído no plano local xy

self.nx = [] # Carregamento distribuído paralelo ao eixo local x

self.qz = [] # Carregamento distribuído no plano local xz

self.deslocpresc = [] # Deslocamentos prescritos

self.carregn = [] # Carregamentos nodais

# Geometria

self.nos = [] # Coordenadas dos nós

self.barras = [] # Incidencias das Barras

self.restri = [] # Restrições dos pontos

self.tipbar = [] # Liberação de continuidades na extremidades das barras

# Propriedades do material

self.mat_el = [] # Indicador do material utilizado pela barra

self.mater = [] # Lista de propriedades do material

# Propriedades da seção transversal

self.sec_el = [] # Indicador da geometria da seção transversal utilizada pela barra

self.secao = [] # Lista de propriedades da seção transversal


107

self.lista_T = [] # Lista das matrizes de rotação

self.lista_Incid = [] # Lista das incidências das barras

self.lista_tam = [] # Lista do comprimento das barras

self.lista_Cx = [] # Cosseno diretor X

self.lista_Cy = [] # Cosseno diretor Y

self.lista_Cz = [] # Cosseno diretor Z

self.lista_GIx = [] # Rigidez torsional

self.lista_EIy = [] # Rigidez transversal Y

self.lista_EIz = [] # Rigidez transversal Z

self.lista_EA = [] # Rigidez axial

self.lista_kele = [] # Lista das matrizes de rigidez elementares

self.lista_kele_lib = [] # Matrizes de rigidez com liberações nodais

self.lista_kele_rot = [] # Matrizes de rigidez rotacionadas

self.lista_fele = [] # Lista das forças nodais de engaste perfeito

self.lista_fele_lib = [] # Lista das forças nodais devido car. dist.

self.lista_fele_rot = [] # Lista das forças nodais rotacionadas

self.lista_qy = [] # Forças distribuídas em Y

self.lista_n = [] # Forças distribuídas em X

self.lista_qz = [] # Forças distribuídas em Z

self.lista_eq_vxy = [] # Lista de equações de cortantes xy

self.lista_eq_vxz = [] # Lista de equações de cortantes no plano xz

self.lista_eq_nx = [] # Lista de equações de cortantes xy

self.lista_eq_mx = [] # Lista de equações de momentos torçores

self.lista_eq_my = [] # Lista de equações d emomentos fletors em torno de y

self.lista_eq_mz = [] # Lista de equações d emomentos fletors em torno de z

self.lista_eq_dx = [] # Lista de equações de deslocamentos em x

self.lista_eq_dy = [] # Lista de equações de deslocamentos em y

self.lista_eq_dz = [] # Lista de equações de deslocamentos em z


108

self.lista_eq_rx = [] # Lista de equações de rotação em x

self.lista_eq_ry = [] # Lista de equações de rotação em y

self.lista_eq_rz = [] # Lista de equações de rotação em z

self.lista_De_loc = [] # Lista dos deslocamentos por elemento

self.lista_Fe_loc = [] # Vetor das forças por elemento

self.lista_R1 = [] # Lista das parcelas da matriz de rotação

self.lista_R2 = [] # Lista das parcelas da matriz de rotação

self.lista_cy = [] # Constantes de integração para y

self.lista_cz = [] # Constantes de integração para z

def quantidades(self):

self.restri = np.array(self.restri).flatten() # Restrições

self.totngl = 6 * len(self.nos) # Quantidade de graus de liberdade

self.numgl = np.zeros(self.totngl) # Graus de liberdade

self.KG = np.zeros((self.totngl,self.totngl)) # Matriz de rigidez global

self.FG = np.zeros(self.totngl) # Forças nodais de engastamento perfeito

self.FN = np.zeros(self.totngl) # Forças nodais

self.FD = np.zeros(self.totngl) # Deslocamentos prescritos

self.numb = len(self.barras) # Número de barras

self.nummat = len(self.mater) # Número de materiais

self.numsec = len(self.secao) # Número de seções

self.numn = len(self.nos) # Número de nós

def graus_de_liberdade(self): # Ordena os graus de liberdade

self.nglliv = 0

# Ordena os graus de liberdade livres

cont = 0
109

for i in self.restri:

if i == 0:

self.numgl[cont] = int(self.nglliv)

self.nglliv += 1

cont += 1

nglrest = self.nglliv

# Ordena os graus de liberdade restringidos

cont = 0

for i in self.restri:

if i == 1:

self.numgl[cont] = int(nglrest)

nglrest += 1

cont += 1

self.numgl = self.numgl.reshape(-1,6)

self.numgl = [ [ int(y) for y in k ] for k in self.numgl ]

# Define as propriedades geometrrica das barras

def geometria_das_barras(self, nx, ny, nz, fx, fy, fz):

_L = np.sqrt( (fx-nx) ** 2 + (fy-ny) ** 2 + (fz - nz) ** 2 )

_lbx = (fx - nx)/_L

_lby = (fy - ny)/_L

_lbz = (fz - nz)/_L

return [ _L, _lbx, _lby, _lbz]

# Define a matriz de rotação por barras

def matriz_de_rotacao(self, Cx, Cy, Cz):

Cxy = np.sqrt(Cx**2 + Cy**2)


110

if Cxy == 0: # Barras verticais

R1 = np.round(np.matrix([

[ 0, 0, Cz ],

[ 0, 1, 0 ],

[ -Cz, 0, 0]

]),20)

else:

R1 = np.round(np.matrix([

[ Cx, Cy, Cz ],

[ -Cy/Cxy, Cx/Cxy, 0 ],

[-Cx*Cz/Cxy, -Cy*Cz/Cxy, Cxy]

]),20)

self.lista_R1.append(R1)

R = np.zeros((12,12))

R[ 0: 3, 0: 3] = R1

R[ 3: 6, 3: 6] = R1

R[ 6: 9, 6: 9] = R1

R[ 9:12, 9:12] = R1

return R

# Define as propriedades do material por barra

def Material(self):

self.Mat = []

for i in range(self.numb):

for j in range(len(self.mater)):

if self.mat_el[i] == self.mater[j][0]:

E = self.mater[j][1] * 1e3
111

ni = self.mater[j][2]

mat_pivo = [E,ni]

else: continue

self.Mat.append(mat_pivo)

# Define as propriedades da geometria da sação transversal por barra

def GeomSecao(self):

self.Sec = []

for i in range(self.numb):

for j in range(len(self.secao)):

if self.sec_el[i] == self.secao[j][0]:

A = self.secao[j][1] * 1e-4

Ix = self.secao[j][2] * 1e-8

Iy = self.secao[j][3] * 1e-8

Iz = self.secao[j][4] * 1e-8

sec_pivo = [A, Ix, Iy, Iz]

else: continue

self.Sec.append(sec_pivo)

# Define a matriz de rigidez por barra

def matriz_de_rigidez(self, EIy, EIz , GIx, EA, L):

Kele = np.matrix([

[ EA / L, 0., 0., 0., 0., 0., -EA/L, 0., 0., 0.,


0., 0.],

[ 0., 12*EIz/L**3, 0., 0., 0., 6*EIz/L**2, 0., -12*EIz/L**3, 0., 0., 0.,
6.*EIz / L**2],

[ 0., 0., 12*EIy/L**3, 0., -6.*EIy/L**2, 0., 0., 0., -12*EIy/L**3, 0., -6*EIy/L**2,
0.],
112

[ 0., 0., 0., GIx/L, 0, 0, 0., 0., 0., -GIx / L, 0,


0.],

[ 0., 0., -6*EIy/L**2, 0., 4*EIy/L, 0., 0., 0., 6*EIy/L**2, 0., 2.* EIy /
L, 0.],

[ 0., 6.* EIz / L**2, 0., 0., 0., 4.*EIz / L, 0., -6.*EIz/L**2, 0., 0., 0.,
2.* EIz / L],

[ -EA / L, 0., 0., 0., 0., 0., EA/L, 0., 0., 0., 0.,
0.],

[ 0., -12*EIz/L**3, 0., 0., 0., -6.* EIz /L**2, 0., 12*EIz/L**3, 0., 0., 0., -
6.*EIz / L**2],

[ 0., 0., -12*EIy/L**3, 0., 6*EIy/L**2, 0., 0., 0., 12*EIy/L**3, 0., 6*EIy/L**2,
0.],

[ 0., 0., 0., -GIx/L, 0., 0., 0., 0., 0., GIx / L, 0,
0.],

[ 0., 0., -6.*EIy/L**2, 0., 2.* EIy / L, 0., 0., 0., 6.*EIy/L**2, 0., 4.*
EIy/L, 0.],

[ 0., 6*EIz/L**2, 0., 0., 0., 2.*EIz/L, 0., -6.*EIz/L**2, 0., 0., 0.,
4.*EIz/L]

])

return Kele

# Libera os graus de liberdade para as barras

def liberaGL(self, kele, fele, tipbarra):

klinha = kele.copy()

flinha = fele.copy()

for ele in range(12):

if tipbarra[ele] == 0:

for j in range(12):

if j != ele:
113

m = klinha[j, ele] / klinha[ele, ele]

for k in range(12):

klinha[j, k] = klinha[j, k] - m*klinha[ele, k]

flinha[j] = flinha[j] - m * flinha[ele]

for k in range(12):

if k == ele:

klinha[ele, k] = 0

flinha[k] = 0

else:

klinha[ele, k] = 0

for ele in range(12):

if klinha[ele,ele] == 0:

klinha[ele,ele] = 1e-30

return klinha, flinha

def calculo_estrutural(self):

i=0

for b in self.barras:

# Geometria das barras

[L, Cx, Cy, Cz] = self.geometria_das_barras(self.nos[b[0]][0], self.nos[b[0]][1],


self.nos[b[0]][2], self.nos[b[1]][0], self.nos[b[1]][1], self.nos[b[1]][2])

self.lista_tam.append(L)

self.lista_Cx.append(Cx)

self.lista_Cy.append(Cy)

self.lista_Cz.append(Cz)
114

EIy = self.Mat[i][0]*self.Sec[i][2]

self.lista_EIy.append(EIy)

EIz = self.Mat[i][0]*self.Sec[i][3]

self.lista_EIz.append(EIz)

EA = self.Mat[i][0]*self.Sec[i][0]

self.lista_EA.append(EA)

GIx = (self.Mat[i][0]/(2*(1+self.Mat[i][1])))*self.Sec[i][1]

self.lista_GIx.append(GIx)

kele = self.matriz_de_rigidez( EIy, EIz, GIx, EA, L )

self.lista_kele.append(kele)

# Lista das incidências

vetIncid = self.numgl[ b[0] ] + self.numgl[ b[1] ]

self.lista_Incid.append(vetIncid)

# Lista das forças distribuídas em x

if len(self.nx[i]) == 2 :

n = + self.nx[i][0] + (self.nx[i][1] - self.nx[i][0])*x/L

else:

n = self.nx[i]

self.lista_n.append(n)

# Lista das forças distribuídas em y

if len(self.qy[i]) == 2 :

qxy = + self.qy[i][0] + (self.qy[i][1] - self.qy[i][0])*x/L

else:

qxy = -self.qy[i]

self.lista_qy.append(qxy)
115

# Lista das forças distribuídas em z

if len(self.qz[i]) == 2 :

qxz = + self.qz[i][0] + (self.qz[i][1] - self.qz[i][0])*x/L

else:

qxz = self.qz[i]

self.lista_qz.append(qxz)

# Efeito do carregamento distribuído plano XY (método das forças)

V0xy = sp.integrate(qxy, x)

M0xy = sp.integrate(V0xy, x)

M1xy = x

M2xy = - 1

f10 = sp.integrate( M0xy * M1xy, (x, 0, L) )

f11 = sp.integrate( M1xy * M1xy, (x, 0, L) )

f20 = sp.integrate( M0xy * M2xy, (x, 0, L) )

f22 = sp.integrate( M2xy * M2xy, (x, 0, L) )

f12 = sp.integrate( M1xy * M2xy, (x, 0, L) )

A = sp.Matrix([

[ f11, f12 ],

[ f12, f22 ]

])

B = sp.Matrix([

[- f10 ],

[- f20 ]

])

Vy1, Mz1 = list(A.inv() * B)


116

Vxy = - V0xy - Vy1

Mxy = M0xy + Vy1 * x - Mz1

Vy2 = Vxy.subs(x,L)

Mz2 = Mxy.subs(x,L)

# Efeito do carregamento distribuído plano XZ (método das forças)

V0xz = sp.integrate(qxz, x)

M0xz = sp.integrate(V0xz, x)

M1xz = x

M2xz = - 1

f10 = sp.integrate( M0xz * M1xz, (x, 0, L) )

f11 = sp.integrate( M1xz * M1xz, (x, 0, L) )

f20 = sp.integrate( M0xz * M2xz, (x, 0, L) )

f22 = sp.integrate( M2xz * M2xz, (x, 0, L) )

f12 = sp.integrate( M1xz * M2xz, (x, 0, L) )

A = sp.Matrix([

[ f11, f12 ],

[ f12, f22 ]

])

B = sp.Matrix([

[- f10 ],

[- f20 ]

])

Vz1, My1 = list(A.inv() * B)

Vxz = - V0xz - Vz1

Mxz = M0xz + Vz1 * x - My1


117

Vz2 = Vxz.subs(x,L)

My2 = Mxz.subs(x,L)

# Efeito do carregamento distribuído axial X (método das forças)

N0 = sp.integrate( n, x)

N1 = 1

N10 = sp.integrate( N0 * N1, (x, 0, L ) )

N11 = sp.integrate( N1 * N1, (x, 0, L ) )

N1 = N10/N11

N2 = N1 - sp.integrate( n, (x, 0, L ) )

fele = np.matrix([[ float(w) for w in [ -N1, Vy1, Vz1, 0, -My1, Mz1,

N2, Vy2, Vz2, 0, -My2, Mz2 ]]]).T

self.lista_fele.append(fele) # Lista das forças nodais elementares

# Liberacao dos graus de liberdade

kele_lib, fele_lib = self.liberaGL(kele, fele, self.tipbar[i])

self.lista_kele_lib.append(kele_lib)

self.lista_fele_lib.append(fele_lib)

# Matriz de rotação / Rotação das matrizes

T = self.matriz_de_rotacao(Cx, Cy, Cz)

self.lista_T.append(T)

kele_rot = np.array(T.T * kele_lib * T) # Matriz de rigidez rotacionada com liberação


nos GLs
118

fele_rot = np.array(T.T * fele_lib).flatten() # Matriz de forças rotacionadas com


liberação nos GLs

self.lista_kele_rot.append(kele_rot) # Lista das matrizes de rigidez

self.lista_fele_rot.append(fele_rot) # Lista das forças rotacionadas

# Espalhamento da matriz de rigidez local (kele_rot) na global (KG)

lin = np.array( 12 * vetIncid )

col = np.array( 12 * vetIncid ).reshape(-1,12).T.flatten()

self.KG[ lin, col ] += kele_rot.flatten()

# Espalhamento do vetor de reacoes de engaste perfeito (fele_rot) no vetor


global (FG)

self.FG[ vetIncid ] += -1. * fele_rot

i += 1

# Distribuição dos carregamentos e deslocamentos em função dos GLs

for k in range( len(self.nos) ):

# Vetor de carregamentos nodais

self.FN[ self.numgl[k] ] += self.carregn[k]

# Vetor de deslocamentos prescritos

self.FD[ self.numgl[k] ] += self.deslocpresc[k]

# divisão dos subvetores

self.F10 = self.FG[ 0 : self.nglliv ] + self.FN[ 0 : self.nglliv ]

self.F20 = self.FG[ self.nglliv : ] + self.FN[ self.nglliv : ]

self.DK = self.FD[ self.nglliv : ]

self.F0 = self.FG[ self.nglliv : ]


119

# divisão nas submatrizes

self.K11 = self.KG[ 0 : self.nglliv, 0 : self.nglliv ]

self.K22 = self.KG[ self.nglliv : , self.nglliv : ]

self.K12 = self.KG[ 0 : self.nglliv, self.nglliv : ]

self.K21 = self.KG[ self.nglliv : , 0 : self.nglliv ]

# solução do sistema linear - cálculo dos deslocamentos

self.DU = al.solve(self.K11, self.F10 - np.dot(self.K12, self.DK.T)

# cálculo das reacoes de apoio

self.RA = np.dot(self.K21,self.DU) + np.dot(self.K22,self.DK) - self.F0

self.RAtot = np.zeros(self.totngl)

self.RAtot[self.nglliv : ] = self.RA

# vetor total de deslocamentos

self.D = np.array(list(self.DU) + list(self.DK))

i=0

# Cálculo dos esforços internos

for b in self.barras:

endereco = self.numgl[b[0]] + self.numgl[b[1]]

De = np.matrix(self.D[endereco]).T # Deslocamentos

Ke = np.matrix(self.lista_kele_lib[i]) # Forças nodais

fe = np.matrix(self.lista_fele_lib[i]) # Matriz de Rigidez

R1 = self.lista_R1[i] # Parcela da rotação (3x3)

R1T = np.zeros((12,12))
120

R1T[ 0: 3, 0: 3] = R1

R1T[ 3: 6, 3: 6] = R1

R1T[ 6: 9, 6: 9] = R1

R1T[ 9:12, 9:12] = R1

De_loc = R1T * De # Lista dos deslocamentos por elemento

self.lista_De_loc.append(De_loc.T.tolist()[0])

Fe_loc = Ke * De_loc + fe # # Calculo dos esforcos internos

self.lista_Fe_loc.append(Fe_loc.T.tolist()[0])

i += 1

# Equações para a plotagem de diagramas

def equacoes(self):

x = sp.symbols('x')

i=0

for b in self.barras:

q = self.lista_qy[i]

n = self.lista_n[i]

qz = self.lista_qz[i]

L = self.lista_tam[i]

Fxi, Fyi, Fzi, Mxi, Myi, Mzi, Fxj, Fyj, Fzj, Mxj, Myj, Mzj = self.lista_Fe_loc[i]

Dxi, Dyi, Dzi, Rxi, Ryi, Rzi, Dxj, Dyj, Dzj, Rxj, Ryj, Rzj = self.lista_De_loc[i]

# Equação de axial

Nx = -sp.integrate(n, x) - Fxi
121

self.lista_eq_nx.append(Nx)

# Equação de deslocamento em x local

Dx = sp.integrate(Nx, x)/self.lista_EA[i] + Dxi

self.lista_eq_dx.append(Dx)

# Equação de momento torçor

Mx = Mxi

self.lista_eq_mx.append(Mx)

# Equação de rotação em x

Rx = sp.integrate(Mx,x)/self.lista_GIx[i] + Rxi

self.lista_eq_rx.append(Rx)

# Equação para cortante no plano xz

Vxz = sp.integrate(qz,x) + Fzi

self.lista_eq_vxz.append(Vxz)

# Equação para momento fletar em y

My = sp.integrate(Vxz,x) + Myi

self.lista_eq_my.append(My)

# Constantes de integração

INTY = sp.integrate(sp.integrate(My,x),x)/ self.lista_EIy[i]

C2y = Dzi - INTY.subs(x,0)

C1y = (-C2y -INTY.subs(x,L) + Dzj ) / L

cy = [C1y, C2y]

self.lista_cy.append(cy)
122

# Equação para deslocamento em z local

Dz = INTY + C1y * x + C2y

self.lista_eq_dz.append(Dz)

# Equação para rotação em torno de y

Ry = sp.diff(Dz,x)

self.lista_eq_ry.append(Ry)

# Equação para cortante no plano xy

Vxy = sp.integrate(q,x) + Fyi

self.lista_eq_vxy.append(Vxy)

# Equação para momento fletar em z

Mz = sp.integrate(Vxy,x) - Mzi

self.lista_eq_mz.append(Mz)

# Constantes de integração

INTZ = sp.integrate(sp.integrate(Mz,x),x)/ self.lista_EIz[i]

C2z = -INTZ.subs(x,0) + Dyi

C1z = (-C2z - INTZ.subs(x,L) + Dyj) / L

cz = [C2z, C1z]

self.lista_cz.append(cz)

# Equação para deslocamento em y local

Dy = INTZ + C1z * x + C2z

self.lista_eq_dy.append(Dy)

# Equação para rotação em torno de z


123

Rz = sp.diff(Dy,x)

self.lista_eq_rz.append(Rz)

i +=1

Você também pode gostar