     MPI_Cart_get( comm, 3, dims, periods, coords);
     if(rank==0)
     {
-        std::cout<< dims[0] <<" "<<dims[1]<<" "<<dims[2]<<" "<<dims[0]*dims[1]*dims[2]<<" ";
+        std::cout<< dims[0] <<" "<<dims[1]<<" "<<dims[2]<<" "<<dims[0]*dims[1]*dims[2];
         int num_threads = 1;
 #ifdef _OPENMP
         num_threads = omp_get_max_threads( );
 #endif //omp
-        std::cout << num_threads<<" ";
-        std::cout<< n <<" "<<Nx<<" "<<Ny<<" "<<Nz<<" ";
+        std::cout << " "<<num_threads;
+        std::cout<<" "<< n <<" "<<Nx<<" "<<Ny<<" "<<Nz;
     }
 
 

        dg::geo::guenther::FuncNeu funcNEU(gpR0,gpI0);
        Vector function = dg::evaluate( funcNEU, g3d) , dsTdsfb(function);

        t.tic(); 
        for( unsigned i=0; i<multi; i++)
            ds.symv(function,dsTdsfb);
        t.toc();
        if(rank==0)std::cout<<t.diff()/(double)multi<<" ";
    }
    else 
        if(rank==0)std::cout<<0.<<" ";
    if(rank==0)std::cout << res.d<< " "<<res.i<<" ";

    } catch( std::exception& e) {
        if(rank==0)std::cout << std::endl;

dg::bc bcy = dg::PER;
dg::bc bcz = dg::PER;
double left( double x, double y, double z) {return sin(x)*cos(y)*z;}
double right( double x, double y, double z) {return cos(x)*sin(y)*z;}
//double right2( double x, double y) {return sin(y);}
double jacobian( double x, double y, double z)
{
    return z*z*cos(x)*sin(y)*2*sin(2*x)*cos(2*y)-sin(x)*cos(y)*2*cos(2*x)*sin(2*y);
}
