├── .gitignore
├── README.md
├── basis
├── 3-21g.basis
├── 6-311ppgss.basis
├── 6-31gs.basis
├── aug-cc-pv5z.basis
├── aug-cc-pvdz.basis
├── aug-cc-pvqz.basis
├── aug-cc-pvtz.basis
├── cc-pv5z.basis
├── cc-pvdz.basis
├── cc-pvqz.basis
├── cc-pvtz.basis
├── def2-qzvp.basis
├── def2-svp.basis
├── def2-tzvp.basis
└── sto-3g.basis
├── data
├── mc
│ ├── benzene_2.dat
│ ├── benzene_2.xyz
│ ├── ch2o.dat
│ ├── ch2o.xyz
│ ├── co.dat
│ ├── co.xyz
│ ├── ethane.dat
│ ├── ethane.xyz
│ ├── h2o.dat
│ ├── h2o.xyz
│ ├── h2o_5.dat
│ ├── h2o_5.xyz
│ ├── he2.dat
│ ├── he2.xyz
│ ├── he20.dat
│ ├── he20.xyz
│ ├── hf.dat
│ ├── hf.xyz
│ ├── lif.dat
│ └── lif.xyz
├── md
│ ├── benzene_2.dat
│ ├── benzene_2.xyz
│ ├── ch2o.dat
│ ├── ch2o.xyz
│ ├── co.dat
│ ├── co.xyz
│ ├── ethane.dat
│ ├── ethane.xyz
│ ├── h2o.dat
│ ├── h2o.xyz
│ ├── h2o_5.dat
│ ├── h2o_5.xyz
│ ├── he2.dat
│ ├── he2.xyz
│ ├── he20.dat
│ ├── he20.xyz
│ ├── hf.dat
│ ├── hf.xyz
│ ├── lif.dat
│ └── lif.xyz
├── mm
│ ├── benzene_2.log
│ ├── ch2o.log
│ ├── co.log
│ ├── ethane.log
│ ├── h2o.log
│ ├── h2o_5.log
│ ├── he2.log
│ ├── he20.log
│ ├── hf.log
│ └── lif.log
└── opt
│ ├── benzene_2.dat
│ ├── benzene_2.xyz
│ ├── ch2o.dat
│ ├── ch2o.xyz
│ ├── co.dat
│ ├── co.xyz
│ ├── ethane.dat
│ ├── ethane.xyz
│ ├── h2o.dat
│ ├── h2o.xyz
│ ├── h2o_5.dat
│ ├── h2o_5.xyz
│ ├── he2.dat
│ ├── he2.xyz
│ ├── he20.dat
│ ├── he20.xyz
│ ├── hf.dat
│ ├── hf.xyz
│ ├── lif.dat
│ └── lif.xyz
├── geom
├── prm
│ ├── ch2o.prm
│ ├── co.prm
│ ├── ethane.prm
│ ├── h2o.prm
│ ├── he2.prm
│ ├── he20.prm
│ ├── hf.prm
│ └── lif.prm
├── xyz
│ ├── 12difluoroethane.xyz
│ ├── 135trifluorobenzene.xyz
│ ├── acetaldehyde.xyz
│ ├── aceticacid.xyz
│ ├── acetone.xyz
│ ├── acetonitrile.xyz
│ ├── adamantane.xyz
│ ├── adenine.xyz
│ ├── benzene.xyz
│ ├── c60.xyz
│ ├── ch2cl2.xyz
│ ├── ch4.xyz
│ ├── chloroform.xyz
│ ├── chloromethane.xyz
│ ├── co.xyz
│ ├── co2.xyz
│ ├── cubane.xyz
│ ├── cyclopentane.xyz
│ ├── cyclopropane.xyz
│ ├── dimethylether.xyz
│ ├── ethane.xyz
│ ├── ethanethiol.xyz
│ ├── ethanoicanhydride.xyz
│ ├── ethanol.xyz
│ ├── ethene.xyz
│ ├── ethylacetate.xyz
│ ├── ethyne.xyz
│ ├── formaldehyde.xyz
│ ├── h2.xyz
│ ├── h2o.xyz
│ ├── he.xyz
│ ├── helium.xyz
│ ├── hf.xyz
│ ├── hooh.xyz
│ ├── isobutane.xyz
│ ├── methylamine.xyz
│ ├── methylformate.xyz
│ ├── neopentane.xyz
│ ├── nh3.xyz
│ ├── oxalicacid.xyz
│ ├── propane.xyz
│ └── thymine.xyz
├── xyzq
│ ├── a.xyzq
│ ├── benzene_2.xyzq
│ ├── ethane.xyzq
│ ├── ethane5.xyzq
│ ├── h2o.xyzq
│ └── h2o_5.xyzq
└── zmat
│ ├── benzene.zmat
│ ├── ch4.zmat
│ ├── chloromethane.zmat
│ ├── ethane.zmat
│ ├── ethene.zmat
│ ├── formaldehyde.zmat
│ ├── h2.zmat
│ ├── h2o.zmat
│ ├── hf.zmat
│ ├── hooh.zmat
│ ├── nh3.zmat
│ └── propane.zmat
├── input
├── mc
│ ├── benzene_2.mc
│ ├── ch2o.mc
│ ├── co.mc
│ ├── ethane.mc
│ ├── h2o.mc
│ ├── h2o_5.mc
│ ├── he2.mc
│ ├── he20.mc
│ ├── hf.mc
│ └── lif.mc
├── md
│ ├── benzene_2.md
│ ├── ch2o.md
│ ├── co.md
│ ├── ethane.md
│ ├── h2o.md
│ ├── h2o_5.md
│ ├── he2.md
│ ├── he20.md
│ ├── hf.md
│ └── lif.md
└── opt
│ ├── benzene_2.opt
│ ├── ch2o.opt
│ ├── co.opt
│ ├── ethane.opt
│ ├── h2o.opt
│ ├── h2o_5.opt
│ ├── he2.opt
│ ├── he20.opt
│ ├── hf.opt
│ └── lif.opt
├── plot
├── mc
│ ├── benzene_2.log
│ ├── benzene_2.pdf
│ ├── benzene_2.plt
│ ├── ch2o.log
│ ├── ch2o.pdf
│ ├── ch2o.plt
│ ├── co.log
│ ├── co.pdf
│ ├── co.plt
│ ├── ethane.log
│ ├── ethane.pdf
│ ├── ethane.plt
│ ├── h2o.log
│ ├── h2o.pdf
│ ├── h2o.plt
│ ├── h2o_5.log
│ ├── h2o_5.pdf
│ ├── h2o_5.plt
│ ├── he2.log
│ ├── he2.pdf
│ ├── he2.plt
│ ├── he20.log
│ ├── he20.pdf
│ ├── he20.plt
│ ├── hf.log
│ ├── hf.pdf
│ ├── hf.plt
│ ├── lif.log
│ ├── lif.pdf
│ └── lif.plt
└── md
│ ├── benzene_2.log
│ ├── benzene_2.pdf
│ ├── benzene_2.plt
│ ├── ch2o.log
│ ├── ch2o.pdf
│ ├── ch2o.plt
│ ├── co.log
│ ├── co.pdf
│ ├── co.plt
│ ├── ethane.log
│ ├── ethane.pdf
│ ├── ethane.plt
│ ├── h2o.log
│ ├── h2o.pdf
│ ├── h2o.plt
│ ├── h2o_5.log
│ ├── h2o_5.pdf
│ ├── h2o_5.plt
│ ├── he2.log
│ ├── he2.pdf
│ ├── he2.plt
│ ├── he20.log
│ ├── he20.pdf
│ ├── he20.plt
│ ├── hf.log
│ ├── hf.pdf
│ ├── hf.plt
│ ├── lif.log
│ ├── lif.pdf
│ └── lif.plt
└── scripts
├── geometry_analysis
├── angles.py
├── bonds.py
├── center_of_mass.py
├── geometry_analysis.py
├── moment_of_inertia.py
├── out_of_planes.py
├── torsions.py
└── zmat2xyz.py
└── molecular_mechanics
├── ana.py
├── mc.py
├── md.py
├── mm.py
├── mmlib
├── __init__.py
├── analyze.py
├── analyze_test.py
├── constants.py
├── energy.py
├── energy_test.py
├── fileio.py
├── fileio_test.py
├── geomcalc.py
├── geomcalc_test.py
├── gradient.py
├── gradient_test.py
├── molecule.py
├── molecule_test.py
├── optimize.py
├── optimize_test.py
├── param.py
├── param_test.py
├── simulate.py
├── simulate_test.py
├── test.py
├── test_test.py
├── topology.py
└── topology_test.py
├── opt.py
└── run_tests.py
/.gitignore:
--------------------------------------------------------------------------------
1 | __pycache__/
2 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | TMP Chem Computational Chemistry Source Code
2 | ============================================
3 |
4 | This repository contains scripts, programs, and data files used with the
5 | "Computational Chemistry" playlist on the [TMP Chem YouTube channel][yt].
6 | Primary language is Python3, with toy programs to demonstrate modeling and
7 | analysis methods. Repository is always subject to change, and no guarantees
8 | are made of the correctness of output.
9 |
10 | [yt]: https://www.youtube.com/tmpchem
11 |
12 | Table of contents
13 | -----------------
14 | * [Getting started](#getting-started)
15 | * [Prerequisites](#prerequisites)
16 | * [Installation](#installation)
17 | * [Running the tests](#running-tests)
18 | * [Running the scripts](#running-scripts)
19 | * [Geometry analysis](#geometry-analysis)
20 | * [Molecular mechanics](#molecular-mechanics)
21 | * [Author](#author)
22 | * [Acknowledgments](#acknowledgments)
23 |
24 |
Getting started
25 |
26 | Most recent version of project is located in
27 | [TMP Chem GitHub account][github]. Download by following instructions for
28 | Git clone from GitHub. Requires a terminal, IDE, etc. to execute Python
29 | scripts and ability to write to file system within project directories.
30 |
31 | [github]: https://www.github.com/tmpchem/computational_chemistry
32 |
33 | Prerequisites
34 |
35 | Requires Python 3.5 or greater for script execution. Requires access
36 | to numpy and matplotlib modules. All prerequisites can be met by
37 | downloading and using Python from
38 | [most recent Anaconda distribution][anaconda].
39 |
40 | [anaconda]: https://www.anaconda.com/download/
41 |
42 | Installation
43 |
44 | No additional installation necessary after cloning the repository.
45 |
46 | Running the tests
47 |
48 | WARNING: Test suite is incomplete and subject to change without notice.
49 |
50 | To run tests for a project, go to the script directory for that project,
51 | `[top_level_path]/scripts/[project]`. If present, execute `run_tests.py`
52 | for the project.
53 |
54 | python run_tests.py
55 |
56 | This command executes a test suite of unit tests from each test module present
57 | in the mmlib directory. Each test module contains a set of unit tests of methods
58 | within the module, confirming proper behavior and protecting against regression
59 | errors and system misconfigurations.
60 |
61 | Once executed, standard output will indicate success with an 'OK' message and
62 | the number of executed unit tests as well as total run time. Any other message
63 | indicates failure and will include the nature of the failing tests.
64 |
65 | Open an issue to give feedback or report bugs.
66 |
67 | Running the scripts
68 |
69 | As of 16 Feb 2017, repository contains two projects: `geometry_analysis`,
70 | and `molecular_mechanics`.
71 |
72 | Geometry analysis
73 |
74 | The `geometry_analysis` project contains scripts which take an xyz-format
75 | molecular geometry file as input, and output to screen associated
76 | geometry data, including bond lengths, bond angles, torsion angles,
77 | out-of-plane angles, center of mass, and/or moment of inertia, etc. Sample
78 | xyz files are located in `[top_level_path]/geom/xyz` directory.
79 |
80 | Molecular mechanics
81 |
82 | The `molecular_mechanics` project contains scripts to compute molecular
83 | mechanics energy of a system (`mm.py`), molecular dynamics trajectories
84 | (`md.py`), Metropolis Monte Carlo ensembles (`mc.py`), and optimize
85 | molecular coordinates to potential energy minima (`opt.py`).
86 |
87 | The energy function and parameters in all cases is based on AMBER FF94.
88 |
89 | Cornell et. al,
90 | J. Am. Chem. Soc. 1995, 117, 5179-5197.
91 | doi.org/10.1021/ja00124a002
92 |
93 | Energy function in Equation 1. Atom types in Table 1. Parameter values
94 | in Table 14. Download AmberTools15 from [here][amber]. After unzipping,
95 | parameters located in `amber14/dat/leap/parm/parm94.dat`.
96 |
97 | [amber]: http://ambermd.org/AmberTools15-get.html
98 |
99 | Sample input files for mm are located in
100 | `[top_level_path]/geom/[file_type]` directories, where `file_type]` is
101 | `xyzq` or `prm`. Sample input files for md and mc are located in
102 | `[top_level_path]/geom/sim` directory. Output files for each are
103 | demonstrated in samples, and may be written to any accessible file
104 | name.
105 |
106 | Author
107 |
108 | The sole author of this package is Trent M. Parker.
109 |
110 | - Email: `tmpchemistry@gmail.com`
111 | - LinkedIn: https://www.linkedin.com/in/tmpchem
112 | - Youtube: https://www.youtube.com/tmpchem
113 |
114 | Acknowledgments
115 |
116 | The author wishes to thank the following individuals:
117 | **Dr. Michael S. Marshall**, for encouraging him to learn the Python
118 | language;
119 | **Dr. Lori S. Burns**, for encouraging him to conform to style guidelines
120 | for readable Python code;
121 | **Dr. Michael A. Lewis**, for providing the inspiration for the author to
122 | initiate studies in this field; and
123 | **Dr. C. David Sherrill**, for providing an enormous number of opportunities
124 | to continue to learn and grow as a scientist and a person.
125 |
--------------------------------------------------------------------------------
/data/mc/hf.xyz:
--------------------------------------------------------------------------------
1 | 2
2 | conf 0
3 | H 0.000 0.000 0.000
4 | F 0.000 0.000 1.000
5 | 2
6 | conf 1
7 | H 0.262 0.118 -0.083
8 | F 0.197 -0.034 0.804
9 | 2
10 | conf 2
11 | H 0.165 0.143 0.027
12 | F 0.397 -0.022 0.890
13 | 2
14 | conf 3
15 | H 0.357 0.147 0.166
16 | F 0.503 -0.101 1.040
17 | 2
18 | conf 4
19 | H 0.442 0.123 0.034
20 | F 0.384 -0.132 0.915
21 | 2
22 | conf 5
23 | H 0.442 0.193 0.027
24 | F 0.336 -0.082 0.899
25 | 2
26 | conf 6
27 | H 0.446 0.173 -0.022
28 | F 0.375 -0.078 0.859
29 | 2
30 | conf 7
31 | H 0.390 0.212 0.031
32 | F 0.346 -0.097 0.893
33 | 2
34 | conf 8
35 | H 0.373 0.167 0.027
36 | F 0.321 -0.126 0.894
37 | 2
38 | conf 9
39 | H 0.350 0.118 0.027
40 | F 0.328 -0.126 0.911
41 | 2
42 | conf 10
43 | H 0.382 0.079 0.014
44 | F 0.329 -0.117 0.909
45 | 2
46 | conf 11
47 | H 0.322 0.032 0.015
48 | F 0.329 -0.137 0.922
49 | 2
50 | conf 12
51 | H 0.323 0.052 0.004
52 | F 0.320 -0.178 0.888
53 | 2
54 | conf 13
55 | H 0.329 0.041 0.002
56 | F 0.311 -0.177 0.891
57 | 2
58 | conf 14
59 | H 0.332 0.052 0.019
60 | F 0.310 -0.185 0.900
61 | 2
62 | conf 15
63 | H 0.333 0.037 0.026
64 | F 0.325 -0.188 0.922
65 | 2
66 | conf 16
67 | H 0.356 0.040 0.039
68 | F 0.321 -0.206 0.928
69 | 2
70 | conf 17
71 | H 0.363 0.064 0.043
72 | F 0.329 -0.215 0.911
73 | 2
74 | conf 18
75 | H 0.360 0.075 0.056
76 | F 0.314 -0.237 0.918
77 | 2
78 | conf 19
79 | H 0.337 0.078 0.054
80 | F 0.336 -0.228 0.919
81 | 2
82 | conf 20
83 | H 0.314 0.070 0.032
84 | F 0.344 -0.217 0.904
85 | 2
86 | conf 21
87 | H 0.319 0.078 0.016
88 | F 0.371 -0.220 0.880
89 | 2
90 | conf 22
91 | H 0.336 0.098 0.020
92 | F 0.377 -0.240 0.869
93 | 2
94 | conf 23
95 | H 0.289 0.095 0.029
96 | F 0.370 -0.229 0.878
97 | 2
98 | conf 24
99 | H 0.303 0.080 -0.006
100 | F 0.354 -0.230 0.849
101 | 2
102 | conf 25
103 | H 0.308 0.064 -0.004
104 | F 0.372 -0.270 0.847
105 | 2
106 | conf 26
107 | H 0.310 0.067 0.015
108 | F 0.374 -0.299 0.853
109 | 2
110 | conf 27
111 | H 0.314 0.087 0.033
112 | F 0.378 -0.327 0.853
113 | 2
114 | conf 28
115 | H 0.307 0.091 0.035
116 | F 0.386 -0.309 0.862
117 | 2
118 | conf 29
119 | H 0.292 0.075 0.023
120 | F 0.369 -0.308 0.858
121 | 2
122 | conf 30
123 | H 0.298 0.068 0.023
124 | F 0.369 -0.305 0.863
125 | 2
126 | conf 31
127 | H 0.290 0.055 0.011
128 | F 0.367 -0.295 0.854
129 | 2
130 | conf 32
131 | H 0.300 0.073 0.013
132 | F 0.368 -0.281 0.855
133 | 2
134 | conf 33
135 | H 0.296 0.074 0.008
136 | F 0.381 -0.286 0.847
137 | 2
138 | conf 34
139 | H 0.305 0.061 0.015
140 | F 0.385 -0.296 0.858
141 | 2
142 | conf 35
143 | H 0.299 0.066 0.029
144 | F 0.386 -0.322 0.854
145 | 2
146 | conf 36
147 | H 0.312 0.074 0.025
148 | F 0.371 -0.337 0.843
149 | 2
150 | conf 37
151 | H 0.304 0.080 0.020
152 | F 0.365 -0.348 0.827
153 | 2
154 | conf 38
155 | H 0.300 0.080 0.013
156 | F 0.351 -0.341 0.823
157 | 2
158 | conf 39
159 | H 0.296 0.069 0.009
160 | F 0.363 -0.329 0.829
161 | 2
162 | conf 40
163 | H 0.294 0.083 0.002
164 | F 0.373 -0.322 0.820
165 | 2
166 | conf 41
167 | H 0.312 0.090 -0.003
168 | F 0.353 -0.309 0.823
169 | 2
170 | conf 42
171 | H 0.312 0.064 -0.005
172 | F 0.344 -0.326 0.822
173 | 2
174 | conf 43
175 | H 0.305 0.064 -0.009
176 | F 0.334 -0.311 0.828
177 | 2
178 | conf 44
179 | H 0.293 0.062 -0.007
180 | F 0.337 -0.314 0.831
181 | 2
182 | conf 45
183 | H 0.284 0.063 -0.000
184 | F 0.361 -0.322 0.833
185 | 2
186 | conf 46
187 | H 0.284 0.053 -0.000
188 | F 0.356 -0.309 0.838
189 | 2
190 | conf 47
191 | H 0.294 0.051 -0.003
192 | F 0.355 -0.307 0.840
193 | 2
194 | conf 48
195 | H 0.302 0.058 -0.002
196 | F 0.351 -0.302 0.841
197 | 2
198 | conf 49
199 | H 0.304 0.049 -0.012
200 | F 0.348 -0.295 0.841
201 | 2
202 | conf 50
203 | H 0.306 0.045 -0.007
204 | F 0.341 -0.292 0.847
205 | 2
206 | conf 51
207 | H 0.304 0.046 0.003
208 | F 0.351 -0.295 0.848
209 | 2
210 | conf 52
211 | H 0.307 0.048 0.001
212 | F 0.354 -0.292 0.846
213 | 2
214 | conf 53
215 | H 0.302 0.041 0.001
216 | F 0.359 -0.290 0.851
217 | 2
218 | conf 54
219 | H 0.309 0.042 -0.002
220 | F 0.356 -0.293 0.847
221 | 2
222 | conf 55
223 | H 0.313 0.038 -0.007
224 | F 0.357 -0.302 0.841
225 | 2
226 | conf 56
227 | H 0.314 0.044 0.001
228 | F 0.347 -0.316 0.839
229 | 2
230 | conf 57
231 | H 0.312 0.041 -0.008
232 | F 0.358 -0.324 0.829
233 | 2
234 | conf 58
235 | H 0.304 0.037 -0.012
236 | F 0.355 -0.328 0.831
237 | 2
238 | conf 59
239 | H 0.310 0.027 -0.017
240 | F 0.358 -0.319 0.832
241 | 2
242 | conf 60
243 | H 0.313 0.024 -0.015
244 | F 0.357 -0.317 0.835
245 | 2
246 | conf 61
247 | H 0.314 0.026 -0.011
248 | F 0.355 -0.310 0.839
249 | 2
250 | conf 62
251 | H 0.315 0.032 -0.010
252 | F 0.354 -0.302 0.841
253 | 2
254 | conf 63
255 | H 0.319 0.028 -0.005
256 | F 0.355 -0.302 0.849
257 | 2
258 | conf 64
259 | H 0.318 0.029 -0.006
260 | F 0.356 -0.302 0.853
261 | 2
262 | conf 65
263 | H 0.325 0.038 0.000
264 | F 0.347 -0.305 0.852
265 | 2
266 | conf 66
267 | H 0.330 0.046 0.006
268 | F 0.347 -0.300 0.855
269 | 2
270 | conf 67
271 | H 0.323 0.060 0.007
272 | F 0.346 -0.296 0.851
273 | 2
274 | conf 68
275 | H 0.328 0.070 0.008
276 | F 0.346 -0.294 0.847
277 | 2
278 | conf 69
279 | H 0.318 0.078 0.009
280 | F 0.352 -0.297 0.837
281 | 2
282 | conf 70
283 | H 0.323 0.076 0.008
284 | F 0.353 -0.293 0.839
285 | 2
286 | conf 71
287 | H 0.319 0.074 0.010
288 | F 0.340 -0.299 0.840
289 | 2
290 | conf 72
291 | H 0.325 0.070 0.009
292 | F 0.336 -0.298 0.841
293 | 2
294 | conf 73
295 | H 0.324 0.067 0.014
296 | F 0.329 -0.299 0.846
297 | 2
298 | conf 74
299 | H 0.322 0.064 0.018
300 | F 0.326 -0.306 0.854
301 | 2
302 | conf 75
303 | H 0.315 0.070 0.017
304 | F 0.324 -0.310 0.852
305 | 2
306 | conf 76
307 | H 0.318 0.065 0.012
308 | F 0.326 -0.312 0.849
309 | 2
310 | conf 77
311 | H 0.328 0.074 0.011
312 | F 0.326 -0.311 0.845
313 | 2
314 | conf 78
315 | H 0.331 0.074 0.006
316 | F 0.320 -0.310 0.840
317 | 2
318 | conf 79
319 | H 0.336 0.070 0.006
320 | F 0.319 -0.307 0.843
321 | 2
322 | conf 80
323 | H 0.334 0.071 0.008
324 | F 0.323 -0.303 0.847
325 | 2
326 | conf 81
327 | H 0.336 0.074 0.012
328 | F 0.322 -0.294 0.853
329 | 2
330 | conf 82
331 | H 0.333 0.078 0.013
332 | F 0.327 -0.282 0.857
333 | 2
334 | conf 83
335 | H 0.338 0.083 0.010
336 | F 0.332 -0.283 0.857
337 | 2
338 | conf 84
339 | H 0.330 0.078 0.013
340 | F 0.327 -0.274 0.855
341 | 2
342 | conf 85
343 | H 0.326 0.076 0.008
344 | F 0.326 -0.276 0.850
345 | 2
346 | conf 86
347 | H 0.326 0.071 0.003
348 | F 0.331 -0.274 0.853
349 | 2
350 | conf 87
351 | H 0.323 0.074 -0.000
352 | F 0.325 -0.277 0.846
353 | 2
354 | conf 88
355 | H 0.325 0.068 -0.001
356 | F 0.318 -0.278 0.844
357 | 2
358 | conf 89
359 | H 0.325 0.069 -0.000
360 | F 0.316 -0.282 0.843
361 | 2
362 | conf 90
363 | H 0.328 0.061 -0.005
364 | F 0.322 -0.280 0.845
365 | 2
366 | conf 91
367 | H 0.327 0.064 -0.009
368 | F 0.320 -0.276 0.843
369 | 2
370 | conf 92
371 | H 0.329 0.060 -0.013
372 | F 0.322 -0.267 0.843
373 | 2
374 | conf 93
375 | H 0.331 0.059 -0.024
376 | F 0.333 -0.255 0.838
377 | 2
378 | conf 94
379 | H 0.341 0.061 -0.022
380 | F 0.336 -0.257 0.839
381 | 2
382 | conf 95
383 | H 0.346 0.061 -0.020
384 | F 0.330 -0.254 0.837
385 | 2
386 | conf 96
387 | H 0.354 0.063 -0.020
388 | F 0.333 -0.254 0.841
389 | 2
390 | conf 97
391 | H 0.352 0.058 -0.019
392 | F 0.327 -0.256 0.839
393 | 2
394 | conf 98
395 | H 0.349 0.050 -0.029
396 | F 0.332 -0.258 0.840
397 | 2
398 | conf 99
399 | H 0.351 0.045 -0.031
400 | F 0.331 -0.255 0.840
401 | 2
402 | conf 100
403 | H 0.351 0.045 -0.031
404 | F 0.331 -0.255 0.840
405 |
--------------------------------------------------------------------------------
/data/mm/ch2o.log:
--------------------------------------------------------------------------------
1 |
2 | -------- Energy Values --------
3 | component [kcal/mol]
4 | -------------------------------
5 | Total | 0.3569
6 | Kinetic | 0.0000
7 | Potential | 0.3569
8 | Non-bonded | 0.0000
9 | Bonded | 0.3569
10 | Boundary | 0.0000
11 | van der Waals | 0.0000
12 | Electrostatic | 0.0000
13 | Bonds | 0.3503
14 | Angles | 0.0066
15 | Torsions | 0.0000
16 | Out-of-planes | 0.0000
17 |
18 | -------- Molecular Geometry and Non-bonded Parameters ---------
19 | type x y z q ro/2 eps
20 | ---------------------------------------------------------------
21 | 1 | C1 -1.0483 1.6715 -1.4413 0.6000 1.9080 0.0860
22 | 2 | O1 -2.2353 1.4309 -1.2631 -0.8000 1.6612 0.2100
23 | 3 | H1 -0.5167 1.3623 -2.3557 0.1000 1.2870 0.0157
24 | 4 | H1 -0.4409 2.2115 -0.6988 0.1000 1.2870 0.0157
25 |
26 | ------------------ Bond Length Data -------------------
27 | k_b r_eq r_ij types energy atoms
28 | -------------------------------------------------------
29 | 1 | 570.00 1.2290 1.2241 (C1-O1) 0.0136 (1-2)
30 | 2 | 367.00 1.0800 1.1020 (C1-H1) 0.1772 (1-3)
31 | 3 | 367.00 1.0800 1.1008 (C1-H1) 0.1594 (1-4)
32 |
33 | ------------------- Bond Angle Data --------------------
34 | k_a a_eq a_ijk types energy atoms
35 | --------------------------------------------------------
36 | 1 | 80.00 122.500 122.234 (O1-C1-H1) 0.0017 (2-1-3)
37 | 2 | 80.00 122.500 122.228 (O1-C1-H1) 0.0018 (2-1-4)
38 | 3 | 35.00 115.000 115.539 (H1-C1-H1) 0.0031 (3-1-4)
39 |
40 | No Torsion Angles Detected
41 |
42 | -------------- Out-of-plane Angle Data --------------
43 | vn/2 o_ijkl types energy atoms
44 | -----------------------------------------------------
45 | 1 | 10.50 -0.021 (H1-H1-C1-O1) 0.0000 (3-4-1-2)
46 |
--------------------------------------------------------------------------------
/data/mm/co.log:
--------------------------------------------------------------------------------
1 |
2 | -------- Energy Values --------
3 | component [kcal/mol]
4 | -------------------------------
5 | Total | 0.6253
6 | Kinetic | 0.0000
7 | Potential | 0.6253
8 | Non-bonded | 0.0000
9 | Bonded | 0.6253
10 | Boundary | 0.0000
11 | van der Waals | 0.0000
12 | Electrostatic | 0.0000
13 | Bonds | 0.6253
14 | Angles | 0.0000
15 | Torsions | 0.0000
16 | Out-of-planes | 0.0000
17 |
18 | -------- Molecular Geometry and Non-bonded Parameters ---------
19 | type x y z q ro/2 eps
20 | ---------------------------------------------------------------
21 | 1 | C1 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
22 | 2 | O1 0.0000 0.0000 1.1060 0.0000 0.0000 0.0000
23 |
24 | ------------------ Bond Length Data -------------------
25 | k_b r_eq r_ij types energy atoms
26 | -------------------------------------------------------
27 | 1 | 1292.00 1.1280 1.1060 (C1-O1) 0.6253 (1-2)
28 |
29 | No Bond Angles Detected
30 |
31 | No Torsion Angles Detected
32 |
33 | No Out-of-plane Angles Detected
34 |
--------------------------------------------------------------------------------
/data/mm/ethane.log:
--------------------------------------------------------------------------------
1 |
2 | -------- Energy Values --------
3 | component [kcal/mol]
4 | -------------------------------
5 | Total | 0.2846
6 | Kinetic | 0.0000
7 | Potential | 0.2846
8 | Non-bonded | 0.0000
9 | Bonded | 0.2846
10 | Boundary | 0.0000
11 | van der Waals | 0.0000
12 | Electrostatic | 0.0000
13 | Bonds | 0.0956
14 | Angles | 0.1886
15 | Torsions | 0.0004
16 | Out-of-planes | 0.0000
17 |
18 | -------- Molecular Geometry and Non-bonded Parameters ---------
19 | type x y z q ro/2 eps
20 | ---------------------------------------------------------------
21 | 1 | CT -5.7154 2.8978 0.2542 -0.6300 1.9080 0.1094
22 | 2 | CT -4.5451 2.2596 -0.4587 -0.6300 1.9080 0.1094
23 | 3 | HC -5.3676 3.6596 0.9583 0.2100 1.4870 0.0157
24 | 4 | HC -6.2815 2.1464 0.8124 0.2100 1.4870 0.0157
25 | 5 | HC -6.3895 3.3743 -0.4637 0.2100 1.4870 0.0157
26 | 6 | HC -3.8756 1.7762 0.2590 0.2100 1.4870 0.0157
27 | 7 | HC -3.9743 3.0124 -1.0103 0.2100 1.4870 0.0157
28 | 8 | HC -4.8928 1.5038 -1.1689 0.2100 1.4870 0.0157
29 |
30 | ------------------ Bond Length Data -------------------
31 | k_b r_eq r_ij types energy atoms
32 | -------------------------------------------------------
33 | 1 | 310.00 1.5260 1.5117 (CT-CT) 0.0634 (1-2)
34 | 2 | 340.00 1.0900 1.0940 (CT-HC) 0.0056 (1-3)
35 | 3 | 340.00 1.0900 1.0939 (CT-HC) 0.0051 (1-4)
36 | 4 | 340.00 1.0900 1.0940 (CT-HC) 0.0055 (1-5)
37 | 5 | 340.00 1.0900 1.0941 (CT-HC) 0.0056 (2-6)
38 | 6 | 340.00 1.0900 1.0939 (CT-HC) 0.0053 (2-7)
39 | 7 | 340.00 1.0900 1.0939 (CT-HC) 0.0051 (2-8)
40 |
41 | ------------------- Bond Angle Data --------------------
42 | k_a a_eq a_ijk types energy atoms
43 | --------------------------------------------------------
44 | 1 | 50.00 109.500 110.540 (CT-CT-HC) 0.0165 (1-2-6)
45 | 2 | 50.00 109.500 110.566 (CT-CT-HC) 0.0173 (1-2-7)
46 | 3 | 50.00 109.500 110.596 (CT-CT-HC) 0.0183 (1-2-8)
47 | 4 | 50.00 109.500 110.566 (CT-CT-HC) 0.0173 (2-1-3)
48 | 5 | 50.00 109.500 110.568 (CT-CT-HC) 0.0174 (2-1-4)
49 | 6 | 50.00 109.500 110.573 (CT-CT-HC) 0.0175 (2-1-5)
50 | 7 | 35.00 109.500 108.332 (HC-CT-HC) 0.0146 (3-1-4)
51 | 8 | 35.00 109.500 108.355 (HC-CT-HC) 0.0140 (3-1-5)
52 | 9 | 35.00 109.500 108.368 (HC-CT-HC) 0.0137 (4-1-5)
53 | 10 | 35.00 109.500 108.396 (HC-CT-HC) 0.0130 (6-2-7)
54 | 11 | 35.00 109.500 108.368 (HC-CT-HC) 0.0137 (6-2-8)
55 | 12 | 35.00 109.500 108.295 (HC-CT-HC) 0.0155 (7-2-8)
56 |
57 | ---------------------- Torsion Angle Data -----------------------
58 | vn/2 gamma t_ijkl n p types energy atoms
59 | -----------------------------------------------------------------
60 | 1 | 1.40 0.0 60.460 3 9 (HC-CT-CT-HC) 0.0000 (3-1-2-6)
61 | 2 | 1.40 0.0 -59.575 3 9 (HC-CT-CT-HC) 0.0000 (3-1-2-7)
62 | 3 | 1.40 0.0 -179.521 3 9 (HC-CT-CT-HC) 0.0000 (3-1-2-8)
63 | 4 | 1.40 0.0 -59.513 3 9 (HC-CT-CT-HC) 0.0001 (4-1-2-6)
64 | 5 | 1.40 0.0 -179.548 3 9 (HC-CT-CT-HC) 0.0000 (4-1-2-7)
65 | 6 | 1.40 0.0 60.507 3 9 (HC-CT-CT-HC) 0.0001 (4-1-2-8)
66 | 7 | 1.40 0.0 -179.535 3 9 (HC-CT-CT-HC) 0.0000 (5-1-2-6)
67 | 8 | 1.40 0.0 60.430 3 9 (HC-CT-CT-HC) 0.0000 (5-1-2-7)
68 | 9 | 1.40 0.0 -59.515 3 9 (HC-CT-CT-HC) 0.0001 (5-1-2-8)
69 |
70 | No Out-of-plane Angles Detected
71 |
--------------------------------------------------------------------------------
/data/mm/h2o.log:
--------------------------------------------------------------------------------
1 |
2 | -------- Energy Values --------
3 | component [kcal/mol]
4 | -------------------------------
5 | Total | 0.9279
6 | Kinetic | 0.0000
7 | Potential | 0.9279
8 | Non-bonded | 0.0000
9 | Bonded | 0.9279
10 | Boundary | 0.0000
11 | van der Waals | 0.0000
12 | Electrostatic | 0.0000
13 | Bonds | 0.1812
14 | Angles | 0.7467
15 | Torsions | 0.0000
16 | Out-of-planes | 0.0000
17 |
18 | -------- Molecular Geometry and Non-bonded Parameters ---------
19 | type x y z q ro/2 eps
20 | ---------------------------------------------------------------
21 | 1 | OW 0.5389 0.6557 0.0000 -0.8140 1.7683 0.1520
22 | 2 | HW 1.5089 0.6557 0.0000 0.4070 0.0001 0.0000
23 | 3 | HW 0.2156 1.5697 -0.0301 0.4070 0.0001 0.0000
24 |
25 | ------------------ Bond Length Data -------------------
26 | k_b r_eq r_ij types energy atoms
27 | -------------------------------------------------------
28 | 1 | 553.00 0.9572 0.9700 (OW-HW) 0.0906 (1-2)
29 | 2 | 553.00 0.9572 0.9700 (OW-HW) 0.0906 (1-3)
30 |
31 | ------------------- Bond Angle Data --------------------
32 | k_a a_eq a_ijk types energy atoms
33 | --------------------------------------------------------
34 | 1 | 100.00 104.520 109.471 (HW-OW-HW) 0.7467 (2-1-3)
35 |
36 | No Torsion Angles Detected
37 |
38 | No Out-of-plane Angles Detected
39 |
--------------------------------------------------------------------------------
/data/mm/h2o_5.log:
--------------------------------------------------------------------------------
1 |
2 | -------- Energy Values --------
3 | component [kcal/mol]
4 | -------------------------------
5 | Total | -35.5963
6 | Kinetic | 0.0000
7 | Potential | -35.5963
8 | Non-bonded | -43.5667
9 | Bonded | 7.9704
10 | Boundary | 0.0000
11 | van der Waals | 11.6838
12 | Electrostatic | -55.2505
13 | Bonds | 3.9988
14 | Angles | 3.9717
15 | Torsions | 0.0000
16 | Out-of-planes | 0.0000
17 |
18 | -------- Molecular Geometry and Non-bonded Parameters ---------
19 | type x y z q ro/2 eps
20 | ---------------------------------------------------------------
21 | 1 | OW -1.8721 1.3262 -0.7203 -0.8140 1.7683 0.1520
22 | 2 | HW -1.7155 0.5495 -0.1235 0.4070 0.0001 0.0000
23 | 3 | HW -2.8379 1.2616 -0.8149 0.4070 0.0001 0.0000
24 | 4 | OW 0.6125 -0.1545 2.5247 -0.8140 1.7683 0.1520
25 | 5 | HW 1.2147 0.3338 1.9056 0.4070 0.0001 0.0000
26 | 6 | HW 0.9969 0.1216 3.3745 0.4070 0.0001 0.0000
27 | 7 | OW -1.5084 -0.7394 0.9717 -0.8140 1.7683 0.1520
28 | 8 | HW -1.4404 -1.7052 1.0662 0.4070 0.0001 0.0000
29 | 9 | HW -0.7994 -0.4664 1.6093 0.4070 0.0001 0.0000
30 | 10 | OW 0.4962 2.6226 -0.8021 -0.8140 1.7683 0.1520
31 | 11 | HW 0.2206 3.3916 -1.3296 0.4070 0.0001 0.0000
32 | 12 | HW -0.3565 2.1158 -0.7935 0.4070 0.0001 0.0000
33 | 13 | OW 2.1475 1.3406 0.8988 -0.8140 1.7683 0.1520
34 | 14 | HW 2.9461 1.4051 0.3473 0.4070 0.0001 0.0000
35 | 15 | HW 1.5208 1.8668 0.3380 0.4070 0.0001 0.0000
36 |
37 | ------------------ Bond Length Data -------------------
38 | k_b r_eq r_ij types energy atoms
39 | -------------------------------------------------------
40 | 1 | 553.00 0.9572 0.9919 (OW-HW) 0.6651 (1-2)
41 | 2 | 553.00 0.9572 0.9726 (OW-HW) 0.1307 (1-3)
42 | 3 | 553.00 0.9572 0.9921 (OW-HW) 0.6751 (4-5)
43 | 4 | 553.00 0.9572 0.9727 (OW-HW) 0.1330 (4-6)
44 | 5 | 553.00 0.9572 0.9728 (OW-HW) 0.1350 (7-8)
45 | 6 | 553.00 0.9572 0.9918 (OW-HW) 0.6632 (7-9)
46 | 7 | 553.00 0.9572 0.9724 (OW-HW) 0.1277 (10-11)
47 | 8 | 553.00 0.9572 0.9919 (OW-HW) 0.6665 (10-12)
48 | 9 | 553.00 0.9572 0.9726 (OW-HW) 0.1314 (13-14)
49 | 10 | 553.00 0.9572 0.9920 (OW-HW) 0.6710 (13-15)
50 |
51 | ------------------- Bond Angle Data --------------------
52 | k_a a_eq a_ijk types energy atoms
53 | --------------------------------------------------------
54 | 1 | 100.00 104.520 99.397 (HW-OW-HW) 0.7994 (2-1-3)
55 | 2 | 100.00 104.520 99.533 (HW-OW-HW) 0.7576 (5-4-6)
56 | 3 | 100.00 104.520 99.259 (HW-OW-HW) 0.8432 (8-7-9)
57 | 4 | 100.00 104.520 99.505 (HW-OW-HW) 0.7660 (11-10-12)
58 | 5 | 100.00 104.520 99.378 (HW-OW-HW) 0.8054 (14-13-15)
59 |
60 | No Torsion Angles Detected
61 |
62 | No Out-of-plane Angles Detected
63 |
--------------------------------------------------------------------------------
/data/mm/he2.log:
--------------------------------------------------------------------------------
1 |
2 | -------- Energy Values --------
3 | component [kcal/mol]
4 | -------------------------------
5 | Total | -0.0018
6 | Kinetic | 0.0000
7 | Potential | -0.0018
8 | Non-bonded | -0.0018
9 | Bonded | 0.0000
10 | Boundary | 0.0000
11 | van der Waals | -0.0018
12 | Electrostatic | 0.0000
13 | Bonds | 0.0000
14 | Angles | 0.0000
15 | Torsions | 0.0000
16 | Out-of-planes | 0.0000
17 |
18 | -------- Molecular Geometry and Non-bonded Parameters ---------
19 | type x y z q ro/2 eps
20 | ---------------------------------------------------------------
21 | 1 | He 0.0000 0.0000 0.0000 0.0000 1.1810 0.0100
22 | 2 | He 0.0000 0.0000 3.5000 0.0000 1.1810 0.0100
23 |
24 | No Bonds Detected
25 |
26 | No Bond Angles Detected
27 |
28 | No Torsion Angles Detected
29 |
30 | No Out-of-plane Angles Detected
31 |
--------------------------------------------------------------------------------
/data/mm/he20.log:
--------------------------------------------------------------------------------
1 |
2 | -------- Energy Values --------
3 | component [kcal/mol]
4 | -------------------------------
5 | Total | 0.4784
6 | Kinetic | 0.0000
7 | Potential | 0.4784
8 | Non-bonded | 0.4784
9 | Bonded | 0.0000
10 | Boundary | 0.0000
11 | van der Waals | 0.4784
12 | Electrostatic | 0.0000
13 | Bonds | 0.0000
14 | Angles | 0.0000
15 | Torsions | 0.0000
16 | Out-of-planes | 0.0000
17 |
18 | -------- Molecular Geometry and Non-bonded Parameters ---------
19 | type x y z q ro/2 eps
20 | ---------------------------------------------------------------
21 | 1 | He 0.3756 -1.8677 -2.8885 0.0000 1.1810 0.1000
22 | 2 | He 2.6102 1.2480 1.2027 0.0000 1.1810 0.1000
23 | 3 | He -2.3448 -2.9321 5.3122 0.0000 1.1810 0.1000
24 | 4 | He -1.4708 -0.7909 1.5448 0.0000 1.1810 0.1000
25 | 5 | He -3.7138 2.8354 5.3693 0.0000 1.1810 0.1000
26 | 6 | He -3.6429 4.5758 1.4821 0.0000 1.1810 0.1000
27 | 7 | He 1.0739 2.1136 -2.9446 0.0000 1.1810 0.1000
28 | 8 | He 3.5671 3.2523 5.4466 0.0000 1.1810 0.1000
29 | 9 | He -5.6487 -1.9286 4.1479 0.0000 1.1810 0.1000
30 | 10 | He 1.8623 0.5922 3.7740 0.0000 1.1810 0.1000
31 | 11 | He 3.9872 -0.0243 3.5196 0.0000 1.1810 0.1000
32 | 12 | He -5.0093 3.4393 -2.5244 0.0000 1.1810 0.1000
33 | 13 | He -2.6236 -0.5757 -0.2888 0.0000 1.1810 0.1000
34 | 14 | He -0.3805 6.3313 3.7419 0.0000 1.1810 0.1000
35 | 15 | He -0.8132 1.8310 4.3618 0.0000 1.1810 0.1000
36 | 16 | He 1.6880 5.2844 1.0861 0.0000 1.1810 0.1000
37 | 17 | He 0.5609 -0.6142 5.5899 0.0000 1.1810 0.1000
38 | 18 | He -2.1493 1.6847 0.0824 0.0000 1.1810 0.1000
39 | 19 | He 0.3350 6.1648 0.2674 0.0000 1.1810 0.1000
40 | 20 | He -2.7153 -3.3987 0.4770 0.0000 1.1810 0.1000
41 |
42 | No Bonds Detected
43 |
44 | No Bond Angles Detected
45 |
46 | No Torsion Angles Detected
47 |
48 | No Out-of-plane Angles Detected
49 |
--------------------------------------------------------------------------------
/data/mm/hf.log:
--------------------------------------------------------------------------------
1 |
2 | -------- Energy Values --------
3 | component [kcal/mol]
4 | -------------------------------
5 | Total | 4.6425
6 | Kinetic | 0.0000
7 | Potential | 4.6425
8 | Non-bonded | 0.0000
9 | Bonded | 4.6425
10 | Boundary | 0.0000
11 | van der Waals | 0.0000
12 | Electrostatic | 0.0000
13 | Bonds | 4.6425
14 | Angles | 0.0000
15 | Torsions | 0.0000
16 | Out-of-planes | 0.0000
17 |
18 | -------- Molecular Geometry and Non-bonded Parameters ---------
19 | type x y z q ro/2 eps
20 | ---------------------------------------------------------------
21 | 1 | H1 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
22 | 2 | F1 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000
23 |
24 | ------------------ Bond Length Data -------------------
25 | k_b r_eq r_ij types energy atoms
26 | -------------------------------------------------------
27 | 1 | 673.90 0.9170 1.0000 (H1-F1) 4.6425 (1-2)
28 |
29 | No Bond Angles Detected
30 |
31 | No Torsion Angles Detected
32 |
33 | No Out-of-plane Angles Detected
34 |
--------------------------------------------------------------------------------
/data/mm/lif.log:
--------------------------------------------------------------------------------
1 |
2 | -------- Energy Values --------
3 | component [kcal/mol]
4 | -------------------------------
5 | Total | -83.0247
6 | Kinetic | 0.0000
7 | Potential | -83.0247
8 | Non-bonded | -83.0247
9 | Bonded | 0.0000
10 | Boundary | 0.0000
11 | van der Waals | -0.0088
12 | Electrostatic | -83.0159
13 | Bonds | 0.0000
14 | Angles | 0.0000
15 | Torsions | 0.0000
16 | Out-of-planes | 0.0000
17 |
18 | -------- Molecular Geometry and Non-bonded Parameters ---------
19 | type x y z q ro/2 eps
20 | ---------------------------------------------------------------
21 | 1 | Li 0.0000 0.0000 0.0000 1.0000 1.1370 0.0183
22 | 2 | F 0.0000 0.0000 4.0000 -1.0000 1.7500 0.0610
23 |
24 | No Bonds Detected
25 |
26 | No Bond Angles Detected
27 |
28 | No Torsion Angles Detected
29 |
30 | No Out-of-plane Angles Detected
31 |
--------------------------------------------------------------------------------
/data/opt/ch2o.dat:
--------------------------------------------------------------------------------
1 | # 1.000e-06 2.000e-04 1.000e-04 2.000e-03 1.000e-03
2 | # iter energy delta_e grad_max grad_rms disp_max disp_rms
3 | 1 0.134936674878 -2.220e-01 6.988e+00 3.970e+00 7.929e-03 3.587e-03
4 | 2 0.032050732219 -1.029e-01 4.103e+00 2.429e+00 7.544e-03 3.936e-03
5 | 3 0.012946183043 -1.910e-02 3.540e+00 1.250e+00 3.922e-03 1.794e-03
6 | 4 0.009606266046 -3.340e-03 1.848e+00 9.749e-01 1.219e-03* 6.488e-04*
7 | 5 0.001435817763 -8.170e-03 1.891e+00 6.601e-01 2.008e-03 1.351e-03
8 | 6 0.000242059290 -1.194e-03 4.602e-01 1.617e-01 4.120e-04* 3.004e-04*
9 | 7 0.000233264907 -8.794e-06 5.244e-01 1.823e-01 3.823e-05* 2.541e-05*
10 | 8 0.000046165180 -1.871e-04 1.601e-01 9.448e-02 3.076e-04* 1.944e-04*
11 | 9 0.000021682970 -2.448e-05 9.346e-02 4.560e-02 5.096e-05* 5.101e-05*
12 | 10 0.000017266765 -4.416e-06 1.163e-01 5.543e-02 3.771e-05* 2.461e-05*
13 | 11 0.000003738063 -1.353e-05 3.609e-02 1.961e-02 6.055e-05* 3.598e-05*
14 | 12 0.000000412046 -3.326e-06 1.713e-02 7.164e-03 6.502e-05* 2.874e-05*
15 | 13 0.000000335514 -7.653e-08* 1.528e-02 6.482e-03 8.064e-06* 3.951e-06*
16 | 14 0.000000120505 -2.150e-07* 7.728e-03 3.873e-03 6.901e-06* 4.875e-06*
17 | 15 0.000000039375 -8.113e-08* 4.731e-03 2.418e-03 7.309e-06* 4.375e-06*
18 | 16 0.000000017706 -2.167e-08* 2.839e-03 1.248e-03 2.542e-06* 1.298e-06*
19 | 17 0.000000003231 -1.448e-08* 2.007e-03 7.123e-04 3.874e-06* 1.833e-06*
20 | 18 0.000000001658 -1.573e-09* 7.725e-04 4.419e-04 1.122e-06* 6.107e-07*
21 | 19 0.000000000354 -1.304e-09* 6.552e-04 2.625e-04 7.642e-07* 4.483e-07*
22 | 20 0.000000000131 -2.229e-10* 2.543e-04 1.268e-04 2.266e-07* 1.599e-07*
23 | 21 0.000000000094 -3.692e-11* 2.097e-04 9.278e-05* 8.789e-08* 6.929e-08*
24 | 22 0.000000000035 -5.940e-11* 1.432e-04* 8.433e-05* 1.566e-07* 1.058e-07*
25 |
--------------------------------------------------------------------------------
/data/opt/ch2o.xyz:
--------------------------------------------------------------------------------
1 | 4
2 | iter 1
3 | C -1.04039150 1.67297033 -1.44273591
4 | O -2.23745382 1.43042794 -1.26280341
5 | H -0.51946468 1.36436533 -2.35010844
6 | H -0.44390000 2.20839640 -0.70332224
7 | 4
8 | iter 2
9 | C -1.04329539 1.67240013 -1.44234557
10 | O -2.23135203 1.43160739 -1.26380885
11 | H -0.52084134 1.36773912 -2.34256443
12 | H -0.44572124 2.20441335 -0.71025116
13 | 4
14 | iter 3
15 | C -1.04232203 1.67263063 -1.44247339
16 | O -2.23086896 1.43166866 -1.26393957
17 | H -0.52145102 1.36952169 -2.33864247
18 | H -0.44656799 2.20233901 -0.71391457
19 | 4
20 | iter 4
21 | C -1.04169033 1.67278077 -1.44254578
22 | O -2.23172049 1.43147899 -1.26383880
23 | H -0.52130571 1.37016765 -2.33742341
24 | H -0.44649348 2.20173259 -0.71516201
25 | 4
26 | iter 5
27 | C -1.04265952 1.67263059 -1.44235492
28 | O -2.23475381 1.43083037 -1.26343503
29 | H -0.51929751 1.37107907 -2.33670010
30 | H -0.44449915 2.20161997 -0.71647995
31 | 4
32 | iter 6
33 | C -1.04348984 1.67245132 -1.44225669
34 | O -2.23473351 1.43083550 -1.26343455
35 | H -0.51889946 1.37114691 -2.33678408
36 | H -0.44408720 2.20172627 -0.71649468
37 | 4
38 | iter 7
39 | C -1.04355582 1.67243691 -1.44224928
40 | O -2.23474302 1.43083372 -1.26343268
41 | H -0.51886219 1.37115376 -2.33679094
42 | H -0.44404897 2.20173561 -0.71649711
43 | 4
44 | iter 8
45 | C -1.04370257 1.67239972 -1.44224622
46 | O -2.23520797 1.43074205 -1.26335629
47 | H -0.51855458 1.37123194 -2.33680413
48 | H -0.44374489 2.20178628 -0.71656337
49 | 4
50 | iter 9
51 | C -1.04365160 1.67241469 -1.44224559
52 | O -2.23534032 1.43071501 -1.26333650
53 | H -0.51850884 1.37126382 -2.33676543
54 | H -0.44370924 2.20176648 -0.71662247
55 | 4
56 | iter 10
57 | C -1.04364234 1.67241990 -1.44224090
58 | O -2.23538131 1.43070659 -1.26333038
59 | H -0.51848891 1.37128810 -2.33672772
60 | H -0.44369744 2.20174541 -0.71667099
61 | 4
62 | iter 11
63 | C -1.04370063 1.67240927 -1.44223035
64 | O -2.23534961 1.43071349 -1.26333400
65 | H -0.51847080 1.37132330 -2.33666717
66 | H -0.44368895 2.20171395 -0.71673847
67 | 4
68 | iter 12
69 | C -1.04370584 1.67240401 -1.44223834
70 | O -2.23533650 1.43071748 -1.26333320
71 | H -0.51847196 1.37135541 -2.33660215
72 | H -0.44369570 2.20168310 -0.71679631
73 | 4
74 | iter 13
75 | C -1.04370560 1.67240438 -1.44223779
76 | O -2.23533789 1.43071722 -1.26333292
77 | H -0.51847071 1.37135978 -2.33659409
78 | H -0.44369580 2.20167862 -0.71680520
79 | 4
80 | iter 14
81 | C -1.04370605 1.67240734 -1.44223165
82 | O -2.23534939 1.43071436 -1.26333224
83 | H -0.51846381 1.37135956 -2.33659835
84 | H -0.44369076 2.20167874 -0.71680776
85 | 4
86 | iter 15
87 | C -1.04371176 1.67240606 -1.44223106
88 | O -2.23535820 1.43071262 -1.26333080
89 | H -0.51845650 1.37136115 -2.33659923
90 | H -0.44368354 2.20168016 -0.71680892
91 | 4
92 | iter 16
93 | C -1.04371290 1.67240461 -1.44223333
94 | O -2.23535883 1.43071273 -1.26333024
95 | H -0.51845589 1.37136259 -2.33659669
96 | H -0.44368238 2.20168007 -0.71680974
97 | 4
98 | iter 17
99 | C -1.04371270 1.67240480 -1.44223309
100 | O -2.23535876 1.43071272 -1.26333028
101 | H -0.51845578 1.37136455 -2.33659281
102 | H -0.44368276 2.20167793 -0.71681381
103 | 4
104 | iter 18
105 | C -1.04371349 1.67240465 -1.44223294
106 | O -2.23535863 1.43071275 -1.26333030
107 | H -0.51845539 1.37136522 -2.33659169
108 | H -0.44368250 2.20167738 -0.71681506
109 | 4
110 | iter 19
111 | C -1.04371417 1.67240443 -1.44223302
112 | O -2.23535940 1.43071261 -1.26333015
113 | H -0.51845469 1.37136529 -2.33659194
114 | H -0.44368174 2.20167767 -0.71681489
115 | 4
116 | iter 20
117 | C -1.04371418 1.67240444 -1.44223298
118 | O -2.23535984 1.43071252 -1.26333010
119 | H -0.51845447 1.37136533 -2.33659199
120 | H -0.44368152 2.20167771 -0.71681493
121 | 4
122 | iter 21
123 | C -1.04371415 1.67240447 -1.44223295
124 | O -2.23536002 1.43071248 -1.26333007
125 | H -0.51845438 1.37136535 -2.33659198
126 | H -0.44368144 2.20167770 -0.71681500
127 | 4
128 | iter 22
129 | C -1.04371418 1.67240451 -1.44223286
130 | O -2.23536011 1.43071245 -1.26333008
131 | H -0.51845430 1.37136546 -2.33659182
132 | H -0.44368141 2.20167759 -0.71681524
133 |
--------------------------------------------------------------------------------
/data/opt/co.dat:
--------------------------------------------------------------------------------
1 | # 1.000e-10 2.000e-06 1.000e-06 2.000e-05 1.000e-05
2 | # iter energy delta_e grad_max grad_rms disp_max disp_rms
3 | 1 0.004790403701 -6.205e-01 4.976e+00 2.873e+00 1.004e-02 5.795e-03
4 | 2 0.000336850557 -4.454e-03 1.319e+00 7.618e-01 7.075e-04 4.085e-04
5 | 3 0.000003768767 -3.331e-04 1.396e-01 8.057e-02 2.283e-04 1.318e-04
6 | 4 0.000000039680 -3.729e-06 1.432e-02 8.268e-03 2.423e-05 1.399e-05
7 | 5 0.000000000170 -3.951e-08 9.379e-04 5.415e-04 2.589e-06* 1.495e-06*
8 | 6 0.000000000002 -1.677e-10 1.131e-04 6.528e-05 1.596e-07* 9.215e-08*
9 | 7 0.000000000000 -2.313e-12* 2.885e-05 1.666e-05 1.630e-08* 9.408e-09*
10 | 8 0.000000000000 -1.580e-13* 3.986e-06 2.301e-06 4.812e-09* 2.778e-09*
11 | 9 0.000000000000 -3.071e-15* 1.265e-07* 7.305e-08* 7.468e-10* 4.312e-10*
12 |
--------------------------------------------------------------------------------
/data/opt/co.xyz:
--------------------------------------------------------------------------------
1 | 2
2 | iter 1
3 | C 0.00000000 0.00000000 -0.01003722
4 | O 0.00000000 0.00000000 1.11603722
5 | 2
6 | iter 2
7 | C 0.00000000 0.00000000 -0.01074470
8 | O 0.00000000 0.00000000 1.11674470
9 | 2
10 | iter 3
11 | C 0.00000000 0.00000000 -0.01097300
12 | O 0.00000000 0.00000000 1.11697300
13 | 2
14 | iter 4
15 | C 0.00000000 0.00000000 -0.01099723
16 | O 0.00000000 0.00000000 1.11699723
17 | 2
18 | iter 5
19 | C 0.00000000 0.00000000 -0.01099982
20 | O 0.00000000 0.00000000 1.11699982
21 | 2
22 | iter 6
23 | C 0.00000000 0.00000000 -0.01099998
24 | O 0.00000000 0.00000000 1.11699998
25 | 2
26 | iter 7
27 | C 0.00000000 0.00000000 -0.01099999
28 | O 0.00000000 0.00000000 1.11699999
29 | 2
30 | iter 8
31 | C 0.00000000 0.00000000 -0.01100000
32 | O 0.00000000 0.00000000 1.11700000
33 | 2
34 | iter 9
35 | C 0.00000000 0.00000000 -0.01100000
36 | O 0.00000000 0.00000000 1.11700000
37 |
--------------------------------------------------------------------------------
/data/opt/ethane.dat:
--------------------------------------------------------------------------------
1 | # 1.000e-06 2.000e-04 1.000e-04 2.000e-03 1.000e-03
2 | # iter energy delta_e grad_max grad_rms disp_max disp_rms
3 | 1 0.062800665287 -2.218e-01 2.729e+00 1.333e+00 6.374e-03 2.514e-03
4 | 2 0.047995973842 -1.480e-02 1.426e+00 7.175e-01 1.590e-03* 7.762e-04*
5 | 3 0.045174957227 -2.821e-03 1.929e+00 9.425e-01 7.135e-04* 4.356e-04*
6 | 4 0.016717147543 -2.846e-02 9.687e-01 6.329e-01 5.606e-03 2.879e-03
7 | 5 0.008146024590 -8.571e-03 8.777e-01 6.092e-01 4.037e-03 2.170e-03
8 | 6 0.002523485035 -5.623e-03 9.503e-01 3.769e-01 1.024e-03* 6.875e-04*
9 | 7 0.000852079975 -1.671e-03 2.480e-01 1.172e-01 6.408e-04* 4.754e-04*
10 | 8 0.000835093531 -1.699e-05 1.588e-01 1.011e-01 6.817e-05* 3.968e-05*
11 | 9 0.000761061467 -7.403e-05 1.321e-01 7.978e-02 1.483e-04* 6.843e-05*
12 | 10 0.000576504486 -1.846e-04 2.191e-01 1.021e-01 4.654e-04* 2.231e-04*
13 | 11 0.000493759293 -8.275e-05 6.097e-02 3.072e-02 1.209e-04* 6.740e-05*
14 | 12 0.000441747826 -5.201e-05 7.653e-02 3.910e-02 2.783e-04* 1.352e-04*
15 | 13 0.000419797396 -2.195e-05 6.830e-02 3.364e-02 7.262e-05* 5.478e-05*
16 | 14 0.000384810307 -3.499e-05 4.651e-02 3.478e-02 2.012e-04* 1.317e-04*
17 | 15 0.000373496333 -1.131e-05 2.821e-02 1.981e-02 6.401e-05* 3.222e-05*
18 | 16 0.000371201485 -2.295e-06 8.220e-02 3.080e-02 4.225e-05* 2.150e-05*
19 | 17 0.000356051224 -1.515e-05 5.513e-02 2.149e-02 7.482e-05* 4.736e-05*
20 | 18 0.000347463811 -8.587e-06 1.015e-01 4.127e-02 1.105e-04* 6.390e-05*
21 | 19 0.000329709000 -1.775e-05 3.630e-02 1.641e-02 5.386e-05* 3.779e-05*
22 | 20 0.000324949797 -4.759e-06 6.194e-02 2.923e-02 4.630e-05* 2.948e-05*
23 | 21 0.000307197584 -1.775e-05 3.126e-02 1.874e-02 1.119e-04* 5.860e-05*
24 | 22 0.000296392102 -1.081e-05 7.846e-02 4.239e-02 1.785e-04* 9.116e-05*
25 | 23 0.000277751260 -1.864e-05 3.145e-02 1.669e-02 6.871e-05* 4.273e-05*
26 | 24 0.000268219430 -9.532e-06 8.175e-02 2.982e-02 9.739e-05* 5.321e-05*
27 | 25 0.000258221593 -9.998e-06 2.224e-02 1.246e-02 4.512e-05* 3.283e-05*
28 | 26 0.000257290971 -9.306e-07* 4.806e-02 2.084e-02 2.187e-05* 1.440e-05*
29 | 27 0.000226526505 -3.076e-05 5.391e-02 3.988e-02 3.153e-04* 1.868e-04*
30 | 28 0.000209289459 -1.724e-05 1.790e-02 1.135e-02 8.528e-05* 4.940e-05*
31 | 29 0.000208871324 -4.181e-07* 3.571e-02 1.566e-02 1.214e-05* 6.876e-06*
32 | 30 0.000204861732 -4.010e-06 9.319e-02 3.025e-02 9.046e-05* 4.915e-05*
33 | 31 0.000195367644 -9.494e-06 2.744e-02 1.068e-02 5.242e-05* 3.276e-05*
34 | 32 0.000195018404 -3.492e-07* 3.739e-02 1.493e-02 1.120e-05* 6.884e-06*
35 | 33 0.000185051664 -9.967e-06 4.017e-02 2.759e-02 1.570e-04* 9.648e-05*
36 | 34 0.000176294618 -8.757e-06 2.389e-02 1.105e-02 5.718e-05* 3.240e-05*
37 | 35 0.000175690504 -6.041e-07* 3.796e-02 1.523e-02 1.768e-05* 1.036e-05*
38 | 36 0.000171641592 -4.049e-06 4.025e-02 1.306e-02 5.768e-05* 3.189e-05*
39 | 37 0.000167095928 -4.546e-06 3.424e-02 1.958e-02 8.334e-05* 4.916e-05*
40 | 38 0.000160526013 -6.570e-06 1.893e-02 9.832e-03 5.736e-05* 3.985e-05*
41 | 39 0.000159536951 -9.891e-07* 4.471e-02 1.719e-02 3.507e-05* 2.341e-05*
42 | 40 0.000153239781 -6.297e-06 2.978e-02 1.652e-02 1.010e-04* 5.673e-05*
43 | 41 0.000146611930 -6.628e-06 3.369e-02 1.851e-02 1.467e-04* 8.275e-05*
44 | 42 0.000139567281 -7.045e-06 6.626e-02 1.880e-02 1.576e-04* 9.218e-05*
45 | 43 0.000133828508 -5.739e-06 3.674e-02 1.478e-02 1.244e-04* 7.691e-05*
46 | 44 0.000130802698 -3.026e-06 1.772e-02 9.995e-03 7.575e-05* 4.610e-05*
47 | 45 0.000129604291 -1.198e-06 1.212e-02 8.240e-03 4.348e-05* 2.447e-05*
48 | 46 0.000128708802 -8.955e-07* 1.407e-02 8.596e-03 3.960e-05* 2.185e-05*
49 | 47 0.000127949895 -7.589e-07* 7.445e-03 3.089e-03 2.028e-05* 1.144e-05*
50 | 48 0.000127853193 -9.670e-08* 1.511e-02 4.602e-03 9.350e-06* 5.231e-06*
51 | 49 0.000127351286 -5.019e-07* 5.612e-03 4.110e-03 2.441e-05* 1.481e-05*
52 | 50 0.000127054546 -2.967e-07* 5.796e-03 4.006e-03 1.688e-05* 1.040e-05*
53 | 51 0.000126593779 -4.608e-07* 2.128e-02 7.016e-03 4.340e-05* 2.508e-05*
54 | 52 0.000126113518 -4.803e-07* 5.890e-03 2.003e-03 1.459e-05* 8.628e-06*
55 | 53 0.000126083376 -3.014e-08* 6.879e-03 2.857e-03 4.270e-06* 2.577e-06*
56 | 54 0.000125967172 -1.162e-07* 5.204e-03 3.670e-03 1.247e-05* 7.539e-06*
57 | 55 0.000125789092 -1.781e-07* 3.940e-03 2.107e-03 9.471e-06* 5.957e-06*
58 | 56 0.000125748910 -4.018e-08* 8.173e-03 3.188e-03 6.806e-06* 4.211e-06*
59 | 57 0.000125611473 -1.374e-07* 5.428e-03 1.940e-03 9.062e-06* 5.170e-06*
60 | 58 0.000125553849 -5.762e-08* 3.790e-03 2.399e-03 7.096e-06* 4.067e-06*
61 | 59 0.000125471673 -8.218e-08* 2.748e-03 1.771e-03 6.824e-06* 4.057e-06*
62 | 60 0.000125417573 -5.410e-08* 8.311e-03 2.978e-03 9.071e-06* 5.437e-06*
63 | 61 0.000125324438 -9.313e-08* 2.052e-03 1.038e-03 5.160e-06* 3.251e-06*
64 | 62 0.000125303421 -2.102e-08* 3.189e-03 1.549e-03 3.285e-06* 1.974e-06*
65 | 63 0.000125244351 -5.907e-08* 3.533e-03 1.962e-03 9.046e-06* 4.990e-06*
66 | 64 0.000125122500 -1.219e-07* 4.647e-03 2.293e-03 1.680e-05* 1.013e-05*
67 | 65 0.000124956732 -1.658e-07* 2.577e-03 2.135e-03 2.391e-05* 1.416e-05*
68 | 66 0.000124837720 -1.190e-07* 2.808e-03 2.421e-03 2.639e-05* 1.547e-05*
69 | 67 0.000124733082 -1.046e-07* 4.501e-03 1.553e-03 2.525e-05* 1.464e-05*
70 | 68 0.000124717330 -1.575e-08* 3.794e-03 1.922e-03 1.270e-05* 7.294e-06*
71 | 69 0.000124681785 -3.554e-08* 1.767e-03 6.346e-04 7.805e-06* 4.720e-06*
72 | 70 0.000124679073 -2.712e-09* 9.303e-04 5.376e-04 1.673e-06* 9.898e-07*
73 | 71 0.000124676552 -2.521e-09* 3.045e-04 2.215e-04 7.506e-07* 4.916e-07*
74 | 72 0.000124676264 -2.878e-10* 5.350e-04 2.349e-04 2.492e-07* 1.766e-07*
75 | 73 0.000124675727 -5.376e-10* 2.891e-04 1.364e-04 3.776e-07* 2.123e-07*
76 | 74 0.000124675536 -1.909e-10* 4.880e-04 1.883e-04 2.914e-07* 1.687e-07*
77 | 75 0.000124675034 -5.019e-10* 2.520e-04 1.093e-04 4.922e-07* 2.414e-07*
78 | 76 0.000124674874 -1.594e-10* 3.422e-04 1.893e-04 3.573e-07* 1.995e-07*
79 | 77 0.000124674294 -5.803e-10* 2.820e-04 1.086e-04 5.474e-07* 3.117e-07*
80 | 78 0.000124674189 -1.049e-10* 5.490e-04 1.994e-04 3.861e-07* 2.102e-07*
81 | 79 0.000124673497 -6.927e-10* 1.475e-04* 1.259e-04 6.988e-07* 4.285e-07*
82 | 80 0.000124673319 -1.776e-10* 2.377e-04 2.349e-04 6.025e-07* 3.416e-07*
83 | 81 0.000124672575 -7.443e-10* 1.606e-04* 9.600e-05* 6.493e-07* 3.688e-07*
84 |
--------------------------------------------------------------------------------
/data/opt/h2o.dat:
--------------------------------------------------------------------------------
1 | # 1.000e-08 2.000e-05 1.000e-05 2.000e-04 1.000e-04
2 | # iter energy delta_e grad_max grad_rms disp_max disp_rms
3 | 1 0.019108264128 -9.088e-01 4.479e+00 2.565e+00 3.039e-02 1.630e-02
4 | 2 0.004443206171 -1.467e-02 1.088e+00 7.919e-01 1.532e-03 1.118e-03
5 | 3 0.003496984615 -9.462e-04 1.421e+00 8.246e-01 4.145e-04 3.203e-04
6 | 4 0.000235094240 -3.262e-03 6.033e-01 3.019e-01 1.609e-03 8.643e-04
7 | 5 0.000044142349 -1.910e-04 2.319e-01 1.407e-01 4.016e-04 2.232e-04
8 | 6 0.000041196724 -2.946e-06 1.875e-01 1.260e-01 3.655e-05* 2.114e-05*
9 | 7 0.000024036450 -1.716e-05 9.896e-02 6.905e-02 3.817e-05* 3.583e-05*
10 | 8 0.000019726195 -4.310e-06 9.865e-02 5.274e-02 2.702e-05* 1.900e-05*
11 | 9 0.000000268241 -1.946e-05 1.295e-02 1.100e-02 1.136e-04* 7.946e-05*
12 | 10 0.000000020449 -2.478e-07 2.979e-03 1.979e-03 8.749e-06* 4.380e-06*
13 | 11 0.000000015648 -4.801e-09* 2.777e-03 1.496e-03 9.121e-07* 4.559e-07*
14 | 12 0.000000013561 -2.087e-09* 2.496e-03 1.485e-03 8.530e-07* 4.317e-07*
15 | 13 0.000000004085 -9.476e-09* 1.733e-03 1.217e-03 1.567e-06* 1.378e-06*
16 | 14 0.000000000797 -3.288e-09* 5.999e-04 3.654e-04 8.659e-07* 4.815e-07*
17 | 15 0.000000000532 -2.656e-10* 5.020e-04 2.908e-04 2.814e-07* 1.534e-07*
18 | 16 0.000000000385 -1.464e-10* 4.063e-04 3.334e-04 2.786e-07* 1.548e-07*
19 | 17 0.000000000011 -3.746e-10* 6.280e-05 4.844e-05 4.254e-07* 2.685e-07*
20 | 18 0.000000000010 -1.092e-13* 6.181e-05 4.880e-05 1.406e-09* 9.222e-10*
21 | 19 0.000000000002 -8.180e-12* 3.111e-05 2.136e-05 6.454e-08* 3.474e-08*
22 | 20 0.000000000001 -8.097e-13* 2.376e-05 2.337e-05 2.114e-08* 1.281e-08*
23 | 21 0.000000000000 -1.391e-12* 4.823e-06* 2.595e-06* 2.428e-08* 1.314e-08*
24 |
--------------------------------------------------------------------------------
/data/opt/h2o.xyz:
--------------------------------------------------------------------------------
1 | 3
2 | iter 1
3 | O 0.52850389 0.64096679 0.00048435
4 | H 1.48890352 0.68081251 -0.00082912
5 | H 0.24596259 1.55923070 -0.02978522
6 | 3
7 | iter 2
8 | O 0.52958810 0.64249843 0.00043386
9 | H 1.48695108 0.68104319 -0.00083673
10 | H 0.24683083 1.55746838 -0.02972713
11 | 3
12 | iter 3
13 | O 0.52977257 0.64275901 0.00042527
14 | H 1.48635211 0.68127097 -0.00084424
15 | H 0.24724531 1.55698002 -0.02971103
16 | 3
17 | iter 4
18 | O 0.52919807 0.64194722 0.00045203
19 | H 1.48531800 0.68261077 -0.00088840
20 | H 0.24885393 1.55645200 -0.02969362
21 | 3
22 | iter 5
23 | O 0.52900300 0.64167155 0.00046111
24 | H 1.48511149 0.68296350 -0.00090003
25 | H 0.24925551 1.55637495 -0.02969108
26 | 3
27 | iter 6
28 | O 0.52898198 0.64164185 0.00046209
29 | H 1.48509595 0.68299676 -0.00090113
30 | H 0.24929206 1.55637140 -0.02969097
31 | 3
32 | iter 7
33 | O 0.52893140 0.64157033 0.00046445
34 | H 1.48511782 0.68303493 -0.00090238
35 | H 0.24932078 1.55640474 -0.02969207
36 | 3
37 | iter 8
38 | O 0.52890705 0.64153588 0.00046559
39 | H 1.48514386 0.68304235 -0.00090263
40 | H 0.24931909 1.55643177 -0.02969296
41 | 3
42 | iter 9
43 | O 0.52894169 0.64158479 0.00046397
44 | H 1.48525746 0.68292535 -0.00089877
45 | H 0.24917085 1.55649985 -0.02969520
46 | 3
47 | iter 10
48 | O 0.52894785 0.64159354 0.00046369
49 | H 1.48525387 0.68292135 -0.00089864
50 | H 0.24916828 1.55649511 -0.02969504
51 | 3
52 | iter 11
53 | O 0.52894850 0.64159445 0.00046366
54 | H 1.48525352 0.68292091 -0.00089863
55 | H 0.24916798 1.55649463 -0.02969503
56 | 3
57 | iter 12
58 | O 0.52894910 0.64159531 0.00046363
59 | H 1.48525334 0.68292040 -0.00089861
60 | H 0.24916756 1.55649429 -0.02969502
61 | 3
62 | iter 13
63 | O 0.52895008 0.64159669 0.00046358
64 | H 1.48525490 0.68291825 -0.00089854
65 | H 0.24916501 1.55649505 -0.02969504
66 | 3
67 | iter 14
68 | O 0.52894966 0.64159610 0.00046360
69 | H 1.48525577 0.68291809 -0.00089853
70 | H 0.24916457 1.55649581 -0.02969507
71 | 3
72 | iter 15
73 | O 0.52894954 0.64159593 0.00046361
74 | H 1.48525605 0.68291801 -0.00089853
75 | H 0.24916440 1.55649606 -0.02969508
76 | 3
77 | iter 16
78 | O 0.52894952 0.64159590 0.00046361
79 | H 1.48525633 0.68291784 -0.00089852
80 | H 0.24916415 1.55649626 -0.02969508
81 | 3
82 | iter 17
83 | O 0.52894982 0.64159632 0.00046359
84 | H 1.48525646 0.68291743 -0.00089851
85 | H 0.24916372 1.55649625 -0.02969508
86 | 3
87 | iter 18
88 | O 0.52894982 0.64159632 0.00046359
89 | H 1.48525646 0.68291743 -0.00089851
90 | H 0.24916371 1.55649625 -0.02969508
91 | 3
92 | iter 19
93 | O 0.52894981 0.64159630 0.00046359
94 | H 1.48525653 0.68291740 -0.00089851
95 | H 0.24916366 1.55649630 -0.02969508
96 | 3
97 | iter 20
98 | O 0.52894981 0.64159631 0.00046359
99 | H 1.48525655 0.68291738 -0.00089851
100 | H 0.24916364 1.55649631 -0.02969508
101 | 3
102 | iter 21
103 | O 0.52894983 0.64159633 0.00046359
104 | H 1.48525655 0.68291736 -0.00089851
105 | H 0.24916362 1.55649631 -0.02969508
106 |
--------------------------------------------------------------------------------
/data/opt/he2.dat:
--------------------------------------------------------------------------------
1 | # 1.000e-10 2.000e-06 1.000e-06 2.000e-05 1.000e-05
2 | # iter energy delta_e grad_max grad_rms disp_max disp_rms
3 | 1 -0.008445925859 -6.646e-03 1.116e-02 6.443e-03 4.661e-01 2.691e-01
4 | 2 -0.009962514432 -1.517e-03 2.889e-03 1.668e-03 9.040e-02 5.219e-02
5 | 3 -0.009997599199 -3.508e-05 7.730e-04 4.463e-04 9.424e-03 5.441e-03
6 | 4 -0.009999949202 -2.350e-06 1.142e-04 6.594e-05 2.633e-03 1.520e-03
7 | 5 -0.009999998382 -4.918e-08 2.043e-05 1.179e-05 3.650e-04 2.107e-04
8 | 6 -0.009999999969 -1.587e-09 2.838e-06 1.638e-06 6.820e-05 3.938e-05
9 | 7 -0.009999999999 -3.005e-11* 5.437e-07* 3.139e-07* 8.888e-06* 5.132e-06*
10 |
--------------------------------------------------------------------------------
/data/opt/he2.xyz:
--------------------------------------------------------------------------------
1 | 2
2 | iter 1
3 | He 0.00000000 0.00000000 0.46610224
4 | He 0.00000000 0.00000000 3.03389776
5 | 2
6 | iter 2
7 | He 0.00000000 0.00000000 0.55649838
8 | He 0.00000000 0.00000000 2.94350162
9 | 2
10 | iter 3
11 | He 0.00000000 0.00000000 0.56592228
12 | He 0.00000000 0.00000000 2.93407772
13 | 2
14 | iter 4
15 | He 0.00000000 0.00000000 0.56855578
16 | He 0.00000000 0.00000000 2.93144422
17 | 2
18 | iter 5
19 | He 0.00000000 0.00000000 0.56892080
20 | He 0.00000000 0.00000000 2.93107920
21 | 2
22 | iter 6
23 | He 0.00000000 0.00000000 0.56898901
24 | He 0.00000000 0.00000000 2.93101099
25 | 2
26 | iter 7
27 | He 0.00000000 0.00000000 0.56899789
28 | He 0.00000000 0.00000000 2.93100211
29 |
--------------------------------------------------------------------------------
/data/opt/hf.dat:
--------------------------------------------------------------------------------
1 | # 1.000e-10 2.000e-06 1.000e-06 2.000e-05 1.000e-05
2 | # iter energy delta_e grad_max grad_rms disp_max disp_rms
3 | 1 0.155296348133 -4.487e+00 2.046e+01 1.181e+01 3.391e-02 1.958e-02
4 | 2 0.008462664842 -1.468e-01 4.776e+00 2.758e+00 5.818e-03 3.359e-03
5 | 3 0.000335933183 -8.127e-03 9.516e-01 5.494e-01 1.419e-03 8.192e-04
6 | 4 0.000020789729 -3.151e-04 2.367e-01 1.367e-01 2.652e-04 1.531e-04
7 | 5 0.000000153085 -2.064e-05 2.031e-02 1.173e-02 8.028e-05 4.635e-05
8 | 6 0.000000010653 -1.424e-07 5.359e-03 3.094e-03 5.548e-06* 3.203e-06*
9 | 7 0.000000000115 -1.054e-08 5.578e-04 3.221e-04 1.781e-06* 1.028e-06*
10 | 8 0.000000000009 -1.065e-10 1.554e-04 8.970e-05 1.493e-07* 8.620e-08*
11 | 9 0.000000000000 -8.918e-12* 9.903e-06 5.717e-06 5.396e-08* 3.115e-08*
12 | 10 0.000000000000 -3.586e-14* 1.177e-06* 6.798e-07* 3.237e-09* 1.869e-09*
13 |
--------------------------------------------------------------------------------
/data/opt/hf.xyz:
--------------------------------------------------------------------------------
1 | 2
2 | iter 1
3 | H 0.00000000 0.00000000 0.03390981
4 | F 0.00000000 0.00000000 0.96609019
5 | 2
6 | iter 2
7 | H 0.00000000 0.00000000 0.03972815
8 | F 0.00000000 0.00000000 0.96027185
9 | 2
10 | iter 3
11 | H 0.00000000 0.00000000 0.04114698
12 | F 0.00000000 0.00000000 0.95885302
13 | 2
14 | iter 4
15 | H 0.00000000 0.00000000 0.04141218
16 | F 0.00000000 0.00000000 0.95858782
17 | 2
18 | iter 5
19 | H 0.00000000 0.00000000 0.04149246
20 | F 0.00000000 0.00000000 0.95850754
21 | 2
22 | iter 6
23 | H 0.00000000 0.00000000 0.04149801
24 | F 0.00000000 0.00000000 0.95850199
25 | 2
26 | iter 7
27 | H 0.00000000 0.00000000 0.04149979
28 | F 0.00000000 0.00000000 0.95850021
29 | 2
30 | iter 8
31 | H 0.00000000 0.00000000 0.04149994
32 | F 0.00000000 0.00000000 0.95850006
33 | 2
34 | iter 9
35 | H 0.00000000 0.00000000 0.04150000
36 | F 0.00000000 0.00000000 0.95850000
37 | 2
38 | iter 10
39 | H 0.00000000 0.00000000 0.04150000
40 | F 0.00000000 0.00000000 0.95850000
41 |
--------------------------------------------------------------------------------
/data/opt/lif.dat:
--------------------------------------------------------------------------------
1 | # 1.000e-06 2.000e-04 1.000e-04 2.000e-03 1.000e-03
2 | # iter energy delta_e grad_max grad_rms disp_max disp_rms
3 | 1 -168.498261664407 -8.547e+01 6.553e+01 3.783e+01 1.034e+00 5.971e-01
4 | 2 -177.597691755212 -9.099e+00 1.767e+01 1.020e+01 9.288e-02 5.363e-02
5 | 3 -177.845037829361 -2.473e-01 1.957e+00 1.130e+00 1.223e-02 7.060e-03
6 | 4 -177.847582770455 -2.545e-03 3.716e-01 2.145e-01 1.091e-03* 6.296e-04*
7 | 5 -177.847674725967 -9.196e-05 5.326e-02 3.075e-02 2.163e-04* 1.249e-04*
8 | 6 -177.847676576716 -1.851e-06 1.036e-02 5.980e-03 2.909e-05* 1.680e-05*
9 | 7 -177.847676647612 -7.090e-08* 1.639e-03 9.463e-04 5.910e-06* 3.412e-06*
10 | 8 -177.847676649352 -1.741e-09* 3.446e-04 1.990e-04 8.774e-07* 5.066e-07*
11 | 9 -177.847676649430 -7.805e-11* 6.032e-05* 3.483e-05* 1.927e-07* 1.113e-07*
12 |
--------------------------------------------------------------------------------
/data/opt/lif.xyz:
--------------------------------------------------------------------------------
1 | 2
2 | iter 1
3 | Li 0.00000000 0.00000000 1.03415428
4 | F 0.00000000 0.00000000 2.96584572
5 | 2
6 | iter 2
7 | Li 0.00000000 0.00000000 1.12703803
8 | F 0.00000000 0.00000000 2.87296197
9 | 2
10 | iter 3
11 | Li 0.00000000 0.00000000 1.13926592
12 | F 0.00000000 0.00000000 2.86073408
13 | 2
14 | iter 4
15 | Li 0.00000000 0.00000000 1.14035648
16 | F 0.00000000 0.00000000 2.85964352
17 | 2
18 | iter 5
19 | Li 0.00000000 0.00000000 1.14057283
20 | F 0.00000000 0.00000000 2.85942717
21 | 2
22 | iter 6
23 | Li 0.00000000 0.00000000 1.14060192
24 | F 0.00000000 0.00000000 2.85939808
25 | 2
26 | iter 7
27 | Li 0.00000000 0.00000000 1.14060783
28 | F 0.00000000 0.00000000 2.85939217
29 | 2
30 | iter 8
31 | Li 0.00000000 0.00000000 1.14060871
32 | F 0.00000000 0.00000000 2.85939129
33 | 2
34 | iter 9
35 | Li 0.00000000 0.00000000 1.14060890
36 | F 0.00000000 0.00000000 2.85939110
37 |
--------------------------------------------------------------------------------
/geom/prm/ch2o.prm:
--------------------------------------------------------------------------------
1 | ATOM 1 C1 -1.04832 1.67147 -1.44129 0.6 1.9080 0.0860
2 | ATOM 2 O1 -2.23526 1.43088 -1.26313 -0.8 1.6612 0.2100
3 | ATOM 3 H1 -0.51674 1.36232 -2.35573 0.1 1.2870 0.0157
4 | ATOM 4 H1 -0.44089 2.21149 -0.69882 0.1 1.2870 0.0157 1.2870 0.0157
5 | BOND 1 2 570.0 1.229
6 | BOND 1 3 367.0 1.080
7 | BOND 1 4 367.0 1.080
8 | ANGLE 2 1 3 80.0 122.5
9 | ANGLE 2 1 4 80.0 122.5
10 | ANGLE 3 1 4 35.0 115.0
11 | OUTOFPLANE 3 4 1 2 10.5
12 |
--------------------------------------------------------------------------------
/geom/prm/co.prm:
--------------------------------------------------------------------------------
1 | ATOM 1 C1 0.0 0.0 0.000 0.0 0.0 0.0
2 | ATOM 2 O1 0.0 0.0 1.106 0.0 0.0 0.0
3 | BOND 1 2 1292.0 1.128
4 |
--------------------------------------------------------------------------------
/geom/prm/ethane.prm:
--------------------------------------------------------------------------------
1 | ATOM 1 CT -5.71541 2.89779 0.25425 -0.6300 1.9080 0.1094
2 | ATOM 2 CT -4.54507 2.25963 -0.45869 -0.6300 1.9080 0.1094
3 | ATOM 3 HC -5.36758 3.65957 0.95826 0.2100 1.4870 0.0157
4 | ATOM 4 HC -6.28153 2.14639 0.81236 0.2100 1.4870 0.0157
5 | ATOM 5 HC -6.38951 3.37429 -0.46369 0.2100 1.4870 0.0157
6 | ATOM 6 HC -3.87563 1.77621 0.25903 0.2100 1.4870 0.0157
7 | ATOM 7 HC -3.97429 3.01236 -1.01033 0.2100 1.4870 0.0157
8 | ATOM 8 HC -4.89281 1.50380 -1.16889 0.2100 1.4870 0.0157
9 | BOND 1 2 310.0 1.526
10 | BOND 1 3 340.0 1.090
11 | BOND 1 4 340.0 1.090
12 | BOND 1 5 340.0 1.090
13 | BOND 2 6 340.0 1.090
14 | BOND 2 7 340.0 1.090
15 | BOND 2 8 340.0 1.090
16 | ANGLE 1 2 6 50.0 109.5
17 | ANGLE 1 2 7 50.0 109.5
18 | ANGLE 1 2 8 50.0 109.5
19 | ANGLE 2 1 3 50.0 109.5
20 | ANGLE 2 1 4 50.0 109.5
21 | ANGLE 2 1 5 50.0 109.5
22 | ANGLE 3 1 4 35.0 109.5
23 | ANGLE 3 1 5 35.0 109.5
24 | ANGLE 4 1 5 35.0 109.5
25 | ANGLE 6 2 7 35.0 109.5
26 | ANGLE 6 2 8 35.0 109.5
27 | ANGLE 7 2 8 35.0 109.5
28 | TORSION 3 1 2 6 1.40 0.0 3 9
29 | TORSION 3 1 2 7 1.40 0.0 3 9
30 | TORSION 3 1 2 8 1.40 0.0 3 9
31 | TORSION 4 1 2 6 1.40 0.0 3 9
32 | TORSION 4 1 2 7 1.40 0.0 3 9
33 | TORSION 4 1 2 8 1.40 0.0 3 9
34 | TORSION 5 1 2 6 1.40 0.0 3 9
35 | TORSION 5 1 2 7 1.40 0.0 3 9
36 | TORSION 5 1 2 8 1.40 0.0 3 9
37 |
--------------------------------------------------------------------------------
/geom/prm/h2o.prm:
--------------------------------------------------------------------------------
1 | ATOM 1 OW 0.53890 0.65566 0.00000 -0.8140 1.7683 0.1520
2 | ATOM 2 HW 1.50890 0.65566 0.00000 0.4070 0.0001 0.0000
3 | ATOM 3 HW 0.21557 1.56969 -0.03013 0.4070 0.0001 0.0000
4 | BOND 1 2 553.0 0.9572
5 | BOND 1 3 553.0 0.9572
6 | ANGLE 2 1 3 100.0 104.52
7 |
--------------------------------------------------------------------------------
/geom/prm/he2.prm:
--------------------------------------------------------------------------------
1 | ATOM 1 He 0.0 0.0 0.0 0.0 1.181 0.010
2 | ATOM 2 He 0.0 0.0 3.5 0.0 1.181 0.010
3 |
--------------------------------------------------------------------------------
/geom/prm/he20.prm:
--------------------------------------------------------------------------------
1 | ATOM 1 He 0.37560 -1.86769 -2.88851 0.0 1.181 0.100
2 | ATOM 2 He 2.61018 1.24796 1.20273 0.0 1.181 0.100
3 | ATOM 3 He -2.34480 -2.93213 5.31225 0.0 1.181 0.100
4 | ATOM 4 He -1.47075 -0.79092 1.54482 0.0 1.181 0.100
5 | ATOM 5 He -3.71383 2.83545 5.36932 0.0 1.181 0.100
6 | ATOM 6 He -3.64286 4.57581 1.48209 0.0 1.181 0.100
7 | ATOM 7 He 1.07388 2.11358 -2.94458 0.0 1.181 0.100
8 | ATOM 8 He 3.56706 3.25235 5.44662 0.0 1.181 0.100
9 | ATOM 9 He -5.64871 -1.92865 4.14791 0.0 1.181 0.100
10 | ATOM 10 He 1.86229 0.59220 3.77395 0.0 1.181 0.100
11 | ATOM 11 He 3.98723 -0.02428 3.51956 0.0 1.181 0.100
12 | ATOM 12 He -5.00929 3.43927 -2.52445 0.0 1.181 0.100
13 | ATOM 13 He -2.62364 -0.57568 -0.28885 0.0 1.181 0.100
14 | ATOM 14 He -0.38045 6.33132 3.74192 0.0 1.181 0.100
15 | ATOM 15 He -0.81318 1.83099 4.36181 0.0 1.181 0.100
16 | ATOM 16 He 1.68799 5.28439 1.08608 0.0 1.181 0.100
17 | ATOM 17 He 0.56088 -0.61421 5.58995 0.0 1.181 0.100
18 | ATOM 18 He -2.14933 1.68471 0.08236 0.0 1.181 0.100
19 | ATOM 19 He 0.33495 6.16478 0.26743 0.0 1.181 0.100
20 | ATOM 20 He -2.71530 -3.39868 0.47702 0.0 1.181 0.100
21 |
--------------------------------------------------------------------------------
/geom/prm/hf.prm:
--------------------------------------------------------------------------------
1 | ATOM 1 H1 0.0 0.0 0.0 0.0 0.0 0.0
2 | ATOM 2 F1 0.0 0.0 1.0 0.0 0.0 0.0
3 | BOND 1 2 673.9 0.917
4 |
--------------------------------------------------------------------------------
/geom/prm/lif.prm:
--------------------------------------------------------------------------------
1 | ATOM 1 Li 0.0 0.0 0.0 +1.0 1.1370 0.0183
2 | ATOM 2 F 0.0 0.0 4.0 -1.0 1.7500 0.0610
--------------------------------------------------------------------------------
/geom/xyz/12difluoroethane.xyz:
--------------------------------------------------------------------------------
1 | 8
2 | 1,2-difluoroethane
3 | C -0.53371 -1.06276 0.15236
4 | C 0.31565 -2.23618 0.57952
5 | F 0.26319 0.01605 -0.06750
6 | F -0.48124 -3.31500 0.79938
7 | H -1.07815 -1.28639 -0.76950
8 | H -1.26375 -0.80403 0.92460
9 | H 1.04570 -2.49491 -0.19271
10 | H 0.86009 -2.01256 1.50139
11 |
--------------------------------------------------------------------------------
/geom/xyz/135trifluorobenzene.xyz:
--------------------------------------------------------------------------------
1 | 12
2 | 1,3,5-trichlorobenzene
3 | C -0.90597 -0.03482 0.67098
4 | C 0.37101 0.47596 0.47193
5 | C 1.10981 0.14438 -0.65742
6 | C 0.55056 -0.71386 -1.59651
7 | C -0.72434 -1.23846 -1.42149
8 | C -1.44208 -0.89100 -0.28336
9 | F -2.67165 -1.38988 -0.10313
10 | H -1.47399 0.22999 1.55524
11 | F 0.89878 1.30201 1.38423
12 | H 2.10499 0.54815 -0.80330
13 | F 1.25236 -1.04104 -2.68904
14 | H -1.15150 -1.90705 -2.15988
--------------------------------------------------------------------------------
/geom/xyz/acetaldehyde.xyz:
--------------------------------------------------------------------------------
1 | 7
2 | acetaldehyde
3 | C -0.43285 -1.28200 0.22678
4 | C 0.43736 -0.09264 -0.03945
5 | H -0.97342 -1.54108 -0.68650
6 | H -1.14838 -1.05298 1.02033
7 | H 0.19417 -2.12217 0.53401
8 | O 0.33399 0.96955 0.56509
9 | H 1.19661 -0.22474 -0.82864
--------------------------------------------------------------------------------
/geom/xyz/aceticacid.xyz:
--------------------------------------------------------------------------------
1 | 8
2 | acetic acid
3 | C -0.20287 -0.62150 -0.25199
4 | C 0.56645 -1.69154 -0.95359
5 | H -0.64727 -1.02746 0.65935
6 | H -0.98374 -0.22612 -0.90767
7 | H 0.47134 0.20208 -0.00046
8 | O 1.75799 -1.91958 -0.83570
9 | O -0.21159 -2.46257 -1.73473
10 | H 0.40681 -3.12802 -2.10265
--------------------------------------------------------------------------------
/geom/xyz/acetone.xyz:
--------------------------------------------------------------------------------
1 | 10
2 | acetone
3 | C -1.14688 1.65133 -1.42692
4 | O -2.33948 1.40907 -1.24785
5 | C -0.43410 1.22306 -2.68106
6 | C -0.32914 2.39049 -0.40258
7 | H -1.13128 0.69945 -3.34103
8 | H 0.38488 0.54677 -2.42411
9 | H -0.04795 2.10291 -3.20150
10 | H -0.95635 2.64508 0.45624
11 | H 0.06079 3.31235 -0.84104
12 | H 0.49362 1.75621 -0.06365
--------------------------------------------------------------------------------
/geom/xyz/acetonitrile.xyz:
--------------------------------------------------------------------------------
1 | 6
2 | acetonitrile
3 | C 0.08994 -1.13042 -0.32545
4 | C -0.00131 -2.53251 -0.72921
5 | H -0.69186 -0.88277 0.39870
6 | H -0.02500 -0.46889 -1.18922
7 | H 1.05946 -0.92116 0.13625
8 | N -0.07372 -3.64527 -1.04965
--------------------------------------------------------------------------------
/geom/xyz/adamantane.xyz:
--------------------------------------------------------------------------------
1 | 26
2 | adamantane
3 | C -1.42471 0.50032 0.58674
4 | C -0.06560 -0.13250 0.23971
5 | C 0.92300 0.97882 -0.15491
6 | C 0.38818 1.75429 -1.37175
7 | C -0.97351 2.37641 -1.01558
8 | C -1.97291 1.27306 -0.62587
9 | H -1.35948 2.94652 -1.86956
10 | H -0.85600 3.08496 -0.18648
11 | H -1.31492 1.17676 1.44327
12 | H -2.13542 -0.27982 0.88598
13 | C -2.14130 0.30328 -1.80876
14 | H 1.90197 0.54306 -0.38945
15 | C -0.24479 -1.09432 -0.94809
16 | C 0.20641 0.78178 -2.55041
17 | H 1.07296 1.66345 0.68892
18 | H 0.31995 -0.68117 1.10615
19 | H 1.09558 2.54391 -1.64831
20 | H -2.94022 1.72134 -0.37338
21 | C -0.78627 -0.33066 -2.16944
22 | H 1.17311 0.34265 -2.82594
23 | H -0.15937 1.32460 -3.43065
24 | H -0.93531 -1.90174 -0.67511
25 | H 0.71419 -1.56555 -1.19620
26 | H -0.91190 -1.01989 -3.01181
27 | H -2.54726 0.83791 -2.67631
28 | H -2.86427 -0.48023 -1.55051
--------------------------------------------------------------------------------
/geom/xyz/adenine.xyz:
--------------------------------------------------------------------------------
1 | 15
2 | adenine
3 | N 0.24647 -0.97084 -0.36999
4 | C 1.57567 -0.72509 -0.41182
5 | N 2.57509 -1.56731 -0.74834
6 | C 2.08440 -2.77392 -1.06412
7 | C 0.76004 -3.17502 -1.07364
8 | C -0.19043 -2.20412 -0.71677
9 | N -1.55725 -2.45194 -0.68088
10 | H 1.87648 0.28195 -0.13641
11 | N 0.65688 -4.50448 -1.43599
12 | C 1.89679 -4.88923 -1.65685
13 | N 2.79244 -3.87555 -1.44649
14 | H -1.78250 -3.43736 -0.60226
15 | H -2.04160 -1.80849 -0.06933
16 | H 2.20658 -5.87861 -1.96766
17 | H 3.79505 -3.91779 -1.54833
--------------------------------------------------------------------------------
/geom/xyz/benzene.xyz:
--------------------------------------------------------------------------------
1 | 12
2 | benzene
3 | C -0.26857 -0.46167 -1.43123
4 | C 0.01308 0.05391 -0.16616
5 | C -0.24001 -0.71245 0.97146
6 | C -0.77474 -1.99439 0.84402
7 | C -1.05638 -2.50997 -0.42104
8 | C -0.80330 -1.74361 -1.55867
9 | H -1.02274 -2.14531 -2.54430
10 | H -0.07139 0.13541 -2.31756
11 | H 0.42969 1.05268 -0.06687
12 | H -0.02057 -0.31075 1.95710
13 | H -0.97192 -2.59147 1.73036
14 | H -1.47300 -3.50874 -0.52034
15 |
--------------------------------------------------------------------------------
/geom/xyz/c60.xyz:
--------------------------------------------------------------------------------
1 | 60
2 | buckminsterfullerene
3 | C 2.16650 0.59060 2.58740
4 | C 3.03780 0.17660 1.59180
5 | C 1.27860 -0.30980 3.16790
6 | C 3.01180 -1.14340 1.16540
7 | C 3.10340 -1.43350 -0.19300
8 | C 3.15030 1.21060 0.66820
9 | C 3.24280 0.91490 -0.68590
10 | C 3.21920 -0.40230 -1.12070
11 | C -0.43930 1.35270 3.12710
12 | C 0.43630 2.26180 2.55420
13 | C -0.02960 0.06330 3.43790
14 | C 1.74420 1.87900 2.28300
15 | C 2.35190 2.26760 1.09900
16 | C -0.26330 3.02680 1.63260
17 | C 0.33740 3.40540 0.43730
18 | C 1.65160 3.02780 0.17070
19 | C -2.09030 -0.82250 2.59550
20 | C -2.51110 0.46640 2.28540
21 | C -0.84490 -1.02520 3.17380
22 | C -1.68740 1.55330 2.55120
23 | C -1.58430 2.58580 1.63190
24 | C -3.23140 0.40610 1.10070
25 | C -3.12270 1.44100 0.17460
26 | C -2.29470 2.52910 0.43990
27 | C -0.49080 -2.91330 1.73650
28 | C -1.74300 -2.71240 1.16370
29 | C -0.03930 -2.06840 2.74530
30 | C -2.54860 -1.66500 1.59420
31 | C -3.26020 -0.91410 0.67010
32 | C -1.65430 -3.00610 -0.18970
33 | C -2.35420 -2.24390 -1.11700
34 | C -3.16430 -1.19490 -0.68780
35 | C 2.13640 -2.05530 1.73580
36 | C 1.68950 -2.90090 0.72930
37 | C 1.27850 -1.63660 2.74350
38 | C 0.36780 -3.33270 0.73020
39 | C -0.34400 -3.39040 -0.45940
40 | C 2.28890 -2.52500 -0.46400
41 | C 1.57900 -2.57180 -1.65800
42 | C 0.25600 -3.00540 -1.65310
43 | C -2.18280 -0.57830 -2.59790
44 | C -1.74800 -1.86940 -2.30830
45 | C -0.43850 -2.24690 -2.58450
46 | C -1.28150 0.31890 -3.16710
47 | C -2.15260 2.05450 -1.73780
48 | C -3.04850 1.15350 -1.18110
49 | C -3.06560 -0.16290 -1.61070
50 | C -1.26610 1.64070 -2.72710
51 | C 0.50390 2.93610 -1.74180
52 | C -0.37880 3.35610 -0.75130
53 | C -1.69430 2.91860 -0.74910
54 | C 0.05210 2.07300 -2.73550
55 | C 2.09760 0.83400 -2.60510
56 | C 2.55170 1.69230 -1.61070
57 | C 1.75890 2.74520 -1.18240
58 | C 0.84200 1.02060 -3.17860
59 | C 0.44610 -1.34950 -3.16610
60 | C 1.69830 -1.54850 -2.59080
61 | C 2.51840 -0.46230 -2.31710
62 | C 0.02180 -0.06450 -3.45850
63 |
--------------------------------------------------------------------------------
/geom/xyz/ch2cl2.xyz:
--------------------------------------------------------------------------------
1 | 5
2 | dichloromethane
3 | C 0.000000 0.125734 1.769274
4 | H -0.908578 0.622537 1.418015
5 | H 0.908578 0.622537 1.418015
6 | Cl 0.000000 -1.539930 1.135057
7 | Cl 0.000000 0.168852 3.551320
8 |
--------------------------------------------------------------------------------
/geom/xyz/ch4.xyz:
--------------------------------------------------------------------------------
1 | 5
2 | methane
3 | C -1.13410 0.72042 0.00000
4 | H -0.04190 0.72042 -0.00000
5 | H -1.49816 1.33799 0.82399
6 | H -1.49816 -0.30197 0.12284
7 | H -1.49816 1.12523 -0.94683
8 |
--------------------------------------------------------------------------------
/geom/xyz/chloroform.xyz:
--------------------------------------------------------------------------------
1 | 5
2 | chloroform
3 | C -0.59841 -0.93914 0.26797
4 | Cl 0.46073 0.45324 -0.01187
5 | Cl -1.51149 -1.33180 -1.19862
6 | H -1.30932 -0.67754 1.05594
7 | Cl 0.34308 -2.33903 0.80898
--------------------------------------------------------------------------------
/geom/xyz/chloromethane.xyz:
--------------------------------------------------------------------------------
1 | 5
2 | chloromethane
3 | C -1.63320 -0.36729 0.06902
4 | H -1.99041 -1.39156 0.19623
5 | H -1.51193 -0.14593 -0.99362
6 | H -2.34423 0.33169 0.51484
7 | Cl -0.07100 -0.19587 0.87668
8 |
--------------------------------------------------------------------------------
/geom/xyz/co.xyz:
--------------------------------------------------------------------------------
1 | 2
2 | carbon monoxide
3 | C 3.22499 3.12974 -0.43957
4 | O 2.52095 2.36948 -0.00561
5 |
--------------------------------------------------------------------------------
/geom/xyz/co2.xyz:
--------------------------------------------------------------------------------
1 | 3
2 | carbon dioxide
3 | C -4.56589 5.15978 -2.65450
4 | O -3.66166 4.37699 -2.62991
5 | O -5.47019 5.94260 -2.67915
6 |
--------------------------------------------------------------------------------
/geom/xyz/cubane.xyz:
--------------------------------------------------------------------------------
1 | 16
2 | cubane
3 | C -0.20719 1.10228 -0.23056
4 | C 1.23991 1.12821 0.30008
5 | C 1.27506 -0.41279 0.27952
6 | C -0.17204 -0.43872 -0.25112
7 | C 0.32291 1.13368 -1.67774
8 | H -1.03626 1.71355 0.15554
9 | C 1.77001 1.15961 -1.14711
10 | H 1.60322 1.76084 1.12340
11 | C 1.80517 -0.38139 -1.16767
12 | H 1.66734 -1.04992 1.08591
13 | H 2.57013 1.81813 -1.51624
14 | C 0.35807 -0.40732 -1.69830
15 | H -0.97216 -1.09723 0.11801
16 | H -0.06937 1.77081 -2.48413
17 | H -0.00525 -1.03995 -2.52163
18 | H 2.63424 -0.99266 -1.55377
--------------------------------------------------------------------------------
/geom/xyz/cyclopentane.xyz:
--------------------------------------------------------------------------------
1 | 15
2 | cyclopentane
3 | C 0.27929 1.60665 0.31933
4 | C -0.75445 1.20784 -0.73287
5 | C 0.43897 0.40086 1.24347
6 | H -0.06255 2.48704 0.87442
7 | H 1.23805 1.86423 -0.14352
8 | C -0.93879 -0.29339 -0.57051
9 | H -0.43875 1.47670 -1.74544
10 | H -1.70081 1.72433 -0.53248
11 | C -0.73375 -0.51116 0.91838
12 | H -0.17343 -0.83194 -1.14181
13 | H -1.92162 -0.63096 -0.91137
14 | H -0.52797 -1.55687 1.16375
15 | H -1.62424 -0.19581 1.47489
16 | H 0.45890 0.68801 2.29905
17 | H 1.38282 -0.11095 1.02033
--------------------------------------------------------------------------------
/geom/xyz/cyclopropane.xyz:
--------------------------------------------------------------------------------
1 | 9
2 | cyclopropane
3 | C 0.12460 1.60294 0.21587
4 | C -0.09614 0.13639 -0.02331
5 | C -0.55329 1.14082 -1.04254
6 | H -0.85135 -0.36770 0.56863
7 | H 0.76584 -0.47549 -0.26295
8 | H -1.61820 1.31718 -1.14108
9 | H -0.00101 1.20938 -1.97266
10 | H 1.13613 1.98457 0.13826
11 | H -0.48106 2.09237 0.96984
--------------------------------------------------------------------------------
/geom/xyz/dimethylether.xyz:
--------------------------------------------------------------------------------
1 | 9
2 | dimethyl ether
3 | C 0.05784 -1.47953 -1.05476
4 | O 0.75126 -2.58762 -1.61243
5 | H -0.42522 -0.89385 -1.84289
6 | H 0.78264 -0.84261 -0.54066
7 | H -0.68623 -1.81961 -0.32797
8 | C -0.13176 -3.46361 -2.29991
9 | H -0.88197 -3.86770 -1.61332
10 | H 0.45288 -4.29332 -2.70619
11 | H -0.62091 -2.94195 -3.12824
--------------------------------------------------------------------------------
/geom/xyz/ethane.xyz:
--------------------------------------------------------------------------------
1 | 8
2 | ethane
3 | C -0.02397 0.18484 -0.10430
4 | C -0.25621 -0.72703 -1.28789
5 | H 0.84954 -0.14240 0.46746
6 | H -0.89262 0.18008 0.56086
7 | H 0.14829 1.21226 -0.43862
8 | H -0.42847 -1.75445 -0.95357
9 | H 0.61244 -0.72227 -1.95305
10 | H -1.12972 -0.39979 -1.85966
--------------------------------------------------------------------------------
/geom/xyz/ethanethiol.xyz:
--------------------------------------------------------------------------------
1 | 9
2 | ethanethiol
3 | C 0.17772 -0.87140 -0.34474
4 | C -0.46568 -2.23328 -0.52625
5 | H -0.58047 -0.13743 -0.05211
6 | H 0.63961 -0.51752 -1.27269
7 | H 0.94159 -0.88893 0.44005
8 | S 0.77245 -3.46932 -1.00587
9 | H -1.23704 -2.18778 -1.30090
10 | H -0.93860 -2.55444 0.40663
11 | H 1.12493 -2.89481 -2.16539
--------------------------------------------------------------------------------
/geom/xyz/ethanoicanhydride.xyz:
--------------------------------------------------------------------------------
1 | 13
2 | ethanoic anhydride
3 | C 0.52688 -0.16070 -0.07376
4 | C -0.34844 -1.36449 -0.27551
5 | H -0.08010 0.67301 0.29121
6 | H 0.98273 0.12968 -1.02371
7 | H 1.29547 -0.38074 0.67166
8 | O 0.42734 -2.39851 -0.69199
9 | C -0.18576 -3.58539 -0.93668
10 | C 0.85212 -4.57848 -1.37549
11 | H 1.30707 -4.24922 -2.31309
12 | H 0.37838 -5.55075 -1.53954
13 | H 1.61123 -4.69147 -0.59714
14 | O -1.55341 -1.34491 -0.08019
15 | O -1.37020 -3.86606 -0.84284
--------------------------------------------------------------------------------
/geom/xyz/ethanol.xyz:
--------------------------------------------------------------------------------
1 | 9
2 | ethanol
3 | C -0.41703 -1.27846 0.20897
4 | C 0.56133 -0.15511 -0.06474
5 | H -1.23553 -1.26466 -0.51823
6 | H -0.86921 -1.16275 1.19945
7 | H 0.08152 -2.25049 0.15914
8 | O -0.10085 1.09797 0.02603
9 | H 0.99841 -0.24985 -1.06338
10 | H 1.37227 -0.16636 0.66929
11 | H -0.81297 1.10186 -0.63614
--------------------------------------------------------------------------------
/geom/xyz/ethene.xyz:
--------------------------------------------------------------------------------
1 | 6
2 | ethene
3 | C -0.03751 0.13170 -0.17330
4 | C -0.24268 -0.67388 -1.21890
5 | H 0.29338 1.15615 -0.31223
6 | H -0.19641 -0.21746 0.84215
7 | H -0.08378 -0.32472 -2.23435
8 | H -0.57357 -1.69833 -1.07997
--------------------------------------------------------------------------------
/geom/xyz/ethylacetate.xyz:
--------------------------------------------------------------------------------
1 | 14
2 | ethyl acetate
3 | C 0.23280 0.26806 0.61047
4 | O 0.54240 0.93844 1.58504
5 | O -0.20336 0.75893 -0.58179
6 | C 0.28128 -1.22831 0.56114
7 | C -0.28363 2.18844 -0.63245
8 | H -0.98340 2.54682 0.13086
9 | C -0.77971 2.58658 -2.00884
10 | H 0.70783 2.62095 -0.45726
11 | H 0.63209 -1.61143 1.52369
12 | H 0.97763 -1.55121 -0.21681
13 | H -0.71910 -1.62561 0.37204
14 | H -1.76160 2.14440 -2.20752
15 | H -0.10122 2.21715 -2.78491
16 | H -0.85769 3.67387 -2.09608
--------------------------------------------------------------------------------
/geom/xyz/ethyne.xyz:
--------------------------------------------------------------------------------
1 | 4
2 | ethyne
3 | C -1.11608 0.77101 -0.00608
4 | C -1.51618 -0.35256 0.12892
5 | H -0.76081 1.76869 -0.12595
6 | H -1.87145 -1.35024 0.24878
--------------------------------------------------------------------------------
/geom/xyz/formaldehyde.xyz:
--------------------------------------------------------------------------------
1 | 4
2 | formaldehyde
3 | C -1.04822 1.67137 -1.44173
4 | O -2.23556 1.43018 -1.26346
5 | H -0.51664 1.36252 -2.35594
6 | H -0.44029 2.21169 -0.69862
--------------------------------------------------------------------------------
/geom/xyz/h2.xyz:
--------------------------------------------------------------------------------
1 | 2
2 | hydrogen molecule
3 | H -1.68666 1.79811 0.00000
4 | H -1.12017 1.37343 0.00000
5 |
--------------------------------------------------------------------------------
/geom/xyz/h2o.xyz:
--------------------------------------------------------------------------------
1 | 3
2 | water
3 | O 0.53890 0.65566 0.00000
4 | H 1.50890 0.65566 0.00000
5 | H 0.21557 1.56969 -0.03013
--------------------------------------------------------------------------------
/geom/xyz/he.xyz:
--------------------------------------------------------------------------------
1 | 1
2 | helium atom
3 | He -3.766148 -4.897176 2.994745
4 |
--------------------------------------------------------------------------------
/geom/xyz/helium.xyz:
--------------------------------------------------------------------------------
1 | 1
2 | helium atom
3 | He 1.025310 -0.003850 0.942480
--------------------------------------------------------------------------------
/geom/xyz/hf.xyz:
--------------------------------------------------------------------------------
1 | 2
2 | hydrogen fluoride
3 | F -0.29502 0.75280 0.00000
4 | H 0.64417 0.75280 0.00000
--------------------------------------------------------------------------------
/geom/xyz/hooh.xyz:
--------------------------------------------------------------------------------
1 | 4
2 | hydrogen peroxide (staggered)
3 | O -1.75288 -0.51877 1.33236
4 | O -0.47370 -0.10913 0.77737
5 | H -2.29018 0.16783 0.89329
6 | H 0.06360 -0.79573 1.21644
--------------------------------------------------------------------------------
/geom/xyz/isobutane.xyz:
--------------------------------------------------------------------------------
1 | 14
2 | isobutane (2-methylpropane)
3 | C -1.33644 -0.25747 -0.08521
4 | C -0.10269 0.64011 -0.02070
5 | H -2.25372 0.33865 -0.03460
6 | H -1.35196 -0.97387 0.74327
7 | H -1.35670 -0.82333 -1.02260
8 | C 1.17300 -0.19183 -0.13235
9 | C -0.09981 1.45696 1.26954
10 | H -0.13679 1.33489 -0.86880
11 | H 1.25701 -0.90563 0.69426
12 | H 2.05913 0.45146 -0.11561
13 | H 1.18761 -0.75678 -1.07040
14 | H -0.06628 0.80856 2.15176
15 | H -0.99992 2.07689 1.33896
16 | H 0.76863 2.12315 1.30573
--------------------------------------------------------------------------------
/geom/xyz/methylamine.xyz:
--------------------------------------------------------------------------------
1 | 7
2 | methylamine
3 | C -0.41528 -1.26200 0.22062
4 | N 0.43127 -0.10749 -0.02158
5 | H -0.96481 -1.53303 -0.68533
6 | H -1.13439 -1.04309 1.01482
7 | H 0.19166 -2.11677 0.53170
8 | H -0.14249 0.67254 -0.33947
9 | H 1.07598 -0.31405 -0.78341
--------------------------------------------------------------------------------
/geom/xyz/methylformate.xyz:
--------------------------------------------------------------------------------
1 | 8
2 | methyl formate
3 | C 0.19676 0.17984 0.49796
4 | O 0.50665 0.83915 1.47685
5 | O -0.23799 0.65588 -0.69492
6 | H 0.23043 -0.91981 0.45346
7 | C -0.32101 2.08033 -0.75096
8 | H -1.03479 2.45249 -0.00927
9 | H -0.67826 2.36025 -1.74587
10 | H 0.66596 2.52843 -0.59862
--------------------------------------------------------------------------------
/geom/xyz/neopentane.xyz:
--------------------------------------------------------------------------------
1 | 17
2 | neopentane (2,2-dimethylpropane)
3 | C -1.33087 -0.31466 -0.01884
4 | C -0.10167 0.60448 0.01997
5 | H -2.25969 0.26345 0.04335
6 | H -1.32238 -1.02273 0.81745
7 | H -1.36155 -0.89584 -0.94732
8 | C 1.17482 -0.24397 -0.06937
9 | C -0.09756 1.39839 1.33410
10 | C -0.15306 1.57815 -1.16603
11 | H 1.23995 -0.95044 0.76577
12 | H 2.07134 0.38565 -0.04400
13 | H 1.20078 -0.82355 -0.99900
14 | H -0.06119 0.72905 2.20097
15 | H -0.99851 2.01523 1.42687
16 | H 0.77018 2.06514 1.39120
17 | H -0.15712 1.03976 -2.12045
18 | H 0.71344 2.24896 -1.16545
19 | H -1.05526 2.19906 -1.12978
--------------------------------------------------------------------------------
/geom/xyz/nh3.xyz:
--------------------------------------------------------------------------------
1 | 4
2 | ammonia
3 | N -0.00549 0.48287 0.00676
4 | H 1.01184 0.42544 -0.00355
5 | H -0.31709 -0.18070 0.71452
6 | H -0.31709 0.10664 -0.88751
--------------------------------------------------------------------------------
/geom/xyz/oxalicacid.xyz:
--------------------------------------------------------------------------------
1 | 8
2 | oxalic acid
3 | C 1.18569 0.15016 -0.75539
4 | C 0.51063 -0.82986 -1.76305
5 | O -0.60587 -1.29656 -1.65031
6 | O 2.30222 0.61680 -0.86808
7 | O 1.29952 -1.12472 -2.80565
8 | H 0.76574 -1.73693 -3.35159
9 | O 0.39675 0.44510 0.28715
10 | H 0.93051 1.05731 0.83310
--------------------------------------------------------------------------------
/geom/xyz/propane.xyz:
--------------------------------------------------------------------------------
1 | 11
2 | propane
3 | C -1.33906 -0.17994 -0.00008
4 | C -0.10313 0.70116 0.06705
5 | C 1.17373 -0.11426 -0.04740
6 | H -2.24431 0.42940 0.08439
7 | H -1.34436 -0.91113 0.81462
8 | H -1.38249 -0.72323 -0.94948
9 | H -0.09974 1.25328 1.01339
10 | H -0.13766 1.44014 -0.74111
11 | H 2.04846 0.54160 0.00354
12 | H 1.24785 -0.84337 0.76581
13 | H 1.20972 -0.65549 -0.99829
14 |
--------------------------------------------------------------------------------
/geom/xyz/thymine.xyz:
--------------------------------------------------------------------------------
1 | 15
2 | thymine
3 | N -1.15842 -0.93234 0.06158
4 | C 0.15397 -0.68356 -0.21831
5 | N 0.84330 -1.72113 -0.78294
6 | C 0.28774 -2.93787 -1.06177
7 | C -0.99822 -3.19548 -0.79244
8 | C -1.80964 -2.11076 -0.17662
9 | C -1.67732 -4.49596 -1.06650
10 | H -2.51541 -4.35383 -1.75651
11 | H -2.06003 -4.93263 -0.13830
12 | H -0.99388 -5.22248 -1.51871
13 | H 0.94790 -3.67390 -1.51042
14 | O -2.99409 -2.26763 0.10022
15 | H -1.69002 -0.18497 0.47815
16 | H 1.81842 -1.53809 -0.99155
17 | O 0.68480 0.39608 0.01846
--------------------------------------------------------------------------------
/geom/xyzq/a.xyzq:
--------------------------------------------------------------------------------
1 | 15
2 | a inertial-frame geometry
3 | NC 1.973200 -0.554541 0.000000 -0.7624
4 | CQ 1.359403 -1.752064 0.000000 0.5716
5 | NC 0.048411 -2.020255 0.000000 -0.7417
6 | CB -0.679382 -0.895052 0.000000 0.3800
7 | CB -0.192135 0.418095 0.000000 0.0725
8 | CA 1.213034 0.556012 0.000000 0.6897
9 | N* -2.050739 -0.754038 0.000000 -0.0268
10 | CK -2.312654 0.603014 0.000000 0.1607
11 | NB -1.226450 1.340701 0.000000 -0.6175
12 | H5 -3.328932 0.984609 0.000000 0.1877
13 | H5 2.024027 -2.617596 0.000000 0.0598
14 | N2 1.815670 1.769647 0.000000 -0.9123
15 | H -2.723546 -1.507797 0.000000 0.1053
16 | H 1.257277 2.609074 0.000000 0.4167
17 | H 2.822817 1.820191 0.000000 0.4167
18 |
--------------------------------------------------------------------------------
/geom/xyzq/benzene_2.xyzq:
--------------------------------------------------------------------------------
1 | 24
2 | benzene dimer
3 | CA -3.45860 1.02677 0.00000 -0.0800
4 | CA -2.21965 1.73788 0.00000 -0.0800
5 | CA -0.99800 1.00991 0.00000 -0.0800
6 | CA -1.05338 -0.37280 0.00000 -0.0800
7 | CA -2.27650 -1.06687 0.00000 -0.0800
8 | CA -3.51279 -0.38080 0.00000 -0.0800
9 | HA -4.48441 -0.92011 0.00000 0.0800
10 | HA -4.39504 1.59896 0.00000 0.0800
11 | HA -2.11917 2.80374 0.00000 0.0800
12 | HA -0.03542 1.56600 0.00000 0.0800
13 | HA -0.07631 -0.93140 0.00000 0.0800
14 | HA -2.28067 -2.16889 -0.00000 0.0800
15 | CA 0.49495 8.57680 -0.74942 -0.0800
16 | CA 0.98994 8.50273 -2.11559 -0.0800
17 | CA 0.16562 7.40172 0.00000 -0.0800
18 | CA 0.33873 6.12702 -0.64052 -0.0800
19 | CA 0.83516 6.05958 -2.00977 -0.0800
20 | CA 1.16204 7.24302 -2.75136 -0.0800
21 | HA 1.54103 7.16442 -3.80023 0.0800
22 | HA 1.22287 9.46044 -2.62914 0.0800
23 | HA 0.09876 5.18508 -0.10563 0.0800
24 | HA 0.97050 5.08524 -2.50763 0.0800
25 | HA 0.36667 9.56753 -0.26876 0.0800
26 | HA -0.21271 7.50106 1.04975 0.0800
27 |
--------------------------------------------------------------------------------
/geom/xyzq/ethane.xyzq:
--------------------------------------------------------------------------------
1 | 8
2 | ethane molecule near equilibrium
3 | CT -5.71541 2.89779 0.25425 -0.6300
4 | CT -4.54507 2.25963 -0.45869 -0.6300
5 | HC -5.36758 3.65957 0.95826 0.2100
6 | HC -6.28153 2.14639 0.81236 0.2100
7 | HC -6.38951 3.37429 -0.46369 0.2100
8 | HC -3.87563 1.77621 0.25903 0.2100
9 | HC -3.97429 3.01236 -1.01033 0.2100
10 | HC -4.89281 1.50380 -1.16889 0.2100
11 |
--------------------------------------------------------------------------------
/geom/xyzq/ethane5.xyzq:
--------------------------------------------------------------------------------
1 | 40
2 | 5 ethane molecules near equilibrium
3 | CT -5.71541 2.89779 0.25425 -0.63000
4 | CT -4.54507 2.25963 -0.45869 -0.63000
5 | HC -5.36758 3.65957 0.95826 0.21000
6 | HC -6.28153 2.14639 0.81236 0.21000
7 | HC -6.38951 3.37429 -0.46369 0.21000
8 | HC -3.87563 1.77621 0.25903 0.21000
9 | HC -3.97429 3.01236 -1.01033 0.21000
10 | HC -4.89281 1.50380 -1.16889 0.21000
11 | CT -1.65841 -1.17616 0.31276 0.63000
12 | CT -3.02777 -1.63785 -0.13092 -0.63000
13 | HC -1.13325 -1.97953 0.83789 0.21000
14 | HC -1.74257 -0.32024 0.98891 0.21000
15 | HC -1.05545 -0.87663 -0.54962 0.21000
16 | HC -3.63287 -1.92905 0.73273 0.21000
17 | HC -2.94575 -2.49922 -0.80038 0.21000
18 | HC -3.54940 -0.83739 -0.66333 0.21000
19 | CT -1.03354 3.86645 0.27420 -0.63000
20 | CT -0.48691 2.53762 -0.19628 -0.63000
21 | HC -1.37632 4.46359 -0.57604 0.21000
22 | HC -0.26257 4.43302 0.80484 0.21000
23 | HC -1.87864 3.71630 0.95260 0.21000
24 | HC 0.36210 2.68769 -0.86978 0.21000
25 | HC -1.25570 1.97371 -0.73266 0.21000
26 | HC -0.14974 1.93789 0.65435 0.21000
27 | CT -6.85460 -1.00355 -0.15226 -0.63000
28 | CT -7.01233 -2.50343 -0.04767 -0.63000
29 | HC -6.42483 -0.72878 -1.12002 0.21000
30 | HC -6.19490 -0.63012 0.63654 0.21000
31 | HC -7.82441 -0.50807 -0.05304 0.21000
32 | HC -6.04309 -3.00053 -0.14881 0.21000
33 | HC -7.67399 -2.87597 -0.83532 0.21000
34 | HC -7.44091 -2.77803 0.92076 0.21000
35 | CT -10.79788 1.27148 -0.05716 -0.63000
36 | CT -9.56862 2.13598 0.10835 -0.63000
37 | HC -11.35045 1.55725 -0.95716 0.21000
38 | HC -11.46306 1.38020 0.80456 0.21000
39 | HC -10.51773 0.21752 -0.14519 0.21000
40 | HC -9.84810 3.19019 0.19538 0.21000
41 | HC -8.90274 2.02601 -0.75280 0.21000
42 | HC -9.01691 1.85050 1.00898 0.21000
43 |
--------------------------------------------------------------------------------
/geom/xyzq/h2o.xyzq:
--------------------------------------------------------------------------------
1 | 3
2 | water: TIP3P
3 | OW 0.53890 0.65566 0.00000 -0.8140
4 | HW 1.50890 0.65566 0.00000 0.4070
5 | HW 0.21557 1.56969 -0.03013 0.4070
6 |
--------------------------------------------------------------------------------
/geom/xyzq/h2o_5.xyzq:
--------------------------------------------------------------------------------
1 | 15
2 | 5 TIP3P waters
3 | OW -1.87208 1.32617 -0.72031 -0.8140
4 | HW -1.71551 0.54954 -0.12352 0.4070
5 | HW -2.83789 1.26160 -0.81488 0.4070
6 | OW 0.61249 -0.15451 2.52466 -0.8140
7 | HW 1.21466 0.33380 1.90556 0.4070
8 | HW 0.99687 0.12160 3.37447 0.4070
9 | OW -1.50836 -0.73942 0.97169 -0.8140
10 | HW -1.44037 -1.70525 1.06622 0.4070
11 | HW -0.79939 -0.46637 1.60929 0.4070
12 | OW 0.49617 2.62262 -0.80211 -0.8140
13 | HW 0.22059 3.39161 -1.32962 0.4070
14 | HW -0.35646 2.11582 -0.79353 0.4070
15 | OW 2.14747 1.34057 0.89878 -0.8140
16 | HW 2.94606 1.40508 0.34735 0.4070
17 | HW 1.52084 1.86684 0.33797 0.4070
18 |
--------------------------------------------------------------------------------
/geom/zmat/benzene.zmat:
--------------------------------------------------------------------------------
1 | 12
2 | benzene
3 | C
4 | C 1 1.380
5 | C 2 1.380 1 120.000
6 | C 3 1.380 2 120.000 1 0.000
7 | C 4 1.380 3 120.000 2 0.000
8 | C 5 1.380 4 120.000 3 0.000
9 | H 1 1.085 2 120.000 3 180.000
10 | H 2 1.085 1 120.000 6 180.000
11 | H 3 1.085 2 120.000 1 180.000
12 | H 4 1.085 3 120.000 2 180.000
13 | H 5 1.085 4 120.000 3 180.000
14 | H 6 1.085 5 120.000 4 180.000
15 |
--------------------------------------------------------------------------------
/geom/zmat/ch4.zmat:
--------------------------------------------------------------------------------
1 | 5
2 | methane
3 | C
4 | H 1 1.0922
5 | H 1 1.0922 2 109.471
6 | H 1 1.0922 2 109.471 3 -120.0
7 | H 1 1.0922 2 109.471 3 120.0
8 |
--------------------------------------------------------------------------------
/geom/zmat/chloromethane.zmat:
--------------------------------------------------------------------------------
1 | 5
2 | chloromethane
3 | C
4 | H 1 1.0922
5 | H 1 1.0922 2 109.858
6 | H 1 1.0922 2 109.858 121.0
7 | Cl 1 1.7670 2 109.080 -119.5
8 |
--------------------------------------------------------------------------------
/geom/zmat/ethane.zmat:
--------------------------------------------------------------------------------
1 | 8
2 | ethane (staggered)
3 | C
4 | C 1 1.5121
5 | H 1 1.0941 2 110.568
6 | H 2 1.0941 1 110.568 3 180.0
7 | H 1 1.0941 2 110.568 3 120.0
8 | H 1 1.0941 2 110.568 3 -120.0
9 | H 2 1.0941 1 110.568 4 120.0
10 | H 2 1.0941 1 110.568 4 -120.0
11 |
--------------------------------------------------------------------------------
/geom/zmat/ethene.zmat:
--------------------------------------------------------------------------------
1 | 6
2 | ethene
3 | C
4 | C 1 1.3358
5 | H 1 1.0855 2 121.051
6 | H 1 1.0855 2 121.051 3 180.0
7 | H 2 1.0855 1 121.051 3 0.0
8 | H 2 1.0855 1 121.051 3 180.0
9 |
--------------------------------------------------------------------------------
/geom/zmat/formaldehyde.zmat:
--------------------------------------------------------------------------------
1 | 4
2 | formaldehyde
3 | C
4 | O 1 1.2246
5 | H 1 1.1017 2 122.235
6 | H 1 1.1017 2 122.235 3 180.0
7 |
--------------------------------------------------------------------------------
/geom/zmat/h2.zmat:
--------------------------------------------------------------------------------
1 | 2
2 | hydrogen molecule
3 | H
4 | H 1 0.6000
5 |
--------------------------------------------------------------------------------
/geom/zmat/h2o.zmat:
--------------------------------------------------------------------------------
1 | 3
2 | water
3 | O
4 | H 1 0.9700
5 | H 1 0.9700 2 109.471
6 |
--------------------------------------------------------------------------------
/geom/zmat/hf.zmat:
--------------------------------------------------------------------------------
1 | 2
2 | hydrogen fluoride
3 | F
4 | H 1 0.9392
5 |
--------------------------------------------------------------------------------
/geom/zmat/hooh.zmat:
--------------------------------------------------------------------------------
1 | 4
2 | hydrogen peroxide (staggered)
3 | O
4 | O 1 1.4533
5 | H 1 0.9762 2 96.572
6 | H 2 0.9762 1 96.572 3 120.0
7 |
--------------------------------------------------------------------------------
/geom/zmat/nh3.zmat:
--------------------------------------------------------------------------------
1 | 4
2 | ammonia
3 | N
4 | H 1 1.0190
5 | H 1 1.0190 2 105.999
6 | H 1 1.0190 2 105.999 3 -112.4
7 |
--------------------------------------------------------------------------------
/geom/zmat/propane.zmat:
--------------------------------------------------------------------------------
1 | 11
2 | propane (staggered, staggered)
3 | C
4 | C 1 1.5193
5 | C 2 1.5193 1 111.659
6 | H 1 1.0945 2 110.276 3 180.000
7 | H 1 1.0947 2 111.002 3 60.244
8 | H 1 1.0947 2 111.002 3 -60.244
9 | H 2 1.0956 1 109.446 4 58.662
10 | H 2 1.0956 1 109.446 4 -58.662
11 | H 3 1.0946 2 110.276 1 180.000
12 | H 3 1.0946 2 111.002 1 60.244
13 | H 3 1.0946 2 111.002 1 -60.244
14 |
--------------------------------------------------------------------------------
/input/mc/benzene_2.mc:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/xyzq/benzene_2.xyzq
2 | RANDOMSEED 558222221
3 | TEMPERATURE 15.00 K
4 | BOUNDARY 21.75 A
5 | BOUNDARYTYPE SPHERE
6 | TOTALCONF 20000
7 | GEOMCONF 100
8 | ENERGYCONF 25
9 | GEOMOUT ../../data/mc/benzene_2.xyz
10 | ENERGYOUT ../../data/mc/benzene_2.dat
11 | STATUSTIME 2.0 s
12 |
--------------------------------------------------------------------------------
/input/mc/ch2o.mc:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/ch2o.prm
2 | RANDOMSEED 1941260823
3 | TEMPERATURE 298.15 K
4 | BOUNDARY 17.26 A
5 | BOUNDARYTYPE SPHERE
6 | TOTALCONF 400000
7 | GEOMCONF 500
8 | ENERGYCONF 500
9 | GEOMOUT ../../data/mc/ch2o.xyz
10 | ENERGYOUT ../../data/mc/ch2o.dat
11 | STATUSTIME 1.0 s
12 |
--------------------------------------------------------------------------------
/input/mc/co.mc:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/co.prm
2 | RANDOMSEED 1315177173
3 | TEMPERATURE 298.15 K
4 | BOUNDARY 17.26 A
5 | BOUNDARYTYPE SPHERE
6 | TOTALCONF 1000
7 | GEOMCONF 1
8 | ENERGYCONF 1
9 | GEOMOUT ../../data/mc/co.xyz
10 | ENERGYOUT ../../data/mc/co.dat
11 | STATUSTIME 1.0 s
12 |
--------------------------------------------------------------------------------
/input/mc/ethane.mc:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/ethane.prm
2 | RANDOMSEED 2661654898
3 | TEMPERATURE 3000.00 K
4 | BOUNDARY 17.26 A
5 | BOUNDARYTYPE SPHERE
6 | TOTALCONF 20000
7 | GEOMCONF 50
8 | ENERGYCONF 25
9 | GEOMOUT ../../data/mc/ethane.xyz
10 | ENERGYOUT ../../data/mc/ethane.dat
11 | STATUSTIME 5.0 s
12 |
--------------------------------------------------------------------------------
/input/mc/h2o.mc:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/h2o.prm
2 | RANDOMSEED 2179125454
3 | TEMPERATURE 298.15 K
4 | BOUNDARY 17.26 A
5 | BOUNDARYTYPE SPHERE
6 | TOTALCONF 10000
7 | GEOMCONF 10
8 | ENERGYCONF 15
9 | GEOMOUT ../../data/mc/h2o.xyz
10 | ENERGYOUT ../../data/mc/h2o.dat
11 | STATUSTIME 1.0 s
12 |
--------------------------------------------------------------------------------
/input/mc/h2o_5.mc:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/xyzq/h2o_5.xyzq
2 | RANDOMSEED 515780453
3 | TEMPERATURE 298.15 K
4 | BOUNDARY 17.26 A
5 | BOUNDARYTYPE SPHERE
6 | TOTALCONF 10000
7 | GEOMCONF 50
8 | ENERGYCONF 15
9 | GEOMOUT ../../data/mc/h2o_5.xyz
10 | ENERGYOUT ../../data/mc/h2o_5.dat
11 | STATUSTIME 1.0 s
12 |
--------------------------------------------------------------------------------
/input/mc/he2.mc:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/he2.prm
2 | RANDOMSEED 1887222137
3 | TEMPERATURE 298.15 K
4 | BOUNDARY 21.75 A
5 | BOUNDARYTYPE SPHERE
6 | TOTALCONF 50000
7 | GEOMCONF 50
8 | ENERGYCONF 100
9 | GEOMOUT ../../data/mc/he2.xyz
10 | ENERGYOUT ../../data/mc/he2.dat
11 | STATUSTIME 2.0 s
12 |
--------------------------------------------------------------------------------
/input/mc/he20.mc:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/he20.prm
2 | RANDOMSEED 747663306
3 | TEMPERATURE 298.15 K
4 | BOUNDARY 46.86 A
5 | BOUNDARYTYPE SPHERE
6 | TOTALCONF 20000
7 | GEOMCONF 100
8 | ENERGYCONF 25
9 | GEOMOUT ../../data/mc/he20.xyz
10 | ENERGYOUT ../../data/mc/he20.dat
11 | STATUSTIME 2.0 s
12 |
--------------------------------------------------------------------------------
/input/mc/hf.mc:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/hf.prm
2 | RANDOMSEED 1783360365
3 | TEMPERATURE 5.00 K
4 | BOUNDARY 17.26 A
5 | BOUNDARYTYPE SPHERE
6 | TOTALCONF 100
7 | GEOMCONF 1
8 | ENERGYCONF 1
9 | GEOMOUT ../../data/mc/hf.xyz
10 | ENERGYOUT ../../data/mc/hf.dat
11 | STATUSTIME 1.0 s
12 |
--------------------------------------------------------------------------------
/input/mc/lif.mc:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/lif.prm
2 | RANDOMSEED 1589347151
3 | TEMPERATURE 0.00 K
4 | BOUNDARY 22.00 A
5 | BOUNDARYTYPE CUBE
6 | TOTALCONF 1000
7 | GEOMCONF 1
8 | ENERGYCONF 2
9 | GEOMOUT ../../data/mc/lif.xyz
10 | ENERGYOUT ../../data/mc/lif.dat
11 | STATUSTIME 1.0 s
12 |
--------------------------------------------------------------------------------
/input/md/benzene_2.md:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/xyzq/benzene_2.xyzq
2 | RANDOMSEED 278049999
3 | TEMPERATURE 298.15 K
4 | BOUNDARY 21.75 A
5 | BOUNDARYSPRING 250.0 kcal/mol*A^2
6 | BOUNDARYTYPE SPHERE
7 | TOTALTIME 1.0000 ps
8 | TIMESTEP 0.0001 ps
9 | GEOMTIME 0.0050 ps
10 | ENERGYTIME 0.0015 ps
11 | GEOMOUT ../../data/md/benzene_2.xyz
12 | ENERGYOUT ../../data/md/benzene_2.dat
13 | STATUSTIME 2.0 s
14 |
--------------------------------------------------------------------------------
/input/md/ch2o.md:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/ch2o.prm
2 | RANDOMSEED 4004010291
3 | TEMPERATURE 298.15 K
4 | BOUNDARY 10.00 A
5 | BOUNDARYTYPE SPHERE
6 | TOTALTIME 20.0000 ps
7 | TIMESTEP 0.0001 ps
8 | GEOMTIME 0.0200 ps
9 | ENERGYTIME 0.0200 ps
10 | GEOMOUT ../../data/md/ch2o.xyz
11 | ENERGYOUT ../../data/md/ch2o.dat
12 | STATUSTIME 2.0 s
13 |
--------------------------------------------------------------------------------
/input/md/co.md:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/co.prm
2 | RANDOMSEED 1750761047
3 | TEMPERATURE 298.15 K
4 | BOUNDARY 17.26 A
5 | BOUNDARYSPRING 250.0 kcal/mol*A^2
6 | BOUNDARYTYPE CUBE
7 | TOTALTIME 3.0000 ps
8 | TIMESTEP 0.0001 ps
9 | GEOMTIME 0.0020 ps
10 | ENERGYTIME 0.0040 ps
11 | GEOMOUT ../../data/md/co.xyz
12 | ENERGYOUT ../../data/md/co.dat
13 | STATUSTIME 1.0 s
14 |
--------------------------------------------------------------------------------
/input/md/ethane.md:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/ethane.prm
2 | RANDOMSEED 3435445132
3 | TEMPERATURE 298.15 K
4 | BOUNDARY 10.00 A
5 | BOUNDARYTYPE SPHERE
6 | TOTALTIME 0.5000 ps
7 | TIMESTEP 0.0001 ps
8 | GEOMTIME 0.0010 ps
9 | ENERGYTIME 0.0010 ps
10 | GEOMOUT ../../data/md/ethane.xyz
11 | ENERGYOUT ../../data/md/ethane.dat
12 | STATUSTIME 5.0 s
13 |
--------------------------------------------------------------------------------
/input/md/h2o.md:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/h2o.prm
2 | RANDOMSEED 3473404960
3 | TEMPERATURE 298.15 K
4 | BOUNDARY 17.26 A
5 | TOTALTIME 1.000 ps
6 | TIMESTEP 0.0001 ps
7 | GEOMTIME 0.0010 ps
8 | ENERGYTIME 0.0020 ps
9 | GEOMOUT ../../data/md/h2o.xyz
10 | ENERGYOUT ../../data/md/h2o.dat
11 | STATUSTIME 1.0 s
12 |
--------------------------------------------------------------------------------
/input/md/h2o_5.md:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/xyzq/h2o_5.xyzq
2 | RANDOMSEED 2946218840
3 | TEMPERATURE 298.15 K
4 | BOUNDARY 10.00 A
5 | BOUNDARYTYPE SPHERE
6 | TOTALTIME 3.0000 ps
7 | TIMESTEP 0.0001 ps
8 | GEOMTIME 0.0100 ps
9 | ENERGYTIME 0.0050 ps
10 | GEOMOUT ../../data/md/h2o_5.xyz
11 | ENERGYOUT ../../data/md/h2o_5.dat
12 | STATUSTIME 5.0 s
13 |
--------------------------------------------------------------------------------
/input/md/he2.md:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/he2.prm
2 | RANDOMSEED 450245880
3 | TEMPERATURE 0.0 K
4 | BOUNDARY 10.0 A
5 | TOTALTIME 10.0000 ps
6 | TIMESTEP 0.0005 ps
7 | GEOMTIME 0.0100 ps
8 | ENERGYTIME 0.0200 ps
9 | GEOMOUT ../../data/md/he2.xyz
10 | ENERGYOUT ../../data/md/he2.dat
11 | STATUSTIME 1.0 s
12 |
--------------------------------------------------------------------------------
/input/md/he20.md:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/he20.prm
2 | RANDOMSEED 3822454941
3 | TEMPERATURE 298.15 K
4 | BOUNDARY 46.86 A
5 | BOUNDARYSPRING 250.0 kcal/mol*A^2
6 | BOUNDARYTYPE SPHERE
7 | TOTALTIME 20.0000 ps
8 | TIMESTEP 0.0010 ps
9 | GEOMTIME 0.1000 ps
10 | ENERGYTIME 0.0500 ps
11 | GEOMOUT ../../data/md/he20.xyz
12 | ENERGYOUT ../../data/md/he20.dat
13 | STATUSTIME 5.0 s
14 |
--------------------------------------------------------------------------------
/input/md/hf.md:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/hf.prm
2 | RANDOMSEED 2982500747
3 | TEMPERATURE 0.0 K
4 | BOUNDARY 10.0 A
5 | TOTALTIME 0.0200 ps
6 | TIMESTEP 0.0001 ps
7 | GEOMTIME 0.0001 ps
8 | ENERGYTIME 0.0001 ps
9 | GEOMOUT ../../data/md/hf.xyz
10 | ENERGYOUT ../../data/md/hf.dat
11 | STATUSTIME 1.0 s
12 |
--------------------------------------------------------------------------------
/input/md/lif.md:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/lif.prm
2 | RANDOMSEED 2571494957
3 | TEMPERATURE 0.00 K
4 | BOUNDARY 10.0 A
5 | TOTALTIME 4.0000 ps
6 | TIMESTEP 0.0010 ps
7 | GEOMTIME 0.0030 ps
8 | ENERGYTIME 0.0050 ps
9 | GEOMOUT ../../data/md/lif.xyz
10 | ENERGYOUT ../../data/md/lif.dat
11 | STATUSTIME 4.0 s
12 |
--------------------------------------------------------------------------------
/input/opt/benzene_2.opt:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/xyzq/benzene_2.xyzq
2 | OPTTYPE CG
3 | OPTCRITERIA DEFAULT
4 | NMAXITER 400
5 | GEOMOUT ../../data/opt/benzene_2.xyz
6 | ENERGYOUT ../../data/opt/benzene_2.dat
7 |
--------------------------------------------------------------------------------
/input/opt/ch2o.opt:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/ch2o.prm
2 | OPTTYPE CG
3 | OPTCRITERIA DEFAULT
4 | NMAXITER 150
5 | GEOMOUT ../../data/opt/ch2o.xyz
6 | ENERGYOUT ../../data/opt/ch2o.dat
7 |
--------------------------------------------------------------------------------
/input/opt/co.opt:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/co.prm
2 | OPTTYPE SD
3 | OPTCRITERIA VERYTIGHT
4 | NMAXITER 80
5 | GEOMOUT ../../data/opt/co.xyz
6 | ENERGYOUT ../../data/opt/co.dat
7 |
--------------------------------------------------------------------------------
/input/opt/ethane.opt:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/xyzq/ethane.xyzq
2 | OPTTYPE CG
3 | OPTCRITERIA DEFAULT
4 | NMAXITER 150
5 | GEOMOUT ../../data/opt/ethane.xyz
6 | ENERGYOUT ../../data/opt/ethane.dat
7 |
--------------------------------------------------------------------------------
/input/opt/h2o.opt:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/xyzq/h2o.xyzq
2 | OPTTYPE CG
3 | OPTCRITERIA TIGHT
4 | NMAXITER 80
5 | GEOMOUT ../../data/opt/h2o.xyz
6 | ENERGYOUT ../../data/opt/h2o.dat
7 |
--------------------------------------------------------------------------------
/input/opt/h2o_5.opt:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/xyzq/h2o_5.xyzq
2 | OPTTYPE CG
3 | OPTCRITERIA DEFAULT
4 | NMAXITER 200
5 | GEOMOUT ../../data/opt/h2o_5.xyz
6 | ENERGYOUT ../../data/opt/h2o_5.dat
7 |
--------------------------------------------------------------------------------
/input/opt/he2.opt:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/he2.prm
2 | OPTTYPE SD
3 | OPTCRITERIA VERYTIGHT
4 | NMAXITER 80
5 | GEOMOUT ../../data/opt/he2.xyz
6 | ENERGYOUT ../../data/opt/he2.dat
7 |
--------------------------------------------------------------------------------
/input/opt/he20.opt:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/he20.prm
2 | OPTTYPE SD
3 | OPTCRITERIA DEFAULT
4 | NMAXITER 800
5 | GEOMOUT ../../data/opt/he20.xyz
6 | ENERGYOUT ../../data/opt/he20.dat
7 |
--------------------------------------------------------------------------------
/input/opt/hf.opt:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/hf.prm
2 | OPTTYPE SD
3 | OPTCRITERIA VERYTIGHT
4 | NMAXITER 80
5 | GEOMOUT ../../data/opt/hf.xyz
6 | ENERGYOUT ../../data/opt/hf.dat
7 |
--------------------------------------------------------------------------------
/input/opt/lif.opt:
--------------------------------------------------------------------------------
1 | MOLECULE ../../geom/prm/lif.prm
2 | OPTTYPE SD
3 | OPTCRITERIA DEFAULT
4 | NMAXITER 50
5 | GEOMOUT ../../data/opt/lif.xyz
6 | ENERGYOUT ../../data/opt/lif.dat
7 |
--------------------------------------------------------------------------------
/plot/mc/benzene_2.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Potential | 2.2673e+00 5.0777e-01 1.8016e+00 1.2907e+01
6 | Non-bonded | 1.3055e+00 8.9091e-03 1.2800e+00 1.3240e+00
7 | Bonded | 9.6181e-01 5.0804e-01 4.9630e-01 1.1620e+01
8 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
9 | Vdw | -6.3999e-01 7.3607e-03 -6.5550e-01 -6.1970e-01
10 | Elst | 1.9455e+00 4.8733e-03 1.9040e+00 1.9590e+00
11 | Bonds | 3.9663e-01 4.2122e-01 1.2950e-01 9.8700e+00
12 | Angles | 2.9499e-01 1.1936e-01 8.9080e-02 1.7520e+00
13 | Torsions | 2.5350e-01 9.5342e-02 4.6580e-09 5.8900e-01
14 | Outofplanes | 1.6680e-02 7.0926e-03 4.7400e-10 5.1710e-02
15 |
--------------------------------------------------------------------------------
/plot/mc/benzene_2.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/mc/benzene_2.pdf
--------------------------------------------------------------------------------
/plot/mc/benzene_2.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/mc/benzene_2.mc
2 | SIMTYPE MC
3 | PLOTOUT ./benzene_2.pdf
4 |
--------------------------------------------------------------------------------
/plot/mc/ch2o.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Potential | 1.7832e+00 1.0326e+00 1.2490e-01 7.1664e+00
6 | Non-bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
7 | Bonded | 1.7832e+00 1.0326e+00 1.2490e-01 7.1660e+00
8 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
9 | Vdw | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
10 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Bonds | 9.0347e-01 7.2148e-01 4.2850e-03 4.6840e+00
12 | Angles | 6.0949e-01 5.8435e-01 4.6640e-04 4.4230e+00
13 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
14 | Outofplanes | 2.7022e-01 3.7535e-01 4.5330e-07 2.9690e+00
15 |
--------------------------------------------------------------------------------
/plot/mc/ch2o.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/mc/ch2o.pdf
--------------------------------------------------------------------------------
/plot/mc/ch2o.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/mc/ch2o.mc
2 | SIMTYPE MC
3 | PLOTOUT ./ch2o.pdf
4 |
--------------------------------------------------------------------------------
/plot/mc/co.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Potential | 3.5235e-01 4.6535e-01 8.0490e-08 3.8018e+00
6 | Non-bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
7 | Bonded | 3.5235e-01 4.6535e-01 8.0490e-08 3.8020e+00
8 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
9 | Vdw | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
10 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Bonds | 3.5235e-01 4.6535e-01 8.0490e-08 3.8020e+00
12 | Angles | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
13 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
14 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
15 |
--------------------------------------------------------------------------------
/plot/mc/co.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/mc/co.pdf
--------------------------------------------------------------------------------
/plot/mc/co.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/mc/co.mc
2 | SIMTYPE MC
3 | PLOTOUT ./co.pdf
4 |
--------------------------------------------------------------------------------
/plot/mc/ethane.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Potential | 5.3675e+01 1.8891e+01 2.8462e-01 1.4701e+02
6 | Non-bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
7 | Bonded | 5.3675e+01 1.8892e+01 2.8460e-01 1.4700e+02
8 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
9 | Vdw | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
10 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Bonds | 2.1002e+01 1.1974e+01 9.5630e-02 1.1150e+02
12 | Angles | 3.1167e+01 1.3997e+01 1.8860e-01 9.5400e+01
13 | Torsions | 1.5054e+00 7.1398e-01 4.1730e-04 2.7780e+00
14 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
15 |
--------------------------------------------------------------------------------
/plot/mc/ethane.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/mc/ethane.pdf
--------------------------------------------------------------------------------
/plot/mc/ethane.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/mc/ethane.mc
2 | SIMTYPE MC
3 | PLOTOUT ./ethane.pdf
4 |
--------------------------------------------------------------------------------
/plot/mc/h2o.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Potential | 8.5977e-01 6.9946e-01 5.5148e-03 4.6959e+00
6 | Non-bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
7 | Bonded | 8.5977e-01 6.9946e-01 5.5150e-03 4.6960e+00
8 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
9 | Vdw | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
10 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Bonds | 5.9803e-01 5.8815e-01 2.0840e-04 3.3440e+00
12 | Angles | 2.6174e-01 3.7511e-01 5.3260e-06 3.4970e+00
13 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
14 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
15 |
--------------------------------------------------------------------------------
/plot/mc/h2o.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/mc/h2o.pdf
--------------------------------------------------------------------------------
/plot/mc/h2o.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/mc/h2o.mc
2 | SIMTYPE MC
3 | PLOTOUT ./h2o.pdf
4 |
--------------------------------------------------------------------------------
/plot/mc/h2o_5.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Potential | -2.5919e+01 2.9075e+00 -3.5596e+01 -1.9655e+01
6 | Non-bonded | -3.1760e+01 2.8680e+00 -4.3570e+01 -2.5520e+01
7 | Bonded | 5.8415e+00 2.1697e+00 1.5730e+00 1.3750e+01
8 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
9 | Vdw | 6.3505e+00 2.8491e+00 1.3360e+00 1.7360e+01
10 | Elst | -3.8111e+01 5.1654e+00 -5.5250e+01 -2.9920e+01
11 | Bonds | 4.0010e+00 1.8650e+00 5.4860e-01 1.2070e+01
12 | Angles | 1.8406e+00 1.1438e+00 7.9230e-02 6.4090e+00
13 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
14 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
15 |
--------------------------------------------------------------------------------
/plot/mc/h2o_5.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/mc/h2o_5.pdf
--------------------------------------------------------------------------------
/plot/mc/h2o_5.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/mc/h2o_5.mc
2 | SIMTYPE MC
3 | PLOTOUT ./h2o_5.pdf
4 |
--------------------------------------------------------------------------------
/plot/mc/he2.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Potential | 5.1342e-03 1.0411e-01 -1.8001e-03 2.3189e+00
6 | Non-bonded | -1.5099e-05 1.2723e-04 -1.8000e-03 -7.1070e-10
7 | Bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
8 | Boundary | 5.1494e-03 1.0411e-01 0.0000e+00 2.3190e+00
9 | Vdw | -1.5099e-05 1.2723e-04 -1.8000e-03 -7.1070e-10
10 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Bonds | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
12 | Angles | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
13 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
14 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
15 |
--------------------------------------------------------------------------------
/plot/mc/he2.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/mc/he2.pdf
--------------------------------------------------------------------------------
/plot/mc/he2.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/mc/he2.mc
2 | SIMTYPE MC
3 | PLOTOUT ./he2.pdf
4 |
--------------------------------------------------------------------------------
/plot/mc/he20.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Potential | 7.9946e-03 1.9628e-01 -9.9984e-01 2.4467e+00
6 | Non-bonded | -1.2716e-02 8.7159e-02 -9.9980e-01 4.7840e-01
7 | Bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
8 | Boundary | 2.0711e-02 1.7450e-01 0.0000e+00 2.4480e+00
9 | Vdw | -1.2716e-02 8.7159e-02 -9.9980e-01 4.7840e-01
10 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Bonds | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
12 | Angles | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
13 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
14 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
15 |
--------------------------------------------------------------------------------
/plot/mc/he20.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/mc/he20.pdf
--------------------------------------------------------------------------------
/plot/mc/he20.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/mc/he20.mc
2 | SIMTYPE MC
3 | PLOTOUT ./he20.pdf
4 |
--------------------------------------------------------------------------------
/plot/mc/hf.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Potential | 1.0267e-02 1.4674e-01 7.1633e-11 4.6425e+00
6 | Non-bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
7 | Bonded | 1.0266e-02 1.4672e-01 7.1630e-11 4.6420e+00
8 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
9 | Vdw | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
10 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Bonds | 1.0266e-02 1.4672e-01 7.1630e-11 4.6420e+00
12 | Angles | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
13 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
14 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
15 |
--------------------------------------------------------------------------------
/plot/mc/hf.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/mc/hf.pdf
--------------------------------------------------------------------------------
/plot/mc/hf.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/mc/hf.mc
2 | SIMTYPE MC
3 | PLOTOUT ./hf.pdf
4 |
--------------------------------------------------------------------------------
/plot/mc/lif.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Potential | -1.7664e+02 9.2339e+00 -1.7785e+02 -8.3025e+01
6 | Non-bonded | -1.7659e+02 9.2273e+00 -1.7780e+02 -8.3020e+01
7 | Bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
8 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
9 | Vdw | 1.5041e+01 2.1163e+00 -3.3390e-02 1.5750e+01
10 | Elst | -1.9168e+02 1.1226e+01 -1.9360e+02 -8.3020e+01
11 | Bonds | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
12 | Angles | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
13 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
14 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
15 |
--------------------------------------------------------------------------------
/plot/mc/lif.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/mc/lif.pdf
--------------------------------------------------------------------------------
/plot/mc/lif.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/mc/lif.mc
2 | SIMTYPE MC
3 | PLOTOUT ./lif.pdf
4 |
--------------------------------------------------------------------------------
/plot/md/benzene_2.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Total | 3.4237e+01 9.9663e-04 3.4235e+01 3.4239e+01
6 | Kinetic | 1.8234e+01 2.6767e+00 1.1180e+01 2.5310e+01
7 | Potential | 1.6003e+01 2.6776e+00 8.9240e+00 2.3060e+01
8 | Non-bonded | 1.0572e+00 4.5248e-01 1.3030e-02 3.9230e+00
9 | Bonded | 1.4946e+01 2.6414e+00 7.6600e+00 2.1780e+01
10 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Vdw | -9.5754e-01 4.6501e-01 -2.0100e+00 1.9560e+00
12 | Elst | 2.0148e+00 5.6040e-02 1.8980e+00 2.1430e+00
13 | Bonds | 7.3865e+00 2.2626e+00 2.0020e+00 1.3180e+01
14 | Angles | 4.1656e+00 1.1187e+00 1.2750e+00 7.8130e+00
15 | Torsions | 3.1784e+00 9.0414e-01 4.6580e-09 5.6100e+00
16 | Outofplanes | 2.1552e-01 7.3129e-02 4.7400e-10 4.5050e-01
17 |
--------------------------------------------------------------------------------
/plot/md/benzene_2.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/md/benzene_2.pdf
--------------------------------------------------------------------------------
/plot/md/benzene_2.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/md/benzene_2.md
2 | SIMTYPE MD
3 | PLOTOUT ./benzene_2.pdf
4 |
--------------------------------------------------------------------------------
/plot/md/ch2o.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Total | 3.9119e+00 1.1756e-04 3.9115e+00 3.9122e+00
6 | Kinetic | 2.4358e+00 6.2942e-01 1.0980e+00 3.8300e+00
7 | Potential | 1.4761e+00 6.2951e-01 8.1230e-02 2.8140e+00
8 | Non-bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
9 | Bonded | 1.4761e+00 6.2951e-01 8.1230e-02 2.8140e+00
10 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Vdw | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
12 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
13 | Bonds | 1.8160e-01 1.4167e-01 5.8100e-04 7.8240e-01
14 | Angles | 5.9451e-01 3.6666e-01 1.7370e-03 1.8070e+00
15 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
16 | Outofplanes | 6.9994e-01 5.4241e-01 2.1970e-06 1.9570e+00
17 |
--------------------------------------------------------------------------------
/plot/md/ch2o.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/md/ch2o.pdf
--------------------------------------------------------------------------------
/plot/md/ch2o.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/md/ch2o.md
2 | SIMTYPE MD
3 | PLOTOUT ./ch2o.pdf
4 |
--------------------------------------------------------------------------------
/plot/md/co.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Total | 2.4027e+00 1.0141e-04 2.4025e+00 2.4028e+00
6 | Kinetic | 2.0404e+00 2.5704e-01 1.6430e+00 2.4030e+00
7 | Potential | 3.6224e-01 2.5713e-01 2.7820e-06 7.5980e-01
8 | Non-bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
9 | Bonded | 3.6224e-01 2.5713e-01 2.7820e-06 7.5980e-01
10 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Vdw | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
12 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
13 | Bonds | 3.6224e-01 2.5713e-01 2.7820e-06 7.5980e-01
14 | Angles | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
15 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
16 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
17 |
--------------------------------------------------------------------------------
/plot/md/co.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/md/co.pdf
--------------------------------------------------------------------------------
/plot/md/co.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/md/co.md
2 | SIMTYPE MD
3 | PLOTOUT ./co.pdf
4 |
--------------------------------------------------------------------------------
/plot/md/ethane.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Total | 7.3952e+00 2.3634e-04 7.3944e+00 7.3959e+00
6 | Kinetic | 4.4800e+00 7.4311e-01 2.3720e+00 7.1100e+00
7 | Potential | 2.9152e+00 7.4330e-01 2.8460e-01 5.0230e+00
8 | Non-bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
9 | Bonded | 2.9152e+00 7.4330e-01 2.8460e-01 5.0230e+00
10 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Vdw | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
12 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
13 | Bonds | 1.0066e+00 3.2497e-01 9.5630e-02 1.8550e+00
14 | Angles | 1.8695e+00 6.7851e-01 1.8860e-01 4.0930e+00
15 | Torsions | 3.9067e-02 1.9550e-02 4.1730e-04 1.1070e-01
16 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
17 |
--------------------------------------------------------------------------------
/plot/md/ethane.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/md/ethane.pdf
--------------------------------------------------------------------------------
/plot/md/ethane.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/md/ethane.md
2 | SIMTYPE MD
3 | PLOTOUT ./ethane.pdf
4 |
--------------------------------------------------------------------------------
/plot/md/h2o.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Total | 3.5944e+00 3.1056e-04 3.5937e+00 3.5951e+00
6 | Kinetic | 2.7036e+00 4.5665e-01 1.6200e+00 3.5560e+00
7 | Potential | 8.9079e-01 4.5692e-01 3.7490e-02 1.9750e+00
8 | Non-bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
9 | Bonded | 8.9063e-01 4.5699e-01 3.7490e-02 1.9750e+00
10 | Boundary | 1.6210e-04 3.6246e-03 0.0000e+00 8.1210e-02
11 | Vdw | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
12 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
13 | Bonds | 3.2638e-01 2.0655e-01 4.2000e-04 9.5200e-01
14 | Angles | 5.6426e-01 4.2071e-01 5.4750e-08 1.5960e+00
15 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
16 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
17 |
--------------------------------------------------------------------------------
/plot/md/h2o.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/md/h2o.pdf
--------------------------------------------------------------------------------
/plot/md/h2o.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/md/h2o.md
2 | SIMTYPE MD
3 | PLOTOUT ./h2o.pdf
4 |
--------------------------------------------------------------------------------
/plot/md/h2o_5.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Total | -2.2264e+01 8.2132e-04 -2.2266e+01 -2.2262e+01
6 | Kinetic | 8.8608e+00 1.2825e+00 5.4860e+00 1.3330e+01
7 | Potential | -3.1125e+01 1.2832e+00 -3.5600e+01 -2.7750e+01
8 | Non-bonded | -3.6334e+01 2.0992e+00 -4.3570e+01 -3.1480e+01
9 | Bonded | 5.2020e+00 2.0903e+00 3.6400e-01 1.1680e+01
10 | Boundary | 7.6619e-03 5.9287e-02 0.0000e+00 8.7970e-01
11 | Vdw | 9.4451e+00 1.8239e+00 5.5210e+00 1.4940e+01
12 | Elst | -4.5779e+01 2.9177e+00 -5.5270e+01 -3.8690e+01
13 | Bonds | 3.2173e+00 1.6842e+00 2.0210e-01 7.2170e+00
14 | Angles | 1.9847e+00 1.2610e+00 1.0110e-01 5.4590e+00
15 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
16 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
17 |
--------------------------------------------------------------------------------
/plot/md/h2o_5.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/md/h2o_5.pdf
--------------------------------------------------------------------------------
/plot/md/h2o_5.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/md/h2o_5.md
2 | SIMTYPE MD
3 | PLOTOUT ./h2o_5.pdf
4 |
--------------------------------------------------------------------------------
/plot/md/he2.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Total | -1.8001e-03 5.8781e-09 -1.8001e-03 -1.8000e-03
6 | Kinetic | 2.2883e-03 2.5508e-03 5.9620e-23 8.2000e-03
7 | Potential | -4.0884e-03 2.5508e-03 -1.0000e-02 -1.8000e-03
8 | Non-bonded | -4.0884e-03 2.5508e-03 -1.0000e-02 -1.8000e-03
9 | Bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
10 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Vdw | -4.0884e-03 2.5508e-03 -1.0000e-02 -1.8000e-03
12 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
13 | Bonds | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
14 | Angles | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
15 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
16 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
17 |
--------------------------------------------------------------------------------
/plot/md/he2.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/md/he2.pdf
--------------------------------------------------------------------------------
/plot/md/he2.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/md/he2.md
2 | SIMTYPE MD
3 | PLOTOUT ./he2.pdf
4 |
--------------------------------------------------------------------------------
/plot/md/he20.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Total | 1.8272e+01 1.6110e-02 1.8230e+01 1.8319e+01
6 | Kinetic | 1.8266e+01 2.4256e-01 1.4800e+01 1.9040e+01
7 | Potential | 5.3029e-03 2.4507e-01 -7.8720e-01 3.5230e+00
8 | Non-bonded | -2.1288e-02 1.0733e-01 -7.8720e-01 7.6750e-01
9 | Bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
10 | Boundary | 2.6591e-02 2.1867e-01 0.0000e+00 3.5270e+00
11 | Vdw | -2.1288e-02 1.0733e-01 -7.8720e-01 7.6750e-01
12 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
13 | Bonds | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
14 | Angles | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
15 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
16 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
17 |
--------------------------------------------------------------------------------
/plot/md/he20.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/md/he20.pdf
--------------------------------------------------------------------------------
/plot/md/he20.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/md/he20.md
2 | SIMTYPE MD
3 | PLOTOUT ./he20.pdf
4 |
--------------------------------------------------------------------------------
/plot/md/hf.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Total | 4.6391e+00 2.4166e-03 4.6357e+00 4.6425e+00
6 | Kinetic | 2.3163e+00 1.6383e+00 5.9620e-23 4.6360e+00
7 | Potential | 2.3227e+00 1.6407e+00 5.2770e-07 4.6420e+00
8 | Non-bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
9 | Bonded | 2.3227e+00 1.6407e+00 5.2770e-07 4.6420e+00
10 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Vdw | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
12 | Elst | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
13 | Bonds | 2.3227e+00 1.6407e+00 5.2770e-07 4.6420e+00
14 | Angles | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
15 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
16 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
17 |
--------------------------------------------------------------------------------
/plot/md/hf.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/md/hf.pdf
--------------------------------------------------------------------------------
/plot/md/hf.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/md/hf.md
2 | SIMTYPE MD
3 | PLOTOUT ./hf.pdf
4 |
--------------------------------------------------------------------------------
/plot/md/lif.log:
--------------------------------------------------------------------------------
1 |
2 | ------------- Energy Component Properties [kcal/mol] -------------
3 | component avg std min max
4 | ------------------------------------------------------------------
5 | Total | -8.3212e+01 6.9072e-01 -8.6837e+01 -7.8162e+01
6 | Kinetic | 2.4205e+01 2.7261e+01 5.9620e-23 9.3880e+01
7 | Potential | -1.0742e+02 2.7525e+01 -1.7780e+02 -7.8970e+01
8 | Non-bonded | -1.0742e+02 2.7525e+01 -1.7780e+02 -7.8970e+01
9 | Bonded | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
10 | Boundary | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
11 | Vdw | 5.1668e+00 2.1722e+01 -3.3410e-02 1.5390e+02
12 | Elst | -1.1258e+02 3.7421e+01 -2.3290e+02 -8.2990e+01
13 | Bonds | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
14 | Angles | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
15 | Torsions | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
16 | Outofplanes | 0.0000e+00 0.0000e+00 0.0000e+00 0.0000e+00
17 |
--------------------------------------------------------------------------------
/plot/md/lif.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/tmpchem/computational_chemistry/14964a0cc6ded3856650285b5cc79396f94a7693/plot/md/lif.pdf
--------------------------------------------------------------------------------
/plot/md/lif.plt:
--------------------------------------------------------------------------------
1 | INPUT ../../input/md/lif.md
2 | SIMTYPE MD
3 | PLOTOUT ./lif.pdf
4 |
--------------------------------------------------------------------------------
/scripts/geometry_analysis/angles.py:
--------------------------------------------------------------------------------
1 | import sys, math
2 |
3 | ## CONSTANTS ##
4 |
5 | # threshold beyond average of covalent radiii to determine bond cutoff
6 | bond_thresh = 1.2
7 |
8 | # conversion from radians to degrees and vice versa
9 | rad2deg = 180.0 / math.pi
10 | deg2rad = 1.0 / rad2deg
11 |
12 | # covalent (or ionic) radii by atomic element (Angstroms) from
13 | # "Inorganic Chemistry" 3rd ed, Housecroft, Appendix 6, pgs 1013-1014
14 | cov_rads = { 'H' : 0.37, 'C' : 0.77, 'O' : 0.73, 'N' : 0.75, 'F' : 0.71,
15 | 'P' : 1.10, 'S' : 1.03, 'Cl': 0.99, 'Br': 1.14, 'I' : 1.33, 'He': 0.30,
16 | 'Ne': 0.84, 'Ar': 1.00, 'Li': 1.02, 'Be': 0.27, 'B' : 0.88, 'Na': 1.02,
17 | 'Mg': 0.72, 'Al': 1.30, 'Si': 1.18, 'K' : 1.38, 'Ca': 1.00, 'Sc': 0.75,
18 | 'Ti': 0.86, 'V' : 0.79, 'Cr': 0.73, 'Mn': 0.67, 'Fe': 0.61, 'Co': 0.64,
19 | 'Ni': 0.55, 'Cu': 0.46, 'Zn': 0.60, 'Ga': 1.22, 'Ge': 1.22, 'As': 1.22,
20 | 'Se': 1.17, 'Kr': 1.03, 'X' : 0.00}
21 |
22 | ## IO FUNCTIONS ##
23 |
24 | # read file data into a 2-d array
25 | def get_file_string_array(file_name):
26 | try:
27 | file = open(file_name, "r")
28 | except IOError:
29 | print('Error: file (%s) not found!\n' % (file_name))
30 | sys.exit()
31 | lines = file.readlines()
32 | file.close()
33 | array = []
34 | for line in lines:
35 | array.append(line.split())
36 | return array
37 |
38 | # read in geometry from xyz file
39 | def get_geom(xyz_file_name):
40 | xyz_array = get_file_string_array(xyz_file_name)
41 | n_atoms = int(xyz_array[0][0])
42 | at_types = ['' for i in range(n_atoms)]
43 | coords = [[0.0 for j in range(3)] for i in range(n_atoms)]
44 | for i in range(n_atoms):
45 | at_types[i] = xyz_array[i+2][0]
46 | for j in range(3):
47 | coords[i][j] = float(xyz_array[i+2][j+1])
48 | geom = [at_types, coords]
49 | return geom
50 |
51 | # input syntax and usage warnings
52 | def get_inputs():
53 | if (not len(sys.argv) == 2):
54 | print('Usage: %s XYZ_FILE\n' % (sys.argv[0]))
55 | print(' XYZ_FILE: coordinates of target molecule\n')
56 | sys.exit()
57 | else:
58 | xyz_file_name = sys.argv[1]
59 | return xyz_file_name
60 |
61 | # print geometry to screen
62 | def print_geom(geom, comment):
63 | at_types, coords = geom[0:2]
64 | n_atoms = len(at_types)
65 | print('%i\n%s\n' % (n_atoms, comment), end='')
66 | for i in range(n_atoms):
67 | print('%-2s' % (at_types[i]), end='')
68 | for j in range(3):
69 | print(' %12.6f' % (coords[i][j]), end='')
70 | print('\n', end='')
71 | print('\n', end='')
72 |
73 | # print bond graph to screen
74 | def print_bond_graph(geom, bond_graph, comment):
75 | at_types = geom[0]
76 | n_atoms = len(at_types)
77 | print('%s\n' % (comment), end='')
78 | for i in range(n_atoms):
79 | print(' %4i %-2s -' % (i+1, at_types[i]), end='')
80 | for j in range(len(bond_graph[i])):
81 | print(' %i' % (bond_graph[i][j] + 1), end='')
82 | print('\n', end='')
83 | print('\n', end='')
84 |
85 | # print list of bond lengths to screen
86 | def print_bonds(geom, bonds):
87 | at_types = geom[0]
88 | n_bonds = len(bonds)
89 | print('%i bond(s) found (Angstrom)' % (n_bonds))
90 | for q in range(n_bonds):
91 | n1, n2 = bonds[q][0:2]
92 | r12 = bonds[q][2]
93 | nstr = '%i-%i' % (n1+1, n2+1)
94 | tstr = '(%s-%s) ' % (at_types[n1], at_types[n2])
95 | print(' %-15s %-13s %6.4f\n' % (nstr, tstr, r12), end='')
96 | print('\n', end='')
97 |
98 | # print list of bond angles to screen
99 | def print_angles(geom, angles):
100 | at_types = geom[0]
101 | n_angles = len(angles)
102 | print('%i angle(s) found (degrees)' % (n_angles))
103 | for q in range(n_angles):
104 | n1, n2, n3 = angles[q][0:3]
105 | a123 = angles[q][3]
106 | nstr = '%i-%i-%i' % (n1+1, n2+1, n3+1)
107 | tstr = '(%s-%s-%s) ' % (at_types[n1], at_types[n2], at_types[n3])
108 | print(' %-15s %-13s %7.3f\n' % (nstr, tstr, a123), end='')
109 | print('\n', end='')
110 |
111 | ## MATH FUNCTIONS ##
112 |
113 | # calculate distance between two 3-d cartesian coordinates
114 | def get_r12(coords1, coords2):
115 | r2 = 0.0
116 | for p in range(3):
117 | r2 += (coords2[p] - coords1[p])**2
118 | r = math.sqrt(r2)
119 | return r
120 |
121 | # calculate unit vector between to 3-d cartesian coordinates
122 | def get_u12(coords1, coords2):
123 | r12 = get_r12(coords1, coords2)
124 | u12 = [0.0 for p in range(3)]
125 | for p in range(3):
126 | u12[p] = (coords2[p] - coords1[p]) / r12
127 | return u12
128 |
129 | # calculate dot product between two unit vectors
130 | def get_udp(uvec1, uvec2):
131 | udp = 0.0
132 | for p in range(3):
133 | udp += uvec1[p] * uvec2[p]
134 | udp = max(min(udp, 1.0), -1.0)
135 | return udp
136 |
137 | # calculate unit cross product between two unit vectors
138 | def get_ucp(uvec1, uvec2):
139 | ucp = [0.0 for p in range(3)]
140 | cos_12 = get_udp(uvec1, uvec2)
141 | sin_12 = math.sqrt(1 - cos_12**2)
142 | ucp[0] = (uvec1[1]*uvec2[2] - uvec1[2]*uvec2[1]) / sin_12
143 | ucp[1] = (uvec1[2]*uvec2[0] - uvec1[0]*uvec2[2]) / sin_12
144 | ucp[2] = (uvec1[0]*uvec2[1] - uvec1[1]*uvec2[0]) / sin_12
145 | return ucp
146 |
147 | # calculate angle between three 3-d cartesian coordinates
148 | def get_a123(coords1, coords2, coords3):
149 | u21 = get_u12(coords2, coords1)
150 | u23 = get_u12(coords2, coords3)
151 | dp2123 = get_udp(u21, u23)
152 | a123 = rad2deg * math.acos(dp2123)
153 | return a123
154 |
155 | ## TOPOLOGY FUNCTIONS ##
156 |
157 | # build graph of which atoms are covalently bonded
158 | def get_bond_graph(geom):
159 | at_types, coords = geom[0:2]
160 | n_atoms = len(at_types)
161 | bond_graph = [[] for i in range(n_atoms)]
162 | for i in range(n_atoms):
163 | covrad1 = cov_rads[at_types[i]]
164 | for j in range(i+1, n_atoms):
165 | covrad2 = cov_rads[at_types[j]]
166 | thresh = bond_thresh * (covrad1 + covrad2)
167 | r12 = get_r12(coords[i], coords[j])
168 | if (r12 < thresh):
169 | bond_graph[i].append(j)
170 | bond_graph[j].append(i)
171 | return bond_graph
172 |
173 | # determine atoms which are covalently bonded from bond graph
174 | def get_bonds(geom, bond_graph):
175 | at_types, coords = geom[0:2]
176 | n_atoms = len(at_types)
177 | bonds = []
178 | for i in range(n_atoms):
179 | for a in range(len(bond_graph[i])):
180 | j = bond_graph[i][a]
181 | if (i < j):
182 | r12 = get_r12(coords[i], coords[j])
183 | bonds.append([i, j, r12])
184 | return bonds
185 |
186 | # determine atoms which form a bond angle from bond graph
187 | def get_angles(geom, bond_graph):
188 | at_types, coords = geom[0:2]
189 | n_atoms = len(at_types)
190 | angles = []
191 | for j in range(n_atoms):
192 | n_jbonds = len(bond_graph[j])
193 | for a in range(n_jbonds):
194 | i = bond_graph[j][a]
195 | for b in range(a+1, n_jbonds):
196 | k = bond_graph[j][b]
197 | a123 = get_a123(coords[i], coords[j], coords[k])
198 | angles.append([i, j, k, a123])
199 | return angles
200 |
201 | ## MAIN BLOCK ##
202 |
203 | # read in geometry, determine bonded topology
204 | xyz_file_name = get_inputs()
205 | geom = get_geom(xyz_file_name)
206 | bond_graph = get_bond_graph(geom)
207 |
208 | # calculate bond lengths and bond angles
209 | bonds = get_bonds(geom, bond_graph)
210 | angles = get_angles(geom, bond_graph)
211 |
212 | # print resulting values
213 | print_geom(geom, 'initial geometry')
214 | print_bonds(geom, bonds)
215 | print_angles(geom, angles)
216 |
217 | # end of program
218 |
--------------------------------------------------------------------------------
/scripts/geometry_analysis/bonds.py:
--------------------------------------------------------------------------------
1 | import sys, math
2 |
3 | ## CONSTANTS ##
4 |
5 | # threshold beyond average of covalent radiii to determine bond cutoff
6 | bond_thresh = 1.2
7 |
8 | # covalent (or ionic) radii by atomic element (Angstroms) from
9 | # "Inorganic Chemistry" 3rd ed, Housecroft, Appendix 6, pgs 1013-1014
10 | cov_rads = { 'H' : 0.37, 'C' : 0.77, 'O' : 0.73, 'N' : 0.75, 'F' : 0.71,
11 | 'P' : 1.10, 'S' : 1.03, 'Cl': 0.99, 'Br': 1.14, 'I' : 1.33, 'He': 0.30,
12 | 'Ne': 0.84, 'Ar': 1.00, 'Li': 1.02, 'Be': 0.27, 'B' : 0.88, 'Na': 1.02,
13 | 'Mg': 0.72, 'Al': 1.30, 'Si': 1.18, 'K' : 1.38, 'Ca': 1.00, 'Sc': 0.75,
14 | 'Ti': 0.86, 'V' : 0.79, 'Cr': 0.73, 'Mn': 0.67, 'Fe': 0.61, 'Co': 0.64,
15 | 'Ni': 0.55, 'Cu': 0.46, 'Zn': 0.60, 'Ga': 1.22, 'Ge': 1.22, 'As': 1.22,
16 | 'Se': 1.17, 'Kr': 1.03, 'X' : 0.00}
17 |
18 | ## IO FUNCTIONS ##
19 |
20 | # read file data into a 2-d array
21 | def get_file_string_array(file_name):
22 | try:
23 | file = open(file_name, "r")
24 | except IOError:
25 | print('Error: file (%s) not found!\n' % (file_name))
26 | sys.exit()
27 | lines = file.readlines()
28 | file.close()
29 | array = []
30 | for line in lines:
31 | array.append(line.split())
32 | return array
33 |
34 | # read in geometry from xyz file
35 | def get_geom(xyz_file_name):
36 | xyz_array = get_file_string_array(xyz_file_name)
37 | n_atoms = int(xyz_array[0][0])
38 | at_types = ['' for i in range(n_atoms)]
39 | coords = [[0.0 for j in range(3)] for i in range(n_atoms)]
40 | for i in range(n_atoms):
41 | at_types[i] = xyz_array[i+2][0]
42 | for j in range(3):
43 | coords[i][j] = float(xyz_array[i+2][j+1])
44 | geom = [at_types, coords]
45 | return geom
46 |
47 | # input syntax and usage warnings
48 | def get_inputs():
49 | if (not len(sys.argv) == 2):
50 | print('Usage: %s XYZ_FILE\n' % (sys.argv[0]))
51 | print(' XYZ_FILE: coordinates of target molecule\n')
52 | sys.exit()
53 | else:
54 | xyz_file_name = sys.argv[1]
55 | return xyz_file_name
56 |
57 | # print geometry to screen
58 | def print_geom(geom, comment):
59 | at_types, coords = geom[0:2]
60 | n_atoms = len(at_types)
61 | print('%i\n%s\n' % (n_atoms, comment), end='')
62 | for i in range(n_atoms):
63 | print('%-2s' % (at_types[i]), end='')
64 | for j in range(3):
65 | print(' %12.6f' % (coords[i][j]), end='')
66 | print('\n', end='')
67 | print('\n', end='')
68 |
69 | # print bond graph to screen
70 | def print_bond_graph(geom, bond_graph, comment):
71 | at_types = geom[0]
72 | n_atoms = len(at_types)
73 | print('%s\n' % (comment), end='')
74 | for i in range(n_atoms):
75 | print(' %4i %-2s -' % (i+1, at_types[i]), end='')
76 | for j in range(len(bond_graph[i])):
77 | print(' %i' % (bond_graph[i][j] + 1), end='')
78 | print('\n', end='')
79 | print('\n', end='')
80 |
81 | # print list of bond lengths to screen
82 | def print_bonds(geom, bonds):
83 | at_types = geom[0]
84 | n_bonds = len(bonds)
85 | print('%i bond(s) found (Angstrom)' % (n_bonds))
86 | for q in range(n_bonds):
87 | n1, n2 = bonds[q][0:2]
88 | r12 = bonds[q][2]
89 | nstr = '%i-%i' % (n1+1, n2+1)
90 | tstr = '(%s-%s) ' % (at_types[n1], at_types[n2])
91 | print(' %-15s %-13s %6.4f\n' % (nstr, tstr, r12), end='')
92 | print('\n', end='')
93 |
94 | ## MATH FUNCTIONS ##
95 |
96 | # calculate distance between two 3-d cartesian coordinates
97 | def get_r12(coords1, coords2):
98 | r2 = 0.0
99 | for p in range(3):
100 | r2 += (coords2[p] - coords1[p])**2
101 | r = math.sqrt(r2)
102 | return r
103 |
104 | ## TOPOLOGY FUNCTIONS ##
105 |
106 | # build graph of which atoms are covalently bonded
107 | def get_bond_graph(geom):
108 | at_types, coords = geom[0:2]
109 | n_atoms = len(at_types)
110 | bond_graph = [[] for i in range(n_atoms)]
111 | for i in range(n_atoms):
112 | covrad1 = cov_rads[at_types[i]]
113 | for j in range(i+1, n_atoms):
114 | covrad2 = cov_rads[at_types[j]]
115 | thresh = bond_thresh * (covrad1 + covrad2)
116 | r12 = get_r12(coords[i], coords[j])
117 | if (r12 < thresh):
118 | bond_graph[i].append(j)
119 | bond_graph[j].append(i)
120 | return bond_graph
121 |
122 | # determine atoms which are covalently bonded from bond graph
123 | def get_bonds(geom, bond_graph):
124 | at_types, coords = geom[0:2]
125 | n_atoms = len(at_types)
126 | bonds = []
127 | for i in range(n_atoms):
128 | for a in range(len(bond_graph[i])):
129 | j = bond_graph[i][a]
130 | if (i < j):
131 | r12 = get_r12(coords[i], coords[j])
132 | bonds.append([i, j, r12])
133 | return bonds
134 |
135 | ## MAIN BLOCK ##
136 |
137 | # read in geometry, determine bonded topology
138 | xyz_file_name = get_inputs()
139 | geom = get_geom(xyz_file_name)
140 | bond_graph = get_bond_graph(geom)
141 |
142 | # calculate bond lengths
143 | bonds = get_bonds(geom, bond_graph)
144 |
145 | # print resulting values
146 | print_geom(geom, 'initial geometry')
147 | print_bond_graph(geom, bond_graph, 'bond graph')
148 | print_bonds(geom, bonds)
149 |
150 | # end of program
151 |
--------------------------------------------------------------------------------
/scripts/geometry_analysis/torsions.py:
--------------------------------------------------------------------------------
1 | import sys, math
2 |
3 | ## CONSTANTS ##
4 |
5 | # threshold beyond average of covalent radiii to determine bond cutoff
6 | bond_thresh = 1.2
7 |
8 | # conversion from radians to degrees and vice versa
9 | rad2deg = 180.0 / math.pi
10 | deg2rad = 1.0 / rad2deg
11 |
12 | # covalent (or ionic) radii by atomic element (Angstroms) from
13 | # "Inorganic Chemistry" 3rd ed, Housecroft, Appendix 6, pgs 1013-1014
14 | cov_rads = { 'H' : 0.37, 'C' : 0.77, 'O' : 0.73, 'N' : 0.75, 'F' : 0.71,
15 | 'P' : 1.10, 'S' : 1.03, 'Cl': 0.99, 'Br': 1.14, 'I' : 1.33, 'He': 0.30,
16 | 'Ne': 0.84, 'Ar': 1.00, 'Li': 1.02, 'Be': 0.27, 'B' : 0.88, 'Na': 1.02,
17 | 'Mg': 0.72, 'Al': 1.30, 'Si': 1.18, 'K' : 1.38, 'Ca': 1.00, 'Sc': 0.75,
18 | 'Ti': 0.86, 'V' : 0.79, 'Cr': 0.73, 'Mn': 0.67, 'Fe': 0.61, 'Co': 0.64,
19 | 'Ni': 0.55, 'Cu': 0.46, 'Zn': 0.60, 'Ga': 1.22, 'Ge': 1.22, 'As': 1.22,
20 | 'Se': 1.17, 'Kr': 1.03, 'X' : 0.00}
21 |
22 | ## IO FUNCTIONS ##
23 |
24 | # read file data into a 2-d array
25 | def get_file_string_array(file_name):
26 | try:
27 | file = open(file_name, "r")
28 | except IOError:
29 | print('Error: file (%s) not found!\n' % (file_name))
30 | sys.exit()
31 | lines = file.readlines()
32 | file.close()
33 | array = []
34 | for line in lines:
35 | array.append(line.split())
36 | return array
37 |
38 | # read in geometry from xyz file
39 | def get_geom(xyz_file_name):
40 | xyz_array = get_file_string_array(xyz_file_name)
41 | n_atoms = int(xyz_array[0][0])
42 | at_types = ['' for i in range(n_atoms)]
43 | coords = [[0.0 for j in range(3)] for i in range(n_atoms)]
44 | for i in range(n_atoms):
45 | at_types[i] = xyz_array[i+2][0]
46 | for j in range(3):
47 | coords[i][j] = float(xyz_array[i+2][j+1])
48 | geom = [at_types, coords]
49 | return geom
50 |
51 | # input syntax and usage warnings
52 | def get_inputs():
53 | if (not len(sys.argv) == 2):
54 | print('Usage: torsions.py XYZ_FILE\n')
55 | print(' XYZ_FILE: coordinates of target molecule\n')
56 | sys.exit()
57 | else:
58 | xyz_file_name = sys.argv[1]
59 | return xyz_file_name
60 |
61 | # print geometry to screen
62 | def print_geom(geom, comment):
63 | at_types, coords = geom[0:2]
64 | n_atoms = len(at_types)
65 | print('%i\n%s\n' % (n_atoms, comment), end='')
66 | for i in range(n_atoms):
67 | print('%-2s' % (at_types[i]), end='')
68 | for j in range(3):
69 | print(' %12.6f' % (coords[i][j]), end='')
70 | print('\n', end='')
71 | print('\n', end='')
72 |
73 | # print bond graph to screen
74 | def print_bond_graph(geom, bond_graph, comment):
75 | at_types = geom[0]
76 | n_atoms = len(at_types)
77 | print('%s\n' % (comment), end='')
78 | for i in range(n_atoms):
79 | print(' %4i %-2s -' % (i+1, at_types[i]), end='')
80 | for j in range(len(bond_graph[i])):
81 | print(' %i' % (bond_graph[i][j] + 1), end='')
82 | print('\n', end='')
83 | print('\n', end='')
84 |
85 | # print list of bond lengths to screen
86 | def print_bonds(geom, bonds):
87 | at_types = geom[0]
88 | n_bonds = len(bonds)
89 | print('%i bond(s) found (Angstrom)' % (n_bonds))
90 | for q in range(n_bonds):
91 | n1, n2 = bonds[q][0:2]
92 | r12 = bonds[q][2]
93 | nstr = '%i-%i' % (n1+1, n2+1)
94 | tstr = '(%s-%s) ' % (at_types[n1], at_types[n2])
95 | print(' %-15s %-13s %6.4f\n' % (nstr, tstr, r12), end='')
96 | print('\n', end='')
97 |
98 | # print list of bond angles to screen
99 | def print_angles(geom, angles):
100 | at_types = geom[0]
101 | n_angles = len(angles)
102 | print('%i angle(s) found (degrees)' % (n_angles))
103 | for q in range(n_angles):
104 | n1, n2, n3 = angles[q][0:3]
105 | a123 = angles[q][3]
106 | nstr = '%i-%i-%i' % (n1+1, n2+1, n3+1)
107 | tstr = '(%s-%s-%s) ' % (at_types[n1], at_types[n2], at_types[n3])
108 | print(' %-15s %-13s %7.3f\n' % (nstr, tstr, a123), end='')
109 | print('\n', end='')
110 |
111 | # print list of torsion angles to screen
112 | def print_torsions(geom, torsions):
113 | at_types = geom[0]
114 | n_torsions = len(torsions)
115 | print('%i torsion(s) found (degrees)' % (n_torsions))
116 | for q in range(n_torsions):
117 | n1, n2, n3, n4 = torsions[q][0:4]
118 | t1234 = torsions[q][4]
119 | nstr = '%i-%i-%i-%i' % (n1+1, n2+1, n3+1, n4+1)
120 | tstr = '(%s-%s-%s-%s) ' % (at_types[n1], at_types[n2], at_types[n3], at_types[n4])
121 | print(' %-15s %-13s %8.3f\n' % (nstr, tstr, t1234), end='')
122 | print('\n', end='')
123 |
124 | ## MATH FUNCTIONS ##
125 |
126 | # calculate distance between two 3-d cartesian coordinates
127 | def get_r12(coords1, coords2):
128 | r2 = 0.0
129 | for p in range(3):
130 | r2 += (coords2[p] - coords1[p])**2
131 | r = math.sqrt(r2)
132 | return r
133 |
134 | # calculate unit vector between to 3-d cartesian coordinates
135 | def get_u12(coords1, coords2):
136 | r12 = get_r12(coords1, coords2)
137 | u12 = [0.0 for p in range(3)]
138 | for p in range(3):
139 | u12[p] = (coords2[p] - coords1[p]) / r12
140 | return u12
141 |
142 | # calculate dot product between two unit vectors
143 | def get_udp(uvec1, uvec2):
144 | udp = 0.0
145 | for p in range(3):
146 | udp += uvec1[p] * uvec2[p]
147 | udp = max(min(udp, 1.0), -1.0)
148 | return udp
149 |
150 | # calculate unit cross product between two unit vectors
151 | def get_ucp(uvec1, uvec2):
152 | ucp = [0.0 for p in range(3)]
153 | cos_12 = get_udp(uvec1, uvec2)
154 | sin_12 = math.sqrt(1 - cos_12**2)
155 | ucp[0] = (uvec1[1]*uvec2[2] - uvec1[2]*uvec2[1]) / sin_12
156 | ucp[1] = (uvec1[2]*uvec2[0] - uvec1[0]*uvec2[2]) / sin_12
157 | ucp[2] = (uvec1[0]*uvec2[1] - uvec1[1]*uvec2[0]) / sin_12
158 | return ucp
159 |
160 | # calculate angle between three 3-d cartesian coordinates
161 | def get_a123(coords1, coords2, coords3):
162 | u21 = get_u12(coords2, coords1)
163 | u23 = get_u12(coords2, coords3)
164 | dp2123 = get_udp(u21, u23)
165 | a123 = rad2deg * math.acos(dp2123)
166 | return a123
167 |
168 | # calculate torsion angle between four 3-d cartesian coordinates
169 | def get_t1234(coords1, coords2, coords3, coords4):
170 | u21 = get_u12(coords2, coords1)
171 | u23 = get_u12(coords2, coords3)
172 | u32 = get_u12(coords3, coords2)
173 | u34 = get_u12(coords3, coords4)
174 | u21c23 = get_ucp(u21, u23)
175 | u32c34 = get_ucp(u32, u34)
176 | dp = get_udp(u21c23, u32c34)
177 | sign = 2 * float(get_udp(u21c23, u34) < 0) - 1
178 | t1234 = rad2deg * sign * math.acos(dp)
179 | return t1234
180 |
181 | ## TOPOLOGY FUNCTIONS ##
182 |
183 | # build graph of which atoms are covalently bonded
184 | def get_bond_graph(geom):
185 | at_types, coords = geom[0:2]
186 | n_atoms = len(at_types)
187 | bond_graph = [[] for i in range(n_atoms)]
188 | for i in range(n_atoms):
189 | covrad1 = cov_rads[at_types[i]]
190 | for j in range(i+1, n_atoms):
191 | covrad2 = cov_rads[at_types[j]]
192 | thresh = bond_thresh * (covrad1 + covrad2)
193 | r12 = get_r12(coords[i], coords[j])
194 | if (r12 < thresh):
195 | bond_graph[i].append(j)
196 | bond_graph[j].append(i)
197 | return bond_graph
198 |
199 | # determine atoms which are covalently bonded from bond graph
200 | def get_bonds(geom, bond_graph):
201 | at_types, coords = geom[0:2]
202 | n_atoms = len(at_types)
203 | bonds = []
204 | for i in range(n_atoms):
205 | for a in range(len(bond_graph[i])):
206 | j = bond_graph[i][a]
207 | if (i < j):
208 | r12 = get_r12(coords[i], coords[j])
209 | bonds.append([i, j, r12])
210 | return bonds
211 |
212 | # determine atoms which form a bond angle from bond graph
213 | def get_angles(geom, bond_graph):
214 | at_types, coords = geom[0:2]
215 | n_atoms = len(at_types)
216 | angles = []
217 | for j in range(n_atoms):
218 | n_jbonds = len(bond_graph[j])
219 | for a in range(n_jbonds):
220 | i = bond_graph[j][a]
221 | for b in range(a+1, n_jbonds):
222 | k = bond_graph[j][b]
223 | a123 = get_a123(coords[i], coords[j], coords[k])
224 | angles.append([i, j, k, a123])
225 | return angles
226 |
227 | # determine atoms which form torsion angles from bond graph
228 | def get_torsions(geom, bond_graph):
229 | at_types, coords = geom[0:2]
230 | n_atoms = len(at_types)
231 | torsions = []
232 | for j in range(n_atoms):
233 | n_jbonds = len(bond_graph[j])
234 | for a in range(n_jbonds):
235 | k = bond_graph[j][a]
236 | if (k < j):
237 | continue
238 | n_kbonds = len(bond_graph[k])
239 | for b in range(n_jbonds):
240 | i = bond_graph[j][b]
241 | if (i == k):
242 | continue
243 | for c in range(n_kbonds):
244 | l = bond_graph[k][c]
245 | if (l == j or l == i):
246 | continue
247 | t1234 = get_t1234(coords[i], coords[j], coords[k], coords[l])
248 | torsions.append([i, j, k, l, t1234])
249 | return torsions
250 |
251 | ## MAIN BLOCK ##
252 |
253 | # read in geometry, determine bonded topology
254 | xyz_file_name = get_inputs()
255 | geom = get_geom(xyz_file_name)
256 | bond_graph = get_bond_graph(geom)
257 |
258 | # calculate bond lengths, angles, and torsions
259 | bonds = get_bonds(geom, bond_graph)
260 | angles = get_angles(geom, bond_graph)
261 | torsions = get_torsions(geom, bond_graph)
262 |
263 | # print resulting values
264 | print_geom(geom, 'initial geometry')
265 | print_bonds(geom, bonds)
266 | print_angles(geom, angles)
267 | print_torsions(geom, torsions)
268 |
269 | # end of program
270 |
--------------------------------------------------------------------------------
/scripts/geometry_analysis/zmat2xyz.py:
--------------------------------------------------------------------------------
1 | import sys, math
2 | import numpy as np
3 | import numpy.linalg as la
4 |
5 | ## CONSTANTS ##
6 |
7 | # conversion from radians to degrees and vice versa
8 | rad2deg = 180.0 / math.pi
9 | deg2rad = math.pi / 180.0
10 |
11 | # cartesian indices
12 | xyz = {0: 'X', 1: 'Y', 2: 'Z', 'X': 0, 'Y': 1, 'Z': 2}
13 |
14 | # relative atomic masses of elements (in atomic mass units [amu]) from
15 | # "CRC Handbook" 84th ed, ed Lide, pgs 1-12 - 1-14
16 | at_masses = { 'H' : 1.00794, 'C' : 12.0107, 'O' : 15.9994, 'N' : 14.0067,
17 | 'F' : 18.9984, 'P' : 30.9738, 'S' : 32.0650, 'Cl': 35.4530, 'Br': 79.9040,
18 | 'I' : 126.904, 'He': 4.00260, 'Ne': 20.1797, 'Ar': 39.9480, 'Li': 6.94100,
19 | 'Be': 9.01218, 'B' : 10.8110, 'Na': 22.9898, 'Mg': 24.3050, 'Al': 26.9815,
20 | 'Si': 28.0855, 'K' : 39.0983, 'Ca': 40.0780, 'Sc': 44.9559, 'Ti': 47.8670,
21 | 'V' : 50.9415, 'Cr': 51.9961, 'Mn': 54.9380, 'Fe': 55.8450, 'Co': 58.9332,
22 | 'Ni': 58.6934, 'Cu': 63.5460, 'Zn': 65.4090, 'Ga': 69.7230, 'Ge': 72.6400,
23 | 'As': 74.9216, 'Se': 78.9600, 'Kr': 83.7980, 'X' : 0.0000}
24 |
25 | ## IO FUNCTIONS ##
26 |
27 | # read file data into a 2-d array
28 | def get_file_string_array(file_name):
29 | try:
30 | file = open(file_name, "r")
31 | except IOError:
32 | print('Error: file (%s) not found!\n' % (file_name))
33 | sys.exit()
34 | lines = file.readlines()
35 | file.close()
36 | array = []
37 | for line in lines:
38 | array.append(line.split())
39 | return array
40 |
41 | # input syntax and usage warnings
42 | def get_input():
43 | if (not len(sys.argv) == 2):
44 | print('\nUsage: zmat2xyz.py ZMAT_FILE\n')
45 | print(' ZMAT_FILE: z-matrix file of target molecule\n')
46 | sys.exit()
47 | else:
48 | zmat_file_name = sys.argv[1]
49 | return zmat_file_name
50 |
51 | ## MATH FUNCTIONS ##
52 |
53 | # calculate distance between two 3-d cartesian coordinates
54 | def get_r12(coords1, coords2):
55 | r2 = 0.0
56 | for p in range(3):
57 | r2 += (coords2[p] - coords1[p])**2
58 | r = math.sqrt(r2)
59 | return r
60 |
61 | # calculate unit vector between to 3-d cartesian coordinates
62 | def get_u12(coords1, coords2):
63 | r12 = get_r12(coords1, coords2)
64 | u12 = [0.0 for p in range(3)]
65 | for p in range(3):
66 | u12[p] = (coords2[p] - coords1[p]) / r12
67 | return u12
68 |
69 | # calculate dot product between two unit vectors
70 | def get_udp(uvec1, uvec2):
71 | udp = 0.0
72 | for p in range(3):
73 | udp += uvec1[p] * uvec2[p]
74 | udp = max(min(udp, 1.0), -1.0)
75 | return udp
76 |
77 | # calculate unit cross product between two unit vectors
78 | def get_ucp(uvec1, uvec2):
79 | ucp = [0.0 for p in range(3)]
80 | cos_12 = get_udp(uvec1, uvec2)
81 | sin_12 = math.sqrt(1 - cos_12**2)
82 | ucp[0] = (uvec1[1]*uvec2[2] - uvec1[2]*uvec2[1]) / sin_12
83 | ucp[1] = (uvec1[2]*uvec2[0] - uvec1[0]*uvec2[2]) / sin_12
84 | ucp[2] = (uvec1[0]*uvec2[1] - uvec1[1]*uvec2[0]) / sin_12
85 | return ucp
86 |
87 | # get local axis system from 3 coordinates
88 | def get_local_axes(coords1, coords2, coords3):
89 | u21 = get_u12(coords1, coords2)
90 | u23 = get_u12(coords2, coords3)
91 | if (abs(get_udp(u21, u23)) >= 1.0):
92 | print('\nError: Co-linear atoms in an internal coordinate definition')
93 | sys.exit()
94 | u23c21 = get_ucp(u23, u21)
95 | u21c23c21 = get_ucp(u21, u23c21)
96 | z = u21
97 | y = u21c23c21
98 | x = get_ucp(y, z)
99 | local_axes = [x, y, z]
100 | return local_axes
101 |
102 | # calculate vector of bond in local axes of internal coordinates
103 | def get_bond_vector(r, a, t):
104 | x = r * math.sin(a) * math.sin(t)
105 | y = r * math.sin(a) * math.cos(t)
106 | z = r * math.cos(a)
107 | bond_vector = [x, y, z]
108 | return bond_vector
109 |
110 | ## CLASSES ##
111 |
112 | # atom class for atomic data
113 | class atom:
114 | # constructor
115 | def __init__(self, at_type, rnum, anum, tnum, rval, aval, tval):
116 | self.attype = at_type
117 | self.rnum = rnum
118 | self.anum = anum
119 | self.tnum = tnum
120 | self.rval = rval
121 | self.aval = aval
122 | self.tval = tval
123 | self.coords = [None for j in range(3)]
124 | self.mass = at_masses[self.attype]
125 |
126 | # molecule class for molecular data
127 | class molecule:
128 | # constructor
129 | def __init__(self, zmat_file_name):
130 | self.zmat_file = zmat_file_name
131 | self.name = self.zmat_file.split('/')[-1].split('.')[0]
132 | self.get_zmat(self.zmat_file)
133 |
134 | # read in z-matrix from zmat file
135 | def get_zmat(self, zmat_file_name):
136 | zmat_array = get_file_string_array(zmat_file_name)
137 | self.n_atoms = int(zmat_array[0][0])
138 | self.comment = ' '.join(zmat_array[1])
139 | self.atoms = []
140 | for i in range(self.n_atoms):
141 | at_type = zmat_array[i+2][0]
142 | if (i >= 1):
143 | rnum = int(zmat_array[i+2][1]) - 1
144 | rval = float(zmat_array[i+2][2])
145 | else:
146 | rnum, rval = None, None
147 | if (i >= 2):
148 | anum = int(zmat_array[i+2][3]) - 1
149 | aval = deg2rad * float(zmat_array[i+2][4])
150 | else:
151 | anum, aval = None, None
152 | if (i >= 3):
153 | tnum = int(zmat_array[i+2][5]) - 1
154 | tval = deg2rad * float(zmat_array[i+2][6])
155 | else:
156 | tnum, tval = None, None
157 | self.atoms.append(atom(at_type, rnum, anum, tnum, rval, aval, tval))
158 |
159 | # print z-matrix to screen
160 | def print_zmat(self, comment):
161 | print('%i\n%s\n' % (self.n_atoms, comment), end='')
162 | for i in range(self.n_atoms):
163 | print('%-2s' % (self.atoms[i].attype), end='')
164 | if (i >= 1):
165 | print(' %3i' % (self.atoms[i].rnum+1), end='')
166 | print('%8.4f' % (self.atoms[i].rval), end='')
167 | if (i >= 2):
168 | print(' %3i' % (self.atoms[i].anum+1), end='')
169 | print('%8.3f' % (rad2deg * self.atoms[i].aval), end='')
170 | if (i >= 3):
171 | print(' %3i' % (self.atoms[i].tnum+1), end='')
172 | print('%8.3f' % (rad2deg * self.atoms[i].tval), end='')
173 | print('\n', end='')
174 |
175 | # print xyz coordinates to screen
176 | def print_coords(self, comment):
177 | print('%i\n%s\n' % (self.n_atoms, comment), end='')
178 | for i in range(self.n_atoms):
179 | print('%-2s' % (self.atoms[i].attype), end='')
180 | for j in range(3):
181 | print(' %12.6f' % (self.atoms[i].coords[j]), end='')
182 | print('\n', end='')
183 |
184 | # obtain cartesian xyz-coordinates from z-matrix values
185 | def zmat2xyz(self):
186 | if (self.n_atoms >= 1):
187 | self.atoms[0].coords = [0.0, 0.0, 0.0]
188 | if (self.n_atoms >= 2):
189 | self.atoms[1].coords = [0.0, 0.0, self.atoms[1].rval]
190 | if (self.n_atoms >= 3):
191 | r1, r2 = self.atoms[1].rval, self.atoms[2].rval
192 | rn1, rn2 = self.atoms[1].rnum, self.atoms[2].rnum
193 | a1 = self.atoms[2].aval
194 | y = r2*math.sin(a1)
195 | z = self.atoms[rn2].coords[2] + (1-2*float(rn2==1))*r2*math.cos(a1)
196 | self.atoms[2].coords = [0.0, y, z]
197 | for i in range(3, self.n_atoms):
198 | atom = self.atoms[i]
199 | coords1 = self.atoms[atom.rnum].coords
200 | coords2 = self.atoms[atom.anum].coords
201 | coords3 = self.atoms[atom.tnum].coords
202 | self.atoms[i].local_axes = get_local_axes(coords1, coords2, coords3)
203 | bond_vector = get_bond_vector(atom.rval, atom.aval, atom.tval)
204 | disp_vector = np.array(np.dot(bond_vector, self.atoms[i].local_axes))
205 | for p in range(3):
206 | atom.coords[p] = self.atoms[atom.rnum].coords[p] + disp_vector[p]
207 |
208 | ## MAIN BLOCK ##
209 |
210 | # get input arguments
211 | zmat_file = get_input()
212 |
213 | # read in z-matrix
214 | mol = molecule(zmat_file)
215 |
216 | # convert to xyz-coordinates
217 | mol.zmat2xyz()
218 |
219 | # print results
220 | mol.print_coords(mol.comment)
221 |
222 | # end of program
223 |
224 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/ana.py:
--------------------------------------------------------------------------------
1 | """Main file for analyzing and plotting molecular dynamics simulation data.
2 |
3 | This program reads in a set of molecular geometry and energy data output by a
4 | molecular simulation and computes and plots resulting ensemble data.
5 |
6 | No guarantees are made that the results of this program are correct and the
7 | author assumes no liability for their reliability.
8 | """
9 |
10 | import sys
11 |
12 | from mmlib import analyze
13 | from mmlib import fileio
14 |
15 | __author__ = 'Trent M. Parker'
16 | __email__ = 'tmpchemistry@gmail.com'
17 | __status__ = 'Prototype'
18 | __date__ = '2017-02-22'
19 |
20 | if __name__ == '__main__':
21 | # Check input syntax.
22 | input_file_name = fileio.ValidateInput(__file__, sys.argv)
23 |
24 | # Read in ensemble geometry and energy analysis data.
25 | analysis = analyze.Analysis(input_file_name)
26 |
27 | # Compute and plot ensemble properties.
28 | analysis.RunAnalysis()
29 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mc.py:
--------------------------------------------------------------------------------
1 | """Main file for executing Monte Carlo molecular simulations.
2 |
3 | This program reads in a set of molecular coordinates and parameters, infers
4 | bonded topology (if unspecified), calculates AMBER94 molecular mechanics energy
5 | comopnents, and performs Metropolis Monte Carlo configuration propogation for a
6 | specified duration.
7 |
8 | No guarantees are made that the results of this program are correct and the
9 | author assumes no liability for their reliability.
10 | """
11 |
12 | import sys
13 |
14 | from mmlib import fileio
15 | from mmlib import simulate
16 |
17 | __author__ = 'Trent M. Parker'
18 | __email__ = 'tmpchemistry@gmail.com'
19 | __status__ = 'Prototype'
20 | __date__ = '2017-02-08'
21 |
22 | if __name__ == '__main__':
23 | # Check input syntax.
24 | input_file_name = fileio.ValidateInput(__file__, sys.argv)
25 |
26 | # Read in molecular and simulation data.
27 | simulation = simulate.MonteCarlo(input_file_name)
28 |
29 | # Run molecular dynamics simulation.
30 | simulation.Run()
31 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/md.py:
--------------------------------------------------------------------------------
1 | """Main file for executing molecular dynamics simulations.
2 |
3 | This program reads in a set of molecular coordinates and parameters, infers
4 | bonded topology (if unspecified), calculates AMBER94 molecular mechanics energy
5 | components and gradients, and performs molecular dynamics configuration
6 | propogation for a specified duration.
7 |
8 | No guarantees are made the the results of this program are correct and the
9 | author assumes no liability for their reliability.
10 | """
11 |
12 | import sys
13 |
14 | from mmlib import fileio
15 | from mmlib import simulate
16 |
17 | __author__ = 'Trent M. Parker'
18 | __email__ = 'tmpchemistry@gmail.com'
19 | __status__ = 'Prototype'
20 | __date__ = '2016-05-31'
21 |
22 | if __name__ == '__main__':
23 | # Check input syntax
24 | infile_name = fileio.ValidateInput(__file__, sys.argv)
25 |
26 | # Read in molecular and simulation data
27 | simulation = simulate.MolecularDynamics(infile_name)
28 |
29 | # Run molecular dynamics simulation.
30 | simulation.Run()
31 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mm.py:
--------------------------------------------------------------------------------
1 | """Main file for computing AMBER94 molecular mechanics energies.
2 |
3 | This program takes in a set of molecular coordinates and parameters, infers
4 | bonded topology (if unspecified), computes AMBER94 molecular mechanics energy
5 | components, and outputs the resulting values to screen.
6 |
7 | No guarantees are made that the results of this program are correct and the
8 | author assumes no liability for their reliability.
9 | """
10 |
11 | import sys
12 |
13 | from mmlib import fileio
14 | from mmlib import molecule
15 |
16 | __author__ = 'Trent M. Parker'
17 | __email__ = 'tmpchemistry@gmail.com'
18 | __status__ = 'Prototype'
19 | __date__ = '2016-02-15'
20 |
21 | if __name__ == '__main__':
22 | # Check input syntax.
23 | input_file_name = fileio.ValidateInput(__file__, sys.argv)
24 |
25 | # Read in molecular geometry and topology.
26 | molecule = molecule.Molecule(input_file_name)
27 |
28 | # Calculate potential energy.
29 | molecule.GetEnergy('nokinetic')
30 |
31 | # Print results to screen.
32 | molecule.PrintData()
33 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mmlib/__init__.py:
--------------------------------------------------------------------------------
1 | """Sub-modules in the mmlib module for molecular mechanics simulations.
2 |
3 | Includes modules with classes and functions for interpreting, testing,
4 | manipulating, propogating, and outputting molecular mechanics data.
5 | """
6 |
7 | from mmlib import analyze
8 | from mmlib import constants
9 | from mmlib import energy
10 | from mmlib import energy_test
11 | from mmlib import fileio
12 | from mmlib import fileio_test
13 | from mmlib import geomcalc
14 | from mmlib import geomcalc_test
15 | from mmlib import gradient
16 | from mmlib import molecule
17 | from mmlib import optimize
18 | from mmlib import param
19 | from mmlib import param_test
20 | from mmlib import simulate
21 | from mmlib import test
22 | from mmlib import topology
23 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mmlib/analyze_test.py:
--------------------------------------------------------------------------------
1 | """Classes and functions for unit tetsing the mmlib molecule module."""
2 |
3 | import unittest
4 |
5 | class Test(unittest.TestCase):
6 | """Unit tests for mmlib. method."""
7 |
8 |
9 | def suite():
10 | """Builds a test suite of all unit test in _test module."""
11 | test_classes = (
12 | Test)
13 |
14 | suite = unittest.TestSuite()
15 | for test_class in test_classes:
16 | tests = unittest.TestLoader().loadTestsFromTestCase(test_class)
17 | suite.addTests(tests)
18 | return suite
19 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mmlib/constants.py:
--------------------------------------------------------------------------------
1 | """Constant values for use in other modules within mmlib.
2 |
3 | Contains physical constants, arbitrary values, and dictionary mappings for
4 | plotting (listed in alphabetical order).
5 | """
6 |
7 | import math
8 |
9 | # Conversion of acceleration from [kcal/(A*g) to [A/(ps^2)].
10 | ACCCONV = 418.400000
11 |
12 | # Threshold beyond covalent radii sum to determine bond cutoff.
13 | BONDTHRESHOLD = 1.2
14 |
15 | # Conversion of electrostatic energy from [ceu] to [kcal/mol].
16 | CEU2KCAL = 332.06375
17 |
18 | # Conversion from degrees to radians
19 | DEG2RAD = math.pi / 180.0
20 |
21 | # Boltzmann constant [kcal/(mol*K)].
22 | KB = 0.001987204
23 |
24 | # Conversion from [kcal*A^3/mol] to [Pa] for pressure.
25 | KCALAMOL2PA = 69476.95
26 |
27 | # Conversion of kinetic energy from [amu*A^2/ps^2] to [kcal/mol].
28 | KIN2KCAL = 0.00239005736
29 |
30 | # Number of Cartesian dimensions
31 | NUMDIM = 3
32 |
33 | # Displacement distance [Angstrom] for numerical gradient.
34 | NUMDISP = 1.0E-6
35 |
36 | # Number of step iterations to take in optimization binary line search.
37 | NUMLINESEARCHSTEPS = 7
38 |
39 | # Default optimization criteria keyword dictionary.
40 | # [delta_e, grad_rms, grad_max, disp_rms, disp_max]
41 | OPTCRITERIAREFS = {
42 | 'loose': [1.0E-4, 1.0E-3, 2.0E-3, 1.0E-2, 2.0E-2],
43 | 'default': [1.0E-6, 1.0E-4, 2.0E-4, 1.0E-3, 2.0E-3],
44 | 'tight': [1.0E-8, 1.0E-5, 2.0E-5, 1.0E-4, 2.0E-4],
45 | 'verytight': [1.0E-10, 1.0E-6, 2.0E-6, 1.0E-5, 2.0E-5]}
46 |
47 | # Factor by which to adjust the initial line search step size between steps.
48 | OPTSTEPADJUSTOR = math.sqrt(2)
49 |
50 | # Fraction of image width which is covered by the plot field.
51 | PERCENTIMAGEPLOT = 0.75
52 |
53 | # Unit conversion between points and inches
54 | POINTSPERINCH = 72
55 |
56 | # Legend labels, line colors, and plotting priority for properties.
57 | # [energy_term, print_priority, line_color, index]
58 | PROPERTYDICTIONARY = {
59 | 'e_total': ['Total', 12, '#000000', 1],
60 | 'e_kin': ['Kinetic', 11, '#007D34', 2],
61 | 'e_pot': ['Potential', 1, '#C10020', 3],
62 | 'e_nonbond': ['Non-bonded', 7, '#0000FF', 4],
63 | 'e_bonded': ['Bonded', 2, '#FF6800', 5],
64 | 'e_boundary': ['Boundary', 10, '#551A8B', 6],
65 | 'e_vdw': ['Vdw', 9, '#00BFFF', 7],
66 | 'e_elst': ['Elst', 8, '#EEC900', 8],
67 | 'e_bond': ['Bonds', 3, '#F08080', 9],
68 | 'e_angle': ['Angles', 4, '#90EE90', 10],
69 | 'e_tors': ['Torsions', 6, '#FF83FA', 11],
70 | 'e_oop': ['Outofplanes', 5, '#A9A9A9', 12]}
71 |
72 | # Physical property keys for output file data labels.
73 | PROPERTYKEYS = [
74 | 'e_total', 'e_kin', 'e_pot', 'e_nonbond', 'e_bonded', 'e_boundary',
75 | 'e_vdw', 'e_elst', 'e_bond', 'e_angle', 'e_tors', 'e_oop', 'temperature',
76 | 'pressure']
77 |
78 | # Conversion from radians to degrees.
79 | RAD2DEG = 180.0 / math.pi
80 |
81 | # Gas constant in units of [amu*A^2/(ps^2*K)].
82 | RGAS = 0.83144598
83 |
84 | # Dictionary of order-of-magnitude axis tick labels.
85 | TICCHARS = {0: '', 1: 'k', 2: 'M', 3: 'B', 4: 'T', 5: 'P'}
86 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mmlib/energy_test.py:
--------------------------------------------------------------------------------
1 | """Classes and functions for unit testing the mmlib energy module."""
2 |
3 | import unittest
4 |
5 | from mmlib import energy
6 |
7 | class TestGetEBond(unittest.TestCase):
8 | """Unit tests for mmlib.energy.GetEBond method."""
9 |
10 | def testNoBondSpring(self):
11 | """Asserts no bond energy for zero spring constant."""
12 | params = r_ij, r_eq, k_b = 2.0, 1.0, 0.0
13 | self.assertAlmostEqual(energy.GetEBond(*params), 0.0)
14 |
15 | def testEquilibriumBond(self):
16 | """Asserts no bond energy for equilibrium length bond."""
17 | params = r_ij, r_eq, k_b = 2.0, 2.0, 1.0
18 | self.assertAlmostEqual(energy.GetEBond(*params), 0.0)
19 |
20 | def testLongBond(self):
21 | """Asserts exact value for greater than equilibrium bond length."""
22 | params = r_ij, r_eq, k_b = 2.5, 2.0, 5.0
23 | self.assertAlmostEqual(energy.GetEBond(*params), 1.25)
24 |
25 | def testShortBond(self):
26 | """Asserts exact value for smaller than equilibrium bond length."""
27 | params = r_ij, r_eq, k_b = 1.5, 2.0, 5.0
28 | self.assertAlmostEqual(energy.GetEBond(*params), 1.25)
29 |
30 | def testInfiniteBond(self):
31 | """Asserts infinite energy for infinite bond length."""
32 | params = r_ij, r_eq, k_b = float('inf'), 2.0, 1.0
33 | self.assertAlmostEqual(energy.GetEBond(*params), float('inf'))
34 |
35 |
36 | class TestGetEAngle(unittest.TestCase):
37 | """Unit tests for mmlib.energy.GetEAngle method."""
38 |
39 | def testNoAngleSpring(self):
40 | """Asserts no angle energy for zero spring constant."""
41 | params = a_ijk, a_eq, k_a = 180.0, 90.0, 0.0
42 | self.assertAlmostEqual(energy.GetEAngle(*params), 0.0)
43 |
44 | def testEquilibriumAngle(self):
45 | """Asserts no angle energy for equilibrium bond angle."""
46 | params = a_ijk, a_eq, k_a = 146.6, 146.6, 1.0
47 | self.assertAlmostEqual(energy.GetEAngle(*params), 0.0)
48 |
49 | def testLargeAngle(self):
50 | """Asserts correct value for greater than equilibrium bond angle."""
51 | params = a_ijk, a_eq, k_a = 138.5, 93.5, 4.6
52 | self.assertAlmostEqual(energy.GetEAngle(*params), 2.8375113)
53 |
54 | def testSmallAngle(self):
55 | """Asserts correct value for smaller than equilibrium bond angle."""
56 | params = a_ijk, a_eq, k_a = 48.5, 93.5, 4.6
57 | self.assertAlmostEqual(energy.GetEAngle(*params), 2.8375113)
58 |
59 |
60 | class TestGetETorsion(unittest.TestCase):
61 | """Unit tests for mmlib.energy.GetETorsion method."""
62 |
63 | def testNoTorsionBarrier(self):
64 | """Asserts no torsion energy for zero rotation barrier."""
65 | params = t_ijkl, v_n, gamma, nfold, paths = 93.5, 0.0, 4.7, 1, 1
66 | self.assertAlmostEqual(energy.GetETorsion(*params), 0.0)
67 |
68 | def testMinTorsionBarrier(self):
69 | """Asserts no torsion energy at maximum angle."""
70 | params = t_ijkl, v_n, gamma, nfold, paths = 180.0, 1.0, 0.0, 1, 1
71 | self.assertAlmostEqual(energy.GetETorsion(*params), 0.0)
72 |
73 | def testMaxTorsionBarrier(self):
74 | """Asserts maximum torsion energy at minimum angle."""
75 | params = t_ijkl, v_n, gamma, nfold, paths = 0.0, 1.0, 0.0, 1, 1
76 | self.assertAlmostEqual(energy.GetETorsion(*params), 2.0)
77 |
78 | def testPositiveGamma(self):
79 | """Asserts maximum torsion energy at positive barrier offset angle."""
80 | params = t_ijkl, v_n, gamma, nfold, paths = 15.0, 1.0, 15.0, 1, 1
81 | self.assertAlmostEqual(energy.GetETorsion(*params), 2.0)
82 |
83 | def testNegativeGamma(self):
84 | """Asserts maximum torsion energy at negative barrier offset angle."""
85 | params = t_ijkl, v_n, gamma, nfold, paths = -165.0, 1.0, -165.0, 1, 1
86 | self.assertAlmostEqual(energy.GetETorsion(*params), 2.0)
87 |
88 | def testThreefold(self):
89 | """Asserts maximum torsion energy at maximum of threefold barrier angle."""
90 | params = t_ijkl, v_n, gamma, nfold, paths = 120.0, 1.0, 0.0, 3, 1
91 | self.assertAlmostEqual(energy.GetETorsion(*params), 2.0)
92 |
93 | def testFivePaths(self):
94 | """Asserts one fifth of regular torsion energy with five paths."""
95 | params = t_ijkl, v_n, gamma, nfold, paths = 0.0, 1.0, 0.0, 1, 5
96 | self.assertAlmostEqual(energy.GetETorsion(*params), 0.4)
97 |
98 | def testAllTorsionParams(self):
99 | """Asserts correct value for an arbitrary combination of parameters."""
100 | params = t_ijkl, v_n, gamma, nfold, paths = 136.7, 1.8, -14.4, 3, 9
101 | self.assertAlmostEqual(energy.GetETorsion(*params), 0.2861022)
102 |
103 |
104 | class TestGetEOutofplane(unittest.TestCase):
105 | """Unit tests for mmlib.energy.GetEOutofplane method."""
106 |
107 | def testNoOutofplaneBarrier(self):
108 | """Asserts no outofplane energy for zero barrier."""
109 | params = o_ijkl, v_n = 45.0, 0.0
110 | self.assertAlmostEqual(energy.GetEOutofplane(*params), 0.0)
111 |
112 | def testInPlaneAngle(self):
113 | """Asserts no outofplane energy for in-plane angle."""
114 | params = o_ijkl, v_n = 0.0, 1.0
115 | self.assertAlmostEqual(energy.GetEOutofplane(*params), 0.0)
116 |
117 | def testMaxOutofplaneAngle(self):
118 | """Asserts maximum outofplane energy for ninety degree angle."""
119 | params = o_ijkl, v_n = 90.0, 1.0
120 | self.assertAlmostEqual(energy.GetEOutofplane(*params), 2.0)
121 |
122 | def testMinOutofplaneAngle(self):
123 | """Asserts maximum outofplane energy for negative ninety degree angle."""
124 | params = o_ijkl, v_n = -90.0, 1.0
125 | self.assertAlmostEqual(energy.GetEOutofplane(*params), 2.0)
126 |
127 | def testAllOutofplaneParams(self):
128 | """Asserts correct value for an arbitrary combination of parameters."""
129 | params = o_ijkl, v_n = 16.7, 1.3
130 | self.assertAlmostEqual(energy.GetEOutofplane(*params), 0.2146978)
131 |
132 |
133 | class TestGetEVdwIJ(unittest.TestCase):
134 | """Unit tests for mmlib.energy.GetEVdwIJ method."""
135 |
136 | def testNoEpsilon(self):
137 | """Asserts no vdw energy for zero epsilon."""
138 | params = r_ij, eps_ij, ro_ij = 2.5, 0.0, 2.0
139 | self.assertAlmostEqual(energy.GetEVdwIJ(*params), 0.0)
140 |
141 | def testEquilibriumDistance(self):
142 | """Asserts negative epsilon energy for equilibrium separation."""
143 | params = r_ij, eps_ij, ro_ij = 2.5, 2.0, 2.5
144 | self.assertAlmostEqual(energy.GetEVdwIJ(*params), -2.0)
145 |
146 | def testLargeDistance(self):
147 | """Asserts correct value for greater than equilibrium separation."""
148 | params = r_ij, eps_ij, ro_ij = 4.0, 3.0, 2.0
149 | self.assertAlmostEqual(energy.GetEVdwIJ(*params), -0.0930176)
150 |
151 | def testSmallDistance(self):
152 | """Asserts correct value for smaller than equilibrium separation."""
153 | params = r_ij, eps_ij, ro_ij = 1.6, 3.0, 2.0
154 | self.assertAlmostEqual(energy.GetEVdwIJ(*params), 20.7675621)
155 |
156 | def testInfiniteDistance(self):
157 | """Asserts zero energy for infinite separation."""
158 | params = r_ij, eps_ij, ro_ij = float('inf'), 1.0, 1.0
159 | self.assertAlmostEqual(energy.GetEVdwIJ(*params), 0.0)
160 |
161 |
162 | class TestGetEElstIJ(unittest.TestCase):
163 | """Unit tests for mmlib.energy.GetEElstIJ method."""
164 |
165 | def testNoCharge1(self):
166 | """Asserts no elst energy when first charge is zero."""
167 | params = r_ij, q_i, q_j, epsilon = 1.0, 0.0, 1.0, 1.0
168 | self.assertAlmostEqual(energy.GetEElstIJ(*params), 0.0)
169 |
170 | def testNoCharge2(self):
171 | """Asserts no elst energy when second charge is zero."""
172 | params = r_ij, q_i, q_j, epsilon = 1.0, 1.0, 0.0, 1.0
173 | self.assertAlmostEqual(energy.GetEElstIJ(*params), 0.0)
174 |
175 | def testUnitValues(self):
176 | """Asserts correct value for unit charges and separation."""
177 | params = r_ij, q_i, q_j, epsilon = 1.0, 1.0, 1.0, 1.0
178 | self.assertAlmostEqual(energy.GetEElstIJ(*params), 332.0637500)
179 |
180 | def testLargeDielectric(self):
181 | """Asserts correct value for non-unit dielectric constant."""
182 | params = r_ij, q_i, q_j, epsilon = 1.0, 1.0, 1.0, 10.0
183 | self.assertAlmostEqual(energy.GetEElstIJ(*params), 33.2063750)
184 |
185 | def testInfiniteDistance(self):
186 | """Asserts zero elst energy when separation is infinite."""
187 | params = r_ij, q_i, q_j, epsilon = float('inf'), 1.0, 1.0, 1.0
188 | self.assertAlmostEqual(energy.GetEElstIJ(*params), 0.0)
189 |
190 | def testAllElstParams(self):
191 | """Asserts correct value for arbitrary combination of parameters."""
192 | params = r_ij, q_i, q_j, epsilon = 1.5, 0.2, -0.4, 2.0
193 | self.assertAlmostEqual(energy.GetEElstIJ(*params), -8.8550333)
194 |
195 |
196 | def suite():
197 | """Builds a test suite of all unit tests in energy_test module."""
198 | test_classes = (
199 | TestGetEBond,
200 | TestGetEAngle,
201 | TestGetETorsion,
202 | TestGetEOutofplane,
203 | TestGetEVdwIJ,
204 | TestGetEElstIJ)
205 |
206 | suite = unittest.TestSuite()
207 | for test_class in test_classes:
208 | tests = unittest.TestLoader().loadTestsFromTestCase(test_class)
209 | suite.addTests(tests)
210 | return suite
211 |
212 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mmlib/geomcalc.py:
--------------------------------------------------------------------------------
1 | """Functions for computing molecular geometry data.
2 |
3 | Includes unit conversions, unit vectors, dot products, cross products, bond
4 | distances, bond angles, torsion angles, outofplane angles, and system volume.
5 | """
6 |
7 | import numpy
8 | import math
9 |
10 | from mmlib import constants as const
11 |
12 | def GetR2ij(coords_i, coords_j):
13 | """Calculate square of distance between two 3d cartesian points.
14 |
15 | Args:
16 | coords_i (float*): 3 cartesian coordinates [Angstrom] of point i.
17 | coords_j (float*): 3 cartesian coordinates [Angstrom] of point j.
18 |
19 | Returns:
20 | r2_ij (float): Square distance [Angstrom] between points i and j.
21 | """
22 | return ((coords_j[0] - coords_i[0])**2 +
23 | (coords_j[1] - coords_i[1])**2 +
24 | (coords_j[2] - coords_i[2])**2)
25 |
26 |
27 | def GetRij(coords_i, coords_j):
28 | """Calculate distance between two 3d cartesian points.
29 |
30 | Args:
31 | coords_i (float*): 3 cartesian coordinates [Angstrom] of point i.
32 | coords_j (float*): 3 cartesian coordinates [Angstrom] of point j.
33 |
34 | Returns:
35 | r_ij (float): Distance [Angstrom] between points i and j.
36 | """
37 | return math.sqrt((coords_j[0] - coords_i[0])**2 +
38 | (coords_j[1] - coords_i[1])**2 +
39 | (coords_j[2] - coords_i[2])**2)
40 |
41 |
42 | def GetUij(coords_i, coords_j, r_ij=None):
43 | """Calculate 3d unit vector from cartesian points i to j.
44 |
45 | Gives zero vector if i and j are the same point.
46 |
47 | Args:
48 | coords_i (float*): 3 cartesian coordinates [Angstrom] of point i.
49 | coords_j (float*): 3 cartesian coordinates [Angstrom] of point j.
50 | r_ij (float): Distance from i to j [Angstrom], if provided.
51 |
52 | Returns:
53 | u_ij (float*): 3 unit vector components from point i to j.
54 | """
55 | if not r_ij:
56 | r_ij = GetRij(coords_i, coords_j)
57 | if not r_ij:
58 | return numpy.zeros(3)
59 | return (coords_j - coords_i) / r_ij
60 |
61 |
62 | def GetUdp(uvec_i, uvec_j):
63 | """Calculate dot product between two 3d cartesian unit vectors.
64 |
65 | WARNING: This function does *NOT* normalize the vectors. It assumes inputs
66 | are unit vectors. A maximum absolute value of 1.0 is returned, primarily for
67 | safety when passing the result into the arccosine function in the GetAijk
68 | function.
69 |
70 | Args:
71 | coords_i (float*): 3 cartesian components of unit vector i.
72 | coords_j (float*): 3 cartesian components of unit vector j.
73 |
74 | Returns:
75 | udp (float): Dot product between unit vectors i and j.
76 | """
77 | udp = uvec_i[0] * uvec_j[0]
78 | udp += uvec_i[1] * uvec_j[1]
79 | udp += uvec_i[2] * uvec_j[2]
80 | return max(-1.0, min(1.0, udp))
81 |
82 |
83 | def GetUcp(uvec_i, uvec_j):
84 | """Calculate unit cross product between two 3d cartesian unit vectors.
85 |
86 | WARNING: This function does *NOT* normalize the vectors. It assumes inputs
87 | are unit vectors. Normalization only occurs with respect to vector-vector
88 | angle, not vector magnitude. Normalization is needed for correct use in
89 | GetTijkl function.
90 |
91 | Args:
92 | coords_i (float*): 3 cartesian components of unit vector i.
93 | coords_j (float*): 3 cartesian components of unit vector j.
94 |
95 | Returns:
96 | ucp (float*): Normalized cross product between unit vectors i and j.
97 | """
98 | ucp = numpy.zeros(3)
99 | cos_ijk = GetUdp(uvec_i, uvec_j)
100 | sin_ijk = math.sqrt(1.0 - cos_ijk**2)
101 | if sin_ijk:
102 | ucp[0] = (uvec_i[1]*uvec_j[2] - uvec_i[2]*uvec_j[1]) / sin_ijk
103 | ucp[1] = (uvec_i[2]*uvec_j[0] - uvec_i[0]*uvec_j[2]) / sin_ijk
104 | ucp[2] = (uvec_i[0]*uvec_j[1] - uvec_i[1]*uvec_j[0]) / sin_ijk
105 | return ucp
106 |
107 |
108 | def GetCp(uvec_i, uvec_j):
109 | """Calculate cross product between two 3d Cartesian vectors.
110 |
111 | Args:
112 | coords_i (float*): 3 cartesian components of vector i.
113 | coords_j (float*): 3 cartesian components of vector j.
114 |
115 | Returns:
116 | cp (float*): Cross product between vectors i and j.
117 | """
118 | cp = numpy.zeros(3)
119 | cp[0] = (uvec_i[1]*uvec_j[2] - uvec_i[2]*uvec_j[1])
120 | cp[1] = (uvec_i[2]*uvec_j[0] - uvec_i[0]*uvec_j[2])
121 | cp[2] = (uvec_i[0]*uvec_j[1] - uvec_i[1]*uvec_j[0])
122 | return cp
123 |
124 |
125 | def GetAijk(coords_i, coords_j, coords_k, r_ij=None, r_jk=None):
126 | """Calculate angle between 3 3d cartesian points.
127 |
128 | Args:
129 | coords_i (float*): 3 cartesian components of point i.
130 | coords_j (float*): 3 cartesian components of point j.
131 | coords_k (float*): 3 cartesian components of point k.
132 | r_ij (float): Distance between i and j (default None).
133 | r_jk (float): Distance between j and k (default None).
134 |
135 | Returns:
136 | a_ijk (float): Angle [degrees] between unit vectors ji and jk.
137 | """
138 | u_ji = GetUij(coords_j, coords_i, r_ij)
139 | u_jk = GetUij(coords_j, coords_k, r_jk)
140 | dp_jijk = GetUdp(u_ji, u_jk)
141 | return const.RAD2DEG * math.acos(dp_jijk)
142 |
143 |
144 | def GetTijkl(coords_i, coords_j, coords_k, coords_l, r_ij=None, r_jk=None,
145 | r_kl=None):
146 | """Calculate torsion angle between 4 3d cartesian points.
147 |
148 | Args:
149 | coords_i (float*): 3 cartesian components of point i.
150 | coords_j (float*): 3 cartesian components of point j.
151 | coords_k (float*): 3 cartesian components of point k.
152 | coords_l (float*): 3 cartesian components of point l.
153 | r_ij (float): Distance between i and j (default None).
154 | r_jk (float): Distance between j and k (default None).
155 | r_kl (float): Distance between k and l (default None).
156 |
157 | Returns:
158 | t_ijkl (float): Signed angle [degrees] between planes ijk and jkl.
159 | """
160 | u_ji = GetUij(coords_j, coords_i, r_ij)
161 | u_jk = GetUij(coords_j, coords_k, r_jk)
162 | u_kl = GetUij(coords_k, coords_l, r_kl)
163 | u_jijk = GetUcp(u_ji, u_jk)
164 | u_kjkl = -GetUcp(u_jk, u_kl)
165 | dp_jijk_kjkl = GetUdp(u_jijk, u_kjkl)
166 | sign = 1.0 if GetUdp(u_jijk, u_kl) <= 0.0 else -1.0
167 | return const.RAD2DEG * sign * math.acos(dp_jijk_kjkl)
168 |
169 |
170 | def GetOijkl(coords_i, coords_j, coords_k, coords_l, r_ki=None, r_kj=None,
171 | r_kl=None):
172 | """Calculate outofplane angle between 4 3d cartesian points.
173 |
174 | Args:
175 | coords_i (float*): 3 cartesian components of point i.
176 | coords_j (float*): 3 cartesian components of point j.
177 | coords_k (float*): 3 cartesian components of point k.
178 | coords_l (float*): 3 cartesian components of point l.
179 | r_ki (float): Distance between k and i (default None).
180 | r_kj (float): Distance between k and j (default None).
181 | r_kl (float): Distance between k and l (default None).
182 |
183 | Returns:
184 | o_ijkl (float): Signed angle between plane ijk and vector kl.
185 | """
186 | u_ki = GetUij(coords_k, coords_i, r_ki)
187 | u_kj = GetUij(coords_k, coords_j, r_kj)
188 | u_kl = GetUij(coords_k, coords_l, r_kl)
189 | u_kikj = GetUcp(u_ki, u_kj)
190 | dp_kikj_kl = GetUdp(u_kikj, u_kl)
191 | return const.RAD2DEG * math.asin(dp_kikj_kl)
192 |
193 |
194 | def GetVolume(boundary, boundary_type):
195 | """Calculate volume of molecular system based on boundary type
196 |
197 | Boundary may be 'cube' (V=l**3) or 'sphere' (V=4/3pi*l**3). Units
198 | assumed to be [Angstrom].
199 |
200 | Args:
201 | boundary (float): Maximum extent of system away from origin.
202 | boundary_type (str): Type of boundary shape.
203 |
204 | Returns:
205 | volume (float): Accessible volume of system.
206 |
207 | Raises:
208 | ValueError: If boundary_type is not 'cube' or 'sphere'.
209 | """
210 | if boundary_type == 'cube':
211 | return 8.0 * boundary**3
212 | elif boundary_type == 'sphere':
213 | return 4.0/3.0 * math.pi * boundary**3
214 | else:
215 | raise ValueError('Unexpected boundary type: %s\n.'
216 | "Use 'cube' or 'sphere'\n" % boundary_type)
217 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mmlib/gradient_test.py:
--------------------------------------------------------------------------------
1 | """Classes and functions for unit tetsing the mmlib molecule module."""
2 |
3 | import unittest
4 |
5 | class Test(unittest.TestCase):
6 | """Unit tests for mmlib. method."""
7 |
8 |
9 | def suite():
10 | """Builds a test suite of all unit test in _test module."""
11 | test_classes = (
12 | Test)
13 |
14 | suite = unittest.TestSuite()
15 | for test_class in test_classes:
16 | tests = unittest.TestLoader().loadTestsFromTestCase(test_class)
17 | suite.addTests(tests)
18 | return suite
19 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mmlib/molecule_test.py:
--------------------------------------------------------------------------------
1 | """Classes and functions for unit tetsing the mmlib molecule module."""
2 |
3 | import unittest
4 |
5 | class Test(unittest.TestCase):
6 | """Unit tests for mmlib. method."""
7 |
8 |
9 | def suite():
10 | """Builds a test suite of all unit test in _test module."""
11 | test_classes = (
12 | Test)
13 |
14 | suite = unittest.TestSuite()
15 | for test_class in test_classes:
16 | tests = unittest.TestLoader().loadTestsFromTestCase(test_class)
17 | suite.addTests(tests)
18 | return suite
19 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mmlib/optimize_test.py:
--------------------------------------------------------------------------------
1 | """Classes and functions for unit tetsing the mmlib molecule module."""
2 |
3 | import unittest
4 |
5 | class Test(unittest.TestCase):
6 | """Unit tests for mmlib. method."""
7 |
8 |
9 | def suite():
10 | """Builds a test suite of all unit test in _test module."""
11 | test_classes = (
12 | Test)
13 |
14 | suite = unittest.TestSuite()
15 | for test_class in test_classes:
16 | tests = unittest.TestLoader().loadTestsFromTestCase(test_class)
17 | suite.addTests(tests)
18 | return suite
19 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mmlib/param_test.py:
--------------------------------------------------------------------------------
1 | """Classes and functions for unit testing the mmlib geomcalc module."""
2 |
3 | import unittest
4 |
5 | from mmlib import param
6 |
7 | # Long parameter array for outofplane tests.
8 | _CT_CT_N_C_TORSION_PARAMS = [
9 | (0.00, 0.0, 2, 6),
10 | (0.50, 180.0, -4, 1),
11 | (0.15, 180.0, -3, 1),
12 | (0.00, 180.0, -2, 1),
13 | (0.53, 0.0, 1, 1)]
14 |
15 | class TestGetMass(unittest.TestCase):
16 | """Unit tests for mmlib.param.GetMass method."""
17 |
18 | def testEmptyInput(self):
19 | """Asserts raise of ValueError for empty string input."""
20 | with self.assertRaises(ValueError) as e:
21 | param.GetMass('')
22 |
23 | self.assertEqual(str(e.exception), 'No atomic mass found for element: ')
24 |
25 | def testBadInput(self):
26 | """Asserts raise of ValueError for missing string input."""
27 | with self.assertRaises(ValueError) as e:
28 | param.GetMass('AA')
29 |
30 | self.assertEqual(str(e.exception), 'No atomic mass found for element: AA')
31 |
32 | def testDummyInput(self):
33 | """Asserts zero mass for dummy atom input."""
34 | self.assertEqual(param.GetMass('X'), 0.0)
35 |
36 | def testHydrogen(self):
37 | """Asserts correct mass for hydrogen atom."""
38 | self.assertEqual(param.GetMass('H'), 1.00794)
39 |
40 | def testHeaviestAtom(self):
41 | """Asserts correct mass for heaviest present atom."""
42 | self.assertEqual(param.GetMass('Kr'), 83.7980)
43 |
44 |
45 | class TestGetCovRad(unittest.TestCase):
46 | """Unit tests for mmlib.param.GetCovRad method."""
47 |
48 | def testEmptyInput(self):
49 | """Asserts raise of ValueError for empty string input."""
50 | with self.assertRaises(ValueError) as e:
51 | param.GetCovRad('')
52 |
53 | self.assertEqual(str(e.exception),
54 | 'No covalent radius found for element: ')
55 |
56 | def testBadInput(self):
57 | """Asserts raise of ValueError for missing element input."""
58 | with self.assertRaises(ValueError) as e:
59 | param.GetCovRad('AA')
60 |
61 | self.assertEqual(str(e.exception),
62 | 'No covalent radius found for element: AA')
63 |
64 | def testDummyInput(self):
65 | """Asserts zero radius for dummy atom input."""
66 | self.assertEqual(param.GetCovRad('X'), 0.0)
67 |
68 | def testHydrogen(self):
69 | """Asserts correct radius for hydrogen atom."""
70 | self.assertEqual(param.GetCovRad('H'), 0.37)
71 |
72 | def testHeaviestAtom(self):
73 | """Asserts correct radius for heaviest present atom."""
74 | self.assertEqual(param.GetCovRad('Kr'), 1.03)
75 |
76 |
77 | class TestGetVdwParam(unittest.TestCase):
78 | """Unit tests for mmlib.param.GetVdwParam method."""
79 |
80 | def testEmptyInput(self):
81 | """Asserts raise of ValueError for empty string input."""
82 | with self.assertRaises(ValueError) as e:
83 | param.GetVdwParam('')
84 |
85 | self.assertEqual(str(e.exception), 'No vdw param found for atom type: ')
86 |
87 | def testBadInput(self):
88 | """Asserts raise of ValueError for missing atom type input."""
89 | with self.assertRaises(ValueError) as e:
90 | param.GetVdwParam('AA')
91 |
92 | self.assertEqual(str(e.exception), 'No vdw param found for atom type: AA')
93 |
94 | def testDummyInput(self):
95 | """Asserts zero parameters for dummy atom type."""
96 | self.assertEqual(param.GetVdwParam('X'), (0.0001, 0.00000))
97 |
98 | def testAromaticCarbon(self):
99 | """Asserts correct parameters for carbon atom type."""
100 | self.assertEqual(param.GetVdwParam('CA'), (1.9080, 0.0860))
101 |
102 | def testWaterOxygen(self):
103 | """Asserts correct parameters for water oxygen atom type."""
104 | self.assertEqual(param.GetVdwParam('OW'), (1.7683, 0.1520))
105 |
106 |
107 | class TestGetBondParam(unittest.TestCase):
108 | """Unit tests for mmlib.param.GetBondParam method."""
109 |
110 | def testEmptyInput(self):
111 | """Asserts raise of ValueError for empty string input."""
112 | with self.assertRaises(ValueError) as e:
113 | param.GetBondParam('', '')
114 |
115 | self.assertEqual(str(e.exception),
116 | 'No bond parameters found for atom type pair: , ')
117 |
118 | def testBadInput(self):
119 | """Asserts raise of ValueError for missing atom types input."""
120 | with self.assertRaises(ValueError) as e:
121 | param.GetBondParam('AA', 'BB')
122 |
123 | self.assertEqual(str(e.exception),
124 | 'No bond parameters found for atom type pair: AA, BB')
125 |
126 | def testOxygenHydrogenBond(self):
127 | """Asserts correct parameters for water hydrogen-oxygen bond."""
128 | self.assertEqual(param.GetBondParam('OW', 'HW'), (553.0, 0.9572))
129 |
130 | def testCarbonHydrogenReversedBond(self):
131 | """Asserts correct parameters for aromatic reversed carbon-hydrogen bond."""
132 | self.assertEqual(param.GetBondParam('HA', 'CA'), (367.0, 1.080))
133 |
134 |
135 | class TestGetAngleParam(unittest.TestCase):
136 | """Unit tests for mmlib.param.GetAngleParam method."""
137 | pass
138 |
139 | def testEmptyInput(self):
140 | """Asserts raise of ValueError for empty string input."""
141 | with self.assertRaises(ValueError) as e:
142 | param.GetAngleParam('', '', '')
143 |
144 | self.assertEqual(str(e.exception),
145 | 'No angle parameters found for atom type triplet: , , ')
146 |
147 | def testBadInput(self):
148 | """Asserts raise of ValueError for missing string input."""
149 | with self.assertRaises(ValueError) as e:
150 | param.GetAngleParam('AA', 'BB', 'CC')
151 |
152 | self.assertEqual(
153 | str(e.exception),
154 | 'No angle parameters found for atom type triplet: AA, BB, CC')
155 |
156 | def testHOHWater(self):
157 | """Asserts correct mass for hydrogen atom."""
158 | self.assertEqual(param.GetAngleParam('HW', 'OW', 'HW'), (100.0, 104.52))
159 |
160 | def testCCHBenzene(self):
161 | """Asserts correct mass for heaviest present atom."""
162 | self.assertEqual(param.GetAngleParam('HA', 'CA', 'CA'), (35.0, 120.0))
163 |
164 |
165 | class TestGetTorsionParam(unittest.TestCase):
166 | """Unit tests for mmlib.param.GetTorsionParam method."""
167 |
168 | def testEmptyInput(self):
169 | """Asserts raise of ValueError for empty string input."""
170 | with self.assertRaises(ValueError) as e:
171 | param.GetTorsionParam('', '', '', '')
172 |
173 | self.assertEqual(str(e.exception),
174 | 'No torsion parameters found for central atom pair: , ')
175 |
176 | def testBadInput(self):
177 | """Asserts raise of ValueError for missing string input."""
178 | with self.assertRaises(ValueError) as e:
179 | param.GetTorsionParam('AA', 'BB', 'CC', 'DD')
180 |
181 | self.assertEqual(
182 | str(e.exception),
183 | 'No torsion parameters found for central atom pair: BB, CC')
184 |
185 | def testCentral(self):
186 | """Asserts correct parameters for given central atom pair."""
187 | self.assertEqual(param.GetTorsionParam('X', 'C', 'CA', 'X'),
188 | [(14.50, 180.0, 2, 4)])
189 |
190 | def testCentralReversed(self):
191 | """Asserts correct parameters for given reversed central atom pair."""
192 | self.assertEqual(param.GetTorsionParam('X', 'CA', 'C', 'X'),
193 | [(14.50, 180.0, 2, 4)])
194 |
195 | def testFourAtom(self):
196 | """Asserts correct parameters for given atom quartet."""
197 | self.assertEqual(param.GetTorsionParam('CT', 'CT', 'N', 'C'),
198 | _CT_CT_N_C_TORSION_PARAMS)
199 |
200 | def testFourAtomReversed(self):
201 | """Asserts correct parameters for given reversed atom quartet."""
202 | self.assertEqual(param.GetTorsionParam('C', 'N', 'CT', 'CT'),
203 | _CT_CT_N_C_TORSION_PARAMS)
204 |
205 |
206 | class TestGetOutofplaneParam(unittest.TestCase):
207 | """Unit tests for mmlib.param.GetOutofplaneParam method."""
208 |
209 | def testEmptyInput(self):
210 | """Asserts zero value for empty string input."""
211 | self.assertEqual(param.GetOutofplaneParam('', '', '', ''), 0.0)
212 |
213 | def test34(self):
214 | """Asserts correct parameter for ending atom pair."""
215 | self.assertEqual(param.GetOutofplaneParam('', '', 'C', 'O'), 10.5)
216 |
217 | def test234(self):
218 | """Asserts correct parameter for ending atom triplet."""
219 | self.assertEqual(param.GetOutofplaneParam('', 'CT', 'N', 'CT'), 1.0)
220 |
221 | def test1234(self):
222 | """Asserts correct paramter for complete atom quartet."""
223 | self.assertEqual(param.GetOutofplaneParam('CA', 'CA', 'C', 'OH'), 1.1)
224 |
225 |
226 | def suite():
227 | """Builds a test suite of all unit tests in param_test module."""
228 | test_classes = (
229 | TestGetVdwParam,
230 | TestGetMass,
231 | TestGetCovRad,
232 | TestGetBondParam,
233 | TestGetAngleParam,
234 | TestGetTorsionParam,
235 | TestGetOutofplaneParam)
236 |
237 | suite = unittest.TestSuite()
238 | for test_class in test_classes:
239 | tests = unittest.TestLoader().loadTestsFromTestCase(test_class)
240 | suite.addTests(tests)
241 | return suite
242 |
243 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mmlib/simulate_test.py:
--------------------------------------------------------------------------------
1 | """Classes and functions for unit tetsing the mmlib molecule module."""
2 |
3 | import unittest
4 |
5 | class Test(unittest.TestCase):
6 | """Unit tests for mmlib. method."""
7 |
8 |
9 | def suite():
10 | """Builds a test suite of all unit test in _test module."""
11 | test_classes = (
12 | Test)
13 |
14 | suite = unittest.TestSuite()
15 | for test_class in test_classes:
16 | tests = unittest.TestLoader().loadTestsFromTestCase(test_class)
17 | suite.addTests(tests)
18 | return suite
19 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mmlib/test.py:
--------------------------------------------------------------------------------
1 | """Classes for testing proper function of all modules within mmlib.
2 |
3 | WARNING: Incomplete. Work in progress. Subject to change at any time.
4 | """
5 |
6 | import numpy
7 | import unittest
8 |
9 | from mmlib import energy_test
10 | from mmlib import fileio_test
11 | from mmlib import geomcalc_test
12 | from mmlib import param_test
13 |
14 | # Message to print at conclusion of test suite.
15 | _SUCCESS_MESSAGE = '\nAll tests succeeded. mmlib is ready for use.'
16 | _FAILURE_MESSAGE = '\nSome tests failed. Results may not be reliable.'
17 |
18 | def RunTests():
19 | """Executes test suites for all mmlib modules."""
20 | test_suites = [
21 | fileio_test.suite(),
22 | geomcalc_test.suite(),
23 | energy_test.suite(),
24 | param_test.suite()]
25 |
26 | combo_suite = unittest.TestSuite(test_suites)
27 | result = unittest.TextTestRunner().run(combo_suite)
28 |
29 | if (result.wasSuccessful()):
30 | print(_SUCCESS_MESSAGE)
31 | else:
32 | print(_FAILURE_MESSAGE)
33 |
34 |
35 | def assertListAlmostEqual(test_case, test_vector, reference_vector):
36 | """Supplemental function for near equality comparison of float vectors.
37 |
38 | Args:
39 | test_case (unittest.TestCase): Unit test class instance.
40 | test_vector (type*): Array of numeric floating-point values to test.
41 | reference_vector (type*): Reference to assert equality of test_vector.
42 | """
43 | test_case.assertEqual(len(test_vector), len(reference_vector))
44 |
45 | for test_value, reference_value in zip(test_vector, reference_vector):
46 | if hasattr(test_value, '__len__'):
47 | assertListAlmostEqual(test_case, test_value, reference_value)
48 | else:
49 | test_case.assertAlmostEqual(test_value, reference_value, places=6)
50 |
51 | def assertObjectEqual(test_case, test_object, reference_object):
52 | """Supplemental function for equality of all object attributes.
53 |
54 | Args:
55 | test_case (unittest.TestCase): Unit test class instance.
56 | test_object (type): Object of type with attributes to test.
57 | reference_object (type): Reference to assert equality of test_object.
58 | """
59 | test_case.assertEqual(test_object.__dict__.keys(),
60 | reference_object.__dict__.keys())
61 |
62 | for attribute in test_object.__dict__:
63 | test_value = getattr(test_object, attribute)
64 | reference_value = getattr(reference_object, attribute)
65 |
66 | if isinstance(test_value, numpy.ndarray):
67 | assertListAlmostEqual(test_case, test_value, reference_value)
68 | else:
69 | test_case.assertAlmostEqual(test_value, reference_value)
70 |
71 | def assertObjectArrayEqual(test_case, test_array, reference_array):
72 | """Supplemental function for equality of all objects in an array.
73 |
74 | Args:
75 | test_case (unittest.TestCase): Unit test class instance.
76 | test_array (type*): Array of objects of type with attributes to test.
77 | reference_array (type*): Reference to assert equality of test_array.
78 | """
79 | test_case.assertEqual(len(test_array), len(reference_array))
80 |
81 | for test_object, reference_object in zip(test_array, reference_array):
82 | assertObjectEqual(test_case, test_object, reference_object)
83 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mmlib/test_test.py:
--------------------------------------------------------------------------------
1 | """Classes and functions for unit tetsing the mmlib molecule module."""
2 |
3 | import unittest
4 |
5 | class Test(unittest.TestCase):
6 | """Unit tests for mmlib. method."""
7 |
8 |
9 | def suite():
10 | """Builds a test suite of all unit test in _test module."""
11 | test_classes = (
12 | Test)
13 |
14 | suite = unittest.TestSuite()
15 | for test_class in test_classes:
16 | tests = unittest.TestLoader().loadTestsFromTestCase(test_class)
17 | suite.addTests(tests)
18 | return suite
19 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/mmlib/topology_test.py:
--------------------------------------------------------------------------------
1 | """Classes and functions for unit tetsing the mmlib molecule module."""
2 |
3 | import unittest
4 |
5 | class Test(unittest.TestCase):
6 | """Unit tests for mmlib. method."""
7 |
8 |
9 | def suite():
10 | """Builds a test suite of all unit test in _test module."""
11 | test_classes = (
12 | Test)
13 |
14 | suite = unittest.TestSuite()
15 | for test_class in test_classes:
16 | tests = unittest.TestLoader().loadTestsFromTestCase(test_class)
17 | suite.addTests(tests)
18 | return suite
19 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/opt.py:
--------------------------------------------------------------------------------
1 | """Main file for executing molecular mechanics energy minimization.
2 |
3 | This program reads in a set of molecular coordinates and parameters, infers
4 | bonded topology (if unspecified), calculates AMBER94 molecular mechanics energy
5 | components and gradients, and performs an energy minimization algorithm to
6 | achieve a minimum energy coordinate configuration.
7 |
8 | No guarantees are made that the results of this program are correct and the
9 | author assumes no liability for their reliability.
10 | """
11 |
12 | import sys
13 |
14 | from mmlib import fileio
15 | from mmlib import optimize
16 |
17 | __author__ = 'Trent M. Parker'
18 | __email__ = 'tmpchemistry@gmail.com'
19 | __status__ = 'Prototype'
20 | __date__ = '2017-02-16'
21 |
22 | if __name__ == '__main__':
23 | # Check input syntax
24 | input_file_name = fileio.ValidateInput(__file__, sys.argv)
25 |
26 | # Read in molecular and optimization data
27 | optimization = optimize.Optimization(input_file_name)
28 |
29 | # Run energy minimization.
30 | optimization.Optimize()
31 |
--------------------------------------------------------------------------------
/scripts/molecular_mechanics/run_tests.py:
--------------------------------------------------------------------------------
1 | """Main file for executing the test suite of mmlib directory modules.
2 |
3 | This program imports all test classes / functions from each unit test module
4 | in the mmlib directory and executes them as a test suite to verify proper
5 | functionality and the absence of regression erros in the working copy of this
6 | directory.
7 |
8 | WARNING: The test suite is incomplete and subject to change at any time as test
9 | coverage is updated.
10 |
11 | No guarantees are made that the results of this program are correct and the
12 | author assumes no liability for their reliability.
13 | """
14 |
15 | from mmlib import test
16 |
17 | __author__ = 'Trent M. Parker'
18 | __email__ = 'tmpchemistry@gmail.com'
19 | __status__ = 'Development'
20 | __date__ = '2018-05-20'
21 |
22 | if __name__ == '__main__':
23 | # Run all unit tests.
24 | test.RunTests()
25 |
--------------------------------------------------------------------------------