1.6Eigen中系数运算Reductions, visitors and broadcasting
Eigen::Matrix2d mat;
mat<<,,
,;
cout<<"矩阵所有系数之和:"<<mat.sum();//1+2+3+4=10
cout<<"矩阵系数的乘积:"<<mat.prod();//1*2*3*4=24
cout<<"矩阵系数的平均数:"<<mat.mean();//(1+2+3+4)/10=2.5
cout<<"矩阵最小的系数:"<<mat.minCoeff();//
cout<<"矩阵最大的系数:"<<mat.maxCoeff();//
cout<<"矩阵的迹:"<<mat.trace();//1+4=5
VectorXf v();
MatrixXf m(,),n(,);
v<<-,;
m<<,-,
-,;
cout<<"向量v的系数平方和:"<<v.squaredNorm();//(-1)^2+2^2=5
cout<<"向量v的系数平方和开方:"<<v.norm();//((-1)^2+2^2)^0.5=2.23607
cout<<"向量v的p次方和:"<<v.lpNorm<>();//模板函数,1为一次方和,3为三次方和, 结果xiang为3
cout<<"向量v系数绝对值最大值:"<<v.lpNorm<Infinity>();//
cout<<"矩阵m系数平方和:"<<m.squareNorm();//
cout<<"矩阵m系数平方和再开方:"<<m.norm();//5.47723
cout<<"矩阵m的p次方和:"<<m.lpNorm<>();//模板函数,1为矩阵系数绝对值之后,其他为N次方之和
cout<<"矩阵m系数绝对值最大值:"<<m.lpNorm<Infinity>();//
Eigen::Matrix2d mat;
mat<<,-,
-,;
cout<<"矩阵系数取绝对值:"<<mat.cwiseAbs();//mat=(1,2,3,4)
ArrayXXf a(,);
mat<<,,
,;
cout<<"如果数组所有系数大于0,返回true,否则返回false"<<(a>).all();//true
cout<<"如果数组存在一个系数大于0,返回true,否则返回false"<<(a>).any();//true
cout<<"返回数组大于0的系数的个数"<<(a>).count();//
cout<<"如果数组所有系数大于2,返回true,否则返回false"<<(a>).all();//
cout<<"如果数组存在一个系数大于2,返回true,否则返回false"<<(a>).any();//true
cout<<"返回数组大于2的系数的个数"<<(a>).count();//
Eigen::MatrixXf m(,);
m<<,,
,;
MatrixXf::Index maxRow,maxCol,minRow,minCol;
float max=m.maxCoeff(&maxRow,&maxCol);
float min=m.minCoeff(&minRow,&minCol);
cout<<"矩阵中最大元素所在位置:("<<maxRow<<","<<maxCol<<")";//(1,1)
cout<<"矩阵中最小元素所在位置:("<<minRow<<","<<minCol<<")";//(0,0)
Eigen::MatrixXf m(,);
m<<,,,,
,,,;
cout<<"输出每一列的最大值:"<<m.colwise().maxCoeff();//3,2,7,9
cout<<"输出每一行的最大值:"<<m.rowwise().maxCoeff();//9,7
Eigen::MatrixXf m(,);
m<<,,,,
,,,;
MatrixXf::Index maxindex;
float max=m.colwise().sum().maxCoeff(&maxindex);
cout<<"矩阵每列系数和,然后每一列和的最大值的列数"<<maxindex;//第3列,即2
cout<<"输出第三列"<<m.col(maxindex);//6,7
cout<<"输出最大的和:"<<max;//
Eigen::MatrixXf m(,),n(,);
Eigen::VectorXf v();
Eigen::RowVectorXf u();
m<<,,,,
,,,;
v<<,;
n<<,,,;
m.colwise()+=v;//m中每一列加向量v
n=m;
n.rowwise()+=u;
cout<<"矩阵每一列加向量v:"<<m;//1,2,6,9,4,2,8,3
cout<<"矩阵每一行加向量u:"<<n;//1,3,8,12,3,2,9,5
Eigen::MatrixXf m(,);
Eigen::VectorXf v();
m<<,,,,
,,,;
v<<,;
MatrixXf::Index index;
(m.colwise()-v).colwise().squareNorm().minCoeff(&index);
cout<<"求矩阵m每列距离向量V最小距离的一列"<<index;//
cout<<"输出距离向量V最小的列向量:"<<m.col(index);//1,3
1.6Eigen中系数运算Reductions, visitors and broadcasting的更多相关文章
- js中位运算的运用
原文:js中位运算的运用 我们可能很少在编程中用位运算,如果没深入学习,可能也很难理解.平时的数值运算,其实是要先转换成二进制再进行运算的,而位运算就是直接进行二进制运算,所以位运算的执行效率肯定是更 ...
- numpy.array 中的运算
简单运算 现在有有个需求,给定一个数组,让数组中每一个数乘以2,怎么做呢 n = 10 L = [i for i in range(n)] L # [0, 1, 2, 3, 4, 5, 6, 7, 8 ...
- shell简单用法笔记(shell中数值运算)二
shell中变量值,如果不手动指定类型,默认都是字符串类型: 例如: a= b= c=$a+#b echo $c 结果会输出:123+456 shell中,如果要进行数值运算,可以通过一下方法: 方法 ...
- C语言中复数运算及调用blas,lapack中复数函数进行科学计算
C语言中常用的数据类型主要int, float ,double ,char 等,但在科学运算中复数扮演着重要角色.这里讲下C语言中的复数运算以及如何调用blas,lapack库中的复数函数来进行科学计 ...
- LeetCode解题中位运算的运用
位运算是我最近才开始重视的东西,因为在LeetCode上面刷题的时候发现很多题目使用位运算会快很多.位运算的使用包含着许多技巧(详细可以参考http://blog.csdn.net/zmazon/ar ...
- java中位运算
1byte(字节)=8bit(比特) 1 0 0 0 0 0 0 0 1 2进制的1的原码 反码 补码 0 0 0 0 0 0 0 0 2进制的0的原码 反码 补码 -1 1 0 0 0 0 ...
- java中 & ^ ~ 的运算
java运算符 与(&).非(~).或(|).异或(^) 最近看HashMap源码,遇到了这样一段代码: 1 static final int hash(Object key) { 2 i ...
- C++中位运算
简介 1 位逻辑运算符: & (位 “与”) and ----------------- 2个都为1 才是1-----------0^0 = 0 , 0^1 = 0, 1^0 = 0 ...
- C语言中的运算和运算符
一.运算符的优先级和结合性 1,优先级 运算符一览表中,运算符越靠上,优先级越高. 2,结合性 假如用O表示需要两个操作数的双目运算符,那么对于表达式aObOc: 左结合运算符会将表达式解释为 (a ...
随机推荐
- C# 自定义类动态追加属性
利用Dynamic,需要.net4.0以上的支持 var dg = rel.ResultDocuments.FirstOrDefault()["dg"].AsBsonArray.G ...
- day2模块初识别
sys_mod.py import sys print(sys.argv) #['C:/Users/Administrator/desktop/s17/day2/sys_mod.py'] 打印脚本的绝 ...
- linux6下源码安装mysql5.6
概述:CentOS 6.4下通过yum安装的MySQL是5.1版的,比较老,所以就想通过源代码安装高版本的5.6.14.正文:一:卸载旧版本使用下面的命令检查是否安装有MySQL Serverrpm ...
- Codeforces Round #551 (Div. 2) A-E
A. Serval and Bus 算出每辆车会在什么时候上车, 取min即可 #include<cstdio> #include<algorithm> #include< ...
- 时间的转化 js
php 和java是不一样的 PHP 需要先乘1000 java 不需要 因为PHP传过来的是十位数 java传过来是十三位数 function formatDate() { var now = n ...
- Java虚拟机-JVM各种参数配置大全详细
usr/local/jdk/bin/java -Dresin.home=/usr/local/resin -server -Xms1800M -Xmx1800M -Xmn300M -Xss512K ...
- laravel中消息通知功能
以laravel5.5为例子,这个功能laravel自带的有: 1.生成表文件的migration文件,再migrate一下在数据库里生成表.命令为:php artisan notifications ...
- 网络编程 tftp下载文件的编程
一.代码 操作码 功能 1 读请求,即下载 2 写请求,即上传 3 表示数据包,即DATA 4 确认码,即ACK 5 错误 from socket import * import struct s=s ...
- 解决idea创建Maven项目卡在running tmp archetypexxxtmp
打开IDEA settings 然后在VM Options内添加-DarchetypeCatalog=internal 运行参数
- Oracle,cast函数
cast(要转换的值 AS 转换的类型): 问题:' ' as FSubBillNo 若用此法 oracle 默认字段类型为char型 且字段长度度为输入空格的长度,会导致字符串 ...