# SIMFIT programs and related test files

adderr , average
binomial
calcurve , chisqd , compare , csafit
deqsol
editfl , editmt , editps , exfit
ftest
gcfit
hlfit
inrate
linfit
makdat , maksim , mmfit
normal
polnom
qnfit
rffit , rstest
sffit , simplot , simstat , spline
ttest
usermod
adderr

# ADDERR

This program adds random numbers to exact data in curve fitting type files to simulate experimental errors.
You can read in a data file for functions of one, two or three variables, for instance as generated by program makdat. However you are recommended to start by selecting functions of just one variable and experiment with the various options for adding error to the two test files provided. After adding error you should look at the plot of original values and perturbed values to get the feel for what happens with the alternative error types. Generating groups of three replicates with 10% relative error is a good place to start, and you should only add outliers if you really know what you are doing.

Example test files for program ADDERR

adderr.tf1 (all y = 1)
adderr.tf2 (all y = 0)
qnfit.tf2 (function of two variables)
qnfit.tf3 (function of three variables)

average

# AVERAGE

This program takes in x,y coordinates from a curve fitting type file and calculates areas, average values, fractions of x-range above or below thresholds, etc. using the trapezoidal technique.
It generates linear interpolants if the range requested does not start or end on a trapezoidal point and, if there are replicates, the program automatically replaces replicates by mean values. The x-data must be in increasing order. You could experiment with any x,y data values or with the test file provided.

Example test file for program AVERAGE

average tf1 (some arbitrary x,y data pairs)

binomial

# BINOMIAL

This program performs calculations related to the binomial distribution and the test files can be used to demonstrate three different functions.
The file binomial.tf1 has 50 random numbers from a binomial distribution with N = 50, p = 0.5, and this can be used to see how to test if sets of random variates are consistent with a binomial distribution.
The file binomial.tf2 has analysis of proportions data with no effector values (i.e. X and N only) while binomial.tf3 has analysis of proportions data with effector values (i.e. X, N and t). When no t values are provided, as with binomial.tf2, the program generates successive integers to use as t-values for plotting, e.g. for creating a log odds plot with exact error bars.
For a Cochran-Mantel-Haenszel Meta Analysis the data must consist of k adjacent sets of 2 by contingency table data as in meta.tf1.
Data in trinom.tf1 and trinom.tf2 illustrate how to plot trinomial parameter confidence limits.
The file poisson.tf1 can be used to test the procedure for seeing if numbers are consistent with a Poisson distribution.

Example test files for program BINOMIAL

binomial.tf1 (random b(10,0.5) numbers)
binomial.tf2 (X,N for analysis of proportions)
binomial.tf3 (X,N,t for analysis of proportions)
meta.tf1 (X,N,t for Meta Analysis)
trinom.tf1 (trinomial data, the effect of sample size)
trinom.tf2 (trinomial data, the effect of changes in parameters)
poisson.tf1 (random Poisson data)

calcurve

# CALCURVE

This program takes in x,y,s data and creates a weighted least squares cubic spline standard curve for predicting x given y.
It should be used for extremely complicated calibration curves when a simple line, quadratic, cubic or deterministic mathematical model is not satisfactory.
The program has a great many options, but it would be usual to run in the expert mode after a preliminary investigation has determined the optimum settings for control parameters, which are then added routinely to the standard curve data as with the test file provided.

Example test files for program CALCURVE

calcurve.tf1 (standard curve, can be used in EXPERT mode)
calcurve.tf2 (predict x given y using calcurve.tf1)
calcurve.tf3 (evaluate y given x using calcurve.tf1)

chisqd

# CHISQD

This program tests to see if numbers are consistent with a chi-square distribution and performs the chi-square test on paired vectors of observed and expected frequencies.
It can also do a chi-square test on contigency tables, together with the Fisher exact test on small 2 by 2 tables.

Example test files for program CHISQD

