Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
8ef8e5c
agglomeration only
bigfooted Jan 17, 2026
ef5b3df
agglomeration on mpi
bigfooted Jan 18, 2026
7685588
fix euler walls
bigfooted Jan 18, 2026
3d5cb12
remove debugging stuff
bigfooted Jan 18, 2026
e18050b
helper function
bigfooted Jan 18, 2026
2a70b87
before helper function
bigfooted Jan 18, 2026
69e5d5b
remove debug info
bigfooted Jan 18, 2026
40b8638
precommit
bigfooted Jan 18, 2026
bb3a25a
remove implicit lines
bigfooted Jan 18, 2026
c58caf9
cleanup commented stuff
bigfooted Jan 18, 2026
ec0bf2e
precommit
bigfooted Jan 18, 2026
7ab2ea9
cleanup
bigfooted Jan 18, 2026
6049a59
cleanup
bigfooted Jan 18, 2026
b60fe4a
cleanup
bigfooted Jan 18, 2026
4bcc049
precommit
bigfooted Jan 18, 2026
2424d6e
cleanup
bigfooted Jan 19, 2026
626a242
add damping based on mesh level
bigfooted Jan 19, 2026
42fa32d
small cleanup
bigfooted Jan 19, 2026
64cd69b
Merge branch 'develop' into fix_MG_part_1
bigfooted Jan 19, 2026
9845ff2
change CFL adjustment to safe value.
bigfooted Jan 19, 2026
fc1de16
change CFL adjustment to safe value.
bigfooted Jan 19, 2026
457f160
auto CFL adjustment for coarse meshes
bigfooted Jan 19, 2026
53a6c28
precommit
bigfooted Jan 20, 2026
8f1a7f7
Merge branch 'develop' into fix_MG_part_1
bigfooted Jan 20, 2026
cd46ff7
fix omp
bigfooted Jan 22, 2026
59043d7
reduce cfl complexity
bigfooted Jan 23, 2026
41d0e18
constant but adaptive cfl for multigrid meshes
bigfooted Jan 24, 2026
ae206e3
fix multigrid with claude sonnet
bigfooted Jan 24, 2026
d326b68
small modification to coefficients
bigfooted Jan 26, 2026
64a676b
remove unused function
bigfooted Jan 26, 2026
96caa0e
Potential fix for code scanning alert no. 6152: Commented-out code
bigfooted Jan 26, 2026
336aeae
Potential fix for code scanning alert no. 6153: Commented-out code
bigfooted Jan 26, 2026
4ecbde5
fix codi constexpr is not a literal
bigfooted Jan 26, 2026
d57ab24
Merge branch 'fix_MG_part_1' of https://github.com/su2code/su2 into f…
bigfooted Jan 26, 2026
9bfcd71
fix codi different type error
bigfooted Jan 26, 2026
7e0ccf1
precommit
bigfooted Jan 27, 2026
b63a428
fix symmetry shared node
bigfooted Jan 27, 2026
e86b74f
fix constexpr
bigfooted Jan 28, 2026
f30060b
cleanup
bigfooted Jan 28, 2026
4cdb106
merge
bigfooted Jan 28, 2026
135cdd5
Merge branch 'fix_symmetry' into fix_MG_part_1
bigfooted Jan 28, 2026
e1523ef
fix adjoint local cfl
bigfooted Jan 28, 2026
3269c08
precommit
bigfooted Jan 28, 2026
4be3e7c
Potential fix for code scanning alert no. 6158: Commented-out code
bigfooted Jan 28, 2026
b3c88fe
Potential fix for code scanning alert no. 6157: Commented-out code
bigfooted Jan 28, 2026
cf8f7d1
fix easy regression tests
bigfooted Jan 28, 2026
60d3441
Merge branch 'fix_MG_part_1' of https://github.com/su2code/su2 into f…
bigfooted Jan 28, 2026
208bf95
merge, fix data race
bigfooted Jan 29, 2026
2c65015
modify some OMP stuff
bigfooted Jan 30, 2026
0082b3e
cleanup some omp
bigfooted Feb 2, 2026
4491882
Update SU2_CFD/src/integration/CMultiGridIntegration.cpp
bigfooted Feb 3, 2026
15811bf
Update Common/src/geometry/CMultiGridGeometry.cpp
bigfooted Feb 3, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Common/include/CConfig.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -488,7 +488,7 @@ class CConfig {
unsigned short **DegreeFFDBox; /*!< \brief Degree of the FFD boxes. */
string *FFDTag; /*!< \brief Parameters of the design variable. */
string *TagFFDBox; /*!< \brief Tag of the FFD box. */
unsigned short GeometryMode; /*!< \brief Gemoetry mode (analysis or gradient computation). */
unsigned short GeometryMode; /*!< \brief Geometry mode (analysis or gradient computation). */
unsigned short MGCycle; /*!< \brief Kind of multigrid cycle. */
unsigned short FinestMesh; /*!< \brief Finest mesh for the full multigrid approach. */
unsigned short nFFD_Fix_IDir,
Expand Down Expand Up @@ -2912,7 +2912,7 @@ class CConfig {
unsigned short GetFinestMesh(void) const { return FinestMesh; }

/*!
* \brief Get the kind of multigrid (V or W).
* \brief Get the kind of multigrid (V, W or FULLMG).
* \note This variable is used in a recursive way to perform the different kind of cycles
* \return 0 or 1 depending of we are dealing with a V or W cycle.
*/
Expand Down
20 changes: 15 additions & 5 deletions Common/include/geometry/CMultiGridGeometry.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,36 +28,37 @@
#pragma once

#include "CGeometry.hpp"
class CMultiGridQueue;

/*!
* \class CMultiGridGeometry
* \brief Class for defining the multigrid geometry, the main delicated part is the
* \brief Class for defining the multigrid geometry, the main delegated part is the
* agglomeration stage, which is done in the declaration.
* \author F. Palacios
*/
class CMultiGridGeometry final : public CGeometry {
private:
/*!
* \brief Determine if a CVPoint van be agglomerated, if it have the same marker point as the seed.
* \brief Determine if a CVPoint can be agglomerated, if it has the same marker point as the seed.
* \param[in] CVPoint - Control volume to be agglomerated.
* \param[in] marker_seed - Marker of the seed.
* \param[in] fine_grid - Geometrical definition of the problem.
* \param[in] config - Definition of the particular problem.
* \return <code>TRUE</code> or <code>FALSE</code> depending if the control volume can be agglomerated.
*/
bool SetBoundAgglomeration(unsigned long CVPoint, short marker_seed, const CGeometry* fine_grid,
bool SetBoundAgglomeration(unsigned long CVPoint, vector<short> marker_seed, const CGeometry* fine_grid,
const CConfig* config) const;

/*!
* \brief Determine if a can be agglomerated using geometrical criteria.
* \brief Determine if a Point can be agglomerated using geometrical criteria.
* \param[in] iPoint - Seed point.
* \param[in] fine_grid - Geometrical definition of the problem.
* \param[in] config - Definition of the particular problem.
*/
bool GeometricalCheck(unsigned long iPoint, const CGeometry* fine_grid, const CConfig* config) const;

/*!
* \brief Determine if a CVPoint van be agglomerated, if it have the same marker point as the seed.
* \brief Determine if a CVPoint can be agglomerated, if it has the same marker point as the seed.
* \param[out] Suitable_Indirect_Neighbors - List of Indirect Neighbours that can be agglomerated.
* \param[in] iPoint - Seed point.
* \param[in] Index_CoarseCV - Index of agglomerated point.
Expand All @@ -66,6 +67,15 @@ class CMultiGridGeometry final : public CGeometry {
void SetSuitableNeighbors(vector<unsigned long>& Suitable_Indirect_Neighbors, unsigned long iPoint,
unsigned long Index_CoarseCV, const CGeometry* fine_grid) const;

/*!
* \brief Compute local curvature at a boundary vertex on Euler wall.
* \param[in] fine_grid - Fine grid geometry.
* \param[in] iPoint - Point index.
* \param[in] iMarker - Marker index.
* \return Maximum angle (in degrees) between this vertex normal and adjacent vertex normals.
*/
su2double ComputeLocalCurvature(const CGeometry* fine_grid, unsigned long iPoint, unsigned short iMarker) const;

public:
/*--- This is to suppress Woverloaded-virtual, omitting it has no negative impact. ---*/
using CGeometry::SetBoundControlVolume;
Expand Down
2 changes: 1 addition & 1 deletion Common/include/geometry/CMultiGridQueue.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ class CMultiGridQueue {
void IncrPriorityCV(unsigned long incrPoint);

/*!
* \brief Increase the priority of the CV.
* \brief Reduce the priority of the CV.
* \param[in] redPoint - Index of the control volume.
*/
void RedPriorityCV(unsigned long redPoint);
Expand Down
Loading