struct rgpot::ForceBatch

Overview

One batch of independent systems for a single evaluation call. More…

#include <ForceStructs.hpp>
 
struct ForceBatch {
    // fields
 
    size_t nSystems;
    const ForceInput* in;
    ForceOut* out;
};

Detailed Documentation

One batch of independent systems for a single evaluation call.

Systems in a batch share nothing: each carries its own atom count, cell and species list, so a caller may batch NEB images of one system or a set of unrelated structures. in and out are parallel arrays of length nSystems, and out[i] corresponds to in[i].

The caller owns both arrays and every buffer they point at, including each out[i].F, which must have room for 3 * in[i].nAtoms doubles.

Fields

size_t nSystems

Number of independent systems in this batch.

const ForceInput* in

Array of nSystems inputs.

ForceOut* out

Array of nSystems result slots.