CppAD: A C++ Algorithmic Differentiation Package  20171217
template<class Base >
 void CppAD::local::forward_acosh_op ( size_t p, size_t q, size_t i_z, size_t i_x, size_t cap_order, Base * taylor )
inline

Compute forward mode Taylor coefficient for result of op = AcoshOp.

The C++ source code corresponding to this operation is

```     z = acosh(x)
```

The auxillary result is

```     y = sqrt(x * x - 1)
```

The value of y, and its derivatives, are computed along with the value and derivatives of z.

Template Parameters
 Base base type for the operator; i.e., this operation was recorded using AD< Base > and computations by this routine are done using type Base.
Parameters
 p lowest order of the Taylor coefficients that we are computing. q highest order of the Taylor coefficients that we are computing. i_z variable index corresponding to the last (primary) result for this operation; i.e. the row index in taylor corresponding to z. The auxillary result is called y has index i_z - 1. i_x variable index corresponding to the argument for this operator; i.e. the row index in taylor corresponding to x. cap_order maximum number of orders that will fit in the `taylor` array. taylor Input: `taylor [ i_x * cap_order + k ]` for k = 0 , ... , q, is the k-th order Taylor coefficient corresponding to x. Input: `taylor [ i_z * cap_order + k ]` for k = 0 , ... , p - 1, is the k-th order Taylor coefficient corresponding to z. Input: `taylor [ ( i_z - 1) * cap_order + k ]` for k = 0 , ... , p-1, is the k-th order Taylor coefficient corresponding to the auxillary result y. Output: `taylor [ i_z * cap_order + k ]`, for k = p , ... , q, is the k-th order Taylor coefficient corresponding to z. Output: `taylor [ ( i_z - 1 ) * cap_order + k ]`, for k = p , ... , q, is the k-th order Taylor coefficient corresponding to the autillary result y.
Checked Assertions
• NumArg(op) == 1
• NumRes(op) == 2
• i_x + 1 < i_z
• q < cap_order
• p <= q

Definition at line 41 of file acosh_op.hpp.

Referenced by forward1sweep().