Skip to content

TAO optimiser entirely disabled for CoDiPack builds #32

@justinh2002

Description

@justinh2002

File: src/c/cores/controltao_core.cpp:12

Code:

#if defined (_HAVE_TAO_) & !defined(_HAVE_CODIPACK_) // TODO: Handle for CoDiPack

The entire TAO (PETSc Toolkit for Advanced Optimisation) code path is compiled out when
CoDiPack is active. This means +ad builds are restricted to m1qn3 only and cannot access
TAO's L-BFGS, nonlinear CG, or trust-region methods.

Note also the use of & (bitwise AND) instead of && (logical AND) in the preprocessor
directive — while harmless here since both operands are 0/1, it should be && for clarity.

Impact: Medium — limits optimiser choice for all CoDiPack/AD users. TAO support should
be extended to work with CoDiPack's reverse-mode gradient output.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No fields configured for Bug.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions