abmptools 1.15.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. abmptools-1.15.0/LICENSE +21 -0
  2. abmptools-1.15.0/PKG-INFO +166 -0
  3. abmptools-1.15.0/README.md +124 -0
  4. abmptools-1.15.0/abmptools/__init__.py +24 -0
  5. abmptools-1.15.0/abmptools/abinit_io.py +2025 -0
  6. abmptools-1.15.0/abmptools/addsolvfrag.py +328 -0
  7. abmptools-1.15.0/abmptools/ajf2config.py +50 -0
  8. abmptools-1.15.0/abmptools/ajfserial.py +75 -0
  9. abmptools-1.15.0/abmptools/amorphous/__init__.py +26 -0
  10. abmptools-1.15.0/abmptools/amorphous/__main__.py +5 -0
  11. abmptools-1.15.0/abmptools/amorphous/builder.py +232 -0
  12. abmptools-1.15.0/abmptools/amorphous/cli.py +154 -0
  13. abmptools-1.15.0/abmptools/amorphous/density.py +90 -0
  14. abmptools-1.15.0/abmptools/amorphous/mdp_protocol.py +258 -0
  15. abmptools-1.15.0/abmptools/amorphous/models.py +72 -0
  16. abmptools-1.15.0/abmptools/amorphous/molecule_prep.py +131 -0
  17. abmptools-1.15.0/abmptools/amorphous/ndx_writer.py +67 -0
  18. abmptools-1.15.0/abmptools/amorphous/packing.py +157 -0
  19. abmptools-1.15.0/abmptools/amorphous/parameterizer.py +130 -0
  20. abmptools-1.15.0/abmptools/anlfmo.py +3760 -0
  21. abmptools-1.15.0/abmptools/convertcpf.py +68 -0
  22. abmptools-1.15.0/abmptools/core/__init__.py +6 -0
  23. abmptools-1.15.0/abmptools/core/system_model.py +302 -0
  24. abmptools-1.15.0/abmptools/cpf2ifielist.py +96 -0
  25. abmptools-1.15.0/abmptools/cpfmanager.py +1164 -0
  26. abmptools-1.15.0/abmptools/f90/bin/readifiepiedalib.so +0 -0
  27. abmptools-1.15.0/abmptools/generate_difie.py +293 -0
  28. abmptools-1.15.0/abmptools/generateajf.py +291 -0
  29. abmptools-1.15.0/abmptools/geomopt/__init__.py +37 -0
  30. abmptools-1.15.0/abmptools/geomopt/mace_optimizer.py +331 -0
  31. abmptools-1.15.0/abmptools/geomopt/openff_openmm_minimizer.py +651 -0
  32. abmptools-1.15.0/abmptools/geomopt/pyscf_optimizer.py +679 -0
  33. abmptools-1.15.0/abmptools/getcharge.py +81 -0
  34. abmptools-1.15.0/abmptools/getifiepieda.py +328 -0
  35. abmptools-1.15.0/abmptools/gro2udf/__init__.py +34 -0
  36. abmptools-1.15.0/abmptools/gro2udf/__main__.py +13 -0
  37. abmptools-1.15.0/abmptools/gro2udf/cli.py +123 -0
  38. abmptools-1.15.0/abmptools/gro2udf/default_template.udf +202 -0
  39. abmptools-1.15.0/abmptools/gro2udf/exporter.py +112 -0
  40. abmptools-1.15.0/abmptools/gro2udf/gro_adapter.py +140 -0
  41. abmptools-1.15.0/abmptools/gro2udf/gro_parser.py +159 -0
  42. abmptools-1.15.0/abmptools/gro2udf/mdp_parser.py +101 -0
  43. abmptools-1.15.0/abmptools/gro2udf/top_adapter.py +395 -0
  44. abmptools-1.15.0/abmptools/gro2udf/top_exporter.py +465 -0
  45. abmptools-1.15.0/abmptools/gro2udf/top_model.py +223 -0
  46. abmptools-1.15.0/abmptools/gro2udf/top_parser.py +647 -0
  47. abmptools-1.15.0/abmptools/gro2udf/udf_writer.py +94 -0
  48. abmptools-1.15.0/abmptools/log2config.py +84 -0
  49. abmptools-1.15.0/abmptools/log2cpf.py +127 -0
  50. abmptools-1.15.0/abmptools/logmanager.py +1427 -0
  51. abmptools-1.15.0/abmptools/mol_io.py +230 -0
  52. abmptools-1.15.0/abmptools/molcalc.py +1631 -0
  53. abmptools-1.15.0/abmptools/pdb2fmo.py +121 -0
  54. abmptools-1.15.0/abmptools/pdb_io.py +1041 -0
  55. abmptools-1.15.0/abmptools/pdbmodify.py +337 -0
  56. abmptools-1.15.0/abmptools/readcif.py +982 -0
  57. abmptools-1.15.0/abmptools/setfmo.py +640 -0
  58. abmptools-1.15.0/abmptools/udf2fmo.py +113 -0
  59. abmptools-1.15.0/abmptools/udf2gro/__init__.py +19 -0
  60. abmptools-1.15.0/abmptools/udf2gro/__main__.py +11 -0
  61. abmptools-1.15.0/abmptools/udf2gro/cli.py +46 -0
  62. abmptools-1.15.0/abmptools/udf2gro/exporter.py +99 -0
  63. abmptools-1.15.0/abmptools/udf2gro/gromacs/__init__.py +1 -0
  64. abmptools-1.15.0/abmptools/udf2gro/gromacs/writers/__init__.py +7 -0
  65. abmptools-1.15.0/abmptools/udf2gro/gromacs/writers/gro_writer.py +76 -0
  66. abmptools-1.15.0/abmptools/udf2gro/gromacs/writers/itp_writer.py +22 -0
  67. abmptools-1.15.0/abmptools/udf2gro/gromacs/writers/mdp_writer.py +150 -0
  68. abmptools-1.15.0/abmptools/udf2gro/gromacs/writers/top_writer.py +307 -0
  69. abmptools-1.15.0/abmptools/udf2gro/udf_adapter.py +1274 -0
  70. abmptools-1.15.0/abmptools/udf_io.py +903 -0
  71. abmptools-1.15.0/abmptools/udfcreate.py +1455 -0
  72. abmptools-1.15.0/abmptools/udfrm_io.py +173 -0
  73. abmptools-1.15.0/abmptools.egg-info/PKG-INFO +166 -0
  74. abmptools-1.15.0/abmptools.egg-info/SOURCES.txt +108 -0
  75. abmptools-1.15.0/abmptools.egg-info/dependency_links.txt +1 -0
  76. abmptools-1.15.0/abmptools.egg-info/entry_points.txt +15 -0
  77. abmptools-1.15.0/abmptools.egg-info/requires.txt +19 -0
  78. abmptools-1.15.0/abmptools.egg-info/top_level.txt +1 -0
  79. abmptools-1.15.0/pyproject.toml +83 -0
  80. abmptools-1.15.0/setup.cfg +4 -0
  81. abmptools-1.15.0/setup.py +6 -0
  82. abmptools-1.15.0/tests/test_abinit_io.py +597 -0
  83. abmptools-1.15.0/tests/test_amorphous_models.py +109 -0
  84. abmptools-1.15.0/tests/test_anlfmo.py +407 -0
  85. abmptools-1.15.0/tests/test_cli_scripts.py +815 -0
  86. abmptools-1.15.0/tests/test_cpfmanager.py +371 -0
  87. abmptools-1.15.0/tests/test_density.py +93 -0
  88. abmptools-1.15.0/tests/test_getifiepieda.py +344 -0
  89. abmptools-1.15.0/tests/test_gro_adapter.py +131 -0
  90. abmptools-1.15.0/tests/test_gro_parser.py +127 -0
  91. abmptools-1.15.0/tests/test_gro_writer.py +149 -0
  92. abmptools-1.15.0/tests/test_logmanager.py +265 -0
  93. abmptools-1.15.0/tests/test_mdp_parser.py +92 -0
  94. abmptools-1.15.0/tests/test_mdp_protocol.py +85 -0
  95. abmptools-1.15.0/tests/test_mdp_writer.py +117 -0
  96. abmptools-1.15.0/tests/test_mol_io.py +242 -0
  97. abmptools-1.15.0/tests/test_molcalc.py +569 -0
  98. abmptools-1.15.0/tests/test_ndx_writer.py +74 -0
  99. abmptools-1.15.0/tests/test_pdb_io.py +505 -0
  100. abmptools-1.15.0/tests/test_pyscf_optimizer.py +0 -0
  101. abmptools-1.15.0/tests/test_pyscf_parsers.py +152 -0
  102. abmptools-1.15.0/tests/test_readcif.py +203 -0
  103. abmptools-1.15.0/tests/test_setfmo.py +171 -0
  104. abmptools-1.15.0/tests/test_system_model.py +156 -0
  105. abmptools-1.15.0/tests/test_top_model.py +92 -0
  106. abmptools-1.15.0/tests/test_top_parser.py +153 -0
  107. abmptools-1.15.0/tests/test_top_writer.py +163 -0
  108. abmptools-1.15.0/tests/test_udf_io.py +77 -0
  109. abmptools-1.15.0/tests/test_udfcreate.py +196 -0
  110. abmptools-1.15.0/tests/test_udfrm_io.py +180 -0
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2022 Koji Okuwaki
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,166 @@
1
+ Metadata-Version: 2.4
2
+ Name: abmptools
3
+ Version: 1.15.0
4
+ Summary: Pre/post-processing and analysis toolkit for ABINIT-MP Fragment Molecular Orbital calculations
5
+ Author-email: Koji Okuwaki <koujioku81@gmail.com>
6
+ License-Expression: MIT
7
+ Project-URL: Homepage, https://github.com/kojioku/abmptools
8
+ Project-URL: Repository, https://github.com/kojioku/abmptools
9
+ Project-URL: Documentation, https://github.com/kojioku/abmptools/blob/main/docs/ABMPTools-user-manual.md
10
+ Project-URL: Changelog, https://github.com/kojioku/abmptools/blob/main/CHANGELOG.md
11
+ Keywords: FMO,ABINIT-MP,IFIE,PIEDA,fragment molecular orbital,computational chemistry
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Intended Audience :: Science/Research
14
+ Classifier: Programming Language :: Python :: 3
15
+ Classifier: Programming Language :: Python :: 3.8
16
+ Classifier: Programming Language :: Python :: 3.9
17
+ Classifier: Programming Language :: Python :: 3.10
18
+ Classifier: Programming Language :: Python :: 3.11
19
+ Classifier: Programming Language :: Python :: 3.12
20
+ Classifier: Programming Language :: Python :: 3.13
21
+ Classifier: Topic :: Scientific/Engineering :: Chemistry
22
+ Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
23
+ Requires-Python: >=3.8
24
+ Description-Content-Type: text/markdown
25
+ License-File: LICENSE
26
+ Requires-Dist: numpy
27
+ Requires-Dist: pandas
28
+ Provides-Extra: amorphous
29
+ Requires-Dist: openff-toolkit>=0.14.0; extra == "amorphous"
30
+ Requires-Dist: openff-interchange>=0.3.0; extra == "amorphous"
31
+ Requires-Dist: openmm>=8.0; extra == "amorphous"
32
+ Provides-Extra: geomopt
33
+ Requires-Dist: pyscf; extra == "geomopt"
34
+ Requires-Dist: ase; extra == "geomopt"
35
+ Provides-Extra: mace
36
+ Requires-Dist: ase; extra == "mace"
37
+ Requires-Dist: mace-torch; extra == "mace"
38
+ Requires-Dist: torch; extra == "mace"
39
+ Provides-Extra: test
40
+ Requires-Dist: pytest; extra == "test"
41
+ Dynamic: license-file
42
+
43
+ # ABMPTools (ABINIT-MP Tools)
44
+
45
+ A Python toolkit for pre-processing, post-processing, and analysis of Fragment Molecular Orbital (FMO) calculations with [ABINIT-MP](https://fmodd.jp/member_contents/manual_ABINIT-MP/).
46
+
47
+ ## Features
48
+
49
+ ### IFIE/PIEDA Analysis (`getifiepieda`, `anlfmo`, `cpf2ifielist`, `getcharge`)
50
+
51
+ - Distance-filtered IFIE tables for target fragments or molecules
52
+ - Fragment–fragment interaction matrices (1:1, 1:N, N:1, N:N)
53
+ - Time-series IFIE from MD-FMO trajectory snapshots
54
+ - SVD-based interaction decomposition
55
+ - Charge extraction from ABINIT-MP logs
56
+
57
+ ### CPF Management (`cpfmanager`, `convertcpf`, `generate_difie`, `log2cpf`)
58
+
59
+ - Parse and write CPF files (versions 4.201, 7.0 MIZUHO, 10, 23)
60
+ - Version conversion between CPF formats
61
+ - Residue-based CPF extraction
62
+ - Dynamic IFIE (DIFIE) averaging across MD snapshots with mean/σ statistics
63
+ - Generate CPF from ABINIT-MP log files
64
+
65
+ ### FMO Input Generation (`generateajf`, `pdb2fmo`, `udf2fmo`, `setfmo`, `addsolvfrag`)
66
+
67
+ - Auto-generate AJF input files from PDB structures
68
+ - Fragment assignment for proteins and molecular assemblies
69
+ - Solvation fragment addition
70
+ - Support for sp2 fragmentation and various basis sets
71
+
72
+ ### File Format Conversion
73
+
74
+ - CIF → PDB/XYZ (`readcif`) with symmetry operations
75
+ - ABINIT-MP log → fragment config (`log2config`, `ajf2config`)
76
+ - PDB editing and serial AJF generation (`pdbmodify`, `ajfserial`)
77
+
78
+ ### GROMACS ↔ OCTA COGNAC Conversion
79
+
80
+ - **udf2gro**: Convert OCTA UDF files to GROMACS format (`.gro`, `.top`, `.mdp`, `.itp`)
81
+ - **gro2udf**: Convert GROMACS files to OCTA UDF format (supports `--from-top` mode)
82
+
83
+ ### Geometry Optimization (`geomopt`)
84
+
85
+ - **MacePdbOptimizer**: MACE/ASE-based PDB structure optimization
86
+ - **OpenFFOpenMMMinimizer**: OpenFF force-field minimization via OpenMM
87
+ - **QMOptimizerPySCF**: Quantum chemistry optimization with PySCF
88
+
89
+ ### Amorphous Structure Building (`amorphous`)
90
+
91
+ - Multi-component amorphous system construction using Packmol and OpenMM
92
+
93
+ ## Supported ABINIT-MP Versions
94
+
95
+ - ABINIT-MP v1: Rev.10–23
96
+ - ABINIT-MP v2: Rev.4–8
97
+
98
+ ## Installation
99
+
100
+ ```bash
101
+ pip install --user .
102
+ ```
103
+
104
+ This runs `make` during install to compile the optional Fortran shared library for accelerated IFIE/PIEDA reading. If `gfortran` is not available, the install still succeeds without Fortran acceleration.
105
+
106
+ ### Requirements
107
+
108
+ - **Required**: Python 3.8+, numpy, pandas
109
+ - **Optional**: UDFManager (OCTA COGNAC), gfortran, OpenBabel, PySCF, ASE, OpenMM, Packmol
110
+
111
+ ## Quick Start
112
+
113
+ ```bash
114
+ # Extract IFIE for fragment 10, within 8 Å
115
+ python -m abmptools.getifiepieda --frag 10 -d 8.0 -i calculation.log
116
+
117
+ # Generate AJF input from PDB
118
+ python -m abmptools.generateajf -i protein.pdb -basis 6-31G* --method MP2
119
+
120
+ # Convert log to CPF
121
+ python -m abmptools.log2cpf -i calculation.log -o output.cpf
122
+
123
+ # Create DIFIE-averaged CPF from trajectory
124
+ python -m abmptools.generate_difie -i traj-xxx.cpf -t 1 10 1 -f 1-100 -np 4
125
+
126
+ # Convert UDF to GROMACS
127
+ python -m abmptools.udf2gro.cli -i system.udf -o output
128
+
129
+ # Convert GROMACS to UDF
130
+ python -m abmptools.gro2udf.cli -i system.gro -t system.top -o output.udf
131
+ ```
132
+
133
+ Use `-h` with any module for full option details.
134
+
135
+ ## Documentation
136
+
137
+ - **[User Manual](docs/ABMPTools-user-manual.md)** — CLI options, output formats, and workflow examples
138
+ - **[Architecture](docs/architecture.md)** — Class hierarchy and design overview
139
+ - **[Developer Quickstart](docs/dev_quickstart.md)** — Setup and code conventions
140
+ - **[I/O Spec](docs/io_spec.md)** — File format specifications
141
+ - **[gro2udf](docs/gro2udf.md)** / **[udf2gro](docs/udf2gro.md)** — GROMACS ↔ OCTA conversion
142
+ - **[geomopt](docs/geomopt.md)** / **[amorphous](docs/amorphous.md)** — Optimization and structure building
143
+
144
+ ## Testing
145
+
146
+ ```bash
147
+ pytest tests/ -v # 658 tests
148
+ pytest tests/ -v -k molcalc # specific module
149
+ ```
150
+
151
+ See [tests/TEST_COVERAGE.md](tests/TEST_COVERAGE.md) for details.
152
+
153
+ ## Samples
154
+
155
+ Each `sample/` subdirectory contains input data and a `run.sh` script:
156
+
157
+ ```bash
158
+ cd sample/generateajf && bash run.sh
159
+ cd sample/log2cpf && bash run.sh
160
+ cd sample/generate_difie/TrpCage && bash run.sh
161
+ cd sample/convertcpf && bash run.sh
162
+ ```
163
+
164
+ ## Author
165
+
166
+ [Koji Okuwaki](mailto:koujioku81@gmail.com)
@@ -0,0 +1,124 @@
1
+ # ABMPTools (ABINIT-MP Tools)
2
+
3
+ A Python toolkit for pre-processing, post-processing, and analysis of Fragment Molecular Orbital (FMO) calculations with [ABINIT-MP](https://fmodd.jp/member_contents/manual_ABINIT-MP/).
4
+
5
+ ## Features
6
+
7
+ ### IFIE/PIEDA Analysis (`getifiepieda`, `anlfmo`, `cpf2ifielist`, `getcharge`)
8
+
9
+ - Distance-filtered IFIE tables for target fragments or molecules
10
+ - Fragment–fragment interaction matrices (1:1, 1:N, N:1, N:N)
11
+ - Time-series IFIE from MD-FMO trajectory snapshots
12
+ - SVD-based interaction decomposition
13
+ - Charge extraction from ABINIT-MP logs
14
+
15
+ ### CPF Management (`cpfmanager`, `convertcpf`, `generate_difie`, `log2cpf`)
16
+
17
+ - Parse and write CPF files (versions 4.201, 7.0 MIZUHO, 10, 23)
18
+ - Version conversion between CPF formats
19
+ - Residue-based CPF extraction
20
+ - Dynamic IFIE (DIFIE) averaging across MD snapshots with mean/σ statistics
21
+ - Generate CPF from ABINIT-MP log files
22
+
23
+ ### FMO Input Generation (`generateajf`, `pdb2fmo`, `udf2fmo`, `setfmo`, `addsolvfrag`)
24
+
25
+ - Auto-generate AJF input files from PDB structures
26
+ - Fragment assignment for proteins and molecular assemblies
27
+ - Solvation fragment addition
28
+ - Support for sp2 fragmentation and various basis sets
29
+
30
+ ### File Format Conversion
31
+
32
+ - CIF → PDB/XYZ (`readcif`) with symmetry operations
33
+ - ABINIT-MP log → fragment config (`log2config`, `ajf2config`)
34
+ - PDB editing and serial AJF generation (`pdbmodify`, `ajfserial`)
35
+
36
+ ### GROMACS ↔ OCTA COGNAC Conversion
37
+
38
+ - **udf2gro**: Convert OCTA UDF files to GROMACS format (`.gro`, `.top`, `.mdp`, `.itp`)
39
+ - **gro2udf**: Convert GROMACS files to OCTA UDF format (supports `--from-top` mode)
40
+
41
+ ### Geometry Optimization (`geomopt`)
42
+
43
+ - **MacePdbOptimizer**: MACE/ASE-based PDB structure optimization
44
+ - **OpenFFOpenMMMinimizer**: OpenFF force-field minimization via OpenMM
45
+ - **QMOptimizerPySCF**: Quantum chemistry optimization with PySCF
46
+
47
+ ### Amorphous Structure Building (`amorphous`)
48
+
49
+ - Multi-component amorphous system construction using Packmol and OpenMM
50
+
51
+ ## Supported ABINIT-MP Versions
52
+
53
+ - ABINIT-MP v1: Rev.10–23
54
+ - ABINIT-MP v2: Rev.4–8
55
+
56
+ ## Installation
57
+
58
+ ```bash
59
+ pip install --user .
60
+ ```
61
+
62
+ This runs `make` during install to compile the optional Fortran shared library for accelerated IFIE/PIEDA reading. If `gfortran` is not available, the install still succeeds without Fortran acceleration.
63
+
64
+ ### Requirements
65
+
66
+ - **Required**: Python 3.8+, numpy, pandas
67
+ - **Optional**: UDFManager (OCTA COGNAC), gfortran, OpenBabel, PySCF, ASE, OpenMM, Packmol
68
+
69
+ ## Quick Start
70
+
71
+ ```bash
72
+ # Extract IFIE for fragment 10, within 8 Å
73
+ python -m abmptools.getifiepieda --frag 10 -d 8.0 -i calculation.log
74
+
75
+ # Generate AJF input from PDB
76
+ python -m abmptools.generateajf -i protein.pdb -basis 6-31G* --method MP2
77
+
78
+ # Convert log to CPF
79
+ python -m abmptools.log2cpf -i calculation.log -o output.cpf
80
+
81
+ # Create DIFIE-averaged CPF from trajectory
82
+ python -m abmptools.generate_difie -i traj-xxx.cpf -t 1 10 1 -f 1-100 -np 4
83
+
84
+ # Convert UDF to GROMACS
85
+ python -m abmptools.udf2gro.cli -i system.udf -o output
86
+
87
+ # Convert GROMACS to UDF
88
+ python -m abmptools.gro2udf.cli -i system.gro -t system.top -o output.udf
89
+ ```
90
+
91
+ Use `-h` with any module for full option details.
92
+
93
+ ## Documentation
94
+
95
+ - **[User Manual](docs/ABMPTools-user-manual.md)** — CLI options, output formats, and workflow examples
96
+ - **[Architecture](docs/architecture.md)** — Class hierarchy and design overview
97
+ - **[Developer Quickstart](docs/dev_quickstart.md)** — Setup and code conventions
98
+ - **[I/O Spec](docs/io_spec.md)** — File format specifications
99
+ - **[gro2udf](docs/gro2udf.md)** / **[udf2gro](docs/udf2gro.md)** — GROMACS ↔ OCTA conversion
100
+ - **[geomopt](docs/geomopt.md)** / **[amorphous](docs/amorphous.md)** — Optimization and structure building
101
+
102
+ ## Testing
103
+
104
+ ```bash
105
+ pytest tests/ -v # 658 tests
106
+ pytest tests/ -v -k molcalc # specific module
107
+ ```
108
+
109
+ See [tests/TEST_COVERAGE.md](tests/TEST_COVERAGE.md) for details.
110
+
111
+ ## Samples
112
+
113
+ Each `sample/` subdirectory contains input data and a `run.sh` script:
114
+
115
+ ```bash
116
+ cd sample/generateajf && bash run.sh
117
+ cd sample/log2cpf && bash run.sh
118
+ cd sample/generate_difie/TrpCage && bash run.sh
119
+ cd sample/convertcpf && bash run.sh
120
+ ```
121
+
122
+ ## Author
123
+
124
+ [Koji Okuwaki](mailto:koujioku81@gmail.com)
@@ -0,0 +1,24 @@
1
+ from .pdb_io import pdb_io
2
+ from .abinit_io import abinit_io
3
+ from .setfmo import setfmo
4
+ from .mol_io import mol_io
5
+ from .molcalc import molcalc
6
+ from .udfrm_io import udfrm_io
7
+ from .udf_io import udf_io
8
+ from .udfcreate import udfcreate
9
+ from .anlfmo import anlfmo
10
+ from .cpfmanager import CPFManager
11
+ from .logmanager import LOGManager
12
+ # udf2gro and gro2udf are imported lazily because they require UDFManager (optional dep)
13
+ try:
14
+ from .udf2gro import Exporter as Udf2groExporter
15
+ except ImportError:
16
+ pass
17
+ try:
18
+ from .gro2udf import Exporter as Gro2udfExporter
19
+ except ImportError:
20
+ pass
21
+ try:
22
+ from .amorphous import AmorphousBuilder
23
+ except ImportError:
24
+ pass