odemultipleshooting.py 文件源码

python
阅读 29 收藏 0 点赞 0 评论 0

项目:casiopeia 作者: adbuerger 项目源码 文件源码
def __compute_continuity_constraints(self):

        integrator = ci.Integrator("integrator", "rk", self.__ode_scaled, {"t0": 0, "tf": 1, "expand": True})

        params = ci.vertcat([np.atleast_2d(self.time_points[1:] - self.time_points[:-1]), \
            self.optimization_variables["U"], \
            ci.repmat(self.optimization_variables["Q"], 1, self.number_of_intervals), \
            ci.repmat(self.optimization_variables["P"], 1, self.number_of_intervals), \
            self.optimization_variables["EPS_U"]])

        shooting = integrator.map("shooting", "openmp", self.number_of_intervals)
        X_next = shooting(x0 = self.optimization_variables["X"][:,:-1], \
            p = params)["xf"]

        self.__continuity_constraints = \
            self.optimization_variables["X"][:, 1:] - X_next
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号