Documentation 6b54b78464
Loading...
Searching...
No Matches
graph_coloring_structure.hpp
Go to the documentation of this file.
1/*!
2 * \file graph_coloring_structure.hpp
3 * \brief Include files and headers of the functions to carry out a
4 * coloring of a given graph. The functions are in the
5 * <i>graph_coloring_structure.cpp</i> file.
6 * \author E. van der Weide
7 * \version 8.5.0 "Harrier"
8 *
9 * SU2 Project Website: https://su2code.github.io
10 *
11 * The SU2 Project is maintained by the SU2 Foundation
12 * (http://su2foundation.org)
13 *
14 * Copyright 2012-2026, SU2 Contributors (cf. AUTHORS.md)
15 *
16 * SU2 is free software; you can redistribute it and/or
17 * modify it under the terms of the GNU Lesser General Public
18 * License as published by the Free Software Foundation; either
19 * version 2.1 of the License, or (at your option) any later version.
20 *
21 * SU2 is distributed in the hope that it will be useful,
22 * but WITHOUT ANY WARRANTY; without even the implied warranty of
23 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
24 * Lesser General Public License for more details.
25 *
26 * You should have received a copy of the GNU Lesser General Public
27 * License along with SU2. If not, see <http://www.gnu.org/licenses/>.
28 */
29
30#pragma once
31
33#include "option_structure.hpp"
34#include "CConfig.hpp"
35#include <cstring>
36
37using namespace std;
38
39/*!
40 * \class CGraphColoringStructure
41 * \ingroup Graph
42 * \brief Class, which provides distributed graph coloring algorithms.
43 * \author: E. van der Weide
44 * \version 8.5.0 "Harrier"
45 */
47 public:
48 /*!
49 * \brief Function, which determines the colors for the vertices of the given graph.
50 * \param[in] config - Definition of the particular problem.
51 * \param[in] nVerticesPerRank - Number of vertices of the graph per MPI-rank,
52 cumulative storage format.
53 * \param[in] entriesVertices - The entries in the graph of the local vertices
54 in global numbering.
55 * \param[out] nGlobalColors - Global number of colors in the graph.
56 * \param[out] colorLocalVertices - The color of the local vertices of the graph.
57 */
58 void GraphVertexColoring(CConfig* config, const vector<unsigned long>& nVerticesPerRank,
59 const vector<vector<unsigned long> >& entriesVertices, int& nGlobalColors,
60 vector<int>& colorLocalVertices);
61};
All the information about the definition of the physical problem. The subroutines and functions are i...
Main class for defining the problem; basically this class reads the configuration file,...
Definition CConfig.hpp:64
Class, which provides distributed graph coloring algorithms.
Definition graph_coloring_structure.hpp:46
void GraphVertexColoring(CConfig *config, const vector< unsigned long > &nVerticesPerRank, const vector< vector< unsigned long > > &entriesVertices, int &nGlobalColors, vector< int > &colorLocalVertices)
Function, which determines the colors for the vertices of the given graph.
Definition graph_coloring_structure.cpp:31
Headers of the mpi interface for generalized datatypes. The subroutines and functions are in the mpi_...
Defines classes for referencing options for easy input in CConfig.