16#ifdef DEAL_II_WITH_ADOLC
24# ifdef DEAL_II_WITH_ADOLC
25# include <adolc/adouble.h>
26# include <adolc/adtl.h>
34#ifdef DEAL_II_WITH_ADOLC
37# ifdef DEAL_II_ADOLC_WITH_ADVANCED_BRANCHING
50 adouble_boolean_comparator(
51 const adouble &value_1,
52 const adouble &value_2,
53 const std::function<adouble(
const adouble &,
const adouble &)>
60 std::is_same_v<adouble, ad_type>,
61 "The type of the AD number is not that which was expected.");
62 const ad_type result = comparator(value_1, value_2);
72 return internal::adouble_boolean_comparator(
73 value_1, value_2, [](
const adouble &a,
const adouble &b) -> adouble {
74 return ::internal::NumberType<adouble>::value(a == b);
81 return internal::adouble_boolean_comparator(
82 value_1, value_2, [](
const adouble &a,
const adouble &b) -> adouble {
83 return ::internal::NumberType<adouble>::value(a < b);
93# include "differentiation/ad/adolc_number_types.inst"
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
constexpr bool values_are_equal(const Number1 &value_1, const Number2 &value_2)
bool value_is_less_than(const Number1 &value_1, const Number2 &value_2)