Skip to main content
NIHPA Author Manuscripts logoLink to NIHPA Author Manuscripts
. Author manuscript; available in PMC: 2020 Aug 10.
Published in final edited form as: Methods Enzymol. 2018 Sep 11;614:321–362. doi: 10.1016/bs.mie.2018.07.005

CS-ROSETTA

Santrupti Nerli *,†, Nikolaos G Sgourakis *,1
PMCID: PMC7416455  NIHMSID: NIHMS1615128  PMID: 30611429

Abstract

Chemical Shift-Rosetta (CS-Rosetta) is an automated method that employs NMR chemical shifts to model protein structures de novo. In this chapter, we introduce the terminology and central concepts of CS-Rosetta. We describe the architecture and functionality of automatic NOESY assignment (AutoNOE) and structure determination protocols (Abrelax and RASREC) within the CS-Rosetta framework. We further demonstrate how CS-Rosetta can discriminate near-native structures against a large conformational search space using restraints obtained from NMR data, and/or sequence and structure homology. We highlight how CS-Rosetta can be combined with alternative automated approaches to (i) model oligomeric systems and (ii) create NMR-based structure determination pipeline. To show its practical applicability, we emphasize on the computational requirements and performance of CS-Rosetta for protein targets of varying molecular weight and complexity. Finally, we discuss the current Python interface, which enables easy execution of protocols for rapid and accurate high-resolution structure determination.

1. INTRODUCTION

Determination of high-resolution protein structures from amino acid sequence alone remains as one of the most challenging problems in computational biology (Bender et al., 2016). This is attributed to the time and computational power required for exploration of large and continuous 3D conformational search space. Toward addressing this bottleneck, software suites such as Rosetta (Leaver-Fay et al., 2011) employ efficient heuristic algorithms alongside physically realistic energy functions to minimize the search space. While these energy functions are sufficient to drive the structure calculations toward a native fold for proteins of smaller size (≥15kDa), restraints provided by experimental data are required for modeling larger and more complex molecules. A method that stems from this idea is Chemical Shift-Rosetta (or CS-Rosetta) (Shen et al., 2008). CS-Rosetta employs NMR (nuclear magnetic resonance) chemical shifts, which are highly informative probes that report on secondary and tertiary structures, and dynamics of proteins (Berjanskii & Wishart, 2017), to aid the search for near-native structures. Alongside chemical shifts, CS-Rosetta makes use of structural restraints derived from alternative NMR experiments and/or evolutionarily related proteins to model challenging targets with high accuracy.

CS-Rosetta contains two algorithms, Abrelax (ab initio relax) (Shen et al., 2008) and RASREC (resolution-adapted structural recombination) (Lange & Baker, 2012), that each utilize torsion angle, and short- and long-range distance restraints derived from NMR chemical shifts, residual dipolar couplings (RDCs) (Raman et al., 2012) and nuclear Overhauser enhancements (NOEs) to model protein structures up to 40kDa (Lange et al., 2012). Compared to Abrelax, RASREC makes use of additional optimization strategies together with the support for advanced parallelization scheme toward efficient and accurate modeling of larger protein structures. CS-Rosetta also enables rapid and automated assignment of NOESY data through the AutoNOE (Automatic NOESY assignment) (Lange, 2014) module. A brief overview of CS-Rosetta has been previously described (see Guerry & Herrmann, 2011; Nerli, McShan, & Sgourakis, 2018). Here, we provide a detailed description of the algorithms and architecture on the current implementation of CS-Rosetta. Throughout the text, the typewriter font is used to represent keywords, which denote external method parameters, software executables, C++ programming language classes, and function names within CS-Rosetta.

2. TERMINOLOGIES

In this section, we highlight the terminologies and concepts that are fundamental to the Rosetta framework with a focus on CS-Rosetta. Whereas the Rosetta suite supports a wide range of biomolecular systems, the methodology, algorithms, and energy functions of CS-Rosetta are currently only applicable to proteins.

2.1. Energy

The main driving force of Rosetta is its energy function (Alford et al., 2017; Leaver-Fay et al., 2013, 2011; O’Meara et al., 2015). The energy function quantifies the static conformational state of a protein, which can be utilized to distinguish native-like structures from alternative folded and unfolded proteins (Alford et al., 2017). This function is a linear combination of terms that capture physically realistic structural features. Specifically, these terms describe a set of potentials that report on inter/intramolecular interactions, solvation, hydrogen bonding, electrostatics, side chain rotamer orientation, and dihedral preferences. During the structure modeling process, Rosetta can modify the contribution of each energy term using predefined (score3. wts, talaris2013.wts, ref2015.wts, and others) or customizable weights. This procedure may help steer the calculations toward a global minimum in the energy landscape for proteins of interest. We use the terms, energy function, energy, score, and score function synonymously in this chapter.

2.2. Pose

In Rosetta, a biomolecular system is represented using a C++ container class known as a Pose (Leaver-Fay et al., 2011). Pose holds information on the chemical composition (protein amino acid sequence), degrees of freedom (variable factors of a conformation), kinematics, and energy of the molecular system. For protocols such as ab initio (where structures are modeled solely from amino acid sequence information) (Bradley, Misura, & Baker, 2005), degrees of freedom of a Pose can be derived from an extended polypeptide chain. In alternative protocols, degrees of freedom are derived from a reference structure input manually by the user. Moves (see Section 2.5) are applied to a Pose during the process of sampling diverse conformations while searching for the native (or global optimum with respect to the score function). If the conformation of a Pose is modified using any mover, then its score function is updated accordingly.

2.3. Fold Tree

Each amino acid within a protein chain in Rosetta is characterized by two degrees of freedom known as internal coordinates (given by the torsion angles, φ and ψ) (Bradley & Baker, 2006; Leaver-Fay et al., 2011).

A small perturbation in the local conformation of a protein chain, induced by a mover (see Section 2.5), leads to the propagation of changes globally, called the lever arm effect. To eliminate this effect, a protein chain is denoted as a directed, acyclic graph called the fold tree, which is attached to the Pose. In a fold tree, the nodes indicate amino acids of a protein and the edges represent peptide bonds, which imply that any residue i is connected to its neighbors i − 1 and i + 1 by edges. Alongside peptide bonds, through-space bonds (or long-range connections) can be added as edges in this tree without the violation of acyclicity property of the graph. To preserve this property, an insignificant peptide edge is deleted, and this introduction of gap in the fold tree is called a chain-break or a jump. These edges govern the propagation of conformational changes during a move. The fold tree with discontinuous peptide edges is referred to as broken-chain fold tree.

2.4. Centroid and Full-Atom Representation

Protocols that require extensive sampling such as ab initio (Bradley et al., 2005) switch to coarse-grained representation, where each residue in a protein chain contains five backbone atoms (N, H, Cα, C, O) and one side chain centroid atom (CEN) characterized by its amino acid type. This simplified representation is also referred to as low-resolution mode. The use of centroid mode during early stages of structure determination boosts the performance of sampling methods by reducing the degrees of freedom introduced through side chain dihedral angles (Shen et al., 2008).

On the other hand, a full-atom representation (also referred to as high-resolution mode) includes backbone atoms in addition to all side chain atoms. The full-atom representation mode is typically used during the refinement stages of structure determination protocols. In this chapter, we interchangeably use terms for low-resolution with centroid and high-resolution with full-atom.

2.5. Mover

A mover is an entity that can modify or analyze any given Pose (Leaver-Fay et al., 2011). CS-Rosetta’s structure modeling protocols are built using several movers, which are referenced throughout this manuscript.

2.6. Topology Broker

Topology broker is a framework that enables construction of complicated simulation systems (Bender et al., 2016; Porter, Weitzner, & Lange, 2015).

Broker guides the resampling protocols used for structure determination by providing them information about (i) movers to apply, (ii) chain-breaks to add, (iii) representation modes to switch to, and (iv) construction of refined fold tree. Any knowledge about the protein target including structural restraints (from NMR data or any other source) or rigid regions in homologous structures from databases such as PDB (or protein data bank) (Berman et al., 2000) is retained by the broker in the form of claimers. Specifically, claimers define the accepted and unaccepted degrees of freedom for a given Pose. For instance, if rigid regions are defined for a Pose, then the broker will not accept any changes in those regions. Therefore, broker allows rapid protocol development, since the methods do not have to keep track of constraints that must to be satisfied by the system explicitly when perturbing the conformation.

3. PRELIMINARY REQUIREMENTS

CS-Rosetta makes use of Rosetta’s basic de novo structure prediction algorithm termed fragment assembly (Simons, Kooperberg, Huang, & Baker, 1997). In a general fragment assembly approach, a set of small structural segments are selected from a library constructed using high-resolution X-ray structures and inserted into the protein backbone being modeled. Therefore, fragments of high quality are essential to obtain accurate structures (Nerli et al., 2018). In CS-Rosetta, NMR chemical shifts are used in the fragment selection process, allowing for higher accuracy in sampling near-native segments (Nerli et al., 2018). To select such fragments, Robetta server (Kim, Chivian, & Baker, 2004) or CS-Rosetta’s fragment picker (Gront, Kulp, Vernon, Strauss, & Baker, 2011) (see Section 9) can be used. Before using CS-Rosetta’s fragment picker, the following steps must be carried out.

3.1. Determination of Structurally Rigid Regions

Due to the observation that chemical shifts capture local structural features (Mielke & Krishnan, 2009), they are used to define rigid and well-conformed regions (typically composed of secondary structural elements such as α-helices and β-sheets) that aid the fragment selection process (Shen et al., 2008). In contrast, disordered or flexible regions of a protein (for example, at the N- and C-termini) exhibit higher levels of structural diversity and therefore decrease the efficiency of sampling protocols. To overcome this bottleneck, CS-Rosetta makes use of TALOS-N (torsion angle likelihood obtained from shift and sequence similarity) (Shen & Bax, 2013), which takes as input the amino acid sequence and NMR chemical shifts to characterize the regions of rigidity and flexibility using random coil index (RCI). Using the predicted RCI values, the protein sequence is trimmed along the termini to eliminate any flexible end regions.

3.2. Fragment Picking

CS-Rosetta uses a fragment picker module built within Rosetta to construct high-quality sequence-specific fragment library using chemical shifts and a protein structure database called “vall” (shipped with both Rosetta software suite and CS-Rosetta toolbox) (Gront et al., 2011). The vall database consists of multiple sets (referred as chunks) of protein chains from X-ray structures without any chain-breaks. Each chunk is split into sets of fragments of required size with overlapping amino acid sequences in a “sliding window” fashion to cover the entire protein chain. The selection of polypeptide segments of the target protein from vall into the fragment library is governed heavily by the secondary structural elements predicted using TALOS-N (Shen & Bax, 2013). The plausible candidate fragments selected from vall are scored based on target sequence profile, chemical shift compatibility, secondary structure similarity, the presence of residues in the allowed regions of Ramachandran map, and RMSD of φ and ψ dihedral angles. In addition, the fragment picker allows flexibility to choose structures from which the segments are derived. For instance, homologous structures can be excluded during fragment library construction, which is typically desired while running benchmark calculations for method development. For structure calculation using CS-Rosetta, 200 fragments of 3 and 9 amino acids in length are picked for each residue position in the target sequence. The sampled fragments in these libraries define the degrees of freedom (or backbone torsion angles) a polypeptide chain can adopt during the structure calculation process. Rosetta applies these degrees of freedom to a target chain being modeled using the fragment insertion mover. The larger fragments (nine AA) are used during early exploration phases of structure calculation, whereas small fragments (three AA) are utilized predominantly in the later refinement stages (see Section 4).

4. METHODS

