1#ifndef CHITECH_FIELDFUNCTION_GRIDBASED_H
2#define CHITECH_FIELDFUNCTION_GRIDBASED_H
19class SpatialDiscretization;
20typedef std::shared_ptr<SpatialDiscretization>
SDMPtr;
32 typedef std::pair<chi_mesh::Vector3, chi_mesh::Vector3>
BoundingBox;
50 const std::vector<double>& field_vector);
78 typedef std::vector<std::shared_ptr<const FieldFunctionGridBased>>
FFList;
88 virtual std::vector<double>
94 unsigned int component)
const override;
106 static std::unique_ptr<chi_math::GhostedParallelSTLVector>
static std::unique_ptr< chi_math::GhostedParallelSTLVector > MakeFieldVector(const chi_math::SpatialDiscretization &discretization, const chi_math::UnknownManager &uk_man)
const BoundingBox local_grid_bounding_box_
const std::vector< double > & FieldVectorRead() const
FieldFunctionGridBased(const chi::InputParameters ¶ms)
static chi::InputParameters GetInputParameters()
std::pair< chi_mesh::Vector3, chi_mesh::Vector3 > BoundingBox
static void ExportMultipleToVTK(const std::string &file_base_name, const FFList &ff_list)
const chi_math::SpatialDiscretization & GetSpatialDiscretization() const
std::unique_ptr< chi_math::GhostedParallelSTLVector > ghosted_field_vector_
virtual ~FieldFunctionGridBased()=default
std::vector< double > & FieldVector()
virtual std::vector< double > GetPointValue(const chi_mesh::Vector3 &point) const
Returns the component values at requested point.
std::vector< double > GetGhostedFieldVector() const
std::vector< std::shared_ptr< const FieldFunctionGridBased > > FFList
void UpdateFieldVector(const std::vector< double > &field_vector)
static chi_math::SDMPtr MakeSpatialDiscretization(const chi::InputParameters ¶ms)
double Evaluate(const chi_mesh::Cell &cell, const chi_mesh::Vector3 &position, unsigned int component) const override
std::shared_ptr< SpatialDiscretization > SDMPtr