chombo-discharge
Loading...
Searching...
No Matches
CD_HyperboloidIF.H
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2021-2026 SINTEF Energy Research
3 *
4 * SPDX-License-Identifier: GPL-3.0-or-later
5 */
6
13#ifndef CD_HYPERBOLOIDIF_H
14#define CD_HYPERBOLOIDIF_H
15
16// Chombo includes
17#include <RealVect.H>
18#include <BaseIF.H>
19
20// Our includes
21#include <CD_NamespaceHeader.H>
22
30class HyperboloidIF : public BaseIF
31{
32public:
39 HyperboloidIF(const RealVect& a_radii, const RealVect& a_center, const bool& a_inside);
40
46
52 virtual Real
53 value(const RealVect& a_point) const;
54
59 virtual BaseIF*
60 newImplicitFunction() const;
61
62protected:
67
72
77
82
87};
88
89#include <CD_NamespaceFooter.H>
90
91#endif
Declaration of a two-sheet hyperboloid.
Definition CD_HyperboloidIF.H:31
virtual BaseIF * newImplicitFunction() const
IF factory method.
Definition CD_HyperboloidIF.cpp:55
RealVect m_radii2
Hyperboloid radii squared.
Definition CD_HyperboloidIF.H:71
RealVect m_center
Hyperboloid center.
Definition CD_HyperboloidIF.H:81
RealVect m_sign
Holder for sign convention.
Definition CD_HyperboloidIF.H:76
RealVect m_radii
Hyperboloid radii.
Definition CD_HyperboloidIF.H:66
virtual Real value(const RealVect &a_point) const
Test whether inside or not.
Definition CD_HyperboloidIF.cpp:32
bool m_inside
Inside or outside domain.
Definition CD_HyperboloidIF.H:86
Base class for a tracer particle solver. This solver can advance particles in a pre-defined velocity ...
Definition CD_TracerParticleSolver.H:38