Template Function sequant::make_ta_array_ops¶
Defined in File array_ops.hpp
Function Documentation¶
-
template<typename FlatArray, typename ToTArray = FlatArray>
BackendArrayOps sequant::make_ta_array_ops(std::map<std::wstring, TA::TiledRange1> tr1_of_base, TA::World &world)¶ Build a
BackendArrayOpsfor the TiledArray backend from a per-basis-key tiling map.The two closures are the TA realization of external-axis batching’s backend needs (see
BackendArrayOps):make_zerosbuilds a zero destination – flat or nested per the descriptor’s proto structure, with a nested result’s inner tiles left empty for the scatter writes to fill – andaxis_batcheschunks an axis on its basis’ tile boundaries. Tiling is a property of the basis, so both are sourced fromtr1_of_basealone; no array in the DAG is consulted. Both mpqc (from its orbital/basis registries) and unit tests (from the tranges they build their leaves with) supply the map and call this.- Template Parameters:
FlatArray – the flat (Tensor-of-Scalars)
TA::DistArraytype;ToTArray – the nested (Tensor-of-Tensor)
TA::DistArraytype.
- Parameters:
tr1_of_base – IndexBasis::base_key() -> the basis’ full
TA::TiledRange1.world – the World the zero destinations are built in; it must outlive the returned closures’ use.