Vamos considerar uma condição inicial suave e a equação do calor em uma dimensão: no intervalo aberto , e vamos assumir que queremos resolvê-lo numericamente com diferenças finitas.
Eu sei que para o meu problema a ser bem colocada, eu preciso dotá-lo de condições de contorno em e . Eu sei que Dirichlet ou Neumann funcionam bem.
Se eu tiver no primeiro caso pontos interiores para , então eu tenho desconhecidos: para , porque é prescrito nos limites.
No segundo caso, eu realmente tenho incógnitas e sei como usar o Neumann BC (homogêneo) para discretizar o laplaciano na fronteira, por exemplo, com a adição de dois pontos fictícios e e as igualdades:
Minha pergunta é sobre BC periódico. Eu tenho a sensação de que eu poderia usar uma equação, ou seja, mas talvez duas, e então usaria
mas eu não tenho certeza. Também não sei quantas incógnitas eu deveria ter. É ?
fonte
Respostas:
A melhor maneira de fazer isso é (como você disse), basta usar a definição de condições de contorno periódicas e configurar suas equações corretamente desde o início, usando o fato de que . De fato, ainda mais fortemente, as condições de contorno periódicas identificam com . Por esse motivo, você deve ter apenas um desses pontos no domínio da solução. Um intervalo aberto não faz sentido ao usar condições de limite periódicas, pois não há limite .u(0)=u(1) x=0 x=1
Esse fato significa que você não deve colocar um ponto em pois é o mesmo que . Discretizando com pontos, você usa o fato de que, por definição, o ponto à esquerda de é e o ponto à direita de é .x=1 x=0 N+1 x0 xN xN x0
Seu PDE pode ser discretizado no espaço como
Isso pode ser escrito em forma de matriz como que
Obviamente, não há necessidade de criar ou armazenar essa matriz. As diferenças finitas devem ser calculadas em tempo real, tendo o cuidado de lidar com o primeiro e o último pontos, especialmente conforme necessário.
Como um exemplo simples, o script MATLAB a seguir resolve com condições de contorno periódicas no domínio . A solução fabricada é usada, o que significa . Usei a discretização do tempo de Euler para simplificar e calculei a solução com e sem formar a matriz. Os resultados são mostrados abaixo.
fonte
De acordo com isso, você deve impor condições de contorno periódicas como:
Uma maneira de discretizar a Equação de Calor implicitamente usando Euler para trás é
Resolvendo o sistema de equações
O que lhe dá equações N + 2 e N + 2 incógnitas.
Você também pode se livrar da primeira das equações e das células fantasmas e chegar a um sistema de N equações e N desconhecidas.
fonte