예제 #1
0
파일: IOFile.py 프로젝트: speleo3/NRGsuite
    def Btn_ExtractLigand_Clicked(self):

        state = cmd.get_state()

        # Get the Drop Down List Selection Name
        ddlSelection = self.defaultOption.get()

        if ddlSelection == '' or self.Validate_ObjectSelection(
                ddlSelection, 'Ligand', state):
            return

        LigandPath = tkFileDialog.asksaveasfilename(
            filetypes=[('PDB File', '*.pdb')],
            initialdir=self.top.FlexAIDLigandProject_Dir,
            title='Save the PDB File',
            initialfile=ddlSelection,
            defaultextension='.pdb')

        if len(LigandPath) > 0:

            LigandPath = os.path.normpath(LigandPath)

            if General.validate_String(LigandPath, '.pdb', True, False, True):
                self.DisplayMessage(
                    "  ERROR: Could not save the file because you entered an invalid name.",
                    2)
                return

            if self.top.ValidateSaveProject(LigandPath, 'Ligand'):
                self.DisplayMessage(
                    "  ERROR: The file can only be saved at its default location",
                    2)
                return

            try:
                cmd.save(LigandPath, ddlSelection, state)
                LigandName = os.path.basename(os.path.splitext(LigandPath)[0])

                cmd.extract(self.ExtractObject, ddlSelection)
                cmd.set_name(self.ExtractObject, LigandName)

                if ddlSelection != LigandName:
                    # as if the object was renamed, delete the object
                    cmd.delete(ddlSelection)

            except:
                self.DisplayMessage(
                    "  ERROR: An error occured while extracting the ligand object.",
                    1)
                return

            self.LigandPath.set(os.path.normpath(LigandPath))
            self.LigandName.set(LigandName)
            #self.LigandMD5.set(General.hashfile(self.LigandPath.get()))

            self.Reset_Ligand()

            self.DisplayMessage(
                '  Successfully extracted the ligand:  ' +
                self.LigandName.get() + "'", 0)
예제 #2
0
파일: IOFile.py 프로젝트: NRGlab/NRGsuite
    def Btn_ExtractLigand_Clicked(self):
                
        state = cmd.get_state()

        # Get the Drop Down List Selection Name
        ddlSelection = self.defaultOption.get()
        
        if ddlSelection == '' or self.Validate_ObjectSelection(ddlSelection, 'Ligand', state):
            return
        
        LigandPath = tkFileDialog.asksaveasfilename(filetypes=[('PDB File','*.pdb')],
                                                    initialdir=self.top.FlexAIDLigandProject_Dir, title='Save the PDB File', 
                                                    initialfile=ddlSelection, defaultextension='.pdb')
        
        if len(LigandPath) > 0:
            
            LigandPath = os.path.normpath(LigandPath)

            if General.validate_String(LigandPath, '.pdb', True, False, True):
                self.DisplayMessage("  ERROR: Could not save the file because you entered an invalid name.", 2)
                return

            if self.top.ValidateSaveProject(LigandPath, 'Ligand'):
                self.DisplayMessage("  ERROR: The file can only be saved at its default location", 2)
                return

            try:
                cmd.save(LigandPath, ddlSelection, state)
                LigandName = os.path.basename(os.path.splitext(LigandPath)[0])

                cmd.extract(self.ExtractObject, ddlSelection)
                cmd.set_name(self.ExtractObject, LigandName)
                
                if ddlSelection != LigandName:
                    # as if the object was renamed, delete the object
                    cmd.delete(ddlSelection)
                
            except:
                self.DisplayMessage("  ERROR: An error occured while extracting the ligand object.", 1)
                return
            
            self.LigandPath.set(os.path.normpath(LigandPath))
            self.LigandName.set(LigandName)
            #self.LigandMD5.set(General.hashfile(self.LigandPath.get()))

            self.Reset_Ligand()
            
            self.DisplayMessage('  Successfully extracted the ligand:  ' + self.LigandName.get() + "'", 0)
예제 #3
0
def split(operator, selection, prefix='entity'):
    '''
DESCRIPTION

    Create a single object for each entity in selection, defined by operator
    (e.g. bymolecule, bysegment, ...). Returns the number of created objects.
    '''
    cmd.disable(' '.join(cmd.get_object_list('(' + selection + ')')))
    tmp = cmd.get_unused_name('_')
    cmd.create(tmp, selection)

    r = 0
    while cmd.count_atoms(tmp) > 0:
        name = cmd.get_unused_name(prefix)
        cmd.extract(name, operator + ' first model ' + tmp)
        r += 1

    cmd.delete(tmp)
    return r
예제 #4
0
def split(operator, selection, prefix='entity'):
    '''
DESCRIPTION

    Create a single object for each entity in selection, defined by operator
    (e.g. bymolecule, bysegment, ...). Returns the number of created objects.
    '''
    cmd.disable(' '.join(cmd.get_object_list('(' + selection + ')')))
    tmp = cmd.get_unused_name('_')
    cmd.create(tmp, selection)

    r = 0
    while cmd.count_atoms(tmp) > 0:
        name = cmd.get_unused_name(prefix)
        cmd.extract(name, operator + ' first model ' + tmp)
        r += 1

    cmd.delete(tmp)
    return r
예제 #5
0
def split(operator, selection, prefix="entity"):
    """
DESCRIPTION

    Create a single object for each entity in selection, defined by operator
    (e.g. bymolecule, bysegment, ...). Returns the number of created objects.
    """
    cmd.disable(" ".join(cmd.get_object_list("(" + selection + ")")))
    tmp = cmd.get_unused_name("_")
    cmd.create(tmp, selection)

    r = 0
    while cmd.count_atoms(tmp) > 0:
        name = cmd.get_unused_name(prefix)
        cmd.extract(name, operator + " first model " + tmp)
        r += 1

    cmd.delete(tmp)
    return r
예제 #6
0
    def clean(self, selection_name=None, small_molecule=None):

        if selection_name is None:
            selection_name = self.selection

        if small_molecule is None:
            extract_string = '{}'.format(self.sele_macro)

        if small_molecule is not None:

            if small_molecule == self.small_molecule:
                small_molecule = self.small_molecule

            extract_string = '{} or (resn {} w. 10 of {})'.format(
                self.sele_macro, small_molecule, self.sele_macro)

        self.get

        cmd.remove('solvent')
        cmd.extract('{}'.format(selection_name), extract_string)
        print('{}'.format(selection_name), extract_string)
def split_protein_ligand(complex_pdb,
                         protein_pdb,
                         ligand_pdb,
                         ligand_sdf=None,
                         ligand_smiles=None,
                         ligand_resname=None):
    import pymol
    from pymol import cmd as pymol_cmd

    # load complex in pymol session
    pymol_cmd.load(complex_pdb, 'complex')
    pymol_cmd.remove('hydrogens')

    # extract ligand
    if ligand_resname is not None:
        pymol_cmd.extract('ligand', f'resn {ligand_resname}')
    else:
        pymol_cmd.extract('ligand', 'not polymer')

    # extract protein
    pymol_cmd.extract('receptor', 'polymer')

    # save protein
    pymol_cmd.save(protein_pdb, 'receptor')

    # save ligand
    pymol_cmd.save(ligand_pdb, 'ligand')

    # delete session
    pymol_cmd.delete('all')

    # pdb to sdf
    if ligand_sdf is not None:
        if ligand_smiles:
            try:
                m_smiles = Chem.RemoveHs(Chem.MolFromSmiles(ligand_smiles))
                m_pdb = Chem.RemoveHs(Chem.MolFromPDBFile(ligand_pdb))
                m = AllChem.AssignBondOrdersFromTemplate(m_smiles, m_pdb)
                w = Chem.SDWriter(ligand_sdf)
                w.write(m)
                w.close()
            except Exception as e:
                print(f"{ligand_sdf} failed: {e}")
                os.system(f'obabel {ligand_pdb} -O {ligand_sdf}')
        else:
            os.system(f'obabel {ligand_pdb} -O {ligand_sdf}')
    return
예제 #8
0
def interfaceResidues(cmpx, cA='c. A', cB='c. B', cutoff=1.0, selName="interface"):
    """
    interfaceResidues -- finds 'interface' residues between two chains in a complex.

    PARAMS
        cmpx
            The complex containing cA and cB

        cA
            The first chain in which we search for residues at an interface
            with cB

        cB
            The second chain in which we search for residues at an interface
            with cA

        cutoff
            The difference in area OVER which residues are considered
            interface residues.  Residues whose dASA from the complex to
            a single chain is greater than this cutoff are kept.  Zero
            keeps all residues.

        selName
            The name of the selection to return.

    RETURNS
        * A selection of interface residues is created and named
            depending on what you passed into selName
        * An array of values is returned where each value is:
            ( modelName, residueNumber, dASA )

    NOTES
        If you have two chains that are not from the same PDB that you want
        to complex together, use the create command like:
            create myComplex, pdb1WithChainA or pdb2withChainX
        then pass myComplex to this script like:
            interfaceResidues myComlpex, c. A, c. X

        This script calculates the area of the complex as a whole.  Then,
        it separates the two chains that you pass in through the arguments
        cA and cB, alone.  Once it has this, it calculates the difference
        and any residues ABOVE the cutoff are called interface residues.

    AUTHOR:
        Jason Vertrees, 2009.
    """
    # Save user's settings, before setting dot_solvent
    oldDS = cmd.get("dot_solvent")
    cmd.set("dot_solvent", 1)

    # set some string names for temporary objects/selections
    tempC, selName1 = "tempComplex", selName+"1"
    chA, chB = "chA", "chB"

    # operate on a new object & turn off the original
    cmd.create(tempC, cmpx)
    cmd.disable(cmpx)

    # remove cruft and inrrelevant chains
    cmd.remove(tempC + " and not (polymer and (%s or %s))" % (cA, cB))

    # get the area of the complete complex
    cmd.get_area(tempC, load_b=1)
    # copy the areas from the loaded b to the q, field.
    cmd.alter(tempC, 'q=b')

    # extract the two chains and calc. the new area
    # note: the q fields are copied to the new objects
    # chA and chB
    cmd.extract(chA, tempC + " and (" + cA + ")")
    cmd.extract(chB, tempC + " and (" + cB + ")")
    cmd.get_area(chA, load_b=1)
    cmd.get_area(chB, load_b=1)

    # update the chain-only objects w/the difference
    cmd.alter( "%s or %s" % (chA,chB), "b=b-q" )

    # The calculations are done.  Now, all we need to
    # do is to determine which residues are over the cutoff
    # and save them.
    stored.r, rVal, seen = [], [], []
    cmd.iterate('%s or %s' % (chA, chB), 'stored.r.append((model,resi,b))')

    cmd.enable(cmpx)
    cmd.select(selName1, 'none')
    for (model,resi,diff) in stored.r:
        key=resi+"-"+model
        if abs(diff)>=float(cutoff):
            if key in seen: continue
            else: seen.append(key)
            rVal.append( (model,resi,diff) )
            # expand the selection here; I chose to iterate over stored.r instead of
            # creating one large selection b/c if there are too many residues PyMOL
            # might crash on a very large selection.  This is pretty much guaranteed
            # not to kill PyMOL; but, it might take a little longer to run.
            cmd.select( selName1, selName1 + " or (%s and i. %s)" % (model,resi))

    # this is how you transfer a selection to another object.
    cmd.select(selName, cmpx + " in " + selName1)
    # clean up after ourselves
    cmd.delete(selName1)
    cmd.delete(chA)
    cmd.delete(chB)
    cmd.delete(tempC)
    # show the selection
    cmd.enable(selName)

    # reset users settings
    cmd.set("dot_solvent", oldDS)

    return rVal
예제 #9
0
 def testExtract(self):
     cmd.fragment('ala', 'm1')
     cmd.extract('m2', 'elem C')
     self.assertEqual(cmd.count_atoms('m1'), 7)
     self.assertEqual(cmd.count_atoms('m2'), 3)
예제 #10
0
def interfaceResidues(cmpx,
                      cA='c. A',
                      cB='c. B',
                      cutoff=1.0,
                      selName="interface"):
    """
    interfaceResidues -- finds 'interface' residues between two chains in a complex.
 
    PARAMS
        cmpx
            The complex containing cA and cB
 
        cA
            The first chain in which we search for residues at an interface
            with cB
 
        cB
            The second chain in which we search for residues at an interface
            with cA
 
        cutoff
            The difference in area OVER which residues are considered
            interface residues.  Residues whose dASA from the complex to
            a single chain is greater than this cutoff are kept.  Zero
            keeps all residues.
 
        selName
            The name of the selection to return.
 
    RETURNS
        * A selection of interface residues is created and named
            depending on what you passed into selName
        * An array of values is returned where each value is:
            ( modelName, residueNumber, dASA )
 
    NOTES
        If you have two chains that are not from the same PDB that you want
        to complex together, use the create command like:
            create myComplex, pdb1WithChainA or pdb2withChainX
        then pass myComplex to this script like:
            interfaceResidues myComlpex, c. A, c. X
 
        This script calculates the area of the complex as a whole.  Then,
        it separates the two chains that you pass in through the arguments
        cA and cB, alone.  Once it has this, it calculates the difference
        and any residues ABOVE the cutoff are called interface residues.
 
    AUTHOR:
        Jason Vertrees, 2009.        
    """
    # Save user's settings, before setting dot_solvent
    oldDS = cmd.get("dot_solvent")
    cmd.set("dot_solvent", 1)

    # set some string names for temporary objects/selections
    tempC, selName1 = "tempComplex", selName + "1"
    chA, chB = "chA", "chB"

    # operate on a new object & turn off the original
    cmd.create(tempC, cmpx)
    cmd.disable(cmpx)

    # remove cruft and inrrelevant chains
    cmd.remove(tempC + " and not (polymer and (%s or %s))" % (cA, cB))

    # get the area of the complete complex
    cmd.get_area(tempC, load_b=1)
    # copy the areas from the loaded b to the q, field.
    cmd.alter(tempC, 'q=b')

    # extract the two chains and calc. the new area
    # note: the q fields are copied to the new objects
    # chA and chB
    cmd.extract(chA, tempC + " and (" + cA + ")")
    cmd.extract(chB, tempC + " and (" + cB + ")")
    cmd.get_area(chA, load_b=1)
    cmd.get_area(chB, load_b=1)

    # update the chain-only objects w/the difference
    cmd.alter("%s or %s" % (chA, chB), "b=b-q")

    # The calculations are done.  Now, all we need to
    # do is to determine which residues are over the cutoff
    # and save them.
    stored.r, rVal, seen = [], [], []
    cmd.iterate('%s or %s' % (chA, chB), 'stored.r.append((model,resi,b))')

    cmd.enable(cmpx)
    cmd.select(selName1, None)
    for (model, resi, diff) in stored.r:
        key = resi + "-" + model
        if abs(diff) >= float(cutoff):
            if key in seen: continue
            else: seen.append(key)
            rVal.append((model, resi, diff))
            # expand the selection here; I chose to iterate over stored.r instead of
            # creating one large selection b/c if there are too many residues PyMOL
            # might crash on a very large selection.  This is pretty much guaranteed
            # not to kill PyMOL; but, it might take a little longer to run.
            cmd.select(selName1,
                       selName1 + " or (%s and i. %s)" % (model, resi))

    # this is how you transfer a selection to another object.
    cmd.select(selName, cmpx + " in " + selName1)
    # clean up after ourselves
    cmd.delete(selName1)
    cmd.delete(chA)
    cmd.delete(chB)
    cmd.delete(tempC)
    # show the selection
    cmd.enable(selName)

    # reset users settings
    cmd.set("dot_solvent", oldDS)

    return rVal
