18#ifdef DEAL_II_WITH_ADOLC
26# ifdef DEAL_II_WITH_ADOLC
27# include <adolc/adouble.h>
28# include <adolc/adtl.h>
34# ifdef DEAL_II_ADOLC_WITH_ADVANCED_BRANCHING
47 adouble_boolean_comparator(
48 const adouble &value_1,
49 const adouble &value_2,
50 const std::function<adouble(
const adouble &,
const adouble &)>
57 std::is_same_v<adouble, ad_type>,
58 "The type of the AD number is not that which was expected.");
59 const ad_type result = comparator(value_1, value_2);
69 return internal::adouble_boolean_comparator(
70 value_1, value_2, [](
const adouble &a,
const adouble &b) -> adouble {
71 return ::internal::NumberType<adouble>::value(a == b);
78 return internal::adouble_boolean_comparator(
79 value_1, value_2, [](
const adouble &a,
const adouble &b) -> adouble {
80 return ::internal::NumberType<adouble>::value(a < b);
90# 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)