24#ifndef SUPER_FIELD_ARRAY_D_H
25#define SUPER_FIELD_ARRAY_D_H
29template <
typename T,
typename DESCRIPTOR,
typename FIELD>
32 std::vector<std::unique_ptr<ColumnVectorBase>> _block;
40 for (
int iC = 0; iC < load.size(); ++iC) {
43 load.platform(iC), 0));
49 return *callUsingConcretePlatform<ConcretizableFieldArrayD<T,DESCRIPTOR,FIELD>>(
52 [&](
auto* field) ->
auto* {
53 return &(field->asAbstract());
Platform-agnostic interface to concrete host-side field arrays.
Base class for all LoadBalancer.
SuperFieldArrayD(CuboidGeometry< T, DESCRIPTOR::d > &cGeometry, LoadBalancer< T > &loadBalancer)
AbstractFieldArrayD< T, DESCRIPTOR, FIELD > & getBlock(int iC)
LoadBalancer< T > & getLoadBalancer()
Read and write access to the load balancer.
Top level namespace for all of OpenLB.
std::conditional_t< D==2, CuboidGeometry2D< T >, CuboidGeometry3D< T > > CuboidGeometry
CONCRETIZABLE::base_t * constructUsingConcretePlatform(Platform platform, ARGS &&... args)
Curried FieldArrayD template for use in callUsingConcretePlatform.