https://mooseframework.inl.gov
Loading...
Searching...
No Matches
PiecewiseLinearInterpolationMaterial.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#pragma once
11
12#include "Material.h"
13#include "LinearInterpolation.h"
15
21{
22public:
24
26
27protected:
28 virtual void computeQpProperties() override;
29
31 std::string _prop_name;
32
35
37 const Real & _scale_factor;
38
40 const bool _extrap;
41
46
48 std::unique_ptr<LinearInterpolation> _linear_interp;
49};
OutputTools< Real >::VariableValue VariableValue
Definition MooseTypes.h:348
Interface class ("Veneer") to provide generator methods for derivative material property names.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131
This material uses a LinearInterpolation object to define the dependence of the material's value on a...
std::string _prop_name
Name of the property to be computed.
MaterialProperty< Real > *const _dproperty
First derivative of the material property wrt the coupled variable.
const Real & _scale_factor
Factor to scale the ordinate values by (default = 1)
std::unique_ptr< LinearInterpolation > _linear_interp
LinearInterpolation object.
const VariableValue & _coupled_var
Value of the coupled variable to be used as the abscissa in the piecewise linear interpolation.
MaterialProperty< Real > & _property
Material property to be calculated.
virtual void computeQpProperties() override
Users must override this method.