You are on page 1of 22

UNIVERSIDADE FEDERAL DO PARÁ – UFPA

FACULDADE DE ENGENHARIA NAVAL – FENAV

LUCAS VIEIRA TIRADENTES


RAFAEL ANTONIO RIBEIRO BRITO

APLICAÇÃO DO MÉTODO DA RIGIDEZ EM TRELIÇAS PLANAS

BELÉM
2018
LUCAS VIEIRA TIRADENTES
RAFAEL ANTONIO RIBEIRO BRITO

APLICAÇÃO DO MÉTODO DA RIGIDEZ EM TRELIÇAS PLANAS

Trabalho apresentado como requisito parcial para


obtenção da aprovação na disciplina Estruturas Navais II,
no curso de Engenharia Naval da Universidade Federal
do Pará.

BELÉM
2018
FIGURAS

Figura 1 - Problema a ser resolvido ..................................................................................... 4


Figura 2 – Exemplo ilustrativo .............................................................................................. 6
Figura 3 – Metodologia para determinação da matriz S ...................................................... 6
Figura 4 – Fluxograma do programa desenvolvido ............................................................ 10
Figura 5 - Problema a ser resolvido ................................................................................... 11
Figura 6 – Modelagem do problema - visual ...................................................................... 12
Figura 7 – Entrada de dados no programa ........................................................................ 12
SUMÁRIO

1 Introdução ..............................................................................................4
2 Formulário básico ..................................................................................5
2.1 Fórmulas gerais ................................................................................................ 5
2.1.1 Matriz de transformação (T) .................................................................... 5
2.1.2 Matriz de forças nos membros (M) .......................................................... 5
2.1.3 Matriz de forças nos nós (P) .................................................................... 5
2.1.4 Matriz de rigidez da estrutura (S)............................................................. 6
2.1.5 Matriz de deslocamentos nos nós (d) ...................................................... 6
2.2 Fórmulas para características locais .............................................................. 7
2.2.1 Matriz de resistência local (k) .................................................................. 7
2.2.2 Matriz de deslocamento local (u) ............................................................. 7
2.2.3 Matriz de força local (Q) .......................................................................... 7
2.3 Fórmulas para características globais ............................................................ 8
2.3.1 Matriz de resistência global (K) ............................................................... 8
2.3.2 Matriz de deslocamento global (v) ........................................................... 8
2.3.3 Matriz de força global (F) ......................................................................... 8
3 Resolução do problema ........................................................................9
3.1 Visão geral da resolução .................................................................................. 9
3.2 Algoritmo desenvolvido ................................................................................. 10
3.3 Implementação do algoritmo ......................................................................... 11
3.3.1 Visualização do problema ...................................................................... 11
3.3.2 Modelagem do problema ....................................................................... 12
3.3.3 Cálculos realizados................................................................................ 13
3.3.4 Resultados obtidos ................................................................................ 16
3.3.5 Validação de resultados ........................................................................ 16
4 Referências bibliográficas ..................................................................17
Apêndice A – Programa em Matlab ........................................................18
1 Introdução
Este breve relatório visa cobrir a obtenção de dados estáticos de uma treliça plana
por meio do método da rigidez. Como forma de melhor compreender o método, foi
desenvolvido um algoritmo em Matlab para a resolução de questões de treliças por meio
do método da rigidez.

A treliça em análise é mostrada abaixo, bem como os dados requeridos.


Figura 1 - Problema a ser resolvido

Fonte: Autor, 2018

Deseja-se obter os seguintes dados da estrutura:


 Deslocamentos nodais (𝑑)
 Forças axiais dos membros (𝑀)
 Reações dos apoios (𝑅)

4
2 Formulário básico
Antes de seguir para o formulário, destaca-se que este relatório não possui o objetivo
de ensinar detalhadamente o método utilizado para a resolução do problema, apenas visa
relembrar alguns conceitos e aplicar o método.

2.1 Fórmulas gerais


