mmtbx.monomer_library package

Submodules

mmtbx.monomer_library.bondlength_defaults module

mmtbx.monomer_library.bondlength_defaults.generic_metal_run(metal_element, coordination_atom_element, resName, name, return_non_protein=True)
mmtbx.monomer_library.bondlength_defaults.get_basepair_target_distance(atom1, atom2, which_basepair)
mmtbx.monomer_library.bondlength_defaults.get_default_bondlength(s1, s2, order=1)
mmtbx.monomer_library.bondlength_defaults.run(atom1, atom2, return_non_protein=True)

mmtbx.monomer_library.cif_triage module

mmtbx.monomer_library.cif_triage.check_comp(file_name)

mmtbx.monomer_library.cif_types module

mmtbx.monomer_library.cif_types.apply_chem_mod_list(label, mod_list, result_list)
class mmtbx.monomer_library.cif_types.chem_comp(**keyword_arguments)

Bases: looped_data

_chem_comp.id _chem_comp.three_letter_code _chem_comp.name _chem_comp.group _chem_comp.number_atoms_all:int _chem_comp.number_atoms_nh:int _chem_comp.desc_level

class mmtbx.monomer_library.cif_types.chem_comp_angle(**keyword_arguments)

Bases: looped_data

_chem_comp_angle.atom_id_1 _chem_comp_angle.atom_id_2 _chem_comp_angle.atom_id_3 _chem_comp_angle.value_angle:float _chem_comp_angle.value_angle_esd:float

class mmtbx.monomer_library.cif_types.chem_comp_atom(**keyword_arguments)

Bases: looped_data

_chem_comp_atom.atom_id _chem_comp_atom.type_symbol _chem_comp_atom.type_energy _chem_comp_atom.partial_charge:float

class mmtbx.monomer_library.cif_types.chem_comp_bond(**keyword_arguments)

Bases: looped_data

_chem_comp_bond.atom_id_1 _chem_comp_bond.atom_id_2 _chem_comp_bond.type _chem_comp_bond.value_dist:float _chem_comp_bond.value_dist_esd:float _chem_comp_bond.value_dist_neutron:float

atom_ids()
class mmtbx.monomer_library.cif_types.chem_comp_chir(**keyword_arguments)

Bases: looped_data

_chem_comp_chir.id _chem_comp_chir.atom_id_centre _chem_comp_chir.atom_id_1 _chem_comp_chir.atom_id_2 _chem_comp_chir.atom_id_3 _chem_comp_chir.volume_sign

class mmtbx.monomer_library.cif_types.chem_comp_deriv(**keyword_arguments)

Bases: looped_data

_chem_comp_deriv.comp_id _chem_comp_deriv.source_comp_id _chem_comp_deriv.mod_id _chem_comp_deriv.name _chem_comp_deriv.group

class mmtbx.monomer_library.cif_types.chem_comp_plane_atom(**keyword_arguments)

Bases: looped_data

_chem_comp_plane_atom.plane_id _chem_comp_plane_atom.atom_id _chem_comp_plane_atom.dist_esd:float

class mmtbx.monomer_library.cif_types.chem_comp_rotamer_info(**keyword_arguments)

Bases: looped_data

_chem_comp_rotamer_info.phil_str

class mmtbx.monomer_library.cif_types.chem_comp_synonym(**keyword_arguments)

Bases: looped_data

_chem_comp_synonym.comp_id _chem_comp_synonym.comp_alternative_id _chem_comp_synonym.mod_id

class mmtbx.monomer_library.cif_types.chem_comp_synonym_atom(**keyword_arguments)

Bases: looped_data

_chem_comp_synonym_atom.comp_id _chem_comp_synonym_atom.comp_alternative_id _chem_comp_synonym_atom.atom_id _chem_comp_synonym_atom.atom_alternative_id

class mmtbx.monomer_library.cif_types.chem_comp_tor(**keyword_arguments)

Bases: looped_data

_chem_comp_tor.id _chem_comp_tor.atom_id_1 _chem_comp_tor.atom_id_2 _chem_comp_tor.atom_id_3 _chem_comp_tor.atom_id_4 _chem_comp_tor.value_angle:float _chem_comp_tor.alt_value_angle _chem_comp_tor.value_angle_esd:float _chem_comp_tor.period:int

atom_ids()
class mmtbx.monomer_library.cif_types.chem_comp_tree(**keyword_arguments)

Bases: looped_data

_chem_comp_tree.atom_id _chem_comp_tree.atom_back _chem_comp_tree.atom_forward _chem_comp_tree.connect_type

Bases: looped_data

_chem_link.id _chem_link.comp_id_1 _chem_link.mod_id_1 _chem_link.group_comp_1 _chem_link.comp_id_2 _chem_link.mod_id_2 _chem_link.group_comp_2 _chem_link.name

Bases: looped_data

_chem_link_angle.atom_1_comp_id:int _chem_link_angle.atom_id_1 _chem_link_angle.atom_2_comp_id:int _chem_link_angle.atom_id_2 _chem_link_angle.atom_3_comp_id:int _chem_link_angle.atom_id_3 _chem_link_angle.value_angle:float _chem_link_angle.value_angle_esd:float

