Análise de Estruturas Tridimensionais: Desenvolvimento de ... ?· 4.2 Um elemento de viga plano ligado…

Download Análise de Estruturas Tridimensionais: Desenvolvimento de ... ?· 4.2 Um elemento de viga plano ligado…

Post on 14-Nov-2018

213 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

<ul><li><p>Gilson Fujii </p><p>Anlise de Estruturas Tridimensionais: Desenvolvimento de uma Ferramenta Computacional </p><p> Orientada para Objetos </p><p>Dissertao apresentada junto ao Departamento de Engenharia de Estruturas e Fundaes da Escola Politcnica da Universidade de So Paulo, como parte dos requisitos para obteno do ttulo de Mestre em Engenharia Civil </p><p>So Paulo 1997 </p></li><li><p>Gilson Fujii </p><p>Anlise de Estruturas Tridimensionais: Desenvolvimento de uma Ferramenta Computacional </p><p> Orientada para Objetos </p><p>Dissertao apresentada junto ao Departamento de Engenharia de Estruturas e Fundaes da Escola Politcnica da Universidade de So Paulo, como parte dos requisitos para obteno do ttulo de Mestre em Engenharia Civil rea de concentrao: Engenharia de Estruturas Orientador: Prof. Dr. Tlio Nogueira Bittencourt </p><p>So Paulo 1997 </p></li><li><p>Aos meus queridos pais, Marie e Tiaki, por todo apoio e incentivo transmitidos. </p><p>AGRADECIMENTOS </p></li><li><p>Ao meu orientador e amigo Prof. Dr. Tlio Nogueira Bittencourt, pelo incentivo </p><p>transmitido e pela orientao prestada ao desenvolvimento dos trabalhos. </p><p>Aos membros da Comisso Examinadora deste trabalho, pela ateno. </p><p>Aos colegas Odulpho, Clio, Carlos, Oscar, Janurio ... enfim, a todos os colegas de </p><p>ps-graduao cujos o auxlio, a amizade e o convvio, contriburam de forma valiosa </p><p>para a realizao deste trabalho. </p><p>Aos amigos do Departamento de Engenharia de Estruturas e Fundaes da Escola </p><p>Politcnica da USP, que de maneira direta ou indireta contriburam para a realizao </p><p>deste trabalho. </p><p>Ao Laboratrio de Mecnica Computacional, ao Departamento de Engenharia de </p><p>Estruturas e Fundaes da Escola Politcnica da Universidade de So Paulo, por todos </p><p>os recursos colocados disposio. </p><p> CAPES pelo apoio financeiro. </p></li><li><p>Resumo </p><p>Esta dissertao tem por objetivo descrever o desenvolvimento de uma ferramenta </p><p>computacional orientada para objetos a ser utilizada na anlise de estruturas </p><p>tridimensionais. Essa ferramenta computacional baseada no Mtodo dos Elementos </p><p>Finitos e implementada atravs de conceitos da programao orientada para objetos. </p><p>A escolha deste tipo de filosofia de programao, bem como a da linguagem de </p><p>programao C++, deve-se, principalmente, s suas caractersticas de extensibilidade e </p><p>adaptatividade de cdigo computacional. </p><p>Um programa que possui uma estrutura orientada para objetos permite uma completa </p><p>reutilizao de cdigo. A implementao de novas classes torna-se uma tarefa mais fcil </p><p>e rpida, conseqentemente outros tipos de anlise envolvendo problemas dinmicos </p><p>ou processamento paralelo podem ser prontamente adicionados. </p><p>Particularmente, nesta dissertao descrevem-se as implementaes de elementos de </p><p>viga e de trelia, elementos de placa e funes para imposio de vinculaes internas </p><p>nodais. </p><p>Para validarem-se os resultados obtidos pela ferramenta aqui apresentada foram </p><p>utilizados problemas para os quais solues analticas so conhecidas ou solues </p><p>numricas aproximadas so geradas atravs de programas comerciais que utilizam </p><p>tcnicas convencionais. </p><p>As solues obtidas atravs da ferramenta desenvolvida so ento comparadas quelas </p><p>descritas acima. </p></li><li><p>Abstract </p><p>This dissertation describes the development of an object oriented computer tool for the </p><p>analysis of 3D structures. This computer tool is based on the Finite Element Method </p><p>which is implemented through the use of object oriented programming concepts. </p><p>The choice of this type of programming philosophy as well as the C++ programming </p><p>language is due to features such as extensibility and adaptability of computer code. </p><p>Because a program having an object oriented structure enables a complete reutilization </p><p>of code, the implementation of new classes becomes a faster and easier task. </p><p>Consequently, other types of analysis involving dynamic problems or parallel processing </p><p>can be nicely added. </p><p>Particularly, in this dissertation the implementations of beam and truss elements, plate </p><p>elements and functions for the imposition of nodal constraints are described. </p><p>In order to validate the results obtained through the tool presented here, some </p><p>example problems have been employed. For some of these problems closed-form </p><p>solutions are available. For the others, approximate numerical solutions can be </p><p>generated through the use of commercial packages. </p><p>The solutions obtained through the developed tool have been then compared to the </p><p>ones described above. </p></li><li><p>Lista de Figuras </p><p>2.1 Exemplo 1 ...................................................................................................................................07 </p><p>2.2 Exemplo 2 ...................................................................................................................................11 </p><p>2.3 Exemplo 3 ...................................................................................................................................13 </p><p>3.1 Interface do programa FEMOOP..........................................................................................18 </p><p>3.2 Composio do pacote de anlise estrutural .........................................................................19 </p><p>3.3 Interface do programa B_Ed -Building Editor ........................................................................19 </p><p>3.4 Interface do programa Pos_3d................................................................................................20 </p><p>3.5 Interface do programa MVIEW..............................................................................................21 </p><p>3.6 Interface do programa Ciclo ....................................................................................................22 </p><p>3.7 Comunicao entre as classes do FEMOOP .......................................................................22 </p><p>3.8 Hierarquia de classes para os modelos de anlise.................................................................27 </p><p>3.9 Hierarquia de classes para o modelo constitutivo ................................................................28 </p><p>3.10 Hierarquia de classes para os tipos de controle ...................................................................29 </p><p>3.11 Hierarquia de classes para gerenciar o programa.................................................................30 </p><p>3.12 Hierarquia de classes para problemas de autovalores .........................................................30 </p><p>3.13 Hierarquia de classes para os elementos ...............................................................................31 </p><p>3.14 Hierarquia de classes para o mtodo dos elementos finitos ..............................................32 </p><p>3.15 Hierarquia de classes para integrao de Gauss...................................................................33 </p><p>3.16 Hierarquia de classes para carregamento nos elementos....................................................35 </p><p>3.17 Hierarquia de classes para os materiais dos elementos.......................................................36 </p><p>3.18 Hierarquia de classes para os ns ...........................................................................................37 </p><p>3.19 Hierarquia de classes para controle de deslocamentos e esforos....................................38 </p><p>3.20 Hierarquia de classes para forma dos elementos .................................................................40 </p><p>3.21 Hierarquia de classes para gerenciar problemas dependentes do tempo.........................41 </p><p>3.22 Fluxo principal de dados do programa .................................................................................42 </p></li><li><p>3.23 Viga engastada ...........................................................................................................................43 </p><p>3.24 Deformada da estrutura ..........................................................................................................46 </p><p>3.25 Chapa engastada........................................................................................................................47 </p><p>3.26 Deformada da estrutura e tenses xx ...................................................................................50 </p><p>4.1 Elemento de viga espacial de Euler-Bernoulli .....................................................................51 </p><p>4.2 Um elemento de viga plano ligado a um elemento quadrilateral plano...........................56 </p><p>4.3. Dois elementos de barra uniforme. A= seo transversal da barra; </p><p> E=mdulo de elasticidade. .....................................................................................................58 </p><p>5.1 Modelos de anlise para elementos de viga e de trelia ........................................................59 </p><p>5.2 Descrio da classe cBeam ........................................................................................................60 </p><p>5.3 Descrio da classe cTruss ........................................................................................................61 </p><p>5.4 Derivaes da classe cElcBar ....................................................................................................61 </p><p>5.5 Descrio da classe cElcBar ......................................................................................................62 </p><p>5.6 Descrio da classe cElcBeam ..................................................................................................63 </p><p>5.7 Descrio da classe cElcTruss ..................................................................................................64 </p><p>5.8 Derivaes da classe cLecBeam................................................................................................64 </p><p>5.9 Descrio da classe cLecBeam..................................................................................................65 </p><p>5.10 Descrio da classe cLecBUnif...............................................................................................66 </p><p>5.11 Descrio da classe cLecBLin.................................................................................................67 </p><p>5.12 Descrio da classe cLecBForc...............................................................................................68 </p><p>5.13 Derivaes da classe cAnmPlate ............................................................................................68 </p><p>5.14 Descrio da classe cAnmPlate ..............................................................................................69 </p><p>5.15 Descrio da classe cPlatBend................................................................................................70 </p><p>5.16 Descrio da classe cPlatShBd................................................................................................70 </p><p>6.1 Trelia Plana.................................................................................................................................74 </p><p>6.2 Foras normais nas barras .........................................................................................................75 </p><p>6.3 Deformada da estrutura .............................................................................................................75 </p><p>6.4 Prtico espacial ............................................................................................................................76 </p><p>6.5 Deformada do prtico................................................................................................................77 </p><p>6.6 Diagramas de foras cortantes no plano XY das barras.......................................................77 </p></li><li><p>6.7 Diagrama de momento fletor no plano XY da barra 1 ........................................................78 </p><p>6.8 Estrutura viga-chapa...................................................................................................................79 </p><p>6.9 Estrutura deformada...................................................................................................................80 </p><p>6.10 Estrutura composta de elementos placa................................................................................82 </p><p>6.11 Deformada da estrutura de elementos de placa...................................................................83 </p><p>6.12 Edifcio .......................................................................................................................................84 </p><p>6.13 Deformada do edifcio .............................................................................................................90 </p></li><li><p>Lista de Smbolos </p><p>K = matriz de rigidez </p><p>E = mdulo de Elasticidade do material </p><p>A = rea da seo transversal de uma barra </p><p>Iy = momento de inrcia em relao ao eixo y </p><p>Iz = momento de inrcia em relao ao eixo z </p><p>Q = fora cortante </p><p>M = momento fletor </p><p>u = vetor de deslocamentos nodais </p><p>F = vetor de esforos nodais </p><p>v = coeficiente de Poisson </p><p>e = espessura do elemento plano </p><p>l = comprimento de barra G = mdulo de cisalhamento </p><p> J = inrcia toro </p><p>B = matriz de compatibilidade de deslocamentos ( deformao-deslocamento ) </p><p>C = matriz constitutiva </p><p> = potencial de energia total </p><p> = vetor dos multiplicadores de Lagrange </p></li><li><p> 1</p><p>Captulo 1 </p><p> Introduo </p><p>No mbito da Mecnica das Estruturas um dos mtodos utilizados para discretizao de </p><p>um problema contnuo e conseqente obteno de solues numricas aproximadas </p><p>o Mtodo dos Elementos Finitos. Esse mtodo tem sido uma das ferramentas de </p><p>soluo numrica mais utilizadas na Engenharia de Estruturas, principalmente, devido </p><p>sua eficincia e sua aplicabilidade. No Mtodo dos Elementos Finitos procura-se </p><p>subdividir o domnio em subdomnios (elementos), ligados atravs dos ns e nesses ns </p><p>so definidos os graus de liberdade generalizados a serem determinados. </p><p>Dentro de certas condies de convergncia, os resultados fornecidos pelo Mtodo dos </p><p>Elementos Finitos tornam-se geralmente to mais precisos quanto maior for o </p><p>refinamento da malha, refinamento que no limite conduziria soluo exata do </p><p>problema. Ou seja, quanto maior o nmero de pontos ou quanto mais discretizada for a </p><p>malha, mais prximo se estar da soluo exata. Obviamente, deve-se buscar um </p><p>nmero finito de elementos que leve a uma soluo satisfatria dentro da preciso </p><p>desejada e do tempo esperado. </p><p>Porm, ao passo que novas formulaes e novos tipos de elementos vo surgindo, e at </p><p>mesmo com a possibilidade da aplicao do Mtodo dos Elementos Finitos em novas </p><p>reas, h a necessidade de que os programas computacionais possam ser adaptados de </p><p>maneira fcil e rpida. Para que isso ocorra, deve-se buscar o mximo reaproveitamento </p><p>de cdigo, se possvel apenas com o acrscimo das novas funcionalidades sem que haja </p><p>alterao substancial no cdigo fonte original. </p><p>Este trabalho se insere neste contexto. O objetivo apresentar uma forma de </p><p>implementao do Mtodo dos Elementos Finitos que atenda principalmente aos </p></li><li><p> 2</p><p>requisitos de reutilizao e extensibilidade do cdigo, servindo de base para outras </p><p>linhas de desenvolvimento. </p><p>Para atender a tais objetivos que se procurou utilizar a linguagem de programao </p><p>C++, pois ela possui certas funcionalidades que auxiliam a organizao e estruturao </p><p>do programa. Essas funcionalidades permitem uma maior facilidade em futuras </p><p>implementaes e manutenes do cdigo. Essas funcionalidades foram projetadas, </p><p>justamente, para permitir que a implementao de programas orientados para objetos se </p><p>tornasse uma tarefa mais simples. Salienta-se que a linguagem de programao C++ </p><p>porttil, ou seja, pode ser utilizada tanto em microcomputadores PC's como em </p><p>estaes de trabalho, desde que se atenha a utilizar recursos j incorporados na </p><p>linguagem padro. </p><p>Este trabalho est organizado da seguinte maneira: o captulo 2 contm as definies, </p><p>principais caractersticas e formas de aplicao da linguagem de programao orientada </p><p>para objetos. No captulo 3 introduz-se o programa FEMOOP (Finite Element Method </p><p>Object Oriented Programming). Esse programa serviu como base para o desenvolvimento </p><p>deste trabalho. No captulo 4 so apresentadas as principais funcionalidades adicionadas </p><p>ao programa, por meio de uma breve explicao terica. No captulo 5 apresentam-se as </p><p>implementaes e sua forma de insero no programa existente. No captulo 6 alguns </p><p>exemplos so apresentados de modo a demonstrar os tipos de estruturas capazes de </p><p>serem analisadas pelo programa. No captulo 7 so apresentadas as concluses finais e </p><p>sugestes para a continuidade deste trabalho. </p></li><li><p> 3</p><p>Captulo 2 </p><p>A Programao Orientada para Objetos: Conceitos Fundamentais e Introduo </p><p> Linguagem de Programao C++ </p><p> 2.1 Introduo </p><p>Neste captulo sero apresentados resumidamente os principais aspectos e as principais </p><p>caractersticas de uma linguagem de programao orientada para objetos. Procurar-se- </p><p>ainda apresentar uma forma de organizao de um programa para melhor </p><p>aproveitamento das funcionalidades da linguagem C++. Convm salientar que o </p><p>conhecimento da linguagem de programao C [Kern 88] necessrio para melhor </p><p>compreenso deste captulo. Para um estudo mais aprofundado da linguagem e suas </p><p>caractersticas recomenda-se consultar a bibliografia relacionada [Dawe 84], [Huiz 96] e </p><p>[Weisk 92]. </p><p>2.2 Origens </p><p>A programao baseada em objetos foi discutida pela primeira vez no final dos anos </p><p>sessenta pela comunidade que utilizava a linguagem SIMULA. No incio dos anos </p><p>setenta, o paradigma da programao orientada para objetos era uma parte importante </p><p>da linguagem SMALLTALK. Enquanto isso, o restante da comunidade de </p><p>desenvolvimento de software girava em torno de linguagens como COBOL e </p><p>FORTRAN, alm de utilizar mtodos de decomposio funcional para tratar dos </p></li><li><p> 4</p><p>problemas de projeto e implementao. Havia pouca discusso sobre programao </p><p>baseada em objetos. </p><p>Esse quadro sofreu, na dcada passada, quatro modificaes importantes [Rumb 94]: </p><p> os conceitos bsicos da abordagem baseada em objetos no campo do software </p><p>tiveram duas dcadas para amadurecerem. A ateno dos programadores foi sendo </p><p>gradualmente deslocada para consideraes sobre projeto e anlise de softwares; </p><p> a tecnologia bsica para a construo de sistemas tornou-se muito mais eficiente. As </p><p>concepes a respeito do projeto passaram a ser influenciadas por idias </p><p>preconcebidas sobre como deveria ser escrito o cdigo. As idias sobre a </p><p>codificao, por sua vez, ainda eram fortemente influenciadas pela linguagem de </p><p>programao estruturada, pois as linguagens disposio eram ASSEMBLER e </p><p>FORTRAN. Com o surgimento das linguagens PASCAL, PL/1 e ALGOL, as idias </p><p>sobre a codificao comearam a sofrer transformaes. Ainda assim, mesmo com </p><p>linguagens como COBOL ou C padro, era difcil pensar em codificao baseada </p><p>em objetos, panorama que mudou com o aparecimento das linguagens C