ASPECT
frank_kamenetskii.h
Go to the documentation of this file.
1 // ------------------------------------------------------
2 //
3 // SPDX-License-Identifier: GPL-2.0-or-later
4 //
5 // SPDX-FileCopyrightText: Copyright (C) 2020-2026 by the ASPECT authors.
6 //
7 // This file is part of ASPECT.
8 //
9 // Detailed license information governing the source code and
10 // contributions can be found in the folder LICENSES and in
11 // LICENSE and CONTRIBUTING.md at the top level directory.
12 //
13 // ------------------------------------------------------
14 
15 #ifndef _aspect_material_model_rheology_frank_kamenetskii_h
16 #define _aspect_material_model_rheology_frank_kamenetskii_h
17 
18 #include <aspect/global.h>
21 
22 namespace aspect
23 {
24  namespace MaterialModel
25  {
26  namespace Rheology
27  {
39  template <int dim>
41  {
42  public:
47 
51  static
52  void
54 
58  void
60 
64  double
65  compute_viscosity (const double temperature,
66  const unsigned int composition,
67  const double pressure = std::numeric_limits<double>::infinity(),
68  const double density = std::numeric_limits<double>::infinity(),
69  const double gravity = std::numeric_limits<double>::infinity()) const;
70 
71  private:
78 
83  std::vector<double> prefactors_frank_kamenetskii;
84 
91 
95  std::vector<double> reference_temperatures;
99  std::vector<double> reference_pressures;
100  };
101  }
102  }
103 }
104 #endif
double compute_viscosity(const double temperature, const unsigned int composition, const double pressure=std::numeric_limits< double >::infinity(), const double density=std::numeric_limits< double >::infinity(), const double gravity=std::numeric_limits< double >::infinity()) const
static void declare_parameters(ParameterHandler &prm)