VirtualFluids
0.2.0
Parallel CFD LBM Solver
Loading...
Searching...
No Matches
main.cpp
Go to the documentation of this file.
1
//=======================================================================================
2
// ____ ____ __ ______ __________ __ __ __ __
3
// \ \ | | | | | _ \ |___ ___| | | | | / \ | |
4
// \ \ | | | | | |_) | | | | | | | / \ | |
5
// \ \ | | | | | _ / | | | | | | / /\ \ | |
6
// \ \ | | | | | | \ \ | | | \__/ | / ____ \ | |____
7
// \ \ | | |__| |__| \__\ |__| \________/ /__/ \__\ |_______|
8
// \ \ | | ________________________________________________________________
9
// \ \ | | | ______________________________________________________________|
10
// \ \| | | | __ __ __ __ ______ _______
11
// \ | | |_____ | | | | | | | | | _ \ / _____)
12
// \ | | _____| | | | | | | | | | | \ \ \_______
13
// \ | | | | |_____ | \_/ | | | | |_/ / _____ |
14
// \ _____| |__| |________| \_______/ |__| |______/ (_______/
15
//
16
// This file is part of VirtualFluids. VirtualFluids is free software: you can
17
// redistribute it and/or modify it under the terms of the GNU General Public
18
// License as published by the Free Software Foundation, either version 3 of
19
// the License, or (at your option) any later version.
20
//
21
// VirtualFluids is distributed in the hope that it will be useful, but WITHOUT
22
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
23
// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
24
// for more details.
25
//
26
// SPDX-License-Identifier: GPL-3.0-or-later
27
// SPDX-FileCopyrightText: Copyright © VirtualFluids Project contributors, see AUTHORS.md in root folder
28
//
32
//=======================================================================================
33
#include <gmock/gmock.h>
34
#include <mpi.h>
35
36
#include "
Utilities/ConfigFileReaderNT/ConfigFileReaderNT.h
"
37
#include "
Utilities/LogFileQueue/LogFileQueue.h
"
38
#include "
Utilities/NumericalTestFactory/NumericalTestFactoryImp.h
"
39
#include "
Utilities/TestQueue/TestQueue.h
"
40
#include "
Utilities/VirtualFluidSimulationFactory/VirtualFluidSimulationFactory.h
"
41
42
// validation
43
#include "
Utilities/Calculator/FFTCalculator/FFTCalculator.h
"
44
#include <fstream>
45
#include <iostream>
46
47
static
TestSuiteResult
startNumericalTests(
const
std::string &
configFile
,
const
std::string &
pathNumericalTests
)
48
{
49
auto
configData
=
vf::gpu::tests::readConfigFile
(
configFile
,
pathNumericalTests
);
50
51
std::shared_ptr<NumericalTestFactoryImp>
numericalTestFactory
=
NumericalTestFactoryImp::getNewInstance
(
configData
);
52
53
std::shared_ptr<TestQueue>
testQueue
=
numericalTestFactory
->getTestQueue();
54
std::shared_ptr<LogFileQueue>
logFileQueue
=
numericalTestFactory
->getLogFileQueue();
55
56
auto
result
=
testQueue
->run();
57
logFileQueue
->writeLogFiles();
58
59
return
result
;
60
}
61
62
int
main
(
int
argc
,
char
**
argv
)
63
{
64
MPI_Init
(&
argc
, &
argv
);
65
66
auto
tests_passed
=
TestSuiteResult::FAILED
;
67
68
if
(
argc
== 3) {
69
tests_passed
= startNumericalTests(
argv
[1],
argv
[2]);
70
}
71
else
72
std::cout <<
"Configuration file must be set!: lbmgm <config file> <path to grid data>"
<< std::endl << std::flush;
73
74
MPI_Finalize
();
75
76
return
tests_passed
;
77
}
78
ConfigFileReaderNT.h
FFTCalculator.h
LogFileQueue.h
NumericalTestFactoryImp.h
TestQueue.h
VirtualFluidSimulationFactory.h
main
int main(int argc, char **argv)
Definition
main.cpp:57
TestSuiteResult
TestSuiteResult
Definition
TestQueue.h:36
NumericalTestFactoryImp::getNewInstance
static std::shared_ptr< NumericalTestFactoryImp > getNewInstance(std::shared_ptr< ConfigDataStruct > configFileData)
Definition
NumericalTestFactoryImp.cpp:95
FAILED
@ FAILED
Definition
TestQueue.h:36
SPtr
std::shared_ptr< T > SPtr
Definition
PointerDefinitions.h:39
vf::gpu::tests::readConfigFile
std::shared_ptr< ConfigDataStruct > readConfigFile(const std::string aFilePath, const std::string &pathNumericalTests)
tests
numerical-tests
gpu
NumericalTests
main.cpp
Generated on Fri May 15 2026 00:03:21 for VirtualFluids by
1.9.8