Skip to content

Commit 1b0b1af

Browse files
Merge branch 'master' into servol_loading_with_periodic_boundary
2 parents aa0ad5a + 2791602 commit 1b0b1af

22 files changed

Lines changed: 166 additions & 228 deletions

File tree

applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/fatigue/generic_small_strain_high_cycle_fatigue_law.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -451,7 +451,7 @@ class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainHighCycleFatig
451451

452452
void save(Serializer &rSerializer) const override
453453
{
454-
KRATOS_SERIALIZE_SAVE_BASE_CLASS(rSerializer, ConstitutiveLaw)
454+
KRATOS_SERIALIZE_SAVE_BASE_CLASS(rSerializer, BaseType)
455455
rSerializer.save("FatigueReductionFactor", mFatigueReductionFactor);
456456
rSerializer.save("PreviousStresses", mPreviousStresses);
457457
rSerializer.save("MaxStress", mMaxStress);
@@ -476,7 +476,7 @@ class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainHighCycleFatig
476476

477477
void load(Serializer &rSerializer) override
478478
{
479-
KRATOS_SERIALIZE_LOAD_BASE_CLASS(rSerializer, ConstitutiveLaw)
479+
KRATOS_SERIALIZE_LOAD_BASE_CLASS(rSerializer, BaseType)
480480
rSerializer.load("FatigueReductionFactor", mFatigueReductionFactor);
481481
rSerializer.load("PreviousStresses", mPreviousStresses);
482482
rSerializer.load("MaxStress", mMaxStress);

applications/ConstitutiveLawsApplication/custom_processes/advance_in_time_high_cycle_fatigue_process.h

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,6 @@ class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION)AdvanceInTimeHighCycleFatigueProc
5252
///@name Enum's
5353
///@{
5454

55-
protected:
56-
5755

5856
public:
5957
static constexpr double tolerance = std::numeric_limits<double>::epsilon();
@@ -98,10 +96,26 @@ class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION)AdvanceInTimeHighCycleFatigueProc
9896
*/
9997
void TimeAndCyclesUpdate(const double Increment);
10098

101-
protected:
99+
private:
102100
// Member Variables
103-
ModelPart& mrModelPart; // The model part to compute
104-
Parameters mThisParameters;
101+
ModelPart& mrModelPart; // The model part to compute
102+
Parameters mThisParameters; // The project parameters
103+
104+
friend class Serializer;
105+
106+
void save(Serializer &rSerializer) const override
107+
{
108+
KRATOS_SERIALIZE_SAVE_BASE_CLASS(rSerializer, Process)
109+
rSerializer.save("ModelPart", mrModelPart);
110+
rSerializer.save("ThisParameters", mThisParameters);
111+
}
112+
113+
void load(Serializer &rSerializer) override
114+
{
115+
KRATOS_SERIALIZE_LOAD_BASE_CLASS(rSerializer, Process)
116+
rSerializer.load("ModelPart", mrModelPart);
117+
rSerializer.load("ThisParameters", mThisParameters);
118+
}
105119

106120
}; // Class AdvanceInTimeHighCycleFatigueProcess
107121

applications/GeoMechanicsApplication/custom_conditions/general_U_Pw_diff_order_condition.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ class KRATOS_API(GEO_MECHANICS_APPLICATION) GeneralUPwDiffOrderCondition : publi
4242

4343
KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION(GeneralUPwDiffOrderCondition);
4444

45-
GeneralUPwDiffOrderCondition() : GeneralUPwDiffOrderCondition(0, nullptr, nullptr){};
45+
GeneralUPwDiffOrderCondition() : GeneralUPwDiffOrderCondition(0, nullptr, nullptr) {};
4646

4747
GeneralUPwDiffOrderCondition(IndexType NewId, GeometryType::Pointer pGeometry)
4848
: GeneralUPwDiffOrderCondition(NewId, pGeometry, nullptr)

applications/GeoMechanicsApplication/custom_elements/steady_state_Pw_element.hpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,8 +121,7 @@ class KRATOS_API(GEO_MECHANICS_APPLICATION) SteadyStatePwElement : public Transi
121121
void load(Serializer& rSerializer) override{KRATOS_SERIALIZE_LOAD_BASE_CLASS(rSerializer, Element)}
122122

123123
// Assignment operator.
124-
SteadyStatePwElement&
125-
operator=(SteadyStatePwElement const& rOther);
124+
SteadyStatePwElement& operator=(SteadyStatePwElement const& rOther);
126125

127126
// Copy constructor.
128127
SteadyStatePwElement(SteadyStatePwElement const& rOther);

applications/GeoMechanicsApplication/custom_elements/transient_Pw_element.hpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -166,8 +166,7 @@ class KRATOS_API(GEO_MECHANICS_APPLICATION) TransientPwElement : public UPwSmall
166166
void load(Serializer& rSerializer) override{KRATOS_SERIALIZE_LOAD_BASE_CLASS(rSerializer, Element)}
167167

168168
// Assignment operator.
169-
TransientPwElement&
170-
operator=(TransientPwElement const& rOther);
169+
TransientPwElement& operator=(TransientPwElement const& rOther);
171170

172171
// Copy constructor.
173172
TransientPwElement(TransientPwElement const& rOther);

applications/GeoMechanicsApplication/custom_processes/README.md

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,11 +89,19 @@ When the overconsolidation ratio ("OCR") and optionally the unloading-reloading
8989

