ASPECT
include
aspect
boundary_traction
initial_lithostatic_pressure.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) 2011-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
16
#ifndef _aspect_boundary_traction_initial_lithospheric_pressure_h
17
#define _aspect_boundary_traction_initial_lithospheric_pressure_h
18
19
#include <
aspect/boundary_traction/interface.h
>
20
#include <
aspect/simulator_access.h
>
21
22
23
namespace
aspect
24
{
25
namespace
BoundaryTraction
26
{
33
template
<
int
dim>
34
class
InitialLithostaticPressure
:
public
Interface
<dim>,
public
SimulatorAccess
<dim>
35
{
36
public
:
37
44
void
initialize
()
override
;
45
46
52
Tensor<1,dim>
53
boundary_traction
(
const
types::boundary_id
boundary_indicator,
54
const
Point<dim>
&position,
55
const
Tensor<1,dim>
&normal_vector)
const override
;
56
57
61
static
62
void
63
declare_parameters
(
ParameterHandler
&prm);
64
65
69
void
70
parse_parameters
(
ParameterHandler
&prm)
override
;
71
72
private
:
73
79
unsigned
int
n_points
;
80
84
double
delta_z
;
85
86
/*
87
* The user-specified point where to calculate the pressure profile.
88
* The vertical coordinate/radius is ignored.
89
*/
90
Point<dim>
representative_point
;
91
95
std::vector<double>
pressure
;
96
101
double
interpolate_pressure
(
const
Point<dim>
&p)
const
;
102
106
types::boundary_id
bottom_boundary_id
;
107
114
bool
prescribe_constant_pressure_at_bottom_boundary
;
115
};
116
}
117
}
118
119
120
#endif
unsigned int
aspect::BoundaryTraction::InitialLithostaticPressure::representative_point
Point< dim > representative_point
Definition:
initial_lithostatic_pressure.h:90
aspect::BoundaryTraction::InitialLithostaticPressure::interpolate_pressure
double interpolate_pressure(const Point< dim > &p) const
aspect::BoundaryTraction::InitialLithostaticPressure::prescribe_constant_pressure_at_bottom_boundary
bool prescribe_constant_pressure_at_bottom_boundary
Definition:
initial_lithostatic_pressure.h:114
aspect::BoundaryTraction::InitialLithostaticPressure::initialize
void initialize() override
interface.h
aspect::BoundaryTraction::InitialLithostaticPressure::delta_z
double delta_z
Definition:
initial_lithostatic_pressure.h:84
aspect::BoundaryTraction::InitialLithostaticPressure::pressure
std::vector< double > pressure
Definition:
initial_lithostatic_pressure.h:95
aspect::BoundaryTraction::InitialLithostaticPressure::n_points
unsigned int n_points
Definition:
initial_lithostatic_pressure.h:79
aspect::BoundaryTraction::InitialLithostaticPressure::parse_parameters
void parse_parameters(ParameterHandler &prm) override
Point< dim >
aspect::BoundaryTraction::InitialLithostaticPressure::bottom_boundary_id
types::boundary_id bottom_boundary_id
Definition:
initial_lithostatic_pressure.h:106
ParameterHandler
aspect::BoundaryTraction::InitialLithostaticPressure::boundary_traction
Tensor< 1, dim > boundary_traction(const types::boundary_id boundary_indicator, const Point< dim > &position, const Tensor< 1, dim > &normal_vector) const override
aspect::BoundaryTraction::Interface
Definition:
simulator_access.h:97
aspect::BoundaryTraction::InitialLithostaticPressure
Definition:
initial_lithostatic_pressure.h:34
aspect::BoundaryTraction::InitialLithostaticPressure::declare_parameters
static void declare_parameters(ParameterHandler &prm)
simulator_access.h
aspect::SimulatorAccess
Definition:
plugins.h:41
aspect
Definition:
advection_field.h:24
Tensor< 1, dim >
ASPECT manual
| Generated by
1.8.12