|
Sacado
Development
|
Derivative array storage class using dynamic memory allocation. More...
#include <Sacado_Fad_Exp_DynamicStorage.hpp>

Classes | |
| struct | apply |
| Turn DynamicStorage into a meta-function class usable with mpl::apply. More... | |
| struct | apply_N |
| Replace static derivative length. More... | |
Public Types | |
| typedef std::remove_cv< T >::type | value_type |
Public Member Functions | |
| KOKKOS_INLINE_FUNCTION | DynamicStorage () |
| Default constructor. | |
| KOKKOS_INLINE_FUNCTION | DynamicStorage (const T &x) |
| Constructor with value. | |
| KOKKOS_INLINE_FUNCTION | DynamicStorage (const int sz, const T &x, const DerivInit zero_out=InitDerivArray) |
Constructor with size sz. More... | |
| KOKKOS_INLINE_FUNCTION | DynamicStorage (const int sz, const int i, const value_type &x) |
Constructor with size sz, index i, and value x. More... | |
| KOKKOS_INLINE_FUNCTION | DynamicStorage (const DynamicStorage &x) |
| Copy constructor. | |
| KOKKOS_INLINE_FUNCTION | DynamicStorage (DynamicStorage &&x) |
| Move constructor. | |
| KOKKOS_INLINE_FUNCTION | ~DynamicStorage () |
| Destructor. | |
|
KOKKOS_INLINE_FUNCTION DynamicStorage & | operator= (const DynamicStorage &x) |
| Assignment. | |
|
KOKKOS_INLINE_FUNCTION DynamicStorage & | operator= (DynamicStorage &&x) |
| Move assignment. | |
| KOKKOS_INLINE_FUNCTION int | size () const |
| Returns number of derivative components. | |
| KOKKOS_INLINE_FUNCTION int | length () const |
| Returns array length. | |
| KOKKOS_INLINE_FUNCTION void | resize (int sz) |
| Resize the derivative array to sz. More... | |
| KOKKOS_INLINE_FUNCTION void | resizeAndZero (int sz) |
| Resize the derivative array to sz. More... | |
| KOKKOS_INLINE_FUNCTION void | expand (int sz) |
| Expand derivative array to size sz. More... | |
| KOKKOS_INLINE_FUNCTION void | zero () |
| Zero out derivative array. | |
| KOKKOS_INLINE_FUNCTION const T & | val () const |
| Returns value. | |
| KOKKOS_INLINE_FUNCTION T & | val () |
| Returns value. | |
| KOKKOS_INLINE_FUNCTION const U * | dx () const |
| Returns derivative array. | |
| KOKKOS_INLINE_FUNCTION U | dx (int i) const |
Returns derivative component i with bounds checking. | |
| KOKKOS_INLINE_FUNCTION U & | fastAccessDx (int i) |
Returns derivative component i without bounds checking. | |
| KOKKOS_INLINE_FUNCTION const U & | fastAccessDx (int i) const |
Returns derivative component i without bounds checking. | |
Static Public Attributes | |
| static constexpr bool | is_statically_sized = false |
| static constexpr int | static_size = 0 |
| static constexpr bool | is_view = false |
Protected Attributes | |
| T | val_ |
| Value. | |
| int | sz_ |
| Derivative array size. | |
| int | len_ |
| Derivative array length. | |
| U * | dx_ |
| Derivative array. | |
Derivative array storage class using dynamic memory allocation.
|
inline |
Constructor with size sz.
Initializes derivative array 0 of length sz
References Sacado::Fad::Exp::DynamicStorage< T, U >::dx_, Sacado::ds_array< T, isScalar >::get(), Sacado::ds_array< T, isScalar >::get_and_fill(), and Sacado::Fad::Exp::DynamicStorage< T, U >::sz_.
|
inline |
Constructor with size sz, index i, and value x.
Initializes value to x and derivative array of length sz as row i of the identity matrix, i.e., sets derivative component i to 1 and all other's to zero.
References Sacado::Fad::Exp::DynamicStorage< T, U >::dx_.
|
inline |
Expand derivative array to size sz.
This method preserves any existing derivative components and sets any that are added to zero.
References Sacado::ds_array< T, isScalar >::copy(), Sacado::ds_array< T, isScalar >::destroy_and_release(), Sacado::Fad::Exp::DynamicStorage< T, U >::dx_, Sacado::ds_array< T, isScalar >::get_and_fill(), Sacado::Fad::Exp::DynamicStorage< T, U >::len_, Sacado::Fad::Exp::DynamicStorage< T, U >::sz_, and Sacado::ds_array< T, isScalar >::zero().
|
inline |
Resize the derivative array to sz.
Note: This does not necessarily preserve derivative components.
References Sacado::ds_array< T, isScalar >::destroy_and_release(), Sacado::Fad::Exp::DynamicStorage< T, U >::dx_, Sacado::ds_array< T, isScalar >::get_and_fill(), Sacado::Fad::Exp::DynamicStorage< T, U >::len_, and Sacado::Fad::Exp::DynamicStorage< T, U >::sz_.
|
inline |
Resize the derivative array to sz.
This method doest not preserve any existing derivative components but sets any that are added to zero.
References Sacado::ds_array< T, isScalar >::destroy_and_release(), Sacado::Fad::Exp::DynamicStorage< T, U >::dx_, Sacado::ds_array< T, isScalar >::get_and_fill(), Sacado::Fad::Exp::DynamicStorage< T, U >::len_, Sacado::Fad::Exp::DynamicStorage< T, U >::sz_, and Sacado::ds_array< T, isScalar >::zero().
1.8.5