UM SISTEMA DE MODELAGEM ESTRUTURAL ORIENTADO A OBJETOS Paulo Aristarco Pagliosa Teseapresentadaa(cid:18)EscoladeEngenhariade S~ao Carlos, da Universidade de S~ao Paulo, como parte dos requisitos para obten(cid:24)c~ao do t(cid:19)(cid:16)tulo de Doutor em Engenharia de Es- truturas ORIENTADOR: Prof. Dr. Jo~ao Batista de Paiva S~ao Carlos 1998 Ficha catalográfica preparada pela Seção de Tratamento da Informação do Serviço de Biblioteca - EESC-USP Pagliosa, Paulo Aristarco P138s Um sistema de modelagem estrutural orientado a objetos / Paulo Aristarco Pagliosa. -- São Carlos, 1998. Tese (Doutorado) -- Escola de Engenharia de São Carlos-Universidade de São Paulo, 1998. Área: Engenharia de Estruturas Orientador: Prof. Dr. João Batista de Paiva 1. Programação orientada a objetos. 2. Método dos elementos finitos. 3. Método dos elementos de contorno. I. Título. A meu (cid:12)lho, Lucas. Agradecimentos Ao meuorientadore amigoJoa~oBatistade Paiva. Muito obrigadopeladisponibilidade em me orientar, de maneira t~ao generosa, nos estudos de assuntos t~ao interessantes. Se sua excel^encia em orienta(cid:24)c~ao tivesse se restringido somente (cid:18)a (cid:19)area t(cid:19)ecnica, ainda assim eu estaria cheio de motivos para dizer muito obrigado. Mas, al(cid:19)em disso, Dr. Paiva me deu orienta(cid:24)c~oes de verdadeiro amigo. Agrade(cid:24)co, tamb(cid:19)em, pela con(cid:12)an(cid:24)ca em mim depositada. Espero que eu possa vir a ter muitas oportunidades de merec^e-la. Ao amigo Humberto Breves Coda. Em muitas situa(cid:24)c~oes interrompi o trabalho do Dr. Coda no SET para tirar du(cid:19)vidas e trocar id(cid:19)eias sobre elementos (cid:12)nitos e de contorno. Em todas elas, sempre aprendi muito. AoscolegasdoDepartamento deComputac(cid:24)~aoeEstat(cid:19)(cid:16)sticadaUniversidade Federal de Mato Grosso do Sul, pela infra-estrutura e apoio constantes. Em particular, aos amigos Marcelo F. Siqueira, F(cid:19)abio H.V. Martinez e Ronaldo Alves Ferrerira. Marcelo possui um gosto por livros t~ao exagerado quanto sua generosidade em emprest(cid:19)a-los. Sobre minha mesa h(cid:19)a mais livros de sua biblioteca particular do que meus pr(cid:19)oprios. Agradec(cid:24)o tamb(cid:19)em pelo programa de impressa~o Post-script de modelos poliedrais, res- pons(cid:19)avel por algumas das (cid:12)guras impressas na primeira parte do texto. Com seu incentivo pessoal, F(cid:19)abio tem tentado, com relativo sucesso, levantar meu ^animo por diversas vezes nos u(cid:19)ltimos tempos. Muito obrigado. Ronaldo, por sua vez, n~ao mediu esforc(cid:24)os para oferecer todas as condi(cid:24)c~oes necess(cid:19)arias para a conclus~ao do trabalho. Sou grato, igualmente, ao Prof. Celso Vit(cid:19)orio Pierezan. Foi durante sua gesta~o como reitor da UFMS que tive oportunidade de me afastar de minhas atividades acad^emicas e me dedicar exclusivamente ao doutorado. Aos amigos do Departamento de Engenharia de Estruturas da Escola de Enge- nharia de S~ao Carlos, n~ao somente por desempenharem suas atividades com m(cid:19)axima compet^encia mas, sobretudo, pelas cont(cid:19)(cid:16)nuas demonstra(cid:24)c~oes de boa vontade. Quando estou no SET, sinto-me realmente em casa. Em especial, gostariade agradecer a Maria NadirMinatel, RosiAparecidaJord~aoRodrigues, RuiRobertoCasale, Ant^onioValdair Carneiro e Norberto Costardi. Aos queridos amigos de S~ao Carlos, por me cederem, gratuitamente, suas casas, algumas de suas preocupa(cid:24)c~oes e seus inesgot(cid:19)aveis sensos de humor. Obrigado por tudo. A(cid:18) CAPES, pelas bolsas de estudos concedidas. Conteu´ do Lista de Figuras ix Lista de Programas xiv Resumo xv Abstract xvii Parte Um: FUNDAMENTOS 1 1 Introdu(cid:24)c~ao 3 1.1 Problema Fundamental . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 OSW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3 Organizac(cid:24)~ao do Texto . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.4 Notac(cid:24)~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2 O que s~ao Modelos? 19 2.1 Introdu(cid:24)c~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.2 Modelagem Geom(cid:19)etrica . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.2.1 Geometria e Topologia . . . . . . . . . . . . . . . . . . . . . . . 22 2.2.2 Hierarquias em Modelos Geom(cid:19)etricos . . . . . . . . . . . . . . . 22 2.2.3 Modelagem de S(cid:19)olidos . . . . . . . . . . . . . . . . . . . . . . . 24 2.3 Modelagem Matema(cid:19)tica . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.4 Modelagem Meca^nica . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 2.5 Sistemas Computacionais de Modelagem . . . . . . . . . . . . . . . . . 31 2.6 Suma(cid:19)rio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 3 Modelos Geom(cid:19)etricos 33 3.1 Introdu(cid:24)c~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.2 Transforma(cid:24)c~oes Geom(cid:19)etricas . . . . . . . . . . . . . . . . . . . . . . . . 34 3.3 Modelos Gra(cid:19)(cid:12)cos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 3.3.1 Primitivos Gr(cid:19)a(cid:12)cos . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.3.2 Operadores de Modelagem . . . . . . . . . . . . . . . . . . . . . 45 3.4 Modelos de Cascas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 3.5 Modelos de S(cid:19)olidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 ii Conteu(cid:19)do 3.6 Modelos de Decomposic(cid:24)~ao por C(cid:19)elulas . . . . . . . . . . . . . . . . . . 55 3.6.1 Tipos de C(cid:19)elulas . . . . . . . . . . . . . . . . . . . . . . . . . . 56 3.7 Sum(cid:19)ario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 4 Modelos Matem(cid:19)aticos 61 4.1 Introduc(cid:24)~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 4.2 Tens~oes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 4.2.1 Tens~oes Principais . . . . . . . . . . . . . . . . . . . . . . . . . 65 4.3 Deforma(cid:24)c~oes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 4.4 Equa(cid:24)c~oes de Equil(cid:19)(cid:16)brio . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 4.5 Elasticidade Tridimensional . . . . . . . . . . . . . . . . . . . . . . . . 72 4.6 Modelo Matem(cid:19)atico Geral . . . . . . . . . . . . . . . . . . . . . . . . . 74 4.6.1 Solu(cid:24)c~ao Fundamental de Kelvin . . . . . . . . . . . . . . . . . . 76 4.7 Modelos Simpli(cid:12)cados . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 4.7.1 Membranas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 4.7.2 Placas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 4.8 Sum(cid:19)ario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 5 An(cid:19)alise Num(cid:19)erica de Modelos Estruturais 85 5.1 Introduc(cid:24)~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 5.2 Res(cid:19)(cid:16)duos Ponderados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 5.2.1 Res(cid:19)(cid:16)duos Ponderados para o Problema Fundamental . . . . . . . 89 5.3 Princ(cid:19)(cid:16)pio dos Trabalhos Virtuais . . . . . . . . . . . . . . . . . . . . . . 92 5.4 M(cid:19)etodo dos Elementos Finitos . . . . . . . . . . . . . . . . . . . . . . . 93 5.4.1 Esquema Computacional . . . . . . . . . . . . . . . . . . . . . . 97 5.5 Equa(cid:24)c~oes Integrais de Contorno . . . . . . . . . . . . . . . . . . . . . . 97 5.6 M(cid:19)etodo dos Elementos de Contorno . . . . . . . . . . . . . . . . . . . . 101 5.6.1 Esquema Computacional . . . . . . . . . . . . . . . . . . . . . . 103 5.7 Sum(cid:19)ario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 6 Modelos Mec^anicos 105 6.1 Introduc(cid:24)~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 6.2 Elementos Finitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 6.2.1 Elemento Finito de Placa . . . . . . . . . . . . . . . . . . . . . 106 6.2.2 Elemento Finito de Membrana . . . . . . . . . . . . . . . . . . . 110 6.2.3 Elemento Finito de Casca . . . . . . . . . . . . . . . . . . . . . 114 6.3 Elementos de Contorno . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 6.3.1 Elemento Quadrilateral Linear . . . . . . . . . . . . . . . . . . . 116 6.3.2 Elemento Quadrilateral Quadra(cid:19)tico . . . . . . . . . . . . . . . . 118 6.4 Gera(cid:24)c~ao de Malhas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 6.5 Sum(cid:19)ario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 7 Visualiza(cid:24)c~ao 131 7.1 Introduc(cid:24)~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 7.2 Da Modelagem (cid:18)a Visualiza(cid:24)c~ao . . . . . . . . . . . . . . . . . . . . . . . 132 7.3 Computa(cid:24)c~ao Gr(cid:19)a(cid:12)ca Tridimensional . . . . . . . . . . . . . . . . . . . . 135 7.4 Algoritmos de Visualiza(cid:24)c~ao . . . . . . . . . . . . . . . . . . . . . . . . . 149 7.4.1 Visualiza(cid:24)c~ao de Escalares . . . . . . . . . . . . . . . . . . . . . . 151 Conteu(cid:19)do iii 7.4.2 Visualiza(cid:24)c~ao de Vetores . . . . . . . . . . . . . . . . . . . . . . . 155 7.5 Suma(cid:19)rio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 8 O que s~ao Objetos? 159 8.1 Introdu(cid:24)c~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 8.2 Conceitos B(cid:19)asicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 8.2.1 Classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 8.2.2 Inst^ancia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 8.2.3 Mensagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 8.2.4 Constru(cid:24)c~ao e Destrui(cid:24)c~ao de Objetos em C++ . . . . . . . . . . 163 8.3 Propriedades da Orienta(cid:24)c~ao a Objetos . . . . . . . . . . . . . . . . . . 164 8.3.1 Encapsulamento . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 8.3.2 Heran(cid:24)ca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 8.3.3 Polimor(cid:12)smo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 8.4 Suma(cid:19)rio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 Parte Dois: OBJECT STRUCTURAL WORKBENCH 173 9 Construindo Aplica(cid:24)c~oes com OSW 175 9.1 Introdu(cid:24)c~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 9.2 O que (cid:19)e uma Aplica(cid:24)c~ao de Modelagem? . . . . . . . . . . . . . . . . . . 176 9.2.1 Montando o Projeto de uma Aplica(cid:24)c~ao . . . . . . . . . . . . . . 178 9.2.2 Aplica(cid:24)c~oes de Modelagem Orientadas a Objetos . . . . . . . . . 179 9.3 Visa~o Geral das Classes de OSW . . . . . . . . . . . . . . . . . . . . . 180 9.4 De(cid:12)nindo a Aplicac(cid:24)~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 9.5 De(cid:12)nindo o Documento da Aplicac(cid:24)~ao . . . . . . . . . . . . . . . . . . . 188 9.5.1 Criando um Novo Documento . . . . . . . . . . . . . . . . . . . 190 9.5.2 Salvando um Documento . . . . . . . . . . . . . . . . . . . . . . 190 9.5.3 Abrindo um Documento . . . . . . . . . . . . . . . . . . . . . . 191 9.5.4 Fechando um Documento . . . . . . . . . . . . . . . . . . . . . 191 9.5.5 Adicionando e Removendo Modelos do Documento . . . . . . . 191 9.5.6 Adicionando e Removendo Cenas ao Documento . . . . . . . . . 192 9.6 De(cid:12)nindo os Modelos do Documento . . . . . . . . . . . . . . . . . . . 193 9.7 De(cid:12)nindo as Cenas do Documento . . . . . . . . . . . . . . . . . . . . . 195 9.7.1 Adicionando e Removendo Atores de uma Cena . . . . . . . . . 196 9.7.2 Adicionando e Removendo Luzes de uma Cena . . . . . . . . . . 197 9.7.3 Adicionando e Removendo C^ameras de uma Cena . . . . . . . . 199 9.7.4 Adicionado e Removendo Vistas de uma Cena . . . . . . . . . . 199 9.8 De(cid:12)nindo as Vistas das Cenas do Documento . . . . . . . . . . . . . . 199 9.8.1 De(cid:12)nindo os Comandos de uma Vista . . . . . . . . . . . . . . . 200 9.8.2 Executando os Comandos de um Vista . . . . . . . . . . . . . . 205 9.9 Usando Fontes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 9.10 Usando Filtros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 9.11 Usando Mapeadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 9.12 De(cid:12)nindo Elementos Finitos . . . . . . . . . . . . . . . . . . . . . . . . 212 9.13 De(cid:12)nindo Analisadores . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 9.13.1 Iniciando a An(cid:19)alise . . . . . . . . . . . . . . . . . . . . . . . . . 215 iv Conteu(cid:19)do 9.13.2 Montando o Sistema de Equa(cid:24)c~oes . . . . . . . . . . . . . . . . . 216 9.13.3 Resolvendo o Sistema de Equa(cid:24)c~oes . . . . . . . . . . . . . . . . 217 9.13.4 Terminando a Ana(cid:19)lise . . . . . . . . . . . . . . . . . . . . . . . 217 9.14 Sum(cid:19)ario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 10 As Bibliotecas de Classes 219 10.1 Fun(cid:24)c~oes Globais de OSW . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Fun(cid:24)c~ao IsEqual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Fun(cid:24)c~ao IsGreater . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Fun(cid:24)c~ao IsGreaterEqual . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Fun(cid:24)c~ao IsLesser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Fun(cid:24)c~ao IsLesserEqual . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Fun(cid:24)c~ao IsNegative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 Fun(cid:24)c~ao IsPositive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 Fun(cid:24)c~ao IsZero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 Fun(cid:24)c~ao ToDegrees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 Fun(cid:24)c~ao ToRadians . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 10.2 Macros de OSW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 Macro COMMAND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 Macro COMMAND AND ID . . . . . . . . . . . . . . . . . . . . . . . 221 Macro DECLARE COMMAND TABLE . . . . . . . . . . . . . . . . . 222 Macro DECLARE ERROR MESSAGE TABLE . . . . . . . . . . . . . 222 Macro DECLARE KEYWORD TABLE . . . . . . . . . . . . . . . . . 222 Macro DEFINE COMMAND TABLEx . . . . . . . . . . . . . . . . . . 222 Macro DEFINE ERROR MESSAGE TABLE . . . . . . . . . . . . . . 224 Macro DEFINE KEYWORD TABLE . . . . . . . . . . . . . . . . . . . 224 Macro END COMMAND TABLE . . . . . . . . . . . . . . . . . . . . . 224 Macro END ERROR MESSAGE TABLE . . . . . . . . . . . . . . . . 224 Macro END KEYWORD TABLE . . . . . . . . . . . . . . . . . . . . . 224 Macro ERROR MESSAGE . . . . . . . . . . . . . . . . . . . . . . . . 224 Macro KEYWORD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 10.3 Classes de OSW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 Classe t2DCell. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 Classe t2DExtents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 Classe t2DMeshGenerator . . . . . . . . . . . . . . . . . . . . . . . . . 228 Classe t3DTransfMatrix . . . . . . . . . . . . . . . . . . . . . . . . . . 231 Classe t3DVector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 Classe t3N2DCell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235 Classe t3NShell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 Classe t4N2DCell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 Classe tActor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238 Classe tApplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 Classe tBandSystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 Classe tBE4NQuad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 Classe tBESolidMeshGenerator . . . . . . . . . . . . . . . . . . . . . . 243 Classe tBESolver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 Classe tBoundaryEdgesFilter . . . . . . . . . . . . . . . . . . . . . . . . 245 Classe tBoundaryElement . . . . . . . . . . . . . . . . . . . . . . . . . 245
Description: