Sistema equazioni differenziali primo ordine
Salve a tutti. E' tutto il pomeriggio che cerco di capire come poter risolvere numericamente questo sistema con Matlab (ode45), senza riscuotere successo. Il problema è che non riesco ad ottenere, come faccio solitamente, un sistema del tipo $dot y=A*y+B$ da dare poi in pasto all'integratore. Come mi consigliate di procedere?
$\{(dot \bar( \alpha)(t)=[A]^(-1)*(\bar( w)-[R]*\bar( w_0))),(dot \bar(w)(t)=^(-1)*([kp]*[[\phi_c],[\theta_c],[\psi_c]]-[kp]*[[\phi],[\theta],[\psi]]+[kd]*[[dot \phi],[dot \theta],[dot \psi]]- \bar(w) ^^ \bar(w))):}$
Dove:
$\bar( \alpha)=[[\phi],[\theta],[\psi]]$
$[A]=[[1,0,sin\theta],[0,cos\phi,sin\phi*cos\theta],[0,-sin\phi,cos\phi*cos\theta]]$
$[R]=f(\phi,\theta,\psi)$
$[kp]=[[kp_1,0,0],[0,kp_2,0],[0,0,kp_3]]$
$[kd]=[[kd_1,0,0],[0,kd_2,0],[0,0,kd_3]]$
$=[[I_x,0,0],[0,I_y,0],[0,0,I_z]]$
Sono noti tutti i termini tranne i vettori $\bar(\alpha)$ e $\bar(w)$.
$\{(dot \bar( \alpha)(t)=[A]^(-1)*(\bar( w)-[R]*\bar( w_0))),(dot \bar(w)(t)=^(-1)*([kp]*[[\phi_c],[\theta_c],[\psi_c]]-[kp]*[[\phi],[\theta],[\psi]]+[kd]*[[dot \phi],[dot \theta],[dot \psi]]- \bar(w) ^^ \bar(w))):}$
Dove:
$\bar( \alpha)=[[\phi],[\theta],[\psi]]$
$[A]=[[1,0,sin\theta],[0,cos\phi,sin\phi*cos\theta],[0,-sin\phi,cos\phi*cos\theta]]$
$[R]=f(\phi,\theta,\psi)$
$[kp]=[[kp_1,0,0],[0,kp_2,0],[0,0,kp_3]]$
$[kd]=[[kd_1,0,0],[0,kd_2,0],[0,0,kd_3]]$
$=[[I_x,0,0],[0,I_y,0],[0,0,I_z]]$
Sono noti tutti i termini tranne i vettori $\bar(\alpha)$ e $\bar(w)$.
Risposte
p.s.: ho postato nella sezione giusta?
mi permetto di uppare...
Ci sono alcune cose che non sono chiare:
1) quali sono le componenti del vettore $w$?
2) le varie matrici presenti sono costanti o dipendono da $t$?
3) con $[R]$ intendi una matrice o uno scalare?
4) come è fatto il prodotto $w\wedge w$? Intendi il prodotto vettoriale?
1) quali sono le componenti del vettore $w$?
2) le varie matrici presenti sono costanti o dipendono da $t$?
3) con $[R]$ intendi una matrice o uno scalare?
4) come è fatto il prodotto $w\wedge w$? Intendi il prodotto vettoriale?
$\omega$ è composto da $[\omega_x, \omega_y,\omega_z]$.
$[R]$ è una matrice costituita dal prodotto di tre matrici di rotazione di Eulero: $[R]=[[cos(\phi),sin(\phi),0],[-sin(\phi),cos(phi),0],[0,0,1]]*[[cos(\theta),0,-sin(\theta)],[0,1,0],[sin(\theta),0,cos(theta)]]*[[1,0,0],[0,cos(\psi),sin(\psi)],[0,-sin(\psi),cos(psi)]]$
Le matrici $[k_p]$,$[k_d]$,$$ sono note e costanti mentre con $^^$ indico il prodotto vettoriale.
Sono riuscito ad implementare un ciclo iterativo Matlab, tuttavia il docente sostiene che c'è un modo di ottenere la soluzione tramite un integratore di tipo ode45. Servirebbe quindi scrivere il sistema in qualcosa del tipo:
$dot y = [A]* y$, dove $y=[[\bar \alpha],[\bar \omega],[dot \bar \alpha],[dot \bar \omega]]$ ed $dot y=[[dot \bar \alpha],[dot \bar \omega],[ddot \bar \alpha],[ddot \bar \omega]]$
$[R]$ è una matrice costituita dal prodotto di tre matrici di rotazione di Eulero: $[R]=[[cos(\phi),sin(\phi),0],[-sin(\phi),cos(phi),0],[0,0,1]]*[[cos(\theta),0,-sin(\theta)],[0,1,0],[sin(\theta),0,cos(theta)]]*[[1,0,0],[0,cos(\psi),sin(\psi)],[0,-sin(\psi),cos(psi)]]$
Le matrici $[k_p]$,$[k_d]$,$$ sono note e costanti mentre con $^^$ indico il prodotto vettoriale.
Sono riuscito ad implementare un ciclo iterativo Matlab, tuttavia il docente sostiene che c'è un modo di ottenere la soluzione tramite un integratore di tipo ode45. Servirebbe quindi scrivere il sistema in qualcosa del tipo:
$dot y = [A]* y$, dove $y=[[\bar \alpha],[\bar \omega],[dot \bar \alpha],[dot \bar \omega]]$ ed $dot y=[[dot \bar \alpha],[dot \bar \omega],[ddot \bar \alpha],[ddot \bar \omega]]$
Mmmmm... non credo si possa fare, ma ci devo pensare. Il problema sta in quel prodotto vettoriale, in sostanza, che rende il tutto non lineare (almeno ad occhio).
quindi dici che non è possibile?
Scusa, non ho avuto tempo di rispondere in questi giorni causa assenza. Se devo essere sincero, continuo a non vedere come sia possibile rendere lineare quell'affare. Secondo me, il tuo docente ha preso una cantonata. Oppure c'è qualche cosa che manca (nel senso qualche ulteriore proprietà che al momento mi sfugge).