|
| x1 |
|
| x2 |
|
| p = cs.SX.sym("p") |
|
tuple | f_expr = (1 - x1) ** 2 + p * (x2 - x1 ** 2) ** 2 |
|
| g_expr |
|
| x = cs.vertcat(x1, x2) |
|
| f = cs.Function("f", [x, p], [f_expr]) |
|
| g = cs.Function("g", [x, p], [g_expr]) |
|
| prob = pa.generate_and_compile_casadi_problem(f, g) |
|
| lowerbound |
|
| upperbound |
|
| param |
|
| innersolver |
|
list | iterates = [] |
|
| solver |
|
| x0 = np.array([0.1, 1.8]) |
|
| y0 = np.zeros((prob.m,)) |
|
| x_sol |
|
| y_sol |
|
| stats |
|
| cost_function_v = np.vectorize(prob.f, signature='(n)->()') |
|
| constraint_g_v = np.vectorize(prob.g, signature='(n)->(m)') |
|
| y = np.linspace(-0.5, 2.5, 256) |
|
| X |
|
| Y |
|
| XY = np.vstack([[X], [Y]]).T |
|
| figsize |
|
| Zf = cost_function_v(XY).T |
|
| Zg = constraint_g_v(XY) |
|
| Zgc = Zg[:,:,0].T |
|
| Zgl = Zg[:,:,1].T |
|
list | fx = [patheffects.withTickedStroke(spacing=7, linewidth=0.8)] |
|
| cgc = plt.contour(X, Y, Zgc, [0], colors='black', linewidths=0.8, linestyles='-') |
|
| collections |
|
| path_effects |
|
| cgl = plt.contour(X, Y, Zgl, [0], colors='black', linewidths=0.8, linestyles='-') |
|
| xl = plt.contour(X, Y, -X, [-prob.C.lowerbound[0]], colors='black', linewidths=0.8, linestyles='-') |
|
| xy = np.array(iterates) |
|
| markersize |
|
| linewidth |
|
| fillstyle |
|