当前位置: 首页>>代码示例>>C++>>正文


C++ workspace1::select方法代码示例

本文整理汇总了C++中detail::workspace1::select方法的典型用法代码示例。如果您正苦于以下问题:C++ workspace1::select方法的具体用法?C++ workspace1::select怎么用?C++ workspace1::select使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在detail::workspace1的用法示例。


在下文中一共展示了workspace1::select方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: hesv

 static std::ptrdiff_t invoke( MatrixA& a, VectorIPIV& ipiv, MatrixB& b,
         detail::workspace1< WORK > work ) {
     namespace bindings = ::boost::numeric::bindings;
     typedef typename result_of::uplo_tag< MatrixA >::type uplo;
     BOOST_STATIC_ASSERT( (bindings::is_column_major< MatrixA >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_column_major< MatrixB >::value) );
     BOOST_STATIC_ASSERT( (boost::is_same< typename remove_const<
             typename bindings::value_type< MatrixA >::type >::type,
             typename remove_const< typename bindings::value_type<
             MatrixB >::type >::type >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_mutable< MatrixA >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_mutable< VectorIPIV >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_mutable< MatrixB >::value) );
     BOOST_ASSERT( bindings::size(work.select(value_type())) >=
             min_size_work());
     BOOST_ASSERT( bindings::size_column(a) >= 0 );
     BOOST_ASSERT( bindings::size_column(b) >= 0 );
     BOOST_ASSERT( bindings::size_minor(a) == 1 ||
             bindings::stride_minor(a) == 1 );
     BOOST_ASSERT( bindings::size_minor(b) == 1 ||
             bindings::stride_minor(b) == 1 );
     BOOST_ASSERT( bindings::stride_major(a) >= std::max< std::ptrdiff_t >(1,
             bindings::size_column(a)) );
     BOOST_ASSERT( bindings::stride_major(b) >= std::max< std::ptrdiff_t >(1,
             bindings::size_column(a)) );
     return detail::hesv( uplo(), bindings::size_column(a),
             bindings::size_column(b), bindings::begin_value(a),
             bindings::stride_major(a), bindings::begin_value(ipiv),
             bindings::begin_value(b), bindings::stride_major(b),
             bindings::begin_value(work.select(value_type())),
             bindings::size(work.select(value_type())) );
 }
开发者ID:AntonDV235,项目名称:OMCompiler,代码行数:32,代码来源:hesv.hpp

示例2: spgv

 static std::ptrdiff_t invoke( const fortran_int_t itype,
         const char jobz, MatrixAP& ap, MatrixBP& bp, VectorW& w,
         MatrixZ& z, detail::workspace1< WORK > work ) {
     namespace bindings = ::boost::numeric::bindings;
     typedef typename result_of::uplo_tag< MatrixAP >::type uplo;
     BOOST_STATIC_ASSERT( (bindings::is_column_major< MatrixZ >::value) );
     BOOST_STATIC_ASSERT( (boost::is_same< typename remove_const<
             typename bindings::value_type< MatrixAP >::type >::type,
             typename remove_const< typename bindings::value_type<
             MatrixBP >::type >::type >::value) );
     BOOST_STATIC_ASSERT( (boost::is_same< typename remove_const<
             typename bindings::value_type< MatrixAP >::type >::type,
             typename remove_const< typename bindings::value_type<
             VectorW >::type >::type >::value) );
     BOOST_STATIC_ASSERT( (boost::is_same< typename remove_const<
             typename bindings::value_type< MatrixAP >::type >::type,
             typename remove_const< typename bindings::value_type<
             MatrixZ >::type >::type >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_mutable< MatrixAP >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_mutable< MatrixBP >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_mutable< VectorW >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_mutable< MatrixZ >::value) );
     BOOST_ASSERT( bindings::size(work.select(real_type())) >=
             min_size_work( bindings::size_column(ap) ));
     BOOST_ASSERT( bindings::size_column(ap) >= 0 );
     BOOST_ASSERT( bindings::size_minor(z) == 1 ||
             bindings::stride_minor(z) == 1 );
     BOOST_ASSERT( jobz == 'N' || jobz == 'V' );
     return detail::spgv( itype, jobz, uplo(), bindings::size_column(ap),
             bindings::begin_value(ap), bindings::begin_value(bp),
             bindings::begin_value(w), bindings::begin_value(z),
             bindings::stride_major(z),
             bindings::begin_value(work.select(real_type())) );
 }
