## fractals

fractals — Fractal dimension calculation, fractal interpolation

## Synopsis

    #include <libprocess/gwyprocess.h>

    void                gwy_data_field_fractal_partitioning (GwyDataField *data_field,
                                                             GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             GwyInterpolationType interpolation);
    void                gwy_data_field_fractal_cubecounting (GwyDataField *data_field,
                                                             GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             GwyInterpolationType interpolation);
    void                gwy_data_field_fractal_triangulation
                                                            (GwyDataField *data_field,
                                                             GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             GwyInterpolationType interpolation);
    void                gwy_data_field_fractal_psdf         (GwyDataField *data_field,
                                                             GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             GwyInterpolationType interpolation);
    gdouble             gwy_data_field_fractal_cubecounting_dim
                                                            (GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             gdouble *a,
                                                             gdouble *b);
    gdouble             gwy_data_field_fractal_triangulation_dim
                                                            (GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             gdouble *a,
                                                             gdouble *b);
    gdouble             gwy_data_field_fractal_partitioning_dim
                                                            (GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             gdouble *a,
                                                             gdouble *b);
    gdouble             gwy_data_field_fractal_psdf_dim     (GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             gdouble *a,
                                                             gdouble *b);
    void                gwy_data_field_fractal_correction   (GwyDataField *data_field,
                                                             GwyDataField *mask_field,
                                                             GwyInterpolationType interpolation);

## Description

## Details

### gwy_data_field_fractal_partitioning ()

    void                gwy_data_field_fractal_partitioning (GwyDataField *data_field,
                                                             GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             GwyInterpolationType interpolation);

Computes data for log-log plot by partitioning.

Data lines `xresult` and `yresult` will be resized to the output size and they will contain corresponding values at each position.

`data_field` : | A data field.
`xresult` : | Data line to store x-values for log-log plot to.
`yresult` : | Data line to store y-values for log-log plot to.
`interpolation` : | Interpolation type.

### gwy_data_field_fractal_cubecounting ()

    void                gwy_data_field_fractal_cubecounting (GwyDataField *data_field,
                                                             GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             GwyInterpolationType interpolation);

Computes data for log-log plot by cube counting.

Data lines `xresult` and `yresult` will be resized to the output size and they will contain corresponding values at each position.

`data_field` : | A data field.
`xresult` : | Data line to store x-values for log-log plot to.
`yresult` : | Data line to store y-values for log-log plot to.
`interpolation` : | Interpolation type.

### gwy_data_field_fractal_triangulation ()

    void                gwy_data_field_fractal_triangulation
                                                            (GwyDataField *data_field,
                                                             GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             GwyInterpolationType interpolation);

Computes data for log-log plot by triangulation.

Data lines `xresult` and `yresult` will be resized to the output size and they will contain corresponding values at each position.

`data_field` : | A data field.
`xresult` : | Data line to store x-values for log-log plot to.
`yresult` : | Data line to store y-values for log-log plot to.
`interpolation` : | Interpolation type.

### gwy_data_field_fractal_psdf ()

    void                gwy_data_field_fractal_psdf         (GwyDataField *data_field,
                                                             GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             GwyInterpolationType interpolation);

Computes data for log-log plot by spectral density method.

Data lines `xresult` and `yresult` will be resized to the output size and they will contain corresponding values at each position.

`data_field` : | A data field.
`xresult` : | Data line to store x-values for log-log plot to.
`yresult` : | Data line to store y-values for log-log plot to.
`interpolation` : | Interpolation type.

### gwy_data_field_fractal_cubecounting_dim ()

    gdouble             gwy_data_field_fractal_cubecounting_dim
                                                            (GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             gdouble *a,
                                                             gdouble *b);

Computes fractal dimension by cube counting method from log-log plot data.

The `xresult` and `yresult` data lines are usually calculated by `gwy_data_field_fractal_cubecounting()`.

`xresult` : | Log-log fractal data (x values).
`yresult` : | Log-log fractal data (y values).
`a` : | Location to store linear fit constant to.
`b` : | Location to store linear fit slope to.
Returns : | The fractal dimension.

### gwy_data_field_fractal_triangulation_dim ()

    gdouble             gwy_data_field_fractal_triangulation_dim
                                                            (GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             gdouble *a,
                                                             gdouble *b);

Computes fractal dimension by triangulation method from log-log plot data.

The `xresult` and `yresult` data lines are usually calculated by `gwy_data_field_fractal_triangulation()`.

`xresult` : | Log-log fractal data (x values).
`yresult` : | Log-log fractal data (y values).
`a` : | Location to store linear fit constant to.
`b` : | Location to store linear fit slope to.
Returns : | The fractal dimension.

### gwy_data_field_fractal_partitioning_dim ()

    gdouble             gwy_data_field_fractal_partitioning_dim
                                                            (GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             gdouble *a,
                                                             gdouble *b);

Computes fractal dimension by partitioning method from log-log plot data.

The `xresult` and `yresult` data lines are usually calculated by `gwy_data_field_fractal_partitioning()`.

`xresult` : | Log-log fractal data (x values).
`yresult` : | Log-log fractal data (y values).
`a` : | Location to store linear fit constant to.
`b` : | Location to store linear fit slope to.
Returns : | The fractal dimension.

### gwy_data_field_fractal_psdf_dim ()

    gdouble             gwy_data_field_fractal_psdf_dim     (GwyDataLine *xresult,
                                                             GwyDataLine *yresult,
                                                             gdouble *a,
                                                             gdouble *b);

Computes fractal dimension by spectral density function method from log-log plot data.

The `xresult` and `yresult` data lines are usually calculated by `gwy_data_field_fractal_psdf()`.

`xresult` : | Log-log fractal data (x values).
`yresult` : | Log-log fractal data (y values).
`a` : | Location to store linear fit constant to.
`b` : | Location to store linear fit slope to.
Returns : | The fractal dimension.

### gwy_data_field_fractal_correction ()

    void                gwy_data_field_fractal_correction   (GwyDataField *data_field,
                                                             GwyDataField *mask_field,
                                                             GwyInterpolationType interpolation);

Replaces data under mask with interpolated values using fractal interpolation.

`data_field` : | A data field.
`mask_field` : | Mask of places to be corrected.
`interpolation` : | Interpolation type.