program Richardson_4p0 ! Analisador e estimador de erros de discretização ! com base na extrapolação de Richardson ! Versão original 1.0 ( 1 Fev 04) ! Versão 2.0 (10 Jan 07) ! Versão 1.1 (30 Abr 07) ! Versão 3.0 (10 Nov 07) ! Versão 3.1 ( 2 Dez 07) ! Versão 3.2 (10 Jul 09) ! Versão 4.0 (18 Fev 13) ! Autor: Carlos Henrique Marchi ! DEMEC/TC/UFPR, Curitiba, PR ! Adaptação para versão 4.0: Márcio André Martins ! MODELO NUMÉRICO (resumo) ! Faz extrapolações simples e múltiplas dos resultados numéricos ! Calcula ordem aparente de resultados extrapolados ou não ! Calcula erro estimado de resultados numéricos com e sem extrapolações, ! com estimadores Richardson, GCI, convergente e multicoeficientes ! Razão de refino de malha (r) constante ou variável; ! método da bisseção para obter ordens aparente com r variável ! Malhas uniformes ! Precisão quádrupla ! Linguagem Fortran 2003 ! Tipo de projeto: Console Application ! Aplicativo usado: Fortran Intel 11.0 ! Os dados devem conter no mínimo três malhas ! Os valores de pL e dpL são necessários; seus valores podem ser reais ! Resultados em branco de parâmetros significa que não há dados suficientes ! para calculá-lo ou não é possível calculá-lo ! Adaptação: obtém resultados com os estimadores GCI (Roache) e multicoeficiente para solução sem extrapolação, ! estimador convergente para solução numérica convergente, e uma proposta de estimador para solução ! obtida com o emprego de MER ! ARQUIVOS envolvidos no programa: ! Fontes (prefixo Richardson_4p0_): ! data_hora.f90 = obtém a data e hora do sistema ! variaveis.f90 = define todas as variáveis globais do programa ! dados.f90 = lê e escreve os dados do programa ! calculos.f90 = calcula as variáveis ! resultados.f90 = escreve resultados e apresenta gráficos ! main.f90 = programa principal ! Dados: ! Richardson_4p0.in = leitura do nome do arquivo principal de dados do CASO a analisar ! "arq_dados" = leitura dos dados principais para o caso de um arquivo por malha ! "arq_dados_unico" = leitura dos dados principais para o caso de um arquivo para todas as malha ! "arq_numerico(nm)" = nomes dos nm arquivos das soluções numéricas (um arquivo para cada ! malha mas com os resultados de todas as variáveis de interesse ) ! "arq_numerico(1)" = nome do arquivo que contém as soluções numéricas (um único arquivo para todas ! as malhas, com os resultados de todas as variáveis de interesse ) ! Saída principal: ! "caso" = saída principal do programa ! Aplicativos auxiliares: ! Notepad.exe = editor de arquivos ! Wgnuplot.exe = programa gerador de gráfico ! Arquivos de saída auxiliares para gráficos: ! p0.dat = dados para gráfico de p0 (ordem assintótica) ! p1.dat = dados para gráfico de pV(2) (segunda ordem verdadeira) ! p2.dat = dados para gráfico de pV(3) (terceira ordem verdadeira) ! pU_h.dat = dados para gráfico de pU_h (ordem aparente equivalente para solução extrapolada) ! pU_i.dat = dados para gráfico de pU_i (ordem aparente equivalente para solução extrapolada) ! pU_bi.dat = dados para gráfico de pU_bi (ordem aparente equivalente para solução biextrapolada) ! pU_c.dat = dados para gráfico de pU_c (ordem aparente equivalente para solução convergente) ! pU_mer.dat = dados para gráfico de pU_MER (ordem aparente equivalente para solução com MER) ! U_12.dat = dados para gráfico de UGCI (estimador GCI (Roache) para Th) ! U_13.dat = dados para gráfico de Umc (estimador multicoeficiente com base em MER para Th) ! U_14.dat = dados para gráfico de Uc (estimador convergente para solução convergente) ! U_15.dat = dados para gráfico de Um (estimador Um para Tm (solução com MER)) ! ! Arquivos de comandos para Wgnuplot (prefixo Richardson_4p0_): ! pU.gnu = gráfico de ordens ! U.gnu = gráfico de erros estimados (U*) ! ! Arquivo texto com informações básicas sobre o programa: ! LEIA-ME_Richardson_4p0.txt !------------------------------------------------------------------------------- Seqüência para compilação dos módulos pela primeira vez após criar o projeto: 1) data_hora.f90 2) variaveis.f90 3) dados.f90 4) calculos.f90 5) resultados.f90 6) main.f90