9090
$$K_0 = OCR.K_0^{nc} + \frac{\nu_{ur}}{1 - \nu_{ur}} ( OCR - 1 )$$
9191

92-
![Initial effective stress tensor](initial_effective_stress_tensor.png)
92+
```math
93+
\sigma^{'}_{initial} = \begin{bmatrix} {K_0 \sigma^{'}_{zz}} & 0 & 0 \\
94+
0 & {K_0 \sigma^{'}_{zz}} & 0 \\
95+
0 & 0 & {\sigma^{'}_{zz}} \end{bmatrix}
96+
```
9397

9498
Alternatively, when the pre-overburden pressure "POP" is specified, the initial stress tensor becomes:
9599

96-
![Initial effective stress tensor with POP](initial_effective_stress_tensor_with_POP.png)
100+
```math
101+
\sigma^{'}_{initial} = \begin{bmatrix} {K_0^{nc} (\sigma^{'}_{zz} + POP )} - \frac{\nu_{ur}}{1 - \nu_{ur}} POP & 0 & 0 \\
102+
0 & {K_0^{nc} (\sigma^{'}_{zz} + POP)} - \frac{\nu_{ur}}{1 - \nu_{ur}} POP & 0 \\
103+
0 & 0 & {\sigma^{'}_{zz}} \end{bmatrix}
104+
```
97105

98106
When the optional unloading-reloading Poisson's ratio is omitted, a default value $\nu_{ur} = 0$ is used such that the correction term drops to 0.
99107

Binary file not shown.
Binary file not shown.

applications/GeoMechanicsApplication/custom_python/add_custom_strategies_to_python.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -110,18 +110,18 @@ void AddCustomStrategiesToPython(pybind11::module& m)
110110

111111
py::class_<GeoMechanicsNewtonRaphsonStrategyType, typename GeoMechanicsNewtonRaphsonStrategyType::Pointer, BaseSolvingStrategyType>(
112112
m, "GeoMechanicsNewtonRaphsonStrategy")
113-
.def(py::init<ModelPart&, BaseSchemeType::Pointer, LinearSolverType::Pointer, ConvergenceCriteriaType::Pointer,
113+
.def(py::init<ModelPart&, BaseSchemeType::Pointer, ConvergenceCriteriaType::Pointer,
114114
BuilderAndSolverType::Pointer, Parameters&, int, bool, bool, bool>());
115115

116116
py::class_<GeoMechanicsNewtonRaphsonErosionProcessStrategyType,
117117
typename GeoMechanicsNewtonRaphsonErosionProcessStrategyType::Pointer, BaseSolvingStrategyType>(
118118
m, "GeoMechanicsNewtonRaphsonErosionProcessStrategy")
119-
.def(py::init<ModelPart&, BaseSchemeType::Pointer, LinearSolverType::Pointer, ConvergenceCriteriaType::Pointer,
119+
.def(py::init<ModelPart&, BaseSchemeType::Pointer, ConvergenceCriteriaType::Pointer,
120120
BuilderAndSolverType::Pointer, Parameters&, int, bool, bool, bool>());
121121

122122
py::class_<GeoMechanicsRammArcLengthStrategyType, typename GeoMechanicsRammArcLengthStrategyType::Pointer, BaseSolvingStrategyType>(
123123
m, "GeoMechanicsRammArcLengthStrategy")
124-
.def(py::init<ModelPart&, BaseSchemeType::Pointer, LinearSolverType::Pointer, ConvergenceCriteriaType::Pointer,
124+
.def(py::init<ModelPart&, BaseSchemeType::Pointer, ConvergenceCriteriaType::Pointer,
125125
BuilderAndSolverType::Pointer, Parameters&, int, bool, bool, bool>())
126126
.def("UpdateLoads", &GeoMechanicsRammArcLengthStrategyType::UpdateLoads);
127127

applications/GeoMechanicsApplication/custom_strategies/strategies/geo_mechanics_newton_raphson_erosion_process_strategy.hpp

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ class GeoMechanicsNewtonRaphsonErosionProcessStrategy
5454

5555
GeoMechanicsNewtonRaphsonErosionProcessStrategy(ModelPart& model_part,
5656
typename TSchemeType::Pointer pScheme,
57-
typename TLinearSolver::Pointer pNewLinearSolver,
5857
typename TConvergenceCriteriaType::Pointer pNewConvergenceCriteria,
5958
typename TBuilderAndSolverType::Pointer pNewBuilderAndSolver,
6059
Parameters& rParameters,
@@ -63,16 +62,7 @@ class GeoMechanicsNewtonRaphsonErosionProcessStrategy
6362
bool ReformDofSetAtEachStep = false,
6463
bool MoveMeshFlag = false)
6564
: GeoMechanicsNewtonRaphsonStrategy<TSparseSpace, TDenseSpace, TLinearSolver>(
66-
model_part,
67-
pScheme,
68-
pNewLinearSolver,
69-
pNewConvergenceCriteria,
70-
pNewBuilderAndSolver,
71-
rParameters,
72-
MaxIterations,
73-
CalculateReactions,
74-
ReformDofSetAtEachStep,
75-
MoveMeshFlag)
65+
model_part, pScheme, pNewConvergenceCriteria, pNewBuilderAndSolver, rParameters, MaxIterations, CalculateReactions, ReformDofSetAtEachStep, MoveMeshFlag)
7666
{
7767
rank = model_part.GetCommunicator().MyPID();
7868
mPipingIterations = rParameters["max_piping_iterations"].GetInt();

0 commit comments

Comments
 (0)