chisqd.tf1 (50 numbers from a chi-square distribution with nu = 10)
chisqd.tf2 (observed frequencies, to be used with chisqd.tf3)
chisqd.tf3 (expected frequencies, to be used with chisqd.tf2)
chisqd.tf4 (contingency table example 1)
chisqd.tf5 (contingency table example 2)

compare

# COMPARE

This program calculates means and standard deviations from groups of replicates and then fits weighted least square smoothing splines with user-supplied tension.
After data smoothing the spline fitted can be used to estimate areas, derivatives, curvature, arc length or else to compare fits given to two related data sets.
You should try one of the data sets alone and then the pair together. There are numerous options for calculating error bars for data sets with no replicates, but note that x must always be in increasing order.

Example test files for program COMPARE

compare.tf1
compare.tf2

csafit

# CSAFIT

This program fits dense histogram data, such as flow cytometry data in order to estimate the extent to which one random sample can be regarded as derived from another by the addition of a random proportionate and/or additive effect.
The data in the test files is for a linear gain, so do not analyse using the logarithmic option.

Example test files for program CSAFIT

csafit.tf1 (geometric model)
csafit.tf2 (arithmetic model)
csafit.tf3 (mixed model)

deqsol

# DEQSOL

This is a very advanced program with a vast number of options and numerous possible test files.
Choose one differential equation then simulate models 1, 6 and 7 then fit the corresponding QNFIT test files for a single differential equation.
Choose two differential equations, then select the Lotka-Volterra predator-prey model and plot the trajectories and phase portrait.
Observe the effect of changing parameters, e.g. change p(1) from 1.0 to 0.7.
Then choose curve fitting and read in the library file deqsol.tfl and observe the current curves overlayed on the data. Then try fitting the data in the library file deqsol.tfl.
Investigate the models deqmod?.tf? to see how to define your own differential equations.
Note that you can optionally add code for a Jacobian, parameter values, and range of integration from a model file. Examine deqmod3.tf1 and deqmod3.tf2 to see how to add or omit a Jacobian.

Example test files for program DEQSOL

usermodd.tf1 (model for first order chemical kinetics)
deqmod1.tf1 (model for irreversible Michaelis-Menten substrate depletion)
deqmod1.tf2 (model for irreversible Michaelis-Menten product accumulation)
deqmod1.tf3 (model for generalised substrate depletion)
deqmod1.tf4 (model for generalised product accumulation)
deqmod1.tf5 (model for variable volume membrane transport)
deqmod1.tf6 (model for Von Bertalannfy allometric growth)
deqmod2.tf1 (model for a coupled system)
deqmod2.tf2 (model for Lotka-Volterra predator-prey scheme)
deqmod2.tf3 (model for competing ecological species)
deqmod3.tf1 (model for an epidemic ... Jacobian supplied)
deqmod3.tf2 (model for an epidemic ... Jacobian not supplied)
deqmod4.tf1 (model for Briggs-Haldane enzyme kinetics)
qnfit_ode.tf1 (data for irreversible Michaelis-Menten substrate depletion)
qnfit_ode.tf2 (data for Von Bertalanffy allometric growth model)
qnfit_ode.tf2 (data for Von Bertalanffy allometric growth/decay model)
deqsol.tfl (data for the Lotka-Volterra scheme)
epidemic.tfl (data for the epidemic model)
deqpar2.tf2 (configure/initialise file for deqmod2.tf1)
qnfit.tfl (parameter limits type library file)

editfl

# EDITFL

This is a special editor dedicated to editing curve-fitting data files.
Read in editfl.tf1, editfl.tf2, editfl.tf3 or editfl.tf4 to appreciate how these special functions work.

Example test files for program EDITFL

editfl.tf1
editfl.tf2
editfl.tf3
editfl.tf4

editmt

# EDITMT

This editor can be used to edit or transform data matrices.
Read in editmt.tf1, editmt.tf2 or editmt.tf3 to appreciate how this editor can be used to edit such arbitrary data files.

