QMCPACK
SolveFirstDerivInterp1D< std::complex< double > > Struct Template Reference
+ Collaboration diagram for SolveFirstDerivInterp1D< std::complex< double > >:

Public Types

using value_type = std::complex< double >
 
using real_type = double
 

Static Public Member Functions

template<class CT >
static void apply (const CT &data, CT &p, int N, double *bcLower, double *bcUpper)
 

Detailed Description

template<>
struct SolveFirstDerivInterp1D< std::complex< double > >

Definition at line 180 of file BsplineOneDimSolvers.h.

Member Typedef Documentation

◆ real_type

using real_type = double

Definition at line 183 of file BsplineOneDimSolvers.h.

◆ value_type

using value_type = std::complex<double>

Definition at line 182 of file BsplineOneDimSolvers.h.

Member Function Documentation

◆ apply()

static void apply ( const CT &  data,
CT &  p,
int  N,
double *  bcLower,
double *  bcUpper 
)
inlinestatic

Definition at line 186 of file BsplineOneDimSolvers.h.

References qmcplusplus::Units::force::N.

187  {
188  std::vector<real_type> dataReal(N), dataImag(N), pReal(N), pImag(N);
189  for (int i = 0; i < N; i++)
190  {
191  dataReal[i] = data[i].real();
192  dataImag[i] = data[i].imag();
193  }
194  SolveFirstDerivInterp1D<double>::apply(dataReal, pReal, N, bcLower, bcUpper);
195  SolveFirstDerivInterp1D<double>::apply(dataImag, pImag, N, bcLower, bcUpper);
196  for (int i = 0; i < N; i++)
197  p[i] = value_type(pReal[i], pImag[i]);
198  }

The documentation for this struct was generated from the following file: