Rosetta
Classes | Namespaces | Typedefs | Functions | Variables
SmotifPairRmsdCalculatorGPU.CC File Reference
#include <protocols/sewing/BundlePairRmsdWorkUnit.hh>
#include <basic/gpu/GPU.hh>
#include <basic/gpu/Timer.hh>
#include <core/pose/util.hh>
#include <protocols/wum/WorkUnitList.hh>
#include <protocols/wum/WorkUnitManager.hh>
#include <protocols/wum/MPI_WorkUnitManager_Slave.hh>
#include <basic/options/keys/in.OptionKeys.gen.hh>
#include <basic/options/keys/wum.OptionKeys.gen.hh>
#include <basic/options/keys/inout.OptionKeys.gen.hh>
#include <basic/options/option.hh>
#include <basic/database/schema_generator/PrimaryKey.hh>
#include <basic/database/schema_generator/ForeignKey.hh>
#include <basic/database/schema_generator/Column.hh>
#include <basic/database/schema_generator/Schema.hh>
#include <basic/database/sql_utils.hh>
#include <basic/Tracer.hh>
#include <cstdio>
#include <devel/init.hh>
#include <numeric/xyzVector.hh>
#include <numeric/model_quality/rms.hh>
#include <ObjexxFCL/FArray1D.hh>
#include <ObjexxFCL/FArray2D.hh>
#include <core/import_pose/import_pose.hh>
#include <core/util/SwitchResidueTypeSet.hh>
#include <utility/sql_database/DatabaseSessionManager.hh>
#include <utility/string_util.hh>

Classes

struct  gpu_node_block_ptrs
 
struct  node_data
 
struct  calculation_data_for_one_block_pair
 

Namespaces

 BundlePairRmsdCalculator
 

Typedefs

typedef std::map< core::Size, utility::vector1< numeric::xyzVector< core::Real > > > helix_coord_map
 
typedef std::map< core::Size, utility::vector1< core::Size > > bundle_helices_map
 
typedef std::map< core::Size, bool > helix_flipped_map
 

Functions

std::vector< std::string > gpu_rmsd_programs ()
 
void load_coordinates_from_database (utility::sql_database::sessionOP db_session, helix_coord_map &helix_coords, bundle_helices_map &bundle_helices, helix_flipped_map &helix_flipped)
 
void ship_coordinates_to_gpu (basic::gpu::GPU &gpu, helix_coord_map const &helix_coords, bundle_helices_map const &bundle_helices, utility::vector1< node_data > &ndat, core::Size blockid, gpu_node_block_ptrs &block_ptrs)
 
void compute_rms_and_clash_score_for_block_pair (basic::gpu::GPU &gpu, utility::vector1< node_data > const &ndat, core::Size const block1, core::Size const block2, gpu_node_block_ptrs const &block1ptrs, gpu_node_block_ptrs const &block2ptrs, float maximum_rmsd_tolerance, float minimum_square_distance_tolerance, calculation_data_for_one_block_pair &bpd)
 
void retrieve_rms_and_clash_scores_from_gpu (basic::gpu::GPU &gpu, calculation_data_for_one_block_pair &bpd)
 
void compare_gpu_result_against_cpu (helix_coord_map &helix_coords, bundle_helices_map &bundle_helices, helix_flipped_map &helix_flipped, utility::vector1< node_data > const &ndat, core::Size block1, core::Size block2, float maximum_rmsd_tolerance, float minimum_square_distance_tolerance, calculation_data_for_one_block_pair const &bpd)
 
void feed_rms_and_clash_scores_to_database (utility::sql_database::sessionOP db_session, utility::vector1< node_data > const &ndat, core::Size block1, core::Size block2, calculation_data_for_one_block_pair const &bpd)
 
int main (int argc, char *argv[])
 

Variables

static basic::Tracer TR ("BundlePairRmsdCalculator")
 
static int BLOCK_SIZE = 512
 
basic::options::IntegerOptionKey const BundlePairRmsdCalculator::total_fractions ("total_fractions")
 
basic::options::IntegerOptionKey const BundlePairRmsdCalculator::fraction ("fraction")
 
basic::options::IntegerOptionKey const BundlePairRmsdCalculator::subfraction_size ("subfraction_size")
 

Typedef Documentation

◆ bundle_helices_map

◆ helix_coord_map

◆ helix_flipped_map

typedef std::map<core::Size, bool > helix_flipped_map

Function Documentation

◆ compare_gpu_result_against_cpu()

void compare_gpu_result_against_cpu ( helix_coord_map helix_coords,
bundle_helices_map bundle_helices,
helix_flipped_map helix_flipped,
utility::vector1< node_data > const &  ndat,
core::Size  block1,
core::Size  block2,
float  maximum_rmsd_tolerance,
float  minimum_square_distance_tolerance,
calculation_data_for_one_block_pair const &  bpd 
)

◆ compute_rms_and_clash_score_for_block_pair()

void compute_rms_and_clash_score_for_block_pair ( basic::gpu::GPU &  gpu,
utility::vector1< node_data > const &  ndat,
core::Size const  block1,
core::Size const  block2,
gpu_node_block_ptrs const &  block1ptrs,
gpu_node_block_ptrs const &  block2ptrs,
float  maximum_rmsd_tolerance,
float  minimum_square_distance_tolerance,
calculation_data_for_one_block_pair bpd 
)

◆ feed_rms_and_clash_scores_to_database()

void feed_rms_and_clash_scores_to_database ( utility::sql_database::sessionOP  db_session,
utility::vector1< node_data > const &  ndat,
core::Size  block1,
core::Size  block2,
calculation_data_for_one_block_pair const &  bpd 
)

◆ gpu_rmsd_programs()

std::vector< std::string > gpu_rmsd_programs ( )

Referenced by main().

◆ load_coordinates_from_database()

void load_coordinates_from_database ( utility::sql_database::sessionOP  db_session,
helix_coord_map helix_coords,
bundle_helices_map bundle_helices,
helix_flipped_map helix_flipped 
)

◆ main()

int main ( int  argc,
char *  argv[] 
)

◆ retrieve_rms_and_clash_scores_from_gpu()

void retrieve_rms_and_clash_scores_from_gpu ( basic::gpu::GPU &  gpu,
calculation_data_for_one_block_pair bpd 
)

◆ ship_coordinates_to_gpu()

void ship_coordinates_to_gpu ( basic::gpu::GPU &  gpu,
helix_coord_map const &  helix_coords,
bundle_helices_map const &  bundle_helices,
utility::vector1< node_data > &  ndat,
core::Size  blockid,
gpu_node_block_ptrs block_ptrs 
)

Variable Documentation

◆ BLOCK_SIZE

int BLOCK_SIZE = 512
static

◆ TR

basic::Tracer TR("BundlePairRmsdCalculator") ( "BundlePairRmsdCalculator"  )
static
Author
Tim Jacobs

Referenced by load_coordinates_from_database().