From 3d71eef94f2766806a8ffdbe9c43dbb8c97afe0e Mon Sep 17 00:00:00 2001 From: MartinKarp Date: Tue, 22 Oct 2024 13:21:52 +0200 Subject: [PATCH] quick exit if moving outside of element --- .../multiple_point_interpolator_legendre_numpy.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pynektools/interpolation/point_interpolator/multiple_point_interpolator_legendre_numpy.py b/pynektools/interpolation/point_interpolator/multiple_point_interpolator_legendre_numpy.py index 35e7a1c..fe88add 100644 --- a/pynektools/interpolation/point_interpolator/multiple_point_interpolator_legendre_numpy.py +++ b/pynektools/interpolation/point_interpolator/multiple_point_interpolator_legendre_numpy.py @@ -287,7 +287,8 @@ def find_rst_from_xyz( # Determine which points have already been found so they are not updated anymore points_found_this_it = ( - np.linalg.norm(self.eps_rst[:npoints, :nelems], axis=(2, 3)) <= tol + np.linalg.norm(self.eps_rst[:npoints, :nelems], axis=(2, 3)) <= tol or + np.linalg.norm(self.eps_rst[:npoints, :nelems], axis=(2, 3)) > 10.0 ) points_already_found = np.any(iterations_per_point[:npoints, :nelems] < max_iterations, axis=(2,3)) # Update the number of iterations only if the point has newly been found @@ -815,4 +816,4 @@ def invert_jac(jac): jac_inv[:, :, 2, 1] = (b * g - a * h) / det jac_inv[:, :, 2, 2] = (a * e - b * d) / det - return jac_inv \ No newline at end of file + return jac_inv