chombo-discharge
Loading...
Searching...
No Matches
CD_PerlinRodSdf.H
Go to the documentation of this file.
1/* chombo-discharge
2 * Copyright © 2021 SINTEF Energy Research.
3 * Please refer to Copyright.txt and LICENSE in the chombo-discharge root directory.
4 */
5
12#ifndef CD_PerlinRodSdf_H
13#define CD_PerlinRodSdf_H
14
15// Chombo includes
16#include <BaseIF.H>
17
18// Our includes
19#include <CD_CylinderSdf.H>
21#include <CD_NamespaceHeader.H>
22
27{
28public:
32 PerlinRodSdf() = delete;
33
47 PerlinRodSdf(const Real& a_rad,
48 const RealVect& a_center1,
49 const RealVect& a_center2,
50 const bool& a_inside,
51 const Real& a_noiseAmp,
52 const RealVect& a_noiseFreq,
53 const Real& a_persistence,
54 const int& a_octaves,
55 const bool& a_reseed = false);
56
62
66 virtual ~PerlinRodSdf();
67
72 virtual Real
73 value(const RealVect& a_pos) const;
74
78 virtual BaseIF*
79 newImplicitFunction() const;
80
81protected:
86};
87
88#include <CD_NamespaceFooter.H>
89
90#endif
Declaration of a cylindrical signed distance function.
Declaration of a graded noisy sphere.
A rod geometry, but with noise on one of the end caps.
Definition CD_PerlinRodSdf.H:27
virtual ~PerlinRodSdf()
Destructor.
Definition CD_PerlinRodSdf.cpp:75
virtual BaseIF * newImplicitFunction() const
Factory function.
Definition CD_PerlinRodSdf.cpp:85
virtual Real value(const RealVect &a_pos) const
Value function.
Definition CD_PerlinRodSdf.cpp:79
PerlinRodSdf()=delete
No weak construction.
RefCountedPtr< BaseIF > m_baseif
Basis rod, used for copying.
Definition CD_PerlinRodSdf.H:85
Noisy sphere geometry (with Perlin noise).
Definition CD_PerlinSphereSdf.H:27
Base class for a tracer particle solver. This solver can advance particles in a pre-defined velocity ...
Definition CD_TracerParticleSolver.H:37