# ps.print_stats() # ps.print_callers(.5, 'init') # print >> f, s.getvalue() #apply control to real system x0 = np.array([[0.0], [0.0]]) realsys = Pendulum(systeminfo['params']) print 'running system...' xtraj_sys = realsys.splitAngle(realsys.runSystem(x0, ddp.uk)) print 'running model...' xtraj_model = sys.runSystem(x0_model, uk0) print 'running system with feedback' xtraj_sys_feedback = realsys.splitAngle( realsys.runSystemWithFeedback(x0, ddp.uk, ddp.K[:, :xdim, 0, :], xtraj_model[:xdim, :], feedback_split=True)) print 'plotting...' fig, axes = plt.subplots(nrows=xdim + 1, ncols=1) pd.DataFrame(ddp.uk.T).plot(ax=axes[0], legend=False, title='u') for i in xrange(xdim): pd.DataFrame(np.vstack( [xtraj_model[i, -Horizon:], xtraj_sys[i, :], xtraj_sys_feedback[i, :]]).T, columns=['model', 'sys', 'sys w feedback']).plot(ax=axes[i + 1], title=i) sio.savemat( 'pendulum_model_delayddp.mat', {