Matemáticas II · Tema 4 · Sección 4.3

Ejercicios resueltos de diferencias finitas

4 ejercicios resueltos paso a paso del tema 4 de Matemáticas II (Series de Fourier y ecuaciones diferenciales parciales). El enunciado está a la vista y la solución, plegada: intenta cada ejercicio antes de abrirla.

Ejercicio 1

Dificultad: Básico

Aproximar dfdx\frac{df}{dx} en x=2x = 2 para f(x)=exf(x) = e^x usando diferencias hacia adelante, hacia atrás y centradas con h=0.1h = 0.1. Comparar con el valor exacto.

Ver solución paso a paso6 pasos
  1. Paso 1
    Calcular el valor exacto

    f′(x)=exf'(x) = e^x, por lo tanto f′(2)=e2≈7.389056f'(2) = e^2 \approx 7.389056

  2. Paso 2
    Aproximación hacia adelante

    f′(2)≈f(2.1)−f(2)0.1=e2.1−e20.1f'(2) \approx \frac{f(2.1) - f(2)}{0.1} = \frac{e^{2.1} - e^2}{0.1}

    =8.1662−7.38910.1=7.7710= \frac{8.1662 - 7.3891}{0.1} = 7.7710

  3. Paso 3
    Aproximación hacia atrás

    f′(2)≈f(2)−f(1.9)0.1=e2−e1.90.1f'(2) \approx \frac{f(2) - f(1.9)}{0.1} = \frac{e^2 - e^{1.9}}{0.1}

    =7.3891−6.68590.1=7.0320= \frac{7.3891 - 6.6859}{0.1} = 7.0320

  4. Paso 4
    Aproximación centrada

    f′(2)≈f(2.1)−f(1.9)0.2=e2.1−e1.90.2f'(2) \approx \frac{f(2.1) - f(1.9)}{0.2} = \frac{e^{2.1} - e^{1.9}}{0.2}

    =8.1662−6.68590.2=7.4015= \frac{8.1662 - 6.6859}{0.2} = 7.4015

  5. Paso 5
    Calcular errores
    • Error hacia adelante: ∣7.7710−7.3891∣=0.3819|7.7710 - 7.3891| = 0.3819
    • Error hacia atrás: ∣7.0320−7.3891∣=0.3571|7.0320 - 7.3891| = 0.3571
    • Error centrado: ∣7.4015−7.3891∣=0.0124|7.4015 - 7.3891| = 0.0124
  6. Paso 6
    Conclusión

    La diferencia centrada proporciona la mejor aproximación con error de orden O(h2)O(h^2) comparado con O(h)O(h) de las otras.

Ejercicio 2

Dificultad: Intermedio

Usar diferencias finitas para aproximar la segunda derivada de g(x)=sin⁡(x)g(x) = \sin(x) en x=π/2x = \pi/2 con h=0.05h = 0.05. Evaluar el error de truncamiento.

