Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
core::conformation::symmetry::MirrorSymmetricConformation Class Reference

Mirror symmetric conformation contains the same symminfo logic, but also includes special logic for mirror symmetries. More...

#include <MirrorSymmetricConformation.hh>

Inheritance diagram for core::conformation::symmetry::MirrorSymmetricConformation:
Inheritance graph
[legend]

Public Member Functions

 MirrorSymmetricConformation ()
 Default CTOR. More...
 
 MirrorSymmetricConformation (Conformation const &conf, SymmetryInfo const &symm_info)
 Default CTOR. More...
 
Conformationoperator= (Conformation const &src) override
 virtual assignment operator More...
 
void detached_copy (Conformation const &src) override
 copy the other conformation into this, but make sure that the two share no possibly-non-bitwise-const data nor do they refer to each other (as the AtomTree does with its topological observer system). More...
 
ConformationOP clone () const override
 
bool same_type_as_me (Conformation const &other, bool const recurse=true) const override
 determine the type of the ConformationOP More...
 
void set_dof (DOF_ID const &id, Real const setting) override
 DOF. More...
 
void set_torsion (TorsionID const &id, Real const setting) override
 BONDS/TORSIONS. More...
 
void set_jump (int const jump_number, Jump const &new_jump) override
 set a jump More...
 
void set_jump (AtomID const &id, Jump const &new_jump) override
 set a jump More...
 
void set_torsion_angle (AtomID const &atom1, AtomID const &atom2, AtomID const &atom3, AtomID const &atom4, Real const setting, bool const quiet=false) override
 TORSION ANGLES. More...
 
Real get_residue_weight (core::Size resid1, core::Size resid2) const override
 returns a residue-pair weight More...
 
void replace_residue (Size const seqpos, Residue const &new_rsd, bool const orient_backbone) override
 replace residue More...
 
void replace_residue (Size const seqpos, Residue const &new_rsd, utility::vector1< std::pair< std::string, std::string > > const &atom_pairs) override
 
void fold_tree (FoldTree const &fold_tree_in) override
 set the fold_tree More...
 
void recalculate_transforms () override
 
 ~MirrorSymmetricConformation () override
 
void append_residue_by_jump (conformation::Residue const &new_rsd, Size const anchor_residue, std::string const &anchor_atom="", std::string const &root_atom="", bool const start_new_chain=false) override
 Append a new residue by a jump; clones this append to all copies. More...
 
void insert_conformation_by_jump (Conformation const &conf, Size const insert_seqpos, Size const insert_jumppos, Size const anchor_pos, Size const anchor_jump_number=0, std::string const &anchor_atom="", std::string const &root_atom="") override
 Append a new conformation by a jump; clones this append to all copies. More...
 
void detect_disulfides (utility::vector1< Size > const &disulf_one=utility::vector1< core::Size >(), utility::vector1< Size > const &disulf_two=utility::vector1< core::Size >()) override
 Detect existing disulfides from the protein structure using suggestions from the FileData (or not!) More...
 
void update_residue_identities ()
 Updates residue identities in symmetric subunits, ensuring that they are mirrored relative to the ASU in mirrored subunits and identical to the ASU in non-mirrored subunits. More...
 
bool res_is_mirrored (core::Size const seqpos) const
 Is this residue mirrored relative to the asymmetric unit? More...
 
- Public Member Functions inherited from core::conformation::symmetry::SymmetricConformation
 SymmetricConformation ()
 Default CTOR. More...
 
 SymmetricConformation (Conformation const &conf, SymmetryInfo const &symm_info)
 Default CTOR. More...
 
Conformationoperator= (Conformation const &src) override
 copy constructor More...
 
void detached_copy (Conformation const &src) override
 copy the other conformation into this, but make sure that the two share no possibly-non-bitwise-const data nor do they refer to each other (as the AtomTree does with its topological observer system). More...
 
ConformationOP clone () const override
 
bool same_type_as_me (Conformation const &other, bool const recurse=true) const override
 determine the type of the ConformationOP More...
 
virtual SymmetryInfoCOP Symmetry_Info () const
 
virtual SymmetryInfoOP Symmetry_Info ()
 
void set_dof (DOF_ID const &id, Real const setting) override
 DOF. More...
 
void set_secstruct (Size const seqpos, char const setting) override
 set the secondary structure of a sequence position More...
 
void set_torsion (TorsionID const &id, Real const setting) override
 BONDS/TORSIONS. More...
 
void set_jump (int const jump_number, Jump const &new_jump) override
 set a jump More...
 
void set_jump (AtomID const &id, Jump const &new_jump) override
 set a jump More...
 
void set_bond_angle (AtomID const &atom1, AtomID const &atom2, AtomID const &atom3, Real const setting) override
 BOND ANGLES. More...
 
void set_bond_length (AtomID const &atom1, AtomID const &atom2, Real const setting) override
 BOND LENGTHS. More...
 
