Documente Academic
Documente Profesional
Documente Cultură
1 Descrierea modelului
⊤
Fie vectorul de poziţie r(t) = x(t) y(t) z(t) . Atunci mişcarea unui satelit care orbitează Pămân-
tul poate fi aproximată cu soluţia sistemul de ecuaţii diferenţiale
x − 5xz 2
∥r∥2
2
GM⊕ r 3
R⊕ y − 5yz
2 2 x ẏ
r̈(t) = − − J2 GM⊕ + ω⊕ y + 2ω⊕ −ẋ; r(t0 ) = r0 , ṙ(t0 ) = ṙ0 .
2
∥r∥22 ∥r∥2 2 ∥r∥52
∥r∥ 2
2 0 0
3z − 5z 3
∥r∥22
| {z }
f (t,r(t),ṙ(t))
Pentru a evita necesitatea transformărilor explicite ale sistemului de referință, ecuația mișcării este
exprimată în sistemul de referință fixat de Pământ și aflat în rotație. În consecință, termenii centrifugi
și Coriolis sunt luați în considerare în accelerația modelată. Constantele au valorile din Tabelul 1.
Modelul
Se consideră doi sateliţi care orbitează Pământul, cu vectorii de poziţie r1 (t) şi r2 (t). Modelul este
descris de
r̈1 (t) = f (t, r1 (t), ṙ1 (t))+u(t), (1a)
r̈2 (t) = f (t, r2 (t), ṙ2 (t)), (1b)
∥r1 (t) − r2 (t)∥2
ε̇(t) = (1c)
∥r2 (t)∥2
y(t) = ϵ(t) (1d)
Semnalul exogen u(t) = k · 10−3 · 1(t) reprezintă o acceleraţie perturbatoare cu o valoare constantă k,
aleasă de voi.
Condiţiile iniţiale sunt
⊤
r1 (t0 ) = 106 · −3.111566746661099 2.420733547442338 −5.626803092559423
⊤
ṙ1 (t0 ) = 103 · 4.953572247000772 −3.787243278806948 −4.362500902062312
⊤
r2 (t0 ) = 106 · −3.422723421327209 2.662806902186572 −6.189483401815366
⊤
ṙ2 (t0 ) = 103 · 5.448929471700850 −4.165967606687643 −4.798750992268544
1
2 Cerinţe
[0.5 p.] 1. Alegeţi o condiţie iniţială ε(t0 ).
[3 p.] 2. Implementaţi modelul (1) în Simulink folosind blocuri Integrator şi Matlab function. În
raport, includeţi schema Simulink a modelului.
[4 p.] 3. Rearanjaţi (1) sub forma unui sistem de ecuaţii diferenţiale de ordinul I. Descrieţi noul sistem
de ecuaţii în raport.
[4 p.] 4. Rezolvaţi sistemul rezultat în cerinţa 3 prin integrare numerică, implementând metoda Runge-
Kutta descrisă mai jos:
h
y(t + h) ≈ y(t) + (k1 + 2k2 + 2k3 + k4 )
6
k1 = f (t, y(t)),
Å ã
h hk1
k2 = f t + , y(t) + ,
2 2
Å ã
h hk2
k3 = f t + , y(t) + ,
2 2
k4 = f (t + h, y(t) + hk3 ) ,
[0.5 p.] 5. Ilustraţi orbita sateliţilor (soluţiile r1 (t) şi r2 (t)), pentru aceleaşi condiţii iniţiale şi în acelaşi
grafic, folosind funcţia Matlab plot3. Comparaţi grafic rezultatele obţinute în Simulink şi prin
utilizarea metodei Runge-Kutta cu pas constant.
• Realizați simulări în Simulink și prin metoda numerică Runge-Kutta pentru a obține ieșirile
y Slx (t) și y RK (t), respectiv.
• În cazul în care vectorii de timp pentru cele două simulări au lungimi diferite, utilizați
funcția interp1 din Matlab pentru a interpola ieșirile a.î. să aibă același număr de elemente.
• Calculați eroarea de integrare ca norma-2 a diferenței dintre ieșirile obținute la fiecare
moment de timp, folosind formula: ∥y Slx (t) − y RK (t)∥2 .
• Ilustrați eroarea de integrare printr-un grafic și discutați rezultatele obținute.
2
[1.5 p.] 9. Incertitudine multiplicativă:
• Considerăm o incertitudine aditivă a poziției inițiale r2 (t0 ) dată de r̃2 (t0 ) = α + r2 (t0 ),
unde α ∈ R3 , iar fiecare componentă αi ∼ N (0, 5), i = 1 : 3.
• Efectuați 100 de simulări cu această incertitudine și ilustrați evoluția lui y(t) pe același
grafic.
• Analizați probabilitatea ca distanța relativă totală dintre sateliți ε(t) să depășească un
anumit prag ales de voi (de exemplu, 10 km), și discutați rezultatele.
[1.5 p.] 11. Analiza distribuției semnalului exogen și celei de-a “doua derivate discrete” a ieșirii:
• Presupunem că semnalul exogen u(t) are o distribuție normală, adică u(t) ∼ N (0, 1).
• Folosiți funcția diff din Matlab pentru a calcula a “doua derivată discretă” a ieșirii y(t).
Observaţie: funcția diff calculează “prima derivată discretă”.
• Ilustrați distribuția semnalului rezultat pe un grafic. Puteți utiliza comanda ylim([0
1000]) pentru a ajusta scara axei Y, dacă este necesar.
• Discutați ce observați referitor la distribuția semnalului rezultat comparativ cu distribuția
semnalului exogen.
Recomandări:
• folosiţi comanda xlabel pentru a seta denumirea axei Ox şi specificaţi unitatea de măsură
(dacă există) – ex: xlabel('Timp (s)');
• folosiţi comanda ylabel pentru a seta denumirea axei Oy şi specificaţi unitatea de măsură
(dacă există) – ex: ylabel('Theta (rad)');
• folosiţi comanda title pentru a seta titlul figurii;
• adăugaţi legenda folosind comanda legend;
Lipsa etichetelor aduce o depunctare de 10% puncte din punctajul asociat cerinţei.
2. Delimitaţi cerinţele în scriptul Matlab cu %%Cerinţa x pentru a crea secţiuni care pot fi execu-
tate independent.
3. Adăugaţi în raport graficele şi fragmentele de cod esenţiale cerute în fiecare exerciţiu. Oferiţi
explicaţii scurte şi concrete acolo unde este necesar.