Commit Graph
42 Commits
Author SHA1 Message Date
Tzanio 05125e19d5 Removed a space 2020-03-09 15:36:41 -07:00
Tzanio ca55ef0217 The release number for mfem-4.1 is LLNL-CODE-806117 2020-03-02 17:18:46 -08:00
Tzanio 2caa222edf A number of changes to switch the code from LGPL-2.1 to BSD-3:
- Updated LICENSE, README, CHANGELOG and CONTRIBUTING.md
- Removed COPYRIGHT, added NOTICE
- Updated the headers in all source files, makefiles, etc.
2020-02-23 11:16:46 -08:00
Tzanio fda21fe590 Final adjustments 2019-12-27 13:23:01 -08:00
Tzanio 5b684c3f79 make style 2019-08-21 16:44:27 -07:00
Vladimir Tomov 54797b3574 Changed some Get..() methods to return constant pointers, styling. 2019-08-20 16:31:32 -07:00
Vladimir Tomov e5df36424f Fixed a build error in debug mode. 2019-03-27 17:23:52 -07:00
Vladimir Tomov 998b58e65d Hid the public pointers in OptimizationProblem. 2019-03-21 18:16:26 -07:00
Vladimir Tomov a6ab978d8e Const declarations. 2019-01-08 15:16:44 -08:00
Vladimir Tomov a64f853136 Added hiop's rel_tol success status. 2018-12-27 18:07:30 -08:00
Vladimir Tomov 56bb088863 Added nonlinear inequalities for the hiop examples. 2018-12-20 19:31:49 -08:00
Vladimir Tomov 5a92f8bd37 Test with nonlinear inequalities in ex9. 2018-12-06 17:39:45 -08:00
Vladimir Tomov 1889bc574a Set max_iter and extract final_iter. 2018-11-14 19:03:33 -08:00
Vladimir Tomov c6e3dc871b Minor edits, added TODO items. 2018-11-14 18:50:57 -08:00
Vladimir Tomov e8ab3cc5b3 Moved the reduction of the objective function. 2018-11-14 18:19:50 -08:00
Vladimir Tomov ead4fea5f1 Implemented the parallel example. 2018-11-14 17:27:30 -08:00
Cosmin G. Petra ccf2d3986a marked constraints for re-evaluation also in the objective and grad evaluations
most of the time, 'new_x' comes as 'true' in 'eval_f' (but not always)
2018-10-15 12:53:04 -07:00
Vladimir Tomov c7f41cd462 Updated the serial example. 2018-10-12 17:51:23 -07:00
Vladimir Tomov 95898f1ae6 Cleanup, minor edits. 2018-09-27 15:01:13 -07:00
Vladimir Tomov 7fa59c288e Moved get_vecdistr_info in the cpp, updated comments,
fixed communication error.
2018-09-27 13:48:30 -07:00
Vladimir Tomov adf040b0a1 Cleanup of things left from the old interface. 2018-09-26 13:22:22 -07:00
Vladimir Tomov 7b1d388729 Updated eval_Jac_cons. 2018-09-26 13:12:04 -07:00
Vladimir Tomov dd73f81b3c Updated get_starting_point. 2018-09-26 11:58:17 -07:00
Vladimir Tomov c26b737cf0 Defined eval_cons through the new interface. 2018-09-24 15:16:30 -07:00
Vladimir Tomov d047e98606 Simplified the OptimizationProblem interface for the objective.
Redefined some of the adapter methods to use the new interface.
2018-09-24 13:05:15 -07:00
Vladimir Tomov b8380b1979 Added links between OptimizationProblem and the various
solvers and adapters.
Renamed HiopProblemSpec to HiopOptimizationProblem.
2018-09-19 15:22:01 -07:00
Vladimir Tomov 811887c907 Added OptimizationProblem to OptimizationSolver, updated the
SLBQP interface.
2018-09-18 14:18:54 -07:00
Vladimir Tomov 00f365e0a7 Introduced class OptimizationProblem that defines MFEM's interface
for specifying optimization problems.
2018-09-17 12:40:42 -07:00
Ben Chung Yee 269b2c9f62 Use verbosity level of Optimizer base class, tweak comment 2018-09-11 09:04:41 -07:00
Ben Chung Yee c4ea03fc63 Use OptimizationSolver's attribute to set tolerance
OptimizationSolver::SetAbsTol can be used to set this tolerance.
2018-09-11 09:04:41 -07:00
Ben Chung Yee 95d1e5bf94 Provide a means of setting the initial guess
To set the initial guess, set use_initial_x_value to be true and provide
it via the output x vector in Mult()
2018-09-11 09:04:40 -07:00
Ben Chung Yee e56c5f67aa Code formatting/spacing changes
Enforce 3 indents everywhere, limit to 80 chars per line
2018-09-11 09:04:40 -07:00
Ben Chung Yee f4857335f3 Implement generalized Hiop SLBQP solver
We can now solve general quadratic objective functions.
Examples are modified to test this generalized solver.
2018-09-11 09:04:34 -07:00
Ben Chung Yee 45fb2e04ab Create shell for more general HiopNlpOptimizer class
This new class will be able to handle a general quadratic objective
function.  The old class is renamed HiopNlpOptimizer_Simple and
inherits from the more general new HiopNlpOptimizer class.
2018-09-11 09:04:12 -07:00
Cosmin G. Petra 0b324b8130 serial driver works with hiop irrespective of whether mfem and hiop use MPI or not 2018-09-03 10:54:55 -07:00
Vladimir Tomov 5340e06c4d Added some missing #ifdef MFEM_USE_MPI. 2018-08-23 19:01:03 -07:00
Cosmin G. Petra 59a13d02c5 fixed a bug in the way the vector distribution was retrieved and passed to hiop 2018-08-22 14:03:20 -07:00
Cosmin G. Petra 1538784329 reorganized optimizer solver class and updated Hiop implementation class(es)
- added an abstract class OptimizationSolver (inheriting from IterativeSolver) common to all optimizers
- Hiop optimizers returns the solution
- spec class for Hiop updated
    - to work with local vectors
    - to correctly copy from input mfem vectors
    - compute vector distribution without relying on dynamic casts to hypre vectors
- plus other smallish changes
2018-08-15 16:39:56 -07:00
Cosmin G. Petra ae5652fdaf hiop interface class completed 2018-08-06 15:51:39 -07:00
Cosmin G. Petra 9cb1c7f5e0 complete proposed interface with hiop 2018-08-03 11:08:54 -07:00
Cosmin G. Petra d3eaa8d5ac added skeleton of the class that specifies the problem to hiop 2018-07-30 15:57:49 -07:00
Cosmin G. Petra d84be9789c added initial hiop solver files for mfem and updated the build system 2018-07-23 15:50:11 -07:00