tt(Analysis) class objects handle one simulation analysis. Since multiple
analyses are performed independently from each other, each tt(Analysis) object
initializes its own error count (class tt(Error)) and option handling (class
tt(Options)).

As options may specify the name of the file containing the
analysis-parameters tt(Analysis) objects also define a configuration file
object (ConfFile).

In s()'s scientific context simulation parameters are also known as
`scenarios'. Scenarios contain information like the number of iterations to
perform and the number of cases to simulate.  The analysis's tt(Scenario)
object is initialized by tt(Analysis)'s constructor, and is used by its
tt(run) member.

Figure ref(ANADATA) provides an overview of tt(Analysis)'s data members.

    figure(analysis/data)
        (The Analysis data members)
        (ANADATA)
    verbinsert(-s4 //data src/analysis.h)

The class tt(Analysis) uses the classes tt(Scenario, Loop, ConfFile,
Options) and tt(Error), which are covered in separate sections of this
technical manual.

When the tt(Analysis) object is constructed it constructs its own tt(Scenario)
object. That object receives the modifications that are specific for the
current analysis (e.g., that were specified following an tt(analysis:) line in
an analysis-specification file). When the tt(Scenario) object (cf. section
tt(SCENARIO)) is returning specifications (e.g., using its tt(lines) members,
then it returns the modified specifications if available. Modified
specification must be complete, as they replace the corresponding
specifications in the used (standard) configuration file.
