helloworld.py 文件源码

python
阅读 31 收藏 0 点赞 0 评论 0

项目:TurbPlasma 作者: tulasinandan 项目源码 文件源码
def c_correlation(ar1,ar2,ax=0,dx=1.):
   lib = ctypes.cdll.LoadLibrary('/home/tulasi/P3D-PLASMA-PIC/p3dpy/helloworld.so')
   func = lib.c_correlation
   func.restype = None
   func.argtypes = [ndpointer(ctypes.c_double, flags="C_CONTIGUOUS"),   #ar1
                    ndpointer(ctypes.c_double, flags="C_CONTIGUOUS"),   #ar2
                    ctypes.c_double,              #dx
                    ctypes.c_int,                 #nlen
                    ctypes.c_int,                 #nx
                    ctypes.c_int,                 #ny
                    ctypes.c_int,                 #nz
                    ctypes.c_int,                 #ax
                    ndpointer(ctypes.c_double, flags="C_CONTIGUOUS"),   #r
                    ndpointer(ctypes.c_double, flags="C_CONTIGUOUS")]   #corr
# nlen finds the length of the array in the specified direction
   nlen=np.shape(ar2)[ax]/2; 
   nx=np.shape(ar1)[0]; 
   ny=np.shape(ar1)[1]; 
   nz=np.shape(ar1)[2]
   r=np.zeros(nlen);corr=np.zeros(nlen)
   func(np.ascontiguousarray(ar1),np.ascontiguousarray(ar2),dx,nlen,nx,ny,nz,ax,r,corr)
#  func(ar1,ar2,dx,nlen,nx,ny,nz,ax,r,corr)
   return r,corr
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号