/home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/discretization/mesh/configuration_mesh.hh Source File#
|
DiFfRG
Discretization Framework for functional Renormalization Group flows
|
configuration_mesh.hh
Go to the documentation of this file.
49 GridAxis(double min_, double step_, double max_) : min(min_), max(max_), step(step_) { validate(); };
76 std::vector<double> get_stepwiths(const bool origin_cell_centered = false, const uint refinement = 0) const
141 template <typename... Grids> ConfigurationMesh(unsigned int refinement, Grids... grids_args) : refine(refinement)
153 const std::array<std::string, 3> grid_names = {"/discretization/grid/x_grid", "/discretization/grid/y_grid",
157 auto subranges = internal::string_to_substrings_array(config.get_string_or_warn(grid_names[i], "0:0.1:1"));
211 internal::append_range(data.step_sizes[i], grids[i][subrange].get_stepwiths(center_first_subrange, refine));
230 inline dealii::Point<dim, double> get_lower_left() const { return get_triangulation_data().lower_left; }
232 inline dealii::Point<dim, double> get_upper_right() const { return get_triangulation_data().upper_right; }
A hierarchical configuration tree, readable from JSON and TOML files.
Definition config_tree.hh:32
Definition configuration_mesh.hh:131
ConfigurationMesh(unsigned int refinement, Grids... grids_args)
Definition configuration_mesh.hh:141
ConfigurationMesh(const DiFfRG::ConfigTree &config)
Definition configuration_mesh.hh:149
dealii::Point< dim, double > get_lower_left() const
Definition configuration_mesh.hh:230
ConfigurationMesh()=delete
dealii::Point< dim, double > get_upper_right() const
Definition configuration_mesh.hh:232
TriangulationData get_triangulation_data(const bool origin_cell_centered=false) const
Definition configuration_mesh.hh:203
std::array< std::vector< GridAxis >, dim > grids
Definition configuration_mesh.hh:234
static std::string get_defaults()
Definition configuration_mesh.hh:166
std::vector< std::vector< double > > get_step_withs_for_triangulation() const
Definition configuration_mesh.hh:225
Definition configuration_mesh.hh:46
GridAxis(double min_, double step_, double max_)
Definition configuration_mesh.hh:49
GridAxis(std::string json_string)
Definition configuration_mesh.hh:51
static std::string get_default_range()
Definition configuration_mesh.hh:61
std::vector< double > get_stepwiths(const bool origin_cell_centered=false, const uint refinement=0) const
Definition configuration_mesh.hh:76
GridAxis()=delete
void append_range(T &to_append, const J &range)
Definition configuration_mesh.hh:122
std::array< double, 3 > string_to_range(const std::string str)
Definition configuration_mesh.hh:30
void check_ranges_consistency(const std::vector< GridAxis > &ranges)
Definition configuration_mesh.hh:115
std::vector< std::string > string_to_substrings_array(const std::string str)
Definition configuration_mesh.hh:21
Definition complex_math.hh:10
bool KOKKOS_INLINE_FUNCTION is_close(T1 a, T2 b, T3 eps_)
Function to evaluate whether two floats are equal to numerical precision. Tests for both relative and...
Definition math.hh:177
Definition configuration_mesh.hh:133
dealii::Point< dim, double > lower_left
Definition configuration_mesh.hh:134
dealii::Point< dim, double > upper_right
Definition configuration_mesh.hh:135
std::vector< std::vector< double > > step_sizes
Definition configuration_mesh.hh:136
Generated by