Peano
Loading...
Searching...
No Matches
initialvalues.py
Go to the documentation of this file.
1""" This file is part of the ExaGRyPE project. For conditions of distribution and
2 use, please see the copyright notice at www.peano-framework.org
3"""
4
5import exahype2.api
6
7
10 implementation=f"::exagrype::initialvalues::{cpp_function}(Q, x, 0.0);"
11 )
12
13
14def gauge_wave() -> exahype2.api.InitPointWisely:
15 """!
16
17 Gauge wave along the x-axis, @see exagrype::initialvalues::gaugeWave()
18
19 """
20 return _init_point_wisely("gaugeWave")
21
22
23def diagonal_gauge_wave() -> exahype2.api.InitPointWisely:
24 """!
25
26 Gauge wave along the diagonal, @see exagrype::initialvalues::diagonal_gaugeWave()
27
28 """
29 return _init_point_wisely("diagonal_gaugeWave")
30
31
32def linear_wave() -> exahype2.api.InitPointWisely:
33 """!
34
35 Linearised gravitational wave, @see exagrype::initialvalues::linearWave()
36
37 """
38 return _init_point_wisely("linearWave")
39
40
41def flat() -> exahype2.api.InitPointWisely:
42 """!
43
44 Flat (Minkowski) spacetime, @see exagrype::initialvalues::flat()
45
46 """
47 return _init_point_wisely("flat")
48
49
51 """!
52
53 Single Schwarzschild black hole at the origin
54
55 The data stems from TwoPunctures, @see exagrype::initialvalues::singleBlackHole().
56 TwoPunctures is only part of the ExaGRyPE library if Peano is configured
57 with GSL (--with-gsl). Otherwise, the generated solver refuses to
58 compile.
59
60 The black hole's puncture sits at the origin, where the data is
61 singular. Choose the mesh such that no degree of freedom coincides with
62 the origin, e.g. a Finite Volume patch with an even number of volumes
63 per axis on a domain that is symmetric around the origin.
64
65 @param mass: float
66 ADM mass of the black hole.
67
68 """
70 implementation=f"""
71#ifdef UseGSL
72 ::exagrype::initialvalues::singleBlackHole(Q, x, 0.0, {mass});
73#else
74#error "exagrype.api.initialvalues.single_black_hole() requires TwoPunctures: configure Peano with --with-gsl (or -DWITH_GSL=ON)"
75#endif
76"""
77 )
Point-wise initial condition: given the physical position of a single degree of freedom,...
exahype2.api.InitPointWisely diagonal_gauge_wave()
Gauge wave along the diagonal,.
exahype2.api.InitPointWisely linear_wave()
Linearised gravitational wave,.
exahype2.api.InitPointWisely gauge_wave()
Gauge wave along the x-axis,.
exahype2.api.InitPointWisely single_black_hole(float mass=1.0)
Single Schwarzschild black hole at the origin.
exahype2.api.InitPointWisely _init_point_wisely(str cpp_function)
exahype2.api.InitPointWisely flat()
Flat (Minkowski) spacetime,.