Commit Graph

134 Commits

Author SHA1 Message Date
Bernd Gärtner 907223b777 First Boost 1.33.1 workaround (maybe others will be necessary as well) 2008-09-29 09:03:20 +00:00
Bernd Gärtner 081110184f - some homemade iterators replaced by boost variants 2008-07-31 20:55:38 +00:00
Bernd Gärtner 8612c935be - fixes to cope with removal of CGAL's funtional.h 2008-07-31 18:56:21 +00:00
Sylvain Pion 79864c0c8e Remove Arity_tag. 2008-07-22 12:29:01 +00:00
Sylvain Pion 2eb0d8f9e9 certainly() -> possibly(). 2008-07-14 11:16:41 +00:00
Sylvain Pion 9d7a609ff2 Make assertions trigger an error only for *certain* conditions (using CGAL::certainly()).
This is useful for interval arithmetic code.
(replay of r44002 with the header order hopefully fixed)
2008-07-10 21:49:17 +00:00
Sylvain Pion 2b4ebf01f7 Undo r44002 as it's buggy 2008-07-06 20:47:29 +00:00
Sylvain Pion 514a17ad4f Improve the interaction of assertions and interval computations.
Things like "CGAL_assertion(denominator != 0)" produced assertion failures for no gain.
So now, the assertion is triggered only if the condition is certain, using CGAL::certainly().
That is, change the following in all assertion files :
  ((EX)?(static_cast<void>(0)): ::CGAL::assertion_fail( # EX , __FILE__, __LINE__))
to :
  (CGAL::certainly(EX)?(static_cast<void>(0)): ::CGAL::assertion_fail( # EX , __FILE__, __LINE__))
2008-07-06 17:05:47 +00:00
Sylvain Pion d49e006c53 Remove default argument "0" to calls to assertion_fail() et al,
as the default is now the empty string "".
It should fix the problem that we have lost the assertion messages
(seeing "what():  basic_string::_S_construct NULL not valid" instead),
for packages that use package-specific assertion macros.
2007-12-21 21:58:27 +00:00
Bernd Gärtner b0cbc0defa - cosmetic output fix 2007-05-05 07:57:23 +00:00
Bernd Gärtner 5424f71850 - minor error/warning fixes 2007-05-01 15:55:12 +00:00
Bernd Gärtner a6aba7c40a - fixed file location in include
- renamed ...validation_flag() to ...auto_validation()
2007-04-30 10:16:02 +00:00
Bernd Gärtner 25a03549d4 - copyright years brought up-to-date
- (outdated) emails of everbody except me removed
2007-04-27 00:34:44 +00:00
Bernd Gärtner d7a098033c - added another set of random tests (with double input, and using
a different model)
- fixed memory leak in QP_solution
- refactored validity checks a little
2007-04-26 23:56:44 +00:00
Bernd Gärtner a9be004d5a - added the interface validation methods to examples,
and referred to them from the doc (+ typo fix)
2007-04-25 01:33:32 +00:00
Bernd Gärtner 0bc86dea9d - moved certificate check out of the solver and into solution
- at the same time, we don't check anymore by default, but there
  is an option to trigger a self-check
2007-04-25 01:19:38 +00:00
Bernd Gärtner 060f6bf342 - minor refactoring; test_solver now also calls the interface
methods (solve...) instead of the QP_solver directly
2007-04-23 09:12:34 +00:00
Bernd Gärtner 6a79d4f45d - some more manual fixes
- made partial pricing also work for high constraint/variable ratio (needs to
  be properly tested)
- added QSCORPIO as interesting additional example 
- switched to quotient output in iteration log to avoid nans
- removed filter_failure example (after all, this particular example
  was just an artifact of the bad to_double() routine of Gmpzf that I
  fixed earlier
2007-04-20 12:31:57 +00:00
Bernd Gärtner 49ca59733c - user manual:
- added remark about possible filter failures
    - added example where they occur, and how to fix them
    - added benchmark section
- ref manual:
    - documented pricing strategies
- code:
    - made partial_filtered_dantzig the default for double input
    - added timer output to test_solver
2007-04-19 14:36:10 +00:00
Bernd Gärtner 4f4a806c0f - tested name <-> index mapping in mps reader
- fix in handling names in ranges section
2007-04-18 19:23:21 +00:00
Bernd Gärtner 7f04b33cdb - minor cleanup:
- non-debugged vout in pricing strategies removed
        - debug.h adapted to react to other things than D_NDEBUG as well
2007-04-17 20:52:11 +00:00
Bernd Gärtner 558c2e3c1e - Ron's fixes
- some debug output tweaking
2007-04-17 17:54:17 +00:00
Bernd Gärtner 159679d480 - QP_options put into manual, with cycling example 2007-04-15 19:36:07 +00:00
Bernd Gärtner 4559516680 - user manual rewritten and almost complete
- added class Quadratic_program_options to customize behavior, still
  need to document it
2007-04-15 16:49:56 +00:00
Bernd Gärtner 8bf9b65886 - QP_status -> Quadratic_program_status 2007-04-14 18:32:37 +00:00
Bernd Gärtner ce80f2f8db - _from_pointer models removed (they are useless as well)
- fixed and added more examples, and referred to them from manual
2007-04-14 15:39:55 +00:00
Bernd Gärtner 890c5d0fed - in Quadratic_program model, default bounds can now be configured,
and there are some tests that cover this
2007-04-13 16:12:08 +00:00
Bernd Gärtner 6ba585a7b1 - forgot that file (it's only a changed comment) 2007-04-12 14:51:36 +00:00
Bernd Gärtner 62f0ca4473 - manual:
- added QP_solution page (the fat one)
	- added package description and image
	- some minor revisions
- code:
	- renamed some QP_solution methods to make them more accessible
2007-04-12 14:50:16 +00:00
Bernd Gärtner 4214cf44b4 - simplification: some redundant models removed 2007-04-12 07:48:28 +00:00
Bernd Gärtner a2712eb429 - various refactorings:
- mps reader is now derived from a model that allows to set
	  up and manipulate a program entrywise
	- old copying models removed
        - free models removed (they are utterly useless)
        - a() -> get_a() etc.
        - the solver can now solve problems with no variables :-)
- manual:
        - added maker pages
        - adapted to above changes
2007-04-11 15:48:19 +00:00
Bernd Gärtner 8e41774983 - added performance note to solving functions doc
- changed unbounded direction w so that x + tw is the unbounded ray
- aded certificate iterators to QP_solution
- added example programs that demonstrate the certificates
- fixed examples so that 2D instead of D is given
2007-04-03 14:54:38 +00:00
Bernd Gärtner 4cbbedf839 - missing const added
- first_qp fixed to provide 2D instead of D
2007-04-03 10:05:43 +00:00
Bernd Gärtner a971b7db8a - sparse mps readers added
- minor fix in print routine
- output for mps instances deleted (it's replaced by the general template)
2007-04-03 07:14:06 +00:00
Bernd Gärtner 9f5e838e6f - added a farkas-Lemma proof of infeasibility
- added test with random small QP's
- fixed some bugs discovered by this:
   - output routine for programs is now printing symmetric D
   - internal comparison routine is now ignoring bound value if it
     was specified as infinite
   - fixed sign error in subrotuine of ratio_test
   - removed constant term from consideration in phase I
2007-04-02 10:01:50 +00:00
Andreas Fabri c7e831b9ac Removed unused arguments 2007-03-27 07:49:33 +00:00
Bernd Gärtner 290d0e7e1f - fixed all occurrences of qp_A[i][j], qp_D[i][j] (qp_A[i], qp_D[i] are in
general only convertible to the appropriate iterator types, and so the
  above will not work. The fix is to use (*(qp_A + i))[j]
2007-03-23 10:57:07 +00:00
Bernd Gärtner 51b3b30f78 - copying models now have default/copy-constructors and assignment ops
- test (and fixed) access to upper-diagonal entries in D
- MPS read/write disagreement now only triggers warning (small differences
  may be ok if floating point numbers are used)
2007-03-23 10:20:03 +00:00
Bernd Gärtner 8a7a6a899e - internal qp_D now represents 2*D 2007-03-22 13:45:07 +00:00
Bernd Gärtner a82ea6875e Is_in_standard_form -> Is_nonnegative (like in interface) 2007-03-22 10:10:57 +00:00
Bernd Gärtner 00657e993b - is_valid made private and integrated into QP_solver constructor (it may use
QP data that are no longer available after the constructor call)
- fixed copying models to only copy entries of D on/below the diagonal
- fixed are_equal_qp function to only access entries of D on/below the diagonal
2007-03-22 09:41:04 +00:00
Bernd Gärtner 5d9a94c31a - uninitialized variable fix 2007-03-20 10:38:39 +00:00
Bernd Gärtner 48b08c927a - added new models that copy the data and integrated them into testsuite 2007-03-19 17:02:50 +00:00
Bernd Gärtner 3992a4840c - integrated MPS print function into test suite
- cleaned up QP_functions by putting internal stuff into nested namespace
2007-03-19 14:46:14 +00:00
Bernd Gärtner e527fa4c0a - U_iterator::value_type -> iterator_traits<U_iterator>:value_type
- various warnings fixed
2007-03-17 23:18:53 +00:00
Michael Hemmer 854ea80b4b rm use of CGALi::Is_field etc
replaced by use of Algebraic_category tag
2007-03-12 17:34:47 +00:00
Bernd Gärtner 1475ebf022 functor moved from dependent classes to QP_solver 2007-03-05 14:44:06 +00:00
Bernd Gärtner 6b5aaed1a0 - fixed "changes meaning" error 2007-03-01 19:26:54 +00:00
Bernd Gärtner d03d1ccaf4 - avoid division by zero gcd in Quotient_normalizer 2007-03-01 16:47:18 +00:00
Bernd Gärtner f3d98caccb - some further warning fixes 2007-02-23 09:08:12 +00:00