MAIA bb96820c
Multiphysics at AIA
Loading...
Searching...
No Matches
lbsrcterm.h
Go to the documentation of this file.
1// Copyright (C) 2024 The m-AIA AUTHORS
2//
3// This file is part of m-AIA (https://git.rwth-aachen.de/aia/m-AIA/m-AIA)
4//
5// SPDX-License-Identifier: LGPL-3.0-only
6
7#ifndef LBSRCTERM_H
8#define LBSRCTERM_H
9
10#include "INCLUDE/maiatypes.h"
11
12template <MInt nDim, MInt nDist, class SysEqn>
13class LbSolverDxQy;
14
15namespace maia::lb {
16
21template <MInt nDim_, MInt nDist_, class SysEqn_>
22class LbSrcTerm {
23 protected:
24 virtual void readProperties() = 0;
25
26 public:
27 static constexpr MInt nDim = nDim_;
28 static constexpr MInt nDist = nDist_;
29 using SysEqn = SysEqn_;
30 virtual void init() = 0;
31 virtual void apply_preCollision() = 0;
32 virtual void apply_postCollision() = 0;
33 virtual void apply_postPropagation() = 0;
34 virtual ~LbSrcTerm() = default;
35};
36
37} // namespace maia::lb
38
39#endif
This class represents all LB models.
Definition: lbsolverdxqy.h:29
Abstract class for lb source terms.
Definition: lbsrcterm.h:22
virtual void readProperties()=0
virtual ~LbSrcTerm()=default
virtual void apply_postPropagation()=0
virtual void apply_postCollision()=0
virtual void apply_preCollision()=0
static constexpr MInt nDist
Definition: lbsrcterm.h:28
static constexpr MInt nDim
Definition: lbsrcterm.h:27
virtual void init()=0
int32_t MInt
Definition: maiatypes.h:62