Matlab, hogyan lehet a numerikus megoldás egy olyan rendszer kvázi tudományos szoftver difur

Mint már nyerek csendesen, nem a segítséged nélkül természetesen :)
Működés kód jelenleg a következő:

funkció dy = oscillator1 (t, x)
globális k1 k2 m1 m2;
dy = nulla (4, 1); 4% egyenletek
dy (1) = K1 / m1 * x (1) + k2 / m1 * (x (2) - X (1));
dy (2) = K2O / m2 * (x (2) - X (1));
dy (3) = dy (1);
dy (4) = dy (2);

Nem értem, ahol az összes paraméter t és x születik oscillator1 funkciót? Amennyiben az átcsoportosítás? Nem tudom, hogy pontosan hol, azt elküldik, és hány változót át ezt a funkciót. )

A parancs ablakban rám:

törölje az összes;
globális k1 k2 m1 m2;
K1 = 2; k2 = 3; m1 = 2; m2 = 3;
t = 1;
# 91; T, Y # 93; = Ode45 (@ oscillator1, # 91; 0 # 4 93; # 91; 1 1 0 0 # 93;);
plot (T, Y (:, 1), '- o')

De a szinuszhullám, mint korábban, nem működik. Kiderült valamiféle tartozó grafikon y = 1 lefelé, aszimptotikusan nullához közelít :) külleme exponenciális telepített balról jobbra :)

Így is, helyes kódok (legfeljebb a kívánt intervallum integráció, és a kezdeti adatok és érthetetlen). Első pillantásra nem világos, ahol az orrmelléküregek lesz, mert nem lehet egyértelműen látható, hogy az első egyenlet a következő formában, így várható, csökkenő exponenciális függvény - ez normális. Azonban a helyszínen az ellipszis néhány szemetet, így ez nem teljesen a kiállító. Nem hiszem, hogy még ha más lesz a melléküregek, de nem tudom biztosan kezdeti adatok.
De a pszichikai képességek suttognak nekem, hogy az eredetileg megadott 2 diffura másodrendű, ami a döntés az autó, kell hozni először a 4 diffuram elsőrendű. De ez a megközelítés nem ad orrmelléküregek. Ellenőrizze, milyen problémát megoldani?

Nem értem, ahol az összes paraméter t és x születik oscillator1 funkciót? Amennyiben az átcsoportosítás? Nem tudom, hogy pontosan hol, azt elküldik, és hány változót át ezt a funkciót. )


Átadásra kerül a funkció ode45. ode45 funkciót valósít népszerű integrátor diffurov 1. rendű beágyazott Runge-Kutta képletekben 5 (4) Dorman-Prince. Integrator kell számítani az értékét a jobb oldalon diffurov néhány ponton. Itt úgy néz ki minden, és helyettesíti az értékeket az oszcillátor működését. Ezt megteheti, hogy kövesse, javára az eredeti funkciót kódot ode45 nyitni.

Nos, akkor, ahogy általában lenni szokott, meg új változók és átírni az egyenlet típus

Akkor X jelentése egy vektor matlabovsky

Azt hiszem, már mind programozni.


Valami még mindig nem érti, hogyan fog kinézni a Matlabovskoy funkció :) Próbáltam másolni erről:

dy (1) = x (1);
dy (2) = x (2);
dy (3) = - (k1 / m1) * x (1) + k2 / m1 * (x (2) - X (1));
dy (4) = - (k2 / m2) * (x (2) - X (1));

hanem úgy tűnik, nem. Akár én teljesen zavaros változókat. Ami azt illeti, azóta dy (3) és dy (4) ez egy V1”, v2' ?