Skip to content

Commit

Permalink
Fix random rotations
Browse files Browse the repository at this point in the history
  • Loading branch information
NiklasKappel committed Apr 25, 2024
1 parent 3f3bb86 commit 27bee74
Show file tree
Hide file tree
Showing 3 changed files with 168 additions and 65 deletions.
4 changes: 3 additions & 1 deletion examples/create_o2_box.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
from molbox import Box, MolBox
from molbox.lammps_data import write_lammps_data
from molbox.rdkit_3d_ops import create_3d_mol_from_smiles, rotate_mol
from rdkit import Chem
from scipy.spatial.transform import Rotation


Expand All @@ -10,9 +11,10 @@ def main():
o2_mol = create_3d_mol_from_smiles("O=O")
num_mols = 32
for _ in range(num_mols):
rotation = Rotation.random(random_state=42)
rotation = Rotation.random()
new_mol = rotate_mol(o2_mol, rotation, "COM")
o2_box.add_mol_randomly(new_mol)
Chem.MolToMolFile(o2_box.mol, "examples/o2_box.mol")
write_lammps_data(o2_box, "examples/o2_box.lmpdat")


Expand Down
128 changes: 64 additions & 64 deletions examples/o2_box.lmpdat
Original file line number Diff line number Diff line change
Expand Up @@ -22,70 +22,70 @@ Masses

Atoms