Bases: looped_data

_chem_link_bond.atom_1_comp_id:int _chem_link_bond.atom_id_1 _chem_link_bond.atom_2_comp_id:int _chem_link_bond.atom_id_2 _chem_link_bond.type _chem_link_bond.value_dist:float _chem_link_bond.value_dist_esd:float

Bases: looped_data

_chem_link_chir.id _chem_link_chir.atom_centre_comp_id:int _chem_link_chir.atom_id_centre _chem_link_chir.atom_1_comp_id:int _chem_link_chir.atom_id_1 _chem_link_chir.atom_2_comp_id:int _chem_link_chir.atom_id_2 _chem_link_chir.atom_3_comp_id:int _chem_link_chir.atom_id_3 _chem_link_chir.volume_sign

Bases: looped_data

_chem_link_plane.plane_id _chem_link_plane.atom_comp_id:int _chem_link_plane.atom_id _chem_link_plane.dist_esd:float

Bases: looped_data

_chem_link_tor.id _chem_link_tor.atom_1_comp_id:int _chem_link_tor.atom_id_1 _chem_link_tor.atom_2_comp_id:int _chem_link_tor.atom_id_2 _chem_link_tor.atom_3_comp_id:int _chem_link_tor.atom_id_3 _chem_link_tor.atom_4_comp_id:int _chem_link_tor.atom_id_4 _chem_link_tor.value_angle:float _chem_link_tor.alt_value_angle _chem_link_tor.value_angle_esd:float _chem_link_tor.period:int

class mmtbx.monomer_library.cif_types.chem_mod(**keyword_arguments)

Bases: looped_data

_chem_mod.id _chem_mod.name _chem_mod.comp_id _chem_mod.group_id

class mmtbx.monomer_library.cif_types.chem_mod_angle(**keyword_arguments)

Bases: looped_data

_chem_mod_angle.function _chem_mod_angle.atom_id_1 _chem_mod_angle.atom_id_2 _chem_mod_angle.atom_id_3 _chem_mod_angle.new_value_angle:float _chem_mod_angle.new_value_angle_esd:float

apply_change_in_place(angle)
as_chem_comp()
is_matching_mod_for(angle)
class mmtbx.monomer_library.cif_types.chem_mod_atom(**keyword_arguments)

Bases: looped_data

_chem_mod_atom.function _chem_mod_atom.atom_id _chem_mod_atom.new_atom_id _chem_mod_atom.new_type_symbol _chem_mod_atom.new_type_energy _chem_mod_atom.new_partial_charge:float

as_chem_comp()
class mmtbx.monomer_library.cif_types.chem_mod_bond(**keyword_arguments)

Bases: looped_data

_chem_mod_bond.function _chem_mod_bond.atom_id_1 _chem_mod_bond.atom_id_2 _chem_mod_bond.new_type _chem_mod_bond.new_value_dist:float _chem_mod_bond.new_value_dist_esd:float _chem_mod_bond.new_value_dist_neutron:float

apply_change_in_place(bond)
as_chem_comp()
is_matching_mod_for(bond)
class mmtbx.monomer_library.cif_types.chem_mod_chir(**keyword_arguments)

Bases: looped_data

_chem_mod_chir.function _chem_mod_chir.id _chem_mod_chir.atom_id_centre _chem_mod_chir.atom_id_1 _chem_mod_chir.atom_id_2 _chem_mod_chir.atom_id_3 _chem_mod_chir.new_volume_sign

apply_change_in_place(chir)
as_chem_comp()
is_matching_mod_for(chir)
class mmtbx.monomer_library.cif_types.chem_mod_plane_atom(**keyword_arguments)

Bases: looped_data

_chem_mod_plane_atom.function _chem_mod_plane_atom.plane_id _chem_mod_plane_atom.atom_id _chem_mod_plane_atom.new_dist_esd:float

apply_change_in_place(plane_atom)
as_chem_comp()
is_matching_mod_for(plane_atom)
class mmtbx.monomer_library.cif_types.chem_mod_tor(**keyword_arguments)

Bases: looped_data

_chem_mod_tor.function _chem_mod_tor.id _chem_mod_tor.atom_id_1 _chem_mod_tor.atom_id_2 _chem_mod_tor.atom_id_3 _chem_mod_tor.atom_id_4 _chem_mod_tor.new_value_angle:float _chem_mod_tor.new_alt_value_angle _chem_mod_tor.new_value_angle_esd:float _chem_mod_tor.new_period:int

apply_change_in_place(tor)
as_chem_comp()
is_matching_mod_for(tor)
class mmtbx.monomer_library.cif_types.chem_mod_tree(**keyword_arguments)

Bases: looped_data

_chem_mod_tree.function _chem_mod_tree.atom_id _chem_mod_tree.atom_back _chem_mod_tree.back_type _chem_mod_tree.atom_forward _chem_mod_tree.connect_type

apply_change_in_place(tree_entry)
as_chem_comp()
is_matching_mod_for(tree_entry)
class mmtbx.monomer_library.cif_types.chem_plane(plane_id)

