Voor een reƫle functie in 1 veranderlijke $$f(t)$$ wordt de Laplace-getransformeerde
functie $$F(s)$$ gedefinieerd als
$$
F(s) = \int_0^\infty e^{-st} f(t) dt
$$
We benaderen deze functie door het integratie-interval te beperken tot $$[0, R]$$ met $$R$$ voldoende groot.
Om de integraaluitdrukking uit te rekenen, maken we gebruik van de trapeziumregel.
Deze benadering met $$n+1$$ punten houdt in dat
$$
\int_a^b g(t) dt \approx h \big( \frac{1}{2} g(a) + \sum_{i=1}^{n-1} g(a+ih) + \frac{1}{2} g(b) \big)
$$
waarbij $$h = \frac{b - a}{n}$$.
Deze benadering wordt in onderstaande code gebruikt.
def trapezium(g, a, b, n): h = (b - a)/n I = 0.5 * g(a) for i in range(1, n): I+= g(a + i*h) I += 0.5*g(b) I *= h return IGebruik de NumPy-bibliotheek om de exponentiƫle functie uit te rekenen (zo kan je ook het Laplace-beeld vrij eenvoudig afbeelden).
LaplaceTransformatie
die callable is, en waarvan je de constructor oproept met de volgende argumenten:
f = lambda x:x**3 + 1 Lf = LaplaceTransformatie(f, 10, 10000) print(Lf(3.0)) # 0.40740765784111843