Interpolated property class. More...
#include <ScalarProperty.h>

Public Member Functions | |
| void | eval (AMP::Array< double > &result, const AMP::Array< double > &) const override |
| double | eval (const Units &unit, const std::vector< std::string > &args, const std::vector< double > &vec, const std::vector< Units > &units={}) const |
| Evaluate the property. | |
| template<class... Args> | |
| double | eval (const Units &unit=Units(), const Args &...args) const |
| Evaluate the property. | |
| virtual std::string | evalString () const |
| Get the string value of the property. | |
| template<class... Args> | |
| void | evalv (AMP::Array< AMP::LinearAlgebra::Vector * > &r, const Args &...args) const |
| Evaluate the property. | |
| template<class... Args> | |
| void | evalv (AMP::Array< std::shared_ptr< AMP::LinearAlgebra::Vector > > &r, const Args &...args) const |
| Evaluate the property. | |
| template<class... Args> | |
| void | evalv (AMP::Array< std::shared_ptr< std::vector< double > > > &r, const Units &unit, const Args &...args) const |
| Evaluate the property. | |
| template<class... Args> | |
| void | evalv (AMP::Array< std::vector< double > * > &r, const Units &unit, const Args &...args) const |
| Evaluate the property. | |
| template<class... Args> | |
| void | evalv (AMP::LinearAlgebra::Vector &r, const Args &...args) const |
| Evaluate the property. | |
| template<class... Args> | |
| void | evalv (std::vector< double > &r, const Units &unit, const Args &...args) const |
| Evaluate the property. | |
| template<class... Args> | |
| void | evalv (std::vector< std::shared_ptr< AMP::LinearAlgebra::Vector > > &r, const Args &...args) const |
| Evaluate the property. | |
| template<class... Args> | |
| void | evalv (std::vector< std::shared_ptr< std::vector< double > > > &r, const Units &unit, const Args &...args) const |
| Evaluate the property. | |
| std::array< double, 2 > | get_arg_range (std::string_view argname) const |
| Get range for a specific argument. | |
| const auto & | get_arg_ranges () const |
| Get ranges for all arguments used in this material. | |
| const auto & | get_arg_units () const |
| Get units for all arguments used in this material. | |
| int | get_argument_index (std::string_view name) const |
| Return the argument index. | |
| const std::vector< std::string > & | get_arguments () const |
| Return the names of the arguments to eval. | |
| double | get_default (std::string_view name) const |
| Get the default for the given argument (NaN if it is an invalid argument) | |
| const std::vector< double > & | get_defaults () const |
| Get the defaults. | |
| const std::string & | get_name () const |
| Return name of property. | |
| size_t | get_number_arguments () const |
| Return the number of arguments to eval. | |
| const std::string & | get_source () const |
| Get the source of the information. | |
| const Units & | get_units () const |
| Return source reference. | |
| const Database & | getAuxiliaryData () const |
| Get auxiliary data. | |
| template<class TYPE > | |
| TYPE | getAuxiliaryData (const std::string &key) const |
| Get auxiliary data. | |
| template<class INPUT_VTYPE > | |
| bool | in_range (std::string_view argname, const INPUT_VTYPE &values, const Units &unit=Units(), bool throwError=false) const |
| Determine if a set of values are all within range or not. | |
| bool | in_range (std::string_view argname, double value, const Units &unit=Units(), bool throwError=false) const |
| Determine if a value is within range or not. | |
| InterpolatedProperty (std::string_view name, const AMP::Units &unit, const std::string &var_name, std::vector< double > x, std::vector< double > y, const std::array< double, 2 > range, const AMP::Units &argUnit, double default_value, std::string_view source="", std::string_view method="linear") | |
| bool | is_argument (std::string_view argname) const |
| Determine if a string is an argument. | |
| bool | isScalar () const |
| Indicator for scalar evaluator. | |
| virtual bool | isString () const |
| Indicator for scalar evaluator. | |
| bool | isTensor () const |
| Indicator for tensor evaluator. | |
| bool | isVector () const |
| Indicator for vector evaluator. | |
| std::map< std::string, std::shared_ptr< AMP::LinearAlgebra::Vector > > | make_map (const std::shared_ptr< AMP::LinearAlgebra::MultiVector > &args, const std::map< std::string, std::string > &translator) const |
| void | set_default (std::string_view name, double value, const AMP::Units &unit=AMP::Units()) |
| Set the default. | |
| void | set_defaults (std::vector< double > defaults) |
| Set the defaults. | |
| template<class TYPE > | |
| void | setAuxiliaryData (const std::string &key, const TYPE &data) |
| Set auxiliary data. | |
| const ArraySize & | size () const |
| get dimensions of evalv return value | |
Protected Member Functions | |
| void | checkArgs (const AMP::Array< double > &args) const |
| Check the argument values. | |
| AMP::Array< double > | defaultArgs (size_t) const |
| Create the default argument array. | |
| void | evalArg (AMP::Array< double > &, std::string_view, const Units &, const AMP::LinearAlgebra::Vector &) const |
| void | evalArg (AMP::Array< double > &, std::string_view, const Units &, const std::vector< double > &) const |
| void | evalArg (AMP::Array< double > &, std::string_view, const Units &, double) const |
| void | evalArgs (AMP::Array< double > &) const |
| template<class VEC > | |
| void | evalArgs (AMP::Array< double > &, const std::map< std::string, VEC > &) const |
| void | evalArgs (AMP::Array< double > &, const std::shared_ptr< AMP::LinearAlgebra::MultiVector > &, const std::map< std::string, std::string > &={}) const |
| void | evalArgs (AMP::Array< double > &, const std::vector< double > &args, const std::vector< std::string > &names, const std::vector< Units > &argUnits={}) const |
| template<class... Args> | |
| void | evalArgs (AMP::Array< double > &, std::string_view, const AMP::LinearAlgebra::Vector &, const Args &...) const |
| template<class VEC , class... Args> | |
| void | evalArgs (AMP::Array< double > &, std::string_view, const std::shared_ptr< VEC > &, const Args &...) const |
| template<class... Args> | |
| void | evalArgs (AMP::Array< double > &, std::string_view, const std::vector< double > &, const Args &...) const |
| template<class... Args> | |
| void | evalArgs (AMP::Array< double > &, std::string_view, const Units &, const AMP::LinearAlgebra::Vector &, const Args &...) const |
| template<class VEC , class... Args> | |
| void | evalArgs (AMP::Array< double > &, std::string_view, const Units &, const std::shared_ptr< VEC > &, const Args &...) const |
| template<class... Args> | |
| void | evalArgs (AMP::Array< double > &, std::string_view, const Units &, const std::vector< double > &, const Args &...) const |
| template<class... Args> | |
| void | evalArgs (AMP::Array< double > &, std::string_view, const Units &, double, const Args &...) const |
| template<class... Args> | |
| void | evalArgs (AMP::Array< double > &, std::string_view, double, const Args &...) const |
| void | evalv (const AMP::Array< double > &, AMP::Array< AMP::LinearAlgebra::Vector * > &) const |
| void | evalv (const AMP::Array< double > &, AMP::Array< std::vector< double > * > &, const Units &) const |
| int | get_arg_index (std::string_view name) const |
Static Protected Member Functions | |
| static size_t | getSize (const AMP::LinearAlgebra::Vector &) |
| static Units | getUnits (const AMP::LinearAlgebra::Vector &) |
Protected Attributes | |
| std::map< std::string_view, size_t > | d_argToIndexMap |
| map argument names to indices | |
| std::vector< std::string > | d_arguments |
| names of the arguments | |
| std::vector< Units > | d_argUnits |
| default units for the arguments | |
| AMP::Database | d_auxiliaryData |
| Database containing auxiliary data. | |
| std::vector< double > | d_defaults |
| default values of arguments | |
| AMP::ArraySize | d_dim |
| size of the result | |
| std::string | d_name |
| should be unique | |
| std::vector< std::array< double, 2 > > | d_ranges |
| allowed ranges of arguments | |
| std::string | d_source |
| reference for source data | |
| AMP::Units | d_units |
| default units to return | |
Private Attributes | |
| int | d_method |
| std::vector< double > | d_x |
| std::vector< double > | d_y |
Interpolated property class.
Definition at line 76 of file ScalarProperty.h.
| AMP::Materials::InterpolatedProperty::InterpolatedProperty | ( | std::string_view | name, |
| const AMP::Units & | unit, | ||
| const std::string & | var_name, | ||
| std::vector< double > | x, | ||
| std::vector< double > | y, | ||
| const std::array< double, 2 > | range, | ||
| const AMP::Units & | argUnit, | ||
| double | default_value, | ||
| std::string_view | source = "", |
||
| std::string_view | method = "linear" |
||
| ) |
|
protectedinherited |
Check the argument values.
|
protectedinherited |
Create the default argument array.
|
overridevirtual |
scalar evaluation function for a single argument set
| result | Output result (N) |
| args | Input arguments (MxN) |
Implements AMP::Materials::Property.
|
inherited |
Evaluate the property.
This function evaluates the property at the desired conditions
| unit | The desired units of the result. If this is not specified, the native units of the property are use (see get_units()) |
| args | List of arguments for the property |
| units | List of units for each argument |
| vec | List of values for each argument |
|
inherited |
Evaluate the property.
This function evaluates the property at the desired conditions
| unit | The desired units of the result. If this is not specified, the native units of the property are use (see get_units()) |
| args | Optional arguments specifying input arguments to the eval() function. In general arguments are of the form: evalv( r, unit, "arg1", unit1, vec1, "arg2", unit2, vec2, ... ). |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
inlineprotectedinherited |
Definition at line 336 of file Property.h.
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
virtualinherited |
Get the string value of the property.
Reimplemented in AMP::Materials::StringProperty.
|
inherited |
Evaluate the property.
This function evaluates the property at the desired conditions for multiple points.
| r | std::vector of return values |
| args | Optional arguments specifying input arguments to the eval() function. In general arguments are of the form: evalv( r, unit, "arg1", unit1, vec1, "arg2", unit2, vec2, ... ). |
|
inherited |
Evaluate the property.
This function evaluates the property at the desired conditions for multiple points.
| r | Vector of return values |
| args | Optional arguments specifying input arguments to the eval() function. In general arguments are of the form: evalv( r, unit, "arg1", unit1, vec1, "arg2", unit2, vec2, ... ). |
|
inherited |
|
inherited |
Evaluate the property.
This function evaluates the property at the desired conditions for multiple points.
| r | std::vector of return values |
| unit | The desired units of the result. If this is not specified, the native units of the property are use (see get_units()) |
| args | Optional arguments specifying input arguments to the eval() function. In general arguments are of the form: evalv( r, unit, "arg1", unit1, vec1, "arg2", unit2, vec2, ... ). |
|
inherited |
Evaluate the property.
This function evaluates the property at the desired conditions for multiple points.
| r | std::vector of return values |
| args | Optional arguments specifying input arguments to the eval() function. In general arguments are of the form: evalv( r, unit, "arg1", unit1, vec1, "arg2", unit2, vec2, ... ). |
|
protectedinherited |
|
protectedinherited |
|
inherited |
Evaluate the property.
This function evaluates the property at the desired conditions for multiple points.
| r | std::vector of return values |
| unit | The desired units of the result. If this is not specified, the native units of the property are use (see get_units()) |
| args | Optional arguments specifying input arguments to the eval() function. In general arguments are of the form: evalv( r, unit, "arg1", unit1, vec1, "arg2", unit2, vec2, ... ). |
|
inherited |
Evaluate the property.
This function evaluates the property at the desired conditions for multiple points.
| r | Vector of vector of return values |
| args | Optional arguments specifying input arguments to the eval() function. In general arguments are of the form: evalv( r, unit, "arg1", unit1, vec1, "arg2", unit2, vec2, ... ). |
|
inherited |
Evaluate the property.
This function evaluates the property at the desired conditions for multiple points.
| r | std::vector of return values |
| unit | The desired units of the result. If this is not specified, the native units of the property are use (see get_units()) |
| args | Optional arguments specifying input arguments to the eval() function. In general arguments are of the form: evalv( r, unit, "arg1", unit1, vec1, "arg2", unit2, vec2, ... ). |
|
inlineprotectedinherited |
Definition at line 383 of file Property.h.
References AMP::Materials::Property::d_argToIndexMap.
|
inherited |
Get range for a specific argument.
|
inlineinherited |
Get ranges for all arguments used in this material.
Definition at line 149 of file Property.h.
References AMP::Materials::Property::d_ranges.
|
inlineinherited |
Get units for all arguments used in this material.
Definition at line 146 of file Property.h.
References AMP::Materials::Property::d_argUnits.
|
inlineinherited |
Return the argument index.
Definition at line 87 of file Property.h.
References AMP::Materials::Property::d_arguments.
Referenced by AMP::Materials::Property::set_default().
|
inlineinherited |
Return the names of the arguments to eval.
Definition at line 81 of file Property.h.
References AMP::Materials::Property::d_arguments.
|
inherited |
Get the default for the given argument (NaN if it is an invalid argument)
|
inlineinherited |
Get the defaults.
Definition at line 101 of file Property.h.
References AMP::Materials::Property::d_defaults.
|
inlineinherited |
Return name of property.
Definition at line 72 of file Property.h.
References AMP::Materials::Property::d_name.
|
inlineinherited |
Return the number of arguments to eval.
Definition at line 84 of file Property.h.
References AMP::Materials::Property::d_arguments.
|
inlineinherited |
Get the source of the information.
Definition at line 75 of file Property.h.
References AMP::Materials::Property::d_source.
|
inlineinherited |
Return source reference.
Definition at line 78 of file Property.h.
References AMP::Materials::Property::d_units.
|
inlineinherited |
Get auxiliary data.
Definition at line 169 of file Property.h.
References AMP::Materials::Property::d_auxiliaryData.
|
inherited |
Get auxiliary data.
|
staticprotectedinherited |
|
staticprotectedinherited |
|
inlineinherited |
Determine if a set of values are all within range or not.
|
inlineinherited |
Determine if a value is within range or not.
|
inherited |
Determine if a string is an argument.
|
inlineinherited |
Indicator for scalar evaluator.
Definition at line 130 of file Property.h.
References AMP::Materials::Property::d_dim, and AMP::ArraySize::length().
|
inlinevirtualinherited |
Indicator for scalar evaluator.
Reimplemented in AMP::Materials::StringProperty.
Definition at line 127 of file Property.h.
|
inlineinherited |
Indicator for tensor evaluator.
Definition at line 136 of file Property.h.
References AMP::Materials::Property::d_dim, and AMP::ArraySize::ndim().
|
inlineinherited |
Indicator for vector evaluator.
Definition at line 133 of file Property.h.
References AMP::Materials::Property::d_dim, AMP::ArraySize::length(), and AMP::ArraySize::ndim().
|
inherited |
|
inlineinherited |
Set the default.
Definition at line 105 of file Property.h.
References AMP::Units::convert(), AMP::Materials::Property::d_argUnits, AMP::Materials::Property::d_defaults, AMP::Materials::Property::get_argument_index(), and AMP::Units::isNull().
|
inlineinherited |
Set the defaults.
Definition at line 116 of file Property.h.
References AMP_INSIST, AMP::Materials::Property::d_arguments, and AMP::Materials::Property::d_defaults.
|
inherited |
Set auxiliary data.
|
inlineinherited |
get dimensions of evalv return value
Definition at line 69 of file Property.h.
References AMP::Materials::Property::d_dim.
|
protectedinherited |
map argument names to indices
Definition at line 369 of file Property.h.
Referenced by AMP::Materials::Property::get_arg_index().
|
protectedinherited |
names of the arguments
Definition at line 365 of file Property.h.
Referenced by AMP::Materials::Property::get_argument_index(), AMP::Materials::Property::get_arguments(), AMP::Materials::Property::get_number_arguments(), and AMP::Materials::Property::set_defaults().
|
protectedinherited |
default units for the arguments
Definition at line 366 of file Property.h.
Referenced by AMP::Materials::Property::get_arg_units(), and AMP::Materials::Property::set_default().
|
protectedinherited |
Database containing auxiliary data.
Definition at line 370 of file Property.h.
Referenced by AMP::Materials::Property::getAuxiliaryData().
|
protectedinherited |
default values of arguments
Definition at line 367 of file Property.h.
Referenced by AMP::Materials::Property::get_defaults(), AMP::Materials::Property::set_default(), and AMP::Materials::Property::set_defaults().
|
protectedinherited |
size of the result
Definition at line 362 of file Property.h.
Referenced by AMP::Materials::Property::isScalar(), AMP::Materials::Property::isTensor(), AMP::Materials::Property::isVector(), and AMP::Materials::Property::size().
|
private |
Definition at line 94 of file ScalarProperty.h.
|
protectedinherited |
should be unique
Definition at line 361 of file Property.h.
Referenced by AMP::Materials::Property::get_name().
|
protectedinherited |
allowed ranges of arguments
Definition at line 368 of file Property.h.
Referenced by AMP::Materials::Property::get_arg_ranges().
|
protectedinherited |
reference for source data
Definition at line 364 of file Property.h.
Referenced by AMP::Materials::Property::get_source().
|
protectedinherited |
default units to return
Definition at line 363 of file Property.h.
Referenced by AMP::Materials::Property::get_units().
|
private |
Definition at line 92 of file ScalarProperty.h.
|
private |
Definition at line 93 of file ScalarProperty.h.
|
Advanced Multi-Physics (AMP) Oak Ridge National Laboratory Idaho National Laboratory Los Alamos National Laboratory |
This page automatically produced from the source code by Last updated: Tue Mar 10 2026 13:06:43. Comments on this page |