开发者ID:AntonDV235,项目名称:OMCompiler,代码行数:34,代码来源:spgv.hpp

示例3: opmtr

 static std::ptrdiff_t invoke( const Side side, const char uplo,
         const VectorAP& ap, const VectorTAU& tau, MatrixC& c,
         detail::workspace1< WORK > work ) {
     namespace bindings = ::boost::numeric::bindings;
     typedef tag::column_major order;
     typedef typename result_of::trans_tag< VectorAP, order >::type trans;
     BOOST_STATIC_ASSERT( (bindings::is_column_major< MatrixC >::value) );
     BOOST_STATIC_ASSERT( (boost::is_same< typename remove_const<
             typename bindings::value_type< VectorAP >::type >::type,
             typename remove_const< typename bindings::value_type<
             VectorTAU >::type >::type >::value) );
     BOOST_STATIC_ASSERT( (boost::is_same< typename remove_const<
             typename bindings::value_type< VectorAP >::type >::type,
             typename remove_const< typename bindings::value_type<
             MatrixC >::type >::type >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_mutable< MatrixC >::value) );
     BOOST_ASSERT( bindings::size(work.select(real_type())) >=
             min_size_work( side, bindings::size_row(c),
             bindings::size_column(c) ));
     BOOST_ASSERT( bindings::size_column(c) >= 0 );
     BOOST_ASSERT( bindings::size_minor(c) == 1 ||
             bindings::stride_minor(c) == 1 );
     BOOST_ASSERT( bindings::size_row(c) >= 0 );
     BOOST_ASSERT( bindings::stride_major(c) >= std::max< std::ptrdiff_t >(1,
             bindings::size_row(c)) );
     return detail::opmtr( side, uplo, trans(), bindings::size_row(c),
             bindings::size_column(c), bindings::begin_value(ap),
             bindings::begin_value(tau), bindings::begin_value(c),
             bindings::stride_major(c),
             bindings::begin_value(work.select(real_type())) );
 }
开发者ID:AntonDV235,项目名称:OMCompiler,代码行数:31,代码来源:opmtr.hpp

示例4: geqrf

 static std::ptrdiff_t invoke( MatrixA& a, VectorTAU& tau,
         detail::workspace1< WORK > work ) {
     namespace bindings = ::boost::numeric::bindings;
     BOOST_STATIC_ASSERT( (bindings::is_column_major< MatrixA >::value) );
     BOOST_STATIC_ASSERT( (boost::is_same< typename remove_const<
             typename bindings::value_type< MatrixA >::type >::type,
             typename remove_const< typename bindings::value_type<
             VectorTAU >::type >::type >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_mutable< MatrixA >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_mutable< VectorTAU >::value) );
     BOOST_ASSERT( bindings::size(tau) >= std::min<
             std::ptrdiff_t >(bindings::size_row(a),
             bindings::size_column(a)) );
     BOOST_ASSERT( bindings::size(work.select(value_type())) >=
             min_size_work( bindings::size_column(a) ));
     BOOST_ASSERT( bindings::size_column(a) >= 0 );
     BOOST_ASSERT( bindings::size_minor(a) == 1 ||
             bindings::stride_minor(a) == 1 );
     BOOST_ASSERT( bindings::size_row(a) >= 0 );
     BOOST_ASSERT( bindings::stride_major(a) >= std::max< std::ptrdiff_t >(1,
             bindings::size_row(a)) );
     return detail::geqrf( bindings::size_row(a), bindings::size_column(a),
             bindings::begin_value(a), bindings::stride_major(a),
             bindings::begin_value(tau),
             bindings::begin_value(work.select(value_type())),
             bindings::size(work.select(value_type())) );
 }
开发者ID:CQMP,项目名称:scripts,代码行数:27,代码来源:geqrf.hpp

