# Grouped transformations

`abstract type GroupedTransformation <: ContinuousTransformations.ContinuousTransformation`

Abstract type for grouped transformations.

A grouped transformation takes a vector, and transforms contiguous blocks of elements to some output type, determined by the specific transformation type.

All subtypes support

`length`

: return the length of the vector that can be used as an argumentcallable object for the transformation

`logjac`

, and`inverse`

,`domain`

and`image`

, which may have specific interpretation for their result types depending on the concrete subtype.

```
TransformationTuple(transformations::Tuple)
TransformationTuple(transformations...)
```

A tuple of `ContinuousTransformation`

s. Given a vector of matching `length`

, each takes as many reals as needed, and returns the result as a tuple.

```
ArrayTransformation(transformation, dims)
ArrayTransformation(transformation, dims...)
```

Apply transformation to a vector, returning an array of the given dimensions.

`domain`

, `image`

, and `isincreasing`

return the corresponding values for the underlying transformation.

`ContinuousTransformations.get_transformation`

— Function.```
get_transformation(d)
```

Return the transformation from a wrapper object.