68 basis.active_into(md.points.col(0), actives);
69 const index_t numActive = actives.rows();
72 basis.deriv_into(md.points, basisData);
78 localMat.setZero(numActive, numActive);
85 for (
index_t k = 0; k < quWeights.rows(); ++k)
88 const T weight = quWeights[k] * md.measure(k);
91 transformGradients(md, k, basisData, basisPhGrads);
93 localMat.noalias() += weight * ( basisPhGrads.transpose() * basisPhGrads );
104 using Base:: basisData;
108 using Base::localMat;
A basis represents a family of scalar basis functions defined over a common parameter domain.
Definition gsBasis.h:79
Class which enables iteration over all elements of a parameter domain.
Definition gsDomainIterator.h:68
virtual void computeMap(gsMapData< T > &InOut) const
Computes map function data.
Definition gsFunction.hpp:817
Abstract base class representing a geometry map.
Definition gsGeometry.h:93
A matrix with arbitrary coefficient type and fixed or dynamic size.
Definition gsMatrix.h:41
Class which holds a list of parameters/options, and provides easy access to them.
Definition gsOptionList.h:33
Abstract class representing a PDE (partial differential equation).
Definition gsPde.h:44
Class representing a reference quadrature rule.
Definition gsQuadRule.h:29
A vector with arbitrary coefficient type and fixed or dynamic size.
Definition gsVector.h:37
The visitor computes element grad-grad integrals.
Definition gsVisitorGradGrad.h:34
void initialize(const gsBasis< T > &basis, const index_t, const gsOptionList &options, gsQuadRule< T > &rule)
Initialize.
Definition gsVisitorGradGrad.h:47
gsVisitorGradGrad(const gsPde< T > &pde)
Definition gsVisitorGradGrad.h:43
void evaluate(const gsBasis< T > &basis, const gsGeometry< T > &geo, gsMatrix< T > &quNodes)
Evaluate on element.
Definition gsVisitorGradGrad.h:60
void assemble(gsDomainIterator< T > &, gsVector< T > const &quWeights)
Assemble on element.
Definition gsVisitorGradGrad.h:82
The visitor computes element mass integrals.
Definition gsVisitorMass.h:30
#define index_t
Definition gsConfig.h:32
#define GISMO_UNUSED(x)
Definition gsDebug.h:112
The G+Smo namespace, containing all definitions for the library.
@ NEED_GRAD_TRANSFORM
Gradient transformation matrix.
Definition gsForwardDeclarations.h:77
@ NEED_MEASURE
The density of the measure pull back.
Definition gsForwardDeclarations.h:76
Mass visitor for assembling element mass matrix.
static gsQuadRule< T > get(const gsBasis< T > &basis, const gsOptionList &options, short_t fixDir=-1)
Constructs a quadrature rule based on input options.
Definition gsQuadrature.h:51