In this section, we describe Abrelax, RASREC, and AutoNOE methods. In addition, we present a list of files used by each method that contain all the required parameters, which can be tuned, whereas a detailed description of the parameters themselves is available at the CS-Rosetta website (see Section 9).

4.1. Abrelax

Ab initio relax (or Abrelax) in CS-Rosetta is a standard protocol that uses as input the amino acid sequence and NMR chemical-shift-guided segments and assembles them using a fragment sampler to model near-native protein structures (Fig. 1, violet) (Shen et al., 2008). This protocol is invoked through a mover called the “AbrelaxMover,” which consists of an initialization step and an apply step. The initialization step creates instances of protocols used for idealization, fragment sampling, loop closure, and structure refinement. The apply step is utilized to invoke each of the protocols using the instances created during the initialization step. The AbrelaxMover is initiated via BrokerMain, a file that contains the main function used to start the protocol.

Fig. 1.

Fig. 1

Overview of CS-Rosetta. BrokerMain marks the start of any CS-Rosetta protocol. Abrelax is triggered from the AbrelaxMover via BrokerMain and contains two representative steps, (i) a setup step that is used to initialize topology broker, fragment sampler, and loop closure protocols, and (ii) an apply step, which calls the ab initio fragment sampler (violet) to obtain low-resolution models that undergo loop closure and high-resolution structure refinement using relax. A fragment sampler (and assembly) runs through four stages (violet): (i) stage I: large fragment insertion moves are performed and any steric clashes are prevented using score weights provided by score0, (iii) stage II: fragment insertion moves are combined with score weights (score1) to account for residue-pair interactions, (iii) stage III: fragment insertion moves are carried out to promote local (stage IIIa) and nonlocal (stage IIIb) β-strand pairings with the help of weights defined in score2 and score5, and (iv) stage IV: small fragment insertion moves are performed primarily to close loops. In addition, score weight for radius of gyration is increased (in score3). RASREC is an iterative method that performs structure calculation across six resampling stages (tan). In stage I, β-strand pairs are exhaustively enumerated. During stage II, β-strand pairs are enumerated again and β-topologies are resampled. Stage III is used to carry out only β-topology resampling. During stage IV, folds are intensified (also known as protofold resampling) and fragments are resampled from low-resolution models. Loops are closed and the resulting structures are converted from centroid to full atom in stage V. In the last stage (stage VI), the final structural models are refined in the Rosetta force field. Archive in Rosetta is used for the purpose of communication between parallelizable unit (MPI-based job distributor) and RASREC algorithm. Based on the status of the job distributor, archive can read decoys, setup batches of runs or check if the calculation is complete. AutoNOE iteratively assigns NOEs and performs structure calculation using RASREC (green). It interacts with RASREC across all the stages of resampling. AutoNOE updates NOE assignment parameters at three distinct phases (green, right). Phase I is designed to be more permissive meaning; more ambiguous NOE restraints are assigned, and no restraints are eliminated. Phase II is less permissive, where unambiguous NOE restraints are favored and elimination of violated restraints is allowed in the highly converged regions. Phase III is the most rigid, where unambiguous NOE restraints are generated and violated restraints are eliminated. The assigned NOE list generated at the start of each resampling phase is filtered by eliminating all the diagonal cross-peaks. The NOEs are further scored and refined using chemical shift compatibility, covalent compliance, agreement with decoys (obtained from RASREC), symmetric assignments, and network anchoring. The intensities of cross-peaks of assigned NOEs are calibrated to obtain upper distance bounds for restraints followed by the removal of spurious peaks.

Fragment sampling is carried out in the low-resolution mode in four distinct stages (I, II, IIIa, IIIb, and IV) (Fig. 1, violet). During each stage, fragment insertion moves are performed on the Pose. This process involves selecting a candidate segment from the fragment library at a given position and adjusting the torsion angles of the target protein chain to match the angles from the segment. The resulting Pose is evaluated using stage-specific score terms and weights (Fig. 1). The low-scoring candidates at each stage are retained for further sampling. During stage I, 2000 fragment insertion moves with segments of AA length 9 are performed using Monte Carlo method with a score term to penalize any steric clashes introduced during the moves. In stage II, the same number of moves are performed with score terms, including the hydrophobic core, pairwise intramolecular interactions, and secondary structure packing to capture the communication between residue-pairs. In stage III, 10 iterations of 2000 fragment insertions are used to promote sampling of both local (IIIa) and nonlocal (IIlb) β-strand pairings with the help of bias used for scoring. In the last stage of this protocol, 4000 cycles of small fragment insertion moves are carried out, and the resulting models are scored using terms contributed heavily by radius of gyration to form closely packed structures. These low-resolution structures further undergo postfragment sampling stages that include (i) loop closure, (ii) conversion to full-atom representation, (iii) energy refinement using relax (full-atom refinement of structures in the Rosetta force field) (Tyka et al., 2011). For the assessment of the resulting high-resolution models, experimental chemical shifts are compared with predicted chemical shifts from the models using SPARTA (shifts predicted from analogy in residue type and torsion angle) (Shen & Bax, 2007). The deviation between two chemical shifts is used to adjust the energy function (Shen et al., 2008).

The Abrelax protocol provides tuning parameters to increment the iteration cycles, modify the weights of score terms that are applied during each stage, and skip any phase if deemed necessary. Setting up structure calculations using Abrelax is made easy with the help of automated setup scripts (see Section 9). These scripts are used to initialize method parameters to standard values (based on a set of benchmark calculations carried out previously; Raman et al., 2012; Shen et al., 2008). These parameters are defined in files known as flag files. Here, we provide a brief description of flag files used during Abrelax calculations.

flags_abrelax typically consists of (i) option to include Hα atoms during centroid mode (-chemical ::patch_selectors CENTROID_HA). This option is incorporated if input NOE or RDC restraints contain Hα atoms, (ii) path to the topology broker setup file (-broker::setup), (iii) path to chemical shift file for the purpose of evaluating output structures (-evaluation:: chemical_shifts) if specified by the user, and (iv) a parameter to describe the number of structures to generate (-out::nstruct).

flags_denovo is used to define (i) weight correction terms for scores contributed by radius of gyration, and residues present in α-helices and loops, (ii) loop closure options such as -overwrite_filter_scorefxn to force specified weights rather than predefined weights that are applied to filter models when closing loops, (iii) fold tree chain-break options (for example, -jumps::ramp_chainbreaks, which is used to tune the bias applied to chain-break energy terms across multiple stages of simulation), (iv) logging information in the event of errors, and (v) fully qualified paths to input fragment and amino acid sequence files.

flags_nmr_patches file includes information about patch files, which describe weights for specific energy terms to be used during different stages of ab initio (-abinitio::stageXX_patch, where XX represents stages of the Abrelax protocol), full-atom relax (-score::patch), and loop closure (for instance, -patch_filter_scorefxn used to filter models when closing loops).

nmr_relax_patch defines atom_pair_constrai nt and rdc weight terms used to bias restraint-based scores (see Section 6) provided typically by NOE and RDC measurements that are applied during structure modeling and refinement.

nmr_patch is similar to and contains same set of parameters as the nmr_relax_patch file. The primary difference is that they are applied during different stages of structure calculation. For ab initio stages and loop closure, nmr_patch is used. For full-atom relax, nmr_relax_patch is used. Their usage can be found within flags_nmr_patches.

setup_init.tpb is a topology broker file, which contains definition of claimers, such as ConstraintClaimer, that is applied to the Pose during centroid and full-atom stages. The ConstraintClaimer defines degrees of freedom through structural restraints. The claimer definitions specify fully qualified paths to the constraint files and weights that are applied during scoring.

After setting up the protocol for Abrelax calculations, a directory consisting of input, run, and test folders is created. The input folder contains chemical shift, constraint, and topology broker files. The test and run folders carry all the flag files (listed in flag_list.txt) that will be used during calculation. While the test folder is similar to the run folder, it is used mainly to check if the calculations proceed without any interruption or errors. Abrelax can be run using the executable, minirosetta.mpi. <ext> (where <ext> is platform and compiler dependent) in parallel on a multiprocessor system using the MPI (message passing interface) framework. Here, each CPU performs independent exploration and refinement steps. The MPI framework (i) enables seamless communication between processors independent of platforms used, (ii) manages real-time distribution of workload across computer clusters, and (iii) ensures safe resource management. During the execution of the protocol, calculated structural models are appended to “decoys.out,” a compact representation used to optimize storage space and is also referred to as silent file in Rosetta. As the protocol progresses, it writes information messages, warnings, and errors in log files, which can be used to troubleshoot in the event of failure or premature termination.

4.2. RASREC

RASREC is an iterative Abrelax protocol, which exploits the features of intermediate structures to build self-consistent core of a protein that resembles the native fold (Lange & Baker, 2012). To accomplish this task, RASREC employs several optimization strategies and embeds them into distinct phases consisting of exploration, feature reuse (or resampling), and structure refinement (Blum, Jordan, & Baker, 2010; Bradley & Baker, 2006; Brunette & Brock, 2005, 2008; Qian et al., 2007). A subset of the optimization strategies is dedicated toward sampling nonlocal β-sheets due to the complexity involved in modeling them (Bradley & Baker, 2006).

RASREC is invoked through the Archive framework (see Section 5) via BrokerMain and runs across six stages (Fig. 1, tan). During early stages of the protocol, secondary structures are used to determine β-strand pairings, which allow sampling of diverse β-sheet topologies (Bradley & Baker, 2006). The strand pairings are represented using a fold tree, where the pair edges are added into the tree through fragment insertion moves. For this purpose, segments of β-strands are obtained from a database of β-sheets from high-resolution X-ray structures. Later, the fragments (both β-strand fragments and those from sequence-specific fragment library) are assembled using the four stages of ab initio. The low-scoring models are recycled to produce new libraries of structural fragments for use in the subsequent stages of assembly (Blum et al., 2010). The folds of the low-resolution models in the later stages are guided by the trajectories of successful candidates from early stages (Brunette & Brock, 2005). Following these steps, loops are closed in the low-resolution models, which are converted to full-atom representation mode and refined in the Rosetta force field to produce physically realistic structures.

RASREC is a highly parallelized protocol that makes use of the MPI framework. Specifically, it utilizes a workload manager to distribute batches of structure calculation jobs across computer clusters during multiple stages of resampling and refinement. The resampling stages are divided into four centroid (I–IV) and two full-atom (V and VI) modes (Fig. 1, tan). In the first two stages, secondary structural elements obtained from NMR chemical shift-guided fragments of length three (see Section 3) are used to enumerate all possible β-strand pairings. All the consecutive residues assumed to form β-sheets referred to as β-residues are considered in pairs to account for all possible peptide plane orientations and pleating. The use of nonlocal β-residues in these stages introduces chain-breaks in the fold tree (Bradley & Baker, 2006), which allows sampling of diverse and nonlocal β-sheet topologies. From these stages, a set of batches and two centroid pool directories are created. Each batch directory consists of intermediate structural models computed using ab initio (stages I–IV) together with enumerated strand-strand pairing data and custom parameter flag files used for calculation. The stage-specific centroid pool directories contain low-scoring decoys from respective phases and a STATUS file presenting structure acceptance history into the pool. Stages II and III resample β-topologies from a set of decoys found in the centroid pool of previous stages. The β-strand pairings are scored using features such as contact order (residue-residue interactions that are close in space), sequence separation (between residues located within strands), and frequency of occurrence of the strand pairs in decoys. Recurring β-strand pairings with high contact order are favored. The score contributions of selected strand pairs are summed to give the total score for the β-topology. In stage IV, the protein fold is guided by a restricted conformational search. Specifically, the annealing trajectories of successful candidates are used to restart the structure calculation from stage II (Brunette & Brock, 2005). Besides sampling complex nonlocal β-folds, other structural features are resampled during stages III to VI from the segments of low-resolution conformations (from early stages) determined using fragment assembly. The centroid pool directories (from stages III and IV) are populated with structural models for the later stages. In stages V and VI, incomplete low-resolution models from previous stages (due to the use of broken-chain fold tree to sample nonlocal β-strands) are closed. The chain-break (or loop) closure is carried out using two strategies, (i) idealization and (ii) loop rebuilding.