Ver solución paso a paso6 pasos
  1. Paso 1
    Fórmula de diferencias finitas centradas para la segunda derivada

    g′′(x)≈g(x+h)−2g(x)+g(x−h)h2g''(x) \approx \frac{g(x+h) - 2g(x) + g(x-h)}{h^2}

  2. Paso 2
    Calcular los valores necesarios

    x=π/2≈1.5708x = \pi/2 \approx 1.5708, h=0.05h = 0.05

    • g(π/2+0.05)=sin⁡(1.6208)≈0.99875026g(\pi/2 + 0.05) = \sin(1.6208) \approx 0.99875026
    • g(π/2)=sin⁡(π/2)=1.00000000g(\pi/2) = \sin(\pi/2) = 1.00000000
    • g(π/2−0.05)=sin⁡(1.5208)≈0.99875026g(\pi/2 - 0.05) = \sin(1.5208) \approx 0.99875026
  3. Paso 3
    Aplicar la fórmula

    g′′(π/2)≈0.99875026−2(1.00000000)+0.99875026(0.05)2g''(\pi/2) \approx \frac{0.99875026 - 2(1.00000000) + 0.99875026}{(0.05)^2}

    =−0.002499480.0025≈−0.999792= \frac{-0.00249948}{0.0025} \approx -0.999792

    (Hay que trabajar con muchos decimales: si se redondea a 4 decimales, el numerador queda en −0.0024-0.0024 y se obtiene −0.96-0.96, un error debido solo al redondeo.)

  4. Paso 4
    Comparar con el valor exacto

    g′′(x)=−sin⁡(x)g''(x) = -\sin(x), por lo tanto g′′(π/2)=−sin⁡(π/2)=−1.0000g''(\pi/2) = -\sin(\pi/2) = -1.0000

  5. Paso 5
    Calcular el error

    Error absoluto = ∣−0.999792−(−1.0000)∣≈2.1×10−4|-0.999792 - (-1.0000)| \approx 2.1 \times 10^{-4}

    Error relativo ≈0.021%\approx 0.021\%

  6. Paso 6
    Análisis del error de truncamiento

    El error de truncamiento para diferencias centradas de segunda derivada es O(h2)O(h^2).

    Para h=0.05h = 0.05: el error teórico es h212∣g(4)(π/2)∣=0.002512≈2.08×10−4\frac{h^2}{12}|g^{(4)}(\pi/2)| = \frac{0.0025}{12} \approx 2.08 \times 10^{-4}, que coincide con el error observado.

Ejercicio 3

Dificultad: Avanzado

Discretizar la ecuación d2udx2−4u=−x2\frac{d^2u}{dx^2} - 4u = -x^2 en el intervalo [0,1][0{,}1] con condiciones de frontera u(0)=1u(0) = 1, u(1)=2u(1) = 2, usando Δx=0.25\Delta x = 0.25. Plantear el sistema de ecuaciones lineales.

Ver solución paso a paso5 pasos
  1. Paso 1
    Definir la malla

    Δx=0.25\Delta x = 0.25, puntos: x0=0x_0 = 0, x1=0.25x_1 = 0.25, x2=0.5x_2 = 0.5, x3=0.75x_3 = 0.75, x4=1x_4 = 1

  2. Paso 2
    Aplicar diferencias finitas centradas

    ui+1−2ui+ui−1(Δx)2−4ui=−xi2\frac{u_{i+1} - 2u_i + u_{i-1}}{(\Delta x)^2} - 4u_i = -x_i^2

  3. Paso 3
    Simplificar con Δx=0.25\Delta x = 0.25

    ui+1−2ui+ui−10.0625−4ui=−xi2\frac{u_{i+1} - 2u_i + u_{i-1}}{0.0625} - 4u_i = -x_i^2

    16(ui+1−2ui+ui−1)−4ui=−xi216(u_{i+1} - 2u_i + u_{i-1}) - 4u_i = -x_i^2

    16ui+1−36ui+16ui−1=−xi216u_{i+1} - 36u_i + 16u_{i-1} = -x_i^2

  4. Paso 4
    Escribir las ecuaciones para puntos interiores

    Para i=1i = 1 (x1=0.25x_1 = 0.25):

    16u2−36u1+16u0=−(0.25)2=−0.062516u_2 - 36u_1 + 16u_0 = -(0.25)^2 = -0.0625

    16u2−36u1+16(1)=−0.062516u_2 - 36u_1 + 16(1) = -0.0625

    16u2−36u1=−16.062516u_2 - 36u_1 = -16.0625

    Para i=2i = 2 (x2=0.5x_2 = 0.5):

    16u3−36u2+16u1=−(0.5)2=−0.2516u_3 - 36u_2 + 16u_1 = -(0.5)^2 = -0.25

    Para i=3i = 3 (x3=0.75x_3 = 0.75):

    16u4−36u3+16u2=−(0.75)2=−0.562516u_4 - 36u_3 + 16u_2 = -(0.75)^2 = -0.5625

    16(2)−36u3+16u2=−0.562516(2) - 36u_3 + 16u_2 = -0.5625

    16u2−36u3=−32.562516u_2 - 36u_3 = -32.5625

  5. Paso 5
    Sistema matricial final

    (−3616016−3616016−36)(u1u2u3)=(−16.0625−0.25−32.5625)\begin{pmatrix} -36 & 16 & 0 \\ 16 & -36 & 16 \\ 0 & 16 & -36 \end{pmatrix} \begin{pmatrix} u_1 \\ u_2 \\ u_3 \end{pmatrix} = \begin{pmatrix} -16.0625 \\ -0.25 \\ -32.5625 \end{pmatrix}