예제 #11
0
def spl_extract():
 for name in cmd.get_names("all"):
    
    print(" \ Extracting mode for %s" % name)
    if 'h3_6QW6'.lower() in name.lower():
        cmd.extract("PRP8_h3_6QW6", "chain 5A and h3_6QW6")
        cmd.extract("BRR2_h3_6QW6", "chain 5B and h3_6QW6")
        cmd.extract("SNU114_h3_6QW6", "chain 5C and h3_6QW6")
        cmd.extract("U5_h3_6QW6", "chain 5 and h3_6QW6")
        cmd.extract("U6_h3_6QW6", "chain 6 and h3_6QW6")
        cmd.extract("U4_h3_6QW6", "chain 4 and h3_6QW6")
        cmd.extract("PRP4_h3_6QW6", "chain 4B and h3_6QW6")
        cmd.extract("PRP31_h3_6QW6", "chain 4C and h3_6QW6")
        cmd.extract("PRP6_h3_6QW6", "chain 5J and h3_6QW6")
        cmd.extract("PRP3_h3_6QW6", "chain 4A and h3_6QW6")
        cmd.extract("SNU13_h3_6QW6", "chain 4D and h3_6QW6")
        cmd.extract("SNU66_h3_6QW6", "chain S and h3_6QW6")
        cmd.extract("U5-40K_h3_6QW6", "chain 5O and h3_6QW6")
        cmd.extract("DIM1_h3_6QW6", "chain 5D and h3_6QW6")
        cmd.extract("PRP28_h3_6QW6", "chain 5X and h3_6QW6")
        cmd.extract("SAD1_h3_6QW6", "chain U and h3_6QW6")
        cmd.extract("RBM42_h3_6QW6", "chain R and h3_6QW6")
        cmd.extract("SNRNP27_27K_h3_6QW6", "chain X and h3_6QW6")
        cmd.extract("U5_Sm_ring_h3_6QW6", "(chain 51 or chain  52 or chain  53 or chain   5b or chain  5e or chain  5f or chain  5g ) and h3_6QW6")
        cmd.extract("U4_Sm_ring_h3_6QW6", "(chain 41 or chain   42 or chain  43 or chain  4b or chain  4e or chain  4f or chain  4g ) and h3_6QW6")
        cmd.extract("Lsm_ring_h3_6QW6", "(chain 62 or chain  63 or chain  64 or chain  65 or chain  66 or chain  67 or chain 68 ) and h3_6QW6")
        cmd.set_name("h3_6QW6", "unknown_other_h3_6QW6")
        cmd.group("h3_6QW6", "*_h3_6QW6")
        cmd.do("order *, yes")
    if 'hBpre_6QX9'.lower() in name.lower():
        cmd.extract("PRP8_hBpre_6QX9", "chain 5A and hBpre_6QX9")
        cmd.extract("SNU114_hBpre_6QX9", "chain 5C and hBpre_6QX9")
        cmd.extract("U2_hBpre_6QX9", "chain 2 and hBpre_6QX9")
        cmd.extract("U5_hBpre_6QX9", "chain 5 and hBpre_6QX9")
        cmd.extract("U6_hBpre_6QX9", "chain 6 and hBpre_6QX9")
        cmd.extract("U4_hBpre_6QX9", "chain 4 and hBpre_6QX9")
        cmd.extract("Intron_hBpre_6QX9", "chain I and hBpre_6QX9")
        cmd.extract("U1_hBpre_6QX9", "chain 1 and hBpre_6QX9")
        cmd.extract("PRP4_hBpre_6QX9", "chain 4B and hBpre_6QX9")
        cmd.extract("PRP31_hBpre_6QX9", "chain 4C and hBpre_6QX9")
        cmd.extract("PRP6_hBpre_6QX9", "chain 5J and hBpre_6QX9")
        cmd.extract("PRP3_hBpre_6QX9", "chain 4A and hBpre_6QX9")
        cmd.extract("SNU66_hBpre_6QX9", "chain S and hBpre_6QX9")
        cmd.extract("U5-40K_hBpre_6QX9", "chain 5O and hBpre_6QX9")
        cmd.extract("DIM1_hBpre_6QX9", "chain 5D and hBpre_6QX9")
        cmd.extract("PRP28_hBpre_6QX9", "chain 5X and hBpre_6QX9")
        cmd.extract("SAD1_hBpre_6QX9", "chain U and hBpre_6QX9")
        cmd.extract("RBM42_hBpre_6QX9", "chain R and hBpre_6QX9")
        cmd.extract("SNRNP27_27K_hBpre_6QX9", "chain X and hBpre_6QX9")
        cmd.extract("U5_Sm_ring_hBpre_6QX9", "(chain 51 or chain  52 or chain  53 or chain   5b or chain  5e or chain  5f or chain  5g ) and hBpre_6QX9")
        cmd.extract("U4_Sm_ring_hBpre_6QX9", "(chain 41 or chain   42 or chain  43 or chain  4b or chain  4e or chain  4f or chain  4g ) and hBpre_6QX9")
        cmd.extract("Lsm_ring_hBpre_6QX9", "(chain 62 or chain  63 or chain  64 or chain  65 or chain  66 or chain  67 or chain  68 ) and hBpre_6QX9")
        cmd.extract("U1_Sm_ring_hBpre_6QX9", "(chain 11 or chain  12 or chain 13 or chain 1b or chain 1e or chain 1f or chain 1g ) and hBpre_6QX9")
        cmd.extract("U1A_hBpre_6QX9", "chain 1A and hBpre_6QX9")
        cmd.extract("U170k_hBpre_6QX9", "chain 1K and hBpre_6QX9")
        cmd.extract("U1C_hBpre_6QX9", "chain 1C and hBpre_6QX9")
        cmd.extract("SF3B1_hBpre_6QX9", "chain B1 and hBpre_6QX9")
        cmd.extract("SF3B3_hBpre_6QX9", "chain B3 and hBpre_6QX9")
        cmd.extract("SF3B2_hBpre_6QX9", "chain B2 and hBpre_6QX9")
        cmd.extract("SF3B4_hBpre_6QX9", "chain B4 and hBpre_6QX9")
        cmd.extract("PHF5A_hBpre_6QX9", "chain BP and hBpre_6QX9")
        cmd.extract("SF3A3_hBpre_6QX9", "chain A3 and hBpre_6QX9")
        cmd.extract("SF3A2_hBpre_6QX9", "chain A2 and hBpre_6QX9")
        cmd.extract("SF3A1_hBpre_6QX9", "chain A1 and hBpre_6QX9")
        cmd.extract("U2A_hBpre_6QX9", "chain 2A and hBpre_6QX9")
        cmd.extract("U2B_hBpre_6QX9", "chain 2B and hBpre_6QX9")
        cmd.extract("SF3B5_hBpre_6QX9", "chain B5 and hBpre_6QX9")
        cmd.extract("U2_Sm_ring_hBpre_6QX9", "(chain 21 or chain  22 or chain  23 or chain  2b or chain  2e or chain  2f or chain  2g ) and hBpre_6QX9")
        cmd.extract("Prp4Kinase_hBpre_6QX9", "chain K and hBpre_6QX9")
        cmd.set_name("hBpre_6QX9", "unknown_other_hBpre_6QX9")
        cmd.group("hBpre_6QX9", "*_hBpre_6QX9")
        cmd.do("order *, yes")
    if 'hB_6AHD'.lower() in name.lower():
        cmd.extract("PRP8_hB_6AHD", "chain A and hB_6AHD")
        cmd.extract("BRR2_hB_6AHD", "chain D and hB_6AHD")
        cmd.extract("SNU114_hB_6AHD", "chain C and hB_6AHD")
        cmd.extract("U2_hB_6AHD", "chain H and hB_6AHD")
        cmd.extract("U5_hB_6AHD", "chain B and hB_6AHD")
        cmd.extract("U6_hB_6AHD", "chain F and hB_6AHD")
        cmd.extract("U4_hB_6AHD", "chain I and hB_6AHD")
        cmd.extract("Intron_hB_6AHD", "chain G and hB_6AHD")
        cmd.extract("PRP4_hB_6AHD", "chain K and hB_6AHD")
        cmd.extract("PRP31_hB_6AHD", "chain L and hB_6AHD")
        cmd.extract("PRP6_hB_6AHD", "chain N and hB_6AHD")
        cmd.extract("PRP3_hB_6AHD", "chain J and hB_6AHD")
        cmd.extract("DIB1_hB_6AHD", "chain O and hB_6AHD")
        cmd.extract("SNU13_hB_6AHD", "chain M and hB_6AHD")
        cmd.extract("SNU66_hB_6AHD", "chain 9 and hB_6AHD")
        cmd.extract("U5-40K_hB_6AHD", "chain E and hB_6AHD")
        cmd.extract("U5_Sm_ring_hB_6AHD", "(chain a or chain b or chain c or chain d or chain e or chain f or chain g ) and hB_6AHD")
        cmd.extract("U4_Sm_ring_hB_6AHD", "(chain U or chain V or chain P or chain Q or chain R or chain S or chain T ) and hB_6AHD")
        cmd.extract("Lsm_ring_hB_6AHD", "(chain q or chain r or chain s or chain t or chain x or chain y or chain z ) and hB_6AHD")
        cmd.extract("SF3B1_hB_6AHD", "chain 1 and hB_6AHD")
        cmd.extract("SF3B3_hB_6AHD", "chain 3 and hB_6AHD")
        cmd.extract("SF3B2_hB_6AHD", "chain 2 and hB_6AHD")
        cmd.extract("SF3B4_hB_6AHD", "chain 4 and hB_6AHD")
        cmd.extract("PHF5A_hB_6AHD", "chain 6 and hB_6AHD")
        cmd.extract("SF3A3_hB_6AHD", "chain w and hB_6AHD")
        cmd.extract("SF3A2_hB_6AHD", "chain v and hB_6AHD")
        cmd.extract("SF3A1_hB_6AHD", "chain u and hB_6AHD")
        cmd.extract("U2A_hB_6AHD", "chain o and hB_6AHD")
        cmd.extract("U2B_hB_6AHD", "chain p and hB_6AHD")
        cmd.extract("SF3B5_hB_6AHD", "chain 7 and hB_6AHD")
        cmd.extract("U2_Sm_ring_hB_6AHD", "(chain i or chain j or chain k or chain l or chain m or chain n or chain h ) and hB_6AHD")
        cmd.extract("FBP21_hB_6AHD", "chain X and hB_6AHD")
        cmd.extract("PPIH_hB_6AHD", "chain W and hB_6AHD")
        cmd.extract("UBL5_hB_6AHD", "chain A0 and hB_6AHD")
        cmd.extract("MFAP1_hB_6AHD", "chain 0 and hB_6AHD")
        cmd.extract("PRPF38A_hB_6AHD", "chain Z and hB_6AHD")
        cmd.extract("ZMAT2_hB_6AHD", "chain 8 and hB_6AHD")
        cmd.extract("SMU1_hB_6AHD", "chain Y and hB_6AHD")
        cmd.extract("SF3B6_hB_6AHD", "chain 5 and hB_6AHD")
        cmd.set_name("hB_6AHD", "unknown_other_hB_6AHD")
        cmd.group("hB_6AHD", "*_hB_6AHD")
        cmd.do("order *, yes")