示例5: invoke

 static void invoke( char const vect, char const side, char const trans,
         integer_t const k, MatrixA& a, VectorTAU& tau, MatrixC& c,
         integer_t& info, detail::workspace1< WORK > work ) {
     BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
             MatrixA >::value_type, typename traits::vector_traits<
             VectorTAU >::value_type >::value) );
     BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
             MatrixA >::value_type, typename traits::matrix_traits<
             MatrixC >::value_type >::value) );
     BOOST_ASSERT( vect == 'Q' || vect == 'P' );
     BOOST_ASSERT( side == 'L' || side == 'R' );
     BOOST_ASSERT( trans == 'N' || trans == 'T' );
     BOOST_ASSERT( traits::matrix_num_rows(c) >= 0 );
     BOOST_ASSERT( traits::matrix_num_columns(c) >= 0 );
     BOOST_ASSERT( k >= 0 );
     BOOST_ASSERT( traits::vector_size(tau) >= std::min(?NQ,k) );
     BOOST_ASSERT( traits::leading_dimension(c) >= std::max(1,
             traits::matrix_num_rows(c)) );
     BOOST_ASSERT( traits::vector_size(work.select(real_type())) >=
             min_size_work( side, traits::matrix_num_rows(c),
             traits::matrix_num_columns(c) ));
     detail::ormbr( vect, side, trans, traits::matrix_num_rows(c),
             traits::matrix_num_columns(c), k, traits::matrix_storage(a),
             traits::leading_dimension(a), traits::vector_storage(tau),
             traits::matrix_storage(c), traits::leading_dimension(c),
             traits::vector_storage(work.select(real_type())),
             traits::vector_size(work.select(real_type())), info );
 }
开发者ID:fluxdark,项目名称:jflib,代码行数:28,代码来源:ormbr.hpp

示例6: invoke

 static void invoke( MatrixA& a, VectorD& d, VectorE& e, VectorTAU& tau,
         integer_t& info, detail::workspace1< WORK > work ) {
     BOOST_STATIC_ASSERT( (boost::is_same< typename traits::vector_traits<
             VectorD >::value_type, typename traits::vector_traits<
             VectorE >::value_type >::value) );
     BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
             MatrixA >::value_type, typename traits::vector_traits<
             VectorTAU >::value_type >::value) );
     BOOST_ASSERT( traits::matrix_uplo_tag(a) == 'U' ||
             traits::matrix_uplo_tag(a) == 'L' );
     BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
     BOOST_ASSERT( traits::leading_dimension(a) >= std::max(1,
             traits::matrix_num_columns(a)) );
     BOOST_ASSERT( traits::vector_size(d) >=
             traits::matrix_num_columns(a) );
     BOOST_ASSERT( traits::vector_size(tau) >=
             traits::matrix_num_columns(a)-1 );
     BOOST_ASSERT( traits::vector_size(work.select(value_type())) >=
             min_size_work(  ));
     detail::hetrd( traits::matrix_uplo_tag(a),
             traits::matrix_num_columns(a), traits::matrix_storage(a),
             traits::leading_dimension(a), traits::vector_storage(d),
             traits::vector_storage(e), traits::vector_storage(tau),
             traits::vector_storage(work.select(value_type())),
             traits::vector_size(work.select(value_type())), info );
 }
开发者ID:fluxdark,项目名称:jflib,代码行数:26,代码来源:hetrd.hpp

示例7: pteqr

 static std::ptrdiff_t invoke( const char compz, VectorD& d, VectorE& e,
         MatrixZ& z, detail::workspace1< WORK > work ) {
     namespace bindings = ::boost::numeric::bindings;
     BOOST_STATIC_ASSERT( (bindings::is_column_major< MatrixZ >::value) );
     BOOST_STATIC_ASSERT( (boost::is_same< typename remove_const<
             typename bindings::value_type< VectorD >::type >::type,
             typename remove_const< typename bindings::value_type<
             VectorE >::type >::type >::value) );
     BOOST_STATIC_ASSERT( (boost::is_same< typename remove_const<
             typename bindings::value_type< VectorD >::type >::type,
             typename remove_const< typename bindings::value_type<
             MatrixZ >::type >::type >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_mutable< VectorD >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_mutable< VectorE >::value) );
     BOOST_STATIC_ASSERT( (bindings::is_mutable< MatrixZ >::value) );
     BOOST_ASSERT( bindings::size(d) >= bindings::size(d) );
     BOOST_ASSERT( bindings::size(d) >= 0 );
     BOOST_ASSERT( bindings::size(e) >= bindings::size(d)-1 );
     BOOST_ASSERT( bindings::size(work.select(real_type())) >=
             min_size_work( bindings::size(d) ));
     BOOST_ASSERT( bindings::size_minor(z) == 1 ||
             bindings::stride_minor(z) == 1 );
     BOOST_ASSERT( compz == 'N' || compz == 'V' || compz == 'I' );
     return detail::pteqr( compz, bindings::size(d),
             bindings::begin_value(d), bindings::begin_value(e),
             bindings::begin_value(z), bindings::stride_major(z),
             bindings::begin_value(work.select(real_type())) );
 }
