51 virtual bool solve()
override;
const unsigned int _forward_sys_num
The number of the nonlinear system representing the forward model.
static InputParameters validParams()
The following methods are specializations for using the Parallel::packed_range_* routines for a vecto...
void applyNodalBCs(SparseMatrix< Number > &matrix, const NumericVector< Number > &solution, NumericVector< Number > &rhs)
Helper function for applying nodal BCs to the adjoint matrix and RHS.
The solve object is responsible for solving the adjoint version of a forward model.
void checkIntegrity()
Checks whether the forward and adjoint systems are consistent.
virtual bool solve() override
Solve the adjoint system with the following procedure:
AdjointSolve(Executioner &ex)
const unsigned int _adjoint_sys_num
The number of the nonlinear system representing the adjoint model.
virtual void assembleAdjointSystem(SparseMatrix< Number > &matrix, const NumericVector< Number > &solution, NumericVector< Number > &rhs)
Assembles adjoint system.
NonlinearSystemBase & _nl_adjoint
The nonlinear system representing the adjoint model.
NonlinearSystemBase & _nl_forward
The nonlinear system representing the forward model.