Bases: object

class mmtbx.monomer_library.cif_types.comp_comp_id(source_info, chem_comp)

Bases: slots_getstate_setstate

angle_list
apply_mod(mod)
as_geometry_restraints_motif()
atom_by_id(atom_id)
atom_dict()
atom_ids(sorted=False)
atom_list
bond_list
change_atom_in_place(mod_atom)
chem_comp
chir_list
cif_object
classification
delete_atom_in_place(atom_id)
get_angle(atom_id_1, atom_id_2, atom_id_3)
get_bond(atom_id_1, atom_id_2)
get_chir_bonds_and_angles(chir)
get_chir_volume_ideal(chir)
get_classification()
get_planes()
hydrogen_deuterium_aliases()
i_atom_by_id(atom_id)
is_dna()
is_peptide()
is_rna()
is_rna_dna()
is_water()
non_hydrogen_atoms()
normalize_atom_ids_in_place()
normalized_angle_list()
normalized_bond_list()
normalized_rna_dna
plane_atom_list
rotamer_info()
rotamer_info_phil_str_list
rotamer_iterator(atom_names, sites_cart, fine_sampling=False)
set_classification()
show(f=None)
source_info
test_for_peptide(atom_dict)
test_for_rna_dna(atom_dict)
test_for_water(atom_dict)
tor_list
class mmtbx.monomer_library.cif_types.energy_lib_atom(**keyword_arguments)

Bases: looped_data

_lib_atom.type _lib_atom.weight:float _lib_atom.hb_type _lib_atom.vdw_radius:float _lib_atom.vdwh_radius:float _lib_atom.ion_radius:float _lib_atom.element _lib_atom.valency:int _lib_atom.sp:int _lib_atom.vdw_radius_neutron:float

class mmtbx.monomer_library.cif_types.energy_lib_synonym(**keyword_arguments)

Bases: looped_data

_lib_synonym.atom_type _lib_synonym.atom_alternative_type

class mmtbx.monomer_library.cif_types.energy_lib_vdw(**keyword_arguments)

Bases: looped_data

_lib_vdw.atom_type_1 _lib_vdw.atom_type_2 _lib_vdw.energy_min:float _lib_vdw.radius_min:float _lib_vdw.H_flag

mmtbx.monomer_library.cif_types.esd_as_weight(esd)
mmtbx.monomer_library.cif_types.get_bond(bond_list, atom_id_1, atom_id_2)
mmtbx.monomer_library.cif_types.get_chir_volume_ideal(volume_sign, bonds, angles)
mmtbx.monomer_library.cif_types.group_planes(plane_atom_list)

Bases: object

class mmtbx.monomer_library.cif_types.looped_data(**keyword_arguments)

Bases: object

mix-in to extract keywords from self.__class__.__doc__

as_cif_loop()
cif_keywords()
generate_loop_data()
looped_ids()
show(f=None)
show_loop_data(f=None)
show_loop_header(f=None)
class mmtbx.monomer_library.cif_types.mod_mod_id(source_info, chem_mod)

Bases: object

as_geometry_restraints_motif_manipulation()
get_planes()
show(f=None)
mmtbx.monomer_library.cif_types.new_if_defined(old, new)
mmtbx.monomer_library.cif_types.normalized_bond_list(bond_list)
mmtbx.monomer_library.cif_types.show_loop(data_list, f)

mmtbx.monomer_library.conformation_dependent_restraints module

mmtbx.monomer_library.conformation_dependent_restraints.build_conformation_dependent_angle_proxies(angle_proxy_registry, dihedral_proxy_registry, monomer_mappings, connectivity_i_j, connectivity_j_k, sites_cart)

Sets up conformation_dependent_restraints object.

Finds atom indexes from registries

Looks for C_prev in m_i, most atoms in m_j, N_next in m_k.

class mmtbx.monomer_library.conformation_dependent_restraints.conformation_dependent_restraints(residue_name, next_residue_name, conformation_proxies, i_phi_proxy, i_psi_proxy, i_dynamic_angles, i_dynamic_dihedrals)

Bases: object

update_restraints(sites_cart, dihedral_proxies, angle_proxies)
class mmtbx.monomer_library.conformation_dependent_restraints.pgd_server

Bases: object

lookup(residue, next_residue, phi, psi)

mmtbx.monomer_library.conv_v2_v3 module

mmtbx.monomer_library.conv_v2_v3.iter_until_loop(lines)
mmtbx.monomer_library.conv_v2_v3.rename_angle(lines)
mmtbx.monomer_library.conv_v2_v3.rename_atom(lines)
mmtbx.monomer_library.conv_v2_v3.rename_bond(lines)
mmtbx.monomer_library.conv_v2_v3.rename_chir(lines)
mmtbx.monomer_library.conv_v2_v3.rename_generic(lines, len_flds, i_list)
mmtbx.monomer_library.conv_v2_v3.rename_plan(lines)
mmtbx.monomer_library.conv_v2_v3.rename_tor(lines)
mmtbx.monomer_library.conv_v2_v3.rename_tree(lines)
mmtbx.monomer_library.conv_v2_v3.run(args)
mmtbx.monomer_library.conv_v2_v3.trans_field(flds, i)