Loop closure by idealization attempts to bridge the broken chain by selecting physically realistic values of bond lengths and angles for each atom pair in that region. However, the introduction of such values may result in radical changes in the fold tree. To avoid these changes, high weight restraints are added to govern the lever arm effects and to ensure that the perturbations are < 0.1 Å. Nonetheless, it is not always guaranteed that this procedure will not disturb the identified fold, in which case RASREC opts for a second strategy to close loops. This strategy involves rebuilding the residues of the loop by performing fragment assembly followed by loop closure using cyclic coordinate descent (CCD) (Canutescu & Dunbrack, 2003; Wang, Bradley, & Baker, 2007). The score terms applied in the course of this stage rely on the number of residues to be rebuilt. Whereas chain-break energy terms are used while building smaller subunits (< 10 residues), additional terms contributed by residue-pair interaction are applied for larger loops.

The RASREC method setup is similar to that of the Abrelax protocol, where a directory consisting of flag files is created. In addition to the parameters used by Abrelax, RASREC makes use of flag files listed later.

flags_iterative is used to define control flags that are applied during different stages of resampling. For instance, -iterative:fullatom enables the method to run the full-atom structure modeling and refinement stages (V, VI), -iterative:accept_ratio describes the cutoff value to be used for switching to next stage. Here, if the number of structures chosen as plausible candidates falls below the cutoff, then the stage is assumed to be complete.

super_quick_relax_patch.txt is similar to nmr_patch or nmr_relax_patch files that contain weight definitions for scoring restraints derived typically from NOE or RDC measurements. The primary use of this file is to provide constraint score weights for quick side chain repacking within individual batch files.

flags_fullatom defines the parameters that can be used during the process of (i) closing loops such as -loops:idealize_before_loop_close (idealizes the structure before attempting to close loops) and (ii) structure refinement using relax.

flags_cs_rescore contains path to chemical shift file used for model evaluation together with weights for chemical shift score term applied during both centroid and full-atom modes. Bias terms (such as -iterative:centroid_before_quickrelax_weight and -iterative:fullatom_after_ quickrelax_weight) are also included for the purpose of filtering models before adding them to the structure pool for subsequent stages.

nmr_pool_patch has weight terms applied to restraint-based scores and chain-breaks. These scores are used to filter models before adding them into the structure pool.

flags_rasrec is the flag file used in RASREC instead offlags_abrelax (used by Abrelax). This file includes reference to flags_cs_rescore and topology broker (setup_init.tpb) files.

Unlike Abrelax, RASREC creates a set of target-dependent batch directories alongside stage-specific directories at the end of each of the six phases. The structures from the centroid pool stages are added into centroid_ pool_stageXX directories, where XX = {1, 2, 3, 4}. Similarly, the full-atom decoys from stages V and VI are added to fullatom_pool_stageYY directories, where YY = {7,8} (even though they are stages V and VI, they are called 7 and 8). The final structural models are available in the form of a silent file (decoys.out) in fullatom_pool folder within the run directory.

To highlight the difference between Abrelax and RASREC, we calculated the structure of 20kDa Northeast Structural Genomics (NESG) consortium target, SgR145 (Wunderlich et al., 2004). Both the structure calculations were setup using NMR chemical shift-guided fragments and previously measured NOE restraints (Lange et al., 2012) (BMRB ID 16806). We sampled a total of 1000 structures using Abrelax, whereas RASREC runs produced nine batches consisting of 100 decoys each before convergence. We found that the lowest energy models generated using Abrelax and RASREC exhibit Cα RMSDs of 2.4 and 1.6 Å from the native structure (PDB ID 2N47; Tang et al., 2015), respectively (Fig. 2). Moreover, the accuracy of side chain dihedral placement (χ1) of buried residues calculated using 10 Å2 solvent accessible surface area cutoff with respect to the reference (PDB ID 2N47) is approximately 65% and 69% in the lowest energy Abrelax and RASREC models, respectively (Fig. 2A and B). The convergence of 10 lowest energy structures generated using RASREC is much higher than the Abrelax models (Abrelax: 43% and RASREC: 76%) (Fig. 2C). Most importantly, the structures sampled using RASREC are far superior compared to Abrelax models as indicated by the energy funnel, suggesting that the optimization strategies implemented in RASREC exhibit great promise in finding near-native structures rapidly (Fig. 2D).

Fig. 2.

Fig. 2

Comparison of structural models generated by Abrelax and RASREC. Structures of 182 AA NESG protein target, SgR145, computed using Abrelax and RASREC methods. Lowest energy model of SgR145 determined using (A) Abrelax (gray, left) and (B) RASREC (green, left), superimposed with a reference structure (blue, PDB ID 2N47). Side chain placements of the buried residues in the lowest energy model are shown on the right. (C) Convergence of 10 lowest energy structures computed using Abrelax and RASREC for residues in structurally rigid regions (43% and 76%, respectively). (D) Plot showing Rosetta energy computed using ref2015.wts (Alford et al., 2017) (in kcal/mol) and RMSD to native (PDB ID 2N47) (in Å) of the structures generated over different stages of Abrelax (gray) and RASREC (green) protocols. Structures of SgR145 were computed from fragments derived using previously measured chemical shifts and NOE restraints (Lange et al., 2012) (BMRB ID 16806). Buried residues were selected using 10 Å2 solvent accessibility surface area in the native (PDB ID 2N47). Structurally rigid regions were identified as regions consisting of α-helices and β-sheets.

4.3. AutoNOE

Alongside de novo structure prediction, CS-Rosetta offers an algorithm, AutoNOE, for automated assignment of 2D, 3D, or 4D NOESY cross-peaks (Lange, 2014). The NOESY cross-peaks result from coupling of two proton nuclei with different chemical shift values during magnetization transfer (Keeler, 2010). The process of labeling these cross-peaks in the NOESY spectra is known as NOE assignment. Whereas information about atom labels can be obtained from a known structure or an assigned resonance list, AutoNOE makes use of assigned chemical shift list to carry out the NOE assignment task. These assigned NOESY cross-peaks give rise to interproton distance restraints that are employed by structure determination methods to guide the conformational search. In CS-Rosetta, the NOE assignment (or NOESY) module is inspired largely by alternative automated tools for NOE assignment including ARIA (Linge, Habeck, Reiping, & Nilges, 2003; Nilges, 1993, 1997), AutoStruct (Huang et al., 2003), and CANDID (Herrmann, Güntert, & Wüthrich, 2002). AutoNOE takes as input the assigned NMR resonances together with unassigned NOESY cross-peak lists and generates a set of NOESY assignments from which it derives NOE distance restraints for structure calculation within RASREC.

The objective of the NOESY module is to assign proton atom labels from the input chemical shift list to the NOE cross-peaks such that the values of frequencies in both these lists match within the user specified tolerance levels (Fig. 1, green). To achieve this, the method starts by mapping input chemical shift frequencies to the unassigned NOESY cross-peaks. The initial mapping results in a set of ambiguously assigned NOEs due to potential overlap in the spectra (Nilges, 1993, 1997). These ambiguous NOEs are filtered based on a series of criteria. At first, the diagonal peaks (these are the peaks, which have same frequency for the proton and carbon dimensions) are eliminated. Second, a set of scores are computed to determine the confidence in the assignments. Third, NOE cross-peak assignments are filtered using the thresholds determined based on the confidence scores. Finally, NOE cross-peak intensities are calibrated to generate distance restraints.

4.3.1. NOE Assignment Confidence Scores

For any NOE assignment, a set of descriptors are scored. These scores strengthen the confidence in the atom label that AutoNOE assigns to a cross-peak (Fig. 1, green). A list of all the scores computed toward maximizing the confidence of an NOE assignment includes the following.

  1. Chemical shift score reports on the deviation between chemical shifts of dimensions in the NOESY cross-peak list with chemical shifts of atoms from the input list.

  2. Covalent compliance score favors intraresidue and interresidue proton pairs that are within 5 Å from one another. This occurs when structures are available during sampling stages.

  3. Decoy compatibility checks the compatibility of assigned NOEs and decoys generated during the intermediate stages of RASREC calculations using assigned NOEs. To perform such a validation, distances of assigned proton pairs are computed and further normalized using the cumulative distance of ambiguous assignments of the same cross-peak.

  4. Symmetry score exploits the symmetry information of the NOE cross-peaks to determine whether they are reciprocated. In particular, each coupling gives rise to two cross-peaks that exhibit symmetry across the diagonal in the spectrum, and this information is utilized to increase the confidence of assigned NOEs.

  5. Network anchoring helps AutoNOE in reducing the number of assignment possibilities, which can arise when the peaks overlap (Herrmann et al., 2002). In order to accomplish this, assigned NOEs are weighed based on their participation in any network. A network of NOEs is found by looking for alternative residue k through which any two residues i and j are connected in space.

  6. Volume contribution score of a cross-peak assignment is given by the combined contributions of other scores such as chemical shift, decoy compatibility, and either of symmetry, covalent compliance, weight of input structures, or network anchor scores. There is a cyclic dependency between volume contribution and other score terms due to which these terms are refined iteratively.

4.3.2. Formation of Distance Restraints

The labeled NOESY cross-peaks are used to create distance restraints that are employed by RASREC during structure determination. The restraints are scored with a flat bottom potential, meaning that, the distance between two protons is bounded and structures violating it are treated with a quadratic penalty term, which is added to the score function. The lower bound for a restraint is typically 1.5 Å (approximate van der Waals contact distance) (Lange, 2014). An upper bound on the distance for a cross-peak that has at least one assignment with volume contribution greater than the given threshold is derived using distance between protons and the deviation of the volume contribution from the cutoff.

Calibration of peak intensities:

To generate upper distance bounds from the cross-peaks, their intensities are calibrated iteratively. For the purpose of calibration, protons are classified into backbone (Hα and HN), β (Hβ), methyl, and side chain groups, where each group has a different constant associated with it. These constants are derived based on the availability of intermediate decoys. If the decoys are unavailable, then the constants are calculated with a fixed upper distance bound of 3.8 Å. Whereas, if the decoys are available, then the calibration constants are tuned using 10% of the upper distance bounds violated in the structures by a given cutoff (Herrmann et al., 2002; Lange, 2014).

Elimination of spurious peaks:

Even in the presence of all the filters, there are cross-peaks that are unfit to produce structural restraints. Such cross-peaks are eliminated from further consideration. The criteria for elimination include (i) volume contribution (if assignments consistently have lower volume contribution score than expected), (ii) network anchor score (if the network anchor score is low) (Herrmann et al., 2002), and (iii) distance restraint violation (if many modeled structures violate the generated distance restraints).

The AutoNOE protocol parameters can be customized and are available in the form of flag files similar to the ones used in Abrelax and RASREC. Together with the flags used in RASREC, AutoNOE has a set of new parameters available in the following files.

noe_super_quick_relax.txt is a patch file that consists of weight term applied during side chain repacking.

flags_autoNOE is a method specific flag file similar to flags_rasrec or flags_abrelax. It consists of fully qualified paths to unassigned peak, chemical shift, and flags_cs_rescore files.

flags_phaseII and flags_phaseIII define the network anchor score cutoff parameters, which are applied to eliminate spurious cross-peaks. In addition, they define number of cycles (or iterations) to be used to assign NOEs (this value is typically set to 7, which is based on the number of cycles used in CANDID; Herrmann et al., 2002), and upper bound for the distance restraint, which is used for assignments that result in unreasonably high values during calibration.

