DensityHauer.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 "Adsorption.h"
#include "DensityCook.h"
namespace Adsorption
{
class DensityHauer : public AdsorptionReaction
{
public:
double getAdsorbateDensity(const double T_Ads) const override;
double getAlphaT(const double T_Ads) const override;
double characteristicCurve(const double A) const override;
double dCharacteristicCurve(const double A) const override;
};
inline double rhoWaterHauer(const double T_Ads)
{
// data like in python script
const double T0 = 283.15, rho0 = rhoWaterDean(T0), alpha0 = 3.781e-4; // K; kg/m^3; 1/K
return rho0 * (1. - alpha0 * (T_Ads-T0)); // in kg/m^3
}
} // namespace Adsorption