mmtbx.monomer_library.correct_hydrogen_geometries module

mmtbx.monomer_library.correct_hydrogen_geometries.correct_hydrogen_geometries(hierarchy, restraints_manager=None, xray_structure=None, sites_cart=None, verbose=False)
mmtbx.monomer_library.correct_hydrogen_geometries.get_bad_hydrogen_i_seqs(hierarchy, restraints_manager=None, xray_structure=None, sites_cart=None, verbose=False)

mmtbx.monomer_library.glyco_chiral_values module

mmtbx.monomer_library.glyco_utils module

mmtbx.monomer_library.glyco_utils.generate_atoms_from_atom_groups(atom_group1, atom_group2)
mmtbx.monomer_library.glyco_utils.get_C1_carbon(atom_group1, atom_group2, distance_cutoff=2.0)
mmtbx.monomer_library.glyco_utils.get_alpha_beta(code, fake=True)
mmtbx.monomer_library.glyco_utils.get_anomeric_carbon(atom_group1, atom_group2, bonds, verbose=False)
mmtbx.monomer_library.glyco_utils.get_anomeric_hydrogen(anomeric_carbon, bonds)
mmtbx.monomer_library.glyco_utils.get_any_linking_carbon(atom_group1, atom_group2, bonds, verbose=False)
mmtbx.monomer_library.glyco_utils.get_chiral_sign(code)
mmtbx.monomer_library.glyco_utils.get_distance2(a1, a2)
mmtbx.monomer_library.glyco_utils.get_ring_carbon(anomeric_carbon, bonds)
mmtbx.monomer_library.glyco_utils.get_ring_oxygen(anomeric_carbon, bonds, element='O')
mmtbx.monomer_library.glyco_utils.get_ring_oxygen_substitute(anomeric_carbon, bonds)

Bases: object

mmtbx.monomer_library.hydrogen_restrictions module

mmtbx.monomer_library.hydrogen_restrictions.run(args)

mmtbx.monomer_library.idealized_aa module

mmtbx.monomer_library.idealized_aa.residue_dict()

mmtbx.monomer_library.linking_mixins module

class mmtbx.monomer_library.linking_mixins.ResidueLinkClass

Bases: dict

mmtbx.monomer_library.linking_mixins.check_all_classes(pdb_hierarchy, class_type)
class mmtbx.monomer_library.linking_mixins.linking_mixins

Bases: object

mmtbx.monomer_library.linking_mixins.possible_cyclic_peptide(atom1, atom2, verbose=False)

mmtbx.monomer_library.linking_setup module

mmtbx.monomer_library.linking_setup.adjust_class(atom, atom_class)
mmtbx.monomer_library.linking_setup.skip_if_non_linking(lookup, atom1, atom2)
mmtbx.monomer_library.linking_setup.sulfur_class(atom, atom_class)
mmtbx.monomer_library.linking_setup.update_skip_if_longer(amino_acid_bond_cutoff, rna_dna_bond_cutoff, intra_residue_bond_cutoff, saccharide_bond_cutoff, metal_coordination_cutoff, sulfur_bond_cutoff, other_bond_cutoff)

mmtbx.monomer_library.linking_utils module

mmtbx.monomer_library.linking_utils.check_for_acid(hierarchy, carbon)
mmtbx.monomer_library.linking_utils.check_valence(hierarchy, atom)
mmtbx.monomer_library.linking_utils.check_valence_and_acid(hierarchy, atom)
class mmtbx.monomer_library.linking_utils.empty

Bases: object

mmtbx.monomer_library.linking_utils.generate_atoms_from_atom_groups(atom_group1, atom_group2)
mmtbx.monomer_library.linking_utils.get_angles_from_included_bonds(hierarchy, bonds, bond_cutoff=None, verbose=False)
mmtbx.monomer_library.linking_utils.get_bonded(hierarchy, atom, bond_cutoff=None, verbose=False)
mmtbx.monomer_library.linking_utils.get_bonded_from_atom_groups(atom_group1, atom_group2, bond_cutoff=None, verbose=False)
mmtbx.monomer_library.linking_utils.get_chiral_volume(c_atom, o_atom, angles, verbose=False)
mmtbx.monomer_library.linking_utils.get_classes(atom, important_only=False, verbose=False)
mmtbx.monomer_library.linking_utils.get_distance2(atom1, atom2)
mmtbx.monomer_library.linking_utils.get_hand(c_atom, o_atom, angles, verbose=False)
mmtbx.monomer_library.linking_utils.get_volume(centre, atom1, atom2, atom3)
mmtbx.monomer_library.linking_utils.is_atom_group_pair_linked(atom_group1, atom_group2, mon_lib_srv)
mmtbx.monomer_library.linking_utils.is_atom_metal_coordinated(lookup, atom1, atom2)
mmtbx.monomer_library.linking_utils.is_atom_pair_linked(atom1, atom2, distance=None, max_bonded_cutoff=3.0, amino_acid_bond_cutoff=1.9, rna_dna_bond_cutoff=3.4, rna_dna_angle_cutoff=35, inter_residue_bond_cutoff=1.99, second_row_buffer=0.5, metal_coordination_cutoff=3.0, saccharide_bond_cutoff=3.0, sulfur_bond_cutoff=2.5, other_bond_cutoff=2.0, use_only_bond_cutoff=False, link_metals=True, verbose=False)
mmtbx.monomer_library.linking_utils.is_atom_pair_linked_tuple(atom1, atom2)
mmtbx.monomer_library.linking_utils.is_glyco_amino_bond(atom1, atom2, verbose=False)
mmtbx.monomer_library.linking_utils.is_glyco_bond(atom1, atom2, verbose=False)
mmtbx.monomer_library.linking_utils.is_n_glyco_bond(atom1, atom2)
mmtbx.monomer_library.linking_utils.is_o_glyco_bond(atom1, atom2)
mmtbx.monomer_library.linking_utils.print_apply(apply)

