Table Of ContentUM 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:Programação orientada a objetos. 2. Método dos elementos . 5.2.1 Reséiduos Ponderados para o Problema Fundamental . 89 agora podemos aplicar as condiçc oes de contorno u = u em Γ1 e p = p em Γ2 no sistema