2.1.1 Matriz de transformação (T)
A matriz de transformação é utilizada, dentre outras finalidades, para converter a
matriz de resistência de coordenadas locais (k) para coordenadas globais (K), sendo
expressa por:
cos 𝜃 sen 𝜃 0 0 (2. 1)
𝑇 = [ −sen 𝜃 cos 𝜃 0 0] 1
0 0 cos 𝜃 sen 𝜃
0 0 −sen 𝜃 cos 𝜃
𝑇: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑡𝑟𝑎𝑛𝑠𝑓𝑜𝑟𝑚𝑎çã𝑜 1
𝑥𝑓 − 𝑥𝑖 1
cos 𝜃 =
𝐿
𝑦𝑓 − 𝑦𝑖 1
𝑠𝑒𝑛 𝜃 =
𝐿

2.1.2 Matriz de forças nos membros (M)


A matriz de força nos membros (M) não foi encontrada no livro referência para esse
trabalho, contudo ela será utilizada para expressar as forças axiais em cada um dos
membros da estrutura de análise de forma mais organiada e em concordância com o
restante do trabalho.

2.1.3 Matriz de forças nos nós (P)


A matriz de forças nos nós (P) é obtida a partir da inspeção visual realizada no
problema. Vale lembrar que antes de determinar essa matriz, que contém o número de
elementos igual ao número de graus de liberdade, deve-se numerar os nós, os membros e
os possíveis deslocamentos em cada nó, de modo que haja uma concordância na estrutura.

Outro meio para a determinação da matriz P é por meio da fórmula expressa abaixo:
(2. 2)
𝑃=𝑆𝑑
1
𝑃: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑓𝑜𝑟ç𝑎𝑠 𝑛𝑜𝑠 𝑛ó𝑠 1
𝑆: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑟𝑖𝑔𝑖𝑑𝑒𝑧 𝑑𝑎 𝑒𝑠𝑡𝑟𝑢𝑡𝑢𝑟𝑎 1
𝑑: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑑𝑒𝑠𝑙𝑜𝑐𝑎𝑚𝑒𝑛𝑡𝑜𝑠 𝑛𝑜𝑑𝑎𝑖𝑠 1

5
2.1.4 Matriz de rigidez da estrutura (S)
Visto que o método por traz da determinação da matriz de rigidez da estrutura (S) é
de certa forma complicado, será utilizado um exemplo do livro.
Figura 2 – Exemplo ilustrativo

Fonte: Autor, 2018

Na treliça acima há dois roletes e um apoio fixo, totaliando apenas duas reações na
estrutura. Para determinar a matriz de rigidez da estrutura é necessário correlacionar os
índices dos nós analisados da seguinte maneira:
Figura 3 – Metodologia para determinação da matriz S

Fonte: Autor, 2018

2.1.5 Matriz de deslocamentos nos nós (d)


A matriz de deslocamentos nos nós (d) é obtida a partir da solução do sistema linear
mostrado na equação (2.2), que pode ser generalizado como mostrado abaixo:

𝑆11 𝑆12 𝑆13 𝑑1 𝑃1


𝑆
[ 21 𝑆22 𝑆23 ] [𝑑2 ] = [𝑃2 ]
𝑆31 𝑆32 𝑆33 𝑑3 𝑃3

Ao final do processo de solução, a matriz deslocamento nodal (𝑑) pode ser


encontrada.

6
2.2 Fórmulas para características locais
As fórmulas mostradas abaixo devem ser calculadas em relação a cada um dos
membros.

2.2.1 Matriz de resistência local (k)


Para obter-se a matriz de resistência local, deve-se obedecer à seguinte expressão:
1 0 −1 0 (2. 3)
𝐸𝐴 0 0 0 0
𝑘= [ ]
𝐿 −1 0 1 0 𝑘𝑁
0 0 0 0
𝑘: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑟𝑒𝑠𝑖𝑠𝑡ê𝑛𝑐𝑖𝑎 𝑙𝑜𝑐𝑎𝑙 𝑑𝑜 𝑚𝑒𝑚𝑏𝑟𝑜 𝑘𝑁
𝐸: 𝑀ó𝑑𝑢𝑙𝑜 𝑑𝑒 𝑒𝑙𝑎𝑠𝑡𝑖𝑐𝑖𝑑𝑎𝑑𝑒 𝑑𝑜 𝑚𝑎𝑡𝑒𝑟𝑖𝑎𝑙 (𝑑𝑜 𝑚𝑒𝑚𝑏𝑟𝑜) 𝑘𝑁/𝑚²
𝐴: Á𝑟𝑒𝑎 𝑡𝑟𝑎𝑛𝑠𝑣𝑒𝑟𝑠𝑎𝑙 𝑑𝑜 𝑚𝑒𝑚𝑏𝑟𝑜 𝑚2
𝐿: 𝐶𝑜𝑚𝑝𝑟𝑖𝑚𝑒𝑛𝑡𝑜 𝑑𝑜 𝑚𝑒𝑚𝑏𝑟𝑜 𝑚