mmtbx.monomer_library.pdb_interpretation module

class mmtbx.monomer_library.pdb_interpretation.ad_hoc_single_atom_residue(residue_name, atom_name, atom_element)

Bases: object

class mmtbx.monomer_library.pdb_interpretation.add_angle_proxies(counters, m_i, m_j, angle_list, angle_proxy_registry, special_position_dict, broken_bond_i_seq_pairs=None, origin_id=0)

Bases: object

class mmtbx.monomer_library.pdb_interpretation.add_bond_proxies(counters, m_i, m_j, bond_list, bond_simple_proxy_registry, sites_cart=None, distance_cutoff=None, use_neutron_distances=False, origin_id=0)

Bases: object

class mmtbx.monomer_library.pdb_interpretation.add_chirality_proxies(counters, m_i, m_j, chir_list, chirality_proxy_registry, special_position_dict, chir_volume_esd, lib_link=None, origin_id=0, broken_bond_i_seq_pairs=None)

Bases: object

class mmtbx.monomer_library.pdb_interpretation.add_dihedral_proxies(counters, m_i, m_j, tor_list, dihedral_function_type, peptide_link_params, dihedral_proxy_registry, special_position_dict, sites_cart=None, chem_link_id=None, broken_bond_i_seq_pairs=None, cis_trans_specifications=None, origin_id=0)

Bases: object

class mmtbx.monomer_library.pdb_interpretation.add_parallelity_proxies(counters, m_i, m_j, parallelity_proxy_registry, special_position_dict, broken_bond_i_seq_pairs=None, weight=0.05)

Bases: object

class mmtbx.monomer_library.pdb_interpretation.add_planarity_proxies(counters, m_i, m_j, plane_list, planarity_proxy_registry, special_position_dict, peptide_link_params=None, origin_id=0, broken_bond_i_seq_pairs=None)

Bases: object

mmtbx.monomer_library.pdb_interpretation.all_atoms_are_in_main_conf(atoms)
class mmtbx.monomer_library.pdb_interpretation.build_all_chain_proxies(mon_lib_srv, ener_lib, params=None, pdb_inp=None, pdb_hierarchy=None, atom_selection_string=None, special_position_settings=None, crystal_symmetry=None, force_symmetry=False, substitute_non_crystallographic_unit_cell_if_necessary=False, strict_conflict_handling=True, keep_monomer_mappings=False, max_atoms=None, log=None, carbohydrate_callback=None, restraints_loading_flags=None)

Bases: linking_mixins

atom_selection(parameter_name, string, cache=None)
construct_geometry_restraints_manager(ener_lib, disulfide_link, plain_pairs_radius=None, params_edits=None, params_remove=None, custom_nonbonded_exclusions=None, assume_hydrogens_all_missing=True, external_energy_function=None, log=None)
create_disulfides(disulfide_distance_cutoff, log=None)
extract_secondary_structure(log=None)
extract_xray_structure(unknown_scattering_type_substitute='?')
fatal_problems_message(ignore_unknown_scattering_types=False, ignore_unknown_nonbonded_energy_types=False)
fatal_problems_report(prefix='', log=None, max_lines=10)
iselection(string, cache=None, optional=True)
phil_atom_selection(cache, scope_extract, attr, string=None, allow_none=False, allow_auto=False, raise_if_empty_selection=True)
phil_atom_selection_multiple(cache, scope_extract, attr, allow_none=False, allow_auto=False, raise_if_empty_selection=True)
phil_atom_selections_as_i_seqs(cache, scope_extract, sel_attrs, n_atoms_needed='one')

This function should be used when selection parameter is .multiple=False On top of that it can demand exactly one atom to be selected or more than 2 atoms shoud be selected. Other options are not required at the moment. n_atoms_needed:

one - exactly one many - 3 and more for parallelity

phil_atom_selections_as_i_seqs_multiple(cache, scope_extract, sel_attrs)

This function should be used when selection parameter is .multiple=True

