PLaSK library
Loading...
Searching...
No Matches
lazydata.hpp File Reference
#include "data.hpp"
#include "parallel.hpp"
#include "utils/openmp.hpp"
#include "vector/tensor2.hpp"
#include "vector/tensor3.hpp"
#include "utils/iterators.hpp"
Include dependency graph for lazydata.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  plask::LazyDataImpl< T >
 Base class for implementation used by lazy data vector. More...
 
struct  plask::ConstValueLazyDataImpl< T >
 Lazy data vector of consts. More...
 
struct  plask::LazyDataFromVectorImpl< T >
 Wrap DataVector and allow to access to it. More...
 
struct  plask::LazyDataDelegateImpl< T >
 Call functor to get data. More...
 
class  plask::LazyData< T >
 Lazy data (vector). More...
 
struct  plask::ScaledLazyDataImpl< T, ScaleT, ReturnedType >
 
struct  plask::SafeDataImpl< T >
 LazyData implementation removing NaN from another data. More...
 

Namespaces

namespace  plask
 Patterson quadrature for complex function along specified line.
 

Functions

template<typename T , typename S >
LazyData< typename ScaledLazyDataImpl< T, S >::CellType > plask::operator* (LazyData< T > data, const S &scale)
 Compute factor of data and a.
 
template<typename T , typename S >
LazyData< typename ScaledLazyDataImpl< T, S >::CellType > plask::operator* (const S &scale, LazyData< T > data)
 Compute factor of vec and a.
 
template<class T1 , class T2 >
bool plask::operator== (LazyData< T1 > const &a, LazyData< T2 > const &b)
 Check if two lazy data vectors are equal.
 
template<class T1 , class T2 >
bool plask::operator== (LazyData< T1 > const &a, DataVector< T2 > const &b)
 Check if two vectors are equal.
 
template<class T1 , class T2 >
bool plask::operator== (DataVector< T1 > const &a, LazyData< T2 > const &b)
 Check if two vectors are equal.
 
template<class T1 , class T2 >
bool plask::operator!= (LazyData< T1 > const &a, LazyData< T2 > const &b)
 Check if two data vectors are not equal.
 
template<class T1 , class T2 >
bool plask::operator!= (LazyData< T1 > const &a, DataVector< T2 > const &b)
 
template<class T1 , class T2 >
bool plask::operator!= (DataVector< T1 > const &a, LazyData< T2 > const &b)
 
template<class T1 , class T2 >
bool plask::operator< (LazyData< T1 > const &a, LazyData< T2 > const &b)
 A lexical comparison of two (lazy) data vectors.
 
template<class T1 , class T2 >
bool plask::operator< (DataVector< T1 > const &a, LazyData< T2 > const &b)
 
template<class T1 , class T2 >
bool plask::operator< (LazyData< T1 > const &a, DataVector< T2 > const &b)
 
template<class T1 , class T2 >
bool plask::operator> (LazyData< T1 > const &a, LazyData< T2 > const &b)
 A lexical comparison of two (lazy) data vectors.
 
template<class T1 , class T2 >
bool plask::operator> (DataVector< T1 > const &a, LazyData< T2 > const &b)
 
template<class T1 , class T2 >
bool plask::operator> (LazyData< T1 > const &a, DataVector< T2 > const &b)
 
template<class T1 , class T2 >
bool plask::operator<= (LazyData< T1 > const &a, LazyData< T2 > const &b)
 A lexical comparison of two (lazy) data vectors.
 
template<class T1 , class T2 >
bool plask::operator<= (DataVector< T1 > const &a, LazyData< T2 > const &b)
 
template<class T1 , class T2 >
bool plask::operator<= (LazyData< T1 > const &a, DataVector< T2 > const &b)
 
template<class T1 , class T2 >
bool plask::operator>= (LazyData< T1 > const &a, LazyData< T2 > const &b)
 A lexical comparison of two (lazy) data vectors.
 
template<class T1 , class T2 >
bool plask::operator>= (DataVector< T1 > const &a, LazyData< T2 > const &b)
 
template<class T1 , class T2 >
bool plask::operator>= (LazyData< T1 > const &a, DataVector< T2 > const &b)
 
template<class T >
std::ostream & plask::operator<< (std::ostream &out, LazyData< T > const &to_print)
 Print lazy data vector to stream.
 
template<typename T >
LazyData< T > plask::SafeData (const LazyData< T > &src, const T safe_value=Zero< T >())
 Make LazyData removing NaN from another lazy data.