import math
from math import pi
import numpy as np
import [Link] as plt
def solution_UI():
print("\tEntrez les valeur n, a, b , c, d et e dans cet ordre : \n")
lx =int(input("Entrer la valeur limite L du domaine : \n"))
nx = int(input("Entrer le nombre de points de subdivision Nx : \n"))
time = float(input("Entrer la durée totale d'integration T : \n"))
nt = int(input("Entrer le nombre de pas temporel : \n"))
s = float(input("Entrer la valeur du terme soure S : \n"))
k = float(input("Entrer le coefficient de diffusivité k : \n"))
u = [Link]((nx, nt)) # la matrice u des valeurs des temperatures
dx = lx /(nx -1) # le pas uniforme pour le domaine x
dt = time/nt # le pas uniforme pour le domaine temps
x = [Link](nx) # le vecteur des xi calculées
for i in range(nx - 1):
x[i+ 1] = x[i]+i*dx # calcule des xi
u[i, 0] = [Link]((2*[Link] * x[i])/nx) # a t = 0 u(x ,0) = sin(2pi*
xi /L)
t = [Link](nt) # vecteur temps des ti
for i in range(nt- 1):
t[i+ 1] = t[i]+i*dt # calcule des ti
u[0, i] = 0 # x = 0, u(t, 0) = 0
u[nx-1, i ] = 0 # u(t, L) = 0
for j in range(nt - 1):
for i in range(nx - 1):
u[i,j+1] = u[i,j]+((dt*k)/(dx**2))*(u[i+1,j] - 2*u[i,j] + u[i-1,j]) +
dt*s # calcule des valeur des temperatures u(ti+1, xi)
# Representation graphique de la solution
[Link](x,t, u)
[Link]("Xi")
[Link]("Ti")
[Link]()
solution_UI(