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