flags_noe_assign includes parameters (i) to indicate that the centroid mode structures must include Hα atom (this flag is useful when assigning NOEs that contain Hα atoms, since they contribute significant number of restraints during structure calculation), (ii) that specify paths to noe_super_ quick_relax.txt, which is used to repack side chains, (iii) to bias calibration of peak intensities, and (iv) to weigh distance restraints generated by AutoNOE.

flags_initnoe_filter can be used to specify parameter to skip network analysis via -noesy:no_network option. Currently, this option is turned off.

AutoNOE calculations can be set up with multiple score weights for distance restraints generated using the NOESY module. A typical setup creates cst_XX directories, where XX = {5, 10, 25, 50} (these are the default weights chosen based on the benchmark calculations, but any custom weights can be used; Lange, 2014; Zhang, Porter, Tripsianes, & Lange, 2014). Each cst_XX directory contains input, test, and run folders. At the start of AutoNOE calculations, an initial assignment step must be carried out by executing initialize_assignments_phaseI.sh available within the run directory. This initialization step generates a set of ambiguously assigned NOE restraints that will be used in the early stage of structure calculation runs in RASREC. AutoNOE interacts with RASREC during all the resampling stages (I–VI) and repeats stages III and IV (therefore, there are a total of eight stages). At the end of each resampling stage, 30 lowest energy conformers from the structure pool are used to filter restraints based on their compatibility. AutoNOE updates NOE assignment parameters at three distinct phases (I, II, and III) that are interleaved with structure calculation runs (Fig. 1, green). During Phase I, all the NOEs assigned by AutoNOE are allowed despite being highly ambiguous. In Phase II, all the ambiguous restraints in highly structured regions of the best scoring decoys are eliminated. All the ambiguous and unsatisfied restraints in top scoring structural models are removed during Phase III of this protocol, and the restricted lists of NOEs are used within RASREC. Once the runs have converged, fullatom_pool directory is populated with final decoys. The list of NOEs is subsequently obtained by executing final_assignment.sh, which generates restraints based on 10 lowest energy structures from decoys.out. Upon execution of final_assignment.sh, NOEs (noe_auto_assign.cst) together with a detailed description of confidence classes (high, medium, and low, where 0.7 ≤ high ≤ 1, 0.45 ≤ medium ≤ 0.7, and 0 ≤ low < 0.45) and corresponding scores are available (in NOE_final.out) for further analysis if required.

To highlight how the quality of structural models improves from one stage to another using AutoNOE and RASREC, we computed structures of 20kDa target, α-lytic protease protein using NMR chemical shifts and two unassigned 4D NOESY peak lists (HCCH and HCNH) obtained from (Evangelidis et al., 2018) (BMRB ID 30322). The 10 lowest energy structures from each stage of the combined method show (i) that during the iterative AutoNOE assignment and RASREC modeling process, structures are refined to higher-resolution and convergence as the calculation progresses (Fig. 3A and B), and (ii) the synergy between structural convergence, NOE restraints satisfied by the decoys and RMSD to X-ray (PDB ID 1P01) (in Å) (Fig. 3A and B). Furthermore, it can be noted that the number of unique NOE restraints assigned by AutoNOE are self-consistent across all the stages of the protocol (Fig. 3D).

Fig. 3.

Fig. 3

NOESY cross-peak assignment by AutoNOE. Structural models of 20kDa α-lytic protease (aLP) protein calculated using the combined AutoNOE-RASREC protocol. (A) Ten lowest energy structures of aLP generated at the end of each resampling stage of RASREC using the NOEs assigned by AutoNOE. (B) Plot showing the synergy between RASREC and AutoNOE as a function of the average number of violated constraints and RMSD to X-ray (PDB ID 1P01) (in Å) through RASREC stages I–VIII for the 10 lowest energy structures. (C) Total number of unique NOE restraints assigned by AutoNOE at the end of each stage of the RASREC protocol. The structures of aLP were calculated using previously measured NMR chemical shifts and two unassigned 4D HCCH and HCNH NOESY peak lists (Evangelidis et al., 2018) (BMRB ID 30322). All the structure diagrams were generated using PyMOL (https:/pymol.org/2/).

5. ARCHITECTURE

In this section, we describe the core architecture of Abrelax, RASREC, and AutoNOE methods. These methods are modularized and follow object oriented design principles from ROSETTA3 in their implementation (Leaver-Fay et al., 2011). Rosetta is primarily divided into three main sets of libraries, one of which is the protocols library that encompasses all the algorithms used to interact with and/or modify the structures. The algorithms are separated into namespaces based on their functionality. CS-Rosetta’s structure modeling methods (Abrelax and RASREC) live within the abinitio namespace, whereas NOE assignment module resides in the noesy_assign namespace and both are nested under the protocols library (Lange, 2014; Lange & Baker, 2012; Shen et al., 2008). All the C++ classes that are part of these protocols carry out several tasks. Below, we provide a brief overview.

5.1. Structure Modeling Methods

Abrelax can be accessed by the broker_main() procedure present in the BrokerMain source file (Fig. 4). This procedure creates an instance of the AbrelaxMover class and presents it to the MPI-based job distributor (or JD) that handles distribution of jobs in a parallelized manner and resides in the jd2 namespace. The JD is responsible for assigning new jobs to the worker nodes (or processors) and run independent instances of AbrelaxMover on the Pose. JD works well when writing the output structures one at a time into a single file (decoys.out) and examining it before processing new jobs. However, it cannot handle unexpected file read/write (race condition) behaviors from processors that may occur during parallelization. To avoid this situation, MPI framework is used. In particular, MPIFileBufJobDistributor (a derived class from JobDistributor) decouples IO (input/output) and job distribution (Lange & Baker, 2012). A detailed working of the MPI framework in the context of CS-Rosetta is given in the supplementary information of Lange and Baker (2012). In this discussion, we have abstracted MPI-based job distributors with their parent class, JobDistributor.

Fig. 4.

Fig. 4

Architecture diagram of Abrelax and RASREC. BrokerMain is the point of entry for both Abrelax and RASREC methods. The broker_main() method creates an instance of AbrelaxMover and presents it to the JobDistributor. During Abrelax calculations, FragmentSampler and its derived class ConstraintFragmentSampler perform four stages of resampling. The resulting model is passed to the TopologyBroker which ensures that the desired degrees of freedom are consistent with one another. In RASREC calculations, JobDistributor invokes ArchiveManager, a controller class responsible for setting up iterative protocols (here, we just abstract the MPI-based job distributors with a parent class JobDistributor to simplify the diagram). ArchiveManager receives status messages from JobDistributor about the current state of structure calculation runs, based on which, it decides the next course of actions and calls corresponding interfaces from ArchiveBase. EvaluatedArchive and NormalizedEvaluatedArchive, descendants of ArchiveBase, are used to evaluate incoming decoys and filter them based on their weighted sum of scores. HedgeArchive is used mainly to collect structures from batches for later use (in stage V). IterativeBase, derived from NormalizedEvaluatedArchive, is the main class that encompasses six stages of the RASREC protocol. IterativeBase is accessed in a stage-specific manner; stages I–IV are realized through IterativeCentroid and stages V and VI through IterativeFullatom. IterativeAbrelax is a wrapper class for IterativeCentroid and IterativeFullatom. PairingStatistics is used to compute β-strand and β-topology-related scores during topology resampling. The shaded boxes represent classes. The colors indicate namespaces under the protocols library within which the classes reside (gray: abinitio, tan: archive under jd2, blue: jd2, and green: topology_broker). The underlined text within each box is the name of a class (except BrokerMain, which is not a class). A subset of data members is represented in an abstract manner by text above the line within the box. A small subset of nonoverriding methods is listed in each class below the line. Solid arrows represent inheritance relationships between classes. Straight lines connecting between classes show simple association, which means that, an object of one class is being used in the other. Only a representative subset of classes is shown in this diagram.

The main sampling strategy of CS-Rosetta is in the FragmentSampler class, which provides implementations of methods that carry out stages I–IV of Abrelax. ConstraintFragmentSampler inherits from FragmentSampler and is used primarily to associate input constraints with the Pose and further overrides functions from its parent such as do_stage1_cycles() and prepare_stageYY() where YY = {1,2} to carry out stage-specific operations. After the completion of sampling, the Pose is passed to the topology broker, which ensures that it (Pose) respects all the claims defined in the setup_init.tpb file. The Pose is returned to AbrelaxMover, which (i) closes chain-breaks introduced during sampling, (ii) switches from centroid to full-atom representation, and (iii) performs energy refinement to produce realistic structure that is written into decoys.out file by the process managing IO.

The RASREC protocol like Abrelax can be triggered from BrokerMain (Fig. 4). RASREC interacts extensively with the Archive framework, which lives in the archive namespace under jd2. Archive was developed primarily to facilitate interfaces from the iterative protocols (through their parent, ArchiveBase class) to the controller class, ArchiveManager, that communicates with the job distributor. In particular, ArchiveManager receives messages such as QUEUE_EMPTY and JOB_COMPLETION from the job distributor, based on which, it invokes necessary interfaces from ArchiveBase. When the protocol begins execution, the job distributor will examine the queue for any pending jobs (which is empty). Therefore, it sends QUEUE_EMPTY message to the ArchiveManager, which subsequently calls the generate_batch() method from the IterativeBase class, a descendent of ArchiveBase (through polymorphism). During the process of batch generation, batch_XX directory containing all the necessary parameter and protocol files is created, where XX is the batch number. ArchiveManager writes the status of the batch in a BATCH_INFO file within each batch directory, which is used to retrieve the status of a calculation if the protocol stops prematurely. Whenever the current batch is saturated, the job distributor sends JOB_COMPLETION message to the ArchiverManager, which forwards the newly generated decoys to the read_structures() method in IterativeBase. The read_structures() method filters and adds decoys to the structure pool. The main functionality of RASREC is implemented in IterativeBase, which calls procedures such as gen_enumerate_pairings() (stages I and II), gen_resample_topologies() (stages II and III), gen_ resample_stage2() (stage IV), and gen_resample_fragments() (stages IV–VI) to perform stage-specific operations. Here, gen_resample_topologies() procedure invokes PairingStatistics to compute scores for β-strandpairs during β-sheet topology resampling. IterativeBase is accessed using a wrapper class, IterativeAbrelax, which references IterativeCentroid (stages I–IV) and IterativeFullatom (stages V and VI) classes (both derive from IterativeBase) based on the representation mode of the protocol. The number of batch directories to be created is decided in real time, therefore, the job distributor, specifically MPIArchiveJobDistributor (a subclass of MPIFileBufJobDistributor) enables addition of batches to the job queue spontaneously. The decoys from batches are randomly selected and stored by HedgeArchive in centroid_pool_hedge directory. These archived structures are used during stage V of RASREC to promote extensive sampling of the full-atom energy function.

Evaluation of the decoys is carried out based on the energy terms weighted using custom or predefined bias by EvaluatedArchive, a derived class from ArchiveBase and NormalizedEvaluatedArchive, which inherits from EvaluatedArchive. The aggregation of weighted energy terms is represented by score_final tag for each structure in the silent file (decoys.out). In addition, the weighted sum of scores in the intermediate stages undergo on-demand updates and are made rapidly accessible under _archive_ select_score tag in the silent file carrying structures to subsequent stages (or the structure pool).

5.2. NOE Assignment Module