开发者ID:AntonDV235,项目名称:OMCompiler,代码行数:28,代码来源:pteqr.hpp

示例8: invoke

 static void invoke( char const job, integer_t const n, MatrixA& a,
         MatrixB& b, integer_t& ilo, integer_t& ihi, VectorLSCALE& lscale,
         VectorRSCALE& rscale, integer_t& info, detail::workspace1<
         WORK > work ) {
     BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
             MatrixA >::value_type, typename traits::matrix_traits<
             MatrixB >::value_type >::value) );
     BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
             MatrixA >::value_type, typename traits::vector_traits<
             VectorLSCALE >::value_type >::value) );
     BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
             MatrixA >::value_type, typename traits::vector_traits<
             VectorRSCALE >::value_type >::value) );
     BOOST_ASSERT( job == 'N' || job == 'P' || job == 'S' || job == 'B' );
     BOOST_ASSERT( n >= 0 );
     BOOST_ASSERT( traits::leading_dimension(a) >= std::max(1,n) );
     BOOST_ASSERT( traits::leading_dimension(b) >= std::max(1,n) );
     BOOST_ASSERT( traits::vector_size(work.select(real_type())) >=
             min_size_work( $CALL_MIN_SIZE ));
     detail::ggbal( job, n, traits::matrix_storage(a),
             traits::leading_dimension(a), traits::matrix_storage(b),
             traits::leading_dimension(b), ilo, ihi,
             traits::vector_storage(lscale),
             traits::vector_storage(rscale),
             traits::vector_storage(work.select(real_type())), info );
 }
开发者ID:fluxdark,项目名称:jflib,代码行数:26,代码来源:ggbal.hpp

示例9: lanhp

 static std::ptrdiff_t invoke( const char norm, const MatrixAP& ap,
         detail::workspace1< WORK > work ) {
     namespace bindings = ::boost::numeric::bindings;
     typedef typename result_of::uplo_tag< MatrixAP >::type uplo;
     BOOST_ASSERT( bindings::size(work.select(real_type())) >=
             min_size_work( norm, bindings::size_column(ap) ));
     BOOST_ASSERT( bindings::size_column(ap) >= 0 );
     return detail::lanhp( norm, uplo(), bindings::size_column(ap),
             bindings::begin_value(ap),
             bindings::begin_value(work.select(real_type())) );
 }
开发者ID:AntonDV235,项目名称:OMCompiler,代码行数:11,代码来源:lanhp.hpp

示例10: lacon

 static std::ptrdiff_t invoke( const fortran_int_t n, VectorX& x,
         real_type& est, fortran_int_t& kase, detail::workspace1<
         V > work ) {
     namespace bindings = ::boost::numeric::bindings;
     BOOST_STATIC_ASSERT( (bindings::is_mutable< VectorX >::value) );
     BOOST_ASSERT( bindings::size(work.select(value_type())) >=
             min_size_v( n ));
     BOOST_ASSERT( n >= 1 );
     return detail::lacon( n,
             bindings::begin_value(work.select(value_type())),
             bindings::begin_value(x), est, kase );
 }
开发者ID:AntonDV235,项目名称:OMCompiler,代码行数:12,代码来源:lacon.hpp

示例11: hpcon

 static std::ptrdiff_t invoke( const MatrixAP& ap, const VectorIPIV& ipiv,
         const real_type anorm, real_type& rcond, detail::workspace1<
         WORK > work ) {
     namespace bindings = ::boost::numeric::bindings;
     typedef typename result_of::uplo_tag< MatrixAP >::type uplo;
     BOOST_ASSERT( bindings::size(ipiv) >= bindings::size_column(ap) );
     BOOST_ASSERT( bindings::size(work.select(value_type())) >=
             min_size_work( bindings::size_column(ap) ));
     BOOST_ASSERT( bindings::size_column(ap) >= 0 );
     return detail::hpcon( uplo(), bindings::size_column(ap),
             bindings::begin_value(ap), bindings::begin_value(ipiv), anorm,
             rcond, bindings::begin_value(work.select(value_type())) );
 }
开发者ID:AntonDV235,项目名称:OMCompiler,代码行数:13,代码来源:hpcon.hpp

