boost库矩阵计算--ublas

#include <boost/numeric/ublas/matrix.hpp>
#include <boost/numeric/ublas/io.hpp>
#include <boost/numeric/ublas/matrix_proxy.hpp>
#include <boost/numeric/ublas/vector_proxy.hpp>

//#include <iostream>

namespace ublas = boost::numeric::ublas;

int main(int argc, char ** argv)
{
    ublas::matrix<double> M(3, 3, 1);
    ublas::identity_matrix<double> I(3);
    ublas::zero_matrix<double> Z(3);
    ublas::scalar_matrix<double> S(2, 3);

    for (size_t idxRow = 0; idxRow < M.size1(); idxRow++)
    {
        for (size_t idxCol = 0; idxCol < M.size2(); idxCol++)
        {
            M(idxRow, idxCol) = 3 * idxRow + idxCol;
        }
    }

    std::cout << "M: " << M << std::endl;
    std::cout << ublas::row(M, 0) << std::endl;
    std::cout << ublas::inner_prod(ublas::row(M, 0), ublas::row(M, 1)) << std::endl;
    std::cout << ublas::project(ublas::row(M, 1), ublas::range(0, 2)) << std::endl;

    getchar();

    return 0;
}

boost库矩阵计算ublas使用示例

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值