process_apply_cif_modification(mon_lib_srv, log)
process_custom_nonbonded_exclusions(log, exclude_pair_indices, shell_asu_tables, verbose=True)
process_custom_nonbonded_symmetry_exclusions(log, curr_sym_excl_index)
process_geometry_restraints_edits(params, log, second_pass=False)
process_geometry_restraints_edits_angle(sel_cache, params, log, second_pass=False)
process_geometry_restraints_edits_bond(sel_cache, params, log)
process_geometry_restraints_edits_dihedral(sel_cache, params, log)
process_geometry_restraints_edits_parallelity(sel_cache, params, log)
process_geometry_restraints_edits_planarity(sel_cache, params, log)
process_geometry_restraints_remove(params, geometry_restraints_manager)
process_geometry_restraints_scale(params, log)

Scale the weights for selected basic geometry restraints for given atom selections. This allows geometry to be manually tightened or loosened for problematic atoms, without making global changes to the geometry target weight or editing CIF files. Since this is still somewhat dangerous, atom selections are checked for overlap, and each restraint proxy will be modified no more than once.

Note that planarity proxies are currently left alone, since they have an array of weights instead of a scalar value.

process_hydrogen_bonds(bonds_table, log, verbose=False)
sel_backbone()
sel_backbone_or_sidechain(backbone_flag, sidechain_flag)
sel_classification(classification)
sel_phosphate()
sel_ribose()
sel_sidechain()
sel_within(radius, primary_selection)
selection(string, cache=None, optional=True)
site_symmetry_table()
sites_cart_exact()
update_internals_due_to_coordinates_change(pdb_h)
class mmtbx.monomer_library.pdb_interpretation.build_chain_proxies(mon_lib_srv, ener_lib, translate_cns_dna_rna_residue_names, rna_sugar_pucker_analysis_params, apply_cif_modifications, apply_cif_links_mm_pdbres_dict, link_distance_cutoff, not_linked_show_max, dihedral_function_type, chir_volume_esd, peptide_link_params, pdb_hierarchy, pdb_atoms, sites_cart, special_position_dict, keep_monomer_mappings, all_monomer_mappings, scattering_type_registry, nonbonded_energy_type_registry, geometry_proxy_registries, cystein_sulphur_i_seqs, cystein_monomer_mappings, is_unique_model, i_model, i_conformer, is_first_conformer_in_chain, conformer, conformation_dependent_restraints_list, cis_trans_specifications, apply_restraints_specifications, log, restraints_loading_flags=None, fatal_problem_max_lines=10)

Bases: object

class mmtbx.monomer_library.pdb_interpretation.cif_output_holder

Bases: object

update(other)
class mmtbx.monomer_library.pdb_interpretation.conformer_i_seq

Bases: dict

convert()
class mmtbx.monomer_library.pdb_interpretation.counters(label)

Bases: object

mmtbx.monomer_library.pdb_interpretation.discard_conflicting_pdb_element_column(mm)
mmtbx.monomer_library.pdb_interpretation.ener_lib_as_nonbonded_params(ener_lib, assume_hydrogens_all_missing, factor_1_4_interactions, default_distance, minimum_distance, const_shrink_donor_acceptor, use_lib_vdw=False)
mmtbx.monomer_library.pdb_interpretation.evaluate_registry_process_result(proxy_label, m_i, m_j, i_seqs, registry_process_result, lines=[])
mmtbx.monomer_library.pdb_interpretation.flush_log(log)
mmtbx.monomer_library.pdb_interpretation.format_exception_message(m_i, m_j, i_seqs, base_message, source_labels=None, show_residue_names=True, lines=[])
class mmtbx.monomer_library.pdb_interpretation.geometry_restraints_proxy_registries(n_seq, strict_conflict_handling)

Bases: object

discard_tables()
initialize_tables()
report(prefix, log)
mmtbx.monomer_library.pdb_interpretation.get_restraints_loading_flags(params)
mmtbx.monomer_library.pdb_interpretation.involves_broken_bonds(broken_bond_i_seq_pairs, i_seqs)
mmtbx.monomer_library.pdb_interpretation.is_same_model_as_before(model_type_indices, i_model, models)

Bases: object

Bases: object

class mmtbx.monomer_library.pdb_interpretation.monomer_mapping(pdb_atoms, mon_lib_srv, translate_cns_dna_rna_residue_names, rna_sugar_pucker_analysis_params, apply_cif_modifications, apply_cif_links_mm_pdbres_dict, i_model, i_conformer, is_first_conformer_in_chain, conf_altloc, pdb_residue, next_pdb_residue, chainid, specific_residue_restraints=None)

Bases: slots_getstate_setstate

active_atoms
add_angle_proxies(special_position_dict, angle_proxy_registry)
add_bond_proxies(bond_simple_proxy_registry, use_neutron_distances=False)
add_chirality_proxies(special_position_dict, chirality_proxy_registry, chir_volume_esd)
add_dihedral_proxies(dihedral_function_type, special_position_dict, dihedral_proxy_registry)
add_parallelity_proxies(special_position_dict, parallelity_proxy_registry)
add_planarity_proxies(special_position_dict, planarity_proxy_registry)
angle_counters
apply_mod(mod_mod_id)
atom_name_interpretation
atom_names_given
atom_names_mappings
bond_counters
chainid
chem_mod_ids
chirality_counters
classification
conf_altloc
dihedral_counters
duplicate_atoms
expected_atoms
i_conformer
ignored_atoms
incomplete_info
is_first_conformer_in_chain
is_rna2p
is_rna_dna
is_terminus
is_unusual
missing_hydrogen_atoms
missing_non_hydrogen_atoms
mon_lib_names
mon_lib_srv
monomer
monomer_atom_dict
parallelity_counters
pdb_atoms
pdb_residue
pdb_residue_id_str
planarity_counters
residue_altloc()
residue_name
resolve_unexpected()
summary()
unexpected_atoms
class mmtbx.monomer_library.pdb_interpretation.monomer_mapping_summary(**keyword_args)