2.2.2 Matriz de deslocamento local (u)


Pode-se utilizar a seguinte expressão para o cálculo da matriz de deslocamento
local:
𝑢 =𝑇𝑣 (2. 4)
1
𝑢: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑑𝑒𝑠𝑙𝑜𝑐𝑎𝑚𝑒𝑛𝑡𝑜 𝑙𝑜𝑐𝑎𝑙 1
𝑇: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑡𝑟𝑎𝑛𝑠𝑓𝑜𝑟𝑚𝑎çã𝑜 1
𝑣: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑑𝑒𝑠𝑙𝑜𝑐𝑎𝑚𝑒𝑛𝑡𝑜 𝑔𝑙𝑜𝑏𝑎𝑙 1

2.2.3 Matriz de força local (Q)


Para determinar-se a matriz de força local, a seguinte expressão dever calculada:
(2. 5)
𝑄=𝑘𝑢
1
𝑄: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑓𝑜𝑟ç𝑎 𝑙𝑜𝑐𝑎𝑙 1
𝑘: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑟𝑒𝑠𝑖𝑠𝑡ê𝑛𝑐𝑖𝑎 𝑙𝑜𝑐𝑎𝑙 1
𝑢: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑑𝑒𝑠𝑙𝑜𝑐𝑎𝑚𝑒𝑛𝑡𝑜 𝑙𝑜𝑐𝑎𝑙 1

Alternativamente, podese obter a matriz de força local por meio da seguinte


expressão:
𝑄=𝑇𝐹 (2. 6)
1
𝑄: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑓𝑜𝑟ç𝑎 𝑙𝑜𝑐𝑎𝑙 1
𝑇: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑡𝑟𝑎𝑛𝑠𝑓𝑜𝑟𝑚𝑎çã𝑜 1
𝐹: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑓𝑜𝑟ç𝑎 𝑔𝑙𝑜𝑏𝑎𝑙 1

7
2.3 Fórmulas para características globais
2.3.1 Matriz de resistência global (K)
A matriz de resistência global é obtida a partir da seguinte expressão:
(2. 7)
𝐾 = 𝑇𝑇 𝑘 𝑇
1
𝐾: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑟𝑒𝑠𝑖𝑠𝑡ê𝑛𝑐𝑖𝑎 𝑔𝑙𝑜𝑏𝑎𝑙 1
𝑇: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑡𝑟𝑎𝑛𝑠𝑓𝑜𝑟𝑚𝑎çã𝑜 1
𝑇
𝑇 : 𝑀𝑎𝑡𝑟𝑖𝑧 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑠𝑡𝑎 𝑑𝑎 𝑚𝑎𝑡𝑟𝑖𝑧 𝑇 1
𝑘: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑟𝑒𝑠𝑖𝑠𝑡ê𝑛𝑐𝑖𝑎 𝑙𝑜𝑐𝑎𝑙

2.3.2 Matriz de deslocamento global (v)


Pode-se obter a matriz de deslocamento global a partir da expressão descrita abaixo:
𝑣 = 𝑇𝑇 𝑢 (2. 8)
1
𝑣: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑑𝑒𝑠𝑙𝑜𝑐𝑎𝑚𝑒𝑛𝑡𝑜 𝑔𝑙𝑜𝑏𝑎𝑙 1
𝑇 𝑇 : 𝑀𝑎𝑡𝑟𝑖𝑧 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑠𝑡𝑎 𝑑𝑎 𝑚𝑎𝑡𝑟𝑖𝑧 𝑇 1
𝑢: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑑𝑒𝑠𝑙𝑜𝑐𝑎𝑚𝑒𝑛𝑡𝑜 𝑙𝑜𝑐𝑎𝑙 1

2.3.3 Matriz de força global (F)


