Ejercicios · Bloque 4: Entrada/Salida, Cadenas y Computación Científica — 4.3 NumPy y Gráficos

5 ejercicios resueltos paso a paso.

4.3 NumPy y Gráficos

1.

6
1. Desarrolla una función potencial_lennard_jones(r_array, epsilon=1.0, sigma=0.34) que evalúe de forma vectorizada con NumPy el potencial intermolecular $V(r) = 4\epsilon \left[ \left(\frac{\sigma}{r}\right)^{12} - \left(\frac{\sigma}{r}\right)^6 \right]$ sobre un array de distancias interatómicas en nanómetros.
Solución paso a paso → ▶ Vídeo

2.

6
2. Implementa una función comparar_producto_matriz_vector(M,

v) que reciba una matriz cuadrada $N \times N$ y un vector de longitud $N$, calculando el producto matriz-vector $y = M \cdot v$ de dos formas: mediante bucles anidados en Python puro y mediante np.. dot(M, v), comprobando la igualdad numérica absoluta con np.. allclose.
Solución paso a paso → ▶ Vídeo

3.

6
3. Desarrolla una función filtrar_senales_numpy(senales, sigma_corte=2.5) que tome un ndarray 1D de medidas con ruido gaussiano, identifique los outliers que disten más de sigma_corte desviaciones típicas de la media, y retorne un array limpio donde los valores anómalos se hayan sustituido por la mediana de la serie.
Solución paso a paso → ▶ Vídeo

4.

6
4. Escribe una función calibrar_sensor_lineal(x_patron, y_medida) que realice un ajuste por mínimos cuadrados de primer orden utilizando np.. polyfit, calculando la pendiente $m$, el punto de corte $n$ y el coeficiente de determinación $R^2$ entre las medidas observadas y el modelo lineal.
Solución paso a paso → ▶ Vídeo

5.

6
5. Desarrolla un script de visualización con Matplotlib que genere una curva de oscilación amortiguada $y(t) = e^{-\gamma t} \cos(\omega t)$ para $t \in [0, 10]$, configure título, etiquetas de ejes con unidades, rejilla de fondo, y guarde la figura en formato vectorial PNG de alta resolución (300 DPI) con plt.. savefig('oscilacion.. png', dpi=300).
Solución paso a paso → ▶ Vídeo