Ejemplo n.º 1
0
 def runTest(self):
     m = MeshTet()
     # default mesh has all edges on the boundary
     self.assertEqual(len(m.boundary_edges()), m.edges.shape[1])
     m.refine()
     # check that there is a correct amount of boundary edges:
     # 12 (cube edges) * 2 (per cube edge)
     # + 6 (cube faces) * 8 (per cube face)
     # = 72 edges
     self.assertTrue(len(m.boundary_edges()) == 72)
Ejemplo n.º 2
0
class ConvergenceTetP2(ConvergenceTetP1):
    rateL2 = 3.23
    rateH1 = 1.94
    eps = 0.01

    def create_basis(self, m):
        e = ElementTetP2()
        return InteriorBasis(m, e)

    def setUp(self):
        self.mesh = MeshTet()
        self.mesh.refine(1)
Ejemplo n.º 3
0
class ConvergenceTetP1(ConvergenceQ1):
    rateL2 = 2.0
    rateH1 = 1.0
    eps = 0.13

    def create_basis(self, m):
        e = ElementTetP1()
        return InteriorBasis(m, e)

    def setUp(self):
        self.mesh = MeshTet()
        self.mesh.refine(2)
Ejemplo n.º 4
0
class ConvergenceRaviartThomas3D(ConvergenceRaviartThomas):
    rateL2 = .5
    rateHdiv = 1.0
    eps = 0.1
    Hdivbound = 0.3
    L2bound = 0.05

    def create_basis(self, m):
        e = ElementTetRT0()
        e0 = ElementTetP0()
        return (InteriorBasis(m, e,
                              intorder=2), InteriorBasis(m, e0, intorder=2))

    def setUp(self):
        self.mesh = MeshTet()
        self.mesh.refine(1)