mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-08-08 09:49:03 +08:00
fix bug #524: Pardiso's parameter array does not have to be aligned!
This commit is contained in:
parent
138897cc06
commit
b3254c9af5
@ -108,6 +108,7 @@ class PardisoImpl
|
|||||||
typedef Matrix<Scalar,Dynamic,1> VectorType;
|
typedef Matrix<Scalar,Dynamic,1> VectorType;
|
||||||
typedef Matrix<Index, 1, MatrixType::ColsAtCompileTime> IntRowVectorType;
|
typedef Matrix<Index, 1, MatrixType::ColsAtCompileTime> IntRowVectorType;
|
||||||
typedef Matrix<Index, MatrixType::RowsAtCompileTime, 1> IntColVectorType;
|
typedef Matrix<Index, MatrixType::RowsAtCompileTime, 1> IntColVectorType;
|
||||||
|
typedef Array<Index,64,1,DontAlign> ParameterType;
|
||||||
enum {
|
enum {
|
||||||
ScalarIsComplex = NumTraits<Scalar>::IsComplex
|
ScalarIsComplex = NumTraits<Scalar>::IsComplex
|
||||||
};
|
};
|
||||||
@ -142,7 +143,7 @@ class PardisoImpl
|
|||||||
/** \warning for advanced usage only.
|
/** \warning for advanced usage only.
|
||||||
* \returns a reference to the parameter array controlling PARDISO.
|
* \returns a reference to the parameter array controlling PARDISO.
|
||||||
* See the PARDISO manual to know how to use it. */
|
* See the PARDISO manual to know how to use it. */
|
||||||
Array<Index,64,1>& pardisoParameterArray()
|
ParameterType& pardisoParameterArray()
|
||||||
{
|
{
|
||||||
return m_iparm;
|
return m_iparm;
|
||||||
}
|
}
|
||||||
@ -295,7 +296,7 @@ class PardisoImpl
|
|||||||
bool m_initialized, m_analysisIsOk, m_factorizationIsOk;
|
bool m_initialized, m_analysisIsOk, m_factorizationIsOk;
|
||||||
Index m_type, m_msglvl;
|
Index m_type, m_msglvl;
|
||||||
mutable void *m_pt[64];
|
mutable void *m_pt[64];
|
||||||
mutable Array<Index,64,1> m_iparm;
|
mutable ParameterType m_iparm;
|
||||||
mutable IntColVectorType m_perm;
|
mutable IntColVectorType m_perm;
|
||||||
Index m_size;
|
Index m_size;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user