Tzanio
26f137ae88
Merge branch 'mesh-ext-additions' of github.com:mfem/mfem into mesh-ext-additions
2019-05-22 17:37:10 -07:00
Tzanio
7bb68afa73
Patch from Stefano for HYPRE_MIXEDINT.
2019-05-22 16:59:25 -07:00
Stefano Zampini
90a83cb398
PetscSolver::SetPreconditionerFactory : prevent from segfaulting
2019-05-15 11:29:06 +03:00
Stefano Zampini
69981d62eb
Fix for the -snes_mf_operator case
...
The rational here is that since MFEM has only one matrix returned by the GetGradient method,
it is that matrix that have be used to construct the preconditioner
2019-05-15 11:29:06 +03:00
Stefano Zampini
11da55e772
Fix deprecated function from PETSc 3.12
2019-05-15 11:29:06 +03:00
Tzanio
a4f7d19221
Styling
2019-03-30 20:21:02 -07:00
Stefano Zampini
dde32310a0
PetscNonlinearSolver: expose update method
2019-03-14 21:17:40 +03:00
Stefano Zampini
f4b3269a41
BDDC: add support for approximate solvers and scalar spaces
2019-03-14 21:17:40 +03:00
Stefano Zampini
c70e1dc9c8
MFEMInitializePetsc: added a couple of variations
2019-03-14 21:17:40 +03:00
Stefano Zampini
c11a4f4376
Petsc: add support for Operator::ANY_TYPE
2019-03-14 21:17:40 +03:00
Stefano Zampini
1b212fd2e5
prevent Convert_Array_IS from segfaulting
2019-03-14 21:17:40 +03:00
Tzanio
9f7a70668e
make style
2019-02-14 18:36:24 -08:00
Stefano Zampini
1c4eb4bb52
Fix PETSc support for 64bit builds
2019-01-24 17:37:56 +03:00
Stefano Zampini
111357aca2
PetscNonlinearSolver: Initialize local variables in postcheck callback
2019-01-24 15:18:23 +03:00
Tzanio
9a9c29e03f
make style
2018-11-21 15:14:53 +03:00
Stefano Zampini
7c9bf81d17
Prevent from having petsc.h being include from MFEM source codes if not desired
2018-11-21 15:14:53 +03:00
Stefano Zampini
f94b099e40
Added convenience functions to initialize/finalize PETSc without the need of including petsc.h
2018-11-21 15:14:53 +03:00
Stefano Zampini
777c6d98f7
Move the GetComm() methods implementation for PETSc to the cpp file
2018-11-21 15:14:53 +03:00
Stefano Zampini
03f2898985
PetscODESolver: the Init method should reset to the initial state in any case
2018-11-21 15:14:53 +03:00
Stefano Zampini
6ca447ec36
Added some methods to PetscParMatrix to scale rows and columns and to shift the diagonal terms
2018-11-21 15:14:53 +03:00
Stefano Zampini
493c8b1e63
PetscParMatrix: added conversion constructor for SparseMatrix
2018-11-21 15:14:53 +03:00
Stefano Zampini
7724bdf9c4
make style
2018-11-21 15:14:53 +03:00
Stefano Zampini
ddba68f2be
MatISGetMPIXAIJ is deprecated in 3.10 in favor of MatConvert
2018-11-21 15:14:53 +03:00
Stefano Zampini
8f601776cd
Added RAP operation with A Hypre mat and P PETSc
...
Fix documentation regarding PETSC_MATHYPRE
2018-11-21 15:14:53 +03:00
Stefano Zampini
9457962d33
PetscSolver: extended monitoring framework
...
Add a user callback to monitor the solver (defaults to no-hop)
fixed a bug in ex1p.cpp
2018-11-21 15:14:53 +03:00
Stefano Zampini
560697884d
Added method to customize the line search
...
- use an objective function to drive the line search
- run a method after the PETSc's linesearch has been done to further refine it
2018-11-21 15:14:53 +03:00
Stefano Zampini
eb578c55a0
Added method to zero only the rows of a PetscParMatrix
2018-11-21 15:14:53 +03:00
Stefano Zampini
9fa65e6412
Added ParMult method to PetscParMatrix
2018-11-21 15:14:53 +03:00
Stefano Zampini
f3c2fae804
Fix bug in ConvertOperator
2018-11-21 15:14:53 +03:00
Stefano Zampini
ea81393011
Added method to change the inner Mat of a PetscParMatrix
2018-11-21 15:14:53 +03:00
Stefano Zampini
7b6ddb6227
Added SetValues and AddValues to PetscParVector
2018-11-21 15:14:53 +03:00
Stefano Zampini
72bd63a556
Added copy argument to constructor
2018-11-21 15:14:53 +03:00
Stefano Zampini
7f40802a83
PetscBCHandler: added method to apply the BC in place
2018-11-21 15:14:53 +03:00
Stefano Zampini
04983d747e
PetscODESolver: added the special function TSComputeSplitJacobians_C
...
This special function is used in the branch stefano_zampini/feature-continuousadjoint to enable PDE constrained optimization
If that branch will not get merged into PETSc, I'll will do my own library and this function will be still needed.
2018-11-21 15:14:53 +03:00
Stefano Zampini
795c758dd4
PetscParMatrix: added customization of the diagonal entry when eliminating rows and columns
2018-11-21 15:14:53 +03:00
Stefano Zampini
94f7568165
PetscParMatrix: add -= operator
2018-11-21 15:14:53 +03:00
Stefano Zampini
c8e0a5ae00
PetscParVector: added few operators and default case for Randomize()
2018-11-21 15:14:53 +03:00
Stefano Zampini
7934db1a9c
PetscODESolver::Run: Run reset Jacobian caching
...
This method may be invoked multiple times, each time with a different parametrization of the TimeDependentOperator
2018-11-21 15:14:53 +03:00
Stefano Zampini
34cc491b19
PetscBCHandler: remove hideous setup requirement and do lazy setup
2018-11-21 15:14:53 +03:00
Stefano Zampini
ff6bfe3808
Add constructor with conversion
2018-11-21 15:14:53 +03:00
Stefano Zampini
e69f787149
PetscODESolver: added method to set the type of solver at a later stage
2018-11-18 11:28:36 +03:00
Stefano Zampini
ab7b1609a9
PetscParMatrix: add method to get local ownership of rows and columns
2018-11-18 11:28:36 +03:00
Stefano Zampini
bc9f74fddd
PetscParMatrix: added constructor for submatrix
2018-11-18 11:28:36 +03:00
Stefano Zampini
eb651cd3fc
Change composed object name to match that used inside the PETSc library
2018-05-31 11:10:20 +03:00
Tzanio
81e8551911
Uniform copyright
2018-05-25 15:50:18 -07:00
Jamie A. Bramwell
45dfc93db0
make style
2018-01-16 10:13:36 -08:00
Stefano Zampini
846c555fa8
Fix PetscODESolver::Step implementation to return the actual time step used instead of the next candidate
...
This is to have a uniform behaviour of all the Step methods implemented in MFEM
We need to use a larger time step in the examples to trigger adaptivity, otherwise the default time step is always accepted
2017-10-09 09:41:08 +03:00
Stefano Zampini
19be5aa3e1
Make style
2017-08-27 19:25:36 +03:00
Stefano Zampini
8e290a68a8
Need to convert when the type of J is different that requested
2017-08-27 19:24:31 +03:00
Stefano Zampini
387285b6bc
A more robust way of caching Jacobians by using PetscObjectState
2017-08-27 19:23:31 +03:00