From 1272eb69faeb061dd1f2403716c968131166b74f Mon Sep 17 00:00:00 2001
From: Patrick Jaap <patrick.jaap@tu-dresden.de>
Date: Wed, 20 Apr 2022 19:15:16 +0200
Subject: [PATCH] Register floating point classification for hyperdual numbers

---
 dune/elasticity/common/hyperdual.hh | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/dune/elasticity/common/hyperdual.hh b/dune/elasticity/common/hyperdual.hh
index 95ab3de..0764ca0 100644
--- a/dune/elasticity/common/hyperdual.hh
+++ b/dune/elasticity/common/hyperdual.hh
@@ -609,6 +609,30 @@ bool operator!= (hyperdual lhs, double rhs)
 	return (lhs.f0 != rhs);
 }
 
+bool isnormal( const hyperdual& x )
+{
+  using std::isnormal;
+  return isnormal(x.real());
+}
+
+bool isfinite( const hyperdual& x )
+{
+  using std::isfinite;
+  return isfinite(x.real());
+}
+
+bool isnan( const hyperdual& x )
+{
+  using std::isnan;
+  return isnan(x.real());
+}
+
+bool isinf( const hyperdual& x )
+{
+  using std::isinf;
+  return isinf(x.real());
+}
+
 
 namespace std
 {
-- 
GitLab