![]() |
|---|
![]() |
![]() |
![]() |
Integración numérica
Existen multitud de métodos de integración numérica. En general se basan en el concepto de que la integral es el área bajo la curva de la función, de manera que hay que acercarse lo más posible a esa área.
Para ejemplificar su uso asumimos el método de los trapecios que consiste en sumar las áreas contenidas por un triángulo que tenga por base el desplazamiento de la variable y por altura la diferencia existente entre el valor de la función al inicio del segmento de desplazamiento de la variable y al final de ese desplazamiento. A esa área le agregamos el rectangulo contenido entre el origen del eje de la función y el valor de la función en la base. Como se ve en la figura 1 en la medida que el desplazamiento de la variable sea menor nos aproximaremos más al valor exacto de la función.
![]() figura 1 |
Si queremos integrar y = f(x) tendremos que el área de un trapecio se
obtiene a partir de h/2(yi + yi+1). Como el área total es la
suma de esas áreas tendremos que su expresión será: h*(y0/2 + yn/2 + yi+1+...+yi+n-1) y la función que resuelve este algoritmo quedaría: float TIntegra :: SolInteg() { float Suma = (Funcion(ExtInf) + Funcion(ExtSup) / 2); for (float i = ExtInf + Paso; i < ExtSup - Paso; i += Paso) { Suma += Funcion(i) } return (Suma*Paso); } |
Código Integra.h, Intsen.h, intsen.cpp
![]() |
![]() |