void set_torsion_angle (AtomID const &atom1, AtomID const &atom2, AtomID const &atom3, AtomID const &atom4, Real const setting, bool const quiet=false) override
 TORSION ANGLES. More...
 
utility::vector1< boolget_residue_mask () const override
 
Real get_residue_weight (core::Size resid1, core::Size resid2) const override
 returns a residue-pair weight More...
 
void replace_residue (Size const seqpos, Residue const &new_rsd, bool const orient_backbone) override
 replace residue More...
 
void replace_residue (Size const seqpos, Residue const &new_rsd, utility::vector1< std::pair< std::string, std::string > > const &atom_pairs) override
 
void fold_tree (FoldTree const &fold_tree_in) override
 set the fold_tree .. update symminfo if jump numbering changed More...
 
FoldTree const & fold_tree () const override
 FoldTree access. More...
 
numeric::HomogeneousTransform
< core::Real
get_transformation (core::Size resid, bool input_is_subunit_id=false)
 Get the transformation controlling resid i. More...
 
virtual PointPosition apply_transformation (PointPosition Xin, core::Size residfrom, core::Size residto, bool rotationonly=false)
 Remap coordinate X from resid i's frame to resid j's frame. More...
 
virtual PointPosition apply_transformation_norecompute (PointPosition Xin, core::Size residfrom, core::Size residto, bool rotationonly=false) const
 Remap coordinate X from resid i's frame to resid j's frame assumes that the transformations are already computed (thus can be const) More...
 
void set_xyz (AtomID const &id, PointPosition const &position) override
 Symmetric set_xyz. More...
 
void batch_set_xyz (utility::vector1< AtomID > const &ids, utility::vector1< PointPosition > const &positions) override
 Symmetric batch_set_xyz. More...
 
void apply_transform_Rx_plus_v (numeric::xyzMatrix< Real > const &R, Vector const &v) override
 
 ~SymmetricConformation () override
 
void append_residue_by_jump (conformation::Residue const &new_rsd, Size const anchor_residue, std::string const &anchor_atom="", std::string const &root_atom="", bool const start_new_chain=false) override
 Append a new residue by a jump; clones this append to all copies. More...
 
void append_polymer_residue_after_seqpos (conformation::Residue const &new_rsd, Size const seqpos, bool const build_ideal_geometry=true) override
 Apped a new residue after a given position in the pose. More...
 
void safely_append_polymer_residue_after_seqpos (conformation::Residue const &new_rsd, Size const seqpos, bool const build_ideal_geometry=true) override
 glues to seqpos and perhaps also seqpos+1, removes termini variants if necessary More...
 
void prepend_polymer_residue_before_seqpos (conformation::Residue const &new_rsd, Size const seqpos, bool const build_ideal_geometry=true) override
 Prepend a new residue after a given position in the pose. More...
 
void safely_prepend_polymer_residue_before_seqpos (conformation::Residue const &new_rsd, Size const seqpos, bool const build_ideal_geometry=true) override
 glues to seqpos and perhaps also seqpos-1, removes termini variants if necessary More...
 
void insert_conformation_by_jump (Conformation const &conf, Size const insert_seqpos, Size const insert_jumppos, Size const anchor_pos, Size const anchor_jump_number=0, std::string const &anchor_atom="", std::string const &root_atom="") override
 Append a new conformation by a jump; clones this append to all copies. More...
 
void detect_disulfides (utility::vector1< Size > const &disulf_one=utility::vector1< core::Size >(), utility::vector1< Size > const &disulf_two=utility::vector1< core::Size >()) override
 Detect existing disulfides from the protein structure. More...
 
void declare_chemical_bond (Size const seqpos1, std::string const &atom_name1, Size const seqpos2, std::string const &atom_name2) override
 Declare that a chemical bond exists between two residues. More...
 
void update_noncanonical_connection (Size lower_seqpos, Size lr_conn_id, Size upper_seqpos, Size ur_conn_id) override
 Update the connection status between the lower_seqpos residue's lr_conn_id connection ID and the upper_seqpos residue's ur_conn_id connection ID, in addition to ALL clones. More...
 
- Public Member Functions inherited from core::conformation::Conformation
iterator begin () noexcept
 
const_iterator begin () const noexcept
 
iterator end () noexcept
 
const_iterator end () const noexcept
 
 Conformation ()
 constructor More...
 
 ~Conformation () override
 default destructor More...
 
 Conformation (Conformation const &src)
 copy constructor More...
 
void clear ()
 clear data More...
 
ConformationCOP get_self_ptr () const
 self pointers More...
 
ConformationOP get_self_ptr ()
 
ConformationCAP get_self_weak_ptr () const
 
ConformationAP get_self_weak_ptr ()
 
void debug_residue_torsions (bool verbose=false) const
 debugging More...
 
void show_residue_connections () const
 Show residue connections for debugging purposes. More...
 
void show_residue_connections (std::ostream &os) const
 Show residue connections for debugging purposes. More...
 
bool sequence_matches (Conformation const &other) const
 do the names of all residues in this and src match? More...
 
