CoDiPack  3.1.0
A Code Differentiation Package
SciComp TU Kaiserslautern
Loading...
Searching...
No Matches
codi::RealTraits::AggregatedTypeTraits< std::complex< T_InnerReal > > Struct Template Reference

Specialize real traits for std::complex. More...

#include <stdComplex.hpp>

Inheritance diagram for codi::RealTraits::AggregatedTypeTraits< std::complex< T_InnerReal > >:

Public Types

using InnerType
 Inner type of the aggregated type.
 
using Real
 Real version of the aggregated type without the active CoDiPack types.
 
using Type
 See AggregatedTypeTraits.
 
- Public Types inherited from codi::RealTraits::ArrayAggregatedTypeTraitsBase< std::complex< T_InnerReal >, T_InnerReal, std::complex< RealTraits::Real< T_InnerReal > >, 2 >
using InnerType
 See AggregatedTypeTraits.
 
using Real
 See AggregatedTypeTraits.
 
using Type
 See AggregatedTypeTraits.
 

Public Member Functions

inlinestatic InnerTypearrayAccess (Type &v)
 
- Public Member Functions inherited from codi::RealTraits::ArrayAggregatedTypeTraitsBase< std::complex< T_InnerReal >, T_InnerReal, std::complex< RealTraits::Real< T_InnerReal > >, 2 >
inlinestatic Type adjointOfArrayAccess (Type const &w, InnerType const &v_b)
 
inlinestatic InnerType adjointOfConstructor (Type const &w, Type const &w_b)
 
inlinestatic InnerTypearrayAccess (Type &w)
 
inlinestatic InnerType const & arrayAccess (Type const &w)
 
inlinestatic Type arrayConstructor (InnerType const *v)
 

Static Public Member Functions

static Type adjointOfArrayAccess (Type const &w, InnerType const &v_b)
 
static InnerType adjointOfConstructor (Type const &w, Type const &w_b)
 
static InnerType arrayAccess (Type const &w)
 
static Type arrayConstructor (InnerType const *v)
 
static inlinestd::string getMathRep ()
 Get the math symbol of the operation. E.g. + for operators and pow() for functions.
 
static inlinestd::string getMathRep ()
 Get the math symbol of the operation. E.g. + for operators and pow() for functions.
 

Static Public Attributes

static int constexpr Elements
 Number of elements of the aggregated type.
 
- Static Public Attributes inherited from codi::RealTraits::ArrayAggregatedTypeTraitsBase< std::complex< T_InnerReal >, T_InnerReal, std::complex< RealTraits::Real< T_InnerReal > >, 2 >
static int constexpr Elements
 See AggregatedTypeTraits.
 

Detailed Description

template<typename T_InnerReal>
struct codi::RealTraits::AggregatedTypeTraits< std::complex< T_InnerReal > >

Specialize real traits for std::complex.

Member Function Documentation

◆ adjointOfArrayAccess()

static Type codi::RealTraits::AggregatedTypeTraits< std::complex< T_InnerReal >, typename >::adjointOfArrayAccess ( Type const & w,
InnerType const & v_b )
inlinestatic

Implementation of the adjoint array access. See arrayAccess for the equation definition. The adjoint is defined as $ \bar w += dw[element]/w^T * \bar v $.

◆ adjointOfConstructor()

static InnerType codi::RealTraits::AggregatedTypeTraits< std::complex< T_InnerReal >, typename >::adjointOfConstructor ( Type const & w,
Type const & w_b )
inlinestatic

Adjoint implementation of element-wise construction, that is, T is our aggregated type and the construction is defined as w = T(v_0, v_1, ..., v_{N-1}) where N is the number of elements. Then this function needs to implement the adjoint formulation of this construction, which is defined as $ \bar v_{element} = dT/dv_{element}^T * \bar w $ .

◆ arrayAccess() [1/2]

inlinestatic InnerType & codi::RealTraits::AggregatedTypeTraits< std::complex< T_InnerReal >, typename >::arrayAccess ( Type & v)
inline

Implementation of the array access, which is defined as $ v = w[element] $ where $ w $ is an aggregated type.

◆ arrayAccess() [2/2]

static InnerType codi::RealTraits::AggregatedTypeTraits< std::complex< T_InnerReal >, typename >::arrayAccess ( Type const & w)
inlinestatic

Implementation of the array access, which is defined as $ v = w[element] $ where $ w $ is an aggregated type.

◆ arrayConstructor()

static Type codi::RealTraits::AggregatedTypeTraits< std::complex< T_InnerReal >, typename >::arrayConstructor ( InnerType const * v)
inlinestatic

Array construction of the aggregated type. It is defined as $ w = T(v_0, v_1, ..., v_{N-1}) $ where $ N $ is the number of elements.

◆ getMathRep() [1/2]

template<typename T_InnerReal>
static inlinestd::string codi::RealTraits::AggregatedTypeTraits< std::complex< T_InnerReal > >::getMathRep ( )
inlinestatic

Get the math symbol of the operation. E.g. + for operators and pow() for functions.

◆ getMathRep() [2/2]

static inlinestd::string codi::RealTraits::AggregatedTypeTraits< std::complex< T_InnerReal >, typename >::getMathRep ( )
inlinestatic

Get the math symbol of the operation. E.g. + for operators and pow() for functions.


The documentation for this struct was generated from the following file: