@@ -24,3 +24,64 @@ def test_alkane(self, alkane, cg_alkane):
24
24
25
25
assert fg_alkane .n_bonds == alkane .n_bonds
26
26
assert fg_alkane .n_particles == alkane .n_particles
27
+
28
+ def test_backmap_snap_smiles (snap ):
29
+ bead_mapping = {"A" : "C=CC1=CC=CC=C1" } # Mapping one A bead to 1 Polystyrene monomer
30
+ head_indices = {"A" : [10 ]}
31
+ tail_indices = {"A" : [9 ]}
32
+
33
+ fg_comp = backmap_snapshot_to_compound (
34
+ snapshot = snap ,
35
+ bead_mapping = bead_mapping ,
36
+ bond_head_index = head_indices ,
37
+ bond_tail_index = tail_indices ,
38
+ ref_distance = 0.3438 ,
39
+ energy_minimize = False
40
+ )
41
+
42
+ assert fg_comp .particles == snap .particles
43
+ assert fg_comp .bonds == snap .bonds
44
+
45
+ def test_backmap_snap_library (snap ):
46
+ fg_comp = backmap_snapshot_to_compound (
47
+ snapshot = snap ,
48
+ library_key = 'polystyrene'
49
+ ref_distance = 0.3438 ,
50
+ energy_minimize = False
51
+ )
52
+
53
+ assert fg_comp .particles == snap .particles
54
+ assert fg_comp .bonds == snap .bonds
55
+
56
+ def test_backmap_snap_lists (snap ):
57
+ bead_mapping = {"A" : "C[C@@H](C(=O)O)N" } # Mapping one A bead to 1 Polyalanine monomer
58
+ head_indices = {"A" :[4 ,10 ]}
59
+ tail_indices = {"A" :[12 ]}
60
+
61
+ fg_comp = backmap_snapshot_to_compound (
62
+ snapshot = snap ,
63
+ bead_mapping = bead_mapping ,
64
+ bond_head_index = head_indices ,
65
+ bond_tail_index = tail_indices ,
66
+ ref_distance = 0.3438 ,
67
+ energy_minimize = False
68
+ )
69
+
70
+ assert fg_comp .particles == snap .particles
71
+ assert fg_comp .bonds == snap .bonds
72
+
73
+
74
+ def test_backmap_snap_not_int (snap ):
75
+ bead_mapping = {"A" : "C[C@@H](C(=O)O)N" } # Mapping one A bead to 1 Polyalanine monomer
76
+ head_indices = {"A" :[4.5 ,10 ]}
77
+ tail_indices = {"A" :[12 ]}
78
+
79
+ fg_comp = backmap_snapshot_to_compound (
80
+ snapshot = snap ,
81
+ bead_mapping = bead_mapping ,
82
+ bond_head_index = head_indices ,
83
+ bond_tail_index = tail_indices ,
84
+ ref_distance = 0.3438 ,
85
+ energy_minimize = False
86
+ )
87
+ pass #non-int should break code
0 commit comments