MAIA bb96820c
Multiphysics at AIA
Loading...
Searching...
No Matches
postprocessingfvlpt.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 POSTPROCESSINGFVLPT_H_
8#define POSTPROCESSINGFVLPT_H_
9
10#include <array>
11#include <map>
12#include <set>
13#include <vector>
14
16#include "INCLUDE/maiatypes.h"
17#include "LPT/lpt.h"
18#include "globals.h"
19#include "postdata.h"
20#include "postprocessing.h"
21#include "postprocessingfv.h"
22#include "postprocessinglpt.h"
23
24
25template <MInt nDim, class SysEqn>
26class PostProcessingFvLPT : public PostProcessingLPT<nDim>, PostProcessingFv<nDim, SysEqn> {
27 private:
28 template <MInt nDim_, class ppType>
29 friend class PostProcessing;
30 template <MInt nDim_>
31 friend class LPT;
32
33 public:
40
41 // Constructor
42 PostProcessingFvLPT(MInt postprocessingId_, PostData<nDim>* data, fv* ppFvSolver_, lptSolver* ppLptSolver_);
43
45
46 Solver* mSolver() const override { return static_cast<Solver*>(m_ppSolverFv); };
47
49
50 // void postprocessPreInit() override { BaseFv::postprocessPreInit(); };
54 void postprocessInSolve(const MBool finalTimeStep) override { BaseFv::postprocessInSolve(finalTimeStep); };
56 // NOTE: all initalization functions need to be called in both base solvers
57 // if they are required there!
58 void initSprayData() override {
61 }
62
63 protected:
64 void computeSprayData() override;
65 void writeSprayData() override;
68
69 private:
72
73 lptSolver& lpt() const { return *m_ppSolverLpt; }
74 fv& fvSolver() const { return *m_ppSolverFv; }
75
77
78 void updateData();
79
83
86
93
95
97
102 };
106 m_sprayDataStep = 0;
107 };
108};
109
110#endif // POSTPROCESSINGLPT_H_
Definition: lpt.h:82
Definition: postdata.h:23
void advanceDataStep()
void initSprayData() override
void resetDataStep()
void initLPTSolutionFile() override
fv * m_ppSolverFv
void writeSprayData() override
MInt m_sprayDataStep
void resetDataStep()
lptSolver * m_ppSolverLpt
void initSprayData() override
lptSolver & lpt() const
void writeLPTSolutionFile() override
MInt m_fvLPTSpeciesId
void postprocessSolution() override
static MString s_ppType
void postprocessPostSolve() override
Solver * mSolver() const override
void computeSprayData() override
base function which is called every time-Step in postprocessInSolve
void advanceDataStep()
virtual ~PostProcessingFvLPT()
void postprocessInSolve(const MBool finalTimeStep) override
fv & fvSolver() const
void initPostProcessing() override
void postprocessPreSolve() override
void updateData()
updates all post-processing data from postprocessing-fv or postprocessing-lpt
MFloat ** m_sprayStat
MFloat ** m_particlePen
MFloat ** m_particleCV
void postprocessInSolve(MBool finalTimeStep) override
void postprocessPostSolve() override
void postprocessSolution() override
void initPostProcessing() override
Reads all required properties in and prepares for postprocessing.
MInt m_sprayWriteInterval
MInt m_sprayComputeInterval
void postprocessPreSolve() override
MFloat ** m_sprayTimes
MFloat ** m_injectionData
MInt m_LPTSolutionInterval
MInt m_sprayDataSize
MFloat ** m_vapourCV
MFloat ** m_vapourPen
MFloat ** m_cInjData
void writeLPTSolutionFile() override
base function which is called every time-Step in postprocessInSolve
void resetDataStep()
void initSprayData() override
init arrays
void advanceDataStep()
void initLPTSolutionFile() override
init function for LPT particle solution file
Parent class of all solvers This class is the base for all solvers. I.e. all solver class (e....
Definition: solver.h:29
int32_t MInt
Definition: maiatypes.h:62
std::basic_string< char > MString
Definition: maiatypes.h:55
bool MBool
Definition: maiatypes.h:58