A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Trabalho Computacional Transferência de Energia e Massa

Apresentações semelhantes


Apresentação em tema: "Trabalho Computacional Transferência de Energia e Massa"— Transcrição da apresentação:

1 Trabalho Computacional Transferência de Energia e Massa
Dúvidas: Ext:3430 Página: Guillaume Riflet,

2 Metodologia de resolução
Ler o enunciado do problema Conceber uma solução computacional Partir o problema e a solução em problemas mais pequenos (fazer um diagrama) Resolver as peças do problema, uma de cada vez

3 Diagrama por blocos genérico dum problema computacional
Input Identificar o processamento / escrever o(s) algoritmo(s) Identificar as variáveis necessárias para o processamento Pensar na inicialização das variáveis e na selecção dos algoritmos Pensar no input fornecido pelo utilizador para a resolução do problema e pensar na interface com o utilizador Pensar no output da solução, na sua apresentação (tabelas e gráficos) Processing / Factory/ Engine Output

4 Diagrama por blocos genérico dum problema computacional
Variables initialization Algorithm selection User given input / User-Interface (UI) Input Single or continuous input? Processing / Factory/ Engine Processing variables Algorithms Single or continuous output? Product(s) Tables Graphics Output

5 Identificação dos Algoritmos
Processing / Factory/ Engine Processing variables Algorithms enunciado explicito implicito

6 Algoritmos e Variáveis - esquema numérico explícito no tempo
Processing / Factory/ Engine explicito i = 2, ..., N-1 i = 1  Boundary i = N  Boundary

7 Algoritmos - esquema numérico implícito no tempo
Processing / Factory/ Engine implícito i = 2, ..., N-1 Ti A B C i = 1  Boundary i = N  Boundary Sistema matricial (n equações a n incógnitas) e tridiagonal. Resolução por eliminação de Gauss ou algoritmo semelhante. Neste caso usa-se o eficiente algoritmo de Thomas. Call Thomas(A,B,C,Ti)

8 Algoritmos – ciclos no código
Processing / Factory/ Engine For l = 1 to T ... For i = 1 to N Next Ciclo no tempo Ciclo no espaço

9 Variáveis de processamento
Processing / Factory/ Engine N – tamanho do array da barra ou do canal i – índice de célula do canal indo de 1 até N Ctdt(1 to N) - array da Concentração ou Temperatura em t + dt Ct(1 to N) – array Concentração ou Temperatura em t t – índice de tempo indo de 1 até L T – número total de iterações no tempo Dif – coeficiente de difusão Sk – coeficiente de decaimento A(1 to N), B(1 to N), C(1 to N) e Ti(1 to N) – arrays de entrada do algoritmo de Thomas. Resultado escrito em Ti. CL e CU – Concentração nas fronteiras abertas do canal. Os valores em algumas variáveis têm que ser deduzidos a partir dos dados de entrada do utilizador e do enunciado

10 Exercício I Processing / Factory/ Engine Recorrendo às variáveis acima definidas, implemente um programa em VBA que resolva o método explícito da equação da difusão duma propriedade num fluido numa barra unidimensional utilizando arrays. Inicialize todas as variáveis no código. Resolva até à aula seguinte. TPC – Tente alterar o codigo em i = 1 e em i = N de forma a selar as fronteiras. Se não conseguir, simplesmente mude o valor nas condições de fronteira, corra o programa e comente os resultados.

11 Exercício I – Solução tpc
TPC – Tente alterar o codigo em i = 1 e em i = N de forma a selar as fronteiras. Se não conseguir, simplesmente mude o valor nas condições de fronteira, corra o programa e comente os resultados. A melhor forma de selar a fronteira aberta ao transporte de propriedades da água é de eliminar o termo de fluxo difusivo da equação na face com a fronteira aberta. Em particular, apenas para a equação da difusão, também se pode impôr um gradiente nulo na fronteira aberta: CL = C(1) e CU = C(N). Essa é outra forma de preservar a massa dentro do domínio. A forma adequada de verificação que a massa é preservada consiste em anular o termo de decaimento e em integrar a massa total da propriedade no canal. A integração tem que se manter constante ao longo do tempo.

