40void FC_FUNC_(doperate_ri_vec,
 
   41              DOPERATE_RI_VEC)(
const int *opn, 
const double *restrict w,
 
   42                               const int *opnri, 
const int *opri,
 
   43                               const int *rimap_inv, 
const int *rimap_inv_max,
 
   44                               const double *restrict fi, 
const int *ldfp,
 
   45                               double *restrict fo) {
 
   46  const size_t ldf = ldfp[0];
 
   50  aligned = aligned && (((
long long)fi) % (8 * VEC_SIZE) == 0);
 
   51  aligned = aligned && (((
long long)fo) % (8 * VEC_SIZE) == 0);
 
   52  aligned = aligned && ((1 << ldf) % VEC_SIZE == 0);
 
   68void FC_FUNC_(zoperate_ri_vec,
 
   69              ZOPERATE_RI_VEC)(
const int *opn, 
const double *restrict w,
 
   70                               const int *opnri, 
const int *opri,
 
   71                               const int *rimap_inv, 
const int *rimap_inv_max,
 
   72                               const double *restrict fi, 
const int *ldfp,
 
   73                               double *restrict fo) {
 
   74  FC_FUNC_(doperate_ri_vec, DOPERATE_RI_VEC)
 
   75  (opn, w, opnri, opri, rimap_inv, rimap_inv_max, fi, ldfp, fo);
 
   78void FC_FUNC_(dgauss_seidel,
 
   79              DGAUSS_SEIDEL)(
const int *opn, 
const double *restrict w,
 
   80                             const int *opnri, 
const int *opri,
 
   81                             const int *rimap_inv, 
const int *rimap_inv_max,
 
   82                             const double *restrict factor, 
double *pot,
 
   83                             const double *restrict rho) {
 
   86  const int nri = opnri[0];
 
   91  register const double fac = *factor;
 
   93  for (
l = 0; 
l < 
nri; 
l++) {
 
   97    for (; 
i < rimap_inv_max[
l]; 
i++) {
 
   99      for (
j = 0; 
j < n; 
j++)
 
  101      pot[
i] += fac * (a0 - rho[
i]);
 
const int *restrict index