def _quadrature_rule(self): dims = self.mesh_el_group.dim if dims == 0: return mp.Quadrature(np.empty((0, 1)), np.empty((0, 1))) elif dims == 1: return mp.LegendreGaussQuadrature(self.order) else: return mp.XiaoGimbutasSimplexQuadrature(self.order, dims)
def quadrature_rule(self): basis_fcts = self._basis.functions nodes = self._nodes mass_matrix = mp.mass_matrix(basis_fcts, nodes) weights = np.dot(mass_matrix, np.ones(len(basis_fcts))) return mp.Quadrature(nodes, weights, exact_to=self.order)