# distStepSize: Step Size for Calculating the Range of a Unimodal... In DistributionUtils: Distribution Utilities

## Description

Given the parameters of a unimodal distribution and the root of the density function name, this function determines the step size when calculating the range of the specified unimodal distribution. The parameterization used is the one for the corresponding density function calculation.

## Usage

 ```1 2``` ```distStepSize(densFn, dist, param = NULL, side = c("right","left"), ...) ```

## Arguments

 `densFn` Character. The name of the density function for which the step size needs to be calculated. `dist` Numeric. Current distance value, for skew hyperbolic distribution only `param` Numeric. A vector giving the parameter values for the distribution specified by `densFn`. If no `param` values are specified, then the default parameter values of each distribution are used instead. `side` Character. `"right"` for a step to the right, `"left"` for a step to the right. `...` Passes arguments in particular the parameters of the distribution to random sample generation function.

## Details

This function is used for stepping to the right or the left to obtain an enclosing interval so `uniroot` can be used to search. The step size for the right tail is the absolute difference between the median and upper quantile and for the left tail is the absolute difference between the median and lower quantile. The skew hyperbolic distribution however needs a special step size. When the tail is declining exponentially the step is just a linear function of the current distance from the mode. If the tail is declining only as a power of x, an exponential step is used.

`distStepSize` is for internal use and is not expected to be called by users. It is documented here for completeness.

## Value

The size of the step.

## Author(s)

David Scott d.scott@auckland.ac.nz, Joyce Li xli053@aucklanduni.ac.nz

`distCalcRange`
 ```1 2 3 4``` ```normRange <- distCalcRange("norm", tol = 10^(-7), mean = 4, sd = 1) normRange tRange <- distCalcRange("t", tol = 10^(-5), df = 4) tRange ```