typedef int PetscErrorCode
typedef int PetscInt
PetscErrorCode __libmesh_petsc_preconditioner_setup (void *ctx)
PetscErrorCode __libmesh_petsc_preconditioner_apply (void *ctx, Vec x, Vec y)
PetscErrorCode __libmesh_petsc_preconditioner_setup (PC pc)
PetscErrorCode __libmesh_petsc_preconditioner_apply (PC pc, Vec x, Vec y)
Definition at line 36 of file petsc_linear_solver.C.
Definition at line 37 of file petsc_linear_solver.C.
Definition at line 51 of file petsc_linear_solver.C.
References Preconditioner< T >::apply().
Referenced by PetscNonlinearSolver< T >::init(), and PetscLinearSolver< T >::init().
{
Preconditioner<Number> * preconditioner = static_cast<Preconditioner<Number>*>(ctx);
PetscVector<Number> x_vec(x);
PetscVector<Number> y_vec(y);
preconditioner->apply(x_vec,y_vec);
return 0;
}
Definition at line 73 of file petsc_linear_solver.C.
References Preconditioner< T >::apply().
{
void *ctx;
PetscErrorCode ierr = PCShellGetContext(pc,&ctx);CHKERRQ(ierr);
Preconditioner<Number> * preconditioner = static_cast<Preconditioner<Number>*>(ctx);
PetscVector<Number> x_vec(x);
PetscVector<Number> y_vec(y);
preconditioner->apply(x_vec,y_vec);
return 0;
}
Definition at line 63 of file petsc_linear_solver.C.
References Preconditioner< T >::init().
{
void *ctx;
PetscErrorCode ierr = PCShellGetContext(pc,&ctx);CHKERRQ(ierr);
Preconditioner<Number> * preconditioner = static_cast<Preconditioner<Number>*>(ctx);
preconditioner->init();
return 0;
}
Definition at line 42 of file petsc_linear_solver.C.
References Preconditioner< T >::init().
Referenced by PetscNonlinearSolver< T >::init(), and PetscLinearSolver< T >::init().
{
Preconditioner<Number> * preconditioner = static_cast<Preconditioner<Number>*>(ctx);
preconditioner->init();
return 0;
}
Generated automatically by Doxygen for libMesh from the source code.