SuiteSparse/SPQR/Source/spqr_front.cpp
inline double spqr_private_larfg (Long n, double *X, cholmod_common *cc)
{
    double tau = 0 ;
    BLAS_INT N = n, one = 1 ;
    if (CHECK_BLAS_INT && !EQ (N,n))
    {
        cc->blas_ok = FALSE ;
    }
    if (!CHECK_BLAS_INT || cc->blas_ok)
    {
        LAPACK_DLARFG (&N, X, X + 1, &one, &tau) ;
    }
    return (tau) ;
}
//  Note that for the complex case, the reflection must be applied as H'*x,
//  which requires that tau be conjugated in spqr_private_apply1.
//
//  This function performs about 3*n+2 flops
Note that for the complex case, the reflection must be applied as H'*x,
which requires that tau be conjugated in spqr_private_apply1.

This function performs about 3*n+2 flops
Note that for the complex case the reflection must be applied as H ' * x which requires that tau be conjugated in spqr_private_apply1 . This function performs about 3 * n + 2 flops
inline double spqr_private_larfg (Long n, double *X, cholmod_common *cc)
{
    double tau = 0 ;
    BLAS_INT N = n, one = 1 ;
    if (CHECK_BLAS_INT && !EQ (N,n))
    {
        cc->blas_ok = FALSE ;
    }
    if (!CHECK_BLAS_INT || cc->blas_ok)
    {
        LAPACK_DLARFG (&N, X, X + 1, &one, &tau) ;
    }
    return (tau) ;
}
inline double spqr_private_larfg ( Long n , double * X , cholmod_common * cc ) { double tau = 0 ; BLAS_INT N = n , one = 1 ; if ( CHECK_BLAS_INT && ! EQ ( N , n ) ) { cc -> blas_ok = FALSE ; } if ( ! CHECK_BLAS_INT || cc -> blas_ok ) { LAPACK_DLARFG ( & N , X , X + 1 , & one , & tau ) ; } return ( tau ) ; }
Note that for the complex case, the reflection must be applied as H'*x,
which requires that tau be conjugated in spqr_private_apply1.
Note that for the complex case the reflection must be applied as H ' * x which requires that tau be conjugated in spqr_private_apply1 .