Exemple #1
0
# Guess.plot(prob.time_all_section, M_init, "Mass", "time", "Mass")
# if(flag_savefig):plt.savefig(savefig_file + "guess_mass" + ".png")

# thrust profile
T_init = Guess.cubic(prob.time_all_section, 3.5, 0.0, 0.0, 0.0)
# Guess.plot(prob.time_all_section, T_init, "Thrust Guess", "time", "Thrust")
# if(flag_savefig):plt.savefig(savefig_file + "guess_thrust" + ".png")

plt.show()

# ========================
# Substitution initial value to parameter vector to be optimized
prob.set_states_all_section(0, H_init)
prob.set_states_all_section(1, V_init)
prob.set_states_all_section(2, M_init)
prob.set_controls_all_section(0, T_init)

# ========================
# Main Process
# Assign problem to SQP solver
prob.dynamics = [dynamics]
prob.knot_states_smooth = []
prob.cost = cost
prob.cost_derivative = None
prob.equality = equality
prob.inequality = inequality


def display_func():
    h = prob.states_all_section(0)
    print("max altitude: {0:.5f}".format(h[-1]))
Exemple #2
0
theta_init = Guess.linear(prob.time_all_section, np.deg2rad(30),
                          np.deg2rad(30))
# Guess.plot(prob.time_all_section, theta_init, "gamma", "time", "gamma")
# if(flag_savefig):plt.savefig(savefig_dir + "guess_gamma" + savefig_add + ".png")

x_init = Guess.linear(prob.time_all_section, 0.0, obj.l)
# Guess.plot(prob.time_all_section, x_init, "x", "time", "x")
# if(flag_savefig):plt.savefig(savefig_dir + "guess_x" + savefig_add + ".png")

y_init = Guess.linear(prob.time_all_section, 0.0, obj.l / np.sqrt(3))
# Guess.plot(prob.time_all_section, theta_init, "y", "time", "y")
# if(flag_savefig):plt.savefig(savefig_dir + "guess_y" + savefig_add + ".png")

prob.set_states_all_section(0, x_init)
prob.set_states_all_section(1, y_init)
prob.set_controls_all_section(0, theta_init)

# ========================
# Main Process
# Assign problem to SQP solver
prob.dynamics = [dynamics]
prob.knot_states_smooth = []
prob.cost = cost
prob.cost_derivative = cost_derivative
prob.equality = equality
prob.inequality = inequality

prob.solve(obj)

# ========================
# Post Process