Package to generate and analyse orthogonal arrays and optimal designs
Orthogonal Array Package
The Orthogonal Array package contains functionality to generate and analyse orthogonal arrays, optimal designs and conference designs. Features include generation of complete series of orthogonal arrays, reduction of arrays to normal form and calculation of properties such as the strength or D-efficiency of an array. For more information about the package see the documentation at oapackage.readthedocs.io and the webpage http://pietereendebak.nl/oapackage/.
The package can be used from Python:
>>> import oapackage >>> al=oapackage.exampleArray(0) >>> al.showarray() array: 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 >>> print('D-efficiency %f, rank %d' % (al.Defficiency(), al.rank()) ) D-efficiency 1.000000, rank 2 >>> print('Generalized wordlength pattern: %s' % str(al.GWLP())) Generalized wordlength pattern: (1.0, 0.0, 0.0)
For more examples see the Jupyter notebooks in the docs/examples.
If you use this code or any of the results, please cite this program as follows:
- Complete Enumeration of Pure-Level and Mixed-Level Orthogonal Arrays, E.D. Schoen, P.T. Eendebak, M.V.M. Nguyen, Volume 18, Issue 2, pages 123-140, 2010.
- Two-Level Designs to Estimate All Main Effects and Two-Factor Interactions, Pieter T. Eendebak, Eric D. Schoen, Technometrics Vol. 59 , Iss. 1, 2017
The code was written by:
- Pieter Eendebak firstname.lastname@example.org
- Alan Vazquez-Alcocer
- Vincent Brouerius van Nidek
Ideas contributed by:
See the file LICENSE for copyright details.
The Python interface to the package is available on the Python Package index. Installation can be done using the following command:
$ pip install OApackage
pip install OApackage --user if you do not have admin rights). To compile the package you need Python, Numpy and Swig 3.x.
The command line tools have been tested using Linux, Windows XP/Win7/Win10 and Raspberry Pi.
The program uses a
cmake build system. From the command line type:
$ mkdir -p build; cd build $ cmake .. $ make $ make install
To perform tests run
pytest. To obtain a coverage report, run
$ coverage run --source='./oapackage' -m pytest $ coverage report --omit oapackage/markup.py,oapackage/tests/*.py,oapackage/deprecated.py
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.