PRISMS-PF Manual
Loading...
Searching...
No Matches
parameter_base.h File Reference
#include <deal.II/base/parameter_handler.h>
#include <deal.II/base/patterns.h>
#include <prismspf/core/types.h>
#include <prismspf/config.h>
#include <cfloat>
#include <concepts>
#include <ranges>
#include <string>
#include <string_view>
#include <vector>
Include dependency graph for parameter_base.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ParameterBase
 Virtual base class for parameter groups. More...
 

Namespaces

namespace  Patterns
 

Functions

template<std::ranges::input_range Range = std::vector<std::string>>
requires std::convertible_to<std::ranges::range_reference_t<Range>, std::string_view>
static void declare_aliases (dealii::ParameterHandler &parameter_handler, const std::string &existing_entry_name, const Range &aliases={})
 
static std::array< std::string, 4 > generate_aliases (std::string_view name)
 
template<std::ranges::input_range Range>
requires std::convertible_to<std::ranges::range_reference_t<Range>, std::string_view>
static void declare_aliases_with_generated (dealii::ParameterHandler &parameter_handler, const std::string &existing_entry_name, const Range &aliases)
 
static void declare_entry (dealii::ParameterHandler &parameter_handler, const std::string_view &entry, const std::string_view &default_value, const dealii::Patterns::PatternBase &pattern, const std::string_view &documentation, const std::list< std::string_view > &aliases={}, const std::string_view &warnings={}, const std::string_view &example={}, bool deprecated=false)
 
static std::string get (const dealii::ParameterHandler &parameter_handler, const std::string_view &entry)
 
static int get_int (const dealii::ParameterHandler &parameter_handler, const std::string_view &entry)
 
static unsigned int get_unsigned_int (const dealii::ParameterHandler &parameter_handler, const std::string_view &entry)
 
static double get_double (const dealii::ParameterHandler &parameter_handler, const std::string_view &entry)
 
static bool get_bool (const dealii::ParameterHandler &parameter_handler, const std::string_view &entry)
 
template<typename Map>
requires requires(Map &map, const typename Map::key_type &key) { map.find(key); map.end(); }
Map::mapped_type get_selection (const dealii::ParameterHandler &parameter_handler, const std::string_view &entry, Map &map)
 
static std::vector< std::string > get_string_list (const dealii::ParameterHandler &parameter_handler, const std::string_view &entry)
 
static std::vector< unsigned int > get_unsigned_int_list (const dealii::ParameterHandler &parameter_handler, const std::string_view &entry)
 
static dealii::Patterns::Anything Patterns::Anything ()
 
static dealii::Patterns::Selection Patterns::Selection (std::string_view options)
 
static dealii::Patterns::Bool Patterns::Bool ()
 
static dealii::Patterns::Integer Patterns::Integer ()
 
static dealii::Patterns::Integer Patterns::UnsignedInteger ()
 
static dealii::Patterns::Integer Patterns::PositiveInteger ()
 
static dealii::Patterns::Integer Patterns::NegativeInteger ()
 
static dealii::Patterns::Double Patterns::Double ()
 
static dealii::Patterns::Double Patterns::PositiveDouble ()
 
static dealii::Patterns::Double Patterns::NegativeDouble ()
 
static dealii::Patterns::List Patterns::StringList ()
 
static dealii::Patterns::List Patterns::UnsignedIntegerList ()
 

Variables

static constexpr std::array< std::string_view, 3 > axis_labels {"x", "y", "z"}
 Cartesian axis labels.
 

Function Documentation

◆ declare_aliases()

template<std::ranges::input_range Range = std::vector<std::string>>
requires std::convertible_to<std::ranges::range_reference_t<Range>, std::string_view>
static void declare_aliases ( dealii::ParameterHandler & parameter_handler,
const std::string & existing_entry_name,
const Range & aliases = {} )
static

Declare multiple aliases for a parameter name.

◆ declare_aliases_with_generated()

template<std::ranges::input_range Range>
requires std::convertible_to<std::ranges::range_reference_t<Range>, std::string_view>
static void declare_aliases_with_generated ( dealii::ParameterHandler & parameter_handler,
const std::string & existing_entry_name,
const Range & aliases )
static

Declare multiple aliases for a parameter name with generated aliases.

◆ declare_entry()

static void declare_entry ( dealii::ParameterHandler & parameter_handler,
const std::string_view & entry,
const std::string_view & default_value,
const dealii::Patterns::PatternBase & pattern,
const std::string_view & documentation,
const std::list< std::string_view > & aliases = {},
const std::string_view & warnings = {},
const std::string_view & example = {},
bool deprecated = false )
static

◆ generate_aliases()

static std::array< std::string, 4 > generate_aliases ( std::string_view name)
staticnodiscard

Generate common aliases for a parameter name.

Given "user inputs", generates:

  • "user_inputs"
  • "User Inputs"
  • "User_Inputs"
  • "UserInputs"

◆ get()

static std::string get ( const dealii::ParameterHandler & parameter_handler,
const std::string_view & entry )
static

◆ get_bool()

static bool get_bool ( const dealii::ParameterHandler & parameter_handler,
const std::string_view & entry )
static

◆ get_double()

static double get_double ( const dealii::ParameterHandler & parameter_handler,
const std::string_view & entry )
static

◆ get_int()

static int get_int ( const dealii::ParameterHandler & parameter_handler,
const std::string_view & entry )
static

◆ get_selection()

template<typename Map>
requires requires(Map &map, const typename Map::key_type &key) { map.find(key); map.end(); }
Map::mapped_type get_selection ( const dealii::ParameterHandler & parameter_handler,
const std::string_view & entry,
Map & map )

◆ get_string_list()

static std::vector< std::string > get_string_list ( const dealii::ParameterHandler & parameter_handler,
const std::string_view & entry )
static

◆ get_unsigned_int()

static unsigned int get_unsigned_int ( const dealii::ParameterHandler & parameter_handler,
const std::string_view & entry )
static

◆ get_unsigned_int_list()

static std::vector< unsigned int > get_unsigned_int_list ( const dealii::ParameterHandler & parameter_handler,
const std::string_view & entry )
static

Variable Documentation

◆ axis_labels

std::array<std::string_view, 3> axis_labels {"x", "y", "z"}
staticconstexpr

Cartesian axis labels.