コード例 #1
0
ファイル: ZhuravlevTwisting.py プロジェクト: stpua/siconos
dataPlot = empty((N + 1, 5))
control = empty((N + 1, ))
dataPlot[0, 0] = t0
dataPlot[0, 1:3] = process.x()
dataPlot[0, 3] = myProcessInteraction.lambda_(0)[0]
dataPlot[0, 4] = myProcessInteraction.lambda_(0)[1]
# time loop
k = 1
while (s.hasNextEvent()):
    s.advanceToEvent()
    dataPlot[k, 0] = s.nextTime()
    dataPlot[k, 1] = process.x()[0]
    dataPlot[k, 2] = process.x()[1]
    dataPlot[k, 3] = myProcessInteraction.lambda_(0)[0]
    dataPlot[k, 4] = myProcessInteraction.lambda_(0)[1]
    control[k] = process.r()[1]
    k += 1
    s.nextStep()
    #print s.nextTime()

# save to disk
np.savetxt('ZI_Twisting.txt', dataPlot)
np.savetxt('ZI_Twisting_u.txt', control)
# plot interesting stuff
plt.subplot(411)
plt.title('s')
plt.plot(dataPlot[:, 0], dataPlot[:, 1])
plt.grid()
plt.subplot(412)
plt.title('v')
plt.plot(dataPlot[:, 0], dataPlot[:, 2])
コード例 #2
0
dataPlot = empty((N+1,5))
control = empty((N+1,))
dataPlot[0, 0] = t0
dataPlot[0, 1:3] = process.x()
dataPlot[0, 3] = myProcessInteraction.lambda_(0)[0]
dataPlot[0, 4] = myProcessInteraction.lambda_(0)[1]
# time loop
k = 1
while(s.hasNextEvent()):
     s.newtonSolve(1e-14, 30)
     dataPlot[k, 0] = s.nextTime()
     dataPlot[k, 1] = process.x()[0]
     dataPlot[k, 2] = process.x()[1]
     dataPlot[k, 3] = myProcessInteraction.lambda_(0)[0]
     dataPlot[k, 4] = myProcessInteraction.lambda_(0)[1]
     control[k] = process.r()[1]
     k += 1
     s.nextStep()
     #print s.nextTime()

# save to disk
np.savetxt('output.txt', dataPlot)
# plot interesting stuff
plt.subplot(411)
plt.title('s')
plt.plot(dataPlot[:,0], dataPlot[:,1])
plt.grid()
plt.subplot(412)
plt.title('v')
plt.plot(dataPlot[:,0], dataPlot[:,2])
plt.grid()