We beschouwen een reeks van $$M$$ identieke massa's $$m$$, verbonden door $$M-1$$ identieke veren met veerconstante $$k$$. Elk van de massa's kan onderhevig zijn aan een externe kracht $$F_i$$ die harmonisch is, m.a.w. $$F_i = \Re[A_i e^{i\omega t}]$$

Hierbij zijn de grootheden $$A_i$$ complex (fasor-notatie). Schrijf een functie trillende_massas() met als argumenten

Bouw met deze gegevens een tri-diagonaal stelsel op, dat je via het algoritme van Thomas oplost. Het resultaat van de functie is de vector X, bestaande uit $$M$$ componenten die de fasor van de uitwijking t.o.v. de evenwichtstoestand van massa $$i$$ bevat.

TIP

Los deze oefening op via de functie thomas() uit een vorige opgave. Pas deze functie desnoods (lichtjes) aan, zodat ze met complexe matrices kan werken.

Voorbeeld

trillende_massas(0.1, 0.5, 5, np.array([complex(1,2), 0., 0., 0., 0.]))
#[[-0.55272727-1.10545455j],
# [ 0.21090909+0.42181818j],
# [-0.08      -0.16j      ],
# [ 0.02909091+0.05818182j],
# [-0.00727273-0.01454545j]]