예제 #12
0
def read_moestr(contents,
                object,
                state=0,
                finish=1,
                discrete=1,
                quiet=1,
                zoom=-1,
                _self=cmd):
    moestr = contents
    name = object

    import sys
    if sys.version_info[0] > 2 and isinstance(moestr, bytes):
        moestr = moestr.decode()

    cmd = _self
    mr = MOEReader()
    mr.appendFromStr(moestr)
    split_chains = cmd.get_setting_int("moe_separate_chains")
    cmd.group(name)
    if hasattr(mr, 'system'):
        have_valences = 0
        chain_count = 0
        cmd.set_color("_aseg0", [1.0, 1.0, 1.0])
        aseg_color = cmd.get_color_index("_aseg0")
        aseg_flag = 0
        aseg_rep = {}
        model = Indexed()
        molecule = mr.system['molecule']
        if 'atoms' in molecule:
            n_atom = molecule['atoms']
            model.atom = [Atom() for x in range(n_atom)]
        residues = {}
        chains = {}
        for columns, data in molecule['attr']:
            for row in data:
                cur_atom = None
                for key, value in zip(columns, row):
                    key = key[0]
                    if key == 'ID':
                        ID = value
                    else:
                        aProp = _atom_prop_map.get(key, None)
                        if aProp != None:
                            setattr(model.atom[ID - 1], aProp, value)
                        else:
                            xyz = _atom_coord_map.get(key, None)
                            if xyz != None:
                                coord = list(model.atom[ID - 1].coord)
                                coord[xyz] = value
                                model.atom[ID - 1].coord = coord
                            elif key in _atom_vis_map:
                                atom = model.atom[ID - 1]
                                if hasattr(atom, 'visible'):
                                    visible = atom.visible
                                else:
                                    visible = _default_visible
                                if key == 'aBondLook':
                                    if value == 'cylinder':
                                        atom.visible = 0x00000001 | visible
                                    elif value == 'line':
                                        atom.visible = 0x00000080 | visible
                                    elif value == 'none':
                                        atom.visible = -129 & Visible  # 0xFFFFFF7F
                                elif key == 'aNucleusLook':
                                    if value == 'sphere':
                                        atom.visible = 0x00000002 | visible
                                    elif value == 'small-sphere':  # need to set sphere_scale=0.2 for these atoms
                                        atom.visible = 0x00000002 | visible
                                        atom.sphere_scale = 0.2
                                    elif value == 'point':  # nonbonded
                                        atom.visible = 0x00000800 | visible
                                    elif value == 'none':
                                        atom.visible = -2067 & visible  # 0xFFFFF7ED
                                elif key == 'aHidden':
                                    atom.visible = 0
                                    atom.hidden = 1
                                if hasattr(
                                        atom, 'hidden'
                                ):  # be sure that hidden atoms aren't shown
                                    atom.visible = 0
                            elif key in _atom_color_map:
                                if key == 'aRGB':
                                    model.atom[ID - 1].trgb = value
                                elif key == 'aColorBy':
                                    model.atom[ID - 1].aColorBy = value
                            elif key in _atom_label_map:
                                atom = model.atom[ID - 1]
                                if hasattr(atom, 'label_dict'):
                                    atom.label_dict[key] = None
                                else:
                                    atom.label_dict = {key: None}
                            elif key in _residue_prop_map:
                                resi_dict = residues.get(ID, {})
                                resi_dict[key] = value
                                residues[ID] = resi_dict
                            elif key in _chain_prop_map:
                                chain_dict = chains.get(ID, {})
                                if ID not in chains:
                                    chain_count = chain_count + 1
                                    chain_dict['count'] = chain_count
                                chain_dict[key] = value
                                chains[ID] = chain_dict
        chn_keys = list(chains.keys())
        chn_keys.sort()
        res_keys = list(residues.keys())
        res_keys.sort()
        # map chain properties onto residues
        chn_resi = 0
        ch_colors = copy.deepcopy(_ch_colors)
        unique_chain_names = {}
        for chn_idx in chn_keys:
            chain_dict = chains[chn_idx]
            cName = make_valid_name(chain_dict.get('cName', ''))
            segi = cName[0:4]
            chain = cName[-1:]
            if not len(cName):
                if 'count' in chain_dict:
                    cName = "chain_" + str(chain_dict['count'])
                else:
                    cName = str(chn_idx)
            if cName not in unique_chain_names:
                unique_chain_names[cName] = cName
            else:
                cnt = 2
                while (cName + "_" + str(cnt)) in unique_chain_names:
                    cnt = cnt + 1
                newCName = cName + "_" + str(cnt)
                unique_chain_names[newCName] = cName
                cName = newCName
            chain_dict['chain_color'] = ch_colors[0]
            ch_colors = ch_colors[1:] + [ch_colors[0]]
            cResCount = chain_dict.get('cResidueCount', 0)
            for res_idx in range(chn_resi, chn_resi + cResCount):
                resi_dict = residues[res_keys[res_idx]]
                resi_dict['chain'] = chain
                resi_dict['segi'] = segi
                resi_dict['cName'] = cName
                resi_dict['chain_dict'] = chain_dict
            chn_resi = chn_resi + cResCount
        # map residue properties onto atoms
        res_atom = 0
        for res_idx in res_keys:
            resi_dict = residues[res_idx]
            rRibbonMode = resi_dict.get('rRibbonMode', 'none')
            rAtomCount = resi_dict['rAtomCount']
            rType = resi_dict.get('rType', '')
            if rAtomCount > 0:
                for at_idx in range(res_atom, res_atom + rAtomCount):
                    atom = model.atom[at_idx]
                    setattr(
                        atom, 'resi',
                        string.strip(
                            str(resi_dict.get('rUID', '')) +
                            resi_dict.get('rINS', '')))
                    setattr(atom, 'resn', resi_dict.get('rName', ''))
                    setattr(atom, 'chain', resi_dict.get('chain', ''))
                    setattr(atom, 'segi', resi_dict.get('segi', ''))
                    setattr(atom, 'custom', resi_dict.get('cName', ''))
                    # add labels
                    if hasattr(atom, 'label_dict'):
                        label = ''
                        label_dict = atom.label_dict
                        if 'aLabelElement' in label_dict:
                            label = atom.symbol
                        if 'aLabelRes' in label_dict:
                            if len(label):
                                label = label + ","
                            label = label + atom.resn + "_" + atom.resi
                        if 'aLabelName' in label_dict:
                            if len(label):
                                label = label + "."
                            label = label + atom.name
                        atom.label = label
                    if rType not in ['none', 'heme']:
                        atom.hetatm = 0  # all normal atoms
                    else:
                        atom.flags = 0x02000000  # hetatom or ligand -- ignore when surfacing

                    if rRibbonMode != 'none':
                        if hasattr(atom, 'visible'):
                            visible = atom.visible
                        else:
                            visible = _default_visible

                        rRibbonColorBy = resi_dict['rRibbonColorBy']
                        repeat = 1
                        while repeat:
                            repeat = 0
                            if rRibbonColorBy in ['rgb', 'r:rgb'
                                                  ]:  # handled automatically
                                pass
                            elif rRibbonColorBy == 'chain':
                                chain_dict = resi_dict['chain_dict']
                                cColorBy = chain_dict['cColorBy']
                                if cColorBy == 'rgb':
                                    cColorBy = 'c:rgb'
                                rRibbonColorBy = cColorBy
                                repeat = 1

                        rRibbon_color = 0
                        rRibbon_trgb = 0xFFFFFF  # default -- white

                        # now color ribbon
                        if rRibbonColorBy == 'r:rgb':
                            rRibbon_trgb = resi_dict.get('rRGB', 0xFFFFFF)
                        elif rRibbonColorBy == 'rgb':
                            rRibbon_trgb = resi_dict.get(
                                'rRibbonRGB', 0xFFFFFF)
                        elif rRibbonColorBy == 'c:rgb':
                            chain_dict = resi_dict['chain_dict']
                            rRibbon_trgb = chain_dict.get('cRGB', 0xFFFFFF)
                        elif rRibbonColorBy == 'r:aseg':
                            rRibbon_trgb = None
                            rRibbon_color = aseg_color
                            aseg_flag = 1
                        elif rRibbonColorBy == 'tempfactor':
                            pass  # TO DO
                        elif rRibbonColorBy == 'c:number':  # per chain colors
                            rRibbon_trgb = chain_dict['chain_color']
                        if rRibbonMode in ['line', 'trace']:
                            atom.visible = 0x00000040 | visible  # PyMOL ribbon
                            if rRibbon_trgb != None:
                                atom.ribbon_trgb = rRibbon_trgb
                            else:
                                atom.ribbon_color = rRibbon_color
                            aseg_rep['ribbon'] = 1
                        else:
                            atom.visible = 0x00000020 | visible  # PyMOL cartoon
                            if rRibbon_trgb != None:
                                atom.cartoon_trgb = rRibbon_trgb
                            else:
                                atom.cartoon_color = rRibbon_color
                            aseg_rep['cartoon'] = 1

                    if hasattr(atom, 'label'):
                        if hasattr(atom, 'visible'):
                            visible = atom.visible
                        else:
                            visible = _default_visible
                        atom.visible = 0x00000028 | visible  # labels
                    if not hasattr(atom, 'aColorBy'):
                        atom.aColorBy = 'element'
                    if hasattr(atom, 'aColorBy'):
                        aColorBy = atom.aColorBy
                        repeat = 1
                        while repeat:
                            repeat = 0
                            if aColorBy == 'ribbon':
                                aColorBy = resi_dict.get('rRibbonColorBy')
                                if aColorBy == 'rgb':
                                    aColorBy = 'rib:rgb'
                                else:
                                    repeat = 1
                                # TO DO still need to handle "cartoon_color", "ribbon_color"
                            elif aColorBy == 'element':
                                if hasattr(atom, 'trgb'):
                                    del atom.trgb
                            elif aColorBy in ['rgb', 'a:rgb'
                                              ]:  # handled automatically
                                pass
                            elif aColorBy == 'residue':
                                rColorBy = resi_dict.get('rColorBy')
                                if rColorBy == 'rgb':
                                    rColorBy = 'r:rgb'
                                aColorBy = rColorBy
                                repeat = 1
                            elif aColorBy == 'chain':
                                chain_dict = resi_dict['chain_dict']
                                cColorBy = chain_dict['cColorBy']
                                if cColorBy == 'rgb':
                                    cColorBy = 'c:rgb'
                                aColorBy = cColorBy
                                repeat = 1

                        # now color atom...
                        if aColorBy == 'r:rgb':
                            atom.trgb = resi_dict.get('rRGB', 0xFFFFFF)
                        elif aColorBy == 'rib:rgb':
                            atom.trgb = resi_dict.get('rRibbonRGB', 0xFFFFFF)
                        elif aColorBy == 'c:rgb':
                            chain_dict = resi_dict['chain_dict']
                            atom.trgb = chain_dict.get('cRGB', 0xFFFFFF)
                        elif aColorBy == 'r:aseg':
                            pass  # TO DO
                        elif aColorBy == 'tempfactor':
                            pass  # TO DO
                        elif aColorBy == 'c:number':  # per chain colors
                            atom.trgb = chain_dict['chain_color']

                res_atom = res_atom + rAtomCount
        bond_list = molecule.get('bond', [])
        for bond in bond_list:
            new_bond = Bond()
            new_bond.index = [bond[0] - 1, bond[1] - 1]
            if len(bond) > 2:
                new_bond.order = bond[2]
                if bond[2] == 2:  # work around .MOE bug with triple bonds
                    if model.atom[new_bond.index[0]].hybridization == 'sp':
                        if model.atom[new_bond.index[1]].hybridization == 'sp':
                            new_bond.order = 3
                have_valences = 1
            model.bond.append(new_bond)
        if 'ViewOrientationY' in mr.system:
            vy = mr.system['ViewOrientationY']
            vz = mr.system['ViewOrientationZ']
            pos = mr.system['ViewLookAt']
            scale = mr.system['ViewScale']
            vx = cpv.cross_product(vy, vz)
            m = [cpv.normalize(vx), cpv.normalize(vy), cpv.normalize(vz)]
            m = cpv.transpose(m)
            asp_rat = 0.8  # MOE default (versus 0.75 for PyMOL)
            cmd.set("field_of_view", 25.0)
            fov = float(cmd.get("field_of_view"))
            window_height = scale * asp_rat
            dist = (0.5 * window_height) / math.atan(3.1415 *
                                                     (0.5 * fov) / 180.0)
            new_view = tuple(m[0] + m[1] + m[2] + [0.0, 0.0, -dist] + pos +
                             [dist * 0.5, dist * 1.5, 0.0])
            cmd.set_view(new_view)
            zoom = 0
        cmd.set("auto_color", 0)
        cmd.set_color("carbon", [0.5, 0.5, 0.5])  # default MOE grey

        obj_name = name + ".system"
        if split_chains < 0:  # by default, don't split chains if over 50 objects would be created
            if len(unique_chain_names) > 50:
                split_chains = 0
        if not split_chains:
            cmd.load_model(model,
                           obj_name,
                           state=state,
                           finish=finish,
                           discrete=discrete,
                           quiet=quiet,
                           zoom=zoom)
            obj_name_list = [obj_name]
        else:
            cmd.load_model(model,
                           obj_name,
                           state=state,
                           finish=finish,
                           discrete=discrete,
                           quiet=1,
                           zoom=zoom)
            obj_name_list = []
            system_name = obj_name
            for chain in unique_chain_names.keys():
                obj_name = name + "." + chain
                obj_name_list.append(obj_name)
                cmd.select("_moe_ext_tmp",
                           "custom %s" % chain,
                           domain=system_name)
                cmd.extract(obj_name, "_moe_ext_tmp", quiet=quiet, zoom=0)
                # cmd.extract(obj_name,system_name+" and text_type %s"%chain,quiet=quiet)
                cmd.delete("_moe_ext_tmp")
            if not cmd.count_atoms(system_name):
                cmd.delete(system_name)
            else:
                obj_name_list.append(system_name)
            cmd.order(name + ".*", sort=1)
        for obj_name in obj_name_list:
            cmd.set("stick_radius", 0.1, obj_name)
            cmd.set("line_width", 2.0, obj_name)
            cmd.set("label_color", "white", obj_name)
            cmd.set("nonbonded_size", 0.05,
                    obj_name)  # temporary workaround...
            if have_valences:  # if this MOE file has valences, then show em!
                cmd.set("valence", 1, obj_name)
                cmd.set("stick_valence_scale", 1.25, obj_name)
            if aseg_flag:
                cmd.dss(obj_name)
                if 'cartoon' in aseg_rep:
                    cmd.set("cartoon_color", "red",
                            obj_name + " and cartoon_color _aseg0 and ss h")
                    cmd.set("cartoon_color", "yellow",
                            obj_name + " and cartoon_color _aseg0 and ss s")
                    cmd.set(
                        "cartoon_color", "cyan",
                        obj_name + " and cartoon_color _aseg0 and not ss h+s")
                if 'ribbon' in aseg_rep:
                    cmd.set("ribbon_color", "red",
                            obj_name + " and ribbon_color _aseg0 and ss h"
                            )  # need selection op ribbon_color
                    cmd.set("ribbon_color", "yellow",
                            obj_name + " and ribbon_color _aseg0 and ss s")
                    cmd.set(
                        "ribbon_color", "cyan",
                        obj_name + " and ribbon_color _aseg0 and not ss h+s")
        if 'ViewZFront' in mr.system:
            moe_front = mr.system['ViewZFront']
            moe_width = mr.system['ViewZWidth']
            extent = cmd.get_extent(
                name)  # will this work with groups? TO DO: check!
            dx = (extent[0][0] - extent[1][0])
            dy = (extent[0][1] - extent[1][1])
            dz = (extent[0][2] - extent[1][2])
            half_width = 0.5 * math.sqrt(dx * dx + dy * dy + dz * dz)
            cmd.clip("atoms", 0.0, name)
            cur_view = cmd.get_view()
            center = (cur_view[-3] +
                      cur_view[-2]) * 0.5  # center of clipping slab
            front = center - half_width
            back = center + half_width
            width = half_width * 2
            new_view = tuple(
                list(cur_view[0:15]) + [
                    front + width * moe_front, front + width *
                    (moe_front + moe_width), 0.0
                ])
            cmd.set_view(new_view)
        if 'graphics' in mr.system:
            cgo_cnt = 1
            lab_cnt = 1
            unique_cgo_names = {}
            for graphics in mr.system['graphics']:
                cgo = []
                for gvertex in graphics.get('gvertex', []):
                    vrt = gvertex[0]
                    seg_list = gvertex[1]['seg']
                    idx = gvertex[1]['idx']
                    len_idx = len(idx)
                    if not cmd.is_list(seg_list):
                        seg_list = [seg_list] * (len_idx / seg_list)
                    last_seg = None
                    ix_start = 0
                    for seg in seg_list:
                        if seg != last_seg:
                            if last_seg != None:
                                cgo.append(END)
                            if seg == 3:
                                cgo.extend([BEGIN, TRIANGLES])
                            elif seg == 2:
                                cgo.extend([BEGIN, LINES])
                            elif seg == 1:
                                cgo.extend([BEGIN, POINTS])
                        ix_stop = seg + ix_start
                        if seg == 3:
                            for s in idx[ix_start:ix_stop]:
                                v = vrt[s - 1]
                                cgo.extend([
                                    COLOR, (0xFF & (v[0] >> 16)) / 255.0,
                                    (0xFF & (v[0] >> 8)) / 255.0,
                                    (0xFF & (v[0])) / 255.0
                                ])
                                if len(v) > 4:
                                    cgo.extend([NORMAL, v[4], v[5], v[6]])
                                cgo.extend([VERTEX, v[1], v[2], v[3]])
                        elif seg == 2:
                            for s in idx[ix_start:ix_stop]:
                                v = vrt[s - 1]
                                cgo.extend([
                                    COLOR, (0xFF & (v[0] >> 16)) / 255.0,
                                    (0xFF & (v[0] >> 8)) / 255.0,
                                    (0xFF & (v[0])) / 255.0
                                ])
                                if len(v) > 4:
                                    cgo.extend([NORMAL, v[4], v[5], v[6]])
                                cgo.extend([VERTEX, v[1], v[2], v[3]])
                        elif seg == 1:
                            for s in idx[ix_start:ix_stop]:
                                v = vrt[s - 1]
                                cgo.extend([
                                    COLOR, (0xFF & (v[0] >> 16)) / 255.0,
                                    (0xFF & (v[0] >> 8)) / 255.0,
                                    (0xFF & (v[0])) / 255.0
                                ])
                                if len(v) > 4:
                                    cgo.extend([NORMAL, v[4], v[5], v[6]])
                                cgo.extend([VERTEX, v[1], v[2], v[3]])
                        ix_start = ix_stop
                        last_seg = seg
                    if last_seg != None:
                        cgo.append(END)
                for gtext in graphics.get('gtext', []):
                    lab_name = name + ".label_%02d" % lab_cnt
                    exists = 0
                    for entry in gtext:
                        exists = 1
                        cmd.pseudoatom(lab_name,
                                       pos=[
                                           float(entry[1]),
                                           float(entry[2]),
                                           float(entry[3])
                                       ],
                                       color="0x%06x" % entry[0],
                                       label=entry[4])
                    if exists:
                        cmd.set('label_color', -1, lab_name)
                        lab_cnt = lab_cnt + 1
                    # TO DO -- via CGO's?

                if len(cgo):
                    cgo_name = name + "." + make_valid_name(
                        graphics.get('GTitle', 'graphics'))
                    if cgo_name not in unique_cgo_names:
                        unique_cgo_names[cgo_name] = cgo_name
                    else:
                        cnt = 2
                        while cgo_name + "_" + str(cnt) in unique_cgo_names:
                            cnt = cnt + 1
                        new_name = cgo_name + "_" + str(cnt)
                        unique_cgo_names[new_name] = new_name
                        cgo_name = new_name
                    cmd.load_cgo(cgo,
                                 cgo_name,
                                 state=state,
                                 quiet=quiet,
                                 zoom=0)
                    cgo_cnt = cgo_cnt + 1
                    cmd.set("two_sided_lighting", 1)  # global setting...
                    cmd.set("cgo_line_width", 2, cgo_name)
                    if 'GTransparency' in graphics:
                        g_trans = graphics['GTransparency']
                        if len(g_trans) >= 2:
                            if g_trans[0] != 0:
                                cmd.set('cgo_transparency',
                                        '%1.6f' % (g_trans[0] / 255.0),
                                        cgo_name)
                                cmd.set('transparency_global_sort')
        if 'meter' in mr.system:
            meter_name = name + ".meter"
            exists = 0
            for meter_block in mr.system['meter']:
                if meter_block[0][0:2] == ['type', 'atoms']:
                    for meter in meter_block[1]:
                        (type, atoms) = meter[0:2]
                        arg = tuple([meter_name] + list(
                            map(lambda x, o=name: o + " and id " + str(x - 1),
                                atoms)))
                        getattr(cmd, type)(*arg)
                        exists = 1
            if exists:
                cmd.color("green", meter_name)
#            print mr.system['meter']
    elif hasattr(mr, 'feature'):
        model = Indexed()
        cols = mr.feature[0]
        rows = mr.feature[1]
        col = {}
        cnt = 0
        for a in cols:
            col[a] = cnt
            cnt = cnt + 1
        for row in rows:
            atom = Atom()
            atom.coord = [row[col['x']], row[col['y']], row[col['z']]]
            atom.vdw = row[col['r']]
            atom.custom = row[col['expr']]
            model.atom.append(atom)
        obj_name = name + ".feature"
        cmd.load_model(model,
                       obj_name,
                       state=state,
                       finish=finish,
                       discrete=discrete,
                       quiet=quiet,
                       zoom=zoom)
        rank = 1
        for row in rows:
            cmd.color("0x%06x" % row[col['color']],
                      obj_name + " & id %d" % (rank - 1))
            rank = rank + 1
        cmd.show("mesh", obj_name)
        cmd.set("min_mesh_spacing", 0.55, obj_name)
        cmd.label(obj_name, "' '+custom")
        cmd.set("label_color", "yellow", obj_name)
    else:
        print(dir(mr))
예제 #13
0
def setup_fragment_view(selection_name = "(all)", context_object_name = "context"):
    colorInterface(selection_name)
    cmd.extract(context_object_name, "%s and chain A" % selection_name)
    cmd.zoom(selection_name)
    cmd.show("surface", context_object_name)
    cmd.set("transparency", .5)
예제 #14
0
def setup_fragment_match(selection_name = "(all)", stub_object_name = "stubs"):
    colorInterface(selection_name)
    cmd.extract(stub_object_name, "%s and chain C:E" % selection_name)
    cmd.zoom(selection_name)
