### 1. Highlights

● 1 new directive

● 20 new procedures

● ability to use any available font, and to specify line styles by name in `PEN`

statements

● empirical-distribution-function goodness-of-fit tests (`EDFTEST`

)

● power calculations, sample-size estimation and identification of outliers in `REML`

analyses (`VPOWER`

, `VSAMPLESIZE`

, `VSOM`

)

● exploration of canonical relationships between terms in experimental designs (`ACANONICAL`

, `ACDISPLAY`

, `ACKEEP`

)

● orthogonal partial least squares regression (`OPLS`

)

● Matern models in Kriging

### 2. What’s new

**2.1 Directives**

`DFONT`

defines the default font for high-resolution graphics.

**2.2 Procedures**

`ABOXCOX`

estimates the power λ in a Box-Cox transformation, that maximizes the partial log-likelihood in `ANOVA`

.

`ACANONICAL`

determines the orthogonal decomposition of the sample space for a design, using an analysis of the canonical relationships between the projectors derived from two or more model formulae.

`ACDISPLAY`

provides further output from an analysis by `ACANONICAL`

.

`ACKEEP`

saves information from an analysis by `ACANONICAL`

.

`BACKTRANSFORM`

calculates back-transformed means with approximate standard errors and confidence intervals.

`DBCOMMAND`

runs an SQL command on an ODBC database.

`DKEY`

adds a key to a graph.

`DSTTEST`

plots power and significance for t-tests, including equivalence tests.

`EDFTEST`

performs empirical-distribution-function goodness-of-fit tests.

`FACGETLABELS`

obtains the labels for a factor if it has been defined with labels, or constructs labels from its levels otherwise.

`MCOMPARISON`

performs pairwise multiple comparison tests within a table of means.

`OPLS`

performs orthogonal partial least squares regression.

`SPNTEST`

calculates the sample size for a Poisson test.

`TXSPLIT`

splits a text into individual texts, at positions on each line marked by separator character(s).

`VCRITICAL`

uses a parametric bootstrap to estimate critical values for a fixed term in a `REML`

analysis.

`VPOWER`

uses a parametric bootstrap to estimate the power (probability of detection) for terms in a `REML`

analysis.

`VRCHECK`

checks effects of a random term in a `REML`

analysis.

`VSAMPLESIZE`

estimates the replication to detect a fixed term or contrast in a `REML`

analysis, using parametric bootstrap.

`VSOM`

analyses a simple `REML`

variance components model for outliers using a variance shift outlier model.

`VUVCOVARIANCE`

forms the unit-by-unit variance-covariance matrix for specified variance components in a `REML`

model.

**2.2 Functions**

None.

### 3. What’s changed

Most of the changes are compatible with Release 18, the previous release. There are a few commands, however, where new options or parameters have been inserted into the existing lists. These may cause problems in statements where option or parameter names have been omitted or abbreviated (see Section 1.7.1 of Part 1 of the *Guide to the Genstat Command Language* for details). To avoid any difficulty, the name of the option/parameter after the new option/parameter should be given explicitly, and not abbreviated to fewer than four characters.

Any command, where changes in Release 19 may cause incompatibilities in existing programs, is marked in Sections 3.1 and 3.2 by the symbol ^{†}. The full details are given in Section 3.4.

**3.1 Directives**

`DEVICE`

no longer has a `PAGESIZE`

parameter. This previously set the page size for HPGL graphics output, but that is now obsolete.

`DSTART`

now allows you to specify the pen to use to plot the title.

`FCA`

now has a `vcovariance`

setting for its `METHOD`

option, which is a synonym of `variancecovariance`

. (This has been introduced for compatibility with other commands, which use `vcovariance`

rather than `variancecovariance`

.)

`GET`

now defines the `ENVIRONMENT`

and `SPECIAL`

pointers so that their labels can be specified in either upper or lower case, or any mixture.

^{†}`KRIGE`

can now use the Matern model.

`PCP`

now has a `vcovariance`

setting for its `METHOD`

option, which is a synonym of `variancecovariance`

. (This has been introduced for compatibility with other commands, which use `vcovariance`

rather than `variancecovariance`

.)

`PEN`

now allows you to specify fonts and line styles by name.

`PROCEDURE`

can restore the settings to control what happens after a fault, or when an unset dummy is specified; see `SET`

.

`RKEEP`

now specifies the `OMODEL`

and `PMODEL`

pointers so that their labels can be specified in either upper or lower case, or any mixture.

`SET`

now allows you to control what happens after a fault, or when an unset dummy is specified as the setting of an option or parameter that expects another type of data structure.

`SETRELATE`

can now check whether the two sets are distinct.

