mirror of https://github.com/phonopy/phono3py.git
deploy: 2654dacfc9
This commit is contained in:
parent
0f6939cfd4
commit
6f6363b6a6
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -330,13 +330,13 @@ information about primitive cell (`primitive_matrix` key) in
|
|||
(random_displacements_option)=
|
||||
### `--rd` (`RANDOM_DISPLACEMENTS`), `--rd-fc2` (`RANDOM_DISPLACEMENTS_FC2`) and `--random-seed` (`RANDOM_SEED`)
|
||||
|
||||
**`phono3py-load` doesn't have this option.**
|
||||
|
||||
See also {ref}`random-displacements`.
|
||||
|
||||
Random directional displacements are generated for fc3 and fc2 supercells by
|
||||
`--rd` and `--rd-fc2`, respectively. `--amplitude` and `--random-seed` options
|
||||
may be used together. These are used in the equivalent way to [`--rd` of
|
||||
`--rd` and `--rd-fc2`, respectively. `--rd auto` can estimate a possible number
|
||||
of supercells required (see {ref}`rd_number_estimation_factor_option`).
|
||||
`--amplitude` and `--random-seed` options may be used together. These are used
|
||||
in the equivalent way to [`--rd` of
|
||||
phonopy](https://phonopy.github.io/phonopy/setting-tags.html#random-displacements).
|
||||
|
||||
Like `-d` option, it is recommended to specify `--pa auto` together with `--rd`
|
||||
|
@ -346,6 +346,15 @@ and/or `--rd-fc2`,
|
|||
% phono3py -c POSCAR-unitcell --dim 2 2 2 --dim-fc2 4 4 4 --rd 100 --rd-fc2 2 --pa auto
|
||||
```
|
||||
|
||||
(rd_number_estimation_factor_option)=
|
||||
### `--rd-auto-factor` (`RD_NUMBER_ESTIMATION_FACTOR`)
|
||||
|
||||
This scales the number of supercells generated by `--rd auto` by the specified
|
||||
factor.
|
||||
|
||||
See
|
||||
[RD_NUMBER_ESTIMATION_FACTOR](https://phonopy.github.io/phonopy/setting-tags.html#rd-number-estimation-factor).
|
||||
|
||||
(amplitude_option)=
|
||||
|
||||
### `--amplitude` (`DISPLACEMENT_DISTANCE`)
|
||||
|
|
|
@ -20,8 +20,8 @@ For further details on combining phono3py calculations with pypolymlp, refer to
|
|||
[[doi](https://doi.org/10.1063/5.0211296)]
|
||||
[[arxiv](https://arxiv.org/abs/2401.17531)].
|
||||
|
||||
An example of its usage can be found in the `example/NaCl-pypolymlp` directory
|
||||
in the distribution from GitHub or PyPI.
|
||||
Examples of its usage can be found in the `example/NaCl-pypolymlp` and
|
||||
`example/AlN-rd` directories in the distribution from GitHub or PyPI.
|
||||
|
||||
## Citation of pypolymlp
|
||||
|
||||
|
@ -42,15 +42,12 @@ in the distribution from GitHub or PyPI.
|
|||
|
||||
## Requirements
|
||||
|
||||
- [pypolymlp](https://github.com/sekocha/pypolymlp) < 0.9
|
||||
- [pypolymlp](https://github.com/sekocha/pypolymlp)
|
||||
|
||||
For linux (x86-64), a compiled package of pypolymlp can be installed via
|
||||
conda-forge (recommended). Otherwise, pypolymlp can be installed from
|
||||
source-code.
|
||||
|
||||
From pypolymlp 0.9, its file format was changed. This will be taken care of
|
||||
by the future version of phonopy and phono3py.
|
||||
|
||||
## How to calculate
|
||||
|
||||
### Workflow
|
||||
|
@ -156,28 +153,28 @@ obtained by
|
|||
```
|
||||
``````
|
||||
|
||||
|
||||
### Step 4: Development of MLPs
|
||||
|
||||
The `phono3py_params.yaml` file contains the training data required for
|
||||
developing polynomial MLPs when running with the `--pypolymlp` option.
|
||||
|
||||
```
|
||||
% phono3py-load --pypolymlp phono3py_params.yaml
|
||||
phono3py-load --pypolymlp phono3py_params.yaml
|
||||
_ _____
|
||||
_ __ | |__ ___ _ __ ___|___ / _ __ _ _
|
||||
| '_ \| '_ \ / _ \| '_ \ / _ \ |_ \| '_ \| | | |
|
||||
| |_) | | | | (_) | | | | (_) |__) | |_) | |_| |
|
||||
| .__/|_| |_|\___/|_| |_|\___/____/| .__/ \__, |
|
||||
|_| |_| |___/
|
||||
3.11.3
|
||||
3.18.0
|
||||
|
||||
-------------------------[time 2025-01-19 18:02:40]-------------------------
|
||||
-------------------------[time 2025-07-26 13:59:10]-------------------------
|
||||
Compiled with OpenMP support (max 10 threads).
|
||||
Running in phono3py.load mode.
|
||||
Python version 3.12.6
|
||||
Spglib version 2.5.0
|
||||
Python version 3.13.3
|
||||
Spglib version 2.6.1
|
||||
----------------------------- General settings -----------------------------
|
||||
Run mode: pypolymlp
|
||||
HDF5 data compression filter: gzip
|
||||
Crystal structure was read from "phono3py_params.yaml".
|
||||
Supercell (dim): [2 2 2]
|
||||
|
@ -190,6 +187,7 @@ Use -v option to watch primitive cell, unit cell, and supercell structures.
|
|||
NAC parameters were read from "phono3py_params.yaml".
|
||||
Displacement dataset for fc3 was read from "phono3py_params.yaml".
|
||||
----------------------------- pypolymlp start ------------------------------
|
||||
Pypolymlp version 0.12.9
|
||||
Pypolymlp is a generator of polynomial machine learning potentials.
|
||||
Please cite the paper: A. Seko, J. Appl. Phys. 133, 011101 (2023).
|
||||
Pypolymlp is developed at https://github.com/sekocha/pypolymlp.
|
||||
|
@ -202,26 +200,11 @@ Parameters:
|
|||
gaussian_params1: (1.0, 1.0, 1)
|
||||
gaussian_params2: (0.0, 7.0, 10)
|
||||
Developing MLPs by pypolymlp...
|
||||
Regression: cholesky decomposition ...
|
||||
- alpha: 0.001
|
||||
- alpha: 0.01
|
||||
- alpha: 0.1
|
||||
- alpha: 1.0
|
||||
- alpha: 10.0
|
||||
Clear training X.T @ X
|
||||
Calculate X.T @ X for test data
|
||||
Clear test X.T @ X
|
||||
Regression: model selection ...
|
||||
- alpha = 1.000e-03 : rmse (train, test) = 1.12211e+15 1.12211e+15
|
||||
- alpha = 1.000e-02 : rmse (train, test) = 1.12211e+15 1.12211e+15
|
||||
- alpha = 1.000e-01 : rmse (train, test) = 0.00002 0.00002
|
||||
- alpha = 1.000e+00 : rmse (train, test) = 0.00002 0.00002
|
||||
- alpha = 1.000e+01 : rmse (train, test) = 0.00002 0.00002
|
||||
MLPs were written into "polymlp.yaml"
|
||||
------------------------------ pypolymlp end -------------------------------
|
||||
Generate displacements (--rd or -d) for proceeding to phonon calculations.
|
||||
Summary of calculation was written in "phono3py.yaml".
|
||||
-------------------------[time 2025-01-19 18:03:44]-------------------------
|
||||
-------------------------[time 2025-07-26 14:00:12]-------------------------
|
||||
_
|
||||
___ _ __ __| |
|
||||
/ _ \ '_ \ / _` |
|
||||
|
@ -252,14 +235,15 @@ structure file.
|
|||
| |_) | | | | (_) | | | | (_) |__) | |_) | |_| |
|
||||
| .__/|_| |_|\___/|_| |_|\___/____/| .__/ \__, |
|
||||
|_| |_| |___/
|
||||
3.11.3
|
||||
3.18.0
|
||||
|
||||
-------------------------[time 2025-01-19 18:06:46]-------------------------
|
||||
-------------------------[time 2025-07-26 14:00:49]-------------------------
|
||||
Compiled with OpenMP support (max 10 threads).
|
||||
Running in phono3py.load mode.
|
||||
Python version 3.12.6
|
||||
Spglib version 2.5.0
|
||||
Python version 3.13.3
|
||||
Spglib version 2.6.1
|
||||
----------------------------- General settings -----------------------------
|
||||
Run mode: pypolymlp + force constants
|
||||
HDF5 data compression filter: gzip
|
||||
Crystal structure was read from "phono3py.yaml".
|
||||
Supercell (dim): [2 2 2]
|
||||
|
@ -271,6 +255,7 @@ Spacegroup: Fm-3m (225)
|
|||
Use -v option to watch primitive cell, unit cell, and supercell structures.
|
||||
NAC parameters were read from "phono3py.yaml".
|
||||
----------------------------- pypolymlp start ------------------------------
|
||||
Pypolymlp version 0.12.9
|
||||
Pypolymlp is a generator of polynomial machine learning potentials.
|
||||
Please cite the paper: A. Seko, J. Appl. Phys. 133, 011101 (2023).
|
||||
Pypolymlp is developed at https://github.com/sekocha/pypolymlp.
|
||||
|
@ -279,6 +264,7 @@ Load MLPs from "polymlp.yaml".
|
|||
Generate displacements
|
||||
Displacement distance: 0.01
|
||||
Evaluate forces in 292 supercells by pypolymlp
|
||||
Dataset generated using MLPs was written in "phono3py_mlp_eval_dataset.yaml".
|
||||
----------------------------- Force constants ------------------------------
|
||||
Computing fc3[ 1, x, x ] using numpy.linalg.pinv.
|
||||
Displacements (in Angstrom):
|
||||
|
@ -289,16 +275,26 @@ Displacements (in Angstrom):
|
|||
[ 0.0100 0.0000 0.0000]
|
||||
[-0.0100 0.0000 0.0000]
|
||||
Expanding fc3.
|
||||
fc3 was symmetrized.
|
||||
fc2 was symmetrized.
|
||||
Max drift of fc3: 0.000000 (zzz) 0.000000 (zzz) 0.000000 (zzz)
|
||||
Max drift of fc2: 0.000000 (zz) 0.000000 (zz)
|
||||
Symmetrizing fc3 by symfc projector.
|
||||
Symfc version 1.5.3 (https://github.com/symfc/symfc)
|
||||
Citation: A. Seko and A. Togo, Phys. Rev. B, 110, 214302 (2024)
|
||||
Symmetrizing fc2 by symfc projector.
|
||||
Symfc version 1.5.3 (https://github.com/symfc/symfc)
|
||||
Citation: A. Seko and A. Togo, Phys. Rev. B, 110, 214302 (2024)
|
||||
Max drift of fc3: 0.00000000 (zyz) 0.00000000 (yzz) 0.00000000 (yzz)
|
||||
Max drift of fc2: -0.00000000 (yy) -0.00000000 (yy)
|
||||
fc3 was written into "fc3.hdf5".
|
||||
fc2 was written into "fc2.hdf5".
|
||||
--------------------------- Calculation settings ---------------------------
|
||||
Non-analytical term correction (NAC): True
|
||||
NAC unit conversion factor: 14.39965
|
||||
BZ integration: Tetrahedron-method
|
||||
Temperatures: 0.0 300.0
|
||||
Cutoff frequency: 0.01
|
||||
Frequency conversion factor to THz: 15.63330
|
||||
----------- None of ph-ph interaction calculation was performed. -----------
|
||||
Dataset generated using MLPs was written in "phono3py_mlp_eval_dataset.yaml".
|
||||
Summary of calculation was written in "phono3py.yaml".
|
||||
-------------------------[time 2025-01-19 18:06:55]-------------------------
|
||||
-------------------------[time 2025-07-26 14:00:58]-------------------------
|
||||
_
|
||||
___ _ __ __| |
|
||||
/ _ \ '_ \ / _` |
|
||||
|
@ -315,29 +311,28 @@ corresponding forces are stored in the `phono3py_mlp_eval_dataset.yaml` file.
|
|||
### Steps 5-7: Force constants calculation (random displacements in step 5)
|
||||
|
||||
Random displacements are generated by specifying {ref}`--rd
|
||||
<random_displacements_option>` option. To compute force constants with random
|
||||
displacements, an external force constants calculator is necessary. By default,
|
||||
symfc is used unless another force constants solver is explicitly specified.
|
||||
When running with the `--pypolymlp` option, MLPs are read from `polymlp.yaml`
|
||||
if the file exists. In this case, training data is no longer required, and files
|
||||
such as `phono3py.yaml` can be used as the input structure file.
|
||||
<random_displacements_option>` option. When running with the `--pypolymlp`
|
||||
option, MLPs are read from `polymlp.yaml` if the file exists. In this case,
|
||||
training data is no longer required, and files such as `phono3py.yaml` can be
|
||||
used as the input structure file.
|
||||
|
||||
```
|
||||
% phono3py-load --pypolymlp --rd 200 phono3py.yaml
|
||||
% phono3py-load --pypolymlp --rd auto phono3py.yaml
|
||||
_ _____
|
||||
_ __ | |__ ___ _ __ ___|___ / _ __ _ _
|
||||
| '_ \| '_ \ / _ \| '_ \ / _ \ |_ \| '_ \| | | |
|
||||
| |_) | | | | (_) | | | | (_) |__) | |_) | |_| |
|
||||
| .__/|_| |_|\___/|_| |_|\___/____/| .__/ \__, |
|
||||
|_| |_| |___/
|
||||
3.11.3
|
||||
3.18.0
|
||||
|
||||
-------------------------[time 2025-01-19 18:13:21]-------------------------
|
||||
-------------------------[time 2025-07-26 14:02:24]-------------------------
|
||||
Compiled with OpenMP support (max 10 threads).
|
||||
Running in phono3py.load mode.
|
||||
Python version 3.12.6
|
||||
Spglib version 2.5.0
|
||||
Python version 3.13.3
|
||||
Spglib version 2.6.1
|
||||
----------------------------- General settings -----------------------------
|
||||
Run mode: pypolymlp + force constants
|
||||
HDF5 data compression filter: gzip
|
||||
Crystal structure was read from "phono3py.yaml".
|
||||
Supercell (dim): [2 2 2]
|
||||
|
@ -349,6 +344,7 @@ Spacegroup: Fm-3m (225)
|
|||
Use -v option to watch primitive cell, unit cell, and supercell structures.
|
||||
NAC parameters were read from "phono3py.yaml".
|
||||
----------------------------- pypolymlp start ------------------------------
|
||||
Pypolymlp version 0.12.9
|
||||
Pypolymlp is a generator of polynomial machine learning potentials.
|
||||
Please cite the paper: A. Seko, J. Appl. Phys. 133, 011101 (2023).
|
||||
Pypolymlp is developed at https://github.com/sekocha/pypolymlp.
|
||||
|
@ -357,31 +353,34 @@ Load MLPs from "polymlp.yaml".
|
|||
Generate random displacements
|
||||
Twice of number of snapshots will be generated for plus-minus displacements.
|
||||
Displacement distance: 0.01
|
||||
Evaluate forces in 400 supercells by pypolymlp
|
||||
Evaluate forces in 32 supercells by pypolymlp
|
||||
Dataset generated using MLPs was written in "phono3py_mlp_eval_dataset.yaml".
|
||||
----------------------------- Force constants ------------------------------
|
||||
Symfc will be used to handle general (or random) displacements.
|
||||
Type-II dataset for displacements and forces was provided,
|
||||
but the selected force constants calculator cannot process it.
|
||||
Use another force constants calculator, e.g., symfc,
|
||||
to generate force constants.
|
||||
Try symfc to handle general (or random) displacements.
|
||||
-------------------------------- Symfc start -------------------------------
|
||||
Symfc is a force constants calculator. See the following paper:
|
||||
A. Seko and A. Togo, Phys. Rev. B, 110, 214302 (2024).
|
||||
Symfc is developed at https://github.com/symfc/symfc.
|
||||
Symfc version 1.5.3 (https://github.com/symfc/symfc)
|
||||
Citation: A. Seko and A. Togo, Phys. Rev. B, 110, 214302 (2024)
|
||||
Computing [2, 3] order force constants.
|
||||
Increase log-level to watch detailed symfc log.
|
||||
--------------------------------- Symfc end --------------------------------
|
||||
-------------------------------- Symfc start -------------------------------
|
||||
Symfc is a force constants calculator. See the following paper:
|
||||
A. Seko and A. Togo, Phys. Rev. B, 110, 214302 (2024).
|
||||
Symfc is developed at https://github.com/symfc/symfc.
|
||||
Computing [2] order force constants.
|
||||
Increase log-level to watch detailed symfc log.
|
||||
--------------------------------- Symfc end --------------------------------
|
||||
Max drift of fc3: -0.000000 (zxz) -0.000000 (xzz) -0.000000 (xzz)
|
||||
Max drift of fc2: -0.000000 (yy) -0.000000 (yy)
|
||||
Max drift of fc3: -0.00000000 (xyx) -0.00000000 (yxx) -0.00000000 (yxx)
|
||||
Max drift of fc2: -0.00000000 (yy) -0.00000000 (yy)
|
||||
fc3 was written into "fc3.hdf5".
|
||||
fc2 was written into "fc2.hdf5".
|
||||
--------------------------- Calculation settings ---------------------------
|
||||
Non-analytical term correction (NAC): True
|
||||
NAC unit conversion factor: 14.39965
|
||||
BZ integration: Tetrahedron-method
|
||||
Temperatures: 0.0 300.0
|
||||
Cutoff frequency: 0.01
|
||||
Frequency conversion factor to THz: 15.63330
|
||||
----------- None of ph-ph interaction calculation was performed. -----------
|
||||
Dataset generated using MLPs was written in "phono3py_mlp_eval_dataset.yaml".
|
||||
Summary of calculation was written in "phono3py.yaml".
|
||||
-------------------------[time 2025-01-19 18:13:34]-------------------------
|
||||
-------------------------[time 2025-07-26 14:02:29]-------------------------
|
||||
_
|
||||
___ _ __ __| |
|
||||
/ _ \ '_ \ / _` |
|
||||
|
@ -389,88 +388,121 @@ Summary of calculation was written in "phono3py.yaml".
|
|||
\___|_| |_|\__,_|
|
||||
```
|
||||
|
||||
After the MLPs are read, 200 supercells with random directional displacements
|
||||
are generated. These displacements are then inverted (such as $\Delta
|
||||
\mathbf{u}_i$ and $-\Delta \mathbf{u}_i$ of all atoms $i$ in each supercell),
|
||||
resulting in an additional 200 supercells. In total, 400 supercells are created.
|
||||
The forces for these supercells are then evaluated. Finally, the force constants
|
||||
are calculated using symfc.
|
||||
After the MLPs are read, 16 supercells with random directional displacements are
|
||||
generated by the option `--rd auto`. These displacements are then inverted (such
|
||||
as $\Delta \mathbf{u}_i$ and $-\Delta \mathbf{u}_i$ of all atoms $i$ in each
|
||||
supercell), resulting in an additional 16 supercells. In total, 32 supercells
|
||||
are created. The forces for these supercells are then evaluated. Finally, the
|
||||
force constants are calculated using symfc. The `--rd-auto-factor` option can
|
||||
change the number of supercells generated.
|
||||
|
||||
### Command options for force constants calculation
|
||||
## Command options for force constants calculation
|
||||
|
||||
After obtaining the MLPs, displacements are generated using those MLPs, and the
|
||||
resulting forces are computed accordingly. The displacement distance is set by
|
||||
the `--amplitude` option, whose default value is 0.01 Angstrom. When the `--rd`
|
||||
option is used, it specifies the number of supercells with random directional
|
||||
displacements. Note that to achieve accurate force constants, the actual number
|
||||
of generated supercells is twice the specified number. If `--rd` is omitted,
|
||||
systematic displacements are introduced.
|
||||
After obtaining the MLPs, displacements are generated using these MLPs, and the
|
||||
resulting forces are computed. The displacement distance is controlled by the
|
||||
`--amplitude` option, with a default value of 0.01 Angstrom. When `-d` is
|
||||
specified, systematic displacements are introduced. When the `--rd` option is
|
||||
used, it specifies the number of supercells with random directional
|
||||
displacements. To ensure accurate force constants, the actual number of
|
||||
generated supercells is twice the specified value.
|
||||
|
||||
Once the file `polymlp.yaml` is obtained, force constants can be calculated
|
||||
using MLPs from `polymlp.yaml`. After removing the `fc3.hdf5` and `fc2.hdf5`
|
||||
files, `phono3py-load` will detect `polymlp.yaml` and then compute the force
|
||||
constants by loading the MLPs from `polymlp.yaml` as follows:
|
||||
When atoms in the unit cell have positional degrees of freedom within the
|
||||
crystal symmetry, the `--relax-atomic-positions` option can relax their
|
||||
positions using MLPs. In the `example/AlN-rd` case, the following command
|
||||
develops polynomial MLPs and then relaxes atomic positions using these MLPs. The
|
||||
force constants are calculated using supercells with 0.005 Angstrom systematic
|
||||
displacements.
|
||||
|
||||
```
|
||||
% phono3py-load --pypolymlp --rd 100 --amplitude 0.005 phono3py.yaml
|
||||
% phono3py-load phonopy_params_mp-661.yaml.xz --pypolymlp --relax-atomic-positions -d
|
||||
|
||||
_ _____
|
||||
_ __ | |__ ___ _ __ ___|___ / _ __ _ _
|
||||
| '_ \| '_ \ / _ \| '_ \ / _ \ |_ \| '_ \| | | |
|
||||
| |_) | | | | (_) | | | | (_) |__) | |_) | |_| |
|
||||
| .__/|_| |_|\___/|_| |_|\___/____/| .__/ \__, |
|
||||
|_| |_| |___/
|
||||
3.11.3
|
||||
3.18.0-dev21+ge26f3ecb
|
||||
|
||||
-------------------------[time 2025-01-19 18:19:02]-------------------------
|
||||
-------------------------[time 2025-07-26 14:29:16]-------------------------
|
||||
Compiled with OpenMP support (max 10 threads).
|
||||
Running in phono3py.load mode.
|
||||
Python version 3.12.6
|
||||
Spglib version 2.5.0
|
||||
Python version 3.13.3
|
||||
Spglib version 2.6.1
|
||||
----------------------------- General settings -----------------------------
|
||||
Run mode: pypolymlp + force constants
|
||||
HDF5 data compression filter: gzip
|
||||
Crystal structure was read from "phono3py.yaml".
|
||||
Supercell (dim): [2 2 2]
|
||||
Crystal structure was read from "phonopy_params_mp-661.yaml.xz".
|
||||
Supercell (dim): [4 4 2]
|
||||
Primitive matrix:
|
||||
[0. 0.5 0.5]
|
||||
[0.5 0. 0.5]
|
||||
[0.5 0.5 0. ]
|
||||
Spacegroup: Fm-3m (225)
|
||||
[1. 0. 0.]
|
||||
[0. 1. 0.]
|
||||
[0. 0. 1.]
|
||||
Spacegroup: P6_3mc (186)
|
||||
Use -v option to watch primitive cell, unit cell, and supercell structures.
|
||||
NAC parameters were read from "phono3py.yaml".
|
||||
NAC parameters were read from "phonopy_params_mp-661.yaml.xz".
|
||||
Displacement dataset for fc3 was read from "phonopy_params_mp-661.yaml.xz".
|
||||
----------------------------- pypolymlp start ------------------------------
|
||||
Pypolymlp version 0.12.9.post0
|
||||
Pypolymlp is a generator of polynomial machine learning potentials.
|
||||
Please cite the paper: A. Seko, J. Appl. Phys. 133, 011101 (2023).
|
||||
Pypolymlp is developed at https://github.com/sekocha/pypolymlp.
|
||||
Load MLPs from "polymlp.yaml".
|
||||
Parameters:
|
||||
cutoff: 8.0
|
||||
model_type: 3
|
||||
max_p: 2
|
||||
gtinv_order: 3
|
||||
gtinv_maxl: (8, 8)
|
||||
gaussian_params1: (1.0, 1.0, 1)
|
||||
gaussian_params2: (0.0, 7.0, 10)
|
||||
Developing MLPs by pypolymlp...
|
||||
MLPs were written into "polymlp.yaml"
|
||||
------------------------------ pypolymlp end -------------------------------
|
||||
Generate random displacements
|
||||
Twice of number of snapshots will be generated for plus-minus displacements.
|
||||
Relaxing atomic positions using polynomial MLPs...
|
||||
Change in fractional position and in distance:
|
||||
1 N : 0.00000000 0.00000000 -0.00000021 (|d|=0.00000105)
|
||||
2 N : 0.00000000 0.00000000 -0.00000021 (|d|=0.00000105)
|
||||
3 Al: 0.00000000 0.00000000 0.00000021 (|d|=0.00000105)
|
||||
4 Al: 0.00000000 0.00000000 0.00000021 (|d|=0.00000105)
|
||||
----------------------------------------------------------------------------
|
||||
Generate displacements
|
||||
Displacement distance: 0.005
|
||||
Evaluate forces in 200 supercells by pypolymlp
|
||||
Evaluate forces in 3720 supercells by pypolymlp
|
||||
Dataset generated using MLPs was written in "phono3py_mlp_eval_dataset.yaml".
|
||||
----------------------------- Force constants ------------------------------
|
||||
Symfc will be used to handle general (or random) displacements.
|
||||
-------------------------------- Symfc start -------------------------------
|
||||
Symfc is a force constants calculator. See the following paper:
|
||||
A. Seko and A. Togo, Phys. Rev. B, 110, 214302 (2024).
|
||||
Symfc is developed at https://github.com/symfc/symfc.
|
||||
Computing [2, 3] order force constants.
|
||||
Increase log-level to watch detailed symfc log.
|
||||
--------------------------------- Symfc end --------------------------------
|
||||
-------------------------------- Symfc start -------------------------------
|
||||
Symfc is a force constants calculator. See the following paper:
|
||||
A. Seko and A. Togo, Phys. Rev. B, 110, 214302 (2024).
|
||||
Symfc is developed at https://github.com/symfc/symfc.
|
||||
Computing [2] order force constants.
|
||||
Increase log-level to watch detailed symfc log.
|
||||
--------------------------------- Symfc end --------------------------------
|
||||
Max drift of fc3: -0.000000 (zxz) -0.000000 (xzz) -0.000000 (xzz)
|
||||
Max drift of fc2: -0.000000 (yy) -0.000000 (yy)
|
||||
Computing fc3[ 1, x, x ] using numpy.linalg.pinv.
|
||||
Displacements (in Angstrom):
|
||||
[ 0.0050 0.0000 0.0000]
|
||||
[-0.0050 0.0000 0.0000]
|
||||
[ 0.0000 0.0000 0.0050]
|
||||
[ 0.0000 0.0000 -0.0050]
|
||||
Computing fc3[ 65, x, x ] using numpy.linalg.pinv.
|
||||
Displacements (in Angstrom):
|
||||
[ 0.0050 0.0000 0.0000]
|
||||
[-0.0050 0.0000 0.0000]
|
||||
[ 0.0000 0.0000 0.0050]
|
||||
[ 0.0000 0.0000 -0.0050]
|
||||
Expanding fc3.
|
||||
Symmetrizing fc3 by symfc projector.
|
||||
Symfc version 1.5.3 (https://github.com/symfc/symfc)
|
||||
Citation: A. Seko and A. Togo, Phys. Rev. B, 110, 214302 (2024)
|
||||
Symmetrizing fc2 by symfc projector.
|
||||
Symfc version 1.5.3 (https://github.com/symfc/symfc)
|
||||
Citation: A. Seko and A. Togo, Phys. Rev. B, 110, 214302 (2024)
|
||||
Max drift of fc3: -0.00000000 (xxz) -0.00000000 (xxz) -0.00000000 (xzx)
|
||||
Max drift of fc2: -0.00000000 (xx) -0.00000000 (xx)
|
||||
fc3 was written into "fc3.hdf5".
|
||||
fc2 was written into "fc2.hdf5".
|
||||
--------------------------- Calculation settings ---------------------------
|
||||
Non-analytical term correction (NAC): True
|
||||
NAC unit conversion factor: 14.39965
|
||||
BZ integration: Tetrahedron-method
|
||||
Temperatures: 0.0 300.0
|
||||
Cutoff frequency: 0.01
|
||||
Frequency conversion factor to THz: 15.63330
|
||||
----------- None of ph-ph interaction calculation was performed. -----------
|
||||
Dataset generated using MLPs was written in "phono3py_mlp_eval_dataset.yaml".
|
||||
Summary of calculation was written in "phono3py.yaml".
|
||||
-------------------------[time 2025-01-19 18:19:09]-------------------------
|
||||
-------------------------[time 2025-07-26 14:39:11]-------------------------
|
||||
_
|
||||
___ _ __ __| |
|
||||
/ _ \ '_ \ / _` |
|
||||
|
@ -478,7 +510,6 @@ Summary of calculation was written in "phono3py.yaml".
|
|||
\___|_| |_|\__,_|
|
||||
```
|
||||
|
||||
|
||||
## Parameters for developing MLPs
|
||||
|
||||
A few parameters can be specified using the `--mlp-params` option for the
|
||||
|
|
|
@ -358,6 +358,7 @@ document.write(`
|
|||
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#displacement-creation">Displacement creation</a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#d-create-displacements-true"><code class="docutils literal notranslate"><span class="pre">-d</span></code> (<code class="docutils literal notranslate"><span class="pre">CREATE_DISPLACEMENTS</span> <span class="pre">=</span> <span class="pre">.TRUE.</span></code>)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#rd-random-displacements-rd-fc2-random-displacements-fc2-and-random-seed-random-seed"><code class="docutils literal notranslate"><span class="pre">--rd</span></code> (<code class="docutils literal notranslate"><span class="pre">RANDOM_DISPLACEMENTS</span></code>), <code class="docutils literal notranslate"><span class="pre">--rd-fc2</span></code> (<code class="docutils literal notranslate"><span class="pre">RANDOM_DISPLACEMENTS_FC2</span></code>) and <code class="docutils literal notranslate"><span class="pre">--random-seed</span></code> (<code class="docutils literal notranslate"><span class="pre">RANDOM_SEED</span></code>)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#rd-auto-factor-rd-number-estimation-factor"><code class="docutils literal notranslate"><span class="pre">--rd-auto-factor</span></code> (<code class="docutils literal notranslate"><span class="pre">RD_NUMBER_ESTIMATION_FACTOR</span></code>)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#amplitude-displacement-distance"><code class="docutils literal notranslate"><span class="pre">--amplitude</span></code> (<code class="docutils literal notranslate"><span class="pre">DISPLACEMENT_DISTANCE</span></code>)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#fc-calc-fc-calculator-fc-calculator"><code class="docutils literal notranslate"><span class="pre">--fc-calc</span></code>, <code class="docutils literal notranslate"><span class="pre">--fc-calculator</span></code> (<code class="docutils literal notranslate"><span class="pre">FC_CALCULATOR</span></code>)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#fc-calc-opt-fc-calculator-options-fc-calculator-options"><code class="docutils literal notranslate"><span class="pre">--fc-calc-opt</span></code>, <code class="docutils literal notranslate"><span class="pre">--fc-calculator-options</span></code> (<code class="docutils literal notranslate"><span class="pre">FC_CALCULATOR_OPTIONS</span></code>)</a><ul class="nav section-nav flex-column">
|
||||
|
@ -722,11 +723,12 @@ information about primitive cell (<code class="docutils literal notranslate"><sp
|
|||
</section>
|
||||
<section id="rd-random-displacements-rd-fc2-random-displacements-fc2-and-random-seed-random-seed">
|
||||
<span id="random-displacements-option"></span><h3><code class="docutils literal notranslate"><span class="pre">--rd</span></code> (<code class="docutils literal notranslate"><span class="pre">RANDOM_DISPLACEMENTS</span></code>), <code class="docutils literal notranslate"><span class="pre">--rd-fc2</span></code> (<code class="docutils literal notranslate"><span class="pre">RANDOM_DISPLACEMENTS_FC2</span></code>) and <code class="docutils literal notranslate"><span class="pre">--random-seed</span></code> (<code class="docutils literal notranslate"><span class="pre">RANDOM_SEED</span></code>)<a class="headerlink" href="#rd-random-displacements-rd-fc2-random-displacements-fc2-and-random-seed-random-seed" title="Link to this heading">#</a></h3>
|
||||
<p><strong><code class="docutils literal notranslate"><span class="pre">phono3py-load</span></code> doesn’t have this option.</strong></p>
|
||||
<p>See also <a class="reference internal" href="random-displacements.html#random-displacements"><span class="std std-ref">Force constants calculation with random displacements of atoms</span></a>.</p>
|
||||
<p>Random directional displacements are generated for fc3 and fc2 supercells by
|
||||
<code class="docutils literal notranslate"><span class="pre">--rd</span></code> and <code class="docutils literal notranslate"><span class="pre">--rd-fc2</span></code>, respectively. <code class="docutils literal notranslate"><span class="pre">--amplitude</span></code> and <code class="docutils literal notranslate"><span class="pre">--random-seed</span></code> options
|
||||
may be used together. These are used in the equivalent way to <a class="reference external" href="https://phonopy.github.io/phonopy/setting-tags.html#random-displacements"><code class="docutils literal notranslate"><span class="pre">--rd</span></code> of
|
||||
<code class="docutils literal notranslate"><span class="pre">--rd</span></code> and <code class="docutils literal notranslate"><span class="pre">--rd-fc2</span></code>, respectively. <code class="docutils literal notranslate"><span class="pre">--rd</span> <span class="pre">auto</span></code> can estimate a possible number
|
||||
of supercells required (see <a class="reference internal" href="#rd-number-estimation-factor-option"><span class="std std-ref">--rd-auto-factor (RD_NUMBER_ESTIMATION_FACTOR)</span></a>).
|
||||
<code class="docutils literal notranslate"><span class="pre">--amplitude</span></code> and <code class="docutils literal notranslate"><span class="pre">--random-seed</span></code> options may be used together. These are used
|
||||
in the equivalent way to <a class="reference external" href="https://phonopy.github.io/phonopy/setting-tags.html#random-displacements"><code class="docutils literal notranslate"><span class="pre">--rd</span></code> of
|
||||
phonopy</a>.</p>
|
||||
<p>Like <code class="docutils literal notranslate"><span class="pre">-d</span></code> option, it is recommended to specify <code class="docutils literal notranslate"><span class="pre">--pa</span> <span class="pre">auto</span></code> together with <code class="docutils literal notranslate"><span class="pre">--rd</span></code>
|
||||
and/or <code class="docutils literal notranslate"><span class="pre">--rd-fc2</span></code>,</p>
|
||||
|
@ -734,6 +736,13 @@ and/or <code class="docutils literal notranslate"><span class="pre">--rd-fc2</sp
|
|||
</pre></div>
|
||||
</div>
|
||||
</section>
|
||||
<section id="rd-auto-factor-rd-number-estimation-factor">
|
||||
<span id="rd-number-estimation-factor-option"></span><h3><code class="docutils literal notranslate"><span class="pre">--rd-auto-factor</span></code> (<code class="docutils literal notranslate"><span class="pre">RD_NUMBER_ESTIMATION_FACTOR</span></code>)<a class="headerlink" href="#rd-auto-factor-rd-number-estimation-factor" title="Link to this heading">#</a></h3>
|
||||
<p>This scales the number of supercells generated by <code class="docutils literal notranslate"><span class="pre">--rd</span> <span class="pre">auto</span></code> by the specified
|
||||
factor.</p>
|
||||
<p>See
|
||||
<a class="reference external" href="https://phonopy.github.io/phonopy/setting-tags.html#rd-number-estimation-factor">RD_NUMBER_ESTIMATION_FACTOR</a>.</p>
|
||||
</section>
|
||||
<section id="amplitude-displacement-distance">
|
||||
<span id="amplitude-option"></span><h3><code class="docutils literal notranslate"><span class="pre">--amplitude</span></code> (<code class="docutils literal notranslate"><span class="pre">DISPLACEMENT_DISTANCE</span></code>)<a class="headerlink" href="#amplitude-displacement-distance" title="Link to this heading">#</a></h3>
|
||||
<p><strong><code class="docutils literal notranslate"><span class="pre">phono3py-load</span></code> doesn’t have this option.</strong></p>
|
||||
|
@ -1604,6 +1613,7 @@ This is equivalent to setting `-i` and `-o` simultaneously. -->
|
|||
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#displacement-creation">Displacement creation</a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#d-create-displacements-true"><code class="docutils literal notranslate"><span class="pre">-d</span></code> (<code class="docutils literal notranslate"><span class="pre">CREATE_DISPLACEMENTS</span> <span class="pre">=</span> <span class="pre">.TRUE.</span></code>)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#rd-random-displacements-rd-fc2-random-displacements-fc2-and-random-seed-random-seed"><code class="docutils literal notranslate"><span class="pre">--rd</span></code> (<code class="docutils literal notranslate"><span class="pre">RANDOM_DISPLACEMENTS</span></code>), <code class="docutils literal notranslate"><span class="pre">--rd-fc2</span></code> (<code class="docutils literal notranslate"><span class="pre">RANDOM_DISPLACEMENTS_FC2</span></code>) and <code class="docutils literal notranslate"><span class="pre">--random-seed</span></code> (<code class="docutils literal notranslate"><span class="pre">RANDOM_SEED</span></code>)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#rd-auto-factor-rd-number-estimation-factor"><code class="docutils literal notranslate"><span class="pre">--rd-auto-factor</span></code> (<code class="docutils literal notranslate"><span class="pre">RD_NUMBER_ESTIMATION_FACTOR</span></code>)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#amplitude-displacement-distance"><code class="docutils literal notranslate"><span class="pre">--amplitude</span></code> (<code class="docutils literal notranslate"><span class="pre">DISPLACEMENT_DISTANCE</span></code>)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#fc-calc-fc-calculator-fc-calculator"><code class="docutils literal notranslate"><span class="pre">--fc-calc</span></code>, <code class="docutils literal notranslate"><span class="pre">--fc-calculator</span></code> (<code class="docutils literal notranslate"><span class="pre">FC_CALCULATOR</span></code>)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#fc-calc-opt-fc-calculator-options-fc-calculator-options"><code class="docutils literal notranslate"><span class="pre">--fc-calc-opt</span></code>, <code class="docutils literal notranslate"><span class="pre">--fc-calculator-options</span></code> (<code class="docutils literal notranslate"><span class="pre">FC_CALCULATOR_OPTIONS</span></code>)</a><ul class="nav section-nav flex-column">
|
||||
|
|
BIN
objects.inv
BIN
objects.inv
Binary file not shown.
272
pypolymlp.html
272
pypolymlp.html
|
@ -334,9 +334,9 @@ document.write(`
|
|||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#step-4-development-of-mlps">Step 4: Development of MLPs</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#steps-5-7-force-constants-calculation-systematic-displacements-in-step-5">Steps 5-7: Force constants calculation (systematic displacements in step 5)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#steps-5-7-force-constants-calculation-random-displacements-in-step-5">Steps 5-7: Force constants calculation (random displacements in step 5)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#command-options-for-force-constants-calculation">Command options for force constants calculation</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#command-options-for-force-constants-calculation">Command options for force constants calculation</a></li>
|
||||
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#parameters-for-developing-mlps">Parameters for developing MLPs</a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#ntrain-and-ntest"><code class="docutils literal notranslate"><span class="pre">ntrain</span></code> and <code class="docutils literal notranslate"><span class="pre">ntest</span></code></a></li>
|
||||
</ul>
|
||||
|
@ -370,8 +370,8 @@ compute forces for supercells with specific displacements.</p>
|
|||
<u>A. Togo and A. Seko, J. Chem. Phys. <strong>160</strong>, 211001 (2024)</u>
|
||||
[<a class="reference external" href="https://doi.org/10.1063/5.0211296">doi</a>]
|
||||
[<a class="reference external" href="https://arxiv.org/abs/2401.17531">arxiv</a>].</p>
|
||||
<p>An example of its usage can be found in the <code class="docutils literal notranslate"><span class="pre">example/NaCl-pypolymlp</span></code> directory
|
||||
in the distribution from GitHub or PyPI.</p>
|
||||
<p>Examples of its usage can be found in the <code class="docutils literal notranslate"><span class="pre">example/NaCl-pypolymlp</span></code> and
|
||||
<code class="docutils literal notranslate"><span class="pre">example/AlN-rd</span></code> directories in the distribution from GitHub or PyPI.</p>
|
||||
<section id="citation-of-pypolymlp">
|
||||
<h2>Citation of pypolymlp<a class="headerlink" href="#citation-of-pypolymlp" title="Link to this heading">#</a></h2>
|
||||
<p>“Tutorial: Systematic development of polynomial machine learning potentials for elemental and alloy systems”, A. Seko, J. Appl. Phys. <strong>133</strong>, 011101 (2023).</p>
|
||||
|
@ -391,12 +391,10 @@ in the distribution from GitHub or PyPI.</p>
|
|||
<section id="requirements">
|
||||
<h2>Requirements<a class="headerlink" href="#requirements" title="Link to this heading">#</a></h2>
|
||||
<ul>
|
||||
<li><p><a class="reference external" href="https://github.com/sekocha/pypolymlp">pypolymlp</a> < 0.9</p>
|
||||
<li><p><a class="reference external" href="https://github.com/sekocha/pypolymlp">pypolymlp</a></p>
|
||||
<p>For linux (x86-64), a compiled package of pypolymlp can be installed via
|
||||
conda-forge (recommended). Otherwise, pypolymlp can be installed from
|
||||
source-code.</p>
|
||||
<p>From pypolymlp 0.9, its file format was changed. This will be taken care of
|
||||
by the future version of phonopy and phono3py.</p>
|
||||
</li>
|
||||
</ul>
|
||||
</section>
|
||||
|
@ -502,21 +500,22 @@ obtained by</p>
|
|||
<h3>Step 4: Development of MLPs<a class="headerlink" href="#step-4-development-of-mlps" title="Link to this heading">#</a></h3>
|
||||
<p>The <code class="docutils literal notranslate"><span class="pre">phono3py_params.yaml</span></code> file contains the training data required for
|
||||
developing polynomial MLPs when running with the <code class="docutils literal notranslate"><span class="pre">--pypolymlp</span></code> option.</p>
|
||||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">%</span> <span class="n">phono3py</span><span class="o">-</span><span class="n">load</span> <span class="o">--</span><span class="n">pypolymlp</span> <span class="n">phono3py_params</span><span class="o">.</span><span class="n">yaml</span>
|
||||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span> <span class="n">phono3py</span><span class="o">-</span><span class="n">load</span> <span class="o">--</span><span class="n">pypolymlp</span> <span class="n">phono3py_params</span><span class="o">.</span><span class="n">yaml</span>
|
||||
<span class="n">_</span> <span class="n">_____</span>
|
||||
<span class="n">_</span> <span class="n">__</span> <span class="o">|</span> <span class="o">|</span><span class="n">__</span> <span class="n">___</span> <span class="n">_</span> <span class="n">__</span> <span class="n">___</span><span class="o">|</span><span class="n">___</span> <span class="o">/</span> <span class="n">_</span> <span class="n">__</span> <span class="n">_</span> <span class="n">_</span>
|
||||
<span class="o">|</span> <span class="s1">'_ \| '</span><span class="n">_</span> \ <span class="o">/</span> <span class="n">_</span> \<span class="o">|</span> <span class="s1">'_ \ / _ \ |_ \| '</span><span class="n">_</span> \<span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span>
|
||||
<span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="p">(</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="p">(</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span><span class="n">__</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span>
|
||||
<span class="o">|</span> <span class="o">.</span><span class="n">__</span><span class="o">/|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span>\<span class="n">___</span><span class="o">/|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span>\<span class="n">___</span><span class="o">/</span><span class="n">____</span><span class="o">/|</span> <span class="o">.</span><span class="n">__</span><span class="o">/</span> \<span class="n">__</span><span class="p">,</span> <span class="o">|</span>
|
||||
<span class="o">|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">___</span><span class="o">/</span>
|
||||
<span class="mf">3.11.3</span>
|
||||
<span class="mf">3.18.0</span>
|
||||
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">01</span><span class="o">-</span><span class="mi">19</span> <span class="mi">18</span><span class="p">:</span><span class="mi">02</span><span class="p">:</span><span class="mi">40</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">07</span><span class="o">-</span><span class="mi">26</span> <span class="mi">13</span><span class="p">:</span><span class="mi">59</span><span class="p">:</span><span class="mi">10</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="n">Compiled</span> <span class="k">with</span> <span class="n">OpenMP</span> <span class="n">support</span> <span class="p">(</span><span class="nb">max</span> <span class="mi">10</span> <span class="n">threads</span><span class="p">)</span><span class="o">.</span>
|
||||
<span class="n">Running</span> <span class="ow">in</span> <span class="n">phono3py</span><span class="o">.</span><span class="n">load</span> <span class="n">mode</span><span class="o">.</span>
|
||||
<span class="n">Python</span> <span class="n">version</span> <span class="mf">3.12.6</span>
|
||||
<span class="n">Spglib</span> <span class="n">version</span> <span class="mf">2.5.0</span>
|
||||
<span class="n">Python</span> <span class="n">version</span> <span class="mf">3.13.3</span>
|
||||
<span class="n">Spglib</span> <span class="n">version</span> <span class="mf">2.6.1</span>
|
||||
<span class="o">-----------------------------</span> <span class="n">General</span> <span class="n">settings</span> <span class="o">-----------------------------</span>
|
||||
<span class="n">Run</span> <span class="n">mode</span><span class="p">:</span> <span class="n">pypolymlp</span>
|
||||
<span class="n">HDF5</span> <span class="n">data</span> <span class="n">compression</span> <span class="nb">filter</span><span class="p">:</span> <span class="n">gzip</span>
|
||||
<span class="n">Crystal</span> <span class="n">structure</span> <span class="n">was</span> <span class="n">read</span> <span class="kn">from</span><span class="w"> </span><span class="s2">"phono3py_params.yaml"</span><span class="o">.</span>
|
||||
<span class="n">Supercell</span> <span class="p">(</span><span class="n">dim</span><span class="p">):</span> <span class="p">[</span><span class="mi">2</span> <span class="mi">2</span> <span class="mi">2</span><span class="p">]</span>
|
||||
|
@ -529,6 +528,7 @@ developing polynomial MLPs when running with the <code class="docutils literal n
|
|||
<span class="n">NAC</span> <span class="n">parameters</span> <span class="n">were</span> <span class="n">read</span> <span class="kn">from</span><span class="w"> </span><span class="s2">"phono3py_params.yaml"</span><span class="o">.</span>
|
||||
<span class="n">Displacement</span> <span class="n">dataset</span> <span class="k">for</span> <span class="n">fc3</span> <span class="n">was</span> <span class="n">read</span> <span class="kn">from</span><span class="w"> </span><span class="s2">"phono3py_params.yaml"</span><span class="o">.</span>
|
||||
<span class="o">-----------------------------</span> <span class="n">pypolymlp</span> <span class="n">start</span> <span class="o">------------------------------</span>
|
||||
<span class="n">Pypolymlp</span> <span class="n">version</span> <span class="mf">0.12.9</span>
|
||||
<span class="n">Pypolymlp</span> <span class="ow">is</span> <span class="n">a</span> <span class="n">generator</span> <span class="n">of</span> <span class="n">polynomial</span> <span class="n">machine</span> <span class="n">learning</span> <span class="n">potentials</span><span class="o">.</span>
|
||||
<span class="n">Please</span> <span class="n">cite</span> <span class="n">the</span> <span class="n">paper</span><span class="p">:</span> <span class="n">A</span><span class="o">.</span> <span class="n">Seko</span><span class="p">,</span> <span class="n">J</span><span class="o">.</span> <span class="n">Appl</span><span class="o">.</span> <span class="n">Phys</span><span class="o">.</span> <span class="mi">133</span><span class="p">,</span> <span class="mi">011101</span> <span class="p">(</span><span class="mi">2023</span><span class="p">)</span><span class="o">.</span>
|
||||
<span class="n">Pypolymlp</span> <span class="ow">is</span> <span class="n">developed</span> <span class="n">at</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">sekocha</span><span class="o">/</span><span class="n">pypolymlp</span><span class="o">.</span>
|
||||
|
@ -541,26 +541,11 @@ developing polynomial MLPs when running with the <code class="docutils literal n
|
|||
<span class="n">gaussian_params1</span><span class="p">:</span> <span class="p">(</span><span class="mf">1.0</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
|
||||
<span class="n">gaussian_params2</span><span class="p">:</span> <span class="p">(</span><span class="mf">0.0</span><span class="p">,</span> <span class="mf">7.0</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span>
|
||||
<span class="n">Developing</span> <span class="n">MLPs</span> <span class="n">by</span> <span class="n">pypolymlp</span><span class="o">...</span>
|
||||
<span class="n">Regression</span><span class="p">:</span> <span class="n">cholesky</span> <span class="n">decomposition</span> <span class="o">...</span>
|
||||
<span class="o">-</span> <span class="n">alpha</span><span class="p">:</span> <span class="mf">0.001</span>
|
||||
<span class="o">-</span> <span class="n">alpha</span><span class="p">:</span> <span class="mf">0.01</span>
|
||||
<span class="o">-</span> <span class="n">alpha</span><span class="p">:</span> <span class="mf">0.1</span>
|
||||
<span class="o">-</span> <span class="n">alpha</span><span class="p">:</span> <span class="mf">1.0</span>
|
||||
<span class="o">-</span> <span class="n">alpha</span><span class="p">:</span> <span class="mf">10.0</span>
|
||||
<span class="n">Clear</span> <span class="n">training</span> <span class="n">X</span><span class="o">.</span><span class="n">T</span> <span class="o">@</span> <span class="n">X</span>
|
||||
<span class="n">Calculate</span> <span class="n">X</span><span class="o">.</span><span class="n">T</span> <span class="o">@</span> <span class="n">X</span> <span class="k">for</span> <span class="n">test</span> <span class="n">data</span>
|
||||
<span class="n">Clear</span> <span class="n">test</span> <span class="n">X</span><span class="o">.</span><span class="n">T</span> <span class="o">@</span> <span class="n">X</span>
|
||||
<span class="n">Regression</span><span class="p">:</span> <span class="n">model</span> <span class="n">selection</span> <span class="o">...</span>
|
||||
<span class="o">-</span> <span class="n">alpha</span> <span class="o">=</span> <span class="mf">1.000e-03</span> <span class="p">:</span> <span class="n">rmse</span> <span class="p">(</span><span class="n">train</span><span class="p">,</span> <span class="n">test</span><span class="p">)</span> <span class="o">=</span> <span class="mf">1.12211e+15</span> <span class="mf">1.12211e+15</span>
|
||||
<span class="o">-</span> <span class="n">alpha</span> <span class="o">=</span> <span class="mf">1.000e-02</span> <span class="p">:</span> <span class="n">rmse</span> <span class="p">(</span><span class="n">train</span><span class="p">,</span> <span class="n">test</span><span class="p">)</span> <span class="o">=</span> <span class="mf">1.12211e+15</span> <span class="mf">1.12211e+15</span>
|
||||
<span class="o">-</span> <span class="n">alpha</span> <span class="o">=</span> <span class="mf">1.000e-01</span> <span class="p">:</span> <span class="n">rmse</span> <span class="p">(</span><span class="n">train</span><span class="p">,</span> <span class="n">test</span><span class="p">)</span> <span class="o">=</span> <span class="mf">0.00002</span> <span class="mf">0.00002</span>
|
||||
<span class="o">-</span> <span class="n">alpha</span> <span class="o">=</span> <span class="mf">1.000e+00</span> <span class="p">:</span> <span class="n">rmse</span> <span class="p">(</span><span class="n">train</span><span class="p">,</span> <span class="n">test</span><span class="p">)</span> <span class="o">=</span> <span class="mf">0.00002</span> <span class="mf">0.00002</span>
|
||||
<span class="o">-</span> <span class="n">alpha</span> <span class="o">=</span> <span class="mf">1.000e+01</span> <span class="p">:</span> <span class="n">rmse</span> <span class="p">(</span><span class="n">train</span><span class="p">,</span> <span class="n">test</span><span class="p">)</span> <span class="o">=</span> <span class="mf">0.00002</span> <span class="mf">0.00002</span>
|
||||
<span class="n">MLPs</span> <span class="n">were</span> <span class="n">written</span> <span class="n">into</span> <span class="s2">"polymlp.yaml"</span>
|
||||
<span class="o">------------------------------</span> <span class="n">pypolymlp</span> <span class="n">end</span> <span class="o">-------------------------------</span>
|
||||
<span class="n">Generate</span> <span class="n">displacements</span> <span class="p">(</span><span class="o">--</span><span class="n">rd</span> <span class="ow">or</span> <span class="o">-</span><span class="n">d</span><span class="p">)</span> <span class="k">for</span> <span class="n">proceeding</span> <span class="n">to</span> <span class="n">phonon</span> <span class="n">calculations</span><span class="o">.</span>
|
||||
<span class="n">Summary</span> <span class="n">of</span> <span class="n">calculation</span> <span class="n">was</span> <span class="n">written</span> <span class="ow">in</span> <span class="s2">"phono3py.yaml"</span><span class="o">.</span>
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">01</span><span class="o">-</span><span class="mi">19</span> <span class="mi">18</span><span class="p">:</span><span class="mi">03</span><span class="p">:</span><span class="mi">44</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">07</span><span class="o">-</span><span class="mi">26</span> <span class="mi">14</span><span class="p">:</span><span class="mi">00</span><span class="p">:</span><span class="mi">12</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="n">_</span>
|
||||
<span class="n">___</span> <span class="n">_</span> <span class="n">__</span> <span class="n">__</span><span class="o">|</span> <span class="o">|</span>
|
||||
<span class="o">/</span> <span class="n">_</span> \ <span class="s1">'_ \ / _` |</span>
|
||||
|
@ -589,14 +574,15 @@ structure file.</p>
|
|||
<span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="p">(</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="p">(</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span><span class="n">__</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span>
|
||||
<span class="o">|</span> <span class="o">.</span><span class="n">__</span><span class="o">/|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span>\<span class="n">___</span><span class="o">/|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span>\<span class="n">___</span><span class="o">/</span><span class="n">____</span><span class="o">/|</span> <span class="o">.</span><span class="n">__</span><span class="o">/</span> \<span class="n">__</span><span class="p">,</span> <span class="o">|</span>
|
||||
<span class="o">|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">___</span><span class="o">/</span>
|
||||
<span class="mf">3.11.3</span>
|
||||
<span class="mf">3.18.0</span>
|
||||
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">01</span><span class="o">-</span><span class="mi">19</span> <span class="mi">18</span><span class="p">:</span><span class="mi">06</span><span class="p">:</span><span class="mi">46</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">07</span><span class="o">-</span><span class="mi">26</span> <span class="mi">14</span><span class="p">:</span><span class="mi">00</span><span class="p">:</span><span class="mi">49</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="n">Compiled</span> <span class="k">with</span> <span class="n">OpenMP</span> <span class="n">support</span> <span class="p">(</span><span class="nb">max</span> <span class="mi">10</span> <span class="n">threads</span><span class="p">)</span><span class="o">.</span>
|
||||
<span class="n">Running</span> <span class="ow">in</span> <span class="n">phono3py</span><span class="o">.</span><span class="n">load</span> <span class="n">mode</span><span class="o">.</span>
|
||||
<span class="n">Python</span> <span class="n">version</span> <span class="mf">3.12.6</span>
|
||||
<span class="n">Spglib</span> <span class="n">version</span> <span class="mf">2.5.0</span>
|
||||
<span class="n">Python</span> <span class="n">version</span> <span class="mf">3.13.3</span>
|
||||
<span class="n">Spglib</span> <span class="n">version</span> <span class="mf">2.6.1</span>
|
||||
<span class="o">-----------------------------</span> <span class="n">General</span> <span class="n">settings</span> <span class="o">-----------------------------</span>
|
||||
<span class="n">Run</span> <span class="n">mode</span><span class="p">:</span> <span class="n">pypolymlp</span> <span class="o">+</span> <span class="n">force</span> <span class="n">constants</span>
|
||||
<span class="n">HDF5</span> <span class="n">data</span> <span class="n">compression</span> <span class="nb">filter</span><span class="p">:</span> <span class="n">gzip</span>
|
||||
<span class="n">Crystal</span> <span class="n">structure</span> <span class="n">was</span> <span class="n">read</span> <span class="kn">from</span><span class="w"> </span><span class="s2">"phono3py.yaml"</span><span class="o">.</span>
|
||||
<span class="n">Supercell</span> <span class="p">(</span><span class="n">dim</span><span class="p">):</span> <span class="p">[</span><span class="mi">2</span> <span class="mi">2</span> <span class="mi">2</span><span class="p">]</span>
|
||||
|
@ -608,6 +594,7 @@ structure file.</p>
|
|||
<span class="n">Use</span> <span class="o">-</span><span class="n">v</span> <span class="n">option</span> <span class="n">to</span> <span class="n">watch</span> <span class="n">primitive</span> <span class="n">cell</span><span class="p">,</span> <span class="n">unit</span> <span class="n">cell</span><span class="p">,</span> <span class="ow">and</span> <span class="n">supercell</span> <span class="n">structures</span><span class="o">.</span>
|
||||
<span class="n">NAC</span> <span class="n">parameters</span> <span class="n">were</span> <span class="n">read</span> <span class="kn">from</span><span class="w"> </span><span class="s2">"phono3py.yaml"</span><span class="o">.</span>
|
||||
<span class="o">-----------------------------</span> <span class="n">pypolymlp</span> <span class="n">start</span> <span class="o">------------------------------</span>
|
||||
<span class="n">Pypolymlp</span> <span class="n">version</span> <span class="mf">0.12.9</span>
|
||||
<span class="n">Pypolymlp</span> <span class="ow">is</span> <span class="n">a</span> <span class="n">generator</span> <span class="n">of</span> <span class="n">polynomial</span> <span class="n">machine</span> <span class="n">learning</span> <span class="n">potentials</span><span class="o">.</span>
|
||||
<span class="n">Please</span> <span class="n">cite</span> <span class="n">the</span> <span class="n">paper</span><span class="p">:</span> <span class="n">A</span><span class="o">.</span> <span class="n">Seko</span><span class="p">,</span> <span class="n">J</span><span class="o">.</span> <span class="n">Appl</span><span class="o">.</span> <span class="n">Phys</span><span class="o">.</span> <span class="mi">133</span><span class="p">,</span> <span class="mi">011101</span> <span class="p">(</span><span class="mi">2023</span><span class="p">)</span><span class="o">.</span>
|
||||
<span class="n">Pypolymlp</span> <span class="ow">is</span> <span class="n">developed</span> <span class="n">at</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">sekocha</span><span class="o">/</span><span class="n">pypolymlp</span><span class="o">.</span>
|
||||
|
@ -616,6 +603,7 @@ structure file.</p>
|
|||
<span class="n">Generate</span> <span class="n">displacements</span>
|
||||
<span class="n">Displacement</span> <span class="n">distance</span><span class="p">:</span> <span class="mf">0.01</span>
|
||||
<span class="n">Evaluate</span> <span class="n">forces</span> <span class="ow">in</span> <span class="mi">292</span> <span class="n">supercells</span> <span class="n">by</span> <span class="n">pypolymlp</span>
|
||||
<span class="n">Dataset</span> <span class="n">generated</span> <span class="n">using</span> <span class="n">MLPs</span> <span class="n">was</span> <span class="n">written</span> <span class="ow">in</span> <span class="s2">"phono3py_mlp_eval_dataset.yaml"</span><span class="o">.</span>
|
||||
<span class="o">-----------------------------</span> <span class="n">Force</span> <span class="n">constants</span> <span class="o">------------------------------</span>
|
||||
<span class="n">Computing</span> <span class="n">fc3</span><span class="p">[</span> <span class="mi">1</span><span class="p">,</span> <span class="n">x</span><span class="p">,</span> <span class="n">x</span> <span class="p">]</span> <span class="n">using</span> <span class="n">numpy</span><span class="o">.</span><span class="n">linalg</span><span class="o">.</span><span class="n">pinv</span><span class="o">.</span>
|
||||
<span class="n">Displacements</span> <span class="p">(</span><span class="ow">in</span> <span class="n">Angstrom</span><span class="p">):</span>
|
||||
|
@ -626,16 +614,26 @@ structure file.</p>
|
|||
<span class="p">[</span> <span class="mf">0.0100</span> <span class="mf">0.0000</span> <span class="mf">0.0000</span><span class="p">]</span>
|
||||
<span class="p">[</span><span class="o">-</span><span class="mf">0.0100</span> <span class="mf">0.0000</span> <span class="mf">0.0000</span><span class="p">]</span>
|
||||
<span class="n">Expanding</span> <span class="n">fc3</span><span class="o">.</span>
|
||||
<span class="n">fc3</span> <span class="n">was</span> <span class="n">symmetrized</span><span class="o">.</span>
|
||||
<span class="n">fc2</span> <span class="n">was</span> <span class="n">symmetrized</span><span class="o">.</span>
|
||||
<span class="n">Max</span> <span class="n">drift</span> <span class="n">of</span> <span class="n">fc3</span><span class="p">:</span> <span class="mf">0.000000</span> <span class="p">(</span><span class="n">zzz</span><span class="p">)</span> <span class="mf">0.000000</span> <span class="p">(</span><span class="n">zzz</span><span class="p">)</span> <span class="mf">0.000000</span> <span class="p">(</span><span class="n">zzz</span><span class="p">)</span>
|
||||
<span class="n">Max</span> <span class="n">drift</span> <span class="n">of</span> <span class="n">fc2</span><span class="p">:</span> <span class="mf">0.000000</span> <span class="p">(</span><span class="n">zz</span><span class="p">)</span> <span class="mf">0.000000</span> <span class="p">(</span><span class="n">zz</span><span class="p">)</span>
|
||||
<span class="n">Symmetrizing</span> <span class="n">fc3</span> <span class="n">by</span> <span class="n">symfc</span> <span class="n">projector</span><span class="o">.</span>
|
||||
<span class="n">Symfc</span> <span class="n">version</span> <span class="mf">1.5.3</span> <span class="p">(</span><span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">symfc</span><span class="o">/</span><span class="n">symfc</span><span class="p">)</span>
|
||||
<span class="n">Citation</span><span class="p">:</span> <span class="n">A</span><span class="o">.</span> <span class="n">Seko</span> <span class="ow">and</span> <span class="n">A</span><span class="o">.</span> <span class="n">Togo</span><span class="p">,</span> <span class="n">Phys</span><span class="o">.</span> <span class="n">Rev</span><span class="o">.</span> <span class="n">B</span><span class="p">,</span> <span class="mi">110</span><span class="p">,</span> <span class="mi">214302</span> <span class="p">(</span><span class="mi">2024</span><span class="p">)</span>
|
||||
<span class="n">Symmetrizing</span> <span class="n">fc2</span> <span class="n">by</span> <span class="n">symfc</span> <span class="n">projector</span><span class="o">.</span>
|
||||
<span class="n">Symfc</span> <span class="n">version</span> <span class="mf">1.5.3</span> <span class="p">(</span><span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">symfc</span><span class="o">/</span><span class="n">symfc</span><span class="p">)</span>
|
||||
<span class="n">Citation</span><span class="p">:</span> <span class="n">A</span><span class="o">.</span> <span class="n">Seko</span> <span class="ow">and</span> <span class="n">A</span><span class="o">.</span> <span class="n">Togo</span><span class="p">,</span> <span class="n">Phys</span><span class="o">.</span> <span class="n">Rev</span><span class="o">.</span> <span class="n">B</span><span class="p">,</span> <span class="mi">110</span><span class="p">,</span> <span class="mi">214302</span> <span class="p">(</span><span class="mi">2024</span><span class="p">)</span>
|
||||
<span class="n">Max</span> <span class="n">drift</span> <span class="n">of</span> <span class="n">fc3</span><span class="p">:</span> <span class="mf">0.00000000</span> <span class="p">(</span><span class="n">zyz</span><span class="p">)</span> <span class="mf">0.00000000</span> <span class="p">(</span><span class="n">yzz</span><span class="p">)</span> <span class="mf">0.00000000</span> <span class="p">(</span><span class="n">yzz</span><span class="p">)</span>
|
||||
<span class="n">Max</span> <span class="n">drift</span> <span class="n">of</span> <span class="n">fc2</span><span class="p">:</span> <span class="o">-</span><span class="mf">0.00000000</span> <span class="p">(</span><span class="n">yy</span><span class="p">)</span> <span class="o">-</span><span class="mf">0.00000000</span> <span class="p">(</span><span class="n">yy</span><span class="p">)</span>
|
||||
<span class="n">fc3</span> <span class="n">was</span> <span class="n">written</span> <span class="n">into</span> <span class="s2">"fc3.hdf5"</span><span class="o">.</span>
|
||||
<span class="n">fc2</span> <span class="n">was</span> <span class="n">written</span> <span class="n">into</span> <span class="s2">"fc2.hdf5"</span><span class="o">.</span>
|
||||
<span class="o">---------------------------</span> <span class="n">Calculation</span> <span class="n">settings</span> <span class="o">---------------------------</span>
|
||||
<span class="n">Non</span><span class="o">-</span><span class="n">analytical</span> <span class="n">term</span> <span class="n">correction</span> <span class="p">(</span><span class="n">NAC</span><span class="p">):</span> <span class="kc">True</span>
|
||||
<span class="n">NAC</span> <span class="n">unit</span> <span class="n">conversion</span> <span class="n">factor</span><span class="p">:</span> <span class="mf">14.39965</span>
|
||||
<span class="n">BZ</span> <span class="n">integration</span><span class="p">:</span> <span class="n">Tetrahedron</span><span class="o">-</span><span class="n">method</span>
|
||||
<span class="n">Temperatures</span><span class="p">:</span> <span class="mf">0.0</span> <span class="mf">300.0</span>
|
||||
<span class="n">Cutoff</span> <span class="n">frequency</span><span class="p">:</span> <span class="mf">0.01</span>
|
||||
<span class="n">Frequency</span> <span class="n">conversion</span> <span class="n">factor</span> <span class="n">to</span> <span class="n">THz</span><span class="p">:</span> <span class="mf">15.63330</span>
|
||||
<span class="o">-----------</span> <span class="kc">None</span> <span class="n">of</span> <span class="n">ph</span><span class="o">-</span><span class="n">ph</span> <span class="n">interaction</span> <span class="n">calculation</span> <span class="n">was</span> <span class="n">performed</span><span class="o">.</span> <span class="o">-----------</span>
|
||||
<span class="n">Dataset</span> <span class="n">generated</span> <span class="n">using</span> <span class="n">MLPs</span> <span class="n">was</span> <span class="n">written</span> <span class="ow">in</span> <span class="s2">"phono3py_mlp_eval_dataset.yaml"</span><span class="o">.</span>
|
||||
<span class="n">Summary</span> <span class="n">of</span> <span class="n">calculation</span> <span class="n">was</span> <span class="n">written</span> <span class="ow">in</span> <span class="s2">"phono3py.yaml"</span><span class="o">.</span>
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">01</span><span class="o">-</span><span class="mi">19</span> <span class="mi">18</span><span class="p">:</span><span class="mi">06</span><span class="p">:</span><span class="mi">55</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">07</span><span class="o">-</span><span class="mi">26</span> <span class="mi">14</span><span class="p">:</span><span class="mi">00</span><span class="p">:</span><span class="mi">58</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="n">_</span>
|
||||
<span class="n">___</span> <span class="n">_</span> <span class="n">__</span> <span class="n">__</span><span class="o">|</span> <span class="o">|</span>
|
||||
<span class="o">/</span> <span class="n">_</span> \ <span class="s1">'_ \ / _` |</span>
|
||||
|
@ -651,27 +649,26 @@ corresponding forces are stored in the <code class="docutils literal notranslate
|
|||
</section>
|
||||
<section id="steps-5-7-force-constants-calculation-random-displacements-in-step-5">
|
||||
<h3>Steps 5-7: Force constants calculation (random displacements in step 5)<a class="headerlink" href="#steps-5-7-force-constants-calculation-random-displacements-in-step-5" title="Link to this heading">#</a></h3>
|
||||
<p>Random displacements are generated by specifying <a class="reference internal" href="command-options.html#random-displacements-option"><span class="std std-ref">–rd</span></a> option. To compute force constants with random
|
||||
displacements, an external force constants calculator is necessary. By default,
|
||||
symfc is used unless another force constants solver is explicitly specified.
|
||||
When running with the <code class="docutils literal notranslate"><span class="pre">--pypolymlp</span></code> option, MLPs are read from <code class="docutils literal notranslate"><span class="pre">polymlp.yaml</span></code>
|
||||
if the file exists. In this case, training data is no longer required, and files
|
||||
such as <code class="docutils literal notranslate"><span class="pre">phono3py.yaml</span></code> can be used as the input structure file.</p>
|
||||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">%</span> <span class="n">phono3py</span><span class="o">-</span><span class="n">load</span> <span class="o">--</span><span class="n">pypolymlp</span> <span class="o">--</span><span class="n">rd</span> <span class="mi">200</span> <span class="n">phono3py</span><span class="o">.</span><span class="n">yaml</span>
|
||||
<p>Random displacements are generated by specifying <a class="reference internal" href="command-options.html#random-displacements-option"><span class="std std-ref">–rd</span></a> option. When running with the <code class="docutils literal notranslate"><span class="pre">--pypolymlp</span></code>
|
||||
option, MLPs are read from <code class="docutils literal notranslate"><span class="pre">polymlp.yaml</span></code> if the file exists. In this case,
|
||||
training data is no longer required, and files such as <code class="docutils literal notranslate"><span class="pre">phono3py.yaml</span></code> can be
|
||||
used as the input structure file.</p>
|
||||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span> <span class="o">%</span> <span class="n">phono3py</span><span class="o">-</span><span class="n">load</span> <span class="o">--</span><span class="n">pypolymlp</span> <span class="o">--</span><span class="n">rd</span> <span class="n">auto</span> <span class="n">phono3py</span><span class="o">.</span><span class="n">yaml</span>
|
||||
<span class="n">_</span> <span class="n">_____</span>
|
||||
<span class="n">_</span> <span class="n">__</span> <span class="o">|</span> <span class="o">|</span><span class="n">__</span> <span class="n">___</span> <span class="n">_</span> <span class="n">__</span> <span class="n">___</span><span class="o">|</span><span class="n">___</span> <span class="o">/</span> <span class="n">_</span> <span class="n">__</span> <span class="n">_</span> <span class="n">_</span>
|
||||
<span class="o">|</span> <span class="s1">'_ \| '</span><span class="n">_</span> \ <span class="o">/</span> <span class="n">_</span> \<span class="o">|</span> <span class="s1">'_ \ / _ \ |_ \| '</span><span class="n">_</span> \<span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span>
|
||||
<span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="p">(</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="p">(</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span><span class="n">__</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span>
|
||||
<span class="o">|</span> <span class="o">.</span><span class="n">__</span><span class="o">/|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span>\<span class="n">___</span><span class="o">/|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span>\<span class="n">___</span><span class="o">/</span><span class="n">____</span><span class="o">/|</span> <span class="o">.</span><span class="n">__</span><span class="o">/</span> \<span class="n">__</span><span class="p">,</span> <span class="o">|</span>
|
||||
<span class="o">|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">___</span><span class="o">/</span>
|
||||
<span class="mf">3.11.3</span>
|
||||
<span class="mf">3.18.0</span>
|
||||
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">01</span><span class="o">-</span><span class="mi">19</span> <span class="mi">18</span><span class="p">:</span><span class="mi">13</span><span class="p">:</span><span class="mi">21</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">07</span><span class="o">-</span><span class="mi">26</span> <span class="mi">14</span><span class="p">:</span><span class="mi">02</span><span class="p">:</span><span class="mi">24</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="n">Compiled</span> <span class="k">with</span> <span class="n">OpenMP</span> <span class="n">support</span> <span class="p">(</span><span class="nb">max</span> <span class="mi">10</span> <span class="n">threads</span><span class="p">)</span><span class="o">.</span>
|
||||
<span class="n">Running</span> <span class="ow">in</span> <span class="n">phono3py</span><span class="o">.</span><span class="n">load</span> <span class="n">mode</span><span class="o">.</span>
|
||||
<span class="n">Python</span> <span class="n">version</span> <span class="mf">3.12.6</span>
|
||||
<span class="n">Spglib</span> <span class="n">version</span> <span class="mf">2.5.0</span>
|
||||
<span class="n">Python</span> <span class="n">version</span> <span class="mf">3.13.3</span>
|
||||
<span class="n">Spglib</span> <span class="n">version</span> <span class="mf">2.6.1</span>
|
||||
<span class="o">-----------------------------</span> <span class="n">General</span> <span class="n">settings</span> <span class="o">-----------------------------</span>
|
||||
<span class="n">Run</span> <span class="n">mode</span><span class="p">:</span> <span class="n">pypolymlp</span> <span class="o">+</span> <span class="n">force</span> <span class="n">constants</span>
|
||||
<span class="n">HDF5</span> <span class="n">data</span> <span class="n">compression</span> <span class="nb">filter</span><span class="p">:</span> <span class="n">gzip</span>
|
||||
<span class="n">Crystal</span> <span class="n">structure</span> <span class="n">was</span> <span class="n">read</span> <span class="kn">from</span><span class="w"> </span><span class="s2">"phono3py.yaml"</span><span class="o">.</span>
|
||||
<span class="n">Supercell</span> <span class="p">(</span><span class="n">dim</span><span class="p">):</span> <span class="p">[</span><span class="mi">2</span> <span class="mi">2</span> <span class="mi">2</span><span class="p">]</span>
|
||||
|
@ -683,6 +680,7 @@ such as <code class="docutils literal notranslate"><span class="pre">phono3py.ya
|
|||
<span class="n">Use</span> <span class="o">-</span><span class="n">v</span> <span class="n">option</span> <span class="n">to</span> <span class="n">watch</span> <span class="n">primitive</span> <span class="n">cell</span><span class="p">,</span> <span class="n">unit</span> <span class="n">cell</span><span class="p">,</span> <span class="ow">and</span> <span class="n">supercell</span> <span class="n">structures</span><span class="o">.</span>
|
||||
<span class="n">NAC</span> <span class="n">parameters</span> <span class="n">were</span> <span class="n">read</span> <span class="kn">from</span><span class="w"> </span><span class="s2">"phono3py.yaml"</span><span class="o">.</span>
|
||||
<span class="o">-----------------------------</span> <span class="n">pypolymlp</span> <span class="n">start</span> <span class="o">------------------------------</span>
|
||||
<span class="n">Pypolymlp</span> <span class="n">version</span> <span class="mf">0.12.9</span>
|
||||
<span class="n">Pypolymlp</span> <span class="ow">is</span> <span class="n">a</span> <span class="n">generator</span> <span class="n">of</span> <span class="n">polynomial</span> <span class="n">machine</span> <span class="n">learning</span> <span class="n">potentials</span><span class="o">.</span>
|
||||
<span class="n">Please</span> <span class="n">cite</span> <span class="n">the</span> <span class="n">paper</span><span class="p">:</span> <span class="n">A</span><span class="o">.</span> <span class="n">Seko</span><span class="p">,</span> <span class="n">J</span><span class="o">.</span> <span class="n">Appl</span><span class="o">.</span> <span class="n">Phys</span><span class="o">.</span> <span class="mi">133</span><span class="p">,</span> <span class="mi">011101</span> <span class="p">(</span><span class="mi">2023</span><span class="p">)</span><span class="o">.</span>
|
||||
<span class="n">Pypolymlp</span> <span class="ow">is</span> <span class="n">developed</span> <span class="n">at</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">sekocha</span><span class="o">/</span><span class="n">pypolymlp</span><span class="o">.</span>
|
||||
|
@ -691,31 +689,34 @@ such as <code class="docutils literal notranslate"><span class="pre">phono3py.ya
|
|||
<span class="n">Generate</span> <span class="n">random</span> <span class="n">displacements</span>
|
||||
<span class="n">Twice</span> <span class="n">of</span> <span class="n">number</span> <span class="n">of</span> <span class="n">snapshots</span> <span class="n">will</span> <span class="n">be</span> <span class="n">generated</span> <span class="k">for</span> <span class="n">plus</span><span class="o">-</span><span class="n">minus</span> <span class="n">displacements</span><span class="o">.</span>
|
||||
<span class="n">Displacement</span> <span class="n">distance</span><span class="p">:</span> <span class="mf">0.01</span>
|
||||
<span class="n">Evaluate</span> <span class="n">forces</span> <span class="ow">in</span> <span class="mi">400</span> <span class="n">supercells</span> <span class="n">by</span> <span class="n">pypolymlp</span>
|
||||
<span class="n">Evaluate</span> <span class="n">forces</span> <span class="ow">in</span> <span class="mi">32</span> <span class="n">supercells</span> <span class="n">by</span> <span class="n">pypolymlp</span>
|
||||
<span class="n">Dataset</span> <span class="n">generated</span> <span class="n">using</span> <span class="n">MLPs</span> <span class="n">was</span> <span class="n">written</span> <span class="ow">in</span> <span class="s2">"phono3py_mlp_eval_dataset.yaml"</span><span class="o">.</span>
|
||||
<span class="o">-----------------------------</span> <span class="n">Force</span> <span class="n">constants</span> <span class="o">------------------------------</span>
|
||||
<span class="n">Symfc</span> <span class="n">will</span> <span class="n">be</span> <span class="n">used</span> <span class="n">to</span> <span class="n">handle</span> <span class="n">general</span> <span class="p">(</span><span class="ow">or</span> <span class="n">random</span><span class="p">)</span> <span class="n">displacements</span><span class="o">.</span>
|
||||
<span class="n">Type</span><span class="o">-</span><span class="n">II</span> <span class="n">dataset</span> <span class="k">for</span> <span class="n">displacements</span> <span class="ow">and</span> <span class="n">forces</span> <span class="n">was</span> <span class="n">provided</span><span class="p">,</span>
|
||||
<span class="n">but</span> <span class="n">the</span> <span class="n">selected</span> <span class="n">force</span> <span class="n">constants</span> <span class="n">calculator</span> <span class="n">cannot</span> <span class="n">process</span> <span class="n">it</span><span class="o">.</span>
|
||||
<span class="n">Use</span> <span class="n">another</span> <span class="n">force</span> <span class="n">constants</span> <span class="n">calculator</span><span class="p">,</span> <span class="n">e</span><span class="o">.</span><span class="n">g</span><span class="o">.</span><span class="p">,</span> <span class="n">symfc</span><span class="p">,</span>
|
||||
<span class="n">to</span> <span class="n">generate</span> <span class="n">force</span> <span class="n">constants</span><span class="o">.</span>
|
||||
<span class="n">Try</span> <span class="n">symfc</span> <span class="n">to</span> <span class="n">handle</span> <span class="n">general</span> <span class="p">(</span><span class="ow">or</span> <span class="n">random</span><span class="p">)</span> <span class="n">displacements</span><span class="o">.</span>
|
||||
<span class="o">--------------------------------</span> <span class="n">Symfc</span> <span class="n">start</span> <span class="o">-------------------------------</span>
|
||||
<span class="n">Symfc</span> <span class="ow">is</span> <span class="n">a</span> <span class="n">force</span> <span class="n">constants</span> <span class="n">calculator</span><span class="o">.</span> <span class="n">See</span> <span class="n">the</span> <span class="n">following</span> <span class="n">paper</span><span class="p">:</span>
|
||||
<span class="n">A</span><span class="o">.</span> <span class="n">Seko</span> <span class="ow">and</span> <span class="n">A</span><span class="o">.</span> <span class="n">Togo</span><span class="p">,</span> <span class="n">Phys</span><span class="o">.</span> <span class="n">Rev</span><span class="o">.</span> <span class="n">B</span><span class="p">,</span> <span class="mi">110</span><span class="p">,</span> <span class="mi">214302</span> <span class="p">(</span><span class="mi">2024</span><span class="p">)</span><span class="o">.</span>
|
||||
<span class="n">Symfc</span> <span class="ow">is</span> <span class="n">developed</span> <span class="n">at</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">symfc</span><span class="o">/</span><span class="n">symfc</span><span class="o">.</span>
|
||||
<span class="n">Symfc</span> <span class="n">version</span> <span class="mf">1.5.3</span> <span class="p">(</span><span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">symfc</span><span class="o">/</span><span class="n">symfc</span><span class="p">)</span>
|
||||
<span class="n">Citation</span><span class="p">:</span> <span class="n">A</span><span class="o">.</span> <span class="n">Seko</span> <span class="ow">and</span> <span class="n">A</span><span class="o">.</span> <span class="n">Togo</span><span class="p">,</span> <span class="n">Phys</span><span class="o">.</span> <span class="n">Rev</span><span class="o">.</span> <span class="n">B</span><span class="p">,</span> <span class="mi">110</span><span class="p">,</span> <span class="mi">214302</span> <span class="p">(</span><span class="mi">2024</span><span class="p">)</span>
|
||||
<span class="n">Computing</span> <span class="p">[</span><span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">]</span> <span class="n">order</span> <span class="n">force</span> <span class="n">constants</span><span class="o">.</span>
|
||||
<span class="n">Increase</span> <span class="n">log</span><span class="o">-</span><span class="n">level</span> <span class="n">to</span> <span class="n">watch</span> <span class="n">detailed</span> <span class="n">symfc</span> <span class="n">log</span><span class="o">.</span>
|
||||
<span class="o">---------------------------------</span> <span class="n">Symfc</span> <span class="n">end</span> <span class="o">--------------------------------</span>
|
||||
<span class="o">--------------------------------</span> <span class="n">Symfc</span> <span class="n">start</span> <span class="o">-------------------------------</span>
|
||||
<span class="n">Symfc</span> <span class="ow">is</span> <span class="n">a</span> <span class="n">force</span> <span class="n">constants</span> <span class="n">calculator</span><span class="o">.</span> <span class="n">See</span> <span class="n">the</span> <span class="n">following</span> <span class="n">paper</span><span class="p">:</span>
|
||||
<span class="n">A</span><span class="o">.</span> <span class="n">Seko</span> <span class="ow">and</span> <span class="n">A</span><span class="o">.</span> <span class="n">Togo</span><span class="p">,</span> <span class="n">Phys</span><span class="o">.</span> <span class="n">Rev</span><span class="o">.</span> <span class="n">B</span><span class="p">,</span> <span class="mi">110</span><span class="p">,</span> <span class="mi">214302</span> <span class="p">(</span><span class="mi">2024</span><span class="p">)</span><span class="o">.</span>
|
||||
<span class="n">Symfc</span> <span class="ow">is</span> <span class="n">developed</span> <span class="n">at</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">symfc</span><span class="o">/</span><span class="n">symfc</span><span class="o">.</span>
|
||||
<span class="n">Computing</span> <span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">order</span> <span class="n">force</span> <span class="n">constants</span><span class="o">.</span>
|
||||
<span class="n">Increase</span> <span class="n">log</span><span class="o">-</span><span class="n">level</span> <span class="n">to</span> <span class="n">watch</span> <span class="n">detailed</span> <span class="n">symfc</span> <span class="n">log</span><span class="o">.</span>
|
||||
<span class="o">---------------------------------</span> <span class="n">Symfc</span> <span class="n">end</span> <span class="o">--------------------------------</span>
|
||||
<span class="n">Max</span> <span class="n">drift</span> <span class="n">of</span> <span class="n">fc3</span><span class="p">:</span> <span class="o">-</span><span class="mf">0.000000</span> <span class="p">(</span><span class="n">zxz</span><span class="p">)</span> <span class="o">-</span><span class="mf">0.000000</span> <span class="p">(</span><span class="n">xzz</span><span class="p">)</span> <span class="o">-</span><span class="mf">0.000000</span> <span class="p">(</span><span class="n">xzz</span><span class="p">)</span>
|
||||
<span class="n">Max</span> <span class="n">drift</span> <span class="n">of</span> <span class="n">fc2</span><span class="p">:</span> <span class="o">-</span><span class="mf">0.000000</span> <span class="p">(</span><span class="n">yy</span><span class="p">)</span> <span class="o">-</span><span class="mf">0.000000</span> <span class="p">(</span><span class="n">yy</span><span class="p">)</span>
|
||||
<span class="n">Max</span> <span class="n">drift</span> <span class="n">of</span> <span class="n">fc3</span><span class="p">:</span> <span class="o">-</span><span class="mf">0.00000000</span> <span class="p">(</span><span class="n">xyx</span><span class="p">)</span> <span class="o">-</span><span class="mf">0.00000000</span> <span class="p">(</span><span class="n">yxx</span><span class="p">)</span> <span class="o">-</span><span class="mf">0.00000000</span> <span class="p">(</span><span class="n">yxx</span><span class="p">)</span>
|
||||
<span class="n">Max</span> <span class="n">drift</span> <span class="n">of</span> <span class="n">fc2</span><span class="p">:</span> <span class="o">-</span><span class="mf">0.00000000</span> <span class="p">(</span><span class="n">yy</span><span class="p">)</span> <span class="o">-</span><span class="mf">0.00000000</span> <span class="p">(</span><span class="n">yy</span><span class="p">)</span>
|
||||
<span class="n">fc3</span> <span class="n">was</span> <span class="n">written</span> <span class="n">into</span> <span class="s2">"fc3.hdf5"</span><span class="o">.</span>
|
||||
<span class="n">fc2</span> <span class="n">was</span> <span class="n">written</span> <span class="n">into</span> <span class="s2">"fc2.hdf5"</span><span class="o">.</span>
|
||||
<span class="o">---------------------------</span> <span class="n">Calculation</span> <span class="n">settings</span> <span class="o">---------------------------</span>
|
||||
<span class="n">Non</span><span class="o">-</span><span class="n">analytical</span> <span class="n">term</span> <span class="n">correction</span> <span class="p">(</span><span class="n">NAC</span><span class="p">):</span> <span class="kc">True</span>
|
||||
<span class="n">NAC</span> <span class="n">unit</span> <span class="n">conversion</span> <span class="n">factor</span><span class="p">:</span> <span class="mf">14.39965</span>
|
||||
<span class="n">BZ</span> <span class="n">integration</span><span class="p">:</span> <span class="n">Tetrahedron</span><span class="o">-</span><span class="n">method</span>
|
||||
<span class="n">Temperatures</span><span class="p">:</span> <span class="mf">0.0</span> <span class="mf">300.0</span>
|
||||
<span class="n">Cutoff</span> <span class="n">frequency</span><span class="p">:</span> <span class="mf">0.01</span>
|
||||
<span class="n">Frequency</span> <span class="n">conversion</span> <span class="n">factor</span> <span class="n">to</span> <span class="n">THz</span><span class="p">:</span> <span class="mf">15.63330</span>
|
||||
<span class="o">-----------</span> <span class="kc">None</span> <span class="n">of</span> <span class="n">ph</span><span class="o">-</span><span class="n">ph</span> <span class="n">interaction</span> <span class="n">calculation</span> <span class="n">was</span> <span class="n">performed</span><span class="o">.</span> <span class="o">-----------</span>
|
||||
<span class="n">Dataset</span> <span class="n">generated</span> <span class="n">using</span> <span class="n">MLPs</span> <span class="n">was</span> <span class="n">written</span> <span class="ow">in</span> <span class="s2">"phono3py_mlp_eval_dataset.yaml"</span><span class="o">.</span>
|
||||
<span class="n">Summary</span> <span class="n">of</span> <span class="n">calculation</span> <span class="n">was</span> <span class="n">written</span> <span class="ow">in</span> <span class="s2">"phono3py.yaml"</span><span class="o">.</span>
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">01</span><span class="o">-</span><span class="mi">19</span> <span class="mi">18</span><span class="p">:</span><span class="mi">13</span><span class="p">:</span><span class="mi">34</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">07</span><span class="o">-</span><span class="mi">26</span> <span class="mi">14</span><span class="p">:</span><span class="mi">02</span><span class="p">:</span><span class="mi">29</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="n">_</span>
|
||||
<span class="n">___</span> <span class="n">_</span> <span class="n">__</span> <span class="n">__</span><span class="o">|</span> <span class="o">|</span>
|
||||
<span class="o">/</span> <span class="n">_</span> \ <span class="s1">'_ \ / _` |</span>
|
||||
|
@ -723,85 +724,119 @@ such as <code class="docutils literal notranslate"><span class="pre">phono3py.ya
|
|||
\<span class="n">___</span><span class="o">|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span>\<span class="n">__</span><span class="p">,</span><span class="n">_</span><span class="o">|</span>
|
||||
</pre></div>
|
||||
</div>
|
||||
<p>After the MLPs are read, 200 supercells with random directional displacements
|
||||
are generated. These displacements are then inverted (such as <span class="math notranslate nohighlight">\(\Delta
|
||||
\mathbf{u}_i\)</span> and <span class="math notranslate nohighlight">\(-\Delta \mathbf{u}_i\)</span> of all atoms <span class="math notranslate nohighlight">\(i\)</span> in each supercell),
|
||||
resulting in an additional 200 supercells. In total, 400 supercells are created.
|
||||
The forces for these supercells are then evaluated. Finally, the force constants
|
||||
are calculated using symfc.</p>
|
||||
<p>After the MLPs are read, 16 supercells with random directional displacements are
|
||||
generated by the option <code class="docutils literal notranslate"><span class="pre">--rd</span> <span class="pre">auto</span></code>. These displacements are then inverted (such
|
||||
as <span class="math notranslate nohighlight">\(\Delta \mathbf{u}_i\)</span> and <span class="math notranslate nohighlight">\(-\Delta \mathbf{u}_i\)</span> of all atoms <span class="math notranslate nohighlight">\(i\)</span> in each
|
||||
supercell), resulting in an additional 16 supercells. In total, 32 supercells
|
||||
are created. The forces for these supercells are then evaluated. Finally, the
|
||||
force constants are calculated using symfc. The <code class="docutils literal notranslate"><span class="pre">--rd-auto-factor</span></code> option can
|
||||
change the number of supercells generated.</p>
|
||||
</section>
|
||||
</section>
|
||||
<section id="command-options-for-force-constants-calculation">
|
||||
<h3>Command options for force constants calculation<a class="headerlink" href="#command-options-for-force-constants-calculation" title="Link to this heading">#</a></h3>
|
||||
<p>After obtaining the MLPs, displacements are generated using those MLPs, and the
|
||||
resulting forces are computed accordingly. The displacement distance is set by
|
||||
the <code class="docutils literal notranslate"><span class="pre">--amplitude</span></code> option, whose default value is 0.01 Angstrom. When the <code class="docutils literal notranslate"><span class="pre">--rd</span></code>
|
||||
option is used, it specifies the number of supercells with random directional
|
||||
displacements. Note that to achieve accurate force constants, the actual number
|
||||
of generated supercells is twice the specified number. If <code class="docutils literal notranslate"><span class="pre">--rd</span></code> is omitted,
|
||||
systematic displacements are introduced.</p>
|
||||
<p>Once the file <code class="docutils literal notranslate"><span class="pre">polymlp.yaml</span></code> is obtained, force constants can be calculated
|
||||
using MLPs from <code class="docutils literal notranslate"><span class="pre">polymlp.yaml</span></code>. After removing the <code class="docutils literal notranslate"><span class="pre">fc3.hdf5</span></code> and <code class="docutils literal notranslate"><span class="pre">fc2.hdf5</span></code>
|
||||
files, <code class="docutils literal notranslate"><span class="pre">phono3py-load</span></code> will detect <code class="docutils literal notranslate"><span class="pre">polymlp.yaml</span></code> and then compute the force
|
||||
constants by loading the MLPs from <code class="docutils literal notranslate"><span class="pre">polymlp.yaml</span></code> as follows:</p>
|
||||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">%</span> <span class="n">phono3py</span><span class="o">-</span><span class="n">load</span> <span class="o">--</span><span class="n">pypolymlp</span> <span class="o">--</span><span class="n">rd</span> <span class="mi">100</span> <span class="o">--</span><span class="n">amplitude</span> <span class="mf">0.005</span> <span class="n">phono3py</span><span class="o">.</span><span class="n">yaml</span>
|
||||
<h2>Command options for force constants calculation<a class="headerlink" href="#command-options-for-force-constants-calculation" title="Link to this heading">#</a></h2>
|
||||
<p>After obtaining the MLPs, displacements are generated using these MLPs, and the
|
||||
resulting forces are computed. The displacement distance is controlled by the
|
||||
<code class="docutils literal notranslate"><span class="pre">--amplitude</span></code> option, with a default value of 0.01 Angstrom. When <code class="docutils literal notranslate"><span class="pre">-d</span></code> is
|
||||
specified, systematic displacements are introduced. When the <code class="docutils literal notranslate"><span class="pre">--rd</span></code> option is
|
||||
used, it specifies the number of supercells with random directional
|
||||
displacements. To ensure accurate force constants, the actual number of
|
||||
generated supercells is twice the specified value.</p>
|
||||
<p>When atoms in the unit cell have positional degrees of freedom within the
|
||||
crystal symmetry, the <code class="docutils literal notranslate"><span class="pre">--relax-atomic-positions</span></code> option can relax their
|
||||
positions using MLPs. In the <code class="docutils literal notranslate"><span class="pre">example/AlN-rd</span></code> case, the following command
|
||||
develops polynomial MLPs and then relaxes atomic positions using these MLPs. The
|
||||
force constants are calculated using supercells with 0.005 Angstrom systematic
|
||||
displacements.</p>
|
||||
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">%</span> <span class="n">phono3py</span><span class="o">-</span><span class="n">load</span> <span class="n">phonopy_params_mp</span><span class="o">-</span><span class="mf">661.</span><span class="n">yaml</span><span class="o">.</span><span class="n">xz</span> <span class="o">--</span><span class="n">pypolymlp</span> <span class="o">--</span><span class="n">relax</span><span class="o">-</span><span class="n">atomic</span><span class="o">-</span><span class="n">positions</span> <span class="o">-</span><span class="n">d</span>
|
||||
|
||||
<span class="n">_</span> <span class="n">_____</span>
|
||||
<span class="n">_</span> <span class="n">__</span> <span class="o">|</span> <span class="o">|</span><span class="n">__</span> <span class="n">___</span> <span class="n">_</span> <span class="n">__</span> <span class="n">___</span><span class="o">|</span><span class="n">___</span> <span class="o">/</span> <span class="n">_</span> <span class="n">__</span> <span class="n">_</span> <span class="n">_</span>
|
||||
<span class="o">|</span> <span class="s1">'_ \| '</span><span class="n">_</span> \ <span class="o">/</span> <span class="n">_</span> \<span class="o">|</span> <span class="s1">'_ \ / _ \ |_ \| '</span><span class="n">_</span> \<span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span>
|
||||
<span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="p">(</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="o">|</span> <span class="p">(</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span><span class="n">__</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="p">)</span> <span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span>
|
||||
<span class="o">|</span> <span class="o">.</span><span class="n">__</span><span class="o">/|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span>\<span class="n">___</span><span class="o">/|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span>\<span class="n">___</span><span class="o">/</span><span class="n">____</span><span class="o">/|</span> <span class="o">.</span><span class="n">__</span><span class="o">/</span> \<span class="n">__</span><span class="p">,</span> <span class="o">|</span>
|
||||
<span class="o">|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">_</span><span class="o">|</span> <span class="o">|</span><span class="n">___</span><span class="o">/</span>
|
||||
<span class="mf">3.11.3</span>
|
||||
<span class="mf">3.18.0</span><span class="o">-</span><span class="n">dev21</span><span class="o">+</span><span class="n">ge26f3ecb</span>
|
||||
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">01</span><span class="o">-</span><span class="mi">19</span> <span class="mi">18</span><span class="p">:</span><span class="mi">19</span><span class="p">:</span><span class="mi">02</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">07</span><span class="o">-</span><span class="mi">26</span> <span class="mi">14</span><span class="p">:</span><span class="mi">29</span><span class="p">:</span><span class="mi">16</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="n">Compiled</span> <span class="k">with</span> <span class="n">OpenMP</span> <span class="n">support</span> <span class="p">(</span><span class="nb">max</span> <span class="mi">10</span> <span class="n">threads</span><span class="p">)</span><span class="o">.</span>
|
||||
<span class="n">Running</span> <span class="ow">in</span> <span class="n">phono3py</span><span class="o">.</span><span class="n">load</span> <span class="n">mode</span><span class="o">.</span>
|
||||
<span class="n">Python</span> <span class="n">version</span> <span class="mf">3.12.6</span>
|
||||
<span class="n">Spglib</span> <span class="n">version</span> <span class="mf">2.5.0</span>
|
||||
<span class="n">Python</span> <span class="n">version</span> <span class="mf">3.13.3</span>
|
||||
<span class="n">Spglib</span> <span class="n">version</span> <span class="mf">2.6.1</span>
|
||||
<span class="o">-----------------------------</span> <span class="n">General</span> <span class="n">settings</span> <span class="o">-----------------------------</span>
|
||||
<span class="n">Run</span> <span class="n">mode</span><span class="p">:</span> <span class="n">pypolymlp</span> <span class="o">+</span> <span class="n">force</span> <span class="n">constants</span>
|
||||
<span class="n">HDF5</span> <span class="n">data</span> <span class="n">compression</span> <span class="nb">filter</span><span class="p">:</span> <span class="n">gzip</span>
|
||||
<span class="n">Crystal</span> <span class="n">structure</span> <span class="n">was</span> <span class="n">read</span> <span class="kn">from</span><span class="w"> </span><span class="s2">"phono3py.yaml"</span><span class="o">.</span>
|
||||
<span class="n">Supercell</span> <span class="p">(</span><span class="n">dim</span><span class="p">):</span> <span class="p">[</span><span class="mi">2</span> <span class="mi">2</span> <span class="mi">2</span><span class="p">]</span>
|
||||
<span class="n">Crystal</span> <span class="n">structure</span> <span class="n">was</span> <span class="n">read</span> <span class="kn">from</span><span class="w"> </span><span class="s2">"phonopy_params_mp-661.yaml.xz"</span><span class="o">.</span>
|
||||
<span class="n">Supercell</span> <span class="p">(</span><span class="n">dim</span><span class="p">):</span> <span class="p">[</span><span class="mi">4</span> <span class="mi">4</span> <span class="mi">2</span><span class="p">]</span>
|
||||
<span class="n">Primitive</span> <span class="n">matrix</span><span class="p">:</span>
|
||||
<span class="p">[</span><span class="mf">0.</span> <span class="mf">0.5</span> <span class="mf">0.5</span><span class="p">]</span>
|
||||
<span class="p">[</span><span class="mf">0.5</span> <span class="mf">0.</span> <span class="mf">0.5</span><span class="p">]</span>
|
||||
<span class="p">[</span><span class="mf">0.5</span> <span class="mf">0.5</span> <span class="mf">0.</span> <span class="p">]</span>
|
||||
<span class="n">Spacegroup</span><span class="p">:</span> <span class="n">Fm</span><span class="o">-</span><span class="mi">3</span><span class="n">m</span> <span class="p">(</span><span class="mi">225</span><span class="p">)</span>
|
||||
<span class="p">[</span><span class="mf">1.</span> <span class="mf">0.</span> <span class="mf">0.</span><span class="p">]</span>
|
||||
<span class="p">[</span><span class="mf">0.</span> <span class="mf">1.</span> <span class="mf">0.</span><span class="p">]</span>
|
||||
<span class="p">[</span><span class="mf">0.</span> <span class="mf">0.</span> <span class="mf">1.</span><span class="p">]</span>
|
||||
<span class="n">Spacegroup</span><span class="p">:</span> <span class="n">P6_3mc</span> <span class="p">(</span><span class="mi">186</span><span class="p">)</span>
|
||||
<span class="n">Use</span> <span class="o">-</span><span class="n">v</span> <span class="n">option</span> <span class="n">to</span> <span class="n">watch</span> <span class="n">primitive</span> <span class="n">cell</span><span class="p">,</span> <span class="n">unit</span> <span class="n">cell</span><span class="p">,</span> <span class="ow">and</span> <span class="n">supercell</span> <span class="n">structures</span><span class="o">.</span>
|
||||
<span class="n">NAC</span> <span class="n">parameters</span> <span class="n">were</span> <span class="n">read</span> <span class="kn">from</span><span class="w"> </span><span class="s2">"phono3py.yaml"</span><span class="o">.</span>
|
||||
<span class="n">NAC</span> <span class="n">parameters</span> <span class="n">were</span> <span class="n">read</span> <span class="kn">from</span><span class="w"> </span><span class="s2">"phonopy_params_mp-661.yaml.xz"</span><span class="o">.</span>
|
||||
<span class="n">Displacement</span> <span class="n">dataset</span> <span class="k">for</span> <span class="n">fc3</span> <span class="n">was</span> <span class="n">read</span> <span class="kn">from</span><span class="w"> </span><span class="s2">"phonopy_params_mp-661.yaml.xz"</span><span class="o">.</span>
|
||||
<span class="o">-----------------------------</span> <span class="n">pypolymlp</span> <span class="n">start</span> <span class="o">------------------------------</span>
|
||||
<span class="n">Pypolymlp</span> <span class="n">version</span> <span class="mf">0.12.9</span><span class="o">.</span><span class="n">post0</span>
|
||||
<span class="n">Pypolymlp</span> <span class="ow">is</span> <span class="n">a</span> <span class="n">generator</span> <span class="n">of</span> <span class="n">polynomial</span> <span class="n">machine</span> <span class="n">learning</span> <span class="n">potentials</span><span class="o">.</span>
|
||||
<span class="n">Please</span> <span class="n">cite</span> <span class="n">the</span> <span class="n">paper</span><span class="p">:</span> <span class="n">A</span><span class="o">.</span> <span class="n">Seko</span><span class="p">,</span> <span class="n">J</span><span class="o">.</span> <span class="n">Appl</span><span class="o">.</span> <span class="n">Phys</span><span class="o">.</span> <span class="mi">133</span><span class="p">,</span> <span class="mi">011101</span> <span class="p">(</span><span class="mi">2023</span><span class="p">)</span><span class="o">.</span>
|
||||
<span class="n">Pypolymlp</span> <span class="ow">is</span> <span class="n">developed</span> <span class="n">at</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">sekocha</span><span class="o">/</span><span class="n">pypolymlp</span><span class="o">.</span>
|
||||
<span class="n">Load</span> <span class="n">MLPs</span> <span class="kn">from</span><span class="w"> </span><span class="s2">"polymlp.yaml"</span><span class="o">.</span>
|
||||
<span class="n">Parameters</span><span class="p">:</span>
|
||||
<span class="n">cutoff</span><span class="p">:</span> <span class="mf">8.0</span>
|
||||
<span class="n">model_type</span><span class="p">:</span> <span class="mi">3</span>
|
||||
<span class="n">max_p</span><span class="p">:</span> <span class="mi">2</span>
|
||||
<span class="n">gtinv_order</span><span class="p">:</span> <span class="mi">3</span>
|
||||
<span class="n">gtinv_maxl</span><span class="p">:</span> <span class="p">(</span><span class="mi">8</span><span class="p">,</span> <span class="mi">8</span><span class="p">)</span>
|
||||
<span class="n">gaussian_params1</span><span class="p">:</span> <span class="p">(</span><span class="mf">1.0</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
|
||||
<span class="n">gaussian_params2</span><span class="p">:</span> <span class="p">(</span><span class="mf">0.0</span><span class="p">,</span> <span class="mf">7.0</span><span class="p">,</span> <span class="mi">10</span><span class="p">)</span>
|
||||
<span class="n">Developing</span> <span class="n">MLPs</span> <span class="n">by</span> <span class="n">pypolymlp</span><span class="o">...</span>
|
||||
<span class="n">MLPs</span> <span class="n">were</span> <span class="n">written</span> <span class="n">into</span> <span class="s2">"polymlp.yaml"</span>
|
||||
<span class="o">------------------------------</span> <span class="n">pypolymlp</span> <span class="n">end</span> <span class="o">-------------------------------</span>
|
||||
<span class="n">Generate</span> <span class="n">random</span> <span class="n">displacements</span>
|
||||
<span class="n">Twice</span> <span class="n">of</span> <span class="n">number</span> <span class="n">of</span> <span class="n">snapshots</span> <span class="n">will</span> <span class="n">be</span> <span class="n">generated</span> <span class="k">for</span> <span class="n">plus</span><span class="o">-</span><span class="n">minus</span> <span class="n">displacements</span><span class="o">.</span>
|
||||
<span class="n">Relaxing</span> <span class="n">atomic</span> <span class="n">positions</span> <span class="n">using</span> <span class="n">polynomial</span> <span class="n">MLPs</span><span class="o">...</span>
|
||||
<span class="n">Change</span> <span class="ow">in</span> <span class="n">fractional</span> <span class="n">position</span> <span class="ow">and</span> <span class="ow">in</span> <span class="n">distance</span><span class="p">:</span>
|
||||
<span class="mi">1</span> <span class="n">N</span> <span class="p">:</span> <span class="mf">0.00000000</span> <span class="mf">0.00000000</span> <span class="o">-</span><span class="mf">0.00000021</span> <span class="p">(</span><span class="o">|</span><span class="n">d</span><span class="o">|=</span><span class="mf">0.00000105</span><span class="p">)</span>
|
||||
<span class="mi">2</span> <span class="n">N</span> <span class="p">:</span> <span class="mf">0.00000000</span> <span class="mf">0.00000000</span> <span class="o">-</span><span class="mf">0.00000021</span> <span class="p">(</span><span class="o">|</span><span class="n">d</span><span class="o">|=</span><span class="mf">0.00000105</span><span class="p">)</span>
|
||||
<span class="mi">3</span> <span class="n">Al</span><span class="p">:</span> <span class="mf">0.00000000</span> <span class="mf">0.00000000</span> <span class="mf">0.00000021</span> <span class="p">(</span><span class="o">|</span><span class="n">d</span><span class="o">|=</span><span class="mf">0.00000105</span><span class="p">)</span>
|
||||
<span class="mi">4</span> <span class="n">Al</span><span class="p">:</span> <span class="mf">0.00000000</span> <span class="mf">0.00000000</span> <span class="mf">0.00000021</span> <span class="p">(</span><span class="o">|</span><span class="n">d</span><span class="o">|=</span><span class="mf">0.00000105</span><span class="p">)</span>
|
||||
<span class="o">----------------------------------------------------------------------------</span>
|
||||
<span class="n">Generate</span> <span class="n">displacements</span>
|
||||
<span class="n">Displacement</span> <span class="n">distance</span><span class="p">:</span> <span class="mf">0.005</span>
|
||||
<span class="n">Evaluate</span> <span class="n">forces</span> <span class="ow">in</span> <span class="mi">200</span> <span class="n">supercells</span> <span class="n">by</span> <span class="n">pypolymlp</span>
|
||||
<span class="n">Evaluate</span> <span class="n">forces</span> <span class="ow">in</span> <span class="mi">3720</span> <span class="n">supercells</span> <span class="n">by</span> <span class="n">pypolymlp</span>
|
||||
<span class="n">Dataset</span> <span class="n">generated</span> <span class="n">using</span> <span class="n">MLPs</span> <span class="n">was</span> <span class="n">written</span> <span class="ow">in</span> <span class="s2">"phono3py_mlp_eval_dataset.yaml"</span><span class="o">.</span>
|
||||
<span class="o">-----------------------------</span> <span class="n">Force</span> <span class="n">constants</span> <span class="o">------------------------------</span>
|
||||
<span class="n">Symfc</span> <span class="n">will</span> <span class="n">be</span> <span class="n">used</span> <span class="n">to</span> <span class="n">handle</span> <span class="n">general</span> <span class="p">(</span><span class="ow">or</span> <span class="n">random</span><span class="p">)</span> <span class="n">displacements</span><span class="o">.</span>
|
||||
<span class="o">--------------------------------</span> <span class="n">Symfc</span> <span class="n">start</span> <span class="o">-------------------------------</span>
|
||||
<span class="n">Symfc</span> <span class="ow">is</span> <span class="n">a</span> <span class="n">force</span> <span class="n">constants</span> <span class="n">calculator</span><span class="o">.</span> <span class="n">See</span> <span class="n">the</span> <span class="n">following</span> <span class="n">paper</span><span class="p">:</span>
|
||||
<span class="n">A</span><span class="o">.</span> <span class="n">Seko</span> <span class="ow">and</span> <span class="n">A</span><span class="o">.</span> <span class="n">Togo</span><span class="p">,</span> <span class="n">Phys</span><span class="o">.</span> <span class="n">Rev</span><span class="o">.</span> <span class="n">B</span><span class="p">,</span> <span class="mi">110</span><span class="p">,</span> <span class="mi">214302</span> <span class="p">(</span><span class="mi">2024</span><span class="p">)</span><span class="o">.</span>
|
||||
<span class="n">Symfc</span> <span class="ow">is</span> <span class="n">developed</span> <span class="n">at</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">symfc</span><span class="o">/</span><span class="n">symfc</span><span class="o">.</span>
|
||||
<span class="n">Computing</span> <span class="p">[</span><span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">]</span> <span class="n">order</span> <span class="n">force</span> <span class="n">constants</span><span class="o">.</span>
|
||||
<span class="n">Increase</span> <span class="n">log</span><span class="o">-</span><span class="n">level</span> <span class="n">to</span> <span class="n">watch</span> <span class="n">detailed</span> <span class="n">symfc</span> <span class="n">log</span><span class="o">.</span>
|
||||
<span class="o">---------------------------------</span> <span class="n">Symfc</span> <span class="n">end</span> <span class="o">--------------------------------</span>
|
||||
<span class="o">--------------------------------</span> <span class="n">Symfc</span> <span class="n">start</span> <span class="o">-------------------------------</span>
|
||||
<span class="n">Symfc</span> <span class="ow">is</span> <span class="n">a</span> <span class="n">force</span> <span class="n">constants</span> <span class="n">calculator</span><span class="o">.</span> <span class="n">See</span> <span class="n">the</span> <span class="n">following</span> <span class="n">paper</span><span class="p">:</span>
|
||||
<span class="n">A</span><span class="o">.</span> <span class="n">Seko</span> <span class="ow">and</span> <span class="n">A</span><span class="o">.</span> <span class="n">Togo</span><span class="p">,</span> <span class="n">Phys</span><span class="o">.</span> <span class="n">Rev</span><span class="o">.</span> <span class="n">B</span><span class="p">,</span> <span class="mi">110</span><span class="p">,</span> <span class="mi">214302</span> <span class="p">(</span><span class="mi">2024</span><span class="p">)</span><span class="o">.</span>
|
||||
<span class="n">Symfc</span> <span class="ow">is</span> <span class="n">developed</span> <span class="n">at</span> <span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">symfc</span><span class="o">/</span><span class="n">symfc</span><span class="o">.</span>
|
||||
<span class="n">Computing</span> <span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">order</span> <span class="n">force</span> <span class="n">constants</span><span class="o">.</span>
|
||||
<span class="n">Increase</span> <span class="n">log</span><span class="o">-</span><span class="n">level</span> <span class="n">to</span> <span class="n">watch</span> <span class="n">detailed</span> <span class="n">symfc</span> <span class="n">log</span><span class="o">.</span>
|
||||
<span class="o">---------------------------------</span> <span class="n">Symfc</span> <span class="n">end</span> <span class="o">--------------------------------</span>
|
||||
<span class="n">Max</span> <span class="n">drift</span> <span class="n">of</span> <span class="n">fc3</span><span class="p">:</span> <span class="o">-</span><span class="mf">0.000000</span> <span class="p">(</span><span class="n">zxz</span><span class="p">)</span> <span class="o">-</span><span class="mf">0.000000</span> <span class="p">(</span><span class="n">xzz</span><span class="p">)</span> <span class="o">-</span><span class="mf">0.000000</span> <span class="p">(</span><span class="n">xzz</span><span class="p">)</span>
|
||||
<span class="n">Max</span> <span class="n">drift</span> <span class="n">of</span> <span class="n">fc2</span><span class="p">:</span> <span class="o">-</span><span class="mf">0.000000</span> <span class="p">(</span><span class="n">yy</span><span class="p">)</span> <span class="o">-</span><span class="mf">0.000000</span> <span class="p">(</span><span class="n">yy</span><span class="p">)</span>
|
||||
<span class="n">Computing</span> <span class="n">fc3</span><span class="p">[</span> <span class="mi">1</span><span class="p">,</span> <span class="n">x</span><span class="p">,</span> <span class="n">x</span> <span class="p">]</span> <span class="n">using</span> <span class="n">numpy</span><span class="o">.</span><span class="n">linalg</span><span class="o">.</span><span class="n">pinv</span><span class="o">.</span>
|
||||
<span class="n">Displacements</span> <span class="p">(</span><span class="ow">in</span> <span class="n">Angstrom</span><span class="p">):</span>
|
||||
<span class="p">[</span> <span class="mf">0.0050</span> <span class="mf">0.0000</span> <span class="mf">0.0000</span><span class="p">]</span>
|
||||
<span class="p">[</span><span class="o">-</span><span class="mf">0.0050</span> <span class="mf">0.0000</span> <span class="mf">0.0000</span><span class="p">]</span>
|
||||
<span class="p">[</span> <span class="mf">0.0000</span> <span class="mf">0.0000</span> <span class="mf">0.0050</span><span class="p">]</span>
|
||||
<span class="p">[</span> <span class="mf">0.0000</span> <span class="mf">0.0000</span> <span class="o">-</span><span class="mf">0.0050</span><span class="p">]</span>
|
||||
<span class="n">Computing</span> <span class="n">fc3</span><span class="p">[</span> <span class="mi">65</span><span class="p">,</span> <span class="n">x</span><span class="p">,</span> <span class="n">x</span> <span class="p">]</span> <span class="n">using</span> <span class="n">numpy</span><span class="o">.</span><span class="n">linalg</span><span class="o">.</span><span class="n">pinv</span><span class="o">.</span>
|
||||
<span class="n">Displacements</span> <span class="p">(</span><span class="ow">in</span> <span class="n">Angstrom</span><span class="p">):</span>
|
||||
<span class="p">[</span> <span class="mf">0.0050</span> <span class="mf">0.0000</span> <span class="mf">0.0000</span><span class="p">]</span>
|
||||
<span class="p">[</span><span class="o">-</span><span class="mf">0.0050</span> <span class="mf">0.0000</span> <span class="mf">0.0000</span><span class="p">]</span>
|
||||
<span class="p">[</span> <span class="mf">0.0000</span> <span class="mf">0.0000</span> <span class="mf">0.0050</span><span class="p">]</span>
|
||||
<span class="p">[</span> <span class="mf">0.0000</span> <span class="mf">0.0000</span> <span class="o">-</span><span class="mf">0.0050</span><span class="p">]</span>
|
||||
<span class="n">Expanding</span> <span class="n">fc3</span><span class="o">.</span>
|
||||
<span class="n">Symmetrizing</span> <span class="n">fc3</span> <span class="n">by</span> <span class="n">symfc</span> <span class="n">projector</span><span class="o">.</span>
|
||||
<span class="n">Symfc</span> <span class="n">version</span> <span class="mf">1.5.3</span> <span class="p">(</span><span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">symfc</span><span class="o">/</span><span class="n">symfc</span><span class="p">)</span>
|
||||
<span class="n">Citation</span><span class="p">:</span> <span class="n">A</span><span class="o">.</span> <span class="n">Seko</span> <span class="ow">and</span> <span class="n">A</span><span class="o">.</span> <span class="n">Togo</span><span class="p">,</span> <span class="n">Phys</span><span class="o">.</span> <span class="n">Rev</span><span class="o">.</span> <span class="n">B</span><span class="p">,</span> <span class="mi">110</span><span class="p">,</span> <span class="mi">214302</span> <span class="p">(</span><span class="mi">2024</span><span class="p">)</span>
|
||||
<span class="n">Symmetrizing</span> <span class="n">fc2</span> <span class="n">by</span> <span class="n">symfc</span> <span class="n">projector</span><span class="o">.</span>
|
||||
<span class="n">Symfc</span> <span class="n">version</span> <span class="mf">1.5.3</span> <span class="p">(</span><span class="n">https</span><span class="p">:</span><span class="o">//</span><span class="n">github</span><span class="o">.</span><span class="n">com</span><span class="o">/</span><span class="n">symfc</span><span class="o">/</span><span class="n">symfc</span><span class="p">)</span>
|
||||
<span class="n">Citation</span><span class="p">:</span> <span class="n">A</span><span class="o">.</span> <span class="n">Seko</span> <span class="ow">and</span> <span class="n">A</span><span class="o">.</span> <span class="n">Togo</span><span class="p">,</span> <span class="n">Phys</span><span class="o">.</span> <span class="n">Rev</span><span class="o">.</span> <span class="n">B</span><span class="p">,</span> <span class="mi">110</span><span class="p">,</span> <span class="mi">214302</span> <span class="p">(</span><span class="mi">2024</span><span class="p">)</span>
|
||||
<span class="n">Max</span> <span class="n">drift</span> <span class="n">of</span> <span class="n">fc3</span><span class="p">:</span> <span class="o">-</span><span class="mf">0.00000000</span> <span class="p">(</span><span class="n">xxz</span><span class="p">)</span> <span class="o">-</span><span class="mf">0.00000000</span> <span class="p">(</span><span class="n">xxz</span><span class="p">)</span> <span class="o">-</span><span class="mf">0.00000000</span> <span class="p">(</span><span class="n">xzx</span><span class="p">)</span>
|
||||
<span class="n">Max</span> <span class="n">drift</span> <span class="n">of</span> <span class="n">fc2</span><span class="p">:</span> <span class="o">-</span><span class="mf">0.00000000</span> <span class="p">(</span><span class="n">xx</span><span class="p">)</span> <span class="o">-</span><span class="mf">0.00000000</span> <span class="p">(</span><span class="n">xx</span><span class="p">)</span>
|
||||
<span class="n">fc3</span> <span class="n">was</span> <span class="n">written</span> <span class="n">into</span> <span class="s2">"fc3.hdf5"</span><span class="o">.</span>
|
||||
<span class="n">fc2</span> <span class="n">was</span> <span class="n">written</span> <span class="n">into</span> <span class="s2">"fc2.hdf5"</span><span class="o">.</span>
|
||||
<span class="o">---------------------------</span> <span class="n">Calculation</span> <span class="n">settings</span> <span class="o">---------------------------</span>
|
||||
<span class="n">Non</span><span class="o">-</span><span class="n">analytical</span> <span class="n">term</span> <span class="n">correction</span> <span class="p">(</span><span class="n">NAC</span><span class="p">):</span> <span class="kc">True</span>
|
||||
<span class="n">NAC</span> <span class="n">unit</span> <span class="n">conversion</span> <span class="n">factor</span><span class="p">:</span> <span class="mf">14.39965</span>
|
||||
<span class="n">BZ</span> <span class="n">integration</span><span class="p">:</span> <span class="n">Tetrahedron</span><span class="o">-</span><span class="n">method</span>
|
||||
<span class="n">Temperatures</span><span class="p">:</span> <span class="mf">0.0</span> <span class="mf">300.0</span>
|
||||
<span class="n">Cutoff</span> <span class="n">frequency</span><span class="p">:</span> <span class="mf">0.01</span>
|
||||
<span class="n">Frequency</span> <span class="n">conversion</span> <span class="n">factor</span> <span class="n">to</span> <span class="n">THz</span><span class="p">:</span> <span class="mf">15.63330</span>
|
||||
<span class="o">-----------</span> <span class="kc">None</span> <span class="n">of</span> <span class="n">ph</span><span class="o">-</span><span class="n">ph</span> <span class="n">interaction</span> <span class="n">calculation</span> <span class="n">was</span> <span class="n">performed</span><span class="o">.</span> <span class="o">-----------</span>
|
||||
<span class="n">Dataset</span> <span class="n">generated</span> <span class="n">using</span> <span class="n">MLPs</span> <span class="n">was</span> <span class="n">written</span> <span class="ow">in</span> <span class="s2">"phono3py_mlp_eval_dataset.yaml"</span><span class="o">.</span>
|
||||
<span class="n">Summary</span> <span class="n">of</span> <span class="n">calculation</span> <span class="n">was</span> <span class="n">written</span> <span class="ow">in</span> <span class="s2">"phono3py.yaml"</span><span class="o">.</span>
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">01</span><span class="o">-</span><span class="mi">19</span> <span class="mi">18</span><span class="p">:</span><span class="mi">19</span><span class="p">:</span><span class="mi">09</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="o">-------------------------</span><span class="p">[</span><span class="n">time</span> <span class="mi">2025</span><span class="o">-</span><span class="mi">07</span><span class="o">-</span><span class="mi">26</span> <span class="mi">14</span><span class="p">:</span><span class="mi">39</span><span class="p">:</span><span class="mi">11</span><span class="p">]</span><span class="o">-------------------------</span>
|
||||
<span class="n">_</span>
|
||||
<span class="n">___</span> <span class="n">_</span> <span class="n">__</span> <span class="n">__</span><span class="o">|</span> <span class="o">|</span>
|
||||
<span class="o">/</span> <span class="n">_</span> \ <span class="s1">'_ \ / _` |</span>
|
||||
|
@ -810,7 +845,6 @@ constants by loading the MLPs from <code class="docutils literal notranslate"><s
|
|||
</pre></div>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
<section id="parameters-for-developing-mlps">
|
||||
<h2>Parameters for developing MLPs<a class="headerlink" href="#parameters-for-developing-mlps" title="Link to this heading">#</a></h2>
|
||||
<p>A few parameters can be specified using the <code class="docutils literal notranslate"><span class="pre">--mlp-params</span></code> option for the
|
||||
|
@ -932,9 +966,9 @@ be converted to <code class="docutils literal notranslate"><span class="pre">pol
|
|||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#step-4-development-of-mlps">Step 4: Development of MLPs</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#steps-5-7-force-constants-calculation-systematic-displacements-in-step-5">Steps 5-7: Force constants calculation (systematic displacements in step 5)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#steps-5-7-force-constants-calculation-random-displacements-in-step-5">Steps 5-7: Force constants calculation (random displacements in step 5)</a></li>
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#command-options-for-force-constants-calculation">Command options for force constants calculation</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#command-options-for-force-constants-calculation">Command options for force constants calculation</a></li>
|
||||
<li class="toc-h2 nav-item toc-entry"><a class="reference internal nav-link" href="#parameters-for-developing-mlps">Parameters for developing MLPs</a><ul class="nav section-nav flex-column">
|
||||
<li class="toc-h3 nav-item toc-entry"><a class="reference internal nav-link" href="#ntrain-and-ntest"><code class="docutils literal notranslate"><span class="pre">ntrain</span></code> and <code class="docutils literal notranslate"><span class="pre">ntest</span></code></a></li>
|
||||
</ul>
|
||||
|
|
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue