예제 #1
0
 def get_sparsity_in(self, i):
     n = cas.nlpsol_out(i)
     if n == 'f':
         return cas.Sparsity.scalar()
     elif n in ('x', 'lam_x'):
         return cas.Sparsity.dense(self.nx)
     elif n in ('g', 'lam_g'):
         return cas.Sparsity.dense(self.ng)
     elif n in ('p', 'lam_p'):
         return cas.Sparsity.dense(self.np)
     else:
         return cas.Sparsity(0, 0)
예제 #2
0
    def eval(self, arg):
        print('TEST')
        darg = {}
        for (i, s) in enumerate(cas.nlpsol_out()):
            darg[s] = arg[i]
        sol = darg['x']
        V = self.V_callback(sol)
        model = self.model
        #plot_trajectory(V)
        plot_states(V, model)
        plot_controls(V, model)
        plot_algebraic_vars(V, model)
        plot_invariants(V, self.p_fix_num(0.), self.nlp)
        plt.show(block=True)
        # time.sleep(1)
        # plt.close('all')

        return [0]
예제 #3
0
 def get_name_in(self, i):
     return cas.nlpsol_out(i)