Documentaciónintegral_trapecio(expr, a, b, n)

integral_trapecio(expr,a,b,n)\texttt{integral\_trapecio}(expr, a, b, n)

Nombre

integral_trapecio - Aproxima una integral definida con la regla del trapecio compuesta.

Sinopsis

area = numericos.integral_trapecio(expr, a, b, n)

Descripcion

Aproxima la integral definida de una expresion entre a y b dividiendo el intervalo en n subintervalos y sumando trapecios.

Es una tecnica simple y robusta para integracion numerica cuando se dispone de la funcion en forma analitica.

Formula compuesta:

Ih2[f(a)+2i=1n1f(xi)+f(b)]I \approx \frac{h}{2}[f(a) + 2\sum_{i=1}^{n-1}f(x_i) + f(b)]

Validaciones y casos borde

  • Valida que n sea entero y mayor que cero; si no, emite ERROR().
  • Si a == b, retorna 0, que es el valor matematico de la integral sobre un intervalo nulo.
  • Admite a > b y retorna la integral con signo negativo.

Comportamiento

  • Calcula el paso h = (b-a)/n.
  • Evalua f(x) con RESOLVER() en los extremos y puntos interiores.
  • Suma las contribuciones intermedias con peso doble.
  • Retorna una aproximacion numerica del area bajo la curva.

Funciones API relacionadas

  • numericos.integral_simpson()

Parámetros

ParámetroTipoDescripción
exprSTRINGExpresion matematica en texto evaluada por RESOLVER().
aNUMERICOExtremo inferior del intervalo.
bNUMERICOExtremo superior del intervalo.
nNUMERICOCantidad de subintervalos.

Valor de retorno

NUMERICO - Valor aproximado de la integral definida.

Ejemplo

ejemplo.blox
Solo lectura
INCLUIR "numericos.api"

FUNCION PRINCIPAL
INICIO "Demo INTEGRACION - numericos.api"

    STRING f1, f2
    NUMERICO a, b
    NUMERICO n
    NUMERICO I_trap, I_simp

    // ----------------------------------------------------------------
    // CASO 1: f(x) = x^2   en [0, 1]
    // Integral exacta = 1/3 ≈ 0.33333333
    // ----------------------------------------------------------------
    f1 = "x^2"
    a = 0
    b = 1
    n = 10      // probá también n = 100 para ver mejora

    IMPRIMIR("Demo integracion para f(x) = x^2 en [0, 1]")
    IMPRIMIR("\nIntegral exacta ≈ 0.33333333\n")

    I_trap = numericos.integral_trapecio(f1, a, b, n)
    I_simp = numericos.integral_simpson(f1, a, b, n)

    IMPRIMIR("Trapecio  (n = ", n, "): ", I_trap)
    IMPRIMIR("\nSimpson   (n = ", n, "): ", I_simp, "\n")

    // ----------------------------------------------------------------
    // CASO 2: f(x) = sin(x) en [0, pi]
    // Integral exacta = 2
    // ----------------------------------------------------------------
    f2 = "sin(x)"
    a  = 0
    b  = pi
    n  = 10      // debe ser par para Simpson

    IMPRIMIR("\nDemo integracion para f(x) = sin(x) en [0, pi]")
    IMPRIMIR("\nIntegral exacta = 2\n")

    I_trap = numericos.integral_trapecio(f2, a, b, n)
    I_simp = numericos.integral_simpson(f2, a, b, n)

    IMPRIMIR("Trapecio  (n = ", n, "): ", I_trap)
    IMPRIMIR("\nSimpson   (n = ", n, "): ", I_simp)

    IMPRIMIR("\n\nFin demo integracion.\n")

FINAL



Restringido: este ejemplo no puede ejecutarse en el Playground web porque la API requerida no está disponible en el sandbox.