Reference documentation for deal.II version GIT c00406db16 2023-09-28 18:00:02+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
SLEPcWrappers::TransformationBase Class Reference

#include <deal.II/lac/slepc_spectral_transformation.h>

Inheritance diagram for SLEPcWrappers::TransformationBase:

Public Member Functions

virtual ~TransformationBase ()
void set_matrix_mode (const STMatMode mode)
void set_solver (const PETScWrappers::SolverBase &solver)

Protected Member Functions

 TransformationBase (const MPI_Comm mpi_communicator)

Protected Attributes

ST st


class SolverBase

Detailed Description

Base class for spectral transformation classes using the SLEPc solvers which are selected based on flags passed to the spectral transformation.

SLEPcWrappers::TransformationXXX, where XXX is your favourite transformation type, can then be implemented in application codes in the following way for XXX=INVERT with the solver object eigensolver:

// Set a transformation, this one shifts the eigenspectrum by 3.142..
SLEPcWrappers::TransformationShift shift(mpi_communicator,additional_data);
void shift(const Tensor< 1, spacedim > &shift_vector, Triangulation< dim, spacedim > &triangulation)

and later calling the solve() function as usual:

SolverControl solver_control (1000, 1e-9);
SolverArnoldi system (solver_control, mpi_communicator);
eigensolver.solve (A, B, lambda, x, size_of_spectrum);
static const char A
SymmetricTensor< 2, dim, Number > e(const Tensor< 2, dim, Number > &F)
These options can also be set at the command line.

Definition at line 76 of file slepc_spectral_transformation.h.

Constructor & Destructor Documentation

◆ TransformationBase()

SLEPcWrappers::TransformationBase::TransformationBase ( const MPI_Comm  mpi_communicator)


Definition at line 32 of file

◆ ~TransformationBase()

SLEPcWrappers::TransformationBase::~TransformationBase ( )


Definition at line 38 of file

Member Function Documentation

◆ set_matrix_mode()

void SLEPcWrappers::TransformationBase::set_matrix_mode ( const STMatMode  mode)

Set a flag to indicate how the transformed matrices are being stored in the spectral transformations.

The possible values are given by the enumerator STMatMode in the SLEPc library

Definition at line 49 of file

◆ set_solver()

void SLEPcWrappers::TransformationBase::set_solver ( const PETScWrappers::SolverBase solver)

Set solver to be used when solving a system of linear algebraic equations inside the eigensolver.

Definition at line 56 of file

Friends And Related Function Documentation

◆ SolverBase

friend class SolverBase

Definition at line 116 of file slepc_spectral_transformation.h.

Member Data Documentation

◆ st

ST SLEPcWrappers::TransformationBase::st

SLEPc spectral transformation object.

Definition at line 112 of file slepc_spectral_transformation.h.

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