Ejercicio 4

Dificultad: Experto

Analizar la estabilidad del esquema de diferencias finitas explícito ujn+1=(1−2r)ujn+r(uj+1n+uj−1n)u_j^{n+1} = (1-2r)u_j^n + r(u_{j+1}^n + u_{j-1}^n) donde r=kΔt(Δx)2r = \frac{k\Delta t}{(\Delta x)^2} mediante el análisis de Von Neumann.

Ver solución paso a paso7 pasos
  1. Paso 1
    Proponer solución armónica

    Consideramos una perturbación de la forma ujn=GneiβjΔxu_j^n = G^n e^{i\beta j \Delta x} donde GG es el factor de amplificación y β\beta el número de onda.

  2. Paso 2
    Sustituir en el esquema

    Gn+1eiβjΔx=(1−2r)GneiβjΔx+rGneiβ(j+1)Δx+rGneiβ(j−1)ΔxG^{n+1} e^{i\beta j \Delta x} = (1-2r)G^n e^{i\beta j \Delta x} + rG^n e^{i\beta (j+1) \Delta x} + rG^n e^{i\beta (j-1) \Delta x}

  3. Paso 3
    Simplificar dividiendo por GneiβjΔxG^n e^{i\beta j \Delta x}

    G=(1−2r)+reiβΔx+re−iβΔxG = (1-2r) + r e^{i\beta \Delta x} + r e^{-i\beta \Delta x}

    G=(1−2r)+2rcos⁡(βΔx)G = (1-2r) + 2r\cos(\beta \Delta x)

    G=1−2r(1−cos⁡(βΔx))G = 1 - 2r(1 - \cos(\beta \Delta x))

  4. Paso 4
    Usar identidad trigonométrica 1−cos⁡(θ)=2sin⁡2(θ/2)1 - \cos(\theta) = 2\sin^2(\theta/2)

    G=1−4rsin⁡2(βΔx2)G = 1 - 4r\sin^2\left(\frac{\beta \Delta x}{2}\right)

  5. Paso 5
    Condición de estabilidad

    Para estabilidad: ∣G∣≤1|G| \leq 1

    Como sin⁡2(βΔx2)≥0\sin^2\left(\frac{\beta \Delta x}{2}\right) \geq 0, tenemos G≤1G \leq 1.

    Para G≥−1G \geq -1:

    1−4rsin⁡2(βΔx2)≥−11 - 4r\sin^2\left(\frac{\beta \Delta x}{2}\right) \geq -1

    4rsin⁡2(βΔx2)≤24r\sin^2\left(\frac{\beta \Delta x}{2}\right) \leq 2

  6. Paso 6
    Condición más restrictiva

    El caso más restrictivo es sin⁡2(βΔx2)=1\sin^2\left(\frac{\beta \Delta x}{2}\right) = 1:

    4r≤24r \leq 2, por lo tanto r≤12r \leq \frac{1}{2}

  7. Paso 7
    Conclusión

    El esquema es estable si y solo si r=kΔt(Δx)2≤12r = \frac{k\Delta t}{(\Delta x)^2} \leq \frac{1}{2}, conocida como la condición CFL para la ecuación del calor.