Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 编写可以在pyopencl中转换类型的函数_Python_Opencl_Pyopencl - Fatal编程技术网

Python 编写可以在pyopencl中转换类型的函数

Python 编写可以在pyopencl中转换类型的函数,python,opencl,pyopencl,Python,Opencl,Pyopencl,我正试图为pyopencl中的COMPLEX(cfloat_t)类型编写一些附加函数。我几乎没有使用OpenCL的经验,语法让我陷入了困境。我想写几个基本函数,它们可以接受实输入(在本例中为浮点),并将它们转换为复杂类型。例如,欧拉公式e^ix=cos(x)+isin(x),其中x为实输入 我以为这会像 #include <pyopencl-complex.h> #define REAL float #define COMPLEX cfloat_t COMPLE

我正试图为pyopencl中的COMPLEX(cfloat_t)类型编写一些附加函数。我几乎没有使用OpenCL的经验,语法让我陷入了困境。我想写几个基本函数,它们可以接受实输入(在本例中为浮点),并将它们转换为复杂类型。例如,欧拉公式e^ix=cos(x)+isin(x),其中x为实输入

我以为这会像

#include <pyopencl-complex.h>    
#define REAL      float
#define COMPLEX   cfloat_t
COMPLEX c_exp_i(REAL x)        {return (COMPLEX)(cos(x), sin(x));}

在阅读了pyopencl complex.h之后,我意识到有一个cfloat_new()函数可以解决所有问题

COMPLEX c_exp_i(REAL x)     {return cfloat_new(cos(x), sin(x));}
COMPLEX c_exp_i(REAL x)     {return cfloat_new(cos(x), sin(x));}