Fix Matrix mInfo to column and slice with default value 1.
This commit is contained in:
@@ -212,10 +212,15 @@ namespace Aurora{
|
|||||||
|
|
||||||
namespace Aurora {
|
namespace Aurora {
|
||||||
Matrix::Matrix(std::shared_ptr<double> aData, std::vector<int> aInfo, ValueType aValueType)
|
Matrix::Matrix(std::shared_ptr<double> aData, std::vector<int> aInfo, ValueType aValueType)
|
||||||
: mData(aData)
|
: mValueType(aValueType)
|
||||||
|
, mData(aData)
|
||||||
, mInfo(aInfo)
|
, mInfo(aInfo)
|
||||||
, mValueType(aValueType)
|
|
||||||
{
|
{
|
||||||
|
size_t infoSize = aInfo.size();
|
||||||
|
for(;infoSize<3;++infoSize)
|
||||||
|
{
|
||||||
|
aInfo.push_back(1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Matrix::Matrix(const Matrix::MatrixSlice& slice) {
|
Matrix::Matrix(const Matrix::MatrixSlice& slice) {
|
||||||
@@ -230,7 +235,15 @@ namespace Aurora {
|
|||||||
}
|
}
|
||||||
|
|
||||||
int Matrix::getDims() const {
|
int Matrix::getDims() const {
|
||||||
return mInfo.size();
|
if(mInfo[2] > 1)
|
||||||
|
{
|
||||||
|
return 3;
|
||||||
|
}
|
||||||
|
if(mInfo[1] > 1)
|
||||||
|
{
|
||||||
|
return 2;
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
double *Matrix::getData() const {
|
double *Matrix::getData() const {
|
||||||
@@ -405,8 +418,8 @@ namespace Aurora {
|
|||||||
|
|
||||||
void Matrix::printf() {
|
void Matrix::printf() {
|
||||||
|
|
||||||
int k_count = getDimSize(2)==0?1:getDimSize(2);
|
int k_count = getDimSize(2);
|
||||||
int j_count = getDimSize(1)==0?1:getDimSize(1);
|
int j_count = getDimSize(1);
|
||||||
int complexstep = 1;
|
int complexstep = 1;
|
||||||
const char* mark = "+";
|
const char* mark = "+";
|
||||||
if(mValueType == Complex)
|
if(mValueType == Complex)
|
||||||
|
|||||||
Reference in New Issue
Block a user