Diferencia entre revisiones de «Ecuación del calor NAA»
De MateWiki
| Línea 12: | Línea 12: | ||
Código que representa la temperatura frente a la profundidad en la Tierra. | Código que representa la temperatura frente a la profundidad en la Tierra. | ||
| + | <source lang="python" line> | ||
import numpy as np | import numpy as np | ||
import matplotlib.pyplot as plt | import matplotlib.pyplot as plt | ||
| Línea 38: | Línea 39: | ||
plt.show() | plt.show() | ||
| + | <\source> | ||
Código que representa la temperatura frente al tiempo en la Tierra: | Código que representa la temperatura frente al tiempo en la Tierra: | ||
| + | |||
| + | <source lang="python" line> | ||
import numpy as np | import numpy as np | ||
import matplotlib.pyplot as plt | import matplotlib.pyplot as plt | ||
| Línea 65: | Línea 69: | ||
plt.grid() | plt.grid() | ||
plt.show() | plt.show() | ||
| + | <\source> | ||
[[Categoría:EDP]] | [[Categoría:EDP]] | ||
[[Categoría:EDP25/26]] | [[Categoría:EDP25/26]] | ||
Revisión del 11:29 12 abr 2026
| Trabajo realizado por estudiantes | |
|---|---|
| Título | Series de Fourier. Grupo NAA |
| Asignatura | EDP |
| Curso | 2025-26 |
| Autores | Natalia Gutiérrez de Uriarte
Alba Peralta Zamora Ainhoa Martín García |
| Este artículo ha sido escrito por estudiantes como parte de su evaluación en la asignatura | |
A continuación, se van a mostrar los códigos que se han utilizado para representar cada una de las gráficas del trabajo. Todos ellos han sido escritos en Python. En ambos códigos se pueden modificar la temperatura media, el periodo, la kappa(difusividad) y los tiempos ajustándolos a otros planetas y poder representar la temperatura de estos.
Código que representa la temperatura frente a la profundidad en la Tierra.
import numpy as np
import matplotlib.pyplot as plt
Tm = 15 #temperatura media de la Tierra en grados.
A0 = 10
kappa = 1e-6
P = 86400 # periodo diario
# Dominio
x = np.linspace(0, 2, 200) # profundidad hasta 2 m
# Tiempos distintos
times = [0, P/4, P/2, 3*P/4]
for t in times:
T = Tm + A0*np.exp(-x*np.sqrt(np.pi/(P*kappa))) * \
np.sin(2*np.pi*t/P - x*np.sqrt(np.pi/(P*kappa)))
plt.plot(x, T, label=f"t={t/3600:.1f} h")
plt.xlabel("Profundidad (m)")
plt.ylabel("Temperatura (°C)")
plt.legend()
plt.title("Temperatura vs profundidad")
plt.grid()
plt.show()
<\source>
Código que representa la temperatura frente al tiempo en la Tierra:
<source lang="python" line>
import numpy as np
import matplotlib.pyplot as plt
Tm = 15
A0 = 10
kappa = 1e-6
P = 86400 # periodo diario
t = np.linspace(0, P, 500)
# distintas profundidades
depths = [0, 0.25, 0.5, 1, 2]
for x in depths:
T = Tm + A0*np.exp(-x*np.sqrt(np.pi/(P*kappa))) * \
np.sin(2*np.pi*t/P - x*np.sqrt(np.pi/(P*kappa)))
plt.plot(t/3600, T, label=f"x={x} m")
plt.xlabel("Tiempo (horas)")
plt.ylabel("Temperatura (°C)")
plt.legend()
plt.title("Temperatura vs tiempo a distintas profundidades")
plt.grid()
plt.show()
<\source>
[[Categoría:EDP]]
[[Categoría:EDP25/26]]