예제 #1
0
 def runTest(self):
     m = MeshHex()
     # default mesh has all edges on the boundary
     self.assertTrue(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) * 4 (per cube face)
     # = 48 edges
     self.assertEqual(len(m.boundary_edges()), 48)
예제 #2
0
class ConvergenceHexS2(ConvergenceQ1):
    rateL2 = 3.05
    rateH1 = 2.21
    eps = 0.02

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

    def setUp(self):
        self.mesh = MeshHex()
        self.mesh.refine(1)
예제 #3
0
class ConvergenceHex1(ConvergenceQ1):
    rateL2 = 2.0
    rateH1 = 1.0
    eps = 0.11

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

    def setUp(self):
        self.mesh = MeshHex()
        self.mesh.refine(2)
예제 #4
0
 def createBasis(self):
     m = MeshHex()
     m.refine(3)
     self.fbasis = FacetBasis(m, ElementHexS2())
     self.boundary_area = 6.000