Rosetta  2021.16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Attributes | List of all members
core::scoring::AtomNeighbor Class Reference

an atom-atom neighborlist object More...

#include <NeighborList.hh>

Public Member Functions

 AtomNeighbor ()
 AtomNeighbor (int const rsd_in, int const atomno_in, Size const path_dist_in, Real const weight_in, Real const weight_func_in=1)
int rsd () const
int atomno () const
Size path_dist () const
Real weight () const
Real weight_func () const
 fpd More...
Realtemp1 () const
Realtemp2 () const
Realtemp3 () const
Realtemp4 () const

Private Attributes

int rsd_
int atomno_
Size path_dist_
Real weight_
Real weight_func_
Real temp1_
 fpd More...
Real temp2_
Real temp3_
Real temp4_

Detailed Description

an atom-atom neighborlist object

The neighborlist is used during minimization to speed atom-atom energy calculations. It stores a list of potentially interacting neighbor atoms for each atom in the system.

The logic for using the nblist is tricky.

Tentative scheme: turn on nblist scoring at start of minimization

at this point, want pose to be fully scored so perhaps a call to scorefxn(pose) ?? Real const start_score( scorefxn( pose ) );

pose.energies().setup_use_nblist( true );

Real const start_func( func( vars ) ); // nblist setup inside this call

now require that all energy evaluations have an identical set of moving dofs (guaranteed if all energy calculations are inside function evaluations). This is checked inside each scorecaln using the nblist.

when using the nblist, the rsd-rsd neighbor information is not updated. This will probably be a good thing in that it will smooth the energy landscape during minimization...

in a nblist score calculation, we do two things: recover cached energies for non-pair-moved positions, and get atom-atom energies for the pairs that are on the nblist. We don't cache 2d energies for moving positions, since we are not looping over rsd nbr links for that score calculation so the caching would be pretty time- consuming I think.

The nblist has the count_pair weights stored, so no calls to count_pair !!

turn off nblist scoring at the end of minimization. Since we have not been updating rsd-pair energies for moving pairs, and the rsd-rsd nblist is potentially out of data, we reset the neighborgraph at this point to ensure a complete score calculation next time.

Constructor & Destructor Documentation

core::scoring::AtomNeighbor::AtomNeighbor ( )
core::scoring::AtomNeighbor::AtomNeighbor ( int const  rsd_in,
int const  atomno_in,
Size const  path_dist_in,
Real const  weight_in,
Real const  weight_func_in = 1 

Member Function Documentation

int core::scoring::AtomNeighbor::atomno ( ) const
Size core::scoring::AtomNeighbor::path_dist ( ) const

References path_dist_.

int core::scoring::AtomNeighbor::rsd ( ) const
Real& core::scoring::AtomNeighbor::temp1 ( ) const

References temp1_.

Real& core::scoring::AtomNeighbor::temp2 ( ) const

References temp2_.

Real& core::scoring::AtomNeighbor::temp3 ( ) const

References temp3_.

Real& core::scoring::AtomNeighbor::temp4 ( ) const

References temp4_.

Real core::scoring::AtomNeighbor::weight ( ) const
Real core::scoring::AtomNeighbor::weight_func ( ) const


References weight_func_.

Member Data Documentation

int core::scoring::AtomNeighbor::atomno_

Referenced by atomno().

Size core::scoring::AtomNeighbor::path_dist_

Referenced by path_dist().

int core::scoring::AtomNeighbor::rsd_

Referenced by rsd().

Real core::scoring::AtomNeighbor::temp1_


Referenced by temp1().

Real core::scoring::AtomNeighbor::temp2_

Referenced by temp2().

Real core::scoring::AtomNeighbor::temp3_

Referenced by temp3().

Real core::scoring::AtomNeighbor::temp4_

Referenced by temp4().

Real core::scoring::AtomNeighbor::weight_

Referenced by weight().

Real core::scoring::AtomNeighbor::weight_func_

Referenced by weight_func().

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