High Performance Plasticity  0.5.0
hpp::Tensor2AsymmCUDA< T, N > Class Template Reference

#include <tensorCUDA.h>

Collaboration diagram for hpp::Tensor2AsymmCUDA< T, N >:

Public Member Functions

__host__ __device__ Tensor2AsymmCUDA ()
 
__host__ __device__ Tensor2AsymmCUDA< T, N > & operator= (const Tensor2AsymmCUDA< T, N > &input)
 
__host__ Tensor2AsymmCUDA (const Tensor2CUDA< T, N, N > &input)
 
__host__ Tensor2AsymmCUDA (const Tensor2< T > &input)
 
__host__ __device__ unsigned int getUpperFlatIdx (const unsigned int i, const unsigned int j) const
 Get flat index for upper triangular portion. More...
 
__host__ __device__ void setVal (const unsigned int i, const unsigned int j, const T val)
 
__host__ __device__ T getVal (const unsigned int i, const unsigned int j) const
 

Protected Member Functions

__host__ __device__ unsigned int getNelements () const
 

Protected Attributes

vals [(N *(N-1))/2]
 

Friends

template<typename U , unsigned int M>
__host__ __device__ Tensor2AsymmCUDA< U, M > operator- (const Tensor2AsymmCUDA< U, M > &A, const Tensor2AsymmCUDA< U, M > &B)
 
template<typename U , unsigned int M>
__host__ __device__ Tensor2AsymmCUDA< U, M > operator+ (const Tensor2AsymmCUDA< U, M > &A, const Tensor2AsymmCUDA< U, M > &B)
 

Detailed Description

template<typename T, unsigned int N>
class hpp::Tensor2AsymmCUDA< T, N >

Author
Michael Malahe
Date
28/04/17

Constructor & Destructor Documentation

template<typename T, unsigned int N>
__host__ __device__ hpp::Tensor2AsymmCUDA< T, N >::Tensor2AsymmCUDA ( )
inline
template<typename T, unsigned int N>
__host__ hpp::Tensor2AsymmCUDA< T, N >::Tensor2AsymmCUDA ( const Tensor2CUDA< T, N, N > &  input)
inline
template<typename T, unsigned int N>
__host__ hpp::Tensor2AsymmCUDA< T, N >::Tensor2AsymmCUDA ( const Tensor2< T > &  input)
inline

Member Function Documentation

template<typename T, unsigned int N>
__host__ __device__ unsigned int hpp::Tensor2AsymmCUDA< T, N >::getNelements ( ) const
inlineprotected
template<typename T, unsigned int N>
__host__ __device__ unsigned int hpp::Tensor2AsymmCUDA< T, N >::getUpperFlatIdx ( const unsigned int  i,
const unsigned int  j 
) const
inline

Get flat index for upper triangular portion.

Only valid inputs are j>i

Parameters
i
j
Returns
template<typename T, unsigned int N>
__host__ __device__ T hpp::Tensor2AsymmCUDA< T, N >::getVal ( const unsigned int  i,
const unsigned int  j 
) const
inline
template<typename T, unsigned int N>
__host__ __device__ Tensor2AsymmCUDA<T,N>& hpp::Tensor2AsymmCUDA< T, N >::operator= ( const Tensor2AsymmCUDA< T, N > &  input)
inline
template<typename T, unsigned int N>
__host__ __device__ void hpp::Tensor2AsymmCUDA< T, N >::setVal ( const unsigned int  i,
const unsigned int  j,
const T  val 
)
inline

Friends And Related Function Documentation

template<typename T, unsigned int N>
template<typename U , unsigned int M>
__host__ __device__ Tensor2AsymmCUDA<U,M> operator+ ( const Tensor2AsymmCUDA< U, M > &  A,
const Tensor2AsymmCUDA< U, M > &  B 
)
friend
template<typename T, unsigned int N>
template<typename U , unsigned int M>
__host__ __device__ Tensor2AsymmCUDA<U,M> operator- ( const Tensor2AsymmCUDA< U, M > &  A,
const Tensor2AsymmCUDA< U, M > &  B 
)
friend

Member Data Documentation

template<typename T, unsigned int N>
T hpp::Tensor2AsymmCUDA< T, N >::vals[(N *(N-1))/2]
protected

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