def setUp(self): self.order = 2 d1 = Rectangle(n0=NE // 2, n1=NE, l0=0.5, order=2, useElementsOnFace=0) d2 = Rectangle(n0=NE // 2, n1=NE, l0=0.5, order=2, useElementsOnFace=0) d2.setX(d2.getX() + [0.5, 0.]) if getMPISizeWorld() > 1: with self.assertRaises(NotImplementedError) as pkg: self.domain = JoinFaces([d1, d2], optimize=False) e = pkg.exception if FINLEY_MERGE_ERROR not in str(e): raise e raise unittest.SkipTest(FINLEY_MERGE_ERROR) else: self.domain = JoinFaces([d1, d2], optimize=False)
def test_hex_contact_3D_order2_onFace(self): file = "hex_contact_3D_order2_onFace.msh" ms1 = Brick(1, 1, 1, 2, l2=0.5, useElementsOnFace=True) ms2 = Brick(1, 1, 1, 2, l2=0.5, useElementsOnFace=True) ms2.setX(ms2.getX() + [0, 0, 0.5]) my_dom = JoinFaces([ms1, ms2], optimize=False) self.checker(my_dom, file)
def test_hex_contact_2D_order2(self): file = "hex_contact_2D_order2.msh" ms1 = Rectangle(1, 1, 2, l1=0.5, useElementsOnFace=False) ms2 = Rectangle(1, 1, 2, l1=0.5, useElementsOnFace=False) ms2.setX(ms2.getX() + [0, 0.5]) my_dom = JoinFaces([ms1, ms2], optimize=False) self.checker(my_dom, file)
full = False elif o == "2F": o2 = 2 full = True else: o2 = 1 full = False if c == "Yes": dom1 = getMesh(NE_X, NE_Y, t, d, o2, full, r == "Yes", 0.5) dom2 = getMesh(NE_X, NE_Y, t, d, o2, full, r == "Yes", 0.5) x = dom2.getX().copy() x[0] = 1. - x[0] dom2.setX(x) dom = JoinFaces([dom1, dom2]) else: dom = getMesh(NE_X, NE_Y, t, d, o2, full, r == "Yes", 1.) # set tags: for fs in [ ContinuousFunction(dom), Function(dom), FunctionOnBoundary(dom), FunctionOnContactOne(dom) ]: m = whereNegative(fs.getX()[d - 1] - CUT) fs.getDomain().setTagMap('tag1', 1) fs.setTags('tag1', m) fs.setTags(100, 1 - m) dom.write(os.path.join(MESH_DIRECTORY, filename))