DOLFIN
DOLFIN C++ interface
Loading...
Searching...
No Matches
dolfin::SystemAssembler Class Reference

#include <SystemAssembler.h>

Inheritance diagram for dolfin::SystemAssembler:
Collaboration diagram for dolfin::SystemAssembler:

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.
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)
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.

Detailed Description

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.

Member Function Documentation

◆ assemble() [1/2]

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.

◆ assemble() [2/2]

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.


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