Skip to content

Commit f784b78

Browse files
authored
Merge pull request #1098 from su2code/update_master
Update master according to release 7.0.7
2 parents 0e3fad6 + 1b59f01 commit f784b78

827 files changed

Lines changed: 39270 additions & 28213 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/pull_request_template.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
*Put an X by all that apply. You can fill this out after submitting the PR. If you have any questions, don't hesitate to ask! We want to help. These are a guide for you to know what the reviewers will be looking for in your contribution.*
1313

1414
- [ ] I am submitting my contribution to the develop branch.
15-
- [ ] My contribution generates no new compiler warnings (try with the '-Wall -Wextra -Wno-unused-parameter -Wno-empty-body' compiler flags).
15+
- [ ] My contribution generates no new compiler warnings (try with the '-Wall -Wextra -Wno-unused-parameter -Wno-empty-body' compiler flags, or simply --warnlevel=2 when using meson).
1616
- [ ] My contribution is commented and consistent with SU2 style.
1717
- [ ] I have added a test case that demonstrates my contribution, if necessary.
1818
- [ ] I have updated appropriate documentation (Tutorials, Docs Page, config_template.cpp) , if necessary.

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,3 +86,5 @@ Mercurial
8686

8787
# Ignore build folder
8888
./build/
89+
build/
90+
ninja

Common/doc/docmain.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* \file docmain.hpp
33
* \brief This file contains documentation for Doxygen and does not have any significance with respect to C++.
44
* \author F. Palacios
5-
* \version 7.0.6 "Blackbird"
5+
* \version 7.0.7 "Blackbird"
66
*
77
* The current SU2 release has been coordinated by the
88
* SU2 International Developers Society <www.su2devsociety.org>
@@ -33,7 +33,7 @@
3333
*/
3434

