Skip to content

Commit

Permalink
Merge pull request #5977 from bobmyhill/approx_peierls
Browse files Browse the repository at this point in the history
enforce approx peierls in composite viscoplastic
  • Loading branch information
gassmoeller authored Jul 19, 2024
2 parents 188a8ec + 3faf79e commit b398dd9
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 0 deletions.
5 changes: 5 additions & 0 deletions doc/modules/changes/20240717d_myhill
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
Changed: The CompositeViscoPlastic rheology in ASPECT is now
required to use the approximate Peierls flow rheology if
Peierls flow is switched on.
<br>
(Bob Myhill, 2024/07/17)
3 changes: 3 additions & 0 deletions source/material_model/rheology/composite_visco_plastic.cc
Original file line number Diff line number Diff line change
Expand Up @@ -417,6 +417,9 @@ namespace aspect
peierls_creep = std::make_unique<Rheology::PeierlsCreep<dim>>();
peierls_creep->initialize_simulator (this->get_simulator());
peierls_creep->parse_parameters(prm, expected_n_phases_per_composition);

AssertThrow((prm.get ("Peierls creep flow law") == "viscosity approximation"),
ExcMessage("The Peierls creep flow law parameter needs to be set to viscosity approximation."));
}

// Drucker Prager parameters
Expand Down
1 change: 1 addition & 0 deletions tests/composite_viscous_outputs.cc
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ void f(const aspect::SimulatorAccess<dim> &simulator_access,
composite_creep = std::make_unique<Rheology::CompositeViscoPlastic<dim>>();
composite_creep->initialize_simulator (simulator_access.get_simulator());
composite_creep->declare_parameters(prm);
prm.set("Peierls creep flow law", "viscosity approximation");
prm.set("Maximum yield stress", "5e8");
composite_creep->parse_parameters(prm, n_phases);

Expand Down

0 comments on commit b398dd9

Please sign in to comment.