1 1 1 -0.82000 1.51000 5.87950 0.49750 # O
2 1 1 -0.82000 0.69680 5.17790 0.09060 # O
3 2 1 -0.82000 4.20060 3.43600 5.64340 # O
4 2 1 -0.82000 3.38740 2.73440 5.23650 # O
5 3 1 -0.82000 6.92550 2.54890 7.92870 # O
6 3 1 -0.82000 6.11230 1.84730 7.52180 # O
7 4 1 -0.82000 1.04960 2.04430 9.01030 # O
8 4 1 -0.82000 0.23630 1.34270 8.60340 # O
9 5 1 -0.82000 9.82850 6.71930 5.19770 # O
10 5 1 -0.82000 9.01520 6.01770 4.79080 # O
11 6 1 -0.82000 4.89740 9.03610 9.23920 # O
12 6 1 -0.82000 4.08410 8.33460 8.83230 # O
13 7 1 -0.82000 5.28020 1.04250 1.29220 # O
14 7 1 -0.82000 4.46700 0.34100 0.88530 # O
15 8 1 -0.82000 8.04630 1.41080 6.04210 # O
16 8 1 -0.82000 7.23300 0.70930 5.63520 # O
17 9 1 -0.82000 5.51180 2.00770 8.04880 # O
18 9 1 -0.82000 4.69850 1.30610 7.64190 # O
19 10 1 -0.82000 5.38230 7.34780 8.09130 # O
20 10 1 -0.82000 4.56900 6.64630 7.68440 # O
21 11 1 -0.82000 5.89290 5.20160 1.83530 # O
22 11 1 -0.82000 5.07960 4.50000 1.42840 # O
23 12 1 -0.82000 9.83060 9.62740 3.23710 # O
24 12 1 -0.82000 9.01730 8.92580 2.83020 # O
25 13 1 -0.82000 5.29960 4.79080 8.92640 # O
26 13 1 -0.82000 4.48630 4.08920 8.51950 # O
27 14 1 -0.82000 2.50350 3.92090 8.77710 # O
28 14 1 -0.82000 1.69030 3.21940 8.37020 # O
29 15 1 -0.82000 7.28740 7.11910 1.97060 # O
30 15 1 -0.82000 6.47410 6.41760 1.56370 # O
31 16 1 -0.82000 1.65600 2.75270 0.93320 # O
32 16 1 -0.82000 0.84280 2.05110 0.52630 # O
33 17 1 -0.82000 8.21960 8.82360 2.02200 # O
34 17 1 -0.82000 7.40640 8.12200 1.61500 # O
35 18 1 -0.82000 9.95430 8.25970 7.03280 # O
36 18 1 -0.82000 9.14100 7.55810 6.62590 # O
37 19 1 -0.82000 7.72650 0.91710 8.71080 # O
38 19 1 -0.82000 6.91320 0.21550 8.30390 # O
39 20 1 -0.82000 7.42150 8.85070 6.34540 # O
40 20 1 -0.82000 6.60820 8.14910 5.93850 # O
41 21 1 -0.82000 5.06700 9.05260 9.11020 # O
42 21 1 -0.82000 4.25370 8.35100 8.70330 # O
43 22 1 -0.82000 1.91460 3.79480 2.25130 # O
44 22 1 -0.82000 1.10130 3.09330 1.84440 # O
45 23 1 -0.82000 8.16410 4.65750 2.33390 # O
46 23 1 -0.82000 7.35080 3.95600 1.92700 # O
47 24 1 -0.82000 4.00130 1.07330 1.79300 # O
48 24 1 -0.82000 3.18810 0.37170 1.38610 # O
49 25 1 -0.82000 6.39820 1.85540 5.68050 # O
50 25 1 -0.82000 5.58500 1.15380 5.27360 # O
51 26 1 -0.82000 7.76260 5.98560 9.63870 # O
52 26 1 -0.82000 6.94940 5.28400 9.23180 # O
53 27 1 -0.82000 6.21240 2.10670 0.49840 # O
54 27 1 -0.82000 5.39910 1.40520 0.09150 # O
55 28 1 -0.82000 3.63120 0.80060 9.20380 # O
56 28 1 -0.82000 2.81790 0.09900 8.79680 # O
57 29 1 -0.82000 4.87080 9.67330 1.89420 # O
58 29 1 -0.82000 4.05750 8.97170 1.48730 # O
59 30 1 -0.82000 1.81820 0.85510 6.82080 # O
60 30 1 -0.82000 1.00500 0.15350 6.41390 # O
61 31 1 -0.82000 4.86710 6.83020 6.40010 # O
62 31 1 -0.82000 4.05390 6.12860 5.99320 # O
63 32 1 -0.82000 4.71830 4.93120 9.63850 # O
64 32 1 -0.82000 3.90500 4.22960 9.23160 # O
1 1 1 -0.82000 6.90450 5.23720 6.49140 # O
2 1 1 -0.82000 7.10250 4.64310 5.52860 # O
3 2 1 -0.82000 2.38430 4.54550 1.62670 # O
4 2 1 -0.82000 1.46290 4.81410 0.99570 # O
5 3 1 -0.82000 8.47940 2.49120 2.42370 # O
6 3 1 -0.82000 8.30130 3.58670 2.71930 # O
7 4 1 -0.82000 2.11440 3.59610 7.71730 # O
8 4 1 -0.82000 1.01320 3.73940 7.42370 # O
9 5 1 -0.82000 2.85860 7.35000 5.82650 # O
10 5 1 -0.82000 2.55520 8.37580 6.24470 # O
11 6 1 -0.82000 4.01490 7.19160 9.32840 # O
12 6 1 -0.82000 4.16630 6.20020 8.76870 # O
13 7 1 -0.82000 1.54920 2.19380 6.35620 # O
14 7 1 -0.82000 2.27360 1.54400 6.96630 # O
15 8 1 -0.82000 3.19730 3.44040 5.82690 # O
16 8 1 -0.82000 2.38670 2.82430 6.35850 # O
17 9 1 -0.82000 2.96030 2.58010 6.05130 # O
18 9 1 -0.82000 2.79710 2.33920 4.94020 # O
19 10 1 -0.82000 9.71520 1.94650 0.99180 # O
20 10 1 -0.82000 9.44010 0.85010 1.19550 # O
21 11 1 -0.82000 3.06770 3.30350 8.54490 # O
22 11 1 -0.82000 2.73920 3.34820 9.64450 # O
23 12 1 -0.82000 6.48700 0.36360 7.19200 # O
24 12 1 -0.82000 5.87300 1.32990 7.28380 # O
25 13 1 -0.82000 8.88380 4.01260 4.02690 # O
26 13 1 -0.82000 8.53170 3.17830 3.32050 # O
27 14 1 -0.82000 1.36480 3.67210 8.92880 # O
28 14 1 -0.82000 1.73620 3.69300 7.84220 # O
29 15 1 -0.82000 0.78520 6.41470 3.69760 # O
30 15 1 -0.82000 0.31480 7.45150 3.84910 # O
31 16 1 -0.82000 0.57190 0.57620 8.20900 # O
32 16 1 -0.82000 1.14700 0.55780 9.20300 # O
33 17 1 -0.82000 8.36540 8.86050 5.54070 # O
34 17 1 -0.82000 8.77890 9.65910 4.82620 # O
35 18 1 -0.82000 5.10150 6.62530 2.94410 # O
36 18 1 -0.82000 5.98610 6.78410 3.65920 # O
37 19 1 -0.82000 4.75900 7.12220 4.34040 # O
38 19 1 -0.82000 4.46750 8.22350 4.19460 # O
39 20 1 -0.82000 7.34780 7.99790 4.84200 # O
40 20 1 -0.82000 7.24200 6.96390 4.35330 # O
41 21 1 -0.82000 3.25490 4.39510 5.21520 # O
42 21 1 -0.82000 2.33090 4.99370 5.54240 # O
43 22 1 -0.82000 7.92470 8.01840 0.80820 # O
44 22 1 -0.82000 7.93400 6.87390 0.71290 # O
45 23 1 -0.82000 6.22460 8.87810 6.48960 # O
46 23 1 -0.82000 6.50240 8.53260 5.43010 # O
47 24 1 -0.82000 4.02890 4.43300 7.49050 # O
48 24 1 -0.82000 2.92010 4.72160 7.41080 # O
49 25 1 -0.82000 6.66310 6.67840 7.61370 # O
50 25 1 -0.82000 5.91920 5.86720 7.94200 # O
51 26 1 -0.82000 9.51210 8.45910 7.02870 # O
52 26 1 -0.82000 8.92810 9.41000 6.75680 # O
53 27 1 -0.82000 9.15020 2.21150 5.52630 # O
54 27 1 -0.82000 9.07360 1.10950 5.84100 # O
55 28 1 -0.82000 9.40050 9.44570 1.91290 # O
56 28 1 -0.82000 9.26640 9.05630 0.84070 # O
57 29 1 -0.82000 8.30820 1.24210 6.11150 # O
58 29 1 -0.82000 8.25310 1.66800 7.17680 # O
59 30 1 -0.82000 5.85860 9.61010 1.51910 # O
60 30 1 -0.82000 6.85080 9.21020 1.93750 # O
61 31 1 -0.82000 9.51230 4.02790 0.12790 # O
62 31 1 -0.82000 8.80700 3.36600 0.74730 # O
63 32 1 -0.82000 6.64700 1.76700 5.62250 # O
64 32 1 -0.82000 6.26970 0.70250 5.41330 # O


