use row major everywhere with Eigen
This commit is contained in:
parent
f0564c233e
commit
f8bae61095
6 changed files with 21 additions and 11 deletions
|
|
@ -163,8 +163,10 @@ public:
|
|||
{
|
||||
public:
|
||||
typedef typename EOT::AtomType AtomType;
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, 1> Vector;
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, Eigen::Dynamic> Matrix;
|
||||
// typedef typename edoNormalMulti<AtomType>::Vector Vector;
|
||||
// typedef typename edoNormalMulti<AtomType>::Matrix Matrix;
|
||||
typedef Eigen::Matrix< AtomType, 1, Eigen::Dynamic, Eigen::RowMajor> Vector;
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor> Matrix;
|
||||
|
||||
CovMatrix( const eoPop< EOT >& pop )
|
||||
{
|
||||
|
|
|
|||
|
|
@ -83,8 +83,8 @@ class edoNormalMulti : public edoDistrib< EOT >
|
|||
{
|
||||
public:
|
||||
typedef typename EOT::AtomType AtomType;
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, 1> Vector; // Note: by default, Eigen is column-major
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, Eigen::Dynamic> Matrix;
|
||||
typedef Eigen::Matrix< AtomType, 1, Eigen::Dynamic, Eigen::RowMajor> Vector;
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor> Matrix;
|
||||
|
||||
edoNormalMulti(
|
||||
const Vector & mean,
|
||||
|
|
|
|||
|
|
@ -57,11 +57,13 @@ class edoNormalMultiCenter : public edoModifierMass< edoNormalMulti< EOT > >
|
|||
{
|
||||
public:
|
||||
typedef typename EOT::AtomType AtomType;
|
||||
// typedef typename edoNormalMulti<AtomType>::Vector Vector;
|
||||
typedef Eigen::Matrix< AtomType, 1, Eigen::Dynamic, Eigen::RowMajor> Vector;
|
||||
|
||||
void operator() ( edoNormalMulti< EOT >& distrib, EOT& mass )
|
||||
{
|
||||
assert( distrib.size() == mass.innerSize() );
|
||||
Eigen::Matrix< AtomType, Eigen::Dynamic, 1 > mean( mass );
|
||||
Vector mean( mass );
|
||||
distrib.mean() = mean;
|
||||
}
|
||||
};
|
||||
|
|
|
|||
|
|
@ -96,8 +96,10 @@ class edoSamplerNormalMulti : public edoSampler< EOD >
|
|||
{
|
||||
public:
|
||||
typedef typename EOT::AtomType AtomType;
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, 1> Vector;
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, Eigen::Dynamic> Matrix;
|
||||
// typedef typename edoNormalMulti<AtomType>::Vector Vector;
|
||||
// typedef typename edoNormalMulti<AtomType>::Matrix Matrix;
|
||||
typedef Eigen::Matrix< AtomType, 1, Eigen::Dynamic, Eigen::RowMajor> Vector;
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor> Matrix;
|
||||
|
||||
edoSamplerNormalMulti( edoRepairer<EOT> & repairer )
|
||||
: edoSampler< EOD >( repairer)
|
||||
|
|
|
|||
|
|
@ -48,8 +48,10 @@ typedef EOT::AtomType AtomType;
|
|||
#else
|
||||
#ifdef WITH_EIGEN
|
||||
#include <Eigen/Dense>
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, 1> Vector;
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, Eigen::Dynamic> Matrix;
|
||||
// typedef typename edoNormalMulti<AtomType>::Vector Vector;
|
||||
// typedef typename edoNormalMulti<AtomType>::Matrix Matrix;
|
||||
typedef Eigen::Matrix< AtomType, 1, Eigen::Dynamic, Eigen::RowMajor> Vector;
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor> Matrix;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -53,8 +53,10 @@ typedef EOT::AtomType AtomType;
|
|||
#else
|
||||
#ifdef WITH_EIGEN
|
||||
#include <Eigen/Dense>
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, 1> Vector;
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, Eigen::Dynamic> Matrix;
|
||||
// typedef typename edoNormalMulti<AtomType>::Vector Vector;
|
||||
// typedef typename edoNormalMulti<AtomType>::Matrix Matrix;
|
||||
typedef Eigen::Matrix< AtomType, 1, Eigen::Dynamic, Eigen::RowMajor> Vector;
|
||||
typedef Eigen::Matrix< AtomType, Eigen::Dynamic, Eigen::Dynamic, Eigen::RowMajor> Matrix;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue