Skip to content

Commit

Permalink
fix for |m| == 1 spin-weighted
Browse files Browse the repository at this point in the history
  • Loading branch information
MikaelSlevinsky committed Mar 14, 2021
1 parent ecababf commit 91de307
Showing 1 changed file with 12 additions and 12 deletions.
24 changes: 12 additions & 12 deletions src/drivers.c
Original file line number Diff line number Diff line change
Expand Up @@ -718,10 +718,10 @@ void execute_spinsph_hi2lo_AVX(const ft_spin_rotation_plan * SRP, ft_complex * A
int N = SRP->n;
double * AD = (double *) A;
double * BD = (double *) B;
kernel_spinsph_hi2lo_default(SRP, 0, A, 1);
kernel_spinsph_hi2lo_default(SRP, -1, A + N, 1);
kernel_spinsph_hi2lo_default(SRP, 1, A + 2*N, 1);
permute_sph(AD, BD, 2*N, M, 2);
kernel_spinsph_hi2lo_default(SRP, 0, B, 1);
kernel_spinsph_hi2lo_default(SRP, -1, B + N, 1);
kernel_spinsph_hi2lo_default(SRP, 1, B + 2*N, 1);
#pragma omp parallel
for (int m = 2+FT_GET_THREAD_NUM(); m <= M/2; m += FT_GET_NUM_THREADS())
kernel_spinsph_hi2lo_AVX(SRP, m, B + N*(2*m-1), 2);
Expand All @@ -732,10 +732,10 @@ void execute_spinsph_lo2hi_AVX(const ft_spin_rotation_plan * SRP, ft_complex * A
int N = SRP->n;
double * AD = (double *) A;
double * BD = (double *) B;
kernel_spinsph_lo2hi_default(SRP, 0, A, 1);
kernel_spinsph_lo2hi_default(SRP, -1, A + N, 1);
kernel_spinsph_lo2hi_default(SRP, 1, A + 2*N, 1);
permute_sph(AD, BD, 2*N, M, 2);
kernel_spinsph_lo2hi_default(SRP, 0, B, 1);
kernel_spinsph_lo2hi_default(SRP, -1, B + N, 1);
kernel_spinsph_lo2hi_default(SRP, 1, B + 2*N, 1);
#pragma omp parallel
for (int m = 2+FT_GET_THREAD_NUM(); m <= M/2; m += FT_GET_NUM_THREADS())
kernel_spinsph_lo2hi_AVX(SRP, m, B + N*(2*m-1), 2);
Expand All @@ -746,10 +746,10 @@ void execute_spinsph_hi2lo_AVX_FMA(const ft_spin_rotation_plan * SRP, ft_complex
int N = SRP->n;
double * AD = (double *) A;
double * BD = (double *) B;
kernel_spinsph_hi2lo_default(SRP, 0, A, 1);
kernel_spinsph_hi2lo_default(SRP, -1, A + N, 1);
kernel_spinsph_hi2lo_default(SRP, 1, A + 2*N, 1);
permute_sph(AD, BD, 2*N, M, 2);
kernel_spinsph_hi2lo_default(SRP, 0, B, 1);
kernel_spinsph_hi2lo_default(SRP, -1, B + N, 1);
kernel_spinsph_hi2lo_default(SRP, 1, B + 2*N, 1);
#pragma omp parallel
for (int m = 2+FT_GET_THREAD_NUM(); m <= M/2; m += FT_GET_NUM_THREADS())
kernel_spinsph_hi2lo_AVX_FMA(SRP, m, B + N*(2*m-1), 2);
Expand All @@ -760,10 +760,10 @@ void execute_spinsph_lo2hi_AVX_FMA(const ft_spin_rotation_plan * SRP, ft_complex
int N = SRP->n;
double * AD = (double *) A;
double * BD = (double *) B;
kernel_spinsph_lo2hi_default(SRP, 0, A, 1);
kernel_spinsph_lo2hi_default(SRP, -1, A + N, 1);
kernel_spinsph_lo2hi_default(SRP, 1, A + 2*N, 1);
permute_sph(AD, BD, 2*N, M, 2);
kernel_spinsph_lo2hi_default(SRP, 0, B, 1);
kernel_spinsph_lo2hi_default(SRP, -1, B + N, 1);
kernel_spinsph_lo2hi_default(SRP, 1, B + 2*N, 1);
#pragma omp parallel
for (int m = 2+FT_GET_THREAD_NUM(); m <= M/2; m += FT_GET_NUM_THREADS())
kernel_spinsph_lo2hi_AVX_FMA(SRP, m, B + N*(2*m-1), 2);
Expand Down

0 comments on commit 91de307

Please sign in to comment.