/******************************************************************************/ /* LYNX, a MOOSE-based application */ /* */ /* Copyright (C) 2017 by Antoine B. Jacquey and Mauro Cacace */ /* GFZ Potsdam, German Research Centre for Geosciences */ /* */ /* This program is free software: you can redistribute it and/or modify */ /* it under the terms of the GNU General Public License as published by */ /* the Free Software Foundation, either version 3 of the License, or */ /* (at your option) any later version. */ /* */ /* This program is distributed in the hope that it will be useful, */ /* but WITHOUT ANY WARRANTY; without even the implied warranty of */ /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */ /* GNU General Public License for more details. */ /* */ /* You should have received a copy of the GNU General Public License */ /* along with this program. If not, see */ /******************************************************************************/ #ifndef LYNXDENSITYTHERMAL_H #define LYNXDENSITYTHERMAL_H #include "LynxDensityBase.h" #include "Function.h" class LynxDensityThermal; template <> InputParameters validParams(); class LynxDensityThermal : public LynxDensityBase { public: LynxDensityThermal(const InputParameters & parameters); protected: virtual void computeQpProperties() override; const VariableValue & _temperature; MaterialProperty & _drho_dtemp; MaterialProperty & _dinvrho_dtemp; const std::vector _beta_fluid; const std::vector _beta_solid; Real _temp_ref; const Function * _temp_ref_fct; }; #endif // LYNXDENSITYTHERMAL_H