MueLu Version of the Day
Loading...
Searching...
No Matches
MueLu::SemiCoarsenPFactory_kokkos< Scalar, LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

Prolongator factory performing semi-coarsening. More...

#include <MueLu_SemiCoarsenPFactory_kokkos_decl.hpp>

Detailed Description

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
class MueLu::SemiCoarsenPFactory_kokkos< Scalar, LocalOrdinal, GlobalOrdinal, Node >

Prolongator factory performing semi-coarsening.

The semi-coarsening is performed along user-provided "vertical lines" (in z-direction). The line detection algorithm can be found in the LineDetectionFactory. Usually, the SemiCoarsenPFactory_kokkos is used together with the TogglePFactory and a second TentativePFactory_kokkos which allows to dynamically switch from semi-coarsening to aggregation-based coarsening (or any other compatible coarsening algorithm).

Input/output of SemiCoarsenPFactory_kokkos

User parameters of SemiCoarsenPFactory_kokkos

Parameter type default master.xml validated requested description
A Factory null * * Generating factory of the matrix A used during the prolongator smoothing process
Nullspace Factory null * * Generating factory of the nullspace. The SemiCoarsenPFactory_kokkos provides a coarse version of the given Nullspace.
Coordinates Factory NoFactory * * Generating factory for coorindates. The coordinates are expected to be provided on the finest level using the NoFactory mechanism. The coordinates are used to determine the number of z-layers if not otherwise provided by the user.
LineDetection_VertLineIds Factory null * * Generating factory for LineDetection information. Usually provided by the LineDetectionFactory. Array with vertical line ids for all nodes on current processor.
LineDetection_Layers Factory null * * Generating factory for LineDetection information. Usually provided by the LineDetectionFactory. Array with layer id for all nodes on current processor.
CoarseNumZLayers Factory null * * Generating factory for LineDetection information. Usually provided by the LineDetectionFactory. Number of remaining z-layers after semi-coarsening.
semicoarsen: coarsen rate int null * * Coarsening rate along vertical lines (2 corresponds to classical semicoarsening. Values > 2 for more aggressive coarsening).

The * in the master.xml column denotes that the parameter is defined in the master.xml file.
The * in the validated column means that the parameter is declared in the list of valid input parameters (see SemiCoarsenPFactory_kokkos::GetValidParameters).
The * in the requested column states that the data is requested as input with all dependencies (see SemiCoarsenPFactory_kokkos::DeclareInput).

Variables provided by SemiCoarsenPFactory_kokkos

After SemiCoarsenPFactory_kokkos::Build the following data is available (if requested)

Parameter generated by description
P SemiCoarsenPFactory_kokkos Prolongator
Nullspace SemiCoarsenPFactory_kokkos Coarse nullspace (the fine level nullspace information is coarsened using P to generate a coarse version of the nullspace. No scaling is applied.
NumZLayers NoFactory Number of z layers after coarsening. Necessary input for LineDetectionFactory. Useful input for TogglePFactory.

Definition at line 97 of file MueLu_SemiCoarsenPFactory_kokkos_decl.hpp.


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