3. Programmieraufgabe

Die Aufgabenstellung für die Methode quantileAdapt ist für manche evtl. unverständlich fromuliert, deshwegen folgt hier noch eine weitere Erläuterung:
Im Aufgabenblatt steht, dass die Adaptive Quadratur den Integralwert und den Punkt, bis zu dem integriert wurde, zurückgibt.
Als Rückgabe ist dabei nicht die Rückgabe der Funktion quantileAdapt gemeint. Es gibt einen Programmteil (entweder in quantileAdapt, oder eben eine eigenständige Funktion), der die adaptive Quadratur auf einem gegebenen Intervall berechnet. Dieser Programmteil muss sowohl das berechnete Integral, als auch den Punkt, bis zu dem integriert wurde, zurückgeben. Die Methode quantileAdapt ruft diesen Programmteil dann mehrmals auf (bis das Gesamtintegral nur noch im Rahmen der gegebenen Toleranz von alpha abweicht).

Zur Veranschaulichung folgendes Beispiel:
Angenommen, das "korrekte" a (das von der Methode quantileAdapt mit Genauigkeit TOL berechnet werden soll) sei 1.2 und l (die Länge des Ausgangsintervalls) sei 0.5.

Zunächst wird also auf [0;0.5] integriert, bis dieses Integral genau genug ist (relativer Fehler kleiner als TOL/4). "Zurückgegeben" wird das Integral und der Wert, bis zu dem integriert wurde (0.5). Das reicht aber noch nicht aus, das nächste Intervall [0.5;1] muss noch komplett dazu genommen werden (wiederum integrieren, bis der Fehler klein genug ist). Da das aber immer noch nicht reicht (Integral ist noch nicht im Bereich [alpha/2-TOL/4; alpha/2+TOL/4]), muss auch noch im Intervall [1;1.5] integriert werden. In diesem Intervall liegt der richtige Wert, also wird die adaptive Quadratur nur einen Teil der Fläche abdecken (Hinweis Tiefensuche auf dem Aufgabenblatt) und den Integralwert und sowie den Punkt, bis zu dem integriert wurde, zurückgeben. An dieser Stelle ist klar, dass keine weitere adaptive Quadratur nötig ist.

In obigem Beispiel werden also von der Methode quantileAdapt drei adaptive Quadraturen aufgeführt (für die Intervalle [0;0.5], [0.5; 1.0] und [1.0; 1.5]). Diese drei Quadraturen liefern jeweils ein Integral und den Punkt, bis zu dem integriert wurde. Nach der dritten Quadratur enspricht das Integral (im Rahmen der Toleranz) den geforderten alpha, und a (der Punkt, bis zu dem integriert wurde), wird zurückgegeben.


Tobias Neckel/Stefanie Schraufstetter, 1.12.2008