1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213
|
"""Check reading of a sample v_sim .ascii file, and I/O consistency"""
from ase.io import read
datafile = """\
Fichier Ni3Au
1.60800000000000e+01 0.00000000000000e+00 1.60800000000000e+01
0.00000000000000e+00 0.00000000000000e+00 1.60800000000000e+01
!This is a sample atomic file in ascii format
!All lines must contain at most 256 characters
!1st line is arbitrary
!2nd line must contain dxx dyx dyy values
!3rd line must contain dzx dzy dzz values
!All subsequent lines can be comment lines (ignored), i.e.
! empty, containing only blanks, or beginning with ! or with #
!After the mandatory 3 beginning lines, a non comment line must
! contain x y z name, giving the 3 coordinates and the name of the atom
!Please note that the name must contain at most 8 characters (non blank)
!Please also note that real values are in free format
! HOWEVER, (Fortran) format like 1.03D+05 is NOT SUPPORTED
! and must be written 1.03E+05 (or 1.03e+05)
4.02000000000000e+00 4.02000000000000e+00 2.01000000000000e+00 Ni
4.02000000000000e+00 4.02000000000000e+00 6.03000000000000e+00 Ni
4.02000000000000e+00 4.02000000000000e+00 1.00500000000000e+01 Ni
4.02000000000000e+00 4.02000000000000e+00 1.40700000000000e+01 Ni
4.02000000000000e+00 8.04000000000000e+00 2.01000000000000e+00 Ni
4.02000000000000e+00 8.04000000000000e+00 6.03000000000000e+00 Ni
4.02000000000000e+00 8.04000000000000e+00 1.00500000000000e+01 Ni
4.02000000000000e+00 8.04000000000000e+00 1.40700000000000e+01 Ni
4.02000000000000e+00 1.20600000000000e+01 2.01000000000000e+00 Ni
4.02000000000000e+00 1.20600000000000e+01 6.03000000000000e+00 Ni
4.02000000000000e+00 1.20600000000000e+01 1.00500000000000e+01 Ni
4.02000000000000e+00 1.20600000000000e+01 1.40700000000000e+01 Ni
8.04000000000000e+00 4.02000000000000e+00 2.01000000000000e+00 Ni
8.04000000000000e+00 4.02000000000000e+00 6.03000000000000e+00 Ni
8.04000000000000e+00 4.02000000000000e+00 1.00500000000000e+01 Ni
8.04000000000000e+00 4.02000000000000e+00 1.40700000000000e+01 Ni
8.04000000000000e+00 8.04000000000000e+00 2.01000000000000e+00 Ni
8.04000000000000e+00 8.04000000000000e+00 6.03000000000000e+00 Ni
8.04000000000000e+00 8.04000000000000e+00 1.00500000000000e+01 Ni
8.04000000000000e+00 8.04000000000000e+00 1.40700000000000e+01 Ni
8.04000000000000e+00 1.20600000000000e+01 2.01000000000000e+00 Ni
8.04000000000000e+00 1.20600000000000e+01 6.03000000000000e+00 Ni
8.04000000000000e+00 1.20600000000000e+01 1.00500000000000e+01 Ni
8.04000000000000e+00 1.20600000000000e+01 1.40700000000000e+01 Ni
1.20600000000000e+01 4.02000000000000e+00 2.01000000000000e+00 Ni
1.20600000000000e+01 4.02000000000000e+00 6.03000000000000e+00 Ni
1.20600000000000e+01 4.02000000000000e+00 1.00500000000000e+01 Ni
1.20600000000000e+01 4.02000000000000e+00 1.40700000000000e+01 Ni
1.20600000000000e+01 8.04000000000000e+00 2.01000000000000e+00 Ni
1.20600000000000e+01 8.04000000000000e+00 6.03000000000000e+00 Ni
1.20600000000000e+01 8.04000000000000e+00 1.00500000000000e+01 Ni
1.20600000000000e+01 8.04000000000000e+00 1.40700000000000e+01 Ni
1.20600000000000e+01 1.20600000000000e+01 2.01000000000000e+00 Ni
1.20600000000000e+01 1.20600000000000e+01 6.03000000000000e+00 Ni
1.20600000000000e+01 1.20600000000000e+01 1.00500000000000e+01 Ni
1.20600000000000e+01 1.20600000000000e+01 1.40700000000000e+01 Ni
2.01000000000000e+00 4.02000000000000e+00 4.02000000000000e+00 Ni
2.01000000000000e+00 4.02000000000000e+00 8.04000000000000e+00 Ni
2.01000000000000e+00 4.02000000000000e+00 1.20600000000000e+01 Ni
2.01000000000000e+00 8.04000000000000e+00 4.02000000000000e+00 Ni
2.01000000000000e+00 8.04000000000000e+00 8.04000000000000e+00 Ni
2.01000000000000e+00 8.04000000000000e+00 1.20600000000000e+01 Ni
2.01000000000000e+00 1.20600000000000e+01 4.02000000000000e+00 Ni
2.01000000000000e+00 1.20600000000000e+01 8.04000000000000e+00 Ni
2.01000000000000e+00 1.20600000000000e+01 1.20600000000000e+01 Ni
6.03000000000000e+00 4.02000000000000e+00 4.02000000000000e+00 Ni
6.03000000000000e+00 4.02000000000000e+00 8.04000000000000e+00 Ni
6.03000000000000e+00 4.02000000000000e+00 1.20600000000000e+01 Ni
6.03000000000000e+00 8.04000000000000e+00 4.02000000000000e+00 Ni
6.03000000000000e+00 8.04000000000000e+00 8.04000000000000e+00 Ni
6.03000000000000e+00 8.04000000000000e+00 1.20600000000000e+01 Ni
6.03000000000000e+00 1.20600000000000e+01 4.02000000000000e+00 Ni
6.03000000000000e+00 1.20600000000000e+01 8.04000000000000e+00 Ni
6.03000000000000e+00 1.20600000000000e+01 1.20600000000000e+01 Ni
1.00500000000000e+01 4.02000000000000e+00 4.02000000000000e+00 Ni
1.00500000000000e+01 4.02000000000000e+00 8.04000000000000e+00 Ni
1.00500000000000e+01 4.02000000000000e+00 1.20600000000000e+01 Ni
1.00500000000000e+01 8.04000000000000e+00 4.02000000000000e+00 Ni
1.00500000000000e+01 8.04000000000000e+00 8.04000000000000e+00 Ni
1.00500000000000e+01 8.04000000000000e+00 1.20600000000000e+01 Ni
1.00500000000000e+01 1.20600000000000e+01 4.02000000000000e+00 Ni
1.00500000000000e+01 1.20600000000000e+01 8.04000000000000e+00 Ni
1.00500000000000e+01 1.20600000000000e+01 1.20600000000000e+01 Ni
1.40700000000000e+01 4.02000000000000e+00 4.02000000000000e+00 Ni
1.40700000000000e+01 4.02000000000000e+00 8.04000000000000e+00 Ni
1.40700000000000e+01 4.02000000000000e+00 1.20600000000000e+01 Ni
1.40700000000000e+01 8.04000000000000e+00 4.02000000000000e+00 Ni
1.40700000000000e+01 8.04000000000000e+00 8.04000000000000e+00 Ni
1.40700000000000e+01 8.04000000000000e+00 1.20600000000000e+01 Ni
1.40700000000000e+01 1.20600000000000e+01 4.02000000000000e+00 Ni
1.40700000000000e+01 1.20600000000000e+01 8.04000000000000e+00 Ni
1.40700000000000e+01 1.20600000000000e+01 1.20600000000000e+01 Ni
4.02000000000000e+00 2.01000000000000e+00 4.02000000000000e+00 Ni
4.02000000000000e+00 2.01000000000000e+00 8.04000000000000e+00 Ni
4.02000000000000e+00 2.01000000000000e+00 1.20600000000000e+01 Ni
4.02000000000000e+00 6.03000000000000e+00 4.02000000000000e+00 Ni
4.02000000000000e+00 6.03000000000000e+00 8.04000000000000e+00 Ni
4.02000000000000e+00 6.03000000000000e+00 1.20600000000000e+01 Ni
4.02000000000000e+00 1.00500000000000e+01 4.02000000000000e+00 Ni
4.02000000000000e+00 1.00500000000000e+01 8.04000000000000e+00 Ni
4.02000000000000e+00 1.00500000000000e+01 1.20600000000000e+01 Ni
4.02000000000000e+00 1.40700000000000e+01 4.02000000000000e+00 Ni
4.02000000000000e+00 1.40700000000000e+01 8.04000000000000e+00 Ni
4.02000000000000e+00 1.40700000000000e+01 1.20600000000000e+01 Ni
8.04000000000000e+00 2.01000000000000e+00 4.02000000000000e+00 Ni
8.04000000000000e+00 2.01000000000000e+00 8.04000000000000e+00 Ni
8.04000000000000e+00 2.01000000000000e+00 1.20600000000000e+01 Ni
8.04000000000000e+00 6.03000000000000e+00 4.02000000000000e+00 Ni
8.04000000000000e+00 6.03000000000000e+00 8.04000000000000e+00 Ni
8.04000000000000e+00 6.03000000000000e+00 1.20600000000000e+01 Ni
8.04000000000000e+00 1.00500000000000e+01 4.02000000000000e+00 Ni
8.04000000000000e+00 1.00500000000000e+01 8.04000000000000e+00 Ni
8.04000000000000e+00 1.00500000000000e+01 1.20600000000000e+01 Ni
8.04000000000000e+00 1.40700000000000e+01 4.02000000000000e+00 Ni
8.04000000000000e+00 1.40700000000000e+01 8.04000000000000e+00 Ni
8.04000000000000e+00 1.40700000000000e+01 1.20600000000000e+01 Ni
1.20600000000000e+01 2.01000000000000e+00 4.02000000000000e+00 Ni
1.20600000000000e+01 2.01000000000000e+00 8.04000000000000e+00 Ni
1.20600000000000e+01 2.01000000000000e+00 1.20600000000000e+01 Ni
1.20600000000000e+01 6.03000000000000e+00 4.02000000000000e+00 Ni
1.20600000000000e+01 6.03000000000000e+00 8.04000000000000e+00 Ni
1.20600000000000e+01 6.03000000000000e+00 1.20600000000000e+01 Ni
1.20600000000000e+01 1.00500000000000e+01 4.02000000000000e+00 Ni
1.20600000000000e+01 1.00500000000000e+01 8.04000000000000e+00 Ni
1.20600000000000e+01 1.00500000000000e+01 1.20600000000000e+01 Ni
1.20600000000000e+01 1.40700000000000e+01 4.02000000000000e+00 Ni
1.20600000000000e+01 1.40700000000000e+01 8.04000000000000e+00 Ni
1.20600000000000e+01 1.40700000000000e+01 1.20600000000000e+01 Ni
2.01000000000000e+00 2.01000000000000e+00 2.01000000000000e+00 Au
2.01000000000000e+00 2.01000000000000e+00 6.03000000000000e+00 Au
2.01000000000000e+00 2.01000000000000e+00 1.00500000000000e+01 Au
2.01000000000000e+00 2.01000000000000e+00 1.40700000000000e+01 Au
2.01000000000000e+00 6.03000000000000e+00 2.01000000000000e+00 Au
2.01000000000000e+00 6.03000000000000e+00 6.03000000000000e+00 Au
2.01000000000000e+00 6.03000000000000e+00 1.00500000000000e+01 Au
2.01000000000000e+00 6.03000000000000e+00 1.40700000000000e+01 Au
2.01000000000000e+00 1.00500000000000e+01 2.01000000000000e+00 Au
2.01000000000000e+00 1.00500000000000e+01 6.03000000000000e+00 Au
2.01000000000000e+00 1.00500000000000e+01 1.00500000000000e+01 Au
2.01000000000000e+00 1.00500000000000e+01 1.40700000000000e+01 Au
2.01000000000000e+00 1.40700000000000e+01 2.01000000000000e+00 Au
2.01000000000000e+00 1.40700000000000e+01 6.03000000000000e+00 Au
2.01000000000000e+00 1.40700000000000e+01 1.00500000000000e+01 Au
2.01000000000000e+00 1.40700000000000e+01 1.40700000000000e+01 Au
6.03000000000000e+00 2.01000000000000e+00 2.01000000000000e+00 Au
6.03000000000000e+00 2.01000000000000e+00 6.03000000000000e+00 Au
6.03000000000000e+00 2.01000000000000e+00 1.00500000000000e+01 Au
6.03000000000000e+00 2.01000000000000e+00 1.40700000000000e+01 Au
6.03000000000000e+00 6.03000000000000e+00 2.01000000000000e+00 Au
6.03000000000000e+00 6.03000000000000e+00 6.03000000000000e+00 Au
6.03000000000000e+00 6.03000000000000e+00 1.00500000000000e+01 Au
6.03000000000000e+00 6.03000000000000e+00 1.40700000000000e+01 Au
6.03000000000000e+00 1.00500000000000e+01 2.01000000000000e+00 Au
6.03000000000000e+00 1.00500000000000e+01 6.03000000000000e+00 Au
6.03000000000000e+00 1.00500000000000e+01 1.00500000000000e+01 Au
6.03000000000000e+00 1.00500000000000e+01 1.40700000000000e+01 Au
6.03000000000000e+00 1.40700000000000e+01 2.01000000000000e+00 Au
6.03000000000000e+00 1.40700000000000e+01 6.03000000000000e+00 Au
6.03000000000000e+00 1.40700000000000e+01 1.00500000000000e+01 Au
6.03000000000000e+00 1.40700000000000e+01 1.40700000000000e+01 Au
1.00500000000000e+01 2.01000000000000e+00 2.01000000000000e+00 Au
1.00500000000000e+01 2.01000000000000e+00 6.03000000000000e+00 Au
1.00500000000000e+01 2.01000000000000e+00 1.00500000000000e+01 Au
1.00500000000000e+01 2.01000000000000e+00 1.40700000000000e+01 Au
1.00500000000000e+01 6.03000000000000e+00 2.01000000000000e+00 Au
1.00500000000000e+01 6.03000000000000e+00 6.03000000000000e+00 Au
1.00500000000000e+01 6.03000000000000e+00 1.00500000000000e+01 Au
1.00500000000000e+01 6.03000000000000e+00 1.40700000000000e+01 Au
1.00500000000000e+01 1.00500000000000e+01 2.01000000000000e+00 Au
1.00500000000000e+01 1.00500000000000e+01 6.03000000000000e+00 Au
1.00500000000000e+01 1.00500000000000e+01 1.00500000000000e+01 Au
1.00500000000000e+01 1.00500000000000e+01 1.40700000000000e+01 Au
1.00500000000000e+01 1.40700000000000e+01 2.01000000000000e+00 Au
1.00500000000000e+01 1.40700000000000e+01 6.03000000000000e+00 Au
1.00500000000000e+01 1.40700000000000e+01 1.00500000000000e+01 Au
1.00500000000000e+01 1.40700000000000e+01 1.40700000000000e+01 Au
1.40700000000000e+01 2.01000000000000e+00 2.01000000000000e+00 Au
1.40700000000000e+01 2.01000000000000e+00 6.03000000000000e+00 Au
1.40700000000000e+01 2.01000000000000e+00 1.00500000000000e+01 Au
1.40700000000000e+01 2.01000000000000e+00 1.40700000000000e+01 Au
1.40700000000000e+01 6.03000000000000e+00 2.01000000000000e+00 Au
1.40700000000000e+01 6.03000000000000e+00 6.03000000000000e+00 Au
1.40700000000000e+01 6.03000000000000e+00 1.00500000000000e+01 Au
1.40700000000000e+01 6.03000000000000e+00 1.40700000000000e+01 Au
1.40700000000000e+01 1.00500000000000e+01 2.01000000000000e+00 Au
1.40700000000000e+01 1.00500000000000e+01 6.03000000000000e+00 Au
1.40700000000000e+01 1.00500000000000e+01 1.00500000000000e+01 Au
1.40700000000000e+01 1.00500000000000e+01 1.40700000000000e+01 Au
1.40700000000000e+01 1.40700000000000e+01 2.01000000000000e+00 Au
1.40700000000000e+01 1.40700000000000e+01 6.03000000000000e+00 Au
1.40700000000000e+01 1.40700000000000e+01 1.00500000000000e+01 Au
1.40700000000000e+01 1.40700000000000e+01 1.40700000000000e+01 Au
"""
def test_v_sim():
fname = 'demo.ascii'
copy = 'demo2.ascii'
with open(fname, 'w') as fd:
fd.write(datafile)
atoms = read(fname, format='v-sim')
atoms.write(copy)
atoms2 = read(copy)
tol = 1e-6
assert sum(abs((atoms.positions - atoms2.positions).ravel())) < tol
assert sum(abs((atoms.cell - atoms2.cell).ravel())) < tol
|