Stan  1.3
probability, sampling & optimization
 All Classes Namespaces Files Functions Variables Typedefs Enumerator Friends Macros Pages
atanh.hpp
Go to the documentation of this file.
1 #ifndef __STAN__AGRAD__REV__ATANH_HPP__
2 #define __STAN__AGRAD__REV__ATANH_HPP__
3 
4 #include <valarray>
5 #include <stan/agrad/rev/var.hpp>
7 #include <boost/math/special_functions/atanh.hpp>
8 
9 namespace stan {
10  namespace agrad {
11 
12  namespace {
13  class atanh_vari : public op_v_vari {
14  public:
15  atanh_vari(vari* avi) :
16  op_v_vari(boost::math::atanh(avi->val_),avi) {
17  }
18  void chain() {
19  avi_->adj_ += adj_ / (1.0 - avi_->val_ * avi_->val_);
20  }
21  };
22  }
23 
36  inline var atanh(const stan::agrad::var& a) {
37  return var(new atanh_vari(a.vi_));
38  }
39 
40  }
41 }
42 #endif

     [ Stan Home Page ] © 2011–2013, Stan Development Team.