Autoregressive to Anything (ARTA) processes are stationary
time series with arbitrary marginal distributions and feasible
autocorrelation structure specified through lag p.
ARTA processes are designed to be used as input to computer
For more on the theory of ARTA processes, see the paper (in Postscript)
by Cario and Nelson.
All ARTA software is Fortran source code that reads
an input file and produces an output file; it is not interactive.
The software is distributed "as is," without warranties of any kind,
either express or implied. Please report problems to email@example.com
The original portion of the software is copyrighted by Marne
C. Cario and Barry L. Nelson 1996. The authors grant permission for
unlimited personal use of this software without fee. However, no
derivative works based on the software may be prepared, including
embedding any portion of it in another software product, without
permission of the authors.
Click to download the software you need.
Latest Release: 1.1 (5/30/96).
ARTAFACTS (ARTA Fitting Algorithm for Constructing Time Series)
fits ARTA processes for a given marginal distribution and up to five
lag autocorrelations; it can also estimate the autocorrelation
function for an empirical time series. ARTAFACTS writes an input file
ARTAFACTS README is the "read me" file for ARTAFACTS.
ARTAGEN (ARTA GENeration algorithm) generates a stationary ARTA
process with given marginal distribution and up to five lag
ARTAGEN README is the "read me" file for ARTAGEN.
- Sample input files for testing:
input.dat is an input file for ARTAFACTS corresponding to an ARTA
process with exponential marginals and the first two autocorrelations
specified. Save as
tsdata.dat is an empirical time series that can be input for
input.gen is the input file for ARTAGEN corresponding to
input.dat for ARTAFACTS. Save as
ARTAFACTS and ARTAGEN have been successfully compiled using standard
Fortran compilers under HP-UX, SunOS, VMS and with Micrsoft Fortran.
ARTAFACTS contains two Block Data structures that cause
problems for some compliers. If problems arise, comment out or delete
the Block Data structures, and un-comment the equivalent
assignment statements included in the Main program.
Microsoft Fortran Notes
(notes courtesy of Jim Steinbugl at Ohio State University)
For anyone trying to compile and link under MS FORTRAN 5.1, the
following hints might be helpful:
- Use the /Gt option on the FORTRAN compiler to get around the DATA
SEGMENT problem. Without this option, the compiler will report
something to the effect that "DGROUP data allocation exceeds 64K".
Basically, the amount of data is to large to be held in one 64K
segment of memory. Using the /Gt option tells the compiler to
allocate multiple 64K data segments to the program.
- Using the inline 8087 emulator calls works well (I did not try
inline 8087 calls).
- Trying to use the regular 8087 floating point calls or the regular
8087 emulator calls does NOT work. Both result in too much overhead
and the result is a CODE segment overflow (i.e., the code segment
overflows the 64K barrier).
- You MUST use the Optimize for SPACE option on the compiler. If
you do not, the compiler will experience a heap overflow on the 3rd
pass (i.e., the compiler runs out of dynamic memory space).
- Also, do NOT use any other optimizations (i.e., Optimize for TIME,
LOOP Optimization, or Improve Floating Point Consistency) because this
results in a heap overflow on the 3rd pass REGARDLESS of whether or
not you have Optimize for SPACE turned on.