 
     return ret;
 }
-
+#endif


    one[1] = 0.;
    void *valptr;
    ghost_densemat_cu_valptr(vec,&valptr);
    
    if (vec->traits.datatype & GHOST_DT_COMPLEX)
    {

        {
            CURAND_CALL_GOTO(curandGenerateUniformDouble(gen,
                        (double *)(valptr),
                        compactvec->traits.ncolsorig*compactvec->traits.nrows*2),err,ret);
        } 
        else 
        {
            CURAND_CALL_GOTO(curandGenerateUniform(gen,
                        (float *)(valptr),
                        compactvec->traits.ncolsorig*compactvec->traits.nrows*2),err,ret);
        }
    }
    else
    {
        if (vec->traits.datatype & GHOST_DT_DOUBLE)
        {
            CURAND_CALL_GOTO(curandGenerateUniformDouble(gen,
                        (double *)(valptr),
                        compactvec->traits.ncolsorig*compactvec->traits.nrows),err,ret);
        } 
        else 
        {
            CURAND_CALL_GOTO(curandGenerateUniform(gen,
                        (float *)(valptr),
                        compactvec->traits.ncolsorig*compactvec->traits.nrows),err,ret);
        }
    }
    if (compactvec->traits.datatype & GHOST_DT_DOUBLE) {
        compactvec->axpby(compactvec,onevecview,minusahalf,one);
    } else {
        compactvec->axpby(compactvec,onevecview,fminusahalf,fone);
    }
    if (compactvec != vec) {
        vec->fromVec(vec,compactvec,0,0);
        compactvec->destroy(compactvec);
    }
    goto out;
err:
