VirtualFluids
0.2.0
Parallel CFD LBM Solver
Loading...
Searching...
No Matches
MetaData.h
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
//
33
//=======================================================================================
34
#ifndef VF_BASICS_METADATA_H
35
#define VF_BASICS_METADATA_H
36
37
#include <array>
38
#include <string>
39
#include <vector>
40
41
#include "
DataTypes.h
"
42
43
#include <
logger/Logger.h
>
44
45
namespace
vf::basics
46
{
47
48
std::string
getCurrentTime
();
49
50
struct
MetaData
51
{
52
MetaData
();
53
54
struct
Simulation
55
{
56
std::string
startDateTime
;
57
double
runtimeSeconds
;
58
59
double
reynoldsNumber
;
60
double
lb_velocity
;
61
double
lb_viscosity
;
62
63
double
nups
;
64
std::string
collisionKernel
;
65
66
uint
numberOfTimeSteps
;
67
std::array<real, 3>
quadricLimiters
;
68
};
69
70
struct
World
71
{
72
double
length
;
73
double
velocity
;
74
};
75
76
struct
Discretization
77
{
78
double
dt
;
79
double
dx
;
80
double
totalNumberOfNodes
;
81
uint
numberOfLevels
;
82
std::vector<int>
numberOfNodesPerLevel
;
83
};
84
85
struct
BuildInfo
86
{
87
std::string
git_commit_hash
;
88
std::string
git_branch
;
89
std::string
build_type
;
90
std::string
remote
;
91
std::string
compiler_flags
;
92
std::string
precision
;
93
std::string
compiler_definitions
;
94
std::string
compiler
;
95
std::string
compiler_version
;
96
#ifdef VF_MPI
97
std::string
mpi_library
;
98
std::string
mpi_version
;
99
#endif
100
#ifdef VF_OPENMP
101
std::string
openmp_library
;
102
std::string
openmp_version
;
103
#endif
104
};
105
106
struct
GPU
107
{
108
std::string
name
;
109
std::string
compute_capability
;
110
};
111
112
std::string
name
{};
113
114
uint
numberOfProcesses
{};
115
uint
numberOfThreads
{};
116
117
std::string
vf_hardware
{};
118
119
Simulation
simulation
;
120
World
world
;
121
Discretization
discretization
;
122
BuildInfo
buildInfo
;
123
std::vector<GPU>
gpus
;
124
};
125
126
void
logPreSimulation
(
const
MetaData
&
meta_data
);
127
128
void
logPostSimulation
(
const
MetaData
&
meta_data
);
129
130
}
// namespace vf::basics
131
132
#endif
133
DataTypes.h
Logger.h
SPtr
std::shared_ptr< T > SPtr
Definition
PointerDefinitions.h:39
uint
unsigned int uint
Definition
DataTypes.h:47
vf::basics
Simple configuration file.
Definition
ConfigurationFile.cpp:47
vf::basics::logPostSimulation
void logPostSimulation(const MetaData &meta_data)
Definition
MetaData.cpp:140
vf::basics::getCurrentTime
std::string getCurrentTime()
Definition
MetaData.cpp:72
vf::basics::logPreSimulation
void logPreSimulation(const MetaData &meta_data)
Definition
MetaData.cpp:82
vf::basics::MetaData::BuildInfo
Definition
MetaData.h:86
vf::basics::MetaData::BuildInfo::build_type
std::string build_type
Definition
MetaData.h:89
vf::basics::MetaData::BuildInfo::precision
std::string precision
Definition
MetaData.h:92
vf::basics::MetaData::BuildInfo::mpi_library
std::string mpi_library
Definition
MetaData.h:97
vf::basics::MetaData::BuildInfo::git_commit_hash
std::string git_commit_hash
Definition
MetaData.h:87
vf::basics::MetaData::BuildInfo::compiler_version
std::string compiler_version
Definition
MetaData.h:95
vf::basics::MetaData::BuildInfo::compiler_flags
std::string compiler_flags
Definition
MetaData.h:91
vf::basics::MetaData::BuildInfo::remote
std::string remote
Definition
MetaData.h:90
vf::basics::MetaData::BuildInfo::compiler
std::string compiler
Definition
MetaData.h:94
vf::basics::MetaData::BuildInfo::git_branch
std::string git_branch
Definition
MetaData.h:88
vf::basics::MetaData::BuildInfo::compiler_definitions
std::string compiler_definitions
Definition
MetaData.h:93
vf::basics::MetaData::BuildInfo::mpi_version
std::string mpi_version
Definition
MetaData.h:98
vf::basics::MetaData::Discretization
Definition
MetaData.h:77
vf::basics::MetaData::Discretization::numberOfNodesPerLevel
std::vector< int > numberOfNodesPerLevel
Definition
MetaData.h:82
vf::basics::MetaData::Discretization::dx
double dx
Definition
MetaData.h:79
vf::basics::MetaData::Discretization::totalNumberOfNodes
double totalNumberOfNodes
Definition
MetaData.h:80
vf::basics::MetaData::Discretization::dt
double dt
Definition
MetaData.h:78
vf::basics::MetaData::Discretization::numberOfLevels
uint numberOfLevels
Definition
MetaData.h:81
vf::basics::MetaData::GPU
Definition
MetaData.h:107
vf::basics::MetaData::GPU::name
std::string name
Definition
MetaData.h:108
vf::basics::MetaData::GPU::compute_capability
std::string compute_capability
Definition
MetaData.h:109
vf::basics::MetaData::Simulation
Definition
MetaData.h:55
vf::basics::MetaData::Simulation::numberOfTimeSteps
uint numberOfTimeSteps
Definition
MetaData.h:66
vf::basics::MetaData::Simulation::quadricLimiters
std::array< real, 3 > quadricLimiters
Definition
MetaData.h:67
vf::basics::MetaData::Simulation::runtimeSeconds
double runtimeSeconds
Definition
MetaData.h:57
vf::basics::MetaData::Simulation::reynoldsNumber
double reynoldsNumber
Definition
MetaData.h:59
vf::basics::MetaData::Simulation::startDateTime
std::string startDateTime
Definition
MetaData.h:56
vf::basics::MetaData::Simulation::lb_velocity
double lb_velocity
Definition
MetaData.h:60
vf::basics::MetaData::Simulation::nups
double nups
Definition
MetaData.h:63
vf::basics::MetaData::Simulation::collisionKernel
std::string collisionKernel
Definition
MetaData.h:64
vf::basics::MetaData::Simulation::lb_viscosity
double lb_viscosity
Definition
MetaData.h:61
vf::basics::MetaData::World
Definition
MetaData.h:71
vf::basics::MetaData::World::length
double length
Definition
MetaData.h:72
vf::basics::MetaData::World::velocity
double velocity
Definition
MetaData.h:73
vf::basics::MetaData
Definition
MetaData.h:51
vf::basics::MetaData::MetaData
MetaData()
Definition
MetaData.cpp:49
vf::basics::MetaData::buildInfo
BuildInfo buildInfo
Definition
MetaData.h:122
vf::basics::MetaData::numberOfProcesses
uint numberOfProcesses
Definition
MetaData.h:114
vf::basics::MetaData::simulation
Simulation simulation
Definition
MetaData.h:119
vf::basics::MetaData::vf_hardware
std::string vf_hardware
Definition
MetaData.h:117
vf::basics::MetaData::gpus
std::vector< GPU > gpus
Definition
MetaData.h:123
vf::basics::MetaData::name
std::string name
Definition
MetaData.h:112
vf::basics::MetaData::world
World world
Definition
MetaData.h:120
vf::basics::MetaData::numberOfThreads
uint numberOfThreads
Definition
MetaData.h:115
vf::basics::MetaData::discretization
Discretization discretization
Definition
MetaData.h:121
src
basics
MetaData
MetaData.h
Generated on Fri Feb 6 2026 09:08:39 for VirtualFluids by
1.9.8