Solve issue #225 (add `update_weight` method to `BasisProjectionOperator`)
A new update_weights
method was added to BasisProjectionOperator
.
This method allow to recycle BasisProjectionOperator
by updating the coefficient in iterative algorithms.
In the process :
-Rename assemble_mat
in _assemble_mat
as it should now only been called inside the class for updating the matrix.
-Made dof_mat
a private attribute (self._dof_mat
) of the class so that _assemble_mat
doesn't take any argument and most importantly, _dof_operator
is automaticaly updated when _dof_mat
is (no need for creating a new ComposedLinearOperator
). dof_mat
is now created when instantiating the class and updated in _assemble_mat
(before was created in the later function).
-Created a flag use_cache
that allow for recycling some information computed in the assembly of the matrix for later use in case of repeated call to update_weights
.
Some tests were also added in tests/tests_mpi/test_basis_operator
to demonstrate this new functionality.
Closes #225 (closed)