pts0 = np.asarray( [lines[:, 0, :].ravel(), lines[:, 1, :].ravel()]).T pts_at_T = cpa_space.calc_T(pat=pat, pts=pts0, mysign=1, **params_flow_int) trajectories = cpa_space.calc_trajectory(pat=pat, pts=pts0, mysign=1, **params_flow_int) plt.figure() nPts = trajectories.shape[1] for i in range(nPts)[::10]: traj = trajectories[:, i] plt.plot(traj[:, 0], traj[:, 1]) toc = time.clock() print 'time', toc - tic if Nx != Ny: raise NotImplementedError lines_old_x = pts0[:, 0].reshape(lines[:, 0, :].shape).copy() lines_old_y = pts0[:, 1].reshape(lines[:, 0, :].shape).copy() lines_new_x = pts_at_T[:, 0].reshape(lines[:, 0, :].shape).copy() lines_new_y = pts_at_T[:, 1].reshape(lines[:, 0, :].shape).copy()
cpa_space.calc_v(pts=pts, out=v) v.gpu2cpu() img = v.cpu[:, 1].reshape(cpa_space.x_dense_grid.shape[1:]) plt.subplot(132) plt.imshow(img[:, :, 0, 0], interpolation="None") plt.colorbar() # 1/0 print params_flow_int print '#pts=', len(pts) tic = time.clock() cpa_space.calc_T_fwd(pts=pts, out=pts_fwd, **params_flow_int) toc = time.clock() print 'time (calc T)', toc - tic print "For display, do gpu2cpu" tic = time.clock() pts_fwd.gpu2cpu() toc = time.clock() print 'time (gpu2cpu)', toc - tic # p=pts.cpu.reshape(cpa_space.x_dense_grid.shape) n = (Ngrids[0] + 1) * (Ngrids[1] + 1) plt.subplot(133) plt.plot(pts.cpu[:n, 0], pts.cpu[:n, 1], '.g') plt.plot(pts_fwd.cpu[:n, 0], pts_fwd.cpu[:n, 1], '.r') plt.axis('scaled')
v.gpu2cpu() img=v.cpu[:,1].reshape(cpa_space.x_dense_grid.shape[1:]) plt.subplot(132) plt.imshow(img[:,:,0,0],interpolation="None");plt.colorbar() # 1/0 print params_flow_int print '#pts=',len(pts) tic=time.clock() cpa_space.calc_T_fwd(pts=pts,out=pts_fwd, **params_flow_int) toc = time.clock() print 'time (calc T)',toc-tic print "For display, do gpu2cpu" tic = time.clock() pts_fwd.gpu2cpu() toc = time.clock() print 'time (gpu2cpu)',toc-tic # p=pts.cpu.reshape(cpa_space.x_dense_grid.shape) n = (Ngrids[0]+1)*(Ngrids[1]+1) plt.subplot(133) plt.plot(pts.cpu[:n,0],pts.cpu[:n,1],'.g') plt.plot(pts_fwd.cpu[:n,0],pts_fwd.cpu[:n,1],'.r') plt.axis('scaled')
pts0=np.asarray([lines[:,0,:].ravel(),lines[:,1,:].ravel()]).T pts_at_T=cpa_space.calc_T(pat=pat, pts=pts0, mysign=1,**params_flow_int ) trajectories=cpa_space.calc_trajectory(pat=pat, pts=pts0, mysign=1,**params_flow_int ) plt.figure() nPts = trajectories.shape[1] for i in range(nPts)[::10]: traj = trajectories[:,i] plt.plot(traj[:,0],traj[:,1]) toc=time.clock() print 'time',toc-tic if Nx != Ny: raise NotImplementedError lines_old_x=pts0[:,0].reshape(lines[:,0,:].shape).copy() lines_old_y=pts0[:,1].reshape(lines[:,0,:].shape).copy() lines_new_x=pts_at_T[:,0].reshape(lines[:,0,:].shape).copy() lines_new_y=pts_at_T[:,1].reshape(lines[:,0,:].shape).copy()