3.6-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Loading...
Searching...
No Matches
istlsolverregistry.hh File Reference

The specialized Dumux macro and tag for the ISTL registry to choose the solver and preconditioner at runtime. More...

#include <dune/istl/common/registry.hh>

Go to the source code of this file.

Description

The specialized Dumux macro and tag for the ISTL registry to choose the solver and preconditioner at runtime.

Namespaces

namespace  Dumux
 Adaption of the non-isothermal two-phase two-component flow model to problems with CO2.

Macros

#define DUMUX_REGISTER_PRECONDITIONER(name, tag, ...)
 Register a Dumux preconditioner.

Macro Definition Documentation

◆ DUMUX_REGISTER_PRECONDITIONER

#define DUMUX_REGISTER_PRECONDITIONER ( name,
tag,
... )
Value:
} namespace Dune { \
DUNE_REGISTRY_PUT(tag, name, __VA_ARGS__); \
} namespace Dumux { \
static_assert(true, "Require semicolon after macro call")
Definition deprecated.hh:149

Register a Dumux preconditioner.

Use this macro in namespace Dumux. Example: DUMUX_REGISTER_PRECONDITIONER("mypreconditioner", Dumux::MultiTypeBlockMatrixPreconditionerTag, Dune::defaultPreconditionerBlockLevelCreator<Dumux::MyPreconditioner, 1>()); Explicitly specifying the namespaces is required. Set parameter Preconditioner.Type to "mypreconditioner" to use it through the factory.

In the macro implementation, the final static_assert forces implementers to put a semicolon after every DUMUX_REGISTER_PRECONDITIONER macro call (cf. example) and avoids a compiler warning for an empty line semicolon at the same time