You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Aug 13, 2020. It is now read-only.
En pyfme/utils/coordinates.py, la función check_theta_phi_psi_range(theta, phi, psi) comprueba que el valor de los ángulos de Euler está dentro de rango. Sin embargo, al integrar si el avión tiene orientación psi=0.05 y en el siguiente instante psi=-0.05 se lanza un ValueError porque psi está fuera de rango. Esto fue una idea de @JuanMatSa y mía al implementar los cambios de coordenadas, pero está haciendo que se interrumpa la integración cuando el avión pasa de por este valor de psi.
Existen varias opciones para arreglarlo:
Tras cada paso de integración el valor de los ángulos de Euler se mete dentro de rango: psi=-0.01 --> psi=2pi - 0.01
Eliminar comprobación de rango. En mi opinión no es buena idea: si no se tienen en cuenta las restricciones en el dominio de los ángulos de Euler a una misma posición del avión le pueden corresponder varia combinaciones de ángulos (por ejemplo: psi=180, theta=60, phi=180, sería igual que psi=0, theta=120, phi=0, sólo la primera es válida).
Otras que podáis proponer.
Hasta que se haga merge de #65 el error se puede reproducir poniendo en oop_example.pyturn_rate != 0.0 # rad/s e integrando durante tiempo suficiente.