Example test files for program EDITMT

editmt.tf1
editmt.tf2
editmt.tf3

editps

# EDITPS

This editor can be used to edit or transform PS files.
Read in simfig1.ps, simfig2.ps, simfig3.ps or simfig4.ps to see what this program can do with individual files.
To read in a set of files for making a collage or for rearranging, it is more convenient to use a library file, like editps.tfl, or images.tfl. If the first file in a sequence is a library file referencing eps standard files, then the file input phase will be terminated and no captions will be requested. You can always add these as required. Note that, if you do not have a PostScript printer, you simply make files and/or use GSview to drive your non PostScript printer.

Example test files for program EDITPS

editps.tfl (library file)
images.tfl (library file)
simfig1.ps
simfig2.ps
simfig3.ps
simfig4.ps
waves.eps
rosenbrock.eps
dendrogram.eps
trinom.eps.ps
ukmap.eps
diffusion.eps
rose.eps
gauss3.eps
convolution.eps.ps

exfit

# EXFIT

This program fits sums of exponential functions in sequence and performs goodness of fit tests to help you select the most satisfactory model.
Read in exfit.tf4 and see what happens when you fit one then a sum of two exponential functions using model 1.
Then try exfit.tf5 and exfit.tf6 to appreciate how to analyse data with turning points, using models 5 and 6 respectively.

Example test files for program EXFIT

exfit.tf1 (exact data for 1 exponential [decay type])
exfit.tf2 (exfit.tf1 with random error added)
exfit.tf3 (exact data for 2 exponentials [decay type])
exfit.tf4 (exfit.tf3 with random error added)
exfit.tf5 (exact data for model 5 [updown type])
exfit.tf6 (exact data for model 6 [downup type])
exfit.tf7 (exact data for model 3 [monomolecular type])

ftest

# FTEST

This program calculates various F statistics.
The file ftest.tf1 should be analysed to see if the random numbers are consistent with the F(2,5) distribution.
Use anova1.tfl as a library file for 1 way analysis of variance or anova2.tf1 and anova3.tf1 for 2 and 3 way analysis of variance. For groups and subgroups ANOVA use anova4.tf1, for factorial ANOVA use anova5.tf1, and for repeat measures use anova5.tf1.

Example test files for program FTEST

ftest.tf1 (50 numbers from F(2,5))
anova1.tfl (library file for 1-way ANOVA)
anova2.tf1 (file for 2-way ANOVA)
anova3.tf1 (file for 3-way ANOVA)
anova4.tf1 (groups/subgroups ANOVA)
anova5.tf1 (file for factorial ANOVA)
anova6.tf1 (file for repeat measures ANOVA)

gcfit

# GCFIT

This program can be run in four modes, to analyse growth curves, survival curves, right censored survival times, or dose response curves where it is required to estimate percentiles (e.g. LD50).
Fit gcfit.tf2 as an example of growth data fitting (in Mode 1).
Fit survival data like gompertz.tf1 or weibull.tf1 to see how to fit survival curves (in Mode 2).
The survival times data in survive.tf1/survive.tf2 or survive.tf3/survive.tf4 should be analysed (in Mode 3) to see how the program treats pairs of censored survival times.
Fit the file ld50.tf1 (in Mode 4) to see how to analyse dose response curves where the data columns are integers for y successes in N trials, with effector variable x, so that
0 =< y(i) =< N(i), x(i) =< x(i + 1).
Note that you can select the percentile interactively to estimate quartiles, medians (e.g. LD50), or 90 percent points, etc.
Fit the file cox.tf1 to see how to fit a survival model with covariates using the simplified GLM interface and selecting the exponential distribution, for instance.

Example test files for program GCFIT

