From fb5a9fa61bef7a8aa376bc825587b9acf8eb4ca6 Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 15:20:59 -0400 Subject: [PATCH 01/21] skpkg: list dependencies in requirements folder --- requirements/build.txt | 0 requirements/docs.txt | 1 + 2 files changed, 1 insertion(+) delete mode 100644 requirements/build.txt diff --git a/requirements/build.txt b/requirements/build.txt deleted file mode 100644 index e69de29b..00000000 diff --git a/requirements/docs.txt b/requirements/docs.txt index ab17b1c8..5f34c6ed 100644 --- a/requirements/docs.txt +++ b/requirements/docs.txt @@ -1,4 +1,5 @@ sphinx sphinx_rtd_theme +sphinx-copybutton doctr m2r From bc908d22db512e4d8794af02265405d8664f6f0d Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 15:25:28 -0400 Subject: [PATCH 02/21] skpkg: add CI and issue/PR templates --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index a25212ea..90d4ef7a 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ __pycache__/ .Python env/ build/ +_build/ develop-eggs/ dist/ downloads/ From 97a245372b42da74b3276644daca36b38451a58b Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 15:30:59 -0400 Subject: [PATCH 03/21] skpkg: add pyproject.toml --- pyproject.toml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 852f9dec..db96dbe0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,12 +6,12 @@ build-backend = "setuptools.build_meta" name = "diffpy.pdfgui" dynamic=['version', 'dependencies'] authors = [ - { name="Simon J.L. Billinge group", email="simon.billinge@gmail.com" }, + { name="Simon J.L. Billinge group", email="sb2896@columbia.edu" }, ] maintainers = [ - { name="Simon J.L. Billinge group", email="simon.billinge@gmail.com" }, + { name="Simon J.L. Billinge group", email="sb2896@columbia.edu" }, ] -description = "GUI for PDF simulation and structure refinement." +description = "Graphical user interface program for structure refinements to atomic pair distribution function." keywords = ['PDF structure refinement GUI'] readme = "README.rst" requires-python = ">=3.11, <3.14" From 9e7efc48ff7d0e89fb9bbd782931003fce694992 Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 15:38:51 -0400 Subject: [PATCH 04/21] skpkg: add config files for pre-commit --- .flake8 | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.flake8 b/.flake8 index 2d2cb168..04d2d0b0 100644 --- a/.flake8 +++ b/.flake8 @@ -1,3 +1,5 @@ +# As of now, flake8 does not natively support configuration via pyproject.toml +# https://github.com/microsoft/vscode-flake8/issues/135 [flake8] exclude = .git, From 4027429cd8f713290e04239f7cad37e4d9e487fa Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 15:41:58 -0400 Subject: [PATCH 05/21] skpkg: add config files readthedocs, codecov, GitHub --- .../pull_request_template.md | 15 +++++ .../workflows/build-wheel-release-upload.yml | 4 +- .github/workflows/check-news-item.yml | 2 +- .../matrix-and-codecov-on-merge-to-main.yml | 67 +++---------------- .github/workflows/publish-docs-on-release.yml | 2 +- .readthedocs.yaml | 13 ++++ 6 files changed, 40 insertions(+), 63 deletions(-) create mode 100644 .github/PULL_REQUEST_TEMPLATE/pull_request_template.md create mode 100644 .readthedocs.yaml diff --git a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md new file mode 100644 index 00000000..1099d862 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md @@ -0,0 +1,15 @@ +### What problem does this PR address? + + + +### What should the reviewer(s) do? + + + + diff --git a/.github/workflows/build-wheel-release-upload.yml b/.github/workflows/build-wheel-release-upload.yml index 1ed2e6b3..76ad272e 100644 --- a/.github/workflows/build-wheel-release-upload.yml +++ b/.github/workflows/build-wheel-release-upload.yml @@ -8,11 +8,11 @@ on: jobs: release: - uses: Billingegroup/release-scripts/.github/workflows/_build-wheel-release-upload.yml@v0 + uses: scikit-package/release-scripts/.github/workflows/_build-wheel-release-upload.yml@v0 with: project: diffpy.pdfgui c_extension: false - github_admin_username: sbillinge + maintainer_GITHUB_username: sbillinge secrets: PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }} PAT_TOKEN: ${{ secrets.PAT_TOKEN }} diff --git a/.github/workflows/check-news-item.yml b/.github/workflows/check-news-item.yml index 33a188fd..63692232 100644 --- a/.github/workflows/check-news-item.yml +++ b/.github/workflows/check-news-item.yml @@ -7,6 +7,6 @@ on: jobs: check-news-item: - uses: Billingegroup/release-scripts/.github/workflows/_check-news-item.yml@v0 + uses: scikit-package/release-scripts/.github/workflows/_check-news-item.yml@v0 with: project: diffpy.pdfgui diff --git a/.github/workflows/matrix-and-codecov-on-merge-to-main.yml b/.github/workflows/matrix-and-codecov-on-merge-to-main.yml index 8fb1923b..ac39241b 100644 --- a/.github/workflows/matrix-and-codecov-on-merge-to-main.yml +++ b/.github/workflows/matrix-and-codecov-on-merge-to-main.yml @@ -11,62 +11,11 @@ on: workflow_dispatch: jobs: - coverage: - defaults: - run: - shell: bash -l {0} - - runs-on: ${{ matrix.os }} - strategy: - fail-fast: false - matrix: - os: [ubuntu-latest, windows-latest, macos-13, macos-14] - python-version: ["3.11", "3.12", "3.13"] - env: - LATEST_PYTHON_VERSION: "3.13" - steps: - - name: Check out diffpy.pdfgui - uses: actions/checkout@v4 - - - name: Initialize miniconda - uses: conda-incubator/setup-miniconda@v3 - with: - activate-environment: test - miniforge-version: latest - environment-file: environment.yml - auto-activate-base: false - python-version: ${{ matrix.python-version }} - - - name: Conda config - run: >- - conda config --set always_yes yes - --set changeps1 no - - - name: Install diffpy.pdfgui and requirements - run: | - conda install --file requirements/test.txt - conda install wxpython diffpy.utils matplotlib-base - pip install diffpy.pdffit2==1.5.0rc1 - python -m pip install . --no-deps - - - name: Start Xvfb for ubuntu-latest only - if: matrix.os == 'ubuntu-latest' - run: | - sudo apt-get install -y xvfb - export DISPLAY=:99 - Xvfb :99 -screen 0 1024x768x16 & - - - name: Validate diffpy.pdfgui - run: | - if [[ "${{ matrix.os }}" == "ubuntu-latest" ]]; then - export DISPLAY=:99 - fi - pytest --cov - coverage report -m - codecov - - - name: Upload coverage to Codecov - if: matrix.os == 'ubuntu-latest' && matrix.python-version == env.LATEST_PYTHON_VERSION - uses: codecov/codecov-action@v4 - env: - CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} + matrix-coverage: + uses: scikit-package/release-scripts/.github/workflows/_matrix-and-codecov-on-merge-to-main.yml@v0 + with: + project: diffpy.pdfgui + c_extension: false + headless: true + secrets: + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} diff --git a/.github/workflows/publish-docs-on-release.yml b/.github/workflows/publish-docs-on-release.yml index b4593308..e0f24785 100644 --- a/.github/workflows/publish-docs-on-release.yml +++ b/.github/workflows/publish-docs-on-release.yml @@ -7,7 +7,7 @@ on: jobs: docs: - uses: Billingegroup/release-scripts/.github/workflows/_publish-docs-on-release.yml@v0 + uses: scikit-package/release-scripts/.github/workflows/_publish-docs-on-release.yml@v0 with: project: diffpy.pdfgui c_extension: false diff --git a/.readthedocs.yaml b/.readthedocs.yaml new file mode 100644 index 00000000..47f7a017 --- /dev/null +++ b/.readthedocs.yaml @@ -0,0 +1,13 @@ +version: 2 + +build: + os: "ubuntu-22.04" + tools: + python: "latest" + +python: + install: + - requirements: requirements/docs.txt + +sphinx: + configuration: doc/source/conf.py From b974e794984fc096fb823cbfc71646ec164af5a1 Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 15:44:12 -0400 Subject: [PATCH 06/21] skpkg: migrate documentation --- .../api/diffpy.pdfgui.example_package.rst | 31 +++++ doc/source/api/diffpy.pdfgui.rst | 27 ++--- doc/source/conf.py | 47 ++++++-- doc/source/getting-started.rst | 79 +++++++++++++ doc/source/img/scikit-package-logo-text.png | Bin 0 -> 187608 bytes doc/source/index.rst | 79 +++---------- doc/source/license.rst | 111 +++++------------- doc/source/snippets/example-table.rst | 28 +++++ 8 files changed, 235 insertions(+), 167 deletions(-) create mode 100644 doc/source/api/diffpy.pdfgui.example_package.rst create mode 100644 doc/source/getting-started.rst create mode 100644 doc/source/img/scikit-package-logo-text.png create mode 100644 doc/source/snippets/example-table.rst diff --git a/doc/source/api/diffpy.pdfgui.example_package.rst b/doc/source/api/diffpy.pdfgui.example_package.rst new file mode 100644 index 00000000..0390b965 --- /dev/null +++ b/doc/source/api/diffpy.pdfgui.example_package.rst @@ -0,0 +1,31 @@ +.. _example_package documentation: + +|title| +======= + +.. |title| replace:: diffpy.pdfgui.example_package package + +.. automodule:: diffpy.pdfgui.example_package + :members: + :undoc-members: + :show-inheritance: + +|foo| +----- + +.. |foo| replace:: diffpy.pdfgui.example_package.foo module + +.. automodule:: diffpy.pdfgui.example_package.foo + :members: + :undoc-members: + :show-inheritance: + +|bar| +----- + +.. |bar| replace:: diffpy.pdfgui.example_package.bar module + +.. automodule:: diffpy.pdfgui.example_package.foo + :members: + :undoc-members: + :show-inheritance: diff --git a/doc/source/api/diffpy.pdfgui.rst b/doc/source/api/diffpy.pdfgui.rst index ab800cde..8166640e 100644 --- a/doc/source/api/diffpy.pdfgui.rst +++ b/doc/source/api/diffpy.pdfgui.rst @@ -1,7 +1,9 @@ :tocdepth: -1 -diffpy.pdfgui package -===================== +|title| +======= + +.. |title| replace:: diffpy.pdfgui package .. automodule:: diffpy.pdfgui :members: @@ -12,28 +14,17 @@ Subpackages ----------- .. toctree:: - :titlesonly: - - diffpy.pdfgui.icons - diffpy.pdfgui.gui - diffpy.pdfgui.applications - diffpy.pdfgui.control + diffpy.pdfgui.example_package Submodules ---------- -diffpy.pdfgui.utils module -^^^^^^^^^^^^^^^^^^^^^^^^^^ - -.. automodule:: diffpy.pdfgui.utils - :members: - :undoc-members: - :show-inheritance: +|module| +-------- -diffpy.pdfgui.tui module -^^^^^^^^^^^^^^^^^^^^^^^^ +.. |module| replace:: diffpy.pdfgui.example_submodule module -.. automodule:: diffpy.pdfgui.tui +.. automodule:: diffpy.pdfgui.example_submodule :members: :undoc-members: :show-inheritance: diff --git a/doc/source/conf.py b/doc/source/conf.py index e4d1788a..84dce5e6 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -1,7 +1,7 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- # -# diffpy.pdfgui documentation build configuration file, created by +# diffpy.pdfgui documentation build configuration file, created by # noqa: E501 # sphinx-quickstart on Thu Jan 30 15:49:41 2014. # # This file is execfile()d with the current directory set to its @@ -18,15 +18,21 @@ from importlib.metadata import version from pathlib import Path +# Attempt to import the version dynamically from GitHub tag. +try: + fullversion = version("diffpy.pdfgui") +except Exception: + fullversion = "No version found. The correct version will appear in the released version." # noqa: E501 + # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the -# documentation root, use Path().resolve() to make it absolute, like shown here. +# documentation root, use Path().resolve() to make it absolute, like shown here. # noqa: E501 # sys.path.insert(0, str(Path(".").resolve())) sys.path.insert(0, str(Path("../..").resolve())) sys.path.insert(0, str(Path("../../src").resolve())) # abbreviations -ab_authors = "Billinge Group members and community contributors" +ab_authors = "Simon J.L. Billinge group" # -- General configuration ------------------------------------------------ @@ -43,6 +49,7 @@ "sphinx.ext.viewcode", "sphinx.ext.intersphinx", "sphinx_rtd_theme", + "sphinx_copybutton", "m2r", ] @@ -68,7 +75,6 @@ # |version| and |release|, also used in various other places throughout the # built documents. -fullversion = version(project) # The short X.Y version. version = "".join(fullversion.split(".post")[:1]) # The full version, including alpha/beta/rc tags. @@ -88,6 +94,11 @@ # substitute YEAR in the copyright string copyright = copyright.replace("%Y", year) +# For sphinx_copybutton extension. +# Do not copy "$" for shell commands in code-blocks. +copybutton_prompt_text = r"^\$ " +copybutton_prompt_is_regexp = True + # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. exclude_patterns = ["build"] @@ -123,6 +134,14 @@ # html_theme = "sphinx_rtd_theme" +html_context = { + "display_github": True, + "github_user": "diffpy", + "github_repo": "diffpy.pdfgui", + "github_version": "main", + "conf_py_path": "/doc/source/", +} + # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. @@ -158,7 +177,7 @@ # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied # directly to the root of the documentation. -html_extra_path = ["../manual"] +# html_extra_path = [] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. @@ -221,7 +240,13 @@ # (source start file, target name, title, # author, documentclass [howto, manual, or own class]). latex_documents = [ - ("index", "diffpy.pdfgui.tex", "diffpy.pdfgui Documentation", ab_authors, "manual"), + ( + "index", + "diffpy.pdfgui.tex", + "diffpy.pdfgui Documentation", + ab_authors, + "manual", + ), ] # The name of an image file (relative to this directory) to place at the top of @@ -249,7 +274,15 @@ # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). -man_pages = [("index", "diffpy.pdfgui", "diffpy.pdfgui Documentation", ab_authors, 1)] +man_pages = [ + ( + "index", + "diffpy.pdfgui", + "diffpy.pdfgui Documentation", + ab_authors, + 1, + ) +] # If true, show URL addresses after external links. # man_show_urls = False diff --git a/doc/source/getting-started.rst b/doc/source/getting-started.rst new file mode 100644 index 00000000..ac7d510e --- /dev/null +++ b/doc/source/getting-started.rst @@ -0,0 +1,79 @@ +:tocdepth: -1 + +.. index:: getting-started + +.. _getting-started: + +================ +Getting started +================ + +Here are some example templates provided to help you get started with writing your documentation. You can use these templates to create your own documentation. + +Reuse ``.rst`` files across multiple pages +------------------------------------------ + +Here is how you can reuse a reusable block of ``.rst`` files across multiple pages: + +.. include:: snippets/example-table.rst + +.. warning:: + + Ensure that the ``.rst`` file you are including is not too long. If it is too long, it may be better to split it into multiple files and include them separately. + +Refer to a specific section in the documentation +------------------------------------------------ + +You can use the ``ref`` tag to refer to a specific section in the documentation. For example, you can refer to the section below using the ``:ref:`` tag as shown :ref:`here `. + +.. note:: + + Please check the raw ``.rst`` file of this page to see the exact use of the ``:ref:`` tag. + +Embed your code snippets in the documentation +--------------------------------------------- + +Here is how you can write a block of code in the documentation. You can use the ``code-block`` directive to write a block of code in the documentation. For example, you can write a block of code as shown below: + +.. code-block:: bash + + # Create a new environment, without build dependencies (pure Python package) + conda create -n -env python=3.13 \ + --file requirements/test.txt \ + --file requirements/conda.txt + + # Create a new environment, with build dependencies (non-pure Python package) + conda create -n -env python=3.13 \ + --file requirements/test.txt \ + --file requirements/conda.txt \ + --file requirements/build.txt + + # Activate the environment + conda activate _env + + # Install your package locally + # `--no-deps` to NOT install packages again from `requirements.pip.txt` + pip install -e . --no-deps + + # Run pytest locally + pytest + + # ... run example tutorials + +.. _attach-image: + +Attach an image to the documentation +------------------------------------ + +Here is how you attach an image to the documentation. The ``/doc/source/img/scikit-package-logo-text.png`` example image is provided in the template. + +.. image:: ./img/scikit-package-logo-text.png + :alt: codecov-in-pr-comment + :width: 400px + :align: center + + +Other useful directives +----------------------- + +Here is how you can do menu selection :menuselection:`Admin --> Settings` and display labels for buttons like :guilabel:`Privacy level`. diff --git a/doc/source/img/scikit-package-logo-text.png b/doc/source/img/scikit-package-logo-text.png new file mode 100644 index 0000000000000000000000000000000000000000..823178dcb1316d5cfd09bc43d8210e5c4ce38f28 GIT binary patch literal 187608 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 h|9pew|C30$uOMa3u}J+)EaB{~z=&QIY@v literal 0 HcmV?d00001 diff --git a/doc/source/index.rst b/doc/source/index.rst index 081bd2be..dfe38e22 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -4,66 +4,26 @@ .. |title| replace:: diffpy.pdfgui documentation -diffpy.pdfgui - GUI for PDF simulation and structure refinement. +``diffpy.pdfgui`` - Graphical user interface program for structure refinements to atomic pair distribution function. | Software version |release| -| Last updated |today| +| Last updated |today|. -For users who do not have the expertise or necessity for command -line analysis, PDFgui is a convenient and easy to use graphical front -end for the PDFfit2 refinement program. It is capable of full-profile -fitting of the atomic pair distribution function (PDF) derived from x-ray -or neutron diffraction data and comes with built in graphical and structure -visualization capabilities. +=============== +Getting started +=============== -PDFgui is a friendly interface to the PDFfit2 refinement engine, with many -powerful extensions. To get started, please open the :ref:`manual` -(:download:`pdf `) from the help menu or follow the :ref:`tutorial`. +Welcome to the ``diffpy.pdfgui`` documentation! + +To get started, please visit the :ref:`Getting started ` page. ======= Authors ======= -DiffPy was initiated as part of the Distributed Data Analysis of Neutron -Scattering Experiments (DANSE) project, funded by the National Science -Foundation under grant DMR-0520547. Any opinions, findings, and conclusions or -recommendations expressed in this material are those of the author(s) -and do not necessarily reflect the views of the NSF. - -The main contributors to this package were - - Chris Farrow, - Jiwu Liu, - Pavol Juhas, - Dmitriy Bryndin - -Other current and former contributors of the DiffPy project include - - Simon Billinge, - Chris Farrow, - Emil Bozin, - Wenduo Zhou, - Peng Tian - -The DiffPy team is part of the Billinge Group at Columbia University in New York, -within the Department of Applied Physics and Applied Mathematics. - -For a detailed list of contributors see +``diffpy.pdfgui`` is developed by Simon J.L. Billinge group. The maintainer for this project is Simon J.L. Billinge group. For a detailed list of contributors see https://github.com/diffpy/diffpy.pdfgui/graphs/contributors. -========= -Reference -========= - -If you use this program for a scientific research that leads to publication, -we ask that you acknowledge use of the program by citing the following paper -in your publication: - - C L Farrow, P Juhas, J W Liu, D Bryndin, E S Božin, - J Bloch, Th Proffen and S J L Billinge, `PDFfit2 and PDFgui: - computer programs for studying nanostructure in crystals `_, - J. Phys.: Condens. Matter 19 (2007) 335219. - ============ Installation ============ @@ -71,27 +31,22 @@ Installation See the `README `_ file included with the distribution. -======== -Tutorial -======== - -The tutorial for the package can be found here: - -.. toctree:: +================ +Acknowledgements +================ - tutorial +``diffpy.pdfgui`` is built and maintained with `scikit-package `_. ================= Table of contents ================= .. toctree:: - :titlesonly: + :maxdepth: 2 - examples - extras - license - release + getting-started Package API + release + license ======= Indices diff --git a/doc/source/license.rst b/doc/source/license.rst index 9273f487..5e751f7a 100644 --- a/doc/source/license.rst +++ b/doc/source/license.rst @@ -5,83 +5,34 @@ License ####### -.. code-block:: text - - This software was originally developed by the Billinge group as part - of the Distributed Data Analysis of Neutron Scattering Experiments - (DANSE) project funded by the US National Science Foundation under - grant DMR-0520547. Developments of PDFfit2 were funded by NSF grant - DMR-0304391 in the Billinge group, and with support from Michigan State - University and Columbia University. Any opinions, findings, and conclusions - or recommendations expressed in this material are those of the author(s) - and do not necessarily reflect the views of the respective funding bodies. - Subsequent development was done in the Billinge group at Columbia University - and then in collaboration between the Billinge group at Columbia and Pavol - Juhas at Brookhaven National Laboratory. Moving forward, PDFgui will be - maintained as a community project with contributions welcomed from many people. - - If you use this program to do productive scientific research that leads - to publication, we ask that you acknowledge use of the program by citing - the following paper in your publication: - - C. L. Farrow, P. Juhas, J. W. Liu, D. Bryndin, E. S. Bozin, - J. Bloch, Th. Proffen and S. J. L. Billinge, PDFfit2 and - PDFgui: computer programs for studying nanostructure in - crystals, J. Phys.: Condens. Matter 19, 335219 (2007) - - Up to the release 1.1.2 (February 2017) the copyright was held by - the institutions that hosted the work as follows: - Copyright 2006-2007, Board of Trustees of Michigan State University, - Copyright 2008-2012, Board of Trustees of Columbia University in the - city of New York. - Copyright 2013, Brookhaven National Laboratory (Copyright holder - indicated in each source file). - - As of February 2017, and the 1.1.2 release, PDFgui has moved to a shared copyright model. - - PDFgui uses a shared copyright model. Each contributor maintains copyright over their - contributions to PDFgui. But, it is important to note that these contributions are - typically only changes to the repositories. Thus, the PDFgui source code, in its entirety, - is not the copyright of any single person or institution. Instead, it is the collective - copyright of the entire PDFgui Development Team. If individual contributors want to - maintain a record of what changes/contributions they have specific copyright on, they - should indicate their copyright in the commit message of the change, when they commit - the change to one of the PDFgui repositories. - - The PDFgui Development Team is the set of all contributors to the PDFgui project. - A full list can be obtained from the git version control logs. - - For more information please visit the project web-page: - https://www.diffpy.org - or email Prof. Simon Billinge at sb2896@columbia.edu - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of the copyright holder nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY COPYRIGHT HOLDER "AS IS". COPYRIGHT HOLDER - EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES AND CONDITIONS, EITHER - EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY, TITLE, FITNESS, ADEQUACY OR SUITABILITY - FOR A PARTICULAR PURPOSE, AND ANY WARRANTIES OF FREEDOM FROM - INFRINGEMENT OF ANY DOMESTIC OR FOREIGN PATENT, COPYRIGHTS, TRADE - SECRETS OR OTHER PROPRIETARY RIGHTS OF ANY PARTY. IN NO EVENT SHALL - COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR ANY DIRECT, INDIRECT, - INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF - USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON - ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - THIS SOFTWARE OR RELATING TO THIS AGREEMENT, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. +OPEN SOURCE LICENSE AGREEMENT +============================= +BSD 3-Clause License + +Copyright (c) 2025, The Trustees of Columbia University in the City of New York. +All Rights Reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/doc/source/snippets/example-table.rst b/doc/source/snippets/example-table.rst new file mode 100644 index 00000000..7c4c11da --- /dev/null +++ b/doc/source/snippets/example-table.rst @@ -0,0 +1,28 @@ +.. list-table:: 5 levels of reusing/sharing code + :widths: 5 15 40 40 + :header-rows: 1 + + * - Level + - Name + - Scope + - How to setup + * - 1 + - ``function`` + - Reuse code in the single file. + - See Level 1 tutorial + * - 2 + - ``module`` + - Reuse code across files. + - See Level 2 tutorial + * - 3 + - ``workspace`` + - Reuse code across project folders. + - ``package create workspace`` + * - 4 + - ``system`` + - Reuse code across any files in the computer. + - ``package create system`` + * - 5 + - ``public`` + - Share code as publicly installable package. + - ``package create public`` From 0929828a5a5576c9654ea5ffcff7b826a0336ffa Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 15:50:32 -0400 Subject: [PATCH 07/21] skpkg: skpkg: add README.rst --- README.rst | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/README.rst b/README.rst index f3eb5f0c..46910075 100644 --- a/README.rst +++ b/README.rst @@ -8,7 +8,7 @@ :target: https://diffpy.github.io/diffpy.pdfgui :height: 100px -|PyPi| |Forge| |PythonVersion| |PR| +|PyPI| |Forge| |PythonVersion| |PR| |CI| |Codecov| |Black| |Tracking| @@ -26,7 +26,7 @@ .. |PR| image:: https://img.shields.io/badge/PR-Welcome-29ab47ff -.. |PyPi| image:: https://img.shields.io/pypi/v/diffpy.pdfgui +.. |PyPI| image:: https://img.shields.io/pypi/v/diffpy.pdfgui :target: https://pypi.org/project/diffpy.pdfgui/ .. |PythonVersion| image:: https://img.shields.io/pypi/pyversions/diffpy.pdfgui @@ -167,4 +167,9 @@ Before contributing, please read our `Code of Conduct `_ or email Prof. Simon Billinge at sb2896@columbia.edu. +For more information on diffpy.pdfgui please visit the project `web-page `_ or email Simon Billinge at sb2896@columbia.edu. + +Acknowledgements +---------------- + +``diffpy.pdfgui`` is built and maintained with `scikit-package `_. From 8c23dffda228a17b95ab3151ce3cf7d4dfb3c7a9 Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 16:01:26 -0400 Subject: [PATCH 08/21] skpkg: add config files for authors, changelog, code of conduct, license --- CHANGELOG.rst | 2 +- CODE_OF_CONDUCT.rst | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 111a2ae2..b0f0c142 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,5 +1,5 @@ ============= -Release Notes +Release notes ============= .. current developments diff --git a/CODE_OF_CONDUCT.rst b/CODE_OF_CONDUCT.rst index ff9c3561..e8199ca5 100644 --- a/CODE_OF_CONDUCT.rst +++ b/CODE_OF_CONDUCT.rst @@ -8,7 +8,7 @@ Our Pledge We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender -identity and expression, level of experience, education, socio-economic status, +identity and expression, level of experience, education, socioeconomic status, nationality, personal appearance, race, caste, color, religion, or sexual identity and orientation. From 24a9128055da9bed265c15ae589859b1800fb559 Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 16:03:47 -0400 Subject: [PATCH 09/21] skpkg: add news files --- news/doc.rst | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 news/doc.rst diff --git a/news/doc.rst b/news/doc.rst new file mode 100644 index 00000000..b0ec659f --- /dev/null +++ b/news/doc.rst @@ -0,0 +1,23 @@ +**Added:** + +* + +**Changed:** + +* + +**Deprecated:** + +* + +**Removed:** + +* + +**Fixed:** + +* Support ``scikit-package`` Level 5 standard (https://scikit-package.github.io/scikit-package/). + +**Security:** + +* From 2ec518f1c2ea779c3b328e9e21f627503069e2e4 Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 16:46:44 -0400 Subject: [PATCH 10/21] tmp --- doc/source/api/diffpy.pdfgui.rst | 27 ++++++++++++++++++--------- doc/source/conf.py | 31 ++++++++++++++++--------------- 2 files changed, 34 insertions(+), 24 deletions(-) diff --git a/doc/source/api/diffpy.pdfgui.rst b/doc/source/api/diffpy.pdfgui.rst index 8166640e..ab800cde 100644 --- a/doc/source/api/diffpy.pdfgui.rst +++ b/doc/source/api/diffpy.pdfgui.rst @@ -1,9 +1,7 @@ :tocdepth: -1 -|title| -======= - -.. |title| replace:: diffpy.pdfgui package +diffpy.pdfgui package +===================== .. automodule:: diffpy.pdfgui :members: @@ -14,17 +12,28 @@ Subpackages ----------- .. toctree:: - diffpy.pdfgui.example_package + :titlesonly: + + diffpy.pdfgui.icons + diffpy.pdfgui.gui + diffpy.pdfgui.applications + diffpy.pdfgui.control Submodules ---------- -|module| --------- +diffpy.pdfgui.utils module +^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. automodule:: diffpy.pdfgui.utils + :members: + :undoc-members: + :show-inheritance: -.. |module| replace:: diffpy.pdfgui.example_submodule module +diffpy.pdfgui.tui module +^^^^^^^^^^^^^^^^^^^^^^^^ -.. automodule:: diffpy.pdfgui.example_submodule +.. automodule:: diffpy.pdfgui.tui :members: :undoc-members: :show-inheritance: diff --git a/doc/source/conf.py b/doc/source/conf.py index 84dce5e6..47bd02ca 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -1,7 +1,7 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- # -# diffpy.pdfgui documentation build configuration file, created by # noqa: E501 +# diffpy.pdfgui documentation build configuration file, created by # sphinx-quickstart on Thu Jan 30 15:49:41 2014. # # This file is execfile()d with the current directory set to its @@ -13,26 +13,26 @@ # All configuration values have a default; values that are commented out # serve to show the default. -import sys -import time -from importlib.metadata import version -from pathlib import Path - # Attempt to import the version dynamically from GitHub tag. try: fullversion = version("diffpy.pdfgui") except Exception: fullversion = "No version found. The correct version will appear in the released version." # noqa: E501 +import sys +import time +from importlib.metadata import version +from pathlib import Path + # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the -# documentation root, use Path().resolve() to make it absolute, like shown here. # noqa: E501 +# documentation root, use Path().resolve() to make it absolute, like shown here. # sys.path.insert(0, str(Path(".").resolve())) sys.path.insert(0, str(Path("../..").resolve())) sys.path.insert(0, str(Path("../../src").resolve())) # abbreviations -ab_authors = "Simon J.L. Billinge group" +ab_authors = "Billinge Group members and community contributors" # -- General configuration ------------------------------------------------ @@ -48,8 +48,8 @@ "sphinx.ext.todo", "sphinx.ext.viewcode", "sphinx.ext.intersphinx", - "sphinx_rtd_theme", "sphinx_copybutton", + "sphinx_rtd_theme", "m2r", ] @@ -71,10 +71,16 @@ project = "diffpy.pdfgui" copyright = "%Y, The Trustees of Columbia University in the City of New York" +# For sphinx_copybutton extension. +# Do not copy "$" for shell commands in code-blocks. +copybutton_prompt_text = r"^\$ " +copybutton_prompt_is_regexp = True + # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. +fullversion = version(project) # The short X.Y version. version = "".join(fullversion.split(".post")[:1]) # The full version, including alpha/beta/rc tags. @@ -94,11 +100,6 @@ # substitute YEAR in the copyright string copyright = copyright.replace("%Y", year) -# For sphinx_copybutton extension. -# Do not copy "$" for shell commands in code-blocks. -copybutton_prompt_text = r"^\$ " -copybutton_prompt_is_regexp = True - # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. exclude_patterns = ["build"] @@ -177,7 +178,7 @@ # Add any extra paths that contain custom files (such as robots.txt or # .htaccess) here, relative to this directory. These files are copied # directly to the root of the documentation. -# html_extra_path = [] +html_extra_path = [] # If not '', a 'Last updated on:' timestamp is inserted at every page bottom, # using the given strftime format. From 9a9f4a15f59ffb7927fd90e9e45f019edc04af9f Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 16:47:15 -0400 Subject: [PATCH 11/21] chore: change the description --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index db96dbe0..f46d1752 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -11,7 +11,7 @@ authors = [ maintainers = [ { name="Simon J.L. Billinge group", email="sb2896@columbia.edu" }, ] -description = "Graphical user interface program for structure refinements to atomic pair distribution function." +description = "Graphical user interface program for structure refinements to the atomic pair distribution function." keywords = ['PDF structure refinement GUI'] readme = "README.rst" requires-python = ">=3.11, <3.14" From 9f89747dc8b07ffd05ac59026115ca047343f4b6 Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 16:53:14 -0400 Subject: [PATCH 12/21] chore: change description in `README.rst` --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 46910075..dac60867 100644 --- a/README.rst +++ b/README.rst @@ -35,7 +35,7 @@ .. |Tracking| image:: https://img.shields.io/badge/issue_tracking-github-blue :target: https://github.com/diffpy/diffpy.pdfgui/issues -Graphical user interface program for structure refinements to atomic +Graphical user interface program for structure refinements to the atomic pair distribution function. For users who do not have the expertise or necessity for command From a9e489478125a47b42e349729f6e91e42944ee8e Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 17:15:06 -0400 Subject: [PATCH 13/21] chore: change package description in `index.rst` --- doc/source/index.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/source/index.rst b/doc/source/index.rst index dfe38e22..7a493762 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -4,7 +4,7 @@ .. |title| replace:: diffpy.pdfgui documentation -``diffpy.pdfgui`` - Graphical user interface program for structure refinements to atomic pair distribution function. +``diffpy.pdfgui`` - Graphical user interface program for structure refinements to the atomic pair distribution function. | Software version |release| | Last updated |today|. From e0e456c046fabf4f3ea6920fdb145337b1f32593 Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 17:21:51 -0400 Subject: [PATCH 14/21] chore: keep the deleted paragraph --- doc/source/index.rst | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/doc/source/index.rst b/doc/source/index.rst index 7a493762..6e069bbe 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -15,6 +15,13 @@ Getting started Welcome to the ``diffpy.pdfgui`` documentation! +For users who do not have the expertise or necessity for command +line analysis, PDFgui is a convenient and easy to use graphical front +end for the PDFfit2 refinement program. It is capable of full-profile +fitting of the atomic pair distribution function (PDF) derived from x-ray +or neutron diffraction data and comes with built in graphical and structure +visualization capabilities. + To get started, please visit the :ref:`Getting started ` page. ======= From d57fbccc1685e643fb18b8e1ea227720af68395a Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 17:30:46 -0400 Subject: [PATCH 15/21] chore: keep the old license.rst --- doc/source/license.rst | 111 +++++++++++++++++++++++++++++------------ 1 file changed, 80 insertions(+), 31 deletions(-) diff --git a/doc/source/license.rst b/doc/source/license.rst index 5e751f7a..9273f487 100644 --- a/doc/source/license.rst +++ b/doc/source/license.rst @@ -5,34 +5,83 @@ License ####### -OPEN SOURCE LICENSE AGREEMENT -============================= -BSD 3-Clause License - -Copyright (c) 2025, The Trustees of Columbia University in the City of New York. -All Rights Reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - -3. Neither the name of the copyright holder nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.. code-block:: text + + This software was originally developed by the Billinge group as part + of the Distributed Data Analysis of Neutron Scattering Experiments + (DANSE) project funded by the US National Science Foundation under + grant DMR-0520547. Developments of PDFfit2 were funded by NSF grant + DMR-0304391 in the Billinge group, and with support from Michigan State + University and Columbia University. Any opinions, findings, and conclusions + or recommendations expressed in this material are those of the author(s) + and do not necessarily reflect the views of the respective funding bodies. + Subsequent development was done in the Billinge group at Columbia University + and then in collaboration between the Billinge group at Columbia and Pavol + Juhas at Brookhaven National Laboratory. Moving forward, PDFgui will be + maintained as a community project with contributions welcomed from many people. + + If you use this program to do productive scientific research that leads + to publication, we ask that you acknowledge use of the program by citing + the following paper in your publication: + + C. L. Farrow, P. Juhas, J. W. Liu, D. Bryndin, E. S. Bozin, + J. Bloch, Th. Proffen and S. J. L. Billinge, PDFfit2 and + PDFgui: computer programs for studying nanostructure in + crystals, J. Phys.: Condens. Matter 19, 335219 (2007) + + Up to the release 1.1.2 (February 2017) the copyright was held by + the institutions that hosted the work as follows: + Copyright 2006-2007, Board of Trustees of Michigan State University, + Copyright 2008-2012, Board of Trustees of Columbia University in the + city of New York. + Copyright 2013, Brookhaven National Laboratory (Copyright holder + indicated in each source file). + + As of February 2017, and the 1.1.2 release, PDFgui has moved to a shared copyright model. + + PDFgui uses a shared copyright model. Each contributor maintains copyright over their + contributions to PDFgui. But, it is important to note that these contributions are + typically only changes to the repositories. Thus, the PDFgui source code, in its entirety, + is not the copyright of any single person or institution. Instead, it is the collective + copyright of the entire PDFgui Development Team. If individual contributors want to + maintain a record of what changes/contributions they have specific copyright on, they + should indicate their copyright in the commit message of the change, when they commit + the change to one of the PDFgui repositories. + + The PDFgui Development Team is the set of all contributors to the PDFgui project. + A full list can be obtained from the git version control logs. + + For more information please visit the project web-page: + https://www.diffpy.org + or email Prof. Simon Billinge at sb2896@columbia.edu + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + * Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY COPYRIGHT HOLDER "AS IS". COPYRIGHT HOLDER + EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES AND CONDITIONS, EITHER + EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY, TITLE, FITNESS, ADEQUACY OR SUITABILITY + FOR A PARTICULAR PURPOSE, AND ANY WARRANTIES OF FREEDOM FROM + INFRINGEMENT OF ANY DOMESTIC OR FOREIGN PATENT, COPYRIGHTS, TRADE + SECRETS OR OTHER PROPRIETARY RIGHTS OF ANY PARTY. IN NO EVENT SHALL + COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF + USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + THIS SOFTWARE OR RELATING TO THIS AGREEMENT, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. From d8ee2b0ce2585e49b96d2029c2f3cc44d3406b5d Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 17:32:48 -0400 Subject: [PATCH 16/21] chore: keep the old `index.rst` --- doc/source/index.rst | 72 +++++++++++++++++++++++++++++++++----------- 1 file changed, 55 insertions(+), 17 deletions(-) diff --git a/doc/source/index.rst b/doc/source/index.rst index 6e069bbe..ba6a58f3 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -7,13 +7,7 @@ ``diffpy.pdfgui`` - Graphical user interface program for structure refinements to the atomic pair distribution function. | Software version |release| -| Last updated |today|. - -=============== -Getting started -=============== - -Welcome to the ``diffpy.pdfgui`` documentation! +| Last updated |today| For users who do not have the expertise or necessity for command line analysis, PDFgui is a convenient and easy to use graphical front @@ -22,15 +16,54 @@ fitting of the atomic pair distribution function (PDF) derived from x-ray or neutron diffraction data and comes with built in graphical and structure visualization capabilities. -To get started, please visit the :ref:`Getting started ` page. +PDFgui is a friendly interface to the PDFfit2 refinement engine, with many +powerful extensions. To get started, please open the :ref:`manual` +(:download:`pdf `) from the help menu or follow the :ref:`tutorial`. ======= Authors ======= -``diffpy.pdfgui`` is developed by Simon J.L. Billinge group. The maintainer for this project is Simon J.L. Billinge group. For a detailed list of contributors see +DiffPy was initiated as part of the Distributed Data Analysis of Neutron +Scattering Experiments (DANSE) project, funded by the National Science +Foundation under grant DMR-0520547. Any opinions, findings, and conclusions or +recommendations expressed in this material are those of the author(s) +and do not necessarily reflect the views of the NSF. + +The main contributors to this package were + + Chris Farrow, + Jiwu Liu, + Pavol Juhas, + Dmitriy Bryndin + +Other current and former contributors of the DiffPy project include + + Simon Billinge, + Chris Farrow, + Emil Bozin, + Wenduo Zhou, + Peng Tian + +The DiffPy team is part of the Billinge Group at Columbia University in New York, +within the Department of Applied Physics and Applied Mathematics. + +For a detailed list of contributors see https://github.com/diffpy/diffpy.pdfgui/graphs/contributors. +========= +Reference +========= + +If you use this program for a scientific research that leads to publication, +we ask that you acknowledge use of the program by citing the following paper +in your publication: + + C L Farrow, P Juhas, J W Liu, D Bryndin, E S Božin, + J Bloch, Th Proffen and S J L Billinge, `PDFfit2 and PDFgui: + computer programs for studying nanostructure in crystals `_, + J. Phys.: Condens. Matter 19 (2007) 335219. + ============ Installation ============ @@ -38,22 +71,27 @@ Installation See the `README `_ file included with the distribution. -================ -Acknowledgements -================ +======== +Tutorial +======== + +The tutorial for the package can be found here: + +.. toctree:: -``diffpy.pdfgui`` is built and maintained with `scikit-package `_. + tutorial ================= Table of contents ================= .. toctree:: - :maxdepth: 2 + :titlesonly: - getting-started - Package API - release + examples + extras license + release + Package API ======= Indices From 1cc30b231f5502b4d01e63ab9fe849fa8a66a3c4 Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 10 Jun 2025 18:37:47 -0400 Subject: [PATCH 17/21] chore: remove unwanted files --- doc/source/getting-started.rst | 79 -------------------- doc/source/img/scikit-package-logo-text.png | Bin 187608 -> 0 bytes doc/source/snippets/example-table.rst | 28 ------- 3 files changed, 107 deletions(-) delete mode 100644 doc/source/getting-started.rst delete mode 100644 doc/source/img/scikit-package-logo-text.png delete mode 100644 doc/source/snippets/example-table.rst diff --git a/doc/source/getting-started.rst b/doc/source/getting-started.rst deleted file mode 100644 index ac7d510e..00000000 --- a/doc/source/getting-started.rst +++ /dev/null @@ -1,79 +0,0 @@ -:tocdepth: -1 - -.. index:: getting-started - -.. _getting-started: - -================ -Getting started -================ - -Here are some example templates provided to help you get started with writing your documentation. You can use these templates to create your own documentation. - -Reuse ``.rst`` files across multiple pages ------------------------------------------- - -Here is how you can reuse a reusable block of ``.rst`` files across multiple pages: - -.. include:: snippets/example-table.rst - -.. warning:: - - Ensure that the ``.rst`` file you are including is not too long. If it is too long, it may be better to split it into multiple files and include them separately. - -Refer to a specific section in the documentation ------------------------------------------------- - -You can use the ``ref`` tag to refer to a specific section in the documentation. For example, you can refer to the section below using the ``:ref:`` tag as shown :ref:`here `. - -.. note:: - - Please check the raw ``.rst`` file of this page to see the exact use of the ``:ref:`` tag. - -Embed your code snippets in the documentation ---------------------------------------------- - -Here is how you can write a block of code in the documentation. You can use the ``code-block`` directive to write a block of code in the documentation. For example, you can write a block of code as shown below: - -.. code-block:: bash - - # Create a new environment, without build dependencies (pure Python package) - conda create -n -env python=3.13 \ - --file requirements/test.txt \ - --file requirements/conda.txt - - # Create a new environment, with build dependencies (non-pure Python package) - conda create -n -env python=3.13 \ - --file requirements/test.txt \ - --file requirements/conda.txt \ - --file requirements/build.txt - - # Activate the environment - conda activate _env - - # Install your package locally - # `--no-deps` to NOT install packages again from `requirements.pip.txt` - pip install -e . --no-deps - - # Run pytest locally - pytest - - # ... run example tutorials - -.. _attach-image: - -Attach an image to the documentation ------------------------------------- - -Here is how you attach an image to the documentation. The ``/doc/source/img/scikit-package-logo-text.png`` example image is provided in the template. - -.. image:: ./img/scikit-package-logo-text.png - :alt: codecov-in-pr-comment - :width: 400px - :align: center - - -Other useful directives ------------------------ - -Here is how you can do menu selection :menuselection:`Admin --> Settings` and display labels for buttons like :guilabel:`Privacy level`. diff --git a/doc/source/img/scikit-package-logo-text.png b/doc/source/img/scikit-package-logo-text.png deleted file mode 100644 index 823178dcb1316d5cfd09bc43d8210e5c4ce38f28..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 187608 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 h|9pew|C30$uOMa3u}J+)EaB{~z=&QIY@v diff --git a/doc/source/snippets/example-table.rst b/doc/source/snippets/example-table.rst deleted file mode 100644 index 7c4c11da..00000000 --- a/doc/source/snippets/example-table.rst +++ /dev/null @@ -1,28 +0,0 @@ -.. list-table:: 5 levels of reusing/sharing code - :widths: 5 15 40 40 - :header-rows: 1 - - * - Level - - Name - - Scope - - How to setup - * - 1 - - ``function`` - - Reuse code in the single file. - - See Level 1 tutorial - * - 2 - - ``module`` - - Reuse code across files. - - See Level 2 tutorial - * - 3 - - ``workspace`` - - Reuse code across project folders. - - ``package create workspace`` - * - 4 - - ``system`` - - Reuse code across any files in the computer. - - ``package create system`` - * - 5 - - ``public`` - - Share code as publicly installable package. - - ``package create public`` From daf5c8bee47230d0f3e3900128158f2a2876a5d4 Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Wed, 11 Jun 2025 10:07:26 -0400 Subject: [PATCH 18/21] docs: remove example_package.rst --- .../api/diffpy.pdfgui.example_package.rst | 31 ------------------- 1 file changed, 31 deletions(-) delete mode 100644 doc/source/api/diffpy.pdfgui.example_package.rst diff --git a/doc/source/api/diffpy.pdfgui.example_package.rst b/doc/source/api/diffpy.pdfgui.example_package.rst deleted file mode 100644 index 0390b965..00000000 --- a/doc/source/api/diffpy.pdfgui.example_package.rst +++ /dev/null @@ -1,31 +0,0 @@ -.. _example_package documentation: - -|title| -======= - -.. |title| replace:: diffpy.pdfgui.example_package package - -.. automodule:: diffpy.pdfgui.example_package - :members: - :undoc-members: - :show-inheritance: - -|foo| ------ - -.. |foo| replace:: diffpy.pdfgui.example_package.foo module - -.. automodule:: diffpy.pdfgui.example_package.foo - :members: - :undoc-members: - :show-inheritance: - -|bar| ------ - -.. |bar| replace:: diffpy.pdfgui.example_package.bar module - -.. automodule:: diffpy.pdfgui.example_package.foo - :members: - :undoc-members: - :show-inheritance: From bb697b446d611daba1e034aaba5030348830e8aa Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Mon, 16 Jun 2025 12:39:32 -0400 Subject: [PATCH 19/21] ci: add docformatter --- pyproject.toml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index f46d1752..bcb25506 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -81,3 +81,7 @@ exclude = ''' | tests/data )/ ''' +[tool.docformatter] +recursive = true +wrap-summaries = 72 +wrap-descriptions = 72 \ No newline at end of file From df988d7b7736eb3d6a630de54d2c0e7e5c5cd3db Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Mon, 16 Jun 2025 12:40:09 -0400 Subject: [PATCH 20/21] chore: docformatter fix --- .../manual_resources/tui_mno_bond_lengths.py | 3 +- pyproject.toml | 2 +- src/diffpy/pdfgui/applications/pdfgui.py | 6 +- src/diffpy/pdfgui/control/calculation.py | 7 +- src/diffpy/pdfgui/control/constraint.py | 8 +- src/diffpy/pdfgui/control/controlerrors.py | 10 ++- src/diffpy/pdfgui/control/fitdataset.py | 42 +++++---- src/diffpy/pdfgui/control/fitstructure.py | 89 ++++++++++--------- src/diffpy/pdfgui/control/fitting.py | 20 +++-- src/diffpy/pdfgui/control/organizer.py | 7 +- src/diffpy/pdfgui/control/parameter.py | 15 ++-- src/diffpy/pdfgui/control/pdfdataset.py | 4 +- src/diffpy/pdfgui/control/pdfguicontrol.py | 21 +++-- src/diffpy/pdfgui/control/pdflist.py | 4 +- src/diffpy/pdfgui/control/pdfstructure.py | 18 ++-- src/diffpy/pdfgui/control/structureviewer.py | 24 ++--- .../pdfgui/gui/datasetconfigurepanel.py | 3 +- .../pdfgui/gui/datasetconstraintpanel.py | 3 +- src/diffpy/pdfgui/gui/datasetpanel.py | 3 +- src/diffpy/pdfgui/gui/debugoptions.py | 10 +-- src/diffpy/pdfgui/gui/errorwrapper.py | 7 +- src/diffpy/pdfgui/gui/extendedplotframe.py | 10 ++- src/diffpy/pdfgui/gui/fittree.py | 10 ++- src/diffpy/pdfgui/gui/mainframe.py | 35 +++++--- src/diffpy/pdfgui/gui/pdfguiglobals.py | 4 +- src/diffpy/pdfgui/gui/phaseconfigurepanel.py | 6 +- .../pdfgui/gui/phaseconstraintspanel.py | 3 +- src/diffpy/pdfgui/gui/plotpanel.py | 4 +- src/diffpy/pdfgui/gui/resultspanel.py | 3 +- .../pdfgui/gui/wxextensions/listctrls.py | 17 ++-- .../pdfgui/gui/wxextensions/paneldialog.py | 4 +- src/diffpy/pdfgui/tui.py | 3 +- src/diffpy/pdfgui/utils.py | 12 +-- 33 files changed, 235 insertions(+), 182 deletions(-) diff --git a/doc/source/manual_resources/tui_mno_bond_lengths.py b/doc/source/manual_resources/tui_mno_bond_lengths.py index febd0b51..a1d1f679 100755 --- a/doc/source/manual_resources/tui_mno_bond_lengths.py +++ b/doc/source/manual_resources/tui_mno_bond_lengths.py @@ -1,6 +1,7 @@ #!/usr/bin/env python -"""Extract the shortest Mn-O bond lengths from all fits in PDFgui project. +"""Extract the shortest Mn-O bond lengths from all fits in PDFgui +project. This script loops through all refined phases in PDFgui project and calculates their shortest Mn-O bond lengths using diffpy.pdffit2 diff --git a/pyproject.toml b/pyproject.toml index bcb25506..cd6baea4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -84,4 +84,4 @@ exclude = ''' [tool.docformatter] recursive = true wrap-summaries = 72 -wrap-descriptions = 72 \ No newline at end of file +wrap-descriptions = 72 diff --git a/src/diffpy/pdfgui/applications/pdfgui.py b/src/diffpy/pdfgui/applications/pdfgui.py index 99b5e734..cb6166a2 100755 --- a/src/diffpy/pdfgui/applications/pdfgui.py +++ b/src/diffpy/pdfgui/applications/pdfgui.py @@ -54,9 +54,9 @@ def version(): def processArguments(argv1): - """Process command line arguments and store results in pdfguiglobals. This - method updates cmdopts, cmdargs and dbopts attributes in the pdfguiglobals - module. + """Process command line arguments and store results in + pdfguiglobals. This method updates cmdopts, cmdargs and dbopts + attributes in the pdfguiglobals module. argv1 -- list of command line arguments excluding the executable diff --git a/src/diffpy/pdfgui/control/calculation.py b/src/diffpy/pdfgui/control/calculation.py index 28be348e..c8e86a44 100644 --- a/src/diffpy/pdfgui/control/calculation.py +++ b/src/diffpy/pdfgui/control/calculation.py @@ -12,7 +12,8 @@ # See LICENSE.txt for license information. # ############################################################################## -"""Class Calculation for performing PDF simulation from model structure.""" +"""Class Calculation for performing PDF simulation from model +structure.""" import copy import math @@ -76,8 +77,8 @@ def _getStrId(self): return "c_" + self.name def setRGrid(self, rmin=None, rstep=None, rmax=None): - """Change specified r-grid parameters (rmin, rstep, rmax). Adjust rmax - for integer number of steps. + """Change specified r-grid parameters (rmin, rstep, rmax). + Adjust rmax for integer number of steps. rmin -- new low rcalc boundary rstep -- new r-grid step diff --git a/src/diffpy/pdfgui/control/constraint.py b/src/diffpy/pdfgui/control/constraint.py index 2dd2ce12..54a5daa4 100644 --- a/src/diffpy/pdfgui/control/constraint.py +++ b/src/diffpy/pdfgui/control/constraint.py @@ -12,8 +12,8 @@ # See LICENSE.txt for license information. # ############################################################################## -"""Class Constraint for storage of a single constraint equation constraints -will be stored in { variable : constraint } dictionary.""" +"""Class Constraint for storage of a single constraint equation +constraints will be stored in { variable : constraint } dictionary.""" import math import re @@ -67,8 +67,8 @@ def evalFormula(self, parvalues): return result def lambdaFormula(self): - """Build lambda function from constraint formula. Lambda function - expects dictionary argument. + """Build lambda function from constraint formula. Lambda + function expects dictionary argument. returns lambda function """ diff --git a/src/diffpy/pdfgui/control/controlerrors.py b/src/diffpy/pdfgui/control/controlerrors.py index 84e2ba4c..b7fd47d3 100644 --- a/src/diffpy/pdfgui/control/controlerrors.py +++ b/src/diffpy/pdfgui/control/controlerrors.py @@ -42,7 +42,8 @@ class ControlFileError(ControlError): class ControlKeyError(ControlError): - """PDFGuiControl exception class -- requested object can't be found.""" + """PDFGuiControl exception class -- requested object can't be + found.""" pass @@ -66,7 +67,8 @@ class ControlStatusError(ControlError): class ControlRuntimeError(ControlError): - """PDFGuiControl exception class -- various irrecoverable runtime error.""" + """PDFGuiControl exception class -- various irrecoverable runtime + error.""" pass @@ -85,8 +87,8 @@ class ControlSyntaxError(ControlError): class TempControlSelectError(ControlError): - """Temporary define this error to identify the select-control error in - python3.""" + """Temporary define this error to identify the select-control error + in python3.""" pass diff --git a/src/diffpy/pdfgui/control/fitdataset.py b/src/diffpy/pdfgui/control/fitdataset.py index 11c490d7..a9147658 100644 --- a/src/diffpy/pdfgui/control/fitdataset.py +++ b/src/diffpy/pdfgui/control/fitdataset.py @@ -26,8 +26,8 @@ class FitDataSet(PDFDataSet): - """FitDataSet stores experimental and calculated PDF data and related - fitting parameters. Inherited from PDFDataSet. + """FitDataSet stores experimental and calculated PDF data and + related fitting parameters. Inherited from PDFDataSet. Data members (in addition to those in PDFDataSet): @@ -204,8 +204,8 @@ def read(self, filename): return self.readObs(filename) def _updateRcalcRange(self): - """Helper method for updating fitrmin, fitrmax and fitrstep just after - reading observed values. + """Helper method for updating fitrmin, fitrmax and fitrstep just + after reading observed values. No return value. """ @@ -243,7 +243,8 @@ def readObsStr(self, datastring): return self def write(self, filename): - """Same as writeCalc(). Use writeObs() to save experimental PDF data. + """Same as writeCalc(). Use writeObs() to save experimental PDF + data. filename -- name of file to write to @@ -266,7 +267,8 @@ def writeCalc(self, filename): return def writeStr(self): - """Same as writeCalcStr. Use writeObsStr() for experimental PDF. + """Same as writeCalcStr. Use writeObsStr() for experimental + PDF. Return data string. """ @@ -377,9 +379,9 @@ def writeResampledObsStr(self): return s def findParameters(self): - """Obtain dictionary of parameters used by self.constraints. The keys - of returned dictionary are integer parameter indices, and their values - Parameter instances, with guessed initial values. + """Obtain dictionary of parameters used by self.constraints. The + keys of returned dictionary are integer parameter indices, and + their values Parameter instances, with guessed initial values. returns dictionary of indices and Parameter instances """ @@ -527,9 +529,9 @@ def save(self, z, subpath): # interface for data sampling def getFitSamplingType(self): - """Description of r-sampling used in the fit. This method compares - self.fitrstep with r-sampling in the observed data and with Nyquist r - step. + """Description of r-sampling used in the fit. This method + compares self.fitrstep with r-sampling in the observed data and + with Nyquist r step. Return a string, possible values are "data", "Nyquist" or "custom". @@ -568,7 +570,8 @@ def setFitSamplingType(self, tp, value=None): return def getObsSampling(self): - """Return the average r-step used in robs or zero when not defined.""" + """Return the average r-step used in robs or zero when not + defined.""" n = len(self.robs) if n > 1: rv = (self.robs[-1] - self.robs[0]) / (n - 1.0) @@ -577,7 +580,8 @@ def getObsSampling(self): return rv def getNyquistSampling(self): - """Return r-step corresponding to Nyquist sampling at the qmax value. + """Return r-step corresponding to Nyquist sampling at the qmax + value. When qmax is zero, return r-step in the observed data. """ @@ -590,9 +594,9 @@ def getNyquistSampling(self): # Property Attributes def _updateRcalcSampling(self): - """Helper method for resampling rcalc and interpolating related data. - This method interpolates Gcalc, dGcalc, Gtrunc, dGtrunc, crw to new r - grid. + """Helper method for resampling rcalc and interpolating related + data. This method interpolates Gcalc, dGcalc, Gtrunc, dGtrunc, + crw to new r grid. No return value. """ @@ -815,8 +819,8 @@ def _linear_interpolation(x0, y0, x1, youtleft, youtright): def grid_interpolation(x0, y0, x1, left=None, right=None, tp=None): - """Interpolate values from one grid onto another using either linear or - Whittaker–Shannon interpolation. + """Interpolate values from one grid onto another using either linear + or Whittaker–Shannon interpolation. Parameters ---------- diff --git a/src/diffpy/pdfgui/control/fitstructure.py b/src/diffpy/pdfgui/control/fitstructure.py index e31372cc..d4141c56 100644 --- a/src/diffpy/pdfgui/control/fitstructure.py +++ b/src/diffpy/pdfgui/control/fitstructure.py @@ -78,8 +78,8 @@ def __init__(self, name, *args, **kwargs): return def _update_custom_spacegroup(self, parser): - """Helper method for read() and readStr(), which takes care of setting - custom_spacegroup after successful reading. + """Helper method for read() and readStr(), which takes care of + setting custom_spacegroup after successful reading. parser -- instance of StructureParser used in reading. @@ -99,9 +99,9 @@ def _update_custom_spacegroup(self, parser): return def read(self, filename, format="auto"): - """Load structure from a file, raise ControlFileError for invalid or - unknown structure format. Overloads PDFStructure.read() to handle - custom_spacegroup attribute. + """Load structure from a file, raise ControlFileError for + invalid or unknown structure format. Overloads + PDFStructure.read() to handle custom_spacegroup attribute. filename -- file to be loaded format -- structure format such as 'pdffit', 'pdb', 'xyz'. When @@ -119,7 +119,8 @@ def read(self, filename, format="auto"): return p def readStr(self, s, format="auto"): - """Same as PDFStructure.readStr, but handle the custom_spacegroup data. + """Same as PDFStructure.readStr, but handle the + custom_spacegroup data. Return instance of StructureParser used to load the data. See Structure.readStr() for more info. @@ -169,9 +170,9 @@ def obtainRefined(self, server, iphase): return def findParameters(self): - """Obtain dictionary of parameters used by self.constraints. The keys - of returned dictionary are integer parameter indices, and the values - are Parameter instances, with guessed initial values. + """Obtain dictionary of parameters used by self.constraints. The + keys of returned dictionary are integer parameter indices, and + the values are Parameter instances, with guessed initial values. returns dictionary of indices and Parameter instances """ @@ -244,9 +245,9 @@ def _popAtomConstraints(self): return rv def _restoreAtomConstraints(self, acd): - """Restore self.constraints from atom constraints dictionary. This is - useful for getting correct atom indices into refvar strings. See also - _popAtomConstraints() + """Restore self.constraints from atom constraints dictionary. + This is useful for getting correct atom indices into refvar + strings. See also _popAtomConstraints() acd -- dictionary obtained from _popAtomConstraints() """ @@ -262,7 +263,8 @@ def _restoreAtomConstraints(self, acd): return def insertAtoms(self, index, atomlist): - """Insert list of atoms before index and adjust self.constraints. + """Insert list of atoms before index and adjust + self.constraints. index -- position in the initial structure, atoms are appended when larger than len(self.initial). @@ -295,8 +297,8 @@ def expandSuperCell(self, mno): """Perform supercell expansion for this structure and adjust constraints for positions and lattice parameters. New lattice parameters are multiplied and fractional coordinates divided by - corresponding multiplier. New atoms are grouped with their source in - the original cell. + corresponding multiplier. New atoms are grouped with their + source in the original cell. mno -- tuple or list of three positive integer cell multipliers along the a, b, c axis @@ -369,8 +371,8 @@ def isSpaceGroupPossible(self, spacegroup): return isSpaceGroupLatPar(spacegroup, *self.initial.lattice.abcABG()) def getSpaceGroupList(self): - """Return a list of SpaceGroup instances sorted by International Tables - number. + """Return a list of SpaceGroup instances sorted by International + Tables number. When custom_spacegroup is defined, the list starts with custom_spacegroup. @@ -394,8 +396,9 @@ def getSpaceGroupList(self): return sglist def getSpaceGroup(self, sgname): - """Find space group in getSpaceGroupList() by short_name or number. - sgname can be non-standard in case of CIF file defined space group. + """Find space group in getSpaceGroupList() by short_name or + number. sgname can be non-standard in case of CIF file defined + space group. Return instance of SpaceGroup. Raise ValueError if sgname cannot be found or when it is not present in getSpaceGroupList(). @@ -414,11 +417,11 @@ def getSpaceGroup(self, sgname): return sgfound def expandAsymmetricUnit(self, spacegroup, indices, sgoffset=[0, 0, 0]): - """Perform symmetry expansion for atoms at given indices. Temperature - factors may be corrected to reflect the symmetry. All constraints for - expanded atoms are erased with the exception of the occupancy("occ". - Constraints of unaffected atoms are adjusted for new positions - self.initial. + """Perform symmetry expansion for atoms at given indices. + Temperature factors may be corrected to reflect the symmetry. + All constraints for expanded atoms are erased with the exception + of the occupancy("occ". Constraints of unaffected atoms are + adjusted for new positions self.initial. spacegroup -- instance of SpaceGroup from diffpy.structure indices -- list of integer indices of atoms to be expanded @@ -462,10 +465,11 @@ def expandAsymmetricUnit(self, spacegroup, indices, sgoffset=[0, 0, 0]): return def applySymmetryConstraints(self, spacegroup, indices, posflag, Uijflag, sgoffset=[0, 0, 0]): - """Generate symmetry constraints for positions and thermal factors. - Both positions and thermal factors may get corrected to reflect space - group symmetry. Old positional and thermal constraints get erased. New - parameter indices start at fist decade after the last used parameter. + """Generate symmetry constraints for positions and thermal + factors. Both positions and thermal factors may get corrected to + reflect space group symmetry. Old positional and thermal + constraints get erased. New parameter indices start at fist + decade after the last used parameter. spacegroup -- instance of SpaceGroup from diffpy.structure indices -- list of integer indices of atoms to be expanded @@ -539,9 +543,9 @@ def applySymmetryConstraints(self, spacegroup, indices, posflag, Uijflag, sgoffs return def setSelectedPairs(self, s): - """Set the value of selected_pairs to s, raise ControlValueError when s - has invalid syntax. The selected_pairs is a comma separated list of - words formatted as. + """Set the value of selected_pairs to s, raise ControlValueError + when s has invalid syntax. The selected_pairs is a comma + separated list of words formatted as. [!]{element|indexOrRange|all}-[!]{element|indexOrRange|all} @@ -570,9 +574,10 @@ def getSelectedPairs(self): return self.selected_pairs def getPairSelectionFlags(self, s=None): - """Translate string s to a list of allowed values for first and second - pair index. Raise ControlValueError for invalid syntax of s. See - setSelectedPairs() docstring for a definition of pair selection syntax. + """Translate string s to a list of allowed values for first and + second pair index. Raise ControlValueError for invalid syntax + of s. See setSelectedPairs() docstring for a definition of pair + selection syntax. s -- string describing selected pairs (default: self.selected_pairs) @@ -628,7 +633,8 @@ def applyPairSelection(self, server, phaseidx): return def getSelectedIndices(self, s): - """Indices of the atoms that match the specified selection string. + """Indices of the atoms that match the specified selection + string. s -- selection string consisting of one or more atom selection words formatted as [!]{element|indexOrRange|all} @@ -655,7 +661,8 @@ def getSelectedIndices(self, s): _rxatomselection = None def _parseAtomSelectionString(self, s): - """Process string that describes a set of atoms in the structure. + """Process string that describes a set of atoms in the + structure. s -- selection string formatted as [!]{element|indexOrRange|all} "!" negates the selection, indexOrRange can be 1, 1:4, @@ -847,11 +854,11 @@ def getData(self, name, step=-1): def _makeParNames(sympars, parzeroindex): - """Return a tuple of (symbols, parvalues), where symbols is a list of - unique PDFFit parameter strings in "@%i" format and parvalues is a - dictionary of parameter indices and their values. The symbols have indices - 10n + (1, 2, 3) when referring to x, y, z, or 10n + (4, 5, 6, 7, 8, 9) when - referring to Uij. + """Return a tuple of (symbols, parvalues), where symbols is a list + of unique PDFFit parameter strings in "@%i" format and parvalues is + a dictionary of parameter indices and their values. The symbols have + indices 10n + (1, 2, 3) when referring to x, y, z, or 10n + (4, 5, + 6, 7, 8, 9) when referring to Uij. sympars -- pospars or Upars attribute of a SymmetryConstraints object Must be a sequence of symbols and values. diff --git a/src/diffpy/pdfgui/control/fitting.py b/src/diffpy/pdfgui/control/fitting.py index c33a6b8b..d6b7dc6a 100644 --- a/src/diffpy/pdfgui/control/fitting.py +++ b/src/diffpy/pdfgui/control/fitting.py @@ -27,7 +27,8 @@ def getEngineExceptions(): - """Return a tuple of possible exceptions from diffpy.pdffit2.pdffit2.""" + """Return a tuple of possible exceptions from + diffpy.pdffit2.pdffit2.""" from diffpy.pdffit2.pdffit2 import ( calculationError, constraintError, @@ -278,7 +279,8 @@ def updateParameters(self): return self.parameters def applyParameters(self): - """Evaluate all constrained variables using current parameters.""" + """Evaluate all constrained variables using current + parameters.""" for struc in self.strucs: struc.applyParameters(self.parameters) for dataset in self.datasets: @@ -446,9 +448,9 @@ def _configureBondCalculation(self, struc): return def outputBondAngle(self, struc, i, j, k): - """Output bond angle defined by atoms i, j, k. The angle is calculated - using the shortest lengths ji and jk with respect to periodic boundary - conditions. + """Output bond angle defined by atoms i, j, k. The angle is + calculated using the shortest lengths ji and jk with respect to + periodic boundary conditions. struc -- instance of PDFStructure i, j, k -- atom indices starting at 1 @@ -586,8 +588,8 @@ def close(self, force=False): self.thread.join() def buildNameDict(self): - """Build up a data name dictionary, which will map data name to a - unique index. + """Build up a data name dictionary, which will map data name to + a unique index. The private dataNameDict has such structure: { 'd_data1':{'Gobs':12, 'Gcalc':11, ....}, @@ -636,8 +638,8 @@ def buildNameDict(self): self.dataNameDict = dataNameDict def appendStep(self, source): - """After a refinement step is done, append all data from self to the - historical storage, i.e., self.snapshots. + """After a refinement step is done, append all data from self to + the historical storage, i.e., self.snapshots. source -- where to get the fitted data, in deed it's a PdfFit2 instance """ diff --git a/src/diffpy/pdfgui/control/organizer.py b/src/diffpy/pdfgui/control/organizer.py index cb0787b4..adadf6cd 100644 --- a/src/diffpy/pdfgui/control/organizer.py +++ b/src/diffpy/pdfgui/control/organizer.py @@ -30,8 +30,8 @@ def spd_constrained(ds): class Organizer(PDFComponent): - """Base class for Fitting. It holds separate lists of datasets, strucs and - calculations. + """Base class for Fitting. It holds separate lists of datasets, + strucs and calculations. datasets: dataset list strucs: structure list @@ -240,7 +240,8 @@ def organization(self): return org def __forward_spdiameter(self): - """Copy spdiameter value loaded from fit or calculation to phase. + """Copy spdiameter value loaded from fit or calculation to + phase. This method takes care of loading old PDFgui projects where spdiameter belonged to FitDataSet or Calculation classes. It diff --git a/src/diffpy/pdfgui/control/parameter.py b/src/diffpy/pdfgui/control/parameter.py index a4410ee4..b366c856 100644 --- a/src/diffpy/pdfgui/control/parameter.py +++ b/src/diffpy/pdfgui/control/parameter.py @@ -25,8 +25,9 @@ class Parameter: """Parameter is class for value and properties of refined parameter. - Because the initial value of Parameter may come from another Fitting, it is - accessed by setInitial(), initialStr() and initialValue() methods. + Because the initial value of Parameter may come from another + Fitting, it is accessed by setInitial(), initialStr() and + initialValue() methods. Data members: idx -- integer identifier of this parameter in PdfFit @@ -58,7 +59,8 @@ def __init__(self, idx, initial=0.0): return def setInitial(self, initial): - """Set initial value to float or refined value from another Fitting. + """Set initial value to float or refined value from another + Fitting. initial -- initial value, it can be something convertible to float, Fitting reference or string in "=fitname" or @@ -150,9 +152,10 @@ def __getLinkedValue(self): return value def __findLinkedFitting(self): - """Private search for linked Fitting by name and by representation. - Should be called only when initial value is linked to another Fitting. - Updates self.__initial and self.__fitrepr. + """Private search for linked Fitting by name and by + representation. Should be called only when initial value is + linked to another Fitting. Updates self.__initial and + self.__fitrepr. returns reference to Fitting when found or None """ diff --git a/src/diffpy/pdfgui/control/pdfdataset.py b/src/diffpy/pdfgui/control/pdfdataset.py index 1027e067..34b6efba 100644 --- a/src/diffpy/pdfgui/control/pdfdataset.py +++ b/src/diffpy/pdfgui/control/pdfdataset.py @@ -116,8 +116,8 @@ def setvar(self, var, value): return def getvar(self, var): - """Obtain value corresponding to PdfFit dataset variable. Used by - findParameters(). + """Obtain value corresponding to PdfFit dataset variable. Used + by findParameters(). var -- string representation of dataset PdfFit variable. Possible values: qdamp, qbroad, dscale diff --git a/src/diffpy/pdfgui/control/pdfguicontrol.py b/src/diffpy/pdfgui/control/pdfguicontrol.py index d1eb4d6b..695a15ac 100644 --- a/src/diffpy/pdfgui/control/pdfguicontrol.py +++ b/src/diffpy/pdfgui/control/pdfguicontrol.py @@ -34,8 +34,8 @@ class PDFGuiControl: - """PDFGuiControl holds all the data GUI needs to access or change It has a - container of Calculation and Fitting instances. + """PDFGuiControl holds all the data GUI needs to access or change It + has a container of Calculation and Fitting instances. Each Calculation and Fitting has a unique name. """ @@ -274,7 +274,8 @@ def __findOwner(self, ID): raise ControlTypeError("Object %s doesn't exit in the list" % ID.name) def rename(self, ID, new_name): - """Rename Fitting, Calculation, Dataset or Structure identified by ID. + """Rename Fitting, Calculation, Dataset or Structure identified + by ID. ID: reference to the object to be renamed new_name: new name to be given to the object @@ -283,7 +284,8 @@ def rename(self, ID, new_name): container.rename(ID, new_name) def remove(self, ID): - """Remove Fitting, Calculation, Dataset or Structure identified by ID. + """Remove Fitting, Calculation, Dataset or Structure identified + by ID. ID: reference to the object to be removed return: removed object @@ -311,8 +313,8 @@ def copy(self, src): return newObject def paste(self, dup, target=None, new_name=None, position=None): - """Paste copied object to target under new_name, the default new_name - will be name of src. + """Paste copied object to target under new_name, the default + new_name will be name of src. dup -- reference to the copied object target -- target object where the copy should be inserted @@ -532,7 +534,8 @@ def getEngineOutput(self): def pdfguicontrol(*args, **kwargs): - """This function will return the single instance of class PDFGuiControl.""" + """This function will return the single instance of class + PDFGuiControl.""" global _pdfguicontrol if _pdfguicontrol is None: _pdfguicontrol = PDFGuiControl(*args, **kwargs) @@ -555,8 +558,8 @@ def _find_global(moduleName, clsName): class CtrlUnpickler: - """Occasionally the project file may be generated on a platform where - PYTHONPATH is not correctly set up. + """Occasionally the project file may be generated on a platform + where PYTHONPATH is not correctly set up. CtrlUnpickler will transform the module path in the project file to be relative to diffpy so that it can be safely loaded. Only diff --git a/src/diffpy/pdfgui/control/pdflist.py b/src/diffpy/pdfgui/control/pdflist.py index 71bf3e4f..344c1155 100644 --- a/src/diffpy/pdfgui/control/pdflist.py +++ b/src/diffpy/pdfgui/control/pdflist.py @@ -17,8 +17,8 @@ class PDFList(list): - """List class of PDFComponent, which can be accessed through index or a - name string.""" + """List class of PDFComponent, which can be accessed through index + or a name string.""" def __init__(self, *args): """Initialize. diff --git a/src/diffpy/pdfgui/control/pdfstructure.py b/src/diffpy/pdfgui/control/pdfstructure.py index 881e17b2..6dd095ff 100644 --- a/src/diffpy/pdfgui/control/pdfstructure.py +++ b/src/diffpy/pdfgui/control/pdfstructure.py @@ -22,8 +22,8 @@ class PDFStructure(PDFComponent, PDFFitStructure): - """PDFStructure contains structure information, which can be used for 3D - rendering as well as structure refinement.""" + """PDFStructure contains structure information, which can be used + for 3D rendering as well as structure refinement.""" def __init__(self, name, *args, **kwargs): """Initialize PDFStructure. @@ -36,8 +36,8 @@ def __init__(self, name, *args, **kwargs): return def read(self, filename, format="auto"): - """Load structure from a file, raise ControlFileError for invalid or - unknown structure format. + """Load structure from a file, raise ControlFileError for + invalid or unknown structure format. filename -- file to be loaded format -- structure format such as 'pdffit', 'pdb', 'xyz'. When @@ -76,8 +76,9 @@ def copy(self, other=None): _allowed_pdffit_vars = dict.fromkeys(("spdiameter", "stepcut", "delta1", "delta2", "sratio", "rcut")) def setvar(self, var, value): - """Assign to data member using PdfFit-style variable This can be used - when applying constraint equations with particular parameter values. + """Assign to data member using PdfFit-style variable This can be + used when applying constraint equations with particular + parameter values. var -- string representation of PdfFit variable. Possible values: pscale, spdiameter, stepcut, delta1, delta2, sratio, rcut, @@ -128,8 +129,9 @@ def setvar(self, var, value): return def getvar(self, var): - """Obtain value corresponding to PdfFit phase variable var This can be - used when guessing Parameter values from constraints dictionary. + """Obtain value corresponding to PdfFit phase variable var This + can be used when guessing Parameter values from constraints + dictionary. var -- string representation of PdfFit variable. Possible values: pscale, spdiameter, stepcut, delta1, delta2, sratio, rcut, diff --git a/src/diffpy/pdfgui/control/structureviewer.py b/src/diffpy/pdfgui/control/structureviewer.py index 128a2d8f..ad46d5f2 100644 --- a/src/diffpy/pdfgui/control/structureviewer.py +++ b/src/diffpy/pdfgui/control/structureviewer.py @@ -25,7 +25,8 @@ def getStructureViewer(): - """Factory returning singleton instance of the StructureViewer class.""" + """Factory returning singleton instance of the StructureViewer + class.""" global _struviewer if _struviewer is None: _struviewer = StructureViewer() @@ -36,10 +37,11 @@ def getStructureViewer(): class StructureViewer(object): - """Class for plotting structure in general structure viewer. It takes care - of creating temporary structure file in a desired format and launching - structure viewer as a background process. The temporary files are removed - when StructureViewer instance goes out of scope. + """Class for plotting structure in general structure viewer. It + takes care of creating temporary structure file in a desired format + and launching structure viewer as a background process. The + temporary files are removed when StructureViewer instance goes out + of scope. Data attributes: @@ -59,9 +61,9 @@ class StructureViewer(object): """ def __init__(self, executable=None, argstr=None, fileformat=None): - """Create StructureViewer instance. All arguments are optional, they - override defaults described in class docstring. The configuration can - be changed later using setConfig method. + """Create StructureViewer instance. All arguments are optional, + they override defaults described in class docstring. The + configuration can be changed later using setConfig method. executable -- path to the structure viewer executable argstr -- argument string for the viewer program, it can use @@ -97,7 +99,8 @@ def getConfig(self): return rv def setConfig(self, cfg): - """Configure StructureViewer instance using values in a dictionary. + """Configure StructureViewer instance using values in a + dictionary. cfg -- configuration dictionary, with the same keys as returned by getConfig(). Any other keys are ignored. @@ -119,7 +122,8 @@ def getFileFormats(): getFileFormats = staticmethod(getFileFormats) def plot(self, stru): - """Launch new structure viewer and open a temporary copy of stru. + """Launch new structure viewer and open a temporary copy of + stru. stru -- instance of Structure class from diffpy.structure diff --git a/src/diffpy/pdfgui/gui/datasetconfigurepanel.py b/src/diffpy/pdfgui/gui/datasetconfigurepanel.py index cf32dfb6..55c693a3 100644 --- a/src/diffpy/pdfgui/gui/datasetconfigurepanel.py +++ b/src/diffpy/pdfgui/gui/datasetconfigurepanel.py @@ -337,7 +337,8 @@ def setConfigurationData(self): return def restrictConstrainedParameters(self): - """Set 'read-only' boxes that correspond to constrained parameters.""" + """Set 'read-only' boxes that correspond to constrained + parameters.""" if not self.configuration: return diff --git a/src/diffpy/pdfgui/gui/datasetconstraintpanel.py b/src/diffpy/pdfgui/gui/datasetconstraintpanel.py index 267f4664..c585b579 100644 --- a/src/diffpy/pdfgui/gui/datasetconstraintpanel.py +++ b/src/diffpy/pdfgui/gui/datasetconstraintpanel.py @@ -145,7 +145,8 @@ def processFormula(self, value, parname): # EVENT CODE ############################################################# def onSetFocus(self, event): - """Saves a TextCtrl value, to be compared in onKillFocus later.""" + """Saves a TextCtrl value, to be compared in onKillFocus + later.""" self._focusedText = event.GetEventObject().GetValue() event.Skip() return diff --git a/src/diffpy/pdfgui/gui/datasetpanel.py b/src/diffpy/pdfgui/gui/datasetpanel.py index f64cee9e..d49fcf7d 100644 --- a/src/diffpy/pdfgui/gui/datasetpanel.py +++ b/src/diffpy/pdfgui/gui/datasetpanel.py @@ -96,7 +96,8 @@ def refresh(self): return def refreshSelectedPage(self): - """Refresh the panel corresponding to the currently selected page.""" + """Refresh the panel corresponding to the currently selected + page.""" # self.configurePanel.refresh() # self.constraintPanel.refresh() # self.resultsPanel.refresh() diff --git a/src/diffpy/pdfgui/gui/debugoptions.py b/src/diffpy/pdfgui/gui/debugoptions.py index 167d868b..3b5af79e 100644 --- a/src/diffpy/pdfgui/gui/debugoptions.py +++ b/src/diffpy/pdfgui/gui/debugoptions.py @@ -20,9 +20,9 @@ class DebugOptions: - """DebugOptions is a place to store various debugging options. There should - be just one instance defined in pdfguiglobals module. It would be nice to - have a simple way of setting them on command line. + """DebugOptions is a place to store various debugging options. There + should be just one instance defined in pdfguiglobals module. It + would be nice to have a simple way of setting them on command line. Options in short and long forms: noed, noerrordialog -- [False], disable exceptions catching and @@ -59,8 +59,8 @@ def __setattr__(self, name, value): return def __getattr__(self, name): - """Resolve values of short options. This is called only when normal - lookup fails. + """Resolve values of short options. This is called only when + normal lookup fails. returns value of short debug option """ diff --git a/src/diffpy/pdfgui/gui/errorwrapper.py b/src/diffpy/pdfgui/gui/errorwrapper.py index 862849ae..78e0f1cb 100644 --- a/src/diffpy/pdfgui/gui/errorwrapper.py +++ b/src/diffpy/pdfgui/gui/errorwrapper.py @@ -12,8 +12,8 @@ # See LICENSE.txt for license information. # ############################################################################## -"""This module contains a function wrapper and an object wrapper that catch -control errors and shows them in an error report dialog. +"""This module contains a function wrapper and an object wrapper that +catch control errors and shows them in an error report dialog. This is used by PDFPanel and MainFrame. """ @@ -103,7 +103,8 @@ def _f(*args, **kwargs): def catchObjectErrors(obj, exclude=None): - """Wrap all functions of an object so that the exceptions are caught. + """Wrap all functions of an object so that the exceptions are + caught. obj -- Object containing the function. It is assumed that the object has an attribute named 'mainFrame', which is a reference to the MainFrame diff --git a/src/diffpy/pdfgui/gui/extendedplotframe.py b/src/diffpy/pdfgui/gui/extendedplotframe.py index 4cb32cce..9e41fd5e 100644 --- a/src/diffpy/pdfgui/gui/extendedplotframe.py +++ b/src/diffpy/pdfgui/gui/extendedplotframe.py @@ -224,7 +224,8 @@ def removeCurve(self, curveRef): self.__updateViewLimits() def __updateViewLimits(self): - """Adjust the subplot range in order to show all curves correctly.""" + """Adjust the subplot range in order to show all curves + correctly.""" # NOTE: # we need to adjust view limits by ourselves because Matplotlib can't # set the legend nicely when there are multiple curves in the plot. @@ -252,8 +253,8 @@ def __updateViewLimits(self): self.subplot.set_ylim(ymin, ymax) def __translateStyles(self, style): - """Private function to translate general probabilities to Matplotlib - specific ones. + """Private function to translate general probabilities to + Matplotlib specific ones. style -- general curve style dictionary (defined in demoplot) """ @@ -351,7 +352,8 @@ def clear(self): def legendBoxProperties(): - """Legend properties dictionary with keys consistent with MPL version. + """Legend properties dictionary with keys consistent with MPL + version. The argument names have changed in matplotlib 0.98.5. Old arguments do not work with later versions of matplotlib. diff --git a/src/diffpy/pdfgui/gui/fittree.py b/src/diffpy/pdfgui/gui/fittree.py index 1416db92..fd6b5590 100644 --- a/src/diffpy/pdfgui/gui/fittree.py +++ b/src/diffpy/pdfgui/gui/fittree.py @@ -139,7 +139,8 @@ def GetSiblings(self, node): return ids def GetAllType(self, node): - """Get the id of each item in the tree of the same type as node.""" + """Get the id of each item in the tree of the same type as + node.""" nodetype = self.GetNodeType(node) fits = self.GetChildren(self.root) if nodetype == "fit": @@ -617,7 +618,8 @@ def GetClipboard(self): return cdata def PasteBranch(self, entrypoint=None): - """Paste the branch from the clipboard into tree at the given node. + """Paste the branch from the clipboard into tree at the given + node. A certain type of branch can only be copied to specific places. @@ -915,8 +917,8 @@ def __init__(self, *args): # Utility functions def incrementName(name, namelist, start=1): - """Increment the name by assigning the lowest number to the end such that - the name does not appear in the namelist.""" + """Increment the name by assigning the lowest number to the end such + that the name does not appear in the namelist.""" newname = name match = r"\d+$" counter = start diff --git a/src/diffpy/pdfgui/gui/mainframe.py b/src/diffpy/pdfgui/gui/mainframe.py index 79804b06..ab2acbd4 100644 --- a/src/diffpy/pdfgui/gui/mainframe.py +++ b/src/diffpy/pdfgui/gui/mainframe.py @@ -66,14 +66,15 @@ class MainFrame(wx.Frame): - """The left pane is a FitTree (from fittree.py), the right is a dynamic - panel, accessed via the data member rightPanel, which can hold one of any - number of panels. The panels that can appear in the right pane must be - derived from PDFPanel (in pdfpanel.py) and are defined in the dynamicPanels - dictionary, which is defined in __customProperties. A panel is placed in - the right pane by passing its dynamicPanels dictionary key to the - switchRightPanel method. This method takes care of displaying the panel, - giving the data it needs, and calling its refresh() method. + """The left pane is a FitTree (from fittree.py), the right is a + dynamic panel, accessed via the data member rightPanel, which can + hold one of any number of panels. The panels that can appear in the + right pane must be derived from PDFPanel (in pdfpanel.py) and are + defined in the dynamicPanels dictionary, which is defined in + __customProperties. A panel is placed in the right pane by passing + its dynamicPanels dictionary key to the switchRightPanel method. + This method takes care of displaying the panel, giving the data it + needs, and calling its refresh() method. ** NODE TYPES ** The FitTree is essential to the functionality of the Gui. @@ -225,7 +226,8 @@ def __cmdLineLoad(self): return def __defineLocalIds(self): - """Several user functions are duplicated many times throughout the gui. + """Several user functions are duplicated many times throughout + the gui. This occurs mostly between the main menu, the right-click menu, and the many buttons in the gui. This method defines local Ids @@ -1092,7 +1094,8 @@ def checkForSave(self): return code def updateTitle(self): - """Update the title according to the name of the current file.""" + """Update the title according to the name of the current + file.""" shorttitle = os.path.basename(self.fullpath) udirnamed = "~" + os.path.sep udir = os.path.expanduser(udirnamed) @@ -1497,7 +1500,8 @@ def needsSave(self, altered=True): return def disableSharedMenuItems(self, menu): - """Disable some menu items based upon what is selected in the tree. + """Disable some menu items based upon what is selected in the + tree. menu -- The menu which to apply the changes. @@ -1772,7 +1776,8 @@ def onNewFit(self, event): return def onCopy(self, event): - """Copy the subtree of the current selected item into the clipboard.""" + """Copy the subtree of the current selected item into the + clipboard.""" selections = self.treeCtrlMain.GetSelections() if len(selections) == 1: self.treeCtrlMain.CopyBranch(selections[0]) @@ -1916,7 +1921,8 @@ def onDelete(self, event): # Main menu items def onRun(self, event): - """Run the selected fits/calculations and disable their tree entries. + """Run the selected fits/calculations and disable their tree + entries. This also runs calculations that are children of a running fit. """ @@ -2532,7 +2538,8 @@ def onDocumentation(self, event): # MISC INTERACTION ITEMS def showMessage(self, info, title="PDF Control Error"): - """ShowMessage(self, info) --> tell user about an exception and so on. + """ShowMessage(self, info) --> tell user about an exception and + so on. title -- window title info -- message diff --git a/src/diffpy/pdfgui/gui/pdfguiglobals.py b/src/diffpy/pdfgui/gui/pdfguiglobals.py index cae1fa74..5580dca5 100644 --- a/src/diffpy/pdfgui/gui/pdfguiglobals.py +++ b/src/diffpy/pdfgui/gui/pdfguiglobals.py @@ -62,8 +62,8 @@ def iconpath(iconfilename): - """Full path to the icon file in pdfgui installation. This function should - be used whenever GUI needs access to custom icons. + """Full path to the icon file in pdfgui installation. This function + should be used whenever GUI needs access to custom icons. iconfilename -- icon file name without any path diff --git a/src/diffpy/pdfgui/gui/phaseconfigurepanel.py b/src/diffpy/pdfgui/gui/phaseconfigurepanel.py index 96281d5f..db269589 100644 --- a/src/diffpy/pdfgui/gui/phaseconfigurepanel.py +++ b/src/diffpy/pdfgui/gui/phaseconfigurepanel.py @@ -316,7 +316,8 @@ def refresh(self): return def restrictConstrainedParameters(self): - """Set 'read-only' boxes that correspond to constrained parameters.""" + """Set 'read-only' boxes that correspond to constrained + parameters.""" self.setToolTips(tooltips.phasepanel) self.textCtrlA.DefaultStyle.BackgroundColour @@ -452,7 +453,8 @@ def applyCellChange(self, i, j, value): # TextCtrl Events def onSetFocus(self, event): - """Saves a TextCtrl value, to be compared in onKillFocus later.""" + """Saves a TextCtrl value, to be compared in onKillFocus + later.""" self._focusedText = event.GetEventObject().GetValue() event.Skip() return diff --git a/src/diffpy/pdfgui/gui/phaseconstraintspanel.py b/src/diffpy/pdfgui/gui/phaseconstraintspanel.py index 45f37b36..e27ec9b0 100644 --- a/src/diffpy/pdfgui/gui/phaseconstraintspanel.py +++ b/src/diffpy/pdfgui/gui/phaseconstraintspanel.py @@ -416,7 +416,8 @@ def applyCellChange(self, i, j, value): # TextCtrl Events def onSetFocus(self, event): - """Saves a TextCtrl value, to be compared in onKillFocuse later.""" + """Saves a TextCtrl value, to be compared in onKillFocuse + later.""" self._focusedText = event.GetEventObject().GetValue() event.Skip() return diff --git a/src/diffpy/pdfgui/gui/plotpanel.py b/src/diffpy/pdfgui/gui/plotpanel.py index e1ee06dd..c36db091 100644 --- a/src/diffpy/pdfgui/gui/plotpanel.py +++ b/src/diffpy/pdfgui/gui/plotpanel.py @@ -116,8 +116,8 @@ def enableWidgets(self, on=True): return def updateWidgets(self): - """Enable or disable certain widgets depending upon what is selected in - the tree and in the plotting widgets.""" + """Enable or disable certain widgets depending upon what is + selected in the tree and in the plotting widgets.""" # selections: selected nodes in treeCtrl # fits: only different fittings # refs: data item ids ( can be calculation, fit, structure and dataset diff --git a/src/diffpy/pdfgui/gui/resultspanel.py b/src/diffpy/pdfgui/gui/resultspanel.py index f1731aa1..a63256d6 100644 --- a/src/diffpy/pdfgui/gui/resultspanel.py +++ b/src/diffpy/pdfgui/gui/resultspanel.py @@ -85,7 +85,8 @@ def __customProperties(self): # Methods overloaded from PDFPanel def refresh(self): - """Fill in the resultsTextCtrl with the fit results if they exist.""" + """Fill in the resultsTextCtrl with the fit results if they + exist.""" if self.fit: self.results = self.fit.res else: diff --git a/src/diffpy/pdfgui/gui/wxextensions/listctrls.py b/src/diffpy/pdfgui/gui/wxextensions/listctrls.py index b018ae2e..5f693f04 100644 --- a/src/diffpy/pdfgui/gui/wxextensions/listctrls.py +++ b/src/diffpy/pdfgui/gui/wxextensions/listctrls.py @@ -27,7 +27,8 @@ class AutoWidthListCtrl(wx.ListCtrl, listmix.ListCtrlAutoWidthMixin): - """WxListCtrl subclass that automatically adjusts its column width.""" + """WxListCtrl subclass that automatically adjusts its column + width.""" def __init__(self, parent, ID, pos=wx.DefaultPosition, size=wx.DefaultSize, style=0, *args, **kwargs): wx.ListCtrl.__init__(self, parent, ID, pos, size, style, *args, **kwargs) @@ -40,7 +41,8 @@ def clearSelections(self): return def setSelection(self, itemtext=None): - """Convenience function for simple selection of a list item by label. + """Convenience function for simple selection of a list item by + label. itemtext -- The label of the item to select. If itemtext is None (default) then all items will be deselected. @@ -61,8 +63,8 @@ def setSelection(self, itemtext=None): class ColumnSortListCtrl(AutoWidthListCtrl, listmix.ColumnSorterMixin): - """AutoWidthListCtrl subclass that sorts its columns when the column header - is pressed. + """AutoWidthListCtrl subclass that sorts its columns when the column + header is pressed. This ListCtrl requires an itemDataMap member dictionary to be initialized before the sorting capabilities can be realized. This @@ -83,7 +85,8 @@ def GetListCtrl(self): return self def initializeSorter(self): - """Initialize the column sorter mixin after the ListCtrl is filled. + """Initialize the column sorter mixin after the ListCtrl is + filled. This method must be called whenever the itemDataMap is altered. """ @@ -116,8 +119,8 @@ def makeIDM(self): class KeyEventsListCtrl(ColumnSortListCtrl): - """ColumnSortListCtrl that catches key events and selects the item that - matches. + """ColumnSortListCtrl that catches key events and selects the item + that matches. It only searches for items in the first column. """ diff --git a/src/diffpy/pdfgui/gui/wxextensions/paneldialog.py b/src/diffpy/pdfgui/gui/wxextensions/paneldialog.py index 64645e94..4089c224 100644 --- a/src/diffpy/pdfgui/gui/wxextensions/paneldialog.py +++ b/src/diffpy/pdfgui/gui/wxextensions/paneldialog.py @@ -14,8 +14,8 @@ # See LICENSE.txt for license information. # ############################################################################## -"""This module contains the PanelDialog class, a simple class that turns any -panel into a dialog.""" +"""This module contains the PanelDialog class, a simple class that turns +any panel into a dialog.""" import wx diff --git a/src/diffpy/pdfgui/tui.py b/src/diffpy/pdfgui/tui.py index d3404c96..0cb5536d 100644 --- a/src/diffpy/pdfgui/tui.py +++ b/src/diffpy/pdfgui/tui.py @@ -27,7 +27,8 @@ class LoadProject: # public methods def __init__(self, filename=None): - """Initialize LoadProject object, by reading existing project file. + """Initialize LoadProject object, by reading existing project + file. filename -- path to PDFgui project file. """ diff --git a/src/diffpy/pdfgui/utils.py b/src/diffpy/pdfgui/utils.py index fdced9bf..33cdc256 100644 --- a/src/diffpy/pdfgui/utils.py +++ b/src/diffpy/pdfgui/utils.py @@ -19,9 +19,9 @@ def numericStringSort(lst): - """Sort list of strings inplace according to general numeric value. Each - string gets split to string and integer segments to create keys for - comparison. Signs, decimal points and exponents are ignored. + """Sort list of strings inplace according to general numeric value. + Each string gets split to string and integer segments to create keys + for comparison. Signs, decimal points and exponents are ignored. lst -- sorted list of strings @@ -39,9 +39,9 @@ def numericStringSort(lst): def safeCPickleDumps(obj): - """Get pickle representation of an object possibly containing NaN or Inf. - By default it uses pickle.HIGHEST_PROTOCOL, but falls back to ASCII - protocol 0 if there is SystemError frexp() exception. + """Get pickle representation of an object possibly containing NaN or + Inf. By default it uses pickle.HIGHEST_PROTOCOL, but falls back to + ASCII protocol 0 if there is SystemError frexp() exception. obj -- object to be pickled From a25d80016729a916176698fede9fd76e2a89dd7d Mon Sep 17 00:00:00 2001 From: Yuchen Ethan Xiao Date: Tue, 17 Jun 2025 14:38:49 -0400 Subject: [PATCH 21/21] docs: fix typos --- doc/source/examples.rst | 2 +- doc/source/tutorial.rst | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/source/examples.rst b/doc/source/examples.rst index e2ba2af9..1bdc7530 100644 --- a/doc/source/examples.rst +++ b/doc/source/examples.rst @@ -313,7 +313,7 @@ approx- imately 3nm in size. Input files: -- :download:`Doping data series ` containing: +- :download:`Nanoparticle structure` containing: 1. two PDF data collected from the bulk and naoparticle material. 2. a project named ``CdSe-nano.ddp`` diff --git a/doc/source/tutorial.rst b/doc/source/tutorial.rst index d459164d..d13d2050 100644 --- a/doc/source/tutorial.rst +++ b/doc/source/tutorial.rst @@ -123,7 +123,7 @@ Procedure: factor, and a set of parameters intended to be used to account for correlated atomic motion effects that typically sharpen the nearest neighbor PDF peak. These are ``delta1``, ``delta2``, ``sratio``, and - ``rcut ``. The ``spdiameter`` and ``stepcut`` parameters include scatterer + ``rcut``. The ``spdiameter`` and ``stepcut`` parameters include scatterer size effects in the PDF. These parameters will be described later. The bottom part of the panel contains standard unit cell content related information such as atomic species, their fractional coordinates,