📄 densematrix.cpp
字号:
#include <hk_math/vecmath.h>
#include <hk_math/densematrix.h>
#include <hk_math/vector_fpu/vector_fpu.h>
void hk_Dense_Matrix::mult_vector( hk_real *x_vector, hk_real *result_vector ) const
{
int i;
for(i=getNumRows()-1;i>=0;i--)
{
result_vector[i]=0.0f;
}
hk_real *start_column=&m_elt[m_lda*getNumCols()];
for(i=getNumRows()-1;i>=0;i--)
{
start_column-=m_lda;
hk_VecFPU::fpu_add_multiple_row(result_vector,start_column,x_vector[i],getNumCols(),HK_TRUE);
}
}
hk_Dynamic_Dense_Matrix::hk_Dynamic_Dense_Matrix(int r, int c)
: hk_Dense_Matrix( hk_allocate(hk_real, HK_NEXT_MULTIPLE_OF(4,c)*r, HK_MEMORY_CLASS_DENSE_VECTOR),
r,
c,
HK_NEXT_MULTIPLE_OF(4,c) )
{
}
hk_Dynamic_Dense_Matrix::~hk_Dynamic_Dense_Matrix()
{
hk_deallocate(hk_real, m_elt, HK_NEXT_MULTIPLE_OF(4,m_cols)*m_rows, HK_MEMORY_CLASS_DENSE_VECTOR);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -