 		TRY( VecSetType(x_Vec, VECMPICUDA) );
 		TRY( VecSetSizes(x_Vec,K*Tlocal,K*T) );
 		TRY( VecSetFromOptions(x_Vec) );
+
+		TRY( VecCreateMPI(PETSC_COMM_WORLD,K*Tlocal,K*T, &y_VecCPU) ); /* for printing I need vector on CPU */
 
 //		TRY( VecCreateMPICUDA(PETSC_COMM_WORLD,K*Tlocal,K*T, &x_Vec) );
 	#endif

			#ifndef USE_GPU
				TRY( VecGetArray(y.get_vector(), &values) );
			#else
				TRY( VecCUDAGetArrayReadWrite(y.get_vector(), &values) );
			#endif
		
			/* print row */

			#ifndef USE_GPU
				TRY( VecRestoreArray(y.get_vector(), &values) );
			#else
				TRY( VecRestoreArray(y_Vec, &values) );
			#endif

		}