Pode-se obter a matriz de força global a partir do uso da seguinte equação:
𝐹 = 𝑇𝑇 𝑄 (2. 9)
1
𝐹: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑓𝑜𝑟ç𝑎 𝑔𝑙𝑜𝑏𝑎𝑙 1
𝑇
𝑇 : 𝑀𝑎𝑡𝑟𝑖𝑧 𝑡𝑟𝑎𝑛𝑠𝑝𝑜𝑠𝑡𝑎 𝑑𝑎 𝑚𝑎𝑡𝑟𝑖𝑧 𝑇 1
𝑄: 𝑀𝑎𝑡𝑟𝑖𝑧 𝑑𝑒 𝑐𝑎𝑟𝑔𝑎 𝑙𝑜𝑐𝑎𝑙 1

8
3 Resolução do problema

3.1 Visão geral da resolução


De maneira geral, a resolução do problema foi contornada a partir da metodologia
listada a seguir:
Passo Descrição
1 Definir o número de referência de cada nó e de cada membro
2 Definir os índices referentes aos movimentos presentes em cada nó
3 Definir a matriz de forças nos nós (P) em cada nó
Para cada membro da treliça
4  Calcular a matriz de resistência local (k)
 Calcular a matriz de transformação (T)
 Calcular a matriz de resistência global (K)
5 A partir da matriz de resistência global (K) de cada membro, calculou-se a
matriz de rigidez da estrutura (S)
6 A partir da solução do sistema linear formado pela equação (𝑆 𝑑 = 𝑃),
calculoou-se a matriz de deslocamento (d) nos nós
7 A partir da matriz de deslocamento dos nós (d), foi possível obter a matriz de
deslocamento global (v) para todos os embros da estrutura
8 A partir da fórmula (𝑢 = 𝑇 𝑣), foi possível obter a fórmula dos deslocamentos
locais (u) de todos os membros da estrutura
9 Com base na matriz de deslocamentos locais (u), foi obtida a matriz de cargas
locais (Q) por meio da expressão ao lado (Q=k u)
10 A partir da expressão (𝐹 = 𝑇 𝑇 𝑄) foi possível obter a matriz de forças globais
(F) atuando nos membros da treliça
11 Por fim, com basse na matriz de forças globais (F) foi possível obter a matriz
de reações (R)
12 Checar os resultados a partir das equações de equilíbrio da estática

9
3.2 Algoritmo desenvolvido
Com o intuito de ter a comodidade de resolver questões similares de maneira
eficiente, foi desenvolvido um algoritmo Matlab, cujo código fonte encontra-se em apêndice.

Para melhor compreender o algoritmo, o seguinte organograma foi gerado:


Figura 4 – Fluxograma do programa desenvolvido

Fonte: Autor, 2018

10
3.3 Implementação do algoritmo
Esta seção visa correlacionar os passos necessários para a resolução do problema
em análise com o modo que o algoritmo desenvolvido funciona, de forma que o leitor possa,
a partir da explicação e visualização, ter a liberdade de resolver exercícios de forma
autônoma com auxílio do algoritmo.

3.3.1 Visualização do problema


Dada a treliça abaixo, determine as matrizes de: Deslocamento nodal (d), Reações
nos apoios (R) e Forças axiais nos membros (M).
Figura 5 - Problema a ser resolvido

Fonte: Autor, 2018

A partir e uma análise preeliminar, é possível determinar-se as seguintes


características a respeito da treliça estudada:
Dado Valor
𝑁º 𝑑𝑒 𝑚𝑒𝑚𝑏𝑟𝑜𝑠 (𝑁𝑀) 5
𝑁º 𝑑𝑒 𝑛ó𝑠 (𝑁𝑁) 4
𝑁º 𝑑𝑒 𝑟𝑒𝑠𝑡𝑟𝑖çõ𝑒𝑠 (𝑁𝑅) 4
𝑁º 𝑑𝑒 𝑔𝑟𝑎𝑢𝑠 𝑑𝑒 𝑙𝑖𝑏𝑒𝑟𝑑𝑎𝑑𝑒 (𝐺𝐿) 4

Conforme foi explicitado, deseja-se calcular:

 Deslocamentos nodais (𝑑)


 Forças de membro (𝑀)
 Reações nos apoios (𝑅)

11
3.3.2 Modelagem do problema
O problema de análise foi resolvido adotando a seguinte configuração de membros,
nós e cargas:
Figura 6 – Modelagem do problema - visual

