diff --git a/Solver/dgDofContainer.cpp b/Solver/dgDofContainer.cpp index ca0647e6ed94d2f6ba3a2d24323ce7f8feb44d2c..a7d17cf3bfc11e84653a33bd1f146d80660225c8 100644 --- a/Solver/dgDofContainer.cpp +++ b/Solver/dgDofContainer.cpp @@ -643,4 +643,7 @@ void dgDofContainer::registerBindings(binding *b){ cm = cb->addMethod("Mesh2Mesh_ApplyL2Projection",&dgDofContainer::Mesh2Mesh_ApplyL2Projection); cm->setDescription("Apply L2 projection matrix from donor to this dofContainer."); cm->setArgNames("projector","donor","transpose","copy",NULL); + cm = cb->addMethod("getGroupProxy",&dgDofContainer::getGroupProxyBinding); + cm->setDescription("return the proxy to the solution of one group"); + cm->setArgNames("group",NULL); } diff --git a/Solver/dgDofContainer.h b/Solver/dgDofContainer.h index 595d4dc1770172c23a0dfd2a9c78e4d5f315866a..13b1e2ea9842eb9e6b0893859eb88f727cca5435 100644 --- a/Solver/dgDofContainer.h +++ b/Solver/dgDofContainer.h @@ -43,6 +43,7 @@ public: void axpy(dgDofContainer &x, double a=1.); void axpy(std::vector<dgGroupOfElements*>groups,dgDofContainer &x, double a=1.); inline fullMatrix<double> &getGroupProxy(int gId){ return *(_dataProxys[gId]); } + inline fullMatrix<double> *getGroupProxyBinding(int gId){ return (_dataProxys[gId]); } inline const fullMatrix<double> &getGroupProxy(int gId) const { return *(_dataProxys[gId]); } inline fullMatrix<double> &getGroupProxy(const dgGroupOfElements* g){ return *(_dataProxys[_groupId[g]]); } dgDofContainer (dgGroupCollection *groups, int nbFields);