예제 #15
0
def spl_extract():
    for name in cmd.get_names("all"):
        #if name in ['5zwo', '5gm6', '5lj3', '5mps', '6exn', '5ylz', '5y88', '3jb9', '6icz', '6ff7', '5yzg', '5xjc', '5gan', '6qw6', '3jcr', '6qx9', '6ah0']: # this should be auto
        print(" \ Extracting mode for %s" % name)

        for n in cmd.get_names("all"):
            if '5zwo' in n:
                object_name = n
                print(object_name)

        if '5zwo' in name.lower():
            cmd.extract("PRP8_B5zwo", "chain A and " + object_name)
            cmd.extract("BRR2_B5zwo", "chain D and " + object_name)
            cmd.extract("LEA1_B5zwo", "chain o and " + object_name)
            cmd.extract("Msl1_B5zwo", "chain p and " + object_name)
            cmd.extract("SNU114_B5zwo", "chain C and " + object_name)
            cmd.extract("U2_B5zwo", "chain H and " + object_name)
            cmd.extract("U5_B5zwo", "chain B and " + object_name)
            cmd.extract("U6_B5zwo", "chain F and " + object_name)
            cmd.extract("U4_B5zwo", "chain I and " + object_name)
            cmd.extract("Intron_B5zwo", "chain G and " + object_name)
            cmd.extract("PRP4_B5zwo", "chain K and " + object_name)
            cmd.extract("PRP31_B5zwo", "chain L and " + object_name)
            cmd.extract("PRP6_B5zwo", "chain N and " + object_name)
            cmd.extract("PRP3_B5zwo", "chain J and " + object_name)
            cmd.extract("DIB1_B5zwo", "chain E and " + object_name)
            cmd.extract("SNU13_B5zwo", "chain M and " + object_name)
            cmd.extract("LSM8_B5zwo", "chain z and " + object_name)
            cmd.extract("LSM2_B5zwo", "chain q and " + object_name)
            cmd.extract("LSM3_B5zwo", "chain r and " + object_name)
            cmd.extract("LSM6_B5zwo", "chain x and " + object_name)
            cmd.extract("LSM5_B5zwo", "chain t and " + object_name)
            cmd.extract("LSM7_B5zwo", "chain y and " + object_name)
            cmd.extract("LSM4_B5zwo", "chain s and " + object_name)
            cmd.extract("SNU66_B5zwo", "chain O and " + object_name)
            cmd.extract("BUD13_B5zwo", "chain Y and " + object_name)
            cmd.extract("Cus1_B5zwo", "chain 2 and " + object_name)
            cmd.extract("HSH155_B5zwo", "chain 1 and " + object_name)
            cmd.extract("HSH49_B5zwo", "chain 4 and " + object_name)
            cmd.extract("PML1_B5zwo", "chain Z and " + object_name)
            cmd.extract("PRP11_B5zwo", "chain v and " + object_name)
            cmd.extract("RDS3_B5zwo", "chain 5 and " + object_name)
            cmd.extract("RSE1_B5zwo", "chain 3 and " + object_name)
            cmd.extract("SNU17_B5zwo", "chain X and " + object_name)
            cmd.extract("Ysf3_B5zwo", "chain 6 and " + object_name)
            cmd.extract("SMB1_1_B5zwo", "chain a and " + object_name)
            cmd.extract("SMB1_2_B5zwo", "chain P and " + object_name)
            cmd.extract("SMB1_3_B5zwo", "chain h and " + object_name)
            cmd.extract("SME1_1_B5zwo", "chain e and " + object_name)
            cmd.extract("SME1_2_B5zwo", "chain T and " + object_name)
            cmd.extract("SME1_3_B5zwo", "chain i and " + object_name)
            cmd.extract("SMX3_1_B5zwo", "chain f and " + object_name)
            cmd.extract("SMX3_2_B5zwo", "chain U and " + object_name)
            cmd.extract("SMX3_3_B5zwo", "chain j and " + object_name)
            cmd.extract("SMX2_1_B5zwo", "chain g and " + object_name)
            cmd.extract("SMX2_2_B5zwo", "chain V and " + object_name)
            cmd.extract("SMX2_3_B5zwo", "chain k and " + object_name)
            cmd.extract("SMD3_1_B5zwo", "chain d and " + object_name)
            cmd.extract("SMD3_2_B5zwo", "chain S and " + object_name)
            cmd.extract("SMD3_3_B5zwo", "chain l and " + object_name)
            cmd.extract("SMD1_1_B5zwo", "chain b and " + object_name)
            cmd.extract("SMD1_2_B5zwo", "chain Q and " + object_name)
            cmd.extract("SMD1_3_B5zwo", "chain m and " + object_name)
            cmd.extract("SMD2_1_B5zwo", "chain c and " + object_name)
            cmd.extract("SMD2_2_B5zwo", "chain R and " + object_name)
            cmd.extract("SMD2_3_B5zwo", "chain n and " + object_name)
            cmd.extract("PRP9_B5zwo", "chain u and " + object_name)
            cmd.extract("PRP21_B5zwo", "chain w and " + object_name)
            cmd.extract("SNU23_B5zwo", "chain W and " + object_name)
            cmd.extract("PRP38_B5zwo", "chain 0 and " + object_name)
            cmd.extract("SPP381_B5zwo", "chain 9 and " + object_name)
            cmd.set_name(object_name, "unknown_other_B5zwo")
            cmd.group("B5zwo", "*_B5zwo")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '5gm6' in n:
                object_name = n
                print(object_name)

        if '5gm6' in name.lower():
            cmd.extract("PRP8_Ba5gm6", "chain A and " + object_name)
            cmd.extract("BRR2_Ba5gm6", "chain B and " + object_name)
            cmd.extract("BUD31_Ba5gm6", "chain T and " + object_name)
            cmd.extract("CEF1_Ba5gm6", "chain c and " + object_name)
            cmd.extract("CWC15_Ba5gm6", "chain S and " + object_name)
            cmd.extract("CWC2_hRBM22_Ba5gm6", "chain R and " + object_name)
            cmd.extract("CWC21_Ba5gm6", "chain X and " + object_name)
            cmd.extract("CWC22_Ba5gm6", "chain Z and " + object_name)
            cmd.extract("PRP45_Ba5gm6", "chain P and " + object_name)
            cmd.extract("CDC40_Ba5gm6", "chain n and " + object_name)
            cmd.extract("PRP19_Ba5gm6", "chain f and " + object_name)
            cmd.extract("PRP46_Ba5gm6", "chain O and " + object_name)
            cmd.extract("SLT11/ECM2_Ba5gm6", "chain Q and " + object_name)
            cmd.extract("SNT309_Ba5gm6", "chain t and " + object_name)
            cmd.extract("SNU114_Ba5gm6", "chain C and " + object_name)
            cmd.extract("SYF2_Ba5gm6", "chain f and " + object_name)
            cmd.extract("SYF1_Ba5gm6", "chain v and " + object_name)
            cmd.extract("U2_Ba5gm6", "chain 2 and " + object_name)
            cmd.extract("U5_Ba5gm6", "chain 5 and " + object_name)
            cmd.extract("U6_Ba5gm6", "chain 6 and " + object_name)
            cmd.extract("Intron_Ba5gm6", "chain M and " + object_name)
            cmd.extract("Exon_Ba5gm6", "chain N and " + object_name)
            cmd.extract("BUD13_Ba5gm6", "chain W and " + object_name)
            cmd.extract("CLF2_Ba5gm6", "chain d and " + object_name)
            cmd.extract("Cus1_Ba5gm6", "chain H and " + object_name)
            cmd.extract("CWC24_Ba5gm6", "chain a and " + object_name)
            cmd.extract("CWC27_Ba5gm6", "chain b and " + object_name)
            cmd.extract("HSH155_Ba5gm6", "chain G and " + object_name)
            cmd.extract("HSH49_Ba5gm6", "chain e and " + object_name)
            cmd.extract("PML1_Ba5gm6", "chain U and " + object_name)
            cmd.extract("PRP11_Ba5gm6", "chain I and " + object_name)
            cmd.extract("PRP2_Ba5gm6", "chain Y and " + object_name)
            cmd.extract("RDS3_Ba5gm6", "chain J and " + object_name)
            cmd.extract("RSE1_Ba5gm6", "chain F and " + object_name)
            cmd.extract("SNU17_Ba5gm6", "chain V and " + object_name)
            cmd.extract("Ysf3_Ba5gm6", "chain K and " + object_name)
            cmd.set_name(object_name, "unknown_other_Ba5gm6")
            cmd.group("Ba5gm6", "*_Ba5gm6")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '5lj3' in n:
                object_name = n
                print(object_name)

        if '5lj3' in name.lower():
            cmd.extract("PRP8_C5lj3", "chain A and " + object_name)
            cmd.extract("BUD31_C5lj3", "chain L and " + object_name)
            cmd.extract("CEF1_C5lj3", "chain O and " + object_name)
            cmd.extract("CLF1_C5lj3", "chain S and " + object_name)
            cmd.extract("CWC15_C5lj3", "chain P and " + object_name)
            cmd.extract("CWC16/YJU2_C5lj3", "chain D and " + object_name)
            cmd.extract("CWC2_hRBM22_C5lj3", "chain M and " + object_name)
            cmd.extract("CWC21_C5lj3", "chain R and " + object_name)
            cmd.extract("CWC22_C5lj3", "chain H and " + object_name)
            cmd.extract("CWC25_C5lj3", "chain F and " + object_name)
            cmd.extract("ISY1_C5lj3", "chain G and " + object_name)
            cmd.extract("LEA1_C5lj3", "chain W and " + object_name)
            cmd.extract("Msl1_C5lj3", "chain Y and " + object_name)
            cmd.extract("PRP45_C5lj3", "chain K and " + object_name)
            cmd.extract("PRP46_C5lj3", "chain J and " + object_name)
            cmd.extract("SLT11/ECM2_C5lj3", "chain N and " + object_name)
            cmd.extract("SNU114_C5lj3", "chain C and " + object_name)
            cmd.extract("SYF1_C5lj3", "chain T and " + object_name)
            cmd.extract("U2_C5lj3", "chain Z and " + object_name)
            cmd.extract("U5_C5lj3", "chain U and " + object_name)
            cmd.extract("U6_C5lj3", "chain V and " + object_name)
            cmd.extract("Intron_C5lj3", "chain I and " + object_name)
            cmd.extract("Exon_C5lj3", "chain E and " + object_name)
            cmd.extract("SMB1_1_C5lj3", "chain b and " + object_name)
            cmd.extract("SMB1_2_C5lj3", "chain k and " + object_name)
            cmd.extract("SME1_1_C5lj3", "chain e and " + object_name)
            cmd.extract("SME1_2_C5lj3", "chain p and " + object_name)
            cmd.extract("SMX3_1_C5lj3", "chain f and " + object_name)
            cmd.extract("SMX3_2_C5lj3", "chain q and " + object_name)
            cmd.extract("SMX2_1_C5lj3", "chain g and " + object_name)
            cmd.extract("SMX2_2_C5lj3", "chain r and " + object_name)
            cmd.extract("SMD3_1_C5lj3", "chain d and " + object_name)
            cmd.extract("SMD3_2_C5lj3", "chain n and " + object_name)
            cmd.extract("SMD1_1_C5lj3", "chain h and " + object_name)
            cmd.extract("SMD1_2_C5lj3", "chain l and " + object_name)
            cmd.extract("SMD2_1_C5lj3", "chain j and " + object_name)
            cmd.extract("SMD2_2_C5lj3", "chain m and " + object_name)
            cmd.set_name(object_name, "unknown_other_C5lj3")
            cmd.group("C5lj3", "*_C5lj3")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '5mps' in n:
                object_name = n
                print(object_name)

        if '5mps' in name.lower():
            cmd.extract("PRP8_Cs5mps", "chain A and " + object_name)
            cmd.extract("BUD31_Cs5mps", "chain L and " + object_name)
            cmd.extract("CEF1_Cs5mps", "chain O and " + object_name)
            cmd.extract("CLF1_Cs5mps", "chain S and " + object_name)
            cmd.extract("CWC15_Cs5mps", "chain P and " + object_name)
            cmd.extract("CWC2_hRBM22_Cs5mps", "chain M and " + object_name)
            cmd.extract("CWC21_Cs5mps", "chain R and " + object_name)
            cmd.extract("CWC22_Cs5mps", "chain H and " + object_name)
            cmd.extract("PRP45_Cs5mps", "chain K and " + object_name)
            cmd.extract("CDC40_Cs5mps", "chain o and " + object_name)
            cmd.extract("PRP46_Cs5mps", "chain J and " + object_name)
            cmd.extract("SLT11/ECM2_Cs5mps", "chain N and " + object_name)
            cmd.extract("SNU114_Cs5mps", "chain C and " + object_name)
            cmd.extract("SYF2_Cs5mps", "chain y and " + object_name)
            cmd.extract("SYF1_Cs5mps", "chain T and " + object_name)
            cmd.extract("U2_Cs5mps", "chain 2 and " + object_name)
            cmd.extract("U5_Cs5mps", "chain 5 and " + object_name)
            cmd.extract("U6_Cs5mps", "chain 6 and " + object_name)
            cmd.extract("5EXON_Cs5mps", "chain E and " + object_name)
            cmd.extract("Intron_Cs5mps", "chain I and " + object_name)
            cmd.extract("Exon_Cs5mps", "chain E and " + object_name)
            cmd.extract("SMB1_Cs5mps", "chain b and " + object_name)
            cmd.extract("SME1_Cs5mps", "chain e and " + object_name)
            cmd.extract("SMX3_Cs5mps", "chain f and " + object_name)
            cmd.extract("SMX2_Cs5mps", "chain g and " + object_name)
            cmd.extract("SMD3_Cs5mps", "chain d and " + object_name)
            cmd.extract("SMD1_Cs5mps", "chain h and " + object_name)
            cmd.extract("SMD2_Cs5mps", "chain j and " + object_name)
            cmd.extract("PRP18_Cs5mps", "chain a and " + object_name)
            cmd.extract("SLU7_Cs5mps", "chain c and " + object_name)
            cmd.set_name(object_name, "unknown_other_Cs5mps")
            cmd.group("Cs5mps", "*_Cs5mps")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '6exn' in n:
                object_name = n
                print(object_name)

        if '6exn' in name.lower():
            cmd.extract("PRP8_P6exn", "chain A and " + object_name)
            cmd.extract("BUD31_P6exn", "chain L and " + object_name)
            cmd.extract("CEF1_P6exn", "chain O and " + object_name)
            cmd.extract("CLF1_P6exn", "chain S and " + object_name)
            cmd.extract("CWC15_P6exn", "chain P and " + object_name)
            cmd.extract("CWC16/YJU2_P6exn", "chain D and " + object_name)
            cmd.extract("CWC2_hRBM22_P6exn", "chain M and " + object_name)
            cmd.extract("CWC21_P6exn", "chain R and " + object_name)
            cmd.extract("CWC22_P6exn", "chain H and " + object_name)
            cmd.extract("LEA1_P6exn", "chain W and " + object_name)
            cmd.extract("Msl1_P6exn", "chain Y and " + object_name)
            cmd.extract("PRP45_P6exn", "chain K and " + object_name)
            cmd.extract("CDC40_P6exn", "chain o and " + object_name)
            cmd.extract("PRP19_1_P6exn", "chain t and " + object_name)
            cmd.extract("PRP19_2_P6exn", "chain u and " + object_name)
            cmd.extract("PRP19_3_P6exn", "chain v and " + object_name)
            cmd.extract("PRP19_4_P6exn", "chain w and " + object_name)
            cmd.extract("PRP46_P6exn", "chain J and " + object_name)
            cmd.extract("SLT11/ECM2_P6exn", "chain N and " + object_name)
            cmd.extract("SNU114_P6exn", "chain C and " + object_name)
            cmd.extract("SYF1_P6exn", "chain T and " + object_name)
            cmd.extract("U2_P6exn", "chain 2 and " + object_name)
            cmd.extract("U5_P6exn", "chain 5 and " + object_name)
            cmd.extract("U6_P6exn", "chain 6 and " + object_name)
            cmd.extract("Intron_P6exn", "chain I and " + object_name)
            cmd.extract("Exon_P6exn", "chain E and " + object_name)
            cmd.extract("SMB1_1_P6exn", "chain b and " + object_name)
            cmd.extract("SMB1_2_P6exn", "chain k and " + object_name)
            cmd.extract("SME1_1_P6exn", "chain e and " + object_name)
            cmd.extract("SME1_2_P6exn", "chain p and " + object_name)
            cmd.extract("SMX3_1_P6exn", "chain f and " + object_name)
            cmd.extract("SMX3_2_P6exn", "chain q and " + object_name)
            cmd.extract("SMX2_1_P6exn", "chain g and " + object_name)
            cmd.extract("SMX2_2_P6exn", "chain r and " + object_name)
            cmd.extract("SMD3_1_P6exn", "chain d and " + object_name)
            cmd.extract("SMD3_2_P6exn", "chain n and " + object_name)
            cmd.extract("SMD1_1_P6exn", "chain h and " + object_name)
            cmd.extract("SMD1_2_P6exn", "chain l and " + object_name)
            cmd.extract("SMD2_1_P6exn", "chain j and " + object_name)
            cmd.extract("SMD2_2_P6exn", "chain m and " + object_name)
            cmd.extract("PRP22_P6exn", "chain V and " + object_name)
            cmd.extract("PRP18_P6exn", "chain a and " + object_name)
            cmd.extract("SLU7_P6exn", "chain c and " + object_name)
            cmd.extract("unassigned_P6exn", "chain X and " + object_name)
            cmd.set_name(object_name, "unknown_other_P6exn")
            cmd.group("P6exn", "*_P6exn")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '5ylz' in n:
                object_name = n
                print(object_name)

        if '5ylz' in name.lower():
            cmd.extract("PRP8_P5ylz", "chain A and " + object_name)
            cmd.extract("BUD31_P5ylz", "chain L and " + object_name)
            cmd.extract("CEF1_P5ylz", "chain J and " + object_name)
            cmd.extract("CLF1_P5ylz", "chain I and " + object_name)
            cmd.extract("CWC15_P5ylz", "chain P and " + object_name)
            cmd.extract("CWC2_hRBM22_P5ylz", "chain N and " + object_name)
            cmd.extract("CWC21_P5ylz", "chain R and " + object_name)
            cmd.extract("CWC22_P5ylz", "chain S and " + object_name)
            cmd.extract("LEA1_P5ylz", "chain o and " + object_name)
            cmd.extract("Msl1_P5ylz", "chain p and " + object_name)
            cmd.extract("PRP45_P5ylz", "chain Q and " + object_name)
            cmd.extract("CDC40_P5ylz", "chain T and " + object_name)
            cmd.extract("PRP19_1_P5ylz", "chain q and " + object_name)
            cmd.extract("PRP19_2_P5ylz", "chain r and " + object_name)
            cmd.extract("PRP19_3_P5ylz", "chain s and " + object_name)
            cmd.extract("PRP19_4_P5ylz", "chain t and " + object_name)
            cmd.extract("PRP46_P5ylz", "chain O and " + object_name)
            cmd.extract("SLT11/ECM2_P5ylz", "chain M and " + object_name)
            cmd.extract("SNT309_P5ylz", "chain G and " + object_name)
            cmd.extract("SNU114_P5ylz", "chain C and " + object_name)
            cmd.extract("SYF2_P5ylz", "chain K and " + object_name)
            cmd.extract("SYF1_P5ylz", "chain H and " + object_name)
            cmd.extract("U2_P5ylz", "chain F and " + object_name)
            cmd.extract("U5_P5ylz", "chain B and " + object_name)
            cmd.extract("U6_P5ylz", "chain D and " + object_name)
            cmd.extract("Intron_P5ylz", "chain E and " + object_name)
            cmd.extract("SMB1_1_P5ylz", "chain a and " + object_name)
            cmd.extract("SMB1_2_P5ylz", "chain h and " + object_name)
            cmd.extract("SME1_1_P5ylz", "chain b and " + object_name)
            cmd.extract("SME1_2_P5ylz", "chain i and " + object_name)
            cmd.extract("SMX3_1_P5ylz", "chain c and " + object_name)
            cmd.extract("SMX3_2_P5ylz", "chain j and " + object_name)
            cmd.extract("SMX2_1_P5ylz", "chain d and " + object_name)
            cmd.extract("SMX2_2_P5ylz", "chain k and " + object_name)
            cmd.extract("SMD3_1_P5ylz", "chain e and " + object_name)
            cmd.extract("SMD3_2_P5ylz", "chain l and " + object_name)
            cmd.extract("SMD1_1_P5ylz", "chain f and " + object_name)
            cmd.extract("SMD1_2_P5ylz", "chain m and " + object_name)
            cmd.extract("SMD2_1_P5ylz", "chain g and " + object_name)
            cmd.extract("SMD2_2_P5ylz", "chain n and " + object_name)
            cmd.extract("PRP22_P5ylz", "chain W and " + object_name)
            cmd.extract("PRP18_P5ylz", "chain U and " + object_name)
            cmd.extract("SLU7_P5ylz", "chain V and " + object_name)
            cmd.set_name(object_name, "unknown_other_P5ylz")
            cmd.group("P5ylz", "*_P5ylz")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '5y88' in n:
                object_name = n
                print(object_name)

        if '5y88' in name.lower():
            cmd.extract("PRP8_I5y88", "chain A and " + object_name)
            cmd.extract("BUD31_I5y88", "chain L and " + object_name)
            cmd.extract("CLF1_I5y88", "chain I and " + object_name)
            cmd.extract("CWC15_I5y88", "chain P and " + object_name)
            cmd.extract("CWC16/YJU2_I5y88", "chain R and " + object_name)
            cmd.extract("CWC2_hRBM22_I5y88", "chain N and " + object_name)
            cmd.extract("CWC25_I5y88", "chain G and " + object_name)
            cmd.extract("Intron_2_I5y88", "chain E and " + object_name)
            cmd.extract("LEA1_I5y88", "chain o and " + object_name)
            cmd.extract("Msl1_I5y88", "chain p and " + object_name)
            cmd.extract("PRP45_I5y88", "chain Q and " + object_name)
            cmd.extract("CDC40_I5y88", "chain S and " + object_name)
            cmd.extract("PRP19_1_I5y88", "chain q and " + object_name)
            cmd.extract("PRP19_2_I5y88", "chain r and " + object_name)
            cmd.extract("PRP19_3_I5y88", "chain s and " + object_name)
            cmd.extract("PRP19_4_I5y88", "chain t and " + object_name)
            cmd.extract("PRP46_I5y88", "chain O and " + object_name)
            cmd.extract("SLT11/ECM2_I5y88", "chain M and " + object_name)
            cmd.extract("SNT309_I5y88", "chain G and " + object_name)
            cmd.extract("SNU114_I5y88", "chain C and " + object_name)
            cmd.extract("SYF2_I5y88", "chain K and " + object_name)
            cmd.extract("SYF1_I5y88", "chain H and " + object_name)
            cmd.extract("U2_I5y88", "chain F and " + object_name)
            cmd.extract("U5_I5y88", "chain B and " + object_name)
            cmd.extract("U6_I5y88", "chain D and " + object_name)
            cmd.extract("Intron_I5y88", "chain x and " + object_name)
            cmd.extract("RNA_I5y88", "chain x and " + object_name)
            cmd.extract("cwc23_I5y88", "chain T and " + object_name)
            cmd.extract("SPP382_I5y88", "chain U and " + object_name)
            cmd.extract("NTR2_I5y88", "chain V and " + object_name)
            cmd.extract("PRP43_I5y88", "chain W and " + object_name)
            cmd.extract("SMB1_1_I5y88", "chain a and " + object_name)
            cmd.extract("SMB1_2_I5y88", "chain h and " + object_name)
            cmd.extract("SME1_1_I5y88", "chain b and " + object_name)
            cmd.extract("SME1_2_I5y88", "chain i and " + object_name)
            cmd.extract("SMX3_1_I5y88", "chain c and " + object_name)
            cmd.extract("SMX3_2_I5y88", "chain j and " + object_name)
            cmd.extract("SMX2_1_I5y88", "chain d and " + object_name)
            cmd.extract("SMX2_2_I5y88", "chain k and " + object_name)
            cmd.extract("SMD3_1_I5y88", "chain e and " + object_name)
            cmd.extract("SMD3_2_I5y88", "chain l and " + object_name)
            cmd.extract("SMD1_1_I5y88", "chain f and " + object_name)
            cmd.extract("SMD1_2_I5y88", "chain m and " + object_name)
            cmd.extract("SMD2_1_I5y88", "chain g and " + object_name)
            cmd.extract("SMD2_2_I5y88", "chain n and " + object_name)
            cmd.set_name(object_name, "unknown_other_I5y88")
            cmd.group("I5y88", "*_I5y88")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '3jb9' in n:
                object_name = n
                print(object_name)

        if '3jb9' in name.lower():
            cmd.extract("U2_3jb9", "chain P and " + object_name)
            cmd.extract("U5_3jb9", "chain C and " + object_name)
            cmd.extract("U6_3jb9", "chain N and " + object_name)
            cmd.extract("Intron_1_3jb9", "chain O and " + object_name)
            cmd.extract("Intron_2_3jb9", "chain Q and " + object_name)
            cmd.extract("Spp42_yPrp8_3jb9", "chain A and " + object_name)
            cmd.extract("CWF15_yCWC15_3jb9", "chain h and " + object_name)
            cmd.set_name(object_name, "unknown_other_3jb9")
            cmd.group("3jb9", "*_3jb9")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '6icz' in n:
                object_name = n
                print(object_name)

        if '6icz' in name.lower():
            cmd.extract("CWC15_hP_6icz", "chain P and " + object_name)
            cmd.extract("U2_hP_6icz", "chain H and " + object_name)
            cmd.extract("U5_hP_6icz", "chain B and " + object_name)
            cmd.extract("U6_hP_6icz", "chain F and " + object_name)
            cmd.extract("Intron_hP_6icz", "chain G and " + object_name)
            cmd.extract("cwc23_hP_6icz", "chain 6ICZ and " + object_name)
            cmd.set_name(object_name, "unknown_other_hP_6icz")
            cmd.group("hP_6icz", "*_hP_6icz")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '6ff7' in n:
                object_name = n
                print(object_name)

        if '6ff7' in name.lower():
            cmd.extract("CWC15_hBa_6ff7", "chain R and " + object_name)
            cmd.extract("CWC2_hRBM22_hBa_6ff7", "chain P and " + object_name)
            cmd.extract("U2_hBa_6ff7", "chain 2 and " + object_name)
            cmd.extract("U5_hBa_6ff7", "chain 5 and " + object_name)
            cmd.extract("U6_hBa_6ff7", "chain 6 and " + object_name)
            cmd.extract("Intron_hBa_6ff7", "chain Z and " + object_name)
            cmd.set_name(object_name, "unknown_other_hBa_6ff7")
            cmd.group("hBa_6ff7", "*_hBa_6ff7")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '5yzg' in n:
                object_name = n
                print(object_name)

        if '5yzg' in name.lower():
            cmd.extract("CWC15_hC_5yzg", "chain P and " + object_name)
            cmd.extract("CWC2_hRBM22_hC_5yzg", "chain O and " + object_name)
            cmd.extract("CWC25_hC_5yzg", "chain X and " + object_name)
            cmd.extract("PRP16_hDHX38_hC_5yzg", "chain Z and " + object_name)
            cmd.extract("U2_hC_5yzg", "chain H and " + object_name)
            cmd.extract("U5_hC_5yzg", "chain B and " + object_name)
            cmd.extract("U6_hC_5yzg", "chain F and " + object_name)
            cmd.extract("Intron_hC_5yzg", "chain G and " + object_name)
            cmd.set_name(object_name, "unknown_other_hC_5yzg")
            cmd.group("hC_5yzg", "*_hC_5yzg")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '5xjc' in n:
                object_name = n
                print(object_name)

        if '5xjc' in name.lower():
            cmd.extract("CWC15_hX_5xjc", "chain P and " + object_name)
            cmd.extract("CWC25_hX_5xjc", "chain X and " + object_name)
            cmd.extract("U2_hX_5xjc", "chain H and " + object_name)
            cmd.extract("U5_hX_5xjc", "chain B and " + object_name)
            cmd.extract("U6_hX_5xjc", "chain F and " + object_name)
            cmd.extract("Intron_hX_5xjc", "chain G and " + object_name)
            cmd.extract("PRKRIP1_hX_5xjc", "chain X and " + object_name)
            cmd.set_name(object_name, "unknown_other_hX_5xjc")
            cmd.group("hX_5xjc", "*_hX_5xjc")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '5gan' in n:
                object_name = n
                print(object_name)

        if '5gan' in name.lower():
            cmd.extract("PRP8_y3_5gan", "chain A and " + object_name)
            cmd.extract("BRR2_y3_5gan", "chain B and " + object_name)
            cmd.extract("PRP45_y3_5gan", "chain H and " + object_name)
            cmd.extract("SNU114_y3_5gan", "chain C and " + object_name)
            cmd.extract("U5_y3_5gan", "chain U and " + object_name)
            cmd.extract("U6_y3_5gan", "chain W and " + object_name)
            cmd.extract("U4_y3_5gan", "chain V and " + object_name)
            cmd.extract("PRP31_y3_5gan", "chain F and " + object_name)
            cmd.extract("PRP6_y3_5gan", "chain J and " + object_name)
            cmd.extract("PRP3_y3_5gan", "chain G and " + object_name)
            cmd.extract("DIB1_y3_5gan", "chain D and " + object_name)
            cmd.extract("SNU13_y3_5gan", "chain K and " + object_name)
            cmd.extract("LSM8_y3_5gan", "chain 8 and " + object_name)
            cmd.extract("LSM2_y3_5gan", "chain 2 and " + object_name)
            cmd.extract("LSM3_y3_5gan", "chain 3 and " + object_name)
            cmd.extract("LSM6_y3_5gan", "chain 6 and " + object_name)
            cmd.extract("LSM5_y3_5gan", "chain 5 and " + object_name)
            cmd.extract("LSM7_y3_5gan", "chain 7 and " + object_name)
            cmd.extract("LSM4_y3_5gan", "chain 4 and " + object_name)
            cmd.extract("SNU66_y3_5gan", "chain E and " + object_name)
            cmd.extract("SMB1_1_y3_5gan", "chain b and " + object_name)
            cmd.extract("SMB1_2_y3_5gan", "chain k and " + object_name)
            cmd.extract("SME1_1_y3_5gan", "chain e and " + object_name)
            cmd.extract("SME1_2_y3_5gan", "chain p and " + object_name)
            cmd.extract("SMX3_1_y3_5gan", "chain f and " + object_name)
            cmd.extract("SMX3_2_y3_5gan", "chain q and " + object_name)
            cmd.extract("SMX2_1_y3_5gan", "chain g and " + object_name)
            cmd.extract("SMX2_2_y3_5gan", "chain r and " + object_name)
            cmd.extract("SMD3_1_y3_5gan", "chain d and " + object_name)
            cmd.extract("SMD3_2_y3_5gan", "chain n and " + object_name)
            cmd.extract("SMD1_1_y3_5gan", "chain h and " + object_name)
            cmd.extract("SMD1_2_y3_5gan", "chain l and " + object_name)
            cmd.extract("SMD2_1_y3_5gan", "chain j and " + object_name)
            cmd.extract("SMD2_2_y3_5gan", "chain m and " + object_name)
            cmd.extract("unassigned_y3_5gan", "chain X and " + object_name)
            cmd.set_name(object_name, "unknown_other_y3_5gan")
            cmd.group("y3_5gan", "*_y3_5gan")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '6qw6' in n:
                object_name = n
                print(object_name)

        if '6qw6' in name.lower():
            cmd.extract("PRP8_h3_6qw6", "chain 5A and " + object_name)
            cmd.extract("U5_h3_6qw6", "chain 5 and " + object_name)
            cmd.extract("U6_h3_6qw6", "chain 6 and " + object_name)
            cmd.extract("U4_h3_6qw6", "chain 4 and " + object_name)
            cmd.extract("Prp28_h3_6qw6", "chain 5X and " + object_name)
            cmd.set_name(object_name, "unknown_other_h3_6qw6")
            cmd.group("h3_6qw6", "*_h3_6qw6")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '3jcr' in n:
                object_name = n
                print(object_name)

        if '3jcr' in name.lower():
            cmd.extract("PRP8_h3_3jcr", "chain A and " + object_name)
            cmd.extract("BRR2_h3_3jcr", "chain C and " + object_name)
            cmd.extract("SNU114_h3_3jcr", "chain B and " + object_name)
            cmd.extract("U5_h3_3jcr", "chain H and " + object_name)
            cmd.extract("U6_h3_3jcr", "chain N and " + object_name)
            cmd.extract("U4_h3_3jcr", "chain M and " + object_name)
            cmd.extract("PRP4_h3_3jcr", "chain L and " + object_name)
            cmd.extract("PRP31_h3_3jcr", "chain J and " + object_name)
            cmd.extract("PRP6_h3_3jcr", "chain G and " + object_name)
            cmd.extract("PRP3_h3_3jcr", "chain K and " + object_name)
            cmd.extract("SNU13_h3_3jcr", "chain I and " + object_name)
            cmd.extract("LSM8_h3_3jcr", "chain 8 and " + object_name)
            cmd.extract("LSM2_h3_3jcr", "chain 2 and " + object_name)
            cmd.extract("LSM3_h3_3jcr", "chain 3 and " + object_name)
            cmd.extract("LSM5_h3_3jcr", "chain 5 and " + object_name)
            cmd.extract("LSM7_h3_3jcr", "chain 7 and " + object_name)
            cmd.extract("LSM4_h3_3jcr", "chain 4 and " + object_name)
            cmd.extract("SMD3_1_h3_3jcr", "chain R and " + object_name)
            cmd.extract("SMD3_2_h3_3jcr", "chain r and " + object_name)
            cmd.extract("SMD1_1_h3_3jcr", "chain P and " + object_name)
            cmd.extract("SMD1_2_h3_3jcr", "chain p and " + object_name)
            cmd.extract("SMD2_1_h3_3jcr", "chain Q and " + object_name)
            cmd.extract("SMD2_2_h3_3jcr", "chain q and " + object_name)
            cmd.extract("U5-40K_h3_3jcr", "chain D and " + object_name)
            cmd.extract("Dim1_h3_3jcr", "chain E and " + object_name)
            cmd.extract("Prp28_h3_3jcr", "chain F and " + object_name)
            cmd.extract("SmE_1_h3_3jcr", "chain S and " + object_name)
            cmd.extract("SmE_2_h3_3jcr", "chain s and " + object_name)
            cmd.extract("SmF_1_h3_3jcr", "chain T and " + object_name)
            cmd.extract("SmF_2_h3_3jcr", "chain t and " + object_name)
            cmd.extract("SmG_1_h3_3jcr", "chain U and " + object_name)
            cmd.extract("SmG_2_h3_3jcr", "chain u and " + object_name)
            cmd.extract("Sad1_h3_3jcr", "chain V and " + object_name)
            cmd.extract("SmB_1_h3_3jcr", "chain O and " + object_name)
            cmd.extract("SmB_2_h3_3jcr", "chain o and " + object_name)
            cmd.set_name(object_name, "unknown_other_h3_3jcr")
            cmd.group("h3_3jcr", "*_h3_3jcr")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '6qx9' in n:
                object_name = n
                print(object_name)

        if '6qx9' in name.lower():
            cmd.extract("PRP8_h3_6qx9", "chain 5A and " + object_name)
            cmd.extract("U2_h3_6qx9", "chain 2 and " + object_name)
            cmd.extract("U5_h3_6qx9", "chain 5 and " + object_name)
            cmd.extract("U6_h3_6qx9", "chain 6 and " + object_name)
            cmd.extract("U4_h3_6qx9", "chain 4 and " + object_name)
            cmd.extract("Intron_h3_6qx9", "chain I and " + object_name)
            cmd.extract("U1_h3_6qx9", "chain 1 and " + object_name)
            cmd.extract("Prp28_h3_6qx9", "chain 5X and " + object_name)
            cmd.set_name(object_name, "unknown_other_h3_6qx9")
            cmd.group("h3_6qx9", "*_h3_6qx9")
            cmd.do("order *, yes")

        for n in cmd.get_names("all"):
            if '6ah0' in n:
                object_name = n
                print(object_name)

        if '6ah0' in name.lower():
            cmd.extract("PRP8_h_Bp_6ah0", "chain A and " + object_name)
            cmd.extract("U2_h_Bp_6ah0", "chain H and " + object_name)
            cmd.extract("U5_h_Bp_6ah0", "chain B and " + object_name)
            cmd.extract("U6_h_Bp_6ah0", "chain F and " + object_name)
            cmd.extract("U4_h_Bp_6ah0", "chain I and " + object_name)
            cmd.extract("Intron_h_Bp_6ah0", "chain G and " + object_name)
            cmd.extract("Prp28_h_Bp_6ah0", "chain X and " + object_name)
            cmd.set_name(object_name, "unknown_other_h_Bp_6ah0")
            cmd.group("h_Bp_6ah0", "*_h_Bp_6ah0")
            cmd.do("order *, yes")