Size size () const
 Returns the number of residues in the Conformation. More...
 
bool empty () const
 Returns true if this conformation does not have any residues. More...
 
core::chemical::ResidueTypeSetCOP residue_type_set_for_conf (core::chemical::TypeSetMode mode=core::chemical::INVALID_t) const
 Return the appropriate ResidueTypeSet for the Conformation If mode is INVALID_t (the default), then return the typeset for the majority mode of the Conformation. Note: This may be a GlobalResidueTypeSet, if the Conformation doesn't have a specific PoseResidueTypeSet. More...
 
core::chemical::PoseResidueTypeSetOP modifiable_residue_type_set_for_conf (core::chemical::TypeSetMode mode=core::chemical::INVALID_t) const
 Return a clone of the Conformation-specific PoseResidueTypeSet (note this is const) Modifications to this RTS won't be seen in the Conformation unless you pass it back in with reset_residue_type_set_for_conf() Should always return a non-null pointer: will create a new PoseResidueTypeSet if the Conformation doesn't have it already. More...
 
void reset_residue_type_set_for_conf (core::chemical::PoseResidueTypeSetCOP new_set, core::chemical::TypeSetMode mode=core::chemical::INVALID_t)
 Reset the Conformation-specific PoseResidueTypeSet for the appropriate mode to the given RTS. (If the given mode is INVALID_t (the recommended default) the mode will be auto-determined from the RTS.) More...
 
core::chemical::TypeSetMode residue_typeset_mode (bool majority=true) const
 What mode of ResidueTypeSet is this Conformation made of? If majority is true, it will be the mode of the ResidueTypes for most residues in the pose. If majority is false, core::chemical::MIXED_t will be returned for conformations with ResidueTypes of multiple modes. More...
 
bool is_fullatom () const
 convenience test for residue_type_set mode More...
 
bool is_centroid () const
 convenience test for residue_type_set mode More...
 
bool is_mixed_mode () const
 convenience test for residue_type_set mode More...
 
bool is_membrane () const
 convenience test for if the conformation contains information for a membrane protein More...
 
bool contains_carbohydrate_residues () const
 Return true if this conformation contains any carbohydrate residues. More...
 
void contains_carbohydrate_residues (bool setting)
 Set whether this conformation contains any carbohydrate residues. More...
 
Size chain_end (Size chain) const
 Returns the position number of the last residue in chain number <chain> More...
 
Size chain_begin (Size chain) const
 Returns the position number of the first residue in chain number <chain> More...
 
Size num_chains () const
 Returns the number of chains. More...
 
utility::vector1< Size > const & chain_endings () const
 Returns the list of (chain number) chain endings. More...
 
virtual void chain_endings (utility::vector1< Size > const &endings)
 Sets the list of (chain number) chain endings. More...
 
virtual void insert_chain_ending (Size const seqpos)
 Marks <seqpos> as the end of a new (chain number) chain. More...
 
virtual void delete_chain_ending (Size const seqpos)
 Deletes <seqpos> from the list of (chain number) chain endings. More...
 
virtual void reset_chain_endings ()
 Resets chain data so that the Conformation is marked as a single (chain number) chain. More...
 
virtual void chains_from_termini ()
 Rederive the (chain number) chains from the termini/polymer status. More...
 
char secstruct (Size seqpos) const
 Returns the secondary structure the position <seqpos> More...
 
void set_membrane_info (membrane::MembraneInfoOP mem_info)
 Setup a Membrane Info object in Conformation - pos & topology. More...
 
membrane::MembraneInfoOP membrane_info ()
 Returns the const MembraneInfo object in conformation. More...
 
membrane::MembraneInfoOP membrane_info () const
 Returns the const MembraneInfo object in conformation. More...
 
void update_membrane_position (Vector center, Vector normal)
 Update Normal, Center in the Membrane. More...
 
void check_valid_membrane () const
 Check that a new membrane position is valid. More...
 
carbohydrates::GlycanTreeSetCOP glycan_tree_set () const
 Get the glycan tree set. Nullptr if not present. More...
 
void setup_glycan_trees ()
 Setup glycan trees and attach length observer. More...
 
void clear_glycan_trees ()
 Safely detaches any tree observers and clears it to null. More...
 
AtomTree const & atom_tree () const
 Returns the conformation's AtomTree. More...
 
chemical::AA const & aa (Size seqpos) const
 Returns the AA enum for position <seqpos> More...
 
std::string annotated_sequence (bool show_all_variants) const
 Returns the variant-tagged string representing the residue types that make up a conformation; e.g. M[MET:N-Terminus-Variant]CDH[HIS_D]LLR[ARG:C-Terminus-Variant]. More...
 
Residue const & residue (Size seqpos) const
 access one of the residues More...
 
basic::datacache::BasicDataCache
const & 
residue_data (Size seqpos) const
 Read access to the datacache array stored inside a Residue object. Also accessible to the user by calling residue( seqpos ).data_ptr() directly. More...
 
