12#include <pscf/cuda/DeviceArray.h>
89void eqV(DeviceArray<cudaReal>& a, DeviceArray<cudaReal>
const & b,
90 const int beginIdA,
const int beginIdB,
const int n);
111 const int beginIdA,
const int beginIdB,
const int n);
132 const int beginIdA,
const int n);
152 const int beginIdA,
const int n);
180 const int beginIdB,
const int beginIdC,
const int n);
206 const int beginIdB,
const int beginIdC,
const int n);
233 const int beginIdB,
const int beginIdC,
const int n);
260 const int beginIdB,
const int beginIdC,
const int n);
285 const cudaReal c,
const int beginIdA,
286 const int beginIdB,
const int n);
310 const cudaComplex c,
const int beginIdA,
311 const int beginIdB,
const int n);
335 const cudaComplex c,
const int beginIdA,
336 const int beginIdB,
const int n);
360 const cudaReal c,
const int beginIdA,
361 const int beginIdB,
const int n);
391 const int beginIdB,
const int beginIdC,
const int n);
417 const int beginIdB,
const int beginIdC,
const int n);
444 const int beginIdB,
const int beginIdC,
const int n);
470 const int beginIdB,
const int beginIdC,
const int n);
495 const cudaReal c,
const int beginIdA,
496 const int beginIdB,
const int n);
520 const cudaComplex c,
const int beginIdA,
521 const int beginIdB,
const int n);
545 const cudaComplex c,
const int beginIdA,
546 const int beginIdB,
const int n);
571 const cudaReal c,
const int beginIdA,
572 const int beginIdB,
const int n);
602 const int beginIdB,
const int beginIdC,
const int n);
628 const int beginIdB,
const int beginIdC,
const int n);
655 const int beginIdB,
const int beginIdC,
const int n);
682 const int beginIdB,
const int beginIdC,
const int n);
707 const cudaReal c,
const int beginIdA,
708 const int beginIdB,
const int n);
732 const cudaComplex c,
const int beginIdA,
733 const int beginIdB,
const int n);
759 const int beginIdA,
const int beginIdB,
const int n);
785 const int beginIdA,
const int beginIdB,
const int n);
816 const int beginIdB,
const int beginIdC,
const int n);
842 const int beginIdB,
const int beginIdC,
const int n);
867 const cudaReal c,
const int beginIdA,
868 const int beginIdB,
const int n);
892 const cudaReal c,
const int beginIdA,
893 const int beginIdB,
const int n);
918 const int beginIdA,
const int beginIdC,
const int n);
944 const int beginIdA,
const int beginIdB,
const int n);
965 const int beginIdA,
const int beginIdB,
const int n);
991 const int beginIdA,
const int beginIdB,
const int n);
1012 const int beginIdA,
const int beginIdB,
const int n);
1034 const int beginIdA,
const int beginIdB,
const int n);
1055 const int beginIdA,
const int n);
1075 const int beginIdA,
const int n);
1095 const int beginIdA,
const int n);
1120 const int beginIdA,
const int beginIdB,
const int n);
1141 const int beginIdA,
const int beginIdB,
const int n);
1163 const int beginIdA,
const int beginIdB,
const int n);
1184 const int beginIdA,
const int n);
1204 const int beginIdA,
const int n);
1224 const int beginIdA,
const int n);
1249 const int beginIdA,
const int beginIdB,
const int n);
1271 const int beginIdA,
const int beginIdB,
const int n);
1293 const int beginIdA,
const int beginIdB,
const int n);
1314 const int beginIdA,
const int n);
1334 const int beginIdA,
const int n);
1354 const int beginIdA,
const int n);
1379 const int beginIdA,
const int beginIdB,
const int n);
1400 const int beginIdA,
const int beginIdB,
const int n);
1421 const int beginIdA,
const int n);
1441 const int beginIdA,
const int n);
1459#include "VecOpMisc.h"
Dynamic array on the GPU device with aligned data.
int capacity() const
Return allocated capacity.
Functions that perform element-wise vector operations on the GPU.
void addEqV(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, const int beginIdA, const int beginIdB, const int n)
Vector addition in-place, a[i] += b[i], kernel wrapper (cudaReal).
void eqV(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, const int beginIdA, const int beginIdB, const int n)
Vector assignment, a[i] = b[i], kernel wrapper (cudaReal).
void addVS(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, const cudaReal c, const int beginIdA, const int beginIdB, int n)
Vector addition, a[i] = b[i] + c, kernel wrapper (cudaReal).
void eqS(DeviceArray< cudaReal > &a, const cudaReal b, const int beginIdA, const int n)
Vector assignment, a[i] = b, kernel wrapper (cudaReal).
void addEqS(DeviceArray< cudaReal > &a, const cudaReal b, const int beginIdA, const int n)
Vector addition in-place, a[i] += b, kernel wrapper (cudaReal).
void divVS(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, const cudaReal c, const int beginIdA, const int beginIdB, const int n)
Vector division, a[i] = b[i] / c, kernel wrapper (cudaReal).
void divEqV(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, const int beginIdA, const int beginIdB, const int n)
Vector division in-place, a[i] /= b[i], kernel wrapper (cudaReal).
void subEqS(DeviceArray< cudaReal > &a, const cudaReal b, const int beginIdA, const int n)
Vector subtraction in-place, a[i] -= b, kernel wrapper (cudaReal).
void divVV(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, DeviceArray< cudaReal > const &c, const int beginIdA, const int beginIdB, const int beginIdC, const int n)
Vector division, a[i] = b[i] / c[i], kernel wrapper (cudaReal).
void addVV(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, DeviceArray< cudaReal > const &c, const int beginIdA, const int beginIdB, const int beginIdC, const int n)
Vector addition, a[i] = b[i] + c[i], kernel wrapper (cudaReal).
void mulVV(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, DeviceArray< cudaReal > const &c, const int beginIdA, const int beginIdB, const int beginIdC, const int n)
Vector multiplication, a[i] = b[i] * c[i], kernel wrapper (cudaReal).
void subVV(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, DeviceArray< cudaReal > const &c, const int beginIdA, const int beginIdB, const int beginIdC, const int n)
Vector subtraction, a[i] = b[i] - c[i], kernel wrapper (cudaReal).
void mulVS(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, const cudaReal c, const int beginIdA, const int beginIdB, const int n)
Vector multiplication, a[i] = b[i] * c, kernel wrapper (cudaReal).
void mulEqS(DeviceArray< cudaReal > &a, const cudaReal b, const int beginIdA, const int n)
Vector multiplication in-place, a[i] *= b, kernel wrapper (cudaReal).
void mulEqV(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, const int beginIdA, const int beginIdB, const int n)
Vector multiplication in-place, a[i] *= b[i], kernel wrapper (cudaReal).
void subEqV(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, const int beginIdA, const int beginIdB, const int n)
Vector subtraction in-place, a[i] -= b[i], kernel wrapper (cudaReal).
void divEqS(DeviceArray< cudaReal > &a, const cudaReal b, const int beginIdA, const int n)
Vector division in-place, a[i] /= b, kernel wrapper (cudaReal).
void subVS(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, const cudaReal c, const int beginIdA, const int beginIdB, const int n)
Vector subtraction, a[i] = b[i] - c, kernel wrapper (cudaReal).
void expV(DeviceArray< cudaReal > &a, DeviceArray< cudaReal > const &b, const int beginIdA, const int beginIdB, const int n)
Vector exponentiation, a[i] = exp(b[i]), kernel wrapper (cudaReal).
void divSV(DeviceArray< cudaReal > &a, const cudaReal b, DeviceArray< cudaReal > const &c, const int beginIdA, const int beginIdC, const int n)
Vector division, a[i] = b / c[i], kernel wrapper (cudaReal).
Fields, FFTs, and utilities for periodic boundary conditions (CUDA)
Periodic fields and crystallography.
PSCF package top-level namespace.