simulaÇÃo numÉrica e visualizaÇÃo 3d do escoamento tridimensional, em tempo quase-real, sobre...
TRANSCRIPT
SIMULAÇÃO NUMÉRICA E SIMULAÇÃO NUMÉRICA E VISUALIZAÇÃO 3D DO VISUALIZAÇÃO 3D DO
ESCOAMENTO ESCOAMENTO TRIDIMENSIONAL, EM TRIDIMENSIONAL, EM
TEMPO QUASE-REAL, SOBRE TEMPO QUASE-REAL, SOBRE OBJETOS, UTILIZANDO O OBJETOS, UTILIZANDO O SOFTWARE ABERTO VTKSOFTWARE ABERTO VTK
Aluno: Renato Cesar PompeuAluno: Renato Cesar PompeuOrientador: Sergio ScheerOrientador: Sergio Scheer
CESEC - 2008CESEC - 2008
UNIVERSIDADE FEDERAL DO PARANÁUNIVERSIDADE FEDERAL DO PARANÁPrograma de Pós-Graduação em Métodos Numéricos em EngenhariaPrograma de Pós-Graduação em Métodos Numéricos em Engenharia
ObjetivosObjetivos• Geral Geral
– Construção de um “túnel de vento virtual”, Construção de um “túnel de vento virtual”, para visualização em tempo quase-real, para visualização em tempo quase-real, usando os métodos numéricos.usando os métodos numéricos.
• EspecíficosEspecíficos– Criar um software acessível (baixo custo);Criar um software acessível (baixo custo);– Visualização interativa 2D e 3D;Visualização interativa 2D e 3D;– Estudo de caso;Estudo de caso;– Uso de equipamentos de imersão;Uso de equipamentos de imersão;
Pompeu 2008
MotivaçãoMotivação• Dificuldade de soluções analíticas para as equações Dificuldade de soluções analíticas para as equações
de Navier-Stokes;de Navier-Stokes;• Ensaios experimentais (testes em túneis de vento) Ensaios experimentais (testes em túneis de vento)
caros;caros;• Alguns fenômenos não são passíveis de reprodução Alguns fenômenos não são passíveis de reprodução
em laboratório, mesmo em escala reduzida;em laboratório, mesmo em escala reduzida;• Softwares existentes na casa das dezena de Softwares existentes na casa das dezena de
milhares de dólares;milhares de dólares;• Aumento da capacidade de processamento dos Aumento da capacidade de processamento dos
computadores pessoais;computadores pessoais;• Uso da Visualização Científica Interativa;Uso da Visualização Científica Interativa;• Uso de métodos Numéricos.Uso de métodos Numéricos.
Pompeu 2008
Comparação entre técnicas de Comparação entre técnicas de soluçãosolução
TécnicaTécnica VantagensVantagens DesvantagensDesvantagensExperimentalExperimental •Mais RealistaMais Realista •Equipamento exigidoEquipamento exigido
•Problemas de escalaProblemas de escala•Dificuldades de mediçãoDificuldades de medição•Custo operacionalCusto operacional
TeóricaTeórica •Mais geralMais geral•Fórmula fechadaFórmula fechada
•Restrita a geometrias e Restrita a geometrias e processos físicos simplesprocessos físicos simples•Geralmente restrita a Geralmente restrita a problemas linearesproblemas lineares
NuméricaNumérica •Não há restrição à Não há restrição à linearidadelinearidade•Geometria e Geometria e processos processos complicadoscomplicados•Evolução temporal Evolução temporal do processodo processo
•Erros de truncamentoErros de truncamento•Prescrição das condições Prescrição das condições de contorno apropriadasde contorno apropriadas•Custos computacionaisCustos computacionais
Pompeu 2008
Etapas para a solução Etapas para a solução numéricanumérica
• Modelar a física do problema (determinar quais Modelar a física do problema (determinar quais as grandezas físicas – temperatura, pressão, as grandezas físicas – temperatura, pressão, densidade – e como o afetam);densidade – e como o afetam);
• Elaborar um modelo matemático;Elaborar um modelo matemático;• Verificar as equações governantes;Verificar as equações governantes;• Discretizar;Discretizar;• Criar um sistema de equações algébricas;Criar um sistema de equações algébricas;• Resolver este sistema;Resolver este sistema;• Obter uma solução aproximada;Obter uma solução aproximada;• Analisar e interpretar;Analisar e interpretar;• Ajustar o modelo;Ajustar o modelo;• Repetir até obter uma solução dentro de algum Repetir até obter uma solução dentro de algum
critério de tolerância.critério de tolerância.
Pompeu 2008
Programas existentesProgramas existentes
• FluentFluent• Flow3DFlow3D• PolyflowPolyflow• FidapFidap• GasDynamicsToolGasDynamicsTool• AirpackAirpack• FlomericsFlomerics
Pompeu 2008
Dinâmica dos fluidos Dinâmica dos fluidos computacionalcomputacional
“ “ É um erro pensar que a DFC irá substituir as É um erro pensar que a DFC irá substituir as técnicas experimentais e as análises teóricas. técnicas experimentais e as análises teóricas. Ela permite racionalizar o planejamento dos Ela permite racionalizar o planejamento dos experimentos, por meio da redução do experimentos, por meio da redução do número de horas necessárias em túneis de número de horas necessárias em túneis de vento, por exemplo. Após simular vento, por exemplo. Após simular numericamente diversas configurações e numericamente diversas configurações e entender melhor os fenômenos presentes no entender melhor os fenômenos presentes no escoamento, o projetista pode otimizar o escoamento, o projetista pode otimizar o número e escopo dos testes experimentais.” número e escopo dos testes experimentais.” Fortuna, A. de OliveiraFortuna, A. de Oliveira
Pompeu 2008
Equações diferenciais Equações diferenciais parciaisparciais
• Categorias:Categorias:– ElípticasElípticas– ParabólicasParabólicas– HiperbólicasHiperbólicas
• Fenômenos físicos:Fenômenos físicos:– Estacionários (permanentes)Estacionários (permanentes)– TransientesTransientes
Pompeu 2008
Equações diferenciais Equações diferenciais parciaisparciais
• Escoamentos de fluidos imcompressíveis, Escoamentos de fluidos imcompressíveis, invíscidos e irrotacionais (escoamentos invíscidos e irrotacionais (escoamentos potenciais) são regidos pela Equação de potenciais) são regidos pela Equação de Laplace (Elíptica);Laplace (Elíptica);
• A equação transiente de difusão de calor A equação transiente de difusão de calor é parabólica;é parabólica;
• Vibrações e convecções estão Vibrações e convecções estão relacionadas com equações hiperbólicas;relacionadas com equações hiperbólicas;
Pompeu 2008
Métodos NuméricosMétodos Numéricos
• Diferenças finitasDiferenças finitas• Volumes finitosVolumes finitos
Pompeu 2008
VisualizaçãoVisualização
• Programação em C++Programação em C++• Borland Builder C++Borland Builder C++• Uso de bibliotecas e softwares objeto-Uso de bibliotecas e softwares objeto-
orientados para computação gráfica orientados para computação gráfica (OpenGl, VTK)(OpenGl, VTK)
Pompeu 2008
VTKVTK
• Visualization ToolKit (VTK) é um software Visualization ToolKit (VTK) é um software 3D aberto ;3D aberto ;
• Disponível gratuitamente para o sistema Disponível gratuitamente para o sistema de computação gráfica, processamento de de computação gráfica, processamento de imagem e visualização;imagem e visualização;
• www.vtk.org• Grupos de discussão e apoio.Grupos de discussão e apoio.
Pompeu 2008
Trabalho realizadoTrabalho realizado • Equação de LaplaceEquação de Laplace
Pompeu 2008
02
2
2
2
2
2
zyx
• Equação Equação discretizadadiscretizada
0)(
2)(
2)(
22
1,,,,1,,2
,1,,,,1,2
,,1,,,,1
yyxkjikjikjikjikjikjikjikjikji
Trabalho realizadoTrabalho realizado
Solução geral :Solução geral :
Pompeu 2008
61,,1,,,1,,1,,,1,,1
,,
kjikjikjikjikjikjikji
Trabalho realizadoTrabalho realizado • 26 condições de contorno26 condições de contorno
Pompeu 2008
Caso geral
1ª Condição Solução:
62 1,,1,,,1,,1,,,1
,,
kjikjikjikjikjikji
19ª Condição Solução: 6
222 1,,,1,,,1,,
kjikjikji
kji
61,,1,,,1,,1,,,1,,1
,,
kjikjikjikjikjikjikji
Trabalho realizadoTrabalho realizado
Pompeu 2008
•Integração de Runge KuttaIntegração de Runge Kutta
32101 226
KKKKhXX kk
32101 226
MMMMhYY kk
32101 226
NNNNhZZ kk
xVK 0
yVM 0
zVN 0
0001 2
,2
,2
NhZMhYKhXVK kkkx
1112 2
,2
,2
NhZMhYKhXVK kkkx
2223 ,, hNZhMYhKXVK kkkx
0001 2
,2
,2
NhZMhYKhXVM kkky
1112 2
,2
,2
NhZMhYKhXVM kkky
2223 ,, hNZhMYhKXVM kkky
0001 2
,2
,2
NhZMhYKhXVN kkkz
1112 2
,2
,2
NhZMhYKhXVN kkkz
2223 ,, hNZhMYhKXVN kkkz
Trabalho realizadoTrabalho realizado
Pompeu 2008
•Interpolação TrilinearInterpolação Trilinear
Interpolação Linear
Interpolação Trilinear
Trabalho realizadoTrabalho realizado
Pompeu 2008
•VisualizaçãoVisualização
Borland C++ Builder 6.0Borland C++ Builder 6.0
Trabalho realizadoTrabalho realizado • EsferaEsfera
Pompeu 2008
vtkSphereSource *sphere = vtkSphereSource::New();vtkSphereSource *sphere = vtkSphereSource::New(); sphere->SetThetaResolution(30);sphere->SetThetaResolution(30); sphere->SetPhiResolution(15);sphere->SetPhiResolution(15); sphere->SetRadius(raio-0.2);sphere->SetRadius(raio-0.2); sphere->SetCenter(EsferaCentroX, EsferaCentroY, sphere->SetCenter(EsferaCentroX, EsferaCentroY, EsferaCentroZ);EsferaCentroZ);
vtkPolyDataMapper *sphereMapper = vtkPolyDataMapper *sphereMapper = vtkPolyDataMapper::New();vtkPolyDataMapper::New(); sphereMapper->SetInput(sphere->GetOutput());sphereMapper->SetInput(sphere->GetOutput()); sphereMapper->GlobalImmediateModeRenderingOn();sphereMapper->GlobalImmediateModeRenderingOn();
vtkActor *sphereActor = vtkActor::New();vtkActor *sphereActor = vtkActor::New(); sphereActor->SetMapper(sphereMapper);sphereActor->SetMapper(sphereMapper); sphereActor->GetProperty()->SetColor(0.12, 0.27, 0.57);sphereActor->GetProperty()->SetColor(0.12, 0.27, 0.57); sphereActor->GetProperty()->SetAmbient(0.2);sphereActor->GetProperty()->SetAmbient(0.2); sphereActor->GetProperty()->SetDiffuse(0.3);sphereActor->GetProperty()->SetDiffuse(0.3); sphereActor->GetProperty()->SetSpecular(0.8);sphereActor->GetProperty()->SetSpecular(0.8);
VTK1->GetRenderer()->AddActor(sphereActor);VTK1->GetRenderer()->AddActor(sphereActor);
sphere->Delete();sphere->Delete(); sphereMapper->Delete();sphereMapper->Delete(); sphereActor->Delete();sphereActor->Delete();
Trabalho realizadoTrabalho realizado • Linhas de CorrenteLinhas de Corrente
Pompeu 2008
• Runge-KuttaRunge-Kutta• VTKVTK
Trabalho realizadoTrabalho realizado • GradientesGradientes
Pompeu 2008
• IsolinhasIsolinhas
Trabalho realizadoTrabalho realizado • Visualização EstereoscópicaVisualização Estereoscópica
Pompeu 2008
Trabalho realizadoTrabalho realizado • Visão GeralVisão Geral
Pompeu 2008
Trabalhos futurosTrabalhos futuros
• Importação de formas geométricas desenvolvidas Importação de formas geométricas desenvolvidas em aplicativos como 3DS Max;em aplicativos como 3DS Max;
• Visualização do campo de pressões;Visualização do campo de pressões;• Aumento do grid sem comprometer o rendimento Aumento do grid sem comprometer o rendimento
computacional ;computacional ;• Estudo do design do programa;Estudo do design do programa;• Maior interação;Maior interação;• Uso da GPU;Uso da GPU;• Outras visualizações (setas, nuvens de pontos)Outras visualizações (setas, nuvens de pontos)
Pompeu 2008