Całkowanie numeryczne - metoda trapezów
Stronę tą wyświetlono już: 13641 razy
Na stronie Programowanie → Algorytmy obliczeniowe → Całkowanie numeryczne - metoda prostokątów opisana została metoda numeryczna obliczania całki oznaczonej pewnej funkcji f(x) w przedziale od a do b metodą prostokątów. Omawiana tam metoda ma pewną wadę polegającą na dość sporej rozbieżności obliczeniowej przy zastosowaniu małej liczby przedziałów. Całkowanie numeryczne metodą trapezów umożliwia zmniejszenie niedokładności obliczeniowej albowiem w tym przypadku dla elementarnego przedziału oblicza się pole powierzchni trapezu o wysokości oraz długości podstaw f(xi) i f(xi + h) gdzie i - jest liczbą przedziałów.
W językach programowanie takich jak C++ do wykorzystania tego algorytmu konieczne jest zaimplementowanie algorytmu ONP, który powstał jako modyfikacja algorytmu notacji polskiej Jana Łukasiewicza. W przypadku języków skryptowych takich jak PHP czy Python można posłużyć się funkcją eval, której użycie ze względów bezpieczeństwa jest niewskazane.
Oto przykład prostego programu obliczającego tą metodą całkę podanej na wejście funkcji napisany w Pythonie:
Przykład działania dla f(x) = x2, a = 0, b = 1, oraz i = 10:
Funkcja: x**2 Początek przedziału: 0 Koniec przedziału: 1 Liczba podprzedziałów: 10 Całka z funkcji x**2 po przedziale od 0.0 do 1.0 = 0.3350000000000001 Aby kontynuować, naciśnij dowolny klawisz . . .
Jak widać jest to całkiem przyzwoity wynik, tym bardziej, że całkowanie numeryczne metodą prostokątów dawało następujące rezultaty przy takich samych parametrach:
Funkcja: x**2 Początek przedziału: 0 Koniec przedziału: 1 Liczba podprzedziałów: 10 Całka z funkcji x**2 po przedziale od 0.0 do 1.0 = 0.2850000000000001 Aby kontynuować, naciśnij dowolny klawisz . . .
Tytuł:
Algorytmy. Ilustrowany przewodnik
Autor:
Aditya Bhargava
Tytuł:
Algorytmy. Struktury danych i złożoność obliczeniowa
Autor:
Feliks Kurp
Tytuł:
Algorytmy w Pythonie. Techniki programowania dla praktyków
Autor:
Piotr Wróblewski
Tytuł:
Matematyka dyskretna dla praktyków. Algorytmy i uczenie maszynowe w Pythonie
Autor:
Ryan T. White, Archana Tikayat Ray
Tytuł:
Algorytmy kryptograficzne w Pythonie. Wprowadzenie
Autor:
Shannon W. Bray
Tytuł:
Algorytmy sztucznej inteligencji. Ilustrowany przewodnik
Autor:
Rishal Hurbans
Tytuł:
Algorytmy bez tajemnic
Autor:
Thomas H. Cormen
Tytuł:
Algorytmy dla bystrzaków
Autor:
John Paul Mueller, Luca Massaron
Tytuł:
Algorytmy Data Science. Siedmiodniowy przewodnik. Wydanie II
Autor:
David Natingga
Tytuł:
Algorytmy uczenia maszynowego. Zaawansowane techniki implementacji
Autor:
Giuseppe Bonaccorso