Metadata-Version: 2.1
Name: FortranRNG
Version: 1.2.0
Summary: Fortran RNG for Python3
Home-page: https://github.com/BrokenShell/FortranRNG-API/tree/main/FortranRNG
Author: Robert Sharp
Author-email: webmaster@sharpdesigndigital.com
License: Free for non-commercial use
Keywords: FortranRNG,High Performance Random Value Toolkit,percent true,d,dice,random below,random integer,random range,plus or minus,plus of minus linear,canonical,random float,triangular,ZeroCool Algorithms,random index,front linear,middle linear,back linear,quantum linear
Platform: Darwin
Platform: Linux
Platform: Windows
Classifier: Development Status :: 5 - Production/Stable
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Fortran
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: Microsoft :: Windows
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE

# FortranRNG
## Fortran RNG for Python3
Installation requires a modern Fortran compiler.
- macOS: Gfortran `brew install gcc`
- Debian Linux: Gfortran `apt install gcc gfortran`
- Amazon (Red Hat) Linux: Gfortran `yum groupinstall "Development Tools"`
- Windows: Cygwin `www.cygwin.org/cygwin`, good luck with that!

### PyPi Installation
```shell
python3 -m pip install FortranRNG
```

### Source Installation
```shell
python3 -m pip install ./FortranRNG
```

### FortranRNG Python Interface
- Boolean Generator
  - `FortranRNG.percent_true(percent: float) -> bool(int)`
- Integer Generators
  - `FortranRNG.random_below(limit: int) -> int`
  - `FortranRNG.random_integer(low: int, high: int) -> int`
  - `FortranRNG.random_range(start: int, stop: int, step: int) -> int`
  - `FortranRNG.d(sides: int) -> int`
  - `FortranRNG.dice(rolls: int, sides: int) -> int`
  - `FortranRNG.plus_or_minus(amount: int) -> int`
  - `FortranRNG.plus_or_minus_linear(amount: int) -> int`
- Float Generators
  - `FortranRNG.canonical() -> float`
  - `FortranRNG.random_float(low, high) -> float`
  - `FortranRNG.triangular(low: float, high: float, mode: float) -> float`
- ZeroCool Index Generators
  - `FortranRNG.random_index(limit) -> int`
  - `FortranRNG.front_linear(limit) -> int`
  - `FortranRNG.middle_linear(limit) -> int`
  - `FortranRNG.back_linear(limit) -> int`
  - `FortranRNG.quantum_linear(limit) -> int`
