48 template <
typename ScalarT>
49 ScalarT
func(
const ScalarT&
a,
const ScalarT& b,
const ScalarT&
c) {
57 int main(
int argc,
char **argv)
79 rfad =
func(afad, bfad, cfad);
81 std::cout << rfad << std::endl;
84 double r_ad = rfad.val();
85 bool drda_ad = rfad.dx(0);
86 bool drdb_ad = rfad.dx(1);
87 bool drdc_ad = rfad.dx(2);
90 if (
std::fabs(r - r_ad) <
tol && drda_ad && drdb_ad && !drdc_ad) {
91 std::cout <<
"\nExample passed!" << std::endl;
95 std::cout <<
"\nSomething is wrong, example failed!" << std::endl;
ScalarT func(const ScalarT &a, const ScalarT &b, const ScalarT &c)
SimpleFad< ValueT > log(const SimpleFad< ValueT > &a)
SimpleFad< ValueT > atan(const SimpleFad< ValueT > &a)
expr expr1 expr1 expr1 c expr2 expr1 expr2 expr1 expr2 expr1 expr1 expr1 expr1 c expr2 expr1 expr2 expr1 expr2 expr1 expr1 expr1 expr1 c *expr2 expr1 expr2 expr1 expr2 expr1 expr1 expr1 expr1 c expr2 expr1 expr2 expr1 expr2 expr1 expr1 expr1 expr2 expr1 expr2 expr1 expr1 expr1 expr2 expr1 expr2 expr1 expr1 expr1 c
int main(int argc, char **argv)
SimpleFad< ValueT > sin(const SimpleFad< ValueT > &a)
Sacado::LFad::LogicalSparse< double, bool > FadType
KOKKOS_INLINE_FUNCTION Expr< FAbsOp< Expr< T > > > fabs(const Expr< T > &expr)