$Set N 100 parameter T ; T = 10 ; parameter g ; g = 9.8 ; parameter m_arm ; m_arm = 10 ; parameter m_object ; m_object = 1 ; parameter m_hand ; m_hand = 1 ; parameter m_fore ; m_fore = 5 ; parameter d ; d = 0.1 ; Set I /I1*I3/; Set J /0*%N%/; parameter k[I] ; k[I] = 1 ; parameter theta_0 ; theta_0 = 0 ; parameter l_0 ; l_0 = 1 ; parameter n_0 ; n_0 = 1 ; parameter theta_N ; theta_N = 1 ; parameter l_N ; l_N = 2 ; parameter n_N ; n_N = 1 ; parameter hs ; hs = 1 ; parameter hd ; hd = 1 ; parameter rd ; rd = 1 ; parameter dh_dr ; dh_dr = 1 ; Variable theta[j] , thetadot[j] , thetadot2[j] , l[j] , ldot[j] , ldot2[j] , n[j] , ndot[j] , ndot2[j] , u[i,j] , a , b , J_obj ; Equation def_a , def_b , thetadt_d(j) , thetadt2_d(j) , ldot_def(j) , ldot2_def(j) , ndot_def(j) , ndot2_def(j) , t_dt2_cnst(j) , l_dt2_cnst(j) , n_dt2_cnst(j) , defobj ; def_a.. a =e= sqrt( sqr(l['%N%']) + sqr(d) + 2*l['%N%']*d*cos(n['%N%'])); def_b.. b =e= d*sin(n['%N%'])/(a+0.001); thetadt_d(j)$(ord(j)>1).. %N%*(theta[j]-theta[j-1]) =e= T*thetadot[j]; thetadt2_d(j)$((ord(j)>1)and(ord(j)1).. %N%*(l[j]-l[j-1]) =e= T*ldot[j]; ldot2_def(j)$((ord(j)>1)and(ord(j)1).. %N%*(n[j]-n[j-1]) =e= T*ndot[j]; ndot2_def(j)$((ord(j)>1)and(ord(j)1)and(ord(j)1)and(ord(j)1)and(ord(j)1)and(ord(j)