Before revision:  The approach is based on  policy-based design  and partial template specialization, and is implemented in the open source AMGCL library.
After revision:  The approach is based on policy-based design pattern and partial template specialization, and is implemented in the open source AMGCL library.