Merge branch 'master' into denera/lmvm-mat-and-pc
TAO: Fix 'extern' declarations- Rename events following naming conventions in other packages- Fix extern -> PETSC_EXTERN
derived LMVM types added and moved into the KSP package
Memory leaks in MAT_LMVM and TAO_BNK fixed
BNCG accelerator added into BNLS, works for TAO examples, segfaults on CUTEst probs
LMVM matrix can now deal with reduced systems that change in size based on # of active variables
Wrapping up for a pull request- New active set estimation added based on Bertsekas' method- Active set estimation split off into the utilities folder so that it can later be applied to BLMVM and B
Wrapping up for a pull request- New active set estimation added based on Bertsekas' method- Active set estimation split off into the utilities folder so that it can later be applied to BLMVM and BNCG- Convergence of BNK methods exhaustively profiled on CUTEst problems
show more ...
Bounded NLS working on plate2
Box constraint projections added to BNLS, and it still works for unconstrained problems. Bounded problems are not yet tested.
just a few more PETSC_EXTERN changes
PETSC_EXTERN issue resolved for separately compiled libraries
PETSC_EXTERN and CHKERRQ fixes
Added view information for tracking total iterations across multiple TaoSolve() calls
BFGS statistics preserved across multiple TaoSolve() calls
Added simple test for recycling behavior
Wrapping up for a pull request
Begin refactorization of MatShell to make the code more straightforward and extensibleIntroduce MatSetOperation() for changing operations on non-MATSHELLsIntroduce two modes for MATSHELL 1) MAT
Begin refactorization of MatShell to make the code more straightforward and extensibleIntroduce MatSetOperation() for changing operations on non-MATSHELLsIntroduce two modes for MATSHELL 1) MATSHELL manages scalings and shifts automatically 2) Creator of MATSHELL can provide their own code for managing scaling and shifts This is used by MatCreateADA() and MatCreateSubMatrixFree()The extensibility is so that a MatShell can be easily used in as many places as possible as other matrices,for example, /* A = diag(u) G */ ierr = MatCopy(appctx->SEMop.grad,A,SAME_NONZERO_PATTERN);CHKERRQ(ierr); ierr = MatDiagonalScale(A,globalin,NULL);CHKERRQ(ierr); /* A = A + diag(Gu) */ ierr = VecDuplicate(globalin,&Gglobalin);CHKERRQ(ierr); ierr = MatMult(appctx->SEMop.grad,globalin,Gglobalin);CHKERRQ(ierr); ierr = MatDiagonalSet(A,Gglobalin,ADD_VALUES);CHKERRQ(ierr); ierr = VecDestroy(&Gglobalin);CHKERRQ(ierr); /* A = K - A */ ierr = MatScale(A,-1.0);CHKERRQ(ierr); ierr = MatAXPY(A,1.0,appctx->SEMop.keptstiff,SAME_NONZERO_PATTERN);Commit-type: feature
rename MatGetSubMat -> MatCreateSubMat
add MatDestroySubMatrices(); bugfix
Merge branch 'barry/remove-funct'
Add more error checks for use of MatReuse; change MatTranspose() to use MatReuse as used by other functionsTime: 2.5 hoursReported-by: Stefano Zampini <stefano.zampini@gmail.com>, Eric Chamberlan
Add more error checks for use of MatReuse; change MatTranspose() to use MatReuse as used by other functionsTime: 2.5 hoursReported-by: Stefano Zampini <stefano.zampini@gmail.com>, Eric Chamberland <Eric.Chamberland@giref.ulaval.ca>
Remove the use and definition of __FUNCT__ throughout the codeSince all modern C/C++ compilers provide this functionality we no longer need to provide it manually in PETScTime: 1.5 hoursThanks-t
Remove the use and definition of __FUNCT__ throughout the codeSince all modern C/C++ compilers provide this functionality we no longer need to provide it manually in PETScTime: 1.5 hoursThanks-to: Andreas Mang <andreas@ices.utexas.edu>
Updated script for detecting visible symbolsRemoved unneeded visibility of some symbolsFixed some namespacingRemoved the use of unneeded implementation includes in the TAO code
More decreasing visibility of symbols from outside librariesAlso fix a few bugs related to having multiple PETSc libraries
labeled a variety of additional internal functions as staticto prevent them from being publically available in the library
12345