diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml index 450be28..94832af 100644 --- a/.github/workflows/python-test.yml +++ b/.github/workflows/python-test.yml @@ -12,7 +12,7 @@ jobs: strategy: matrix: os: [ubuntu-latest, windows-latest] - python-version: [3.8, 3.9, '3.10', 3.11] + python-version: ['3.10', 3.11, 3.12] steps: - uses: actions/checkout@v4 diff --git a/CONTRIBUTORS b/CONTRIBUTORS index a1fb576..8f04b62 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -1,5 +1,6 @@ Maintainers (alphabetical by last name) - Blaise Thompson (@untzag) + Daniel Kohler (@ddkohler) Contributors (alphabetical by last name) - Daniel Kohler (@p770193) + Kyle Sunden (@ksunden) + Blaise Thompson (@untzag) diff --git a/README.rst b/README.md similarity index 58% rename from README.rst rename to README.md index 6b6aa37..b38a4b1 100644 --- a/README.rst +++ b/README.md @@ -1,41 +1,35 @@ -WrightSim -========= +# WrightSim + A simulation package for multidimensional spectroscopy. -Installation ------------- +## Installation -.. code-block:: bash - +``` $ git clone https://github.com/wright-group/WrightSim $ cd WrightSim - $ python setup.py develop - -Note: This will install all required dependencies. -PyCUDA is not a required dependency in general, but is required if GPU simulations are desired. - -.. code-block:: bash + $ python -m pip install -e . +``` - $ pip install pycuda +* This will install all required dependencies. Use ``--no-deps`` flag to only install the package. +* PyCUDA is not a required dependency in general, but is required if GPU simulations are desired: +` $ pip install pycuda` +PyCUDA requires an Nvidia graphics card and drivers, and the CUDA libraries installed. -PyCUDA requires an Nvida graphics card and drivers, and the CUDA libraries installed. +## Usage -Usage ------ - -An example script is provided at ``./scripts/target.py`` +An example script is provided at `./scripts/target.py` This script can be modified to suit an individual simulation. The basic steps are: -#. Select an experiment -#. Set up the axes of the scan -#. Set the time interfal and buffers -#. Create a Hamiltonian object -#. Run the scan -#. (optional) review the results +1. Select an experiment +2. Set up the axes of the scan +3. Set the time interval and buffers +4. Create a Hamiltonian object +5. Run the scan +6. (optional) review the results Level of parallelism is selected by the ``mp`` parameter of teh ``exp.run`` method. @@ -44,13 +38,11 @@ Level of parallelism is selected by the ``mp`` parameter of teh ``exp.run`` meth - ``False`` or ``""`` runs in single threaded mode -The script is set up to read the dimensions from arguments. -it can be run like so: - -.. code-block:: bash - +The script is set up to read the dimensions from arguments; +it can be run like so: +``` $ ./target.py 32 16 - +``` This will run a 3D simulation of 32x32x16 Freq-Freq-Delay. diff --git a/WrightSim/__version__.py b/WrightSim/__version__.py index 647e709..aae27a5 100644 --- a/WrightSim/__version__.py +++ b/WrightSim/__version__.py @@ -7,8 +7,7 @@ __all__ = ["__version__", "__branch__"] # read from VERSION file -with __here__ / "VERSION" as f: - __version__ = f.read_text().strip() +__version__ = (__here__ / "VERSION").read_text().strip() # add git branch, if appropriate p = __here__.parent / ".git" / "HEAD" diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..fed528d --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["setuptools"] +build-backend = "setuptools.build_meta" diff --git a/setup.py b/setup.py index ad1401e..6b10711 100755 --- a/setup.py +++ b/setup.py @@ -3,12 +3,18 @@ import pathlib from setuptools import setup, find_packages + __here__ = pathlib.Path(__file__).parent + +def read(path): + with open(path) as f: + return f.read() + + extra_files = {"WrightSim": ["VERSION"]} +version = read(__here__ / "WrightSim" / "VERSION").strip() -with __here__ / "WrightSim" / "VERSION" as version_file: - version = version_file.read_text().strip() setup( name="WrightSim", @@ -33,6 +39,8 @@ }, version=version, description="A simulation package for multidimensional spectroscopy.", + long_description=read(__here__ / "README.md"), + long_description_content_type="text/markdown", author="WrightSim Developers", license="MIT", url="https://github.com/wright-group/WrightSim", @@ -43,8 +51,9 @@ "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.5", - "Programming Language :: Python :: 3.6", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", "Topic :: Scientific/Engineering", ], )