From b1fa479f6067ab22149c3fd05bdc5214d1fb3801 Mon Sep 17 00:00:00 2001 From: Joseph Weston <joseph@weston.cloud> Date: Wed, 12 Jun 2019 16:18:27 +0200 Subject: [PATCH] validate vector_factory for kpm.SpectralDensity --- kwant/kpm.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/kwant/kpm.py b/kwant/kpm.py index a06d7c6d..db19f4ea 100644 --- a/kwant/kpm.py +++ b/kwant/kpm.py @@ -219,6 +219,14 @@ class SpectralDensity: num_vectors=num_vectors, accumulate=accumulate_vectors) else: + if not isinstance(vector_factory, Iterable): + raise TypeError('vector_factory must be iterable') + try: + len(vector_factory) + except TypeError: + if num_vectors is None: + raise ValueError('num_vectors must be provided if' + 'vector_factory has no length.') self._vector_factory = _VectorFactory( vector_factory, num_vectors=num_vectors, -- GitLab