SPH
Stellar.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "objects/wrappers/Lut.h"
4 #include "quantities/Storage.h"
5 
7 
8 namespace Stellar {
9 
11 Lut<Float> solveLaneEmden(const Float n, const Float dz = 1.e-3_f, const Float z_max = 1.e3_f);
12 
13 struct Star {
17 };
18 
20 Star polytropicStar(const Float radius, const Float mass, const Float n);
21 
29 Storage generateIc(const IDistribution& distribution,
30  const Size particleCnt,
31  const Float radius,
32  const Float mass,
33  const Float n);
34 
35 } // namespace Stellar
36 
NAMESPACE_SPH_BEGIN
Definition: BarnesHut.cpp:13
const float radius
Definition: CurveDialog.cpp:18
uint32_t Size
Integral type used to index arrays (by default).
Definition: Globals.h:16
double Float
Precision used withing the code. Use Float instead of float or double where precision is important.
Definition: Globals.h:13
Approximation of generic function by look-up table.
#define NAMESPACE_SPH_END
Definition: Object.h:12
Container for storing particle quantities and materials.
Base class for generating vertices with specific distribution.
Definition: Distribution.h:21
Container storing all quantities used within the simulations.
Definition: Storage.h:230
Definition: Stellar.h:8
Star polytropicStar(const Float radius, const Float mass, const Float n)
Computes radial profiles of state quantities for a polytropic star.
Definition: Stellar.cpp:38
Lut< Float > solveLaneEmden(const Float n, const Float dz=1.e-3_f, const Float z_max=1.e3_f)
Solves the Lane-Emden equation given the polytrope index.
Definition: Stellar.cpp:14
Storage generateIc(const IDistribution &distribution, const Size particleCnt, const Float radius, const Float mass, const Float n)
Creates a spherical polytropic star.
Definition: Stellar.cpp:67
Lut< Float > u
Definition: Stellar.h:15
Lut< Float > p
Definition: Stellar.h:16
Lut< Float > rho
Definition: Stellar.h:14