Hallo liebe Forengemeinde,
ich habe mir für die numerische Integration einer Funktion in Excel ein Makro geschrieben (s. Code). Ich würde dieses Makro nun gerne so erweitern, dass ich anstelle der Funktion y=x^2 die Funktion y=Z*x^2 habe, d. h. eine Kurvenschar erzeuge. Ich möchte mir dann für ein bestimmtes Intervall von Z (beispielsweise von 0,1 bis 1) die entsprechenden Werte für das Integral berechnen lassen und in eine Tabelle schreiben lassen mit einer Spalte, in der die Z-Werte stehen und in der anderen Spalte sollen die Integralwerte stehen (das Intervall von x ist für jede Integration stets dasselbe).
Ich weiß leider nicht, wie ich dementsprechend eine zweite Schleife für das Z miteinbaue. Könnte mir da jemand behilflich sein? Das wäre super! :-)
Hier mein Code:
Function y(x)
y = x ^ 2
End Function
Sub Integration()
Dim x1(2000) As Double
Dim y1(2000) As Double
'Intervallbreite
xmin = Cells(2, 3)
xmax = Cells(3, 3)
nx = Cells(4, 3)
di = (xmax - xmin) / nx
'Funktionswerte berechnen
dx = 0
For i = 1 To nx + 1
x = xmin + dx
x1(i) = x
y1(i) = y(x)
dx = dx + di
Next i
'Integration mit Trapezregel
T = 0
For i = 2 To nx + 1
T = T + (x1(i) - x1(i - 1)) * (y1(i) + y1(i - 1)) / 2
Next i
'Ausgabe
Cells(8, 3) = T
End Sub
|