diff --git a/src/include/clu_subs.h b/src/include/clu_subs.h index a02d51b70bd51aecd373c08183ee929b54b8ab5c..fa30ee95065a7db6f98f103d507479c82e47de8c 100644 --- a/src/include/clu_subs.h +++ b/src/include/clu_subs.h @@ -90,7 +90,13 @@ dcomplex cdtp(dcomplex z, dcomplex **am, int i, int jf, int k, int nj); * \param m: `int` * \return result: `double` */ +#ifdef USE_TARGET_OFFLOAD +#pragma omp begin declare target device_type(any) +#endif double cgev(int ipamo, int mu, int l, int m); +#ifdef USE_TARGET_OFFLOAD +#pragma omp end declare target +#endif /*! \brief Build the multi-centered M-matrix of the cluster. * @@ -129,10 +135,16 @@ void crsm1(double vk, double exri, ParticleDescriptor *c1); * \param c1: `ParticleDescriptor *` * \param rac3j: `dcomplex *` */ +#ifdef USE_TARGET_OFFLOAD +#pragma omp begin declare target device_type(any) +#endif dcomplex ghit_d( int ihi, int ipamo, int nbl, int l1, int m1, int l2, int m2, ParticleDescriptor *c1, double *rac3j ); +#ifdef USE_TARGET_OFFLOAD +#pragma omp end declare target +#endif /*! \brief Compute the transfer vector from N2 to N1. * @@ -148,10 +160,16 @@ dcomplex ghit_d( * \param m2: `int` * \param c1: `ParticleDescriptor *` Poiunter to a ParticleDescriptor instance. */ +#ifdef USE_TARGET_OFFLOAD +#pragma omp begin declare target device_type(any) +#endif dcomplex ghit( int ihi, int ipamo, int nbl, int l1, int m1, int l2, int m2, ParticleDescriptor *c1 ); +#ifdef USE_TARGET_OFFLOAD +#pragma omp end declare target +#endif /*! \brief Compute Hankel funtion and Bessel functions. * @@ -261,7 +279,13 @@ void r3j000(int j2, int j3, double *rac3j); * \param m3: `int` * \param rac3j: `double *` Vector of 3j symbols. */ +#ifdef USE_TARGET_OFFLOAD +#pragma omp begin declare target device_type(any) +#endif void r3jjr(int j2, int j3, int m2, int m3, double *rac3j); +#ifdef USE_TARGET_OFFLOAD +#pragma omp end declare target +#endif /*! \brief Compute the 3j symbol for Clebsch-Gordan coefficients for JJ transitions. * @@ -274,7 +298,13 @@ void r3jjr(int j2, int j3, int m2, int m3, double *rac3j); * \param m3: `int` * \param rac3j: `double *` */ +#ifdef USE_TARGET_OFFLOAD +#pragma omp begin declare target device_type(any) +#endif void r3jjr_d(int j2, int j3, int m2, int m3, double *rac3j); +#ifdef USE_TARGET_OFFLOAD +#pragma omp end declare target +#endif /*! \brief Compute the 3j symbol for Clebsch-Gordan coefficients for JM transitions. *