message: added std::complex<long double>  to support future tests
diff: @@ -49,6 +49,19 @@ void AssignStep1D(const size_t step, std::vector<std::complex<double>> &vector,
  });
  }
  +template <>
  +void AssignStep1D(const size_t step,
  + std::vector<std::complex<long double>> &vector,
  + const size_t ghostCells)
  +{
  + std::for_each(vector.begin() + ghostCells, vector.end() - ghostCells,
  + [step](std::complex<long double> &value) {
  + value = std::complex<long double>(
  + static_cast<long double>(step),
  + static_cast<long double>(step));
  + });
  +}
  +
  template <class T>
  inline void AssignStep2D(const size_t step, std::vector<T> &vector,
  const size_t Nx, const size_t Ny,
  @@ -102,6 +115,25 @@ void AssignStep2D(const size_t step, std::vector<std::complex<double>> &vector,
  }
  }
  +template <>
  +void AssignStep2D(const size_t step,
  + std::vector<std::complex<long double>> &vector,
  + const size_t Nx, const size_t Ny, const size_t ghostCellsX,
  + const size_t ghostCellsY)
  +{
  + for (size_t j = ghostCellsY; j < Ny + ghostCellsY; ++j)
  + {
  + const size_t indexJ = j * (Nx + 2 * ghostCellsX);
  +
  + for (size_t i = ghostCellsX; i < Nx + ghostCellsX; ++i)
  + {
  + const size_t index = indexJ + i;
  + vector[index] = std::complex<long double>(
  + static_cast<long double>(step), static_cast<long double>(step));
  + }
  + }
  +}
  +
  template <class T>
  inline void AssignStep3D(const size_t step, std::vector<T> &vector,
  const size_t Nx, const size_t Ny, const size_t Nz,
  @@ -176,6 +208,33 @@ void AssignStep3D(const size_t step, std::vector<std::complex<double>> &vector,
  }
  }
  +template <>
  +void AssignStep3D(const size_t step,
  + std::vector<std::complex<long double>> &vector,
  + const size_t Nx, const size_t Ny, const size_t Nz,
  + const size_t ghostCellsX, const size_t ghostCellsY,
  + const size_t ghostCellsZ)
  +{
  + for (size_t k = ghostCellsZ; k < Nz + ghostCellsZ; ++k)
  + {
  + const size_t indexK =
  + k * (Ny + 2 * ghostCellsY) * (Nx + 2 * ghostCellsX);
  +
  + for (size_t j = ghostCellsY; j < Ny + ghostCellsY; ++j)
  + {
  + const size_t indexJ = j * (Nx + 2 * ghostCellsX);
  +
  + for (size_t i = ghostCellsX; i < Nx + ghostCellsX; ++i)
  + {
  + const size_t index = indexK + indexJ + i;
  + vector[index] =
  + std::complex<long double>(static_cast<long double>(step),
  + static_cast<long double>(step));
  + }
  + }
  + }
  +}
  +
  } // end anonymous namespace
  void HDF5Steps1D(const size_t ghostCells)
  