We discuss an equation analyser which analyses matrix structure to det
ect incorrect specification in equation systems and identifies free va
riables. Structural analysis uses output assignment to find a trial se
t of free variables. The choice is affected by the rules for output va
riable selection in each equation and to a lesser extent by how the eq
uations are reordered. Numerical singularity is found by attempting Ga
ussian elimination of the initial Jacobian. Causes include dependent e
quations or an unsuitable starting guess. Element type codes distingui
sh constant and variable Jacobian elements. Rules for element type ari
thmetic are presented. The equation analyser cannot distinguish a sing
ular guess from nonlinear dependence, which may be detected if singula
rity persists in a partial solution at later iterations. We show the f
ree variable choices and ease of solution for the corresponding simula
tions are presented in three examples with between 22 and 60 variables
. Rules for equation ordering and output variable assignment are propo
sed. (C) 1998 Elsevier Science Ltd. All rights reserved.