basic::datacache::BasicDataCache & residue_data (Size seqpos)
 Write access to the datacache array stored inside a Residue object. Although the Conformation very deliberately does not grant users write access to the whole of its Residue objects, it will grant users access to the Residue objects data cache. So while the coordinates and dihedrals of the Residue will not be changable e.g. during the setup-for-scoring phase, data derived from those coordinates and dihedrals and which ends up living in the Residue will be changable. More...
 
ResidueCOP residue_cop (Size seqpos) const
 access one of the residues, using COP More...
 
chemical::ResidueType const & residue_type (Size seqpos) const
 access one of the residue's types – avoids coord/torsion update More...
 
chemical::ResidueTypeCOP residue_type_ptr (Size seqpos) const
 access one of the residue's types as a COP – avoids coord/torsion update More...
 
ResidueCOPs const_residues () const
 Inefficient – constructs copy of residues_. More...
 
void insert_residue_by_jump (Residue const &new_rsd_in, Size seqpos, Size anchor_pos, std::string const &anchor_atom="", std::string const &root_atom="", bool new_chain=false)
 Insert a new residue by jump. If new_chain is "true", then seqpos must be the last residue of one chain (i.e. residue(seqpos).chain() != residue(seqpos+1).chain() ) More...
 
void insert_residue_by_bond (Residue const &new_rsd_in, Size const seqpos, Size anchor_pos, bool const build_ideal_geometry=false, std::string const &anchor_atom="", std::string const &root_atom="", bool new_chain=false, bool const lookup_bond_length=false)
 Insert a new residue by jump. If new_chain is "true", then seqpos must be the last residue of one chain (i.e. residue(seqpos).chain() != residue(seqpos+1).chain() ) More...
 
void append_residue_by_bond (conformation::Residue const &new_rsd, bool const build_ideal_geometry=false, int connection_index=0, Size anchor_residue=0, int anchor_connection_index=0, bool const start_new_chain=false, bool const lookup_bond_length=false)
 Append a new residue by a bond. More...
 
virtual void delete_polymer_residue (Size const seqpos)
 Delete polymer residue at the given sequence position. More...
 
virtual void delete_residue_slow (Size const seqpos)
 Slow method that relies on FoldTree::delete_seqpos, rebuilds atomtree, can handle jumps/root residue. More...
 
virtual void delete_residue_range_slow (Size const range_begin, Size const range_end)
 Slow method that relies on FoldTree::delete_seqpos, rebuilds atomtree, can handle jumps/root residue. More...
 
void detect_bonds ()
 
void detect_pseudobonds ()
 
virtual void sever_chemical_bond (Size seqpos1, Size res1_resconn_index, Size seqpos2, Size res2_resconn_index)
 Sever the chemical bond between two residues by stating that the connections for those residues are "incomplete" (i.e. in a state where these residues are not ready to be scored). More...
 
void rebuild_polymer_bond_dependent_atoms_this_residue_only (Size const seqpos)
 Rebuilds the atoms that are dependent on polymer bonds for the specified residue only. More...
 
virtual void rebuild_polymer_bond_dependent_atoms (Size const seqpos)
 Rebuild the atoms ( like HN(seqpos), OC(seqpos+1) ) that are dependent on the polymer bond between seqpos and seqpos+1. More...
 
void rebuild_residue_connection_dependent_atoms (Size seqpos, Size connid)
 
AtomID inter_residue_connection_partner (Size seqpos, int connection_index) const
 This returns the AtomID of the atom in the other residue to which the "connection_index"-th connection of residue seqpos is connected to. More...
 
bool is_bonded (core::id::AtomID const &atomid1, core::id::AtomID const &atomid2, bool virt=false, bool skip_canonical_and_solvent=false) const
 Returns a boolean for two atomIDs to be bonded. More...
 
utility::vector1
< core::id::AtomID
bonded_neighbor_all_res (core::id::AtomID const &atomid, bool virt=false, bool skip_canonical_and_solvent=false, bool intra_res=true, bool inter_res=true) const
 Get all atoms bonded to another. More...
 
virtual void fill_missing_atoms (id::AtomID_Mask missing)
 
bool atom_is_backbone_norefold (Size pos, Size atomno) const
 returns true if atom is part of backbone. More...
 
virtual void set_stub_transform (id::StubID const &stub_id1, id::StubID const &stub_id2, kinematics::RT const &target_rt)
 Set the transform between two stubs – only works if there's a jump between the two sets of stubatoms. More...
 
kinematics::RT get_stub_transform (id::StubID const &stub_id1, id::StubID const &stub_id2) const
 get the transform between two stubs More...
 
void set_jump_atom_stub_id (id::StubID const &id)
 
kinematics::Stub stub_from_id (id::StubID const &id) const
 
kinematics::Stub upstream_jump_stub (int jump_number) const
 The upstream and downstream Stubs are the coordinate frames between which this jump is transforming. More...
 
kinematics::Stub downstream_jump_stub (int jump_number) const
 The upstream and downstream Stubs are the coordinate frames between which this jump is transforming. More...
 
