Ejemplo n.º 1
0
class TreeSetUp(unittest.TestCase):
    def setUp(self):
        self.createRootNode()
        self.createNodesLevel_1()
        self.createBranch_1_FEM()
        self.createBranch_1_XFEM()
        self.createBranch_2_FEM()
        self.createBranch_3_FEM()
        self.createBranch_3_XFEM()
        self.createBranch_5_XFEM()
        self.createBranch_10_FEM()
        self.createBranch_10_XFEM()
        self.add_simIds_to_tree_leaf_nodes()

    def createRootNode(self):
        self.root = TreeNode('root')

    def createNodesLevel_1(self):
        self.node1 = TreeNode('1.0')
        self.root.setChild(self.node1)
        self.node1.setParent(self.root)
        self.node2 = TreeNode('2.0')
        self.root.setChild(self.node2)
        self.node2.setParent(self.root)
        self.node3 = TreeNode('3.0')
        self.root.setChild(self.node3)
        self.node3.setParent(self.root)
        self.node5 = TreeNode('5.0')
        self.root.setChild(self.node5)
        self.node5.setParent(self.root)
        self.node10 = TreeNode('10.0')
        self.root.setChild(self.node10)
        self.node10.setParent(self.root)

    def createBranch_1_FEM(self):
        self.node1FEM = TreeNode('FEM')
        self.node1.setChild(self.node1FEM)
        self.node1FEM.setParent(self.node1)
        self.node1FEMs = TreeNode('scale')
        self.node1FEM.setChild(self.node1FEMs)
        self.node1FEMs.setParent(self.node1FEM)
        self.node1FEMsQR = TreeNode('QR')
        self.node1FEMs.setChild(self.node1FEMsQR)
        self.node1FEMsQR.setParent(self.node1FEMs)
        self.node1FEMsLR = TreeNode('LR')
        self.node1FEMs.setChild(self.node1FEMsLR)
        self.node1FEMsLR.setParent(self.node1FEMs)

        self.node1FEMe = TreeNode('elliptic')
        self.node1FEM.setChild(self.node1FEMe)
        self.node1FEMe.setParent(self.node1FEM)
        self.node1FEMeQF = TreeNode('QF')
        self.node1FEMe.setChild(self.node1FEMeQF)
        self.node1FEMeQF.setParent(self.node1FEMe)
        self.node1FEMeLF = TreeNode('LF')
        self.node1FEMe.setChild(self.node1FEMeLF)
        self.node1FEMeLF.setParent(self.node1FEMe)

    def createBranch_1_XFEM(self):
        self.node1XFEM = TreeNode('XFEM')
        self.node1.setChild(self.node1XFEM)
        self.node1XFEM.setParent(self.node1)
        self.node1XFEMcp = TreeNode('cp')
        self.node1XFEM.setChild(self.node1XFEMcp)
        self.node1XFEMcp.setParent(self.node1XFEM)
        self.node1XFEMcpLT = TreeNode('LT')
        self.node1XFEMcp.setChild(self.node1XFEMcpLT)
        self.node1XFEMcpLT.setParent(self.node1XFEMcp)
        self.node1XFEMmp = TreeNode('mp')
        self.node1XFEMmp.setParent(self.node1XFEM)
        self.node1XFEM.setChild(self.node1XFEMmp)
        self.node1XFEMmpLR = TreeNode('LR')
        self.node1XFEMmp.setChild(self.node1XFEMmpLR)
        self.node1XFEMmpLR.setParent(self.node1XFEMmp)

    def createBranch_2_FEM(self):
        self.node2FEM = TreeNode('FEM')
        self.node2.setChild(self.node2FEM)
        self.node2FEM.setParent(self.node2)
        self.node2FEMs = TreeNode('scale')
        self.node2FEM.setChild(self.node2FEMs)
        self.node2FEMs.setParent(self.node2FEM)
        self.node2FEMsQF = TreeNode('QF')
        self.node2FEMsQF.setParent(self.node2FEMs)
        self.node2FEMs.setChild(self.node2FEMsQF)

    def createBranch_3_FEM(self):
        self.node3FEM = TreeNode('FEM')
        self.node3.setChild(self.node3FEM)
        self.node3FEM.setParent(self.node3)
        self.node3FEMe = TreeNode('elliptic')
        self.node3FEM.setChild(self.node3FEMe)
        self.node3FEMe.setParent(self.node3FEM)
        self.node3FEMeQR = TreeNode('QR')
        self.node3FEMe.setChild(self.node3FEMeQR)
        self.node3FEMeQR.setParent(self.node3FEMe)

    def createBranch_3_XFEM(self):
        self.node3XFEM = TreeNode('XFEM')
        self.node3.setChild(self.node3XFEM)
        self.node3XFEM.setParent(self.node3)
        self.node3XFEMmp = TreeNode('mp')
        self.node3XFEM.setChild(self.node3XFEMmp)
        self.node3XFEMmp.setParent(self.node3XFEM)
        self.node3XFEMmpLF = TreeNode('LF')
        self.node3XFEMmp.setChild(self.node3XFEMmpLF)
        self.node3XFEMmpLF.setParent(self.node3XFEMmp)

    def createBranch_5_XFEM(self):
        self.node5XFEM = TreeNode('XFEM')
        self.node5XFEM.setParent(self.node5)
        self.node5.setChild(self.node5XFEM)
        self.node5XFEMcp = TreeNode('cp')
        self.node5XFEMcp.setParent(self.node5XFEM)
        self.node5XFEM.setChild(self.node5XFEMcp)
        self.node5XFEMcpLT = TreeNode('LT')
        self.node5XFEMcp.setChild(self.node5XFEMcpLT)
        self.node5XFEMcpLT.setParent(self.node5XFEMcp)

    def createBranch_10_FEM(self):
        self.node10FEM = TreeNode('FEM')
        self.node10.setChild(self.node10FEM)
        self.node10FEM.setParent(self.node10)
        self.node10FEMe = TreeNode('elliptic')
        self.node10FEMe.setParent(self.node10FEM)
        self.node10FEM.setChild(self.node10FEMe)
        self.node10FEMeQF = TreeNode('QF')
        self.node10FEMe.setChild(self.node10FEMeQF)
        self.node10FEMeQF.setParent(self.node10FEMe)
        self.node10FEMeLF = TreeNode('LF')
        self.node10FEMe.setChild(self.node10FEMeLF)
        self.node10FEMeLF.setParent(self.node10FEMe)

    def createBranch_10_XFEM(self):
        self.node10XFEM = TreeNode('XFEM')
        self.node10.setChild(self.node10XFEM)
        self.node10XFEM.setParent(self.node10)
        self.node10XFEMcp = TreeNode('cp')
        self.node10XFEM.setChild(self.node10XFEMcp)
        self.node10XFEMcp.setParent(self.node10XFEM)
        self.node10XFEMcpLR = TreeNode('LR')
        self.node10XFEMcp.setChild(self.node10XFEMcpLR)
        self.node10XFEMcpLR.setParent(self.node10XFEMcp)

    def add_simIds_to_tree_leaf_nodes(self):
        # branch 1.0
        self.node1FEMsQR.successfulMembers = set(
            ['node1FEMsQR_sm_1', 'node1FEMsQR_sm_2'])
        self.node1FEMsQR.failedMembers = set(['node1FEMsQR_fm_1'])
        self.node1FEMsLR.successfulMembers = set(['node1FEMsLR_sm_1'])
        self.node1FEMsLR.failedMembers = set(['node1FEMsLR_fm_1'])

        self.node1FEMeQF.successfulMembers = set(['node1FEMeQF_sm_1'])
        self.node1FEMeQF.failedMembers = set(
            ['node1FEMeQF_fm_1', 'node1FEMeQF_fm_2'])
        self.node1FEMeLF.successfulMembers = set(
            ['node1FEMeLF_sm_1', 'node1FEMeLF_sm_2', 'node1FEMeLF_sm_3'])
        self.node1FEMeLF.failedMembers = set(['node1FEMeLF_fm_1'])

        self.node1XFEMcpLT.successfulMembers = set(
            ['node1XFEMcpLT_sm_1', 'node1XFEMcpLT_sm_2', 'node1XFEMcpLT_sm_3'])
        self.node1XFEMcpLT.failedMembers = set(['node1XFEMcpLT_fm_1'])
        self.node1XFEMmpLR.successfulMembers = set(
            ['node1XFEMmpLR_sm_1', 'node1XFEMmpLR_sm_2'])
        self.node1XFEMmpLR.failedMembers = set(['node1XFEMmpLR_fm_1'])

        # branch 2.0
        self.node2FEMsQF.successfulMembers = set(
            ['node2FEMsQF_sm_1', 'node2FEMsQF_sm_2'])
        # self.node2FEMsQF.failedMembers  # None
        # branch 3.0
        self.node3FEMeQR.successfulMembers = set(['node3FEMeQR_sm_1'])
        self.node3FEMeQR.failedMembers = set(
            ['node3FEMeQR_fm_1', 'node3FEMeQR_fm_2'])

        self.node3XFEMmpLF.successfulMembers = set(
            ['node3XFEMmpLF_sm_1', 'node3XFEMmpLF_sm_2'])
        self.node3XFEMmpLF.failedMembers = set(
            ['node3XFEMmpLF_fm_1', 'node3XFEMmpLF_fm_2', 'node3XFEMmpLF_fm_3'])
        # branch 5.0
        self.node5XFEMcpLT.successfulMembers = set(
            ['node5XFEMcpLT_sm_1', 'node5XFEMcpLT_sm_2'])
        self.node5XFEMcpLT.failedMembers = set(
            ['node5XFEMcpLT_fm_1', 'node5XFEMcpLT_fm_2', 'node5XFEMcpLT_fm_3'])
        # branch 10.0
        self.node10FEMeQF.successfulMembers = set(
            ['node10FEMeQF_sm_1', 'node10FEMeQF_sm_2'])
        self.node10FEMeQF.failedMembers = set(
            ['node10FEMeQF_fm_1', 'node10FEMeQF_fm_2'])
        self.node10FEMeLF.successfulMembers = set(
            ['node10FEMeLF_sm_1', 'node10FEMeLF_sm_2', 'node10FEMeLF_sm_3'])
        self.node10FEMeLF.failedMembers = set(
            ['node10FEMeLF_fm_1', 'node10FEMeLF_fm_2', 'node10FEMeLF_fm_3'])

        # self.node10XFEMcpLR.successfulMembers = set([])
        self.node10XFEMcpLR.failedMembers = set(
            ['node10XFEMcpLR_fm_1', 'node10XFEMcpLR_fm_2'])