PCG solver using the Schur complement. More...
#include <pcg_schur.hpp>


Public Member Functions | |
| PCGSchurSolver (size_t max_iter, T tol, T rejection_ratio, SchurPreconditioner< T, S > *preconditioner) | |
| virtual void | update_structure (Graph< T, S > *graph, StreamPool &streams) override |
| virtual void | update_values (Graph< T, S > *graph, StreamPool &streams) override |
| virtual void | set_damping_factor (Graph< T, S > *graph, T damping_factor, const bool use_identity, StreamPool &streams) override |
| virtual bool | solve (Graph< T, S > *graph, T *x, StreamPool &streams) override |
Private Attributes | |
| Hessian< T, S > | H |
| SchurComplement< T, S > | schur |
| SchurPreconditioner< T, S > * | preconditioner |
| thrust::device_vector< T > | r |
| thrust::device_vector< T > | p |
| thrust::device_vector< T > | z |
| thrust::device_vector< T > | Ap |
| thrust::device_vector< T > | x_backup |
| size_t | pose_dim |
| size_t | max_iter |
| T | tol |
| T | rejection_ratio |
PCG solver using the Schur complement.
|
inlineoverridevirtual |
Implements graphite::Solver< T, S >.
|
inlineoverridevirtual |
Implements graphite::Solver< T, S >.
|
inlineoverridevirtual |
Implements graphite::Solver< T, S >.
|
inlineoverridevirtual |
Implements graphite::Solver< T, S >.