예제 #16
0
def spl_extract():
    for name in cmd.get_names("all"):
        #if name in ['5zwo', '5gm6', '5lj3', '5mps', '6exn', '5ylz', '5y88', '3jb9', '6icz', '6ff7', '5yzg', '5xjc', '5mq0', '5lj5', '6g90', '6n7r', '6n7p']: # this should be auto
        print(" \ Extracting mode for %s" % name)
        if '5zwo' in name.lower():
            cmd.extract("PRP8_B5zwo", "chain A and 5zwo")
            cmd.extract("BRR2_B5zwo", "chain D and 5zwo")
            cmd.extract("LEA1_B5zwo", "chain o and 5zwo")
            cmd.extract("Msl1_B5zwo", "chain p and 5zwo")
            cmd.extract("SNU114_B5zwo", "chain C and 5zwo")
            cmd.extract("U2_B5zwo", "chain H and 5zwo")
            cmd.extract("U5_B5zwo", "chain B and 5zwo")
            cmd.extract("U6_B5zwo", "chain F and 5zwo")
            cmd.extract("U4_B5zwo", "chain I and 5zwo")
            cmd.extract("Intron_B5zwo", "chain G and 5zwo")
            cmd.extract("PRP4_B5zwo", "chain K and 5zwo")
            cmd.extract("PRP31_B5zwo", "chain L and 5zwo")
            cmd.extract("PRP6_B5zwo", "chain N and 5zwo")
            cmd.extract("PRP3_B5zwo", "chain J and 5zwo")
            cmd.extract("DIB1_B5zwo", "chain E and 5zwo")
            cmd.extract("SNU13_B5zwo", "chain M and 5zwo")
            cmd.extract("LSM8_B5zwo", "chain z and 5zwo")
            cmd.extract("LSM2_B5zwo", "chain q and 5zwo")
            cmd.extract("LSM3_B5zwo", "chain r and 5zwo")
            cmd.extract("LSM6_B5zwo", "chain x and 5zwo")
            cmd.extract("LSM5_B5zwo", "chain t and 5zwo")
            cmd.extract("LSM7_B5zwo", "chain y and 5zwo")
            cmd.extract("LSM4_B5zwo", "chain s and 5zwo")
            cmd.extract("SNU66_B5zwo", "chain O and 5zwo")
            cmd.extract("BUD13_B5zwo", "chain Y and 5zwo")
            cmd.extract("Cus1_B5zwo", "chain 2 and 5zwo")
            cmd.extract("HSH155_B5zwo", "chain 1 and 5zwo")
            cmd.extract("HSH49_B5zwo", "chain 4 and 5zwo")
            cmd.extract("PML1_B5zwo", "chain Z and 5zwo")
            cmd.extract("PRP11_B5zwo", "chain v and 5zwo")
            cmd.extract("RDS3_B5zwo", "chain 5 and 5zwo")
            cmd.extract("RSE1_B5zwo", "chain 3 and 5zwo")
            cmd.extract("SNU17_B5zwo", "chain X and 5zwo")
            cmd.extract("Ysf3_B5zwo", "chain 6 and 5zwo")
            cmd.extract("SMB1_1_B5zwo", "chain a and 5zwo")
            cmd.extract("SMB1_2_B5zwo", "chain P and 5zwo")
            cmd.extract("SMB1_3_B5zwo", "chain h and 5zwo")
            cmd.extract("SME1_1_B5zwo", "chain e and 5zwo")
            cmd.extract("SME1_2_B5zwo", "chain T and 5zwo")
            cmd.extract("SME1_3_B5zwo", "chain i and 5zwo")
            cmd.extract("SMX3_1_B5zwo", "chain f and 5zwo")
            cmd.extract("SMX3_2_B5zwo", "chain U and 5zwo")
            cmd.extract("SMX3_3_B5zwo", "chain j and 5zwo")
            cmd.extract("SMX2_1_B5zwo", "chain g and 5zwo")
            cmd.extract("SMX2_2_B5zwo", "chain V and 5zwo")
            cmd.extract("SMX2_3_B5zwo", "chain k and 5zwo")
            cmd.extract("SMD3_1_B5zwo", "chain d and 5zwo")
            cmd.extract("SMD3_2_B5zwo", "chain S and 5zwo")
            cmd.extract("SMD3_3_B5zwo", "chain l and 5zwo")
            cmd.extract("SMD1_1_B5zwo", "chain b and 5zwo")
            cmd.extract("SMD1_2_B5zwo", "chain Q and 5zwo")
            cmd.extract("SMD1_3_B5zwo", "chain m and 5zwo")
            cmd.extract("SMD2_1_B5zwo", "chain c and 5zwo")
            cmd.extract("SMD2_2_B5zwo", "chain R and 5zwo")
            cmd.extract("SMD2_3_B5zwo", "chain n and 5zwo")
            cmd.extract("PRP9_B5zwo", "chain u and 5zwo")
            cmd.extract("PRP21_B5zwo", "chain w and 5zwo")
            cmd.extract("SNU23_B5zwo", "chain W and 5zwo")
            cmd.extract("PRP38_B5zwo", "chain 0 and 5zwo")
            cmd.extract("SPP381_B5zwo", "chain 9 and 5zwo")
            cmd.set_name("5zwo", "unknown_other_B5zwo")
            cmd.group("B5zwo", "*_B5zwo")
            cmd.do("order *, yes")
        if '5gm6' in name.lower():
            cmd.extract("PRP8_Ba5gm6", "chain A and 5gm6")
            cmd.extract("BRR2_Ba5gm6", "chain B and 5gm6")
            cmd.extract("BUD31_Ba5gm6", "chain T and 5gm6")
            cmd.extract("CEF1_Ba5gm6", "chain c and 5gm6")
            cmd.extract("CWC15_Ba5gm6", "chain S and 5gm6")
            cmd.extract("CWC2_hRBM22_Ba5gm6", "chain R and 5gm6")
            cmd.extract("CWC21_Ba5gm6", "chain X and 5gm6")
            cmd.extract("CWC22_Ba5gm6", "chain Z and 5gm6")
            cmd.extract("PRP45_Ba5gm6", "chain P and 5gm6")
            cmd.extract("CDC40_Ba5gm6", "chain n and 5gm6")
            cmd.extract("PRP19_Ba5gm6", "chain f and 5gm6")
            cmd.extract("PRP46_Ba5gm6", "chain O and 5gm6")
            cmd.extract("SLT11/ECM2_Ba5gm6", "chain Q and 5gm6")
            cmd.extract("SNT309_Ba5gm6", "chain t and 5gm6")
            cmd.extract("SNU114_Ba5gm6", "chain C and 5gm6")
            cmd.extract("SYF2_Ba5gm6", "chain f and 5gm6")
            cmd.extract("SYF1_Ba5gm6", "chain v and 5gm6")
            cmd.extract("U2_Ba5gm6", "chain 2 and 5gm6")
            cmd.extract("U5_Ba5gm6", "chain 5 and 5gm6")
            cmd.extract("U6_Ba5gm6", "chain 6 and 5gm6")
            cmd.extract("Intron_Ba5gm6", "chain M and 5gm6")
            cmd.extract("Exon_Ba5gm6", "chain N and 5gm6")
            cmd.extract("BUD13_Ba5gm6", "chain W and 5gm6")
            cmd.extract("CLF2_Ba5gm6", "chain d and 5gm6")
            cmd.extract("Cus1_Ba5gm6", "chain H and 5gm6")
            cmd.extract("CWC24_Ba5gm6", "chain a and 5gm6")
            cmd.extract("CWC27_Ba5gm6", "chain b and 5gm6")
            cmd.extract("HSH155_Ba5gm6", "chain G and 5gm6")
            cmd.extract("HSH49_Ba5gm6", "chain e and 5gm6")
            cmd.extract("PML1_Ba5gm6", "chain U and 5gm6")
            cmd.extract("PRP11_Ba5gm6", "chain I and 5gm6")
            cmd.extract("PRP2_Ba5gm6", "chain Y and 5gm6")
            cmd.extract("RDS3_Ba5gm6", "chain J and 5gm6")
            cmd.extract("RSE1_Ba5gm6", "chain F and 5gm6")
            cmd.extract("SNU17_Ba5gm6", "chain V and 5gm6")
            cmd.extract("Ysf3_Ba5gm6", "chain K and 5gm6")
            cmd.set_name("5gm6", "unknown_other_Ba5gm6")
            cmd.group("Ba5gm6", "*_Ba5gm6")
            cmd.do("order *, yes")
        if '5lj3' in name.lower():
            cmd.extract("PRP8_C5lj3", "chain A and 5lj3")
            cmd.extract("BUD31_C5lj3", "chain L and 5lj3")
            cmd.extract("CEF1_C5lj3", "chain O and 5lj3")
            cmd.extract("CLF1_C5lj3", "chain S and 5lj3")
            cmd.extract("CWC15_C5lj3", "chain P and 5lj3")
            cmd.extract("CWC16/YJU2_C5lj3", "chain D and 5lj3")
            cmd.extract("CWC2_hRBM22_C5lj3", "chain M and 5lj3")
            cmd.extract("CWC21_C5lj3", "chain R and 5lj3")
            cmd.extract("CWC22_C5lj3", "chain H and 5lj3")
            cmd.extract("CWC25_C5lj3", "chain F and 5lj3")
            cmd.extract("ISY1_C5lj3", "chain G and 5lj3")
            cmd.extract("LEA1_C5lj3", "chain W and 5lj3")
            cmd.extract("Msl1_C5lj3", "chain Y and 5lj3")
            cmd.extract("PRP45_C5lj3", "chain K and 5lj3")
            cmd.extract("PRP46_C5lj3", "chain J and 5lj3")
            cmd.extract("SLT11/ECM2_C5lj3", "chain N and 5lj3")
            cmd.extract("SNU114_C5lj3", "chain C and 5lj3")
            cmd.extract("SYF1_C5lj3", "chain T and 5lj3")
            cmd.extract("U2_C5lj3", "chain Z and 5lj3")
            cmd.extract("U5_C5lj3", "chain U and 5lj3")
            cmd.extract("U6_C5lj3", "chain V and 5lj3")
            cmd.extract("Intron_C5lj3", "chain I and 5lj3")
            cmd.extract("Exon_C5lj3", "chain E and 5lj3")
            cmd.extract("SMB1_1_C5lj3", "chain b and 5lj3")
            cmd.extract("SMB1_2_C5lj3", "chain k and 5lj3")
            cmd.extract("SME1_1_C5lj3", "chain e and 5lj3")
            cmd.extract("SME1_2_C5lj3", "chain p and 5lj3")
            cmd.extract("SMX3_1_C5lj3", "chain f and 5lj3")
            cmd.extract("SMX3_2_C5lj3", "chain q and 5lj3")
            cmd.extract("SMX2_1_C5lj3", "chain g and 5lj3")
            cmd.extract("SMX2_2_C5lj3", "chain r and 5lj3")
            cmd.extract("SMD3_1_C5lj3", "chain d and 5lj3")
            cmd.extract("SMD3_2_C5lj3", "chain n and 5lj3")
            cmd.extract("SMD1_1_C5lj3", "chain h and 5lj3")
            cmd.extract("SMD1_2_C5lj3", "chain l and 5lj3")
            cmd.extract("SMD2_1_C5lj3", "chain j and 5lj3")
            cmd.extract("SMD2_2_C5lj3", "chain m and 5lj3")
            cmd.set_name("5lj3", "unknown_other_C5lj3")
            cmd.group("C5lj3", "*_C5lj3")
            cmd.do("order *, yes")
        if '5mps' in name.lower():
            cmd.extract("PRP8_Cs5mps", "chain A and 5mps")
            cmd.extract("BUD31_Cs5mps", "chain L and 5mps")
            cmd.extract("CEF1_Cs5mps", "chain O and 5mps")
            cmd.extract("CLF1_Cs5mps", "chain S and 5mps")
            cmd.extract("CWC15_Cs5mps", "chain P and 5mps")
            cmd.extract("CWC2_hRBM22_Cs5mps", "chain M and 5mps")
            cmd.extract("CWC21_Cs5mps", "chain R and 5mps")
            cmd.extract("CWC22_Cs5mps", "chain H and 5mps")
            cmd.extract("PRP45_Cs5mps", "chain K and 5mps")
            cmd.extract("CDC40_Cs5mps", "chain o and 5mps")
            cmd.extract("PRP46_Cs5mps", "chain J and 5mps")
            cmd.extract("SLT11/ECM2_Cs5mps", "chain N and 5mps")
            cmd.extract("SNU114_Cs5mps", "chain C and 5mps")
            cmd.extract("SYF2_Cs5mps", "chain y and 5mps")
            cmd.extract("SYF1_Cs5mps", "chain T and 5mps")
            cmd.extract("U2_Cs5mps", "chain 2 and 5mps")
            cmd.extract("U5_Cs5mps", "chain 5 and 5mps")
            cmd.extract("U6_Cs5mps", "chain 6 and 5mps")
            cmd.extract("5EXON_Cs5mps", "chain E and 5mps")
            cmd.extract("Intron_Cs5mps", "chain I and 5mps")
            cmd.extract("Exon_Cs5mps", "chain E and 5mps")
            cmd.extract("SMB1_Cs5mps", "chain b and 5mps")
            cmd.extract("SME1_Cs5mps", "chain e and 5mps")
            cmd.extract("SMX3_Cs5mps", "chain f and 5mps")
            cmd.extract("SMX2_Cs5mps", "chain g and 5mps")
            cmd.extract("SMD3_Cs5mps", "chain d and 5mps")
            cmd.extract("SMD1_Cs5mps", "chain h and 5mps")
            cmd.extract("SMD2_Cs5mps", "chain j and 5mps")
            cmd.extract("PRP18_Cs5mps", "chain a and 5mps")
            cmd.extract("SLU7_Cs5mps", "chain c and 5mps")
            cmd.set_name("5mps", "unknown_other_Cs5mps")
            cmd.group("Cs5mps", "*_Cs5mps")
            cmd.do("order *, yes")
        if '6exn' in name.lower():
            cmd.extract("PRP8_P6exn", "chain A and 6exn")
            cmd.extract("BUD31_P6exn", "chain L and 6exn")
            cmd.extract("CEF1_P6exn", "chain O and 6exn")
            cmd.extract("CLF1_P6exn", "chain S and 6exn")
            cmd.extract("CWC15_P6exn", "chain P and 6exn")
            cmd.extract("CWC16/YJU2_P6exn", "chain D and 6exn")
            cmd.extract("CWC2_hRBM22_P6exn", "chain M and 6exn")
            cmd.extract("CWC21_P6exn", "chain R and 6exn")
            cmd.extract("CWC22_P6exn", "chain H and 6exn")
            cmd.extract("LEA1_P6exn", "chain W and 6exn")
            cmd.extract("Msl1_P6exn", "chain Y and 6exn")
            cmd.extract("PRP45_P6exn", "chain K and 6exn")
            cmd.extract("CDC40_P6exn", "chain o and 6exn")
            cmd.extract("PRP19_1_P6exn", "chain t and 6exn")
            cmd.extract("PRP19_2_P6exn", "chain u and 6exn")
            cmd.extract("PRP19_3_P6exn", "chain v and 6exn")
            cmd.extract("PRP19_4_P6exn", "chain w and 6exn")
            cmd.extract("PRP46_P6exn", "chain J and 6exn")
            cmd.extract("SLT11/ECM2_P6exn", "chain N and 6exn")
            cmd.extract("SNU114_P6exn", "chain C and 6exn")
            cmd.extract("SYF1_P6exn", "chain T and 6exn")
            cmd.extract("U2_P6exn", "chain 2 and 6exn")
            cmd.extract("U5_P6exn", "chain 5 and 6exn")
            cmd.extract("U6_P6exn", "chain 6 and 6exn")
            cmd.extract("Intron_P6exn", "chain I and 6exn")
            cmd.extract("Exon_P6exn", "chain E and 6exn")
            cmd.extract("SMB1_1_P6exn", "chain b and 6exn")
            cmd.extract("SMB1_2_P6exn", "chain k and 6exn")
            cmd.extract("SME1_1_P6exn", "chain e and 6exn")
            cmd.extract("SME1_2_P6exn", "chain p and 6exn")
            cmd.extract("SMX3_1_P6exn", "chain f and 6exn")
            cmd.extract("SMX3_2_P6exn", "chain q and 6exn")
            cmd.extract("SMX2_1_P6exn", "chain g and 6exn")
            cmd.extract("SMX2_2_P6exn", "chain r and 6exn")
            cmd.extract("SMD3_1_P6exn", "chain d and 6exn")
            cmd.extract("SMD3_2_P6exn", "chain n and 6exn")
            cmd.extract("SMD1_1_P6exn", "chain h and 6exn")
            cmd.extract("SMD1_2_P6exn", "chain l and 6exn")
            cmd.extract("SMD2_1_P6exn", "chain j and 6exn")
            cmd.extract("SMD2_2_P6exn", "chain m and 6exn")
            cmd.extract("PRP22_P6exn", "chain V and 6exn")
            cmd.extract("PRP18_P6exn", "chain a and 6exn")
            cmd.extract("SLU7_P6exn", "chain c and 6exn")
            cmd.extract("unassigned_P6exn", "chain X and 6exn")
            cmd.set_name("6exn", "unknown_other_P6exn")
            cmd.group("P6exn", "*_P6exn")
            cmd.do("order *, yes")
        if '5ylz' in name.lower():
            cmd.extract("PRP8_P5ylz", "chain A and 5ylz")
            cmd.extract("BUD31_P5ylz", "chain L and 5ylz")
            cmd.extract("CEF1_P5ylz", "chain J and 5ylz")
            cmd.extract("CLF1_P5ylz", "chain I and 5ylz")
            cmd.extract("CWC15_P5ylz", "chain P and 5ylz")
            cmd.extract("CWC2_hRBM22_P5ylz", "chain N and 5ylz")
            cmd.extract("CWC21_P5ylz", "chain R and 5ylz")
            cmd.extract("CWC22_P5ylz", "chain S and 5ylz")
            cmd.extract("LEA1_P5ylz", "chain o and 5ylz")
            cmd.extract("Msl1_P5ylz", "chain p and 5ylz")
            cmd.extract("PRP45_P5ylz", "chain Q and 5ylz")
            cmd.extract("CDC40_P5ylz", "chain T and 5ylz")
            cmd.extract("PRP19_1_P5ylz", "chain q and 5ylz")
            cmd.extract("PRP19_2_P5ylz", "chain r and 5ylz")
            cmd.extract("PRP19_3_P5ylz", "chain s and 5ylz")
            cmd.extract("PRP19_4_P5ylz", "chain t and 5ylz")
            cmd.extract("PRP46_P5ylz", "chain O and 5ylz")
            cmd.extract("SLT11/ECM2_P5ylz", "chain M and 5ylz")
            cmd.extract("SNT309_P5ylz", "chain G and 5ylz")
            cmd.extract("SNU114_P5ylz", "chain C and 5ylz")
            cmd.extract("SYF2_P5ylz", "chain K and 5ylz")
            cmd.extract("SYF1_P5ylz", "chain H and 5ylz")
            cmd.extract("U2_P5ylz", "chain F and 5ylz")
            cmd.extract("U5_P5ylz", "chain B and 5ylz")
            cmd.extract("U6_P5ylz", "chain D and 5ylz")
            cmd.extract("Intron_P5ylz", "chain E and 5ylz")
            cmd.extract("SMB1_1_P5ylz", "chain a and 5ylz")
            cmd.extract("SMB1_2_P5ylz", "chain h and 5ylz")
            cmd.extract("SME1_1_P5ylz", "chain b and 5ylz")
            cmd.extract("SME1_2_P5ylz", "chain i and 5ylz")
            cmd.extract("SMX3_1_P5ylz", "chain c and 5ylz")
            cmd.extract("SMX3_2_P5ylz", "chain j and 5ylz")
            cmd.extract("SMX2_1_P5ylz", "chain d and 5ylz")
            cmd.extract("SMX2_2_P5ylz", "chain k and 5ylz")
            cmd.extract("SMD3_1_P5ylz", "chain e and 5ylz")
            cmd.extract("SMD3_2_P5ylz", "chain l and 5ylz")
            cmd.extract("SMD1_1_P5ylz", "chain f and 5ylz")
            cmd.extract("SMD1_2_P5ylz", "chain m and 5ylz")
            cmd.extract("SMD2_1_P5ylz", "chain g and 5ylz")
            cmd.extract("SMD2_2_P5ylz", "chain n and 5ylz")
            cmd.extract("PRP22_P5ylz", "chain W and 5ylz")
            cmd.extract("PRP18_P5ylz", "chain U and 5ylz")
            cmd.extract("SLU7_P5ylz", "chain V and 5ylz")
            cmd.set_name("5ylz", "unknown_other_P5ylz")
            cmd.group("P5ylz", "*_P5ylz")
            cmd.do("order *, yes")
        if '5y88' in name.lower():
            cmd.extract("PRP8_I5y88", "chain A and 5y88")
            cmd.extract("BUD31_I5y88", "chain L and 5y88")
            cmd.extract("CLF1_I5y88", "chain I and 5y88")
            cmd.extract("CWC15_I5y88", "chain P and 5y88")
            cmd.extract("CWC16/YJU2_I5y88", "chain R and 5y88")
            cmd.extract("CWC2_hRBM22_I5y88", "chain N and 5y88")
            cmd.extract("CWC25_I5y88", "chain G and 5y88")
            cmd.extract("Intron_2_I5y88", "chain E and 5y88")
            cmd.extract("LEA1_I5y88", "chain o and 5y88")
            cmd.extract("Msl1_I5y88", "chain p and 5y88")
            cmd.extract("PRP45_I5y88", "chain Q and 5y88")
            cmd.extract("CDC40_I5y88", "chain S and 5y88")
            cmd.extract("PRP19_1_I5y88", "chain q and 5y88")
            cmd.extract("PRP19_2_I5y88", "chain r and 5y88")
            cmd.extract("PRP19_3_I5y88", "chain s and 5y88")
            cmd.extract("PRP19_4_I5y88", "chain t and 5y88")
            cmd.extract("PRP46_I5y88", "chain O and 5y88")
            cmd.extract("SLT11/ECM2_I5y88", "chain M and 5y88")
            cmd.extract("SNT309_I5y88", "chain G and 5y88")
            cmd.extract("SNU114_I5y88", "chain C and 5y88")
            cmd.extract("SYF2_I5y88", "chain K and 5y88")
            cmd.extract("SYF1_I5y88", "chain H and 5y88")
            cmd.extract("U2_I5y88", "chain F and 5y88")
            cmd.extract("U5_I5y88", "chain B and 5y88")
            cmd.extract("U6_I5y88", "chain D and 5y88")
            cmd.extract("Intron_I5y88", "chain x and 5y88")
            cmd.extract("RNA_I5y88", "chain x and 5y88")
            cmd.extract("cwc23_I5y88", "chain T and 5y88")
            cmd.extract("SPP382_I5y88", "chain U and 5y88")
            cmd.extract("NTR2_I5y88", "chain V and 5y88")
            cmd.extract("PRP43_I5y88", "chain W and 5y88")
            cmd.extract("SMB1_1_I5y88", "chain a and 5y88")
            cmd.extract("SMB1_2_I5y88", "chain h and 5y88")
            cmd.extract("SME1_1_I5y88", "chain b and 5y88")
            cmd.extract("SME1_2_I5y88", "chain i and 5y88")
            cmd.extract("SMX3_1_I5y88", "chain c and 5y88")
            cmd.extract("SMX3_2_I5y88", "chain j and 5y88")
            cmd.extract("SMX2_1_I5y88", "chain d and 5y88")
            cmd.extract("SMX2_2_I5y88", "chain k and 5y88")
            cmd.extract("SMD3_1_I5y88", "chain e and 5y88")
            cmd.extract("SMD3_2_I5y88", "chain l and 5y88")
            cmd.extract("SMD1_1_I5y88", "chain f and 5y88")
            cmd.extract("SMD1_2_I5y88", "chain m and 5y88")
            cmd.extract("SMD2_1_I5y88", "chain g and 5y88")
            cmd.extract("SMD2_2_I5y88", "chain n and 5y88")
            cmd.set_name("5y88", "unknown_other_I5y88")
            cmd.group("I5y88", "*_I5y88")
            cmd.do("order *, yes")
        if '3jb9' in name.lower():
            cmd.extract("U2_3jb9", "chain P and 3jb9")
            cmd.extract("U5_3jb9", "chain C and 3jb9")
            cmd.extract("U6_3jb9", "chain N and 3jb9")
            cmd.extract("Intron_1_3jb9", "chain O and 3jb9")
            cmd.extract("Intron_2_3jb9", "chain Q and 3jb9")
            cmd.extract("Spp42_yPrp8_3jb9", "chain A and 3jb9")
            cmd.extract("CWF15_yCWC15_3jb9", "chain h and 3jb9")
            cmd.set_name("3jb9", "unknown_other_3jb9")
            cmd.group("3jb9", "*_3jb9")
            cmd.do("order *, yes")
        if '6icz' in name.lower():
            cmd.extract("CWC15_hP_6icz", "chain P and 6icz")
            cmd.extract("U2_hP_6icz", "chain H and 6icz")
            cmd.extract("U5_hP_6icz", "chain B and 6icz")
            cmd.extract("U6_hP_6icz", "chain F and 6icz")
            cmd.extract("Intron_hP_6icz", "chain G and 6icz")
            cmd.extract("cwc23_hP_6icz", "chain 6ICZ and 6icz")
            cmd.set_name("6icz", "unknown_other_hP_6icz")
            cmd.group("hP6icz", "*_hP_6icz")
            cmd.do("order *, yes")
        if '6ff7' in name.lower():
            cmd.extract("CWC15_hBa_6ff7", "chain R and 6ff7")
            cmd.extract("CWC2_hRBM22_hBa_6ff7", "chain P and 6ff7")
            cmd.extract("U2_hBa_6ff7", "chain 2 and 6ff7")
            cmd.extract("U5_hBa_6ff7", "chain 5 and 6ff7")
            cmd.extract("U6_hBa_6ff7", "chain 6 and 6ff7")
            cmd.extract("Intron_hBa_6ff7", "chain Z and 6ff7")
            cmd.set_name("6ff7", "unknown_other_hBa_6ff7")
            cmd.group("hBa6ff7", "*_hBa_6ff7")
            cmd.do("order *, yes")
        if '5yzg' in name.lower():
            cmd.extract("CWC15_hC_5yzg", "chain P and 5yzg")
            cmd.extract("CWC2_hRBM22_hC_5yzg", "chain O and 5yzg")
            cmd.extract("CWC25_hC_5yzg", "chain X and 5yzg")
            cmd.extract("PRP16_hDHX38_hC_5yzg", "chain Z and 5yzg")
            cmd.extract("U2_hC_5yzg", "chain H and 5yzg")
            cmd.extract("U5_hC_5yzg", "chain B and 5yzg")
            cmd.extract("U6_hC_5yzg", "chain F and 5yzg")
            cmd.extract("Intron_hC_5yzg", "chain G and 5yzg")
            cmd.set_name("5yzg", "unknown_other_hC_5yzg")
            cmd.group("hC5yzg", "*_hC_5yzg")
            cmd.do("order *, yes")
        if '5xjc' in name.lower():
            cmd.extract("CWC15_hX_5xjc", "chain P and 5xjc")
            cmd.extract("CWC25_hX_5xjc", "chain X and 5xjc")
            cmd.extract("U2_hX_5xjc", "chain H and 5xjc")
            cmd.extract("U5_hX_5xjc", "chain B and 5xjc")
            cmd.extract("U6_hX_5xjc", "chain F and 5xjc")
            cmd.extract("Intron_hX_5xjc", "chain G and 5xjc")
            cmd.extract("PRKRIP1_hX_5xjc", "chain X and 5xjc")
            cmd.set_name("5xjc", "unknown_other_hX_5xjc")
            cmd.group("hX5xjc", "*_hX_5xjc")
            cmd.do("order *, yes")
        if '5mq0' in name.lower():
            cmd.extract("CWC15_yCs_5mq0", "chain P and 5mq0")
            cmd.extract("CWC2_hRBM22_yCs_5mq0", "chain M and 5mq0")
            cmd.extract("U2_yCs_5mq0", "chain 2 and 5mq0")
            cmd.extract("U5_yCs_5mq0", "chain 5 and 5mq0")
            cmd.extract("U6_yCs_5mq0", "chain 6 and 5mq0")
            cmd.extract("5EXON_yCs_5mq0", "chain E and 5mq0")
            cmd.extract("Intron_yCs_5mq0", "chain I and 5mq0")
            cmd.extract("exon-3_yCs_5mq0", "chain 3 and 5mq0")
            cmd.set_name("5mq0", "unknown_other_yCs_5mq0")
            cmd.group("yCs5mq0", "*_yCs_5mq0")
            cmd.do("order *, yes")
        if '5lj5' in name.lower():
            cmd.extract("PRP8_yC_5lj5", "chain A and 5lj5")
            cmd.extract("BRR2_yC_5lj5", "chain B and 5lj5")
            cmd.extract("BUD31_yC_5lj5", "chain L and 5lj5")
            cmd.extract("CEF1_yC_5lj5", "chain O and 5lj5")
            cmd.extract("CLF1_yC_5lj5", "chain S and 5lj5")
            cmd.extract("CWC15_yC_5lj5", "chain P and 5lj5")
            cmd.extract("CWC16/YJU2_yC_5lj5", "chain D and 5lj5")
            cmd.extract("CWC2_hRBM22_yC_5lj5", "chain M and 5lj5")
            cmd.extract("CWC21_yC_5lj5", "chain R and 5lj5")
            cmd.extract("CWC22_yC_5lj5", "chain H and 5lj5")
            cmd.extract("CWC25_yC_5lj5", "chain F and 5lj5")
            cmd.extract("ISY1_yC_5lj5", "chain G and 5lj5")
            cmd.extract("Msl1_yC_5lj5", "chain Y and 5lj5")
            cmd.extract("PRP45_yC_5lj5", "chain K and 5lj5")
            cmd.extract("PRP16_hDHX38_yC_5lj5", "chain Q and 5lj5")
            cmd.extract("PRP19_1_yC_5lj5", "chain t and 5lj5")
            cmd.extract("PRP19_2_yC_5lj5", "chain u and 5lj5")
            cmd.extract("PRP19_3_yC_5lj5", "chain v and 5lj5")
            cmd.extract("PRP19_4_yC_5lj5", "chain w and 5lj5")
            cmd.extract("PRP46_yC_5lj5", "chain J and 5lj5")
            cmd.extract("SLT11/ECM2_yC_5lj5", "chain N and 5lj5")
            cmd.extract("SNT309_yC_5lj5", "chain s and 5lj5")
            cmd.extract("SNU114_yC_5lj5", "chain C and 5lj5")
            cmd.extract("SYF1_yC_5lj5", "chain T and 5lj5")
            cmd.extract("U2_yC_5lj5", "chain Z and 5lj5")
            cmd.extract("U5_yC_5lj5", "chain U and 5lj5")
            cmd.extract("U6_yC_5lj5", "chain V and 5lj5")
            cmd.extract("5EXON_yC_5lj5", "chain E and 5lj5")
            cmd.extract("Intron_yC_5lj5", "chain I and 5lj5")
            cmd.extract("SMB1_1_yC_5lj5", "chain b and 5lj5")
            cmd.extract("SMB1_2_yC_5lj5", "chain k and 5lj5")
            cmd.extract("SME1_1_yC_5lj5", "chain e and 5lj5")
            cmd.extract("SME1_2_yC_5lj5", "chain p and 5lj5")
            cmd.extract("SMX3_1_yC_5lj5", "chain f and 5lj5")
            cmd.extract("SMX3_2_yC_5lj5", "chain q and 5lj5")
            cmd.extract("SMX2_1_yC_5lj5", "chain g and 5lj5")
            cmd.extract("SMX2_2_yC_5lj5", "chain r and 5lj5")
            cmd.extract("SMD3_1_yC_5lj5", "chain d and 5lj5")
            cmd.extract("SMD3_2_yC_5lj5", "chain n and 5lj5")
            cmd.extract("SMD1_1_yC_5lj5", "chain h and 5lj5")
            cmd.extract("SMD1_2_yC_5lj5", "chain l and 5lj5")
            cmd.extract("SMD2_1_yC_5lj5", "chain j and 5lj5")
            cmd.extract("SMD2_2_yC_5lj5", "chain m and 5lj5")
            cmd.extract("unassigned_yC_5lj5", "chain x and 5lj5")
            cmd.set_name("5lj5", "unknown_other_yC_5lj5")
            cmd.group("yC5lj5", "*_yC_5lj5")
            cmd.do("order *, yes")
        if '6g90' in name.lower():
            cmd.extract("LEA1_yPre_6g90", "chain W and 6g90")
            cmd.extract("Msl1_yPre_6g90", "chain Y and 6g90")
            cmd.extract("Ysf3_yPre_6g90", "chain Z and 6g90")
            cmd.extract("SMB1_1_yPre_6g90", "chain b and 6g90")
            cmd.extract("SMB1_2_yPre_6g90", "chain s and 6g90")
            cmd.extract("SME1_1_yPre_6g90", "chain e and 6g90")
            cmd.extract("SME1_2_yPre_6g90", "chain w and 6g90")
            cmd.extract("SMX3_1_yPre_6g90", "chain f and 6g90")
            cmd.extract("SMX3_2_yPre_6g90", "chain x and 6g90")
            cmd.extract("SMX2_1_yPre_6g90", "chain g and 6g90")
            cmd.extract("SMX2_2_yPre_6g90", "chain y and 6g90")
            cmd.extract("SMD3_1_yPre_6g90", "chain d and 6g90")
            cmd.extract("SMD3_2_yPre_6g90", "chain v and 6g90")
            cmd.extract("SMD1_1_yPre_6g90", "chain h and 6g90")
            cmd.extract("SMD1_2_yPre_6g90", "chain t and 6g90")
            cmd.extract("SMD2_1_yPre_6g90", "chain i and 6g90")
            cmd.extract("SMD2_2_yPre_6g90", "chain u and 6g90")
            cmd.extract("unassigned_yPre_6g90", "chain X and 6g90")
            cmd.extract("MUD1_yPre_6g90", "chain A and 6g90")
            cmd.extract("SNP1_yPre_6g90", "chain B and 6g90")
            cmd.extract("YHC1_yPre_6g90", "chain C and 6g90")
            cmd.extract("PRP39_yPre_6g90", "chain D and 6g90")
            cmd.extract("PRP42_yPre_6g90", "chain E and 6g90")
            cmd.extract("NAM8_yPre_6g90", "chain F and 6g90")
            cmd.extract("SNU56_yPre_6g90", "chain G and 6g90")
            cmd.extract("LUC7_yPre_6g90", "chain H and 6g90")
            cmd.extract("SNU71_yPre_6g90", "chain J and 6g90")
            cmd.extract("HSH155_yPre_6g90", "chain O and 6g90")
            cmd.extract("RSE1_yPre_6g90", "chain P and 6g90")
            cmd.extract("CUS1_yPre_6g90", "chain Q and 6g90")
            cmd.extract("HSH49_yPre_6g90", "chain R and 6g90")
            cmd.extract("RDS3_yPre_6g90", "chain S and 6g90")
            cmd.extract("PRP9_yPre_6g90", "chain T and 6g90")
            cmd.extract("PRP11_yPre_6g90", "chain U and 6g90")
            cmd.extract("PRP21_yPre_6g90", "chain V and 6g90")
            cmd.set_name("6g90", "unknown_other_yPre_6g90")
            cmd.group("yPre6g90", "*_yPre_6g90")
            cmd.do("order *, yes")
        if '6n7r' in name.lower():
            cmd.extract("Intron_yE_6n7r", "chain r and 6n7r")
            cmd.extract("SMB1_yE_6n7r", "chain K and 6n7r")
            cmd.extract("SME1_yE_6n7r", "chain O and 6n7r")
            cmd.extract("SMX3_yE_6n7r", "chain P and 6n7r")
            cmd.extract("SMX2_yE_6n7r", "chain Q and 6n7r")
            cmd.extract("SMD3_yE_6n7r", "chain N and 6n7r")
            cmd.extract("SMD1_yE_6n7r", "chain L and 6n7r")
            cmd.extract("SMD2_yE_6n7r", "chain M and 6n7r")
            cmd.extract("MUD1_yE_6n7r", "chain C and 6n7r")
            cmd.extract("SNP1_yE_6n7r", "chain A and 6n7r")
            cmd.extract("YHC1_yE_6n7r", "chain B and 6n7r")
            cmd.extract("PRP39_yE_6n7r", "chain E and 6n7r")
            cmd.extract("PRP42_yE_6n7r", "chain D and 6n7r")
            cmd.extract("NAM8_yE_6n7r", "chain F and 6n7r")
            cmd.extract("SNU56_yE_6n7r", "chain G and 6n7r")
            cmd.extract("LUC7_yE_6n7r", "chain I and 6n7r")
            cmd.extract("SNU71_yE_6n7r", "chain H and 6n7r")
            cmd.extract("U1_yE_6n7r", "chain R and 6n7r")
            cmd.set_name("6n7r", "unknown_other_yE_6n7r")
            cmd.group("yE6n7r", "*_yE_6n7r")
            cmd.do("order *, yes")
        if '6n7p' in name.lower():
            cmd.extract("Intron_yE_6n7p", "chain r and 6n7p")
            cmd.extract("SMB1_yE_6n7p", "chain K and 6n7p")
            cmd.extract("SME1_yE_6n7p", "chain O and 6n7p")
            cmd.extract("SMX3_yE_6n7p", "chain P and 6n7p")
            cmd.extract("SMX2_yE_6n7p", "chain Q and 6n7p")
            cmd.extract("SMD3_yE_6n7p", "chain N and 6n7p")
            cmd.extract("SMD1_yE_6n7p", "chain L and 6n7p")
            cmd.extract("SMD2_yE_6n7p", "chain M and 6n7p")
            cmd.extract("MUD1_yE_6n7p", "chain C and 6n7p")
            cmd.extract("SNP1_yE_6n7p", "chain A and 6n7p")
            cmd.extract("YHC1_yE_6n7p", "chain B and 6n7p")
            cmd.extract("PRP39_yE_6n7p", "chain E and 6n7p")
            cmd.extract("PRP42_yE_6n7p", "chain D and 6n7p")
            cmd.extract("NAM8_yE_6n7p", "chain F and 6n7p")
            cmd.extract("SNU56_yE_6n7p", "chain G and 6n7p")
            cmd.extract("LUC7_yE_6n7p", "chain I and 6n7p")
            cmd.extract("SNU71_yE_6n7p", "chain H and 6n7p")
            cmd.extract("U1_yE_6n7p", "chain R and 6n7p")
            cmd.extract("PRP40_yE_6n7p", "chain J and 6n7p")
            cmd.extract("STO1_yE_6n7p", "chain X and 6n7p")
            cmd.extract("CBC2_yE_6n7p", "chain Y and 6n7p")
            cmd.set_name("6n7p", "unknown_other_yE_6n7p")
            cmd.group("yE6n7p", "*_yE_6n7p")
            cmd.do("order *, yes")
