Metadata-Version: 2.4
Name: strain_step
Version: 2026.10.6
Summary: A SEAMM plug-in for straining periodic systems
Home-page: https://github.com/molssi-seamm/strain_step
Author: Paul Saxe
Author-email: psaxe@molssi.org
License: BSD-3-Clause
Keywords: SEAMM,SEAMMplugin,flowchart
Platform: Linux
Platform: Mac OS-X
Platform: Unix
Platform: Windows
Classifier: Environment :: Plugins
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering :: Chemistry
Classifier: Topic :: Scientific/Engineering :: Physics
Classifier: License :: OSI Approved :: BSD License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Description-Content-Type: text/x-rst
License-File: LICENSE
License-File: AUTHORS.rst
Requires-Dist: seamm>=2026.10.3
Requires-Dist: seamm-util
Requires-Dist: seamm-widgets
Requires-Dist: tabulate
Provides-Extra: test
Requires-Dist: seamm-exec>=2026.10.5.2; extra == "test"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: license-file
Dynamic: platform
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: summary

====================
SEAMM Strain Plug-in
====================

.. image:: https://img.shields.io/github/issues-pr-raw/molssi-seamm/strain_step
   :target: https://github.com/molssi-seamm/strain_step/pulls
   :alt: GitHub pull requests

.. image:: https://github.com/molssi-seamm/strain_step/workflows/CI/badge.svg
   :target: https://github.com/molssi-seamm/strain_step/actions
   :alt: Build Status

.. image:: https://codecov.io/gh/molssi-seamm/strain_step/branch/master/graph/badge.svg
   :target: https://codecov.io/gh/molssi-seamm/strain_step
   :alt: Code Coverage

.. image:: https://img.shields.io/lgtm/grade/python/g/molssi-seamm/strain_step.svg?logo=lgtm&logoWidth=18
   :target: https://lgtm.com/projects/g/molssi-seamm/strain_step/context:python
   :alt: Code Quality

.. image:: https://github.com/molssi-seamm/strain_step/workflows/Documentation/badge.svg
   :target: https://molssi-seamm.github.io/strain_step/index.html
   :alt: Documentation Status

.. image:: https://img.shields.io/pypi/v/strain_step.svg
   :target: https://pypi.python.org/pypi/strain_step
   :alt: PyPi VERSION

A SEAMM plug-in for straining periodic systems.

* Free software: BSD-3-Clause
* Documentation: https://molssi-seamm.github.io/strain_step/index.html
* Code: https://github.com/molssi-seamm/strain_step

Features
--------

Applies an arbitrary strain to the system, using input in `Voigt notation`_. Note the
factor of two in the engineering shear strains, which is the normal convention used in
simulations. Other than that, there really isn't much to say about this plug-in! It is
simple, and it works.

.. _`Voigt notation`: https://en.wikipedia.org/wiki/Voigt_notation

Acknowledgements
----------------

This package was created with Cookiecutter_ and the
`molssi-seamm/cookiecutter-seamm-plugin`_ project template.

.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`molssi-seamm/cookiecutter-seamm-plugin`: https://github.com/molssi-seamm/cookiecutter-seamm-plugin

Developed by the Molecular Sciences Software Institute (MolSSI_),
which receives funding from the `National Science Foundation`_ under
award CHE-2136142.

.. _MolSSI: https://molssi.org
.. _`National Science Foundation`: https://www.nsf.gov


=======
History
=======

2026.10.6 -- Bugfix: a new system or configuration keeps the current name
    * With "keep current name" a new system or configuration was left without a name;
      it now takes the current system's or configuration's name.

2026.10.5 -- SEAMM's standard choices for the strained structure; bugfixes
    * The strained structure can overwrite the current configuration, go in a new
      configuration (the default, as before) or in a new system, with SEAMM's
      standard choices and names. A new configuration is named after the strains,
      e.g. "strained by (0.01, 0, 0, 0, 0, 0)" -- it was left unnamed -- and the
      system name is asked for only when a new system is made. Flowcharts saved with
      the earlier wording ("be put in a new configuration") are read as before.
    * Bugfix: when overwriting the current configuration, the table of the cell
      showed the strained cell as the initial one too.
    * Bugfix: a system that is not periodic ended the flowchart instead of being
      left as it is.
    * Builds again with Python 3.12 (an old ``versioneer.py`` no longer worked);
      requires seamm 2026.10.3.

2022.11.7 -- Initial release
  First version, which handles straining systems moving the atoms affinely.
