PLaSK library

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
plask::optical::modal::MatrixDiagonal< T > Class Template Reference

General simple diagonal matrix template. More...

`#include <solvers/optical/modal/matrices.hpp>`

Collaboration diagram for plask::optical::modal::MatrixDiagonal< T >:
[legend]

## Public Types
typedef T | DataType

## Public Member Functions
| MatrixDiagonal ()
| MatrixDiagonal (size_t n)
| MatrixDiagonal (size_t n, T val)
| MatrixDiagonal (const MatrixDiagonal< T > &M)
MatrixDiagonal< T > & | operator= (const MatrixDiagonal< T > &M)
| ~MatrixDiagonal ()
void | reset ()
void | reset (size_t n)
void | reset (size_t n, T val)
const T * | data () const
T * | data ()
const T & | operator[] (size_t n) const
T & | operator[] (size_t n)
const T & | operator() (size_t m, size_t n) const
T & | operator() (size_t m, size_t n)
size_t | size () const
MatrixDiagonal< T > | copy () const
MatrixDiagonal< T > & | operator*= (T a)
MatrixDiagonal< T > & | operator/= (T a)
bool | isnan () const
| Check if the matrix contains any NaN.
bool | empty () const
| Check if the matrix has any data.
T * | begin () const
T * | end () const

## Protected Member Functions
void | dec_ref ()
void | inc_ref ()

## Protected Attributes
size_t | siz
T * | data_
std::atomic< int > * | gc

## Detailed Description

template<typename T>
class plask::optical::modal::MatrixDiagonal< T >

General simple diagonal matrix template.

Definition at line 203 of file matrices.hpp.

## Member Typedef Documentation

## ◆ DataType

template<typename T >

typedef T plask::optical::modal::MatrixDiagonal< T >::DataType

Definition at line 225 of file matrices.hpp.

## Constructor & Destructor Documentation

## ◆ MatrixDiagonal() [1/4]

template<typename T >

plask::optical::modal::MatrixDiagonal< T >::MatrixDiagonal | ( |  | ) |
| inline

Definition at line 227 of file matrices.hpp.

## ◆ MatrixDiagonal() [2/4]

template<typename T >

plask::optical::modal::MatrixDiagonal< T >::MatrixDiagonal | ( | size_t | n | ) |
| inline

Definition at line 229 of file matrices.hpp.

## ◆ MatrixDiagonal() [3/4]

template<typename T >

plask::optical::modal::MatrixDiagonal< T >::MatrixDiagonal | ( | size_t | n,
|  | T | val
| ) |  |
| inline

Definition at line 233 of file matrices.hpp.

## ◆ MatrixDiagonal() [4/4]

template<typename T >

plask::optical::modal::MatrixDiagonal< T >::MatrixDiagonal | ( | const MatrixDiagonal< T > & | M | ) |
| inline

Definition at line 238 of file matrices.hpp.

## ◆ ~MatrixDiagonal()

template<typename T >

plask::optical::modal::MatrixDiagonal< T >::~MatrixDiagonal | ( |  | ) |
| inline

Definition at line 249 of file matrices.hpp.

## Member Function Documentation

## ◆ begin()

template<typename T >

T * plask::optical::modal::MatrixDiagonal< T >::begin | ( |  | ) | const
| inline

Definition at line 324 of file matrices.hpp.

## ◆ copy()

template<typename T >

MatrixDiagonal< T > plask::optical::modal::MatrixDiagonal< T >::copy | ( |  | ) | const
| inline

Definition at line 303 of file matrices.hpp.

## ◆ data() [1/2]

template<typename T >

T * plask::optical::modal::MatrixDiagonal< T >::data | ( |  | ) |
| inline

Definition at line 278 of file matrices.hpp.

## ◆ data() [2/2]

template<typename T >

const T * plask::optical::modal::MatrixDiagonal< T >::data | ( |  | ) | const
| inline

Definition at line 277 of file matrices.hpp.

## ◆ dec_ref()

template<typename T >

void plask::optical::modal::MatrixDiagonal< T >::dec_ref | ( |  | ) |
| inline protected

