diff --git a/Solver/dgFunctionIntegrator.cpp b/Solver/dgFunctionIntegrator.cpp
index 64bf289f52375474d395615a130afbf73bfe8b8f..9c269a0c9e8cabb709bcc386f0217008c1e55499 100644
--- a/Solver/dgFunctionIntegrator.cpp
+++ b/Solver/dgFunctionIntegrator.cpp
@@ -26,8 +26,8 @@ void dgFunctionIntegrator::compute(dgDofContainer *sol,fullMatrix<double> &resul
     group.getCollocationMatrix().mult(solProxy  , solutionQP); 
     fullMatrix<double> IPMatrix = group.getIntegrationPointsMatrix();
     for (int iElement=0 ; iElement<group.getNbElements() ;++iElement) {
-      solutionQPe.setAsProxy(solutionQP, iElement*nbFields, nbFields );
       cacheElement.set(group.getElement(iElement));
+      solutionQPe.setAsProxy(solutionQP, iElement*nbFields, nbFields );
       for (int iPt =0; iPt< group.getNbIntegrationPoints(); iPt++) {
         const double detJ = group.getDetJ (iElement, iPt);
         for (int k=0;k<nbRowResult;k++){
diff --git a/Solver/function.cpp b/Solver/function.cpp
index ccec03aad6df2786d33064006b09844eb1bfebb6..6472f00a7abaaab611cf124e86128dfe17227037 100644
--- a/Solver/function.cpp
+++ b/Solver/function.cpp
@@ -502,7 +502,7 @@ void function::registerBindings(binding *b){
 
   cb = b->addClass<functionSolution>("functionSolution");
   cb->setDescription("A function to access the solution. This is a single-instance class, use the 'get' member to access the instance.");
-  mb = cb->addMethod("get",&functionCoordinates::get);
+  mb = cb->addMethod("get",&functionSolution::get);
   mb->setDescription("return the unique instance of this class");
   cb->setParentClass<function>();