The NOE assignment method within the noesy_module namespace can be invoked from a publicly available application, r_noe_assign.<ext> (where <ext> is platform and compiler dependent) or from RASREC through the generate_batch() method of the IterativeBase class (Lange, 2014). The public app is called by the CS-Rosetta toolbox (see Sections 4 and 9) during initialization and finalization of NOE assignments, whereas the generate_batch() method calls the NOESY module at the start of each different stage of the RASREC protocol (Fig. 1, green). The assign() interface used by both these points of entry marks the start of the NOE assignment algorithm and is available in NoesyModule.impl.hh (Fig. 5). Here, methods within the CrossPeakList class are called specifically to carry out score calculations during the assignment of NOESY cross-peaks. AutoNOE is designed to accept multiple unassigned cross-peak lists. Each input list is encapsulated within the CrossPeakList class that provides functionality to read/write from iostream/files, update relevant scores, calibrate peak lists, and generate centroid and full-atom restraints for use in RASREC.

Fig. 5.

Fig. 5

Architecture diagram of AutoNOE. NoesyModule is the means to access NOE assignment protocol and contains a reference to the CrossPeakList class. The CrossPeakList class holds information of the entire list of NOE peaks using a vector of CrossPeak objects. In addition, it carries instances of PeakAssignmentResidueMap that maps an assigned peak (held by the PeakAssignment class) to its corresponding residue. The CrossPeak class contains a Spin class, which stores properties of a spin such as its identifier and chemical shift frequency. The CrossPeak class contains references to ResonanceList and a helper class, CrossPeakInfo, that stores cross-peak information. ResonanceList is used to store a list of Resonance objects read from the input chemical shift file. Resonance is inherited by LabelResonance, ProtonResonance, and FloatingResonance, which are instantiated based on the type of atom specified in the chemical shift file. StructureDependentPeakCalibrat or and StructureIndependentPeakCalibrator inherit from the PeakCalibrator class, which associate with instances of CrossPeak and are used during calibration of peak intensities to produce upper distance bounds. The shaded boxes represent classes. The colors indicate namespaces under protocols library within which the classes reside (gray: noesy_assign). The underlined text within each box is the name of a class. A subset of data members is represented in an abstract manner by text above the line within the box. A small subset of nonoverriding methods is listed in each class below the line. Solid arrows represent inheritance relationships between classes. A line with diamond at its end-point represents composition (a class owns another class). Straight lines connecting between classes show simple association, which means that, an object of one class is being used in the other.

Each cross-peak in the list is associated with a set of properties, which are held by the CrossPeak class. These include proton spins mapped with chemical shift frequencies, peak intensity, cross-peak information (for each proton dimension such as, atom name and tolerance, which are stored as instances of the CrossPeakInfo class), and input resonance list. The CrossPeak class implements methods to find and assign atom labels to spins based on chemical shift frequencies and their tolerances. The Spin class contained within CrossPeak is used to encapsulate resonance frequency and spin assignment identifier which can be used to index into the resonance table. For the purposes of faster access to the assignments and residues (instead of referring from CrossPeak every time), PeakAssignment and PeakAssignmentResidueMap classes are used. PeakAssignment class stores score terms, spin identifiers, and resonance labels for each assignment of the cross-peak. PeakAssignmentResidueMap stores a mapping of the PeakAssignment list to the target residue list.

Calibration of peak intensities is handled separately by the PeakCalibrator class that exhibits simple association with CrossPeak. PeakCalibrator is inherited by StructureDependentCalibrator and StructureIndependent Calibrator which are invoked depending on the availability of decoys (this relies on the stage of the protocol) during calibration (see Section 4).

To store input chemical shifts and their atom labels, ResonanceList and Resonance classes are used. ResonanceList is the container class that keeps a list of resonances (each defined by Resonance class), identifiers for each resonance, and the corresponding residue number in the protein sequence. In particular, ResonanceList can be used to obtain tuples of chemical shift frequencies and respective atoms. Resonance encapsulates chemical shift id (or label; this is just an integer), frequency, tolerance, atom, residue, and atom-specific calibration flag (see Section 4.3). It is inherited by ProtonResonance, LabelResonance, and FloatingResonance. Depending on the type of atom encountered while reading chemical shift file, ProtonResonance (for protons) or LabelResonance (for other atoms associated with protons) is instantiated. In addition, ifthe given chemical shift frequencies lie in the folded region of the NMR spectra, then FoldResonance is utilized so that necessary corrections are applied while mapping the frequencies to the NOE cross-peaks.

6. INTEGRATION WITH STRUCTURAL RESTRAINTS

To model protein structures with novel or challenging folds, restraints derived from NMR experiments or homologous proteins that guide the conformation search toward a native become crucial. CS-Rosetta allows easy integration of such restraints to help the search that employs Monte Carlo methods. Restraints in Rosetta are used within the score functions, specifically, to favor or penalize the models based on their compatibility. All the protocols within CS-Rosetta accept restraint files and corresponding weight terms as input. These restraints are associated with the Pose being perturbed at all the time thus making them an integral part during the application of any mover. In this section, we highlight a representative subset of the types of structural restraints supported by CS-Rosetta.

6.1. NMR

NMR spectroscopy provides a means to obtain local and global structural information of proteins, which is later converted to distance or torsion angle restraints used to drive the structure modeling calculations. Local restraints are typically provided by NMR chemical shifts and NOEs (Anglister, Srivastava, & Naider, 2016; Güntert, 2009), whereas global information is obtained from RDC (Blackledge, 2005), PCS (pseudocontact shift) and PRE (paramagnetic relaxation enhancement) (Clore & Iwahara, 2009) restraints.

NMR chemical shifts are highly informative parameters that report on protein backbone and side chain conformations and are utilized heavily by NMR-based structure determination programs to model near-native structures (Berjanskii & Wishart, 2017). CS-Rosetta exploits NMR chemical shifts in two ways: first, to derive torsion angle restraints using TALOS-N (Shen & Bax, 2013), that are applied during the fragment selection process; second, to measure their consistency with SPARTA-predicted (Shen & Bax, 2007) chemical shift values obtained from simulated (intermediate or final) structural models. This fitness measure (deviation of experimental and predicted chemical shifts) given by chi-squared term is used to adjust the score function. During structure modeling in CS-Rosetta, the contribution of chemical shifts to the score function can be observed under chem_shifts column in the output file containing decoys. The corresponding weights for this term during centroid or full-atom modes can be customized using -cenpool_chemicalshift_weight and -fapool_ chemicalshift_weight tags present in the flag files.

Chemical shifts are generally complemented with long-range distance restraints provided by NOEs (distance between atom-pairs that are close in space) (Güntert, 2003). While unassigned NOE peak lists can be used by AutoNOE algorithm to perform NOE assignment and structure calculation iteratively (see Section 4.3), it requires higher levels of resonance assignment completeness (> 70% of resonances must be assigned) (Evangelidis et al., 2018). Therefore, when it is not feasible to obtain near-complete resonance assignments, structure determination algorithms (Abrelax and RASREC) can use all available chemical shifts together with NOE restraints assigned manually to model structures. NOE restraints are employed primarily to penalize the models that disagree with their distance bounds during structure calculation runs (Table 1). The amount of penalty applied is given by the atom_pair_constraint score term in the output file containing decoys. The weights used to compute atom_pair_constraint (represented by the same name in the patch files) can be tuned up or down as per custom requirements during different stages of calculations in centroid or full-atom modes. The NOE distance restraints typically start with the keywords, AmbiguousNMRDistance or AtomPair (or NamedAtomPair), and further contain definitions of atom-pairs, and penalty function type and its parameters (Table 1).

Table 1.

Function Types Typically Used in Constraints to Penalize Structural Models in CS-Rosetta

Bounded
Format:
 AmbiguousNMRDistance atom1_label atom1_residue_no atom2_label atom2_residue_no BOUNDED lb ub sd annotation
Example:
 AmbiguousNMRDistance H 185 QD2 175 BOUNDED 1.5 4.20 1.000 automatic NOE Peak
 AmbiguousNMRDistance H18H23 BOUNDED 1.5 3.40 1.000 automatic NOE Peak

Sigmoid
Format:
 AtomPair atom1_label atom1_residue_no atom2_label atom2_residue_no SIGMOID center slope annotation
Example:
 AtomPair CB38 CB56 SIGMOID 8.00 1.00 #ContactMap: 1.35
 AtomPair CB 118 CB 165 SIGMOID 8.00 1.00 #ContactMap: 1.22

SOGFUNC
Format:
 AtomPair atom1_label atom1_residue_no atom2_label atom2_residue_no SOGFUNC no_of_functions mean1 sd1 wt1 …
Example:
 AtomPair CA 4 CA 23 SOGFUNC 2 8.980 2.897 0.265 18.300 7.300 0.735
 AtomPair CA 8 CA 47 SOGFUNC 1 7.842 2.297 0.312

center, center of the SIGMOID function; lb, lower bound; sd, standard deviation; slope, slope of the SIGMOID function; ub, upper bound; wt, weight.