Bases: slots_getstate_setstate

all_associated_i_seqs()
classification
conf_altloc
duplicate_atoms
expected_atoms
ignored_atoms
incomplete_info
is_terminus
is_unusual
residue_name
summary()
unexpected_atoms
class mmtbx.monomer_library.pdb_interpretation.nonbonded_energy_type_registry(n_seq, strict_conflict_handling)

Bases: type_symbol_registry_base

mmtbx.monomer_library.pdb_interpretation.print_dict(d)

Print a dictionary with complex keys in a consistent order

Parameters:

d (dictionary) – Dictionary

Returns:

Formatted string

Return type:

String

class mmtbx.monomer_library.pdb_interpretation.process(mon_lib_srv, ener_lib, params=None, file_name=None, raw_records=None, pdb_inp=None, pdb_hierarchy=None, atom_selection_string=None, strict_conflict_handling=False, special_position_settings=None, crystal_symmetry=None, force_symmetry=False, substitute_non_crystallographic_unit_cell_if_necessary=False, keep_monomer_mappings=False, max_atoms=None, log=None, carbohydrate_callback=None, restraints_loading_flags=None)

Bases: object

clash_guard(hard_minimum_nonbonded_distance=0.001, nonbonded_distance_threshold=0.5, new_sites_cart=None)
geometry_restraints_manager(plain_pairs_radius=None, params_edits=None, params_remove=None, custom_nonbonded_exclusions=None, assume_hydrogens_all_missing=True, show_energies=True, hard_minimum_bond_distance_model=0.001, external_energy_function=None, den_manager=None)
search_for_ncs(hierarchy)
xray_structure(show_summary=True)
mmtbx.monomer_library.pdb_interpretation.residue_id_str(residue, suppress_segid=0)
mmtbx.monomer_library.pdb_interpretation.run(args, params=None, strict_conflict_handling=True, substitute_non_crystallographic_unit_cell_if_necessary=False, return_all_processed_pdb_files=False, max_atoms=None, assume_hydrogens_all_missing=True, hard_minimum_nonbonded_distance=0.001, nonbonded_distance_threshold=0.5, log=None)
class mmtbx.monomer_library.pdb_interpretation.scattering_type_registry(scattering_types, strict_conflict_handling)

Bases: type_symbol_registry_base

class mmtbx.monomer_library.pdb_interpretation.selection_manager(all_monomer_mappings, pdb_hierarchy, special_position_settings, atom_selection_cache)

Bases: object

iselection(string, cache=None, optional=True)
phil_atom_selection(cache, scope_extract, attr, string=None, allow_none=False, allow_auto=False, raise_if_empty_selection=True)
sel_backbone()
sel_backbone_or_sidechain(backbone_flag, sidechain_flag)
sel_classification(classification)
sel_phosphate()
sel_residues_within(radius, primary_selection)
sel_ribose()
sel_sidechain()
sel_within(radius, primary_selection)
selection(string, cache=None, optional=True)
mmtbx.monomer_library.pdb_interpretation.show_residue_groups(residue_groups, log, prefix, max_items)
class mmtbx.monomer_library.pdb_interpretation.source_info_server(m_i, m_j)

Bases: object

labels()
n_expected_atoms()
mmtbx.monomer_library.pdb_interpretation.special_dispensation(proxy_label, m_i, m_j, i_seqs)
class mmtbx.monomer_library.pdb_interpretation.special_position_dict(special_position_indices, n_seq)

Bases: object

involves_special_positions(i_seqs)
class mmtbx.monomer_library.pdb_interpretation.type_symbol_registry_base(type_label, symbols, strict_conflict_handling)

Bases: object

assign_charge(i_seq, charge=0)
assign_directly(i_seq, symbol)
assign_from_monomer_mapping(conf_altloc, mm)
discard_tables()
get_unknown_atoms(pdb_atoms, return_iseqs=False)
n_unknown_type_symbols()
report(pdb_atoms, log, prefix, max_lines=10)
report_unknown_message()
mmtbx.monomer_library.pdb_interpretation.validate_geometry_edits_params(params)

mmtbx.monomer_library.rna_sugar_pucker_analysis module

class mmtbx.monomer_library.rna_sugar_pucker_analysis.evaluate(params, residue_1_deoxy_ribo_atom_dict, residue_1_c1p_outbound_atom, residue_2_p_atom)

Bases: slots_getstate_setstate