Fonte: Autor, 2018

Para a configuração mostrada acima, os dados inseridos correspondentes são


mostrados a seguir:
Figura 7 – Entrada de dados no programa

Fonte: Autor, 2018

12
3.3.3 Cálculos realizados
Devido ao fato da matriz analisada possuir vários membro, o que é sinônimo para
uma quantidade exagerada de matrizes, optou-se por mostrar o procedimento adotado para
um único elemento, de modo que seja possível a compreensão da metodologia adotada.

Ressalta-se que inúmeras matrizes abaixo necessitam dos dados referentes aos
dados de cada um dos membros analisados, de modo que somente com a análise de um
membro torna-se impossível chegar a essas matrizes dependentes dos demais. Logo, as
matrizes serão especificada ao início de cada etapa como forma de observação para este
detalhe.

ANÁLISE DO MEMBRO 1
A partir do gráfico é possível obter os seguintes dados a respeito do membro 1:
𝐿1 = 4 𝑚
𝐴 = 0,004 𝑚²
𝐸 = 200 000000 𝑘𝑁/𝑚²
𝑁Ó1 = (2, 8)

𝑁Ó2 = (6, 8)

00 – Cálculo iniciais - Membro


Com base nos dados acima, calculou-se valores úteis posteriormente:
𝑥2 − 𝑥1 6 − 2
𝑐𝑜𝑠 𝜃 = = =1
𝐿 4
𝑦2 − 𝑦1 8 − 8
𝑠𝑒𝑛 𝜃 = = =0
𝐿 4
𝐸𝐴
= 200000
𝐿

01 - Matriz de resistência local (k) - Membro