Rosetta provides a large set of function types, here we show only some examples of a representative subset used by CS-Rosetta (https://www.rosettacommons.org/docs/latest/rosetta_basics/file_types/constraint-file).

Whereas chemical shifts and NOEs are sufficient to model lower-molecular-weight complexes (<25kDa), additional data providing information about orientation of local and global regions is generally necessary to determine structures of large proteins or oligomeric systems. Such information is available from RDC measurements, which are useful in describing the orientation of the amino acids in proteins with respect to the global alignment frame (or the external magnetic field) (Donald & Martin, 2009). In CS-Rosetta, backbone RDC measurements are used in the score functions to evaluate their fitness to the structural models generated during centroid and full-atom stages (Raman et al., 2012). Corresponding scores in the decoys file are represented using rdc and rdc_filt (rdc_filt = rdc score term * rdc weight term) terms. Whereas a bias on RDC scores is indicated by the rdc term in the patch files.

The presence of paramagnetic metal ions in proteins induce significant changes in chemical shift values resulting in long-range structural restraints known as PCS (Schmitz, Vernon, Otting, Baker, & Huber, 2012). PCS measurements can be combined with Abrelax to model protein structures with increased accuracy (Schmitz et al., 2012; Yagi et al., 2013). To perform PCS-based structure calculations for a target with one or multiple paramagnetic tags, preliminary models are determined using only the chemical shift-derived fragments. These models are used to tune target-specific PCS score weights for each paramagnetic tag, which are applied during low-resolution mode of the structure calculation runs using -abinitio::stageXX_patch option where XX = {1, 2, 3a, 3b, 4}. Since the PCS measurements are recorded primarily for backbone atoms, they are applied only during low-resolution modeling phase. Following low-resolution phase, models are refined using standard refinement protocols within Rosetta. These models are filtered using a combined score produced by PCS data (during low-resolution stage) and full-atom refinement.

PRE measurements can be used to obtain distances between Cα atoms of PRE-affected residues and Cβ atoms of the residues to which a paramagnetic probe is attached. While NOEs generally provide distance restraints between protons that are <6 Å apart in space, PREs can be used similarly as bounded restraints (Table 1) providing information about atoms that are spaced between ~20–25 Å (Tamaki et al., 2016). Moreover, the weights of these distance restraints can be tuned up or down using standard patch file containing atom_pair_constraint term. Alternatively, CS-Rosetta can be combined with solvent accessible data acquired through PREmeasurements (sPRE-CS-Rosetta) (Hartlmüller, Göbl, & Madl, 2016). Such data as demonstrated by Hartlmüller et al. (2016) is used within scoring functions to validate modeled structures during low-resolution and high-resolution modes. The experimental data file containing sPRE values is input in a format similar to the chemical shift file format in TALOS. Score weight represented by spre term in a patch file is added to the various ab initio stages given by -abinitio::stageXX_patch option in the flag files, where XX = {1, 2, 3a, 3b, 4}. Simultaneously, more parameters used in scoring, such as grid resolution (used during prediction of sPRE values from models), nonstereospecificity (using sPRE values obtained by averaging over stereospecific atoms) in full-atom mode, distances between (i) paramagnetic agent and the nuclei and (ii) the outer boundary of paramagnetic grid and the protein, can be adjusted for custom targets.

6.2. Homologous Proteins

Restraints derived from homologous or evolutionarily related proteins provide complementary information alongside sparse experimental data. CS-Rosetta offers a mechanism to generate such restraints and further supports data obtained from external tools or webservers to model accurate structures (Nerli et al., 2018).

CS-HM-Rosetta (or Chemical Shift-Homology Modeling-Rosetta) (Thompson et al., 2012) is a protocol whose primary purpose is to generate restraints from homologous proteins that can be combined with NMR chemical shifts within main structure modeling methods (Abrelax and RASREC). Here, the protocol first performs multiple sequence alignment of a query protein to all the proteins in the PDB using HHpred webserver (Söding, Biegert, & Lupas, 2005) or HHsearch (Söding, 2005) stand-alone software. The resulting alignment profile is used by CS-HM-Rosetta to measure distances between Cα atoms of residues that are consistent in multiple template proteins and are validated using criteria including, local and global sequence similarities and buried surface (Thompson & Baker, 2011). This validation information is combined to produce interatomic distance restraints as a mixture of Gaussian probability densities. The restraints are given higher weights if they are observed between same pair of atoms across multiple templates. The combined Gaussian probability densities are represented using a SOGFUNC function in restraint definition (Table 1).

More recently, sequence covariance information has been used to derive structural restraints (termed evolutionary coupling (EC) restraints) to guide the search for native conformation (Balakrishnan, Kamisetty, Carbonell, Lee, & Langmead, 2011; de Juan, Pazos, & Valencia, 2013; Jones, Buchan, Cozzetto, & Pontil, 2012; Kamisetty, Ovchinnikov, & Baker, 2013; Marks, Hopf, & Sander, 2012; Ovchinnikov et al., 2017; Sułkowska, Morcos, Weigt, Hwa, & Onuchic, 2012). These restraints are generated by utilizing genomic data and applying statistical methods such as, pseudolikelihood maximization (Ekeberg, Lövkvist, Lan, Weigt, & Aurell, 2013) and/or direct information (Marks et al., 2011) to measure evolutionarily coupled residues that are closer in space. Currently, there are many webservers and stand-alone software tools available to predict such restraints (Jones et al., 2012; Kamisetty et al., 2013; Marks et al., 2012). These distance restraints can be used alone or combined with sparse NMR data and CS-Rosetta algorithms to model high-resolution structures. Toward this end, CS-Rosetta expects data to be in a distance restraint file format (Table 1). For instance, if the restraints are generated using EVFold (Marks et al., 2011, 2012), then Rosetta provides scripts (see Section 9) to convert them into Rosetta compatible constraint files (with Sigmoid function; Table 1) that can be used directly within structure calculation runs as demonstrated previously (Braun, Leman, & Lange, 2015).

7. COMBINED APPROACHES

CS-Rosetta can be combined with alternative automated approaches to model complex protein systems. One such approach is RosettaOligomers (Sgourakis et al., 2011). This approach makes use of NMR chemical shifts and NOE restraints to model monomeric subunits, which are subsequently combined using docking protocols within Rosetta. RosettaOligomers has been employed previously to model symmetric protein complexes with both simple and interleaved interfaces (Sgourakis et al., 2011). To model these systems, structural fragments for individual monomers are derived using chemical shifts. These fragments are used within Abrelax or RASREC to obtain models of monomeric subunits. Depending on the convergence of resulting monomers, docking is carried out using different protocols. Specifically, if the convergence is <3 Å, symmetric docking is performed (using SymDock.<ext>, where <ext> is platform and compiler specific) (André, Bradley, Wang, & Baker, 2007), otherwise, fold and dock is applied (using minirosetta.<ext> with a topology broker file, where <ext> is platform and compiler specific) (Das et al., 2009). Both the docking algorithms require symmetry information of the oligomeric system, which is provided via the symmetry definition file. This file contains information about how to score models and allowed degrees of freedom. To create such a file, Rosetta provides make_symmdef_fil e_denovo. py (if no reference structure is available) and make_symmdef_file.py (if reference structure is used to define symmetry) tools. The full description of parameters used to benchmark this method is given in supplementary information of Sgourakis et al. (2011).

CS-Rosetta relies heavily on increased levels of completeness and correctness of assigned NMR chemical shifts to label NOE cross-peaks or model high-resolution structures. However, assignment of chemical shifts is a labor-intensive process, which involves recording many (typically 6–10) NOESY spectra and labeling thousands of peaks within them with atom names to obtain desired levels of accuracy for small proteins (< 15kDa) (Evangelidis et al., 2018; Würz, Kazemi, Schmidt, Bagaria, & Güntert, 2017). To address this problem, many automated methods have emerged that can assign resonances of protein targets with higher molecular weights efficiently (Würz et al., 2017). Recently, an automated method, 4D-CHAINS, was developed (Evangelidis et al., 2018). This method makes use of only two complementary (4D-NOESY and TOCSY) spectra, yet assigns backbone and side chain chemical shifts with high accuracy (>95% for the benchmark targets used in that study). As demonstrated previously, this method can be combined with CS-Rosetta to assign NOEs and/or model structures with subatomic resolution (Evangelidis et al., 2018). Moreover, the assigned chemical shift files generated by 4D-CHAINS can be used directly to pick fragments and drive any CS-Rosetta calculations.

8. COMPUTATIONAL REQUIREMENTS

All the methods in CS-Rosetta have been tested extensively on Linux and MacOS (or UNIX-based) operating systems with 16-2048 parallel processors. Previous reports suggest that a minimum of 16 processors can be used to calculate structures of up to 200 AA in a reasonable amount of time (Nerli et al., 2018). Here, we demonstrate the performance of all the methods represented as a function of time used for structure calculation and their molecular weights (Fig. 6). To measure the running times of these methods, we calculated structures of four targets of weights ranging from 15.5 to 27.3kDa (same benchmark set as used in Evangelidis et al., 2018). Each independent run was performed on 100 CPUs with fragments picked using manually assigned chemical shifts and NOE restraints obtained from 4D HCCH and HCNH NOESY spectra (Evangelidis et al., 2018). Moreover, the largest target was supplied with RDC restraints (Evangelidis et al., 2018). The structure calculation runs were carried out until all the methods reached convergence (>90% for 10 lowest energy structures). From all the calculations, we observed that RASREC is 5- to 10-folds faster than Abrelax. On the other hand, AutoNOE utilized approximately 3–4h more than the RASREC calculations for all the targets in the benchmark set. These results are demonstrated on a specific computer cluster (AMD Opteron(tm), 2.4 GHz processor 6378) with a fixed number of CPUs. Using higher number of processors can reduce the running times of these protocols significantly (for instance, the authors of RASREC were able to calculate four structures per second with 2048 processors; Lange & Baker, 2012).

Fig. 6.

Fig. 6

Performance of Abrelax, RASREC, and AutoNOE algorithms. Performance of Abrelax (red), RASREC (blue), and AutoNOE (green) methods shown as a function of the number of residues and time (in hours) used to calculate structures of four benchmark targets (protein targets used in Evangelidis et al., 2018). Each bar in the plot represents independent structure calculation carried out in parallel using 100 CPUs. The structure calculation of all the targets was performed using same type of input constraints (Chemical shifts and NOEs alongside RDC measurements for the largest target obtained from Evangelidis et al., 2018; BMRB IDs 30322, 30325, 30326, and 30327) and executed until they reached convergence.

9. TOOLBOX

CS-Rosetta has many tuning parameters that can drive the calculations toward a native fold depending on the target of interest. While customization of all the parameters is allowed, CS-Rosetta provides automated setup scripts (or toolbox) where these parameters have been adjusted and predefined based on a set of benchmark calculations performed previously (Lange, 2014; Lange & Baker, 2012; Raman et al., 2012; Shen et al., 2008; Zhang et al., 2014). A series of function-specific flag files that define these parameters must be created before executing the methods (see Section 4). The CS-Rosetta toolbox, which has a Python interface, renders it easy to use and further allows flexibility in setting up these parameters for structure calculations without having to learn the complex details of Rosetta specifics. Besides setup scripts, the toolbox contains many helper programs that can be used to analyze outputs of structure calculation runs (Table 2). In addition, the toolbox consists of programs that allow rapid conversion of deposited NMR data in BMRB (Biological Magnetic Resonance Bank) (Ulrich et al., 2008) or NEF (NMR exchange format) (Gutmanas et al., 2015) file formats to Rosetta compatible file formats.

Table 2.

Contents of the CS-Rosetta Toolbox

Purpose Scripts Description
Install and setup install, setup_run, setup_list, setup_autoNOE, setup_target, setup_display, list_setup Used for the installation of toolbox and to set up structure calculation runs
Clean up files clean_peak_file, clean_rdc_file Clean input RDC and peak files
Renumbering renumber_pdb, renumber_prot, renumber_rdc, renumber_talos, renumber_upl Used to renumber input files after trimming flexible regions from chemical shift file (in TALOS format)
Chemical shift and RDC analysis scripts get_rdc_tensor, process_prot_for_autoNOE, prot_completeness Analyze input RDC values based on histogram method. Check resonance assignment completeness
Correction or addition of data correctCSoffset, addFasta2Prot Tune chemical shift offset. Add residue information to the chemical shift file (.prot)
Convert or extract data prot2talos, talos2fasta, talos2prot, pred2rigid, pdb2fasta, convert_atomnames, fasta2seq, fasta2weight, rosetta2upl, silent_data, upl2rosetta, upl2fasta Scripts used to extract information such as amino acid sequence from structures in PDB format, TALOS files or convert from one file format to another (e.g., prot2talos)
Map full-atom constraints to coarse grained constraints cst_map_toCB, cst_map_toCEN Convert constraints in full-atom representation to centroid or coarse grained (where side chains are characterized by Cβ atoms) representations
Extract from BMRB bmrb2fasta, bmrb2prot, bmrb2rdc, bmrb2talos Extract data from BMRB files to use them within structure calculation runs
Extract from or convert to NEF nef, nef2fasta, nef2peaks, nef2prot, nef2rdc, nef2restraint, nef2talos Extract data from NEF files to use them for structure calculation. Convert input data to NEF file format for deposition into databases
Fragment picking pick_fragments Pick fragments using chemical shift information
Extracting structures extract_decoys, pack_pdb, unpack_pdb Extracting structures post structure calculation runs
Postcalculation analysis annotate_target, autoNOE_select_final_run, extract_scores, median, noeout2txt Scripts used to determine best constrained runs, top scoring decoys, and their statistics
CS-HM-Rosetta convert_aln, get_pdbs, predict_distances Predict distance restraints based on HHsearch or HHpred alignment file

A detailed description and usage of these scripts is available in the Application Reference section at https://csrosetta.chemistry.ucsc.edu.

Software programs used to calculate distance restraints from homologous proteins using CS-HM-Rosetta (Thompson et al., 2012) are shipped with the toolbox. Structural restraints derived from ECs through separate web servers such as EVFold (Marks et al., 2011, 2012) can be converted into Rosetta compatible file formats using helper scripts available at rosetta/demos/protocol_capture/rasrec_evolutionary_restraints/ (in the Rosetta suite) (Braun et al., 2015). In addition, alternative web servers such as GREMLIN (Kamisetty et al., 2013) generate EC restraints in required file format and can be used directly within CS-Rosetta calculations.

The toolbox is available for download at https://csrosetta.chemistry.ucsc.edu. Additional documentation about setting up the structure calculation runs and commands can be found at the same site.

10. CONCLUSIONS

CS-Rosetta offers a wide variety of capabilities in the field of de novo protein structure modeling with sparse NMR data. While the classical algorithm, Abrelax, works very well for smaller sized proteins, it has been superseded by RASREC that employs a variety of optimization strategies to model larger complexes. Alongside structure prediction, CS-Rosetta readily enables NOESY cross-peak assignment through the AutoNOE module. Together with unprecedented parallelization, CS-Rosetta’s robust algorithms push the boundaries of molecular weight limits of proteins. The combined use of experimental and simulated restraints derived from ECs works very well with RASREC and holds promise toward designing proteins for therapeutics. Due to its adaptability, CS-Rosetta allows it to be integrated with alternative approaches to model oligomeric proteins or build an automated pipeline for NMR-based structure determination. Simultaneously, the modularized architecture of CS-Rosetta makes it easy to embed new methods to address more difficult systems or model other biomolecules.

ACKNOWLEDGMENTS

The authors would like to thank Oliver Lange, Robert Vernon, Ad Bax, and David Baker for helpful discussions over the years, and Andrew C. McShan for providing valuable feedback on this manuscript. This manuscript was supported in part by funds from the Intramural research program of the NIAID, NIH, a K-22 Career Development, and an R35 Outstanding Investigator Award to N.G.S. through NIAID(AI2573-01) and NIGMS (1R35GM125034-01), respectively.

ABBREVIATIONS

AA

amino acids

BMRB

biological magnetic resonance bank

CCD

cyclic coordinate descent

CEN

centroid

CS

chemical shift

EC

evolutionary coupling

HM

homology modeling

IO

input/output

JD

job distributor

KDA

kilo dalton

MPI

message passing interface

NEF

NMR exchange format

NESG

Northeast Structural Genomics

NMR

nuclear magnetic resonance

NOE

nuclear overhauser enhancement

PCS

pseudocontact shift

PDB

protein data bank

PRE

paramagnetic relaxation enhancement

RASREC

resolution-adapted structural recombination

RCI

random coil index

RDC

residual dipolar coupling

SPARTA

shifts predicted from analogy in residue type and torsion angle

TALOS

torsion angle likelihood obtained from shift and sequence similarity

REFERENCES

  1. Alford RF, Leaver-Fay A, Jeliazkov JR, O’Meara M, DiMaio FP, Park H, et al. (2017). The Rosetta all-atom energy function for macromolecular modeling and design. Journal of Chemical Theory and Computation, 13(6), 3031–3048. 10.1021/acs.jctc.7b00125. [DOI] [PMC free article] [PubMed] [Google Scholar]
  2. André I, Bradley P, Wang C, & Baker D (2007). Prediction of the structure of symmetrical protein assemblies. Proceedings of the National Academy of Sciences of the United States of America, 104(45), 17656–17661. 10.1073/pnas.0702626104. [DOI] [PMC free article] [PubMed] [Google Scholar]
  3. Anglister J, Srivastava G, & Naider F (2016). Detection of intermolecular NOE interactions in large protein complexes. Progress in Nuclear Magnetic Resonance Spectroscopy, 97(Suppl. C), 40–56. 10.1016/j.pnmrs.2016.08.002. [DOI] [PubMed] [Google Scholar]
  4. Balakrishnan S, Kamisetty H, Carbonell JG, Lee S-I, & Langmead CJ (2011). Learning generative models for protein fold families. Proteins, 79(4), 1061–1078. 10.1002/prot.22934. [DOI] [PubMed] [Google Scholar]
  5. Bender BJ, Cisneros A, Duran AM, Finn JA, Fu D, Lokits AD, et al. (2016). Protocols for molecular modeling with Rosetta3 and RosettaScripts. Biochemistry, 55(34), 4748–4763. 10.1021/acs.biochem.6b00444. [DOI] [PMC free article] [PubMed] [Google Scholar]
  6. Berjanskii MV, & Wishart DS (2017). Unraveling the meaning of chemical shifts in protein NMR. Biochimica Et Biophysica Acta, 1865(11 Pt. B), 1564–1576. 10.1016/j.bbapap.2017.07.005. [DOI] [PubMed] [Google Scholar]
  7. Berman HM, Westbrook J, Feng Z, Gilliland G, Bhat TN, Weissig H, et al. (2000). The protein databank. NucleicAcids Research, 28, 235–242. 10.1093/nar/28.1.235. [DOI] [PMC free article] [PubMed] [Google Scholar]
  8. Blackledge M (2005). Recent progress in the study of biomolecular structure and dynamics in solution from residual dipolar couplings. Progress in Nuclear Magnetic Resonance Spectroscopy, 46(1), 23–61. 10.1016/j.pnmrs.2004.11.002. [DOI] [Google Scholar]
  9. Blum B, Jordan MI, & Baker D (2010). Feature space resampling for protein conformational search. Proteins: Structure, Function, and Bioinformatics, 78(6), 1583–1593. 10.1002/prot.22677. [DOI] [PMC free article] [PubMed] [Google Scholar]
  10. Bradley P, & Baker D (2006). Improved beta-protein structure prediction by multilevel optimization of nonlocal strand pairings and local backbone conformation. Proteins: Structure, Function, and Bioinformatics, 65(4), 922–929. 10.1002/prot.21133. [DOI] [PubMed] [Google Scholar]
  11. Bradley P, Misura KMS, & Baker D (2005). Toward high-resolution de novo structure prediction for small proteins. Science (New York, N.Y.), 309(5742), 1868–1871. 10.1126/science.1113801. [DOI] [PubMed] [Google Scholar]
  12. Braun T, Leman JK, & Lange OF (2015). Combining evolutionary information and an iterative sampling strategy for accurate protein structure prediction. PLoS Computational Biology, 11(12), e1004661 10.1371/journal.pcbi.1004661. [DOI] [PMC free article] [PubMed] [Google Scholar]
  13. Brunette TJ, & Brock O (2005). Improving protein structure prediction with model-based search. Bioinformatics (Oxford, England), 21(Suppl. 1), i66–i74. 10.1093/bioinformatics/bti1029. [DOI] [PubMed] [Google Scholar]
  14. Brunette T, & Brock O (2008). Guiding conformation space search with an all-atom energy potential. Proteins: Structure, Function, and Bioinformatics, 73(4), 958–972. 10.1002/prot.22123. [DOI] [PMC free article] [PubMed] [Google Scholar]
  15. Canutescu AA, & Dunbrack RL (2003). Cyclic coordinate descent: A robotics algorithm for protein loop closure. Protein Science: A Publication of the Protein Society, 12(5), 963–972. [DOI] [PMC free article] [PubMed] [Google Scholar]
  16. Clore GM, & Iwahara J (2009). Theory, practice, and applications of paramagnetic relaxation enhancement for the characterization of transient low-population states of biological macromolecules and their complexes. Chemical Reviews, 109(9), 4108–4139. 10.1021/cr900033p. [DOI] [PMC free article] [PubMed] [Google Scholar]
  17. Das R, André I, Shen Y, Wu Y, Lemak A, Bansal S, et al. (2009). Simultaneous prediction of protein folding and docking at high resolution. Proceedings of the National Academy of Sciences of the United States of America, 106(45), 18978–18983. 10.1073/pnas.0904407106. [DOI] [PMC free article] [PubMed] [Google Scholar]
  18. de Juan D, Pazos F, & Valencia A (2013). Emerging methods in protein co-evolution. Nature Reviews Genetics, 14(4), 249 10.1038/nrg3414. [DOI] [PubMed] [Google Scholar]
  19. Donald BR, & Martin J (2009). Automated NMR assignment and protein structure determination using sparse dipolar coupling constraints. Progress in Nuclear Magnetic Resonance Spectroscopy, 55(2), 101–127. 10.1016/j.pnmrs.2008.12.001. [DOI] [PMC free article] [PubMed] [Google Scholar]
  20. Ekeberg M, Lövkvist C, Lan Y, Weigt M, & Aurell E (2013). Improved contact prediction in proteins: Using pseudolikelihoods to infer Potts models. Physical Review E, 87(1), 012707 10.1103/PhysRevE.87.012707. [DOI] [PubMed] [Google Scholar]
  21. Evangelidis T, Nerli S, Novacek J, Brereton AE, Karplus PA, Dotas RR, et al. (2018). Automated NMR resonance assignments and structure determination using a minimal set of 4D spectra. Nature Communications, 9(1), 384 10.1038/s41467-017-02592-z. [DOI] [PMC free article] [PubMed] [Google Scholar]
  22. Gront D, Kulp DW, Vernon RM, Strauss CEM, &Baker D (2011). Generalized fragment picking in Rosetta: Design, protocols and applications. PLoS One, 6(8), e23294 10.1371/journal.pone.0023294. [DOI] [PMC free article] [PubMed] [Google Scholar]
  23. Guerry P, & Herrmann T (2011). Advances in automated NMR protein structure determination. Quarterly Reviews of Biophysics, 44(3), 257–309. [DOI] [PubMed] [Google Scholar]
  24. Güntert P (2003). Automated NMR protein structure calculation. Progress in Nuclear Magnetic Resonance Spectroscopy, 43(3), 105–125. 10.1016/S0079-6565(03)00021-9. [DOI] [Google Scholar]
  25. Güntert P (2009). Automated structure determination from NMR spectra. European Biophysics Journal, 38(2), 129–143. 10.1007/s00249-008-0367-z. [DOI] [PubMed] [Google Scholar]
  26. Gutmanas A, Adams PD, Bardiaux B, Berman HM, Case DA, Fogh R, et al. (2015). NMR exchange format: A unified and open standard for representation of NMR restraint data. Nature Structural & Molecular Biology, 22(6), 433–434. 10.1038/nsmb.3041. [DOI] [PMC free article] [PubMed] [Google Scholar]
  27. Hartlmüller C, Göbl C, & Madl T (2016). Prediction of protein structure using surface accessibility data. Angewandte Chemie International Edition, 55(39), 11970–11974. 10.1002/anie.201604788. [DOI] [PMC free article] [PubMed] [Google Scholar]
  28. Herrmann T, Güntert P, & Wüthrich K (2002). Protein NMR structure determination with automated NOE assignment using the new software CANDID and the torsion angle dynamics algorithm DYANA. Journal of Molecular Biology, 319(1), 209–227. 10.1016/S0022-2836(02)00241-3. [DOI] [PubMed] [Google Scholar]
  29. Huang YJ, Swapna GVT, Rajan PK, Ke H, Xia B, Shukla K, et al. (2003). Solution NMR structure of ribosome-binding factor a (RbfA), a cold-shock adaptation protein from Escherichia coli. Journal of Molecular Biology, 327(2), 521–536. 10.1016/S0022-2836(03)00061-5. [DOI] [PubMed] [Google Scholar]
  30. Jones DT, Buchan DWA, Cozzetto D, & Pontil M (2012). PSICOV: Precise structural contact prediction using sparse inverse covariance estimation on large multiple sequence alignments. Bioinformatics, 28(2), 184–190. 10.1093/bioinformatics/btr638. [DOI] [PubMed] [Google Scholar]
  31. Kamisetty H, Ovchinnikov S, & Baker D (2013). Assessing the utility of coevolution-based residue–residue contact predictions in a sequence- and structure-rich era. Proceedings of the National Academy of Sciences of the United States of America, 110(39), 15674–15679. 10.1073/pnas.1314045110. [DOI] [PMC free article] [PubMed] [Google Scholar]
  32. Keeler J (2010). Understanding NMR spectroscopy (2nd ed.). Wiley; Retrieved from https://www.wiley.com/en-us/Understanding+NMR+Spectroscopy%2C+2nd+Edition-p-9780470746080. [Google Scholar]
  33. Kim DE, Chivian D, & Baker D (2004). Protein structure prediction and analysis using the Robetta server. Nucleic Acids Research, 32, W526–W531. [Web Server issue]. 10.1093/nar/gkh468. [DOI] [PMC free article] [PubMed] [Google Scholar]
  34. Lange OF (2014). Automatic NOESY assignment in CS-RASREC-Rosetta. Journal of Biomolecular NMR, 59(3), 147–159. 10.1007/s10858-014-9833-3. [DOI] [PubMed] [Google Scholar]
  35. Lange O, & Baker D (2012). Resolution-adapted recombination of structural features significantly improves sampling in restraint-guided structure calculation. Proteins, 80(3), 884–895. 10.1002/prot.23245. [DOI] [PMC free article] [PubMed] [Google Scholar]
  36. Lange OF, Rossi P, Sgourakis NG, Song Y, Lee H-W, Aramini JM, et al. (2012). Determination of solution structures of proteins up to 40 kDa using CS-Rosetta with sparse NMR data from deuterated samples. Proceedings of the National Academy of Sciences of the United States of America, 109(27), 10873–10878. 10.1073/pnas.1203013109. [DOI] [PMC free article] [PubMed] [Google Scholar]
  37. Leaver-Fay A, O’Meara MJ, Tyka M, Jacak R, Song Y, Kellogg EH, et al. (2013). Scientific benchmarks for guiding macromolecular energy function improvement. Methods in Enzymology, 523, 109–143. 10.1016/B978-0-12-394292-0.00006-0. [DOI] [PMC free article] [PubMed] [Google Scholar]
  38. Leaver-Fay A, Tyka M, Lewis SM, Lange OF, Thompson J, Jacak R, et al. (2011). ROSETTA3: An object-oriented software suite for the simulation and design of macromolecules. Methods in Enzymology, 487, 545–574. 10.1016/B978-0-12-381270-4.00019-6. [DOI] [PMC free article] [PubMed] [Google Scholar]
  39. Linge JP, Habeck M, Reiping W, & Nilges M (2003). ARIA: Automated NOE assignment and NMR structure calculation. Bioinformatics, 19(2), 315–316. 10.1093/bioinformatics/19.2.315. [DOI] [PubMed] [Google Scholar]
  40. Marks DS, Colwell LJ, Sheridan R, Hopf TA, Pagnani A, Zecchina R, et al. (2011). Protein 3D structure computed from evolutionary sequence variation. PLoS One, 6(12), e28766 10.1371/journal.pone.0028766. [DOI] [PMC free article] [PubMed] [Google Scholar]
  41. Marks DS, Hopf TA, & Sander C (2012). Protein structure prediction from sequence variation. Nature Biotechnology, 30, 1072–1080. 10.1038/nbt.2419. [DOI] [PMC free article] [PubMed] [Google Scholar]
  42. Mielke SP,& Krishnan VV (2009). Characterization of protein secondary structure from NMR chemical shifts. Progress in Nuclear Magnetic Resonance Spectroscopy, 54(3–4), 141–165. 10.1016/j.pnmrs.2008.06.002. [DOI] [PMC free article] [PubMed] [Google Scholar]
  43. Nerli S, McShan AC, & Sgourakis NG (2018). Chemical shift-based methods in NMR structure determination. Progress in Nuclear Magnetic Resonance Spectroscopy, 106–107, 1–25. 10.1016/j.pnmrs.2018.03.002. [DOI] [PMC free article] [PubMed] [Google Scholar]
  44. Nilges M (1993). A calculation strategy for the structure determination of symmetric dimers by 1H NMR. Proteins: Structure, Function, and Bioinformatics, 17(3), 297–309. 10.1002/prot.340170307. [DOI] [PubMed] [Google Scholar]
  45. Nilges M (1997). Ambiguous distance data in the calculation of NMR structures. Folding and Design, 2, S53–S57. 10.1016/S1359-0278(97)00064-3. [DOI] [PubMed] [Google Scholar]
  46. O’Meara MJ, Leaver-Fay A, Tyka MD, Stein A, Houlihan K, DiMaio F, et al. (2015). Combined covalent-electrostatic model of hydrogen bonding improves structure prediction with Rosetta. Journal of Chemical Theory and Computation, 11(2), 609–622. 10.1021/ct500864r. [DOI] [PMC free article] [PubMed] [Google Scholar]
  47. Ovchinnikov S, Park H, Varghese N, Huang P-S, Pavlopoulos GA, Kim DE, et al. (2017). Protein structure determination using metagenome sequence data. Science, 355(6322), 294–298. 10.1126/science.aah4043. [DOI] [PMC free article] [PubMed] [Google Scholar]
  48. Porter JR, Weitzner BD, & Lange OF (2015). A framework to simplify combined sampling strategies in Rosetta. PLoS One, 10(9), e0138220 10.1371/journal.pone.0138220. [DOI] [PMC free article] [PubMed] [Google Scholar]
  49. Qian B, Raman S, Das R, Bradley P, McCoy AJ, Read RJ, et al. (2007). High-resolution structure prediction and the crystallographic phase problem. Nature, 450(7167), 259 10.1038/nature06249. [DOI] [PMC free article] [PubMed] [Google Scholar]
  50. Raman S, Lange OF, Rossi P, Tyka M, Wang X, Aramini J, et al. (2012). NMR structure determination for larger proteins using backbone-only data. Science, 327(5968), 1014–1018. 10.1126/science.1183649. [DOI] [PMC free article] [PubMed] [Google Scholar]
  51. Schmitz C, Vernon R, Otting G, Baker D, & Huber T (2012). Protein structure determination from pseudocontact shifts using ROSETTA. Journal of Molecular Biology, 416(5), 668–677. 10.1016/j-jmb.2011.12.056. [DOI] [PMC free article] [PubMed] [Google Scholar]
  52. Sgourakis NG, Lange OF, DiMaio F, André I, Fitzkee NC, Rossi P, et al. (2011). Determination of the structures of symmetric protein oligomers from NMR chemical shifts and residual dipolar couplings. Journal of the American Chemical Society, 133(16), 6288–6298. 10.1021/ja111318m. [DOI] [PMC free article] [PubMed] [Google Scholar]
  53. Shen Y, & Bax A (2007). Protein backbone chemical shifts predicted from searching a database for torsion angle and sequence homology. Journal of Biomolecular NMR, 38(4), 289–302. 10.1007/s10858-007-9166-6. [DOI] [PubMed] [Google Scholar]
  54. Shen Y, & Bax A (2013). Protein backbone and sidechain torsion angles predicted from NMR chemical shifts using artificial neural networks. Journal of Biomolecular NMR, 56(3), 227–241. 10.1007/s10858-013-9741-y. [DOI] [PMC free article] [PubMed] [Google Scholar]
  55. Shen Y, Lange O, Delaglio F, Rossi P, Aramini JM, Liu G, et al. (2008). Consistent blind protein structure generation from NMR chemical shift data. Proceedings of the National Academy of Sciences of the United States of America, 105(12), 4685–4690. 10.1073/pnas.0800256105. [DOI] [PMC free article] [PubMed] [Google Scholar]
  56. Simons KT, Kooperberg C, Huang E, & Baker D (1997). Assembly of protein tertiary structures from fragments with similar local sequences using simulated annealing and bayesian scoring functions. Journal of Molecular Biology, 268(1), 209–225. 10.1006/jmbi.1997.0959. [DOI] [PubMed] [Google Scholar]
  57. Söding J (2005). Protein homology detection by HMM-HMM comparison. Bioinformatics (Oxford, England), 21(7), 951–960. 10.1093/bioinformatics/bti125. [DOI] [PubMed] [Google Scholar]
  58. Söding J, Biegert A, & Lupas AN (2005). The HHpred interactive server for protein homology detection and structure prediction. Nucleic Acids Research, 33, W244–W248. [Web Server issue]. 10.1093/nar/gki408. [DOI] [PMC free article] [PubMed] [Google Scholar]
  59. Sułkowska JI, Morcos F, Weigt M, Hwa T, & Onuchic JN (2012). Genomics-aided structure prediction. Proceedings of the National Academy of Sciences of the United States of America, 109(26), 10340–10345. 10.1073/pnas.1207864109. [DOI] [PMC free article] [PubMed] [Google Scholar]
  60. Tamaki H, Egawa A, Kido K, Kameda T, Kamiya M, Kikukawa T, et al. (2016). Structure determination of uniformly (13)C, (15)N labeled protein using qualitative distance restraints from MAS solid-state (13)C-NMR observed paramagnetic relaxation enhancement. Journal of Biomolecular NMR, 64(1), 87–101. 10.1007/s10858-015-0010-0. [DOI] [PubMed] [Google Scholar]
  61. Tang Y, Huang YJ, Hopf TA, Sander C, Marks DS, &Montelione GT. (2015). Protein structure determination by combining sparse NMR data with evolutionary couplings. Nature Methods, 12(8), 751–754. 10.1038/nmeth.3455. [DOI] [PMC free article] [PubMed] [Google Scholar]
  62. Thompson J, & Baker D (2011). Incorporation of evolutionary information into Rosetta comparative modeling. Proteins, 79(8), 2380–2388. 10.1002/prot.23046. [DOI] [PMC free article] [PubMed] [Google Scholar]
  63. Thompson JM, Sgourakis NG, Liu G, Rossi P, Tang Y, Mills JL, et al. (2012). Accurate protein structure modeling using sparse NMR data and homologous structure information. Proceedings of the National Academy of Sciences of the United States of America, 109(25), 9875–9880. 10.1073/pnas.1202485109. [DOI] [PMC free article] [PubMed] [Google Scholar]
  64. Tyka MD, Keedy DA, André I, Dimaio F, Song Y, Richardson DC, et al. (2011). Alternate states of proteins revealed by detailed energy landscape mapping. Journal of Molecular Biology, 405(2), 607–618. 10.1016/jjmb.2010.11.008. [DOI] [PMC free article] [PubMed] [Google Scholar]
  65. Ulrich EL, Akutsu H, Doreleijers JF, Harano Y, loannidis YE, Lin J, et al. (2008). BioMagResBank. Nucleic Acids Research, 36, D402–D408. 10.1093/nar/gkm957. [DOI] [PMC free article] [PubMed] [Google Scholar]
  66. Wang C, Bradley P, & Baker D (2007). Protein-protein docking with backbone flexibility. Journal of Molecular Biology, 373(2), 503–519. 10.1016/jjmb.2007.07.050. [DOI] [PubMed] [Google Scholar]
  67. Wunderlich Z, Acton TB, Liu J, Kornhaber G, Everett J, Carter P, et al. (2004). The protein target list of the northeast structural genomics consortium. Proteins: Structure, Function, and Bioinformatics, 56(2), 181–187. 10.1002/prot.20091. [DOI] [PubMed] [Google Scholar]
  68. Würz JM, Kazemi S, Schmidt E, Bagaria A, & Güntert P (2017). NMR-based automated protein structure determination. Archives of Biochemistry and Biophysics, 628, 24–32. 10.1016/j.abb.2017.02.011. [DOI] [PubMed] [Google Scholar]
  69. Yagi H, Pilla KB, Maleckis A, Graham B, Huber T, & Otting G (2013). Three-dimensional protein fold determination from backbone amide pseudocontact shifts generated by lanthanide tags at multiple sites. Structure, 21(6), 883–890. 10.1016/j.str.2013.04.001. [DOI] [PubMed] [Google Scholar]
  70. Zhang Z, Porter J, Tripsianes K, & Lange OF (2014). Robust and highly accurate automatic NOESY assignment and structure determination with Rosetta. Journal of Biomolecular NMR, 59(3), 135–145. https://doi.org/10.1007%2Fs10858-014-9832-4. [DOI] [PubMed] [Google Scholar]

RESOURCES