From c3cbad74ae804fe5820aa27b6270c8661c822a41 Mon Sep 17 00:00:00 2001
From: Antoine Hoffmann <antoine.hoffmann@epfl.ch>
Date: Tue, 28 Feb 2023 16:22:37 +0100
Subject: [PATCH] elemental version of checkfield

---
 src/utility_mod.F90 | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/src/utility_mod.F90 b/src/utility_mod.F90
index 2a547d1a..028d514e 100644
--- a/src/utility_mod.F90
+++ b/src/utility_mod.F90
@@ -1,6 +1,6 @@
 MODULE utility
   IMPLICIT NONE
-  PUBLIC :: checkfield
+  PUBLIC :: checkfield, checkelem
 CONTAINS
 
   FUNCTION is_nan(x,str) RESULT(isn)
@@ -62,4 +62,15 @@ CONTAINS
     mlend= is_nan( REAL(sumfield),str).OR.is_inf( REAL(sumfield),str) &
       .OR. is_nan(AIMAG(sumfield),str).OR.is_inf(AIMAG(sumfield),str)
   END FUNCTION checkfield
+
+  FUNCTION checkelem(elem,str) RESULT(mlend)
+    use prec_const, ONLY: dp
+    IMPLICIT NONE
+    COMPLEX(dp), INTENT(IN) :: elem
+    CHARACTER(LEN=*), INTENT(IN) :: str
+    LOGICAL :: mlend
+
+    mlend= is_nan( REAL(elem),str).OR.is_inf( REAL(elem),str) &
+      .OR. is_nan(AIMAG(elem),str).OR.is_inf(AIMAG(elem),str)
+  END FUNCTION checkelem
 END MODULE utility
-- 
GitLab