assign(**keyword_args)
delta
epsilon
is_2p
is_2p_delta
is_2p_o3p_distance_c1p_outbound_line
is_2p_p_distance_c1p_outbound_line
is_3p_delta
is_delta_outlier
is_epsilon_outlier
o3p_distance_c1p_outbound_line
o3p_perp_xyz
p_distance_c1p_outbound_line
p_perp_xyz

mmtbx.monomer_library.rotamer_utils module

mmtbx.monomer_library.rotamer_utils.build_angle_start_by_tor_id(mon_lib_atom_names, sites_cart, rotamer_tor_atom_ids_by_tor_id, i_q_packed_by_tor_id)
mmtbx.monomer_library.rotamer_utils.build_i_q_packed_by_tor_id(rotamer_tor_atom_ids_by_tor_id, tardy_model)
mmtbx.monomer_library.rotamer_utils.build_rotamer_tor_atom_ids_by_tor_id(comp_comp_id, rotamer_info)
mmtbx.monomer_library.rotamer_utils.extract_bonds_to_omit(rotamer_info)
mmtbx.monomer_library.rotamer_utils.rotamer_info_master_phil()
class mmtbx.monomer_library.rotamer_utils.rotamer_iterator(comp_comp_id, atom_names, sites_cart, fine_sampling=False)

Bases: object

next()
reset()
mmtbx.monomer_library.rotamer_utils.tardy_model(comp_comp_id, input_atom_names, mon_lib_atom_names, sites_cart, bonds_to_omit, constrain_dihedrals_with_sigma_less_than_or_equal_to, external_edge_list=None, external_clusters=None, return_none_if_unexpected_degrees_of_freedom=False, tree_root_atom_names={'C', 'CA', 'N', 'O'}, terminal_backbone_atom_names={'H1', 'H2', 'H3', 'HXT', 'OXT'})

mmtbx.monomer_library.server module

exception mmtbx.monomer_library.server.MonomerLibraryServerError

Bases: RuntimeError

mmtbx.monomer_library.server.convert_comp_list(source_info, cif_object)
mmtbx.monomer_library.server.convert_list_block(source_info, cif_object, list_name, list_item_name, data_prefix, cif_type_inner, cif_type_outer, outer_mappings)
mmtbx.monomer_library.server.convert_mod_list(source_info, cif_object)
class mmtbx.monomer_library.server.ener_lib(ener_lib_cif=None, source_info=None, use_neutron_distances=False)

Bases: process_cif_mixin

convert_all(source_info, cif_object, use_neutron_distances=False, cache=True, process_tor=False)
convert_lib_atom(cif_object, use_neutron_distances=False)
convert_lib_synonym(cif_object)
convert_lib_vdw(cif_object)
mmtbx.monomer_library.server.find_mon_lib_file(env_vars=['MMTBX_CCP4_MONOMER_LIB', 'CLIBD_MON'], relative_path_components=[])
mmtbx.monomer_library.server.geostd_list_cif(path=None, strict=False)
mmtbx.monomer_library.server.get_rows(cif_object, data_name, table_name)
class mmtbx.monomer_library.server.id_dict

Bases: dict

mmtbx.monomer_library.server.load_mon_lib_file(mon_lib_path, relative_path_components=[])
mmtbx.monomer_library.server.merge_and_overwrite_cifs(geostd_list_cif_obj, list_cif, verbose=False)
class mmtbx.monomer_library.server.mon_lib_cif_loader(path=None, relative_path_components=[], strict=False)

Bases: object

mmtbx.monomer_library.server.mon_lib_ener_lib_cif(path=None, strict=False)
mmtbx.monomer_library.server.mon_lib_list_cif(path=None, strict=False)
mmtbx.monomer_library.server.print_filtered_cif(cif)
class mmtbx.monomer_library.server.process_cif_mixin

Bases: object

process_cif(file_name, cache=True)
process_cif_object(cif_object, file_name=None, cache=True, process_tor=False)
mmtbx.monomer_library.server.read_cif(file_name)
class mmtbx.monomer_library.server.server(list_cif=None, another_list_cif=None, verbose=False)

Bases: process_cif_mixin

convert_all(source_info, cif_object, skip_comp_list=False, cache=True, process_tor=False)
convert_ccp4_tor_list(source_info, cif_object)
convert_comp_list(source_info, cif_object, cache=True)
convert_comp_synonym_atom_list(cif_object)
convert_comp_synonym_list(cif_object)
convert_deriv_list_dict(cif_object)
convert_mod_list(source_info, cif_object)
get_comp_comp_id_and_atom_name_interpretation(residue_name, atom_names, translate_cns_dna_rna_residue_names=None, specific_residue_restraints=None)
get_comp_comp_id_direct(comp_id, pH_range=None, specific_residue_restraints=None, return_filename=False)
get_comp_comp_id_mod(comp_comp_id, mod_ids)
process_geostd_rna_dna()
rotamer_iterator(comp_id, atom_names, sites_cart, fine_sampling=False)
class mmtbx.monomer_library.server.trivial_html_tag_filter(file_name)

Bases: object

next()

Module contents

mmtbx.monomer_library.is_monomer_library_file(file_name)