ich belege dieses Semester ein Modul für mein Studium, in welchem wir mit Python modellieren und wir wöchentliche Assignments abzugeben haben. Bin kompletter Anfänger was Pyhton angeht und mehr oder weniger auch das Programmieren. Nun komme ich an einer Stelle nicht weiter und würde über eure Hilfe sehr dankbar sein.
Folgende Aufgabe:
Es geht darum, dass wir den Verlauf eines Elektrons in einer Braunschen Röhre plotten sollen, in dem wir die ODE´s aufstellen und mit der Funktion solve_ivp im Anschluss lösen. Dabei ist entscheidend, dass der solver bei Aufschlag des Elektrons auf dem Schirm stoppt. Die Funktion habe ich aufgestellt bekommen und der Plott sieht auch richtig aus. Jedoch habe ich ein Problem bei der Erstellung der Eventfunktion zum Stoppen des Solvers.
Und zwar ist der Schirm 0.15 Längeneinheiten (in x-Richtung) vom Startpunkt entfernt und demnach soll hier der Solver dann stoppen. Ich habe nun folgenden Ansatz für die Eventfunktion:
Code: Alles auswählen
def schirmaufprall(t, y, *args): # Eventfunktion für den Schirmaufprall
return y[0] # Ausgeben der x-Position
schirmaufprall.terminal = True
schirmaufprall.direction = 0.15 # was muss hier hin um das zu stoppen?
Also mein frage lautet nun, wie ich umsetzen kann, dass mein Solver bei 0.15 stoppt, welche Befehle brauche ich dafür in meiner Eventfunktion?
Vielen Dank für eure Hilfe
Timo