Ginkgo: gko::multigrid::EnableMultigridLevel< ValueType > Class Template Reference

| Ginkgo Generated from branch based on main. Ginkgo version 1.11.0 A numerical linear algebra library targeting many-core architectures

Loading...
Searching...
No Matches
gko::multigrid::EnableMultigridLevel< ValueType > Class Template Reference

The EnableMultigridLevel gives the default implementation of MultigridLevel with composition and provides set_multigrid_level function. More...

`#include <ginkgo/core/multigrid/multigrid_level.hpp>`

Inheritance diagram for gko::multigrid::EnableMultigridLevel< ValueType >:
[legend]
Collaboration diagram for gko::multigrid::EnableMultigridLevel< ValueType >:
[legend]

## Public Types
using | value_type = ValueType
Public Types inherited from gko::UseComposition< ValueType >
using | value_type

## Public Member Functions
std::shared_ptr< const LinOp > | get_fine_op () const override
| Returns the operator on fine level.
std::shared_ptr< const LinOp > | get_restrict_op () const override
| Returns the restrict operator.
std::shared_ptr< const LinOp > | get_coarse_op () const override
| Returns the operator on coarse level.
std::shared_ptr< const LinOp > | get_prolong_op () const override
| Returns the prolong operator.
Public Member Functions inherited from gko::UseComposition< ValueType >
std::shared_ptr< Composition< ValueType > > | get_composition () const
| Returns the composition operators.
std::shared_ptr< const LinOp > | get_operator_at (size_type index) const
| Returns the operator at index-th position of composition.

## Detailed Description

template<typename ValueType>
class gko::multigrid::EnableMultigridLevel< ValueType >

The EnableMultigridLevel gives the default implementation of MultigridLevel with composition and provides set_multigrid_level function.

A class inherit from EnableMultigridLevel should use the this->get_compositions()->apply(...) as its own apply, which represents op(b) = prolong(coarse(restrict(b))).

## Member Function Documentation

## ◆ get_coarse_op()

template<typename ValueType>

std::shared_ptr< const LinOp > gko::multigrid::EnableMultigridLevel< ValueType >::get_coarse_op | ( |  | ) | const
| inlineoverridevirtual

Returns the operator on coarse level.

Returns
  the operator on coarse level.

Implements gko::multigrid::MultigridLevel.

References gko::UseComposition< ValueType >::get_operator_at().

## ◆ get_fine_op()

template<typename ValueType>

std::shared_ptr< const LinOp > gko::multigrid::EnableMultigridLevel< ValueType >::get_fine_op | ( |  | ) | const
| inlineoverridevirtual

Returns the operator on fine level.

Returns
  the operator on fine level.

Implements gko::multigrid::MultigridLevel.

## ◆ get_prolong_op()

template<typename ValueType>

std::shared_ptr< const LinOp > gko::multigrid::EnableMultigridLevel< ValueType >::get_prolong_op | ( |  | ) | const
| inlineoverridevirtual

Returns the prolong operator.

Returns
  the prolong operator.

Implements gko::multigrid::MultigridLevel.

References gko::UseComposition< ValueType >::get_operator_at().

## ◆ get_restrict_op()

template<typename ValueType>

std::shared_ptr< const LinOp > gko::multigrid::EnableMultigridLevel< ValueType >::get_restrict_op | ( |  | ) | const
| inlineoverridevirtual

Returns the restrict operator.

Returns
  the restrict operator.

Implements gko::multigrid::MultigridLevel.

References gko::UseComposition< ValueType >::get_operator_at().

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

- ginkgo/core/multigrid/multigrid_level.hpp