|
PLaSK library
|
This file contains implementation of vector in 2D space. More...
#include <iostream>#include "../math.hpp"#include <plask/exceptions.hpp>#include <cassert>#include "common.hpp"#include "../utils/metaprog.hpp"#include "../utils/warnings.hpp"Go to the source code of this file.
Classes | |
| struct | plask::Vec< 2, T > |
| Vector in 2D space. More... | |
| struct | plask::NaNImpl< Vec< 2, T > > |
| Specialization of NaNImpl which add support for 2D vectors. More... | |
| struct | plask::ZeroImpl< Vec< 2, T > > |
| Specialization of ZeroImpl which add support for 2D vectors. More... | |
Namespaces | |
| namespace | plask |
| Patterson quadrature for complex function along specified line. | |
| namespace | std |
| STL namespace. | |
Functions | |
| template<typename T > | |
| constexpr Vec< 2, T > | plask::conj (const Vec< 2, T > &v) |
| Calculate vector conjugate. | |
| template<typename T1 , typename T2 > | |
| auto | plask::dot (const Vec< 2, T1 > &v1, const Vec< 2, T2 > &v2) -> decltype(v1.c0 *v2.c0) |
Compute dot product of two vectors v1 and v2. | |
| template<typename T1 , typename T2 > | |
| auto | plask::cross (const Vec< 2, T1 > &v1, const Vec< 2, T2 > &v2) -> decltype(v1.c0 *v2.c1) |
Compute (analog of 3d) cross product of two vectors v1 and v2. | |
| auto | plask::dot (const Vec< 2, dcomplex > &v1, const Vec< 2, double > &v2) -> decltype(v1.c0 *v2.c0) |
Compute dot product of two vectors v1 and v2. | |
| auto | plask::dot (const Vec< 2, dcomplex > &v1, const Vec< 2, dcomplex > &v2) -> decltype(v1.c0 *v2.c0) |
Compute dot product of two vectors v1 and v2. | |
| template<typename T > | |
| constexpr Vec< 2, T > | plask::vec (const T c0__tran, const T c1__up) |
| Helper to create 2D vector. | |
| template<typename T > | |
| bool | plask::is_zero (const Vec< 2, T > &v) |
| Check if the vector is almost zero. | |
| template<typename T > | |
| plask::Vec< 2, T > | std::sqrt (plask::Vec< 2, T > vec) |
| template<typename T , typename OtherT > | |
| plask::Vec< 2, T > | std::pow (plask::Vec< 2, T > vec, OtherT a) |
This file contains implementation of vector in 2D space.
Definition in file 2d.hpp.