gcfit.tf1 (exact data for model 3 in Mode 1)
gcfit.tf2 (random error added to gcfit.tf1)
gompertz.tf1 (exact data for Mode 2)
weibull.tf1 (exact data for Mode 2)
survive.tf1 (survival times for Mode 3)
survive.tf2 (data to be paired with survive.tf1)
survive.tf3 (survival times for Mode 3)
survive.tf4 (data to be paired with survive.tf3)
ld50.tf1 (data in y,N,x format for LD50 in mode 4)
ld50.tf2 (data in x,y,N,s format for LD50 in mode 4)
cox.tf1 (data in x,y,t,s format for survival times in mode 4)

hlfit

# HLFIT

This program fits Low/High affinity site binding data.
It is like program MMFIT except that binding constants are used rather than Michaelis constants and an arbitrary baseline correction can be used since, although initial rates are usually corrected so that f(0) = 0, binding data often has a background that has to be estimated.
Fit hlfit.tf4 as an example of two high/low affinity binding sites.

Example test files for program HLFIT

hlfit.tf1 (exact data for 1 site)
hlfit.tf2 (random error added to hlfit.tf1)
hlfit.tf3 (exact data for 2 sites)
hlfit.tf4 (random error added to hlfit.tf3)
hotcold.tf1 (data to demonstrate Isotope Mode)

inrate

# INRATE

This program uses specially selected models to estimate initial rates, lag times, asymptotic rates and final values.
The model selected depends on the type of data being analysed.

Example test files for program INRATE

inrate.tf1 (data for models 1 and 2)
inrate.tf2 (data for model 3)
inrate.tf3 (data for model 4)
inrate.tf4 (data for model 5)

linfit

# LINFIT

This program performs linear and multilinear regression in the L1, L2 and L-infinity norms and also fits the reduced major axis and orthogonal lines.
Correlation and linear calibration can be done, subsets of data can be selected or transformed, and robust fitting is provided.
Generalized Linear Models can be fitted.
Use line.tf1 to explore fitting simple straight lines and See what options are available for multilinear regression by using linfit.tf1 (rank deficient) and linfit.tf2 (full rank).

Example test files for program LINFIT

line.tf1 (straight line data)
linfit.tf1 (multilinear data, rank deficient)
linfit.tf2 (multilinear data, full rank)
glm.tf1 (Normal errors, Reciprocal link)
glm.tf2 (Binomial errors, Logistic link)
glm.tf3 (Poisson errors, Log link)
glm.tf4 (Gamma errors, Reciprocal link)
cox.tf1 (Survival analysis using the simplified GLM interface)

makdat

# MAKDAT

This program can read in user-defined model files to geneate data for plotting or fitting, as long as the files are formatted according to the SIMFIT convention.
The best way to understand this convention is to run program USERMOD.

Example test files for program MAKDAT

usermod1.tf1 (f(x), line)
usermod2.tf1 (g(x,y), plane)
usermod3.tf1 (h(x,y,z), hyperplane)
usermodd.tf1 (dy/dx, differential equation)
rose.mod (parametric r(theta) equation)
ellipse.mod (parametric x(t), y(t) equation)
helix.mod (parametric x(t), y(t), z(t) equation)

maksim

# MAKSIM

This program reads in tables from files or the clipboard and allows you to select rows and columns with certain characteristics, such as values in ranges or labels.
Edit the matrices maksim.tf1 or maksim.tf2 to appreciate how to extract data from spread sheet tables and also experiment with tables pasted in from the clipboard.

Example test files for program MAKSIM

maksim.tf1
maksim.tf2

mmfit

# MMFIT

This program fits sequences of sums of Michaelis-Menten functions and provides goodness of fit statistics to help you choose the best model.
Fit mmfit.tf2 to see how to estimate Michaelis-Menten parameters for one isoenzyme.
Fit mmfit.tf4 with one then two Michaelis-Menten functions to appreciate how to identify a mixture of two isoenzymes.
Note how you can extraploate the plots in transformed space when fitting the Michaelis-Menten equation.

Example test files for program MMFIT

