Loading...
Searching...
No Matches
Gudhi::persistence_fields::Multi_field_element< minimum, maximum > Class Template Reference
Persistence Fields

Class representing an element of a multi-field. The characteristics will corresponds to all prime numbers in the interval given as template. More...

`#include <gudhi/Fields/Multi_field.h>`

## Public Types

using | Element = mpz_class
using | Characteristic = Element

## Public Member Functions

| Multi_field_element ()
| Default constructor. Sets the element to 0.
| Multi_field_element (const Element &element)
| Constructor setting the element to the given value.
| Multi_field_element (const Multi_field_element &toCopy)
| Copy constructor.
| Multi_field_element (Multi_field_element &&toMove) noexcept
| Move constructor.
Multi_field_element & | operator= (Multi_field_element other)
| Assign operator.
Multi_field_element & | operator= (const Element &value)
| Assign operator.
| operator unsigned int () const
| Casts the element into an unsigned int.
| operator mpz_class () const
| Casts the element into an mpz_class.
Multi_field_element | get_inverse () const
| Returns the inverse of the element in the multi-field, see [boissonnat:hal-00922572].
std::pair< Multi_field_element, Characteristic > | get_partial_inverse (const Characteristic &productOfCharacteristics) const
| Returns the inverse of the element with respect to a sub-product of the characteristics in the multi-field, see [boissonnat:hal-00922572].
Element | get_value () const
| Returns the value of the element.

## Static Public Member Functions

static Multi_field_element | get_additive_identity ()
| Returns the additive identity of a field.
static Multi_field_element | get_multiplicative_identity ()
| Returns the multiplicative identity of a field.
static Multi_field_element | get_partial_multiplicative_identity (const Characteristic &productOfCharacteristics)
| Returns the partial multiplicative identity of the multi-field from the given product. See [boissonnat:hal-00922572] for more details.
static Characteristic | get_characteristic ()
| Returns the product of all characteristics.

## Friends

void | operator+= (Multi_field_element &f1, Multi_field_element const &f2)
| operator+=
Multi_field_element | operator+ (Multi_field_element f1, Multi_field_element const &f2)
| operator+
void | operator+= (Multi_field_element &f, const Element &v)
| operator+=
Multi_field_element | operator+ (Multi_field_element f, const Element &v)
| operator+
Element | operator+ (Element v, Multi_field_element const &f)
| operator+
void | operator-= (Multi_field_element &f1, Multi_field_element const &f2)
| operator-=
Multi_field_element | operator- (Multi_field_element f1, Multi_field_element const &f2)
| operator-
void | operator-= (Multi_field_element &f, const Element &v)
| operator-=
Multi_field_element | operator- (Multi_field_element f, const Element &v)
| operator-
Element | operator- (Element v, Multi_field_element const &f)
| operator-
void | operator*= (Multi_field_element &f1, Multi_field_element const &f2)
| operator*=
Multi_field_element | operator* (Multi_field_element f1, Multi_field_element const &f2)
| operator*
void | operator*= (Multi_field_element &f, const Element &v)
| operator*=
Multi_field_element | operator* (Multi_field_element f, const Element &v)
| operator*
Element | operator* (Element v, Multi_field_element const &f)
| operator*
bool | operator== (const Multi_field_element &f1, const Multi_field_element &f2)
| operator==
bool | operator== (const Element &v, const Multi_field_element &f)
| operator==
bool | operator== (const Multi_field_element &f, const Element &v)
| operator==
bool | operator!= (const Multi_field_element &f1, const Multi_field_element &f2)
| operator!=
bool | operator!= (const Element &v, const Multi_field_element &f)
| operator!=
bool | operator!= (const Multi_field_element &f, const Element &v)
| operator!=
void | swap (Multi_field_element &f1, Multi_field_element &f2)
| Swap operator.

## Detailed Description

template<unsigned int minimum, unsigned int maximum>
class Gudhi::persistence_fields::Multi_field_element< minimum, maximum >

Class representing an element of a multi-field. The characteristics will corresponds to all prime numbers in the interval given as template.

Template Parameters

  minimum | Interval closed lower bound.
  maximum | Interval closed upper bound.

## Member Typedef Documentation

## Characteristic

template<unsigned int minimum, unsigned int maximum>