virtual void set_polymeric_connection (Size res_id_lower, Size res_id_upper)
 identify polymeric connections More...
 
void set_noncanonical_connection (Size res_id_lower, Size lr_conn_id, Size res_id_upper, Size ur_conn_id)
 Create an arbitrary covalent connection between two residues. More...
 
void update_polymeric_connection (Size lower_seqpos, bool update_connection_dep_atoms=false)
 Update the polymer connection status between lower_seqpos and lower_seqpos+1 based on chainID's and termini. If update_connection_dep_atoms is true, positions of atoms dependent on the polymer connection are updated. More...
 
virtual void fix_disulfides (utility::vector1< std::pair< Size, Size > > const &disulf_bonds)
 Assigns disulfide bonds based on a pre-determined list. More...
 
void create_new_parameters_set ()
 Create a new (empty) ParametersSet object and add its owning pointer to the current Conformation object. More...
 
void add_parameters_set (ParametersSetOP newset)
 Add a (predefined) ParametersSet object (via its owning pointer) to the current Conformation object. More...
 
core::Size n_parameters_sets () const
 Get the number of parameters sets defined for this Conformation. More...
 
void clear_parameters_set_list ()
 Delete the list of ParametersSetOP objects. More...
 
ParametersSetOP parameters_set (core::Size const index)
 Access one of the ParametersSets objects linked to this Conformation. More...
 
ParametersSetCOP parameters_set (core::Size const index) const
 Const access to one of the ParametersSets objects linked to this Conformation. More...
 
void copy_segment (Size size, Conformation const &src, Size begin, Size src_begin)
 copy a stretch of coordinates/torsions from another Conformation More...
 
virtual void insert_fragment (id::StubID const &instub_id, FragRT const &outstub_transforms, FragXYZ const &frag_xyz)
 
Real dof (DOF_ID const &id) const
 Returns the AtomTree degree of freedom (DOF) <id> More...
 
Real torsion (TorsionID const &id) const
 Return the torsion angle OR rigid-body offset for <id> More...
 
Real torsion_angle (AtomID const &atom1, AtomID const &atom2, AtomID const &atom3, AtomID const &atom4) const
 Returns the torsion angle defined by <atom[1-4]> in Radians. More...
 
Real bond_angle (AtomID const &atom1, AtomID const &atom2, AtomID const &atom3) const
 Returns the bond angle defined by <atom[1-3]> through the AtomTree. More...
 
Real bond_length (AtomID const &atom1, AtomID const &atom2) const
 Returns the bond length between <atom1> and <atom2> through the AtomTree. More...
 
core::Vector bond_orientation (AtomID const &atom1, AtomID const &atom2) const
 Return the normalized vector of the bond between these two atoms. More...
 
core::Vector bond_orientation (core::id::TorsionID const torsion) const
 Return the normalized vector of the bond about which this torsion angle twists. More...
 
const Jumpjump (int jump_number) const
 Returns the Jump with jump number <jump_number> More...
 
const Jumpjump (AtomID const &id) const
 access a jump More...
 
PointPosition const & xyz (AtomID const &id) const
 access xyz coordinates of an atom More...
 
virtual void batch_get_xyz (utility::vector1< AtomID > const &id, utility::vector1< PointPosition > &position) const
 
virtual void insert_ideal_geometry_at_polymer_bond (Size const seqpos)
 
virtual void insert_ideal_geometry_at_residue_connection (Size const pos1, Size const connid1)
 
void update_actcoords ()
 
void update_actcoord (Size resid)
 
void update_orbital_coords (Residue &rsd) const
 
void update_orbital_coords (Size resid)
 
id::DOF_ID dof_id_from_atom_ids (id::AtomID const &id1, id::AtomID const &id2, id::AtomID const &id3, id::AtomID const &id4) const
 Get the DOF_ID corresponding to the torsion angle defined by these four atoms. More...
 
id::DOF_ID dof_id_from_atom_ids (id::AtomID const &id1, id::AtomID const &id2, id::AtomID const &id3) const
 Get the DOF_ID corresponding to the bond angle defined by these three atoms. More...
 
id::DOF_ID dof_id_from_atom_ids (id::AtomID const &id1, id::AtomID const &id2) const
 Get the DOF_ID corresponding to the bond distance defined by these two atoms. More...
 
id::DOF_ID dof_id_from_atom_ids (utility::vector1< id::AtomID > const &ids) const
 Get the DOF_ID defined by these atoms. More...
 
DOF_ID dof_id_from_torsion_id (TorsionID const &id) const
 Get the DOF_ID corresponding to this TorsionID. More...
 
id::AtomID jump_atom_id (int jump_number) const
 
bool get_torsion_angle_atom_ids (TorsionID const &tor_id, AtomID &id1, AtomID &id2, AtomID &id3, AtomID &id4) const
 get four atoms which defined this torsion More...
 
bool get_jump_atom_ids (core::Size jump_number, AtomID &upstream_id, AtomID &downstream_id) const
 get two atoms connect by jump More...
 
