def control_oscillator(self, states, dt=1e-3, oscillator_dt=1e-6): no = NormalOscillator() output = list() oscillator_x = 0.0 oscillator_v = 0.0 for alpha,beta in states: params = {'alpha':alpha, 'beta':beta} ostates = no.run_simulation(params, dt, oscillator_dt, initial_x=oscillator_x, initial_v=oscillator_v) oscillator_x = ostates[-1, 0] oscillator_v = ostates[-1, 1] output.extend(ostates[:, 0]) return output
def control_oscillator(self, states, dt=1e-3, oscillator_dt=1e-6): no = NormalOscillator() output = list() oscillator_x = 0.0 oscillator_v = 0.0 for alpha, beta in states: params = {'alpha': alpha, 'beta': beta} ostates = no.run_simulation(params, dt, oscillator_dt, initial_x=oscillator_x, initial_v=oscillator_v) oscillator_x = ostates[-1, 0] oscillator_v = ostates[-1, 1] output.extend(ostates[:, 0]) return output