Ecuacion del calor MAM

De MateWiki
Saltar a: navegación, buscar
Trabajo realizado por estudiantes
Título Ecuación del calor. Grupo MAM
Asignatura EDP
Curso 2025-26
Autores Mario ALonso Rodríguez

Adrián Moreno Nieto

Matías Martínez Mancebo

Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura


Ecuación del calor MAM.png PDF del póster


Abajo se puede ver el código que se ha utilizado para conseguir las gráficas.

import numpy as np
from mpl_toolkits.mplot3d import Axes3D

import matplotlib.pyplot as plt

# Define the heat equation solution
def heat_solution(x, t):
    if t <= 0:
        return 0
    return (1 / np.sqrt(2 * t)) * np.exp(-x**2 / (4 * t))

# Create grid
x = np.linspace(-5, 5, 100)
t = np.linspace(0.1, 2, 50)  # Avoid t=0
X, T = np.meshgrid(x, t)
Z = np.vectorize(heat_solution)(X, T)

# Plot 3D surface
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot_surface(X, T, Z, cmap='viridis')
ax.set_xlabel('x')
ax.set_ylabel('t')
ax.set_zlabel('u(x,t)')
ax.set_title('Solución fundamental de la ecuación del calor')
plt.show()









import numpy as np
import matplotlib.pyplot as plt

# Solución fundamental correcta de la ecuación del calor
def G(x, t):
    return (1 / np.sqrt(4 * np.pi * t)) * np.exp(-x**2 / (4 * t))

# Tiempos que queremos comparar
times = [0.05, 0.1, 0.2, 0.5, 1, 2]

# Dominio espacial
x = np.linspace(-10, 10, 2000)

# Crear una sola gráfica
plt.figure(figsize=(7, 5))

# -------------------------
# Perfiles originales
# -------------------------
for t in times:
    plt.plot(x, G(x, t), label=f"t = {t}")

plt.title("Solución fundamental para distintos tiempos")
plt.xlabel("x")
plt.ylabel("G(x,t)")
plt.grid(True)
plt.legend()

plt.tight_layout()
plt.show()