bool atoms_are_bonded (AtomID const &id1, AtomID const &id2) const
 Helper method to determine whether two atoms have a chemical bond linking them. More...
 
void update_domain_map (DomainMap &domain_map) const
 Generate a domain_map from the current dof/xyz moved data. More...
 
bool structure_moved () const
 has the structure moved since the last call to reset_move_data or reset_structure_moved More...
 
void reset_structure_moved () const
 reset the structure_moved_ bool More...
 
virtual void reset_move_data ()
 forget all the structure modifications More...
 
void align_virtual_atoms_in_carbohydrate_residue (uint const sequence_position)
 Set coordinates of virtual atoms (used as angle reference points) within a saccharide residue of this conformation. More...
 
virtual void push_passport (core::environment::DofPassportCOP)
 
virtual
core::environment::DofPassportCOP 
pop_passport ()
 
virtual bool has_passport () const
 
virtual bool is_protected () const
 
template<typename MemFn , typename Ptr >
utility::signals::Link attach_connection_obs (MemFn fn, Ptr ptr) const
 attach ConnectionEvent observer function More...
 
template<typename MemFn , typename Ptr >
bool detach_connection_obs (MemFn fn, Ptr ptr) const
 detach ConnectionEvent observer function More...
 
template<typename MemFn , typename Ptr >
utility::signals::Link attach_general_obs (MemFn fn, Ptr ptr) const
 attach GeneralEvent observer function More...
 
template<typename MemFn , typename Ptr >
bool detach_general_obs (MemFn fn, Ptr ptr) const
 detach GeneralEvent observer function More...
 
template<typename MemFn , typename Ptr >
utility::signals::Link attach_identity_obs (MemFn fn, Ptr ptr) const
 attach IdentityEvent observer function More...
 
template<typename MemFn , typename Ptr >
bool detach_identity_obs (MemFn fn, Ptr ptr) const
 detach IdentityEvent observer function More...
 
template<typename MemFn , typename Ptr >
utility::signals::Link attach_length_obs (MemFn fn, Ptr ptr) const
 attach LengthEvent observer function More...
 
template<typename MemFn , typename Ptr >
bool detach_length_obs (MemFn fn, Ptr ptr) const
 detach LengthEvent observer function More...
 
template<typename MemFn , typename Ptr >
utility::signals::Link attach_xyz_obs (MemFn fn, Ptr ptr) const
 attach XYZEvent observer function More...
 
template<typename MemFn , typename Ptr >
bool detach_xyz_obs (MemFn fn, Ptr ptr) const
 detach XYZEvent observer function More...
 
void clear_observers ()
 clear all observers More...
 
void receive_observers_from (Conformation const &src)
 fire a ConnectionEvent::TRANSFER to transfer observers from some source Conformation More...
 
void debug_pause (bool flag) const
 wait for stdin after sending a GeneralEvent signal More...
 
bool debug_pause () const
 waiting for stdin after sending a GeneralEvent signal? More...
 
void buffer_signals ()
 block signals from being sent and buffer them to be sent after unblocking More...
 
void block_signals ()
 block signals from being sent More...
 
void unblock_signals ()
 allow signals to be sent More...
 
bool buffering_signals () const
 are signals being blocked and buffered? More...
 
bool blocking_signals () const
 are signals being blocked? More...
 
bool backbone_torsion_angle_atoms (TorsionID const &id, AtomID &id1, AtomID &id2, AtomID &id3, AtomID &id4) const
 get four backbone atoms which define this backbone torsion More...
 

Private Member Functions

void flip_chirality (ResidueOP &new_rsd)
 Helper function to flip the chirality of a residue type. More...
 
void update_njumps_nres ()
 helper functions called when #jumps or #residues changes, updating internal data More...
 
void synch_mirror_jumps_with_atomtree ()
 helper function ensures pose jumps are in synch with 'jump_is_mirrored_' More...
 

Private Attributes

utility::vector1< boolres_is_mirrored_
 keep track of which jumps and residues are mirrored w.r.t. master More...
 
utility::vector1< std::pair
< bool, bool > > 
jump_is_mirrored_
 

Additional Inherited Members

- Public Types inherited from core::conformation::Conformation
typedef kinematics::Jump Jump
 
typedef kinematics::FoldTree FoldTree
 
typedef kinematics::FoldTreeOP FoldTreeOP
 
typedef kinematics::AtomTree AtomTree
 
typedef kinematics::AtomTreeOP AtomTreeOP
 
typedef id::AtomID AtomID
 
typedef
core::conformation::parametric::ParametersSet 
ParametersSet
 
typedef
core::conformation::parametric::ParametersSetOP 
ParametersSetOP
 
typedef
core::conformation::parametric::ParametersSetCOP 
ParametersSetCOP
 
typedef
core::conformation::parametric::Parameters 
Parameters
 
typedef
core::conformation::parametric::ParametersOP 
ParametersOP
 
