Configuration Options¶
The following are the general configuration file settings.
#: The default pH of new molecules
default_pH = 7.0
#: The default pKs of ionizable amino-acids. [Ref]_
#:
#: Some amino-acids have degenerate ionizeable atoms; these are listed and
#: separated by '-' characters. The different pKs for each ionization is
#: listed in the subsequent items in the tuple.
#:
#: .. [Ref] G. R. Grimsley, J. M. Scholtz, C. N. Pace, Protein Sci. 18, 247-51
#: (2009).
pKs = {'ASP': {'OD1-OD2': (-1.0, 3.5)},
'GLU': {'OE1-OE2': (-1.0, 4.2)},
'HIS': {'ND1-NE2': (6.6, 14.0)},
'CYS': {'SG': (6.8,)},
'TYR': {'OH': (10.3,)},
'LYS': {'NZ': (10.5, 14.0, 14.0)},
'last': {'O-OXT': (-1.0, 3.3)},
'first': {'N': (7.7, 14.0, 14.0),}
}
#: Path for the datasets
dataset_path = 'data/'
#: Path for model input molecule identifiers
model_molecule_identifiers = ('high_res.txt',
#'high_res_short.txt',
)
#: Path for the Ramachandran statistics datasets
ramachandran_dataset_path = 'data/ramachandranstatistics/'
#: Path for the Hbond statistics datasets
hbond_dataset_path = 'data/hbondstatistics/'
#: The cutoff Energy (in kT) to report good, warning and bad energies.
energy_cutoff_good = 3.4 # Within 96.6% of observed values
energy_cutoff_warning = 5.4 # Within 99.5% of observed values
energy_cutoff_bad = 20.0 # Only observed < 0.5% of the time.
#: urls to download PDB files
pdb_urls = ('https://files.rcsb.org/download/',)
#: Only load the first model, by default
pdb_first_model = True
The utils.settings
impact how general functions behave and how the data
are presented.
#: The default max width (in characters) of markdown tables (MDTable)
#: This is the value used when outputting tables outside of the terminal
default_max_width = 100
#: When writing files, overwrite them if they already exist.
overwrite_files = True
#: Save files fetched and cached files (get_or_fetch) to the local directory
save_fetched_files_locally = False
#: If files are not overwritten, the create new versions up to the following
#: number
max_file_versions = 99
The hydrogens.settings
impact how hydrogen atoms are added to a
molecule. These impact the --hydrogenate
option.
#: The default optimal length of standard bonds (in Angstroms) for biomolecules
bond_length = {'N-H': 1.023, # L. Yao, et al. JACS 130, 16518-20 (2008)
'C-H': 1.117, # M. Ottiger, et al. JACS 121, 4690-4695 (1999)
'C-C': 1.517, # M. Ottiger, et al. JACS 121, 4690-4695 (1999)
'N-H2': 1.01, # PK Sawinski, et al. Crys Growth & Design
# 13, 1730 (2013)
'O-H': 0.958, # MN Frey et al., JCP 59, 915-924 (1973).
'C-N': 1.488, # MN Frey et al., JCP 59, 915-924 (1973).
'C=O': 1.250,
'C-O': 1.413,
}
The hbonds.settings
impact how hydrogen bonds are detected. These impact
the hbonds
command and the --rama
option in the measure
command.
# Hydrogen Bond Definitions
# -------------------------
#: Element selector string for the hydrogen bond donor atom1. The OR
#: operator, '|', is supported.
#:
#: Hydrogen bond dipoles are defined as:
#:
#: donor2--donor1 .... acceptor1--acceptor2
donor1_elements = 'H|D'
#: Element selector string for the hydrogen bond donor atom2. The OR
#: operator, '|', is supported.
donor2_elements = 'N|15N|O'
#: Element selector string for the hydrogen bond acceptor atom1. The OR
#: operator, '|', is supported.
acceptor1_elements = 'O'
#: Element selector string for the hydrogen bond acceptor atom2. The OR
#: operator, '|', is supported.
acceptor2_elements = 'C|13C'
#: The cutoff distance ranges (in A) between atoms to be considered a hydrogen
#: bond.
#:
#: 'd1a1': The distance between the donor1 and acceptor1 atoms
hbond_distance_cutoff = {'d1a1': (1.5, 2.5),
}
#: The cutoff angle ranges (in degrees) between atoms to be considered a
#: hydrogen bond.
hbond_angle_cutoff = {'theta': (105., 180.),
'phi': (-180., 180.)
}
# Dihedral Angle Ranges
# ---------------------
# Phi torsion angle range (in degrees) for helices. (Generously allowed)
helix_phi = (-170., 0.)
# Phi torsion angle range (in degrees) for helices. (Generously allowed)
helix_psi = (-100., 55.)
# Phi torsion angle range (in degrees) for beta-sheet. (Generously allowed)
beta_phi = (-200., -25.)
# Psi torsion angle range (in degrees) for beta-sheet. (Generously allowed)
beta_psi = (45., 220.)
#: Phi torsion angle ranges (in degrees) for residue i+1 in turns
beta_turn_i1_phi = {'turnI': (-110., -10.),
'turnII': (-110., -10.),
'turnIp': (10., 110.),
'turnIIp': (10., 110.),
}
#: Psi torsion angle ranges (in degrees) for residue i+1 in turns
beta_turn_i1_psi = {'turnI': (-80., 20.),
'turnII': (70., 170.),
'turnIp': (-20., 80.),
'turnIIp': (-170., -70.)
}
#: Phi torsion angle ranges (in degrees) for residue i+2 in turns
beta_turn_i2_phi = {'turnI': (-140., -40.),
'turnII': (30., 140.),
'turnIp': (40., 140.),
'turnIIp': (-130., -30.)
}
#: Psi torsion angle ranges (in degrees) for residue i+2 in turns
beta_turn_i2_psi = {'turnI': (-50., 50.),
'turnII': (-50., 50.),
'turnIp': (-50., 50.),
'turnIIp': (-50., 50.)
}
# Classification names
# --------------------
#: Classification type name for backbone-backbone (bb-bb) amide hydrogen
#: bonds
type_bb_bb_amide = 'bb-bb amide'
#: Classification type name for backbone-sidechain (sc-bb) amide hydrogen
#: bonds
type_bb_sc_amide = 'bb-sc amide'
#: Classification type name for sidechain-backbone (sc-bb) amide hydrogen
#: bonds
type_sc_bb_amide = 'sc-bb amide'
#: Classification type name for sidechain-sidechain (sc-sc) amide hydrogen
#: bonds
type_sc_sc_amide = 'sc-sc amide'
#: Classification type name for backbone-backbone (bb-bb) aliphatic hydrogen
#: bonds
type_bb_bb_aliphatic = 'bb-bb aliph.'
#: Classification type name for backbone-sidechain (bb-sc) aliphatic hydrogen
#: bonds
type_bb_sc_aliphatic = 'bb-sc aliph.'
#: Classification type name for sidechain-backbone (sc-bb) aliphatic hydrogen
#: bonds
type_sc_bb_aliphatic = 'sc-bb aliph.'
#: Classification type name for backbone-backbone (sc-sc) aliphatic hydrogen
#: bonds
type_sc_sc_aliphatic = 'sc-sc aliph.'
#: Classification type name for backbone-backbone (bb-sc) hydroxyl hydrogen
#: bonds
type_bb_sc_hydroxyl = 'bb-sc hydroxyl'
#: Classification type name for sidechain-backbone (sc-bb) hydroxyl hydrogen
#: bonds
type_sc_bb_hydroxyl = 'sc-bb hydroxyl'
#: Classification type name for sidechain-sidechain (sc-sc) hydroxyl hydrogen
#: bonds
type_sc_sc_hydroxyl = 'sc-sc hydroxyl'
#: Major classification name for type I turns
major_beta_turnI = "type I turn"
#: Major classification name for type II turns
major_beta_turnII = "type II turn"
#: Major classification name for type I' turns
major_beta_turnIp = "type I' turn"
#: Major classification name for type II' turns
major_beta_turnIIp = "type II' turn"
#: Major classification name for sheets
major_beta = 'sheet'
#: Major classification name for anti-parallel beta-sheets
major_beta_anti = 'sheet, anti-parallel'
#: Major classification name for parallel beta-sheets
major_beta_par = 'sheet, parallel'
#: Major classification name for 310-helices
major_310 = '310-helix'
#: Major classification name for alpha-helices
major_alpha = 'alpha-helix'
#: Major classification name for pi-helices
major_pi = 'pi-helix'
#: Major classification name for isolated hydrogen bonds
major_isolated = 'isolated'
#: Minor classification name for the N-terminal residues
minor_N = 'N-term'
#: Minor classification name for the C-terminal residues of alpha-helices
minor_C = 'C-term'
#: Minor classification name for glycines
minor_gly = 'Gly'
# Assign Blocks
# -------------
#: Assign blocks of residues, including gaps
assign_blocks = True
#: Assign alpha-helix blocks
assign_blocks_alpha = True
#: Assign beta-strand blocks, including gaps
assign_blocks_beta = True
#: Assign 310-helix blocks, including gaps
assign_blocks_310 = True
#: assign_blocks: Overwrite classification assignments, if an assignment has
#: already been made
assign_blocks_overwrite = False
#: assign_blocks: Check the previous and subsequent residues in a contiguous
#: alpha-helix assignment
assign_blocks_alpha_extend_termini = False
#: assign_blocks: Label the 'minor' classification of the specified number of
# N- or C-terminal residues as 'N-term' or 'C-term'
assign_blocks_alpha_label_N_term = 1
assign_blocks_alpha_label_C_term = 1
#: assign_blocks: Only fill gaps in alpha-helices that are as large as the
#: following number
assign_blocks_alpha_gap_tolerance = 1
#: assign_blocks: Check the previous and subsequent residues in a contiguous
#: beta-sheet assignment
assign_blocks_beta_extend_termini = True
#: assign_blocks: Label the 'minor' classification of the specified number of
# N- or C-terminal residues as 'N-term' or 'C-term'
assign_blocks_beta_label_N_term = 1
assign_blocks_beta_label_C_term = 1
#: assign_blocks: Only fill gaps in beta-sheets that are as large as the
#: following number
assign_blocks_beta_gap_tolerance = 2
#: assign_blocks: Check the previous and subsequent residues in a contiguous
#: 310 assignment
assign_blocks_310_extend_termini = False
#: assign_blocks: Label the 'minor' classification of the specified number of
#: N- or C-terminal residues as 'N-term' or 'C-term'
assign_blocks_310_label_N_term = 0
assign_blocks_310_label_C_term = 0
#: assign_blocks: Only fill gaps in 310-helices that are as large as the
#: following number
assign_blocks_310_gap_tolerance = 3
# Tables
# ------
#: Render HBond tables with detailed information
hbond_table_detailed = False
#: Sort HBond tables by the hydrogen bond type
hbond_table_sort_type = False
#: Render the Rama table with detailed information, including minor assignments
rama_table_detailed = True
The pa.settings
impact how partial alignment (RDC and RACS) data are
fit.
#: The gyromagnetic ratios (in rad T^-1 s^-1) of common nuclei
gamma = {'H': 267.513E6,
'C': 67.262E6,
'N': -27.116E6}
#: Calculate dipolar couplings from bond lengths and gyromagnetic ratios. If
#: this is False, the values in the default_predicted_rdcs are used. However,
#: if a value is not specified in the default_predicted_rdcs, the value will
#: still be calculated from bond lengths.
calculate_from_bonds = False
#: The default dipolar couplings calculated.
#: The static dipolar coupling constants listed are for common bonds in
#: proteins. Values are calculated based on average calculated DCCs for 2MJB
#: and scaled to an HN DCC of -11472Hz. This is equal to the
#: dipolar reduced anisotropy.
#: These values are used if ``calculate_from_bonds`` is False.
default_predicted_rdcs = {'N-H': 10823., #11472., # 1.02 A
'NE1-HE1': 10823.,
'CA-HA': -22300.,
'C-N+1': 1115.,
'C-CA': -1880.,
'CA-CB': -1880.,
}
#: The default RACS tensor values of various nuclei in proteins.
#: order - the xx/yy/zz component order of the tensor.
#:
#: 1. The first component is colinear with the atom -- ref_atom1
#: vector
#:
#: 2. The second component is orthogonal to the
#: atom -- ref_atom1 -- ref_atom2 plane
#:
#: 3. The third component is orthogonal to the second two components.
#:
#: 4. Tensor rotations conducted with the Z-Y-X convention for the
#: alpha, beta and gamma angles, respectively.
#:
#: See the following reference for tensor conventions and values: Cornilescu
#: et al. JACS 2000, 122, 10143.
default_predicted_racs = {
# The Carbonyl CSA. This convention places the x-axis (s11) near the,
# C-N bond and the z-axis (s33) orthogonal to the O-C-N plane.
'C': {'delta': -86.53 * 1.03, # ppm (Reduced anisotropy)
'eta': 0.63,
'alpha': 40., # degrees
'beta': 0., # degrees
'gamma': 0., # degrees
'ref_atom1': 'N+1',
'ref_atom2': 'O',
'order': 'xzy',
},
# The Nitrogen CSA. This convention places the z-axis (s11) near the H-N
# bond, and the y-axis (s22) orthogonal to the H-N-CA plane.
'N': {'delta': 108.53 * 0.993, # ppm (Reduced anisotropy)
'eta': 0.16,
'alpha': 0., # degrees
'beta': -20., # degrees
'gamma': 0., # degrees
'ref_atom1': 'H',
'ref_atom2': 'CA',
'order': 'zyx',
},
# The amide H CSA. This convention places the z-axis (s33) near the H-N
# bond, and the x-axis (s11) orthogonal to the H-N-C plane.
'H': {'delta': -5.93, # ppm (Reduced anisotropy)
'eta': 1.00,
'alpha': 0., # degrees
'beta': 0., # degrees
'gamma': -7., # degrees
'ref_atom1': 'N',
'ref_atom2': 'C-1',
'order': 'zxy',
},
}
#: Default errors in absolute values
default_error = {'N-H': 0.2, # Hz
'CA-HA': 0.5, # Hz
'N-C': 0.5, # Hz
'CA-C': 0.5, # HZ
'NE-HE': 0.2, # Hz
'C-C': 0.5, # Hz (bond type)
'C-H': 1.0, # Hz (bond type)
'C': 1., # ppb
'N': 1., # ppb
'H': 5., # ppb
}
#: urls to download mr files
mr_urls = ('https://files.rcsb.org/download/',)
#: Xplor-NIH incorporates C-H methyl RDCs by projecting them on the associated
#: carbon-carbon bond. If the data uses this convention, then set this setting
#: to True. This convention, however, occludes the use of C-C RDCs, like the
#: CA-CB coupling of an ALA, and it is not set by default.
project_methyls = False
#: The order parameter to use for methyl groups
methyl_order_parameter = 1.0
#: Settings to enable individual fixers by default
enable_signfixer = True
enable_outlierfixer = False
enable_nhscalefixer = False
#: The alpha-critical values for the Grubbs test of outliers. These are used to
#: identify warning or bad data points in terms of their deviations with
#: respect to the best-fit SVD data.
alpha_warning = 0.05
alpha_bad = 0.01
The following options only impact the creation of mollib datasets through
the build_data
setup command.
#: The number of bins to use (along each dimension) in creating the
#: Ramachandran histogram
ramachandran_histogram_bins = 72
#: The number of bins to use (along each dimension) in creating the
#: hydrogen bond histogram
hbond_histogram_bins = 8