GEOS
GEOS copied to clipboard
[Feature] Constrained Optimization Solver
Hi guys,
I have been working in the implementation of the a phase-field fracture solver in GEOSX, and in this solver, I have a field variable which cannot decrease (it is a variable that represents the damage, and in our model, we don't accept material healing). Since the phase-field fracture problem can be viewed as an minimization problem, I am basically dealing with an optimization with an inequality constraint in one of the variables.
Currently, the most recent implementation of this that I know, uses a Primal-Dual Active Set Strategy, which is part of PETSC. However, it seems that PETSC and GEOSX don't get along really well, so, I am wondering if anyone has ever used or heard of another optimization solver, that can handle inequality constraints in Trilinos or Hypre or another package, which I could try to use.
@andrembcosta I am not aware of another one, but that doesn't mean it doesn't exist. Google will know more.
Also, I would not rule out Petsc. Our issue with Petsc mainly arises with using OpenMP on certain platforms. It was common enough we didn't want to enable Petsc as a "default" solver, but it is still available and actually works well for most people. You can activate it as needed. I would suggest designing and testing your solver with Petsc, but just include some #guards around any code that is Petsc specific so we can build without it. Once you have a working design, we can revisit portability.