`TXPOSITION`

now allows the `SUBTEXT`

to contain several strings, when the `TEXT`

contains a single string. You can thus search the same string, to see which of several strings might occur there.

^{†}`VKEEP`

can now save the identifier of the y-variate that was analysed. (Note: it already defines the `MODELS`

pointer so that its labels can be specified in either upper or lower case, or any mixture.)

**3.2 Procedures**

`AGRAPH`

and `AUGRAPH`

now use the identifier of the y-variate as the default for `YTITLE`

.

^{†}`AREPMEASURES`

now has a `MAXCYCLE`

option to control the number of iterations for estimating missing values.

`CHECKARGUMENT`

can now check trees and save structures.

`DPROBABILITY`

can now do likelihood-ratio goodness-of-fit tests (using the `EDFTEST`

procedure). The test probabilities can be saved by the new `PROBABILITIES`

parameter.

`DVARIOGRAM`

can now plot the Matern model.

`DTABLE`

now allows the `BAR`

parameter to be set to a pointer, containing either two scalars or two tables, to define the upper and lower positions of the bar(s).

`DYPOLAR`

now has a `KEYDESCRIPTION`

option.

`HGANALYSE`

, `HGDISPLAY`

, `HGFTEST`

, `HGKEEP`

and `HGRTEST`

have an additional setting `automatic`

for the `DMETHOD`

option, which first tries the more efficient Cholski method, and switches to the LRV method if that fails.

`IMPORT`

can now convert Unicode characters in Excel `xlsx`

files into usable representations.

^{†}`KCROSSVALIDATION`

can now use the Matern model.

`PEAKFINDER`

now has a `SCREEN`

option.

`MVARIOGRAM`

can now fit the Matern model.

^{†}`PLS`

: the default of the `SEED`

option is now 0.

`RSEARCH`

now allows you to retain marginal terms in the `FREE`

model during all-subset regression, so that you can assess models in which they are excluded.

`SVGLM`

can now use Taylor series approximations to estimate variances with any of the distributions.

`TRELLIS`

now allows you to specify subticks on the axes and to display schematic boxplots.

`VEQUATE`

can now transfer values from texts and pointers.

^{†}`VABLOCKDESIGN`

, ^{†}`VAROWCOLUMNDESIGN`

and ^{†}`VASERIES`

had a `CONSTRAINTS`

option that was identical in its first 4 characters to their `CONSTANT`

option (contrary to the standard protocols). This has been renamed to `VCONSTRAINTS`

. They also now have a `SPATIALFACTOR`

to allow you to specify a factor to use to define the term required for a two-dimensional power-distance model.

^{†}`VALINEBYTESTER`

has removed its `CONSTRAINTS`

option as this is unnecessary. (The constraints settings from `VABLOCKDESIGN`

and `VAROWCOLUMNDESIGN`

are transferred automatically when the random model is redefined inside `VALINEBYTESTER`

by `VFMODEL`

.) Also, the `MVINCLUDE`

option is now used only when the `SAVE`

parameter is unset. (When it is set, the units to include in the analysis can be determined from the save structure.)

`VGRAPH`

now uses the identifier of the y-variate as the default for `YTITLE`

.

`VRMETA`

now allows you to construct models where variance components are shared by several experiments.

^{†}`VRPERMTEST`

can now save the test statistics and their probabilities, and specify a title for the graphs.

**3.3 Functions**

None.

**3.4 Incompatibilities**

`AREPMEASURES` procedure |
option `MAXCYCLE` inserted before `LSDLEVEL` . |
---|---|

`DEVICE` directive |
parameter `SIZEPAGE` has been deleted. |

`KCROSSVALIDATION` procedure |
parameter `SMOOTHNESS` inserted before `PHI` . |

`KRIGE` directive |
parameter `SMOOTHNESS` inserted before `PHI` . |

`PLS` procedure |
option `SEED` now has a default of 0 (previously was the value specified by the `NGROUPS` option). |

`SET` directive |
unset dummies are now always faulted. Previously some were ignored, but this was not consistent. You can now set option `UNSETDUMMY=ignore` to prevent these faults. |

`VKEEP` directive |
option `YVARIATE` inserted before `EXIT` . |

`VABLOCKDESIGN` procedure |
`CONSTRAINTS` option renamed to `VCONSTRAINTS` . |

`VALINEBYTESTER` procedure |
`CONSTRAINTS` option has been removed. |

`VAROWCOLUMNDESIGN` procedure |
`CONSTRAINTS` option renamed to `VCONSTRAINTS` . |

`VASERIES` procedure |
`CONSTRAINTS` option renamed to `VCONSTRAINTS` . |