program Burgers_1Dp_1p0 ! Advecção-difusão unidimensional permanente da quantidade de movimento linear ! de fluido incompressível com ou sem termo fonte ! Versão original 1.0 ( 7 Out 04) ! Versão atual 1.0 ( 7 Out 04) ! Última alteração = 25 Out 04 ! Autor: Carlos Henrique Marchi ! LENA/DEMEC/UFPR, Curitiba, PR ! MODELO MATEMÁTICO (equação diferencial): ! ! Re.u.du/dx = d2u/dx2 + S ! ! Re = número de Reynolds ! u = incógnita ! x = coordenada espacial ! S = termo fonte ! MODELO NUMÉRICO (resumo) ! Método numérico: diferenças finitas ! Malha uniforme unidimensional ! Precisão dupla ! Linguagem Fortran ! Aplicativo usado: Microsoft Developer Studio, Fortran PowerStation 4.0 ! Tipo de projeto: Console Application ! Todas as variáveis são adimensionais ! Variáveis de interesse: ! Velocidade no meio do domínio: u(1/2) ! Velocidade média (u_media) ! Derivada de primeira ordem da velocidade em X=1 (Inclinacao) ! Tipos de aproximações numéricas: ! Termo advectivo: UDS, CDS ou correção adiada ! A velocidade que multiplica o termo advectivo é linearizada nos coeficientes ! Termo difusivo: CDS ! u_media: regra do trapézio ! Inclinacao: UDS-2 ! Condições de contorno de Dirichlet ! Soluções analíticas disponíveis para 5 tipos de termos fontes (S) ! Tipo do sistema de equação: ap(P)*u(P) = aw(P)*u(P-1) + ae(P)*u(P+1) + bp(P) ! Solver: TDMA (iterativo para Re não-nulo) ! Estimativa inicial da solução numérica é igual à solução analítica ! ARQUIVOS envolvidos no programa (extensão a Burgers_1Dp_1p0_): ! variaveis.f90 = define as variáveis do programa ! solver.f90 = resolve o sistema de equações com o método TDMA ! dados.f90 = lê e escreve os dados do programa, e gera a malha ! coeficientes.f90 = calcula os coeficientes e termo fonte ! calculos.f90 = calcula as soluções analítica e numérica ! resultados.f90 = mostra listagem e gráfico dos resultados ! main.f90 = programa principal ! u.dat = dados para os gráficos ! u.gnu = comandos para Wgnuplot, gráfico de u ! E.gnu = comandos para Wgnuplot, gráfico de erro ! leia_me.txt = dados básicos sobre o programa ! ! Outros arquivos ! Burgers_1Dp_1p0.in = dados do programa ! "caso" = saída principal do programa ! "caso".itn = variáveis de interesse ao longo das iterações ! Notepad.exe = editor de arquivos ! Wgnuplot.exe = programa gerador de gráfico !------------------------------------------------------------------------------- Seqüência para compilação dos módulos pela primeira vez após criar o projeto: 1) variaveis.f90 2) solver.f90 3) dados.f90 4) coeficientes.f90 5) calculos.f90 6) resultados.f90 7) main.f90