3535
/*!
36-
* \mainpage SU2 version 7.0.6 "Blackbird"
36+
* \mainpage SU2 version 7.0.7 "Blackbird"
3737
* SU2 suite is an open-source collection of C++ based software tools
3838
* to perform PDE analysis and PDE constrained optimization problems. The toolset is designed with
3939
* computational fluid dynamics and aerodynamic shape optimization in mind, but is extensible to

Common/include/CConfig.hpp

Lines changed: 206 additions & 200 deletions
Large diffs are not rendered by default.

Common/include/CMultiGridQueue.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
* \brief Header of the multigrid queue class for the FVM solver.
44
* The subroutines and functions are in the <i>CMultiGridQueue.cpp</i> file.
55
* \author F. Palacios
6-
* \version 7.0.6 "Blackbird"
6+
* \version 7.0.7 "Blackbird"
77
*
88
* SU2 Project Website: https://su2code.github.io
99
*
@@ -29,7 +29,7 @@
2929
#pragma once
3030

3131
#include <vector>
32-
#include "toolboxes/CFastFindAndEraseQueue.hpp"
32+
#include "containers/CFastFindAndEraseQueue.hpp"
3333
#include "geometry/CGeometry.hpp"
3434

3535
using namespace std;
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
/*!
2+
* \file CADTBaseClass.hpp
3+
* \brief Base class for storing an ADT in an arbitrary number of dimensions.
4+
* \author E. van der Weide
5+
* \version 7.0.7 "Blackbird"
6+
*
7+
* SU2 Project Website: https://su2code.github.io
8+
*
9+
* The SU2 Project is maintained by the SU2 Foundation
10+
* (http://su2foundation.org)
11+
*
12+
* Copyright 2012-2020, SU2 Contributors (cf. AUTHORS.md)
13+
*
14+
* SU2 is free software; you can redistribute it and/or
15+
* modify it under the terms of the GNU Lesser General Public
16+
* License as published by the Free Software Foundation; either
17+
* version 2.1 of the License, or (at your option) any later version.
18+
*
19+
* SU2 is distributed in the hope that it will be useful,
20+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
21+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22+
* Lesser General Public License for more details.
23+
*
24+
* You should have received a copy of the GNU Lesser General Public
25+
* License along with SU2. If not, see <http://www.gnu.org/licenses/>.
26+
*/
27+
28+
#pragma once
29+
30+
#include <vector>
31+
#include <array>
32+
33+
#include "../basic_types/datatype_structure.hpp"
34+
#include "./CADTNodeClass.hpp"
35+
#include "../omp_structure.hpp"
36+
37+
using namespace std;
38+
39+
/*!
40+
* \class CADTBaseClass
41+
* \brief Base class for storing an ADT in an arbitrary number of dimensions.
42+
* \author E. van der Weide
43+
*/
44+
class CADTBaseClass {
45+
protected:
46+
unsigned long nLeaves; /*!< \brief Number of leaves in the ADT. */
47+
unsigned short nDimADT; /*!< \brief Number of dimensions of the ADT. */
48+
bool isEmpty; /*!< \brief Whether or not the ADT is empty. */
49+
50+
vector<CADTNodeClass> leaves; /*!< \brief Vector, which contains all the leaves of the ADT. */
51+
52+
#ifdef HAVE_OMP
53+
vector<vector<unsigned long> > FrontLeaves; /*!< \brief Vector used in the tree traversal. */
54+
vector<vector<unsigned long> > FrontLeavesNew; /*!< \brief Vector used in the tree traversal. */
55+
#else
56+
array<vector<unsigned long>,1> FrontLeaves;
57+
array<vector<unsigned long>,1> FrontLeavesNew;
58+
#endif
59+
private:
60+
vector<su2double> coorMinLeaves; /*!< \brief Vector, which contains all the minimum coordinates
61+
of the leaves. */
62+
vector<su2double> coorMaxLeaves; /*!< \brief Vector, which contains all the maximum coordinates
63+
of the leaves. */
64+
protected:
65+
/*!
66+
* \brief Constructor of the class. Nothing to be done.
67+
*/
68+
CADTBaseClass() = default;
69+
70+
/*--- Disable copy operations ---*/
71+
CADTBaseClass(const CADTBaseClass &) = delete;
72+
CADTBaseClass& operator=(const CADTBaseClass &) = delete;
73+
74+
/*!
75+
* \brief Function, which builds the ADT of the given coordinates.
76+
* \param[in] nDim Number of dimensions of the ADT.
77+
* \param[in] nPoints Number of points present in the ADT.
78+
* \param[in] coor Coordinates of the points.
79+
*/
80+
void BuildADT(unsigned short nDim,
81+
unsigned long nPoints,
82+
const su2double *coor);
83+
84+
public:
85+
86+
/*!
87+
* \brief Function, which returns whether or not the ADT is empty.
88+
* \return Whether or not the ADT is empty.
89+
*/
90+
inline bool IsEmpty(void) const { return isEmpty;}
91+
92+
};
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
/*!
2+
* \file CADTComparePointClass.hpp
3+
* \brief subroutines for comparing two points in an alternating digital tree (ADT).
4+
* \author E. van der Weide
5+
* \version 7.0.7 "Blackbird"
6+
*
7+
* SU2 Project Website: https://su2code.github.io
8+
*
9+
* The SU2 Project is maintained by the SU2 Foundation
10+
* (http://su2foundation.org)
11+
*
12+
* Copyright 2012-2020, SU2 Contributors (cf. AUTHORS.md)
13+
*
14+
* SU2 is free software; you can redistribute it and/or
15+
* modify it under the terms of the GNU Lesser General Public
16+
* License as published by the Free Software Foundation; either
17+
* version 2.1 of the License, or (at your option) any later version.
18+
*
19+
* SU2 is distributed in the hope that it will be useful,
20+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
21+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22+
* Lesser General Public License for more details.
23+
*
24+
* You should have received a copy of the GNU Lesser General Public
25+
* License along with SU2. If not, see <http://www.gnu.org/licenses/>.
26+
*/
27+
28+
#pragma once
29+
#include "../basic_types/datatype_structure.hpp"
30+
31+
/*!
32+
* \class CADTComparePointClass
33+
* \brief Functor, used for the sorting of the points when building an ADT.
34+
* \author E. van der Weide
35+
*/
36+
class CADTComparePointClass {
37+
private:
38+
const su2double *pointCoor; /*!< \brief Pointer to the coordinates of the points. */
39+
const unsigned short splitDirection; /*!< \brief Split direction used in the sorting. */
40+
const unsigned short nDim; /*!< \brief Number of spatial dimensions stored in the coordinates. */
41+
42+
public:
43+
/*!
44+
* \brief Constructor of the class. The member variables are initialized.
45+
* \param[in] coor Pointer to the coordinates of the points.
46+
* \param[in] splitDir Direction that must be used to sort the coordinates.
47+
* \param[in] nDimADT Number of spatial dimensions of the ADT and coordinates.
48+
*/
49+
CADTComparePointClass(const su2double *coor,
50+
const unsigned short splitDir,
51+
const unsigned short nDimADT) : pointCoor(coor), splitDirection(splitDir), nDim(nDimADT) {}
52+
53+
/*!
54+
* \brief Operator used for the sorting of the points.
55+
* \param[in] p0 Index of the first point to be compared.
56+
* \param[in] p1 Index of the second point to be compared.
57+
*/
58+
inline bool operator()(const unsigned long p0,
59+
const unsigned long p1) const {
60+
return pointCoor[nDim*p0+splitDirection] < pointCoor[nDim*p1+splitDirection];
61+
}
62+
63+
/*!
64+
* \brief Default constructor of the class, disabled.
65+
*/
66+
CADTComparePointClass() = delete;
67+
68+
};

0 commit comments

Comments
 (0)