dune-mmesh 1.4.1-git
Loading...
Searching...
No Matches
Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol > Class Template Reference

#include <dune/python/mmesh/jacobian.hh>

Public Types

using Scheme = Sch
 
using IScheme = ISch
 
using Solution = Sol
 
using ISolution = ISol
 
using SparseMatrix = Dune::Fem::SparseRowMatrix< double, int >
 
using AType = typename Scheme::JacobianOperatorType
 
using BType = Dune::Fem::SparseRowLinearOperator< ISolution, Solution, SparseMatrix >
 
using CType = Dune::Fem::SparseRowLinearOperator< Solution, ISolution, SparseMatrix >
 
using DType = typename IScheme::JacobianOperatorType
 
using UMFPackMatrix = Dune::BCRSMatrix< double >
 
using UMFPackVector = Dune::BlockVector< double >
 
typedef AType::DomainSpaceType BulkSpaceType
 
typedef DType::DomainSpaceType InterfaceSpaceType
 
using Scheme = Sch
 
using IScheme = ISch
 
using Solution = Sol
 
using ISolution = ISol
 
using AType = typename Scheme::JacobianOperatorType
 
using BType = Dune::Fem::ISTLLinearOperator< ISolution, Solution >
 
using CType = Dune::Fem::ISTLLinearOperator< Solution, ISolution >
 
using DType = typename IScheme::JacobianOperatorType
 
using AMatrixBlock = Dune::BCRSMatrix< typename AType::MatrixBlockType >
 
using BMatrixBlock = Dune::BCRSMatrix< typename BType::MatrixBlockType >
 
using CMatrixBlock = Dune::BCRSMatrix< typename CType::MatrixBlockType >
 
using DMatrixBlock = Dune::BCRSMatrix< typename DType::MatrixBlockType >
 
using ABRowType = Dune::MultiTypeBlockVector< AMatrixBlock, BMatrixBlock >
 
using CDRowType = Dune::MultiTypeBlockVector< CMatrixBlock, DMatrixBlock >
 
using BlockMatrix = Dune::MultiTypeBlockMatrix< ABRowType, CDRowType >
 
using AVectorBlock = typename AType::ColumnBlockVectorType
 
using DVectorBlock = typename DType::ColumnBlockVectorType
 
using BlockVector = Dune::MultiTypeBlockVector< AVectorBlock, DVectorBlock >
 
typedef AType::DomainSpaceType BulkSpaceType
 
typedef DType::DomainSpaceType InterfaceSpaceType
 
using ParameterType = Fem::NewtonParameter< typename IScheme::LinearInverseOperatorType::SolverParameterType >
 

Public Member Functions

 Jacobian (const Scheme &scheme, const IScheme &ischeme, const Solution &uh, const ISolution &th, const double eps, const std::function< void()> &callback)
 
void init ()
 
void update (const Solution &uh, const ISolution &th)
 
void solve (const Solution &f, const ISolution &g, Solution &u, ISolution &t)
 
 Jacobian (const Scheme &scheme, const IScheme &ischeme, const Solution &uh, const ISolution &th, const double eps, const std::function< void()> &callback)
 
const Schemescheme () const
 
const BlockMatrixM () const
 
void init ()
 
void update (const Solution &uh, const ISolution &th)
 
void solve (const Solution &f, const ISolution &g, Solution &u, ISolution &t)
 

Member Typedef Documentation

◆ ABRowType

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::ABRowType = Dune::MultiTypeBlockVector<AMatrixBlock, BMatrixBlock>

◆ AMatrixBlock

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::AMatrixBlock = Dune::BCRSMatrix<typename AType::MatrixBlockType>

