Loading...
Searching...
No Matches
MyIcoSolver.H
Go to the documentation of this file.
1/*---------------------------------------------------------------------------*\
2 ██╗████████╗██╗ ██╗ █████╗ ██████╗ █████╗ ███████╗██╗ ██╗
3 ██║╚══██╔══╝██║ ██║██╔══██╗██╔════╝██╔══██╗ ██╔════╝██║ ██║
4 ██║ ██║ ███████║███████║██║ ███████║█████╗█████╗ ██║ ██║
5 ██║ ██║ ██╔══██║██╔══██║██║ ██╔══██║╚════╝██╔══╝ ╚██╗ ██╔╝
6 ██║ ██║ ██║ ██║██║ ██║╚██████╗██║ ██║ ██║ ╚████╔╝
7 ╚═╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝ ╚═╝ ╚═══╝
8
9 * In real Time Highly Advanced Computational Applications for Finite Volumes
10 * Copyright (C) 2017 by the ITHACA-FV authors
11-------------------------------------------------------------------------------
12License
13 This file is part of ITHACA-FV
14 ITHACA-FV is free software: you can redistribute it and/or modify
15 it under the terms of the GNU Lesser General Public License as published by
16 the Free Software Foundation, either version 3 of the License, or
17 (at your option) any later version.
18 ITHACA-FV is distributed in the hope that it will be useful,
19 but WITHOUT ANY WARRANTY; without even the implied warranty of
20 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 GNU Lesser General Public License for more details.
22 You should have received a copy of the GNU Lesser General Public License
23 along with ITHACA-FV. If not, see <http://www.gnu.org/licenses/>.
24Class
25 unsteadyNS
26Description
27 Reduction class for a NON-Stationary NS problem
28SourceFiles
29 unsteadyNS.C
30\*---------------------------------------------------------------------------*/
31
36
37#ifndef MyIcoSolver_H
38#define MyIcoSolver_H
39#include "fvCFD.H"
40#include "singlePhaseTransportModel.H"
41#include "turbulentTransportModel.H"
42#include "pimpleControl.H"
43#include "fvOptions.H"
44#include "IOporosityModelList.H"
45#include "IOMRFZoneList.H"
46#include "fixedFluxPressureFvPatchScalarField.H"
47#include "steadyNS.H"
48#include "UnsteadyProblem.H"
49#include <iostream>
50
51// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
52
53/*---------------------------------------------------------------------------*\
54 Class SteadyNS Declaration
55\*---------------------------------------------------------------------------*/
56
58
61class MyIcoSolver: public steadyNS, public UnsteadyProblem
62{
63 public:
64 // Constructors
67
69 MyIcoSolver(int argc, char* argv[]);
70
71 // Dummy variables to transform pimplefoam into a class
73 autoPtr<pisoControl> _piso;
74
76 autoPtr<incompressible::turbulenceModel> turbulence;
77
80
82 scalar maxCo;
83
85 scalar maxDeltaT;
86
87 // Counter used for the time-dependent boundary conditions
88 label counter2 = 1;
89
90 word method;
91 // Pressure gradient field
92 PtrList<volVectorField> GradField;
93
96
97 // Matrix containing the time-dependent boundary conditions for each time step
98 Eigen::MatrixXd timeBCoff;
99
100 // Time derivative numerical scheme order
101 word timeDerivativeSchemeOrder;
102
103 // Functions
104
105 //--------------------------------------------------------------------------
111 void truthSolve(List<scalar> mu_now,
112 fileName folder = "./ITHACAoutput/Offline/");
114 void restart();
115};
116
117// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
118
119#endif
120
121
122
123
124
125
126
127
128
129
scalar maxCo
maxCourant
Definition MyIcoSolver.H:82
scalar maxDeltaT
maxDeltaT
Definition MyIcoSolver.H:85
bool adjustTimeStep
adjustTimeStep
Definition MyIcoSolver.H:79
word timedepbcMethod
Time-dependent Boundary Method.
Definition MyIcoSolver.H:95
autoPtr< pisoControl > _piso
pimpleControl
Definition MyIcoSolver.H:73
void restart()
set U and P back to the values into the 0 folder
autoPtr< incompressible::turbulenceModel > turbulence
Turbulence model.
Definition MyIcoSolver.H:76
MyIcoSolver()
Construct Null.
Definition MyIcoSolver.C:39
void truthSolve()
Perform a TruthSolve.
steadyNS()
Null constructor.
Definition steadyNS.C:40
Header file of the steadyNS class.