15 #ifndef INCLUDED_core_scoring_FACTSPotential_hh
16 #define INCLUDED_core_scoring_FACTSPotential_hh
31 #include <basic/datacache/CacheableData.hh>
34 #include <utility/vector1.hh>
35 #include <utility/pointer/owning_ptr.hh>
36 #include <utility/pointer/ReferenceCount.hh>
79 void initialize(
Residue const & rsd);
134 void initialize_number_of_atoms(
Residue const & rsd );
137 void initialize_charge(
Residue const & rsd );
139 void initialize_parameters(
Residue const & rsd );
142 void initialize_constants();
147 const static Size MAXNEIGH = 300;
217 basic::datacache::CacheableDataOP
225 return residue_info_.size();
230 return *residue_info_[i];
235 return *residue_info_[i];
240 return being_packed_[ seqpos ];
247 assert( placeholder_info_[ seqpos ] );
248 return *placeholder_info_[ seqpos ];
253 assert( placeholder_residue_[ seqpos ] );
254 return *placeholder_residue_[ seqpos ];
282 residue_info_.resize( src.
size() );
283 for (
Size i=1; i<= src.
size(); ++i ) {
288 basic::datacache::CacheableDataOP
clone()
const
295 return residue_info_.size();
300 return *residue_info_[i];
305 return *residue_info_[i];
310 initialize( rotamer_set );
314 void initialize( RotamerSet
const & rotamer_set );
337 void setup_for_scoring(
pose::Pose & pose)
const;
339 void setup_for_derivatives(
pose::Pose & pose)
const;
341 void setup_for_packing(
346 void update_residue_for_packing(
pose::Pose & pose,
357 Real evaluate_nonpolar_energy(
Residue const & rsd1,
362 void evaluate_context_change_for_packing(
375 Real evaluate_polar_otf_energy(
Residue const & rsd1,
384 void eval_atom_polar_derivative(
389 bool const exclude_DNA_DNA,
394 void eval_atom_nonpolar_derivative(
399 bool const exclude_DNA_DNA,
404 void get_single_rotamer_born_radii(
411 Real polar_energy_pack_corrector(
425 void res_res_burial_for_scoring(
436 void calculate_GBpair_apprx(
443 void calculate_GBpair_exact(
450 void get_template_born_radii(
455 void build_placeholders(
464 Real GBPair_cut()
const {
return GBpair_cut_; };