Commit 26050545 authored by Dmitry Yu. Naumov's avatar Dmitry Yu. Naumov

[PL/RM] Add micro saturation and pressure to IPs.

parent 26e1ea9f
......@@ -60,8 +60,12 @@ struct IntegrationPointData final
typename ShapeMatricesTypePressure::GlobalDimVectorType v_darcy;
double liquid_pressure_m = std::numeric_limits<double>::quiet_NaN();
double liquid_pressure_m_prev = std::numeric_limits<double>::quiet_NaN();
double saturation = std::numeric_limits<double>::quiet_NaN();
double saturation_prev = std::numeric_limits<double>::quiet_NaN();
double saturation_m = std::numeric_limits<double>::quiet_NaN();
double saturation_m_prev = std::numeric_limits<double>::quiet_NaN();
double porosity = std::numeric_limits<double>::quiet_NaN();
double porosity_prev = std::numeric_limits<double>::quiet_NaN();
double transport_porosity = std::numeric_limits<double>::quiet_NaN();
......@@ -85,8 +89,10 @@ struct IntegrationPointData final
sigma_eff_prev = sigma_eff;
sigma_sw_prev = sigma_sw;
saturation_prev = saturation;
saturation_m_prev = saturation_m;
porosity_prev = porosity;
transport_porosity_prev = transport_porosity;
liquid_pressure_m_prev = liquid_pressure_m;
material_state_variables->pushBackState();
}
......
......@@ -219,6 +219,8 @@ void RichardsMechanicsLocalAssembler<ShapeFunctionDisplacement,
variables[static_cast<int>(MPL::Variable::capillary_pressure)] =
p_cap_ip;
variables[static_cast<int>(MPL::Variable::phase_pressure)] = -p_cap_ip;
_ip_data[ip].liquid_pressure_m_prev = -p_cap_ip;
_ip_data[ip].liquid_pressure_m = -p_cap_ip;
auto const temperature =
medium->property(MPL::PropertyType::reference_temperature)
......@@ -229,6 +231,8 @@ void RichardsMechanicsLocalAssembler<ShapeFunctionDisplacement,
medium->property(MPL::PropertyType::saturation)
.template value<double>(variables, x_position, t, dt);
_ip_data[ip].saturation_m_prev = _ip_data[ip].saturation_prev;
// Set eps_m_prev from potentially non-zero eps and sigma_sw from
// restart.
auto const C_el = _ip_data[ip].computeElasticTangentStiffness(
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment