@@ -238,26 +238,26 @@ def create(cls, r0, rddot0, u0, h):
238238 xdot0 = AffineHelper .pile (rdot , rddot )
239239
240240 integration_ = euler (x0 , xdot0 , x1 , dt )
241- integration .append (GenericTask (f"integration_{ i } " , integration_ .getM (), integration_ .getq ()))
241+ integration .append (GenericTask (f"integration_{ i } " , integration_ .getM (), - integration_ .getq ()))
242242
243243
244244integration_constraint = AggregatedTask (integration , variables .getSize ()) + integration_0_constraint
245245#plt.spy(integration_constraint.getA(), markersize=5)
246246#plt.show()
247247
248- xinit = variables .getVariable ("x0" ) + np .hstack ((model .getCOM ()[0 :2 ], model .getCOMVelocity ()[0 :2 ]))
249- initial_state = GenericTask ("initial_state" , xinit .getM (), xinit .getq ())
248+ xinit = variables .getVariable ("x0" ) - np .hstack ((model .getCOM ()[0 :2 ], model .getCOMVelocity ()[0 :2 ]))
249+ initial_state = GenericTask ("initial_state" , xinit .getM (), - xinit .getq ())
250250
251251zmp_tasks = list ()
252252for i in range (Ns ):
253- min_ui = GenericTask ("zmp_tracking" , variables .getVariable (f"u{ i } " ).getM (), variables .getVariable (f"u{ i } " ).getq ())
253+ min_ui = GenericTask ("zmp_tracking" , variables .getVariable (f"u{ i } " ).getM (), - variables .getVariable (f"u{ i } " ).getq ())
254254 min_ui .setWeight (1e6 * np .array ([[1 , 0 ], [0 , 1 ]]))
255255 zmp_tasks .append (min_ui )
256256zmp_tracking_task = AggregatedTask (zmp_tasks , variables .getSize ())
257257
258258x_tasks = list ()
259259for i in range (Ns + 1 ):
260- min_xi = GenericTask ("min_x" , variables .getVariable (f"x{ i } " ).getM (), variables .getVariable (f"x{ i } " ).getq ())
260+ min_xi = GenericTask ("min_x" , variables .getVariable (f"x{ i } " ).getM (), - variables .getVariable (f"x{ i } " ).getq ())
261261 Q = 1e-3 * np .array ([[0 , 0 , 0 , 0 ], [0 , 0 , 0 , 0 ], [0 , 0 , 1 , 0 ], [0 , 0 , 0 , 1 ]])
262262 if i == Ns :
263263 Q = 2e2 * np .array ([[0 , 0 , 0 , 0 ], [0 , 0 , 0 , 0 ], [0 , 0 , 1 , 0 ], [0 , 0 , 0 , 1 ]])
@@ -285,7 +285,7 @@ def create(cls, r0, rddot0, u0, h):
285285pelvis = Cartesian ("pelvis" , model , "pelvis" , "world" , variables .getVariable ("acc0" ))
286286
287287# Create the stack
288- min_acc = GenericTask ("min_acc" , variables .getVariable ("acc0" ).getM (), variables .getVariable ("acc0" ).getq ())
288+ min_acc = GenericTask ("min_acc" , variables .getVariable ("acc0" ).getM (), - variables .getVariable ("acc0" ).getq ())
289289cost = min_xdot_task + zmp_tracking_task + 1e-3 * min_acc + com [2 ] + 1e-3 * postural [18 :] + 0.1 * amom + 0.1 * pelvis [3 :]
290290for foot_frame in foot_frames :
291291 cost = cost + contact_tasks [foot_frame ]
0 commit comments