@@ -40,23 +40,40 @@ class CRadialBasisFunctionInterpolation : public CVolumetricMovement {
4040protected:
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;
4543 vector<unsigned long > internalNodes; /* !< \brief Vector with internal nodes.*/
4644 unsigned long nBoundaryNodes, /* !< \brief Number of boundary nodes*/
4745 nInternalNodes; /* !< \brief Number of internal nodes*/
4846
4947 vector<CRadialBasisFunctionNode*>* controlNodes; /* !< \brief Vector with control nodes*/
5048
5149 vector<passivedouble> deformationVector; /* !< \brief Deformation vector.*/
52- vector<passivedouble> deformationVector_local; /* !< \brief Deformation vector.*/
5350
5451 vector<passivedouble> coefficients; /* !< \brief Control node interpolation coefficients.*/
5552 CSymmetricMatrix interpMat; /* !< \brief Interpolation matrix.*/
5653 // su2activematrix interpMat;
5754
5855 RADIAL_BASIS kindRBF; /* !< \brief Type of Radial Basis Function.*/
5956 su2double radius; /* !< \brief Support radius of compact Radial Basis Function.*/
57+
58+
59+ /* --- data reduction parameters ---*/
60+ vector<CRadialBasisFunctionNode*> greedyNodes; /* !< \brief Vector with selected control nodes in greedy algorithm. */
61+ bool dataReduction; /* !< \brief Determines whether data reduction is used. */
62+ unsigned long MaxErrorNode;
63+ su2double MaxError;
64+
65+
66+ unsigned long Global_nControlNodes{0 };
67+ /* --- mpi related*/
68+
69+ unsigned long Local_nControlNodes;
70+ vector<unsigned long > Local_nControlNodesVec;
71+
72+ vector<su2double> LocalCoords;
73+ vector<su2double> GlobalCoords;
74+
75+
76+
6077
6178public:
6279
@@ -149,4 +166,10 @@ class CRadialBasisFunctionInterpolation : public CVolumetricMovement {
149166 inline static bool Equal2 (unsigned long a, unsigned long b){
150167 return a == b;
151168 };
169+
170+
171+ /* --- Data reduction functions ---*/
172+ void GreedyIteration (CGeometry* geometry, CConfig* config);
173+
174+ void GetInitMaxErrorNode (CGeometry* geometry, CConfig* config);
152175};
0 commit comments