TRIQS/TRIQS 4.0.0
Researching Interacting Quantum Systems
Loading...
Searching...
No Matches
triqs::mesh::detail::linear< M, T >::mesh_point_t

#include <triqs/mesh/bases/linear.hpp>

Detailed Description

template<typename M, typename T>
class triqs::mesh::detail::linear< M, T >::mesh_point_t

Mesh point of a triqs::mesh::detail::linear mesh.

It stores the index \( n \), the data index \( d \), the hash value of the parent mesh and the value \( m \) of the mesh point.

Arithmetic operations are defined for mesh points and scalars of the underlying value type. The operations are performed between the value \( m \) of the mesh point and the given scalar.

Definition at line 94 of file linear.hpp.

Public Types

using mesh_t = M
 Parent mesh type.

Public Member Functions

 mesh_point_t ()=default
 Default constructor leaves the mesh point uninitialized.
 mesh_point_t (long n, long d, uint64_t mhash, double m)
 Construct a mesh point with a given index \( n \), data index \( d \), hash value of the parent mesh and value \( m \).
long data_index () const
 Get the data index \( d \) of the mesh point.
long index () const
 Get the index \( n \) of the mesh point.
uint64_t mesh_hash () const noexcept
 Get the hash value of the parent mesh.
 operator value_t () const
 Conversion to the value type of the parent mesh.
value_t value () const
 Get the value \( m \) of the mesh point.

Friends

template<typename U>
auto operator* (mesh_point_t const &mp, U &&y)
 Binary * operation for a linear::mesh_point_t and some type U.
template<typename U>
requires (not std::is_same_v<std::decay_t<U>, mesh_point_t>)
auto operator* (U &&x, mesh_point_t const &mp)
 Binary * operation for some type U and a linear::mesh_point_t.
template<typename U>
auto operator+ (mesh_point_t const &mp, U &&y)
 Binary + operation for a linear::mesh_point_t and some type U.
template<typename U>
requires (not std::is_same_v<std::decay_t<U>, mesh_point_t>)
auto operator+ (U &&x, mesh_point_t const &mp)
 Binary + operation for some type U and a linear::mesh_point_t.
template<typename U>
auto operator- (mesh_point_t const &mp, U &&y)
 Binary - operation for a linear::mesh_point_t and some type U.
template<typename U>
requires (not std::is_same_v<std::decay_t<U>, mesh_point_t>)
auto operator- (U &&x, mesh_point_t const &mp)
 Binary - operation for some type U and a linear::mesh_point_t.
template<typename U>
auto operator/ (mesh_point_t const &mp, U &&y)
 Binary / operation for a linear::mesh_point_t and some type U.
template<typename U>
requires (not std::is_same_v<std::decay_t<U>, mesh_point_t>)
auto operator/ (U &&x, mesh_point_t const &mp)
 Binary / operation for some type U and a linear::mesh_point_t.

Constructor & Destructor Documentation

◆ mesh_point_t()

template<typename M, typename T>
triqs::mesh::detail::linear< M, T >::mesh_point_t::mesh_point_t ( long n,
long d,
uint64_t mhash,
double m )
inline

Construct a mesh point with a given index \( n \), data index \( d \), hash value of the parent mesh and value \( m \).

Parameters
nIndex \( n \) of the mesh point.
dData index \( d \) of the mesh point.
mhashHash value of the parent mesh.
mValue \( m \) of the mesh point.

Definition at line 111 of file linear.hpp.


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