Loading...
Searching...
No Matches
MICPpara.hpp
/*
Copyright 2021 NORCE.
This file is part of the Open Porous Media project (OPM).
OPM 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.
OPM 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 OPM. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef OPM_PARSER_MICPPARA_HPP
#define OPM_PARSER_MICPPARA_HPP
namespace Opm {
class Deck;
class MICPpara {
public:
MICPpara();
explicit MICPpara(const Deck& deck);
static MICPpara serializationTestObject()
{
MICPpara mp;
mp.m_density_biofilm = 100;
mp.m_fitting_factor = 77;
mp.m_maximum_oxygen_concentration = -1;
return mp;
}
double getDensityBiofilm() const {
return m_density_biofilm;
}
double getDensityCalcite() const {
return m_density_calcite;
}
double getDetachmentRate() const {
return m_detachment_rate;
}
double getCriticalPorosity() const {
return m_critical_porosity;
}
double getFittingFactor() const {
return m_fitting_factor;
}
double getHalfVelocityOxygen() const {
return m_half_velocity_oxygen;
}
double getHalfVelocityUrea() const {
return m_half_velocity_urea;
}
double getMaximumGrowthRate() const {
return m_maximum_growth_rate;
}
double getMaximumOxygenConcentration() const {
return m_maximum_oxygen_concentration;
}
double getMaximumUreaConcentration() const {
return m_maximum_urea_concentration;
}
double getMaximumUreaUtilization() const {
return m_maximum_urea_utilization;
}
double getMicrobialAttachmentRate() const {
return m_microbial_attachment_rate;
}
double getMicrobialDeathRate() const {
return m_microbial_death_rate;
}
double getMinimumPermeability() const {
return m_minimum_permeability;
}
double getOxygenConsumptionFactor() const {
return m_oxygen_consumption_factor;
}
double getToleranceBeforeClogging() const {
return m_tolerance_before_clogging;
}
double getYieldGrowthCoefficient() const {
return m_yield_growth_coefficient;
}
bool operator==(const MICPpara& data) const
{
return this->getDensityBiofilm() == data.getDensityBiofilm() &&
this->getDensityCalcite() == data.getDensityCalcite() &&
this->getDetachmentRate() == data.getDetachmentRate() &&
this->getCriticalPorosity() == data.getCriticalPorosity() &&
this->getFittingFactor() == data.getFittingFactor() &&
this->getHalfVelocityOxygen() == data.getHalfVelocityOxygen() &&
this->getHalfVelocityUrea() == data.getHalfVelocityUrea() &&
this->getMaximumGrowthRate() == data.getMaximumGrowthRate() &&
this->getMaximumOxygenConcentration() == data.getMaximumOxygenConcentration() &&
this->getMaximumUreaConcentration() == data.getMaximumUreaConcentration() &&
this->getMaximumUreaUtilization() == data.getMaximumUreaUtilization() &&
this->getMicrobialAttachmentRate() == data.getMicrobialAttachmentRate() &&
this->getMicrobialDeathRate() == data.getMicrobialDeathRate() &&
this->getMinimumPermeability() == data.getMinimumPermeability() &&
this->getOxygenConsumptionFactor() == data.getOxygenConsumptionFactor() &&
this->getToleranceBeforeClogging() == data.getToleranceBeforeClogging() &&
this->getYieldGrowthCoefficient() == data.getYieldGrowthCoefficient();
}
template<class Serializer>
void serializeOp(Serializer& serializer)
{
serializer(m_density_biofilm);
serializer(m_density_calcite);
serializer(m_detachment_rate);
serializer(m_critical_porosity);
serializer(m_fitting_factor);
serializer(m_half_velocity_oxygen);
serializer(m_half_velocity_urea);
serializer(m_maximum_growth_rate);
serializer(m_maximum_oxygen_concentration);
serializer(m_maximum_urea_concentration);
serializer(m_maximum_urea_utilization);
serializer(m_microbial_attachment_rate);
serializer(m_microbial_death_rate);
serializer(m_minimum_permeability);
serializer(m_oxygen_consumption_factor);
serializer(m_tolerance_before_clogging);
serializer(m_yield_growth_coefficient);
}
private:
double m_density_biofilm;
double m_density_calcite;
double m_detachment_rate;
double m_critical_porosity;
double m_fitting_factor;
double m_half_velocity_oxygen;
double m_half_velocity_urea;
double m_maximum_growth_rate;
double m_maximum_oxygen_concentration;
double m_maximum_urea_concentration;
double m_maximum_urea_utilization;
double m_microbial_attachment_rate;
double m_microbial_death_rate;
double m_minimum_permeability;
double m_oxygen_consumption_factor;
double m_tolerance_before_clogging;
double m_yield_growth_coefficient;
};
}
#endif
Opm::Deck
Definition Deck.hpp:49
Opm::MICPpara
Definition MICPpara.hpp:26
Opm::Serializer
Class for (de-)serializing.
Definition Serializer.hpp:91
Opm
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition Exceptions.hpp:30