From 4c1fb0864da181f46c72c4a2a571ae01aa343a5b Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 9 Dec 2024 23:54:30 +0000 Subject: [PATCH 1/6] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/astral-sh/ruff-pre-commit: v0.8.1 → v0.8.2](https://github.com/astral-sh/ruff-pre-commit/compare/v0.8.1...v0.8.2) --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index a2a8794d..1e0a12eb 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -11,7 +11,7 @@ repos: exclude: ^example/AlN-LDA/ - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.8.1 + rev: v0.8.2 hooks: - id: ruff args: [ "--fix", "--show-fixes" ] From 8687da4118530cb4bf890ab5fd0803c918c8adb1 Mon Sep 17 00:00:00 2001 From: Atsushi Togo Date: Tue, 10 Dec 2024 13:24:03 +0900 Subject: [PATCH 2/6] Follow the change of fc interface in phonopy --- phono3py/api_phono3py.py | 1 - phono3py/conductivity/__init__.py | 1 - phono3py/cui/__init__.py | 1 - phono3py/interface/__init__.py | 1 - phono3py/interface/alm.py | 59 ----------------------------- phono3py/interface/fc_calculator.py | 26 +++++-------- phono3py/other/__init__.py | 1 - phono3py/phonon/__init__.py | 1 - phono3py/phonon3/__init__.py | 1 - phono3py/sscha/__init__.py | 1 - test/conductivity/__init__.py | 1 - test/other/__init__.py | 1 - test/phonon/__init__.py | 1 - test/phonon3/__init__.py | 1 - test/sscha/__init__.py | 1 - 15 files changed, 9 insertions(+), 89 deletions(-) delete mode 100644 phono3py/conductivity/__init__.py delete mode 100644 phono3py/cui/__init__.py delete mode 100644 phono3py/interface/__init__.py delete mode 100644 phono3py/interface/alm.py delete mode 100644 phono3py/other/__init__.py delete mode 100644 phono3py/phonon/__init__.py delete mode 100644 phono3py/phonon3/__init__.py delete mode 100644 phono3py/sscha/__init__.py delete mode 100644 test/conductivity/__init__.py delete mode 100644 test/other/__init__.py delete mode 100644 test/phonon/__init__.py delete mode 100644 test/phonon3/__init__.py delete mode 100644 test/sscha/__init__.py diff --git a/phono3py/api_phono3py.py b/phono3py/api_phono3py.py index a1dc63d4..6a830a1a 100644 --- a/phono3py/api_phono3py.py +++ b/phono3py/api_phono3py.py @@ -1544,7 +1544,6 @@ def produce_fc2( fc_calculator_options=fc_calculator_options, atom_list=p2s_map, symmetry=self._phonon_supercell_symmetry, - symprec=self._symprec, log_level=self._log_level, ) diff --git a/phono3py/conductivity/__init__.py b/phono3py/conductivity/__init__.py deleted file mode 100644 index 587beeca..00000000 --- a/phono3py/conductivity/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Thermal conductivity related modules.""" diff --git a/phono3py/cui/__init__.py b/phono3py/cui/__init__.py deleted file mode 100644 index ef701ecd..00000000 --- a/phono3py/cui/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Command user interface related routines.""" diff --git a/phono3py/interface/__init__.py b/phono3py/interface/__init__.py deleted file mode 100644 index 857b8148..00000000 --- a/phono3py/interface/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Interfaces to routines and data structures.""" diff --git a/phono3py/interface/alm.py b/phono3py/interface/alm.py deleted file mode 100644 index 91292761..00000000 --- a/phono3py/interface/alm.py +++ /dev/null @@ -1,59 +0,0 @@ -"""ALM interface for force constants calculation.""" - -# Copyright (C) 2016 Atsushi Togo -# All rights reserved. -# -# This file is part of phono3py. -# -# 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 phonopy project 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. - -from phonopy.interface.alm import run_alm - - -def get_fc3( - supercell, - primitive, - displacements, - forces, - options=None, - is_compact_fc=False, - log_level=0, -): - """Calculate fc3 using ALM.""" - return run_alm( - supercell, - primitive, - displacements, - forces, - 2, - is_compact_fc=is_compact_fc, - options=options, - log_level=log_level, - ) diff --git a/phono3py/interface/fc_calculator.py b/phono3py/interface/fc_calculator.py index ecdbc2b7..5fbddd29 100644 --- a/phono3py/interface/fc_calculator.py +++ b/phono3py/interface/fc_calculator.py @@ -55,13 +55,7 @@ def get_fc3( symmetry: Optional[Symmetry] = None, log_level: int = 0, ): - """Supercell 2nd order force constants (fc2) are calculated. - - The expected shape of supercell fc3 to be returned is - (len(atom_list), num_atoms, num_atom, 3, 3, 3), - where atom_list is either all atoms in primitive cell or supercell, - which is chosen by is_compact_fc=True for primitive cell and False for - supercell. + """Calculate 2upercell 2nd and 3rd order force constants. Parameters ---------- @@ -86,31 +80,28 @@ def get_fc3( Returns ------- - fc3 : ndarray - 3rd order force constants. - shape=(len(atom_list), num_atoms, num_atoms, 3, 3, 3) - dtype='double', order='C'. - Here atom_list is either all atoms in primitive cell or supercell, - which is chosen by is_compact_fc=True for primitive cell and False - for supercell. + (fc2, fc3) : tuple[ndarray] + 2nd and 3rd order force constants. """ if fc_calculator == "alm": - from phono3py.interface.alm import get_fc3 as get_fc3_alm + from phonopy.interface.alm import run_alm - return get_fc3_alm( + fc = run_alm( supercell, primitive, displacements, forces, + 2, options=fc_calculator_options, is_compact_fc=is_compact_fc, log_level=log_level, ) + return fc[2], fc[3] elif fc_calculator == "symfc": from phonopy.interface.symfc import run_symfc - return run_symfc( + fc = run_symfc( supercell, primitive, displacements, @@ -121,6 +112,7 @@ def get_fc3( options=fc_calculator_options, log_level=log_level, ) + return fc[2], fc[3] else: msg = "Force constants calculator of %s was not found ." % fc_calculator raise RuntimeError(msg) diff --git a/phono3py/other/__init__.py b/phono3py/other/__init__.py deleted file mode 100644 index 2cea0f50..00000000 --- a/phono3py/other/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Routines for various scatterings.""" diff --git a/phono3py/phonon/__init__.py b/phono3py/phonon/__init__.py deleted file mode 100644 index f2e13216..00000000 --- a/phono3py/phonon/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Routines for harmonic phonon related properties.""" diff --git a/phono3py/phonon3/__init__.py b/phono3py/phonon3/__init__.py deleted file mode 100644 index 9f1a03af..00000000 --- a/phono3py/phonon3/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Ph-ph interaction related routines.""" diff --git a/phono3py/sscha/__init__.py b/phono3py/sscha/__init__.py deleted file mode 100644 index b3fbc75c..00000000 --- a/phono3py/sscha/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Routines for SSCHA.""" diff --git a/test/conductivity/__init__.py b/test/conductivity/__init__.py deleted file mode 100644 index d9c1a66e..00000000 --- a/test/conductivity/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Tests for conductivity routines.""" diff --git a/test/other/__init__.py b/test/other/__init__.py deleted file mode 100644 index 4c09bb81..00000000 --- a/test/other/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Tests for various scatterings.""" diff --git a/test/phonon/__init__.py b/test/phonon/__init__.py deleted file mode 100644 index 1f598a8a..00000000 --- a/test/phonon/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Tests for harmonic phonon level properties.""" diff --git a/test/phonon3/__init__.py b/test/phonon3/__init__.py deleted file mode 100644 index 8349aa86..00000000 --- a/test/phonon3/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Tests for ph-ph interaction routines.""" diff --git a/test/sscha/__init__.py b/test/sscha/__init__.py deleted file mode 100644 index 90db4b31..00000000 --- a/test/sscha/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Tests for SSCHA.""" From cf70d2e0c439808e7cbfdf2127fe05bee3215954 Mon Sep 17 00:00:00 2001 From: Atsushi Togo Date: Tue, 10 Dec 2024 13:50:09 +0900 Subject: [PATCH 3/6] Update github workflow --- .github/workflows/phono3py-pytest-conda-nolapacke.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/phono3py-pytest-conda-nolapacke.yml b/.github/workflows/phono3py-pytest-conda-nolapacke.yml index 52d42829..a114f4e4 100644 --- a/.github/workflows/phono3py-pytest-conda-nolapacke.yml +++ b/.github/workflows/phono3py-pytest-conda-nolapacke.yml @@ -25,6 +25,13 @@ jobs: conda activate test conda install --yes python=${{ matrix.python-version }} conda install --yes matplotlib-base pyyaml h5py scipy pytest spglib cmake c-compiler cxx-compiler + - name: Install symfc develop branch + run: | + conda activate test + git clone --depth 1 https://github.com/symfc/symfc.git + cd symfc + pip install -e . -vvv + cd .. - name: Install phonopy develop branch run: | conda activate test From ba0357d5f2eb5b63cfc5c5d47e62c9e0073dd765 Mon Sep 17 00:00:00 2001 From: Atsushi Togo Date: Tue, 10 Dec 2024 19:06:08 +0900 Subject: [PATCH 4/6] Update following the change in phonopy for get_fc2 --- phono3py/api_phono3py.py | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/phono3py/api_phono3py.py b/phono3py/api_phono3py.py index 6a830a1a..f6b37d2f 100644 --- a/phono3py/api_phono3py.py +++ b/phono3py/api_phono3py.py @@ -1531,18 +1531,13 @@ def produce_fc2( if not forces_in_dataset(disp_dataset): raise RuntimeError("Forces are not set in the dataset.") - if is_compact_fc: - p2s_map = self._phonon_primitive.p2s_map - else: - p2s_map = None - self._fc2 = get_fc2( self._phonon_supercell, - self._phonon_primitive, disp_dataset, + primitive=self._phonon_primitive, fc_calculator=fc_calculator, fc_calculator_options=fc_calculator_options, - atom_list=p2s_map, + is_compact_fc=is_compact_fc, symmetry=self._phonon_supercell_symmetry, log_level=self._log_level, ) From 3c42156ae3c6c5a295f348f6e74e1764bcd5483f Mon Sep 17 00:00:00 2001 From: Atsushi Togo Date: Thu, 12 Dec 2024 12:46:09 +0900 Subject: [PATCH 5/6] Update phonopy version dependency --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 910ddb95..c178490f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -16,7 +16,7 @@ dependencies = [ "matplotlib", "h5py", "spglib", - "phonopy>=2.32,<2.33", + "phonopy>=2.33,<2.34", ] license = { file = "LICENSE" } From 6b78860dc297bee7ec6e8f1120a4e5a7aebbc3b9 Mon Sep 17 00:00:00 2001 From: Atsushi Togo Date: Sat, 14 Dec 2024 06:52:08 +0900 Subject: [PATCH 6/6] Set version 3.10.0 --- doc/changelog.md | 4 ++++ doc/conf.py | 4 ++-- phono3py/version.py | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/doc/changelog.md b/doc/changelog.md index 8f68a567..404499f6 100644 --- a/doc/changelog.md +++ b/doc/changelog.md @@ -2,6 +2,10 @@ # Change Log +## Dec-6-2024: Version 3.10.0 + +- Update to follow the change of phonopy's internal functions + ## Dec-6-2024: Version 3.9.0 - Update to follow the change of phonopy's internal functions diff --git a/doc/conf.py b/doc/conf.py index 5d421078..4f382595 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -58,9 +58,9 @@ # built documents. # # The short X.Y version. -version = "3.9" +version = "3.10" # The full version, including alpha/beta/rc tags. -release = "3.9.0" +release = "3.10.0" # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/phono3py/version.py b/phono3py/version.py index d2f316b5..96450c2b 100644 --- a/phono3py/version.py +++ b/phono3py/version.py @@ -34,4 +34,4 @@ # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. -__version__ = "3.9.0" +__version__ = "3.10.0"