diff --git a/MaterialLib/MPL/Properties/EffectiveThermalConductivityPorosityMixing.cpp b/MaterialLib/MPL/Properties/EffectiveThermalConductivityPorosityMixing.cpp index 55002fe42b5eb4a30d76bed6ba3be354e082ab2d..e5ca152cb6f6565ae5492a722057df454f4666e0 100644 --- a/MaterialLib/MPL/Properties/EffectiveThermalConductivityPorosityMixing.cpp +++ b/MaterialLib/MPL/Properties/EffectiveThermalConductivityPorosityMixing.cpp @@ -68,41 +68,11 @@ PropertyDataType EffectiveThermalConductivityPorosityMixing<1>::value( } template <> PropertyDataType EffectiveThermalConductivityPorosityMixing<1>::dValue( - VariableArray const& variable_array, Variable const variable, - ParameterLib::SpatialPosition const& pos, double const t, - double const dt) const + VariableArray const&, Variable const, + ParameterLib::SpatialPosition const&, double const, + double const) const { - auto const& medium = std::get<Medium*>(scale_); - auto const& liquid_phase = medium->phase("AqueousLiquid"); - auto const& solid_phase = medium->phase("Solid"); - auto const porosity = medium->property( - MaterialPropertyLib::PropertyType::porosity) - .template value<double>(variable_array, pos, t, dt); - auto const liquid_thermal_conductivity = - liquid_phase - .property(MaterialPropertyLib::PropertyType::thermal_conductivity) - .template value<double>(variable_array, pos, t, dt); - auto const solid_thermal_conductivity = solid_phase.property( - MaterialPropertyLib::PropertyType::thermal_conductivity) - .template value<double>(variable_array, pos, t, dt); - auto const dporosity = medium->property( - MaterialPropertyLib::PropertyType::porosity) - .template dValue<double>(variable_array, variable, pos, t, dt); - auto const dliquid_thermal_conductivity = - liquid_phase - .property(MaterialPropertyLib::PropertyType::thermal_conductivity) - .template dValue<double>(variable_array, variable, pos, t, dt); - auto const dsolid_thermal_conductivity = solid_phase.property( - MaterialPropertyLib::PropertyType::thermal_conductivity) - .template dValue<double>(variable_array, variable, pos, t, dt); - - double const deffective_thermal_conductivity = - -1.0 * dporosity * solid_thermal_conductivity + - (1.0 - porosity) * dsolid_thermal_conductivity + - dporosity * liquid_thermal_conductivity + - porosity * dliquid_thermal_conductivity; - return deffective_thermal_conductivity; - + OGS_FATAL("dValue is not implemented for EffectiveThermalConductivityPorosityMixing"); } // // For 2D and 3D problems @@ -169,60 +139,11 @@ PropertyDataType EffectiveThermalConductivityPorosityMixing<GlobalDim>::value( template <int GlobalDim> PropertyDataType EffectiveThermalConductivityPorosityMixing<GlobalDim>::dValue( - VariableArray const& variable_array, Variable const variable, - ParameterLib::SpatialPosition const& pos, double const t, - double const dt) const + VariableArray const&, Variable const, + ParameterLib::SpatialPosition const&, double const, + double const) const { - auto const& medium = std::get<Medium*>(scale_); - auto const& liquid_phase = medium->phase("AqueousLiquid"); - auto const& solid_phase = medium->phase("Solid"); - auto const porosity = medium->property( - MaterialPropertyLib::PropertyType::porosity) - .template value<double>(variable_array, pos, t, dt); - auto const liquid_thermal_conductivity = - liquid_phase - .property( - MaterialPropertyLib::PropertyType::thermal_conductivity) - .template value<double>(variable_array, pos, t, dt); - auto solid_thermal_conductivity = - formEigenTensor<GlobalDim>(solid_phase - .property( - MaterialPropertyLib::PropertyType::thermal_conductivity) - .value(variable_array, pos, t, dt)); - auto const dporosity = medium->property( - MaterialPropertyLib::PropertyType::porosity) - .template dValue<double>(variable_array, variable, pos, t, dt); - auto const dliquid_thermal_conductivity = - liquid_phase - .property( - MaterialPropertyLib::PropertyType::thermal_conductivity) - .template dValue<double>(variable_array, variable, pos, t, dt); - auto dsolid_thermal_conductivity = - formEigenTensor<GlobalDim>(solid_phase - .property( - MaterialPropertyLib::PropertyType::thermal_conductivity) - .dValue(variable_array, variable, pos, t, dt)); - - // Local coordinate transformation is only applied for the case that the - // initial solid thermal conductivity is given with orthotropic assumption. - if (local_coordinate_system_ && (solid_thermal_conductivity.cols() == GlobalDim)) - { - Eigen::Matrix<double, GlobalDim, GlobalDim> const e = - local_coordinate_system_->transformation<GlobalDim>(pos); - - solid_thermal_conductivity = e.transpose() * solid_thermal_conductivity * e; - dsolid_thermal_conductivity = - e.transpose() * dsolid_thermal_conductivity * e; - } - Eigen::Matrix<double, GlobalDim, GlobalDim> const - deffective_thermal_conductivity = - -1.0 * dporosity * solid_thermal_conductivity + - (1.0 - porosity) * dsolid_thermal_conductivity + - dporosity * liquid_thermal_conductivity * - Eigen::Matrix<double, GlobalDim, GlobalDim>::Identity() + - porosity * dliquid_thermal_conductivity * - Eigen::Matrix<double, GlobalDim, GlobalDim>::Identity(); - return deffective_thermal_conductivity; + OGS_FATAL("dValue is not implemented for EffectiveThermalConductivityPorosityMixing"); } template class EffectiveThermalConductivityPorosityMixing<2>; template class EffectiveThermalConductivityPorosityMixing<3>;