# Tutorial 7: Field transformations¶

The generated fields of gstools are ordinary Gaussian random fields. In application there are several transformations to describe real world problems in an appropriate manner.

GStools provides a submodule `gstools.transform` with a range of common transformations:

 `binary`(fld[, divide, upper, lower]) Binary transformation. `discrete`(fld, values[, thresholds]) Discrete transformation. `boxcox`(fld[, lmbda, shift]) Box-Cox transformation. `zinnharvey`(fld[, conn]) Zinn and Harvey transformation to connect low or high values. `normal_force_moments`(fld) Force moments of a normal distributed field. `normal_to_lognormal`(fld) Transform normal distribution to log-normal distribution. `normal_to_uniform`(fld) Transform normal distribution to uniform distribution on [0, 1]. `normal_to_arcsin`(fld[, a, b]) Transform normal distribution to the bimodal arcsin distribution. `normal_to_uquad`(fld[, a, b]) Transform normal distribution to U-quadratic distribution.

All the transformations take a field class, that holds a generated field, as input and will manipulate this field inplace.

Simply import the transform submodule and apply a transformation to the srf class:

```from gstools import transform as tf
...
tf.normal_to_lognormal(srf)
```