using Gudhi::persistence_fields::Multi_field_element< minimum, maximum >::Characteristic = Element

Type for the field characteristic.

## Element

template<unsigned int minimum, unsigned int maximum>

using Gudhi::persistence_fields::Multi_field_element< minimum, maximum >::Element = mpz_class

Type for the elements in the field.

## Constructor & Destructor Documentation

## Multi_field_element() [1/3]

template<unsigned int minimum, unsigned int maximum>

Gudhi::persistence_fields::Multi_field_element< minimum, maximum >::Multi_field_element | ( | const Element & | element | ) |

inline

Constructor setting the element to the given value.

Parameters

  element | Value of the element.

## Multi_field_element() [2/3]

template<unsigned int minimum, unsigned int maximum>

Gudhi::persistence_fields::Multi_field_element< minimum, maximum >::Multi_field_element | ( | const Multi_field_element< minimum, maximum > & | toCopy | ) |

inline

Copy constructor.

Parameters

  toCopy | Element to copy.

## Multi_field_element() [3/3]

template<unsigned int minimum, unsigned int maximum>

Gudhi::persistence_fields::Multi_field_element< minimum, maximum >::Multi_field_element | ( | Multi_field_element< minimum, maximum > && | toMove | ) |

inline noexcept

Move constructor.

Parameters

  toMove | Element to move.

## Member Function Documentation

## get_additive_identity()

template<unsigned int minimum, unsigned int maximum>

Multi_field_element< minimum, maximum > Gudhi::persistence_fields::Multi_field_element< minimum, maximum >::get_additive_identity | ( |  | ) |

inline static

Returns the additive identity of a field.

Returns
  The additive identity of a field.

## get_characteristic()

template<unsigned int minimum, unsigned int maximum>

Multi_field_element< minimum, maximum >::Characteristic Gudhi::persistence_fields::Multi_field_element< minimum, maximum >::get_characteristic | ( |  | ) |

inline static

Returns the product of all characteristics.

Returns
  The product of all characteristics.

## get_inverse()

template<unsigned int minimum, unsigned int maximum>

Multi_field_element< minimum, maximum > Gudhi::persistence_fields::Multi_field_element< minimum, maximum >::get_inverse | ( |  | ) | const

inline

Returns the inverse of the element in the multi-field, see [boissonnat:hal-00922572].

Returns
  The inverse.

## get_multiplicative_identity()

template<unsigned int minimum, unsigned int maximum>

Multi_field_element< minimum, maximum > Gudhi::persistence_fields::Multi_field_element< minimum, maximum >::get_multiplicative_identity | ( |  | ) |

inline static

Returns the multiplicative identity of a field.

Returns
  The multiplicative identity of a field.

## get_partial_inverse()

template<unsigned int minimum, unsigned int maximum>

std::pair< Multi_field_element< minimum, maximum >, typename Multi_field_element< minimum, maximum >::Characteristic > Gudhi::persistence_fields::Multi_field_element< minimum, maximum >::get_partial_inverse | ( | const Characteristic & | productOfCharacteristics | ) | const

inline

Returns the inverse of the element with respect to a sub-product of the characteristics in the multi-field, see [boissonnat:hal-00922572].

Parameters

  productOfCharacteristics | Sub-product of the characteristics.

Returns
  Pair of the inverse and the characteristic the inverse corresponds to.

## get_partial_multiplicative_identity()

template<unsigned int minimum, unsigned int maximum>

Multi_field_element< minimum, maximum > Gudhi::persistence_fields::Multi_field_element< minimum, maximum >::get_partial_multiplicative_identity | ( | const Characteristic & | productOfCharacteristics | ) |

inline static

Returns the partial multiplicative identity of the multi-field from the given product. See [boissonnat:hal-00922572] for more details.

Parameters

  productOfCharacteristics | Product of the different characteristics to take into account in the multi-field.

Returns
  The partial multiplicative identity of the multi-field.

## get_value()

template<unsigned int minimum, unsigned int maximum>

Multi_field_element< minimum, maximum >::Element Gudhi::persistence_fields::Multi_field_element< minimum, maximum >::get_value | ( |  | ) | const

inline

Returns the value of the element.

Returns
  Value of the element.

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

- include/gudhi/Fields/Multi_field.h