예제 #17
0
def spl_extract():  # sp
    for name in cmd.get_names("all"):

        print(" \ Extracting mode for %s" % name)
        if 'hpCs-II_7W5A'.lower() in name.lower():
            cmd.extract("PRP8_hpCs-II_7W5A", "chain A and hpCs-II_7W5A")
            cmd.extract("BUD31_hpCs-II_7W5A", "chain N and hpCs-II_7W5A")
            cmd.extract("CWC15_hpCs-II_7W5A", "chain P and hpCs-II_7W5A")
            cmd.extract("CWC2_RBM22_hpCs-II_7W5A", "chain O and hpCs-II_7W5A")
            cmd.extract("CWC22_hpCs-II_7W5A", "chain V and hpCs-II_7W5A")
            cmd.extract("PRP46_hpCs-II_7W5A", "chain T and hpCs-II_7W5A")
            cmd.extract("SYF2_hpCs-II_7W5A", "chain M and hpCs-II_7W5A")
            cmd.extract("SYF1_hpCs-II_7W5A", "chain I and hpCs-II_7W5A")
            cmd.extract("U2_hpCs-II_7W5A", "chain H and hpCs-II_7W5A")
            cmd.extract("U5_hpCs-II_7W5A", "chain B and hpCs-II_7W5A")
            cmd.extract("U6_hpCs-II_7W5A", "chain F and hpCs-II_7W5A")
            cmd.extract("5EXON_hpCs-II_7W5A", "chain 4 and hpCs-II_7W5A")
            cmd.extract("Intron_hpCs-II_7W5A", "chain G and hpCs-II_7W5A")
            cmd.extract("SLU7_hpCs-II_7W5A", "chain 1 and hpCs-II_7W5A")
            cmd.extract("PRKRIP1_hpCs-II_7W5A", "chain 2 and hpCs-II_7W5A")
            cmd.extract("AQR_hpCs-II_7W5A", "chain Q and hpCs-II_7W5A")
            cmd.extract("SNRP116_hpCs-II_7W5A", "chain C and hpCs-II_7W5A")
            cmd.extract("PPIL1_hpCs-II_7W5A", "chain S and hpCs-II_7W5A")
            cmd.extract("SNRNP200_hpCs-II_7W5A", "chain D and hpCs-II_7W5A")
            cmd.extract("PPIE_hpCs-II_7W5A", "chain y and hpCs-II_7W5A")
            cmd.extract("SNRNP40_hpCs-II_7W5A", "chain E and hpCs-II_7W5A")
            cmd.extract("SNRPD3_hpCs-II_7W5A",
                        "(chain a or chain h ) and hpCs-II_7W5A")
            cmd.extract("SNRPB_hpCs-II_7W5A",
                        "(chain b or chain i ) and hpCs-II_7W5A")
            cmd.extract("EIF4A3_hpCs-II_7W5A", "chain u and hpCs-II_7W5A")
            cmd.extract("SNRPD1_hpCs-II_7W5A",
                        "(chain c or chain j ) and hpCs-II_7W5A")
            cmd.extract("MAGOH_hpCs-II_7W5A", "chain v and hpCs-II_7W5A")
            cmd.extract("SNRPD2_hpCs-II_7W5A",
                        "(chain d or chain k ) and hpCs-II_7W5A")
            cmd.extract("RBM8A_hpCs-II_7W5A", "chain w and hpCs-II_7W5A")
            cmd.extract("SNRPF_hpCs-II_7W5A",
                        "(chain f or chain m ) and hpCs-II_7W5A")
            cmd.extract("CASC3_hpCs-II_7W5A", "chain x and hpCs-II_7W5A")
            cmd.extract("SNRPE_hpCs-II_7W5A",
                        "(chain e or chain l ) and hpCs-II_7W5A")
            cmd.extract("SNRPG_hpCs-II_7W5A",
                        "(chain g or chain n ) and hpCs-II_7W5A")
            cmd.extract("SNRPA1_hpCs-II_7W5A", "chain o and hpCs-II_7W5A")
            cmd.extract("SNRPB2_hpCs-II_7W5A", "chain p and hpCs-II_7W5A")
            cmd.extract("CRNKL1_hpCs-II_7W5A", "chain J and hpCs-II_7W5A")
            cmd.extract("CDC5L_hpCs-II_7W5A", "chain L and hpCs-II_7W5A")
            cmd.extract(
                "PRPF19_hpCs-II_7W5A",
                "(chain q or chain r or chain s or chain t ) and hpCs-II_7W5A")
            cmd.extract("BCAS2_hpCs-II_7W5A", "chain K and hpCs-II_7W5A")
            cmd.extract("SKIP_hpCs-II_7W5A", "chain R and hpCs-II_7W5A")
            cmd.extract("SRRM2_hpCs-II_7W5A", "chain U and hpCs-II_7W5A")
            cmd.extract("CDC40_hpCs-II_7W5A", "chain W and hpCs-II_7W5A")
            cmd.extract("DHX8_hpCs-II_7W5A", "chain Y and hpCs-II_7W5A")
            cmd.extract("FAM32A_hpCs-II_7W5A", "chain z and hpCs-II_7W5A")
            cmd.extract("NKAP_hpCs-II_7W5A", "chain 3 and hpCs-II_7W5A")
            cmd.extract("Cactin_hpCs-II_7W5A", "chain Z and hpCs-II_7W5A")
            cmd.set_name("hpCs-II_7W5A", "unknown_other_hpCs-II_7W5A")
            cmd.group("hpCs-II_7W5A", "*_hpCs-II_7W5A")
            cmd.do("order *, yes")
        if 'hpCs-I_7W59'.lower() in name.lower():
            cmd.extract("PRP8_hpCs-I_7W59", "chain A and hpCs-I_7W59")
            cmd.extract("BUD31_hpCs-I_7W59", "chain N and hpCs-I_7W59")
            cmd.extract("CWC15_hpCs-I_7W59", "chain P and hpCs-I_7W59")
            cmd.extract("CWC2_RBM22_hpCs-I_7W59", "chain O and hpCs-I_7W59")
            cmd.extract("CWC22_hpCs-I_7W59", "chain V and hpCs-I_7W59")
            cmd.extract("PRP46_hpCs-I_7W59", "chain T and hpCs-I_7W59")
            cmd.extract("SYF2_hpCs-I_7W59", "chain M and hpCs-I_7W59")
            cmd.extract("SYF1_hpCs-I_7W59", "chain I and hpCs-I_7W59")
            cmd.extract("U2_hpCs-I_7W59", "chain H and hpCs-I_7W59")
            cmd.extract("U5_hpCs-I_7W59", "chain B and hpCs-I_7W59")
            cmd.extract("U6_hpCs-I_7W59", "chain F and hpCs-I_7W59")
            cmd.extract("5EXON_hpCs-I_7W59", "chain 4 and hpCs-I_7W59")
            cmd.extract("Intron_hpCs-I_7W59", "chain G and hpCs-I_7W59")
            cmd.extract("SLU7_hpCs-I_7W59", "chain 1 and hpCs-I_7W59")
            cmd.extract("PRKRIP1_hpCs-I_7W59", "chain 2 and hpCs-I_7W59")
            cmd.extract("AQR_hpCs-I_7W59", "chain Q and hpCs-I_7W59")
            cmd.extract("SNRP116_hpCs-I_7W59", "chain C and hpCs-I_7W59")
            cmd.extract("PPIL1_hpCs-I_7W59", "chain S and hpCs-I_7W59")
            cmd.extract("SNRNP200_hpCs-I_7W59", "chain D and hpCs-I_7W59")
            cmd.extract("PPIE_hpCs-I_7W59", "chain y and hpCs-I_7W59")
            cmd.extract("SNRNP40_hpCs-I_7W59", "chain E and hpCs-I_7W59")
            cmd.extract("SNRPD3_hpCs-I_7W59",
                        "(chain a or chain h ) and hpCs-I_7W59")
            cmd.extract("SNRPB_hpCs-I_7W59",
                        "(chain b or chain i ) and hpCs-I_7W59")
            cmd.extract("EIF4A3_hpCs-I_7W59", "chain u and hpCs-I_7W59")
            cmd.extract("SNRPD1_hpCs-I_7W59",
                        "(chain c or chain j ) and hpCs-I_7W59")
            cmd.extract("MAGOH_hpCs-I_7W59", "chain v and hpCs-I_7W59")
            cmd.extract("SNRPD2_hpCs-I_7W59",
                        "(chain d or chain k ) and hpCs-I_7W59")
            cmd.extract("RBM8A_hpCs-I_7W59", "chain w and hpCs-I_7W59")
            cmd.extract("SNRPF_hpCs-I_7W59",
                        "(chain f or chain m ) and hpCs-I_7W59")
            cmd.extract("CASC3_hpCs-I_7W59", "chain x and hpCs-I_7W59")
            cmd.extract("SNRPE_hpCs-I_7W59",
                        "(chain e or chain l ) and hpCs-I_7W59")
            cmd.extract("SNRPG_hpCs-I_7W59",
                        "(chain g or chain n ) and hpCs-I_7W59")
            cmd.extract("SNRPA1_hpCs-I_7W59", "chain o and hpCs-I_7W59")
            cmd.extract("SNRPB2_hpCs-I_7W59", "chain p and hpCs-I_7W59")
            cmd.extract("CRNKL1_hpCs-I_7W59", "chain J and hpCs-I_7W59")
            cmd.extract("CDC5L_hpCs-I_7W59", "chain L and hpCs-I_7W59")
            cmd.extract(
                "PRPF19_hpCs-I_7W59",
                "(chain q or chain r or chain s or chain t ) and hpCs-I_7W59")
            cmd.extract("BCAS2_hpCs-I_7W59", "chain K and hpCs-I_7W59")
            cmd.extract("SKIP_hpCs-I_7W59", "chain R and hpCs-I_7W59")
            cmd.extract("SRRM2_hpCs-I_7W59", "chain U and hpCs-I_7W59")
            cmd.extract("CDC40_hpCs-I_7W59", "chain W and hpCs-I_7W59")
            cmd.extract("DHX8_hpCs-I_7W59", "chain Y and hpCs-I_7W59")
            cmd.extract("FAM32A_hpCs-I_7W59", "chain z and hpCs-I_7W59")
            cmd.extract("NKAP_hpCs-I_7W59", "chain 3 and hpCs-I_7W59")
            cmd.extract("Cactin_hpCs-I_7W59", "chain Z and hpCs-I_7W59")
            cmd.set_name("hpCs-I_7W59", "unknown_other_hpCs-I_7W59")
            cmd.group("hpCs-I_7W59", "*_hpCs-I_7W59")
            cmd.do("order *, yes")
        if 'hpCs_7W5B'.lower() in name.lower():
            cmd.extract("PRP8_hpCs_7W5B", "chain A and hpCs_7W5B")
            cmd.extract("BUD31_hpCs_7W5B", "chain N and hpCs_7W5B")
            cmd.extract("CWC15_hpCs_7W5B", "chain P and hpCs_7W5B")
            cmd.extract("CWC2_RBM22_hpCs_7W5B", "chain O and hpCs_7W5B")
            cmd.extract("CWC22_hpCs_7W5B", "chain V and hpCs_7W5B")
            cmd.extract("PRP46_hpCs_7W5B", "chain T and hpCs_7W5B")
            cmd.extract("SYF2_hpCs_7W5B", "chain M and hpCs_7W5B")
            cmd.extract("SYF1_hpCs_7W5B", "chain I and hpCs_7W5B")
            cmd.extract("U2_hpCs_7W5B", "chain H and hpCs_7W5B")
            cmd.extract("U5_hpCs_7W5B", "chain B and hpCs_7W5B")
            cmd.extract("U6_hpCs_7W5B", "chain F and hpCs_7W5B")
            cmd.extract("5EXON_hpCs_7W5B", "chain 4 and hpCs_7W5B")
            cmd.extract("Intron_hpCs_7W5B", "chain G and hpCs_7W5B")
            cmd.extract("SLU7_hpCs_7W5B", "chain 1 and hpCs_7W5B")
            cmd.extract("PRKRIP1_hpCs_7W5B", "chain 2 and hpCs_7W5B")
            cmd.extract("AQR_hpCs_7W5B", "chain Q and hpCs_7W5B")
            cmd.extract("SNRP116_hpCs_7W5B", "chain C and hpCs_7W5B")
            cmd.extract("PPIL1_hpCs_7W5B", "chain S and hpCs_7W5B")
            cmd.extract("SNRNP200_hpCs_7W5B", "chain D and hpCs_7W5B")
            cmd.extract("PPIE_hpCs_7W5B", "chain y and hpCs_7W5B")
            cmd.extract("SNRNP40_hpCs_7W5B", "chain E and hpCs_7W5B")
            cmd.extract("SNRPD3_hpCs_7W5B",
                        "(chain a or chain h ) and hpCs_7W5B")
            cmd.extract("SNRPB_hpCs_7W5B",
                        "(chain b or chain i ) and hpCs_7W5B")
            cmd.extract("EIF4A3_hpCs_7W5B", "chain u and hpCs_7W5B")
            cmd.extract("SNRPD1_hpCs_7W5B",
                        "(chain c or chain j ) and hpCs_7W5B")
            cmd.extract("MAGOH_hpCs_7W5B", "chain v and hpCs_7W5B")
            cmd.extract("SNRPD2_hpCs_7W5B",
                        "(chain d or chain k ) and hpCs_7W5B")
            cmd.extract("RBM8A_hpCs_7W5B", "chain w and hpCs_7W5B")
            cmd.extract("SNRPF_hpCs_7W5B",
                        "(chain f or chain m ) and hpCs_7W5B")
            cmd.extract("CASC3_hpCs_7W5B", "chain x and hpCs_7W5B")
            cmd.extract("SNRPE_hpCs_7W5B",
                        "(chain e or chain l ) and hpCs_7W5B")
            cmd.extract("SNRPG_hpCs_7W5B",
                        "(chain g or chain n ) and hpCs_7W5B")
            cmd.extract("SNRPA1_hpCs_7W5B", "chain o and hpCs_7W5B")
            cmd.extract("SNRPB2_hpCs_7W5B", "chain p and hpCs_7W5B")
            cmd.extract("CRNKL1_hpCs_7W5B", "chain J and hpCs_7W5B")
            cmd.extract("CDC5L_hpCs_7W5B", "chain L and hpCs_7W5B")
            cmd.extract(
                "PRPF19_hpCs_7W5B",
                "(chain q or chain r or chain s or chain t ) and hpCs_7W5B")
            cmd.extract("BCAS2_hpCs_7W5B", "chain K and hpCs_7W5B")
            cmd.extract("SKIP_hpCs_7W5B", "chain R and hpCs_7W5B")
            cmd.extract("SRRM2_hpCs_7W5B", "chain U and hpCs_7W5B")
            cmd.extract("CDC40_hpCs_7W5B", "chain W and hpCs_7W5B")
            cmd.extract("DHX8_hpCs_7W5B", "chain Y and hpCs_7W5B")
            cmd.extract("FAM32A_hpCs_7W5B", "chain z and hpCs_7W5B")
            cmd.extract("NKAP_hpCs_7W5B", "chain 3 and hpCs_7W5B")
            cmd.extract("Cactin_hpCs_7W5B", "chain Z and hpCs_7W5B")
            cmd.set_name("hpCs_7W5B", "unknown_other_hpCs_7W5B")
            cmd.group("hpCs_7W5B", "*_hpCs_7W5B")
            cmd.do("order *, yes")