def test_gyroscope(self): qBO = np.array([.0,0.,0.,1.]) state = np.hstack((qBO,np.array([-0.1,0.39159385,-0.7]))) sat = satellite.Satellite(state,12.05) v_w_BI_b = sat.getW_BI_b() self.assertTrue(np.allclose(defblock.gyroscope(sat),v_w_BI_b))
) == 0: # we are printing percentage of cycle completed to keep track of simulation print(int(100 * i / Ncontrol)) if (i % (i_time_gps + i_time_J2) <= i_time_gps): propbool = 0 else: propbool = 1 # sensor reading if (sensbool == 0): # getting default sensor reading (zero noise in our case) Advitiy.setSun_b_m(defblock.sunsensor(Advitiy)) Advitiy.setMag_b_m_p(Advitiy.getMag_b_m_c()) Advitiy.setMag_b_m_c(defblock.magnetometer(Advitiy)) Advitiy.setgpsData(defblock.gps(Advitiy)) Advitiy.setOmega_m(defblock.gyroscope(Advitiy)) # Advitiy.setJ2Data(defblock.J2_propagator(Advitiy)) if (sensbool == 1): # getting sensor reading from models Advitiy.setSun_b_m(sensor.sunsensor(Advitiy)) Advitiy.setMag_b_m_p(Advitiy.getMag_b_m_c()) Advitiy.setMag_b_m_c(sensor.magnetometer(Advitiy)) Advitiy.setOmega_m(sensor.gyroscope(Advitiy)) if (propbool == 0): # Using sgp to propagate Advitiy.setgpsData(sensor.GPS(Advitiy)) if (propbool == 1): # Use J2 to propagate pos = Advitiy.getPos_J2()
def test_gyroscope(self): v_w_BI_b = np.array((-3.9999, 4.8575, 0)) self.assertTrue(np.allclose(defblock.gyroscope(v_w_BI_b), v_w_BI_b))