ASPECT
porosity.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) 2017-2025 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 
16 #ifndef _aspect_initial_composition_porosity_h
17 #define _aspect_initial_composition_porosity_h
18 
22 #include <aspect/utilities.h>
23 
24 namespace aspect
25 {
26  namespace InitialComposition
27  {
38  template <int dim>
39  class Porosity : public Interface<dim>,
40  public SimulatorAccess<dim>
41  {
42  public:
46  void initialize () override;
47 
52  double initial_composition (const Point<dim> &position,
53  const unsigned int compositional_index) const override;
54 
55  private:
62  std::shared_ptr<const aspect::InitialTemperature::Manager<dim>> initial_temperature_manager;
63 
70  std::shared_ptr<const aspect::InitialComposition::Manager<dim>> initial_composition_manager;
71  };
72  }
73 }
74 
75 
76 #endif
std::shared_ptr< const aspect::InitialComposition::Manager< dim > > initial_composition_manager
Definition: porosity.h:70
std::shared_ptr< const aspect::InitialTemperature::Manager< dim > > initial_temperature_manager
Definition: porosity.h:62
double initial_composition(const Point< dim > &position, const unsigned int compositional_index) const override