typedef
core::conformation::parametric::ParametersOP 
ParametersCOP
 
typedef id::AtomID_Mask AtomID_Mask
 
typedef id::DOF_ID DOF_ID
 
typedef id::TorsionID TorsionID
 
typedef kinematics::DomainMap DomainMap
 
typedef
core::conformation::signals::ConnectionEvent 
ConnectionEvent
 
typedef
core::conformation::signals::GeneralEvent 
GeneralEvent
 
typedef
core::conformation::signals::IdentityEvent 
IdentityEvent
 
typedef
core::conformation::signals::LengthEvent 
LengthEvent
 
typedef
core::conformation::signals::XYZEvent 
XYZEvent
 
typedef std::map< id::AtomID,
Vector
FragXYZ
 
typedef std::map< id::StubID,
kinematics::RT
FragRT
 
typedef Size size_type
 
typedef ptrdiff_t difference_type
 
typedef
boost::indirect_iterator
< ResidueOPs::const_iterator,
Residue const > 
const_iterator
 
typedef
boost::indirect_iterator
< ResidueOPs::iterator,
Residue const > 
iterator
 
- Protected Member Functions inherited from core::conformation::symmetry::SymmetricConformation
void clear_Tsymm ()
 
void invert_Tsymm (char sub, core::Size subunit)
 
core::Size get_upstream_vrt (core::Size seqpos) const
 
- Protected Member Functions inherited from core::conformation::Conformation
Residue const & const_residue_ (Size seqpos) const
 Returns a constant residue reference without triggering coordinate/torsion update. More...
 
void force_update_residue_torsions () const
 Force updating of residue torsions. More...
 
void force_update_residue_coordinates () const
 Force updating of residue coordinates. More...
 

Detailed Description

Mirror symmetric conformation contains the same symminfo logic, but also includes special logic for mirror symmetries.

Constructor & Destructor Documentation

core::conformation::symmetry::MirrorSymmetricConformation::MirrorSymmetricConformation ( )

Default CTOR.

References jump_is_mirrored_, and res_is_mirrored_.

Referenced by clone().

core::conformation::symmetry::MirrorSymmetricConformation::MirrorSymmetricConformation ( Conformation const &  conf,
SymmetryInfo const &  symm_info 
)

Default CTOR.

References update_njumps_nres().

core::conformation::symmetry::MirrorSymmetricConformation::~MirrorSymmetricConformation ( )
override

Member Function Documentation

void core::conformation::symmetry::MirrorSymmetricConformation::append_residue_by_jump ( conformation::Residue const &  new_rsd,
Size const  anchor_residue,
std::string const &  anchor_atom = "",
std::string const &  root_atom = "",
bool const  start_new_chain = false 
)
overridevirtual

Append a new residue by a jump; clones this append to all copies.

Reimplemented from core::conformation::Conformation.

References core::conformation::symmetry::SymmetricConformation::append_residue_by_jump(), update_njumps_nres(), and update_residue_identities().

ConformationOP core::conformation::symmetry::MirrorSymmetricConformation::clone ( ) const
overridevirtual

make a copy of this conformation( allocate actual memory for it )

Reimplemented from core::conformation::Conformation.

References MirrorSymmetricConformation().

void core::conformation::symmetry::MirrorSymmetricConformation::detached_copy ( Conformation const &  src)
overridevirtual

copy the other conformation into this, but make sure that the two share no possibly-non-bitwise-const data nor do they refer to each other (as the AtomTree does with its topological observer system).

Reimplemented from core::conformation::Conformation.

References core::conformation::symmetry::SymmetricConformation::detached_copy(), jump_is_mirrored_, and res_is_mirrored_.

void core::conformation::symmetry::MirrorSymmetricConformation::detect_disulfides ( utility::vector1< Size > const &  disulf_one = utility::vector1< core::Size >(),
utility::vector1< Size > const &  disulf_two = utility::vector1< core::Size >() 
)
overridevirtual

Detect existing disulfides from the protein structure using suggestions from the FileData (or not!)

For full atom confomations, looks at SG-SG distance. If the SG-SG are about 2.02 A apart, calls it a disulfide bond. For centroid and other conformations, the less accurate CB-CB distance is used instead. In this case a CB-CB distance of 3.72 A is optimal.

Note
Assumes full atom

Reimplemented from core::conformation::Conformation.

References core::conformation::symmetry::SymmetricConformation::detect_disulfides().

void core::conformation::symmetry::MirrorSymmetricConformation::flip_chirality ( ResidueOP new_rsd)
private

Helper function to flip the chirality of a residue type.

Assumes that the coordinates are already correct for the flipped type (i.e. this function does not alter atom positions – only the ResidueType identity).

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu)

References core::conformation::Conformation::residue_type_set_for_conf().

Referenced by replace_residue().

void core::conformation::symmetry::MirrorSymmetricConformation::fold_tree ( FoldTree const &  fold_tree_in)
overridevirtual
core::Real core::conformation::symmetry::MirrorSymmetricConformation::get_residue_weight ( core::Size  ,
core::Size   
) const
overridevirtual