Definition at line 210 of file matrices.hpp.

## ◆ empty()

template<typename T >

bool plask::optical::modal::MatrixDiagonal< T >::empty | ( |  | ) | const
| inline

Check if the matrix has any data.

Definition at line 320 of file matrices.hpp.

## ◆ end()

template<typename T >

T * plask::optical::modal::MatrixDiagonal< T >::end | ( |  | ) | const
| inline

Definition at line 328 of file matrices.hpp.

## ◆ inc_ref()

template<typename T >

void plask::optical::modal::MatrixDiagonal< T >::inc_ref | ( |  | ) |
| inline protected

Definition at line 219 of file matrices.hpp.

## ◆ isnan()

template<typename T >

bool plask::optical::modal::MatrixDiagonal< T >::isnan | ( |  | ) | const
| inline

Check if the matrix contains any NaN.

Definition at line 313 of file matrices.hpp.

## ◆ operator()() [1/2]

template<typename T >

T & plask::optical::modal::MatrixDiagonal< T >::operator() | ( | size_t | m,
|  | size_t | n
| ) |  |
| inline

Definition at line 294 of file matrices.hpp.

## ◆ operator()() [2/2]

template<typename T >

const T & plask::optical::modal::MatrixDiagonal< T >::operator() | ( | size_t | m,
|  | size_t | n
| ) |  | const
| inline

Definition at line 289 of file matrices.hpp.

## ◆ operator*=()

template<typename T >

MatrixDiagonal< T > & plask::optical::modal::MatrixDiagonal< T >::operator*= | ( | T | a | ) |
| inline

Definition at line 309 of file matrices.hpp.

## ◆ operator/=()

template<typename T >

MatrixDiagonal< T > & plask::optical::modal::MatrixDiagonal< T >::operator/= | ( | T | a | ) |
| inline

Definition at line 310 of file matrices.hpp.

## ◆ operator=()

template<typename T >

MatrixDiagonal< T > & plask::optical::modal::MatrixDiagonal< T >::operator= | ( | const MatrixDiagonal< T > & | M | ) |
| inline

Definition at line 242 of file matrices.hpp.

## ◆ operator[]() [1/2]

template<typename T >

T & plask::optical::modal::MatrixDiagonal< T >::operator[] | ( | size_t | n | ) |
| inline

Definition at line 284 of file matrices.hpp.

## ◆ operator[]() [2/2]

template<typename T >

const T & plask::optical::modal::MatrixDiagonal< T >::operator[] | ( | size_t | n | ) | const
| inline

Definition at line 280 of file matrices.hpp.

## ◆ reset() [1/3]

template<typename T >

void plask::optical::modal::MatrixDiagonal< T >::reset | ( |  | ) |
| inline

Definition at line 253 of file matrices.hpp.

## ◆ reset() [2/3]

template<typename T >

void plask::optical::modal::MatrixDiagonal< T >::reset | ( | size_t | n | ) |
| inline

Definition at line 260 of file matrices.hpp.

## ◆ reset() [3/3]

template<typename T >

void plask::optical::modal::MatrixDiagonal< T >::reset | ( | size_t | n,
|  | T | val
| ) |  |
| inline

Definition at line 268 of file matrices.hpp.

## ◆ size()

template<typename T >

size_t plask::optical::modal::MatrixDiagonal< T >::size | ( |  | ) | const
| inline

Definition at line 301 of file matrices.hpp.

## Member Data Documentation

## ◆ data_

template<typename T >

T* plask::optical::modal::MatrixDiagonal< T >::data_
| protected

Definition at line 207 of file matrices.hpp.

## ◆ gc

template<typename T >

std::atomic<int>* plask::optical::modal::MatrixDiagonal< T >::gc
| protected

Definition at line 208 of file matrices.hpp.

## ◆ siz

template<typename T >

size_t plask::optical::modal::MatrixDiagonal< T >::siz
| protected

Definition at line 205 of file matrices.hpp.

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

- solvers/optical/modal/matrices.hpp