Equação do calor
Em física e matemática, a equação do calor é uma equação diferencial parcial que descreve como a distribuição de alguma quantidade (como o calor) evolui ao longo do tempo em um meio sólido.
Escreva uma função que simule a distribuição de temperatura ao longo do tempo usando o método das diferenças finitas com um esquema explícito.
A entrada da função é um dicionário com a especificação do problema. A função deve inicializar o interior do array com "u_0", definir os valores de contorno no perímetro. Os valores de contorno permanecem constantes.
# Initialize e.g. rows, cols = 5, 7
[
[100. 5. 5. 5. 5. 5. 100.]
[100. 10. 10. 10. 10. 10. 100.]
[100. 10. 10. 10. 10. 10. 100.]
[100. 10. 10. 10. 10. 10. 100.]
[100. 100. 100. 100. 100. 100. 100.]
]Execute a simulação temporal até o maior valor em 'n_steps': [0, 100, 200]. Somente o interior do array muda a cada passo de tempo. Salve o valor da temperatura no ponto de observação "observe": [10, 10] nos passos de tempo especificados [0, 100, 200]. Retorne a lista de temperaturas (com comprimento 3 neste exemplo). Não é necessário arredondar; isso será feito nos testes.
Exemplos
Os três problemas a seguir serão simulados. O primeiro tem 3 contornos quentes, o segundo tem 2 e o terceiro tem a parte inferior quente. Essas três configurações levam a diferentes distribuições de temperatura, como pode ser visto na figura.

Notas
- O problema é bidimensional (precisa de derivadas parciais para
xey). - A fórmula explícita é direta; o próximo
u^(n+1)é calculado diretamente usando 5 pontos deu^n. - O parâmetro
rfornecido é menor que1/4, portanto o esquema é numericamente estável. - A simulação leva menos de 0.5 segundos no servidor.