STORMM Source Documentation
Loading...
Searching...
No Matches
hpc_rmsd.h
1// -*-c++-*-
2#ifndef STORMM_HPC_RMSD_H
3#define STORMM_HPC_RMSD_H
4
5#ifdef STORMM_USE_CUDA
6#include <cuda_runtime.h>
7#endif
8#include "copyright.h"
9#include "Accelerator/core_kernel_manager.h"
10#include "Accelerator/hybrid.h"
11#include "Analysis/comparison_guide.h"
12#include "Constants/behavior.h"
13#include "Synthesis/phasespace_synthesis.h"
14#include "rmsd_plan.h"
15
16namespace stormm {
17namespace structure {
18
19using analysis::ComparisonGuide;
20using card::Hybrid;
21using card::CoreKlManager;
22using constants::PrecisionModel;
23using synthesis::PhaseSpaceSynthesis;
24
30cudaFuncAttributes queryRMSDKernelRequirements(PrecisionModel prec, RMSDTask order);
31
48void rmsd(const ComparisonGuide &cg, const RMSDPlan &rplan, const PhaseSpaceSynthesis &poly_ps,
49 const Hybrid<int> &reference_frames, Hybrid<double> *result,
50 const CoreKlManager &launcher);
51
52void rmsd(const ComparisonGuide &cg, const RMSDPlan &rplan, const PhaseSpaceSynthesis &poly_ps,
53 const Hybrid<int> &reference_frames, Hybrid<float> *result,
54 const CoreKlManager &launcher);
55
56void rmsd(const ComparisonGuide &cg, const RMSDPlan &rplan, const PhaseSpaceSynthesis &poly_ps,
57 Hybrid<double> *result, const CoreKlManager &launcher);
58
59void rmsd(const ComparisonGuide &cg, const RMSDPlan &rplan, const PhaseSpaceSynthesis &poly_ps,
60 Hybrid<float> *result, const CoreKlManager &launcher);
62
63} // namespace structure
64} // namespace stormm
65
66#endif
A class to guide the implementation of GPU kernels, with selected thread counts per block and block c...
Definition core_kernel_manager.h:56
An evolution of GpuBuffer in pmemd.cuda, the Composite array has elements that are accessible from ei...
Definition hybrid.h:202
Collect instructions for one or more systems (intend to work with any coordinate object,...
Definition rmsd_plan.h:89
A fixed-precision representation of coordinates, velocities, and forces to manage a set of simulation...
Definition phasespace_synthesis.h:325