make shape consistent (#1150)
make shape consistent (#1150)

## Technical Description

Joerg Behrens reported the following:

in the file `dawn/src/interface/atlas_interface.hpp` you define the class
`SparseDimension`. There, the access `operator()` seems to expect the
following order of dimensions `(elem_dim, sparse_dim, level_dim)`, e.g.:

```
T const& operator()(int elem_idx, int sparse_dim_idx, int level)
```

The `getShape()` method, however, returns the field shape in the class
internal order of dimensions which seems to be (elem_dim, level_dim,
sparse_dim).

Therefore the field shape given by `getShape()` seems to be inconsistent
with the field access or, in other words: The shape does not give the
access bounds of the access operator as would be expected (I am only
guessing the semantics from the method name - which triggers my Fortran
background).

In my opinion a consistent `getShape` method would return something like

```
std::make_tuple(
   sparse_dimension_.shape(0),
   sparse_dimension_.shape(2),
   sparse_dimension_.shape(1));
```

This PR implements the suggested `getShape` method.

### Testing

This method is dead code in the dawn repo, so this remains untested!



Co-authored-by: Joerg Behrens <85fa7a5910ca8aff002a519d0a2622b39a6fb341@dkrz.de>
MeteoSwiss-APN/dawn,MeteoSwiss-APN/dawn,MeteoSwiss-APN/dawn