37 Base::scalarProblemGalerkinRefresh();
44 "Sparse system is not initialized, call initialize() or refresh()");
47 m_system.reserve(m_bases[0], m_options, this->pde().numRhs());
50 Base::computeDirichletDofs();
56 Base::template push<gsVisitorPoisson<T> >();
59 Base::template push<gsVisitorNeumann<T> >(m_pde_ptr->bc().neumannSides() );
61 switch (m_options.getInt(
"DirichletStrategy"))
63 case dirichlet::penalize:
64 Base::penalizeDirichletDofs();
66 case dirichlet::nitsche:
67 Base::template push<gsVisitorNitsche<T> >(m_pde_ptr->bc().dirichletSides());
73 if ( m_options.getInt(
"InterfaceStrategy") == iFace::dg )
static gsOptionList defaultOptions()
Returns the list of default options for assembly.
Definition gsAssembler.hpp:30
Class which holds a list of parameters/options, and provides easy access to them.
Definition gsOptionList.h:33
void update(const gsOptionList &other, updateType type=ignoreIfUnknown)
Updates the object using the data from other.
Definition gsOptionList.cpp:253
virtual void refresh()
Creates the mappers and setups the sparse system. to be implemented in derived classes,...
Definition gsPoissonAssembler.hpp:33
virtual void assemble()
Main assemble routine, to be implemented in derived classes.
Definition gsPoissonAssembler.hpp:41
static gsOptionList defaultOptions()
Returns the list of default options for assembly.
Definition gsPoissonAssembler.hpp:24
Visitor for adding the interface conditions for the interior penalty methods of the Poisson problem.
Definition gsVisitorDg.h:52
Visitor for adding the terms associated to weak (Nitsche-type) imposition of the Dirichlet boundary c...
Definition gsVisitorNitsche.h:55
#define GISMO_ASSERT(cond, message)
Definition gsDebug.h:89
Visitor for adding the interface conditions for the interior penalty methods of the Poisson problem.
Neumann conditions visitor for elliptic problems.
Weak (Nitsche-type) imposition of the Dirichlet boundary conditions.
Poisson equation element visitor.
The G+Smo namespace, containing all definitions for the library.