\ No newline at end of file
diff --git a/ODElibrary/AbstractSolver.h b/ODElibrary/AbstractSolver.h
index 9e5f8e6..f74a0ef 100644
--- a/ODElibrary/AbstractSolver.h
+++ b/ODElibrary/AbstractSolver.h
@@ -1,53 +1,53 @@
//
// Created by lionel on 25.11.19.
//
#ifndef ODELIBRARY_ABSTRACTSOLVER_H
#define ODELIBRARY_ABSTRACTSOLVER_H
#include
#include "LinearCoefficients.h"
#include
/** This is an abstract class for the solver of differential equations
*
*/
class AbstractSolver {
protected:
// variables for the setting
double stepSize;
double initialTime;
double finalTime;
int dimension; // dimension of x
int nSteps;
Eigen::VectorXd initialValue;
// variables for the rhs of the equation
Eigen::MatrixXd A;
Eigen::VectorXd (*g)(double t); // function g depending on time
public:
AbstractSolver();
virtual ~AbstractSolver();
void setInitialTime(double t0);
void setFinalTime(double tf);
void setStepSize(double h);
void setNumberOfSteps(int n);
void setSpaceDimension(int dim);
void setRightHandSide(Eigen::MatrixXd & rhsMatrix, Eigen::VectorXd (*g_)(double t));
double getInitialTime() const;
double getFinalTime() const;
double getStepSize() const;
int getSpaceDimension() const;
- virtual void solve() = 0;
+ virtual void solve(std::ostream &stream) = 0;
};
#endif //ODELIBRARY_ABSTRACTSOLVER_H
diff --git a/ODElibrary/AdamsBashforth.cpp b/ODElibrary/AdamsBashforth.cpp
index 05af25c..3751e9e 100644
--- a/ODElibrary/AdamsBashforth.cpp
+++ b/ODElibrary/AdamsBashforth.cpp
@@ -1,30 +1,41 @@
#include "AdamsBashforth.h"
//#include "MultistepAbstractSolver.h"
AdamsBashforth::AdamsBashforth(double t0,double tf,int n,int steps,Eigen::VectorXd& y0):MultistepAbstractSolver(t0,tf,n,steps,y0){
/**\brief
* According to the number of steps n desired, the coefficients defining the algorithm are stored in bCoefficients.
*/
switch(steps){
///When steps=1, Adams Bashforth multistep algorithm actually coincides with Forward Euler.
case 1:
bCoefficients[0]=1;
break;
case 2:
bCoefficients[0]=1.5,bCoefficients[1]=-0.5;
break;
case 3:
- bCoefficients[0]=(double)23/12,bCoefficients[1]=-(double)16/12,bCoefficients[2]=(double)5/12;
+ bCoefficients[0]=(double)23./12.,bCoefficients[1]=-(double)16./12.,bCoefficients[2]=(double)5/12;
break;
case 4:
- bCoefficients[0]=(double)55/24,bCoefficients[1]=-(double)59/24,bCoefficients[2]=(double)37/24,bCoefficients[3]=-(double)9/24;
+ bCoefficients[0]=(double)55./24.,bCoefficients[1]=-(double)59./24.,bCoefficients[2]=(double)37/24,bCoefficients[3]=-(double)9/24;
break;
default:
std::cerr<<"The number of steps has to be an integer between 1 and 4."<<"\n";
}
/**\brief
* The missing intial values are computed, with a suitable one step algorithm.
*/
computeMissingInitialValues(steps-1);
}
+
+void AdamsBashforth::solve(std::ostream &stream){
+ double tNext=initialTime+stepSize*stepsAlgo;
+ for (int step=0;step
#include
#include
#include
#include "MultistepAbstractSolver.h"
class AdamsBashforth:public MultistepAbstractSolver{
public:
AdamsBashforth(double t0,double tf,int n,int steps,Eigen::VectorXd& y0);
+ void solve(std::ostream &stream) override;
};
#endif
\ No newline at end of file
diff --git a/ODElibrary/MultistepAbstractSolver.cpp b/ODElibrary/MultistepAbstractSolver.cpp
index c69bab9..1209f94 100644
--- a/ODElibrary/MultistepAbstractSolver.cpp
+++ b/ODElibrary/MultistepAbstractSolver.cpp
@@ -1,54 +1,68 @@
#include "MultistepAbstractSolver.h"
MultistepAbstractSolver::MultistepAbstractSolver(double t0,double tf,int n,int steps,Eigen::VectorXd& y0) {
initialTime = t0;
finalTime = tf;
nSteps = n;
+ stepSize = (tf - t0) / n;
+ stepsAlgo=steps;
Eigen::VectorXd v(steps);
bCoefficients = v;
initialValue = y0;
- stepSize = (tf - t0) / n;
yPreviousSteps.push_back(&y0); ///is it right? ask.
};
void MultistepAbstractSolver::computeMissingInitialValues(int orderRK){
/**
* This vector stores the coefficients needed by RK to compute the next value of y, yNext.
* Such value is computed as yNext=yPrev+stepSize*(aCoeff[0]*k1+aCoeff[1]*k2+...), where
* the ks correspond to evaluations of the rhs at some points of the interval (tPrev,tNext).
* These points are some additional parameters of the Runge-Kutta method, chosen in order to guarantee
* the desired convergence order.
* In order to make the remaining part of the code more compact, the vector aCoeff is always created with length 3,
* as if needed for the highest order R-K method allowed by the code. Lower order R-K methods may require fewer entries.
* As a consequence, some of the entries are equal to zero for lower order methods. This procedure implies
* a few unneeded computations but allows a more compact and easily extendable.
*/
Eigen::Vector3d aCoeff;
switch(orderRK){
case 1:
aCoeff[0]=1, aCoeff[1]=0, aCoeff[2]=0;
break;
case 2:
aCoeff[0]=0.5, aCoeff[1]=0.5, aCoeff[2]=0;
break;
case 3:
aCoeff[0]=(double)1/6, aCoeff[1]=(double)4/6, aCoeff[2]=(double)1/6;
break;
default:
std::cerr<<"Order orderRK required too high. Try using a multistep method with fewer steps."<<"\n";
}
auto yPrev=initialValue;
- double tPrev=initialTime;
+ auto tPrev=initialTime;
+ /**
+ * \brief A pointer to the value of the rhs function at initialTime is stored in rhsPreviousSteps.
+ */
+ Eigen::VectorXd rhsStart=A*initialValue+g(initialTime);
+ rhsPreviousSteps.push_back(&rhsStart);
+ /**
+ * \brief Vectors k2, k3 define the updates of the higher order R-K methods.
+ */
Eigen::VectorXd k2(dimension),k3(dimension);
k2.setZero(), k3.setZero();
for (int i=0;i1)
- auto k2=A*(yPrev+0.5*stepSize*k1)+g(tPrev+0.5*stepSize); /// With this choice, the order two method corresponds to Euler's modified method.
+ auto k2=A*(yPrev+0.5*stepSize*k1)+g(tPrev+0.5*stepSize); // With this choice, the order two method corresponds to Euler's modified method.
if(orderRK>2)
- auto k3=A*(yPrev+stepSize*(-1*k1+2*k2))+g(tPrev+stepSize);/// This choice for k3 allows us to "recycle" k1, k2, obtaining a 3rd oredr RK.
- Eigen::VectorXd yNext=yPrev+stepSize*(aCoeff[0]*k1+aCoeff[1]*k2+aCoeff[2]*k3); ///why 'auto' does not work? ->check if it is right
- yPreviousSteps.push_back(&yNext);
+ auto k3=A*(yPrev+stepSize*(-1*k1+2*k2))+g(tPrev+stepSize);// This choice for k3 allows us to "recycle" k1, k2, obtaining a 3rd oredr RK.
+ Eigen::VectorXd yNext=yPrev+stepSize*(aCoeff[0]*k1+aCoeff[1]*k2+aCoeff[2]*k3); // why 'auto' does not work? ->check if it is right
+ /**
+ * \brief The value of the rhs function at tNext=tPrev+stepSize is stored in rhsPreviousSteps.
+ */
+ Eigen::VectorXd rhsNext=A*yNext+g(tPrev+stepSize);
+ rhsPreviousSteps.push_back(&rhsNext);
+ //yPreviousSteps.push_back(&yNext);
tPrev+=stepSize;
}
}
\ No newline at end of file
diff --git a/ODElibrary/MultistepAbstractSolver.h b/ODElibrary/MultistepAbstractSolver.h
index b27731c..7d1c477 100644
--- a/ODElibrary/MultistepAbstractSolver.h
+++ b/ODElibrary/MultistepAbstractSolver.h
@@ -1,62 +1,71 @@
/**
* This abstract class is daughter of the AbstractSolver class.
* It is designed to be the mother class to its daughter classes AdamsBashforth, AdamsMoulton, BDF.
* These classes will not be abstract and are the one that will be instanciated to solve ODE systems.
*/
#ifndef ODELIBRARY_MULTISTEPABSTRACTSOLVER_H
#define ODELIBRARY_MULTISTEPABSTRACTSOLVER_H
#include
#include
#include
#include
#include "AbstractSolver.h"
class MultistepAbstractSolver:public AbstractSolver{
protected:
+ /**
+ * This variable refers to the number of steps that characterizes the multistep algorithm.
+ */
+ int stepsAlgo;
/**
* bCoefficients stores the coefficients that determine the multistep algorithm. The coefficients depend on the
* specific method chosen to solve the equation.
*/
Eigen::VectorXd bCoefficients;
/**
- * This vector stores only the values of y needed to perform the next integration step.
+ * This vector stores pointers to the values of y needed to perform the next integration step.
* The size of this vector depends on the number of steps that characterizes the multistep algorithm.
*/
std::vector yPreviousSteps;
+ /**
+ * This vector stores pointers to the values of the rhs function needed to perform the next integration step.
+ * Its size depends on the number of steps of the algorithm.
+ */
+ std::vector rhsPreviousSteps;
/**
* This vector stores the values of the vectorial function g(t) needed to perform the next integration step.
* The size depends on the number of steps that characterizes the multistep algorithm.
*/
std::vector gPreviousSteps;
public:
MultistepAbstractSolver(double t0,double tf,int n,int steps,Eigen::VectorXd& y0);
/**
* A multistep method of n steps needs n initial values to start its iterative process. Since only one initial value is usually
* provided, i.e. the initial value corresponding to t=t0, the other missing values need to be computed. Such task
* can be performed applying a one step method with convergence rate equal to the convergence rate of the multistep method minus 1.
* By doing so, the numerical solution to the ODE system provided by the algorithm is guaranteed to converge to the true solution
* with the convergence rate characterising the multistep method. In the context of this project, a suitable Runge-Kutta method is used.
* @param orderRK: order of the RK method to be applied to compute missing initial values.
*/
void computeMissingInitialValues(int orderRK);
- virtual void solve() = 0;
+ virtual void solve(std::ostream &stream) = 0;
};
#endif
\ No newline at end of file
diff --git a/cmake-build-debug/CMakeFiles/pscsproject.dir/main.cpp.o b/cmake-build-debug/CMakeFiles/pscsproject.dir/main.cpp.o
index 763e828..e7aced1 100644
Binary files a/cmake-build-debug/CMakeFiles/pscsproject.dir/main.cpp.o and b/cmake-build-debug/CMakeFiles/pscsproject.dir/main.cpp.o differ
diff --git a/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/AbstractSolver.cpp.o b/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/AbstractSolver.cpp.o
index e5757d8..0788f65 100644
Binary files a/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/AbstractSolver.cpp.o and b/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/AbstractSolver.cpp.o differ
diff --git a/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/AdamsBashforth.cpp.o b/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/AdamsBashforth.cpp.o
index 0d15962..cfacc9d 100644
Binary files a/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/AdamsBashforth.cpp.o and b/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/AdamsBashforth.cpp.o differ
diff --git a/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/CXX.includecache b/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/CXX.includecache
index c2ae03b..fb9a210 100644
--- a/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/CXX.includecache
+++ b/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/CXX.includecache
@@ -1,1084 +1,1074 @@
#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<"]([^">]+)([">])
#IncludeRegexScan: ^.*$
#IncludeRegexComplain: ^$
#IncludeRegexTransform:
-/Users/DaniH/pcscproject/ODElibrary/AbstractSolver.cpp
-cassert
--
-AbstractSolver.h
-/Users/DaniH/pcscproject/ODElibrary/AbstractSolver.h
-
/Users/DaniH/pcscproject/ODElibrary/AbstractSolver.h
vector
-
LinearCoefficients.h
/Users/DaniH/pcscproject/ODElibrary/LinearCoefficients.h
Eigen/Dense
-
/Users/DaniH/pcscproject/ODElibrary/AdamsBashforth.cpp
AdamsBashforth.h
/Users/DaniH/pcscproject/ODElibrary/AdamsBashforth.h
/Users/DaniH/pcscproject/ODElibrary/AdamsBashforth.h
iostream
-
Eigen/Dense
-
list
-
vector
-
MultistepAbstractSolver.h
/Users/DaniH/pcscproject/ODElibrary/MultistepAbstractSolver.h
/Users/DaniH/pcscproject/ODElibrary/LinearCoefficients.h
-/Users/DaniH/pcscproject/ODElibrary/MultistepAbstractSolver.cpp
-MultistepAbstractSolver.h
-/Users/DaniH/pcscproject/ODElibrary/MultistepAbstractSolver.h
-
/Users/DaniH/pcscproject/ODElibrary/MultistepAbstractSolver.h
iostream
-
Eigen/Dense
-
list
-
vector
-
AbstractSolver.h
/Users/DaniH/pcscproject/ODElibrary/AbstractSolver.h
/usr/local/include/eigen3/Eigen/Cholesky
Core
/usr/local/include/eigen3/Eigen/Core
src/Core/util/DisableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
src/Cholesky/LLT.h
/usr/local/include/eigen3/Eigen/src/Cholesky/LLT.h
src/Cholesky/LDLT.h
/usr/local/include/eigen3/Eigen/src/Cholesky/LDLT.h
src/misc/lapacke.h
/usr/local/include/eigen3/Eigen/src/misc/lapacke.h
src/Cholesky/LLT_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/Cholesky/LLT_LAPACKE.h
src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/Core
src/Core/util/DisableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
math_functions.hpp
-
new
-
src/Core/util/Macros.h
/usr/local/include/eigen3/Eigen/src/Core/util/Macros.h
complex
-
src/Core/util/MKL_support.h
/usr/local/include/eigen3/Eigen/src/Core/util/MKL_support.h
malloc.h
-
immintrin.h
-
mmintrin.h
-
emmintrin.h
-
xmmintrin.h
-
pmmintrin.h
-
tmmintrin.h
-
smmintrin.h
-
nmmintrin.h
-
immintrin.h
-
altivec.h
-
altivec.h
-
arm_neon.h
-
vecintrin.h
-
vector_types.h
-
host_defines.h
-
cuda_fp16.h
-
omp.h
-
cerrno
-
cstddef
-
cstdlib
-
cmath
-
cassert
-
functional
-
iosfwd
-
cstring
-
string
-
limits
-
climits
-
algorithm
-
type_traits
-
iostream
-
intrin.h
-
src/Core/util/Constants.h
/usr/local/include/eigen3/Eigen/src/Core/util/Constants.h
src/Core/util/Meta.h
/usr/local/include/eigen3/Eigen/src/Core/util/Meta.h
src/Core/util/ForwardDeclarations.h
/usr/local/include/eigen3/Eigen/src/Core/util/ForwardDeclarations.h
src/Core/util/StaticAssert.h
/usr/local/include/eigen3/Eigen/src/Core/util/StaticAssert.h
src/Core/util/XprHelper.h
/usr/local/include/eigen3/Eigen/src/Core/util/XprHelper.h
src/Core/util/Memory.h
/usr/local/include/eigen3/Eigen/src/Core/util/Memory.h
src/Core/NumTraits.h
/usr/local/include/eigen3/Eigen/src/Core/NumTraits.h
src/Core/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/MathFunctions.h
src/Core/GenericPacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/GenericPacketMath.h
src/Core/MathFunctionsImpl.h
/usr/local/include/eigen3/Eigen/src/Core/MathFunctionsImpl.h
src/Core/arch/SSE/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h
src/Core/arch/AVX/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AVX/PacketMath.h
src/Core/arch/AVX512/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AVX512/PacketMath.h
src/Core/arch/AVX512/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AVX512/MathFunctions.h
src/Core/arch/SSE/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h
src/Core/arch/SSE/Complex.h
/usr/local/include/eigen3/Eigen/src/Core/arch/SSE/Complex.h
src/Core/arch/SSE/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h
src/Core/arch/AVX/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AVX/PacketMath.h
src/Core/arch/AVX/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AVX/MathFunctions.h
src/Core/arch/AVX/Complex.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AVX/Complex.h
src/Core/arch/AVX/TypeCasting.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AVX/TypeCasting.h
src/Core/arch/SSE/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h
src/Core/arch/SSE/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h
src/Core/arch/SSE/Complex.h
/usr/local/include/eigen3/Eigen/src/Core/arch/SSE/Complex.h
src/Core/arch/SSE/TypeCasting.h
/usr/local/include/eigen3/Eigen/src/Core/arch/SSE/TypeCasting.h
src/Core/arch/AltiVec/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h
src/Core/arch/AltiVec/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AltiVec/MathFunctions.h
src/Core/arch/AltiVec/Complex.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AltiVec/Complex.h
src/Core/arch/NEON/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h
src/Core/arch/NEON/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/NEON/MathFunctions.h
src/Core/arch/NEON/Complex.h
/usr/local/include/eigen3/Eigen/src/Core/arch/NEON/Complex.h
src/Core/arch/ZVector/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/ZVector/PacketMath.h
src/Core/arch/ZVector/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/ZVector/MathFunctions.h
src/Core/arch/ZVector/Complex.h
/usr/local/include/eigen3/Eigen/src/Core/arch/ZVector/Complex.h
src/Core/arch/CUDA/Half.h
/usr/local/include/eigen3/Eigen/src/Core/arch/CUDA/Half.h
src/Core/arch/CUDA/PacketMathHalf.h
/usr/local/include/eigen3/Eigen/src/Core/arch/CUDA/PacketMathHalf.h
src/Core/arch/CUDA/TypeCasting.h
/usr/local/include/eigen3/Eigen/src/Core/arch/CUDA/TypeCasting.h
src/Core/arch/CUDA/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/CUDA/PacketMath.h
src/Core/arch/CUDA/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/CUDA/MathFunctions.h
src/Core/arch/Default/Settings.h
/usr/local/include/eigen3/Eigen/src/Core/arch/Default/Settings.h
src/Core/functors/TernaryFunctors.h
/usr/local/include/eigen3/Eigen/src/Core/functors/TernaryFunctors.h
src/Core/functors/BinaryFunctors.h
/usr/local/include/eigen3/Eigen/src/Core/functors/BinaryFunctors.h
src/Core/functors/UnaryFunctors.h
/usr/local/include/eigen3/Eigen/src/Core/functors/UnaryFunctors.h
src/Core/functors/NullaryFunctors.h
/usr/local/include/eigen3/Eigen/src/Core/functors/NullaryFunctors.h
src/Core/functors/StlFunctors.h
/usr/local/include/eigen3/Eigen/src/Core/functors/StlFunctors.h
src/Core/functors/AssignmentFunctors.h
/usr/local/include/eigen3/Eigen/src/Core/functors/AssignmentFunctors.h
src/Core/arch/CUDA/Complex.h
/usr/local/include/eigen3/Eigen/src/Core/arch/CUDA/Complex.h
src/Core/IO.h
/usr/local/include/eigen3/Eigen/src/Core/IO.h
src/Core/DenseCoeffsBase.h
/usr/local/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h
src/Core/DenseBase.h
/usr/local/include/eigen3/Eigen/src/Core/DenseBase.h
src/Core/MatrixBase.h
/usr/local/include/eigen3/Eigen/src/Core/MatrixBase.h
src/Core/EigenBase.h
/usr/local/include/eigen3/Eigen/src/Core/EigenBase.h
src/Core/Product.h
/usr/local/include/eigen3/Eigen/src/Core/Product.h
src/Core/CoreEvaluators.h
/usr/local/include/eigen3/Eigen/src/Core/CoreEvaluators.h
src/Core/AssignEvaluator.h
/usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h
src/Core/Assign.h
/usr/local/include/eigen3/Eigen/src/Core/Assign.h
src/Core/ArrayBase.h
/usr/local/include/eigen3/Eigen/src/Core/ArrayBase.h
src/Core/util/BlasUtil.h
/usr/local/include/eigen3/Eigen/src/Core/util/BlasUtil.h
src/Core/DenseStorage.h
/usr/local/include/eigen3/Eigen/src/Core/DenseStorage.h
src/Core/NestByValue.h
/usr/local/include/eigen3/Eigen/src/Core/NestByValue.h
src/Core/ReturnByValue.h
/usr/local/include/eigen3/Eigen/src/Core/ReturnByValue.h
src/Core/NoAlias.h
/usr/local/include/eigen3/Eigen/src/Core/NoAlias.h
src/Core/PlainObjectBase.h
/usr/local/include/eigen3/Eigen/src/Core/PlainObjectBase.h
src/Core/Matrix.h
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h
src/Core/Array.h
/usr/local/include/eigen3/Eigen/src/Core/Array.h
src/Core/CwiseTernaryOp.h
/usr/local/include/eigen3/Eigen/src/Core/CwiseTernaryOp.h
src/Core/CwiseBinaryOp.h
/usr/local/include/eigen3/Eigen/src/Core/CwiseBinaryOp.h
src/Core/CwiseUnaryOp.h
/usr/local/include/eigen3/Eigen/src/Core/CwiseUnaryOp.h
src/Core/CwiseNullaryOp.h
/usr/local/include/eigen3/Eigen/src/Core/CwiseNullaryOp.h
src/Core/CwiseUnaryView.h
/usr/local/include/eigen3/Eigen/src/Core/CwiseUnaryView.h
src/Core/SelfCwiseBinaryOp.h
/usr/local/include/eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h
src/Core/Dot.h
/usr/local/include/eigen3/Eigen/src/Core/Dot.h
src/Core/StableNorm.h
/usr/local/include/eigen3/Eigen/src/Core/StableNorm.h
src/Core/Stride.h
/usr/local/include/eigen3/Eigen/src/Core/Stride.h
src/Core/MapBase.h
/usr/local/include/eigen3/Eigen/src/Core/MapBase.h
src/Core/Map.h
/usr/local/include/eigen3/Eigen/src/Core/Map.h
src/Core/Ref.h
/usr/local/include/eigen3/Eigen/src/Core/Ref.h
src/Core/Block.h
/usr/local/include/eigen3/Eigen/src/Core/Block.h
src/Core/VectorBlock.h
/usr/local/include/eigen3/Eigen/src/Core/VectorBlock.h
src/Core/Transpose.h
/usr/local/include/eigen3/Eigen/src/Core/Transpose.h
src/Core/DiagonalMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/DiagonalMatrix.h
src/Core/Diagonal.h
/usr/local/include/eigen3/Eigen/src/Core/Diagonal.h
src/Core/DiagonalProduct.h
/usr/local/include/eigen3/Eigen/src/Core/DiagonalProduct.h
src/Core/Redux.h
/usr/local/include/eigen3/Eigen/src/Core/Redux.h
src/Core/Visitor.h
/usr/local/include/eigen3/Eigen/src/Core/Visitor.h
src/Core/Fuzzy.h
/usr/local/include/eigen3/Eigen/src/Core/Fuzzy.h
src/Core/Swap.h
/usr/local/include/eigen3/Eigen/src/Core/Swap.h
src/Core/CommaInitializer.h
/usr/local/include/eigen3/Eigen/src/Core/CommaInitializer.h
src/Core/GeneralProduct.h
/usr/local/include/eigen3/Eigen/src/Core/GeneralProduct.h
src/Core/Solve.h
/usr/local/include/eigen3/Eigen/src/Core/Solve.h
src/Core/Inverse.h
/usr/local/include/eigen3/Eigen/src/Core/Inverse.h
src/Core/SolverBase.h
/usr/local/include/eigen3/Eigen/src/Core/SolverBase.h
src/Core/PermutationMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/PermutationMatrix.h
src/Core/Transpositions.h
/usr/local/include/eigen3/Eigen/src/Core/Transpositions.h
src/Core/TriangularMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/TriangularMatrix.h
src/Core/SelfAdjointView.h
/usr/local/include/eigen3/Eigen/src/Core/SelfAdjointView.h
src/Core/products/GeneralBlockPanelKernel.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h
src/Core/products/Parallelizer.h
/usr/local/include/eigen3/Eigen/src/Core/products/Parallelizer.h
src/Core/ProductEvaluators.h
/usr/local/include/eigen3/Eigen/src/Core/ProductEvaluators.h
src/Core/products/GeneralMatrixVector.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector.h
src/Core/products/GeneralMatrixMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h
src/Core/SolveTriangular.h
/usr/local/include/eigen3/Eigen/src/Core/SolveTriangular.h
src/Core/products/GeneralMatrixMatrixTriangular.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h
src/Core/products/SelfadjointMatrixVector.h
/usr/local/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h
src/Core/products/SelfadjointMatrixMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h
src/Core/products/SelfadjointProduct.h
/usr/local/include/eigen3/Eigen/src/Core/products/SelfadjointProduct.h
src/Core/products/SelfadjointRank2Update.h
/usr/local/include/eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h
src/Core/products/TriangularMatrixVector.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector.h
src/Core/products/TriangularMatrixMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h
src/Core/products/TriangularSolverMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h
src/Core/products/TriangularSolverVector.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularSolverVector.h
src/Core/BandMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/BandMatrix.h
src/Core/CoreIterators.h
/usr/local/include/eigen3/Eigen/src/Core/CoreIterators.h
src/Core/ConditionEstimator.h
/usr/local/include/eigen3/Eigen/src/Core/ConditionEstimator.h
src/Core/BooleanRedux.h
/usr/local/include/eigen3/Eigen/src/Core/BooleanRedux.h
src/Core/Select.h
/usr/local/include/eigen3/Eigen/src/Core/Select.h
src/Core/VectorwiseOp.h
/usr/local/include/eigen3/Eigen/src/Core/VectorwiseOp.h
src/Core/Random.h
/usr/local/include/eigen3/Eigen/src/Core/Random.h
src/Core/Replicate.h
/usr/local/include/eigen3/Eigen/src/Core/Replicate.h
src/Core/Reverse.h
/usr/local/include/eigen3/Eigen/src/Core/Reverse.h
src/Core/ArrayWrapper.h
/usr/local/include/eigen3/Eigen/src/Core/ArrayWrapper.h
src/Core/products/GeneralMatrixMatrix_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h
src/Core/products/GeneralMatrixVector_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h
src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h
src/Core/products/SelfadjointMatrixMatrix_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h
src/Core/products/SelfadjointMatrixVector_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h
src/Core/products/TriangularMatrixMatrix_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h
src/Core/products/TriangularMatrixVector_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h
src/Core/products/TriangularSolverMatrix_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h
src/Core/Assign_MKL.h
/usr/local/include/eigen3/Eigen/src/Core/Assign_MKL.h
src/Core/GlobalFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/GlobalFunctions.h
src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/Dense
Core
/usr/local/include/eigen3/Eigen/Core
LU
/usr/local/include/eigen3/Eigen/LU
Cholesky
/usr/local/include/eigen3/Eigen/Cholesky
QR
/usr/local/include/eigen3/Eigen/QR
SVD
/usr/local/include/eigen3/Eigen/SVD
Geometry
/usr/local/include/eigen3/Eigen/Geometry
Eigenvalues
/usr/local/include/eigen3/Eigen/Eigenvalues
/usr/local/include/eigen3/Eigen/Eigenvalues
Core
/usr/local/include/eigen3/Eigen/Core
src/Core/util/DisableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
Cholesky
/usr/local/include/eigen3/Eigen/Cholesky
Jacobi
/usr/local/include/eigen3/Eigen/Jacobi
Householder
/usr/local/include/eigen3/Eigen/Householder
LU
/usr/local/include/eigen3/Eigen/LU
Geometry
/usr/local/include/eigen3/Eigen/Geometry
src/misc/RealSvd2x2.h
/usr/local/include/eigen3/Eigen/src/misc/RealSvd2x2.h
src/Eigenvalues/Tridiagonalization.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h
src/Eigenvalues/RealSchur.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/RealSchur.h
src/Eigenvalues/EigenSolver.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/EigenSolver.h
src/Eigenvalues/SelfAdjointEigenSolver.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h
src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h
src/Eigenvalues/HessenbergDecomposition.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h
src/Eigenvalues/ComplexSchur.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur.h
src/Eigenvalues/ComplexEigenSolver.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h
src/Eigenvalues/RealQZ.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/RealQZ.h
src/Eigenvalues/GeneralizedEigenSolver.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h
src/Eigenvalues/MatrixBaseEigenvalues.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h
src/misc/lapacke.h
/usr/local/include/eigen3/Eigen/src/misc/lapacke.h
src/Eigenvalues/RealSchur_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h
src/Eigenvalues/ComplexSchur_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h
src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h
src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/Geometry
Core
/usr/local/include/eigen3/Eigen/Core
src/Core/util/DisableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
SVD
/usr/local/include/eigen3/Eigen/SVD
LU
/usr/local/include/eigen3/Eigen/LU
limits
-
src/Geometry/OrthoMethods.h
/usr/local/include/eigen3/Eigen/src/Geometry/OrthoMethods.h
src/Geometry/EulerAngles.h
/usr/local/include/eigen3/Eigen/src/Geometry/EulerAngles.h
src/Geometry/Homogeneous.h
/usr/local/include/eigen3/Eigen/src/Geometry/Homogeneous.h
src/Geometry/RotationBase.h
/usr/local/include/eigen3/Eigen/src/Geometry/RotationBase.h
src/Geometry/Rotation2D.h
/usr/local/include/eigen3/Eigen/src/Geometry/Rotation2D.h
src/Geometry/Quaternion.h
/usr/local/include/eigen3/Eigen/src/Geometry/Quaternion.h
src/Geometry/AngleAxis.h
/usr/local/include/eigen3/Eigen/src/Geometry/AngleAxis.h
src/Geometry/Transform.h
/usr/local/include/eigen3/Eigen/src/Geometry/Transform.h
src/Geometry/Translation.h
/usr/local/include/eigen3/Eigen/src/Geometry/Translation.h
src/Geometry/Scaling.h
/usr/local/include/eigen3/Eigen/src/Geometry/Scaling.h
src/Geometry/Hyperplane.h
/usr/local/include/eigen3/Eigen/src/Geometry/Hyperplane.h
src/Geometry/ParametrizedLine.h
/usr/local/include/eigen3/Eigen/src/Geometry/ParametrizedLine.h
src/Geometry/AlignedBox.h
/usr/local/include/eigen3/Eigen/src/Geometry/AlignedBox.h
src/Geometry/Umeyama.h
/usr/local/include/eigen3/Eigen/src/Geometry/Umeyama.h
src/Geometry/arch/Geometry_SSE.h
/usr/local/include/eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h
src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/Householder
Core
/usr/local/include/eigen3/Eigen/Core
src/Core/util/DisableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
src/Householder/Householder.h
/usr/local/include/eigen3/Eigen/src/Householder/Householder.h
src/Householder/HouseholderSequence.h
/usr/local/include/eigen3/Eigen/src/Householder/HouseholderSequence.h
src/Householder/BlockHouseholder.h
/usr/local/include/eigen3/Eigen/src/Householder/BlockHouseholder.h
src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/Jacobi
Core
/usr/local/include/eigen3/Eigen/Core
src/Core/util/DisableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
src/Jacobi/Jacobi.h
/usr/local/include/eigen3/Eigen/src/Jacobi/Jacobi.h
src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/LU
Core
/usr/local/include/eigen3/Eigen/Core
src/Core/util/DisableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
src/misc/Kernel.h
/usr/local/include/eigen3/Eigen/src/misc/Kernel.h
src/misc/Image.h
/usr/local/include/eigen3/Eigen/src/misc/Image.h
src/LU/FullPivLU.h
/usr/local/include/eigen3/Eigen/src/LU/FullPivLU.h
src/LU/PartialPivLU.h
/usr/local/include/eigen3/Eigen/src/LU/PartialPivLU.h
src/misc/lapacke.h
/usr/local/include/eigen3/Eigen/src/misc/lapacke.h
src/LU/PartialPivLU_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/LU/PartialPivLU_LAPACKE.h
src/LU/Determinant.h
/usr/local/include/eigen3/Eigen/src/LU/Determinant.h
src/LU/InverseImpl.h
/usr/local/include/eigen3/Eigen/src/LU/InverseImpl.h
src/LU/arch/Inverse_SSE.h
/usr/local/include/eigen3/Eigen/src/LU/arch/Inverse_SSE.h
src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/QR
Core
/usr/local/include/eigen3/Eigen/Core
src/Core/util/DisableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
Cholesky
/usr/local/include/eigen3/Eigen/Cholesky
Jacobi
/usr/local/include/eigen3/Eigen/Jacobi
Householder
/usr/local/include/eigen3/Eigen/Householder
src/QR/HouseholderQR.h
/usr/local/include/eigen3/Eigen/src/QR/HouseholderQR.h
src/QR/FullPivHouseholderQR.h
/usr/local/include/eigen3/Eigen/src/QR/FullPivHouseholderQR.h
src/QR/ColPivHouseholderQR.h
/usr/local/include/eigen3/Eigen/src/QR/ColPivHouseholderQR.h
src/QR/CompleteOrthogonalDecomposition.h
/usr/local/include/eigen3/Eigen/src/QR/CompleteOrthogonalDecomposition.h
src/misc/lapacke.h
/usr/local/include/eigen3/Eigen/src/misc/lapacke.h
src/QR/HouseholderQR_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/QR/HouseholderQR_LAPACKE.h
src/QR/ColPivHouseholderQR_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h
src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/SVD
QR
/usr/local/include/eigen3/Eigen/QR
Householder
/usr/local/include/eigen3/Eigen/Householder
Jacobi
/usr/local/include/eigen3/Eigen/Jacobi
src/Core/util/DisableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
src/misc/RealSvd2x2.h
/usr/local/include/eigen3/Eigen/src/misc/RealSvd2x2.h
src/SVD/UpperBidiagonalization.h
/usr/local/include/eigen3/Eigen/src/SVD/UpperBidiagonalization.h
src/SVD/SVDBase.h
/usr/local/include/eigen3/Eigen/src/SVD/SVDBase.h
src/SVD/JacobiSVD.h
/usr/local/include/eigen3/Eigen/src/SVD/JacobiSVD.h
src/SVD/BDCSVD.h
/usr/local/include/eigen3/Eigen/src/SVD/BDCSVD.h
src/misc/lapacke.h
/usr/local/include/eigen3/Eigen/src/misc/lapacke.h
src/SVD/JacobiSVD_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/SVD/JacobiSVD_LAPACKE.h
src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Cholesky/LDLT.h
/usr/local/include/eigen3/Eigen/src/Cholesky/LLT.h
/usr/local/include/eigen3/Eigen/src/Cholesky/LLT_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/Core/Array.h
/usr/local/include/eigen3/Eigen/src/Core/ArrayBase.h
../plugins/CommonCwiseUnaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h
../plugins/MatrixCwiseUnaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h
../plugins/ArrayCwiseUnaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h
../plugins/CommonCwiseBinaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h
../plugins/MatrixCwiseBinaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h
../plugins/ArrayCwiseBinaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h
/usr/local/include/eigen3/Eigen/src/Core/ArrayWrapper.h
/usr/local/include/eigen3/Eigen/src/Core/Assign.h
/usr/local/include/eigen3/Eigen/src/Core/AssignEvaluator.h
/usr/local/include/eigen3/Eigen/src/Core/Assign_MKL.h
/usr/local/include/eigen3/Eigen/src/Core/BandMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/Block.h
/usr/local/include/eigen3/Eigen/src/Core/BooleanRedux.h
/usr/local/include/eigen3/Eigen/src/Core/CommaInitializer.h
/usr/local/include/eigen3/Eigen/src/Core/ConditionEstimator.h
/usr/local/include/eigen3/Eigen/src/Core/CoreEvaluators.h
/usr/local/include/eigen3/Eigen/src/Core/CoreIterators.h
/usr/local/include/eigen3/Eigen/src/Core/CwiseBinaryOp.h
/usr/local/include/eigen3/Eigen/src/Core/CwiseNullaryOp.h
/usr/local/include/eigen3/Eigen/src/Core/CwiseTernaryOp.h
/usr/local/include/eigen3/Eigen/src/Core/CwiseUnaryOp.h
/usr/local/include/eigen3/Eigen/src/Core/CwiseUnaryView.h
/usr/local/include/eigen3/Eigen/src/Core/DenseBase.h
../plugins/BlockMethods.h
/usr/local/include/eigen3/Eigen/src/plugins/BlockMethods.h
/usr/local/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h
/usr/local/include/eigen3/Eigen/src/Core/DenseStorage.h
/usr/local/include/eigen3/Eigen/src/Core/Diagonal.h
/usr/local/include/eigen3/Eigen/src/Core/DiagonalMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/DiagonalProduct.h
/usr/local/include/eigen3/Eigen/src/Core/Dot.h
/usr/local/include/eigen3/Eigen/src/Core/EigenBase.h
/usr/local/include/eigen3/Eigen/src/Core/Fuzzy.h
/usr/local/include/eigen3/Eigen/src/Core/GeneralProduct.h
/usr/local/include/eigen3/Eigen/src/Core/GenericPacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/GlobalFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/IO.h
/usr/local/include/eigen3/Eigen/src/Core/Inverse.h
/usr/local/include/eigen3/Eigen/src/Core/Map.h
/usr/local/include/eigen3/Eigen/src/Core/MapBase.h
/usr/local/include/eigen3/Eigen/src/Core/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/MathFunctionsImpl.h
/usr/local/include/eigen3/Eigen/src/Core/Matrix.h
/usr/local/include/eigen3/Eigen/src/Core/MatrixBase.h
../plugins/CommonCwiseUnaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h
../plugins/CommonCwiseBinaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h
../plugins/MatrixCwiseUnaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h
../plugins/MatrixCwiseBinaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h
/usr/local/include/eigen3/Eigen/src/Core/NestByValue.h
/usr/local/include/eigen3/Eigen/src/Core/NoAlias.h
/usr/local/include/eigen3/Eigen/src/Core/NumTraits.h
/usr/local/include/eigen3/Eigen/src/Core/PermutationMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/PlainObjectBase.h
/usr/local/include/eigen3/Eigen/src/Core/Product.h
/usr/local/include/eigen3/Eigen/src/Core/ProductEvaluators.h
/usr/local/include/eigen3/Eigen/src/Core/Random.h
/usr/local/include/eigen3/Eigen/src/Core/Redux.h
/usr/local/include/eigen3/Eigen/src/Core/Ref.h
/usr/local/include/eigen3/Eigen/src/Core/Replicate.h
/usr/local/include/eigen3/Eigen/src/Core/ReturnByValue.h
/usr/local/include/eigen3/Eigen/src/Core/Reverse.h
/usr/local/include/eigen3/Eigen/src/Core/Select.h
/usr/local/include/eigen3/Eigen/src/Core/SelfAdjointView.h
/usr/local/include/eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h
/usr/local/include/eigen3/Eigen/src/Core/Solve.h
/usr/local/include/eigen3/Eigen/src/Core/SolveTriangular.h
/usr/local/include/eigen3/Eigen/src/Core/SolverBase.h
/usr/local/include/eigen3/Eigen/src/Core/StableNorm.h
/usr/local/include/eigen3/Eigen/src/Core/Stride.h
/usr/local/include/eigen3/Eigen/src/Core/Swap.h
/usr/local/include/eigen3/Eigen/src/Core/Transpose.h
/usr/local/include/eigen3/Eigen/src/Core/Transpositions.h
/usr/local/include/eigen3/Eigen/src/Core/TriangularMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/VectorBlock.h
/usr/local/include/eigen3/Eigen/src/Core/VectorwiseOp.h
/usr/local/include/eigen3/Eigen/src/Core/Visitor.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AVX/Complex.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AVX/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AVX/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AVX/TypeCasting.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AVX512/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AVX512/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AltiVec/Complex.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AltiVec/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/CUDA/Complex.h
/usr/local/include/eigen3/Eigen/src/Core/arch/CUDA/Half.h
/usr/local/include/eigen3/Eigen/src/Core/arch/CUDA/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/CUDA/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/CUDA/PacketMathHalf.h
/usr/local/include/eigen3/Eigen/src/Core/arch/CUDA/TypeCasting.h
/usr/local/include/eigen3/Eigen/src/Core/arch/Default/Settings.h
/usr/local/include/eigen3/Eigen/src/Core/arch/NEON/Complex.h
/usr/local/include/eigen3/Eigen/src/Core/arch/NEON/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/SSE/Complex.h
/usr/local/include/eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/SSE/PacketMath.h
/usr/local/include/eigen3/Eigen/src/Core/arch/SSE/TypeCasting.h
/usr/local/include/eigen3/Eigen/src/Core/arch/ZVector/Complex.h
/usr/local/include/eigen3/Eigen/src/Core/arch/ZVector/MathFunctions.h
/usr/local/include/eigen3/Eigen/src/Core/arch/ZVector/PacketMath.h
stdint.h
-
/usr/local/include/eigen3/Eigen/src/Core/functors/AssignmentFunctors.h
/usr/local/include/eigen3/Eigen/src/Core/functors/BinaryFunctors.h
/usr/local/include/eigen3/Eigen/src/Core/functors/NullaryFunctors.h
/usr/local/include/eigen3/Eigen/src/Core/functors/StlFunctors.h
/usr/local/include/eigen3/Eigen/src/Core/functors/TernaryFunctors.h
/usr/local/include/eigen3/Eigen/src/Core/functors/UnaryFunctors.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector.h
/usr/local/include/eigen3/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/Parallelizer.h
/usr/local/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h
/usr/local/include/eigen3/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/SelfadjointProduct.h
/usr/local/include/eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h
/usr/local/include/eigen3/Eigen/src/Core/products/TriangularSolverVector.h
/usr/local/include/eigen3/Eigen/src/Core/util/BlasUtil.h
/usr/local/include/eigen3/Eigen/src/Core/util/Constants.h
/usr/local/include/eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/ForwardDeclarations.h
/usr/local/include/eigen3/Eigen/src/Core/util/MKL_support.h
mkl.h
-
../../misc/blas.h
/usr/local/include/eigen3/Eigen/src/misc/blas.h
/usr/local/include/eigen3/Eigen/src/Core/util/Macros.h
cstdlib
-
iostream
-
/usr/local/include/eigen3/Eigen/src/Core/util/Memory.h
/usr/local/include/eigen3/Eigen/src/Core/util/Meta.h
cfloat
-
math_constants.h
-
cstdint
-
/usr/local/include/eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
/usr/local/include/eigen3/Eigen/src/Core/util/StaticAssert.h
/usr/local/include/eigen3/Eigen/src/Core/util/XprHelper.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h
./ComplexSchur.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur.h
./HessenbergDecomposition.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/EigenSolver.h
./RealSchur.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/RealSchur.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h
./RealQZ.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/RealQZ.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h
./Tridiagonalization.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/RealQZ.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/RealSchur.h
./HessenbergDecomposition.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h
./Tridiagonalization.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h
/usr/local/include/eigen3/Eigen/src/Geometry/AlignedBox.h
/usr/local/include/eigen3/Eigen/src/Geometry/AngleAxis.h
/usr/local/include/eigen3/Eigen/src/Geometry/EulerAngles.h
/usr/local/include/eigen3/Eigen/src/Geometry/Homogeneous.h
/usr/local/include/eigen3/Eigen/src/Geometry/Hyperplane.h
/usr/local/include/eigen3/Eigen/src/Geometry/OrthoMethods.h
/usr/local/include/eigen3/Eigen/src/Geometry/ParametrizedLine.h
/usr/local/include/eigen3/Eigen/src/Geometry/Quaternion.h
/usr/local/include/eigen3/Eigen/src/Geometry/Rotation2D.h
/usr/local/include/eigen3/Eigen/src/Geometry/RotationBase.h
/usr/local/include/eigen3/Eigen/src/Geometry/Scaling.h
/usr/local/include/eigen3/Eigen/src/Geometry/Transform.h
/usr/local/include/eigen3/Eigen/src/Geometry/Translation.h
/usr/local/include/eigen3/Eigen/src/Geometry/Umeyama.h
/usr/local/include/eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h
/usr/local/include/eigen3/Eigen/src/Householder/BlockHouseholder.h
/usr/local/include/eigen3/Eigen/src/Householder/Householder.h
/usr/local/include/eigen3/Eigen/src/Householder/HouseholderSequence.h
/usr/local/include/eigen3/Eigen/src/Jacobi/Jacobi.h
/usr/local/include/eigen3/Eigen/src/LU/Determinant.h
/usr/local/include/eigen3/Eigen/src/LU/FullPivLU.h
/usr/local/include/eigen3/Eigen/src/LU/InverseImpl.h
/usr/local/include/eigen3/Eigen/src/LU/PartialPivLU.h
/usr/local/include/eigen3/Eigen/src/LU/PartialPivLU_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/LU/arch/Inverse_SSE.h
/usr/local/include/eigen3/Eigen/src/QR/ColPivHouseholderQR.h
/usr/local/include/eigen3/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/QR/CompleteOrthogonalDecomposition.h
/usr/local/include/eigen3/Eigen/src/QR/FullPivHouseholderQR.h
/usr/local/include/eigen3/Eigen/src/QR/HouseholderQR.h
/usr/local/include/eigen3/Eigen/src/QR/HouseholderQR_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/SVD/BDCSVD.h
/usr/local/include/eigen3/Eigen/src/SVD/JacobiSVD.h
/usr/local/include/eigen3/Eigen/src/SVD/JacobiSVD_LAPACKE.h
/usr/local/include/eigen3/Eigen/src/SVD/SVDBase.h
/usr/local/include/eigen3/Eigen/src/SVD/UpperBidiagonalization.h
/usr/local/include/eigen3/Eigen/src/misc/Image.h
/usr/local/include/eigen3/Eigen/src/misc/Kernel.h
/usr/local/include/eigen3/Eigen/src/misc/RealSvd2x2.h
/usr/local/include/eigen3/Eigen/src/misc/blas.h
/usr/local/include/eigen3/Eigen/src/misc/lapacke.h
lapacke_config.h
/usr/local/include/eigen3/Eigen/src/misc/lapacke_config.h
stdlib.h
-
complex.h
-
complex.h
-
lapacke_mangling.h
/usr/local/include/eigen3/Eigen/src/misc/lapacke_mangling.h
/usr/local/include/eigen3/Eigen/src/misc/lapacke_mangling.h
/usr/local/include/eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/BlockMethods.h
/usr/local/include/eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h
/usr/local/include/eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h
diff --git a/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/MultistepAbstractSolver.cpp.o b/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/MultistepAbstractSolver.cpp.o
index aaa4d37..fdc6376 100644
Binary files a/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/MultistepAbstractSolver.cpp.o and b/cmake-build-debug/ODElibrary/CMakeFiles/ODElibrary.dir/MultistepAbstractSolver.cpp.o differ
diff --git a/cmake-build-debug/ODElibrary/libODElibrary.a b/cmake-build-debug/ODElibrary/libODElibrary.a
index 46547aa..6692ab0 100644
Binary files a/cmake-build-debug/ODElibrary/libODElibrary.a and b/cmake-build-debug/ODElibrary/libODElibrary.a differ
diff --git a/cmake-build-debug/pscsproject b/cmake-build-debug/pscsproject
index 347547b..90a8006 100755
Binary files a/cmake-build-debug/pscsproject and b/cmake-build-debug/pscsproject differ
diff --git a/main.cpp b/main.cpp
index 020b596..9438852 100644
--- a/main.cpp
+++ b/main.cpp
@@ -1,56 +1,62 @@
//
// Created by lionel on 25.11.19.
//
#include
#include
#include
/**
* This function will correspond to the rhs function g(t), where:
* @param t time at which it has to be computed
* @param dim dimension of the ODE system
* @param result reference to a Eigen::VectorXd where g(t) will be stored
* As it is now designed, it computes the values for a single time. This choice is motivated
* by the fact that we do not need to store the values of g(t) for all time steps, since we do
* not need them again once the integration step which concerns them has been performed.
* (do you agree?)
*/
void function(double t,int dim, Eigen::VectorXd& result);
int main(){
std::cout << "hello world" << std::endl;
Eigen::MatrixXd m(2,2);
Eigen::VectorXd v(2);
Eigen::Vector4d w;
v[0]=1.0,v[1]=2.0;
m(0,0)=1.0, m(0,1)=2.0,m(1,0)=1.5, m(1,1)=4.0;
w[0]=0,w[1]=1,w[2]=2,w[3]=3;
Eigen::VectorXd s(2);
function(2,2,s);
- std::cout< vec;
vec.push_back(&v);
vec.push_back(&s);
+ //std::cout<<*vec[0]<<"\n";
+
+ vec.erase(vec.begin());
std::cout<<*vec[0]<<"\n";
+ //std::cout<<*(*vec.begin())<<"\n";
+
+
auto k=m*v;
- std::cout<