47 if (rMaterialProperties.
Has(RETENTION_LAW))
49 const std::string &RetentionLawName = rMaterialProperties[RETENTION_LAW];
50 if (RetentionLawName ==
"VanGenuchtenLaw")
51 return make_unique<VanGenuchtenLaw>();
53 if (RetentionLawName ==
"SaturatedLaw")
54 return make_unique<SaturatedLaw>();
56 if (RetentionLawName ==
"SaturatedBelowPhreaticLevelLaw")
57 return make_unique<SaturatedBelowPhreaticLevelLaw>();
67 return make_unique<SaturatedLaw>();
Properties encapsulates data shared by different Elements or Conditions. It can store any type of dat...
Definition: properties.h:69
bool Has(TVariableType const &rThisVariable) const
Definition: properties.h:578
Definition: retention_law_factory.h:40
KRATOS_CLASS_POINTER_DEFINITION(RetentionLawFactory)
Counted pointer of RetentionLawFactory.
static unique_ptr< RetentionLaw > Clone(const Properties &rMaterialProperties)
Definition: retention_law_factory.h:45
#define KRATOS_ERROR
Definition: exception.h:161
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
std::unique_ptr< T > unique_ptr
Definition: smart_pointers.h:33