示例12: ptcon

 static std::ptrdiff_t invoke( const VectorD& d, const VectorE& e,
         const real_type anorm, real_type& rcond, detail::workspace1<
         RWORK > work ) {
     namespace bindings = ::boost::numeric::bindings;
     BOOST_ASSERT( bindings::size(d) >= bindings::size(d) );
     BOOST_ASSERT( bindings::size(d) >= 0 );
     BOOST_ASSERT( bindings::size(e) >= bindings::size(d)-1 );
     BOOST_ASSERT( bindings::size(work.select(real_type())) >=
             min_size_rwork( bindings::size(d) ));
     return detail::ptcon( bindings::size(d), bindings::begin_value(d),
             bindings::begin_value(e), anorm, rcond,
             bindings::begin_value(work.select(real_type())) );
 }
开发者ID:CQMP,项目名称:scripts,代码行数:13,代码来源:ptcon.hpp

示例13: invoke

 static void invoke( MatrixA& a, VectorIPIV& ipiv, integer_t& info,
         detail::workspace1< WORK > work ) {
     BOOST_ASSERT( traits::matrix_uplo_tag(a) == 'U' ||
             traits::matrix_uplo_tag(a) == 'L' );
     BOOST_ASSERT( traits::matrix_num_columns(a) >= 0 );
     BOOST_ASSERT( traits::leading_dimension(a) >= std::max(1,
             traits::matrix_num_columns(a)) );
     BOOST_ASSERT( traits::vector_size(work.select(real_type())) >=
             min_size_work( $CALL_MIN_SIZE ));
     detail::sytrf( traits::matrix_uplo_tag(a),
             traits::matrix_num_columns(a), traits::matrix_storage(a),
             traits::leading_dimension(a), traits::vector_storage(ipiv),
             traits::vector_storage(work.select(real_type())),
             traits::vector_size(work.select(real_type())), info );
 }
开发者ID:fluxdark,项目名称:jflib,代码行数:15,代码来源:sytrf.hpp

示例14: lansy

 static std::ptrdiff_t invoke( const char norm, const MatrixA& a,
         detail::workspace1< WORK > work ) {
     namespace bindings = ::boost::numeric::bindings;
     typedef typename result_of::uplo_tag< MatrixA >::type uplo;
     BOOST_STATIC_ASSERT( (bindings::is_column_major< MatrixA >::value) );
     BOOST_ASSERT( bindings::size(work.select(real_type())) >=
             min_size_work( norm, bindings::size_column(a) ));
     BOOST_ASSERT( bindings::size_column(a) >= 0 );
     BOOST_ASSERT( bindings::size_minor(a) == 1 ||
             bindings::stride_minor(a) == 1 );
     BOOST_ASSERT( bindings::stride_major(a) >= std::max<
             std::ptrdiff_t >(bindings::size_column(a),1) );
     return detail::lansy( norm, uplo(), bindings::size_column(a),
             bindings::begin_value(a), bindings::stride_major(a),
             bindings::begin_value(work.select(real_type())) );
 }
开发者ID:AntonDV235,项目名称:OMCompiler,代码行数:16,代码来源:lansy.hpp

示例15: invoke

 static void invoke( char const vect, integer_t const m, integer_t const n,
         integer_t const k, MatrixA& a, VectorTAU& tau, integer_t& info,
         detail::workspace1< WORK > work ) {
     BOOST_STATIC_ASSERT( (boost::is_same< typename traits::matrix_traits<
             MatrixA >::value_type, typename traits::vector_traits<
             VectorTAU >::value_type >::value) );
     BOOST_ASSERT( vect == 'Q' || vect == 'P' );
     BOOST_ASSERT( m >= 0 );
     BOOST_ASSERT( k >= 0 );
     BOOST_ASSERT( traits::leading_dimension(a) >= m );
     BOOST_ASSERT( traits::vector_size(work.select(value_type())) >=
             min_size_work( m, n ));
     detail::ungbr( vect, m, n, k, traits::matrix_storage(a),
             traits::leading_dimension(a), traits::vector_storage(tau),
             traits::vector_storage(work.select(value_type())),
             traits::vector_size(work.select(value_type())), info );
 }
开发者ID:fluxdark,项目名称:jflib,代码行数:17,代码来源:ungbr.hpp


注:本文中的detail::workspace1::select方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。