|
DOLFIN
DOLFIN C++ interface
|
#include <SystemAssembler.h>


Public Member Functions | |
| SystemAssembler (std::shared_ptr< const Form > a, std::shared_ptr< const Form > L, std::vector< std::shared_ptr< const DirichletBC > > bcs) | |
| Constructor. | |
| SystemAssembler (std::vector< std::shared_ptr< const Form > > a, std::vector< std::shared_ptr< const Form > > L, std::vector< std::vector< std::shared_ptr< const DirichletBC > > > bcs) | |
| SystemAssembler (std::vector< std::shared_ptr< const Form > > a, std::vector< std::shared_ptr< const Form > > L, std::vector< std::shared_ptr< const DirichletBC > > bcs0, std::vector< std::shared_ptr< const DirichletBC > > bcs1) | |
| void | assemble (GenericMatrix &A, GenericVector &b) |
| Assemble system (A, b) | |
| void | assemble (GenericMatrix &A) |
| Assemble matrix A. | |
| void | assemble (GenericVector &b) |
| Assemble vector b. | |
| void | assemble (GenericMatrix &A, GenericVector &b, const GenericVector &x0) |
| void | assemble (GenericVector &b, const GenericVector &x0) |
| void | assemble (std::vector< std::shared_ptr< GenericMatrix > > A, std::vector< std::shared_ptr< GenericVector > > b) |
| Assemble row of matrices and associated RHS vector. | |
Public Member Functions inherited from dolfin::AssemblerBase | |
| AssemblerBase () | |
| Constructor. | |
| void | init_global_tensor (GenericTensor &A, const Form &a) |
Additional Inherited Members | |
Public Attributes inherited from dolfin::AssemblerBase | |
| bool | add_values |
| bool | finalize_tensor |
| bool | keep_diagonal |
Static Protected Member Functions inherited from dolfin::AssemblerBase | |
| static void | check (const Form &a) |
| Check form. | |
| static std::string | progress_message (std::size_t rank, std::string integral_type) |
| Pretty-printing for progress bar. | |
This class provides an assembler for systems of the form Ax = b. It differs from the default DOLFIN assembler in that it applies boundary conditions at the time of assembly, which preserves any symmetries in A.
| SystemAssembler::SystemAssembler | ( | std::vector< std::shared_ptr< const Form > > | a, |
| std::vector< std::shared_ptr< const Form > > | L, | ||
| std::vector< std::vector< std::shared_ptr< const DirichletBC > > > | bcs | ||
| ) |
Constructor with multiple LHS forms, matching a common RHS form with BCs defined for the column space of each LHS form
| SystemAssembler::SystemAssembler | ( | std::vector< std::shared_ptr< const Form > > | a, |
| std::vector< std::shared_ptr< const Form > > | L, | ||
| std::vector< std::shared_ptr< const DirichletBC > > | bcs0, | ||
| std::vector< std::shared_ptr< const DirichletBC > > | bcs1 | ||
| ) |
FIXME: Constructor with two sets of BCs (for 2x2 system) Need to figure out how to wrap vector<vector<shared_ptr<TYPE>>> in SWIG
| void SystemAssembler::assemble | ( | GenericMatrix & | A, |
| GenericVector & | b, | ||
| const GenericVector & | x0 | ||
| ) |
Assemble system (A, b) for (negative) increment dx, where x = x0 - dx is solution to system a == -L subject to bcs. Suitable for use inside a (quasi-)Newton solver.
| void SystemAssembler::assemble | ( | GenericVector & | b, |
| const GenericVector & | x0 | ||
| ) |
Assemble rhs vector b for (negative) increment dx, where x = x0 - dx is solution to system a == -L subject to bcs. Suitable for use inside a (quasi-)Newton solver.