Skip to content
Snippets Groups Projects
Commit b8db0a9e authored by Dmitri Naumov's avatar Dmitri Naumov
Browse files

[MatL] Update for moved Parameter.

parent a680c9e3
No related branches found
No related tags found
No related merge requests found
Showing
with 88 additions and 101 deletions
......@@ -38,10 +38,10 @@ double computeDamage(double const damage_prev,
template <int DisplacementDim>
void CohesiveZoneModeI<DisplacementDim>::computeConstitutiveRelation(
double const t,
ProcessLib::SpatialPosition const& x,
ParameterLib::SpatialPosition const& x,
double const aperture0,
Eigen::Ref<Eigen::VectorXd const>
/*sigma0*/,
/*sigma0*/,
Eigen::Ref<Eigen::VectorXd const>
/*w_prev*/,
Eigen::Ref<Eigen::VectorXd const>
......
......@@ -12,7 +12,7 @@
#include <Eigen/Eigen>
#include <utility>
#include "ProcessLib/Parameter/Parameter.h"
#include "ParameterLib/Parameter.h"
#include "FractureModelBase.h"
......@@ -25,8 +25,8 @@ namespace CohesiveZoneModeI
/// Variables specific to the material model
struct MaterialPropertiesParameters
{
using P = ProcessLib::Parameter<double>;
using X = ProcessLib::SpatialPosition;
using P = ParameterLib::Parameter<double>;
using X = ParameterLib::SpatialPosition;
MaterialPropertiesParameters(P const& normal_stiffness_,
P const& shear_stiffness_,
......@@ -84,7 +84,7 @@ struct MaterialPropertiesParameters
/// details.
struct MaterialProperties final
{
MaterialProperties(double const t, ProcessLib::SpatialPosition const& x,
MaterialProperties(double const t, ParameterLib::SpatialPosition const& x,
MaterialPropertiesParameters const& mp)
: Kn(mp.normal_stiffness(t, x)[0]),
Ks(mp.shear_stiffness(t, x)[0]),
......@@ -161,7 +161,7 @@ public:
*/
void computeConstitutiveRelation(
double const t,
ProcessLib::SpatialPosition const& x,
ParameterLib::SpatialPosition const& x,
double const aperture0,
Eigen::Ref<Eigen::VectorXd const>
sigma0,
......@@ -179,7 +179,7 @@ public:
material_state_variables) override;
MaterialProperties evaluatedMaterialProperties(
double const t, ProcessLib::SpatialPosition const& x) const
double const t, ParameterLib::SpatialPosition const& x) const
{
return MaterialProperties(t, x, _mp);
}
......
......@@ -9,8 +9,9 @@
#include "CreateCohesiveZoneModeI.h"
#include "ParameterLib/Utils.h"
#include "CohesiveZoneModeI.h"
#include "ProcessLib/Utils/ProcessUtils.h" // required for findParameter
namespace MaterialLib
{
......@@ -20,26 +21,26 @@ namespace CohesiveZoneModeI
{
template <int DisplacementDim>
std::unique_ptr<FractureModelBase<DisplacementDim>> createCohesiveZoneModeI(
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
BaseLib::ConfigTree const& config)
{
//! \ogs_file_param{material__fracture_model__type}
config.checkConfigParameter("type", "CohesiveZoneModeI");
DBUG("Create CohesiveZoneModeI material");
auto& Kn = ProcessLib::findParameter<double>(
auto& Kn = ParameterLib::findParameter<double>(
//! \ogs_file_param_special{material__fracture_model__CohesiveZoneModeI__normal_stiffness}
config, "normal_stiffness", parameters, 1);
auto& Ks = ProcessLib::findParameter<double>(
auto& Ks = ParameterLib::findParameter<double>(
//! \ogs_file_param_special{material__fracture_model__CohesiveZoneModeI__shear_stiffness}
config, "shear_stiffness", parameters, 1);
auto& Gc = ProcessLib::findParameter<double>(
auto& Gc = ParameterLib::findParameter<double>(
//! \ogs_file_param_special{material__fracture_model__CohesiveZoneModeI__fracture_toughness}
config, "fracture_toughness", parameters, 1);
auto& t_np = ProcessLib::findParameter<double>(
auto& t_np = ParameterLib::findParameter<double>(
//! \ogs_file_param_special{material__fracture_model__CohesiveZoneModeI__peak_normal_traction}
config, "peak_normal_traction", parameters, 1);
......@@ -58,11 +59,11 @@ std::unique_ptr<FractureModelBase<DisplacementDim>> createCohesiveZoneModeI(
}
template std::unique_ptr<FractureModelBase<2>> createCohesiveZoneModeI(
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
BaseLib::ConfigTree const& config);
template std::unique_ptr<FractureModelBase<3>> createCohesiveZoneModeI(
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
BaseLib::ConfigTree const& config);
} // namespace CohesiveZoneModeI
......
......@@ -19,7 +19,7 @@ namespace CohesiveZoneModeI
{
template <int DisplacementDim>
std::unique_ptr<FractureModelBase<DisplacementDim>> createCohesiveZoneModeI(
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
BaseLib::ConfigTree const& config);
} // namespace CohesiveZoneModeI
......
......@@ -9,29 +9,29 @@
#include "CreateLinearElasticIsotropic.h"
#include "ProcessLib/Utils/ProcessUtils.h" // required for findParameter
#include "ParameterLib/Utils.h"
#include "LinearElasticIsotropic.h"
namespace MaterialLib
{
namespace Fracture
{
template <int DisplacementDim>
std::unique_ptr<FractureModelBase<DisplacementDim>>
createLinearElasticIsotropic(
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
BaseLib::ConfigTree const& config)
{
//! \ogs_file_param{material__fracture_model__type}
config.checkConfigParameter("type", "LinearElasticIsotropic");
DBUG("Create LinearElasticIsotropic material");
auto& Kn = ProcessLib::findParameter<double>(
auto& Kn = ParameterLib::findParameter<double>(
//! \ogs_file_param_special{material__fracture_model__LinearElasticIsotropic__normal_stiffness}
config, "normal_stiffness", parameters, 1);
auto& Ks = ProcessLib::findParameter<double>(
auto& Ks = ParameterLib::findParameter<double>(
//! \ogs_file_param_special{material__fracture_model__LinearElasticIsotropic__shear_stiffness}
config, "shear_stiffness", parameters, 1);
......@@ -50,17 +50,12 @@ createLinearElasticIsotropic(
penalty_aperture_cutoff, tension_cutoff, mp);
}
template
std::unique_ptr<FractureModelBase<2>>
createLinearElasticIsotropic(
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
template std::unique_ptr<FractureModelBase<2>> createLinearElasticIsotropic(
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
BaseLib::ConfigTree const& config);
template
std::unique_ptr<FractureModelBase<3>>
createLinearElasticIsotropic(
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
template std::unique_ptr<FractureModelBase<3>> createLinearElasticIsotropic(
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
BaseLib::ConfigTree const& config);
} // namespace Fracture
......
......@@ -15,11 +15,10 @@ namespace MaterialLib
{
namespace Fracture
{
template <int DisplacementDim>
std::unique_ptr<FractureModelBase<DisplacementDim>>
createLinearElasticIsotropic(
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
BaseLib::ConfigTree const& config);
} // namespace Fracture
......
......@@ -9,41 +9,40 @@
#include "CreateMohrCoulomb.h"
#include "ProcessLib/Utils/ProcessUtils.h" // required for findParameter
#include "ParameterLib/Utils.h"
#include "MohrCoulomb.h"
namespace MaterialLib
{
namespace Fracture
{
template <int DisplacementDim>
std::unique_ptr<FractureModelBase<DisplacementDim>>
createMohrCoulomb(
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
std::unique_ptr<FractureModelBase<DisplacementDim>> createMohrCoulomb(
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
BaseLib::ConfigTree const& config)
{
//! \ogs_file_param{material__fracture_model__type}
config.checkConfigParameter("type", "MohrCoulomb");
DBUG("Create MohrCoulomb material");
auto& Kn = ProcessLib::findParameter<double>(
auto& Kn = ParameterLib::findParameter<double>(
//! \ogs_file_param_special{material__fracture_model__MohrCoulomb__normal_stiffness}
config, "normal_stiffness", parameters, 1);
auto& Ks = ProcessLib::findParameter<double>(
auto& Ks = ParameterLib::findParameter<double>(
//! \ogs_file_param_special{material__fracture_model__MohrCoulomb__shear_stiffness}
config, "shear_stiffness", parameters, 1);
auto& friction_angle = ProcessLib::findParameter<double>(
auto& friction_angle = ParameterLib::findParameter<double>(
//! \ogs_file_param_special{material__fracture_model__MohrCoulomb__friction_angle}
config, "friction_angle", parameters, 1);
auto& dilatancy_angle = ProcessLib::findParameter<double>(
auto& dilatancy_angle = ParameterLib::findParameter<double>(
//! \ogs_file_param_special{material__fracture_model__MohrCoulomb__dilatancy_angle}
config, "dilatancy_angle", parameters, 1);
auto& cohesion = ProcessLib::findParameter<double>(
auto& cohesion = ParameterLib::findParameter<double>(
//! \ogs_file_param_special{material__fracture_model__MohrCoulomb__cohesion}
config, "cohesion", parameters, 1);
......@@ -62,17 +61,12 @@ createMohrCoulomb(
penalty_aperture_cutoff, tension_cutoff, mp);
}
template
std::unique_ptr<FractureModelBase<2>>
createMohrCoulomb(
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
template std::unique_ptr<FractureModelBase<2>> createMohrCoulomb(
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
BaseLib::ConfigTree const& config);
template
std::unique_ptr<FractureModelBase<3>>
createMohrCoulomb(
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
template std::unique_ptr<FractureModelBase<3>> createMohrCoulomb(
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
BaseLib::ConfigTree const& config);
} // namespace Fracture
......
......@@ -15,11 +15,9 @@ namespace MaterialLib
{
namespace Fracture
{
template <int DisplacementDim>
std::unique_ptr<FractureModelBase<DisplacementDim>>
createMohrCoulomb(
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters,
std::unique_ptr<FractureModelBase<DisplacementDim>> createMohrCoulomb(
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters,
BaseLib::ConfigTree const& config);
} // namespace Fracture
......
......@@ -11,7 +11,7 @@
#include <Eigen/Eigen>
#include "ProcessLib/Parameter/Parameter.h"
#include "ParameterLib/Parameter.h"
namespace MaterialLib
{
......@@ -77,7 +77,7 @@ public:
*/
virtual void computeConstitutiveRelation(
double const t,
ProcessLib::SpatialPosition const& x,
ParameterLib::SpatialPosition const& x,
double const aperture0,
Eigen::Ref<Eigen::VectorXd const>
sigma0,
......
......@@ -18,7 +18,7 @@ namespace Fracture
template <int DisplacementDim>
void LinearElasticIsotropic<DisplacementDim>::computeConstitutiveRelation(
double const t,
ProcessLib::SpatialPosition const& x,
ParameterLib::SpatialPosition const& x,
double const aperture0,
Eigen::Ref<Eigen::VectorXd const>
sigma0,
......
......@@ -12,7 +12,7 @@
#include <Eigen/Eigen>
#include <utility>
#include "ProcessLib/Parameter/Parameter.h"
#include "ParameterLib/Parameter.h"
#include "FractureModelBase.h"
......@@ -28,8 +28,8 @@ public:
/// Variables specific to the material model
struct MaterialProperties
{
using P = ProcessLib::Parameter<double>;
using X = ProcessLib::SpatialPosition;
using P = ParameterLib::Parameter<double>;
using X = ParameterLib::SpatialPosition;
MaterialProperties(P const& normal_stiffness_, P const& shear_stiffness_)
: normal_stiffness(normal_stiffness_), shear_stiffness(shear_stiffness_)
......@@ -83,7 +83,7 @@ public:
*/
void computeConstitutiveRelation(
double const t,
ProcessLib::SpatialPosition const& x,
ParameterLib::SpatialPosition const& x,
double const aperture0,
Eigen::Ref<Eigen::VectorXd const>
sigma0,
......
......@@ -30,10 +30,9 @@ struct MaterialPropertyValues
double c = 0.0;
template <typename MaterialProperties>
MaterialPropertyValues(
MaterialProperties const& mp,
double const t,
ProcessLib::SpatialPosition const& x)
MaterialPropertyValues(MaterialProperties const& mp,
double const t,
ParameterLib::SpatialPosition const& x)
{
Kn = mp.normal_stiffness(t,x)[0];
Ks = mp.shear_stiffness(t,x)[0];
......@@ -48,7 +47,7 @@ struct MaterialPropertyValues
template <int DisplacementDim>
void MohrCoulomb<DisplacementDim>::computeConstitutiveRelation(
double const t,
ProcessLib::SpatialPosition const& x,
ParameterLib::SpatialPosition const& x,
double const aperture0,
Eigen::Ref<Eigen::VectorXd const>
sigma0,
......
......@@ -12,7 +12,7 @@
#include <Eigen/Eigen>
#include <utility>
#include "ProcessLib/Parameter/Parameter.h"
#include "ParameterLib/Parameter.h"
#include "FractureModelBase.h"
......@@ -28,8 +28,8 @@ public:
/// Variables specific to the material model
struct MaterialProperties
{
using P = ProcessLib::Parameter<double>;
using X = ProcessLib::SpatialPosition;
using P = ParameterLib::Parameter<double>;
using X = ParameterLib::SpatialPosition;
MaterialProperties(
P const& normal_stiffness_, P const& shear_stiffness_,
......@@ -98,7 +98,7 @@ public:
*/
void computeConstitutiveRelation(
double const t,
ProcessLib::SpatialPosition const& x,
ParameterLib::SpatialPosition const& x,
double const aperture0,
Eigen::Ref<Eigen::VectorXd const>
sigma0,
......
......@@ -24,7 +24,7 @@ namespace PorousMedium
{
PorousMediaProperties createPorousMediaProperties(
MeshLib::Mesh& mesh, BaseLib::ConfigTree const& configs,
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters)
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters)
{
DBUG("Create PorousMediaProperties.");
......
......@@ -11,9 +11,9 @@
#pragma once
#include "PorousMediaProperties.h"
#include "BaseLib/ConfigTree.h"
#include "ProcessLib/Parameter/Parameter.h"
#include "ParameterLib/Parameter.h"
#include "PorousMediaProperties.h"
namespace MeshLib
{
......@@ -26,6 +26,7 @@ namespace PorousMedium
{
PorousMediaProperties createPorousMediaProperties(
MeshLib::Mesh& mesh, BaseLib::ConfigTree const& porous_media_config,
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters);
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const&
parameters);
}
}
......@@ -14,7 +14,7 @@
#include <Eigen/Dense>
#include "BaseLib/Error.h"
#include "ProcessLib/Parameter/Parameter.h"
#include "ParameterLib/Parameter.h"
namespace MaterialLib
{
......@@ -27,7 +27,7 @@ class Permeability
{
public:
explicit Permeability(
ProcessLib::Parameter<double> const& permeability_parameter,
ParameterLib::Parameter<double> const& permeability_parameter,
int const dimension)
: _permeability_parameter(permeability_parameter), _dimension(dimension)
{
......@@ -52,11 +52,10 @@ public:
* @param variable A variable with any double type value.
* @param temperature Temperature with any double type value.
*/
Eigen::MatrixXd const& getValue(
const double t,
ProcessLib::SpatialPosition const& pos,
const double variable,
const double temperature) const
Eigen::MatrixXd const& getValue(const double t,
ParameterLib::SpatialPosition const& pos,
const double variable,
const double temperature) const
{
(void)variable;
(void)temperature;
......@@ -72,7 +71,7 @@ public:
}
private:
ProcessLib::Parameter<double> const& _permeability_parameter;
ParameterLib::Parameter<double> const& _permeability_parameter;
int const _dimension;
mutable Eigen::MatrixXd _intrinsic_permeability_tensor;
};
......
......@@ -18,9 +18,9 @@
#include "BaseLib/Error.h"
#include "MathLib/LinAlg/Eigen/EigenMapTools.h"
#include "ProcessLib/Parameter/ConstantParameter.h"
#include "ProcessLib/Parameter/SpatialPosition.h"
#include "ProcessLib/Utils/ProcessUtils.h"
#include "ParameterLib/ConstantParameter.h"
#include "ParameterLib/SpatialPosition.h"
#include "ParameterLib/Utils.h"
namespace MaterialLib
{
......@@ -28,14 +28,15 @@ namespace PorousMedium
{
std::unique_ptr<Permeability> createPermeabilityModel(
BaseLib::ConfigTree const& config,
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters)
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters)
{
//! \ogs_file_param{material__porous_medium__permeability__type}
auto const type = config.getConfigParameter<std::string>("type");
if (type == "Constant")
{
auto const& permeability_parameter = ProcessLib::findParameter<double>(
auto const& permeability_parameter = ParameterLib::findParameter<
double>(
config,
//! \ogs_file_param_special{material__porous_medium__permeability__permeability_tensor_entries}
"permeability_tensor_entries", parameters, 0);
......
......@@ -33,7 +33,8 @@ namespace PorousMedium
*/
std::unique_ptr<Permeability> createPermeabilityModel(
BaseLib::ConfigTree const& config,
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters);
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const&
parameters);
} // namespace PorousMedium
} // namespace MaterialLib
......@@ -14,7 +14,7 @@
#include <string>
#include "ProcessLib/Parameter/Parameter.h"
#include "ParameterLib/Parameter.h"
namespace MaterialLib
{
......@@ -23,8 +23,7 @@ namespace PorousMedium
class Porosity
{
public:
explicit Porosity(
ProcessLib::Parameter<double> const& parameter)
explicit Porosity(ParameterLib::Parameter<double> const& parameter)
: _parameter(parameter)
{
}
......@@ -38,7 +37,7 @@ public:
* @param temperature Temperature with any double type value.
*/
virtual double getValue(const double t,
ProcessLib::SpatialPosition const& pos,
ParameterLib::SpatialPosition const& pos,
const double variable,
const double temperature) const
{
......@@ -48,7 +47,7 @@ public:
}
private:
ProcessLib::Parameter<double> const& _parameter;
ParameterLib::Parameter<double> const& _parameter;
};
} // namespace PorousMedium
......
......@@ -12,10 +12,9 @@
#include "createPorosityModel.h"
#include "BaseLib/Error.h"
#include "BaseLib/ConfigTree.h"
#include "ProcessLib/Utils/ProcessUtils.h"
#include "BaseLib/Error.h"
#include "ParameterLib/Utils.h"
#include "Porosity.h"
......@@ -23,15 +22,16 @@ namespace MaterialLib
{
namespace PorousMedium
{
std::unique_ptr<Porosity> createPorosityModel(BaseLib::ConfigTree const& config,
std::vector<std::unique_ptr<ProcessLib::ParameterBase>> const& parameters)
std::unique_ptr<Porosity> createPorosityModel(
BaseLib::ConfigTree const& config,
std::vector<std::unique_ptr<ParameterLib::ParameterBase>> const& parameters)
{
//! \ogs_file_param{material__porous_medium__porosity__type}
auto const type = config.getConfigParameter<std::string>("type");
if (type == "Constant")
{
auto const& constant_porosity = ProcessLib::findParameter<double>(
auto const& constant_porosity = ParameterLib::findParameter<double>(
config,
//! \ogs_file_param_special{material__porous_medium__porosity__porosity_parameter}
"porosity_parameter", parameters, 1);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment