SEARCH
TOOLBOX
LANGUAGES
Eigen

Eigen

From SOFAWiki

Jump to: navigation, search
Compiling SOFA with Eigen support in the public branch

About Eigen

Eigen is a linear algebra library written in C++.

Which components in SOFA use Eigen ?

Some specific components related to constraint resolution use Eigen. Note that it is not mandatory to use Eigen to have access to constraint resolution ! The following components become available when compiling with Eigen :

  • LMConstraintSolver
  • DistanceLMConstraint
  • DOFBlockerLMConstraint
  • FixedLMConstraint

Compilation instructions

  • Download Eigen : tested with version up to 3.03
  • extract it in the new directory $SOFA_DIR/extlibs/eigen
  • edit sofa.cfg
    • insert the following line inside the contains(DEFINES,SOFA_HAVE_EIGEN2) conditionnal block : INCLUDEPATH *= $$SOFA_DIR/extlibs/eigen/
  • edit your sofa-local.cfg
    • Uncomment DEFINES *= SOFA_HAVE_EIGEN2
  • regenerate the makefiles / visual studio projects.
  • rebuild SOFA.