19#ifdef DEAL_II_WITH_ADOLC
30# ifdef DEAL_II_ADOLC_WITH_ADVANCED_BRANCHING
43 adouble_boolean_comparator(
44 const adouble &value_1,
45 const adouble &value_2,
46 const std::function<adouble(
const adouble &,
const adouble &)>
53 std::is_same<adouble, ad_type>::value,
54 "The type of the AD number is not that which was expected.");
55 const ad_type result = comparator(value_1, value_2);
65 return internal::adouble_boolean_comparator(
66 value_1, value_2, [](
const adouble &a,
const adouble &
b) -> adouble {
67 return ::internal::NumberType<adouble>::value(a ==
b);
74 return internal::adouble_boolean_comparator(
75 value_1, value_2, [](
const adouble &a,
const adouble &
b) -> adouble {
76 return ::internal::NumberType<adouble>::value(a <
b);
86# include "adolc_number_types.inst"
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
SymmetricTensor< 2, dim, Number > b(const Tensor< 2, dim, Number > &F)
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)