Beispiel #1
0
def get_dihedrals_and_phi_psi(model):
    from cctbx.geometry_restraints import dihedral_proxy_registry
    dihedral_registry = dihedral_proxy_registry(strict_conflict_handling=True)
    dihedral_registry.initialize_table()
    from mmtbx.conformation_dependent_library import generate_protein_threes
    grm = model._processed_pdb_file.geometry_restraints_manager()
    dihedral_proxies = grm.get_dihedral_proxies().deep_copy()
    for p in dihedral_proxies:
        dihedral_registry.add_if_not_duplicated(p)
    for three in generate_protein_threes(hierarchy=model.get_hierarchy(),
                                         geometry=None):
        proxies = three.get_dummy_dihedral_proxies(only_psi_phi_pairs=False)
        for p in proxies:
            dihedral_registry.add_if_not_duplicated(p)
    return dihedral_registry.proxies
Beispiel #2
0
def get_complete_dihedral_proxies_2(model, log=None):
    from six.moves import cStringIO as StringIO
    from cctbx.geometry_restraints import dihedral_proxy_registry
    from mmtbx.conformation_dependent_library import generate_protein_threes
    if log is None:
        log = StringIO
    dihedral_registry = dihedral_proxy_registry(strict_conflict_handling=True)
    dihedral_registry.initialize_table()
    grm = model.get_restraints_manager().geometry
    dihedral_proxies = grm.get_dihedral_proxies().deep_copy()
    for p in dihedral_proxies:
        dihedral_registry.add_if_not_duplicated(p)
    for three in generate_protein_threes(hierarchy=model.get_hierarchy(),
                                         geometry=None):
        proxies = three.get_dummy_dihedral_proxies(only_psi_phi_pairs=False)
        for p in proxies:
            dihedral_registry.add_if_not_duplicated(p)
    return dihedral_registry.proxies
Beispiel #3
0
def get_dihedrals_and_phi_psi(processed_pdb_file):
  from cctbx.geometry_restraints import dihedral_proxy_registry
  dihedral_registry = dihedral_proxy_registry(
      strict_conflict_handling=True)
  dihedral_registry.initialize_table()
  from mmtbx.conformation_dependent_library import generate_protein_threes
  grm = processed_pdb_file.geometry_restraints_manager()
  dihedral_proxies = grm.get_dihedral_proxies().deep_copy()
  for p in dihedral_proxies:
    dihedral_registry.add_if_not_duplicated(p)
  for three in generate_protein_threes(
      hierarchy=processed_pdb_file.all_chain_proxies.pdb_hierarchy,
      geometry=None):
    proxies = three.get_dummy_dihedral_proxies(
        only_psi_phi_pairs=False)
    for p in proxies:
      dihedral_registry.add_if_not_duplicated(p)
  return dihedral_registry.proxies
def run(args):
  assert len(args) == 0
  #
  r = geometry_restraints.angle_proxy_registry(
    strict_conflict_handling=True)
  r.initialize_table()
  r.process(
    source_info=source_info_server(),
    proxy=geometry_restraints.angle_proxy(
      i_seqs=(4,2,7), angle_ideal=0, weight=1))
  r.process(
    source_info=source_info_server(),
    proxy=geometry_restraints.angle_proxy(
      i_seqs=(5,2,3), angle_ideal=0, weight=1))
  assert r.lookup_i_proxy((4,2,7)) == 0
  assert r.lookup_i_proxy((7,2,4)) == 0
  assert r.lookup_i_proxy((2,7,4)) is None
  assert r.lookup_i_proxy((3,2,5)) == 1
  assert r.lookup_i_proxy((5,2,3)) == 1
  assert r.lookup_i_proxy((5,3,2)) is None
  #
  r = geometry_restraints.dihedral_proxy_registry(
    strict_conflict_handling=True)
  r.initialize_table()
  r.process(
    source_info=source_info_server(),
    proxy=geometry_restraints.dihedral_proxy(
      i_seqs=(4,7,2,3), angle_ideal=0, weight=1))
  r.process(
    source_info=source_info_server(),
    proxy=geometry_restraints.dihedral_proxy(
      i_seqs=(8,2,3,5), angle_ideal=0, weight=1))
  r.process(
    source_info=source_info_server(),
    proxy=geometry_restraints.dihedral_proxy(
      i_seqs=(6,3,1,9), angle_ideal=0, weight=1))
  assert r.lookup_i_proxy((3,2,7,4)) == (0, 1)
  assert r.lookup_i_proxy((4,2,7,3)) == (0, -1)
  assert r.lookup_i_proxy((4,7,2,3)) == (0, 1)
  assert r.lookup_i_proxy((3,7,2,4)) == (0, -1)
  assert r.lookup_i_proxy((5,2,3,8)) == (1, 1)
  assert r.lookup_i_proxy((6,3,1,9)) == (2, -1)
  #
  print "OK"
Beispiel #5
0
def run(args):
    assert len(args) == 0
    #
    r = geometry_restraints.angle_proxy_registry(strict_conflict_handling=True)
    r.initialize_table()
    r.process(source_info=source_info_server(),
              proxy=geometry_restraints.angle_proxy(i_seqs=(4, 2, 7),
                                                    angle_ideal=0,
                                                    weight=1))
    r.process(source_info=source_info_server(),
              proxy=geometry_restraints.angle_proxy(i_seqs=(5, 2, 3),
                                                    angle_ideal=0,
                                                    weight=1))
    assert r.lookup_i_proxy((4, 2, 7)) == 0
    assert r.lookup_i_proxy((7, 2, 4)) == 0
    assert r.lookup_i_proxy((2, 7, 4)) is None
    assert r.lookup_i_proxy((3, 2, 5)) == 1
    assert r.lookup_i_proxy((5, 2, 3)) == 1
    assert r.lookup_i_proxy((5, 3, 2)) is None
    #
    r = geometry_restraints.dihedral_proxy_registry(
        strict_conflict_handling=True)
    r.initialize_table()
    r.process(source_info=source_info_server(),
              proxy=geometry_restraints.dihedral_proxy(i_seqs=(4, 7, 2, 3),
                                                       angle_ideal=0,
                                                       weight=1))
    r.process(source_info=source_info_server(),
              proxy=geometry_restraints.dihedral_proxy(i_seqs=(8, 2, 3, 5),
                                                       angle_ideal=0,
                                                       weight=1))
    r.process(source_info=source_info_server(),
              proxy=geometry_restraints.dihedral_proxy(i_seqs=(6, 3, 1, 9),
                                                       angle_ideal=0,
                                                       weight=1))
    assert r.lookup_i_proxy((3, 2, 7, 4)) == (0, 1)
    assert r.lookup_i_proxy((4, 2, 7, 3)) == (0, -1)
    assert r.lookup_i_proxy((4, 7, 2, 3)) == (0, 1)
    assert r.lookup_i_proxy((3, 7, 2, 4)) == (0, -1)
    assert r.lookup_i_proxy((5, 2, 3, 8)) == (1, 1)
    assert r.lookup_i_proxy((6, 3, 1, 9)) == (2, -1)
    #
    print("OK")