This library allows to generate Nearly Orthogonal Latin Hypercubes (NOLH) according to Cioppa (2007) and De Rainville et al. (2012) and reference therein.
Installation
Clone the repository
$ git clone http://github.com/fmder/pynolh.git
and from the cloned directory type
$ python setup.py install
PyNOLH requires Numpy.
Usage
The library contains a single generator and a function to retrieve the necessary parameters from a desired dimensionality. To generate a 6 dimension NOLH from the indentity permutation:
import pynolh dim = 6 m, q, r = pynolh.params(dim) conf = range(q) remove = range(dim - r, dim) nolh = pynolh.nolh(conf, remove)
The NOLH returned is a numpy array with one row being one sample.
You can also produce a NOLH from a random permutation configuration vector and remove random columns:
import pynolh import random dim = 6 m, q, r = pynolh.params(dim) conf = random.sample(range(q), q) remove = random.sample(range(q), r) nolh = pynolh.nolh(conf, remove)
The nolh() function accepts configurations with either numbers in [0 q-1] or [1 q].
import pynolh dim = 6 m, q, r = pynolh.params(dim) conf = range(1, q + 1) remove = range(dim - r + 1, dim + 1) nolh = pynolh.nolh(conf, remove)
Some prebuilt configurations are given within the library. The CONF module attribute is a dictionary with the dimension as key and a configuration, columns to remove pair as value.
import pynolh conf, remove = pynolh.CONF[6] nolh = pynolh.nolh(conf, remove)
The configurations for dimensions 2 to 7 are from Cioppa (2007) and 8 to 29 are from De Rainville et al. 2012.
Configuration Repository
See the Quasi Random Sequences Repository for more configurations.
References
Cioppa, T. M., & Lucas, T. W. (2007). Efficient nearly orthogonal and space-filling Latin hypercubes. Technometrics, 49(1).
De Rainville, F.-M., Gagné, C., Teytaud, O., & Laurendeau, D. (2012). Evolutionary optimization of low-discrepancy sequences. ACM Transactions on Modeling and Computer Simulation (TOMACS), 22(2), 9.
Metadata
Release files for pynolh 0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| pynolh-0.1.tar.gz | 6.3 kB | Without provenance | Details for pynolh-0.1.tar.gz |
Release files / pynolh-0.1.tar.gz
| Download URL | pynolh-0.1.tar.gz |
|---|---|
| Size | 6.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fee53e0d79f6d6d636bc4e75ea7e10ea27fcf88a51e02c73e79ea0ae5ae99bf0
|
|
BLAKE2b-256 checksum How to use checksums |
39214a19c5faedf63c959c5fedfd57091bf385b509bd20bbac15ee572b380743
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for pynolh 0.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.