12 Exercício II Processing / Factory/ Engine Agora resolva utilizando o método implícito. Use a subrotina fornecida com o algoritmo de Thomas. Adicionalmente, implemente um método de cálculo da massa da propriedade no canal e faça outputs temporários para uma tabela de excel. TPC – Outputs para tabela e fazer graficos (manualmente) para comparar o metodo explicito com o metodo implicito. Output

13 Identificação dos Algoritmos de Advecção
Processing / Factory/ Engine Processing variables Algorithms enunciado Upwind U>0, Exp Faces centradas, Exp

14 Identificação dos Algoritmos de Advecção
Processing / Factory/ Engine enunciado Upwind U>0, Imp Faces centradas, Imp

15 Refactoring dos Algoritmos de Advecção e de Difusão
Processing / Factory/ Engine enunciado Upwind U>0, Imp Faces centradas, Imp

16 Novas variáveis de processamento para advecção
Processing / Factory/ Engine Cr – Número de Courant Os valores em algumas variáveis têm que ser deduzidos a partir dos dados de entrada do utilizador e do enunciado

17 Exercício III Processing / Factory/ Engine Adicione ao exercício anterior uma advecção com o método Upwind para U constante no canal e positivo. E se U for negativo? Qual o comportamento do método?

18 Exercício IIIb Processing / Factory/ Engine Repense o esquema Upwind para que U possa ser positivo e negativo. Se não conseguir, resolva dois esquemas, um para U positivo e outro para U negativo, e utilize um “if”.

19 Diagrama por blocos genérico dum problema computacional
Input Identificar o processamento / escrever o(s) algoritmo(s) Identificar as variáveis necessárias para o processamento Pensar na inicialização das variáveis e na selecção dos algoritmos Pensar no input fornecido pelo utilizador para a resolução do problema e pensar na interface com o utilizador Pensar no output da solução, na sua apresentação (tabelas e gráficos) Processing / Factory/ Engine Output

20 Diagrama por blocos genérico dum problema computacional
Variables initialization Algorithm selection User given input / User-Interface (UI) Input Single or continuous input? Processing / Factory/ Engine Processing variables Algorithms Single or continuous output? Product(s) Tables Graphics Output

21 Input – interface com o utilizador. Variáveis
L - Comprimento do canal (m) Dx - Resolução espacial (m) Tp - Tempo de corrida da simulação (s) Dt - Resolução temporal (s) PI - Posição inicial do traçador (m) CI - Concentração inicial do traçador (kg/m^3) K - Coeficiente de difusividade do traçador (m^2/s) CL, CU - Valor imposto nas fronteiras a montante e a jusante do escoamento. U - Velocidade média uniforme do escoamento (m/s) isDir - Tipo de condição de fronteira (Dirichelet/Neumann) isOpen - Tipo de fronteira (aberta/fechada) isExp - Tipo de discretização temporal (explícito/implícito) isUp - Tipo de discretização para advecção (upwind/diferenças centrais) Noutputs - Frequência de escrita dos resultados OU número total de instantes a escrever na tabela de excel Input Pensar em dar um feedback ao utilizador indicando se as parametrizações seleccionadas são consistentes (ex: Cr e Dif não violam critérios de estabilidade)

22 Input – interface com o utilizador. Subrotinas e Userforms
Input - Tipo que engloba as variáveis de entrada fornecidas pelo utilizador. ReadInput - Subrotina que lê os dados fornecidos pelo utilizador e que os guarda numa variável do tipo de entrada. Pode ser programado usando uma userform, mas também pode ser programado lendo directamente valores duma tabela de excel. InterfaceInPr - Subrotina de interface que recebe um tipo de entrada e um tipo de propriedade como argumentos. A subrotina deve inicializar os campos do tipo propriedade a partir dos campos do tipo entrada. Input Pensar em dar um feedback ao utilizador indicando se as parametrizações seleccionadas são consistentes (ex: Cr e Dif não violam critérios de estabilidade)

23 Output – Resultados. writeOutput - Subrotina que escreve a concentração do traçador no canal numa tabela. (disponível na página do projecto de tem-vba). Plot - Subrotina que desenha uma curva da concentração em função da posição no canal para cada instante escrito na tabela de excel. (disponível na página do projecto de tem-vba). Clear - Subrotina que apaga a tabela de excel e todos os gráficos de excel. (disponível na página do projecto de tem-vba). Output


Carregar ppt "Trabalho Computacional Transferência de Energia e Massa"

Apresentações semelhantes


Anúncios Google