chombo-discharge
Loading...
Searching...
No Matches
CD_NonCommParticle.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_NONCOMMPARTICLE_H
14#define CD_NONCOMMPARTICLE_H
15
16// Std includes
17#include <string>
18#include <typeinfo>
19#include <cstdio>
20#include <cmath>
21
22// Chombo includes
23#include <RealVect.H>
24
25// Our includes
26#include <CD_NamespaceHeader.H>
27
31template <size_t M, size_t N>
33{
34public:
38 inline NonCommParticle();
39
45
49 inline virtual ~NonCommParticle();
50
56 operator=(const NonCommParticle&) = default;
57
62
69
76 template <size_t K>
77 inline Real&
78 real();
79
86 template <size_t K>
87 inline const Real&
88 real() const;
89
96 template <size_t K>
97 inline RealVect&
98 vect();
99
106 template <size_t K>
107 inline const RealVect&
108 vect() const;
109
116 inline bool
118
125 inline bool
127
128protected:
133
138};
139
146template <size_t M, size_t N>
149
150#include <CD_NamespaceFooter.H>
151
153
154#endif
Implementation of CD_NonCommParticle.H.
std::ostream & operator<<(std::ostream &ostr, const NonCommParticle< M, N > &p)
Particle printing function.
A generic non-communicated particle class.
Definition CD_NonCommParticle.H:33
std::array< Real, M > m_scalars
Scalar storage array.
Definition CD_NonCommParticle.H:132
bool operator!=(const NonCommParticle< M, N > &a_other) const
Comparison operator with other particle.
Definition CD_NonCommParticleImplem.H:84
RealVect & vect()
Get one of the RealVects.
Definition CD_NonCommParticleImplem.H:62
NonCommParticle()
Default constructor – initializes everything to zero.
Definition CD_NonCommParticleImplem.H:21
NonCommParticle & operator=(const NonCommParticle &)=default
Copy assignment operator.
NonCommParticle & operator=(NonCommParticle &&)=default
Move assignment operator.
bool operator==(const NonCommParticle< M, N > &a_other) const
Comparison operator with other particle.
Definition CD_NonCommParticleImplem.H:77
std::array< RealVect, N > m_vectors
vector storage array
Definition CD_NonCommParticle.H:137
virtual ~NonCommParticle()
Destructor (deallocates runtime memory storage)
Definition CD_NonCommParticleImplem.H:40
NonCommParticle(NonCommParticle &&)=default
Move constructor.
Real & real()
Get one of the scalars.
Definition CD_NonCommParticleImplem.H:46
Base class for a tracer particle solver. This solver can advance particles in a pre-defined velocity ...
Definition CD_TracerParticleSolver.H:38
TracerParticleSolver()
Default constructor.
Definition CD_TracerParticleSolverImplem.H:26