STORMM Source Documentation
Loading...
Searching...
No Matches
radius_gyration.h
1// -*-c++-*-
2#ifndef STORMM_RADIUS_GYRATION_H
3#define STORMM_RADIUS_GYRATION_H
4
5#include "copyright.h"
6#include "Accelerator/hybrid.h"
7#include "Trajectory/coordinateframe.h"
8#include "Trajectory/coordinate_series.h"
9#include "Trajectory/phasespace.h"
10#include "Synthesis/atomgraph_synthesis.h"
11#include "Synthesis/phasespace_synthesis.h"
12
13namespace stormm {
14namespace structure {
15
16using card::Hybrid;
17using card::HybridTargetLevel;
18using synthesis::AtomGraphSynthesis;
19using synthesis::PhaseSpaceSynthesis;
20using synthesis::PsSynthesisReader;
21using synthesis::SyAtomUpdateKit;
22using topology::AtomGraph;
23using topology::ChemicalDetailsKit;
24using trajectory::CoordinateFrame;
25using trajectory::CoordinateFrameReader;
26using trajectory::CoordinateSeries;
27using trajectory::CoordinateSeriesReader;
28using trajectory::PhaseSpace;
29using trajectory::PhaseSpaceReader;
30
49double radiusOfGyration(const CoordinateFrameReader &cfr, const ChemicalDetailsKit &cdk,
50 HybridTargetLevel tier = HybridTargetLevel::HOST);
51
52double radiusOfGyration(const CoordinateFrame *cf, const AtomGraph &ag,
53 HybridTargetLevel tier = HybridTargetLevel::HOST);
54
55double radiusOfGyration(const CoordinateFrame &cf, const AtomGraph &ag,
56 HybridTargetLevel tier = HybridTargetLevel::HOST);
57
58double radiusOfGyration(const PhaseSpace *ps, const AtomGraph &ag,
59 HybridTargetLevel tier = HybridTargetLevel::HOST);
60
61double radiusOfGyration(const PhaseSpace &ps, const AtomGraph &ag,
62 HybridTargetLevel tier = HybridTargetLevel::HOST);
63
64std::vector<double> radiusOfGyration(const PsSynthesisReader &poly_psr,
66 HybridTargetLevel tier = HybridTargetLevel::HOST);
67
68std::vector<double> radiusOfGyration(const PhaseSpaceSynthesis *poly_ps,
69 const AtomGraphSynthesis &poly_ag,
70 HybridTargetLevel tier = HybridTargetLevel::HOST);
71
72std::vector<double> radiusOfGyration(const PhaseSpaceSynthesis &poly_ps,
73 const AtomGraphSynthesis &poly_ag,
74 HybridTargetLevel tier = HybridTargetLevel::HOST);
76
77} // namespace structure
78} // namespace stormm
79
80#endif
A collection of one or more AtomGraph objects, with similar components arranged in contiguous arrays ...
Definition atomgraph_synthesis.h:55
A fixed-precision representation of coordinates, velocities, and forces to manage a set of simulation...
Definition phasespace_synthesis.h:325
A struct to hold information relating to an Amber topology. This struct's member functions are limite...
Definition atomgraph.h:50
Store the coordinates and box information for a frame, only. This abridged struct can serve when the ...
Definition coordinateframe.h:111
An object to complement a topology and hold positions, velocities, and forces of all particles in a s...
Definition phasespace.h:141
The reader for a PhaseSpaceSynthesis object, containing all of the data relevant for propagating dyna...
Definition phasespace_synthesis.h:199
Collect the virtual site details and constraint parameters of the topology synthesis into a single ab...
Definition synthesis_abstracts.h:257
Information on atoms and residues which may be useful for applying atom masks or identifying specific...
Definition atomgraph_abstracts.h:382
Collect C-style pointers for the elements of a read-only CoordinateFrame object.
Definition coordinateframe.h:65