A partir de dados anteriores, calculou-se aa matriz de resistência para o elemento 1:
1 0 −1 0 200000 0 −200000 0
𝐸𝐴 0 0 0 0] = [ 0 0 0 0]
𝑘= [
𝐿 −1 0 1 0 −200000 0 200000 0
0 0 0 0 0 0 0 0

13
02 – Matriz de transformação (T) - Membro
Da definição, obtemos a matriz de transformação para o membro 1:
cos 𝜃 sen 𝜃 0 0 1 0 0 0
𝑇= [ −sen 𝜃 cos 𝜃 0 0 ] = [0 1 0 0]
0 0 cos 𝜃 sen 𝜃 0 0 1 0
0 0 −sen 𝜃 cos 𝜃 0 0 0 1

03 – Matriz de transformação (𝑻𝑻 ) - Membro


Transpondo a matriz de transformação, obtemos sua transposta:
cos 𝜃 −sen 𝜃 0 0 1 0 0 0
𝑇𝑇 = [ sen 𝜃 cos 𝜃 0 0] = [0 1 0 0]
0 0 cos 𝜃 −sen 𝜃 0 0 1 0
0 0 sen 𝜃 cos 𝜃 0 0 0 1

04 – Matriz de rigidez (𝑺) - Estrutura


A partir de um laço (for) e das matrizes de resitência de cada membro, obteu-se a
matriz de rigidez (S) da estrutura em análise
296870 157070 −200000 0
𝑆 = [ 157070 935470 0 0 ]
−200000 0 296870 −157070
0 0 −157070 935470

05 – Deslocamento nodal (𝒅) - Estrutura


A partir da solução do sistma linear formado por (𝑆 𝑑 = 𝑃), foi possível obter a matriz
de deslocamento nodal (d), mostrada abaixo:
0,0016
−0,0007
𝑑=[ ]
0,001
−0,0002

06 – Deslocamento global (𝒗) - Membro


A partir da comparação dos coeficientes dos nós que compõem o membro com os
dos nós presentes na matriz de deslocamento nodal, foi possível estabelecer o
deslocamento global dos nós do membro:
0,0016
−0,0007
𝑣=[ ]
0,001
−0,0002

07 – Deslocamento local (𝒖) - Membro

14
A partir da fórmula (𝑢 = 𝑇 𝑣) foi possível encontrar a matriz de deslocamento local,
mostrada abaixo:
0,0016
−0,0007
𝑢=[ ]
0,001
−0,0002

08 – Força local (𝑸) - Membro


A partir da fórmula (𝑄 = 𝑘 𝑢) foi possível encontrar a matriz de força local, mostrada
abaixo:
127,9035
𝑄=[ 0 ]
−127,9035
0

09 – Força axial (𝑴) - Membro


Conforme foi determinado no livro texto, a força axial de cada membro corresponde
ao valor da primeira linha da matriz de força local (Q). Logo, tem-se:
𝑀 = [127,9035]

10 – Força global (𝑭) - Membro


A partir da fórmula (𝐹 = 𝑇 𝑇 𝑄) foi possível encontrar a matriz de força global,
mostrada abaixo:
127,9035
𝐹=[ 0 ]
−127,9035
0

11 – Reações (R) - Estrutura


A partir da soma das forças globais (F) em cada nó, é possível determinar a matriz
das reações (R):
26,0483
𝑅=[ 180 ]
−206,0483
540

15
3.3.4 Resultados obtidos
A partir da aplicação do método exposto acima em todos os membros da estrutura
de análise, foi possível obter os seguintes resultados:

Deslocamentos nodais (d)


0,0016
−0,0007
𝑑=[ ]
0,001
−0,0002

Forças axiais nos membros (M)


1 127,903
2 121,811
𝑀= 3 −47,3793
4 177,621
[5 222,433 ]

Reações (R)
26,0483
𝑅=[ 180 ]
−206,0483
540

3.3.5 Validação de resultados


Com o propósito de validar os resultados obtido, deve-se verificar se a estrutura está
em equilíbrio por meio das equações mostradas abaixo:

∑ 𝐹𝑋 = 180 + 0 + 26,0483 − 206,048 = 0

∑ 𝐹𝑌 = −360 − 360 + 180 + 540 = 0

∑ 𝑀3 = 2 ∗ 360 + 8 ∗ 180 + 6 ∗ 360 − 8 ∗ 540 = 0

Como a estrutura está em equilíbrio, o resultado encontrado condiz com a realidade.

16
4 Referências bibliográficas

KASSIMALI, Aslam. Matrix analysis of structures. 2 ed. Cengage, 1999. 350 pg.
PEOPLE.DUKE.EDU. The matrix stiffness method for 2d trusses. Disponível em:
<http://people.duke.edu/~hpgavin/cee421/truss-method.pdf>. Acesso em: 05 jul. 2018.

17
Apêndice A – Programa em Matlab

function Script_final
% Modo de uso ///////////////////////////////////////////////////////////

clc
fprintf(" ##### Dados do problema ################################### \n")

% Opcoes ////////////////////////////////////////////////////////////////
analise_especifica = 0;
analisa_desloc = 0;
local_to_global = 0;
mostra_resultados = 1;
mostra_grafico = 1;

% Deficoes///////////////////////////////////////////////////////////////
N_nos_por_elemento = 2;
N_nos = 4;
N_membros = 5;
N_restricoes = 4;
N_GL = N_nos*N_nos_por_elemento-N_restricoes
E = 200*1000000; % kN/m
A = 0.003; % m^22

% Dados /////////////////////////////////////////////////////////////////

% Obrigatórios ///////////////////////////////////////
% NÓ x y ix iy
NOS = [1 2 8 1 2;
2 6 8 3 4;
3 0 0 5 6;
4 8 0 7 8 ]

%MEMBRO N_INI N_FIM L A


MEMBROS = [1 1 2 4 0.004;
2 3 1 4.4721 0.006;
3 3 2 10 0.006;
4 4 1 10 0.006;
5 4 2 4.4721 0.006;]

P = [180;
-360;
0;
-360];

% Outros ////////////////////////////////////////////////////////////////

if (analise_especifica == 1)
v_ini = Analisar(1);
v_fin = Analisar(end);
else
v_ini = 1;
v_fin = size(MEMBROS, 1);
end

% Cálculos //////////////////////////////////////////////////////////////

% Etapa 01 //////////////////////////////////////////
for a=v_ini:v_fin

18
xi = NOS(MEMBROS(a, 2), 2);
yi = NOS(MEMBROS(a, 2), 3);
xf = NOS(MEMBROS(a, 3), 2);
yf = NOS(MEMBROS(a, 3), 3);

ixi = NOS(MEMBROS(a, 2), 4);


iyi = NOS(MEMBROS(a, 2), 5);
ixf = NOS(MEMBROS(a, 3), 4);
iyf = NOS(MEMBROS(a, 3), 5);

A = MEMBROS(a, 5);
L = MEMBROS(a, 4);
cos_o = (xf-xi)/L;
sen_o = (yf-yi)/L;
k = ((E*A)/L) * [1 0 -1 0; % Matriz de resistência local
0 0 0 0;
-1 0 1 0;
0 0 0 0];
T = [cos_o sen_o 0 0; % Matriz de transformação
-sen_o cos_o 0 0;
0 0 cos_o sen_o;
0 0 -sen_o cos_o];
T_t = transpose(T); % Matriz de
K = T_t * k * T; % Matriz de resistência
K_expand = [ixi iyi ixf iyf];
K_expand = [K_expand 0; [K K_expand']];

eval(sprintf("k%d = k;", a))


eval(sprintf("T%d = T;", a))
eval(sprintf("K%d = K;", a))
eval(sprintf("Kexp%d = K_expand;", a))

end

% Etapa 02 //////////////////////////////////////////
S = repmat(0, N_GL);
for a=1:size(MEMBROS, 1)
eval(sprintf("A = Kexp%d;", a))
for a=1:4
for b=1:4
lin = a+1;
col = b;
lin_indice = A(lin, 5);
col_indice = A(1, b);
if (lin_indice <= N_GL && col_indice <= N_GL)
S(lin_indice, col_indice) = S(lin_indice, col_indice)+A(lin,
col);
end
end
end
end

% Etapa 03 //////////////////////////////////////////

S
P = P'
d = [P/S]';

for a=v_ini:v_fin
coef = [NOS(MEMBROS(a, 2), 4);
NOS(MEMBROS(a, 2), 5);
NOS(MEMBROS(a, 3), 4);

19
NOS(MEMBROS(a, 3), 5)];

v = [0; 0; 0; 0];

for b=1:4
if(coef(b)<= N_GL)
v(b)=d(coef(b));
end
end

eval(sprintf("coef%d = coef;", a))


eval(sprintf("v%d = v;", a))
eval(sprintf("u%d = T%d * v;", a, a))
eval(sprintf("Q%d = k%d * u%d;", a, a, a))
eval(sprintf("F%d = transpose(T%d) * Q%d;", a, a, a))
end

% Etapa 04 /////////////////////////////////////////
R = repmat(0, 1, N_restricoes)';
L = [N_GL+1:N_restricoes+N_GL];
R = [L' R];
for a=v_ini:v_fin
eval(sprintf("C_tmp = coef%d;", a))
eval(sprintf("F_tmp = F%d;", a))
for b=1:4 % coef
for c=1:size(R, 1) %R
if (C_tmp(b) == R(c, 1))
R(c, 2) = R(c, 2)+F_tmp(b);
end
end
end
end

R = R(:, 2);

% Gráficos //////////////////////////////////////////////////////////

if (mostra_grafico == 1)
hold on
axis([min(NOS(:, 2))-2 max(NOS(:, 2))+2 min(NOS(:, 3))-2 max(NOS(:,
3))+2])
plot(NOS(:, 2), NOS(:, 3), 'x', 'MarkerEdgeColor','r')
for a=1:size(MEMBROS, 1)
p1 = [NOS(MEMBROS(a, 2), 2) NOS(MEMBROS(a, 2), 3)];
p2 = [NOS(MEMBROS(a, 3), 2) NOS(MEMBROS(a, 3), 3)];
pontos = [p1; p2];
plot(pontos(:, 1), pontos(:, 2), 'b')
end
end

% Resultados ////////////////////////////////////////////////////////////

if (mostra_resultados == 1)
for a=v_ini:v_fin
fprintf(" ##### Resultados para o membro %d: ########################
\n", a)
fprintf(" -> Resultados locais _________________\n")
eval(sprintf("coef%d", a))
eval(sprintf("k%d", a))
eval(sprintf("u%d", a))
eval(sprintf("Q%d", a))

20
fprintf("Força axial do membro: %g\n\n", eval(sprintf("Q%d(1)",
a)))
fprintf(" -> Resultados globais ________________\n")
eval(sprintf("K%d", a))
eval(sprintf("F%d", a))
eval(sprintf("v%d", a))
end

fprintf(" ##### Resultados para a estrutura: ########################


\n")
S
d
P = P'
R
end
end

21

You might also like