'Implements the SymPy factor routine, on the scalar parts
of a basis-dependent expression.
factor\'s documentation'

def factor(self, *args, **kwargs):

    fctr_components = [(fctr(v, *args, **kwargs) * k) for (k, v) in self.components.items()]
    return self._add_func(*fctr_components)
