These functions are for eliminating the variables corresponding to active sets when performing matrix, vector operations. I don't think they were meant to be in the public interface, only for utilities in active set algorithms.
Jason On Tue, Feb 18, 2014 at 9:22 AM, Jed Brown <j...@jedbrown.org> wrote: > Lisandro Dalcin <dalc...@gmail.com> writes: > > > Barry, I've pushed a quick fix (missing PETSC_EXTERN in TaoMonitor()) > > in your branch. > > > > The following prototypes in petsctao.h are also missing PETSC_EXTERN, > > and I think they should be more properly namespaced. > > > > PetscErrorCode VecGetSubVec(Vec, IS, PetscInt, PetscReal, Vec*); > > PetscErrorCode MatGetSubMat(Mat, IS, Vec, TaoSubsetType, Mat*); > > > > Perhaps you should move these prototypes (as well as TaoSubsetType) to > > taoimpl.h ? I'm not sure these routines should be part of the public > > interface. > > I would rather not, but if nothing else changes, the PetscInt argument > should be TaoSubsetType. I'm afraid I don't understand exactly what > role this function is serving, but the only TAO reference is the enum, > so it can probably be made generic and moved down to the Vec module. >