linearSolvePETSc Interface

interface
private module subroutine linearSolvePETSc(this, knownVec, unknownVec, addIdentityMat, convReason, petscGroup)

Arguments

Type IntentOptional Attributes Name
class(Modeller), intent(inout) :: this
real(kind=rk), intent(in), dimension(:) :: knownVec
real(kind=rk), intent(out), dimension(:) :: unknownVec
logical, intent(in) :: addIdentityMat
integer(kind=ik), intent(inout) :: convReason
integer(kind=ik), intent(in), optional :: petscGroup

Description

Call linearSolve routine on PETScController of this modeller. Creates PETSc objects if they've not yet been created. If addIdentityMat is true adds an identity matrix to the PETSc matrix.