PISM, A Parallel Ice Sheet Model 2.3.0-79cae578d committed by Constantine Khrulev on 2026-03-22
Loading...
Searching...
No Matches

◆ transpose() [1/2]

static void pism::io::transpose ( const double input,
const std::vector< AxisType > &  input_axes,
const std::array< int, 4 > &  count,
double output 
)
static

Transpose data in input, putting results in output.

We assume that both input and output hold prod(count) elements.

The output array uses the Y,X,Z order (columns in Z are contiguous).

The input array uses the ordering corresponding to input_axes (ordering present in an input file).

The array count provides the size of a block in input, listing axes in the order of values of AxisType (T,X,Y,Z).

Definition at line 207 of file input_helpers.cc.

References count, pism::RuntimeError::formatted(), pism::k, n, PISM_ERROR_LOCATION, pism::UNKNOWN_AXIS, pism::X_AXIS, pism::Y_AXIS, and pism::Z_AXIS.