Boost logo

Ublas :

Subject: Re: [ublas] [bindings] matrix traits
From: Karl Meerbergen (Karl.Meerbergen_at_[hidden])
Date: 2008-12-18 03:49:27


Dear all,

I modified (my local version) so that the workspace1,2,3 classes allow
to do the following:

 template <typename A, typename W, typename WC, typename WR>
    int heev (char jobz, char uplo, A& a, W& w,
detail::workspace2<WC,WR> workspace ) {
       typedef typename A::value_type
value_type ;
       typedef typename traits::type_traits<value_type>::real_type
real_type ;

       return detail::heev( jobz, uplo, a, w, workspace.select(
value_type() ), workspace.select( real_type() ) );
    }

You can call:

lapack::heev( 'N', UPLO, a2, e2, workspace(wr,wc) ) ;
lapack::heev( 'N', UPLO, a2, e2, workspace(wc,wr) ) ;

Karl

Karl Meerbergen wrote:
> Hi Rutger,
>
> I do not think this is possible. In some cases a row_major matrix is
> interpreted as a transpose column_major matrix.
> Why would you need this for LAPACK bindings?
>
> Best,
>
> Karl
>
>
> Rutger ter Borg wrote:
>
>> Dear all,
>>
>> looking into what might be expected by lapack and what is available through
>> the traits system, I was wondering whether it is possible to detect a
>> transposed type through the matrix_traits? Or is this never used? Or does
>> this work differently?
>>
>> Thanks,
>>
>> Rutger
>>
>>
>> _______________________________________________
>> ublas mailing list
>> ublas_at_[hidden]
>> http://lists.boost.org/mailman/listinfo.cgi/ublas
>>
>>
>
>
> _______________________________________________
> ublas mailing list
> ublas_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/ublas
>