MFrontGenericInterfaceSupport
MFrontGenericInterfaceSupport copied to clipboard
[mgis.fenics] Error in the implementation of the phase-field behaviour
Hi @bleyerj,
Looks like there is something wrong in the implementation of the phase-field behaviour as the History function is taken at the beginning of the time step and not the end as it should.
@Integrator {
// remove useless warnings, as we always compute the tangent operator
static_cast<void>(computeTangentOperator_);
∂q∕∂Δg = Gc*l₀* tmatrix<N, N, real>::Id();
∂Y∕∂Δd = Gc/l₀+2*H;
q = Gc*l₀*(g+Δg);
Y = ∂Y∕∂Δd ⋅ (d+Δd)-2*H;
}
shall be:
@Integrator {
// remove useless warnings, as we always compute the tangent operator
static_cast<void>(computeTangentOperator_);
const auto H_tdt = H+dH;
∂q∕∂Δg = Gc*l₀* tmatrix<N, N, real>::Id();
∂Y∕∂Δd = Gc/l₀+2*H_tdt;
q = Gc*l₀*(g+Δg);
Y = ∂Y∕∂Δd ⋅ (d+Δd)-2*H_tdt;
}