# glm.control

##### Auxiliary for Controlling GLM Fitting

Auxiliary function for `glm`

fitting.
Typically only used internally by `glm.fit`

, but may be
used to construct a `control`

argument to either function.

##### Usage

`glm.control(epsilon = 1e-8, maxit = 25, trace = FALSE)`

##### Arguments

- epsilon
- positive convergence tolerance $\epsilon$; the iterations converge when $|dev - dev_{old}|/(|dev| + 0.1) < \epsilon$.
- maxit
- integer giving the maximal number of IWLS iterations.
- trace
- logical indicating if output should be produced for each iteration.

##### Details

The `control`

argument of `glm`

is by default passed
to the `control`

argument of `glm.fit`

, which uses
its elements as arguments to `glm.control`

: the latter provides
defaults and sanity checking.

If `epsilon`

is small (less than $10^{-10}$) it is
also used as the tolerance for the detection of collinearity in the
least squares solution.

When `trace`

is true, calls to `cat`

produce the
output for each IWLS iteration. Hence, `options(digits = *)`

can be used to increase the precision, see the example.

##### Value

- A list with components named as the arguments.

##### References

Hastie, T. J. and Pregibon, D. (1992)
*Generalized linear models.*
Chapter 6 of *Statistical Models in S*
eds J. M. Chambers and T. J. Hastie, Wadsworth & Brooks/Cole.

##### See Also

##### Examples

`library(stats)`

```
### A variation on example(glm) :
## Annette Dobson's example ...
counts <- c(18,17,15,20,10,20,25,13,12)
outcome <- gl(3,1,9)
treatment <- gl(3,3)
oo <- options(digits = 12) # to see more when tracing :
glm.D93X <- glm(counts ~ outcome + treatment, family = poisson(),
trace = TRUE, epsilon = 1e-14)
options(oo)
coef(glm.D93X) # the last two are closer to 0 than in ?glm's glm.D93
```

*Documentation reproduced from package stats, version 3.3, License: Part of R 3.3*