mmfit.tf1 (exact data for 1 site)
mmfit.tf2 (random error added to mmfit.tf1)
mmfit.tf3 (exact data for 2 sites)
mmfit.tf4 (random error added to mmfit.tf3)
hotcold.tf1 (data to demonstrate Isotope Mode)

normal

# NORMAL

This program performs calculations related to the normal distribution.
Read in normal.tf1 and test to see if these random numbers are consistent with a N(0,1) distribution.

Example test file for program NORMAL

normal.tf1

polnom

# POLNOM

This program fits all polynomials in sequence up to degree six and gives goodness of fit criteria to help you choose the best fit model.
Fit a quadratic calibration curve to polnom.tf1 and then predict x given y (with 95% confidence limits) using the data in polnom.tf2 or evaluate y given x using polnom.tf3.

Example test files for program POLNOM

polnom.tf1 (quadratic calibration data)
polnom.tf2 (data for predicting x given y, from polnom.tf1)
polnom.tf3 (data for evaluating y given x, from polnom.tf1)

qnfit

# QNFIT

This is a very advanced program for fitting functions and multi-functions of one or several variables or single differential equations.
It should only be used by experienced curve fitters who understand the mathematical models being fitted and starting parameter estimates required.
For some purposes it is convenient to add starting estimates and limits to the data files and run in the expert mode, but another method is to read in a library file defining systems of parameter estimates stored in parameter limits files.
Read in gauss3.tf1, run in expert mode and fit a mixture of three Gaussian pdfs. Observe the graphical deconvolution that is possible after fitting has been completed by using the plotting option.
Install the parameter limits file qnfit.tfl and then fit mmfit.tf4 using 2 Michaelis-Menten isoenzymes and using the parameter limits file accessible after you have installed qnfit.tfl to set starting values.
The data in qnfit.tf2 can be fitted by the reversible Michaelis-Menten model with both S and P present (function of two variables).
The file qnfit.tf3 has linear data for fitting a a hyperplane (function of three variables).
Simulated experimental error can be added to qnfit.tf2 and qnfit.tf3 by program ADDERR.
qnfit_ode.tf1, qnfit_ode.tf2 and qnfit_ode.tf3 are data for differential equations from the library.
To experiment with fitting in multifunction mode read in the data set library file line3.tfl qnd model line3.mod which is just for a set of 3 simple disjoint straight lines.
consec3.tfl and consec3.mod are data and model for irreversible consecutive chemical reactions linked by common parameters.
convolv3.tfl and convolv3.mod are data and model for a convolution integral, and this example has several novel features.
1) The model uses sub-models to define f(x) and g(x) used to make up f*g.
2) The first two data sets for f(x) and g(x) are supressed in the library file.
3) Even though data are only provided for f*g, best-fit f(x) and g(x) can be plotted.
4) Parameter limits are read from the first genuine data file in the library file.
Finally, qnfit.tfl is a library file of parameter limits files.

Example test files for program QNFIT

