[Libreoffice-commits] core.git: Branch 'aoo/trunk' - 2 commits - sccomp/source

Pedro Giffuni pfg at apache.org
Wed Sep 23 21:08:18 PDT 2015


 sccomp/source/solver/solver.cxx |    8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

New commits:
commit cbbf8c624fc12b1be4b3e10e22ce0fb93a5381c6
Author: Pedro Giffuni <pfg at apache.org>
Date:   Thu Sep 24 02:44:53 2015 +0000

    solver: up the default timeout to 120 seconds.
    
    When measuring time in seconds or minutes it is usually more
    human-friendly to use multiples of 60.

diff --git a/sccomp/source/solver/solver.cxx b/sccomp/source/solver/solver.cxx
index 6307e6e..ca4ce39 100644
--- a/sccomp/source/solver/solver.cxx
+++ b/sccomp/source/solver/solver.cxx
@@ -143,7 +143,7 @@ SolverComponent::SolverComponent( const uno::Reference<uno::XComponentContext>&
     mbMaximize( sal_True ),
     mbNonNegative( sal_False ),
     mbInteger( sal_False ),
-    mnTimeout( 100 ),
+    mnTimeout( 120 ),
     mnEpsilonLevel( 0 ),
     mbLimitBBDepth( sal_True ),
     mbSuccess( sal_False ),
commit 091a39192e48d4c6bce149550c5c6ee740bdedec
Author: Pedro Giffuni <pfg at apache.org>
Date:   Thu Sep 24 02:36:24 2015 +0000

    i124091 - Drop check for nonlinearity
    
    It appears the check for non-linearity is causing failures for cases that
    can be solved by CoinMP and other solvers. We don't really have a
    non-linear solver but it doesn't make sense to check for linearity here.
    
    Thanks to Ted Ralphs for pointing the exact code causing the failure.

diff --git a/sccomp/source/solver/solver.cxx b/sccomp/source/solver/solver.cxx
index 1eafae2..6307e6e 100644
--- a/sccomp/source/solver/solver.cxx
+++ b/sccomp/source/solver/solver.cxx
@@ -369,12 +369,6 @@ void SAL_CALL SolverComponent::solve() throw(uno::RuntimeException)
             double fInitial = aCellsIter->second.front();
             double fCoeff   = aCellsIter->second.back();       // last appended: coefficient for this variable
             double fTwo     = lcl_GetValue( mxDoc, aCellsIter->first );
-
-            bool bLinear = rtl::math::approxEqual( fTwo, fInitial + 2.0 * fCoeff ) ||
-                           rtl::math::approxEqual( fInitial, fTwo - 2.0 * fCoeff );
-            // second comparison is needed in case fTwo is zero
-            if ( !bLinear )
-                maStatus = lcl_GetResourceString( RID_ERROR_NONLINEAR );
         }
 
         lcl_SetValue( mxDoc, *aVarIter, 0.0 );      // set back to zero for examining next variable


More information about the Libreoffice-commits mailing list