Bonds
Expand Down
101 changes: 101 additions & 0 deletions examples/o2_box.mol
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@

RDKit 3D

64 32 0 0 0 0 0 0 0 0999 V2000
6.9045 5.2372 6.4914 O 0 0 0 0 0 0 0 0 0 0 0 0
7.1025 4.6431 5.5286 O 0 0 0 0 0 0 0 0 0 0 0 0
2.3843 4.5455 1.6267 O 0 0 0 0 0 0 0 0 0 0 0 0
1.4629 4.8141 0.9957 O 0 0 0 0 0 0 0 0 0 0 0 0
8.4794 2.4912 2.4237 O 0 0 0 0 0 0 0 0 0 0 0 0
8.3013 3.5867 2.7193 O 0 0 0 0 0 0 0 0 0 0 0 0
2.1144 3.5961 7.7173 O 0 0 0 0 0 0 0 0 0 0 0 0
1.0132 3.7394 7.4237 O 0 0 0 0 0 0 0 0 0 0 0 0
2.8586 7.3500 5.8265 O 0 0 0 0 0 0 0 0 0 0 0 0
2.5552 8.3758 6.2447 O 0 0 0 0 0 0 0 0 0 0 0 0
4.0149 7.1916 9.3284 O 0 0 0 0 0 0 0 0 0 0 0 0
4.1663 6.2002 8.7687 O 0 0 0 0 0 0 0 0 0 0 0 0
1.5492 2.1938 6.3562 O 0 0 0 0 0 0 0 0 0 0 0 0
2.2736 1.5440 6.9663 O 0 0 0 0 0 0 0 0 0 0 0 0
3.1973 3.4404 5.8269 O 0 0 0 0 0 0 0 0 0 0 0 0
2.3867 2.8243 6.3585 O 0 0 0 0 0 0 0 0 0 0 0 0
2.9603 2.5801 6.0513 O 0 0 0 0 0 0 0 0 0 0 0 0
2.7971 2.3392 4.9402 O 0 0 0 0 0 0 0 0 0 0 0 0
9.7152 1.9465 0.9918 O 0 0 0 0 0 0 0 0 0 0 0 0
9.4401 0.8501 1.1955 O 0 0 0 0 0 0 0 0 0 0 0 0
3.0677 3.3035 8.5449 O 0 0 0 0 0 0 0 0 0 0 0 0
2.7392 3.3482 9.6445 O 0 0 0 0 0 0 0 0 0 0 0 0
6.4870 0.3636 7.1920 O 0 0 0 0 0 0 0 0 0 0 0 0
5.8730 1.3299 7.2838 O 0 0 0 0 0 0 0 0 0 0 0 0
8.8838 4.0126 4.0269 O 0 0 0 0 0 0 0 0 0 0 0 0
8.5317 3.1783 3.3205 O 0 0 0 0 0 0 0 0 0 0 0 0
1.3648 3.6721 8.9288 O 0 0 0 0 0 0 0 0 0 0 0 0
1.7362 3.6930 7.8422 O 0 0 0 0 0 0 0 0 0 0 0 0
0.7852 6.4147 3.6976 O 0 0 0 0 0 0 0 0 0 0 0 0
0.3148 7.4515 3.8491 O 0 0 0 0 0 0 0 0 0 0 0 0
0.5719 0.5762 8.2090 O 0 0 0 0 0 0 0 0 0 0 0 0
1.1470 0.5578 9.2030 O 0 0 0 0 0 0 0 0 0 0 0 0
8.3654 8.8605 5.5407 O 0 0 0 0 0 0 0 0 0 0 0 0
8.7789 9.6591 4.8262 O 0 0 0 0 0 0 0 0 0 0 0 0
5.1015 6.6253 2.9441 O 0 0 0 0 0 0 0 0 0 0 0 0
5.9861 6.7841 3.6592 O 0 0 0 0 0 0 0 0 0 0 0 0
4.7590 7.1222 4.3404 O 0 0 0 0 0 0 0 0 0 0 0 0
4.4675 8.2235 4.1946 O 0 0 0 0 0 0 0 0 0 0 0 0
7.3478 7.9979 4.8420 O 0 0 0 0 0 0 0 0 0 0 0 0
7.2420 6.9639 4.3533 O 0 0 0 0 0 0 0 0 0 0 0 0
3.2549 4.3951 5.2152 O 0 0 0 0 0 0 0 0 0 0 0 0
2.3309 4.9937 5.5424 O 0 0 0 0 0 0 0 0 0 0 0 0
7.9247 8.0184 0.8082 O 0 0 0 0 0 0 0 0 0 0 0 0
7.9340 6.8739 0.7129 O 0 0 0 0 0 0 0 0 0 0 0 0
6.2246 8.8781 6.4896 O 0 0 0 0 0 0 0 0 0 0 0 0
6.5024 8.5326 5.4301 O 0 0 0 0 0 0 0 0 0 0 0 0
4.0289 4.4330 7.4905 O 0 0 0 0 0 0 0 0 0 0 0 0
2.9201 4.7216 7.4108 O 0 0 0 0 0 0 0 0 0 0 0 0
6.6631 6.6784 7.6137 O 0 0 0 0 0 0 0 0 0 0 0 0
5.9192 5.8672 7.9420 O 0 0 0 0 0 0 0 0 0 0 0 0
9.5121 8.4591 7.0287 O 0 0 0 0 0 0 0 0 0 0 0 0
8.9281 9.4100 6.7568 O 0 0 0 0 0 0 0 0 0 0 0 0
9.1502 2.2115 5.5263 O 0 0 0 0 0 0 0 0 0 0 0 0
9.0736 1.1095 5.8410 O 0 0 0 0 0 0 0 0 0 0 0 0
9.4005 9.4457 1.9129 O 0 0 0 0 0 0 0 0 0 0 0 0
9.2664 9.0563 0.8407 O 0 0 0 0 0 0 0 0 0 0 0 0
8.3082 1.2421 6.1115 O 0 0 0 0 0 0 0 0 0 0 0 0
8.2531 1.6680 7.1768 O 0 0 0 0 0 0 0 0 0 0 0 0
5.8586 9.6101 1.5191 O 0 0 0 0 0 0 0 0 0 0 0 0
6.8508 9.2102 1.9375 O 0 0 0 0 0 0 0 0 0 0 0 0
9.5123 4.0279 0.1279 O 0 0 0 0 0 0 0 0 0 0 0 0
8.8070 3.3660 0.7473 O 0 0 0 0 0 0 0 0 0 0 0 0
6.6470 1.7670 5.6225 O 0 0 0 0 0 0 0 0 0 0 0 0
6.2697 0.7025 5.4133 O 0 0 0 0 0 0 0 0 0 0 0 0
1 2 2 0
3 4 2 0
5 6 2 0
7 8 2 0
9 10 2 0
11 12 2 0
13 14 2 0
15 16 2 0
17 18 2 0
19 20 2 0
21 22 2 0
23 24 2 0
25 26 2 0
27 28 2 0
29 30 2 0
31 32 2 0
33 34 2 0
35 36 2 0
37 38 2 0
39 40 2 0
41 42 2 0
43 44 2 0
45 46 2 0
47 48 2 0
49 50 2 0
51 52 2 0
53 54 2 0
55 56 2 0
57 58 2 0
59 60 2 0
61 62 2 0
63 64 2 0
M END

0 comments on commit 27bee74

Please sign in to comment.