function of 1 variable: qnfit.tf1 (polynomial of degree two)
function of 1 variable: exfit.tf4 (double exponential data)
function of 1 variable: mmfit.tf4 (double Michaelis-Menten data)
function of 1 variable: gauss3.tf1 (sum of three Gaussian pdfs)
function of 2 variables: qnfit.tf2 (reversible Michaelis-Menten equation)
function of 3 variables: qnfit.tf3 (polynomial of degree one)
function of 3 variables: e04fyf.tf1 (NAG E04FYF/E04YCF example model
differential equation: qnfit_ode.tf1 (irreversible Michaelis-Menten substrate depletion)
differential equation: qnfit_ode.tf2 (Von Bertalanffy allometric growth model)
differential equation: qnfit_ode.tf3 (Von Bertalanffy allometric growth/decay model)
model equation file: line3.mod (three disjoint lines model)
library file: line3.tfl (three disjoint lines data sets)
model equation file: consec3.mod (consecutive chemical reactions model)
library file: consec3.tfl (consecutive chemical reactions data)
model equation file: convolv3.mod (convolution integral model)
library file: convolv3.tfl (convolution integral data)
library file: qnfit.tfl (a set of parameter limits files)

rffit

# RFFIT

This program fits positive rational functions of the type required in enzyme kinetics.
Read in the test files rffit.tfi (for i = 1 to 4) and fit the appropriate models. Read the model titles before choosing the models to be fitted.
If you add random error using program ADDERR you will discover how very difficult it is to fit high order positive rational funtions. Test file rffit.tf5 is an example of a curve with two turning points.

Example test files for program RFFIT

rffit.tf1
rffit.tf2
rffit.tf3
rffit.tf4
rffit.tf5

rstest

# RSTEST

This program is dedicated to nonparametric tests such as the runs and signs tests.

Example test files for program RSTEST

anova1.tfl (non parameteric 1-way ANOVA)
anova2.tf1 (non parameteric 2-way ANOVA)
anova3.tf1 (Latin square ANOVA)
anova4.tf1 (groups and subgroups ANOVA)
anova5.tf1 (factorial ANOVA)
anova6.tf1 (repeat measures ANOVA)
cochranq.tf1 (Cochran repeat measures Q test)
g08daf.tf1 (Kendall coefficient of concordance)
normal.tf1 (KS 1-sample test for normal distribution)
npcorr.tfl (library file for non parametric correlations)
rstest.tf1 (sample of signed residuals for a runs test)
ttest.tf2 (use with ttest.tf3 for MWU or KS 2-sample tests)
ttest.tf3 (use with ttest.tf3 for MWU or KS 2-sample tests)

sffit

# SFFIT

This program fits cooperative ligand binding curves.
It is designed for experienced users who understand the concept of a binding polynomial and the relationship between the zeros of the Hessian of the binding polynomial and the definition of cooperativity.
Fit sffit.tf4 using a one then two site model and observe how a full cooperativity analysis is performed for cooperative ligand binding to more than one site.

Example test files for program SFFIT

sffit.tf1 (one site, exact data)
sffit.tf2 (random error added to sffit.tf1)
sffit.tf3 (2 sites, exact data)
sffit.tf4 (random error added to sffit.tf3

simplot

# SIMPLOT

This program creates publication quality graphs and there are many possible test files.

Use the library file simfig1.tfl (then the configuration file w_simfig1.cfg) to see how to create a plot with many features.
Use errorbar.tf1 to create normal error bars (4 columns).
Use errorbar.tf2 to create advanced error bars (6 columns).
Use matrix.tf1 to create a simple barchart.
Use barchart.tf1 and related files to create advanced barcharts.
Use vector.tf1 to create a simple piechart.
Use piechart.tf1 and the related files to create advanced piecharts.
Use surface.tf1 and related files to plot surfaces.
Use the library file spiral.tfl to plot spirals in space.
Use vfield.tf1 to plot a vector field.
Use the library file orbit.tfl to plot differential equation orbits.
Use rose.mod, ellipse.mod, helix.mod for plotting parametric equations.

Example test files for program SIMPLOT

simfig1.tfl (data for simfig1.ps)
w_simfig1.cfg (Configuration file for simfig1.tfl)
errorbar.tf1 (error bars added to y)
errorbar.tf2 (multiple or sloping error bars)
matrix.tf1 (data for a simple barchart)
barchart.tf1 (data for an advanced barchart)
vector.tf1 (data for a simple piechart)
piechart.tf1 (data for an advanced piechart)
surface.tf1 (data for 3D surface)
spiral.tf1 (data for 3D space curve)
vfield.tf1 (data for vector field)
orbit.tfl (data for differential equation orbits)
rose.mod (parameteric r(theta) rose model)
ellipse.mod (parameteric x(t), y(t) ellipse model)
helix.mod (parameteric x(t), y(t), z(t) helix model)

simstat

# SIMSTAT

This program allows data exploration and performs statistical tests, calculations and regressions.

Use normal.tf1 for exhaustive analysis of a vector and KS 1-sample test.
Use ttest.tf2 and ttest.tf3 for a t test and Mann Whitney U test.
Use the library file npcorr.tfl to explore all possible pairwise comparisons, exhaustive analysis of a matrix, correlations and nonparametric correlations.
Use the library file anova1.tfl to see how to do 1-way ANOVA with unequal sample sizes.
Use the matrix files anova1.tfl, anova2.tf1, anova3.tf3, anova4.tf1, anova5.tf1, and anova6.tf1 to see how to do the various types of ANOVA.
Use anova1.tf1 as a matrix for 1-way ANOVA followed by a Tukey Q test.
Use chisqd.tf4 for a chi-square contingency table and Fisher exact test.
Use cochranq.tf1 as a matrix for the Cochran Q test, noting the first column with optional case numbers.
File line.tf1 has data for linear regression, linfit.tf2 is for multilinear regression, while polnom.tf1 is for polynomial regression and logistic.tf1 can be used to explore the GLM binary logistic regression option.
The 5 by 5 matrix.tf1 can be used to explore the eigenvalue, determinant calculations or, with the 5 by 1 vector.tf1, the full rank calculation for Ax = b can be demonstrated.
The 7 by 5 matrix.tf2 can be used with the 7 by 1 vector.tf2 to see how overdetermined systems can be solved in the L-1, L-2 or L-infinity norms.
Trinomial parameter confidnce contours can be plotted using trinom.tf1 and trinom.tf2.
Generalized Linear Models can be fitted using the glm test files, while strata.tf1 and cox.tf1 can also be used to demonstrate GLM techniques.
Time series analysis can be explored using times.tf1.
Multivariate cluster or principal component analysis can be performed using cluster.tf1, while k-means clustering can be done with kmeans.tf1 as data and kmeans.tf2 as starting clusters.

Example test files for program SIMSTAT

anova1.tfl (1-way ANOVA, unequal sample sizes)
anova1.tfl (1-way ANOVA, equal sample sizes)
anova2.tf1 (2-way ANOVA, row and column design)
anova3.tf1 (3-way ANOVA, Latin square design)
anova4.tf1 (groups and subroups ANOVA)
anova5.tf1 (factorial ANOVA)
anova6.tf1 (repeat measures ANOVA)
binomial.tf2 (X,N analysis of proportions)
binomial.tf3 (X,N,t analysis of proportions)
chisqd.tf4 (chi-square and Fisher exact)
cluster.tf1 (cluster analysis data)
cochranq.tf1 (Cochran Q test)
cox.tf1 (Survival analysis using the simplified GLM interface)
glm.tf1 (Normal errors, Reciprocal link)
glm.tf2 (Binomial errors, Logistic link)
glm.tf3 (Poisson errors, Log link)
glm.tf4 (Gamma errors, Reciprocal link)
kmeans.tf1 (K-means clustering data)
kmeans.tf2 (Starting clusters for kmeans.tf2)
ld50.tf1 (y,N,x data for dose-response curves and LD50 estimation)
ld50.tf2 (x,y,N,s data for dose-response curves and LD50 estimation)
line.tf1 (straight line data)
linfit.tf2 (multilinear data)
logistic.tf1 (binary logistic regression)
matrix.tf1 (5 by 5)
matrix.tf2 (7 by 5)
meta.tf1 (X,N,t for 2 by 2 by k Meta Analysis)
mcnemar.tf1 (McNemar test data)
normal.tf1 (exhaustive analysis and KS 1-sample test)
npcorr.tfl (nonparametric correlation and all possible comparisons)
polnom.tf1 (polynomial data)
strata.tf1 (stratified conditional binary logistic regression)
times.tf1 (time series data)
trinom.tf1 (trinomial parameter contours)
trinom.tf2 (trinomial parameter contours)
ttest.tf2 (MWU and KS 2-sample)
ttest.tf3 (use with ttest.tf2)
tukeyq.tf1 (1-way Anova then Tukey Q)
vector.tf1 (5 by 1)
vector.tf2 (7 by 1)

spline

# SPLINE

This program takes in spline files such as can be created by programs CALCURVE or COMPARE, so that you can re-use the stored B-spline knots and coefficients in order to regenerate the original cubic spline for such uses as the following.

- Use as a standard curve for calibration
- Plot the spline function over a range
- Estimate areas under the spline over a range
- Estimate first and second derivatives at a point
- Estimate arc length over a range
- Estimate total absolute curvature over a range

The program can also fit splines to curve fitting type data files.

Read in the spline file spline.tf1 which can generate a cubic spline function directly from the B-spline knots and coefficients.
The file e02baf.tf1 contains data which can be fitted using the knots defined in the file e02baf.tf2.
Test files compare.tf1 and compare.tf2 are arbitrary weighted data sets with replicates to practise spline fitting, as with program COMPARE.

Example test file for program SPLINE

spline.tf1
e02baf.tf1
e02baf.tf2
compare.tf1
compare.tf2

ttest

# TTEST

This program calculates statistics related to the t distribution.
For instance, read in ttest.tf1 and test if these random numbers are consistent with a t distribution.
Alternatively read in the pairs ttest.tf2/ttest.tf3 or ttest.tf4/ttest.tf5 to see how to do t tests.

Example test files for program TTEST

ttest.tf1 (random numbers from a t distribution)
ttest.tf2 (numbers for a t test)
ttest.tf3 (data to be paired with ttest.tf2)
ttest.tf4 (numbers for a t test)
ttest.tf5 (data to be paired with ttest.tf4)

usermod

# USERMOD

This program is dedicated to developing user-supplied models for plotting, calculating integrals, optimizing, or finding zeros for user-supplied models.

Models (*.*) without a suffix (_e) use reverse Polish, but models (*_e.*) with an added suffix (_e) are for the same model expressed in standard mathematical notation. For instance, usermod1.tf1 defines a straight line in reverse Polish, while usermod1_e.tf1 defines a straight line in standard mathematical notation.

Test files for program USERMOD in reverse Polish

usermod1.tfi (i=1,9) (functions of 1 variable for usermod)
usermod2.tf1 (function of 2 variables for usermod)
usermod3.tf1 (function of 3 variables for usermod)
usermodd.tf1 (differential equation for usermod)
usermodn.tf1 (4 functions of 1 variable for plotting in usermod)
usermodn.tf2 (2 functions of 2 variables for root finding in usermod)
usermodn.tf3 (3 functions of 3 variables for root finding in usermod)
usermodn.tf4 (9 functions of 9 variables for root finding in usermod)
line3.mod (model for 3 lines)
rose.mod (parameteric r(theta) rose model)
ellipse.mod (parameteric x(t), y(t) ellipse model)
helix.mod (parameteric x(t), y(t), z(t) helix model)

Test files for program USERMOD using standard mathematical expressions

usermod1_e.tfi (i=1,9) (functions of 1 variable for usermod)
usermod2_e.tf1 (function of 2 variables for usermod)
usermod3_e.tf1 (function of 3 variables for usermod)
usermodd_e.tf1 (differential equation for usermod)
usermodn_e.tf1 (4 functions of 1 variable for plotting in usermod)
usermodn_e.tf2 (2 functions of 2 variables for root finding in usermod)
usermodn_e.tf3 (3 functions of 3 variables for root finding in usermod)
usermodn_e.tf4 (9 functions of 9 variables for root finding in usermod)
line3_e.mod (model for 3 lines)
rose_e.mod (parameteric r(theta) rose model)
ellipse_e.mod (parameteric x(t), y(t) ellipse model)
helix_e.mod (parameteric x(t), y(t), z(t) helix model)