Exemplo n.º 1
0
    # bounds
    r = 0.3
    nmhe.bound('x',(-2*r,2*r))
    nmhe.bound('z',(-2*r,2*r))
    nmhe.bound('dx',(-50,50))
    nmhe.bound('dz',(-50,50))
    nmhe.bound('m',(0.28,0.32))

    # boundary conditions
#    nmhe.bound('x',(r,r),timestep=0)
#    nmhe.bound('z',(0,0),timestep=0)
#    nmhe.bound('dx',(0,0),timestep=0)
#    nmhe.bound('dz',(0,0),timestep=0)

    # constrain invariants
    nmhe.constrain(nmhe.lookup('c',timestep=0),'==',0)
    nmhe.constrain(nmhe.lookup('cdot',timestep=0),'==',0)

    # initial guess
    nmhe.guess('m',0.3)
    for k in range(nk+1):
        nmhe.guess('x', xTraj[k][0],timestep=k)
        nmhe.guess('z', xTraj[k][1]+0.1,timestep=k)
        nmhe.guess('dx',xTraj[k][2],timestep=k)
        nmhe.guess('dz',xTraj[k][3],timestep=k)

    # make objective
    obj = 0
    for k in range(nk+1):
        nmhe.addGaussNewtonObjF(nmhe('x',timestep=k) - xTraj[k][0])
        nmhe.addGaussNewtonObjF(nmhe('z',timestep=k) - xTraj[k][1])
Exemplo n.º 2
0
    # bounds
    r = 0.3
    nmhe.bound('x', (-2 * r, 2 * r))
    nmhe.bound('z', (-2 * r, 2 * r))
    nmhe.bound('dx', (-50, 50))
    nmhe.bound('dz', (-50, 50))
    nmhe.bound('m', (0.28, 0.32))

    # boundary conditions
    #    nmhe.bound('x',(r,r),timestep=0)
    #    nmhe.bound('z',(0,0),timestep=0)
    #    nmhe.bound('dx',(0,0),timestep=0)
    #    nmhe.bound('dz',(0,0),timestep=0)

    # constrain invariants
    nmhe.constrain(nmhe.lookup('c', timestep=0), '==', 0)
    nmhe.constrain(nmhe.lookup('cdot', timestep=0), '==', 0)

    # initial guess
    nmhe.guess('m', 0.3)
    for k in range(nk + 1):
        nmhe.guess('x', xTraj[k][0], timestep=k)
        nmhe.guess('z', xTraj[k][1] + 0.1, timestep=k)
        nmhe.guess('dx', xTraj[k][2], timestep=k)
        nmhe.guess('dz', xTraj[k][3], timestep=k)

    # make objective
    obj = 0
    for k in range(nk + 1):
        nmhe.addGaussNewtonObjF(nmhe('x', timestep=k) - xTraj[k][0])
        nmhe.addGaussNewtonObjF(nmhe('z', timestep=k) - xTraj[k][1])