Schrijf een functie booglengte()
met als argumenten
f
: de functie waarvan de booglengte bepaald moet wordena
: ondergrens van de boogb
: bovengrens van de boogN
: een geheel getal dat het aantal subintervallen aangeeft ($$N$$ is even)g
: een integratie-routine (dus een functie), waarvan je mag veronderstellen dat ze volgende argumenten heeft
f
: te integreren functiea
: ondergrens van het integratie-intervalb
: bovengrens van het integratie-intervalN
: een geheel getal dat het aantal subintervallen aangeeft ($$N$$ is even)Het resultaat van de functie de gezochte booglengte. Als je numeriek dezelfde resultaten wil bekomen als het Dodona-verbeterscript, gebruik je om de afgeleide functie te berekenen het centraal differentieschema, met stapgrootte $$h = 10^{-4}$$.
Dodona beschikt over de functies veelterm()
, primitieve_veelterm()
,
midpoint()
, trapezium()
en simpson()
. Deze hoef je dus NIET mee in te dienen.
boog_trapezium = booglengte(lambda x:3*x**2 + 2*x**1 + 1, 1, 5, 10, trapezium)# 80.116 boog_simpson = booglengte(lambda x:3*x**2 + 2*x**1 + 1, 1, 5, 10, simpson) #80.115