Angenommen ein System, das durch die Bewegungsgleichung beschrieben wird:
(Zum Beispiel eine Feder mit abnehmender Steifigkeit.)
Ich möchte den entsprechenden Antrag erhalten Ich bin mir jedoch nicht sicher, wie ich dieses Problem lösen soll. Ich habe den WKB-Ansatz für die erste Bestellung ausprobiert, was mir Folgendes gibt:
Dies scheint falsch zu sein, da für Die Rückstellkraft geht gegen Null und daher würde ich eine Linearität erwarten -Abhängigkeit in dieser Grenze.
Gibt es andere Techniken, die geeignet sind und verwendet werden können, um diese Bewegungsgleichung zu lösen?
Da die Frage auf Eis gelegt wurde, werde ich meine Absichten im Folgenden klarstellen. Sie beinhalten eine implizite und eine explizite Frage:
Hinweis Dies ist keine Hausaufgabe, sondern reine private Neugier.
Es ist möglich, dieses Problem einfach durch Verwendung von Potenzreihen zu lösen. Um die Notation zu vereinfachen, sagen wir . Nehmen Sie dann an, dass die Lösung geschrieben werden kann als:
Dann setzt man dies in die gegebene Differentialgleichung ein:
Sie erhalten also wie erwartet zwei freie Konstanten, Und , und Sie können die Reihe in gerade und ungerade Terme teilen. Dadurch erhalten Sie:
Wenn Sie sowohl gerade als auch ungerade Reihen anordnen, erhalten Sie:
Die Reihen sind die bekannten Sinus- und Cosinus-Potenzreihenentwicklungen, aber jetzt mit einem anderen Parameter, daher ist das Ergebnis:
Dies ist eine exakte Lösung, keine Annäherung erforderlich, und in diesem Fall, wenn Sie die Grenze nehmen entsprechend sollten Sie eine lineare Zeitabhängigkeit erhalten.
Eine Möglichkeit, das Problem anzugehen, besteht darin, eine Reihe von Lösungen zu konstruieren, von denen jede für einen Bereich gültig ist, für den der zeitabhängige Teil des Ausdrucks als konstant angesehen werden kann.
Das heißt, wir konstruieren Lösungen die am gültig sind für . Die Lösungen sind von der Form
Um die Lösungen an den Grenzen zu verbinden Wir verwenden Kontinuität von :
Daraus folgt eine Wiederholungsbeziehung für die Koeffizienten für :
Dieses Gleichungssystem hat eine Determinante und hat daher eine eindeutige Lösung. Für wir haben Und .
Nun müssen noch die Werte für ausgewählt werden (mit Fest). Da Voraussetzung war die Zeitabhängigkeit um auf den entsprechenden Intervallen annähernd konstant zu sein, können wir über die Ableitung eine Schätzung vornehmen :
mit gewählter Grenze . Daraus erhalten wir:
Dies funktioniert jedoch nur für . Falls dies nicht erfüllt ist, können wir stattdessen einfach einen konstanten Aktualisierungswert wählen
für einen kleinen Wert ; Zum Beispiel:
Wo .
Verwenden und ein konstantes Update-Schema mit wir erhalten:
Code:
import matplotlib.pyplot as plt
from numpy import cos, sin, sqrt, exp, pi
import numpy as np
def xns(x0, v0, k, s, delta=0.001):
a = x0
w = sqrt(k)
b = v0 / w
def func(t):
return a*cos(w*t) + b*sin(w*t)
t = delta * s
yield t, func
while True:
v = w
w = sqrt(k) * exp(-t**2 / (2 * s**2))
a, b = np.linalg.solve([
[cos(w*t), sin(w*t)],
[-w*sin(w*t), w*cos(w*t)]],
[a*cos(v*t) + b*sin(v*t),
-a*v*sin(v*t) + b*v*cos(v*t)]
)
t += delta*s
yield t, func
x0, v0, k, s = 0.001, 0, 1, 2*pi
ts = np.linspace(0, 7*pi*sqrt(k), 1000)
xns = xns(x0, v0, k, s)
xs = []
tn, xn = next(xns)
for t in ts:
while t >= tn:
tn, xn = next(xns)
xs.append(xn(t))
xs = np.asarray(xs)
plt.figure()
plt.title(r'$\rm x_0 = {:.2f}\,[mm],\;'
r' v_0 = {:.2f}\,[mm\,s^{{-1}}],\;'
r' k = {:.2f}\,[s^{{-2}}],\;'
r'\sigma = {:.2f}\,[s]$'
.format(x0*1e3, v0*1e3, k, s))
plt.xlabel('t [s]')
plt.ylabel('x [mm]')
plt.plot(ts, xs * 1e3, '-', lw=3)
plt.grid(lw=1.5)
plt.twinx()
plt.ylabel(r'$\rm\sqrt{k}\cdot\exp\left(-t^2/2\sigma^2\right)$', color='#ff7f0e')
plt.tick_params('y', colors='#ff7f0e')
plt.plot(ts, sqrt(k) * exp(-ts**2 / (2 * s**2)), '--', color='#ff7f0e', lw=2)
plt.savefig('example.png', bbox_inches='tight', pad_zeros=0)
plt.show()
ein Gast