returns a residue-pair weight

Returns a weight to be used when scoring this residue.

Reimplemented from core::conformation::Conformation.

References core::conformation::symmetry::SymmetricConformation::Symmetry_Info().

void core::conformation::symmetry::MirrorSymmetricConformation::insert_conformation_by_jump ( Conformation const &  conf,
Size const  insert_seqpos,
Size const  insert_jumppos,
Size const  anchor_pos,
Size const  anchor_jump_number = 0,
std::string const &  anchor_atom = "",
std::string const &  root_atom = "" 
)
overridevirtual
Conformation & core::conformation::symmetry::MirrorSymmetricConformation::operator= ( Conformation const &  src)
overridevirtual

virtual assignment operator

Reimplemented from core::conformation::Conformation.

void core::conformation::symmetry::MirrorSymmetricConformation::recalculate_transforms ( )
overridevirtual
void core::conformation::symmetry::MirrorSymmetricConformation::replace_residue ( Size const  seqpos,
Residue const &  new_rsd_in,
bool const  orient_backbone 
)
overridevirtual
void core::conformation::symmetry::MirrorSymmetricConformation::replace_residue ( Size const  seqpos,
Residue const &  new_rsd_in,
utility::vector1< std::pair< std::string, std::string > > const &  atom_pairs 
)
overridevirtual
bool core::conformation::symmetry::MirrorSymmetricConformation::res_is_mirrored ( core::Size const  seqpos) const

Is this residue mirrored relative to the asymmetric unit?

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References res_is_mirrored_.

bool core::conformation::symmetry::MirrorSymmetricConformation::same_type_as_me ( Conformation const &  other,
bool const  recurse = true 
) const
overridevirtual

determine the type of the ConformationOP

Reimplemented from core::conformation::Conformation.

References core::conformation::Conformation::same_type_as_me().

void core::conformation::symmetry::MirrorSymmetricConformation::set_dof ( DOF_ID const &  id,
Real const  setting 
)
overridevirtual
void core::conformation::symmetry::MirrorSymmetricConformation::set_jump ( int const  jump_number,
kinematics::Jump const &  new_jump 
)
overridevirtual
void core::conformation::symmetry::MirrorSymmetricConformation::set_jump ( id::AtomID const &  id,
kinematics::Jump const &  new_jump 
)
overridevirtual
void core::conformation::symmetry::MirrorSymmetricConformation::set_torsion ( id::TorsionID const &  id,
Real const  setting 
)
overridevirtual
void core::conformation::symmetry::MirrorSymmetricConformation::set_torsion_angle ( AtomID const &  atom1,
AtomID const &  atom2,
AtomID const &  atom3,
AtomID const &  atom4,
Real const  setting,
bool const  quiet = false 
)
overridevirtual
void core::conformation::symmetry::MirrorSymmetricConformation::synch_mirror_jumps_with_atomtree ( )
private
void core::conformation::symmetry::MirrorSymmetricConformation::update_njumps_nres ( )
private

helper functions called when #jumps or #residues changes, updating internal data

helper functions called when #jumps or #residues changes, updating internal data just re-traverses the fold tree, if this needs to be made faster (why would it though?) this could use logic similar to SymmetryInfo::update_nmonomer_jumps()

References core::conformation::symmetry::calculate_inverting_virtuals(), core::conformation::Conformation::fold_tree(), jump_is_mirrored_, res_is_mirrored_, core::conformation::symmetry::SymmetricConformation::Symmetry_Info(), and synch_mirror_jumps_with_atomtree().

Referenced by append_residue_by_jump(), fold_tree(), and MirrorSymmetricConformation().

void core::conformation::symmetry::MirrorSymmetricConformation::update_residue_identities ( )

Updates residue identities in symmetric subunits, ensuring that they are mirrored relative to the ASU in mirrored subunits and identical to the ASU in non-mirrored subunits.

Assumes that the residue identities and variants (aside from D/L variants) already match. That is, if I have ASN at position 5 in my asymmetric unit, I either have ASN or DASN at the equivalent position in each symmetry copy. Safe to call repeatedly.

Author
Vikram K. Mulligan (vmull.nosp@m.ig@u.nosp@m.w.edu).

References replace_residue(), core::conformation::Conformation::residue(), and core::conformation::symmetry::SymmetricConformation::Symmetry_Info().

Referenced by append_residue_by_jump().

Member Data Documentation

utility::vector1< std::pair< bool,bool > > core::conformation::symmetry::MirrorSymmetricConformation::jump_is_mirrored_
private
utility::vector1< bool > core::conformation::symmetry::MirrorSymmetricConformation::res_is_mirrored_
private

keep track of which jumps and residues are mirrored w.r.t. master

Referenced by detached_copy(), MirrorSymmetricConformation(), recalculate_transforms(), replace_residue(), res_is_mirrored(), and update_njumps_nres().


The documentation for this class was generated from the following files: