66 using std::max, std::min;
68 switch (_combination_type)
70 case CombinationType::Maximum:
71 _damage_index[_qp] = _damage_index_old[_qp];
72 for (
unsigned int i = 0; i < _damage_models.size(); ++i)
73 _damage_index[_qp] = max(_damage_index[_qp], _damage_models[i]->getQpDamageIndex(_qp));
75 case CombinationType::Product:
76 _damage_index[_qp] = 1.0;
77 for (
unsigned int i = 0; i < _damage_models.size(); ++i)
78 _damage_index[_qp] *= 1.0 - _damage_models[i]->getQpDamageIndex(_qp);
79 _damage_index[_qp] = 1.0 - _damage_index[_qp];
83 _damage_index[_qp] = max(_damage_index_old[_qp], max(0.0, min(1.0, _damage_index[_qp])));
const PertinentGeochemicalSystem model(database, {"H2O", "H+", "HCO3-", "O2(aq)", "Ca++", ">(s)FeOH", "radius_neg1", "radius_neg1.5"}, {"Calcite"}, {}, {"Calcite_asdf"}, {"CH4(aq)"}, {">(s)FeOCa+"}, "O2(aq)", "e-")