本文整理汇总了C++中QMat::toDataConst方法的典型用法代码示例。如果您正苦于以下问题:C++ QMat::toDataConst方法的具体用法?C++ QMat::toDataConst怎么用?C++ QMat::toDataConst使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QMat
的用法示例。
在下文中一共展示了QMat::toDataConst方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: toDataConst
/**
* \brief Matrix to matrix product operator; \f$ C = this * A \f$
*
* IPP coge (columnas, filas) en las llamadas
* @param A matrix factor for operation
* @return QMat New matrix result
*/
QMat QMat::operator * ( const QMat & A ) const
{
// printf("Operator *: (%d,%d) x (%d,%d)\n", rows, cols, A.rows, A.cols);
QMat C=zeros( rows, A.nCols() );
if ( cols != A.nRows())
{
QString ex= "QMat::operator* - a.cols!=b.rows";
throw ex;
}
else
{
#ifdef COMPILE_IPP
ippmMul_mm_32f ( toDataConst(), cols*sizeof ( T ), sizeof ( T ), cols, rows, A.toDataConst(), A.nCols() *sizeof ( T ), sizeof ( T ), A.nCols(), A.nRows(), C.toData(), C.nCols() *sizeof ( T ), sizeof ( T ) );
#else
for(int i=0;i<rows;i++)
{
for(int j=0;j<A.cols;j++)
{
C(i,j)=0;
for(int k=0;k<cols;k++)
{
C(i,j) += operator()(i,k)*A(k,j);
}
// printf("%f ", C(i,j));
}
// printf("\n");
}
#endif
}
return C;
}
示例2: C
/**
* \brief Matrix Subtraction operator: \f$ C = this - A \f$
* @param A Matrix subtrahend
* @return QMat Operation result
*/
QMat QMat::operator- ( const QMat & A ) const
{
Q_ASSERT ( equalSize ( *this, A ));
QMat C ( rows,cols );
#ifdef COMPILE_IPP
ippmSub_mm_32f ( toDataConst(), cols*sizeof ( T ), sizeof ( T ), A.toDataConst(), cols*sizeof ( T ), sizeof ( T ), C.toData(), cols*sizeof ( T ), sizeof ( T ), cols, rows );
#else
for(int r=0; r<A.rows; r++)
for(int c=0; c<A.cols; c++)
C(r, c) = A(r,c) - operator()(r, c);
#endif
return C;
}