◆ AType [1/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::AType = typename Scheme::JacobianOperatorType

◆ AType [2/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::AType = typename Scheme::JacobianOperatorType

◆ AVectorBlock

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::AVectorBlock = typename AType::ColumnBlockVectorType

◆ BlockMatrix

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::BlockMatrix = Dune::MultiTypeBlockMatrix<ABRowType, CDRowType>

◆ BlockVector

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::BlockVector = Dune::MultiTypeBlockVector<AVectorBlock, DVectorBlock>

◆ BMatrixBlock

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::BMatrixBlock = Dune::BCRSMatrix<typename BType::MatrixBlockType>

◆ BType [1/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::BType = Dune::Fem::SparseRowLinearOperator<ISolution, Solution, SparseMatrix>

◆ BType [2/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::BType = Dune::Fem::ISTLLinearOperator<ISolution, Solution>

◆ BulkSpaceType [1/2]

template<class Sch , class ISch , class Sol , class ISol >
typedef AType::DomainSpaceType Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::BulkSpaceType

◆ BulkSpaceType [2/2]

template<class Sch , class ISch , class Sol , class ISol >
typedef AType::DomainSpaceType Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::BulkSpaceType

◆ CDRowType

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::CDRowType = Dune::MultiTypeBlockVector<CMatrixBlock, DMatrixBlock>

◆ CMatrixBlock

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::CMatrixBlock = Dune::BCRSMatrix<typename CType::MatrixBlockType>

◆ CType [1/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::CType = Dune::Fem::SparseRowLinearOperator<Solution, ISolution, SparseMatrix>

◆ CType [2/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::CType = Dune::Fem::ISTLLinearOperator<Solution, ISolution>

◆ DMatrixBlock

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::DMatrixBlock = Dune::BCRSMatrix<typename DType::MatrixBlockType>

◆ DType [1/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::DType = typename IScheme::JacobianOperatorType

◆ DType [2/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::DType = typename IScheme::JacobianOperatorType

◆ DVectorBlock

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::DVectorBlock = typename DType::ColumnBlockVectorType

◆ InterfaceSpaceType [1/2]

template<class Sch , class ISch , class Sol , class ISol >
typedef DType::DomainSpaceType Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::InterfaceSpaceType

◆ InterfaceSpaceType [2/2]

template<class Sch , class ISch , class Sol , class ISol >
typedef DType::DomainSpaceType Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::InterfaceSpaceType

◆ IScheme [1/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::IScheme = ISch

◆ IScheme [2/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::IScheme = ISch

◆ ISolution [1/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::ISolution = ISol

◆ ISolution [2/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::ISolution = ISol

◆ ParameterType

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::ParameterType = Fem::NewtonParameter< typename IScheme::LinearInverseOperatorType::SolverParameterType>

◆ Scheme [1/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::Scheme = Sch

◆ Scheme [2/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::Scheme = Sch

◆ Solution [1/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::Solution = Sol

◆ Solution [2/2]

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::Solution = Sol

◆ SparseMatrix

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::SparseMatrix = Dune::Fem::SparseRowMatrix<double, int>

◆ UMFPackMatrix

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::UMFPackMatrix = Dune::BCRSMatrix<double>

◆ UMFPackVector

template<class Sch , class ISch , class Sol , class ISol >
using Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::UMFPackVector = Dune::BlockVector<double>

Constructor & Destructor Documentation

◆ Jacobian() [1/2]

template<class Sch , class ISch , class Sol , class ISol >
Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::Jacobian ( const Scheme scheme,
const IScheme ischeme,
const Solution uh,
const ISolution th,
const double  eps,
const std::function< void()> &  callback 
)
inline

◆ Jacobian() [2/2]

template<class Sch , class ISch , class Sol , class ISol >
Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::Jacobian ( const Scheme scheme,
const IScheme ischeme,
const Solution uh,
const ISolution th,
const double  eps,
const std::function< void()> &  callback 
)
inline

Member Function Documentation

◆ init() [1/2]

template<class Sch , class ISch , class Sol , class ISol >
void Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::init ( )
inline

◆ init() [2/2]

template<class Sch , class ISch , class Sol , class ISol >
void Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::init ( )
inline

◆ M()

template<class Sch , class ISch , class Sol , class ISol >
const BlockMatrix & Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::M ( ) const
inline

◆ scheme()

template<class Sch , class ISch , class Sol , class ISol >
const Scheme & Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::scheme ( ) const
inline

◆ solve() [1/2]

template<class Sch , class ISch , class Sol , class ISol >
void Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::solve ( const Solution f,
const ISolution g,
Solution u,
ISolution t 
)
inline

◆ solve() [2/2]

template<class Sch , class ISch , class Sol , class ISol >
void Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::solve ( const Solution f,
const ISolution g,
Solution u,
ISolution t 
)
inline

◆ update() [1/2]

template<class Sch , class ISch , class Sol , class ISol >
void Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::update ( const Solution uh,
const ISolution th 
)
inline

◆ update() [2/2]

template<class Sch , class ISch , class Sol , class ISol >
void Dune::Python::MMesh::Jacobian< Sch, ISch, Sol, ISol >::update ( const Solution uh,
const ISolution th 
)
inline

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