25#include <field/AddToStorage.h>
26#include <field/GhostLayerField.h>
43 m_potential_field_id = field::addToStorage<PotentialField>(
44 get_lattice().get_blocks(),
"potential field", 0.0, field::fzyx,
53 return m_potential_field_id;
59 throw std::runtime_error(
"PoissonSolverNone has no potential field");
65 throw std::runtime_error(
"PoissonSolverNone has no potential field");
73 return std::is_same_v<FloatType, double>;
bool is_double_precision() const noexcept override
std::optional< double > get_node_potential(Utils::Vector3i const &, bool consider_ghosts=false) override
void reset_charge_field() override
std::vector< double > get_slice_potential(Utils::Vector3i const &, Utils::Vector3i const &) const override
PoissonSolverNone(std::shared_ptr< LatticeWalberla > lattice)
~PoissonSolverNone() override=default
std::size_t get_potential_field_id() const noexcept override
bool is_gpu() const noexcept override
void setup_fft(bool) override
void add_charge_to_field(std::size_t, double) override
LatticeWalberla const & get_lattice() const noexcept override
cudaStream_t stream[1]
CUDA streams for parallel computing on CPU and GPU.
\file PackInfoPdfDoublePrecision.cpp \author pystencils