|
36 | 36 |
|
37 | 37 | from .utils import parse_atpos, parse_cell_lengths |
38 | 38 |
|
39 | | -__all__ = ("PDBWriter", "NPYWriter") |
| 39 | +__all__ = ("NPYWriter", "PDBWriter") |
40 | 40 |
|
41 | | -SYMBOLS = """ |
42 | | -H He Li Be B C N O F Ne Na Mg Al Si P S Cl Ar K Ca Sc Ti V Cr Mn Fe Co Ni Cu Zn |
43 | | -Ga Ge As Se Br Kr Rb Sr Y Zr Nb Mo Tc Ru Rh Pd Ag Cd In Sn Sb Te I Xe Cs Ba La |
44 | | -Ce Pr Nd Pm Sm Eu Gd Tb Dy Ho Er Tm Yb Lu Hf Ta W Re Os Ir Pt Au Hg Tl Pb Bi Po |
45 | | -At Rn Fr Ra Ac Th Pa U Np Pu Am Cm Bk Cf Es Fm Md No Lr Rf Db Sg Bh Hs Mt Ds Rg |
46 | | -Cn Nh Fl Mc Lv Ts Og""".split() |
| 41 | +SYMBOLS = [ |
| 42 | + "H", |
| 43 | + "He", |
| 44 | + "Li", |
| 45 | + "Be", |
| 46 | + "B", |
| 47 | + "C", |
| 48 | + "N", |
| 49 | + "O", |
| 50 | + "F", |
| 51 | + "Ne", |
| 52 | + "Na", |
| 53 | + "Mg", |
| 54 | + "Al", |
| 55 | + "Si", |
| 56 | + "P", |
| 57 | + "S", |
| 58 | + "Cl", |
| 59 | + "Ar", |
| 60 | + "K", |
| 61 | + "Ca", |
| 62 | + "Sc", |
| 63 | + "Ti", |
| 64 | + "V", |
| 65 | + "Cr", |
| 66 | + "Mn", |
| 67 | + "Fe", |
| 68 | + "Co", |
| 69 | + "Ni", |
| 70 | + "Cu", |
| 71 | + "Zn", |
| 72 | + "Ga", |
| 73 | + "Ge", |
| 74 | + "As", |
| 75 | + "Se", |
| 76 | + "Br", |
| 77 | + "Kr", |
| 78 | + "Rb", |
| 79 | + "Sr", |
| 80 | + "Y", |
| 81 | + "Zr", |
| 82 | + "Nb", |
| 83 | + "Mo", |
| 84 | + "Tc", |
| 85 | + "Ru", |
| 86 | + "Rh", |
| 87 | + "Pd", |
| 88 | + "Ag", |
| 89 | + "Cd", |
| 90 | + "In", |
| 91 | + "Sn", |
| 92 | + "Sb", |
| 93 | + "Te", |
| 94 | + "I", |
| 95 | + "Xe", |
| 96 | + "Cs", |
| 97 | + "Ba", |
| 98 | + "La", |
| 99 | + "Ce", |
| 100 | + "Pr", |
| 101 | + "Nd", |
| 102 | + "Pm", |
| 103 | + "Sm", |
| 104 | + "Eu", |
| 105 | + "Gd", |
| 106 | + "Tb", |
| 107 | + "Dy", |
| 108 | + "Ho", |
| 109 | + "Er", |
| 110 | + "Tm", |
| 111 | + "Yb", |
| 112 | + "Lu", |
| 113 | + "Hf", |
| 114 | + "Ta", |
| 115 | + "W", |
| 116 | + "Re", |
| 117 | + "Os", |
| 118 | + "Ir", |
| 119 | + "Pt", |
| 120 | + "Au", |
| 121 | + "Hg", |
| 122 | + "Tl", |
| 123 | + "Pb", |
| 124 | + "Bi", |
| 125 | + "Po", |
| 126 | + "At", |
| 127 | + "Rn", |
| 128 | + "Fr", |
| 129 | + "Ra", |
| 130 | + "Ac", |
| 131 | + "Th", |
| 132 | + "Pa", |
| 133 | + "U", |
| 134 | + "Np", |
| 135 | + "Pu", |
| 136 | + "Am", |
| 137 | + "Cm", |
| 138 | + "Bk", |
| 139 | + "Cf", |
| 140 | + "Es", |
| 141 | + "Fm", |
| 142 | + "Md", |
| 143 | + "No", |
| 144 | + "Lr", |
| 145 | + "Rf", |
| 146 | + "Db", |
| 147 | + "Sg", |
| 148 | + "Bh", |
| 149 | + "Hs", |
| 150 | + "Mt", |
| 151 | + "Ds", |
| 152 | + "Rg", |
| 153 | + "Cn", |
| 154 | + "Nh", |
| 155 | + "Fl", |
| 156 | + "Mc", |
| 157 | + "Lv", |
| 158 | + "Ts", |
| 159 | + "Og", |
| 160 | +] |
47 | 161 |
|
48 | 162 |
|
49 | 163 | @attrs.define |
@@ -104,7 +218,7 @@ def _dump_low(self, fh: TextIO, atpos: ArrayLike, cell_lengths: ArrayLike): |
104 | 218 | for i, (x, y, z) in enumerate(atpos * self.to_angstrom): |
105 | 219 | symbol = SYMBOLS[self.atnums[i] - 1] |
106 | 220 | print( |
107 | | - f"HETATM{i+1:5d} {symbol:2s} ATM 1 {x:8.3f}{y:8.3f}{z:8.3f}" |
| 221 | + f"HETATM{i + 1:5d} {symbol:2s} ATM 1 {x:8.3f}{y:8.3f}{z:8.3f}" |
108 | 222 | f" 1.00 1.00 {symbol:2s}", |
109 | 223 | file=fh, |
110 | 224 | ) |
@@ -164,8 +278,7 @@ def dump_each(self, **kwargs): |
164 | 278 | # Check kwargs |
165 | 279 | if set(self.fields) != set(kwargs): |
166 | 280 | raise TypeError( |
167 | | - f"Received keys: {list(kwargs.keys())}. " |
168 | | - f"Expected: {list(self.fields.keys())}" |
| 281 | + f"Received keys: {list(kwargs.keys())}. Expected: {list(self.fields.keys())}" |
169 | 282 | ) |
170 | 283 | for key, value in kwargs.items(): |
171 | 284 | arvalue = np.asarray(value) |
|
0 commit comments