STORMM Source Documentation
Loading...
Searching...
No Matches
stormm::stmath::ReductionKit Struct Reference

Collect the simple components needed to guide reductions across all systems in a topology synthesis (or the corresponding compilation of coordinates): the number of work units, the strategy, and the list of work unit abstracts. More...

#include <reduction_abstracts.h>

Public Member Functions

 ReductionKit (int nrdwu_in, RdwuPerSystem rps_in, const int *rdwu_abstracts_in, const int *atom_counts_in)
 The constructor takes a straight list of values for all member variables, or a combination of familiar objects.
 
 ReductionKit (const AtomGraphSynthesis &poly_ag, HybridTargetLevel tier=HybridTargetLevel::HOST)
 
 ReductionKit (const ReductionKit &original)=default
 Take the typical copy and move constructors for an abstract with constants.
 
 ReductionKit (ReductionKit &&original)=default
 

Public Attributes

const int nrdwu
 The number of reduction work units in the synthesis.
 
const RdwuPerSystem rps
 Are there one or multiple work units serving each system?
 
const int * rdwu_abstracts
 Reduction work unit abstracts (strides of rdwu_abstract_length)
 
const int * atom_counts
 The number of atoms per system (for normalization purposes)
 

Detailed Description

Collect the simple components needed to guide reductions across all systems in a topology synthesis (or the corresponding compilation of coordinates): the number of work units, the strategy, and the list of work unit abstracts.

Constructor & Destructor Documentation

◆ ReductionKit()

stormm::stmath::ReductionKit::ReductionKit ( int nrdwu_in,
RdwuPerSystem rps_in,
const int * rdwu_abstracts_in,
const int * atom_counts_in )

The constructor takes a straight list of values for all member variables, or a combination of familiar objects.

Parameters
poly_agCompilation of topologies with reduction work unit counts and abstracts
tierLevel at which to obtain the data arrays (needed for passing to subsequent getter functions in the topology and coordinate syntheses)

The documentation for this struct was generated from the following files: