OGS
Function.cpp File Reference

Detailed Description

Definition in file Function.cpp.

#include "MaterialLib/MPL/Properties/Function.h"
#include <exprtk.hpp>
#include <numeric>
#include <range/v3/range/conversion.hpp>
#include <range/v3/view/transform.hpp>
#include <ranges>
#include <typeinfo>
#include <unordered_set>
#include "BaseLib/Algorithm.h"
#include "BaseLib/OgsAsmThreads.h"
#include "MathLib/InterpolationAlgorithms/PiecewiseLinearInterpolation.h"
#include "MathLib/KelvinVector.h"
#include "MathLib/VectorizedTensor.h"
Include dependency graph for Function.cpp:

Go to the source code of this file.

Classes

struct  MaterialPropertyLib::CurveWrapper
class  MaterialPropertyLib::Function::Implementation< D >

Namespaces

namespace  MaterialPropertyLib

Functions

template<typename T>
static std::vector< exprtk::expression< T > > MaterialPropertyLib::compileExpressions (exprtk::symbol_table< T > &symbol_table, std::vector< std::string > const &string_expressions)
static void MaterialPropertyLib::updateVariableArrayValues (std::vector< Variable > const &variables, VariableArray const &new_variable_array, VariableArray &variable_array)
static PropertyDataType MaterialPropertyLib::evaluateExpressions (std::vector< Variable > const &variables, VariableArray const &new_variable_array, ParameterLib::SpatialPosition const &pos, double const t, std::vector< exprtk::expression< double > > const &expressions, VariableArray &variable_array, bool const spatial_position_is_required)
static std::vector< std::string > MaterialPropertyLib::collectVariables (std::vector< std::string > const &value_string_expressions, std::vector< std::pair< std::string, std::vector< std::string > > > const &dvalue_string_expressions)