swh:1:snp:6088ab52ef49920e01e3f334cdf4d5d6c8a822b9
Raw File
Tip revision: 33052bf8cd813cc5b839750c92cb2dfa6e437adc authored by MPitz on 28 September 2021, 13:33:02 UTC
Update MaterialLib/MPL/Properties/GasPressureDependentPermeability.h, MaterialLib/MPL/Properties/GasPressureDependentPermeability.cpp files
Tip revision: 33052bf
ReactionSinusoidal.h
/**
 * \file
 * \copyright
 * Copyright (c) 2012-2021, OpenGeoSys Community (http://www.opengeosys.org)
 *            Distributed under a Modified BSD License.
 *              See accompanying file LICENSE.txt or
 *              http://www.opengeosys.org/project/license
 */

#pragma once


#include "Reaction.h"
#include "BaseLib/ConfigTree.h"
#include "BaseLib/Error.h"
#include "BaseLib/StringTools.h"

namespace Adsorption
{

class ReactionSinusoidal final : public Reaction
{
public:
    explicit ReactionSinusoidal(BaseLib::ConfigTree const& conf) :
        //! \ogs_file_param{material__adsorption__reaction__Sinusoidal__reaction_enthalpy}
        _enthalpy(conf.getConfigParameter<double>("reaction_enthalpy"))
    {
    }

    double getEnthalpy(const double /*p_Ads*/, const double /*T_Ads*/,
                        const double /*M_Ads*/) const override
    {
        return _enthalpy;
    }

    double getReactionRate(const double /*p_Ads*/, const double /*T_Ads*/, const double /*M_Ads*/,
                             const double /*loading*/) const override
    {
        OGS_FATAL("Method getReactionRate() should never be called directly");
    }

private:
    double _enthalpy;
};

}  // namespace Adsorption
back to top