Skip to content

Commit af39ccb

Browse files
committed
[WIP] working version of parallel RBF computation.
Requires some clean up work
1 parent 6fa7010 commit af39ccb

5 files changed

Lines changed: 268 additions & 74 deletions

File tree

Common/include/grid_movement/CRadialBasisFunctionInterpolation.hpp

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,15 +40,20 @@ class CRadialBasisFunctionInterpolation : public CVolumetricMovement {
4040
protected:
4141

4242
vector<CRadialBasisFunctionNode*> boundaryNodes; /*!< \brief Vector with boundary nodes.*/
43+
vector<CRadialBasisFunctionNode*> boundaryNodes_local; /*!< \brief Vector with boundary nodes.*/
44+
vector<unsigned long> boundNodes, boundNodes_local;
4345
vector<unsigned long> internalNodes; /*!< \brief Vector with internal nodes.*/
4446
unsigned long nBoundaryNodes, /*!< \brief Number of boundary nodes*/
4547
nInternalNodes; /*!< \brief Number of internal nodes*/
4648

4749
vector<CRadialBasisFunctionNode*>* controlNodes; /*!< \brief Vector with control nodes*/
4850

4951
vector<passivedouble> deformationVector; /*!< \brief Deformation vector.*/
52+
vector<passivedouble> deformationVector_local; /*!< \brief Deformation vector.*/
53+
5054
vector<passivedouble> coefficients; /*!< \brief Control node interpolation coefficients.*/
5155
CSymmetricMatrix interpMat; /*!< \brief Interpolation matrix.*/
56+
// su2activematrix interpMat;
5257

5358
RADIAL_BASIS kindRBF; /*!< \brief Type of Radial Basis Function.*/
5459
su2double radius; /*!< \brief Support radius of compact Radial Basis Function.*/
@@ -108,7 +113,7 @@ class CRadialBasisFunctionInterpolation : public CVolumetricMovement {
108113
* \brief Selecting internal nodes for the volumetric deformation.
109114
* \param[in] geometry - Geometrical definition of the problem.
110115
*/
111-
void SetInternalNodes(CGeometry* geometry);
116+
void SetInternalNodes(CConfig* config, CGeometry* geometry);
112117

113118
/*!
114119
* \brief Solving of the Radial Basis Function interpolation system, yielding the interpolation coefficients
@@ -140,4 +145,8 @@ class CRadialBasisFunctionInterpolation : public CVolumetricMovement {
140145
inline static bool Equal(CRadialBasisFunctionNode* a, CRadialBasisFunctionNode* b){
141146
return a->GetIndex() == b->GetIndex();
142147
}
148+
149+
inline static bool Equal2(unsigned long a, unsigned long b){
150+
return a == b;
151+
};
143152
};

Common/include/grid_movement/CRadialBasisFunctionNode.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ class CRadialBasisFunctionNode{
4747
/*!
4848
* \brief Constructor of the class.
4949
*/
50-
CRadialBasisFunctionNode(CGeometry* geometry, unsigned short marker_val, unsigned long vertex_val);
50+
CRadialBasisFunctionNode(unsigned long idx_val, unsigned short marker_val, unsigned long vertex_val);
5151

5252
/*!
5353
* \brief Returns global index.

0 commit comments

Comments
 (0)