proteus.Quadrature module

A class hierarchy for numerical integration on reference domains in 1,2, and 3D.

Inheritance diagram of proteus.Quadrature

class proteus.Quadrature.Q_base(order=1)[source]

Bases: object

The base class for quadrature methods.

setOrder(k)[source]
class proteus.Quadrature.GaussPoint(order=1)[source]

Bases: proteus.Quadrature.Q_base

A dummy class for integrating the boundary of the unit interval (i.e. a point).

setOrder(k)[source]
proteus.Quadrature.LobattoPoint[source]

alias of proteus.Quadrature.GaussPoint

class proteus.Quadrature.GaussEdge(order=1)[source]

Bases: proteus.Quadrature.Q_base

Gaussian Quadrature on the unit interval.

setOrder(order, domain=[0.0, 1.0])[source]
class proteus.Quadrature.LobattoEdge(order=1)[source]

Bases: proteus.Quadrature.Q_base

Gauss-Lobatto quadrature on the unit interval.

class proteus.Quadrature.LobattoEdgeAlt(order=1)[source]

Bases: proteus.Quadrature.Q_base

Gauss-Lobatto quadrature on the [-1:1] interval.

class proteus.Quadrature.CompositeTrapezoidalEdge(order=1, maxOrder=20)[source]

Bases: proteus.Quadrature.Q_base

Composite trapezoidal rule on the unit interval. order is number of intervals

setOrder(k)[source]
class proteus.Quadrature.FaceBarycenterEdge(order=1)[source]

Bases: proteus.Quadrature.Q_base

setOrder(k)[source]
class proteus.Quadrature.GaussTriangle(order=1)[source]

Bases: proteus.Quadrature.Q_base

Gauss quadrature on the unit triangle.

class proteus.Quadrature.CompositeTriangle(quad_rule, hk)[source]

Bases: proteus.Quadrature.Q_base

Composite quadrature rule on the unit triangle.

class proteus.Quadrature.CompositeTetrahedron(quad_rule, hk)[source]

Bases: proteus.Quadrature.Q_base

refine the reference tetrahedron until the largest edge < hk

get_detJ_and_J_from_ref(simplex_nodes)[source]
get_h_of_Tetrahedron(simplex_nodes)[source]
get_max_h_of_all_tetrahedron(all_tet)[source]
get_8_sub_simplex(simplex_nodes)[source]

Return 8 sub-simplex of the simplex givne by simplex_nodes: 4 points ordered by right hand rule. https://www.mathworks.com/matlabcentral/mlc-downloads/downloads/submissions/22430/versions/7/previews/tetrarefine3.m/index.html?access_key=

get_sub_tet_of_all_tet(all_tet)[source]
class proteus.Quadrature.LobattoTriangle(order=1)[source]

Bases: proteus.Quadrature.Q_base

Gauss-Lobatto quadrature on the unit triangle.

setOrder(k)[source]
class proteus.Quadrature.CompositeTrapezoidalTriangle(order=1, maxOrder=20)[source]

Bases: proteus.Quadrature.Q_base

Composite trapezoidal rule on the reference triangle order is number of intervals

setOrder(k)[source]
class proteus.Quadrature.FaceBarycenterTriangle(order=1)[source]

Bases: proteus.Quadrature.Q_base

setOrder(k)[source]
class proteus.Quadrature.GaussTetrahedron(order=1)[source]

Bases: proteus.Quadrature.Q_base

Gauss-Legendre quadrature on the unit tetrahedron.

class proteus.Quadrature.LobattoTetrahedron(order=1)[source]

Bases: proteus.Quadrature.Q_base

Gauss-Lobatto quadrature on the unit tetrahedron.

setOrder(k)[source]
class proteus.Quadrature.FaceBarycenterTetrahedron(order=1)[source]

Bases: proteus.Quadrature.Q_base

setOrder(k)[source]
class proteus.Quadrature.SimplexGaussQuadrature(nd=3, order=1)[source]

Bases: proteus.Quadrature.Q_base

A class which defines quadrature on unit simplices.

Parameters
  • nd (int) – Dimension of the finite element problem.

  • order (int) – Polynomial order for which the integration is exact.

setOrder(k)[source]
class proteus.Quadrature.CubeGaussQuadrature(nd=3, order=1)[source]

Bases: proteus.Quadrature.Q_base

A class for all quadrature on unit simplices.

setOrder(order)[source]
class proteus.Quadrature.SimplexLobattoQuadrature(nd=3, order=1)[source]

Bases: proteus.Quadrature.Q_base

A class for quadrature on unit simplices.

setOrder(k)[source]
proteus.Quadrature.buildUnion(quadratureDict)[source]