ASPECT
advection.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 #ifndef _aspect_simulator_assemblers_advection_h
16 #define _aspect_simulator_assemblers_advection_h
17 
18 
21 
22 namespace aspect
23 {
24  namespace Assemblers
25  {
30  template <int dim>
32  public SimulatorAccess<dim>
33  {
34  public:
35  void
37  internal::Assembly::CopyData::CopyDataBase<dim> &data_base) const override;
38 
39  std::vector<double>
41  };
42 
43  template <int dim>
45  public SimulatorAccess<dim>
46  {
47  public:
48  void
50  internal::Assembly::CopyData::CopyDataBase<dim> &data_base) const override;
51 
52  std::vector<double>
54 
55  void
57  };
58 
63  template <int dim>
65  public SimulatorAccess<dim>
66  {
67  public:
68  void
70  internal::Assembly::CopyData::CopyDataBase<dim> &data_base) const override;
71 
72  std::vector<double>
74 
75  virtual
76  std::vector<double>
78 
79  virtual
80  std::vector<double>
82  };
83 
89  template <int dim>
91  public SimulatorAccess<dim>
92  {
93  public:
94  void
96  internal::Assembly::CopyData::CopyDataBase<dim> &data_base) const override;
97  };
98 
104  template <int dim>
106  public SimulatorAccess<dim>
107  {
108  public:
109  void
111  internal::Assembly::CopyData::CopyDataBase<dim> &data_base) const override;
112  };
113 
118  template <int dim>
120  public SimulatorAccess<dim>
121  {
122  public:
123  void
125  internal::Assembly::CopyData::CopyDataBase<dim> &data_base) const override;
126  };
127 
132  template <int dim>
134  public SimulatorAccess<dim>
135  {
136  public:
137  void
139  internal::Assembly::CopyData::CopyDataBase<dim> &data_base) const override;
140  };
141  }
142 }
143 
144 
145 #endif
std::vector< double > compute_residual(internal::Assembly::Scratch::ScratchBase< dim > &scratch_base) const override
virtual std::vector< double > diffusion_prefactors(internal::Assembly::Scratch::ScratchBase< dim > &scratch_base) const
virtual void create_additional_material_model_outputs(MaterialModel::MaterialModelOutputs< dim > &) const
virtual std::vector< double > advection_prefactors(internal::Assembly::Scratch::ScratchBase< dim > &scratch_base) const
void execute(internal::Assembly::Scratch::ScratchBase< dim > &scratch_base, internal::Assembly::CopyData::CopyDataBase< dim > &data_base) const override