Skip to content

Commit

Permalink
Sketcher: SparseQR as default QR method
Browse files Browse the repository at this point in the history
=======================================

The SparseQR is set as default method. However, in accordance with the previous commit, only if a new enough Eigen library is present will SparseQR be executed.

If the library is old and SparseQR can not be reliably used, FC will automatically fall back to use DenseQR.

This ensures that users that have a new enough library > 3.2.2 will benefit from the performance increase, while the users that use older library will still have
the same performance as in legacy FC.
  • Loading branch information
abdullahtahiriyo authored and wwmayer committed Jun 24, 2015
1 parent ffaa0c8 commit 2a54fba
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 3 deletions.
2 changes: 1 addition & 1 deletion src/Mod/Sketcher/App/planegcs/GCS.cpp
Expand Up @@ -175,7 +175,7 @@ System::System()
maxIter(100), maxIterRedundant(100),
sketchSizeMultiplier(true), sketchSizeMultiplierRedundant(true),
convergence(1e-10), convergenceRedundant(1e-10),
qrAlgorithm(EigenDenseQR), debugMode(Minimal),
qrAlgorithm(EigenSparseQR), debugMode(Minimal),
LM_eps(1E-10), LM_eps1(1E-80), LM_tau(1E-3),
DL_tolg(1E-80), DL_tolx(1E-80), DL_tolf(1E-10),
LM_epsRedundant(1E-10), LM_eps1Redundant(1E-80), LM_tauRedundant(1E-3),
Expand Down
2 changes: 1 addition & 1 deletion src/Mod/Sketcher/Gui/TaskSketcherSolverAdvanced.cpp
Expand Up @@ -54,7 +54,7 @@
#define MAX_ITER 100
#define DEFAULT_SOLVER 2 // DL=2, LM=1, BFGS=0
#define DEFAULT_RSOLVER 2 // DL=2, LM=1, BFGS=0
#define DEFAULT_QRSOLVER 0 // DENSE=0, SPARSEQR=1
#define DEFAULT_QRSOLVER 1 // DENSE=0, SPARSEQR=1
#define QR_PIVOT_THRESHOLD 1E-13 // under this value a Jacobian value is regarded as zero
#define DEFAULT_SOLVER_DEBUG 1 // None=0, Minimal=1, IterationLevel=2
#define MAX_ITER_MULTIPLIER true
Expand Down
2 changes: 1 addition & 1 deletion src/Mod/Sketcher/Gui/TaskSketcherSolverAdvanced.ui
Expand Up @@ -245,7 +245,7 @@
<item>
<widget class="Gui::PrefComboBox" name="comboBoxQRMethod">
<property name="currentIndex">
<number>0</number>
<number>1</number>
</property>
<property name="prefEntry" stdset="0">
<cstring>QRMethod</cstring>
Expand Down

0 comments on commit 2a54fba

Please sign in to comment.