     dg::DVec vol = dg::create::volume( grid);
     std::cout <<std::fixed<< std::setprecision(2)<<std::endl;
 
-    solovev::FuncDirPer left( gp, psi_0, psi_1, 1);
+    dg::geo::FuncDirPer left( gp, psi_0, psi_1, 1);
     FuncDirPer2 right( gp, psi_0, psi_1);
     ArakawaDirPer jacobian( gp, psi_0, psi_1);
     VariationDirPer variationLHS( gp, psi_0, psi_1);

//typedef OrthogonalGrid3d<dg::DVec> Geometry;
typedef dg::CurvilinearGrid2d<dg::DVec> Geometry;
//typedef OrthogonalGrid2d<dg::DVec> Geometry;

int main(int argc, char** argv)
{

#include "dg/geometry.h"

#include "solovev.h"
#include "conformal.h"
#include "orthogonal.h"
#include "magnetic_field.h"
#include "testfunctors.h"

struct FuncDirPer2
{
