ENH: updates in the adjoint library
Some quality-of-life changes in the adjoint library
- The initial values of the design variables in topology optimisation can now be read through the 0/alpha field, which can be easily set using topoSet/setFields. Previously, this was only possible through 0/uniform/topOVars, which is harder to manipulate.
Tutorial: $FOAM_TUTORIALS/incompressible/adjointOptimisationFoam/topologyOptimisation/monoFluidAero/laminar/1_Inlet_2_Outlet/porosityBased/R_10x-init
-
The multiplier of the term added to the mathematical optimisation problem of ISQP and MMA to guarantee feasibility (named 'c') can now be given by a Function1, to allow its manipulation throughout the optimisation loop. A typical example would be setting it to a small value in the first few optimisation cycles, to focus on optimality rather than feasibility, and gradually increase it.
-
Added the option to disable damping of the approximate Hessian in ISQP. In the general case, this is to be avoided but can accelerate the algorithm in some fringe cases.