commit 6ec52ad1b4a1fd22d20349a22587000185f3e5e9 Author: Sofus Albert Høgsbro Rose Date: Thu Aug 31 20:30:18 2023 +0200 scrape(update): Retrieved 2023-08-31. diff --git a/data/B2.lat b/data/B2.lat new file mode 100644 index 0000000..3fa8810 --- /dev/null +++ b/data/B2.lat @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0.5 0.5 0.5 B diff --git a/data/L11.lat b/data/L11.lat new file mode 100644 index 0000000..ae9adb3 --- /dev/null +++ b/data/L11.lat @@ -0,0 +1,6 @@ +1 1 4.89898 90 90 120 + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 +0 0 0 A +0 0 0.5 B diff --git a/data/atomz.in b/data/atomz.in new file mode 100644 index 0000000..8b3af66 --- /dev/null +++ b/data/atomz.in @@ -0,0 +1,115 @@ +H 1 +He 2 +Li 3 +Be 4 +B 5 +C 6 +N 7 +O 8 +F 9 +Ne 10 +Na 11 +Mg 12 +Al 13 +Si 14 +P 15 +S 16 +Cl 17 +Ar 18 +K 19 +Ca 20 +Sc 21 +Ti 22 +V 23 +Cr 24 +Mn 25 +Fe 26 +Co 27 +Ni 28 +Cu 29 +Zn 30 +Ga 31 +Ge 32 +As 33 +Se 34 +Br 35 +Kr 36 +Rb 37 +Sr 38 +Y 39 +Zr 40 +Nb 41 +Mo 42 +Tc 43 +Ru 44 +Rh 45 +Pd 46 +Ag 47 +Cd 48 +In 49 +Sn 50 +Sb 51 +Te 52 +I 53 +Xe 54 +Cs 55 +Ba 56 +La 57 +Ce 58 +Pr 59 +Nd 60 +Pm 61 +Sm 62 +Eu 63 +Gd 64 +Tb 65 +Dy 66 +Ho 67 +Er 68 +Tm 69 +Yb 70 +Lu 71 +Hf 72 +Ta 73 +W 74 +Re 75 +Os 76 +Ir 77 +Pt 78 +Au 79 +Hg 80 +Tl 81 +Pb 82 +Bi 83 +Po 84 +At 85 +Rn 86 +Fr 87 +Ra 88 +Ac 89 +Th 90 +Pa 91 +U 92 +Np 93 +Pu 94 +Am 95 +Cm 96 +Bk 97 +Cf 98 +Es 99 +Fm 100 +Md 101 +No 102 +Lr 103 +Rf 104 +Db 105 +Sg 106 +Bh 107 +Hs 108 +Mt 109 +Uun 110 +Uuu 111 +Uub 112 +Uuq 114 +Uuh 116 +Uuo 118 diff --git a/data/bcc-oct.lat b/data/bcc-oct.lat new file mode 100644 index 0000000..a961b67 --- /dev/null +++ b/data/bcc-oct.lat @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0 0 A +0 0.5 0 B +0.5 0.5 0 B +0.5 0 0 B diff --git a/data/bcc-tet.lat b/data/bcc-tet.lat new file mode 100644 index 0000000..fc8720e --- /dev/null +++ b/data/bcc-tet.lat @@ -0,0 +1,11 @@ +1 1 1 90 90 90 +0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0 0 A +0.5 0.25 0 B +0.25 0.5 0 B +0.5 0 0.25 B +0.25 0 0.5 B +0 0.5 0.25 B +0 0.25 0.5 B diff --git a/data/bcc.lat b/data/bcc.lat new file mode 100644 index 0000000..12fd907 --- /dev/null +++ b/data/bcc.lat @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +-0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0 0 A diff --git a/data/diamond.lat b/data/diamond.lat new file mode 100644 index 0000000..766df30 --- /dev/null +++ b/data/diamond.lat @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A +0.25 0.25 0.25 A diff --git a/data/elements.in b/data/elements.in new file mode 100644 index 0000000..00c8720 --- /dev/null +++ b/data/elements.in @@ -0,0 +1,87 @@ +Ac +Ag +Al +Am +As +Au +B +Ba +Be +Bi +Br +C +Ca +Cd +Ce +Cl +Co +Cr +Cs +Cu +Dy +Er +Eu +F +Fe +Ga +Gd +Ge +H +Hf +Hg +Ho +I +In +Ir +K +La +Li +Lu +Mg +Mn +Mo +N +Na +Nb +Nd +Ni +Np +O +Os +P +Pa +Pb +Pd +Pm +Po +Pr +Pt +Pu +Ra +Rb +Re +Rh +Ru +S +Sb +Sc +Se +Si +Sm +Sn +Sr +Ta +Tb +Tc +Te +Th +Ti +Tl +Tm +U +V +W +Y +Yb +Zn +Zr diff --git a/data/fcc-oct.lat b/data/fcc-oct.lat new file mode 100644 index 0000000..71bca73 --- /dev/null +++ b/data/fcc-oct.lat @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A +0.5 0.5 0.5 B diff --git a/data/fcc-octtet.lat b/data/fcc-octtet.lat new file mode 100644 index 0000000..b6e4830 --- /dev/null +++ b/data/fcc-octtet.lat @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A +0.5 0.5 0.5 B +0.25 0.25 0.25 C +-0.25 0.25 0.25 C diff --git a/data/fcc-tet.lat b/data/fcc-tet.lat new file mode 100644 index 0000000..1dc901b --- /dev/null +++ b/data/fcc-tet.lat @@ -0,0 +1,7 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A +0.25 0.25 0.25 B +-0.25 0.25 0.25 B diff --git a/data/fcc.lat b/data/fcc.lat new file mode 100644 index 0000000..6214a27 --- /dev/null +++ b/data/fcc.lat @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A diff --git a/data/font.dat b/data/font.dat new file mode 100644 index 0000000..4cb3d71 --- /dev/null +++ b/data/font.dat @@ -0,0 +1,6206 @@ +#paraview/vtk font https://www.paraview.org/ +char ! +width 0.166 +numpts 11 + 0.007 -0.072 0 + 0.159 -0.071 0 + 0.004 0.077 0 + 0.162 0.077 0 + 0.047 0.201 0 + 0.127 0.202 0 + 0.042 0.205 0 + 0.000 0.769 0 + 0.166 0.769 0 + 0.004 1.026 0 + 0.162 1.026 0 +numpoly 7 +3 2 1 3 +3 2 0 1 +3 7 6 5 +3 6 4 5 +3 8 7 5 +3 7 8 9 +3 10 9 8 +end +char " +width 0.403 +numpts 21 + 0.044 0.636 0 + 0.113 0.636 0 + 0.290 0.636 0 + 0.038 0.639 0 + 0.118 0.638 0 + 0.122 0.643 0 + 0.284 0.643 0 + 0.364 0.638 0 + 0.368 0.643 0 + 0.000 0.843 0 + 0.154 0.843 0 + 0.249 0.843 0 + 0.402 0.843 0 + 0.000 1.020 0 + 0.248 1.020 0 + 0.403 1.020 0 + 0.153 1.023 0 + 0.253 1.026 0 + 0.004 1.026 0 + 0.147 1.027 0 + 0.398 1.026 0 +numpoly 17 +3 3 5 9 +3 7 6 2 +3 4 5 1 +3 6 8 12 +3 0 1 5 +3 6 12 11 +3 3 0 5 +3 7 8 6 +3 11 12 14 +3 13 9 10 +3 10 9 5 +3 15 14 12 +3 19 18 10 +3 18 13 10 +3 17 14 20 +3 14 15 20 +3 16 19 10 +end +char # +width 0.821 +numpts 43 + 0.069 -0.091 0 + 0.172 -0.092 0 + 0.414 -0.089 0 + 0.520 -0.092 0 + 0.128 0.220 0 + 0.241 0.220 0 + 0.476 0.220 0 + 0.000 0.231 0 + 0.120 0.227 0 + 0.252 0.227 0 + 0.469 0.227 0 + 0.595 0.227 0 + 0.821 0.231 0 + 0.000 0.334 0 + 0.821 0.334 0 + 0.150 0.340 0 + 0.498 0.340 0 + 0.617 0.340 0 + 0.269 0.340 0 + 0.266 0.346 0 + 0.207 0.603 0 + 0.554 0.603 0 + 0.666 0.603 0 + 0.320 0.606 0 + 0.000 0.614 0 + 0.200 0.610 0 + 0.549 0.610 0 + 0.675 0.610 0 + 0.821 0.614 0 + 0.000 0.717 0 + 0.223 0.721 0 + 0.349 0.722 0 + 0.572 0.721 0 + 0.698 0.722 0 + 0.818 0.720 0 + 0.232 0.729 0 + 0.344 0.729 0 + 0.579 0.729 0 + 0.692 0.729 0 + 0.298 1.042 0 + 0.403 1.043 0 + 0.646 1.042 0 + 0.751 1.043 0 +numpoly 43 +3 6 2 3 +3 5 0 1 +3 0 5 4 +3 18 9 10 +3 11 6 3 +3 4 9 8 +3 13 8 15 +3 17 6 11 +3 9 4 5 +3 13 7 8 +3 17 12 14 +3 8 9 15 +3 15 19 20 +3 16 6 17 +3 12 17 11 +3 18 10 16 +3 10 6 16 +3 21 16 17 +3 18 19 9 +3 15 9 19 +3 20 30 25 +3 23 20 19 +3 34 33 28 +3 29 24 25 +3 29 25 30 +3 27 21 22 +3 33 21 27 +3 20 23 30 +3 22 21 17 +3 33 27 28 +3 31 26 32 +3 35 30 23 +3 32 38 37 +3 31 35 23 +3 21 32 26 +3 26 31 23 +3 32 21 38 +3 41 37 38 +3 36 35 31 +3 38 21 33 +3 40 39 36 +3 42 41 38 +3 39 35 36 +end +char $ +width 0.726 +numpts 73 + 0.330 -0.229 0 + 0.398 -0.230 0 + 0.324 -0.099 0 + 0.410 -0.094 0 + 0.210 -0.071 0 + 0.532 -0.066 0 + 0.136 -0.035 0 + 0.610 -0.018 0 + 0.318 0.019 0 + 0.326 0.026 0 + 0.410 0.020 0 + 0.650 0.022 0 + 0.061 0.043 0 + 0.473 0.038 0 + 0.250 0.045 0 + 0.514 0.066 0 + 0.550 0.106 0 + 0.553 0.111 0 + 0.553 0.111 0 + 0.175 0.129 0 + 0.710 0.129 0 + 0.012 0.151 0 + 0.162 0.163 0 + 0.578 0.169 0 + 0.158 0.173 0 + 0.156 0.180 0 + 0.586 0.214 0 + 0.726 0.214 0 + 0.000 0.226 0 + 0.139 0.254 0 + 0.578 0.294 0 + 0.716 0.323 0 + 0.564 0.329 0 + 0.530 0.370 0 + 0.698 0.374 0 + 0.451 0.409 0 + 0.456 0.407 0 + 0.444 0.411 0 + 0.410 0.420 0 + 0.325 0.437 0 + 0.661 0.433 0 + 0.193 0.492 0 + 0.598 0.489 0 + 0.530 0.524 0 + 0.109 0.546 0 + 0.407 0.563 0 + 0.325 0.586 0 + 0.067 0.596 0 + 0.273 0.598 0 + 0.198 0.651 0 + 0.033 0.673 0 + 0.172 0.700 0 + 0.558 0.776 0 + 0.023 0.786 0 + 0.163 0.786 0 + 0.696 0.797 0 + 0.181 0.850 0 + 0.530 0.861 0 + 0.679 0.866 0 + 0.050 0.890 0 + 0.490 0.910 0 + 0.244 0.920 0 + 0.410 0.945 0 + 0.636 0.946 0 + 0.084 0.946 0 + 0.318 0.949 0 + 0.147 1.006 0 + 0.558 1.016 0 + 0.187 1.028 0 + 0.325 1.066 0 + 0.407 1.066 0 + 0.327 1.123 0 + 0.405 1.123 0 +numpoly 75 +3 3 8 2 +3 2 8 4 +3 19 12 6 +3 13 11 15 +3 9 8 10 +3 3 2 1 +3 8 3 10 +3 5 13 10 +3 15 11 16 +3 7 13 5 +3 4 14 6 +3 2 0 1 +3 5 10 3 +3 12 22 21 +3 14 4 8 +3 13 7 11 +3 11 18 16 +3 20 23 18 +3 18 17 16 +3 20 18 11 +3 19 6 14 +3 28 21 29 +3 26 23 20 +3 12 19 22 +3 25 22 24 +3 21 22 25 +3 21 25 29 +3 26 27 30 +3 27 26 20 +3 31 32 30 +3 31 30 27 +3 40 33 32 +3 37 43 38 +3 34 32 31 +3 38 39 9 +3 40 32 34 +3 38 9 10 +3 43 33 42 +3 37 36 43 +3 39 38 43 +3 42 33 40 +3 35 36 37 +3 33 43 36 +3 39 45 46 +3 48 41 39 +3 45 39 43 +3 41 48 44 +3 47 51 50 +3 46 62 65 +3 48 39 46 +3 44 49 47 +3 49 44 48 +3 54 53 50 +3 51 47 49 +3 53 56 59 +3 53 54 56 +3 66 64 56 +3 55 58 52 +3 58 57 52 +3 54 50 51 +3 59 56 64 +3 67 60 63 +3 60 57 63 +3 66 61 68 +3 61 66 56 +3 68 65 69 +3 65 62 69 +3 62 46 45 +3 63 57 58 +3 62 60 67 +3 68 61 65 +3 71 70 72 +3 70 62 67 +3 62 70 69 +3 71 69 70 +end +char % +width 1.183 +numpts 81 + 0.240 -0.111 0 + 0.344 -0.112 0 + 0.967 -0.113 0 + 0.876 -0.103 0 + 1.037 -0.094 0 + 0.824 -0.078 0 + 1.087 -0.064 0 + 0.922 -0.015 0 + 0.962 -0.018 0 + 0.762 -0.014 0 + 0.996 -0.008 0 + 1.141 -0.003 0 + 0.886 0.003 0 + 1.037 0.031 0 + 0.851 0.049 0 + 0.730 0.054 0 + 1.170 0.066 0 + 1.060 0.094 0 + 0.832 0.140 0 + 1.183 0.146 0 + 0.714 0.151 0 + 0.714 0.214 0 + 1.066 0.214 0 + 0.834 0.237 0 + 1.180 0.237 0 + 0.730 0.300 0 + 1.167 0.300 0 + 0.851 0.306 0 + 1.047 0.304 0 + 0.869 0.334 0 + 1.007 0.355 0 + 1.139 0.363 0 + 0.904 0.363 0 + 0.939 0.373 0 + 0.979 0.369 0 + 0.773 0.386 0 + 1.093 0.415 0 + 0.842 0.445 0 + 1.019 0.457 0 + 0.253 0.464 0 + 0.927 0.467 0 + 0.162 0.475 0 + 0.323 0.483 0 + 0.373 0.513 0 + 0.076 0.527 0 + 0.207 0.562 0 + 0.247 0.559 0 + 0.042 0.573 0 + 0.282 0.569 0 + 0.426 0.574 0 + 0.172 0.580 0 + 0.323 0.609 0 + 0.018 0.626 0 + 0.137 0.626 0 + 0.455 0.643 0 + 0.340 0.649 0 + 0.003 0.694 0 + 0.117 0.717 0 + 0.352 0.723 0 + 0.469 0.723 0 + 0.000 0.791 0 + 0.120 0.814 0 + 0.466 0.814 0 + 0.342 0.854 0 + 0.453 0.877 0 + 0.018 0.883 0 + 0.137 0.883 0 + 0.154 0.911 0 + 0.316 0.910 0 + 0.293 0.932 0 + 0.428 0.934 0 + 0.190 0.940 0 + 0.247 0.950 0 + 0.064 0.969 0 + 0.379 0.993 0 + 0.093 0.999 0 + 0.156 1.034 0 + 0.310 1.032 0 + 0.842 1.042 0 + 0.946 1.043 0 + 0.253 1.044 0 +numpoly 79 +3 0 1 78 +3 10 4 6 +3 2 8 3 +3 9 14 15 +3 4 10 8 +3 3 7 5 +3 7 3 8 +3 10 6 13 +3 12 5 7 +3 5 12 9 +3 4 8 2 +3 13 16 17 +3 17 19 22 +3 14 9 12 +3 15 18 20 +3 11 13 6 +3 13 11 16 +3 17 16 19 +3 18 15 14 +3 21 20 18 +3 21 23 25 +3 22 26 28 +3 23 21 18 +3 24 22 19 +3 25 27 35 +3 35 29 37 +3 22 24 26 +3 28 31 30 +3 27 25 23 +3 31 28 26 +3 27 29 35 +3 36 30 31 +3 38 34 30 +3 38 33 34 +3 37 32 40 +3 32 33 40 +3 38 30 36 +3 32 37 29 +3 40 33 38 +3 42 46 39 +3 47 53 52 +3 48 43 51 +3 39 46 41 +3 41 50 44 +3 56 57 60 +3 45 41 46 +3 42 48 46 +3 48 42 43 +3 50 41 45 +3 53 47 44 +3 51 49 55 +3 54 55 49 +3 53 44 50 +3 49 51 43 +3 55 54 58 +3 59 58 54 +3 57 56 52 +3 57 52 53 +3 60 61 65 +3 58 62 63 +3 57 61 60 +3 62 64 63 +3 65 66 73 +3 66 65 61 +3 73 66 75 +3 58 59 62 +3 63 64 68 +3 70 69 68 +3 67 75 66 +3 70 68 64 +3 76 71 72 +3 75 67 76 +3 74 69 70 +3 71 76 67 +3 69 77 72 +3 72 77 80 +3 77 69 74 +3 76 72 80 +3 79 78 1 +end +char & +width 0.916 +numpts 76 + 0.379 -0.090 0 + 0.824 -0.092 0 + 0.270 -0.084 0 + 0.453 -0.077 0 + 0.190 -0.059 0 + 0.510 -0.056 0 + 0.773 -0.055 0 + 0.144 -0.034 0 + 0.579 -0.017 0 + 0.916 0.009 0 + 0.082 0.022 0 + 0.316 0.030 0 + 0.367 0.028 0 + 0.413 0.038 0 + 0.259 0.046 0 + 0.664 0.055 0 + 0.487 0.074 0 + 0.211 0.083 0 + 0.836 0.079 0 + 0.035 0.089 0 + 0.540 0.117 0 + 0.013 0.140 0 + 0.169 0.146 0 + 0.574 0.163 0 + 0.759 0.163 0 + 0.756 0.167 0 + 0.755 0.169 0 + 0.749 0.180 0 + 0.146 0.226 0 + 0.000 0.254 0 + 0.153 0.289 0 + 0.653 0.296 0 + 0.814 0.311 0 + 0.016 0.329 0 + 0.194 0.363 0 + 0.196 0.365 0 + 0.203 0.374 0 + 0.844 0.409 0 + 0.074 0.426 0 + 0.710 0.441 0 + 0.327 0.468 0 + 0.162 0.502 0 + 0.458 0.540 0 + 0.254 0.557 0 + 0.577 0.626 0 + 0.384 0.631 0 + 0.167 0.684 0 + 0.483 0.700 0 + 0.644 0.717 0 + 0.147 0.734 0 + 0.292 0.751 0 + 0.288 0.763 0 + 0.285 0.769 0 + 0.519 0.769 0 + 0.660 0.769 0 + 0.138 0.820 0 + 0.523 0.820 0 + 0.278 0.826 0 + 0.662 0.831 0 + 0.287 0.861 0 + 0.149 0.871 0 + 0.504 0.876 0 + 0.310 0.896 0 + 0.487 0.898 0 + 0.170 0.917 0 + 0.637 0.917 0 + 0.344 0.921 0 + 0.447 0.925 0 + 0.390 0.933 0 + 0.609 0.957 0 + 0.219 0.976 0 + 0.556 1.004 0 + 0.304 1.027 0 + 0.510 1.027 0 + 0.384 1.044 0 + 0.436 1.044 0 +numpoly 78 +3 7 17 10 +3 3 13 0 +3 2 14 4 +3 6 18 15 +3 17 7 4 +3 9 18 6 +3 9 6 1 +3 8 16 5 +3 0 12 2 +3 17 4 14 +3 2 11 14 +3 12 0 13 +3 13 5 16 +3 15 24 20 +3 16 8 20 +3 13 3 5 +3 2 12 11 +3 10 17 19 +3 21 28 29 +3 15 20 8 +3 20 24 23 +3 40 23 31 +3 24 25 26 +3 19 22 21 +3 31 23 27 +3 22 19 17 +3 18 24 15 +3 28 21 22 +3 29 30 33 +3 31 32 39 +3 23 24 26 +3 30 29 28 +3 23 26 27 +3 33 30 38 +3 32 31 27 +3 38 36 41 +3 38 34 36 +3 34 38 30 +3 36 34 35 +3 39 32 37 +3 42 40 31 +3 40 41 36 +3 42 44 47 +3 45 43 40 +3 40 43 41 +3 50 46 43 +3 50 49 46 +3 45 40 42 +3 48 53 47 +3 45 42 47 +3 49 52 55 +3 53 48 56 +3 50 43 45 +3 57 60 55 +3 52 50 51 +3 49 50 52 +3 48 47 44 +3 54 56 48 +3 56 65 61 +3 60 59 64 +3 59 60 57 +3 65 56 58 +3 52 57 55 +3 64 59 70 +3 58 56 54 +3 59 62 70 +3 68 74 72 +3 65 69 61 +3 70 66 72 +3 63 71 67 +3 63 61 69 +3 70 62 66 +3 67 73 68 +3 71 63 69 +3 73 67 71 +3 68 72 66 +3 74 68 75 +3 75 68 73 +end +char ' +width 0.154 +numpts 10 + 0.041 0.636 0 + 0.036 0.639 0 + 0.116 0.638 0 + 0.120 0.643 0 + 0.000 0.837 0 + 0.154 0.837 0 + 0.000 1.020 0 + 0.154 1.020 0 + 0.004 1.026 0 + 0.150 1.026 0 +numpoly 8 +3 1 0 3 +3 2 3 0 +3 1 3 4 +3 7 6 4 +3 5 4 3 +3 7 4 5 +3 8 6 9 +3 6 7 9 +end +char ( +width 0.360 +numpts 19 + 0.273 -0.395 0 + 0.358 -0.394 0 + 0.204 -0.308 0 + 0.282 -0.249 0 + 0.090 -0.094 0 + 0.202 -0.054 0 + 0.033 0.066 0 + 0.146 0.203 0 + 0.000 0.277 0 + 0.140 0.380 0 + 0.003 0.414 0 + 0.157 0.534 0 + 0.036 0.597 0 + 0.202 0.711 0 + 0.236 0.803 0 + 0.125 0.820 0 + 0.221 0.979 0 + 0.360 1.043 0 + 0.273 1.044 0 +numpoly 17 +3 2 3 4 +3 0 3 2 +3 3 0 1 +3 6 4 5 +3 3 5 4 +3 6 7 8 +3 7 6 5 +3 9 10 8 +3 9 8 7 +3 10 11 12 +3 10 9 11 +3 12 13 15 +3 12 11 13 +3 14 15 13 +3 16 15 14 +3 17 18 16 +3 17 16 14 +end +char ) +width 0.360 +numpts 19 + 0.002 -0.394 0 + 0.093 -0.393 0 + 0.168 -0.289 0 + 0.078 -0.249 0 + 0.249 -0.140 0 + 0.158 -0.054 0 + 0.317 0.031 0 + 0.214 0.203 0 + 0.357 0.237 0 + 0.360 0.374 0 + 0.220 0.380 0 + 0.209 0.494 0 + 0.324 0.597 0 + 0.179 0.641 0 + 0.235 0.820 0 + 0.110 0.833 0 + 0.139 0.979 0 + 0.000 1.043 0 + 0.087 1.044 0 +numpoly 17 +3 0 1 3 +3 2 3 1 +3 3 4 5 +3 3 2 4 +3 5 6 7 +3 6 5 4 +3 7 8 10 +3 8 9 10 +3 11 10 9 +3 8 7 6 +3 11 12 13 +3 13 14 15 +3 12 11 9 +3 14 13 12 +3 15 16 17 +3 16 15 14 +3 16 18 17 +end +char * +width 0.494 +numpts 34 + 0.140 0.583 0 + 0.145 0.582 0 + 0.345 0.583 0 + 0.351 0.582 0 + 0.170 0.614 0 + 0.064 0.637 0 + 0.061 0.643 0 + 0.435 0.643 0 + 0.062 0.649 0 + 0.243 0.733 0 + 0.248 0.730 0 + 0.175 0.780 0 + 0.315 0.780 0 + 0.163 0.786 0 + 0.443 0.808 0 + 0.001 0.826 0 + 0.492 0.826 0 + 0.000 0.831 0 + 0.494 0.831 0 + 0.197 0.862 0 + 0.203 0.866 0 + 0.288 0.862 0 + 0.285 0.866 0 + 0.155 0.883 0 + 0.397 0.908 0 + 0.031 0.925 0 + 0.037 0.928 0 + 0.454 0.928 0 + 0.460 0.927 0 + 0.301 1.020 0 + 0.190 1.037 0 + 0.194 1.043 0 + 0.300 1.040 0 + 0.294 1.044 0 +numpoly 32 +3 2 12 10 +3 8 4 11 +3 8 5 4 +3 8 6 5 +3 4 0 1 +3 2 3 12 +3 0 4 5 +3 12 9 10 +3 9 11 4 +3 19 11 21 +3 14 24 12 +3 26 25 17 +3 16 18 14 +3 13 23 15 +3 19 21 20 +3 11 19 13 +3 33 31 30 +3 24 21 12 +3 12 21 9 +3 21 11 9 +3 26 17 23 +3 12 3 7 +3 27 24 18 +3 13 19 23 +3 23 17 15 +3 20 21 22 +3 18 24 14 +3 28 27 18 +3 33 30 20 +3 29 20 22 +3 29 33 20 +3 32 33 29 +end +char + +width 0.728 +numpts 20 + 0.304 0.106 0 + 0.425 0.106 0 + 0.300 0.111 0 + 0.429 0.111 0 + 0.300 0.397 0 + 0.429 0.397 0 + 0.004 0.405 0 + 0.296 0.403 0 + 0.439 0.404 0 + 0.727 0.409 0 + 0.000 0.523 0 + 0.728 0.523 0 + 0.004 0.529 0 + 0.299 0.534 0 + 0.430 0.534 0 + 0.724 0.529 0 + 0.301 0.826 0 + 0.428 0.826 0 + 0.307 0.830 0 + 0.421 0.830 0 +numpoly 18 +3 1 2 0 +3 1 3 2 +3 4 2 3 +3 5 4 3 +3 12 6 7 +3 14 4 8 +3 9 15 8 +3 8 4 5 +3 9 11 15 +3 12 7 13 +3 6 12 10 +3 7 4 13 +3 14 8 15 +3 17 19 18 +3 14 13 4 +3 17 18 16 +3 17 16 13 +3 17 13 14 +end +char , +width 0.160 +numpts 23 + 0.030 -0.286 0 + 0.035 -0.287 0 + 0.064 -0.274 0 + 0.092 -0.253 0 + 0.000 -0.237 0 + 0.113 -0.231 0 + 0.030 -0.216 0 + 0.126 -0.214 0 + 0.048 -0.197 0 + 0.140 -0.186 0 + 0.065 -0.169 0 + 0.150 -0.157 0 + 0.073 -0.146 0 + 0.160 -0.100 0 + 0.083 -0.083 0 + 0.082 -0.077 0 + 0.012 -0.073 0 + 0.075 -0.073 0 + 0.007 -0.069 0 + 0.006 0.077 0 + 0.158 0.077 0 + 0.012 0.081 0 + 0.155 0.080 0 +numpoly 21 +3 0 6 4 +3 0 1 2 +3 0 2 6 +3 3 6 2 +3 8 5 10 +3 5 7 10 +3 6 5 8 +3 5 6 3 +3 10 7 12 +3 9 12 7 +3 12 13 14 +3 11 12 9 +3 12 11 13 +3 18 17 19 +3 17 21 19 +3 15 14 13 +3 15 13 17 +3 21 17 22 +3 17 20 22 +3 18 16 17 +3 20 17 13 +end +char - +width 0.415 +numpts 8 + 0.000 0.260 0 + 0.003 0.257 0 + 0.409 0.256 0 + 0.415 0.260 0 + 0.000 0.386 0 + 0.415 0.386 0 + 0.003 0.389 0 + 0.409 0.390 0 +numpoly 6 +3 6 1 2 +3 6 0 1 +3 6 2 7 +3 6 4 0 +3 7 2 3 +3 5 7 3 +end +char . +width 0.154 +numpts 13 + 0.007 -0.073 0 + 0.144 -0.073 0 + 0.150 -0.072 0 + 0.000 -0.066 0 + 0.002 -0.069 0 + 0.154 -0.066 0 + 0.000 0.071 0 + 0.154 0.071 0 + 0.001 0.077 0 + 0.153 0.077 0 + 0.007 0.081 0 + 0.144 0.081 0 + 0.150 0.080 0 +numpoly 11 +3 0 3 4 +3 3 0 1 +3 8 6 10 +3 5 1 2 +3 3 1 5 +3 6 3 5 +3 6 7 11 +3 6 5 7 +3 10 6 11 +3 9 12 11 +3 9 11 7 +end +char / +width 0.418 +numpts 5 + 0.000 -0.089 0 + 0.005 -0.093 0 + 0.106 -0.089 0 + 0.418 1.043 0 + 0.319 1.044 0 +numpoly 3 +3 2 0 1 +3 4 0 2 +3 3 4 2 +end +char 0 +width 0.723 +numpts 53 + 0.333 -0.090 0 + 0.390 -0.090 0 + 0.464 -0.077 0 + 0.230 -0.067 0 + 0.527 -0.051 0 + 0.139 -0.010 0 + 0.602 0.010 0 + 0.344 0.022 0 + 0.413 0.029 0 + 0.098 0.037 0 + 0.453 0.046 0 + 0.264 0.050 0 + 0.221 0.089 0 + 0.499 0.085 0 + 0.062 0.100 0 + 0.665 0.111 0 + 0.195 0.123 0 + 0.534 0.134 0 + 0.033 0.180 0 + 0.166 0.197 0 + 0.558 0.203 0 + 0.708 0.260 0 + 0.014 0.266 0 + 0.152 0.266 0 + 0.574 0.289 0 + 0.140 0.403 0 + 0.723 0.403 0 + 0.000 0.409 0 + 0.583 0.540 0 + 0.003 0.580 0 + 0.720 0.586 0 + 0.149 0.643 0 + 0.018 0.694 0 + 0.562 0.724 0 + 0.695 0.740 0 + 0.173 0.763 0 + 0.541 0.791 0 + 0.056 0.826 0 + 0.655 0.849 0 + 0.221 0.854 0 + 0.500 0.854 0 + 0.259 0.889 0 + 0.459 0.890 0 + 0.098 0.900 0 + 0.306 0.911 0 + 0.379 0.918 0 + 0.603 0.929 0 + 0.573 0.958 0 + 0.179 0.980 0 + 0.510 0.999 0 + 0.259 1.017 0 + 0.453 1.020 0 + 0.333 1.030 0 +numpoly 53 +3 2 8 1 +3 0 7 3 +3 5 16 9 +3 2 10 8 +3 0 1 8 +3 7 0 8 +3 12 16 5 +3 11 3 7 +3 3 12 5 +3 15 20 17 +3 11 12 3 +3 13 6 17 +3 6 13 4 +3 9 16 14 +3 10 4 13 +3 14 19 18 +3 4 10 2 +3 15 17 6 +3 19 14 16 +3 21 24 20 +3 23 18 19 +3 22 25 27 +3 24 26 28 +3 23 22 18 +3 21 20 15 +3 26 24 21 +3 22 23 25 +3 29 27 25 +3 29 31 32 +3 28 30 33 +3 31 29 25 +3 30 28 26 +3 32 35 37 +3 46 40 36 +3 30 34 33 +3 32 31 35 +3 43 39 48 +3 43 37 35 +3 38 36 33 +3 38 33 34 +3 42 40 49 +3 48 41 50 +3 39 43 35 +3 47 40 46 +3 46 36 38 +3 41 44 50 +3 45 52 44 +3 42 51 45 +3 41 48 39 +3 49 40 47 +3 50 44 52 +3 52 45 51 +3 42 49 51 +end +char 1 +width 0.401 +numpts 11 + 0.275 -0.072 0 + 0.401 -0.072 0 + 0.001 0.629 0 + 0.007 0.627 0 + 0.075 0.656 0 + 0.000 0.751 0 + 0.269 0.777 0 + 0.167 0.856 0 + 0.256 0.940 0 + 0.321 1.029 0 + 0.401 1.029 0 +numpoly 9 +3 6 0 1 +3 2 4 5 +3 7 5 4 +3 2 3 4 +3 6 8 7 +3 6 7 4 +3 10 8 6 +3 10 6 1 +3 10 9 8 +end +char 2 +width 0.727 +numpts 43 + 0.001 -0.069 0 + 0.727 -0.069 0 + 0.000 -0.043 0 + 0.011 0.009 0 + 0.727 0.052 0 + 0.194 0.060 0 + 0.042 0.077 0 + 0.275 0.159 0 + 0.115 0.178 0 + 0.195 0.258 0 + 0.397 0.431 0 + 0.595 0.445 0 + 0.488 0.523 0 + 0.666 0.534 0 + 0.533 0.580 0 + 0.710 0.626 0 + 0.567 0.643 0 + 0.164 0.700 0 + 0.725 0.700 0 + 0.585 0.711 0 + 0.027 0.717 0 + 0.585 0.746 0 + 0.039 0.791 0 + 0.184 0.798 0 + 0.715 0.809 0 + 0.567 0.812 0 + 0.202 0.831 0 + 0.056 0.843 0 + 0.544 0.847 0 + 0.237 0.871 0 + 0.679 0.889 0 + 0.492 0.891 0 + 0.093 0.906 0 + 0.304 0.908 0 + 0.401 0.919 0 + 0.641 0.936 0 + 0.128 0.946 0 + 0.190 0.988 0 + 0.572 0.987 0 + 0.258 1.015 0 + 0.504 1.015 0 + 0.350 1.030 0 + 0.441 1.027 0 +numpoly 41 +3 3 2 0 +3 3 5 6 +3 1 5 0 +3 5 3 0 +3 1 4 5 +3 6 5 8 +3 7 8 5 +3 9 8 7 +3 9 7 10 +3 11 10 7 +3 10 11 12 +3 12 11 14 +3 16 15 18 +3 16 18 19 +3 13 14 11 +3 14 13 16 +3 21 24 25 +3 15 16 13 +3 21 19 18 +3 23 27 22 +3 17 23 22 +3 24 21 18 +3 27 23 32 +3 17 22 20 +3 31 42 34 +3 30 28 25 +3 26 32 23 +3 40 31 38 +3 35 28 30 +3 36 32 26 +3 29 36 26 +3 34 41 33 +3 33 37 29 +3 36 29 37 +3 33 39 37 +3 30 25 24 +3 28 38 31 +3 38 28 35 +3 39 33 41 +3 31 40 42 +3 41 34 42 +end +char 3 +width 0.720 +numpts 68 + 0.318 -0.090 0 + 0.427 -0.084 0 + 0.244 -0.078 0 + 0.164 -0.045 0 + 0.535 -0.048 0 + 0.101 0.001 0 + 0.610 0.004 0 + 0.335 0.022 0 + 0.392 0.024 0 + 0.439 0.037 0 + 0.067 0.040 0 + 0.261 0.041 0 + 0.221 0.068 0 + 0.501 0.076 0 + 0.675 0.083 0 + 0.027 0.108 0 + 0.180 0.117 0 + 0.538 0.117 0 + 0.703 0.146 0 + 0.571 0.191 0 + 0.000 0.209 0 + 0.720 0.226 0 + 0.135 0.232 0 + 0.577 0.271 0 + 0.720 0.277 0 + 0.547 0.364 0 + 0.692 0.386 0 + 0.518 0.401 0 + 0.661 0.433 0 + 0.467 0.439 0 + 0.272 0.453 0 + 0.278 0.450 0 + 0.341 0.462 0 + 0.392 0.461 0 + 0.627 0.467 0 + 0.519 0.523 0 + 0.283 0.557 0 + 0.290 0.564 0 + 0.581 0.565 0 + 0.375 0.571 0 + 0.621 0.609 0 + 0.467 0.616 0 + 0.496 0.649 0 + 0.645 0.654 0 + 0.519 0.706 0 + 0.662 0.723 0 + 0.147 0.723 0 + 0.014 0.746 0 + 0.522 0.763 0 + 0.514 0.803 0 + 0.655 0.809 0 + 0.181 0.821 0 + 0.484 0.858 0 + 0.638 0.856 0 + 0.055 0.871 0 + 0.227 0.878 0 + 0.438 0.896 0 + 0.278 0.907 0 + 0.086 0.917 0 + 0.398 0.913 0 + 0.324 0.918 0 + 0.596 0.923 0 + 0.152 0.978 0 + 0.524 0.982 0 + 0.238 1.017 0 + 0.450 1.015 0 + 0.312 1.030 0 + 0.392 1.027 0 +numpoly 66 +3 3 11 5 +3 9 8 1 +3 1 8 0 +3 4 9 1 +3 9 4 13 +3 7 0 8 +3 6 13 4 +3 17 13 6 +3 2 11 3 +3 2 0 7 +3 5 16 10 +3 12 5 11 +3 10 16 15 +3 11 2 7 +3 16 5 12 +3 17 14 19 +3 14 17 6 +3 20 15 22 +3 19 18 23 +3 22 15 16 +3 14 18 19 +3 21 23 18 +3 23 26 25 +3 23 21 24 +3 26 28 25 +3 30 32 36 +3 25 34 27 +3 35 32 33 +3 35 29 27 +3 25 28 34 +3 29 35 33 +3 26 23 24 +3 37 36 32 +3 39 32 35 +3 35 27 34 +3 37 32 39 +3 30 31 32 +3 39 35 41 +3 38 41 35 +3 38 42 41 +3 40 42 38 +3 42 40 44 +3 40 43 44 +3 44 43 48 +3 45 48 43 +3 47 46 54 +3 49 48 50 +3 50 48 45 +3 49 53 52 +3 63 52 61 +3 53 49 50 +3 46 51 54 +3 58 54 51 +3 58 55 62 +3 62 55 64 +3 66 57 60 +3 61 52 53 +3 55 58 51 +3 59 67 60 +3 52 63 56 +3 56 65 59 +3 55 57 64 +3 64 57 66 +3 65 56 63 +3 67 66 60 +3 67 59 65 +end +char 4 +width 0.761 +numpts 18 + 0.487 -0.073 0 + 0.481 -0.069 0 + 0.612 -0.069 0 + 0.615 0.186 0 + 0.004 0.191 0 + 0.475 0.189 0 + 0.761 0.194 0 + 0.000 0.311 0 + 0.758 0.311 0 + 0.138 0.317 0 + 0.478 0.317 0 + 0.618 0.314 0 + 0.007 0.322 0 + 0.007 0.323 0 + 0.475 0.794 0 + 0.613 1.020 0 + 0.510 1.023 0 + 0.607 1.024 0 +numpoly 18 +3 2 1 0 +3 1 3 5 +3 1 2 3 +3 3 10 5 +3 9 4 5 +3 4 9 7 +3 6 11 3 +3 8 11 6 +3 7 9 13 +3 15 16 14 +3 9 5 10 +3 7 13 12 +3 13 14 16 +3 11 10 3 +3 14 13 9 +3 14 10 11 +3 15 17 16 +3 15 14 11 +end +char 5 +width 0.729 +numpts 54 + 0.322 -0.090 0 + 0.413 -0.087 0 + 0.242 -0.077 0 + 0.527 -0.052 0 + 0.150 -0.038 0 + 0.585 -0.014 0 + 0.099 0.002 0 + 0.333 0.022 0 + 0.424 0.032 0 + 0.637 0.037 0 + 0.264 0.039 0 + 0.459 0.046 0 + 0.059 0.049 0 + 0.219 0.068 0 + 0.510 0.084 0 + 0.676 0.094 0 + 0.029 0.100 0 + 0.184 0.106 0 + 0.541 0.123 0 + 0.153 0.169 0 + 0.569 0.180 0 + 0.713 0.180 0 + 0.000 0.209 0 + 0.139 0.224 0 + 0.583 0.237 0 + 0.729 0.271 0 + 0.586 0.317 0 + 0.728 0.334 0 + 0.573 0.384 0 + 0.713 0.420 0 + 0.144 0.430 0 + 0.552 0.431 0 + 0.027 0.449 0 + 0.516 0.479 0 + 0.196 0.484 0 + 0.476 0.508 0 + 0.665 0.517 0 + 0.264 0.524 0 + 0.327 0.538 0 + 0.373 0.538 0 + 0.384 0.536 0 + 0.396 0.536 0 + 0.619 0.570 0 + 0.181 0.597 0 + 0.573 0.605 0 + 0.282 0.642 0 + 0.493 0.643 0 + 0.361 0.658 0 + 0.413 0.658 0 + 0.235 0.877 0 + 0.242 0.884 0 + 0.676 0.889 0 + 0.676 1.009 0 + 0.133 1.012 0 +numpoly 52 +3 7 1 8 +3 7 0 1 +3 7 2 0 +3 2 10 4 +3 6 13 12 +3 3 8 1 +3 3 11 8 +3 10 2 7 +3 4 13 6 +3 11 3 14 +3 19 16 12 +3 3 5 14 +3 9 14 5 +3 10 13 4 +3 22 19 23 +3 18 15 20 +3 17 12 13 +3 15 14 9 +3 14 15 18 +3 19 12 17 +3 25 26 24 +3 20 21 24 +3 21 20 15 +3 22 16 19 +3 25 24 21 +3 26 25 27 +3 29 28 26 +3 29 26 27 +3 43 37 45 +3 36 31 29 +3 34 32 30 +3 31 36 33 +3 31 28 29 +3 32 34 43 +3 48 47 41 +3 45 38 47 +3 42 33 36 +3 41 39 40 +3 38 39 47 +3 37 38 45 +3 47 39 41 +3 44 33 42 +3 43 34 37 +3 46 33 44 +3 35 46 41 +3 33 46 35 +3 46 48 41 +3 32 43 53 +3 43 49 53 +3 49 50 53 +3 53 50 52 +3 50 51 52 +end +char 6 +width 0.728 +numpts 70 + 0.355 -0.090 0 + 0.470 -0.080 0 + 0.235 -0.062 0 + 0.555 -0.046 0 + 0.150 -0.010 0 + 0.613 -0.004 0 + 0.395 0.022 0 + 0.315 0.031 0 + 0.653 0.043 0 + 0.475 0.046 0 + 0.264 0.056 0 + 0.075 0.077 0 + 0.218 0.096 0 + 0.532 0.096 0 + 0.695 0.117 0 + 0.189 0.140 0 + 0.713 0.169 0 + 0.574 0.174 0 + 0.029 0.186 0 + 0.166 0.197 0 + 0.588 0.249 0 + 0.728 0.254 0 + 0.154 0.260 0 + 0.588 0.306 0 + 0.005 0.311 0 + 0.154 0.311 0 + 0.728 0.317 0 + 0.168 0.374 0 + 0.575 0.374 0 + 0.555 0.418 0 + 0.193 0.426 0 + 0.699 0.443 0 + 0.521 0.464 0 + 0.235 0.473 0 + 0.000 0.506 0 + 0.138 0.505 0 + 0.281 0.502 0 + 0.470 0.501 0 + 0.663 0.506 0 + 0.355 0.521 0 + 0.413 0.519 0 + 0.605 0.569 0 + 0.224 0.588 0 + 0.544 0.609 0 + 0.142 0.631 0 + 0.310 0.628 0 + 0.481 0.633 0 + 0.378 0.641 0 + 0.017 0.660 0 + 0.578 0.747 0 + 0.176 0.757 0 + 0.711 0.763 0 + 0.058 0.803 0 + 0.220 0.831 0 + 0.532 0.852 0 + 0.252 0.867 0 + 0.675 0.877 0 + 0.102 0.883 0 + 0.481 0.895 0 + 0.304 0.901 0 + 0.315 0.905 0 + 0.321 0.908 0 + 0.407 0.919 0 + 0.640 0.929 0 + 0.155 0.944 0 + 0.207 0.982 0 + 0.561 0.992 0 + 0.293 1.017 0 + 0.487 1.020 0 + 0.367 1.030 0 +numpoly 70 +3 2 10 4 +3 6 1 9 +3 3 5 13 +3 0 7 2 +3 3 9 1 +3 1 6 0 +3 9 3 13 +3 7 0 6 +3 10 2 7 +3 20 26 23 +3 4 12 11 +3 13 8 17 +3 4 10 12 +3 11 19 18 +3 17 21 20 +3 15 11 12 +3 11 15 19 +3 16 17 14 +3 18 22 24 +3 8 14 17 +3 8 13 5 +3 24 35 34 +3 22 18 19 +3 20 21 26 +3 28 23 26 +3 21 17 16 +3 24 27 35 +3 24 22 25 +3 28 31 29 +3 31 28 26 +3 24 25 27 +3 32 41 37 +3 30 35 27 +3 34 44 48 +3 35 33 42 +3 43 37 41 +3 46 39 40 +3 32 29 38 +3 38 29 31 +3 33 35 30 +3 33 36 42 +3 42 36 45 +3 45 39 47 +3 36 39 45 +3 37 46 40 +3 41 32 38 +3 46 37 43 +3 47 39 46 +3 44 34 35 +3 48 50 52 +3 48 44 50 +3 49 56 54 +3 57 53 64 +3 57 52 50 +3 54 66 58 +3 51 56 49 +3 62 69 61 +3 53 57 50 +3 61 59 60 +3 59 65 55 +3 65 64 55 +3 58 68 62 +3 55 64 53 +3 66 54 63 +3 63 54 56 +3 65 59 67 +3 69 62 68 +3 67 59 61 +3 69 67 61 +3 68 58 66 +end +char 7 +width 0.710 +numpts 17 + 0.157 -0.072 0 + 0.289 -0.072 0 + 0.153 -0.066 0 + 0.159 0.020 0 + 0.316 0.111 0 + 0.190 0.186 0 + 0.384 0.351 0 + 0.260 0.414 0 + 0.454 0.519 0 + 0.319 0.551 0 + 0.420 0.729 0 + 0.595 0.763 0 + 0.529 0.883 0 + 0.003 0.885 0 + 0.710 0.911 0 + 0.000 1.009 0 + 0.709 1.009 0 +numpoly 15 +3 3 0 1 +3 2 0 3 +3 3 4 5 +3 4 3 1 +3 6 7 5 +3 6 5 4 +3 9 7 6 +3 10 9 8 +3 8 9 6 +3 10 11 12 +3 11 10 8 +3 15 13 12 +3 12 14 16 +3 15 12 16 +3 11 14 12 +end +char 8 +width 0.723 +numpts 83 + 0.327 -0.090 0 + 0.424 -0.087 0 + 0.247 -0.076 0 + 0.533 -0.056 0 + 0.184 -0.053 0 + 0.139 -0.026 0 + 0.590 -0.022 0 + 0.082 0.024 0 + 0.384 0.022 0 + 0.304 0.028 0 + 0.648 0.031 0 + 0.465 0.043 0 + 0.247 0.051 0 + 0.510 0.073 0 + 0.207 0.079 0 + 0.036 0.090 0 + 0.695 0.106 0 + 0.172 0.123 0 + 0.562 0.140 0 + 0.011 0.157 0 + 0.154 0.163 0 + 0.717 0.174 0 + 0.583 0.220 0 + 0.140 0.226 0 + 0.000 0.271 0 + 0.723 0.271 0 + 0.580 0.283 0 + 0.143 0.289 0 + 0.567 0.329 0 + 0.710 0.334 0 + 0.013 0.341 0 + 0.171 0.363 0 + 0.529 0.391 0 + 0.686 0.391 0 + 0.039 0.403 0 + 0.215 0.414 0 + 0.487 0.427 0 + 0.069 0.443 0 + 0.653 0.438 0 + 0.259 0.444 0 + 0.299 0.457 0 + 0.430 0.455 0 + 0.379 0.464 0 + 0.601 0.483 0 + 0.127 0.490 0 + 0.200 0.523 0 + 0.523 0.523 0 + 0.116 0.576 0 + 0.344 0.576 0 + 0.419 0.583 0 + 0.617 0.586 0 + 0.293 0.587 0 + 0.459 0.601 0 + 0.081 0.614 0 + 0.242 0.616 0 + 0.500 0.637 0 + 0.653 0.637 0 + 0.053 0.671 0 + 0.522 0.671 0 + 0.194 0.683 0 + 0.670 0.683 0 + 0.537 0.729 0 + 0.183 0.734 0 + 0.677 0.769 0 + 0.043 0.774 0 + 0.530 0.797 0 + 0.191 0.803 0 + 0.668 0.820 0 + 0.512 0.837 0 + 0.068 0.866 0 + 0.236 0.873 0 + 0.641 0.883 0 + 0.459 0.892 0 + 0.276 0.901 0 + 0.413 0.912 0 + 0.339 0.918 0 + 0.114 0.934 0 + 0.602 0.936 0 + 0.179 0.986 0 + 0.516 0.998 0 + 0.230 1.010 0 + 0.327 1.030 0 + 0.413 1.027 0 +numpoly 85 +3 0 9 2 +3 12 4 2 +3 1 8 0 +3 6 11 3 +3 5 14 7 +3 9 0 8 +3 8 1 11 +3 4 12 5 +3 13 11 6 +3 1 3 11 +3 12 2 9 +3 5 12 14 +3 13 10 18 +3 7 17 15 +3 10 13 6 +3 15 20 19 +3 7 14 17 +3 18 16 22 +3 16 18 10 +3 20 15 17 +3 19 23 24 +3 16 21 22 +3 22 25 26 +3 23 19 20 +3 24 27 30 +3 25 22 21 +3 27 24 23 +3 31 34 30 +3 31 37 34 +3 29 28 26 +3 31 30 27 +3 29 26 25 +3 33 28 29 +3 28 33 32 +3 36 32 43 +3 37 31 44 +3 40 45 39 +3 44 39 45 +3 43 32 38 +3 35 44 31 +3 42 48 40 +3 44 35 39 +3 41 46 42 +3 36 46 41 +3 32 33 38 +3 48 42 49 +3 46 36 43 +3 48 45 40 +3 42 46 49 +3 51 45 48 +3 49 46 52 +3 47 54 53 +3 52 46 55 +3 53 59 57 +3 45 54 47 +3 45 51 54 +3 50 55 46 +3 59 53 54 +3 50 58 55 +3 58 50 61 +3 57 62 64 +3 61 63 65 +3 56 61 50 +3 57 59 62 +3 60 61 56 +3 64 66 69 +3 63 67 65 +3 64 62 66 +3 63 61 60 +3 71 68 65 +3 76 69 66 +3 72 68 77 +3 71 65 67 +3 76 70 78 +3 70 76 66 +3 74 82 75 +3 80 78 70 +3 79 72 77 +3 74 72 79 +3 80 73 75 +3 80 75 81 +3 68 71 77 +3 73 80 70 +3 82 81 75 +3 82 74 79 +end +char 9 +width 0.723 +numpts 72 + 0.298 -0.090 0 + 0.355 -0.090 0 + 0.224 -0.077 0 + 0.441 -0.074 0 + 0.155 -0.048 0 + 0.538 -0.026 0 + 0.083 0.014 0 + 0.310 0.022 0 + 0.367 0.024 0 + 0.596 0.026 0 + 0.270 0.029 0 + 0.224 0.050 0 + 0.435 0.049 0 + 0.045 0.077 0 + 0.188 0.083 0 + 0.648 0.100 0 + 0.504 0.111 0 + 0.166 0.123 0 + 0.017 0.174 0 + 0.144 0.189 0 + 0.546 0.197 0 + 0.689 0.203 0 + 0.550 0.207 0 + 0.552 0.214 0 + 0.705 0.271 0 + 0.298 0.302 0 + 0.224 0.316 0 + 0.413 0.315 0 + 0.172 0.338 0 + 0.498 0.358 0 + 0.582 0.374 0 + 0.115 0.378 0 + 0.378 0.422 0 + 0.298 0.429 0 + 0.430 0.432 0 + 0.578 0.436 0 + 0.723 0.437 0 + 0.058 0.444 0 + 0.247 0.451 0 + 0.481 0.458 0 + 0.211 0.477 0 + 0.033 0.489 0 + 0.540 0.523 0 + 0.159 0.551 0 + 0.011 0.557 0 + 0.722 0.563 0 + 0.561 0.570 0 + 0.140 0.631 0 + 0.574 0.637 0 + 0.000 0.694 0 + 0.574 0.694 0 + 0.708 0.700 0 + 0.150 0.741 0 + 0.561 0.764 0 + 0.013 0.774 0 + 0.178 0.809 0 + 0.669 0.826 0 + 0.203 0.843 0 + 0.521 0.841 0 + 0.041 0.849 0 + 0.487 0.875 0 + 0.635 0.882 0 + 0.270 0.896 0 + 0.081 0.910 0 + 0.430 0.908 0 + 0.344 0.919 0 + 0.127 0.955 0 + 0.555 0.963 0 + 0.192 0.997 0 + 0.481 1.004 0 + 0.292 1.027 0 + 0.373 1.030 0 +numpoly 72 +3 3 8 1 +3 2 11 4 +3 0 7 2 +3 8 3 12 +3 4 14 6 +3 0 1 8 +3 6 17 13 +3 10 2 7 +3 7 0 8 +3 5 12 3 +3 12 5 16 +3 2 10 11 +3 4 11 14 +3 5 9 16 +3 18 13 19 +3 16 15 20 +3 15 23 20 +3 6 14 17 +3 13 17 19 +3 21 23 15 +3 22 20 23 +3 23 24 30 +3 16 9 15 +3 23 21 24 +3 25 32 26 +3 27 32 25 +3 38 28 26 +3 43 41 37 +3 34 29 39 +3 33 26 32 +3 29 34 27 +3 30 36 35 +3 34 32 27 +3 36 30 24 +3 28 38 31 +3 31 38 37 +3 35 39 29 +3 38 26 33 +3 39 35 42 +3 42 35 36 +3 40 37 38 +3 44 41 43 +3 42 36 46 +3 44 47 49 +3 43 37 40 +3 48 46 45 +3 36 45 46 +3 51 50 48 +3 52 54 49 +3 47 44 43 +3 50 51 53 +3 51 48 45 +3 59 54 52 +3 59 55 63 +3 52 49 47 +3 53 61 58 +3 56 53 51 +3 55 59 52 +3 53 56 61 +3 66 63 57 +3 55 57 63 +3 62 68 57 +3 58 67 60 +3 67 58 61 +3 68 66 57 +3 60 69 64 +3 68 62 70 +3 60 67 69 +3 64 71 65 +3 65 70 62 +3 70 65 71 +3 64 69 71 +end +char : +width 0.154 +numpts 14 + 0.007 -0.073 0 + 0.150 -0.072 0 + 0.002 -0.069 0 + 0.154 -0.066 0 + 0.001 0.077 0 + 0.007 0.081 0 + 0.150 0.080 0 + 0.001 0.574 0 + 0.007 0.570 0 + 0.153 0.574 0 + 0.000 0.717 0 + 0.154 0.717 0 + 0.004 0.723 0 + 0.150 0.723 0 +numpoly 10 +3 2 5 4 +3 2 0 5 +3 0 3 5 +3 6 5 3 +3 0 1 3 +3 7 8 10 +3 10 11 13 +3 9 10 8 +3 12 10 13 +3 11 10 9 +end +char ; +width 0.160 +numpts 18 + 0.035 -0.287 0 + 0.093 -0.253 0 + 0.000 -0.237 0 + 0.122 -0.220 0 + 0.051 -0.191 0 + 0.064 -0.169 0 + 0.150 -0.157 0 + 0.160 -0.100 0 + 0.081 -0.077 0 + 0.012 -0.073 0 + 0.075 -0.073 0 + 0.007 -0.069 0 + 0.006 0.077 0 + 0.158 0.077 0 + 0.006 0.574 0 + 0.158 0.574 0 + 0.009 0.723 0 + 0.155 0.723 0 +numpoly 14 +3 2 1 4 +3 5 4 3 +3 0 1 2 +3 5 6 8 +3 3 4 1 +3 6 5 3 +3 6 7 8 +3 11 10 12 +3 12 10 13 +3 8 7 10 +3 11 9 10 +3 13 10 7 +3 17 16 15 +3 15 16 14 +end +char < +width 0.725 +numpts 11 + 0.721 0.099 0 + 0.725 0.106 0 + 0.725 0.226 0 + 0.002 0.409 0 + 0.162 0.466 0 + 0.162 0.471 0 + 0.000 0.529 0 + 0.005 0.534 0 + 0.724 0.706 0 + 0.725 0.831 0 + 0.721 0.835 0 +numpoly 9 +3 4 0 2 +3 5 7 6 +3 4 3 0 +3 0 1 2 +3 7 8 10 +3 4 5 3 +3 5 6 3 +3 8 9 10 +3 7 5 8 +end +char = +width 0.728 +numpts 12 + 0.004 0.240 0 + 0.724 0.240 0 + 0.000 0.357 0 + 0.728 0.357 0 + 0.004 0.363 0 + 0.724 0.363 0 + 0.004 0.574 0 + 0.724 0.574 0 + 0.000 0.580 0 + 0.728 0.580 0 + 0.004 0.697 0 + 0.724 0.697 0 +numpoly 8 +3 0 4 2 +3 0 1 5 +3 4 0 5 +3 3 5 1 +3 11 7 9 +3 10 6 7 +3 10 7 11 +3 8 6 10 +end +char > +width 0.725 +numpts 11 + 0.007 0.099 0 + 0.001 0.102 0 + 0.000 0.226 0 + 0.004 0.231 0 + 0.724 0.409 0 + 0.563 0.466 0 + 0.563 0.471 0 + 0.725 0.529 0 + 0.002 0.706 0 + 0.001 0.833 0 + 0.007 0.836 0 +numpoly 9 +3 1 0 2 +3 3 2 0 +3 3 0 5 +3 4 7 5 +3 4 5 0 +3 6 5 7 +3 6 10 8 +3 8 10 9 +3 10 6 7 +end +char ? +width 0.708 +numpts 45 + 0.264 -0.072 0 + 0.410 -0.071 0 + 0.261 0.077 0 + 0.413 0.077 0 + 0.290 0.197 0 + 0.410 0.197 0 + 0.285 0.203 0 + 0.285 0.277 0 + 0.427 0.317 0 + 0.298 0.346 0 + 0.447 0.363 0 + 0.326 0.414 0 + 0.498 0.424 0 + 0.368 0.471 0 + 0.618 0.536 0 + 0.659 0.586 0 + 0.522 0.620 0 + 0.694 0.654 0 + 0.550 0.660 0 + 0.565 0.700 0 + 0.706 0.700 0 + 0.138 0.713 0 + 0.000 0.734 0 + 0.568 0.751 0 + 0.708 0.769 0 + 0.016 0.809 0 + 0.555 0.804 0 + 0.172 0.821 0 + 0.527 0.852 0 + 0.041 0.871 0 + 0.681 0.867 0 + 0.226 0.889 0 + 0.658 0.906 0 + 0.464 0.906 0 + 0.275 0.918 0 + 0.418 0.925 0 + 0.083 0.934 0 + 0.338 0.933 0 + 0.601 0.967 0 + 0.144 0.988 0 + 0.555 0.998 0 + 0.235 1.029 0 + 0.487 1.027 0 + 0.321 1.044 0 + 0.390 1.044 0 +numpoly 41 +3 2 1 3 +3 2 0 1 +3 7 6 4 +3 7 4 5 +3 8 9 7 +3 11 10 13 +3 8 7 5 +3 8 10 11 +3 9 8 11 +3 13 12 16 +3 12 13 10 +3 14 16 12 +3 14 15 16 +3 16 15 18 +3 17 18 15 +3 17 23 19 +3 17 19 18 +3 20 23 17 +3 29 27 36 +3 26 32 28 +3 21 25 22 +3 26 23 24 +3 27 29 25 +3 24 23 20 +3 36 31 39 +3 28 40 33 +3 30 26 24 +3 35 44 37 +3 31 36 27 +3 27 25 21 +3 31 34 41 +3 42 33 40 +3 28 38 40 +3 39 31 41 +3 38 28 32 +3 26 30 32 +3 42 35 33 +3 41 34 43 +3 43 37 44 +3 34 37 43 +3 44 35 42 +end +char @ +width 1.408 +numpts 114 + 0.701 -0.396 0 + 0.941 -0.381 0 + 0.524 -0.372 0 + 0.427 -0.346 0 + 1.107 -0.331 0 + 0.319 -0.299 0 + 0.639 -0.279 0 + 0.839 -0.281 0 + 1.232 -0.260 0 + 0.513 -0.254 0 + 0.987 -0.254 0 + 0.210 -0.224 0 + 0.398 -0.212 0 + 1.097 -0.209 0 + 1.331 -0.174 0 + 0.313 -0.161 0 + 0.301 -0.153 0 + 0.307 -0.157 0 + 0.113 -0.117 0 + 1.227 -0.116 0 + 0.239 -0.093 0 + 0.576 -0.073 0 + 0.981 -0.073 0 + 0.873 -0.069 0 + 0.490 -0.063 0 + 1.273 -0.062 0 + 1.408 -0.060 0 + 0.072 -0.049 0 + 1.073 -0.045 0 + 0.684 -0.036 0 + 0.809 -0.026 0 + 0.404 -0.016 0 + 0.181 -0.009 0 + 0.370 0.019 0 + 1.187 0.033 0 + 0.604 0.039 0 + 0.553 0.043 0 + 0.787 0.044 0 + 0.976 0.051 0 + 0.946 0.066 0 + 1.027 0.061 0 + 0.684 0.068 0 + 0.496 0.076 0 + 0.323 0.094 0 + 0.931 0.094 0 + 0.020 0.100 0 + 0.133 0.111 0 + 0.736 0.107 0 + 0.461 0.117 0 + 1.114 0.117 0 + 1.291 0.157 0 + 0.437 0.174 0 + 1.189 0.203 0 + 0.811 0.209 0 + 0.429 0.231 0 + 0.000 0.237 0 + 0.288 0.237 0 + 0.111 0.249 0 + 1.229 0.277 0 + 0.847 0.311 0 + 1.360 0.311 0 + 0.435 0.329 0 + 1.259 0.369 0 + 0.308 0.397 0 + 0.008 0.403 0 + 0.120 0.409 0 + 1.380 0.426 0 + 0.860 0.443 0 + 0.491 0.489 0 + 0.028 0.494 0 + 1.269 0.494 0 + 0.348 0.500 0 + 1.377 0.529 0 + 0.833 0.541 0 + 0.534 0.551 0 + 0.162 0.557 0 + 1.252 0.586 0 + 0.787 0.595 0 + 0.593 0.603 0 + 1.362 0.609 0 + 0.904 0.614 0 + 0.433 0.624 0 + 0.639 0.623 0 + 0.741 0.622 0 + 0.701 0.630 0 + 0.204 0.643 0 + 1.221 0.667 0 + 0.099 0.677 0 + 0.836 0.683 0 + 0.524 0.696 0 + 0.930 0.716 0 + 1.058 0.717 0 + 0.781 0.718 0 + 0.604 0.731 0 + 0.696 0.742 0 + 1.302 0.751 0 + 0.288 0.757 0 + 0.152 0.763 0 + 1.159 0.761 0 + 0.371 0.826 0 + 1.084 0.828 0 + 1.231 0.849 0 + 0.250 0.873 0 + 0.507 0.897 0 + 0.959 0.896 0 + 0.861 0.924 0 + 1.147 0.924 0 + 0.696 0.936 0 + 0.358 0.952 0 + 1.084 0.964 0 + 0.490 1.009 0 + 0.959 1.015 0 + 0.696 1.044 0 + 0.787 1.044 0 +numpoly 114 +3 0 6 2 +3 1 7 0 +3 6 0 7 +3 7 1 10 +3 2 9 3 +3 3 12 5 +3 9 2 6 +3 10 4 13 +3 4 10 1 +3 15 5 12 +3 5 15 11 +3 13 8 19 +3 12 3 9 +3 8 13 4 +3 11 20 18 +3 11 15 16 +3 17 16 15 +3 14 19 8 +3 26 25 14 +3 20 11 16 +3 22 38 23 +3 25 19 14 +3 23 39 30 +3 30 39 37 +3 27 46 45 +3 18 32 27 +3 32 18 20 +3 21 36 24 +3 35 29 41 +3 24 42 31 +3 29 35 21 +3 22 28 40 +3 38 22 40 +3 34 49 40 +3 33 31 48 +3 36 21 35 +3 37 47 41 +3 33 48 43 +3 43 51 56 +3 44 37 39 +3 34 40 28 +3 47 37 53 +3 50 52 34 +3 38 39 23 +3 52 49 34 +3 37 44 53 +3 27 32 46 +3 42 24 36 +3 48 31 42 +3 37 41 29 +3 45 57 55 +3 53 44 59 +3 51 54 56 +3 52 50 58 +3 58 60 62 +3 43 48 51 +3 45 46 57 +3 56 61 63 +3 64 55 57 +3 91 80 44 +3 60 58 50 +3 62 66 70 +3 56 54 61 +3 44 80 67 +3 59 44 67 +3 71 63 61 +3 64 65 69 +3 67 80 73 +3 65 64 57 +3 66 62 60 +3 68 71 61 +3 71 68 81 +3 69 75 87 +3 72 70 66 +3 74 81 68 +3 77 73 80 +3 70 79 76 +3 75 69 65 +3 83 77 88 +3 87 85 97 +3 81 74 89 +3 89 78 93 +3 86 76 79 +3 70 72 79 +3 74 78 89 +3 88 77 80 +3 75 85 87 +3 82 84 94 +3 91 90 80 +3 86 95 98 +3 78 82 93 +3 92 83 88 +3 93 82 94 +3 84 83 92 +3 94 84 92 +3 97 96 102 +3 95 86 79 +3 102 99 108 +3 95 101 98 +3 96 97 85 +3 96 99 102 +3 98 101 100 +3 103 108 99 +3 100 109 104 +3 106 100 101 +3 108 103 110 +3 105 113 107 +3 100 106 109 +3 104 111 105 +3 107 112 110 +3 111 104 109 +3 113 105 111 +3 112 107 113 +3 107 110 103 +end +char A +width 1.011 +numpts 13 + 0.000 -0.071 0 + 0.855 -0.073 0 + 1.011 -0.071 0 + 0.147 -0.071 0 + 0.265 0.254 0 + 0.724 0.258 0 + 0.313 0.377 0 + 0.680 0.380 0 + 0.310 0.386 0 + 0.441 0.734 0 + 0.490 0.901 0 + 0.415 1.025 0 + 0.570 1.026 0 +numpoly 13 +3 5 1 2 +3 0 8 11 +3 6 4 5 +3 12 10 7 +3 0 3 4 +3 0 4 8 +3 6 5 7 +3 6 8 4 +3 7 5 2 +3 8 9 11 +3 9 10 11 +3 12 7 2 +3 11 10 12 +end +char B +width 0.824 +numpts 48 + 0.000 -0.072 0 + 0.526 -0.067 0 + 0.611 -0.049 0 + 0.680 -0.020 0 + 0.750 0.037 0 + 0.142 0.060 0 + 0.474 0.056 0 + 0.549 0.069 0 + 0.785 0.089 0 + 0.618 0.106 0 + 0.807 0.140 0 + 0.654 0.151 0 + 0.824 0.220 0 + 0.676 0.226 0 + 0.675 0.266 0 + 0.815 0.323 0 + 0.651 0.341 0 + 0.789 0.386 0 + 0.611 0.387 0 + 0.537 0.423 0 + 0.142 0.431 0 + 0.756 0.431 0 + 0.440 0.436 0 + 0.714 0.467 0 + 0.625 0.511 0 + 0.149 0.564 0 + 0.463 0.567 0 + 0.141 0.574 0 + 0.712 0.586 0 + 0.549 0.589 0 + 0.590 0.620 0 + 0.739 0.626 0 + 0.612 0.654 0 + 0.767 0.706 0 + 0.627 0.711 0 + 0.769 0.769 0 + 0.617 0.792 0 + 0.760 0.820 0 + 0.583 0.850 0 + 0.520 0.885 0 + 0.729 0.889 0 + 0.142 0.894 0 + 0.457 0.896 0 + 0.674 0.953 0 + 0.600 0.998 0 + 0.543 1.015 0 + 0.000 1.026 0 + 0.451 1.027 0 +numpoly 50 +3 1 6 0 +3 2 7 1 +3 0 20 46 +3 7 2 9 +3 1 7 6 +3 20 27 46 +3 9 4 11 +3 4 9 3 +3 2 3 9 +3 11 10 13 +3 8 11 4 +3 10 11 8 +3 12 13 10 +3 14 17 16 +3 14 15 17 +3 16 21 18 +3 14 13 12 +3 15 14 12 +3 23 18 21 +3 5 0 6 +3 19 26 22 +3 18 24 19 +3 16 17 21 +3 24 18 23 +3 26 19 29 +3 19 24 29 +3 25 22 26 +3 22 25 20 +3 30 29 24 +3 32 28 31 +3 28 32 30 +3 32 31 34 +3 0 5 20 +3 34 35 36 +3 33 34 31 +3 28 30 24 +3 36 40 38 +3 38 44 39 +3 35 37 36 +3 34 33 35 +3 25 27 20 +3 27 41 46 +3 40 36 37 +3 43 38 40 +3 39 45 42 +3 42 47 41 +3 38 43 44 +3 45 39 44 +3 47 46 41 +3 47 42 45 +end +char C +width 0.967 +numpts 56 + 0.473 -0.090 0 + 0.581 -0.087 0 + 0.381 -0.078 0 + 0.290 -0.051 0 + 0.713 -0.052 0 + 0.239 -0.025 0 + 0.781 -0.015 0 + 0.177 0.020 0 + 0.478 0.036 0 + 0.530 0.036 0 + 0.404 0.049 0 + 0.604 0.049 0 + 0.861 0.056 0 + 0.353 0.068 0 + 0.661 0.072 0 + 0.107 0.101 0 + 0.713 0.108 0 + 0.273 0.119 0 + 0.919 0.140 0 + 0.237 0.157 0 + 0.071 0.163 0 + 0.778 0.186 0 + 0.196 0.226 0 + 0.967 0.277 0 + 0.025 0.289 0 + 0.827 0.311 0 + 0.164 0.329 0 + 0.009 0.363 0 + 0.149 0.443 0 + 0.000 0.529 0 + 0.151 0.557 0 + 0.008 0.609 0 + 0.810 0.695 0 + 0.188 0.711 0 + 0.948 0.729 0 + 0.044 0.741 0 + 0.223 0.780 0 + 0.921 0.809 0 + 0.753 0.809 0 + 0.261 0.827 0 + 0.099 0.843 0 + 0.718 0.850 0 + 0.313 0.868 0 + 0.673 0.883 0 + 0.857 0.906 0 + 0.421 0.913 0 + 0.427 0.913 0 + 0.439 0.916 0 + 0.164 0.919 0 + 0.570 0.918 0 + 0.787 0.969 0 + 0.284 0.998 0 + 0.713 1.011 0 + 0.364 1.027 0 + 0.484 1.047 0 + 0.581 1.044 0 +numpoly 54 +3 1 9 0 +3 0 8 2 +3 14 6 16 +3 4 14 11 +3 24 20 22 +3 7 17 15 +3 2 10 3 +3 8 10 2 +3 9 1 11 +3 0 9 8 +3 4 11 1 +3 3 13 5 +3 12 16 6 +3 10 13 3 +3 5 13 7 +3 7 13 17 +3 22 20 15 +3 16 12 21 +3 14 4 6 +3 19 15 17 +3 23 25 18 +3 22 15 19 +3 25 21 18 +3 18 21 12 +3 27 28 29 +3 27 24 26 +3 26 24 22 +3 28 27 26 +3 29 30 31 +3 30 29 28 +3 33 35 31 +3 35 33 40 +3 33 31 30 +3 34 37 32 +3 48 42 51 +3 36 40 33 +3 40 36 48 +3 38 44 41 +3 44 38 37 +3 32 37 38 +3 48 39 42 +3 36 39 48 +3 54 53 47 +3 45 51 42 +3 49 43 52 +3 50 41 44 +3 47 45 46 +3 41 50 43 +3 45 53 51 +3 49 54 47 +3 53 45 47 +3 49 55 54 +3 55 49 52 +3 52 43 50 +end +char D +width 0.904 +numpts 34 + 0.000 -0.072 0 + 0.440 -0.073 0 + 0.537 -0.061 0 + 0.634 -0.034 0 + 0.733 0.026 0 + 0.142 0.060 0 + 0.463 0.059 0 + 0.773 0.066 0 + 0.533 0.071 0 + 0.617 0.109 0 + 0.819 0.129 0 + 0.658 0.146 0 + 0.704 0.214 0 + 0.877 0.266 0 + 0.732 0.289 0 + 0.901 0.397 0 + 0.755 0.437 0 + 0.904 0.529 0 + 0.755 0.534 0 + 0.890 0.643 0 + 0.737 0.658 0 + 0.714 0.724 0 + 0.849 0.774 0 + 0.680 0.781 0 + 0.611 0.849 0 + 0.803 0.854 0 + 0.554 0.879 0 + 0.142 0.894 0 + 0.429 0.898 0 + 0.714 0.946 0 + 0.646 0.987 0 + 0.549 1.016 0 + 0.000 1.026 0 + 0.440 1.027 0 +numpoly 34 +3 2 6 1 +3 5 0 1 +3 8 3 9 +3 3 8 2 +3 0 27 32 +3 6 2 8 +3 5 1 6 +3 4 7 11 +3 4 9 3 +3 9 4 11 +3 11 10 12 +3 11 7 10 +3 13 14 12 +3 14 15 16 +3 13 12 10 +3 16 17 18 +3 14 13 15 +3 18 19 20 +3 17 16 15 +3 18 17 19 +3 22 21 20 +3 21 22 23 +3 29 24 23 +3 22 20 19 +3 26 24 30 +3 0 5 27 +3 25 23 22 +3 29 23 25 +3 30 24 29 +3 26 31 28 +3 31 26 30 +3 33 32 27 +3 28 33 27 +3 33 28 31 +end +char E +width 0.811 +numpts 15 + 0.000 -0.072 0 + 0.811 -0.069 0 + 0.811 0.052 0 + 0.142 0.060 0 + 0.142 0.426 0 + 0.743 0.431 0 + 0.747 0.551 0 + 0.149 0.559 0 + 0.743 0.558 0 + 0.141 0.569 0 + 0.142 0.894 0 + 0.783 0.900 0 + 0.787 1.020 0 + 0.000 1.026 0 + 0.783 1.026 0 +numpoly 13 +3 0 4 13 +3 1 3 0 +3 1 2 3 +3 0 3 4 +3 7 5 8 +3 5 7 4 +3 6 8 5 +3 4 9 13 +3 7 9 4 +3 9 10 13 +3 11 14 10 +3 14 13 10 +3 12 14 11 +end +char F +width 0.737 +numpts 12 + 0.000 -0.072 0 + 0.137 -0.072 0 + 0.141 0.420 0 + 0.149 0.427 0 + 0.658 0.431 0 + 0.658 0.551 0 + 0.149 0.556 0 + 0.141 0.563 0 + 0.142 0.894 0 + 0.737 0.903 0 + 0.737 1.023 0 + 0.000 1.026 0 +numpoly 10 +3 0 2 11 +3 2 7 11 +3 2 0 1 +3 6 4 5 +3 4 6 3 +3 3 6 2 +3 7 2 6 +3 7 8 11 +3 11 8 10 +3 8 9 10 +end +char G +width 1.010 +numpts 60 + 0.598 -0.090 0 + 0.433 -0.079 0 + 0.707 -0.073 0 + 0.341 -0.054 0 + 0.827 -0.034 0 + 0.256 -0.015 0 + 0.896 0.001 0 + 0.518 0.039 0 + 0.610 0.042 0 + 0.164 0.050 0 + 0.427 0.055 0 + 0.701 0.063 0 + 1.008 0.077 0 + 0.124 0.093 0 + 0.318 0.102 0 + 0.810 0.112 0 + 0.278 0.130 0 + 0.868 0.157 0 + 0.220 0.197 0 + 0.050 0.216 0 + 0.018 0.311 0 + 0.169 0.311 0 + 0.553 0.362 0 + 0.867 0.358 0 + 0.003 0.397 0 + 0.152 0.403 0 + 0.549 0.483 0 + 0.553 0.489 0 + 1.010 0.489 0 + 0.000 0.511 0 + 0.148 0.517 0 + 0.009 0.591 0 + 0.173 0.654 0 + 0.867 0.686 0 + 0.861 0.691 0 + 0.196 0.717 0 + 0.995 0.723 0 + 0.049 0.734 0 + 0.838 0.753 0 + 0.082 0.803 0 + 0.252 0.803 0 + 0.798 0.821 0 + 0.961 0.826 0 + 0.318 0.862 0 + 0.124 0.866 0 + 0.718 0.884 0 + 0.924 0.888 0 + 0.387 0.896 0 + 0.638 0.912 0 + 0.177 0.923 0 + 0.484 0.919 0 + 0.576 0.921 0 + 0.873 0.944 0 + 0.233 0.964 0 + 0.313 1.005 0 + 0.776 1.004 0 + 0.713 1.026 0 + 0.404 1.033 0 + 0.513 1.047 0 + 0.621 1.044 0 +numpoly 58 +3 0 7 1 +3 14 5 3 +3 5 14 9 +3 2 8 0 +3 1 10 3 +3 0 8 7 +3 8 2 11 +3 18 13 9 +3 17 6 12 +3 10 1 7 +3 4 11 2 +3 13 18 19 +3 23 17 12 +3 15 6 17 +3 4 6 15 +3 16 9 14 +3 11 4 15 +3 14 3 10 +3 19 21 20 +3 18 9 16 +3 30 31 29 +3 23 27 22 +3 25 24 20 +3 22 27 26 +3 21 19 18 +3 25 20 21 +3 23 28 27 +3 28 23 12 +3 29 24 25 +3 30 29 25 +3 31 32 37 +3 38 33 36 +3 37 32 39 +3 32 31 30 +3 35 39 32 +3 34 33 38 +3 39 40 44 +3 38 46 41 +3 38 42 46 +3 40 39 35 +3 44 40 49 +3 53 43 54 +3 43 49 40 +3 42 38 36 +3 43 47 54 +3 52 41 46 +3 41 52 45 +3 43 53 49 +3 54 47 57 +3 50 57 47 +3 45 56 48 +3 55 45 52 +3 48 59 51 +3 57 50 58 +3 50 51 58 +3 56 45 55 +3 58 51 59 +3 59 48 56 +end +char H +width 0.857 +numpts 16 + 0.000 -0.072 0 + 0.137 -0.072 0 + 0.720 -0.073 0 + 0.714 -0.069 0 + 0.857 -0.069 0 + 0.141 0.437 0 + 0.149 0.444 0 + 0.709 0.443 0 + 0.149 0.573 0 + 0.709 0.574 0 + 0.141 0.580 0 + 0.717 1.026 0 + 0.857 1.023 0 + 0.000 1.026 0 + 0.137 1.026 0 + 0.852 1.027 0 +numpoly 14 +3 4 9 7 +3 0 5 13 +3 5 10 13 +3 5 0 1 +3 8 7 9 +3 9 4 11 +3 10 5 8 +3 6 8 5 +3 4 3 2 +3 7 8 6 +3 14 13 10 +3 12 15 11 +3 3 4 7 +3 4 12 11 +end +char I +width 0.143 +numpts 4 + 0.140 -0.071 0 + 0.000 -0.069 0 + 0.003 1.026 0 + 0.143 1.023 0 +numpoly 2 +3 1 3 2 +3 3 1 0 +end +char J +width 0.605 +numpts 27 + 0.266 -0.090 0 + 0.323 -0.090 0 + 0.192 -0.078 0 + 0.399 -0.077 0 + 0.146 -0.061 0 + 0.455 -0.056 0 + 0.080 -0.014 0 + 0.529 -0.001 0 + 0.277 0.039 0 + 0.352 0.047 0 + 0.564 0.049 0 + 0.232 0.049 0 + 0.392 0.066 0 + 0.026 0.068 0 + 0.185 0.077 0 + 0.160 0.111 0 + 0.587 0.111 0 + 0.438 0.117 0 + 0.002 0.163 0 + 0.139 0.174 0 + 0.459 0.226 0 + 0.605 0.231 0 + 0.000 0.237 0 + 0.129 0.254 0 + 0.463 1.026 0 + 0.603 1.023 0 + 0.597 1.027 0 +numpoly 25 +3 10 12 7 +3 4 2 11 +3 0 1 8 +3 3 8 1 +3 11 2 8 +3 0 8 2 +3 8 3 9 +3 9 3 12 +3 4 14 6 +3 7 12 5 +3 3 5 12 +3 6 15 13 +3 12 10 17 +3 14 4 11 +3 13 19 18 +3 6 14 15 +3 22 19 23 +3 17 16 20 +3 13 15 19 +3 16 17 10 +3 22 18 19 +3 21 20 16 +3 20 21 24 +3 25 26 24 +3 21 25 24 +end +char K +width 0.898 +numpts 17 + 0.000 -0.072 0 + 0.137 -0.072 0 + 0.898 -0.071 0 + 0.714 -0.071 0 + 0.638 0.289 0 + 0.634 0.294 0 + 0.634 0.294 0 + 0.141 0.300 0 + 0.320 0.479 0 + 0.143 0.491 0 + 0.432 0.569 0 + 0.429 0.574 0 + 0.428 0.574 0 + 0.875 1.026 0 + 0.000 1.026 0 + 0.137 1.026 0 + 0.691 1.027 0 +numpoly 15 +3 0 9 14 +3 0 7 9 +3 3 10 8 +3 3 6 10 +3 9 8 16 +3 4 5 6 +3 7 0 1 +3 3 4 6 +3 16 8 12 +3 10 11 12 +3 4 3 2 +3 8 10 12 +3 9 7 8 +3 13 16 12 +3 15 14 9 +end +char L +width 0.684 +numpts 7 + 0.000 -0.072 0 + 0.680 -0.072 0 + 0.684 0.049 0 + 0.142 0.060 0 + 0.680 0.055 0 + 0.000 1.026 0 + 0.137 1.026 0 +numpoly 5 +3 3 0 1 +3 0 3 5 +3 2 4 1 +3 3 1 4 +3 6 5 3 +end +char M +width 1.046 +numpts 19 + 0.135 -0.071 0 + 0.457 -0.072 0 + 0.914 -0.073 0 + 0.000 -0.069 0 + 0.583 -0.069 0 + 0.909 -0.069 0 + 1.046 -0.069 0 + 0.526 0.098 0 + 0.531 0.098 0 + 0.903 0.830 0 + 0.143 0.845 0 + 0.264 0.883 0 + 0.263 0.887 0 + 0.260 0.894 0 + 0.219 1.020 0 + 0.003 1.026 0 + 0.857 1.023 0 + 1.046 1.023 0 + 0.211 1.027 0 +numpoly 17 +3 3 10 15 +3 5 6 9 +3 6 5 2 +3 1 11 10 +3 4 8 1 +3 1 7 11 +3 9 16 8 +3 1 8 7 +3 9 8 4 +3 10 18 15 +3 13 11 12 +3 10 3 0 +3 10 13 18 +3 16 9 17 +3 10 11 13 +3 13 14 18 +3 6 17 9 +end +char N +width 0.863 +numpts 14 + 0.000 -0.072 0 + 0.131 -0.072 0 + 0.720 -0.073 0 + 0.863 -0.069 0 + 0.720 0.172 0 + 0.458 0.311 0 + 0.454 0.317 0 + 0.457 0.312 0 + 0.137 0.781 0 + 0.728 1.026 0 + 0.863 1.023 0 + 0.000 1.026 0 + 0.143 1.026 0 + 0.857 1.027 0 +numpoly 12 +3 0 8 11 +3 8 0 1 +3 4 3 9 +3 3 4 2 +3 4 5 2 +3 6 7 5 +3 12 6 4 +3 4 6 5 +3 6 12 8 +3 10 13 9 +3 8 12 11 +3 3 10 9 +end +char O +width 1.054 +numpts 63 + 0.490 -0.090 0 + 0.564 -0.090 0 + 0.398 -0.076 0 + 0.684 -0.068 0 + 0.758 -0.041 0 + 0.278 -0.032 0 + 0.844 0.009 0 + 0.210 0.011 0 + 0.496 0.036 0 + 0.558 0.036 0 + 0.421 0.049 0 + 0.633 0.049 0 + 0.914 0.071 0 + 0.138 0.077 0 + 0.714 0.083 0 + 0.336 0.085 0 + 0.278 0.127 0 + 0.962 0.134 0 + 0.800 0.151 0 + 0.073 0.170 0 + 0.227 0.186 0 + 0.999 0.203 0 + 0.195 0.237 0 + 0.868 0.260 0 + 1.033 0.300 0 + 0.018 0.311 0 + 0.894 0.346 0 + 0.155 0.369 0 + 0.000 0.431 0 + 0.906 0.437 0 + 1.054 0.437 0 + 0.149 0.511 0 + 0.906 0.517 0 + 0.003 0.546 0 + 0.157 0.591 0 + 1.042 0.614 0 + 0.887 0.637 0 + 0.019 0.649 0 + 1.024 0.689 0 + 0.858 0.717 0 + 0.198 0.730 0 + 0.053 0.751 0 + 0.992 0.769 0 + 0.243 0.797 0 + 0.810 0.793 0 + 0.776 0.830 0 + 0.101 0.837 0 + 0.948 0.843 0 + 0.319 0.862 0 + 0.707 0.878 0 + 0.143 0.889 0 + 0.421 0.908 0 + 0.639 0.906 0 + 0.890 0.910 0 + 0.501 0.921 0 + 0.581 0.919 0 + 0.222 0.957 0 + 0.827 0.960 0 + 0.307 1.005 0 + 0.747 1.003 0 + 0.684 1.026 0 + 0.421 1.039 0 + 0.564 1.047 0 +numpoly 63 +3 0 8 2 +3 1 9 0 +3 8 10 2 +3 2 10 5 +3 9 1 11 +3 5 16 7 +3 11 3 14 +3 3 11 1 +3 3 4 14 +3 6 14 4 +3 7 16 13 +3 10 15 5 +3 0 9 8 +3 16 5 15 +3 14 6 18 +3 13 20 19 +3 12 18 6 +3 18 17 23 +3 17 21 23 +3 20 22 19 +3 18 12 17 +3 23 21 26 +3 25 19 22 +3 13 16 20 +3 25 27 28 +3 27 25 22 +3 21 24 26 +3 30 29 26 +3 32 35 36 +3 30 26 24 +3 33 34 37 +3 32 29 30 +3 28 31 33 +3 31 28 27 +3 34 33 31 +3 36 38 39 +3 35 32 30 +3 41 37 34 +3 38 42 39 +3 41 40 46 +3 35 38 36 +3 39 47 44 +3 40 43 46 +3 53 45 44 +3 46 43 50 +3 45 57 49 +3 40 41 34 +3 56 50 43 +3 49 59 52 +3 48 56 43 +3 57 45 53 +3 53 44 47 +3 56 48 58 +3 39 42 47 +3 58 51 61 +3 59 49 57 +3 51 58 48 +3 55 52 60 +3 62 54 55 +3 59 60 52 +3 61 54 62 +3 54 61 51 +3 62 55 60 +end +char P +width 0.836 +numpts 31 + 0.000 -0.072 0 + 0.137 -0.072 0 + 0.141 0.369 0 + 0.149 0.376 0 + 0.474 0.376 0 + 0.623 0.400 0 + 0.721 0.449 0 + 0.149 0.504 0 + 0.463 0.504 0 + 0.141 0.511 0 + 0.778 0.511 0 + 0.567 0.523 0 + 0.623 0.553 0 + 0.654 0.586 0 + 0.820 0.597 0 + 0.677 0.631 0 + 0.836 0.683 0 + 0.687 0.729 0 + 0.671 0.791 0 + 0.822 0.809 0 + 0.646 0.833 0 + 0.606 0.869 0 + 0.796 0.871 0 + 0.142 0.894 0 + 0.560 0.889 0 + 0.486 0.898 0 + 0.762 0.923 0 + 0.697 0.976 0 + 0.629 1.005 0 + 0.000 1.026 0 + 0.480 1.027 0 +numpoly 31 +3 0 9 29 +3 0 2 9 +3 2 7 9 +3 7 3 8 +3 12 11 5 +3 5 11 4 +3 4 8 3 +3 3 7 2 +3 2 0 1 +3 11 8 4 +3 13 12 6 +3 10 13 6 +3 6 12 5 +3 14 15 10 +3 15 14 17 +3 13 10 15 +3 16 17 14 +3 17 19 18 +3 19 17 16 +3 18 19 20 +3 20 27 21 +3 22 20 19 +3 9 23 29 +3 30 25 24 +3 25 30 23 +3 27 20 26 +3 20 22 26 +3 28 24 21 +3 28 21 27 +3 30 29 23 +3 30 24 28 +end +char Q +width 1.069 +numpts 66 + 1.027 -0.154 0 + 0.930 -0.112 0 + 0.559 -0.090 0 + 0.439 -0.084 0 + 0.633 -0.080 0 + 0.376 -0.070 0 + 1.069 -0.060 0 + 0.724 -0.055 0 + 0.262 -0.023 0 + 0.793 -0.023 0 + 0.182 0.033 0 + 0.553 0.036 0 + 0.473 0.039 0 + 0.629 0.049 0 + 0.891 0.049 0 + 0.410 0.052 0 + 0.669 0.066 0 + 0.347 0.078 0 + 0.593 0.108 0 + 0.284 0.121 0 + 0.102 0.123 0 + 0.534 0.129 0 + 0.776 0.132 0 + 0.967 0.146 0 + 0.222 0.192 0 + 0.662 0.199 0 + 0.056 0.205 0 + 0.847 0.220 0 + 0.570 0.231 0 + 0.186 0.260 0 + 1.025 0.277 0 + 0.027 0.283 0 + 0.881 0.306 0 + 0.157 0.363 0 + 0.003 0.403 0 + 0.149 0.437 0 + 1.052 0.437 0 + 0.903 0.443 0 + 0.000 0.517 0 + 1.046 0.580 0 + 0.157 0.597 0 + 0.891 0.609 0 + 0.028 0.677 0 + 0.182 0.689 0 + 1.005 0.734 0 + 0.844 0.738 0 + 0.222 0.769 0 + 0.081 0.803 0 + 0.799 0.804 0 + 0.965 0.814 0 + 0.753 0.847 0 + 0.307 0.855 0 + 0.138 0.883 0 + 0.913 0.884 0 + 0.370 0.891 0 + 0.679 0.891 0 + 0.439 0.913 0 + 0.559 0.921 0 + 0.222 0.958 0 + 0.827 0.959 0 + 0.296 0.999 0 + 0.759 0.998 0 + 0.393 1.033 0 + 0.662 1.032 0 + 0.490 1.047 0 + 0.564 1.047 0 +numpoly 66 +3 0 6 1 +3 13 7 16 +3 14 9 1 +3 9 16 7 +3 3 15 5 +3 16 9 14 +3 11 4 13 +3 11 2 4 +3 7 13 4 +3 12 3 11 +3 2 11 3 +3 15 3 12 +3 5 17 8 +3 8 19 10 +3 10 19 20 +3 14 1 6 +3 5 15 17 +3 20 29 26 +3 19 8 17 +3 21 18 28 +3 22 16 14 +3 16 25 18 +3 22 14 27 +3 24 20 19 +3 16 22 25 +3 26 29 31 +3 18 25 28 +3 14 23 27 +3 27 30 32 +3 30 27 23 +3 31 33 34 +3 20 24 29 +3 37 32 30 +3 33 31 29 +3 34 33 38 +3 36 37 30 +3 35 38 33 +3 37 39 41 +3 38 40 42 +3 37 36 39 +3 41 44 45 +3 40 38 35 +3 42 43 47 +3 44 41 39 +3 46 47 43 +3 43 42 40 +3 47 46 52 +3 45 49 48 +3 59 50 48 +3 52 51 58 +3 53 48 49 +3 61 50 59 +3 50 61 55 +3 58 51 60 +3 51 52 46 +3 49 45 44 +3 59 48 53 +3 57 64 56 +3 60 54 62 +3 55 63 57 +3 51 54 60 +3 54 56 62 +3 62 56 64 +3 63 55 61 +3 63 65 57 +3 57 65 64 +end +char R +width 0.957 +numpts 46 + 0.000 -0.072 0 + 0.137 -0.072 0 + 0.783 -0.072 0 + 0.955 -0.071 0 + 0.957 -0.066 0 + 0.906 0.014 0 + 0.903 0.019 0 + 0.902 0.020 0 + 0.577 0.243 0 + 0.737 0.277 0 + 0.497 0.347 0 + 0.650 0.374 0 + 0.463 0.377 0 + 0.141 0.409 0 + 0.411 0.404 0 + 0.149 0.416 0 + 0.354 0.415 0 + 0.574 0.426 0 + 0.657 0.447 0 + 0.726 0.475 0 + 0.807 0.540 0 + 0.149 0.544 0 + 0.141 0.551 0 + 0.531 0.548 0 + 0.611 0.565 0 + 0.848 0.603 0 + 0.674 0.604 0 + 0.699 0.637 0 + 0.870 0.677 0 + 0.721 0.694 0 + 0.724 0.746 0 + 0.873 0.751 0 + 0.703 0.815 0 + 0.860 0.820 0 + 0.663 0.861 0 + 0.836 0.877 0 + 0.623 0.885 0 + 0.141 0.900 0 + 0.149 0.907 0 + 0.520 0.907 0 + 0.802 0.929 0 + 0.749 0.976 0 + 0.703 0.999 0 + 0.606 1.021 0 + 0.000 1.026 0 + 0.537 1.027 0 +numpoly 46 +3 2 9 8 +3 3 5 2 +3 0 37 44 +3 5 7 2 +3 5 6 7 +3 3 4 5 +3 2 7 9 +3 18 23 17 +3 11 8 9 +3 8 11 10 +3 0 22 37 +3 11 17 10 +3 21 16 23 +3 21 15 16 +3 23 10 17 +3 19 24 18 +3 23 18 24 +3 23 12 10 +3 15 21 13 +3 0 21 22 +3 16 14 23 +3 23 14 12 +3 20 26 19 +3 26 20 27 +3 24 19 26 +3 27 25 29 +3 28 30 29 +3 31 30 28 +3 25 27 20 +3 30 33 32 +3 28 29 25 +3 33 30 31 +3 32 40 34 +3 35 32 33 +3 0 1 13 +3 0 13 21 +3 41 34 40 +3 43 36 42 +3 38 39 45 +3 32 35 40 +3 42 34 41 +3 34 42 36 +3 36 43 39 +3 44 38 45 +3 43 45 39 +3 37 38 44 +end +char S +width 0.867 +numpts 69 + 0.500 -0.090 0 + 0.323 -0.079 0 + 0.609 -0.071 0 + 0.249 -0.060 0 + 0.174 -0.026 0 + 0.729 -0.017 0 + 0.123 0.010 0 + 0.426 0.039 0 + 0.517 0.042 0 + 0.792 0.039 0 + 0.346 0.052 0 + 0.071 0.066 0 + 0.294 0.069 0 + 0.622 0.071 0 + 0.827 0.089 0 + 0.667 0.100 0 + 0.220 0.113 0 + 0.031 0.134 0 + 0.712 0.157 0 + 0.858 0.163 0 + 0.174 0.169 0 + 0.727 0.214 0 + 0.149 0.226 0 + 0.001 0.237 0 + 0.867 0.266 0 + 0.000 0.277 0 + 0.719 0.277 0 + 0.134 0.289 0 + 0.696 0.317 0 + 0.854 0.329 0 + 0.626 0.369 0 + 0.831 0.380 0 + 0.552 0.397 0 + 0.769 0.452 0 + 0.317 0.457 0 + 0.214 0.493 0 + 0.712 0.491 0 + 0.157 0.525 0 + 0.614 0.531 0 + 0.096 0.580 0 + 0.317 0.609 0 + 0.220 0.656 0 + 0.048 0.671 0 + 0.185 0.711 0 + 0.694 0.711 0 + 0.039 0.723 0 + 0.832 0.723 0 + 0.179 0.769 0 + 0.189 0.809 0 + 0.817 0.814 0 + 0.049 0.820 0 + 0.660 0.815 0 + 0.237 0.870 0 + 0.609 0.873 0 + 0.075 0.883 0 + 0.774 0.900 0 + 0.294 0.900 0 + 0.552 0.902 0 + 0.363 0.916 0 + 0.460 0.919 0 + 0.740 0.940 0 + 0.140 0.961 0 + 0.677 0.988 0 + 0.186 0.992 0 + 0.620 1.015 0 + 0.289 1.032 0 + 0.534 1.038 0 + 0.357 1.044 0 + 0.460 1.047 0 +numpoly 67 +3 2 8 0 +3 0 7 1 +3 6 4 16 +3 6 16 11 +3 0 8 7 +3 7 10 1 +3 8 2 13 +3 5 15 13 +3 1 10 3 +3 10 12 3 +3 9 15 5 +3 4 3 12 +3 15 14 18 +3 5 13 2 +3 14 15 9 +3 16 4 12 +3 21 24 26 +3 18 19 21 +3 11 20 17 +3 20 11 16 +3 17 22 23 +3 19 18 14 +3 22 17 20 +3 25 23 27 +3 23 22 27 +3 24 21 19 +3 26 31 28 +3 28 33 30 +3 24 29 26 +3 30 38 32 +3 26 29 31 +3 34 32 38 +3 33 28 31 +3 34 40 35 +3 33 36 30 +3 39 43 42 +3 38 30 36 +3 41 37 35 +3 40 34 38 +3 37 41 39 +3 41 35 40 +3 50 48 54 +3 39 41 43 +3 44 46 49 +3 45 42 43 +3 45 47 50 +3 48 50 47 +3 60 51 55 +3 47 45 43 +3 51 60 53 +3 54 48 61 +3 44 49 51 +3 55 51 49 +3 48 52 61 +3 56 63 52 +3 57 66 59 +3 61 52 63 +3 63 56 65 +3 62 53 60 +3 53 64 57 +3 53 62 64 +3 59 66 58 +3 65 58 67 +3 58 65 56 +3 66 57 64 +3 67 58 68 +3 68 58 66 +end +char T +width 0.869 +numpts 8 + 0.366 -0.072 0 + 0.503 -0.072 0 + 0.360 0.894 0 + 0.508 0.894 0 + 0.000 0.903 0 + 0.869 0.903 0 + 0.003 1.026 0 + 0.869 1.023 0 +numpoly 6 +3 0 3 2 +3 3 0 1 +3 6 4 2 +3 6 3 7 +3 6 2 3 +3 3 5 7 +end +char U +width 0.862 +numpts 32 + 0.393 -0.090 0 + 0.507 -0.087 0 + 0.267 -0.070 0 + 0.593 -0.071 0 + 0.210 -0.051 0 + 0.678 -0.036 0 + 0.118 0.007 0 + 0.758 0.024 0 + 0.393 0.044 0 + 0.524 0.053 0 + 0.072 0.060 0 + 0.318 0.057 0 + 0.576 0.068 0 + 0.256 0.085 0 + 0.806 0.089 0 + 0.633 0.102 0 + 0.204 0.130 0 + 0.835 0.157 0 + 0.027 0.159 0 + 0.685 0.174 0 + 0.167 0.197 0 + 0.009 0.243 0 + 0.708 0.260 0 + 0.862 0.334 0 + 0.000 0.340 0 + 0.146 0.340 0 + 0.717 0.346 0 + 0.721 1.026 0 + 0.861 1.023 0 + 0.004 1.026 0 + 0.141 1.026 0 + 0.856 1.027 0 +numpoly 30 +3 3 9 1 +3 10 20 18 +3 8 0 1 +3 0 11 2 +3 7 15 5 +3 0 8 11 +3 8 1 9 +3 9 3 12 +3 13 4 2 +3 5 12 3 +3 15 7 19 +3 16 10 6 +3 12 5 15 +3 4 13 6 +3 13 2 11 +3 21 18 20 +3 13 16 6 +3 19 17 22 +3 17 19 14 +3 7 14 19 +3 10 16 20 +3 25 24 21 +3 23 26 22 +3 23 22 17 +3 25 21 20 +3 24 25 29 +3 30 29 25 +3 28 31 27 +3 26 23 27 +3 23 28 27 +end +char V +width 0.994 +numpts 8 + 0.423 -0.070 0 + 0.571 -0.069 0 + 0.491 0.061 0 + 0.497 0.061 0 + 0.000 1.026 0 + 0.148 1.025 0 + 0.851 1.025 0 + 0.994 1.026 0 +numpoly 6 +3 0 2 4 +3 3 2 0 +3 3 7 6 +3 1 3 0 +3 3 1 7 +3 2 5 4 +end +char W +width 1.402 +numpts 14 + 0.285 -0.072 0 + 0.434 -0.070 0 + 0.965 -0.069 0 + 1.108 -0.069 0 + 0.360 0.097 0 + 1.034 0.098 0 + 0.971 0.380 0 + 0.703 0.881 0 + 0.000 1.026 0 + 0.617 1.024 0 + 1.263 1.024 0 + 1.402 1.026 0 + 0.143 1.026 0 + 0.788 1.026 0 +numpoly 12 +3 2 6 7 +3 6 2 5 +3 1 4 0 +3 7 9 4 +3 11 10 5 +3 3 5 2 +3 8 0 4 +3 13 7 6 +3 9 7 13 +3 7 4 1 +3 11 5 3 +3 12 8 4 +end +char X +width 0.989 +numpts 14 + 0.000 -0.071 0 + 0.989 -0.071 0 + 0.168 -0.071 0 + 0.820 -0.071 0 + 0.500 0.378 0 + 0.594 0.494 0 + 0.413 0.500 0 + 0.591 0.499 0 + 0.590 0.500 0 + 0.505 0.617 0 + 0.048 1.026 0 + 0.808 1.026 0 + 0.961 1.026 0 + 0.214 1.026 0 +numpoly 12 +3 0 2 6 +3 3 5 4 +3 5 6 4 +3 5 8 6 +3 5 3 1 +3 5 7 8 +3 4 6 2 +3 9 6 8 +3 12 11 8 +3 6 13 10 +3 13 6 9 +3 11 9 8 +end +char Y +width 0.992 +numpts 12 + 0.559 -0.071 0 + 0.419 -0.069 0 + 0.416 0.391 0 + 0.565 0.397 0 + 0.499 0.514 0 + 0.279 0.854 0 + 0.276 0.859 0 + 0.275 0.860 0 + 0.000 1.026 0 + 0.167 1.025 0 + 0.830 1.025 0 + 0.992 1.026 0 +numpoly 10 +3 3 2 1 +3 3 1 0 +3 4 2 3 +3 2 9 8 +3 11 10 4 +3 5 2 4 +3 5 6 7 +3 2 7 9 +3 2 5 7 +3 11 4 3 +end +char Z +width 0.866 +numpts 11 + 0.004 -0.072 0 + 0.866 -0.069 0 + 0.866 0.052 0 + 0.000 0.060 0 + 0.172 0.060 0 + 0.674 0.894 0 + 0.066 0.900 0 + 0.850 0.900 0 + 0.062 1.020 0 + 0.849 1.023 0 + 0.066 1.026 0 +numpoly 9 +3 0 4 3 +3 1 4 0 +3 1 2 4 +3 3 4 5 +3 5 7 9 +3 4 7 5 +3 5 10 6 +3 10 5 9 +3 6 10 8 +end +char [ +width 0.296 +numpts 8 + 0.000 -0.374 0 + 0.295 -0.374 0 + 0.295 -0.271 0 + 0.137 -0.266 0 + 0.137 0.915 0 + 0.296 0.923 0 + 0.003 1.026 0 + 0.292 1.026 0 +numpoly 6 +3 0 4 6 +3 3 1 2 +3 1 3 0 +3 0 3 4 +3 5 7 4 +3 6 4 7 +end +char \ +width 0.417 +numpts 5 + 0.316 -0.092 0 + 0.413 -0.093 0 + 0.417 -0.089 0 + 0.000 1.043 0 + 0.099 1.044 0 +numpoly 3 +3 0 4 3 +3 0 2 4 +3 0 1 2 +end +char ] +width 0.296 +numpts 9 + 0.001 -0.374 0 + 0.296 -0.374 0 + 0.001 -0.271 0 + 0.156 -0.267 0 + 0.163 -0.260 0 + 0.162 0.912 0 + 0.002 0.920 0 + 0.000 1.020 0 + 0.293 1.026 0 +numpoly 7 +3 2 0 3 +3 1 3 0 +3 1 4 3 +3 5 4 1 +3 7 6 8 +3 5 8 6 +3 8 5 1 +end +char ^ +width 0.633 +numpts 11 + 0.000 0.449 0 + 0.005 0.445 0 + 0.136 0.447 0 + 0.502 0.447 0 + 0.628 0.444 0 + 0.633 0.449 0 + 0.314 0.882 0 + 0.319 0.882 0 + 0.262 1.041 0 + 0.371 1.042 0 + 0.268 1.044 0 +numpoly 9 +3 0 2 6 +3 0 6 8 +3 7 3 5 +3 4 5 3 +3 2 0 1 +3 10 7 9 +3 10 8 6 +3 10 6 7 +3 9 7 5 +end +char _ +width 0.892 +numpts 4 + 0.000 -0.374 0 + 0.892 -0.374 0 + 0.000 -0.289 0 + 0.892 -0.289 0 +numpoly 2 +3 2 1 3 +3 2 0 1 +end +char ` +width 0.274 +numpts 11 + 0.176 0.824 0 + 0.267 0.824 0 + 0.271 0.826 0 + 0.164 0.830 0 + 0.170 0.826 0 + 0.274 0.831 0 + 0.000 1.026 0 + 0.175 1.026 0 + 0.001 1.031 0 + 0.170 1.031 0 + 0.164 1.033 0 +numpoly 9 +3 5 1 2 +3 0 3 4 +3 3 10 6 +3 0 1 5 +3 7 3 0 +3 8 6 10 +3 7 0 5 +3 3 7 10 +3 10 7 9 +end +char a +width 0.733 +numpts 70 + 0.244 -0.090 0 + 0.307 -0.090 0 + 0.170 -0.078 0 + 0.375 -0.079 0 + 0.731 -0.071 0 + 0.598 -0.071 0 + 0.733 -0.066 0 + 0.432 -0.062 0 + 0.112 -0.055 0 + 0.078 -0.033 0 + 0.484 -0.036 0 + 0.711 -0.009 0 + 0.284 0.016 0 + 0.335 0.016 0 + 0.231 0.026 0 + 0.570 0.021 0 + 0.025 0.031 0 + 0.422 0.037 0 + 0.702 0.037 0 + 0.175 0.060 0 + 0.010 0.066 0 + 0.484 0.073 0 + 0.149 0.100 0 + 0.518 0.108 0 + 0.000 0.117 0 + 0.697 0.134 0 + 0.143 0.157 0 + 0.549 0.169 0 + 0.007 0.197 0 + 0.164 0.209 0 + 0.560 0.220 0 + 0.204 0.244 0 + 0.032 0.254 0 + 0.250 0.260 0 + 0.467 0.299 0 + 0.084 0.313 0 + 0.562 0.317 0 + 0.558 0.324 0 + 0.141 0.347 0 + 0.192 0.365 0 + 0.490 0.413 0 + 0.562 0.437 0 + 0.157 0.483 0 + 0.025 0.500 0 + 0.032 0.495 0 + 0.696 0.506 0 + 0.560 0.511 0 + 0.032 0.535 0 + 0.182 0.546 0 + 0.547 0.553 0 + 0.691 0.563 0 + 0.518 0.589 0 + 0.221 0.593 0 + 0.226 0.597 0 + 0.062 0.603 0 + 0.227 0.598 0 + 0.455 0.620 0 + 0.284 0.622 0 + 0.669 0.626 0 + 0.335 0.629 0 + 0.398 0.629 0 + 0.086 0.637 0 + 0.650 0.655 0 + 0.141 0.684 0 + 0.610 0.690 0 + 0.183 0.706 0 + 0.530 0.725 0 + 0.261 0.730 0 + 0.347 0.742 0 + 0.427 0.742 0 +numpoly 70 +3 3 13 1 +3 5 4 15 +3 4 11 15 +3 19 8 2 +3 13 3 7 +3 13 0 1 +3 14 0 12 +3 20 22 24 +3 0 14 2 +3 12 0 13 +3 13 7 17 +3 11 4 6 +3 19 2 14 +3 17 10 21 +3 7 10 17 +3 11 18 15 +3 16 22 20 +3 8 19 9 +3 15 23 21 +3 15 21 10 +3 23 25 27 +3 9 19 16 +3 19 22 16 +3 23 15 25 +3 24 26 28 +3 27 25 30 +3 25 15 18 +3 30 25 36 +3 32 28 26 +3 26 24 22 +3 29 32 26 +3 39 38 31 +3 38 35 29 +3 32 29 35 +3 31 38 29 +3 39 34 40 +3 33 39 31 +3 39 33 34 +3 36 41 37 +3 40 37 41 +3 37 40 34 +3 41 36 25 +3 41 45 46 +3 43 44 47 +3 47 48 54 +3 48 47 44 +3 50 49 46 +3 41 25 45 +3 50 46 45 +3 42 48 44 +3 49 64 51 +3 52 53 55 +3 52 65 63 +3 65 52 55 +3 52 61 48 +3 52 63 61 +3 58 49 50 +3 49 58 62 +3 69 60 56 +3 49 62 64 +3 54 48 61 +3 57 67 65 +3 57 65 55 +3 51 66 56 +3 69 59 60 +3 66 51 64 +3 68 67 57 +3 59 69 57 +3 69 68 57 +3 69 56 66 +end +char b +width 0.693 +numpts 49 + 0.372 -0.090 0 + 0.263 -0.078 0 + 0.120 -0.072 0 + 0.000 -0.069 0 + 0.480 -0.062 0 + 0.217 -0.059 0 + 0.532 -0.032 0 + 0.126 0.018 0 + 0.354 0.022 0 + 0.596 0.026 0 + 0.280 0.028 0 + 0.429 0.046 0 + 0.229 0.052 0 + 0.187 0.089 0 + 0.490 0.100 0 + 0.648 0.106 0 + 0.152 0.140 0 + 0.517 0.140 0 + 0.675 0.180 0 + 0.135 0.191 0 + 0.547 0.237 0 + 0.122 0.289 0 + 0.693 0.294 0 + 0.552 0.369 0 + 0.693 0.374 0 + 0.124 0.380 0 + 0.533 0.477 0 + 0.152 0.500 0 + 0.669 0.500 0 + 0.185 0.551 0 + 0.492 0.555 0 + 0.647 0.557 0 + 0.219 0.586 0 + 0.434 0.605 0 + 0.269 0.616 0 + 0.394 0.623 0 + 0.326 0.630 0 + 0.137 0.641 0 + 0.594 0.638 0 + 0.133 0.649 0 + 0.566 0.667 0 + 0.503 0.708 0 + 0.229 0.714 0 + 0.446 0.729 0 + 0.326 0.741 0 + 0.377 0.742 0 + 0.003 1.026 0 + 0.132 1.023 0 + 0.126 1.027 0 +numpoly 49 +3 3 25 46 +3 5 1 10 +3 5 12 7 +3 8 0 4 +3 11 6 14 +3 11 4 6 +3 0 8 1 +3 2 7 3 +3 8 4 11 +3 10 1 8 +3 21 3 19 +3 12 13 7 +3 12 5 10 +3 14 9 17 +3 9 14 6 +3 17 15 20 +3 16 7 13 +3 15 18 20 +3 15 17 9 +3 3 7 19 +3 22 20 18 +3 20 22 23 +3 28 26 23 +3 22 24 23 +3 25 3 21 +3 30 43 33 +3 39 46 25 +3 28 23 24 +3 27 39 25 +3 26 31 30 +3 7 16 19 +3 31 26 28 +3 37 32 42 +3 39 27 37 +3 40 30 38 +3 29 37 27 +3 38 30 31 +3 35 33 43 +3 32 34 42 +3 35 45 36 +3 37 29 32 +3 42 34 36 +3 45 35 43 +3 43 30 41 +3 41 30 40 +3 36 45 44 +3 42 36 44 +3 47 48 46 +3 39 47 46 +end +char c +width 0.690 +numpts 58 + 0.327 -0.090 0 + 0.390 -0.090 0 + 0.253 -0.077 0 + 0.476 -0.073 0 + 0.521 -0.053 0 + 0.173 -0.043 0 + 0.133 -0.015 0 + 0.584 -0.010 0 + 0.378 0.022 0 + 0.087 0.030 0 + 0.292 0.031 0 + 0.424 0.030 0 + 0.627 0.037 0 + 0.253 0.049 0 + 0.488 0.066 0 + 0.058 0.071 0 + 0.653 0.079 0 + 0.200 0.094 0 + 0.523 0.106 0 + 0.172 0.140 0 + 0.540 0.140 0 + 0.025 0.146 0 + 0.167 0.151 0 + 0.165 0.157 0 + 0.681 0.153 0 + 0.690 0.197 0 + 0.561 0.215 0 + 0.006 0.226 0 + 0.143 0.254 0 + 0.000 0.363 0 + 0.140 0.369 0 + 0.012 0.454 0 + 0.158 0.471 0 + 0.550 0.473 0 + 0.676 0.489 0 + 0.679 0.494 0 + 0.179 0.523 0 + 0.034 0.529 0 + 0.516 0.552 0 + 0.660 0.557 0 + 0.226 0.580 0 + 0.493 0.581 0 + 0.081 0.614 0 + 0.270 0.609 0 + 0.281 0.614 0 + 0.630 0.614 0 + 0.287 0.616 0 + 0.430 0.620 0 + 0.344 0.629 0 + 0.384 0.630 0 + 0.609 0.643 0 + 0.117 0.654 0 + 0.150 0.680 0 + 0.561 0.685 0 + 0.241 0.723 0 + 0.470 0.728 0 + 0.333 0.741 0 + 0.396 0.741 0 +numpoly 56 +3 2 13 5 +3 0 8 2 +3 11 4 14 +3 1 8 0 +3 3 11 1 +3 15 23 21 +3 2 10 13 +3 11 8 1 +3 11 3 4 +3 7 14 4 +3 10 2 8 +3 14 7 18 +3 17 6 13 +3 6 5 13 +3 17 15 9 +3 18 12 20 +3 7 12 18 +3 17 9 6 +3 16 20 12 +3 24 20 16 +3 19 15 17 +3 15 19 23 +3 23 19 22 +3 27 28 29 +3 26 20 24 +3 26 24 25 +3 21 28 27 +3 28 21 23 +3 29 30 31 +3 28 30 29 +3 31 32 37 +3 39 38 33 +3 34 39 33 +3 32 31 30 +3 37 32 36 +3 55 49 47 +3 37 36 42 +3 51 42 36 +3 34 35 39 +3 45 41 38 +3 52 40 43 +3 46 43 44 +3 50 41 45 +3 56 49 57 +3 40 51 36 +3 51 40 52 +3 45 38 39 +3 52 43 54 +3 47 41 53 +3 54 46 48 +3 56 48 49 +3 53 41 50 +3 54 48 56 +3 54 43 46 +3 57 49 55 +3 55 47 53 +end +char d +width 0.693 +numpts 48 + 0.322 -0.090 0 + 0.373 -0.090 0 + 0.436 -0.077 0 + 0.573 -0.072 0 + 0.693 -0.069 0 + 0.219 -0.065 0 + 0.482 -0.056 0 + 0.168 -0.037 0 + 0.111 0.010 0 + 0.568 0.018 0 + 0.345 0.022 0 + 0.305 0.029 0 + 0.413 0.029 0 + 0.489 0.071 0 + 0.225 0.076 0 + 0.046 0.106 0 + 0.523 0.111 0 + 0.190 0.117 0 + 0.549 0.163 0 + 0.022 0.169 0 + 0.551 0.167 0 + 0.553 0.174 0 + 0.154 0.203 0 + 0.572 0.277 0 + 0.000 0.289 0 + 0.141 0.289 0 + 0.000 0.363 0 + 0.569 0.386 0 + 0.143 0.397 0 + 0.541 0.500 0 + 0.029 0.511 0 + 0.175 0.517 0 + 0.505 0.558 0 + 0.231 0.587 0 + 0.076 0.608 0 + 0.442 0.609 0 + 0.293 0.622 0 + 0.373 0.629 0 + 0.556 0.640 0 + 0.560 0.649 0 + 0.116 0.656 0 + 0.465 0.714 0 + 0.213 0.718 0 + 0.311 0.741 0 + 0.362 0.742 0 + 0.565 1.026 0 + 0.693 1.023 0 + 0.688 1.027 0 +numpoly 48 +3 0 11 5 +3 12 6 13 +3 1 2 12 +3 7 14 8 +3 10 0 1 +3 14 7 5 +3 10 1 12 +3 6 12 2 +3 0 10 11 +3 8 17 15 +3 9 16 13 +3 14 5 11 +3 4 9 3 +3 6 9 13 +3 9 4 18 +3 16 9 18 +3 15 22 19 +3 17 8 14 +3 22 15 17 +3 20 18 21 +3 21 18 4 +3 19 25 24 +3 21 4 23 +3 25 19 22 +3 26 24 25 +3 26 28 30 +3 39 27 4 +3 26 25 28 +3 39 38 29 +3 29 38 32 +3 27 39 29 +3 30 31 34 +3 32 38 35 +3 31 30 28 +3 40 34 31 +3 36 42 33 +3 23 4 27 +3 35 41 37 +3 33 40 31 +3 40 33 42 +3 41 35 38 +3 42 36 43 +3 37 43 36 +3 44 37 41 +3 37 44 43 +3 46 47 45 +3 39 4 45 +3 4 46 45 +end +char e +width 0.736 +numpts 65 + 0.350 -0.090 0 + 0.413 -0.090 0 + 0.258 -0.075 0 + 0.516 -0.071 0 + 0.207 -0.056 0 + 0.578 -0.043 0 + 0.138 -0.015 0 + 0.630 -0.007 0 + 0.098 0.022 0 + 0.361 0.022 0 + 0.407 0.022 0 + 0.298 0.036 0 + 0.483 0.043 0 + 0.683 0.054 0 + 0.258 0.055 0 + 0.064 0.066 0 + 0.521 0.068 0 + 0.206 0.100 0 + 0.713 0.111 0 + 0.574 0.134 0 + 0.172 0.151 0 + 0.022 0.157 0 + 0.167 0.163 0 + 0.730 0.163 0 + 0.165 0.169 0 + 0.716 0.170 0 + 0.596 0.181 0 + 0.153 0.203 0 + 0.006 0.226 0 + 0.140 0.283 0 + 0.144 0.289 0 + 0.736 0.294 0 + 0.000 0.357 0 + 0.734 0.397 0 + 0.150 0.401 0 + 0.590 0.401 0 + 0.143 0.409 0 + 0.597 0.409 0 + 0.006 0.414 0 + 0.156 0.473 0 + 0.025 0.494 0 + 0.716 0.490 0 + 0.573 0.507 0 + 0.190 0.541 0 + 0.550 0.546 0 + 0.209 0.563 0 + 0.058 0.570 0 + 0.516 0.582 0 + 0.672 0.586 0 + 0.253 0.598 0 + 0.481 0.605 0 + 0.094 0.620 0 + 0.293 0.617 0 + 0.436 0.623 0 + 0.350 0.629 0 + 0.396 0.630 0 + 0.134 0.660 0 + 0.613 0.655 0 + 0.573 0.686 0 + 0.213 0.709 0 + 0.521 0.714 0 + 0.258 0.726 0 + 0.470 0.731 0 + 0.344 0.742 0 + 0.401 0.742 0 +numpoly 65 +3 0 9 11 +3 10 1 3 +3 10 3 12 +3 5 12 3 +3 17 8 6 +3 10 0 1 +3 0 11 2 +3 4 14 6 +3 0 10 9 +3 7 16 5 +3 5 16 12 +3 14 2 11 +3 16 7 19 +3 14 4 2 +3 15 8 17 +3 26 18 25 +3 17 6 14 +3 15 27 21 +3 7 13 19 +3 23 25 18 +3 20 15 17 +3 26 19 18 +3 18 19 13 +3 24 20 22 +3 15 20 24 +3 15 24 27 +3 21 27 28 +3 28 29 32 +3 33 37 35 +3 29 28 27 +3 32 29 38 +3 35 34 30 +3 40 39 46 +3 33 35 30 +3 31 33 30 +3 36 38 29 +3 36 29 34 +3 37 41 42 +3 40 38 36 +3 30 34 29 +3 39 40 36 +3 41 37 33 +3 46 43 51 +3 51 49 56 +3 42 48 44 +3 48 42 41 +3 44 48 47 +3 49 51 45 +3 43 46 39 +3 56 49 59 +3 50 62 53 +3 57 47 48 +3 64 55 53 +3 45 51 43 +3 55 63 54 +3 58 47 57 +3 62 50 60 +3 59 52 61 +3 59 49 52 +3 47 60 50 +3 61 54 63 +3 60 47 58 +3 61 52 54 +3 64 53 62 +3 55 64 63 +end +char f +width 0.451 +numpts 24 + 0.114 -0.072 0 + 0.240 -0.072 0 + 0.109 0.614 0 + 0.245 0.614 0 + 0.000 0.620 0 + 0.394 0.620 0 + 0.398 0.717 0 + 0.000 0.723 0 + 0.109 0.729 0 + 0.245 0.729 0 + 0.394 0.723 0 + 0.244 0.831 0 + 0.110 0.860 0 + 0.268 0.896 0 + 0.120 0.917 0 + 0.297 0.913 0 + 0.337 0.921 0 + 0.434 0.918 0 + 0.145 0.969 0 + 0.177 1.001 0 + 0.222 1.028 0 + 0.451 1.031 0 + 0.297 1.044 0 + 0.360 1.044 0 +numpoly 22 +3 0 3 2 +3 3 0 1 +3 4 8 7 +3 9 3 5 +3 2 3 8 +3 5 6 10 +3 4 2 8 +3 9 8 3 +3 8 11 12 +3 11 8 9 +3 12 11 14 +3 9 5 10 +3 13 19 18 +3 13 18 14 +3 13 14 11 +3 23 15 16 +3 15 23 22 +3 21 23 17 +3 15 20 13 +3 19 13 20 +3 20 15 22 +3 23 16 17 +end +char g +width 0.700 +numpts 71 + 0.276 -0.393 0 + 0.373 -0.396 0 + 0.470 -0.380 0 + 0.161 -0.362 0 + 0.550 -0.346 0 + 0.093 -0.319 0 + 0.611 -0.300 0 + 0.316 -0.284 0 + 0.430 -0.274 0 + 0.253 -0.271 0 + 0.041 -0.243 0 + 0.654 -0.243 0 + 0.499 -0.237 0 + 0.189 -0.231 0 + 0.528 -0.203 0 + 0.679 -0.180 0 + 0.156 -0.157 0 + 0.556 -0.140 0 + 0.030 -0.140 0 + 0.316 -0.073 0 + 0.367 -0.073 0 + 0.241 -0.060 0 + 0.458 -0.051 0 + 0.178 -0.034 0 + 0.504 -0.025 0 + 0.700 -0.009 0 + 0.556 0.019 0 + 0.557 0.020 0 + 0.565 0.020 0 + 0.561 0.023 0 + 0.098 0.034 0 + 0.338 0.039 0 + 0.378 0.039 0 + 0.281 0.052 0 + 0.447 0.058 0 + 0.224 0.087 0 + 0.487 0.084 0 + 0.039 0.129 0 + 0.187 0.129 0 + 0.535 0.140 0 + 0.160 0.186 0 + 0.012 0.209 0 + 0.562 0.209 0 + 0.000 0.283 0 + 0.140 0.294 0 + 0.577 0.357 0 + 0.000 0.374 0 + 0.143 0.409 0 + 0.558 0.471 0 + 0.158 0.477 0 + 0.018 0.478 0 + 0.535 0.523 0 + 0.045 0.551 0 + 0.197 0.551 0 + 0.506 0.563 0 + 0.470 0.594 0 + 0.078 0.609 0 + 0.258 0.605 0 + 0.293 0.620 0 + 0.373 0.630 0 + 0.384 0.628 0 + 0.390 0.627 0 + 0.573 0.635 0 + 0.127 0.664 0 + 0.493 0.702 0 + 0.201 0.712 0 + 0.581 0.723 0 + 0.696 0.723 0 + 0.436 0.728 0 + 0.276 0.736 0 + 0.367 0.742 0 +numpoly 71 +3 1 7 0 +3 8 4 12 +3 2 8 1 +3 0 9 3 +3 7 1 8 +3 5 13 10 +3 9 0 7 +3 13 5 3 +3 8 2 4 +3 6 14 12 +3 6 12 4 +3 11 15 17 +3 11 14 6 +3 13 3 9 +3 14 11 17 +3 10 16 18 +3 16 10 13 +3 17 25 28 +3 23 21 33 +3 22 32 20 +3 32 19 20 +3 35 23 33 +3 19 31 21 +3 23 35 30 +3 31 19 32 +3 32 22 34 +3 26 29 36 +3 17 15 25 +3 33 21 31 +3 26 36 24 +3 24 34 22 +3 26 27 29 +3 36 34 24 +3 36 29 39 +3 30 38 37 +3 39 28 25 +3 39 29 28 +3 37 40 41 +3 38 40 37 +3 30 35 38 +3 39 25 42 +3 44 46 43 +3 44 43 41 +3 44 41 40 +3 42 25 45 +3 67 51 48 +3 46 47 50 +3 67 48 45 +3 47 46 44 +3 50 49 52 +3 49 50 47 +3 67 62 51 +3 62 54 51 +3 56 52 49 +3 54 62 55 +3 55 64 61 +3 60 61 59 +3 53 56 49 +3 56 53 63 +3 63 57 65 +3 65 58 69 +3 65 57 58 +3 70 59 61 +3 59 69 58 +3 64 55 62 +3 67 45 25 +3 67 66 62 +3 63 53 57 +3 68 70 61 +3 59 70 69 +3 64 68 61 +end +char h +width 0.644 +numpts 27 + 0.000 -0.072 0 + 0.126 -0.072 0 + 0.514 -0.072 0 + 0.640 -0.072 0 + 0.131 0.403 0 + 0.132 0.409 0 + 0.510 0.460 0 + 0.644 0.477 0 + 0.143 0.483 0 + 0.500 0.517 0 + 0.636 0.546 0 + 0.179 0.551 0 + 0.474 0.569 0 + 0.229 0.594 0 + 0.434 0.603 0 + 0.614 0.614 0 + 0.286 0.617 0 + 0.366 0.624 0 + 0.132 0.640 0 + 0.572 0.673 0 + 0.212 0.700 0 + 0.532 0.702 0 + 0.263 0.724 0 + 0.440 0.735 0 + 0.343 0.742 0 + 0.000 1.026 0 + 0.126 1.026 0 +numpoly 25 +3 0 4 25 +3 4 18 25 +3 6 2 3 +3 9 6 7 +3 7 6 3 +3 18 8 11 +3 18 11 13 +3 9 15 12 +3 12 19 14 +3 10 9 7 +3 18 13 20 +3 8 4 5 +3 15 9 10 +3 4 0 1 +3 18 4 8 +3 17 24 16 +3 19 21 14 +3 14 23 17 +3 20 16 22 +3 16 20 13 +3 19 12 15 +3 17 23 24 +3 23 14 21 +3 24 22 16 +3 18 26 25 +end +char i +width 0.126 +numpts 8 + 0.000 -0.072 0 + 0.126 -0.072 0 + 0.000 0.723 0 + 0.126 0.723 0 + 0.000 0.874 0 + 0.126 0.874 0 + 0.000 1.026 0 + 0.126 1.026 0 +numpoly 4 +3 3 2 0 +3 3 0 1 +3 4 5 6 +3 7 6 5 +end +char j +width 0.302 +numpts 18 + 0.075 -0.396 0 + 0.149 -0.393 0 + 0.000 -0.380 0 + 0.195 -0.379 0 + 0.240 -0.350 0 + 0.266 -0.317 0 + 0.115 -0.275 0 + 0.029 -0.270 0 + 0.287 -0.266 0 + 0.149 -0.249 0 + 0.302 -0.169 0 + 0.168 -0.163 0 + 0.172 0.723 0 + 0.298 0.723 0 + 0.172 0.874 0 + 0.298 0.874 0 + 0.172 1.026 0 + 0.298 1.026 0 +numpoly 14 +3 1 6 0 +3 3 6 1 +3 4 6 3 +3 9 10 11 +3 7 0 6 +3 7 2 0 +3 9 5 8 +3 5 9 4 +3 6 4 9 +3 9 8 10 +3 11 10 12 +3 13 12 10 +3 14 15 16 +3 17 16 15 +end +char k +width 0.653 +numpts 15 + 0.129 -0.071 0 + 0.653 -0.071 0 + 0.000 -0.069 0 + 0.492 -0.070 0 + 0.135 0.243 0 + 0.439 0.254 0 + 0.435 0.260 0 + 0.435 0.261 0 + 0.223 0.329 0 + 0.138 0.409 0 + 0.326 0.426 0 + 0.452 0.723 0 + 0.618 0.723 0 + 0.003 1.026 0 + 0.132 1.023 0 +numpoly 13 +3 2 9 13 +3 4 2 0 +3 5 8 3 +3 5 3 1 +3 5 6 7 +3 9 14 13 +3 11 9 10 +3 5 7 8 +3 7 10 8 +3 8 9 4 +3 12 11 10 +3 9 8 10 +3 2 4 9 +end +char l +width 0.131 +numpts 4 + 0.128 -0.071 0 + 0.000 -0.069 0 + 0.002 1.026 0 + 0.131 1.023 0 +numpoly 2 +3 1 3 2 +3 3 1 0 +end +char m +width 1.072 +numpts 45 + 0.000 -0.072 0 + 0.125 -0.072 0 + 0.474 -0.073 0 + 0.943 -0.072 0 + 1.068 -0.072 0 + 0.468 -0.069 0 + 0.600 -0.069 0 + 0.133 0.374 0 + 0.601 0.403 0 + 0.607 0.460 0 + 0.145 0.483 0 + 0.467 0.483 0 + 0.938 0.483 0 + 1.072 0.523 0 + 0.632 0.534 0 + 0.165 0.535 0 + 0.928 0.540 0 + 0.190 0.569 0 + 0.442 0.569 0 + 0.903 0.584 0 + 0.685 0.592 0 + 0.417 0.598 0 + 0.583 0.608 0 + 0.264 0.614 0 + 0.120 0.619 0 + 0.388 0.615 0 + 0.851 0.616 0 + 1.048 0.620 0 + 0.314 0.624 0 + 0.760 0.622 0 + 0.817 0.624 0 + 0.167 0.671 0 + 0.543 0.670 0 + 1.010 0.677 0 + 0.663 0.689 0 + 0.497 0.708 0 + 0.960 0.714 0 + 0.111 0.723 0 + 0.000 0.723 0 + 0.257 0.725 0 + 0.748 0.731 0 + 0.914 0.731 0 + 0.428 0.735 0 + 0.331 0.741 0 + 0.805 0.742 0 +numpoly 43 +3 6 5 2 +3 0 7 38 +3 8 11 5 +3 7 0 1 +3 8 5 6 +3 12 3 4 +3 12 13 16 +3 9 11 8 +3 15 17 24 +3 11 22 18 +3 22 20 34 +3 11 9 22 +3 14 22 9 +3 13 12 4 +3 24 17 31 +3 7 10 38 +3 10 15 24 +3 16 27 19 +3 32 21 18 +3 24 37 38 +3 20 22 14 +3 10 24 38 +3 27 16 13 +3 31 23 39 +3 26 41 30 +3 30 40 29 +3 32 18 22 +3 41 19 36 +3 34 29 40 +3 19 41 26 +3 36 19 33 +3 23 31 17 +3 35 21 32 +3 29 34 20 +3 39 28 43 +3 33 19 27 +3 43 28 42 +3 25 42 28 +3 28 39 23 +3 42 25 21 +3 42 21 35 +3 44 30 41 +3 30 44 40 +end +char n +width 0.648 +numpts 38 + 0.004 -0.072 0 + 0.129 -0.072 0 + 0.512 -0.072 0 + 0.644 -0.072 0 + 0.000 -0.066 0 + 0.134 -0.066 0 + 0.508 -0.066 0 + 0.648 -0.066 0 + 0.134 0.403 0 + 0.137 0.414 0 + 0.139 0.449 0 + 0.505 0.483 0 + 0.648 0.483 0 + 0.156 0.511 0 + 0.490 0.540 0 + 0.642 0.540 0 + 0.188 0.563 0 + 0.221 0.589 0 + 0.455 0.587 0 + 0.628 0.591 0 + 0.274 0.614 0 + 0.409 0.613 0 + 0.124 0.620 0 + 0.324 0.624 0 + 0.364 0.624 0 + 0.375 0.622 0 + 0.381 0.621 0 + 0.598 0.649 0 + 0.165 0.666 0 + 0.552 0.692 0 + 0.215 0.702 0 + 0.000 0.717 0 + 0.512 0.714 0 + 0.115 0.723 0 + 0.004 0.723 0 + 0.284 0.731 0 + 0.444 0.735 0 + 0.347 0.742 0 +numpoly 36 +3 1 4 0 +3 3 6 2 +3 1 5 4 +3 3 7 6 +3 6 12 11 +3 11 15 14 +3 6 7 12 +3 22 16 28 +3 10 8 9 +3 13 22 10 +3 10 22 8 +3 8 4 5 +3 15 11 12 +3 8 22 4 +3 14 15 19 +3 14 19 18 +3 25 26 24 +3 16 22 13 +3 16 17 28 +3 30 28 17 +3 27 18 19 +3 32 23 24 +3 29 18 27 +3 30 20 35 +3 18 32 21 +3 31 4 22 +3 20 30 17 +3 32 26 21 +3 32 24 26 +3 32 18 29 +3 34 31 33 +3 33 31 22 +3 35 23 37 +3 23 35 20 +3 36 23 32 +3 37 23 36 +end +char o +width 0.746 +numpts 65 + 0.338 -0.090 0 + 0.401 -0.090 0 + 0.498 -0.071 0 + 0.218 -0.062 0 + 0.573 -0.038 0 + 0.155 -0.028 0 + 0.624 -0.001 0 + 0.098 0.022 0 + 0.350 0.022 0 + 0.413 0.024 0 + 0.315 0.028 0 + 0.453 0.036 0 + 0.670 0.049 0 + 0.258 0.052 0 + 0.064 0.066 0 + 0.515 0.073 0 + 0.699 0.094 0 + 0.207 0.096 0 + 0.035 0.123 0 + 0.187 0.123 0 + 0.184 0.128 0 + 0.184 0.129 0 + 0.562 0.129 0 + 0.573 0.151 0 + 0.578 0.163 0 + 0.580 0.169 0 + 0.730 0.180 0 + 0.015 0.186 0 + 0.155 0.197 0 + 0.593 0.209 0 + 0.143 0.260 0 + 0.000 0.283 0 + 0.745 0.289 0 + 0.605 0.294 0 + 0.140 0.363 0 + 0.746 0.374 0 + 0.003 0.397 0 + 0.602 0.397 0 + 0.160 0.471 0 + 0.730 0.471 0 + 0.019 0.483 0 + 0.578 0.489 0 + 0.039 0.540 0 + 0.194 0.540 0 + 0.706 0.540 0 + 0.550 0.541 0 + 0.521 0.573 0 + 0.230 0.578 0 + 0.684 0.580 0 + 0.081 0.610 0 + 0.293 0.616 0 + 0.453 0.616 0 + 0.350 0.629 0 + 0.395 0.629 0 + 0.407 0.627 0 + 0.413 0.627 0 + 0.639 0.637 0 + 0.117 0.649 0 + 0.155 0.679 0 + 0.561 0.696 0 + 0.207 0.708 0 + 0.258 0.726 0 + 0.493 0.725 0 + 0.344 0.742 0 + 0.407 0.741 0 +numpoly 65 +3 11 4 15 +3 8 0 1 +3 17 7 5 +3 11 2 4 +3 2 9 1 +3 8 1 9 +3 0 8 10 +3 0 10 3 +3 2 11 9 +3 3 13 5 +3 10 13 3 +3 6 12 22 +3 6 15 4 +3 15 6 22 +3 18 28 27 +3 17 5 13 +3 14 19 18 +3 16 23 22 +3 19 7 17 +3 7 19 14 +3 18 19 21 +3 24 23 25 +3 25 23 16 +3 19 20 21 +3 16 22 12 +3 26 29 25 +3 27 30 31 +3 26 25 16 +3 28 18 21 +3 29 26 33 +3 30 27 28 +3 31 34 36 +3 33 32 35 +3 26 32 33 +3 34 31 30 +3 33 35 37 +3 40 36 34 +3 37 39 41 +3 40 38 42 +3 39 37 35 +3 47 57 43 +3 38 40 34 +3 43 49 42 +3 46 45 56 +3 39 44 41 +3 41 48 45 +3 43 57 49 +3 41 44 48 +3 43 42 38 +3 57 47 58 +3 54 55 53 +3 56 45 48 +3 50 60 47 +3 64 63 53 +3 64 55 62 +3 53 63 52 +3 59 62 51 +3 61 60 50 +3 64 53 55 +3 51 62 55 +3 52 61 50 +3 59 46 56 +3 61 52 63 +3 46 59 51 +3 58 47 60 +end +char p +width 0.690 +numpts 49 + 0.000 -0.377 0 + 0.129 -0.374 0 + 0.315 -0.090 0 + 0.423 -0.080 0 + 0.229 -0.067 0 + 0.509 -0.043 0 + 0.130 -0.003 0 + 0.560 -0.007 0 + 0.137 0.002 0 + 0.349 0.022 0 + 0.275 0.029 0 + 0.389 0.030 0 + 0.614 0.054 0 + 0.206 0.067 0 + 0.463 0.073 0 + 0.152 0.134 0 + 0.150 0.140 0 + 0.147 0.146 0 + 0.517 0.146 0 + 0.660 0.146 0 + 0.129 0.197 0 + 0.538 0.209 0 + 0.681 0.226 0 + 0.118 0.271 0 + 0.116 0.283 0 + 0.550 0.294 0 + 0.690 0.300 0 + 0.118 0.369 0 + 0.550 0.369 0 + 0.681 0.437 0 + 0.537 0.455 0 + 0.137 0.472 0 + 0.509 0.529 0 + 0.172 0.541 0 + 0.640 0.564 0 + 0.200 0.576 0 + 0.446 0.600 0 + 0.269 0.622 0 + 0.406 0.622 0 + 0.120 0.631 0 + 0.320 0.636 0 + 0.582 0.649 0 + 0.212 0.708 0 + 0.503 0.707 0 + 0.000 0.723 0 + 0.115 0.723 0 + 0.269 0.732 0 + 0.446 0.729 0 + 0.377 0.742 0 +numpoly 49 +3 0 1 6 +3 0 24 44 +3 3 9 2 +3 2 10 4 +3 3 11 9 +3 4 13 8 +3 10 2 9 +3 11 5 14 +3 11 3 5 +3 7 14 5 +3 4 10 13 +3 14 12 18 +3 14 7 12 +3 0 20 24 +3 15 8 13 +3 8 15 6 +3 19 18 12 +3 18 19 21 +3 21 22 25 +3 24 27 44 +3 17 15 16 +3 22 21 19 +3 28 25 26 +3 22 26 25 +3 6 15 17 +3 29 30 28 +3 23 24 20 +3 20 6 17 +3 29 28 26 +3 30 34 32 +3 27 31 44 +3 0 6 20 +3 31 39 44 +3 32 41 36 +3 41 32 34 +3 31 33 39 +3 42 37 46 +3 39 35 42 +3 34 30 29 +3 39 33 35 +3 38 47 40 +3 35 37 42 +3 47 38 43 +3 40 46 37 +3 43 36 41 +3 39 45 44 +3 46 40 48 +3 48 40 47 +3 38 36 43 +end +char q +width 0.690 +numpts 52 + 0.564 -0.377 0 + 0.690 -0.377 0 + 0.370 -0.090 0 + 0.256 -0.077 0 + 0.456 -0.068 0 + 0.164 -0.032 0 + 0.513 -0.035 0 + 0.560 -0.003 0 + 0.553 0.005 0 + 0.101 0.024 0 + 0.347 0.022 0 + 0.381 0.022 0 + 0.393 0.024 0 + 0.398 0.025 0 + 0.278 0.039 0 + 0.450 0.044 0 + 0.237 0.066 0 + 0.511 0.094 0 + 0.043 0.111 0 + 0.190 0.117 0 + 0.187 0.122 0 + 0.187 0.123 0 + 0.554 0.174 0 + 0.015 0.191 0 + 0.152 0.209 0 + 0.571 0.254 0 + 0.003 0.260 0 + 0.571 0.271 0 + 0.140 0.283 0 + 0.574 0.289 0 + 0.000 0.374 0 + 0.143 0.403 0 + 0.558 0.453 0 + 0.015 0.471 0 + 0.158 0.478 0 + 0.536 0.513 0 + 0.203 0.563 0 + 0.497 0.569 0 + 0.061 0.586 0 + 0.256 0.609 0 + 0.421 0.622 0 + 0.296 0.627 0 + 0.570 0.626 0 + 0.097 0.637 0 + 0.370 0.635 0 + 0.528 0.671 0 + 0.170 0.696 0 + 0.467 0.714 0 + 0.578 0.723 0 + 0.690 0.723 0 + 0.250 0.730 0 + 0.364 0.742 0 +numpoly 52 +3 29 27 25 +3 49 42 32 +3 22 7 25 +3 3 13 11 +3 2 13 3 +3 4 13 2 +3 6 15 4 +3 11 13 12 +3 3 14 5 +3 13 4 15 +3 10 3 11 +3 15 6 8 +3 14 3 10 +3 15 8 17 +3 24 23 18 +3 5 16 9 +3 17 8 22 +3 14 16 5 +3 9 19 18 +3 19 20 21 +3 18 19 21 +3 42 35 32 +3 7 22 8 +3 16 19 9 +3 49 48 42 +3 7 0 1 +3 24 18 21 +3 23 24 26 +3 26 28 30 +3 28 26 24 +3 30 31 33 +3 34 33 31 +3 31 30 28 +3 33 34 38 +3 49 29 25 +3 36 43 38 +3 49 25 7 +3 35 42 37 +3 37 45 40 +3 45 37 42 +3 29 49 32 +3 45 47 40 +3 39 43 36 +3 46 39 50 +3 40 47 44 +3 43 39 46 +3 36 38 34 +3 41 44 51 +3 41 50 39 +3 49 7 1 +3 50 41 51 +3 51 44 47 +end +char r +width 0.427 +numpts 24 + 0.005 -0.072 0 + 0.130 -0.072 0 + 0.000 -0.066 0 + 0.134 -0.066 0 + 0.134 0.380 0 + 0.156 0.500 0 + 0.178 0.546 0 + 0.206 0.574 0 + 0.376 0.578 0 + 0.382 0.579 0 + 0.239 0.593 0 + 0.336 0.594 0 + 0.273 0.601 0 + 0.125 0.614 0 + 0.178 0.689 0 + 0.427 0.694 0 + 0.424 0.700 0 + 0.000 0.717 0 + 0.116 0.723 0 + 0.005 0.723 0 + 0.222 0.724 0 + 0.359 0.731 0 + 0.273 0.741 0 + 0.313 0.741 0 +numpoly 22 +3 1 2 0 +3 1 3 2 +3 4 2 3 +3 5 6 13 +3 5 13 17 +3 21 11 15 +3 2 4 17 +3 4 5 17 +3 6 7 13 +3 18 17 13 +3 7 10 14 +3 13 7 14 +3 14 12 20 +3 11 21 12 +3 9 15 11 +3 12 14 10 +3 19 17 18 +3 20 12 22 +3 8 9 11 +3 21 15 16 +3 22 12 23 +3 23 12 21 +end +char s +width 0.658 +numpts 63 + 0.368 -0.090 0 + 0.271 -0.087 0 + 0.460 -0.074 0 + 0.180 -0.067 0 + 0.513 -0.054 0 + 0.140 -0.049 0 + 0.569 -0.020 0 + 0.094 -0.018 0 + 0.604 0.014 0 + 0.311 0.022 0 + 0.363 0.022 0 + 0.374 0.024 0 + 0.386 0.024 0 + 0.054 0.026 0 + 0.448 0.042 0 + 0.226 0.044 0 + 0.030 0.066 0 + 0.191 0.067 0 + 0.492 0.077 0 + 0.644 0.083 0 + 0.508 0.100 0 + 0.150 0.123 0 + 0.658 0.140 0 + 0.519 0.157 0 + 0.000 0.163 0 + 0.002 0.169 0 + 0.129 0.186 0 + 0.507 0.191 0 + 0.656 0.203 0 + 0.466 0.228 0 + 0.645 0.243 0 + 0.618 0.289 0 + 0.151 0.324 0 + 0.563 0.336 0 + 0.111 0.344 0 + 0.500 0.363 0 + 0.066 0.384 0 + 0.035 0.437 0 + 0.220 0.445 0 + 0.184 0.466 0 + 0.167 0.483 0 + 0.021 0.494 0 + 0.500 0.505 0 + 0.153 0.517 0 + 0.628 0.523 0 + 0.484 0.551 0 + 0.161 0.563 0 + 0.029 0.569 0 + 0.448 0.595 0 + 0.191 0.598 0 + 0.603 0.610 0 + 0.049 0.616 0 + 0.237 0.620 0 + 0.391 0.623 0 + 0.294 0.630 0 + 0.555 0.671 0 + 0.094 0.673 0 + 0.511 0.700 0 + 0.146 0.706 0 + 0.197 0.725 0 + 0.426 0.731 0 + 0.283 0.741 0 + 0.351 0.741 0 +numpoly 61 +3 2 12 0 +3 10 1 12 +3 12 2 14 +3 14 4 6 +3 7 17 13 +3 0 12 1 +3 4 14 2 +3 11 10 12 +3 15 3 1 +3 3 15 5 +3 9 1 10 +3 14 6 18 +3 15 1 9 +3 17 5 15 +3 6 8 18 +3 5 17 7 +3 21 16 13 +3 16 21 24 +3 18 8 20 +3 23 28 27 +3 21 13 17 +3 19 22 23 +3 26 25 21 +3 21 25 24 +3 20 19 23 +3 19 20 8 +3 28 23 22 +3 27 33 29 +3 28 30 27 +3 31 27 30 +3 27 31 33 +3 29 38 32 +3 35 29 33 +3 29 35 38 +3 34 38 36 +3 32 38 34 +3 36 40 37 +3 39 36 38 +3 41 43 47 +3 43 41 37 +3 36 39 40 +3 50 45 42 +3 43 37 40 +3 47 46 51 +3 46 47 43 +3 53 60 54 +3 45 57 48 +3 52 58 49 +3 45 55 57 +3 51 49 56 +3 49 51 46 +3 50 42 44 +3 48 57 53 +3 56 49 58 +3 55 45 50 +3 52 59 58 +3 59 52 61 +3 52 54 61 +3 60 53 57 +3 61 54 62 +3 62 54 60 +end +char t +width 0.381 +numpts 24 + 0.252 -0.084 0 + 0.309 -0.084 0 + 0.381 -0.071 0 + 0.166 -0.059 0 + 0.128 -0.026 0 + 0.109 0.009 0 + 0.275 0.048 0 + 0.274 0.049 0 + 0.366 0.043 0 + 0.269 0.050 0 + 0.240 0.077 0 + 0.096 0.100 0 + 0.230 0.117 0 + 0.095 0.614 0 + 0.232 0.614 0 + 0.000 0.620 0 + 0.363 0.620 0 + 0.368 0.717 0 + 0.363 0.723 0 + 0.000 0.723 0 + 0.095 0.729 0 + 0.232 0.729 0 + 0.096 0.917 0 + 0.229 0.995 0 +numpoly 22 +3 10 5 4 +3 6 7 9 +3 10 4 3 +3 10 3 9 +3 8 6 1 +3 6 9 1 +3 5 10 11 +3 8 1 2 +3 0 9 3 +3 11 12 13 +3 0 1 9 +3 10 12 11 +3 17 18 16 +3 14 13 12 +3 21 14 16 +3 18 21 16 +3 22 20 23 +3 20 13 14 +3 15 20 19 +3 15 13 20 +3 20 14 21 +3 23 20 21 +end +char u +width 0.646 +numpts 38 + 0.248 -0.090 0 + 0.299 -0.090 0 + 0.179 -0.077 0 + 0.533 -0.073 0 + 0.642 -0.072 0 + 0.397 -0.066 0 + 0.528 -0.069 0 + 0.646 -0.066 0 + 0.111 -0.048 0 + 0.471 -0.018 0 + 0.061 -0.009 0 + 0.036 0.027 0 + 0.282 0.027 0 + 0.322 0.028 0 + 0.235 0.037 0 + 0.522 0.037 0 + 0.379 0.041 0 + 0.201 0.054 0 + 0.413 0.058 0 + 0.175 0.077 0 + 0.013 0.084 0 + 0.453 0.087 0 + 0.155 0.106 0 + 0.151 0.117 0 + 0.477 0.117 0 + 0.148 0.123 0 + 0.495 0.157 0 + 0.000 0.174 0 + 0.138 0.174 0 + 0.512 0.260 0 + 0.000 0.717 0 + 0.135 0.717 0 + 0.512 0.717 0 + 0.646 0.717 0 + 0.005 0.723 0 + 0.131 0.723 0 + 0.516 0.723 0 + 0.642 0.723 0 +numpoly 36 +3 6 3 15 +3 3 7 15 +3 3 4 7 +3 8 17 10 +3 2 14 17 +3 2 17 8 +3 5 13 1 +3 19 11 10 +3 9 16 5 +3 12 1 13 +3 0 12 2 +3 12 0 1 +3 9 18 16 +3 13 5 16 +3 14 2 12 +3 11 22 20 +3 21 18 9 +3 15 21 9 +3 21 15 24 +3 20 28 27 +3 11 19 22 +3 24 7 26 +3 19 10 17 +3 24 15 7 +3 25 22 23 +3 20 22 25 +3 20 25 28 +3 26 7 29 +3 31 30 27 +3 33 29 7 +3 34 31 35 +3 34 30 31 +3 31 27 28 +3 36 33 37 +3 32 29 33 +3 36 32 33 +end +char v +width 0.722 +numpts 12 + 0.295 -0.069 0 + 0.427 -0.071 0 + 0.358 0.098 0 + 0.364 0.098 0 + 0.314 0.237 0 + 0.000 0.717 0 + 0.722 0.717 0 + 0.002 0.723 0 + 0.141 0.720 0 + 0.587 0.721 0 + 0.720 0.723 0 + 0.135 0.724 0 +numpoly 10 +3 4 0 2 +3 0 4 5 +3 3 2 0 +3 1 3 0 +3 3 6 9 +3 8 11 5 +3 9 6 10 +3 7 5 11 +3 8 5 4 +3 3 1 6 +end +char w +width 1.080 +numpts 14 + 0.243 -0.072 0 + 0.374 -0.072 0 + 0.825 -0.073 0 + 0.694 -0.069 0 + 0.305 0.106 0 + 0.311 0.106 0 + 0.768 0.121 0 + 0.540 0.528 0 + 0.000 0.723 0 + 0.134 0.721 0 + 0.477 0.722 0 + 0.610 0.723 0 + 1.080 0.723 0 + 0.957 0.723 0 +numpoly 12 +3 2 6 3 +3 0 4 8 +3 3 6 7 +3 5 0 1 +3 12 13 6 +3 5 4 0 +3 7 10 5 +3 11 10 7 +3 7 5 1 +3 11 7 6 +3 4 9 8 +3 12 6 2 +end +char x +width 0.727 +numpts 17 + 0.002 -0.071 0 + 0.726 -0.071 0 + 0.000 -0.066 0 + 0.159 -0.070 0 + 0.571 -0.071 0 + 0.727 -0.066 0 + 0.365 0.225 0 + 0.371 0.225 0 + 0.448 0.334 0 + 0.280 0.340 0 + 0.359 0.450 0 + 0.017 0.717 0 + 0.713 0.717 0 + 0.019 0.723 0 + 0.711 0.723 0 + 0.171 0.724 0 + 0.559 0.724 0 +numpoly 15 +3 1 5 4 +3 2 6 9 +3 8 6 7 +3 3 2 0 +3 4 8 7 +3 6 2 3 +3 4 5 8 +3 8 10 6 +3 10 9 6 +3 15 11 9 +3 16 10 8 +3 15 9 10 +3 12 16 8 +3 13 11 15 +3 16 12 14 +end +char y +width 0.718 +numpts 16 + 0.173 -0.396 0 + 0.070 -0.380 0 + 0.248 -0.376 0 + 0.288 -0.350 0 + 0.335 -0.294 0 + 0.150 -0.267 0 + 0.053 -0.258 0 + 0.197 -0.254 0 + 0.374 -0.220 0 + 0.243 -0.214 0 + 0.299 -0.077 0 + 0.368 0.093 0 + 0.000 0.723 0 + 0.139 0.720 0 + 0.590 0.722 0 + 0.718 0.723 0 +numpoly 14 +3 2 7 0 +3 0 5 1 +3 5 0 7 +3 6 1 5 +3 3 7 2 +3 7 3 9 +3 3 4 9 +3 9 8 10 +3 9 4 8 +3 10 11 12 +3 11 15 14 +3 11 8 15 +3 11 10 8 +3 11 13 12 +end +char z +width 0.701 +numpts 17 + 0.006 -0.073 0 + 0.697 -0.072 0 + 0.000 -0.069 0 + 0.701 -0.066 0 + 0.000 0.037 0 + 0.171 0.037 0 + 0.701 0.037 0 + 0.170 0.043 0 + 0.268 0.043 0 + 0.697 0.043 0 + 0.034 0.617 0 + 0.499 0.620 0 + 0.678 0.643 0 + 0.030 0.717 0 + 0.678 0.717 0 + 0.034 0.723 0 + 0.674 0.723 0 +numpoly 15 +3 2 0 4 +3 0 1 9 +3 0 5 4 +3 1 3 9 +3 5 0 8 +3 5 7 4 +3 0 9 8 +3 3 6 9 +3 12 14 11 +3 11 14 16 +3 11 16 10 +3 12 11 7 +3 11 4 7 +3 10 15 13 +3 15 10 16 +end +char { +width 0.423 +numpts 39 + 0.423 -0.395 0 + 0.280 -0.384 0 + 0.211 -0.342 0 + 0.423 -0.280 0 + 0.169 -0.271 0 + 0.331 -0.270 0 + 0.289 -0.231 0 + 0.279 -0.191 0 + 0.153 -0.180 0 + 0.275 0.043 0 + 0.147 0.054 0 + 0.263 0.146 0 + 0.132 0.163 0 + 0.103 0.218 0 + 0.234 0.227 0 + 0.063 0.249 0 + 0.000 0.265 0 + 0.205 0.267 0 + 0.125 0.323 0 + 0.000 0.386 0 + 0.063 0.401 0 + 0.223 0.403 0 + 0.103 0.428 0 + 0.246 0.443 0 + 0.139 0.494 0 + 0.270 0.523 0 + 0.153 0.603 0 + 0.278 0.809 0 + 0.156 0.849 0 + 0.289 0.871 0 + 0.169 0.911 0 + 0.314 0.908 0 + 0.319 0.911 0 + 0.320 0.912 0 + 0.423 0.928 0 + 0.217 0.995 0 + 0.280 1.033 0 + 0.343 1.044 0 + 0.423 1.043 0 +numpoly 37 +3 0 3 5 +3 6 2 5 +3 2 6 4 +3 0 5 1 +3 2 1 5 +3 4 7 8 +3 7 4 6 +3 8 9 10 +3 10 11 12 +3 9 8 7 +3 11 10 9 +3 12 17 13 +3 12 14 17 +3 14 12 11 +3 18 15 13 +3 16 15 20 +3 18 13 17 +3 16 20 19 +3 15 18 20 +3 21 22 18 +3 22 21 24 +3 22 20 18 +3 24 25 26 +3 23 24 21 +3 25 24 23 +3 26 27 28 +3 27 26 25 +3 28 29 30 +3 29 28 27 +3 30 29 35 +3 31 32 33 +3 36 31 33 +3 31 36 29 +3 36 33 37 +3 34 38 37 +3 35 29 36 +3 34 37 33 +end +char | +width 0.103 +numpts 4 + 0.000 -0.395 0 + 0.103 -0.396 0 + 0.000 1.043 0 + 0.103 1.044 0 +numpoly 2 +3 3 2 0 +3 3 0 1 +end +char } +width 0.429 +numpts 35 + 0.000 -0.395 0 + 0.137 -0.386 0 + 0.217 -0.338 0 + 0.000 -0.280 0 + 0.097 -0.268 0 + 0.260 -0.260 0 + 0.134 -0.237 0 + 0.273 -0.197 0 + 0.150 -0.157 0 + 0.276 0.049 0 + 0.156 0.117 0 + 0.292 0.164 0 + 0.177 0.197 0 + 0.337 0.233 0 + 0.383 0.257 0 + 0.217 0.264 0 + 0.429 0.266 0 + 0.300 0.329 0 + 0.240 0.367 0 + 0.429 0.386 0 + 0.372 0.399 0 + 0.325 0.431 0 + 0.184 0.437 0 + 0.291 0.500 0 + 0.153 0.569 0 + 0.276 0.786 0 + 0.150 0.803 0 + 0.141 0.871 0 + 0.115 0.909 0 + 0.258 0.917 0 + 0.000 0.928 0 + 0.239 0.957 0 + 0.189 1.011 0 + 0.143 1.033 0 + 0.000 1.043 0 +numpoly 33 +3 4 3 0 +3 2 4 1 +3 6 7 8 +3 1 4 0 +3 2 6 4 +3 5 6 2 +3 6 5 7 +3 8 9 10 +3 9 8 7 +3 10 11 12 +3 15 13 17 +3 11 10 9 +3 12 11 15 +3 13 14 17 +3 13 15 11 +3 20 17 14 +3 20 14 16 +3 19 20 16 +3 21 17 20 +3 17 21 18 +3 22 23 24 +3 22 18 21 +3 23 22 21 +3 25 26 24 +3 25 24 23 +3 29 27 26 +3 29 26 25 +3 27 31 28 +3 31 27 29 +3 32 28 31 +3 28 33 30 +3 33 34 30 +3 33 28 32 +end diff --git a/data/hcp-oct.lat b/data/hcp-oct.lat new file mode 100644 index 0000000..5e5ded3 --- /dev/null +++ b/data/hcp-oct.lat @@ -0,0 +1,10 @@ +2.940004 0.000000 0.000000 +-1.470002 2.546118 0.000000 +0.000000 0.000000 4.800997 +1.000000 0.000000 0.000000 +-0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.000000 0.000000 A +0.666667 0.333333 0.500000 A +0.333333 0.666667 0.250000 B +0.333333 0.666667 0.750000 B diff --git a/data/hcp-tet.lat b/data/hcp-tet.lat new file mode 100644 index 0000000..82b504d --- /dev/null +++ b/data/hcp-tet.lat @@ -0,0 +1,10 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0.6666666 0.3333333 0.5 A +0 0 0.375 B +0 0 0.625 B +0.6666666 0.3333333 0.125 B +0.6666666 0.3333333 0.875 B diff --git a/data/hcp.lat b/data/hcp.lat new file mode 100644 index 0000000..dfba7d1 --- /dev/null +++ b/data/hcp.lat @@ -0,0 +1,6 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0.6666666 0.3333333 0.5 A diff --git a/data/masses.in b/data/masses.in new file mode 100644 index 0000000..ba464c2 --- /dev/null +++ b/data/masses.in @@ -0,0 +1,85 @@ +Ag 107.8682 +Al 26.981538 +Ar 39.948 +As 74.92160 +Au 196.96655 +B 10.811 +Ba 137.327 +Be 9.012182 +Bi 208.98038 +Br 79.904 +C 12.0107 +Ca 40.078 +Cd 112.411 +Ce 140.116 +Cl 35.453 +Co 58.933200 +Cr 51.9961 +Cs 132.90545 +Cu 63.546 +Dy 162.500 +Er 167.259 +Eu 151.964 +F 18.9984032 +Fe 55.845 +Ga 69.723 +Gd 157.25 +Ge 72.64 +H 1.00794 +He 4.002602 +Hf 178.49 +Hg 200.59 +Ho 164.93032 +I 126.90447 +In 114.818 +Ir 192.217 +K 39.0983 +Kr 83.798 +La 138.9055 +Li 6.941 +Lu 174.967 +Mg 24.3050 +Mn 54.938049 +Mo 95.94 +N 14.0067 +Na 22.989770 +Nb 92.90638 +Nd 144.24 +Ne 20.1797 +Ni 58.6934 +O 15.9994 +Os 190.23 +P 30.973761 +Pa 231.03588 +Pb 207.2 +Pd 106.42 +Pr 140.90765 +Pt 195.078 +Rb 85.4678 +Re 186.207 +Rh 102.90550 +Ru 101.07 +S 32.065 +Sb 121.760 +Sc 44.955910 +Se 78.96 +Si 28.0855 +Sm 150.36 +Sn 118.710 +Sr 87.62 +Ta 180.9479 +Tb 158.92534 +Te 127.60 +Th 232.0381 +Ti 47.867 +Tl 204.3833 +Tm 168.93421 +U 238.02891 +V 50.9415 +W 183.84 +Xe 131.293 +Y 88.90585 +Yb 173.04 +Zn 65.409 +Zr 91.224 +Vac 0 diff --git a/data/radii.in b/data/radii.in new file mode 100644 index 0000000..a4edb0b --- /dev/null +++ b/data/radii.in @@ -0,0 +1,88 @@ +Ac 2.0475 +Ag 1.68 +Al 1.3125 +Am 1.8375 +As 1.2075 +Au 1.4175 +B 0.8925 +Ba 2.2575 +Be 1.1025 +Bi 1.68 +Br 1.2075 +C 0.735 +Ca 1.89 +Cd 1.6275 +Ce 1.9425 +Cl 1.05 +Co 1.4175 +Cr 1.47 +Cs 2.73 +Cu 1.4175 +Dy 1.8375 +Er 1.8375 +Eu 1.9425 +F 0.525 +Fe 1.47 +Ga 1.365 +Gd 1.89 +Ge 1.3125 +H 0.2625 +Hf 1.6275 +Hg 1.575 +Ho 1.8375 +I 1.47 +In 1.6275 +Ir 1.4175 +K 2.31 +La 2.0475 +Li 1.5225 +Lu 1.8375 +Mg 1.575 +Mn 1.47 +Mo 1.5225 +N 0.6825 +Na 1.89 +Nb 1.5225 +Nd 1.9425 +Ni 1.4175 +Np 1.8375 +O 0.63 +Os 1.365 +P 1.05 +Pa 1.89 +Pb 1.89 +Pd 1.47 +Pm 1.9425 +Po 1.995 +Pr 1.9425 +Pt 1.4175 +Pu 1.8375 +Ra 2.2575 +Rb 2.4675 +Re 1.4175 +Rh 1.4175 +Ru 1.365 +S 1.05 +Sb 1.5225 +Sc 1.68 +Se 1.2075 +Si 1.155 +Sm 1.9425 +Sn 1.5225 +Sr 2.1 +Ta 1.5225 +Tb 1.8375 +Tc 1.4175 +Te 1.47 +Th 1.89 +Ti 1.47 +Tl 1.995 +Tm 1.8375 +U 1.8375 +V 1.4175 +W 1.4175 +Y 1.89 +Yb 1.8375 +Zn 1.4175 +Zr 1.6275 +Vac 0.0 diff --git a/data/refs.txt b/data/refs.txt new file mode 100644 index 0000000..edd5f07 --- /dev/null +++ b/data/refs.txt @@ -0,0 +1,5 @@ +The atomic radii were taken from + +J.C. Slater, J. Chem. Phys. 1964, 39, 3199. + +and multiplied by 1.05 (for additional insurance that the atoms are not too close). diff --git a/data/rocksalt.lat b/data/rocksalt.lat new file mode 100644 index 0000000..0ad7c1c --- /dev/null +++ b/data/rocksalt.lat @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A +0.5 0.5 0.5 B diff --git a/data/sc.lat b/data/sc.lat new file mode 100644 index 0000000..be6ebf2 --- /dev/null +++ b/data/sc.lat @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A diff --git a/data/sgte_elements.tdb b/data/sgte_elements.tdb new file mode 100644 index 0000000..ec276e4 --- /dev/null +++ b/data/sgte_elements.tdb @@ -0,0 +1,76 @@ +ELEMENT ELEM_AG FCC_A1 0.107868 5745. 42.55 ! +ELEMENT ELEM_AL FCC_A1 0.0269815 4540. 28.30 ! +ELEMENT ELEM_AM DHCP 0.243 6407.00 55.3960 ! +ELEMENT ELEM_AS RHOMBOHEDRAL_A7 0.074922 5117.032 35.6895 ! +ELEMENT ELEM_AU FCC_A1 0.196966 6016.592 47.4884 ! +ELEMENT ELEM_B BETA_RHOMBO_B 0.01081 1222.0 5.9 ! +ELEMENT ELEM_BA BCC_A2 0.13733 6910.0 62.50 ! +ELEMENT ELEM_BE HCP_A3 0.00901218 1950.0 9.50 ! +ELEMENT ELEM_BI RHOMBOHEDRAL_A7 0.20898 6426.624 56.735 ! +ELEMENT ELEM_C GRAPHITE 0.012011 1054.0 5.7423 ! +ELEMENT ELEM_CA FCC_A1 0.04008 5736.0 41.588 ! +ELEMENT ELEM_CD HCP_A3 0.11241 6247. 51.80 ! +ELEMENT ELEM_CE FCC_A1 0.14012 7280.16 69.4544 ! +ELEMENT ELEM_CO HCP_A3 0.0589332 4765.567 30.0400 ! +ELEMENT ELEM_CR BCC_A2 0.051996 4050.0 23.5429 ! +ELEMENT ELEM_CS BCC_A2 0.132905 7711.000 85.23 ! +ELEMENT ELEM_CU FCC_A1 0.063546 5004. 33.15 ! +ELEMENT ELEM_DY HCP_A3 0.1625 8865.896 75.5630 ! +ELEMENT ELEM_ER HCP_A3 0.16726 7392.2912 73.17816 ! +ELEMENT ELEM_EU BCC_A2 0.15196 8004.0 80.79304 ! +ELEMENT ELEM_FE BCC_A2 0.055847 4489.0 27.2797 ! +ELEMENT ELEM_GA ORTHORHOMBIC_GA 0.06972 5572.0 40.727 ! +ELEMENT ELEM_GD HCP_A3 0.15725 9087.648 67.9482 ! +ELEMENT ELEM_GE DIAMOND_A4 0.07259 4636. 31.09 ! +ELEMENT ELEM_HF HCP_A3 0.17849 5845.0 43.56 ! +ELEMENT ELEM_HG LIQUID 0.20059 9342. 75.90 ! +ELEMENT ELEM_HO HCP_A3 0.16493 7995.624 75.0191 ! +ELEMENT ELEM_IN TETRAGONAL_A6 0.11482 6610.0 57.65 ! +ELEMENT ELEM_IR FCC_A1 0.19222 5267.656 35.5054 ! +ELEMENT ELEM_K BCC_A2 0.0390983 7088. 64.68 ! +ELEMENT ELEM_LA DHCP 0.138905 6665.112 56.9024 ! +ELEMENT ELEM_LI BCC_A2 0.006941 4632.00 29.12 ! +ELEMENT ELEM_LU HCP_A3 0.174967 6388.968 50.9611 ! +ELEMENT ELEM_MG HCP_A3 0.024305 4998.0 32.671 ! +ELEMENT ELEM_MN CBCC_A12 0.054938 4995.696 32.2206 ! +ELEMENT ELEM_MO BCC_A2 0.09594 4589.0 28.56 ! +ELEMENT ELEM_NA BCC_A2 0.0229898 6460. 51.3000 ! +ELEMENT ELEM_NB BCC_A2 0.0929064 5220.0 36.27 ! +ELEMENT ELEM_ND DHCP 0.14424 7133.72 7 ! +ELEMENT ELEM_NI FCC_A1 0.05869 4787.0 29.7955 ! +ELEMENT ELEM_NP ORTHO_AC 0.237048 6606.536 50.4590 ! +ELEMENT ELEM_OS HCP_A3 0.1902 32.6352 3306.00 ! +ELEMENT ELEM_P WHITE_P 0.0309738 5360.0 41.09 ! +ELEMENT ELEM_PA BCT_AA 0.231036 6439.176 51.882 ! +ELEMENT ELEM_PB FCC_A1 0.2072 6870. 64.80 ! +ELEMENT ELEM_PD FCC_A1 0.10642 5468.488 37.8234 ! +ELEMENT ELEM_PR DHCP 0.140908 7418.232 73.9313 ! +ELEMENT ELEM_PT FCC_A1 0.19508 5723.712 41.6308 ! +ELEMENT ELEM_PU ALPHA_PU 0.244 6902.0 54.4610 ! +ELEMENT ELEM_RB BCC_A2 0.0854678 7489. 76.78 ! +ELEMENT ELEM_RE HCP_A3 0.186207 5355.52 36.5263 ! +ELEMENT ELEM_RH FCC_A1 0.102905 4920.384 31.5556 ! +ELEMENT ELEM_RU HCP_A3 0.10107 4602.4 28.6144 ! +ELEMENT ELEM_S ORTHORHOMBIC_S 0.03206 4412.0 32.054 ! +ELEMENT ELEM_SB RHOMBOHEDRAL_A7 0.12175 5870.152 45.5219 ! +ELEMENT ELEM_SC HCP_A3 0.0449559 5217.448 34.6435 ! +ELEMENT ELEM_SE HEXAGONAL_A8 0.07896 5514.512 41.9655 ! +ELEMENT ELEM_SI DIAMOND_A4 0.0280855 3217. 18.81 ! +ELEMENT ELEM_SM RHOMB_C19 0.15036 7573.04 69.4962 ! +ELEMENT ELEM_SN BCT_A5 0.11869 6323. 51.18 ! +ELEMENT ELEM_SR FCC_A1 0.08762 6568. 55.694 ! +ELEMENT ELEM_TA BCC_A2 0.180948 5681.872 41.4718 ! +ELEMENT ELEM_TB HCP_A3 0.158925 9426.552 73.3037 ! +ELEMENT ELEM_TC HCP_A3 0.098 32.9856 2430.01 ! +ELEMENT ELEM_TE HEXAGONAL_A8 0.1276 6121.192 49.4967 ! +ELEMENT ELEM_TH FCC_A1 0.232038 6350. 51.8 ! +ELEMENT ELEM_TI HCP_A3 0.04788 4824. 30.72 ! +ELEMENT ELEM_TL HCP_A3 0.204383 6831.97 64.2997 ! +ELEMENT ELEM_TM HCP_A3 0.168934 7397.312 74.01496 ! +ELEMENT ELEM_U ORTHORHOMBIC_A20 0.238029 6364. 50.20 ! +ELEMENT ELEM_V BCC_A2 0.0509415 4507.0 30.89 ! +ELEMENT ELEM_W BCC_A2 0.18385 4970.0 32.6176 ! +ELEMENT ELEM_Y HCP_A3 0.0889059 5966.384 44.4341 ! +ELEMENT ELEM_YB FCC_A1 0.17304 6711.136 59.8312 ! +ELEMENT ELEM_ZN HCP_ZN 0.06538 5657. 41.63 ! +ELEMENT ELEM_ZR HCP_A3 0.09122 5566.27 39.1809 ! diff --git a/data/sgte_freee.tdb b/data/sgte_freee.tdb new file mode 100644 index 0000000..9dbaca9 --- /dev/null +++ b/data/sgte_freee.tdb @@ -0,0 +1,415 @@ +FUNCTION SGTE_FCC_A1_ELEM_AG 298.15 -7209.512+118.202013*T-23.8463314*T*LN(T)-1.790585E-3*T**2-0.398587E-6*T**3 -12011*T**(-1); 1234.93 Y -15095.252+190.266404*T-33.472*T*LN(T)+1411.773E26*T**(-9); 3000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_AG 298.15 -6909.512+118.502013*T-23.8463314*T*LN(T)-1.790585E-3*T**2-0.398587E-6*T**3 -12011*T**(-1); 1234.93 Y -14795.252+190.566404*T-33.472*T*LN(T)+1411.773E26*T**(-9); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_AG 298.15 -3809.512+117.152013*T-23.8463314*T*LN(T)-1.790585E-3*T**2-0.398587E-6*T**3 -12011*T**(-1); 1234.93 Y -11695.252+189.216404*T-33.472*T*LN(T)+1411.773E26*T**(-9); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_AG 298.15 3815.564+109.310993*T-23.8463314*T*LN(T)-1.790585E-3*T**2-0.398587E-6*T**3 -12011*T**(-1)-1033.905E-23*T**7; 1234.93 Y -3587.111+180.964656*T-33.472*T*LN(T); 3000.00 N ! +PARAMETER G(CUB_A13,ELEM_AG;0) 298.15 -3809.512+117.152013*T-23.8463314*T*LN(T)-1.790585E-3*T**2-0.398587E-6*T**3 -12011*T**(-1); 1234.93 Y -11695.252+189.216404*T-33.472*T*LN(T)+1411.773E26*T**(-9); 3000.00 N ! +FUNCTION SGTE_BCT_A5_ELEM_AG 298.15 -3025.412+118.202013*T-23.8463314*T*LN(T)-1.790585E-3*T**2-0.398587E-6*T**3 -12011*T**(-1); 1234.93 Y -10911.152+190.266404*T-33.472*T*LN(T)+1411.773E26*T**(-9); 3000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_AL 298.15 -7976.15+137.093038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 +74092*T**(-1); 700.00 Y -11276.24+223.048446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 +74092*T**(-1); 933.47 Y -11278.378+188.684153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_AL 298.15 -2495.15+135.293038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 +74092*T**(-1); 700.00 Y -5795.24+221.248446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 +74092*T**(-1); 933.47 Y -5797.378+186.884153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! +FUNCTION SGTE_HCP_ZN_ELEM_AL 298.15 -2495.15+135.293038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 +74092*T**(-1); 700.00 Y -5795.24+221.248446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 +74092*T**(-1); 933.47 Y -5797.378+186.884153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! +FUNCTION SGTE_CBCC_A12_ELEM_AL 298.15 2107.25+132.280038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 +74092*T**(-1); 700.00 Y -1192.84+218.235446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 +74092*T**(-1); 933.47 Y -1194.978+183.871153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_AL 298.15 2106.85+132.280038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 +74092*T**(-1); 700.00 Y -1193.24+218.235446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 +74092*T**(-1); 933.47 Y -1195.378+183.871153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! +FUNCTION SGTE_CUB_A13_ELEM_AL 298.15 2944.29+132.281438*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 +74092*T**(-1); 700.00 Y -355.8+218.236846*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 +74092*T**(-1); 933.47 Y -357.938+183.872553*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! +FUNCTION SGTE_LIQUID_ELEM_AL 298.15 3028.879+125.251171*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 +74092*T**(-1)+79.337E-21*T**7; 700.00 Y -271.21+211.206579*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 +74092*T**(-1)+79.337E-21*T**7; 933.47 Y -795.996+177.430178*T-31.748192*T*LN(T); 2900.00 N ! +FUNCTION SGTE_BCT_A5_ELEM_AL 298.15 2106.85+132.280038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 +74092*T**(-1); 700.00 Y -1193.24+218.235446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 +74092*T**(-1); 933.47 Y -1195.378+183.871153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! +FUNCTION SGTE_DIAMOND_A4_ELEM_AL 298.15 -7976.15+167.093038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 +74092*T**(-1); 700.00 Y -11276.24+253.048446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 +74092*T**(-1); 933.47 Y -11278.378+218.684153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! +FUNCTION SGTE_DHCP_ELEM_AM 298.15 -6639.201+89.645685*T-21.1868*T*LN(T)-5.59955E-3*T**2-0.541038E-6*T**3 -30424*T**(-1); 1329.00 Y -21702.938+241.107269*T-41.84*T*LN(T); 3000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_AM 298.15 -5224.899+99.204329*T-23.1377*T*LN(T)-2.94694E-3*T**2-0.664773E-6*T**3 -18507*T**(-1); 1018.00 Y -2935.853+73.800069*T-19.4406*T*LN(T)-5.418E-3*T**2-0.375233E-6*T**3 -260435*T**(-1); 1548.70 Y -22179.593+241.353807*T-41.84*T*LN(T); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_AM 298.15 -665.396+85.114354*T-21.1868*T*LN(T)-5.5995E-3*T**2-0.541033E-6*T**3 -30424*T**(-1); 999.00 Y -7800.332+63.93115*T-15.8832*T*LN(T)-19.0671E-3*T**2+2.291117E-6*T**3 +2287195*T**(-1); 1339.00 Y -13153.887+219.600832*T-39.748*T*LN(T); 1449.00 Y 70352.138-326.394464*T+33.413*T*LN(T)-27.36485E-3*T**2+1.801717E-6*T**3 -17379450*T**(-1); 2183.60 Y -16925.244+237.367028*T-41.84*T*LN(T); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_AM 298.15 13271.499+75.525185*T-21.1868*T*LN(T)-5.59955E-3*T**2-0.541038E-6*T**3 -30424*T**(-1); 1329.00 Y -1792.238+226.986769*T-41.84*T*LN(T); 3000.00 N ! +FUNCTION SGTE_RHOMBOHEDRAL_A7_ELEM_AS 298.15 -7270.447+122.211069*T-23.3144*T*LN(T)-2.71613E-3*T**2+11600*T**(-1); 1090.00 Y -10454.913+163.457433*T-29.216037*T*LN(T); 1200.00 N ! +FUNCTION SGTE_LIQUID_ELEM_AS 298.15 17172.453+99.78639*T-23.3144*T*LN(T)-2.71613E-3*T**2+11600*T**(-1); 1090.00 Y 13987.987+141.032754*T-29.216037*T*LN(T); 1200.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_AS 298.15 17603.553+107.471069*T-23.3144*T*LN(T)-2.71613E-3*T**2+11600*T**(-1); 1090.00 Y 14419.087+148.717433*T-29.216037*T*LN(T); 1200.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_AS 298.15 17603.553+106.111069*T-23.3144*T*LN(T)-2.71613E-3*T**2+11600*T**(-1); 1090.00 Y 14419.087+147.357433*T-29.216037*T*LN(T); 1200.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_AS 298.15 17603.553+108.211069*T-23.3144*T*LN(T)-2.71613E-3*T**2+11600*T**(-1); 1090.00 Y 14419.087+149.457433*T-29.216037*T*LN(T); 1200.00 N ! +FUNCTION SGTE_RED_P_ELEM_AS 298.15 -1488.447+118.356409*T-23.3144*T*LN(T)-2.71613E-3*T**2+11600*T**(-1); 1090.00 Y -4672.913+159.602773*T-29.216037*T*LN(T); 1200.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_AU 298.15 -6938.856+106.830098*T-22.75455*T*LN(T)-3.85924E-3*T**2+0.379625E-6*T**3 -25097*T**(-1); 929.40 Y -93586.481+1021.69543*T-155.7067449*T*LN(T)+87.56015E-3*T**2 -11.518713E-6*T**3+10637210*T**(-1); 1337.33 Y 314067.829-2016.378254*T+263.2522592*T*LN(T)-118.216828E-3*T**2 +8.923844E-6*T**3-67999832*T**(-1); 1735.80 Y -12133.783+165.272524*T-30.9616*T*LN(T); 3200.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_AU 298.15 -6698.106+108.430098*T-22.75455*T*LN(T)-3.85924E-3*T**2+0.379625E-6*T**3 -25097*T**(-1); 929.40 Y -93345.731+1023.29543*T-155.7067449*T*LN(T)+87.56015E-3*T**2 -11.518713E-6*T**3+10637210*T**(-1); 1337.33 Y 314308.579-2014.778254*T+263.2522592*T*LN(T)-118.216828E-3*T**2 +8.923844E-6*T**3-67999832*T**(-1); 1735.80 Y -11893.033+166.872524*T-30.9616*T*LN(T); 3200.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_AU 298.15 -2688.856+105.730098*T-22.75455*T*LN(T)-3.85924E-3*T**2+0.379625E-6*T**3 -25097*T**(-1); 929.40 Y -89336.481+1020.59543*T-155.7067449*T*LN(T)+87.56015E-3*T**2 -11.518713E-6*T**3+10637210*T**(-1); 1337.33 Y 318317.829-2017.478254*T+263.2522592*T*LN(T)-118.216828E-3*T**2 +8.923844E-6*T**3-67999832*T**(-1); 1735.80 Y -7883.783+164.172524*T-30.9616*T*LN(T); 3200.00 N ! +FUNCTION SGTE_LIQUID_ELEM_AU 298.15 5613.144+97.444232*T-22.75455*T*LN(T)-3.85924E-3*T**2+0.379625E-6*T**3 -25097*T**(-1); 929.40 Y -81034.481+1012.309564*T-155.7067449*T*LN(T)+87.56015E-3*T**2 -11.518713E-6*T**3+10637210*T**(-1); 1337.33 Y 326619.829-2025.76412*T+263.2522592*T*LN(T)-118.216828E-3*T**2 +8.923844E-6*T**3-67999832*T**(-1); 1735.80 Y 418.217+155.886658*T-30.9616*T*LN(T); 3200.00 N ! +FUNCTION SGTE_BETA_RHOMBO_B_ELEM_B 298.15 -7735.284+107.111864*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 +370843*T**(-1); 1100.00 Y -16649.474+184.801744*T-26.6047*T*LN(T)-0.79809E-3*T**2-0.02556E-6*T**3 +1748270*T**(-1); 2348.00 Y -36667.582+231.336244*T-31.5957527*T*LN(T)-1.59488E-3*T**2+0.134719E-6*T**3 +11205883*T**(-1); 3000.00 Y -21530.653+222.396264*T-31.4*T*LN(T); 6000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_B 298.15 40723.275+86.843839*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 +370843*T**(-1); 500.00 Y 41119.703+82.101722*T-14.9827763*T*LN(T)-7.095669E-3*T**2+0.507347E-6*T**3 +335484*T**(-1); 2348.00 Y 28842.012+200.94731*T-31.4*T*LN(T); 6000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_B 298.15 35778.716+94.894864*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 +370843*T**(-1); 1100.00 Y 26864.526+172.584744*T-26.6047*T*LN(T)-0.79809E-3*T**2-0.02556E-6*T**3 +1748270*T**(-1); 2348.00 Y 6846.418+219.119244*T-31.5957527*T*LN(T)-1.59488E-3*T**2+0.134719E-6*T**3 +11205883*T**(-1); 3000.00 Y 21983.347+210.179264*T-31.4*T*LN(T); 6000.00 N ! +FUNCTION SGTE_DIAMOND_A4_ELEM_B 298.15 -7725.284+107.111864*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 +370843*T**(-1); 1100.00 Y -16639.474+184.801744*T-26.6047*T*LN(T)-0.79809E-3*T**2-0.02556E-6*T**3 +1748270*T**(-1); 2348.00 Y -36657.582+231.336244*T-31.5957527*T*LN(T)-1.59488E-3*T**2+0.134719E-6*T**3 +11205883*T**(-1); 3000.00 Y -21520.653+222.396264*T-31.4*T*LN(T); 6000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_B 298.15 42472.716+97.405864*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 +370843*T**(-1); 1100.00 Y 33558.526+175.095744*T-26.6047*T*LN(T)-0.79809E-3*T**2-0.02556E-6*T**3 +1748270*T**(-1); 2348.00 Y 13540.418+221.630244*T-31.5957527*T*LN(T)-1.59488E-3*T**2+0.134719E-6*T**3 +11205883*T**(-1); 3000.00 Y 28677.347+212.690264*T-31.4*T*LN(T); 6000.00 N ! +FUNCTION SGTE_GRAPHITE_ELEM_B 298.15 2264.716+105.111864*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 +370843*T**(-1); 1100.00 Y -6649.474+182.801744*T-26.6047*T*LN(T)-0.79809E-3*T**2-0.02556E-6*T**3 +1748270*T**(-1); 2348.00 Y -26667.582+229.336244*T-31.5957527*T*LN(T)-1.59488E-3*T**2+0.134719E-6*T**3 +11205883*T**(-1); 3000.00 Y -11530.653+220.396264*T-31.4*T*LN(T); 6000.00 N ! +PARAMETER G(BCC_A2,ELEM_B;0) 298.15 35778.716+94.894864*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 +370843*T**(-1); 1100.00 Y 26864.526+172.584744*T-26.6047*T*LN(T)-0.79809E-3*T**2-0.02556E-6*T**3 +1748270*T**(-1); 2348.00 Y 6846.418+219.119244*T-31.5957527*T*LN(T)-1.59488E-3*T**2+0.134719E-6*T**3 +11205883*T**(-1); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_BA 298.15 -17685.226+233.78606*T-42.889*T*LN(T)-1.8314E-3*T**2-0.000095E-6*T**3 +705880*T**(-1); 1000.00 Y -64873.614+608.188389*T-94.2824199*T*LN(T)+19.504772E-3*T**2-1.051353E-6*T**3 +8220192*T**(-1); 2995.00 Y 8083.889+136.780042*T-32.2*T*LN(T); 4000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_BA 298.15 -9738.988+229.540143*T-43.4961089*T*LN(T)-2.346416E-3*T**2+0.991223E-6*T**3 +723016*T**(-1); 1000.00 Y -7381.093+235.49642*T-45.103*T*LN(T)+2.154E-3*T**2+0.000027E-6*T**3 -365*T**(-1); 2995.00 Y 11940.282+132.212*T-32.2*T*LN(T); 4000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_BA 298.15 -15685.226+235.08606*T-42.889*T*LN(T)-1.8314E-3*T**2-0.000095E-6*T**3 +705880*T**(-1); 1000.00 Y -62873.614+609.488389*T-94.2824199*T*LN(T)+19.504772E-3*T**2-1.051353E-6*T**3 +8220192*T**(-1); 2995.00 Y 10083.889+138.080042*T-32.2*T*LN(T); 4000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_BA 298.15 -15885.226+234.38606*T-42.889*T*LN(T)-1.8314E-3*T**2-0.000095E-6*T**3 +705880*T**(-1); 1000.00 Y -63073.614+608.788389*T-94.2824199*T*LN(T)+19.504772E-3*T**2-1.051353E-6*T**3 +8220192*T**(-1); 2995.00 Y 9883.889+137.380042*T-32.2*T*LN(T); 4000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_BE 298.15 -8553.651+137.560219*T-21.204*T*LN(T)-2.84715E-3*T**2-0.160413E-6*T**3 +293690*T**(-1); 1527.00 Y -121305.858+772.405844*T-103.9842999*T*LN(T)+21.078651E-3*T**2 -1.119065E-6*T**3+27251743*T**(-1); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_BE 298.15 -1076.057+109.411712*T-17.1727841*T*LN(T)-8.672487E-3*T**2+0.961427E-6*T**3 +242309*T**(-1); 1527.00 Y -6970.378+196.411689*T-30*T*LN(T); 1560.00 Y -2609.973+178.131722*T-27.7823769*T*LN(T)-0.103629E-3*T**2-0.059331E-6*T**3 -1250847*T**(-1); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_BE 298.15 7511.838+120.362788*T-20.0497038*T*LN(T)-4.821347E-3*T**2+0.415958E-6*T**3 +281044*T**(-1); 1560.00 Y 5364.713+156.961141*T-25.486*T*LN(T)-1.0572E-3*T**2-0.001117E-6*T**3 +15920*T**(-1); 3000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_BE 298.15 -2204.651+136.475219*T-21.204*T*LN(T)-2.84715E-3*T**2-0.160413E-6*T**3 +293690*T**(-1); 1527.00 Y -114956.858+771.320844*T-103.9842999*T*LN(T)+21.078651E-3*T**2 -1.119065E-6*T**3+27251743*T**(-1); 3000.00 N ! +FUNCTION SGTE_RHOMBOHEDRAL_A7_ELEM_BI 298.15 -7817.776+128.418925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; 544.55 Y 30208.022-393.650351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 -3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y -11045.664+182.548971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 +166.145E23*T**(-9); 1200.00 Y -7581.312+124.77144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_BI 298.15 3428.29+107.782416*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3 -59.549E-20*T**7; 544.55 Y 41544.282-414.460769*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 -3616168*T**(-1); 800.00 Y 290.595+161.738553*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3; 1200.00 Y 3754.947+103.961021*T-27.196*T*LN(T); 3000.00 N ! +FUNCTION SGTE_TETRAGONAL_A6_ELEM_BI 298.15 -3633.706+128.418925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; 544.55 Y 34392.092-393.650351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 -3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y -6861.594+182.548971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 +166.145E23*T**(-9); 1200.00 Y -3397.242+124.77144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_BCT_A5_ELEM_BI 298.15 -3633.706+128.418925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; 544.55 Y 34392.092-393.650351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 -3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y -6861.594+182.548971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 +166.145E23*T**(-9); 1200.00 Y -3397.242+124.77144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_BI 298.15 3479.224+114.518925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; 544.55 Y 41505.022-407.550351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 -3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y 251.336+168.648971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 +166.145E23*T**(-9); 1200.00 Y 3715.688+110.87144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_BI 298.15 2082.224+115.918925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; 544.55 Y 40108.022-406.150351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 -3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y -1145.664+170.048971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 +166.145E23*T**(-9); 1200.00 Y 2318.688+112.27144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_BI 298.15 2082.224+116.618925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; 544.55 Y 40108.022-405.450351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 -3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y -1145.664+170.748971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 +166.145E23*T**(-9); 1200.00 Y 2318.688+112.97144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_TET_ALPHA1_ELEM_BI 298.15 -3583.776+128.418925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; 544.55 Y 34442.022-393.650351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 -3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y -6811.664+182.548971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 +166.145E23*T**(-9); 1200.00 Y -3347.312+124.77144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_GRAPHITE_ELEM_C 298.15 -17368.441+170.73*T-24.3*T*LN(T)-0.4723E-3*T**2+2562600*T**(-1) -264300000*T**(-2)+1.2E10*T**(-3); 6000.00 N ! +FUNCTION SGTE_DIAMOND_A4_ELEM_C 298.15 -16359.441+175.61*T-24.31*T*LN(T)-0.4723E-3*T**2+2698000*T**(-1) -261000000*T**(-2)+1.11E10*T**(-3); 6000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_C 298.15 100000.559+146.1*T-24.3*T*LN(T)-0.4723E-3*T**2+2562600*T**(-1) -264300000*T**(-2)+1.2E10*T**(-3); 6000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_CA 298.15 -4955.062+72.794266*T-16.3138*T*LN(T)-11.10455E-3*T**2-133574*T**(-1); 1115.00 Y -107304.428+799.982066*T-114.2922467*T*LN(T)+23.733814E-3*T**2-1.2438E-6*T**3 +18245540*T**(-1); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_CA 298.15 -7020.852+142.970155*T-28.2541*T*LN(T)+7.2326E-3*T**2-4.500217E-6*T**3 +60578*T**(-1); 716.00 Y 1640.475+1.999694*T-6.276*T*LN(T)-16.1921E-3*T**2-523000*T**(-1); 1115.00 Y -142331.096+1023.549046*T-143.8726979*T*LN(T)+32.543127E-3*T**2 -1.704079E-6*T**3+25353771*T**(-1); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_CA 298.15 5844.846+62.4838*T-16.3138*T*LN(T)-11.10455E-3*T**2-133574*T**(-1); 500.00 Y 7838.856+18.2979*T-8.9874787*T*LN(T)-22.66537E-3*T**2+3.338303E-6*T**3 -230193*T**(-1); 1115.00 Y -2654.938+188.9223*T-35*T*LN(T); 3000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_CA 298.15 -4455.062+73.494266*T-16.3138*T*LN(T)-11.10455E-3*T**2-133574*T**(-1); 1115.00 Y -106804.428+800.682066*T-114.2922467*T*LN(T)+23.733814E-3*T**2-1.2438E-6*T**3 +18245540*T**(-1); 3000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_CD 298.15 -7083.469+99.506198*T-22.0442408*T*LN(T)-6.273908E-3*T**2-6966*T**(-1); 594.22 Y -20064.971+256.812233*T-45.1611543*T*LN(T)+8.832011E-3*T**2-0.899604E-6*T**3 +1241290*T**(-1); 1500.00 Y -9027.489+148.20548*T-29.7064*T*LN(T); 1600.00 N ! +FUNCTION SGTE_LIQUID_ELEM_CD 298.15 -955.025+89.209282*T-22.0442408*T*LN(T)-6.273908E-3*T**2-6966*T**(-1); 400.00 Y 21716.884-371.046869*T+53.1313898*T*LN(T)-115.159917E-3*T**2+28.899781E-6*T**3 -1271815*T**(-1); 594.22 Y -3252.303+138.251107*T-29.7064*T*LN(T); 1600.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_CD 298.15 -6191.169+98.586198*T-22.0442408*T*LN(T)-6.273908E-3*T**2-6966*T**(-1); 594.22 Y -19172.671+255.892233*T-45.1611543*T*LN(T)+8.832011E-3*T**2-0.899604E-6*T**3 +1241290*T**(-1); 1500.00 Y -8135.189+147.28548*T-29.7064*T*LN(T); 1600.00 N ! +FUNCTION SGTE_TETRAGONAL_A6_ELEM_CD 298.15 -6191.169+98.586198*T-22.0442408*T*LN(T)-6.273908E-3*T**2-6966*T**(-1); 594.22 Y -19172.671+255.892233*T-45.1611543*T*LN(T)+8.832011E-3*T**2-0.899604E-6*T**3 +1241290*T**(-1); 1500.00 Y -8135.189+147.28548*T-29.7064*T*LN(T); 1600.00 N ! +FUNCTION SGTE_RHOMBO_A10_ELEM_CD 298.15 -6283.469+98.886198*T-22.0442408*T*LN(T)-6.273908E-3*T**2-6966*T**(-1); 594.22 Y -19264.971+256.192233*T-45.1611543*T*LN(T)+8.832011E-3*T**2-0.899604E-6*T**3 +1241290*T**(-1); 1500.00 Y -8227.489+147.58548*T-29.7064*T*LN(T); 1600.00 N ! +FUNCTION SGTE_BCT_A5_ELEM_CD 298.15 -2083.469+99.506198*T-22.0442408*T*LN(T)-6.273908E-3*T**2-6966*T**(-1); 594.22 Y -15064.971+256.812233*T-45.1611543*T*LN(T)+8.832011E-3*T**2-0.899604E-6*T**3 +1241290*T**(-1); 1500.00 Y -4027.489+148.20548*T-29.7064*T*LN(T); 1600.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_CE 298.15 -7160.519+84.23022*T-22.3664*T*LN(T)-6.7103E-3*T**2-0.320773E-6*T**3 -18117*T**(-1); 1000.00 Y -79678.506+659.4604*T-101.3224803*T*LN(T)+26.046487E-3*T**2-1.930297E-6*T**3 +11531707*T**(-1); 2000.00 Y -14198.639+190.370192*T-37.6978*T*LN(T); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_CE 298.15 -1354.69-5.21501*T-7.7305867*T*LN(T)-29.098402E-3*T**2+4.784299E-6*T**3 -196303*T**(-1); 1000.00 Y -12101.106+187.449688*T-37.6142*T*LN(T); 1072.00 Y -11950.375+186.333811*T-37.4627992*T*LN(T)-0.057145E-3*T**2+0.002348E-6*T**3 -25897*T**(-1); 4000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_CE 298.15 4117.865-11.423898*T-7.5383948*T*LN(T)-29.36407E-3*T**2+4.827734E-6*T**3 -198834*T**(-1); 1000.00 Y -6730.605+183.023193*T-37.6978*T*LN(T); 4000.00 N ! +FUNCTION SGTE_DHCP_ELEM_CE 298.15 -7283.058+84.66322*T-22.3664*T*LN(T)-6.7103E-3*T**2-0.320773E-6*T**3 -18117*T**(-1); 1000.00 Y -79801.045+659.8934*T-101.3224803*T*LN(T)+26.046487E-3*T**2-1.930297E-6*T**3 +11531707*T**(-1); 2000.00 Y -14321.178+190.803192*T-37.6978*T*LN(T); 4000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_CE 298.15 -6860.519+84.23022*T-22.3664*T*LN(T)-6.7103E-3*T**2-0.320773E-6*T**3 -18117*T**(-1); 1000.00 Y -79378.506+659.4604*T-101.3224803*T*LN(T)+26.046487E-3*T**2-1.930297E-6*T**3 +11531707*T**(-1); 2000.00 Y -13898.639+190.370192*T-37.6978*T*LN(T); 4000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_CO 298.15 310.241+133.36601*T-25.0861*T*LN(T)-2.654739E-3*T**2-0.17348E-6*T**3 +72527*T**(-1); 1768.00 Y -17197.666+253.28374*T-40.5*T*LN(T)+934.88E28*T**(-9); 6000.00 N ! +PARAMETER TC(HCP_A3,ELEM_CO;0) 298.15 1396.00; 6000.00 N ! +PARAMETER BM(HCP_A3,ELEM_CO;0) 298.15 1.35; 6000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_CO 298.15 737.832+132.750762*T-25.0861*T*LN(T)-2.654739E-3*T**2-0.17348E-6*T**3 +72527*T**(-1); 1768.00 Y -16770.075+252.668487*T-40.5*T*LN(T)+934.88E28*T**(-9); 6000.00 N ! +PARAMETER TC(FCC_A1,ELEM_CO;0) 298.15 1396.00; 6000.00 N ! +PARAMETER BM(FCC_A1,ELEM_CO;0) 298.15 1.35; 6000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_CO 298.15 15395.278+124.434078*T-25.0861*T*LN(T)-2.654739E-3*T**2-0.17348E-6*T**3 +72527*T**(-1)-219.801E-23*T**7; 1768.00 Y -846.61+243.599944*T-40.5*T*LN(T); 6000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_CO 298.15 3248.241+132.65221*T-25.0861*T*LN(T)-2.654739E-3*T**2-0.17348E-6*T**3 +72527*T**(-1); 1768.00 Y -14259.666+252.56994*T-40.5*T*LN(T)+934.88E28*T**(-9); 6000.00 N ! +PARAMETER TC(BCC_A2,ELEM_CO;0) 298.15 1450.00; 6000.00 N ! +PARAMETER BM(BCC_A2,ELEM_CO;0) 298.15 1.35; 6000.00 N ! +FUNCTION SGTE_CBCC_A12_ELEM_CO 298.15 4465.241+133.36601*T-25.0861*T*LN(T)-2.654739E-3*T**2-0.17348E-6*T**3 +72527*T**(-1); 1768.00 Y -13042.666+253.28374*T-40.5*T*LN(T)+934.88E28*T**(-9); 6000.00 N ! +FUNCTION SGTE_CUB_A13_ELEM_CO 298.15 3465.241+133.36601*T-25.0861*T*LN(T)-2.654739E-3*T**2-0.17348E-6*T**3 +72527*T**(-1); 1768.00 Y -14042.666+253.28374*T-40.5*T*LN(T)+934.88E28*T**(-9); 6000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_CR 298.15 -8856.94+157.48*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3+139250*T**(-1); 2180.00 Y -34869.344+344.18*T-50*T*LN(T)-2885.26E29*T**(-9); 6000.00 N ! +PARAMETER TC(BCC_A2,ELEM_CR;0) 298.15 -311.50; 6000.00 N ! +PARAMETER BM(BCC_A2,ELEM_CR;0) 298.15 -0.008; 6000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_CR 298.15 15483.015+146.059775*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3 +139250*T**(-1)+237.615E-23*T**7; 2180.00 Y -16459.984+335.616316*T-50*T*LN(T); 6000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_CR 298.15 -1572.94+157.643*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3 +139250*T**(-1); 2180.00 Y -27585.344+344.343*T-50*T*LN(T)-2885.26E29*T**(-9); 6000.00 N ! +PARAMETER TC(FCC_A1,ELEM_CR;0) 298.15 -1109.00; 6000.00 N ! +PARAMETER BM(FCC_A1,ELEM_CR;0) 298.15 -2.46; 6000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_CR 298.15 -4418.94+157.48*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3+139250*T**(-1); 2180.00 Y -30431.344+344.18*T-50*T*LN(T)-2885.26E29*T**(-9); 6000.00 N ! +PARAMETER TC(HCP_A3,ELEM_CR;0) 298.15 -1109.00; 6000.00 N ! +PARAMETER BM(HCP_A3,ELEM_CR;0) 298.15 -2.46; 6000.00 N ! +FUNCTION SGTE_HCP_ZN_ELEM_CR 298.15 -4417.94+157.48*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3+139250*T**(-1); 2180.00 Y -30430.344+344.18*T-50*T*LN(T)-2885.26E29*T**(-9); 6000.00 N ! +FUNCTION SGTE_CUB_A13_ELEM_CR 298.15 7042.06+158.1076*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3 +139250*T**(-1); 2180.00 Y -18970.344+344.8076*T-50*T*LN(T)-2885.26E29*T**(-9); 6000.00 N ! +FUNCTION SGTE_CBCC_A12_ELEM_CR 298.15 2230.06+160.1996*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3 +139250*T**(-1); 2180.00 Y -23782.344+346.8996*T-50*T*LN(T)-2885.26E29*T**(-9); 6000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_CS 200.00 -17373.82+436.899787*T-90.5212584*T*LN(T)+202.9422E-3*T**2-127.907669E-6*T**3 +245245*T**(-1); 301.59 Y -13553.817+218.689955*T-46.7273304*T*LN(T)+20.43269E-3*T**2-4.074846E-6*T**3 +181528*T**(-1)+78.016E20*T**(-9); 2000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_CS 200.00 -15282.679+429.968752*T-90.5212584*T*LN(T)+202.9422E-3*T**2 -127.907669E-6*T**3+245245*T**(-1)-356.867E-20*T**7; 301.59 Y -11454.038+211.728844*T-46.7273304*T*LN(T)+20.43269E-3*T**2-4.074846E-6*T**3 +181528*T**(-1); 2000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_CS 200.00 -16873.82+438.899787*T-90.5212584*T*LN(T)+202.9422E-3*T**2-127.907669E-6*T**3 +245245*T**(-1); 301.59 Y -13053.817+220.689955*T-46.7273304*T*LN(T)+20.43269E-3*T**2-4.074846E-6*T**3 +181528*T**(-1)+78.016E20*T**(-9); 2000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_CS 200.00 -16873.82+438.199787*T-90.5212584*T*LN(T)+202.9422E-3*T**2-127.907669E-6*T**3 +245245*T**(-1); 301.59 Y -13053.817+219.989955*T-46.7273304*T*LN(T)+20.43269E-3*T**2-4.074846E-6*T**3 +181528*T**(-1)+78.016E20*T**(-9); 2000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_CU 298.15 -7770.458+130.485235*T-24.112392*T*LN(T)-2.65684E-3*T**2+0.129223E-6*T**3 +52478*T**(-1); 1357.77 Y -13542.026+183.803828*T-31.38*T*LN(T)+364.167E27*T**(-9); 3200.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_CU 298.15 -3753.458+129.230235*T-24.112392*T*LN(T)-2.65684E-3*T**2+0.129223E-6*T**3 +52478*T**(-1); 1357.77 Y -9525.026+182.548828*T-31.38*T*LN(T)+364.167E27*T**(-9); 3200.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_CU 298.15 -7170.458+130.685235*T-24.112392*T*LN(T)-2.65684E-3*T**2+0.129223E-6*T**3 +52478*T**(-1); 1357.77 Y -12942.026+184.003828*T-31.38*T*LN(T)+364.167E27*T**(-9); 3200.00 N ! +FUNCTION SGTE_HCP_ZN_ELEM_CU 298.15 -7170.458+130.685235*T-24.112392*T*LN(T)-2.65684E-3*T**2+0.129223E-6*T**3 +52478*T**(-1); 1357.77 Y -12942.026+184.003828*T-31.38*T*LN(T)+364.167E27*T**(-9); 3200.00 N ! +FUNCTION SGTE_LIQUID_ELEM_CU 298.15 5194.277+120.973331*T-24.112392*T*LN(T)-2.65684E-3*T**2+0.129223E-6*T**3 +52478*T**(-1)-584.89E-23*T**7; 1357.77 Y -46.545+173.881484*T-31.38*T*LN(T); 3200.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_DY 100 -7937.16586+102.307412*T-26.3917167*T*LN(T) -7.61683657E-4*T**2-5.86914125E-7*T**3+4010.90565*T**(-1); 1000 Y -13733.3280+214.012934*T-43.8283359*T*LN(T)+1.66909801E-2*T**2 -3.49702836E-6*T**3+1.73619874E-2*T**(-1); 1654.15 Y -404681.371+2032.14150*T-272.123952*T*LN(T)+5.78301681E-2*T**2 -2.76169148E-6*T**3+109616238*T**(-1); 3000 N ! +PARAMETER TC(HCP_A3,ELEM_DY;0) 100 179; 3000 N ! +PARAMETER BMAGN(HCP_A3,ELEM_DY;0) 100 3.0; 3000 N ! +FUNCTION SGTE_BCC_A2_ELEM_DY 100 -6428.98566+101.740795819*T -26.3917167*T*LN(T)-7.61683657E-4*T**2-5.86914125E-7*T**3 +4010.90565*T**(-1); 1000 Y 327500.062-2868.04585*T+391.515418*T*LN(T)-2.24042148E-1*T**2 +2.04076075E-5*T**3-48652656.5*T**(-1); 1654.15 Y -33708.7949+291.409631*T-50.208*T*LN(T); 1685.15 Y -40775.4966+330.318068*T-55.2811171*T*LN(T)+1.5254673E-3*T**2 -7.74371160E-8*T**3+1776589.32*T**(-1); 3000 N ! +FUNCTION SGTE_LIQUID_ELEM_DY 100 5259.45264+94.7630477*T-26.3917167*T*LN(T) -7.61683657E-4*T**2-5.86914125E-7*T**3+4010.90565*T**(-1); 1000 Y 300126.971-2519.78614*T+341.302578*T*LN(T)-1.96153225E-1*T**2 +1.76197799E-5*T**3-43071677.5*T**(-1); 1685.15 Y -21864.7344+282.205014*T-49.9151*T*LN(T); 3000 N ! +FUNCTION SGTE_HCP_A3_ELEM_ER 298.15 -8489.136+116.698964*T-28.3846744*T*LN(T)+0.995792E-3*T**2-0.952557E-6*T**3 +9581*T**(-1); 1802.00 Y -445688.206+2233.102116*T-298.1351305*T*LN(T)+65.950553E-3*T**2 -3.041405E-6*T**3+123973199*T**(-1); 3200.00 N ! +FUNCTION SGTE_LIQUID_ELEM_ER 298.15 10892.966+106.457118*T-28.3846744*T*LN(T)+0.995792E-3*T**2-0.952557E-6*T**3 +9581*T**(-1); 500.00 Y 17912.678+0.355564*T-12.0761776*T*LN(T)-14.414687E-3*T**2+1.316517E-6*T**3 -528122*T**(-1); 1802.00 Y 747.131+187.623024*T-38.702*T*LN(T); 3200.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_ER 298.15 -3889.136+114.204611*T-28.3846744*T*LN(T)+0.995792E-3*T**2-0.952557E-6*T**3 +9581*T**(-1); 1802.00 Y -441088.206+2230.607763*T-298.1351305*T*LN(T)+65.950553E-3*T**2 -3.041405E-6*T**3+123973199*T**(-1); 3200.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_EU 298.15 -9864.965+135.836737*T-32.8418896*T*LN(T)+9.31735E-3*T**2-4.006564E-6*T**3 +102717*T**(-1); 1095.00 Y -287423.476+2174.733036*T-309.3571009*T*LN(T)+114.530917E-3*T**2 -8.809866E-6*T**3+48455305*T**(-1); 1900.00 N ! +FUNCTION SGTE_LIQUID_ELEM_EU 298.15 -1482.46+128.661522*T-32.8418896*T*LN(T)+9.31735E-3*T**2-4.006564E-6*T**3 +102717*T**(-1); 400.00 Y 10972.726-103.688201*T+4.3501554*T*LN(T)-36.811218E-3*T**2+5.452934E-6*T**3 -646908*T**(-1); 1095.00 Y -6890.641+175.517247*T-38.11624*T*LN(T); 1900.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_FE 298.15 1225.7+124.134*T-23.5143*T*LN(T)-4.39752E-3*T**2-0.058927E-6*T**3+77359*T**(-1); 1811.00 Y -25383.581+299.31255*T-46*T*LN(T)+2296.03E28*T**(-9); 6000.00 N ! +PARAMETER TC(BCC_A2,ELEM_FE;0) 298.15 1043.00; 6000.00 N ! +PARAMETER BM(BCC_A2,ELEM_FE;0) 298.15 2.22; 6000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_FE 298.15 -236.7+132.416*T-24.6643*T*LN(T)-3.75752E-3*T**2-0.058927E-6*T**3+77359*T**(-1); 1811.00 Y -27097.3963+300.252559*T-46*T*LN(T)+2788.54E28*T**(-9); 6000.00 N ! +PARAMETER TC(FCC_A1,ELEM_FE;0) 298.15 -201.00; 6000.00 N ! +PARAMETER BM(FCC_A1,ELEM_FE;0) 298.15 -2.10; 6000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_FE 298.15 13265.87+117.57557*T-23.5143*T*LN(T)-4.39752E-3*T**2-0.058927E-6*T**3 +77359*T**(-1)-367.516E-23*T**7; 1811.00 Y -10838.83+291.302*T-46*T*LN(T); 6000.00 N ! +FUNCTION SGTE_CBCC_A12_ELEM_FE 298.15 5970.7+124.134*T-23.5143*T*LN(T)-4.39752E-3*T**2-0.058927E-6*T**3+77359*T**(-1); 1811.00 Y -20638.581+299.31255*T-46*T*LN(T)+2296.03E28*T**(-9); 6000.00 N ! +FUNCTION SGTE_CUB_A13_ELEM_FE 298.15 4970.7+124.134*T-23.5143*T*LN(T)-4.39752E-3*T**2-0.058927E-6*T**3+77359*T**(-1); 1811.00 Y -21638.581+299.31255*T-46*T*LN(T)+2296.03E28*T**(-9); 6000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_FE 298.15 -2480.08+136.725*T-24.6643*T*LN(T)-3.75752E-3*T**2-0.058927E-6*T**3 +77359*T**(-1); 1811.00 Y -29340.776+304.561559*T-46*T*LN(T)+2788.54E28*T**(-9); 6000.00 N ! +FUNCTION SGTE_ORTHORHOMBIC_A20_ELEM_FE 298.15 6225.7+124.134*T-23.5143*T*LN(T)-4.39752E-3*T**2-0.058927E-6*T**3+77359*T**(-1); 1811.00 Y -20383.581+299.31255*T-46*T*LN(T)+2296.03E28*T**(-9); 6000.00 N ! +FUNCTION SGTE_TETRAGONAL_U_ELEM_FE 298.15 6225.7+124.134*T-23.5143*T*LN(T)-4.39752E-3*T**2-0.058927E-6*T**3+77359*T**(-1); 1811.00 Y -20383.581+299.31255*T-46*T*LN(T)+2296.03E28*T**(-9); 6000.00 N ! +FUNCTION SGTE_ORTHORHOMBIC_GA_ELEM_GA 200.00 -21312.331+585.263691*T-108.2287832*T*LN(T)+227.155636E-3*T**2 -118.575257E-6*T**3+439954*T**(-1); 302.91 Y -7055.643+132.73019*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 -118332*T**(-1)+164.547E21*T**(-9); 4000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_GA 200.00 -15821.033+567.189696*T-108.2287832*T*LN(T)+227.155636E-3*T**2 -118.575257E-6*T**3+439954*T**(-1)-70.171E-18*T**7; 302.91 Y -1389.188+114.049043*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 -118332*T**(-1); 4000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_GA 200.00 -16812.331+575.763691*T-108.2287832*T*LN(T)+227.155636E-3*T**2 -118.575257E-6*T**3+439954*T**(-1); 302.91 Y -2555.643+123.23019*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 -118332*T**(-1)+164.547E21*T**(-9); 4000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_GA 200.00 -17512.331+575.063691*T-108.2287832*T*LN(T)+227.155636E-3*T**2 -118.575257E-6*T**3+439954*T**(-1); 302.91 Y -3255.643+122.53019*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 -118332*T**(-1)+164.547E21*T**(-9); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_GA 200.00 -16812.331+573.563691*T-108.2287832*T*LN(T)+227.155636E-3*T**2 -118.575257E-6*T**3+439954*T**(-1); 302.91 Y -2555.643+121.03019*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 -118332*T**(-1)+164.547E21*T**(-9); 4000.00 N ! +FUNCTION SGTE_TETRAGONAL_A6_ELEM_GA 200.00 -17812.331+575.263691*T-108.2287832*T*LN(T)+227.155636E-3*T**2 -118.575257E-6*T**3+439954*T**(-1); 302.91 Y -3555.643+122.73019*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 -118332*T**(-1)+164.547E21*T**(-9); 4000.00 N ! +FUNCTION SGTE_BCT_A5_ELEM_GA 200.00 -17466.331+575.463691*T-108.2287832*T*LN(T)+227.155636E-3*T**2 -118.575257E-6*T**3+439954*T**(-1); 302.91 Y -3209.643+122.93019*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 -118332*T**(-1)+164.547E21*T**(-9); 4000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_GD 200 -6834.58550+97.131010*T-24.7214131*T*LN(T) -2.85240521E-3*T**2-3.14674076E-7*T**3-8665.73348*T**(-1); 1000 Y -6483.25362+95.6919924*T-24.6598297*T*LN(T)-1.85225011E-3*T**2 -6.61211607E-7*T**3; 1508.15 Y -123124.992+699.125537*T-101.800197*T*LN(T)+1.50644246E-2*T**2 -6.39165948E-7*T**3+29356890.3*T**(-1); 3600 N ! +PARAMETER TC(HCP_A3,ELEM_GD;0) 200 293.4; 3600 N ! +PARAMETER BMAGN(HCP_A3,ELEM_GD;0) 200 3.0; 3600 N ! +FUNCTION SGTE_BCC_A2_ELEM_GD 100 -3600.77684+95.01916415*T-24.7214131*T*LN(T) -2.85240521E-3*T**2-3.14674076E-7*T**3-8665.73348*T**(-1); 1000 Y 152792.743-1349.58873*T+180.097094*T*LN(T)-0.119550229*T**2 +1.17915728E-5*T**3-22038836*T**(-1); 1508.15 Y -15783.7618+202.222057*T-38.9604250*T*LN(T); 1586.15 Y -19850.5562+224.817909*T-41.9043330*T*LN(T)+8.58222759E-4*T**2 -3.77570269E-8*T**3+995428.573*T**(-1); 3600 N ! +FUNCTION SGTE_LIQUID_ELEM_GD 100 6225.4407+88.80921026*T-24.7214131*T*LN(T) -2.85240521E-3*T**2-3.14674076E-7*T**3-8665.73348*T**(-1); 1000 Y 146262.037-1208.70685*T+159.352082*T*LN(T)-0.108247135*T**2 +1.06945505E-5*T**3-19678357*T**(-1); 1508.15 Y -5397.31400+192.336215*T-38.5075000*T*LN(T); 3600 N ! +FUNCTION SGTE_FCC_A1_ELEM_GD 200 -6334.58550+97.131010*T-24.7214131*T*LN(T) -2.85240521E-3*T**2-3.14674076E-7*T**3-8665.73348*T**(-1); 1000 Y -5983.25362+95.6919924*T-24.6598297*T*LN(T)-1.85225011E-3*T**2 -6.61211607E-7*T**3; 1508.15 Y -122624.992+699.125537*T-101.800197*T*LN(T)+1.50644246E-2*T**2 -6.39165948E-7*T**3+29356890.3*T**(-1); 3600 N ! +FUNCTION SGTE_DIAMOND_A4_ELEM_GE 298.15 -9486.153+165.635573*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 +163298*T**(-1); 900.00 Y -5689.239+102.86087*T-19.8536239*T*LN(T)-3.672527E-3*T**2; 1211.40 Y -9548.204+156.708024*T-27.6144*T*LN(T)-859.809E26*T**(-9); 3200.00 N ! +FUNCTION SGTE_LIQUID_ELEM_GE 298.15 27655.337+134.94853*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 +163298*T**(-1)+856.632E-23*T**7; 900.00 Y 31452.25+72.173826*T-19.8536239*T*LN(T)-3.672527E-3*T**2+856.632E-23*T**7; 1211.40 Y 27243.473+126.324186*T-27.6144*T*LN(T); 3200.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_GE 298.15 26513.847+143.335573*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 +163298*T**(-1); 900.00 Y 30310.761+80.56087*T-19.8536239*T*LN(T)-3.672527E-3*T**2; 1211.40 Y 26451.796+134.408024*T-27.6144*T*LN(T)-859.809E26*T**(-9); 3200.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_GE 298.15 24613.847+142.135573*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 +163298*T**(-1); 900.00 Y 28410.761+79.36087*T-19.8536239*T*LN(T)-3.672527E-3*T**2; 1211.40 Y 24551.796+133.208024*T-27.6144*T*LN(T)-859.809E26*T**(-9); 3200.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_GE 298.15 25513.847+144.135573*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 +163298*T**(-1); 900.00 Y 29310.761+81.36087*T-19.8536239*T*LN(T)-3.672527E-3*T**2; 1211.40 Y 25451.796+135.208024*T-27.6144*T*LN(T)-859.809E26*T**(-9); 3200.00 N ! +PARAMETER G(BCT_A5,ELEM_GE;0) 298.15 19313.847+149.135573*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 +163298*T**(-1); 900.00 Y 23110.761+86.36087*T-19.8536239*T*LN(T)-3.672527E-3*T**2; 1211.40 Y 19251.796+140.208024*T-27.6144*T*LN(T)-859.809E26*T**(-9); 3000.00 N ! +FUNCTION SGTE_RHOMBOHEDRAL_A7_ELEM_GE 298.15 20313.847+149.135573*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 +163298*T**(-1); 900.00 Y 24110.761+86.36087*T-19.8536239*T*LN(T)-3.672527E-3*T**2; 1211.40 Y 20251.796+140.208024*T-27.6144*T*LN(T)-859.809E26*T**(-9); 3000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_HF 298.15 -6987.297+110.744026*T-22.7075*T*LN(T)-4.146145E-3*T**2-0.000477E-6*T**3 -22590*T**(-1); 2506.00 Y -1446776.329+6193.609991*T-787.5363829*T*LN(T)+173.5215E-3*T**2 -7.575759E-6*T**3+501742495*T**(-1); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_HF 298.15 5370.703+103.836026*T-22.8995*T*LN(T)-4.206605E-3*T**2+0.871923E-6*T**3 -22590*T**(-1)-0.1446E-9*T**4; 2506.00 Y 1912456.771-8624.20573*T+1087.6141247*T*LN(T)-286.857065E-3*T**2 +13.427829E-6*T**3-610085091*T**(-1); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_HF 298.15 20414.959+99.790933*T-22.7075*T*LN(T)-4.146145E-3*T**2-0.000477E-6*T**3 -22590*T**(-1); 1000.00 Y 49731.499-149.91739*T+12.116812*T*LN(T)-21.262021E-3*T**2+1.376466E-6*T**3 -4449699*T**(-1); 2506.00 Y -4247.217+265.470523*T-44*T*LN(T); 3000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_HF 298.15 3012.703+108.544026*T-22.7075*T*LN(T)-4.146145E-3*T**2-0.000477E-6*T**3 -22590*T**(-1); 2506.00 Y -1436776.329+6191.409991*T-787.5363829*T*LN(T)+173.5215E-3*T**2 -7.575759E-6*T**3+501742495*T**(-1); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_HG 200.00 82356.855-3348.194658*T+618.1933082*T*LN(T)-2028.2337E-3*T**2 +1183.982129E-6*T**3-2366612*T**(-1); 234.32 Y -8961.207+135.232291*T-32.257*T*LN(T)+9.7977E-3*T**2-3.20695E-6*T**3 +6670*T**(-1); 400.00 Y -7970.627+112.33345*T-28.414*T*LN(T)+3.18535E-3*T**2-1.077802E-6*T**3 -41095*T**(-1); 700.00 Y -7161.338+90.797305*T-24.87*T*LN(T)-1.66775E-3*T**2+0.008737E-6*T**3 -27495*T**(-1); 2000.00 N ! +FUNCTION SGTE_RHOMBO_A10_ELEM_HG 200.00 -10668.401+123.274598*T-28.847*T*LN(T)+16.99705E-3*T**2-24.555667E-6*T**3 +13330*T**(-1); 234.32 Y -11425.394+135.928158*T-30.2091*T*LN(T)+1.07555E-3*T**2-0.228298E-6*T**3 +35545*T**(-1); 2000.00 N ! +FUNCTION SGTE_TETRAGONAL_A6_ELEM_HG 200.00 -10459.721+125.04019*T-28.847*T*LN(T) +16.99705E-3*T**2-24.555667E-6*T**3+13330*T**(-1); 234.32 Y -11216.714+137.69375*T-30.2091*T*LN(T)+1.07555E-3*T**2-0.228298E-6*T**3 +35545*T**(-1); 2000 N ! +FUNCTION SGTE_HCP_A3_ELEM_HG 200.00 -10468.401+123.974598*T-28.847*T*LN(T) +16.99705E-3*T**2-24.555667E-6*T**3+13330*T**(-1); 234.32 Y -11225.394+136.628158*T-30.2091*T*LN(T)+1.07555E-3*T**2-0.228298E-6*T**3 +35545*T**(-1); 2000 N ! +FUNCTION SGTE_HCP_A3_ELEM_HO 298.15 -7612.429+86.593171*T-23.4879*T*LN(T)-8.27315E-3*T**2+2.375467E-6*T**3; 600.00 Y -10917.688+182.475691*T-39.6932*T*LN(T)+18.20065E-3*T**2-4.829733E-6*T**3; 900.00 Y 46646.188-421.474473*T+48.0595*T*LN(T)-42.4634E-3*T**2+3.233133E-6*T**3 -7185900*T**(-1); 1200.00 Y 27786.061-156.162846*T+8.28608*T*LN(T)-10.82725E-3*T**2-1.112352E-6*T**3 -6183850*T**(-1); 1703.00 Y -825364.662+4248.379056*T-558.9506818*T*LN(T)+139.111904E-3*T**2 -6.824652E-6*T**3+219952973*T**(-1); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_HO 298.15 -3773.06+84.546902*T-23.4879*T*LN(T)-8.27315E-3*T**2+2.375467E-6*T**3; 600.00 Y -7078.318+180.429422*T-39.6932*T*LN(T)+18.20065E-3*T**2-4.829733E-6*T**3; 900.00 Y 50485.557-423.520743*T+48.0595*T*LN(T)-42.4634E-3*T**2+3.233133E-6*T**3 -7185900*T**(-1); 1000.00 Y 185620.196-1635.726622*T+218.9372486*T*LN(T)-135.16576E-3*T**2 +12.168911E-6*T**3-26729747*T**(-1); 1703.00 Y -28759.761+272.961035*T-48.116*T*LN(T); 1745.00 Y -152646.008+939.778244*T-134.7930638*T*LN(T)+25.544089E-3*T**2 -1.287517E-6*T**3+32050889*T**(-1); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_HO 298.15 9770.9926+76.600977*T-23.4879*T*LN(T)-8.27315E-3*T**2+2.375467E-6*T**3; 600.00 Y 6465.7336+172.483497*T-39.6932*T*LN(T)+18.20065E-3*T**2-4.829733E-6*T**3; 900.00 Y 64029.2496-431.466667*T+48.0595*T*LN(T)-42.4634E-3*T**2+3.233133E-6*T**3 -7185900*T**(-1); 1000.00 Y 124827.5326-994.683024*T+127.9577778*T*LN(T)-88.196514E-3*T**2+8.008222E-6*T**3 -15727191*T**(-1); 1703.00 Y -9688.5314+230.793918*T-43.932*T*LN(T); 3000.00 N ! +FUNCTION SGTE_TETRAGONAL_A6_ELEM_IN 298.15 -6978.89+92.338115*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 -22906*T**(-1); 429.75 Y -7033.516+124.476588*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 -211708*T**(-1)+353.116E20*T**(-9); 3800.00 N ! +FUNCTION SGTE_LIQUID_ELEM_IN 298.15 -3696.798+84.701255*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 -22906*T**(-1)-559.058E-22*T**7; 429.75 Y -3749.81+116.835784*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 -211708*T**(-1); 3800.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_IN 298.15 -6445.89+91.651315*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 -22906*T**(-1); 429.75 Y -6500.516+123.789788*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 -211708*T**(-1)+353.116E20*T**(-9); 3800.00 N ! +FUNCTION SGTE_HCP_ZN_ELEM_IN 298.15 -6445.89+91.651315*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 -22906*T**(-1); 429.75 Y -6500.516+123.789788*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 -211708*T**(-1)+353.116E20*T**(-9); 3800.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_IN 298.15 -6816.829+92.338115*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 -22906*T**(-1); 429.75 Y -6871.455+124.476588*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 -211708*T**(-1)+353.116E20*T**(-9); 3800.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_IN 298.15 -6178.89+91.538115*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 -22906*T**(-1); 429.75 Y -6233.516+123.676588*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 -211708*T**(-1)+353.116E20*T**(-9); 3800.00 N ! +FUNCTION SGTE_TET_ALPHA1_ELEM_IN 298.15 -6978.89+92.648115*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 -22906*T**(-1); 429.75 Y -7033.516+124.786588*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 -211708*T**(-1)+353.116E20*T**(-9); 3800.00 N ! +FUNCTION SGTE_BCT_A5_ELEM_IN 298.15 -1938.02+88.998425*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 -22906*T**(-1); 429.75 Y -1992.646+121.136898*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 -211708*T**(-1)+353.116E20*T**(-9); 3000.00 N ! +FUNCTION SGTE_RHOMBOHEDRAL_A7_ELEM_IN 298.15 -2794.89+92.338115*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 -22906*T**(-1); 429.75 Y -2849.516+124.476588*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 -211708*T**(-1)+353.116E20*T**(-9); 3000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_IR 298.15 -6936.288+118.780119*T-22.7944*T*LN(T)-3.091976E-3*T**2-20083*T**(-1); 1215.00 Y -8123.73+140.066697*T-26.085*T*LN(T)-0.47969E-6*T**3; 2719.00 Y 290529.037-1258.352965*T+152.4988737*T*LN(T)-47.176402E-3*T**2 +1.844977E-6*T**3-92987250*T**(-1); 4000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_IR 298.15 16518.956+112.46806*T-22.7944*T*LN(T)-3.091976E-3*T**2-20083*T**(-1); 1000.00 Y 102217.789-587.632815*T+73.9517579*T*LN(T)-46.38802E-3*T**2+2.761831E-6*T**3 -13382612*T**(-1); 2719.00 Y -38347.217+411.234043*T-59.418*T*LN(T); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_IR 298.15 25063.712+111.880119*T-22.7944*T*LN(T)-3.091976E-3*T**2-20083*T**(-1); 1215.00 Y 23876.27+133.166697*T-26.085*T*LN(T)-0.47969E-6*T**3; 2719.00 Y 322529.037-1265.252965*T+152.4988737*T*LN(T)-47.176402E-3*T**2 +1.844977E-6*T**3-92987250*T**(-1); 4000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_IR 298.15 -2936.288+118.180119*T-22.7944*T*LN(T)-3.091976E-3*T**2-20083*T**(-1); 1215.00 Y -4123.73+139.466697*T-26.085*T*LN(T)-0.47969E-6*T**3; 2719.00 Y 294529.037-1258.952965*T+152.4988737*T*LN(T)-47.176402E-3*T**2 +1.844977E-6*T**3-92987250*T**(-1); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_K 200.00 -16112.929+389.624197*T-77.0571464*T*LN(T)+146.211135E-3*T**2 -84.949147E-6*T**3+243385*T**(-1); 336.53 Y -11122.441+192.586544*T-39.2885968*T*LN(T)+12.167386E-3*T**2-2.64387E-6*T**3 +43251*T**(-1)+119.223E20*T**(-9); 2200.00 N ! +FUNCTION SGTE_LIQUID_ELEM_K 200.00 -13794.833+382.737338*T-77.0571464*T*LN(T)+146.211135E-3*T**2 -84.949147E-6*T**3+243385*T**(-1)-94.4E-20*T**7; 336.53 Y -8799.422+185.684327*T-39.2885968*T*LN(T)+12.167386E-3*T**2-2.64387E-6*T**3 +43251*T**(-1); 2200.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_K 200.00 -16062.929+391.624197*T-77.0571464*T*LN(T)+146.211135E-3*T**2 -84.949147E-6*T**3+243385*T**(-1); 336.53 Y -11072.441+194.586544*T-39.2885968*T*LN(T)+12.167386E-3*T**2-2.64387E-6*T**3 +43251*T**(-1)+119.223E20*T**(-9); 2200.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_K 200.00 -16062.929+390.924197*T-77.0571464*T*LN(T)+146.211135E-3*T**2 -84.949147E-6*T**3+243385*T**(-1); 336.53 Y -11072.441+193.886544*T-39.2885968*T*LN(T)+12.167386E-3*T**2-2.64387E-6*T**3 +43251*T**(-1)+119.223E20*T**(-9); 2200.00 N ! +FUNCTION SGTE_DHCP_ELEM_LA 298.15 -7968.403+120.284604*T-26.34*T*LN(T)-1.295165E-3*T**2; 550.00 Y -3381.413+59.06113*T-17.1659411*T*LN(T)-8.371705E-3*T**2+0.68932E-6*T**3 -399448*T**(-1); 2000.00 Y -15608.882+181.390071*T-34.3088*T*LN(T); 4000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_LA 298.15 -6109.797+89.878761*T-21.7919*T*LN(T)-4.045175E-3*T**2-0.525865E-6*T**3; 1134.00 Y -124598.976+955.878375*T-139.3467411*T*LN(T)+42.032405E-3*T**2 -3.066199E-6*T**3+20994153*T**(-1); 2000.00 Y -12599.386+178.54399*T-34.3088*T*LN(T); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_LA 298.15 -3952.161+88.072353*T-21.7919*T*LN(T)-4.045175E-3*T**2-0.525865E-6*T**3; 800.00 Y 321682.673-3565.082518*T+513.4407077*T*LN(T)-387.295093E-3*T**2 +49.547989E-6*T**3-36581228*T**(-1); 1134.00 Y -16377.894+218.492988*T-39.5388*T*LN(T); 1193.00 Y -136609.91+1123.343974*T-163.4130738*T*LN(T)+53.968535E-3*T**2 -4.056395E-6*T**3+21167204*T**(-1); 2000.00 Y -8205.988+174.836315*T-34.3088*T*LN(T); 4000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_LA 298.15 5332.653+18.23012*T-11.0188191*T*LN(T)-20.171603E-3*T**2+2.93775E-6*T**3 -133541*T**(-1); 1134.00 Y -3942.004+171.018431*T-34.3088*T*LN(T); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_LI 200.00 -10583.817+217.637482*T-38.940488*T*LN(T)+35.466931E-3*T**2-19.869816E-6*T**3 +159994*T**(-1); 453.60 Y -559579.123+10547.879893*T-1702.8886493*T*LN(T)+2258.329444E-3*T**2 -571.066077E-6*T**3+33885874*T**(-1); 500.00 Y -9062.994+179.278285*T-31.2283718*T*LN(T)+2.633221E-3*T**2-0.438058E-6*T**3 -102387*T**(-1); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_LI 200.00 -7883.612+211.841861*T-38.940488*T*LN(T)+35.466931E-3*T**2-19.869816E-6*T**3 +159994*T**(-1); 250.00 Y 12015.027-362.187078*T+61.6104424*T*LN(T)-182.426463E-3*T**2+63.955671E-6*T**3 -559968*T**(-1); 453.60 Y -6057.31+172.652183*T-31.2283718*T*LN(T)+2.633221E-3*T**2-0.438058E-6*T**3 -102387*T**(-1); 3000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_LI 200.00 -10691.817+218.937482*T-38.940488*T*LN(T)+35.466931E-3*T**2-19.869816E-6*T**3 +159994*T**(-1); 453.60 Y -559687.123+10549.179893*T-1702.8886493*T*LN(T)+2258.329444E-3*T**2 -571.066077E-6*T**3+33885874*T**(-1); 500.00 Y -9170.994+180.578285*T-31.2283718*T*LN(T)+2.633221E-3*T**2-0.438058E-6*T**3 -102387*T**(-1); 3000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_LI 200.00 -10737.817+219.637482*T-38.940488*T*LN(T)+35.466931E-3*T**2-19.869816E-6*T**3 +159994*T**(-1); 453.60 Y -559733.123+10549.879893*T-1702.8886493*T*LN(T)+2258.329444E-3*T**2 -571.066077E-6*T**3+33885874*T**(-1); 500.00 Y -9216.994+181.278285*T-31.2283718*T*LN(T)+2.633221E-3*T**2-0.438058E-6*T**3 -102387*T**(-1); 3000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_LU 298.15 -8788.329+146.536283*T-29.812*T*LN(T)+5.19165E-3*T**2-1.790717E-6*T**3 +39723*T**(-1); 700.00 Y -9043.057+142.327643*T-29.0095*T*LN(T)+3.71416E-3*T**2-1.50147E-6*T**3 +141549*T**(-1); 1700.00 Y 6940.092-46.91844*T-1.83986*T*LN(T)-11.9001E-3*T**2; 1936.00 Y -404023.691+1829.379425*T-239.019502*T*LN(T)+41.800748E-3*T**2 -1.661174E-6*T**3+124825465*T**(-1); 3700.00 N ! +FUNCTION SGTE_LIQUID_ELEM_LU 298.15 3983.791+141.5374*T-29.812*T*LN(T)+5.19165E-3*T**2-1.790717E-6*T**3 +39723*T**(-1); 600.00 Y 30389.863-198.378793*T+20.9392663*T*LN(T)-34.238743E-3*T**2+2.890636E-6*T**3 -2398650*T**(-1); 1936.00 Y -18994.687+292.091104*T-47.9068*T*LN(T); 3700.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_MG 298.15 -8367.34+143.675547*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 +78950*T**(-1); 923.00 Y -14130.185+204.716215*T-34.3088*T*LN(T)+1038.192E25*T**(-9); 3000.00 N ! +FUNCTION SGTE_HCP_ZN_ELEM_MG 298.15 -8267.34+143.675547*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 +78950*T**(-1); 923.00 Y -14030.185+204.716215*T-34.3088*T*LN(T)+1038.192E25*T**(-9); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_MG 298.15 -165.097+134.838617*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 +78950*T**(-1)-80.176E-21*T**7; 923.00 Y -5439.869+195.324057*T-34.3088*T*LN(T); 3000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_MG 298.15 -5767.34+142.775547*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 +78950*T**(-1); 923.00 Y -11530.185+203.816215*T-34.3088*T*LN(T)+1038.192E25*T**(-9); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_MG 298.15 -5267.34+141.575547*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 +78950*T**(-1); 923.00 Y -11030.185+202.616215*T-34.3088*T*LN(T)+1038.192E25*T**(-9); 3000.00 N ! +FUNCTION SGTE_CBCC_A12_ELEM_MG 298.15 -3764.94+140.664547*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 +78950*T**(-1); 923.00 Y -9527.785+201.705215*T-34.3088*T*LN(T)+1038.192E25*T**(-9); 3000.00 N ! +FUNCTION SGTE_CUB_A13_ELEM_MG 298.15 -3367.34+140.675547*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 +78950*T**(-1); 923.00 Y -9130.185+201.716215*T-34.3088*T*LN(T)+1038.192E25*T**(-9); 3000.00 N ! +FUNCTION SGTE_CBCC_A12_ELEM_MN 298.15 -8115.28+130.059*T-23.4582*T*LN(T)-7.34768E-3*T**2+69827*T**(-1); 1519.00 Y -28733.41+312.2648*T-48*T*LN(T)+1656.847E27*T**(-9); 2000.00 N ! +PARAMETER TC(CBCC_A12,ELEM_MN;0) 298.15 -285.00; 2000.00 N ! +PARAMETER BM(CBCC_A12,ELEM_MN;0) 298.15 -0.66; 2000.00 N ! +FUNCTION SGTE_CUB_A13_ELEM_MN 298.15 -5800.4+135.995*T-24.8785*T*LN(T)-5.83359E-3*T**2+70269*T**(-1); 1519.00 Y -28290.76+311.2933*T-48*T*LN(T)+396.757E28*T**(-9); 2000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_MN 298.15 -3439.3+131.884*T-24.5177*T*LN(T)-6E-3*T**2+69600*T**(-1); 1519.00 Y -26070.1+309.6664*T-48*T*LN(T)+386.196E28*T**(-9); 2000.00 N ! +PARAMETER TC(FCC_A1,ELEM_MN;0) 298.15 -1620.00; 2000.00 N ! +PARAMETER BM(FCC_A1,ELEM_MN;0) 298.15 -1.86; 2000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_MN 298.15 -3235.3+127.85*T-23.7*T*LN(T)-7.44271E-3*T**2+60000*T**(-1); 1519.00 Y -23188.83+307.7043*T-48*T*LN(T)+1265.152E27*T**(-9); 2000.00 N ! +PARAMETER TC(BCC_A2,ELEM_MN;0) 298.15 -580.00; 2000.00 N ! +PARAMETER BM(BCC_A2,ELEM_MN;0) 298.15 -0.27; 2000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_MN 298.15 9744.63+117.4382*T-23.4582*T*LN(T)-7.34768E-3*T**2+69827*T**(-1) -441.929E-23*T**7; 1519.00 Y -9993.9+299.036*T-48*T*LN(T); 2000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_MN 298.15 -4439.3+133.007*T-24.5177*T*LN(T)-6E-3*T**2+69600*T**(-1); 1519.00 Y -27070.1+310.7894*T-48*T*LN(T)+386.196E28*T**(-9); 2000.00 N ! +PARAMETER TC(HCP_A3,ELEM_MN;0) 298.15 -1620.00; 2000.00 N ! +PARAMETER BM(HCP_A3,ELEM_MN;0) 298.15 -1.86; 2000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_MO 298.15 -7746.302+131.9197*T-23.56414*T*LN(T)-3.443396E-3*T**2+0.566283E-6*T**3 +65812*T**(-1)-0.130927E-9*T**4; 2896.00 Y -30556.41+283.559746*T-42.63829*T*LN(T)-4849.315E30*T**(-9); 5000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_MO 298.15 34085.045+117.224788*T-23.56414*T*LN(T)-3.443396E-3*T**2+0.566283E-6*T**3 +65812*T**(-1)-0.130927E-9*T**4+424.519E-24*T**7; 2896.00 Y 3538.963+271.6697*T-42.63829*T*LN(T); 5000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_MO 298.15 7453.698+132.5497*T-23.56414*T*LN(T)-3.443396E-3*T**2+0.566283E-6*T**3 +65812*T**(-1)-0.130927E-9*T**4; 2896.00 Y -15356.41+284.189746*T-42.63829*T*LN(T)-4849.315E30*T**(-9); 5000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_MO 298.15 3803.698+131.9197*T-23.56414*T*LN(T)-3.443396E-3*T**2+0.566283E-6*T**3 +65812*T**(-1)-0.130927E-9*T**4; 2896.00 Y -19006.41+283.559746*T-42.63829*T*LN(T)-4849.315E30*T**(-9); 5000.00 N ! FUNCTION GHSERNN 298.15 -3750.675-9.45425*T-12.7819*T*LN(T)-1.76686E-3*T**2+0.002681E-6*T**3 -32374*T**(-1); 950.00 Y -7358.85+17.2003*T-16.3699*T*LN(T)-0.65107E-3*T**2+0.030097E-6*T**3 +563070*T**(-1); 3350.00 Y -16392.8+50.26*T-20.4695*T*LN(T)+0.239754E-3*T**2-0.008333E-6*T**3 +4596375*T**(-1); 6000.00 N ! +PARAMETER G(GAS,N2;0) 298.15 2*GHSERNN; 6000 N ! +FUNCTION SGTE_LIQUID_ELEM_N 298.15 26199.325+49.56575*T-12.7819*T*LN(T)-1.76686E-3*T**2+0.002681E-6*T**3 -32374*T**(-1); 950.00 Y 22591.15+76.2203*T-16.3699*T*LN(T)-0.65107E-3*T**2+0.030097E-6*T**3 +563070*T**(-1); 3350.00 Y 13557.2+109.28*T-20.4695*T*LN(T)+0.239754E-3*T**2-0.008333E-6*T**3 +4596375*T**(-1); 6000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_NA 200.00 -11989.434+260.548732*T-51.0393608*T*LN(T)+72.306633E-3*T**2 -43.638283E-6*T**3+132154*T**(-1); 370.87 Y -11009.884+199.619999*T-38.1198801*T*LN(T)+9.745854E-3*T**2-1.70664E-6*T**3 +34342*T**(-1)+165.071E21*T**(-9); 2300.00 N ! +FUNCTION SGTE_LIQUID_ELEM_NA 200.00 -9408.414+253.596552*T-51.0393608*T*LN(T)+72.306633E-3*T**2-43.638283E-6*T**3 +132154*T**(-1)-276.132E-20*T**7; 370.87 Y -8400.44+192.587343*T-38.1198801*T*LN(T)+9.745854E-3*T**2-1.70664E-6*T**3 +34342*T**(-1); 2300.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_NA 200.00 -12093.434+262.548732*T-51.0393608*T*LN(T)+72.306633E-3*T**2 -43.638283E-6*T**3+132154*T**(-1); 370.87 Y -11113.884+201.619999*T-38.1198801*T*LN(T)+9.745854E-3*T**2-1.70664E-6*T**3 +34342*T**(-1)+165.071E21*T**(-9); 2300.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_NA 200.00 -12039.434+261.848732*T-51.0393608*T*LN(T)+72.306633E-3*T**2 -43.638283E-6*T**3+132154*T**(-1); 370.87 Y -11059.884+200.919999*T-38.1198801*T*LN(T)+9.745854E-3*T**2-1.70664E-6*T**3 +34342*T**(-1)+165.071E21*T**(-9); 2300.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_NB 298.15 -8519.353+142.045475*T-26.4711*T*LN(T)+0.203475E-3*T**2-0.35012E-6*T**3 +93399*T**(-1); 2750.00 Y -37669.3+271.720843*T-41.77*T*LN(T)+1528.238E29*T**(-9); 6000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_NB 298.15 21262.202+131.229057*T-26.4711*T*LN(T)+0.203475E-3*T**2-0.35012E-6*T**3 +93399*T**(-1)-306.098E-25*T**7; 2750.00 Y -7499.398+260.756148*T-41.77*T*LN(T); 6000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_NB 298.15 4980.647+143.745475*T-26.4711*T*LN(T)+0.203475E-3*T**2-0.35012E-6*T**3 +93399*T**(-1); 2750.00 Y -24169.3+273.420843*T-41.77*T*LN(T)+1528.238E29*T**(-9); 6000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_NB 298.15 1480.647+144.445475*T-26.4711*T*LN(T)+0.203475E-3*T**2-0.35012E-6*T**3 +93399*T**(-1); 2750.00 Y -27669.3+274.120843*T-41.77*T*LN(T)+1528.238E29*T**(-9); 6000.00 N ! +FUNCTION SGTE_DHCP_ELEM_ND 298.15 -8402.93+111.10239*T-27.0858*T*LN(T)+0.556125E-3*T**2-2.6923E-6*T**3 +34887*T**(-1); 900.00 Y -6984.083+83.662617*T-22.7536*T*LN(T)-4.20402E-3*T**2-1.802E-6*T**3; 1128.00 Y -225610.846+1673.040749*T-238.1828733*T*LN(T)+78.615997E-3*T**2 -6.048207E-6*T**3+38810350*T**(-1); 1799.00 Y -25742.331+276.257088*T-48.7854*T*LN(T); 1800.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_ND 298.15 -6965.635+110.556109*T-27.0858*T*LN(T)+0.556125E-3*T**2-2.6923E-6*T**3 +34887*T**(-1); 400.00 Y 7312.2-153.033976*T+14.9956777*T*LN(T)-50.479E-3*T**2+7.287217E-6*T**3 -831810*T**(-1); 1128.00 Y -18030.266+239.677322*T-44.5596*T*LN(T); 1289.00 Y 334513.017-2363.919899*T+311.409193*T*LN(T)-156.030778E-3*T**2 +12.408421E-6*T**3-64319604*T**(-1); 1800.00 N ! +FUNCTION SGTE_LIQUID_ELEM_ND 298.15 -3351.187+109.517314*T-27.0858*T*LN(T)+0.556125E-3*T**2-2.6923E-6*T**3 +34887*T**(-1); 300.00 Y 5350.01-86.593963*T+5.357301*T*LN(T)-46.955463E-3*T**2+6.860782E-6*T**3 -374380*T**(-1); 1128.00 Y -16335.232+268.625903*T-48.7854*T*LN(T); 1800.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_ND 298.15 -7902.93+111.10239*T-27.0858*T*LN(T)+0.556125E-3*T**2-2.6923E-6*T**3 +34887*T**(-1); 900.00 Y -6484.083+83.662617*T-22.7536*T*LN(T)-4.20402E-3*T**2-1.802E-6*T**3; 1128.00 Y -225110.846+1673.04075*T-238.182873*T*LN(T)+78.615997E-3*T**2-6.048207E-6*T**3 +38810350*T**(-1); 1799.00 Y -25242.331+276.257088*T-48.7854*T*LN(T); 1800.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_ND 298.15 -6902.93+110.6866645*T-27.0858*T*LN(T)+0.556125E-3*T**2-2.6923E-6*T**3 +34887*T**(-1); 900.00 Y -5484.083+83.2468915*T-22.7536*T*LN(T)-4.20402E-3*T**2-1.802E-6*T**3; 1128.00 Y -224110.846+1672.625024*T-238.1828733*T*LN(T)+78.615997E-3*T**2 -6.048207E-6*T**3+38810350*T**(-1); 1799.00 Y -24242.331+275.8413625*T-48.7854*T*LN(T); 1800.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_NI 298.15 -5179.159+117.854*T-22.096*T*LN(T)-4.8407E-3*T**2; 1728.00 Y -27840.655+279.135*T-43.1*T*LN(T)+1127.54E28*T**(-9); 3000.00 N ! +PARAMETER TC(FCC_A1,ELEM_NI;0) 298.15 633.00; 3000.00 N ! +PARAMETER BM(FCC_A1,ELEM_NI;0) 298.15 0.52; 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_NI 298.15 11235.527+108.457*T-22.096*T*LN(T)-4.8407E-3*T**2-382.318E-23*T**7; 1728.00 Y -9549.775+268.598*T-43.1*T*LN(T); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_NI 298.15 3535.925+114.298*T-22.096*T*LN(T)-4.8407E-3*T**2; 1728.00 Y -19125.571+275.579*T-43.1*T*LN(T)+1127.54E28*T**(-9); 3000.00 N ! +PARAMETER TC(BCC_A2,ELEM_NI;0) 298.15 575.00; 3000.00 N ! +PARAMETER BM(BCC_A2,ELEM_NI;0) 298.15 0.85; 3000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_NI 298.15 -4133.159+119.109*T-22.096*T*LN(T)-4.8407E-3*T**2; 1728.00 Y -26794.655+280.39*T-43.1*T*LN(T)+1127.54E28*T**(-9); 3000.00 N ! +FUNCTION SGTE_CUB_A13_ELEM_NI 298.15 -3087.159+117.854*T-22.096*T*LN(T)-4.8407E-3*T**2; 1728.00 Y -25748.655+279.135*T-43.1*T*LN(T)+1127.54E28*T**(-9); 3000.00 N ! +FUNCTION SGTE_CBCC_A12_ELEM_NI 298.15 -1623.159+117.854*T-22.096*T*LN(T)-4.8407E-3*T**2; 1728.00 Y -24284.655+279.135*T-43.1*T*LN(T)+1127.54E28*T**(-9); 3000.00 N ! +FUNCTION SGTE_ORTHO_AC_ELEM_NP 298.15 241.888-57.531347*T+4.0543*T*LN(T)-41.27725E-3*T**2-402857*T**(-1); 553.00 Y -57015.112+664.27337*T-102.523*T*LN(T)+28.4592E-3*T**2-2.483917E-6*T**3 +4796910*T**(-1); 1799.00 Y -12092.736+255.780866*T-45.3964*T*LN(T); 4000.00 N ! +FUNCTION SGTE_TETRAG_AD_ELEM_NP 298.15 -10157.32+183.829213*T-34.11*T*LN(T)-16.1186E-3*T**2+4.98465E-6*T**3 +532825*T**(-1); 555.00 Y -7873.688+207.01896*T-39.33*T*LN(T); 856.00 Y 19027.98-46.64846*T-3.4265*T*LN(T)-19.21045E-3*T**2+1.52726E-6*T**3 -3564640*T**(-1); 1999.00 Y -16070.82+256.707037*T-45.3964*T*LN(T); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_NP 298.15 -3224.664+174.911817*T-35.177*T*LN(T)-2.51865E-3*T**2+0.514743E-6*T**3 +302225*T**(-1); 856.00 Y -2366.486+180.807719*T-36.401*T*LN(T); 917.00 Y 50882.281-297.324358*T+30.7734*T*LN(T)-34.3483E-3*T**2+2.707217E-6*T**3 -7500100*T**(-1); 1999.00 Y -14879.686+254.773087*T-45.3964*T*LN(T); 4000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_NP 298.15 -4627.18+160.024959*T-31.229*T*LN(T)-16.3885E-3*T**2+2.941883E-6*T**3 +439915*T**(-1); 917.00 Y -7415.255+247.671446*T-45.3964*T*LN(T); 4000.00 N ! FUNCTION GHSEROO 298.15 -3480.87-25.503038*T-11.1355*T*LN(T)-5.098875E-3*T**2+0.661845833E-6*T**3 -38365*T**(-1); 1000.00 Y -6568.763+12.659879*T-16.8138*T*LN(T)-0.5957975E-3*T**2+0.006781E-6*T**3 +262905*T**(-1); 3300.00 Y -13986.728+31.259624*T-18.9536*T*LN(T)-0.425243E-3*T**2+0.010721E-6*T**3 +4383200*T**(-1); 6000.00 N ! +PARAMETER G(GAS,O2;0) 298.15 2*GHSEROO; 6000 N ! +FUNCTION SGTE_LIQUID_ELEM_O 298.15 -6129.77+5.936962*T-11.1355*T*LN(T)-5.098875E-3*T**2+0.661845833E-6*T**3 -38365*T**(-1); 1000.00 Y -9217.663+44.099879*T-16.8138*T*LN(T)-0.5957975E-3*T**2+0.006781E-6*T**3 +262905*T**(-1); 3300.00 Y -16635.628+62.699624*T-18.9536*T*LN(T)-0.425243E-3*T**2+0.010721E-6*T**3 +4383200*T**(-1); 6000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_O 298.15 26519.13-25.503038*T-11.1355*T*LN(T)-5.098875E-3*T**2+0.661845833E-6*T**3 -38365*T**(-1); 1000.00 Y 23431.237+12.659879*T-16.8138*T*LN(T)-0.5957975E-3*T**2+0.006781E-6*T**3 +262905*T**(-1); 3300.00 Y 16013.272+31.259624*T-18.9536*T*LN(T)-0.425243E-3*T**2+0.010721E-6*T**3 +4383200*T**(-1); 6000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_O 298.15 26519.13-25.503038*T-11.1355*T*LN(T)-5.098875E-3*T**2+0.661845833E-6*T**3 -38365*T**(-1); 1000.00 Y 23431.237+12.659879*T-16.8138*T*LN(T)-0.5957975E-3*T**2+0.006781E-6*T**3 +262905*T**(-1); 3300.00 Y 16013.272+31.259624*T-18.9536*T*LN(T)-0.425243E-3*T**2+0.010721E-6*T**3 +4383200*T**(-1); 6000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_OS 298.15 -7196.978+126.369531*T-23.5710242*T*LN(T)-1.90427E-3*T**2; 3306.00 Y 644910.07-1935.213696*T+224.9980343*T*LN(T)-42.489827E-3*T**2+1.173861E-6*T**3 -312569031*T**(-1); 5500.00 N ! +FUNCTION SGTE_LIQUID_ELEM_OS 298.15 29263.192+117.895788*T-23.5710242*T*LN(T)-1.90427E-3*T**2; 1000.00 Y 68715.318-198.324341*T+19.9382156*T*LN(T)-20.464464E-3*T**2+1.014279E-6*T**3 -6237261*T**(-1); 3306.00 Y -15903.192+336.874526*T-50*T*LN(T); 5500.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_OS 298.15 5803.022+123.869531*T-23.5710242*T*LN(T)-1.90427E-3*T**2; 3306.00 Y 657910.07-1937.713696*T+224.9980343*T*LN(T)-42.489827E-3*T**2+1.173861E-6*T**3 -312569031*T**(-1); 5500.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_OS 298.15 20303.022+121.969531*T-23.5710242*T*LN(T)-1.90427E-3*T**2; 3306.00 Y 672410.07-1939.613696*T+224.9980343*T*LN(T)-42.489827E-3*T**2+1.173861E-6*T**3 -312569031*T**(-1); 5500.00 N ! +FUNCTION SGTE_WHITE_P_ELEM_P 250.00 -43821.799+1026.693886*T-178.426*T*LN(T)+290.708E-3*T**2-104.022667E-6*T**3 +1632695*T**(-1); 317.30 Y -9587.448+152.341487*T-28.7335301*T*LN(T)+1.715669E-3*T**2-0.22829E-6*T**3 +172966*T**(-1); 1000.00 Y -8093.075+135.876831*T-26.326*T*LN(T); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_P 250.00 -26316.111+434.930931*T-70.7440584*T*LN(T)-2.898936E-3*T**2+39.049371E-6*T**3 +1141147*T**(-1); 317.30 Y -7232.449+133.291873*T-26.326*T*LN(T); 3000.00 N ! +FUNCTION SGTE_RED_P_ELEM_P 250.00 -25976.559+148.672002*T-25.55*T*LN(T)+3.4121E-3*T**2-2.418867E-6*T**3 +160095*T**(-1); 500.00 Y -21723.721+77.671737*T-14.368*T*LN(T)-9.57685E-3*T**2+0.393917E-6*T**3 -141375*T**(-1); 852.35 Y -119408.413+1026.02962*T-149.4495562*T*LN(T)+67.272364E-3*T**2 -6.651929E-6*T**3+12495943*T**(-1); 1500.00 Y -24524.119+153.839181*T-26.326*T*LN(T); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_P 250.00 18792.241+135.412002*T-25.55*T*LN(T)+3.4121E-3*T**2-2.418867E-6*T**3 +160095*T**(-1); 500.00 Y 23045.079+64.411737*T-14.368*T*LN(T)-9.57685E-3*T**2+0.393917E-6*T**3 -141375*T**(-1); 852.35 Y -74639.613+1012.76962*T-149.4495562*T*LN(T)+67.272364E-3*T**2 -6.651929E-6*T**3+12495943*T**(-1); 1500.00 Y 20244.681+140.579181*T-26.326*T*LN(T); 3000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_P 250.00 10842.441+135.534002*T-25.55*T*LN(T)+3.4121E-3*T**2-2.418867E-6*T**3 +160095*T**(-1); 500.00 Y 15095.279+64.533737*T-14.368*T*LN(T)-9.57685E-3*T**2+0.393917E-6*T**3 -141375*T**(-1); 852.35 Y -82589.413+1012.89162*T-149.4495562*T*LN(T)+67.272364E-3*T**2 -6.651929E-6*T**3+12495943*T**(-1); 1500.00 Y 12294.881+140.701181*T-26.326*T*LN(T); 3000.00 N ! +FUNCTION SGTE_RHOMBOHEDRAL_A7_ELEM_P 250.00 -44009.799+1026.819156*T-178.426*T*LN(T)+290.708E-3*T**2-104.022667E-6*T**3 +1632695*T**(-1); 317.30 Y -9775.448+152.466757*T-28.7335301*T*LN(T)+1.715669E-3*T**2-0.22829E-6*T**3 +172966*T**(-1); 1000.00 Y -8281.075+136.002101*T-26.326*T*LN(T); 3000.00 N ! +FUNCTION SGTE_BCT_AA_ELEM_PA 298.15 -7681.561+111.973215*T-23.9116*T*LN(T)-6.21325E-3*T**2; 1443.00 Y 27955.763-177.320253*T+16.305*T*LN(T)-26.3416E-3*T**2+1.884933E-6*T**3 -5908900*T**(-1); 2176.00 Y -29949.683+288.308639*T-47.2792*T*LN(T); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_PA 298.15 781.847+71.957409*T-18.203*T*LN(T)-13.22095E-3*T**2+1.337387E-6*T**3 -101600*T**(-1); 1443.00 Y -10955.948+220.478519*T-39.748*T*LN(T); 1845.00 Y 284495.194-1397.150521*T+171.108*T*LN(T)-63.7105E-3*T**2+3.343867E-6*T**3 -74992000*T**(-1); 2710.00 Y -27885.171+286.096187*T-47.2792*T*LN(T); 4000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_PA 298.15 8499.539+102.429215*T-23.9116*T*LN(T)-6.21325E-3*T**2; 1088.00 Y 48013.96-278.789916*T+30.336*T*LN(T)-37.2478E-3*T**2+3.075017E-6*T**3 -5064250*T**(-1); 1845.00 Y -12508.174+277.955437*T-47.2792*T*LN(T); 4000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_PB 298.15 -7650.085+101.700244*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; 600.61 Y -10531.095+154.243182*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); 1200.00 Y 4157.616+53.139072*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 -2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! +FUNCTION SGTE_LIQUID_ELEM_PB 298.15 -2977.961+93.949561*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3 -60.19E-20*T**7; 600.61 Y -5677.958+146.176046*T-32.4913959*T*LN(T)+1.54613E-3*T**2; 1200.00 Y 9010.753+45.071937*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 -2696755*T**(-1); 2100.00 N ! +FUNCTION SGTE_BCT_A5_ELEM_PB 298.15 -7161.085+105.220244*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; 600.61 Y -10042.095+157.763182*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); 1200.00 Y 4646.616+56.659072*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 -2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_PB 298.15 -7350.085+102.700244*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; 600.61 Y -10231.095+155.243182*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); 1200.00 Y 4457.616+54.139072*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 -2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_PB 298.15 -5250.085+100.600244*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; 600.61 Y -8131.095+153.143182*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); 1200.00 Y 6557.616+52.039072*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 -2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! +FUNCTION SGTE_TET_ALPHA1_ELEM_PB 298.15 -5746.785+99.640044*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; 600.61 Y -8627.795+152.182982*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); 1200.00 Y 6060.916+51.078872*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 -2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! +FUNCTION SGTE_RHOMBOHEDRAL_A7_ELEM_PB 298.15 -7350.085+102.700244*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; 600.61 Y -10231.095+155.243182*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); 1200.00 Y 4457.616+54.139072*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 -2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! +FUNCTION SGTE_TETRAGONAL_A6_ELEM_PB 298.15 -3156.85+101.700244*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; 600.61 Y -6037.86+154.243182*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); 1200.00 Y 8650.851+53.139072*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 -2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_PD 298.15 -10204.027+176.076315*T-32.211*T*LN(T)+7.120975E-3*T**2-1.919875E-6*T**3 +168687*T**(-1); 900.00 Y 917.062+49.659892*T-13.5708*T*LN(T)-7.17522E-3*T**2+0.191115E-6*T**3 -1112465*T**(-1); 1828.00 Y -67161.018+370.102147*T-54.2067086*T*LN(T)+2.091396E-3*T**2-0.062811E-6*T**3 +18683526*T**(-1); 4000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_PD 298.15 1302.731+170.964153*T-32.211*T*LN(T)+7.120975E-3*T**2-1.919875E-6*T**3 +168687*T**(-1); 600.00 Y 23405.778-116.918419*T+10.8922031*T*LN(T)-27.266568E-3*T**2+2.430675E-6*T**3 -1853674*T**(-1); 1828.00 Y -12373.637+251.416903*T-41.17*T*LN(T); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_PD 298.15 295.973+174.276315*T-32.211*T*LN(T)+7.120975E-3*T**2-1.919875E-6*T**3 +168687*T**(-1); 900.00 Y 11417.062+47.859892*T-13.5708*T*LN(T)-7.17522E-3*T**2+0.191115E-6*T**3 -1112465*T**(-1); 1828.00 Y -56661.018+368.302147*T-54.2067086*T*LN(T)+2.091396E-3*T**2-0.062811E-6*T**3 +18683526*T**(-1); 4000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_PD 298.15 -8204.027+176.176315*T-32.211*T*LN(T)+7.120975E-3*T**2-1.919875E-6*T**3 +168687*T**(-1); 900.00 Y 2917.062+49.759892*T-13.5708*T*LN(T)-7.17522E-3*T**2+0.191115E-6*T**3 -1112465*T**(-1); 1828.00 Y -65161.018+370.202147*T-54.2067086*T*LN(T)+2.091396E-3*T**2-0.062811E-6*T**3 +18683526*T**(-1); 4000.00 N ! +FUNCTION SGTE_DHCP_ELEM_PR 298.15 -18803.379+356.587384*T-68.9176*T*LN(T)+72.929E-3*T**2-25.184333E-6*T**3 +507385*T**(-1); 500.00 Y -7246.848+82.427384*T-22.8909*T*LN(T)-4.97126E-3*T**2-1.22951E-6*T**3; 800.00 Y 95411.023-1073.551114*T+146.764*T*LN(T)-128.8205E-3*T**2+15.592233E-6*T**3 -11588800*T**(-1); 1068.00 Y -481663.131+4234.333112*T-606.1203107*T*LN(T)+305.181506E-3*T**2 -30.994702E-6*T**3+70926840*T**(-1); 1204.00 Y -20014.678+227.685155*T-42.9697*T*LN(T); 3800.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_PR 298.15 -2863.651+28.274853*T-13.7470527*T*LN(T)-22.84377E-3*T**2+3.542468E-6*T**3 -87486*T**(-1); 1068.00 Y -11985.919+188.657121*T-38.451*T*LN(T); 1204.00 Y 953.224+100.826281*T-26.6824313*T*LN(T)-4.106833E-3*T**2+0.176214E-6*T**3 -2473024*T**(-1); 3800.00 N ! +FUNCTION SGTE_LIQUID_ELEM_PR 298.15 3848.961-29.099465*T-4.7344931*T*LN(T)-35.119723E-3*T**2+5.427467E-6*T**3 -207406*T**(-1); 1068.00 Y -10539.574+219.508805*T-42.9697*T*LN(T); 3800.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_PT 298.15 -7595.631+124.388275*T-24.5526*T*LN(T)-2.48297E-3*T**2-0.020138E-6*T**3 +7974*T**(-1); 1300.00 Y -9253.174+161.529615*T-30.2527*T*LN(T)+2.321665E-3*T**2-0.656946E-6*T**3 -272106*T**(-1); 2041.50 Y -222048.216+1019.358919*T-136.192996*T*LN(T)+20.454938E-3*T**2 -0.759259E-6*T**3+71539020*T**(-1); 4000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_PT 298.15 12518.385+115.113092*T-24.5526*T*LN(T)-2.48297E-3*T**2-0.020138E-6*T**3 +7974*T**(-1); 600.00 Y 19023.491+32.94182*T-12.3403769*T*LN(T)-11.551507E-3*T**2+0.931516E-6*T**3 -601426*T**(-1); 2041.50 Y 1404.468+205.858962*T-36.5*T*LN(T); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_PT 298.15 7404.369+121.988275*T-24.5526*T*LN(T)-2.48297E-3*T**2-0.020138E-6*T**3 +7974*T**(-1); 1300.00 Y 5746.826+159.129615*T-30.2527*T*LN(T)+2.321665E-3*T**2-0.656946E-6*T**3 -272106*T**(-1); 2041.50 Y -207048.216+1016.958919*T-136.192996*T*LN(T)+20.454938E-3*T**2 -0.759259E-6*T**3+71539020*T**(-1); 4000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_PT 298.15 -5095.631+124.488275*T-24.5526*T*LN(T)-2.48297E-3*T**2-0.020138E-6*T**3 +7974*T**(-1); 1300.00 Y -6753.174+161.629615*T-30.2527*T*LN(T)+2.321665E-3*T**2-0.656946E-6*T**3 -272106*T**(-1); 2041.50 Y -219548.216+1019.458919*T-136.192996*T*LN(T)+20.454938E-3*T**2 -0.759259E-6*T**3+71539020*T**(-1); 4000.00 N ! +FUNCTION SGTE_ALPHA_PU_ELEM_PU 298.15 -7396.309+80.301382*T-18.1258*T*LN(T)-22.41E-3*T**2; 400.00 Y -16605.962+236.786603*T-42.4187*T*LN(T)-1.34493E-3*T**2+0.263443E-6*T**3 +579325*T**(-1); 944.00 Y -14462.156+232.961553*T-42.248*T*LN(T); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_PU 298.15 -1358.984+116.603882*T-27.094*T*LN(T)-9.105E-3*T**2+2.061667E-6*T**3 +20863*T**(-1); 745.00 Y -2890.817+156.878957*T-33.72*T*LN(T); 956.00 Y 29313.619-132.788248*T+6.921*T*LN(T)-20.23305E-3*T**2+1.426922E-6*T**3 -4469245*T**(-1); 2071.00 Y -15400.585+227.421855*T-42.248*T*LN(T); 3000.00 N ! +FUNCTION SGTE_BETA_PU_ELEM_PU 298.15 -4873.654+123.249151*T-27.416*T*LN(T)-6.53E-3*T**2; 679.50 Y 2435.094+43.566585*T-15.7351*T*LN(T)-15.4772E-3*T**2+1.524942E-6*T**3 -864940*T**(-1); 1464.00 Y -13959.062+228.221615*T-42.248*T*LN(T); 3000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_PU 298.15 -3920.781+127.586536*T-28.4781*T*LN(T)-5.4035E-3*T**2; 990.00 Y 3528.208+41.52572*T-15.7351*T*LN(T)-15.4772E-3*T**2+1.524942E-6*T**3 -864940*T**(-1); 1464.00 Y -12865.948+226.18075*T-42.248*T*LN(T); 3000.00 N ! +FUNCTION SGTE_GAMMA_PU_ELEM_PU 298.15 -16766.303+419.402655*T-77.5802*T*LN(T)+81.6415E-3*T**2-28.103833E-6*T**3 +574825*T**(-1); 487.90 Y -2942.77+88.325069*T-22.0233*T*LN(T)-11.4795E-3*T**2; 593.90 Y -9336.967+160.314641*T-32.3405*T*LN(T)-7.0383E-3*T**2+0.692887E-6*T**3 +630600*T**(-1); 1179.00 Y -12435.75+226.131617*T-42.248*T*LN(T); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_PU 298.15 -788.209+67.788082*T-18.1258*T*LN(T)-22.41E-3*T**2; 400.00 Y -9997.862+224.273303*T-42.4187*T*LN(T)-1.34493E-3*T**2+0.263443E-6*T**3 +579325*T**(-1); 944.00 Y -7854.056+220.448253*T-42.248*T*LN(T); 3000.00 N ! +FUNCTION SGTE_TETRAGONAL_A6_ELEM_PU 298.15 -496.178+54.586547*T-16.43*T*LN(T)-24.006E-3*T**2+5.166667E-6*T**3 -158470*T**(-1); 736.00 Y -6122.307+173.35008*T-35.56*T*LN(T); 757.00 Y 3982.078+63.890352*T-19.756*T*LN(T)-9.37295E-3*T**2+0.659882E-6*T**3 -1112565*T**(-1); 2157.00 Y -15200.539+228.05641*T-42.248*T*LN(T); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_RB 200.00 -21669.733+583.580988*T-115.2825888*T*LN(T)+262.77612E-3*T**2 -152.236932E-6*T**3+385754*T**(-1); 312.46 Y -7823.397+117.050578*T-29.1775424*T*LN(T)+0.412369E-3*T**2-0.46822E-6*T**3 -126310*T**(-1)-555.029E20*T**(-9); 900.00 Y -39488.142+450.974149*T-77.7006456*T*LN(T)+33.795632E-3*T**2-4.829082E-6*T**3 +3778006*T**(-1)-555.029E20*T**(-9); 1600.00 Y -159742.511+1287.789466*T-191.2627736*T*LN(T)+81.61687E-3*T**2 -8.61653E-6*T**3+27738456*T**(-1)-555.029E20*T**(-9); 2100.00 N ! +FUNCTION SGTE_LIQUID_ELEM_RB 200.00 -19452.181+576.470502*T-115.2825888*T*LN(T)+262.77612E-3*T**2 -152.236932E-6*T**3+385754*T**(-1)+144.078E-19*T**7; 312.46 Y -5650.532+110.090262*T-29.1775424*T*LN(T)+0.412369E-3*T**2-0.46822E-6*T**3 -126310*T**(-1); 900.00 Y -37315.276+444.013833*T-77.7006456*T*LN(T)+33.795632E-3*T**2-4.829082E-6*T**3 +3778006*T**(-1); 1600.00 Y -157569.646+1280.829151*T-191.2627736*T*LN(T)+81.61687E-3*T**2 -8.61653E-6*T**3+27738456*T**(-1); 2100.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_RB 200.00 -21469.733+585.580988*T-115.2825888*T*LN(T)+262.77612E-3*T**2 -152.236932E-6*T**3+385754*T**(-1); 312.46 Y -7623.397+119.050578*T-29.1775424*T*LN(T)+0.412369E-3*T**2-0.46822E-6*T**3 -126310*T**(-1)-555.029E20*T**(-9); 900.00 Y -39288.142+452.974149*T-77.7006456*T*LN(T)+33.795632E-3*T**2-4.829082E-6*T**3 +3778006*T**(-1)-555.029E20*T**(-9); 1600.00 Y -159542.511+1289.789466*T-191.2627736*T*LN(T)+81.61687E-3*T**2 -8.61653E-6*T**3+27738456*T**(-1)-555.029E20*T**(-9); 2100.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_RB 200.00 -21469.733+584.880988*T-115.2825888*T*LN(T)+262.77612E-3*T**2 -152.236932E-6*T**3+385754*T**(-1); 312.46 Y -7623.397+118.350578*T-29.1775424*T*LN(T)+0.412369E-3*T**2-0.46822E-6*T**3 -126310*T**(-1)-555.029E20*T**(-9); 900.00 Y -39288.142+452.274149*T-77.7006456*T*LN(T)+33.795632E-3*T**2-4.829082E-6*T**3 +3778006*T**(-1)-555.029E20*T**(-9); 1600.00 Y -159542.511+1289.089466*T-191.2627736*T*LN(T)+81.61687E-3*T**2 -8.61653E-6*T**3+27738456*T**(-1)-555.029E20*T**(-9); 2100.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_RE 298.15 -7695.279+128.421589*T-24.348*T*LN(T) -2.53505E-3*T**2+0.192818E-6*T**3+32915*T**(-1); 1200 Y -15775.998+194.667426*T-33.586*T*LN(T)+2.24565E-3*T**2-0.281835E-6*T**3 +1376270*T**(-1); 2400 Y -70882.739+462.110749*T-67.956*T*LN(T)+11.84945E-3*T**2-0.788955E-6*T**3 +18075200*T**(-1); 3458 Y 346325.888-1211.371859*T+140.8316548*T*LN(T)-33.764567E-3*T**2 +1.053726E-6*T**3-134548866*T**(-1); 5000 Y -78564.296+346.997842*T-49.519*T*LN(T); 6000 N ! +FUNCTION SGTE_LIQUID_ELEM_RE 298.15 16125.604+122.076209*T-24.348*T*LN(T) -2.53505E-3*T**2+0.192818E-6*T**3+32915*T**(-1); 1200 Y 8044.885+188.322047*T-33.586*T*LN(T)+2.24565E-3*T**2-0.281835E-6*T**3 +1376270*T**(-1); 2000 Y 568842.665-2527.838455*T+314.1788975*T*LN(T)-89.39817E-3*T**2 +3.92854E-6*T**3-163100987*T**(-1); 3458 Y -39044.888+335.723691*T-49.519*T*LN(T); 6000 N ! +FUNCTION SGTE_BCC_A2_ELEM_RE 298.15 9304.721+124.721589*T-24.348*T*LN(T) -2.53505E-3*T**2+0.192818E-6*T**3+32915*T**(-1); 1200 Y 1224.002+190.967426*T-33.586*T*LN(T)+2.24565E-3*T**2-0.281835E-6*T**3 +1376270*T**(-1); 2400 Y -53882.739+458.410749*T-67.956*T*LN(T)+11.84945E-3*T**2-0.788955E-6*T**3 +18075200*T**(-1); 3458 Y 363325.888-1215.071859*T+140.8316548*T*LN(T)-33.764567E-3*T**2 +1.053726E-6*T**3-134548866*T**(-1); 5000 Y -61564.296+343.297842*T-49.519*T*LN(T); 6000 N ! +FUNCTION SGTE_FCC_A1_ELEM_RE 298.15 3304.721+126.921589*T-24.348*T*LN(T)-2.53505E-3*T**2+0.192818E-6*T**3 +32915*T**(-1); 1200.00 Y -4775.998+193.167426*T-33.586*T*LN(T)+2.24565E-3*T**2-0.281835E-6*T**3 +1376270*T**(-1); 2400.00 Y -59882.739+460.610749*T-67.956*T*LN(T)+11.84945E-3*T**2-0.788955E-6*T**3 +18075200*T**(-1); 3458.00 Y 357325.888-1212.871859*T+140.8316548*T*LN(T)-33.764567E-3*T**2+1.053726E-6*T**3 -134548866*T**(-1); 5000.00 Y -67564.296+345.497842*T-49.519*T*LN(T); 6000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_RH 298.15 -7848.828+132.020923*T-24.0178336*T*LN(T)-3.424186E-3*T**2-0.168032E-6*T**3 +55846*T**(-1); 1200.00 Y -28367.852+305.771019*T-48.3766632*T*LN(T)+9.66345E-3*T**2-1.512774E-6*T**3 +3348162*T**(-1); 2237.00 Y -6237470.481+30151.634226*T-3874.2105805*T*LN(T)+1049.213607E-3*T**2 -53.978814E-6*T**3+1880362184*T**(-1); 2450.00 Y -44863.489+344.889895*T-50.58456*T*LN(T); 2500.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_RH 298.15 11151.172+127.320923*T-24.0178336*T*LN(T)-3.424186E-3*T**2-0.168032E-6*T**3 +55846*T**(-1); 1200.00 Y -9367.852+301.071019*T-48.3766632*T*LN(T)+9.66345E-3*T**2-1.512774E-6*T**3 +3348162*T**(-1); 2237.00 Y -6218470.481+30146.934226*T-3874.2105805*T*LN(T)+1049.213607E-3*T**2 -53.978814E-6*T**3+1880362184*T**(-1); 2450.00 Y -25863.489+340.189895*T-50.58456*T*LN(T); 2500.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_RH 298.15 -4848.828+131.520923*T-24.0178336*T*LN(T)-3.424186E-3*T**2-0.168032E-6*T**3 +55846*T**(-1); 1200.00 Y -25367.852+305.271019*T-48.3766632*T*LN(T)+9.66345E-3*T**2-1.512774E-6*T**3 +3348162*T**(-1); 2237.00 Y -6234470.481+30151.134226*T-3874.2105805*T*LN(T)+1049.213607E-3*T**2 -53.978814E-6*T**3+1880362184*T**(-1); 2450.00 Y -41863.489+344.389895*T-50.58456*T*LN(T); 2500.00 N ! +FUNCTION SGTE_LIQUID_ELEM_RH 298.15 11244.082+125.099593*T-24.0178336*T*LN(T)-3.424186E-3*T**2-0.168032E-6*T**3 +55846*T**(-1); 700.00 Y 35898.508-147.926418*T+15.6492377*T*LN(T)-28.665357E-3*T**2+2.100572E-6*T**3 -2638940*T**(-1); 2237.00 Y -18208.54+332.974832*T-50.58456*T*LN(T); 2500.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_RU 298.15 -7561.873+127.866233*T-22.9143287*T*LN(T)-4.062566E-3*T**2+0.17641E-6*T**3 +56377*T**(-1); 1500.00 Y -59448.103+489.516214*T-72.3241219*T*LN(T)+18.726245E-3*T**2-1.952433E-6*T**3 +11063885*T**(-1); 2607.00 Y -38588773.031+168610.517401*T-21329.7050475*T*LN(T)+5221.638997E-3*T**2 -240.245985E-6*T**3+1308.2992629E7*T**(-1); 2740.00 Y -55768.304+364.482314*T-51.8816*T*LN(T); 4500.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_RU 298.15 13938.127+122.816233*T-22.9143287*T*LN(T)-4.062566E-3*T**2+0.17641E-6*T**3 +56377*T**(-1); 1500.00 Y -37948.103+484.466214*T-72.3241219*T*LN(T)+18.726245E-3*T**2-1.952433E-6*T**3 +11063885*T**(-1); 2607.00 Y -38567273.031+168605.467401*T-21329.7050475*T*LN(T)+5221.638997E-3*T**2 -240.245985E-6*T**3+1308.2992629E7*T**(-1); 2740.00 Y -34268.304+359.432314*T-51.8816*T*LN(T); 4500.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_RU 298.15 4938.127+125.466233*T-22.9143287*T*LN(T)-4.062566E-3*T**2+0.17641E-6*T**3 +56377*T**(-1); 1500.00 Y -46948.103+487.116214*T-72.3241219*T*LN(T)+18.726245E-3*T**2-1.952433E-6*T**3 +11063885*T**(-1); 2607.00 Y -38576273.031+168608.117401*T-21329.7050475*T*LN(T)+5221.638997E-3*T**2 -240.245985E-6*T**3+1308.2992629E7*T**(-1); 2740.00 Y -43268.304+362.082314*T-51.8816*T*LN(T); 4500.00 N ! +FUNCTION SGTE_LIQUID_ELEM_RU 298.15 19918.743+119.467485*T-22.9143287*T*LN(T)-4.062566E-3*T**2+0.17641E-6*T**3 +56377*T**(-1); 800.00 Y 50827.232-179.818561*T+19.539341*T*LN(T)-26.524167E-3*T**2+1.667839E-6*T**3 -3861125*T**(-1); 2607.00 Y -17161.807+349.673561*T-51.8816*T*LN(T); 4500.00 N ! +FUNCTION SGTE_ORTHORHOMBIC_S_ELEM_S 298.15 -5198.294+53.913855*T-10.726*T*LN(T) -27.3801E-3*T**2+8.179537E-6*T**3; 368.3 Y -6475.706+94.182332*T-17.8693298*T*LN(T)-10.936877E-3*T**2+1.406467E-6*T**3 +36871*T**(-1); 1300 Y -12485.546+188.304687*T-32*T*LN(T); 1301 N ! +FUNCTION SGTE_MONOCLINIC_ELEM_S 298.15 -5725.422+89.544275*T-17.413*T*LN(T) -9.93935E-3*T**2-0.070062E-6*T**3+1250*T**(-1); 388.36 Y -7455.008+114.782945*T-21.1531404*T*LN(T)-8.566163E-3*T**2+1.112484E-6*T**3 +122167*T**(-1); 1300 Y -11779.415+186.699065*T-32*T*LN(T); 1301 N ! +FUNCTION SGTE_LIQUID_ELEM_S 298.15 -4196.575+85.63027*T-17.413*T*LN(T) -9.93935E-3*T**2-0.070062E-6*T**3+1250*T**(-1); 335 Y 1790361.982-44195.451432*T+7511.6194258*T*LN(T)-13985.517511E-3*T**2 +4838.738601E-6*T**3-79880891*T**(-1); 388.36 Y -876313.954+23366.872986*T-4028.756*T*LN(T)+7954.595E-3*T**2 -2908.513333E-6*T**3+33980035*T**(-1); 432.25 Y 454088.687-7814.670231*T+1237.001*T*LN(T)-1560.7295E-3*T**2+359.883667E-6*T**3 -31765395*T**(-1); 500 Y 18554.561-144.895285*T+16.535*T*LN(T)-45.4119E-3*T**2+8.327402E-6*T**3 -2705030*T**(-1); 700 Y 21243.126-113.298877*T+9.944*T*LN(T)-28.8384E-3*T**2+3.791365E-6*T**3 -3507570*T**(-1); 900 Y 16117.849-32.79523*T-2.425*T*LN(T)-17.12545E-3*T**2+1.84974E-6*T**3 -3215170*T**(-1); 1300 Y -6461.814+175.590536*T-32*T*LN(T); 1301 N ! +FUNCTION SGTE_BCC_A2_ELEM_S 298.15 99801.706+53.913855*T-10.726*T*LN(T) -27.3801E-3*T**2+8.179537E-6*T**3; 368.3 Y 98524.294+94.182332*T-17.8693298*T*LN(T)-10.936877E-3*T**2+1.406467E-6*T**3 +36871*T**(-1); 1300 Y 92514.454+188.304687*T-32*T*LN(T); 1301 N ! +FUNCTION SGTE_FCC_A1_ELEM_S 298.15 99801.706+53.913855*T-10.726*T*LN(T) -27.3801E-3*T**2+8.179537E-6*T**3; 368.3 Y 98524.294+94.182332*T-17.8693298*T*LN(T)-10.936877E-3*T**2+1.406467E-6*T**3 +36871*T**(-1); 1300 Y 92514.454+188.304687*T-32*T*LN(T); 1301 N ! +FUNCTION SGTE_RHOMBOHEDRAL_A7_ELEM_SB 298.15 -9242.858+156.154689*T-30.5130752*T*LN(T)+7.748768E-3*T**2-3.003415E-6*T**3 +100625*T**(-1); 903.78 Y -11738.83+169.485872*T-31.38*T*LN(T)+1616.849E24*T**(-9); 2000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_SB 298.15 10579.47+134.231525*T-30.5130752*T*LN(T)+7.748768E-3*T**2-3.003415E-6*T**3 +100625*T**(-1)-174.847E-22*T**7; 903.78 Y 8175.359+147.455986*T-31.38*T*LN(T); 2000.00 N ! +FUNCTION SGTE_BCT_A5_ELEM_SB 298.15 3757.142+148.154689*T-30.5130752*T*LN(T)+7.748768E-3*T**2-3.003415E-6*T**3 +100625*T**(-1); 903.78 Y 1261.17+161.485872*T-31.38*T*LN(T)+1616.849E24*T**(-9); 2000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_SB 298.15 10631.142+142.454689*T-30.5130752*T*LN(T)+7.748768E-3*T**2-3.003415E-6*T**3 +100625*T**(-1); 903.78 Y 8135.17+155.785872*T-31.38*T*LN(T)+1616.849E24*T**(-9); 2000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_SB 298.15 10631.142+141.054689*T-30.5130752*T*LN(T)+7.748768E-3*T**2-3.003415E-6*T**3 +100625*T**(-1); 903.78 Y 8135.17+154.385872*T-31.38*T*LN(T)+1616.849E24*T**(-9); 2000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_SB 298.15 10631.142+143.154689*T-30.5130752*T*LN(T)+7.748768E-3*T**2-3.003415E-6*T**3 +100625*T**(-1); 903.78 Y 8135.17+156.485872*T-31.38*T*LN(T)+1616.849E24*T**(-9); 2000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_SC 298.15 -8689.547+153.48097*T-28.1882*T*LN(T)+3.21892E-3*T**2-1.64531E-6*T**3 +72177*T**(-1); 800.00 Y -7511.295+132.759582*T-24.9132*T*LN(T)-0.573295E-3*T**2-0.859345E-6*T**3; 1608.00 Y 261143.04-1817.922454*T+241.4410508*T*LN(T)-117.529396E-3*T**2+8.7398E-6*T**3 -50607159*T**(-1); 2000.00 Y -30515.246+286.474338*T-44.2249*T*LN(T); 3200.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_SC 298.15 -6709.819+152.456835*T-28.1882*T*LN(T)+3.21892E-3*T**2-1.64531E-6*T**3 +72177*T**(-1); 800.00 Y -5531.567+131.735447*T-24.9132*T*LN(T)-0.573295E-3*T**2-0.859345E-6*T**3; 1000.00 Y 230161.408-2004.054685*T+276.7666402*T*LN(T)-167.120107E-3*T**2 +15.637371E-6*T**3-33783257*T**(-1); 1608.00 Y -25928.011+283.642312*T-44.2249*T*LN(T); 3200.00 N ! +FUNCTION SGTE_LIQUID_ELEM_SC 298.15 6478.66+45.427539*T-10.7967803*T*LN(T)-20.636524E-3*T**2+2.13106E-6*T**3 -158106*T**(-1); 1608.00 Y -11832.111+275.871695*T-44.2249*T*LN(T); 3200.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_SC 298.15 -3689.547+153.48097*T-28.1882*T*LN(T)+3.21892E-3*T**2-1.64531E-6*T**3 +72177*T**(-1); 800.00 Y -2511.295+132.759582*T-24.9132*T*LN(T)-0.573295E-3*T**2-0.859345E-6*T**3; 1608.00 Y 266143.04-1817.922454*T+241.4410508*T*LN(T)-117.529396E-3*T**2+8.7398E-6*T**3 -50607159*T**(-1); 2000.00 Y -25515.246+286.474338*T-44.2249*T*LN(T); 3200.00 N ! +FUNCTION SGTE_DHCP_ELEM_SC 298.15 -7489.547+153.8966955*T-28.1882*T*LN(T)+3.21892E-3*T**2-1.64531E-6*T**3 +72177*T**(-1); 800.00 Y -6311.295+133.1753075*T-24.9132*T*LN(T)-0.573295E-3*T**2-0.859345E-6*T**3; 1608.00 Y 262343.04-1817.506729*T+241.4410508*T*LN(T)-117.529396E-3*T**2+8.7398E-6*T**3 -50607159*T**(-1); 2000.00 Y -29315.246+286.8900635*T-44.2249*T*LN(T); 3200.00 N ! +FUNCTION SGTE_HEXAGONAL_A8_ELEM_SE 298.15 -9376.371+174.205877*T-33.6527*T*LN(T)+24.24314E-3*T**2-15.318461E-6*T**3 +102249*T**(-1); 494.00 Y -37546.134+507.111538*T-81.2006585*T*LN(T)+37.144892E-3*T**2-5.611026E-6*T**3 +2614263*T**(-1); 800.00 Y -12193.47+197.770166*T-35.1456*T*LN(T); 1000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_SE 298.15 50533.347-1178.288242*T+194.1074389*T*LN(T)-390.268991E-3*T**2 +119.219297E-6*T**3-2224398*T**(-1); 494.00 Y -5228.304+183.72559*T-35.1456*T*LN(T); 1000.00 N ! +FUNCTION SGTE_DIAMOND_A4_ELEM_SI 298.15 -8162.609+137.236859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 +176667*T**(-1); 1687.00 Y -9457.642+167.281367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! +FUNCTION SGTE_LIQUID_ELEM_SI 298.15 42533.751+107.13742*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 +176667*T**(-1)+209.307E-23*T**7; 1687.00 Y 40370.523+137.722298*T-27.196*T*LN(T); 3600.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_SI 298.15 38837.391+114.736859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 +176667*T**(-1); 1687.00 Y 37542.358+144.781367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_SI 298.15 42837.391+115.436859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 +176667*T**(-1); 1687.00 Y 41542.358+145.481367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! +FUNCTION SGTE_CBCC_A12_ELEM_SI 298.15 42045.391+116.859859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 +176667*T**(-1); 1687.00 Y 40750.358+146.904367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! +FUNCTION SGTE_CUB_A13_ELEM_SI 298.15 39116.391+116.859859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 +176667*T**(-1); 1687.00 Y 37821.358+146.904367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_SI 298.15 41037.391+116.436859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 +176667*T**(-1); 1687.00 Y 39742.358+146.481367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! +FUNCTION SGTE_HCP_ZN_ELEM_SI 298.15 41038.391+116.436859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 +176667*T**(-1); 1687.00 Y 39743.358+146.481367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! +FUNCTION SGTE_RHOMB_C19_ELEM_SM 298.15 -3872.013-32.10748*T-1.6485*T*LN(T)-50.254E-3*T**2+10.10345E-6*T**3 -82168*T**(-1); 700.00 Y -50078.215+627.869894*T-102.665*T*LN(T)+47.4522E-3*T**2-7.538383E-6*T**3 +3861770*T**(-1); 1190.00 Y 289719.819-2744.509764*T+381.4198202*T*LN(T)-254.986338E-3*T**2 +27.512152E-6*T**3-40102102*T**(-1); 1345.00 Y -23056.079+282.194375*T-50.208*T*LN(T); 2100.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_SM 298.15 -3802.0356-32.176971*T-1.6485*T*LN(T)-50.254E-3*T**2+10.10345E-6*T**3 -82168*T**(-1); 700.00 Y -50008.2376+627.800403*T-102.665*T*LN(T)+47.4522E-3*T**2-7.538383E-6*T**3 +3861770*T**(-1); 1190.00 Y 289789.7964-2744.579255*T+381.4198202*T*LN(T)-254.986338E-3*T**2 +27.512152E-6*T**3-40102102*T**(-1); 1345.00 Y -22986.1016+282.124884*T-50.208*T*LN(T); 2100.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_SM 298.15 -4368.72+55.972523*T-16.9298494*T*LN(T)-25.446016E-3*T**2+3.579527E-6*T**3 +94209*T**(-1); 1190.00 Y -15957.862+253.121044*T-46.9445*T*LN(T); 1345.00 Y 111191.653-624.680805*T+71.6856914*T*LN(T)-47.314968E-3*T**2+3.329865E-6*T**3 -24870276*T**(-1); 2100.00 N ! +FUNCTION SGTE_LIQUID_ELEM_SM 298.15 3468.783+20.117456*T-11.6968284*T*LN(T)-32.418177E-3*T**2+4.544272E-6*T**3 +23528*T**(-1); 1190.00 Y -11728.229+273.487076*T-50.208*T*LN(T); 2100.00 N ! +FUNCTION SGTE_BCT_A5_ELEM_SN 100.00 -7958.517+122.765451*T-25.858*T*LN(T)+0.51185E-3*T**2-3.192767E-6*T**3 +18440*T**(-1); 250.00 Y -5855.135+65.443315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 -61960*T**(-1); 505.08 Y 2524.724+4.005269*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 -1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y -8256.959+138.99688*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_DIAMOND_A4_ELEM_SN 100.00 -9579.608+114.007785*T-22.972*T*LN(T)-8.13975E-3*T**2+2.7288E-6*T**3 +25615*T**(-1); 298.15 Y -9063.001+104.84654*T-21.5750771*T*LN(T)-8.575282E-3*T**2+1.784447E-6*T**3 -2544*T**(-1); 800.00 Y -10909.351+147.396535*T-28.4512*T*LN(T); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_SN 100.00 -855.425+108.677684*T-25.858*T*LN(T)+0.51185E-3*T**2-3.192767E-6*T**3 +18440*T**(-1)+147.031E-20*T**7; 250.00 Y 1247.957+51.355548*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 -61960*T**(-1)+147.031E-20*T**7; 505.08 Y 9496.31-9.809114*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 -1081244*T**(-1); 800.00 Y -1285.372+125.182498*T-28.4512*T*LN(T); 3000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_SN 298.15 -345.135+56.983315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 -61960*T**(-1); 505.08 Y 8034.724-4.454731*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 -1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y -2746.959+130.53688*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_SN 298.15 -1955.135+57.797315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 -61960*T**(-1); 505.08 Y 6424.724-3.640731*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 -1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y -4356.959+131.35088*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_HCP_ZN_ELEM_SN 298.15 -1950.135+57.797315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 -61960*T**(-1); 505.08 Y 6429.724-3.640731*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 -1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y -4351.959+131.35088*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_RHOMBOHEDRAL_A7_ELEM_SN 100.00 -5923.517+122.765451*T-25.858*T*LN(T)+0.51185E-3*T**2-3.192767E-6*T**3 +18440*T**(-1); 250.00 Y -3820.135+65.443315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 -61960*T**(-1); 505.08 Y 4559.724+4.005269*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 -1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y -6221.959+138.99688*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_SN 100.00 -3558.517+116.765451*T-25.858*T*LN(T)+0.51185E-3*T**2-3.192767E-6*T**3 +18440*T**(-1); 250.00 Y -1455.135+59.443315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 -61960*T**(-1); 505.08 Y 6924.724-1.994731*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 -1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y -3856.959+132.99688*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_TETRAGONAL_A6_ELEM_SN 298.15 -468.135+57.181195*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 -61960*T**(-1); 505.08 Y 7911.724-4.256851*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 -1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y -2869.959+130.73476*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_CBCC_A12_ELEM_SN 100.00 -5958.517+122.765451*T-25.858*T*LN(T)+0.51185E-3*T**2-3.192767E-6*T**3 +18440*T**(-1); 250.00 Y -3855.135+65.443315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 -61960*T**(-1); 505.08 Y 4524.724+4.005269*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 -1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y -6256.959+138.99688*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_CUB_A13_ELEM_SN 100.00 -5958.517+122.765451*T-25.858*T*LN(T)+0.51185E-3*T**2-3.192767E-6*T**3 +18440*T**(-1); 250.00 Y -3855.135+65.443315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 -61960*T**(-1); 505.08 Y 4524.724+4.005269*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 -1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y -6256.959+138.99688*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_SR 298.15 -7532.367+107.183879*T-23.905*T*LN(T)-4.61225E-3*T**2-0.167477E-6*T**3 -2055*T**(-1); 820.00 Y -13380.102+153.196104*T-30.0905432*T*LN(T)-3.251266E-3*T**2+0.184189E-6*T**3 +850134*T**(-1); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_SR 298.15 -6779.234+116.583654*T-25.6708365*T*LN(T)-3.126762E-3*T**2+0.22965E-6*T**3 +27649*T**(-1); 820.00 Y -6970.594+122.067301*T-26.57*T*LN(T)-1.9493E-3*T**2-0.017895E-6*T**3 +16495*T**(-1); 1050.00 Y 8168.357+0.423037*T-9.7788593*T*LN(T)-9.539908E-3*T**2+0.520221E-6*T**3 -2414794*T**(-1); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_SR 298.15 2194.997-10.118994*T-5.0668978*T*LN(T)-31.840595E-3*T**2+4.981237E-6*T**3 -265559*T**(-1); 1050.00 Y -10855.29+213.406219*T-39.463*T*LN(T); 3000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_SR 298.15 -7282.367+107.883879*T-23.905*T*LN(T)-4.61225E-3*T**2-0.167477E-6*T**3 -2055*T**(-1); 820.00 Y -13130.102+153.896104*T-30.0905432*T*LN(T)-3.251266E-3*T**2+0.184189E-6*T**3 +850134*T**(-1); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_TA 298.15 -7285.889+119.139857*T-23.7592624*T*LN(T)-2.623033E-3*T**2+0.170109E-6*T**3 -3293*T**(-1); 1300.00 Y -22389.955+243.88676*T-41.137088*T*LN(T)+6.167572E-3*T**2-0.655136E-6*T**3 +2429586*T**(-1); 2500.00 Y 229382.886-722.59722*T+78.5244752*T*LN(T)-17.983376E-3*T**2+0.195033E-6*T**3 -93813648*T**(-1); 3290.00 Y -1042384.014+2985.491246*T-362.1591318*T*LN(T)+43.117795E-3*T**2 -1.055148E-6*T**3+554714342*T**(-1); 6000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_TA 298.15 21875.086+111.561128*T-23.7592624*T*LN(T)-2.623033E-3*T**2+0.170109E-6*T**3 -3293*T**(-1); 1000.00 Y 43884.339-61.981795*T+0.0279523*T*LN(T)-12.330066E-3*T**2+0.614599E-6*T**3 -3523338*T**(-1); 3290.00 Y -6314.543+258.110873*T-41.84*T*LN(T); 6000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_TA 298.15 8714.111+120.839857*T-23.7592624*T*LN(T)-2.623033E-3*T**2+0.170109E-6*T**3 -3293*T**(-1); 1300.00 Y -6389.955+245.58676*T-41.137088*T*LN(T)+6.167572E-3*T**2-0.655136E-6*T**3 +2429586*T**(-1); 2500.00 Y 245382.886-720.89722*T+78.5244752*T*LN(T)-17.983376E-3*T**2+0.195033E-6*T**3 -93813648*T**(-1); 3290.00 Y -1026384.014+2987.191246*T-362.1591318*T*LN(T)+43.117795E-3*T**2 -1.055148E-6*T**3+554714342*T**(-1); 6000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_TA 298.15 4714.111+121.539857*T-23.7592624*T*LN(T)-2.623033E-3*T**2+0.170109E-6*T**3 -3293*T**(-1); 1300.00 Y -10389.955+246.28676*T-41.137088*T*LN(T)+6.167572E-3*T**2-0.655136E-6*T**3 +2429586*T**(-1); 2500.00 Y 241382.886-720.19722*T+78.5244752*T*LN(T)-17.983376E-3*T**2+0.195033E-6*T**3 -93813648*T**(-1); 3290.00 Y -1030384.014+2987.891246*T-362.1591318*T*LN(T)+43.117795E-3*T**2 -1.055148E-6*T**3+554714342*T**(-1); 6000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_TB 298.15 -20842.158+409.309555*T-77.5006*T*LN(T)+83.2265E-3*T**2-25.672833E-6*T**3 +562430*T**(-1); 600.00 Y -8772.606+102.61162*T-25.8659*T*LN(T)-2.757005E-3*T**2-0.805838E-6*T**3 +172355*T**(-1); 1200.00 Y -7944.942+101.7776*T-25.9584*T*LN(T)-1.676335E-3*T**2-1.067632E-6*T**3; 1562.00 Y -265240.309+1456.042685*T-200.2156949*T*LN(T)+41.615159E-3*T**2 -2.044697E-6*T**3+65043790*T**(-1); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_TB 298.15 -16674.323+406.656848*T-77.5006*T*LN(T)+83.2265E-3*T**2-25.672833E-6*T**3 +562430*T**(-1); 600.00 Y -4604.771+99.958913*T-25.8659*T*LN(T)-2.757005E-3*T**2-0.805838E-6*T**3 +172355*T**(-1); 1200.00 Y 633060.245-5157.777795*T+706.5805957*T*LN(T)-373.763517E-3*T**2 +34.100235E-6*T**3-103233571*T**(-1); 1562.00 Y -23398.029+257.388486*T-46.4842*T*LN(T); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_TB 298.15 3945.831+29.867521*T-14.252646*T*LN(T)-20.466105E-3*T**2+2.17475E-6*T**3 -160724*T**(-1); 1562.00 Y -13247.649+251.16889*T-46.4842*T*LN(T); 3000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_TC 298.15 -7947.794+132.5101*T-24.3394*T*LN(T)-2.954747E-3*T**2+63855*T**(-1); 2430.00 Y -47759.99+318.286*T-47*T*LN(T)+663.829E30*T**(-9); 4000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_TC 298.15 2052.206+131.0101*T-24.3394*T*LN(T)-2.954747E-3*T**2+63855*T**(-1); 2430.00 Y -37759.99+316.786*T-47*T*LN(T)+663.829E30*T**(-9); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_TC 298.15 10052.206+128.0101*T-24.3394*T*LN(T)-2.954747E-3*T**2+63855*T**(-1); 2430.00 Y -29759.99+313.786*T-47*T*LN(T)+663.829E30*T**(-9); 4000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_TC 298.15 22454.34+120.1971*T-24.3394*T*LN(T)-2.954747E-3*T**2+63855*T**(-1) -962.385E-24*T**7; 2430.00 Y -12221.9+303.7538*T-47*T*LN(T); 4000.00 N ! +FUNCTION SGTE_HEXAGONAL_A8_ELEM_TE 298.15 -10544.679+183.372894*T-35.6687*T*LN(T)+15.83435E-3*T**2-5.240417E-6*T**3 +155015*T**(-1); 722.66 Y 9160.595-129.265373*T+13.004*T*LN(T)-36.2361E-3*T**2+5.006367E-6*T**3 -1286810*T**(-1); 1150.00 Y -12781.349+174.901226*T-32.5596*T*LN(T); 1600.00 N ! +FUNCTION SGTE_LIQUID_ELEM_TE 298.15 -17554.731+685.8776386*T-126.318*T*LN(T)+221.9435E-3*T**2-94.2075E-6*T**3 +827930*T**(-1); 626.49 Y -3165763.484+46756.3570347*T-7196.41*T*LN(T)+7097.75E-3*T**2 -1306.928333E-6*T**3+258051000*T**(-1); 722.66 Y 180326.959-1500.5790943*T+202.743*T*LN(T)-142.016E-3*T**2+16.129733E-6*T**3 -24238450*T**(-1); 1150.00 Y 6328.687+148.7082987*T-32.5596*T*LN(T); 1600.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_TH 298.15 -7732.08+116.273975*T-24.841*T*LN(T)-2.36725E-3*T**2-0.52883E-6*T**3 +13010*T**(-1); 1633.00 Y -37352.871+236.906118*T-39.107*T*LN(T)-3.58025E-3*T**2+0.236893E-6*T**3 +7981000*T**(-1); 2900.00 Y -33353.313+283.231045*T-46.024*T*LN(T); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_TH 298.15 -2321.06+133.531195*T-28.244*T*LN(T)+0.43775E-3*T**2-0.53048E-6*T**3 +91190*T**(-1); 1633.00 Y -115978.348+800.909049*T-116.453*T*LN(T)+30.98E-3*T**2-2.536883E-6*T**3 +27512600*T**(-1); 2023.00 Y -33602.796+208.774709*T-35.813*T*LN(T)-3.46655E-3*T**2+0.166067E-6*T**3 +11876950*T**(-1); 3600.00 Y -34333.615+283.181494*T-46.024*T*LN(T); 4000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_TH 298.15 5031.109+110.886346*T-24.987*T*LN(T)-1.68345E-3*T**2-0.909067E-6*T**3 +10865*T**(-1); 1499.80 Y -15602.847+127.657716*T-24.03*T*LN(T)-13.6421E-3*T**2+1.210117E-6*T**3 +7111100*T**(-1); 2014.50 Y -17273.382+275.001274*T-46.024*T*LN(T); 4000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_TI 298.15 -8059.921+133.615208*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 +72636*T**(-1); 900.00 Y -7811.815+132.988068*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 +42680*T**(-1); 1155.00 Y 908.837+66.976538*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 -1477660*T**(-1); 1941.00 Y -124526.786+638.806871*T-87.2182461*T*LN(T)+8.204849E-3*T**2-0.304747E-6*T**3 +36699805*T**(-1); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_TI 298.15 -1272.064+134.71418*T-25.5768*T*LN(T)-0.663845E-3*T**2-0.278803E-6*T**3 +7208*T**(-1); 1155.00 Y 6667.385+105.366379*T-22.3771*T*LN(T)+1.21707E-3*T**2-0.84534E-6*T**3 -2002750*T**(-1); 1941.00 Y 26483.26-182.426471*T+19.0900905*T*LN(T)-22.00832E-3*T**2+1.228863E-6*T**3 +1400501*T**(-1); 4000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_TI 298.15 4134.494+126.63427*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 +72636*T**(-1); 900.00 Y 4382.601+126.00713*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 +42680*T**(-1); 1155.00 Y 13103.253+59.9956*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 -1477660*T**(-1); 1300.00 Y 369519.198-2554.0225*T+342.059267*T*LN(T)-163.409355E-3*T**2+12.457117E-6*T**3 -67034516*T**(-1); 1941.00 Y -19887.066+298.7367*T-46.29*T*LN(T); 4000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_TI 298.15 -2059.921+133.515208*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 +72636*T**(-1); 900.00 Y -1811.815+132.888068*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 +42680*T**(-1); 1155.00 Y 6908.837+66.876538*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 -1477660*T**(-1); 1941.00 Y -118526.786+638.706871*T-87.2182461*T*LN(T)+8.204849E-3*T**2-0.304747E-6*T**3 +36699805*T**(-1); 4000.00 N ! +FUNCTION SGTE_CBCC_A12_ELEM_TI 298.15 -3457.721+133.615208*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 +72636*T**(-1); 900.00 Y -3209.615+132.988068*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 +42680*T**(-1); 1155.00 Y 5511.037+66.976538*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 -1477660*T**(-1); 1941.00 Y -119924.586+638.806871*T-87.2182461*T*LN(T)+8.204849E-3*T**2-0.304747E-6*T**3 +36699805*T**(-1); 4000.00 N ! +FUNCTION SGTE_CUB_A13_ELEM_TI 298.15 -528.721+133.615208*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 +72636*T**(-1); 900.00 Y -280.615+132.988068*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 +42680*T**(-1); 1155.00 Y 8440.037+66.976538*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 -1477660*T**(-1); 1941.00 Y -116995.586+638.806871*T-87.2182461*T*LN(T)+8.204849E-3*T**2-0.304747E-6*T**3 +36699805*T**(-1); 4000.00 N ! +FUNCTION SGTE_DIAMOND_A4_ELEM_TI 298.15 16940.079+133.615208*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 +72636*T**(-1); 900.00 Y 17188.185+132.988068*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 +42680*T**(-1); 1155.00 Y 25908.837+66.976538*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 -1477660*T**(-1); 1941.00 Y -99526.786+638.806871*T-87.2182461*T*LN(T)+8.204849E-3*T**2-0.304747E-6*T**3 +36699805*T**(-1); 4000.00 N ! +FUNCTION SGTE_BCT_A5_ELEM_TI 298.15 -3457.721+133.615208*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 +72636*T**(-1); 900.00 Y -3209.615+132.988068*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 +42680*T**(-1); 1155.00 Y 5511.037+66.976538*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 -1477660*T**(-1); 1941.00 Y -119924.586+638.806871*T-87.2182461*T*LN(T)+8.204849E-3*T**2-0.304747E-6*T**3 +36699805*T**(-1); 3000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_TL 200.00 -8104.038+107.140405*T-25.2274*T*LN(T)-3.3063E-3*T**2-0.121807E-6*T**3 +42058*T**(-1); 577.00 Y -15406.859+196.771926*T-38.4130658*T*LN(T)+5.228106E-3*T**2-0.519136E-6*T**3 +729665*T**(-1); 1800.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_TL 200.00 -9194.493+150.019517*T-33.0508*T*LN(T)+17.2318E-3*T**2-10.115933E-6*T**3 +82153*T**(-1); 577.00 Y -41836.403+482.633817*T-79.2926704*T*LN(T)+26.042993E-3*T**2-2.359101E-6*T**3 +3507810*T**(-1); 1800.00 N ! +FUNCTION SGTE_LIQUID_ELEM_TL 200.00 -946.623+0.755649*T-7.44455*T*LN(T)-44.350292E-3*T**2+14.248046E-6*T**3 -54228*T**(-1); 577.00 Y -614.74+98.472609*T-25.8437*T*LN(T)-0.83662E-3*T**2+0.000009E-6*T**3 -612570*T**(-1); 1800.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_TL 200.00 -7794.038+107.140405*T-25.2274*T*LN(T)-3.3063E-3*T**2-0.121807E-6*T**3 +42058*T**(-1); 577.00 Y -15096.859+196.771926*T-38.4130658*T*LN(T)+5.228106E-3*T**2-0.519136E-6*T**3 +729665*T**(-1); 1800.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_TM 298.15 -10016.715+151.037648*T-34.3664974*T*LN(T)+12.110965E-3*T**2-3.831156E-6*T**3 +95982*T**(-1); 700.00 Y -14701.965+147.957496*T-32.1951269*T*LN(T)+0.444753E-3*T**2-0.396694E-6*T**3 +1091664*T**(-1); 1600.00 Y -8669.227+97.98144*T-25.1816969*T*LN(T)-3.384563E-3*T**2; 1818.00 Y 727125.608-4147.400632*T+534.082763*T*LN(T)-190.93039E-3*T**2 +11.689185E-6*T**3-180382220*T**(-1); 2300.00 N ! +FUNCTION SGTE_LIQUID_ELEM_TM 298.15 3182.534+144.479977*T-34.3664974*T*LN(T)+12.110965E-3*T**2-3.831156E-6*T**3 +95982*T**(-1); 600.00 Y 22640.028-126.738485*T+6.8744933*T*LN(T)-25.487085E-3*T**2+2.288172E-6*T**3 -1585412*T**(-1); 1818.00 Y -10090.305+214.184413*T-41.37976*T*LN(T); 2300.00 N ! +FUNCTION SGTE_ORTHORHOMBIC_A20_ELEM_U 298.15 -8407.734+130.955151*T-26.9182*T*LN(T)+1.25156E-3*T**2-4.42605E-6*T**3 +38568*T**(-1); 955.00 Y -22521.8+292.121093*T-48.66*T*LN(T); 3000.00 N ! +FUNCTION SGTE_TETRAGONAL_U_ELEM_U 298.15 -5156.136+106.976316*T-22.841*T*LN(T)-10.84475E-3*T**2+0.027889E-6*T**3 +81944*T**(-1); 941.50 Y -14327.309+244.16802*T-42.9278*T*LN(T); 3000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_U 298.15 -752.767+131.5381*T-27.5152*T*LN(T)-8.35595E-3*T**2+0.967907E-6*T**3 +204611*T**(-1); 1049.00 Y -4698.365+202.685635*T-38.2836*T*LN(T); 3000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_U 298.15 3947.766+120.631251*T-26.9182*T*LN(T)+1.25156E-3*T**2-4.42605E-6*T**3 +38568*T**(-1); 955.00 Y -10166.3+281.797193*T-48.66*T*LN(T); 3000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_U 298.15 -3407.734+130.955151*T-26.9182*T*LN(T)+1.25156E-3*T**2-4.42605E-6*T**3 +38568*T**(-1); 955.00 Y -17521.8+292.121093*T-48.66*T*LN(T); 3000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_U 298.15 +4247.233+131.5301*T -27.5152*T*LN(T)-.00835595*T**2+9.67907E-07*T**3+204611*T**(-1); 1049.00 Y +301.635+202.677635*T-38.2836*T*LN(T); 2500.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_V 298.15 -7930.43+133.346053*T-24.134*T*LN(T)-3.098E-3*T**2+0.12175E-6*T**3 +69460*T**(-1); 790.00 Y -7967.842+143.291093*T-25.9*T*LN(T)+0.0625E-3*T**2-0.68E-6*T**3; 2183.00 Y -41689.864+321.140783*T-47.43*T*LN(T)+644.389E29*T**(-9); 4000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_V 298.15 12833.687+123.890501*T-24.134*T*LN(T)-3.098E-3*T**2+0.12175E-6*T**3 +69460*T**(-1)-519.136E-24*T**7; 790.00 Y 12796.275+133.835541*T-25.9*T*LN(T)+0.0625E-3*T**2-0.68E-6*T**3 -519.136E-24*T**7; 2183.00 Y -19617.51+311.055983*T-47.43*T*LN(T); 4000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_V 298.15 -430.43+135.046053*T-24.134*T*LN(T)-3.098E-3*T**2+0.12175E-6*T**3+69460*T**(-1); 790.00 Y -467.842+144.991093*T-25.9*T*LN(T)+0.0625E-3*T**2-0.68E-6*T**3; 2183.00 Y -34189.864+322.840783*T-47.43*T*LN(T)+644.389E29*T**(-9); 4000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_V 298.15 -3930.43+135.746053*T-24.134*T*LN(T)-3.098E-3*T**2+0.12175E-6*T**3 +69460*T**(-1); 790.00 Y -3967.842+145.691093*T-25.9*T*LN(T)+0.0625E-3*T**2-0.68E-6*T**3; 2183.00 Y -37689.864+323.540783*T-47.43*T*LN(T)+644.389E29*T**(-9); 4000.00 N ! +FUNCTION SGTE_CBCC_A12_ELEM_V 298.15 1069.57+133.346053*T-24.134*T*LN(T)-3.098E-3*T**2+0.12175E-6*T**3+69460*T**(-1); 790.00 Y 1032.158+143.291093*T-25.9*T*LN(T)+0.0625E-3*T**2-0.68E-6*T**3; 2183.00 Y -32689.864+321.140783*T-47.43*T*LN(T)+644.389E29*T**(-9); 4000.00 N ! +FUNCTION SGTE_CUB_A13_ELEM_V 298.15 2069.57+133.346053*T-24.134*T*LN(T)-3.098E-3*T**2+0.12175E-6*T**3+69460*T**(-1); 790.00 Y 2032.158+143.291093*T-25.9*T*LN(T)+0.0625E-3*T**2-0.68E-6*T**3; 2183.00 Y -31689.864+321.140783*T-47.43*T*LN(T)+644.389E29*T**(-9); 4000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_W 298.15 -7646.311+130.4*T-24.1*T*LN(T)-1.936E-3*T**2+0.207E-6*T**3+44500*T**(-1) -0.0533E-9*T**4; 3695.00 Y -82868.801+389.362335*T-54*T*LN(T)+1528.621E30*T**(-9); 6000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_W 298.15 44514.273+116.29001*T-24.1*T*LN(T)-1.936E-3*T**2+0.207E-6*T**3+44500*T**(-1) -0.0533E-9*T**4-2713.468E-27*T**7; 3695.00 Y -30436.051+375.175*T-54*T*LN(T); 6000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_W 298.15 11653.689+131.03*T-24.1*T*LN(T)-1.936E-3*T**2+0.207E-6*T**3+44500*T**(-1) -0.0533E-9*T**4; 3695.00 Y -63568.801+389.992335*T-54*T*LN(T)+1528.621E30*T**(-9); 6000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_W 298.15 7103.689+130.4*T-24.1*T*LN(T)-1.936E-3*T**2+0.207E-6*T**3+44500*T**(-1) -0.0533E-9*T**4; 3695.00 Y -68118.801+389.362335*T-54*T*LN(T)+1528.621E30*T**(-9); 6000.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_Y 100 -8011.09379+128.572856*T-25.6656992*T*LN(T) -1.75716414E-3*T**2-4.17561786E-7*T**3+26911.509*T**(-1); 1000 Y -7179.74574+114.497104*T-23.4941827*T*LN(T)-3.8211802E-3*T**2 -8.2534534E-8*T**3; 1795.15 Y -67480.7761+382.124727*T-56.9527111*T*LN(T)+2.31774379E-3*T**2 -7.22513088E-8*T**3+18077162.6*T**(-1); 3700 N ! +FUNCTION SGTE_BCC_A2_ELEM_Y 100 -833.658863+123.667346*T-25.5832578*T*LN(T) -2.37175965E-3*T**2+9.10372497E-9*T**3+27340.0687*T**(-1); 1000 Y -1297.79829+134.528352*T-27.30384768*T*LN(T)-5.41757644E-4*T**2 -3.05012175E-7*T**3; 1795.15 Y 15389.4975+0.981325399*T-8.88296647*T*LN(T)-9.04576576E-3*T**2 +4.02944768E-7*T**3-2542575.96*T**(-1); 3700 N ! +FUNCTION SGTE_LIQUID_ELEM_Y 100 2098.50738+119.418730*T-24.6467508*T*LN(T) -3.47023463E-3*T**2-8.12981167E-7*T**3+23713.7332*T**(-1); 1000 Y 7386.44846+19.4520171*T-9.06816270*T*LN(T)-1.89533369E-2*T**2 +1.75953270E-6*T**3; 1795.15 Y -12976.5957+257.400783*T-43.0952000*T*LN(T); 3700 N ! +FUNCTION SGTE_FCC_A1_ELEM_Y 100 -2011.09379+128.572856*T-25.6656992*T*LN(T) -1.75716414E-3*T**2-4.17561786E-7*T**3+26911.509*T**(-1); 1000 Y -1179.74574+114.497104*T-23.4941827*T*LN(T)-3.8211802E-3*T**2 -8.2534534E-8*T**3; 1795.15 Y -61480.7761+382.124727*T-56.9527111*T*LN(T)+2.31774379E-3*T**2 -7.22513088E-8*T**3+18077162.6*T**(-1); 3700 N ! +FUNCTION SGTE_FCC_A1_ELEM_YB 298.15 -9370.941+189.327664*T-40.0791*T*LN(T)+42.27115E-3*T**2-22.242E-6*T**3; 553.00 Y -8192.154+121.065655*T-26.7591*T*LN(T)-2.56065E-3*T**2; 1033.00 Y 16034.89-89.478241*T+2.7623966*T*LN(T)-17.961331E-3*T**2+1.421719E-6*T**3 -3631462*T**(-1); 2000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_YB 298.15 -965.99-21.293677*T-3.8534432*T*LN(T)-30.009694E-3*T**2+4.743871E-6*T**3 -334650*T**(-1); 1033.00 Y -13368.113+188.313864*T-36.1079*T*LN(T); 1097.00 Y -3911.847+113.174165*T-25.7402233*T*LN(T)-4.743348E-3*T**2+0.363044E-6*T**3 -1553668*T**(-1); 2000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_YB 298.15 7030.788-40.615571*T-1.8061816*T*LN(T)-32.50938E-3*T**2+5.136665E-6*T**3 -370554*T**(-1); 1033.00 Y -6445.835+186.690398*T-36.7774*T*LN(T); 2000.00 N ! +FUNCTION SGTE_HCP_ZN_ELEM_ZN 298.15 -7285.787+118.470069*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; 692.68 Y -11070.559+172.34566*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_ZN 298.15 -4315.967+116.900389*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; 692.68 Y -8100.739+170.77598*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! +FUNCTION SGTE_LIQUID_ELEM_ZN 298.15 -128.574+108.177079*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3 -358.958E-21*T**7; 692.68 Y -3620.391+161.608594*T-31.38*T*LN(T); 1700.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_ZN 298.15 -4315.967+116.900389*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; 692.68 Y -8100.739+170.77598*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_ZN 298.15 -4398.827+115.959669*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; 692.68 Y -8183.599+169.83526*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! +FUNCTION SGTE_BCT_A5_ELEM_ZN 298.15 -4398.827+115.959669*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; 692.68 Y -8183.599+169.83526*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! +FUNCTION SGTE_DIAMOND_A4_ELEM_ZN 298.15 -7285.787+148.470069*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; 692.68 Y -11070.559+202.34566*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! +FUNCTION SGTE_RHOMBOHEDRAL_A7_ELEM_ZN 298.15 -4985.787+129.970069*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; 692.68 Y -8770.559+183.84566*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! +PARAMETER G(TETRAGONAL_A6,ELEM_ZN;0) 298.15 -3101.787+118.470069*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; 692.68 Y -6886.559+172.34566*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! +FUNCTION SGTE_CUB_A13_ELEM_ZN 298.15 -5285.787+118.470069*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; 692.68 Y -9070.559+172.34566*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! +FUNCTION SGTE_CBCC_A12_ELEM_ZN 298.15 -5285.787+118.470069*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; 692.68 Y -9070.559+172.34566*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! +FUNCTION SGTE_HCP_A3_ELEM_ZR 130.00 -7827.595+125.64905*T-24.1618*T*LN(T)-4.37791E-3*T**2+34971*T**(-1); 2128.00 Y -26085.921+262.724183*T-42.144*T*LN(T)-1342.896E28*T**(-9); 6000.00 N ! +FUNCTION SGTE_BCC_A2_ELEM_ZR 298.15 -525.539+124.9457*T-25.607406*T*LN(T)-0.340084E-3*T**2-0.009729E-6*T**3 +25233*T**(-1)-0.076143E-9*T**4; 2128.00 Y -30705.955+264.284163*T-42.144*T*LN(T)+1276.058E29*T**(-9); 6000.00 N ! +FUNCTION SGTE_OMEGA_ELEM_ZR 298.15 -8878.082+144.432234*T-26.8556*T*LN(T)-2.799446E-3*T**2+38376*T**(-1); 2128.00 Y -29500.524+265.290858*T-42.144*T*LN(T)+717.445E29*T**(-9); 6000.00 N ! +FUNCTION SGTE_LIQUID_ELEM_ZR 298.15 10320.095+116.568238*T-24.1618*T*LN(T)-4.37791E-3*T**2+34971*T**(-1) +1627.5E-25*T**7; 2128.00 Y -8281.26+253.812609*T-42.144*T*LN(T); 6000.00 N ! +FUNCTION SGTE_FCC_A1_ELEM_ZR 298.15 -227.595+124.74905*T-24.1618*T*LN(T)-4.37791E-3*T**2+34971*T**(-1); 2128.00 Y -18485.921+261.824183*T-42.144*T*LN(T)-1342.896E28*T**(-9); 6000.00 N ! +FUNCTION SGTE_CUB_A13_ELEM_ZR 298.15 -296.395+125.64905*T-24.1618*T*LN(T) -4.37791E-3*T**2+34971*T**(-1); 2128.00 Y -18554.721+262.724183*T-42.144*T*LN(T)-1342.896E28*T**(-9); 6000.00 N ! +FUNCTION SGTE_CBCC_A12_ELEM_ZR 298.15 -3225.395+125.64905*T -24.1618*T*LN(T)-4.37791E-3*T**2+34971*T**(-1); 2128.00 Y -21483.721+262.724183*T-42.144*T*LN(T)-1342.896E28*T**(-9); 6000.00 N ! +FUNCTION SGTE_ORTHORHOMBIC_A20_ELEM_ZR 298.15 +4474.461+124.9457*T -25.607406*T*LN(T)-3.40084E-04*T**2-9.729E-09*T**3+25233*T**(-1) -7.6143E-11*T**4; 2128.00 Y -25705.955+264.284163*T-42.144*T*LN(T); 2500.00 N ! +FUNCTION SGTE_TETRAGONAL_U_ELEM_ZR 298.15 +4474.461+124.9457*T -25.607406*T*LN(T)-3.40084E-04*T**2-9.729E-09*T**3+25233*T**(-1) -7.6143E-11*T**4; 2128.00 Y -25705.955+264.284163*T-42.144*T*LN(T); 2500.00 N ! diff --git a/data/sgte_phases.tdb b/data/sgte_phases.tdb new file mode 100644 index 0000000..1bb8cae --- /dev/null +++ b/data/sgte_phases.tdb @@ -0,0 +1,33 @@ +PHASE ALPHA_PU I 1 1 ! +PHASE BCT_A5 I 1 1 ! +PHASE BETA_PU I 1 1 ! +PHASE BETA_RHOMBO_B I 1 1 ! +PHASE CBCC_A12 I 2 1 1 ! +PHASE CUB_A13 I 2 1 1 ! +PHASE BCC_A2 I 2 1 3 ! +PHASE BCT_AA I 1 1 ! +PHASE DHCP I 1 1 ! +PHASE DIAMOND_A4 I 1 1 ! +PHASE FCC_A1 I 2 1 1 ! +PHASE GAMMA_PU I 1 1 ! +PHASE GAS % 1 1 ! +PHASE GRAPHITE I 1 1 ! +PHASE HCP_A3 I 2 1 .5 ! +PHASE HCP_ZN % 2 1 .5 ! +PHASE HEXAGONAL_A8 I 1 1 ! +PHASE LIQUID I 1 1 ! +PHASE MONOCLINIC I 1 1 ! +PHASE OMEGA I 1 1 ! +PHASE ORTHORHOMBIC_GA I 1 1 ! +PHASE ORTHORHOMBIC_S I 1 1 ! +PHASE ORTHORHOMBIC_A20 I 1 1 ! +PHASE ORTHO_AC I 1 1 ! +PHASE RED_P I 1 1 ! +PHASE RHOMB_C19 I 1 1 ! +PHASE RHOMBOHEDRAL_A7 I 1 1 ! +PHASE RHOMBO_A10 I 1 1 ! +PHASE TETRAGONAL_U I 1 1 ! +PHASE TETRAGONAL_A6 I 1 1 ! +PHASE TETRAG_AD I 1 1 ! +PHASE TET_ALPHA1 I 1 1 ! +PHASE WHITE_P I 1 1 ! diff --git a/data/sgte_web.tdb b/data/sgte_web.tdb new file mode 100644 index 0000000..ffe863a --- /dev/null +++ b/data/sgte_web.tdb @@ -0,0 +1,3080 @@ +$ Version 4.4 of Unary database - 20 July 2001 + +$TITLE=SGTE Unary Database version v4.4 - 20 July 2001 + +$ General changes since version 3.0: + +$ Revised data for Ag CUB_A13 +$ New data for BCT_A5 +$ New data for Al HCP_ZN +$ New data for As RED_P +$ New data for B BCC_A2 +$ Revised data for GRAPHITE +$ New data for Bi BIIN_EPSILON +$ New data for Cd RHOMBO_A10, BCT_A5 +$ New data for Ce HCP_A3, DHCP +$ New data for Cr HCP_ZN +$ New data for Cu HCP_ZN +$ Revised data for HCP_A3 +$ New data for Er BCC_A2 +$ New data for Fe ORTHORHOMBIC_A20, TETRAGONAL_U +$ Revised data FCC_A1, HCP_A3 +$ New data for Gd FCC_A1 +$ New data for Ge RHOMBOHEDRAL_A7, BCT_A5 +$ New data for Hg TETRAGONAL_A6, HCP_A3 +$ Revised data for Ho BCC_A2, LIQUID +$ New data for In BCT_A5, RHOMBOHEDRAL_A7, BIIN_EPSILON, HCP_ZN +$ Revised data for FCC_A1, TET_ALPHA1 +$ New data for Mg HCP_ZN +$ Revised data for Mn CBCC_A12, CUB_A13, FCC_A1, BCC_A2, LIQUID, HCP_A3 +$ Remove LAVES_C14 +$ New data for Nd HCP_A3 +$ Revised data for Os BCC_A2 +$ New data for P RHOMBOHEDRAL_A7 +$ Revised data for Pb RHOMBOHEDRAL_A7, TETRAGONAL_A6, TET_ALPHA1 +$ Revised data for Re BCC_A2 +$ Revised data for Ru BCC_A2 +$ Revised data for S ORTHORHOMBIC_S, MONOCLINIC, LIQUID +$ New data for Sc DHCP, FCC_A1 +$ New data for Si HCP_ZN +$ New data for Sm HCP_A3 +$ Phase name change RHOMB to RHOMB_C19 +$ New data for Sn TETRAGONAL_A6, HCP_ZN, CBCC_A12, CUB_A13 +$ Revised data for HCP_A3 +$ Revised data for Th FCC_A1, BCC_A2, LIQUID +$ New data for U FCC_A1, HCP_A3 +$ New data for Y FCC_A1 +$ New data for Zn RHOMBOHEDRAL_A7, HCP_ZN, CBCC_A12, CUB_A13 +$ Revised data for HCP_A3, TETRAGONAL_A6 +$ New data for Zr CUB_A13, CBCC_A12, ORTHORHOMBIC_A20, TETRAGONAL_U + +PHASE ALPHA_PU I 1 1 ! +PHASE BCT_A5 I 1 1 ! +PHASE BETA_PU I 1 1 ! +PHASE BETA_RHOMBO_B I 1 1 ! +PHASE CBCC_A12 I 2 1 1 ! +PHASE CUB_A13 I 2 1 1 ! +PHASE BCC_A2 I 2 1 3 ! +PHASE BCT_AA I 1 1 ! +PHASE DHCP I 1 1 ! +PHASE DIAMOND_A4 I 1 1 ! +PHASE FCC_A1 I 2 1 1 ! +PHASE GAMMA_PU I 1 1 ! +PHASE GAS % 1 1 ! +PHASE GRAPHITE I 1 1 ! +PHASE HCP_A3 I 2 1 .5 ! +PHASE HCP_ZN % 2 1 .5 ! +PHASE HEXAGONAL_A8 I 1 1 ! +PHASE LIQUID I 1 1 ! +PHASE MONOCLINIC I 1 1 ! +PHASE OMEGA I 1 1 ! +PHASE ORTHORHOMBIC_GA I 1 1 ! +PHASE ORTHORHOMBIC_S I 1 1 ! +PHASE ORTHORHOMBIC_A20 I 1 1 ! +PHASE ORTHO_AC I 1 1 ! +PHASE RED_P I 1 1 ! +PHASE RHOMB_C19 I 1 1 ! +PHASE RHOMBOHEDRAL_A7 I 1 1 ! +PHASE RHOMBO_A10 I 1 1 ! +PHASE TETRAGONAL_U I 1 1 ! +PHASE TETRAGONAL_A6 I 1 1 ! +PHASE TETRAG_AD I 1 1 ! +PHASE TET_ALPHA1 I 1 1 ! +PHASE WHITE_P I 1 1 ! + +$ Ag +$ ------------------------------------- +PARAMETER G(FCC_A1,AG:VA;0) 298.15 + -7209.512+118.202013*T-23.8463314*T*LN(T)-1.790585E-3*T**2-0.398587E-6*T**3 +-12011*T**(-1); 1234.93 Y +-15095.252+190.266404*T-33.472*T*LN(T)+1411.773E26*T**(-9); 3000.00 N ! + +PARAMETER G(HCP_A3,AG:VA;0) 298.15 + -6909.512+118.502013*T-23.8463314*T*LN(T)-1.790585E-3*T**2-0.398587E-6*T**3 +-12011*T**(-1); 1234.93 Y +-14795.252+190.566404*T-33.472*T*LN(T)+1411.773E26*T**(-9); 3000.00 N ! + +PARAMETER G(BCC_A2,AG:VA;0) 298.15 + -3809.512+117.152013*T-23.8463314*T*LN(T)-1.790585E-3*T**2-0.398587E-6*T**3 +-12011*T**(-1); 1234.93 Y +-11695.252+189.216404*T-33.472*T*LN(T)+1411.773E26*T**(-9); 3000.00 N ! + +PARAMETER G(LIQUID,AG;0) 298.15 + 3815.564+109.310993*T-23.8463314*T*LN(T)-1.790585E-3*T**2-0.398587E-6*T**3 +-12011*T**(-1)-1033.905E-23*T**7; 1234.93 Y +-3587.111+180.964656*T-33.472*T*LN(T); 3000.00 N ! + +$ Source of data: Assessment of the Ag-Al system +$ S S Lim, P L Rossiter and J W Tibballs; CALPHAD, 1995, 19(2), +$ 131-142. "Assessment of the Al-Ag binary phase diagram" +PARAMETER G(CUB_A13,AG:VA;0) 298.15 + -3809.512+117.152013*T-23.8463314*T*LN(T)-1.790585E-3*T**2-0.398587E-6*T**3 + -12011*T**(-1); 1234.93 Y + -11695.252+189.216404*T-33.472*T*LN(T)+1411.773E26*T**(-9); 3000.00 N ! + +$ Oh, Shim, Lee and Lee +$ J. Alloys Compounds, 1996, 238, 155-66 +$ A thermodynamic study on the Ag-Sb-Sn system +PARAMETER G(BCT_A5,AG;0) 298.15 + -3025.412+118.202013*T-23.8463314*T*LN(T)-1.790585E-3*T**2-0.398587E-6*T**3 +-12011*T**(-1); 1234.93 Y +-10911.152+190.266404*T-33.472*T*LN(T)+1411.773E26*T**(-9); 3000.00 N ! +$ ------------------------------------- + +$ Al +$ ------------------------------------- +PARAMETER G(FCC_A1,AL:VA;0) 298.15 + -7976.15+137.093038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 ++74092*T**(-1); 700.00 Y + -11276.24+223.048446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 ++74092*T**(-1); 933.47 Y +-11278.378+188.684153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! + +PARAMETER G(HCP_A3,AL:VA;0) 298.15 + -2495.15+135.293038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 ++74092*T**(-1); 700.00 Y + -5795.24+221.248446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 ++74092*T**(-1); 933.47 Y +-5797.378+186.884153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! + +$ Introduced for version 4.1 of database +PARAMETER G(HCP_ZN,AL:VA;0) 298.15 + -2495.15+135.293038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 ++74092*T**(-1); 700.00 Y + -5795.24+221.248446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 ++74092*T**(-1); 933.47 Y +-5797.378+186.884153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! + +PARAMETER G(CBCC_A12,AL:VA;0) 298.15 + 2107.25+132.280038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 ++74092*T**(-1); 700.00 Y + -1192.84+218.235446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 ++74092*T**(-1); 933.47 Y +-1194.978+183.871153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! + +PARAMETER G(BCC_A2,AL:VA;0) 298.15 + 2106.85+132.280038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 ++74092*T**(-1); 700.00 Y + -1193.24+218.235446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 ++74092*T**(-1); 933.47 Y +-1195.378+183.871153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! + +PARAMETER G(CUB_A13,AL:VA;0) 298.15 + 2944.29+132.281438*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 ++74092*T**(-1); 700.00 Y + -355.8+218.236846*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 ++74092*T**(-1); 933.47 Y +-357.938+183.872553*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! + +PARAMETER G(LIQUID,AL;0) 298.15 + 3028.879+125.251171*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 ++74092*T**(-1)+79.337E-21*T**7; 700.00 Y + -271.21+211.206579*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 ++74092*T**(-1)+79.337E-21*T**7; 933.47 Y +-795.996+177.430178*T-31.748192*T*LN(T); 2900.00 N ! + +$ From COST507 database +PARAMETER G(BCT_A5,AL;0) 298.15 + 2106.85+132.280038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 ++74092*T**(-1); 700.00 Y + -1193.24+218.235446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 ++74092*T**(-1); 933.47 Y +-1195.378+183.871153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! + +$ From COST507 database +PARAMETER G(DIAMOND_A4,AL;0) 298.15 + -7976.15+167.093038*T-24.3671976*T*LN(T)-1.884662E-3*T**2-0.877664E-6*T**3 ++74092*T**(-1); 700.00 Y + -11276.24+253.048446*T-38.5844296*T*LN(T)+18.531982E-3*T**2-5.764227E-6*T**3 ++74092*T**(-1); 933.47 Y +-11278.378+218.684153*T-31.748192*T*LN(T)-1230.524E25*T**(-9); 2900.00 N ! +$ ------------------------------------- + +$ Am +$ ------------------------------------- +PARAMETER G(DHCP,AM;0) 298.15 + -6639.201+89.645685*T-21.1868*T*LN(T)-5.59955E-3*T**2-0.541038E-6*T**3 +-30424*T**(-1); 1329.00 Y +-21702.938+241.107269*T-41.84*T*LN(T); 3000.00 N ! + +PARAMETER G(FCC_A1,AM:VA;0) 298.15 + -5224.899+99.204329*T-23.1377*T*LN(T)-2.94694E-3*T**2-0.664773E-6*T**3 +-18507*T**(-1); 1018.00 Y + -2935.853+73.800069*T-19.4406*T*LN(T)-5.418E-3*T**2-0.375233E-6*T**3 +-260435*T**(-1); 1548.70 Y +-22179.593+241.353807*T-41.84*T*LN(T); 3000.00 N ! + +PARAMETER G(BCC_A2,AM:VA;0) 298.15 + -665.396+85.114354*T-21.1868*T*LN(T)-5.5995E-3*T**2-0.541033E-6*T**3 +-30424*T**(-1); 999.00 Y + -7800.332+63.93115*T-15.8832*T*LN(T)-19.0671E-3*T**2+2.291117E-6*T**3 ++2287195*T**(-1); 1339.00 Y +-13153.887+219.600832*T-39.748*T*LN(T); 1449.00 Y + 70352.138-326.394464*T+33.413*T*LN(T)-27.36485E-3*T**2+1.801717E-6*T**3 +-17379450*T**(-1); 2183.60 Y +-16925.244+237.367028*T-41.84*T*LN(T); 3000.00 N ! + +PARAMETER G(LIQUID,AM;0) 298.15 + 13271.499+75.525185*T-21.1868*T*LN(T)-5.59955E-3*T**2-0.541038E-6*T**3 +-30424*T**(-1); 1329.00 Y +-1792.238+226.986769*T-41.84*T*LN(T); 3000.00 N ! +$ ------------------------------------- + +$ As +$ ------------------------------------- +PARAMETER G(RHOMBOHEDRAL_A7,AS;0) 298.15 +-7270.447+122.211069*T-23.3144*T*LN(T)-2.71613E-3*T**2+11600*T**(-1); 1090.00 Y +-10454.913+163.457433*T-29.216037*T*LN(T); 1200.00 N ! + +PARAMETER G(LIQUID,AS;0) 298.15 +17172.453+99.78639*T-23.3144*T*LN(T)-2.71613E-3*T**2+11600*T**(-1); 1090.00 Y +13987.987+141.032754*T-29.216037*T*LN(T); 1200.00 N ! + +PARAMETER G(FCC_A1,AS:VA;0) 298.15 +17603.553+107.471069*T-23.3144*T*LN(T)-2.71613E-3*T**2+11600*T**(-1); 1090.00 Y +14419.087+148.717433*T-29.216037*T*LN(T); 1200.00 N ! + +PARAMETER G(BCC_A2,AS:VA;0) 298.15 +17603.553+106.111069*T-23.3144*T*LN(T)-2.71613E-3*T**2+11600*T**(-1); 1090.00 Y +14419.087+147.357433*T-29.216037*T*LN(T); 1200.00 N ! + +PARAMETER G(HCP_A3,AS:VA;0) 298.15 +17603.553+108.211069*T-23.3144*T*LN(T)-2.71613E-3*T**2+11600*T**(-1); 1090.00 Y +14419.087+149.457433*T-29.216037*T*LN(T); 1200.00 N ! + +PARAMETER G(RED_P,AS;0) 298.15 +-1488.447+118.356409*T-23.3144*T*LN(T)-2.71613E-3*T**2+11600*T**(-1); 1090.00 Y +-4672.913+159.602773*T-29.216037*T*LN(T); 1200.00 N ! + +$ ------------------------------------- + +$ Au +$ ------------------------------------- +PARAMETER G(FCC_A1,AU:VA;0) 298.15 + -6938.856+106.830098*T-22.75455*T*LN(T)-3.85924E-3*T**2+0.379625E-6*T**3 +-25097*T**(-1); 929.40 Y + -93586.481+1021.69543*T-155.7067449*T*LN(T)+87.56015E-3*T**2 +-11.518713E-6*T**3+10637210*T**(-1); 1337.33 Y + 314067.829-2016.378254*T+263.2522592*T*LN(T)-118.216828E-3*T**2 ++8.923844E-6*T**3-67999832*T**(-1); 1735.80 Y +-12133.783+165.272524*T-30.9616*T*LN(T); 3200.00 N ! + +PARAMETER G(HCP_A3,AU:VA;0) 298.15 + -6698.106+108.430098*T-22.75455*T*LN(T)-3.85924E-3*T**2+0.379625E-6*T**3 +-25097*T**(-1); 929.40 Y + -93345.731+1023.29543*T-155.7067449*T*LN(T)+87.56015E-3*T**2 +-11.518713E-6*T**3+10637210*T**(-1); 1337.33 Y + 314308.579-2014.778254*T+263.2522592*T*LN(T)-118.216828E-3*T**2 ++8.923844E-6*T**3-67999832*T**(-1); 1735.80 Y +-11893.033+166.872524*T-30.9616*T*LN(T); 3200.00 N ! + +PARAMETER G(BCC_A2,AU:VA;0) 298.15 + -2688.856+105.730098*T-22.75455*T*LN(T)-3.85924E-3*T**2+0.379625E-6*T**3 +-25097*T**(-1); 929.40 Y + -89336.481+1020.59543*T-155.7067449*T*LN(T)+87.56015E-3*T**2 +-11.518713E-6*T**3+10637210*T**(-1); 1337.33 Y + 318317.829-2017.478254*T+263.2522592*T*LN(T)-118.216828E-3*T**2 ++8.923844E-6*T**3-67999832*T**(-1); 1735.80 Y +-7883.783+164.172524*T-30.9616*T*LN(T); 3200.00 N ! + +PARAMETER G(LIQUID,AU;0) 298.15 + 5613.144+97.444232*T-22.75455*T*LN(T)-3.85924E-3*T**2+0.379625E-6*T**3 +-25097*T**(-1); 929.40 Y + -81034.481+1012.309564*T-155.7067449*T*LN(T)+87.56015E-3*T**2 +-11.518713E-6*T**3+10637210*T**(-1); 1337.33 Y + 326619.829-2025.76412*T+263.2522592*T*LN(T)-118.216828E-3*T**2 ++8.923844E-6*T**3-67999832*T**(-1); 1735.80 Y +418.217+155.886658*T-30.9616*T*LN(T); 3200.00 N ! +$ ------------------------------------- + +$ B +$ ------------------------------------- +PARAMETER G(BETA_RHOMBO_B,B;0) 298.15 + -7735.284+107.111864*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 ++370843*T**(-1); 1100.00 Y + -16649.474+184.801744*T-26.6047*T*LN(T)-0.79809E-3*T**2-0.02556E-6*T**3 ++1748270*T**(-1); 2348.00 Y + -36667.582+231.336244*T-31.5957527*T*LN(T)-1.59488E-3*T**2+0.134719E-6*T**3 ++11205883*T**(-1); 3000.00 Y +-21530.653+222.396264*T-31.4*T*LN(T); 6000.00 N ! + +PARAMETER G(LIQUID,B;0) 298.15 + 40723.275+86.843839*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 ++370843*T**(-1); 500.00 Y + 41119.703+82.101722*T-14.9827763*T*LN(T)-7.095669E-3*T**2+0.507347E-6*T**3 ++335484*T**(-1); 2348.00 Y +28842.012+200.94731*T-31.4*T*LN(T); 6000.00 N ! + +$ From COST507 database +PARAMETER G(FCC_A1,B:VA;0) 298.15 + 35778.716+94.894864*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 ++370843*T**(-1); 1100.00 Y + 26864.526+172.584744*T-26.6047*T*LN(T)-0.79809E-3*T**2-0.02556E-6*T**3 ++1748270*T**(-1); 2348.00 Y + 6846.418+219.119244*T-31.5957527*T*LN(T)-1.59488E-3*T**2+0.134719E-6*T**3 ++11205883*T**(-1); 3000.00 Y +21983.347+210.179264*T-31.4*T*LN(T); 6000.00 N ! + +$ From COST507 database - add 10 to data to make unstable relative to +$ BETA_RHOMBO_B +PARAMETER G(DIAMOND_A4,B;0) 298.15 + -7725.284+107.111864*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 ++370843*T**(-1); 1100.00 Y + -16639.474+184.801744*T-26.6047*T*LN(T)-0.79809E-3*T**2-0.02556E-6*T**3 ++1748270*T**(-1); 2348.00 Y + -36657.582+231.336244*T-31.5957527*T*LN(T)-1.59488E-3*T**2+0.134719E-6*T**3 ++11205883*T**(-1); 3000.00 Y +-21520.653+222.396264*T-31.4*T*LN(T); 6000.00 N ! + +$ From COST507 database +PARAMETER G(HCP_A3,B:VA;0) 298.15 + 42472.716+97.405864*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 ++370843*T**(-1); 1100.00 Y + 33558.526+175.095744*T-26.6047*T*LN(T)-0.79809E-3*T**2-0.02556E-6*T**3 ++1748270*T**(-1); 2348.00 Y + 13540.418+221.630244*T-31.5957527*T*LN(T)-1.59488E-3*T**2+0.134719E-6*T**3 ++11205883*T**(-1); 3000.00 Y +28677.347+212.690264*T-31.4*T*LN(T); 6000.00 N ! + +$ From COST507 Round 2 database +PARAMETER G(GRAPHITE,B;0) 298.15 + 2264.716+105.111864*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 ++370843*T**(-1); 1100.00 Y + -6649.474+182.801744*T-26.6047*T*LN(T)-0.79809E-3*T**2-0.02556E-6*T**3 ++1748270*T**(-1); 2348.00 Y + -26667.582+229.336244*T-31.5957527*T*LN(T)-1.59488E-3*T**2+0.134719E-6*T**3 ++11205883*T**(-1); 3000.00 Y +-11530.653+220.396264*T-31.4*T*LN(T); 6000.00 N ! + +$ Source of data: Hallemans, Wollants and Roos +$ JPE 1995, 16(2), 137-149 +$ Thermodynamic assessment of the Fe-Nb-B phase diagram +PARAMETER G(BCC_A2,B:VA;0) 298.15 + 35778.716+94.894864*T-15.6641*T*LN(T)-6.864515E-3*T**2+0.618878E-6*T**3 + +370843*T**(-1); 1100.00 Y + 26864.526+172.584744*T-26.6047*T*LN(T)-0.79809E-3*T**2-0.02556E-6*T**3 + +1748270*T**(-1); 2348.00 Y + 6846.418+219.119244*T-31.5957527*T*LN(T)-1.59488E-3*T**2+0.134719E-6*T**3 + +11205883*T**(-1); 3000.00 N ! + +$ ------------------------------------- + +$ Ba +$ ------------------------------------- +PARAMETER G(BCC_A2,BA:VA;0) 298.15 + -17685.226+233.78606*T-42.889*T*LN(T)-1.8314E-3*T**2-0.000095E-6*T**3 ++705880*T**(-1); 1000.00 Y + -64873.614+608.188389*T-94.2824199*T*LN(T)+19.504772E-3*T**2-1.051353E-6*T**3 ++8220192*T**(-1); 2995.00 Y +8083.889+136.780042*T-32.2*T*LN(T); 4000.00 N ! + +PARAMETER G(LIQUID,BA;0) 298.15 + -9738.988+229.540143*T-43.4961089*T*LN(T)-2.346416E-3*T**2+0.991223E-6*T**3 ++723016*T**(-1); 1000.00 Y + -7381.093+235.49642*T-45.103*T*LN(T)+2.154E-3*T**2+0.000027E-6*T**3 +-365*T**(-1); 2995.00 Y +11940.282+132.212*T-32.2*T*LN(T); 4000.00 N ! + +PARAMETER G(HCP_A3,BA:VA;0) 298.15 + -15685.226+235.08606*T-42.889*T*LN(T)-1.8314E-3*T**2-0.000095E-6*T**3 ++705880*T**(-1); 1000.00 Y + -62873.614+609.488389*T-94.2824199*T*LN(T)+19.504772E-3*T**2-1.051353E-6*T**3 ++8220192*T**(-1); 2995.00 Y +10083.889+138.080042*T-32.2*T*LN(T); 4000.00 N ! + +PARAMETER G(FCC_A1,BA:VA;0) 298.15 + -15885.226+234.38606*T-42.889*T*LN(T)-1.8314E-3*T**2-0.000095E-6*T**3 ++705880*T**(-1); 1000.00 Y + -63073.614+608.788389*T-94.2824199*T*LN(T)+19.504772E-3*T**2-1.051353E-6*T**3 ++8220192*T**(-1); 2995.00 Y +9883.889+137.380042*T-32.2*T*LN(T); 4000.00 N ! +$ ------------------------------------- + +$ Be +$ ------------------------------------- +PARAMETER G(HCP_A3,BE:VA;0) 298.15 + -8553.651+137.560219*T-21.204*T*LN(T)-2.84715E-3*T**2-0.160413E-6*T**3 ++293690*T**(-1); 1527.00 Y + -121305.858+772.405844*T-103.9842999*T*LN(T)+21.078651E-3*T**2 +-1.119065E-6*T**3+27251743*T**(-1); 3000.00 N ! + +PARAMETER G(BCC_A2,BE:VA;0) 298.15 + -1076.057+109.411712*T-17.1727841*T*LN(T)-8.672487E-3*T**2+0.961427E-6*T**3 ++242309*T**(-1); 1527.00 Y +-6970.378+196.411689*T-30*T*LN(T); 1560.00 Y + -2609.973+178.131722*T-27.7823769*T*LN(T)-0.103629E-3*T**2-0.059331E-6*T**3 +-1250847*T**(-1); 3000.00 N ! + +PARAMETER G(LIQUID,BE;0) 298.15 + 7511.838+120.362788*T-20.0497038*T*LN(T)-4.821347E-3*T**2+0.415958E-6*T**3 ++281044*T**(-1); 1560.00 Y + 5364.713+156.961141*T-25.486*T*LN(T)-1.0572E-3*T**2-0.001117E-6*T**3 ++15920*T**(-1); 3000.00 N ! + +PARAMETER G(FCC_A1,BE:VA;0) 298.15 + -2204.651+136.475219*T-21.204*T*LN(T)-2.84715E-3*T**2-0.160413E-6*T**3 ++293690*T**(-1); 1527.00 Y + -114956.858+771.320844*T-103.9842999*T*LN(T)+21.078651E-3*T**2 +-1.119065E-6*T**3+27251743*T**(-1); 3000.00 N ! +$ ------------------------------------- + +$ Bi +$ ------------------------------------- +PARAMETER G(RHOMBOHEDRAL_A7,BI;0) 298.15 +-7817.776+128.418925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; + 544.55 Y + 30208.022-393.650351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 +-3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y + -11045.664+182.548971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 ++166.145E23*T**(-9); 1200.00 Y +-7581.312+124.77144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! + +PARAMETER G(LIQUID,BI;0) 298.15 + 3428.29+107.782416*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3 +-59.549E-20*T**7; 544.55 Y + 41544.282-414.460769*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 +-3616168*T**(-1); 800.00 Y +290.595+161.738553*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3; 1200.00 Y +3754.947+103.961021*T-27.196*T*LN(T); 3000.00 N ! + +PARAMETER G(TETRAGONAL_A6,BI;0) 298.15 +-3633.706+128.418925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; + 544.55 Y + 34392.092-393.650351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 +-3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y + -6861.594+182.548971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 ++166.145E23*T**(-9); 1200.00 Y +-3397.242+124.77144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! + +PARAMETER G(BCT_A5,BI;0) 298.15 +-3633.706+128.418925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; + 544.55 Y + 34392.092-393.650351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 +-3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y + -6861.594+182.548971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 ++166.145E23*T**(-9); 1200.00 Y +-3397.242+124.77144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! + +PARAMETER G(BCC_A2,BI:VA;0) 298.15 +3479.224+114.518925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; + 544.55 Y + 41505.022-407.550351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 +-3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y + 251.336+168.648971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 ++166.145E23*T**(-9); 1200.00 Y +3715.688+110.87144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! + +PARAMETER G(FCC_A1,BI:VA;0) 298.15 +2082.224+115.918925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; + 544.55 Y + 40108.022-406.150351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 +-3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y + -1145.664+170.048971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 ++166.145E23*T**(-9); 1200.00 Y +2318.688+112.27144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! + +PARAMETER G(HCP_A3,BI:VA;0) 298.15 +2082.224+116.618925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; + 544.55 Y + 40108.022-405.450351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 +-3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y + -1145.664+170.748971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 ++166.145E23*T**(-9); 1200.00 Y +2318.688+112.97144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! + +PARAMETER G(TET_ALPHA1,BI;0) 298.15 +-3583.776+128.418925*T-28.4096529*T*LN(T)+12.338888E-3*T**2-8.381598E-6*T**3; + 544.55 Y + 34442.022-393.650351*T+51.8556592*T*LN(T)-75.311163E-3*T**2+13.499885E-6*T**3 +-3616168*T**(-1)+166.145E23*T**(-9); 800.00 Y + -6811.664+182.548971*T-35.9824*T*LN(T)+7.4266E-3*T**2-1.046E-6*T**3 ++166.145E23*T**(-9); 1200.00 Y +-3347.312+124.77144*T-27.196*T*LN(T)+166.145E23*T**(-9); 3000.00 N ! + +$ ------------------------------------- + +$ C +$ ------------------------------------- +PARAMETER G(GRAPHITE,C;0) 298.15 + -17368.441+170.73*T-24.3*T*LN(T)-0.4723E-3*T**2+2562600*T**(-1) +-264300000*T**(-2)+1.2E10*T**(-3); 6000.00 N ! + +PARAMETER G(DIAMOND_A4,C;0) 298.15 + -16359.441+175.61*T-24.31*T*LN(T)-0.4723E-3*T**2+2698000*T**(-1) +-261000000*T**(-2)+1.11E10*T**(-3); 6000.00 N ! + +PARAMETER G(LIQUID,C;0) 298.15 + 100000.559+146.1*T-24.3*T*LN(T)-0.4723E-3*T**2+2562600*T**(-1) +-264300000*T**(-2)+1.2E10*T**(-3); 6000.00 N ! +$ ------------------------------------- + +$ Ca +$ ------------------------------------- +PARAMETER G(FCC_A1,CA:VA;0) 298.15 +-4955.062+72.794266*T-16.3138*T*LN(T)-11.10455E-3*T**2-133574*T**(-1); + 1115.00 Y + -107304.428+799.982066*T-114.2922467*T*LN(T)+23.733814E-3*T**2-1.2438E-6*T**3 ++18245540*T**(-1); 3000.00 N ! + +PARAMETER G(BCC_A2,CA:VA;0) 298.15 + -7020.852+142.970155*T-28.2541*T*LN(T)+7.2326E-3*T**2-4.500217E-6*T**3 ++60578*T**(-1); 716.00 Y +1640.475+1.999694*T-6.276*T*LN(T)-16.1921E-3*T**2-523000*T**(-1); 1115.00 Y + -142331.096+1023.549046*T-143.8726979*T*LN(T)+32.543127E-3*T**2 +-1.704079E-6*T**3+25353771*T**(-1); 3000.00 N ! + +PARAMETER G(LIQUID,CA;0) 298.15 +5844.846+62.4838*T-16.3138*T*LN(T)-11.10455E-3*T**2-133574*T**(-1); 500.00 Y + 7838.856+18.2979*T-8.9874787*T*LN(T)-22.66537E-3*T**2+3.338303E-6*T**3 +-230193*T**(-1); 1115.00 Y +-2654.938+188.9223*T-35*T*LN(T); 3000.00 N ! + +PARAMETER G(HCP_A3,CA:VA;0) 298.15 +-4455.062+73.494266*T-16.3138*T*LN(T)-11.10455E-3*T**2-133574*T**(-1); + 1115.00 Y + -106804.428+800.682066*T-114.2922467*T*LN(T)+23.733814E-3*T**2-1.2438E-6*T**3 ++18245540*T**(-1); 3000.00 N ! +$ ------------------------------------- + +$ Cd +$ ------------------------------------- +PARAMETER G(HCP_A3,CD:VA;0) 298.15 +-7083.469+99.506198*T-22.0442408*T*LN(T)-6.273908E-3*T**2-6966*T**(-1); + 594.22 Y + -20064.971+256.812233*T-45.1611543*T*LN(T)+8.832011E-3*T**2-0.899604E-6*T**3 ++1241290*T**(-1); 1500.00 Y +-9027.489+148.20548*T-29.7064*T*LN(T); 1600.00 N ! + +PARAMETER G(LIQUID,CD;0) 298.15 +-955.025+89.209282*T-22.0442408*T*LN(T)-6.273908E-3*T**2-6966*T**(-1); + 400.00 Y + 21716.884-371.046869*T+53.1313898*T*LN(T)-115.159917E-3*T**2+28.899781E-6*T**3 +-1271815*T**(-1); 594.22 Y +-3252.303+138.251107*T-29.7064*T*LN(T); 1600.00 N ! + +$From Zakulski, Moser, Rzyman et al. J. Phase Equil. 1993,14(2),184-196 +PARAMETER G(FCC_A1,CD:VA;0) 298.15 +-6191.169+98.586198*T-22.0442408*T*LN(T)-6.273908E-3*T**2-6966*T**(-1); + 594.22 Y + -19172.671+255.892233*T-45.1611543*T*LN(T)+8.832011E-3*T**2-0.899604E-6*T**3 ++1241290*T**(-1); 1500.00 Y +-8135.189+147.28548*T-29.7064*T*LN(T); 1600.00 N ! + +$From Zakulski, Moser, Rzyman et al. J. Phase Equil. 1993,14(2),184-196 +PARAMETER G(TETRAGONAL_A6,CD;0) 298.15 +-6191.169+98.586198*T-22.0442408*T*LN(T)-6.273908E-3*T**2-6966*T**(-1); + 594.22 Y + -19172.671+255.892233*T-45.1611543*T*LN(T)+8.832011E-3*T**2-0.899604E-6*T**3 ++1241290*T**(-1); 1500.00 Y +-8135.189+147.28548*T-29.7064*T*LN(T); 1600.00 N ! + +$ Source of data: Assessment of data the Cd-Hg system +$ Jang, Silk, Watson, Bryant, Chart and Argent, CALPHAD, 1995, 19(3), +$ 415. "The thermodynamics and phase diagrams of the Cd-Hg and Cd-Hg-Te +$ systems" +PARAMETER G(RHOMBO_A10,CD;0) 298.15 + -6283.469+98.886198*T-22.0442408*T*LN(T)-6.273908E-3*T**2-6966*T**(-1); + 594.22 Y + -19264.971+256.192233*T-45.1611543*T*LN(T)+8.832011E-3*T**2-0.899604E-6*T**3 + +1241290*T**(-1); 1500.00 Y + -8227.489+147.58548*T-29.7064*T*LN(T); 1600.00 N ! + +$ Source of data: Assessment of data the Cd-Hg system +$ Jang, Silk, Watson, Bryant, Chart and Argent, CALPHAD, 1995, 19(3), +$ 415. "The thermodynamics and phase diagrams of the Cd-Hg and Cd-Hg-Te +$ systems" +PARAMETER G(BCT_A5,CD;0) 298.15 + -2083.469+99.506198*T-22.0442408*T*LN(T)-6.273908E-3*T**2-6966*T**(-1); + 594.22 Y + -15064.971+256.812233*T-45.1611543*T*LN(T)+8.832011E-3*T**2-0.899604E-6*T**3 + +1241290*T**(-1); 1500.00 Y + -4027.489+148.20548*T-29.7064*T*LN(T); 1600.00 N ! +$ ------------------------------------- + +$ Ce +$ ------------------------------------- +PARAMETER G(FCC_A1,CE:VA;0) 298.15 + -7160.519+84.23022*T-22.3664*T*LN(T)-6.7103E-3*T**2-0.320773E-6*T**3 +-18117*T**(-1); 1000.00 Y + -79678.506+659.4604*T-101.3224803*T*LN(T)+26.046487E-3*T**2-1.930297E-6*T**3 ++11531707*T**(-1); 2000.00 Y +-14198.639+190.370192*T-37.6978*T*LN(T); 4000.00 N ! + +PARAMETER G(BCC_A2,CE:VA;0) 298.15 + -1354.69-5.21501*T-7.7305867*T*LN(T)-29.098402E-3*T**2+4.784299E-6*T**3 +-196303*T**(-1); 1000.00 Y +-12101.106+187.449688*T-37.6142*T*LN(T); 1072.00 Y + -11950.375+186.333811*T-37.4627992*T*LN(T)-0.057145E-3*T**2+0.002348E-6*T**3 +-25897*T**(-1); 4000.00 N ! + +PARAMETER G(LIQUID,CE;0) 298.15 + 4117.865-11.423898*T-7.5383948*T*LN(T)-29.36407E-3*T**2+4.827734E-6*T**3 +-198834*T**(-1); 1000.00 Y +-6730.605+183.023193*T-37.6978*T*LN(T); 4000.00 N ! + +$ From Gschneider and Pecharsky, JPE 1999, 20(6), 612-4 +PARAMETER G(DHCP,CE;0) 298.15 + -7283.058+84.66322*T-22.3664*T*LN(T)-6.7103E-3*T**2-0.320773E-6*T**3 +-18117*T**(-1); 1000.00 Y + -79801.045+659.8934*T-101.3224803*T*LN(T)+26.046487E-3*T**2-1.930297E-6*T**3 ++11531707*T**(-1); 2000.00 Y +-14321.178+190.803192*T-37.6978*T*LN(T); 4000.00 N ! + +$ From Peter Franke - Private communication +PARAMETER G(HCP_A3,CE:VA;0) 298.15 + -6860.519+84.23022*T-22.3664*T*LN(T)-6.7103E-3*T**2-0.320773E-6*T**3 +-18117*T**(-1); 1000.00 Y + -79378.506+659.4604*T-101.3224803*T*LN(T)+26.046487E-3*T**2-1.930297E-6*T**3 ++11531707*T**(-1); 2000.00 Y +-13898.639+190.370192*T-37.6978*T*LN(T); 4000.00 N ! +$ ------------------------------------- + +$ Co +$ ------------------------------------- +PARAMETER G(HCP_A3,CO:VA;0) 298.15 + 310.241+133.36601*T-25.0861*T*LN(T)-2.654739E-3*T**2-0.17348E-6*T**3 ++72527*T**(-1); 1768.00 Y +-17197.666+253.28374*T-40.5*T*LN(T)+934.88E28*T**(-9); 6000.00 N ! +PARAMETER TC(HCP_A3,CO:VA;0) 298.15 1396.00; 6000.00 N ! +PARAMETER BM(HCP_A3,CO:VA;0) 298.15 1.35; 6000.00 N ! + +PARAMETER G(FCC_A1,CO:VA;0) 298.15 + 737.832+132.750762*T-25.0861*T*LN(T)-2.654739E-3*T**2-0.17348E-6*T**3 ++72527*T**(-1); 1768.00 Y +-16770.075+252.668487*T-40.5*T*LN(T)+934.88E28*T**(-9); 6000.00 N ! +PARAMETER TC(FCC_A1,CO:VA;0) 298.15 1396.00; 6000.00 N ! +PARAMETER BM(FCC_A1,CO:VA;0) 298.15 1.35; 6000.00 N ! + +PARAMETER G(LIQUID,CO;0) 298.15 + 15395.278+124.434078*T-25.0861*T*LN(T)-2.654739E-3*T**2-0.17348E-6*T**3 ++72527*T**(-1)-219.801E-23*T**7; 1768.00 Y +-846.61+243.599944*T-40.5*T*LN(T); 6000.00 N ! + +PARAMETER G(BCC_A2,CO:VA;0) 298.15 + 3248.241+132.65221*T-25.0861*T*LN(T)-2.654739E-3*T**2-0.17348E-6*T**3 ++72527*T**(-1); 1768.00 Y +-14259.666+252.56994*T-40.5*T*LN(T)+934.88E28*T**(-9); 6000.00 N ! +PARAMETER TC(BCC_A2,CO:VA;0) 298.15 1450.00; 6000.00 N ! +PARAMETER BM(BCC_A2,CO:VA;0) 298.15 1.35; 6000.00 N ! + +PARAMETER G(CBCC_A12,CO:VA;0) 298.15 + 4465.241+133.36601*T-25.0861*T*LN(T)-2.654739E-3*T**2-0.17348E-6*T**3 ++72527*T**(-1); 1768.00 Y +-13042.666+253.28374*T-40.5*T*LN(T)+934.88E28*T**(-9); 6000.00 N ! + +PARAMETER G(CUB_A13,CO:VA;0) 298.15 + 3465.241+133.36601*T-25.0861*T*LN(T)-2.654739E-3*T**2-0.17348E-6*T**3 ++72527*T**(-1); 1768.00 Y +-14042.666+253.28374*T-40.5*T*LN(T)+934.88E28*T**(-9); 6000.00 N ! +$ ------------------------------------- + +$ Cr +$ ------------------------------------- +PARAMETER G(BCC_A2,CR:VA;0) 298.15 +-8856.94+157.48*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3+139250*T**(-1); + 2180.00 Y +-34869.344+344.18*T-50*T*LN(T)-2885.26E29*T**(-9); 6000.00 N ! +PARAMETER TC(BCC_A2,CR:VA;0) 298.15 -311.50; 6000.00 N ! +PARAMETER BM(BCC_A2,CR:VA;0) 298.15 -0.008; 6000.00 N ! + +PARAMETER G(LIQUID,CR;0) 298.15 + 15483.015+146.059775*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3 ++139250*T**(-1)+237.615E-23*T**7; 2180.00 Y +-16459.984+335.616316*T-50*T*LN(T); 6000.00 N ! + +PARAMETER G(FCC_A1,CR:VA;0) 298.15 + -1572.94+157.643*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3 ++139250*T**(-1); 2180.00 Y +-27585.344+344.343*T-50*T*LN(T)-2885.26E29*T**(-9); 6000.00 N ! +PARAMETER TC(FCC_A1,CR:VA;0) 298.15 -1109.00; 6000.00 N ! +PARAMETER BM(FCC_A1,CR:VA;0) 298.15 -2.46; 6000.00 N ! + +PARAMETER G(HCP_A3,CR:VA;0) 298.15 +-4418.94+157.48*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3+139250*T**(-1); + 2180.00 Y +-30431.344+344.18*T-50*T*LN(T)-2885.26E29*T**(-9); 6000.00 N ! +PARAMETER TC(HCP_A3,CR:VA;0) 298.15 -1109.00; 6000.00 N ! +PARAMETER BM(HCP_A3,CR:VA;0) 298.15 -2.46; 6000.00 N ! + +PARAMETER G(HCP_ZN,CR:VA;0) 298.15 +-4417.94+157.48*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3+139250*T**(-1); + 2180.00 Y +-30430.344+344.18*T-50*T*LN(T)-2885.26E29*T**(-9); 6000.00 N ! + +PARAMETER G(CUB_A13,CR:VA;0) 298.15 + 7042.06+158.1076*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3 ++139250*T**(-1); 2180.00 Y +-18970.344+344.8076*T-50*T*LN(T)-2885.26E29*T**(-9); 6000.00 N ! + +PARAMETER G(CBCC_A12,CR:VA;0) 298.15 + 2230.06+160.1996*T-26.908*T*LN(T)+1.89435E-3*T**2-1.47721E-6*T**3 ++139250*T**(-1); 2180.00 Y +-23782.344+346.8996*T-50*T*LN(T)-2885.26E29*T**(-9); 6000.00 N ! + +$ ------------------------------------- + +$ Cs +$ ------------------------------------- +PARAMETER G(BCC_A2,CS:VA;0) 200.00 + -17373.82+436.899787*T-90.5212584*T*LN(T)+202.9422E-3*T**2-127.907669E-6*T**3 ++245245*T**(-1); 301.59 Y + -13553.817+218.689955*T-46.7273304*T*LN(T)+20.43269E-3*T**2-4.074846E-6*T**3 ++181528*T**(-1)+78.016E20*T**(-9); 2000.00 N ! + +PARAMETER G(LIQUID,CS;0) 200.00 + -15282.679+429.968752*T-90.5212584*T*LN(T)+202.9422E-3*T**2 +-127.907669E-6*T**3+245245*T**(-1)-356.867E-20*T**7; 301.59 Y + -11454.038+211.728844*T-46.7273304*T*LN(T)+20.43269E-3*T**2-4.074846E-6*T**3 ++181528*T**(-1); 2000.00 N ! + +PARAMETER G(HCP_A3,CS:VA;0) 200.00 + -16873.82+438.899787*T-90.5212584*T*LN(T)+202.9422E-3*T**2-127.907669E-6*T**3 ++245245*T**(-1); 301.59 Y + -13053.817+220.689955*T-46.7273304*T*LN(T)+20.43269E-3*T**2-4.074846E-6*T**3 ++181528*T**(-1)+78.016E20*T**(-9); 2000.00 N ! + +PARAMETER G(FCC_A1,CS:VA;0) 200.00 + -16873.82+438.199787*T-90.5212584*T*LN(T)+202.9422E-3*T**2-127.907669E-6*T**3 ++245245*T**(-1); 301.59 Y + -13053.817+219.989955*T-46.7273304*T*LN(T)+20.43269E-3*T**2-4.074846E-6*T**3 ++181528*T**(-1)+78.016E20*T**(-9); 2000.00 N ! +$ ------------------------------------- + +$ Cu +$ ------------------------------------- +PARAMETER G(FCC_A1,CU:VA;0) 298.15 + -7770.458+130.485235*T-24.112392*T*LN(T)-2.65684E-3*T**2+0.129223E-6*T**3 ++52478*T**(-1); 1357.77 Y +-13542.026+183.803828*T-31.38*T*LN(T)+364.167E27*T**(-9); 3200.00 N ! + +PARAMETER G(BCC_A2,CU:VA;0) 298.15 + -3753.458+129.230235*T-24.112392*T*LN(T)-2.65684E-3*T**2+0.129223E-6*T**3 ++52478*T**(-1); 1357.77 Y +-9525.026+182.548828*T-31.38*T*LN(T)+364.167E27*T**(-9); 3200.00 N ! + +PARAMETER G(HCP_A3,CU:VA;0) 298.15 + -7170.458+130.685235*T-24.112392*T*LN(T)-2.65684E-3*T**2+0.129223E-6*T**3 ++52478*T**(-1); 1357.77 Y +-12942.026+184.003828*T-31.38*T*LN(T)+364.167E27*T**(-9); 3200.00 N ! + +PARAMETER G(HCP_ZN,CU:VA;0) 298.15 + -7170.458+130.685235*T-24.112392*T*LN(T)-2.65684E-3*T**2+0.129223E-6*T**3 ++52478*T**(-1); 1357.77 Y +-12942.026+184.003828*T-31.38*T*LN(T)+364.167E27*T**(-9); 3200.00 N ! + +PARAMETER G(LIQUID,CU;0) 298.15 + 5194.277+120.973331*T-24.112392*T*LN(T)-2.65684E-3*T**2+0.129223E-6*T**3 ++52478*T**(-1)-584.89E-23*T**7; 1357.77 Y +-46.545+173.881484*T-31.38*T*LN(T); 3200.00 N ! + +$ ------------------------------------- + +$ Dy +$ ------------------------------------- +$ Data from Huasen Shen, Weijing Zhang, Guoquan Liu, Run Wang and Zhenmin Du +$ Report F-95-01, May 1995, University of Science and Technology, Beijing +PARAMETER G(HCP_A3,DY:VA;0) 100 -7937.16586+102.307412*T-26.3917167*T*LN(T) + -7.61683657E-4*T**2-5.86914125E-7*T**3+4010.90565*T**(-1); 1000 Y + -13733.3280+214.012934*T-43.8283359*T*LN(T)+1.66909801E-2*T**2 + -3.49702836E-6*T**3+1.73619874E-2*T**(-1); 1654.15 Y + -404681.371+2032.14150*T-272.123952*T*LN(T)+5.78301681E-2*T**2 + -2.76169148E-6*T**3+109616238*T**(-1); 3000 N ! +PARAMETER TC(HCP_A3,DY:VA;0) 100 179; 3000 N ! +PARAMETER BMAGN(HCP_A3,DY:VA;0) 100 3.0; 3000 N ! + +$ Data from Huasen Shen, Weijing Zhang, Guoquan Liu, Run Wang and Zhenmin Du +$ Report F-95-01, May 1995, University of Science and Technology, Beijing +PARAMETER G(BCC_A2,DY:VA;0) 100 -6428.98566+101.740795819*T + -26.3917167*T*LN(T)-7.61683657E-4*T**2-5.86914125E-7*T**3 + +4010.90565*T**(-1); 1000 Y + 327500.062-2868.04585*T+391.515418*T*LN(T)-2.24042148E-1*T**2 + +2.04076075E-5*T**3-48652656.5*T**(-1); 1654.15 Y + -33708.7949+291.409631*T-50.208*T*LN(T); 1685.15 Y + -40775.4966+330.318068*T-55.2811171*T*LN(T)+1.5254673E-3*T**2 + -7.74371160E-8*T**3+1776589.32*T**(-1); 3000 N ! + +$ Data from Huasen Shen, Weijing Zhang, Guoquan Liu, Run Wang and Zhenmin Du +$ Report F-95-01, May 1995, University of Science and Technology, Beijing +PARAMETER G(LIQUID,DY;0) 100 5259.45264+94.7630477*T-26.3917167*T*LN(T) + -7.61683657E-4*T**2-5.86914125E-7*T**3+4010.90565*T**(-1); 1000 Y + 300126.971-2519.78614*T+341.302578*T*LN(T)-1.96153225E-1*T**2 + +1.76197799E-5*T**3-43071677.5*T**(-1); 1685.15 Y + -21864.7344+282.205014*T-49.9151*T*LN(T); 3000 N ! +$ ------------------------------------- + +$ Er +$ ------------------------------------- +PARAMETER G(HCP_A3,ER:VA;0) 298.15 + -8489.136+116.698964*T-28.3846744*T*LN(T)+0.995792E-3*T**2-0.952557E-6*T**3 ++9581*T**(-1); 1802.00 Y + -445688.206+2233.102116*T-298.1351305*T*LN(T)+65.950553E-3*T**2 +-3.041405E-6*T**3+123973199*T**(-1); 3200.00 N ! + +PARAMETER G(LIQUID,ER;0) 298.15 + 10892.966+106.457118*T-28.3846744*T*LN(T)+0.995792E-3*T**2-0.952557E-6*T**3 ++9581*T**(-1); 500.00 Y + 17912.678+0.355564*T-12.0761776*T*LN(T)-14.414687E-3*T**2+1.316517E-6*T**3 +-528122*T**(-1); 1802.00 Y +747.131+187.623024*T-38.702*T*LN(T); 3200.00 N ! + +$ New data - Susanne Norgren, J P E 2000, 21(2), 148-156 +PARAMETER G(BCC_A2,ER:VA;0) 298.15 + -3889.136+114.204611*T-28.3846744*T*LN(T)+0.995792E-3*T**2-0.952557E-6*T**3 ++9581*T**(-1); 1802.00 Y + -441088.206+2230.607763*T-298.1351305*T*LN(T)+65.950553E-3*T**2 +-3.041405E-6*T**3+123973199*T**(-1); 3200.00 N ! +$ ------------------------------------- + +$ Eu +$ ------------------------------------- +PARAMETER G(BCC_A2,EU:VA;0) 298.15 + -9864.965+135.836737*T-32.8418896*T*LN(T)+9.31735E-3*T**2-4.006564E-6*T**3 ++102717*T**(-1); 1095.00 Y + -287423.476+2174.733036*T-309.3571009*T*LN(T)+114.530917E-3*T**2 +-8.809866E-6*T**3+48455305*T**(-1); 1900.00 N ! + +PARAMETER G(LIQUID,EU;0) 298.15 + -1482.46+128.661522*T-32.8418896*T*LN(T)+9.31735E-3*T**2-4.006564E-6*T**3 ++102717*T**(-1); 400.00 Y + 10972.726-103.688201*T+4.3501554*T*LN(T)-36.811218E-3*T**2+5.452934E-6*T**3 +-646908*T**(-1); 1095.00 Y +-6890.641+175.517247*T-38.11624*T*LN(T); 1900.00 N ! +$ ------------------------------------- + +$ Fe +$ ------------------------------------- +PARAMETER G(BCC_A2,FE:VA;0) 298.15 +1225.7+124.134*T-23.5143*T*LN(T)-4.39752E-3*T**2-0.058927E-6*T**3+77359*T**(-1); + 1811.00 Y +-25383.581+299.31255*T-46*T*LN(T)+2296.03E28*T**(-9); 6000.00 N ! +PARAMETER TC(BCC_A2,FE:VA;0) 298.15 1043.00; 6000.00 N ! +PARAMETER BM(BCC_A2,FE:VA;0) 298.15 2.22; 6000.00 N ! + +$ Slight changes to data for high temperature range +PARAMETER G(FCC_A1,FE:VA;0) 298.15 +-236.7+132.416*T-24.6643*T*LN(T)-3.75752E-3*T**2-0.058927E-6*T**3+77359*T**(-1); + 1811.00 Y +-27097.3963+300.252559*T-46*T*LN(T)+2788.54E28*T**(-9); 6000.00 N ! +PARAMETER TC(FCC_A1,FE:VA;0) 298.15 -201.00; 6000.00 N ! +PARAMETER BM(FCC_A1,FE:VA;0) 298.15 -2.10; 6000.00 N ! + +PARAMETER G(LIQUID,FE;0) 298.15 + 13265.87+117.57557*T-23.5143*T*LN(T)-4.39752E-3*T**2-0.058927E-6*T**3 ++77359*T**(-1)-367.516E-23*T**7; 1811.00 Y +-10838.83+291.302*T-46*T*LN(T); 6000.00 N ! + +PARAMETER G(CBCC_A12,FE:VA;0) 298.15 +5970.7+124.134*T-23.5143*T*LN(T)-4.39752E-3*T**2-0.058927E-6*T**3+77359*T**(-1); + 1811.00 Y +-20638.581+299.31255*T-46*T*LN(T)+2296.03E28*T**(-9); 6000.00 N ! + +PARAMETER G(CUB_A13,FE:VA;0) 298.15 +4970.7+124.134*T-23.5143*T*LN(T)-4.39752E-3*T**2-0.058927E-6*T**3+77359*T**(-1); + 1811.00 Y +-21638.581+299.31255*T-46*T*LN(T)+2296.03E28*T**(-9); 6000.00 N ! + +$ Small changes to data for high temperature range +PARAMETER G(HCP_A3,FE:VA;0) 298.15 + -2480.08+136.725*T-24.6643*T*LN(T)-3.75752E-3*T**2-0.058927E-6*T**3 ++77359*T**(-1); 1811.00 Y +-29340.776+304.561559*T-46*T*LN(T)+2788.54E28*T**(-9); 6000.00 N ! + +PARAMETER G(ORTHORHOMBIC_A20,FE;0) 298.15 +6225.7+124.134*T-23.5143*T*LN(T)-4.39752E-3*T**2-0.058927E-6*T**3+77359*T**(-1); + 1811.00 Y +-20383.581+299.31255*T-46*T*LN(T)+2296.03E28*T**(-9); 6000.00 N ! + +PARAMETER G(TETRAGONAL_U,FE;0) 298.15 +6225.7+124.134*T-23.5143*T*LN(T)-4.39752E-3*T**2-0.058927E-6*T**3+77359*T**(-1); + 1811.00 Y +-20383.581+299.31255*T-46*T*LN(T)+2296.03E28*T**(-9); 6000.00 N ! +$ ------------------------------------- + +$ Ga +$ ------------------------------------- +$ Changed for version 3.00: lower temperature limit now 200 K +PARAMETER G(ORTHORHOMBIC_GA,GA;0) 200.00 + -21312.331+585.263691*T-108.2287832*T*LN(T)+227.155636E-3*T**2 +-118.575257E-6*T**3+439954*T**(-1); 302.91 Y + -7055.643+132.73019*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 +-118332*T**(-1)+164.547E21*T**(-9); 4000.00 N ! + +$ Changed for version 3.00: lower temperature limit now 200 K +PARAMETER G(LIQUID,GA;0) 200.00 + -15821.033+567.189696*T-108.2287832*T*LN(T)+227.155636E-3*T**2 +-118.575257E-6*T**3+439954*T**(-1)-70.171E-18*T**7; 302.91 Y + -1389.188+114.049043*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 +-118332*T**(-1); 4000.00 N ! + +$ Changed for version 3.00: lower temperature limit now 200 K +PARAMETER G(HCP_A3,GA:VA;0) 200.00 + -16812.331+575.763691*T-108.2287832*T*LN(T)+227.155636E-3*T**2 +-118.575257E-6*T**3+439954*T**(-1); 302.91 Y + -2555.643+123.23019*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 +-118332*T**(-1)+164.547E21*T**(-9); 4000.00 N ! + +$ Changed for version 3.00: lower temperature limit now 200 K +PARAMETER G(FCC_A1,GA:VA;0) 200.00 + -17512.331+575.063691*T-108.2287832*T*LN(T)+227.155636E-3*T**2 +-118.575257E-6*T**3+439954*T**(-1); 302.91 Y + -3255.643+122.53019*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 +-118332*T**(-1)+164.547E21*T**(-9); 4000.00 N ! + +$ Changed for version 3.00: lower temperature limit now 200 K +PARAMETER G(BCC_A2,GA:VA;0) 200.00 + -16812.331+573.563691*T-108.2287832*T*LN(T)+227.155636E-3*T**2 +-118.575257E-6*T**3+439954*T**(-1); 302.91 Y + -2555.643+121.03019*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 +-118332*T**(-1)+164.547E21*T**(-9); 4000.00 N ! + +$ Changed for version 3.00: lower temperature limit now 200 K +PARAMETER G(TETRAGONAL_A6,GA;0) 200.00 + -17812.331+575.263691*T-108.2287832*T*LN(T)+227.155636E-3*T**2 +-118.575257E-6*T**3+439954*T**(-1); 302.91 Y + -3555.643+122.73019*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 +-118332*T**(-1)+164.547E21*T**(-9); 4000.00 N ! + +$ Changed for version 3.00: lower temperature limit now 200 K +PARAMETER G(BCT_A5,GA;0) 200.00 + -17466.331+575.463691*T-108.2287832*T*LN(T)+227.155636E-3*T**2 +-118.575257E-6*T**3+439954*T**(-1); 302.91 Y + -3209.643+122.93019*T-26.0692906*T*LN(T)+0.1506E-3*T**2-0.040173E-6*T**3 +-118332*T**(-1)+164.547E21*T**(-9); 4000.00 N ! +$ ------------------------------------- + +$ Gd +$ ------------------------------------- +$ Data from Huasen Shen, Weijing Zhang, Guoquan Liu, Run Wang and Zhenmin Du +$ Report F-95-02, May 1995, University of Science and Technology, Beijing +PARAMETER G(HCP_A3,GD:VA;0) 200 -6834.58550+97.131010*T-24.7214131*T*LN(T) + -2.85240521E-3*T**2-3.14674076E-7*T**3-8665.73348*T**(-1); 1000 Y + -6483.25362+95.6919924*T-24.6598297*T*LN(T)-1.85225011E-3*T**2 + -6.61211607E-7*T**3; 1508.15 Y + -123124.992+699.125537*T-101.800197*T*LN(T)+1.50644246E-2*T**2 + -6.39165948E-7*T**3+29356890.3*T**(-1); 3600 N ! +PARAMETER TC(HCP_A3,GD:VA;0) 200 293.4; 3600 N ! +PARAMETER BMAGN(HCP_A3,GD:VA;0) 200 3.0; 3600 N ! + +$ Data from Huasen Shen, Weijing Zhang, Guoquan Liu, Run Wang and Zhenmin Du +$ Report F-95-02, May 1995, University of Science and Technology, Beijing +PARAMETER G(BCC_A2,GD:VA;0) 100 -3600.77684+95.01916415*T-24.7214131*T*LN(T) + -2.85240521E-3*T**2-3.14674076E-7*T**3-8665.73348*T**(-1); 1000 Y + 152792.743-1349.58873*T+180.097094*T*LN(T)-0.119550229*T**2 + +1.17915728E-5*T**3-22038836*T**(-1); 1508.15 Y + -15783.7618+202.222057*T-38.9604250*T*LN(T); 1586.15 Y + -19850.5562+224.817909*T-41.9043330*T*LN(T)+8.58222759E-4*T**2 + -3.77570269E-8*T**3+995428.573*T**(-1); 3600 N ! + +$ Data from Huasen Shen, Weijing Zhang, Guoquan Liu, Run Wang and Zhenmin Du +$ Report F-95-02, May 1995, University of Science and Technology, Beijing +PARAMETER G(LIQUID,GD;0) 100 6225.4407+88.80921026*T-24.7214131*T*LN(T) + -2.85240521E-3*T**2-3.14674076E-7*T**3-8665.73348*T**(-1); 1000 Y + 146262.037-1208.70685*T+159.352082*T*LN(T)-0.108247135*T**2 + +1.06945505E-5*T**3-19678357*T**(-1); 1508.15 Y + -5397.31400+192.336215*T-38.5075000*T*LN(T); 3600 N ! + +$ Data from M Zinkevich, N Mattern and H J Seiffert +$ J P E 2000, 21(4), 385-394 +PARAMETER G(FCC_A1,GD:VA;0) 200 -6334.58550+97.131010*T-24.7214131*T*LN(T) + -2.85240521E-3*T**2-3.14674076E-7*T**3-8665.73348*T**(-1); 1000 Y + -5983.25362+95.6919924*T-24.6598297*T*LN(T)-1.85225011E-3*T**2 + -6.61211607E-7*T**3; 1508.15 Y + -122624.992+699.125537*T-101.800197*T*LN(T)+1.50644246E-2*T**2 + -6.39165948E-7*T**3+29356890.3*T**(-1); 3600 N ! +$ ------------------------------------- + +$ Ge +$ ------------------------------------- +PARAMETER G(DIAMOND_A4,GE;0) 298.15 + -9486.153+165.635573*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 ++163298*T**(-1); 900.00 Y +-5689.239+102.86087*T-19.8536239*T*LN(T)-3.672527E-3*T**2; 1211.40 Y +-9548.204+156.708024*T-27.6144*T*LN(T)-859.809E26*T**(-9); 3200.00 N ! + +PARAMETER G(LIQUID,GE;0) 298.15 + 27655.337+134.94853*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 ++163298*T**(-1)+856.632E-23*T**7; 900.00 Y +31452.25+72.173826*T-19.8536239*T*LN(T)-3.672527E-3*T**2+856.632E-23*T**7; + 1211.40 Y +27243.473+126.324186*T-27.6144*T*LN(T); 3200.00 N ! + +PARAMETER G(FCC_A1,GE:VA;0) 298.15 + 26513.847+143.335573*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 ++163298*T**(-1); 900.00 Y +30310.761+80.56087*T-19.8536239*T*LN(T)-3.672527E-3*T**2; 1211.40 Y +26451.796+134.408024*T-27.6144*T*LN(T)-859.809E26*T**(-9); 3200.00 N ! + +PARAMETER G(BCC_A2,GE:VA;0) 298.15 + 24613.847+142.135573*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 ++163298*T**(-1); 900.00 Y +28410.761+79.36087*T-19.8536239*T*LN(T)-3.672527E-3*T**2; 1211.40 Y +24551.796+133.208024*T-27.6144*T*LN(T)-859.809E26*T**(-9); 3200.00 N ! + +PARAMETER G(HCP_A3,GE:VA;0) 298.15 + 25513.847+144.135573*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 ++163298*T**(-1); 900.00 Y +29310.761+81.36087*T-19.8536239*T*LN(T)-3.672527E-3*T**2; 1211.40 Y +25451.796+135.208024*T-27.6144*T*LN(T)-859.809E26*T**(-9); 3200.00 N ! + +$ Source of data: Unpublished work by Alan Dinsdale +PARAMETER G(BCT_A5,GE;0) 298.15 + 19313.847+149.135573*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 + +163298*T**(-1); 900.00 Y + 23110.761+86.36087*T-19.8536239*T*LN(T)-3.672527E-3*T**2; 1211.40 Y + 19251.796+140.208024*T-27.6144*T*LN(T)-859.809E26*T**(-9); 3000.00 N ! + +$ Source of data: Unpublished work by Alan Dinsdale +PARAMETER G(RHOMBOHEDRAL_A7,GE;0) 298.15 + 20313.847+149.135573*T-29.5337682*T*LN(T)+5.568297E-3*T**2-1.513694E-6*T**3 + +163298*T**(-1); 900.00 Y + 24110.761+86.36087*T-19.8536239*T*LN(T)-3.672527E-3*T**2; 1211.40 Y + 20251.796+140.208024*T-27.6144*T*LN(T)-859.809E26*T**(-9); 3000.00 N ! +$ ------------------------------------- + +$ Hf +$ ------------------------------------- +PARAMETER G(HCP_A3,HF:VA;0) 298.15 + -6987.297+110.744026*T-22.7075*T*LN(T)-4.146145E-3*T**2-0.000477E-6*T**3 +-22590*T**(-1); 2506.00 Y + -1446776.329+6193.609991*T-787.5363829*T*LN(T)+173.5215E-3*T**2 +-7.575759E-6*T**3+501742495*T**(-1); 3000.00 N ! + +PARAMETER G(BCC_A2,HF:VA;0) 298.15 + 5370.703+103.836026*T-22.8995*T*LN(T)-4.206605E-3*T**2+0.871923E-6*T**3 +-22590*T**(-1)-0.1446E-9*T**4; 2506.00 Y + 1912456.771-8624.20573*T+1087.6141247*T*LN(T)-286.857065E-3*T**2 ++13.427829E-6*T**3-610085091*T**(-1); 3000.00 N ! + +PARAMETER G(LIQUID,HF;0) 298.15 + 20414.959+99.790933*T-22.7075*T*LN(T)-4.146145E-3*T**2-0.000477E-6*T**3 +-22590*T**(-1); 1000.00 Y + 49731.499-149.91739*T+12.116812*T*LN(T)-21.262021E-3*T**2+1.376466E-6*T**3 +-4449699*T**(-1); 2506.00 Y +-4247.217+265.470523*T-44*T*LN(T); 3000.00 N ! + +PARAMETER G(FCC_A1,HF:VA;0) 298.15 + 3012.703+108.544026*T-22.7075*T*LN(T)-4.146145E-3*T**2-0.000477E-6*T**3 +-22590*T**(-1); 2506.00 Y + -1436776.329+6191.409991*T-787.5363829*T*LN(T)+173.5215E-3*T**2 +-7.575759E-6*T**3+501742495*T**(-1); 3000.00 N ! +$ ------------------------------------- + +$ Hg +$ ------------------------------------- +PARAMETER G(LIQUID,HG;0) 200.00 + 82356.855-3348.194658*T+618.1933082*T*LN(T)-2028.2337E-3*T**2 ++1183.982129E-6*T**3-2366612*T**(-1); 234.32 Y + -8961.207+135.232291*T-32.257*T*LN(T)+9.7977E-3*T**2-3.20695E-6*T**3 ++6670*T**(-1); 400.00 Y + -7970.627+112.33345*T-28.414*T*LN(T)+3.18535E-3*T**2-1.077802E-6*T**3 +-41095*T**(-1); 700.00 Y + -7161.338+90.797305*T-24.87*T*LN(T)-1.66775E-3*T**2+0.008737E-6*T**3 +-27495*T**(-1); 2000.00 N ! + +PARAMETER G(RHOMBO_A10,HG;0) 200.00 + -10668.401+123.274598*T-28.847*T*LN(T)+16.99705E-3*T**2-24.555667E-6*T**3 ++13330*T**(-1); 234.32 Y + -11425.394+135.928158*T-30.2091*T*LN(T)+1.07555E-3*T**2-0.228298E-6*T**3 ++35545*T**(-1); 2000.00 N ! + +$ Source of data: Assessment of data the Cd-Hg system +$ Jang, Silk, Watson, Bryant, Chart and Argent, CALPHAD, 1995, 19(3), +$ 415. "The thermodynamics and phase diagrams of the Cd-Hg and Cd-Hg-Te +$ systems" +PARAMETER G(TETRAGONAL_A6,HG;0) 200 -10459.721+125.04019*T-28.847*T*LN(T) + +16.99705E-3*T**2-24.555667E-6*T**3+13330*T**(-1); 234.32 Y + -11216.714+137.69375*T-30.2091*T*LN(T)+1.07555E-3*T**2-0.228298E-6*T**3 + +35545*T**(-1); 2000 N ! + +$ Source of data: Assessment of data the Cd-Hg system +$ Jang, Silk, Watson, Bryant, Chart and Argent, CALPHAD, 1995, 19(3), +$ 415. "The thermodynamics and phase diagrams of the Cd-Hg and Cd-Hg-Te +$ systems" +PARAMETER G(HCP_A3,HG:VA;0) 200 -10468.401+123.974598*T-28.847*T*LN(T) + +16.99705E-3*T**2-24.555667E-6*T**3+13330*T**(-1); 234.32 Y + -11225.394+136.628158*T-30.2091*T*LN(T)+1.07555E-3*T**2-0.228298E-6*T**3 + +35545*T**(-1); 2000 N ! + + +$ ------------------------------------- + +$ Ho +$ ------------------------------------- +PARAMETER G(HCP_A3,HO:VA;0) 298.15 +-7612.429+86.593171*T-23.4879*T*LN(T)-8.27315E-3*T**2+2.375467E-6*T**3; + 600.00 Y +-10917.688+182.475691*T-39.6932*T*LN(T)+18.20065E-3*T**2-4.829733E-6*T**3; + 900.00 Y + 46646.188-421.474473*T+48.0595*T*LN(T)-42.4634E-3*T**2+3.233133E-6*T**3 +-7185900*T**(-1); 1200.00 Y + 27786.061-156.162846*T+8.28608*T*LN(T)-10.82725E-3*T**2-1.112352E-6*T**3 +-6183850*T**(-1); 1703.00 Y + -825364.662+4248.379056*T-558.9506818*T*LN(T)+139.111904E-3*T**2 +-6.824652E-6*T**3+219952973*T**(-1); 3000.00 N ! + +$ New data derived from Susanne Norgren, JPE 2000, 21(2), 148-156 +PARAMETER G(BCC_A2,HO:VA;0) 298.15 +-3773.06+84.546902*T-23.4879*T*LN(T)-8.27315E-3*T**2+2.375467E-6*T**3; 600.00 Y +-7078.318+180.429422*T-39.6932*T*LN(T)+18.20065E-3*T**2-4.829733E-6*T**3; + 900.00 Y + 50485.557-423.520743*T+48.0595*T*LN(T)-42.4634E-3*T**2+3.233133E-6*T**3 +-7185900*T**(-1); 1000.00 Y + 185620.196-1635.726622*T+218.9372486*T*LN(T)-135.16576E-3*T**2 ++12.168911E-6*T**3-26729747*T**(-1); 1703.00 Y +-28759.761+272.961035*T-48.116*T*LN(T); 1745.00 Y + -152646.008+939.778244*T-134.7930638*T*LN(T)+25.544089E-3*T**2 +-1.287517E-6*T**3+32050889*T**(-1); 3000.00 N ! +$-3881.2+84.532855*T-23.4879*T*LN(T)-8.27315E-3*T**2+2.375467E-6*T**3; 600.00 Y +$-7186.458+180.415375*T-39.6932*T*LN(T)+18.20065E-3*T**2-4.829733E-6*T**3; +$ 900.00 Y +$ 50377.417-423.53479*T+48.0595*T*LN(T)-42.4634E-3*T**2+3.233133E-6*T**3 +$-7185900*T**(-1); 1000.00 Y +$ 185512.056-1635.740669*T+218.9372486*T*LN(T)-135.16576E-3*T**2 +$+12.168911E-6*T**3-26729747*T**(-1); 1703.00 Y +$-28867.901+272.946988*T-48.116*T*LN(T); 1745.00 Y +$ -152754.148+939.764197*T-134.7930638*T*LN(T)+25.544089E-3*T**2 +$-1.287517E-6*T**3+32050889*T**(-1); 3000.00 N ! + +$ New data derived from Susanne Norgren, JPE 2000, 21(2), 148-156 +PARAMETER G(LIQUID,HO;0) 298.15 +9770.9926+76.600977*T-23.4879*T*LN(T)-8.27315E-3*T**2+2.375467E-6*T**3; + 600.00 Y +6465.7336+172.483497*T-39.6932*T*LN(T)+18.20065E-3*T**2-4.829733E-6*T**3; + 900.00 Y +64029.2496-431.466667*T+48.0595*T*LN(T)-42.4634E-3*T**2+3.233133E-6*T**3 +-7185900*T**(-1); 1000.00 Y +124827.5326-994.683024*T+127.9577778*T*LN(T)-88.196514E-3*T**2+8.008222E-6*T**3 +-15727191*T**(-1); 1703.00 Y +-9688.5314+230.793918*T-43.932*T*LN(T); 3000.00 N ! +$PARAMETER G(LIQUID,HO;0) 298.15 +$9649.743+76.600977*T-23.4879*T*LN(T)-8.27315E-3*T**2+2.375467E-6*T**3; +$ 600.00 Y +$6344.484+172.483497*T-39.6932*T*LN(T)+18.20065E-3*T**2-4.829733E-6*T**3; +$ 900.00 Y +$ 63908.36-431.466667*T+48.0595*T*LN(T)-42.4634E-3*T**2+3.233133E-6*T**3 +$-7185900*T**(-1); 1000.00 Y +$ 124706.283-994.683024*T+127.9577778*T*LN(T)-88.196514E-3*T**2+8.008222E-6*T**3 +$-15727191*T**(-1); 1703.00 Y +$-9809.781+230.793918*T-43.932*T*LN(T); 3000.00 N ! +$ ------------------------------------- + +$ In +$ ------------------------------------- +PARAMETER G(TETRAGONAL_A6,IN;0) 298.15 + -6978.89+92.338115*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 +-22906*T**(-1); 429.75 Y + -7033.516+124.476588*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 +-211708*T**(-1)+353.116E20*T**(-9); 3800.00 N ! + +PARAMETER G(LIQUID,IN;0) 298.15 + -3696.798+84.701255*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 +-22906*T**(-1)-559.058E-22*T**7; 429.75 Y + -3749.81+116.835784*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 +-211708*T**(-1); 3800.00 N ! + +PARAMETER G(HCP_A3,IN:VA;0) 298.15 + -6445.89+91.651315*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 +-22906*T**(-1); 429.75 Y + -6500.516+123.789788*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 +-211708*T**(-1)+353.116E20*T**(-9); 3800.00 N ! + +PARAMETER G(HCP_ZN,IN:VA;0) 298.15 + -6445.89+91.651315*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 +-22906*T**(-1); 429.75 Y + -6500.516+123.789788*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 +-211708*T**(-1)+353.116E20*T**(-9); 3800.00 N ! + +$ Data from Boa and Ansara; Thermochimica Acta 1998, 314, 79-86 +PARAMETER G(FCC_A1,IN:VA;0) 298.15 + -6816.829+92.338115*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 + -22906*T**(-1); 429.75 Y + -6871.455+124.476588*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 + -211708*T**(-1)+353.116E20*T**(-9); 3800.00 N ! + +PARAMETER G(BCC_A2,IN:VA;0) 298.15 + -6178.89+91.538115*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 +-22906*T**(-1); 429.75 Y + -6233.516+123.676588*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 +-211708*T**(-1)+353.116E20*T**(-9); 3800.00 N ! + +$ Data from Boa and Ansara; Thermochimica Acta 1998, 314, 79-86 +PARAMETER G(TET_ALPHA1,IN;0) 298.15 + -6978.89+92.648115*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 + -22906*T**(-1); 429.75 Y + -7033.516+124.786588*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 + -211708*T**(-1)+353.116E20*T**(-9); 3800.00 N ! + +$ Source of data: Unpublished assessment of the In-Sn system by +$ Himo Ansara +PARAMETER G(BCT_A5,IN;0) 298.15 + -1938.02+88.998425*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 + -22906*T**(-1); 429.75 Y + -1992.646+121.136898*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 + -211708*T**(-1)+353.116E20*T**(-9); 3000.00 N ! + +$ Data from Boa and Ansara; Thermochimica Acta 1998, 314, 79-86 +PARAMETER G(RHOMBOHEDRAL_A7,IN;0) 298.15 + -2794.89+92.338115*T-21.8386*T*LN(T)-5.72566E-3*T**2-2.120321E-6*T**3 + -22906*T**(-1); 429.75 Y + -2849.516+124.476588*T-27.4562*T*LN(T)+0.54607E-3*T**2-0.08367E-6*T**3 + -211708*T**(-1)+353.116E20*T**(-9); 3000.00 N ! + +$ ------------------------------------- + +$ Ir +$ ------------------------------------- +PARAMETER G(FCC_A1,IR:VA;0) 298.15 +-6936.288+118.780119*T-22.7944*T*LN(T)-3.091976E-3*T**2-20083*T**(-1); + 1215.00 Y +-8123.73+140.066697*T-26.085*T*LN(T)-0.47969E-6*T**3; 2719.00 Y + 290529.037-1258.352965*T+152.4988737*T*LN(T)-47.176402E-3*T**2 ++1.844977E-6*T**3-92987250*T**(-1); 4000.00 N ! + +PARAMETER G(LIQUID,IR;0) 298.15 +16518.956+112.46806*T-22.7944*T*LN(T)-3.091976E-3*T**2-20083*T**(-1); 1000.00 Y + 102217.789-587.632815*T+73.9517579*T*LN(T)-46.38802E-3*T**2+2.761831E-6*T**3 +-13382612*T**(-1); 2719.00 Y +-38347.217+411.234043*T-59.418*T*LN(T); 4000.00 N ! + +PARAMETER G(BCC_A2,IR:VA;0) 298.15 +25063.712+111.880119*T-22.7944*T*LN(T)-3.091976E-3*T**2-20083*T**(-1); + 1215.00 Y +23876.27+133.166697*T-26.085*T*LN(T)-0.47969E-6*T**3; 2719.00 Y + 322529.037-1265.252965*T+152.4988737*T*LN(T)-47.176402E-3*T**2 ++1.844977E-6*T**3-92987250*T**(-1); 4000.00 N ! + +PARAMETER G(HCP_A3,IR:VA;0) 298.15 +-2936.288+118.180119*T-22.7944*T*LN(T)-3.091976E-3*T**2-20083*T**(-1); + 1215.00 Y +-4123.73+139.466697*T-26.085*T*LN(T)-0.47969E-6*T**3; 2719.00 Y + 294529.037-1258.952965*T+152.4988737*T*LN(T)-47.176402E-3*T**2 ++1.844977E-6*T**3-92987250*T**(-1); 4000.00 N ! +$ ------------------------------------- + +$ K +PARAMETER G(BCC_A2,K:VA;0) 200.00 + -16112.929+389.624197*T-77.0571464*T*LN(T)+146.211135E-3*T**2 +-84.949147E-6*T**3+243385*T**(-1); 336.53 Y + -11122.441+192.586544*T-39.2885968*T*LN(T)+12.167386E-3*T**2-2.64387E-6*T**3 ++43251*T**(-1)+119.223E20*T**(-9); 2200.00 N ! + +PARAMETER G(LIQUID,K;0) 200.00 + -13794.833+382.737338*T-77.0571464*T*LN(T)+146.211135E-3*T**2 +-84.949147E-6*T**3+243385*T**(-1)-94.4E-20*T**7; 336.53 Y + -8799.422+185.684327*T-39.2885968*T*LN(T)+12.167386E-3*T**2-2.64387E-6*T**3 ++43251*T**(-1); 2200.00 N ! + +PARAMETER G(HCP_A3,K:VA;0) 200.00 + -16062.929+391.624197*T-77.0571464*T*LN(T)+146.211135E-3*T**2 +-84.949147E-6*T**3+243385*T**(-1); 336.53 Y + -11072.441+194.586544*T-39.2885968*T*LN(T)+12.167386E-3*T**2-2.64387E-6*T**3 ++43251*T**(-1)+119.223E20*T**(-9); 2200.00 N ! + +PARAMETER G(FCC_A1,K:VA;0) 200.00 + -16062.929+390.924197*T-77.0571464*T*LN(T)+146.211135E-3*T**2 +-84.949147E-6*T**3+243385*T**(-1); 336.53 Y + -11072.441+193.886544*T-39.2885968*T*LN(T)+12.167386E-3*T**2-2.64387E-6*T**3 ++43251*T**(-1)+119.223E20*T**(-9); 2200.00 N ! +$ ------------------------------------- + +$ La +$ ------------------------------------- +PARAMETER G(DHCP,LA;0) 298.15 +-7968.403+120.284604*T-26.34*T*LN(T)-1.295165E-3*T**2; 550.00 Y + -3381.413+59.06113*T-17.1659411*T*LN(T)-8.371705E-3*T**2+0.68932E-6*T**3 +-399448*T**(-1); 2000.00 Y +-15608.882+181.390071*T-34.3088*T*LN(T); 4000.00 N ! + +PARAMETER G(FCC_A1,LA:VA;0) 298.15 +-6109.797+89.878761*T-21.7919*T*LN(T)-4.045175E-3*T**2-0.525865E-6*T**3; + 1134.00 Y + -124598.976+955.878375*T-139.3467411*T*LN(T)+42.032405E-3*T**2 +-3.066199E-6*T**3+20994153*T**(-1); 2000.00 Y +-12599.386+178.54399*T-34.3088*T*LN(T); 4000.00 N ! + +PARAMETER G(BCC_A2,LA:VA;0) 298.15 +-3952.161+88.072353*T-21.7919*T*LN(T)-4.045175E-3*T**2-0.525865E-6*T**3; + 800.00 Y + 321682.673-3565.082518*T+513.4407077*T*LN(T)-387.295093E-3*T**2 ++49.547989E-6*T**3-36581228*T**(-1); 1134.00 Y +-16377.894+218.492988*T-39.5388*T*LN(T); 1193.00 Y + -136609.91+1123.343974*T-163.4130738*T*LN(T)+53.968535E-3*T**2 +-4.056395E-6*T**3+21167204*T**(-1); 2000.00 Y +-8205.988+174.836315*T-34.3088*T*LN(T); 4000.00 N ! + +PARAMETER G(LIQUID,LA;0) 298.15 + 5332.653+18.23012*T-11.0188191*T*LN(T)-20.171603E-3*T**2+2.93775E-6*T**3 +-133541*T**(-1); 1134.00 Y +-3942.004+171.018431*T-34.3088*T*LN(T); 4000.00 N ! +$ ------------------------------------- + +$ Li +$ ------------------------------------- +PARAMETER G(BCC_A2,LI:VA;0) 200.00 + -10583.817+217.637482*T-38.940488*T*LN(T)+35.466931E-3*T**2-19.869816E-6*T**3 ++159994*T**(-1); 453.60 Y + -559579.123+10547.879893*T-1702.8886493*T*LN(T)+2258.329444E-3*T**2 +-571.066077E-6*T**3+33885874*T**(-1); 500.00 Y + -9062.994+179.278285*T-31.2283718*T*LN(T)+2.633221E-3*T**2-0.438058E-6*T**3 +-102387*T**(-1); 3000.00 N ! + +PARAMETER G(LIQUID,LI;0) 200.00 + -7883.612+211.841861*T-38.940488*T*LN(T)+35.466931E-3*T**2-19.869816E-6*T**3 ++159994*T**(-1); 250.00 Y + 12015.027-362.187078*T+61.6104424*T*LN(T)-182.426463E-3*T**2+63.955671E-6*T**3 +-559968*T**(-1); 453.60 Y + -6057.31+172.652183*T-31.2283718*T*LN(T)+2.633221E-3*T**2-0.438058E-6*T**3 +-102387*T**(-1); 3000.00 N ! + +PARAMETER G(FCC_A1,LI:VA;0) 200.00 + -10691.817+218.937482*T-38.940488*T*LN(T)+35.466931E-3*T**2-19.869816E-6*T**3 ++159994*T**(-1); 453.60 Y + -559687.123+10549.179893*T-1702.8886493*T*LN(T)+2258.329444E-3*T**2 +-571.066077E-6*T**3+33885874*T**(-1); 500.00 Y + -9170.994+180.578285*T-31.2283718*T*LN(T)+2.633221E-3*T**2-0.438058E-6*T**3 +-102387*T**(-1); 3000.00 N ! + +PARAMETER G(HCP_A3,LI:VA;0) 200.00 + -10737.817+219.637482*T-38.940488*T*LN(T)+35.466931E-3*T**2-19.869816E-6*T**3 ++159994*T**(-1); 453.60 Y + -559733.123+10549.879893*T-1702.8886493*T*LN(T)+2258.329444E-3*T**2 +-571.066077E-6*T**3+33885874*T**(-1); 500.00 Y + -9216.994+181.278285*T-31.2283718*T*LN(T)+2.633221E-3*T**2-0.438058E-6*T**3 +-102387*T**(-1); 3000.00 N ! +$ ------------------------------------- + +$ Lu +$ ------------------------------------- +PARAMETER G(HCP_A3,LU:VA;0) 298.15 + -8788.329+146.536283*T-29.812*T*LN(T)+5.19165E-3*T**2-1.790717E-6*T**3 ++39723*T**(-1); 700.00 Y + -9043.057+142.327643*T-29.0095*T*LN(T)+3.71416E-3*T**2-1.50147E-6*T**3 ++141549*T**(-1); 1700.00 Y +6940.092-46.91844*T-1.83986*T*LN(T)-11.9001E-3*T**2; 1936.00 Y + -404023.691+1829.379425*T-239.019502*T*LN(T)+41.800748E-3*T**2 +-1.661174E-6*T**3+124825465*T**(-1); 3700.00 N ! + +PARAMETER G(LIQUID,LU;0) 298.15 + 3983.791+141.5374*T-29.812*T*LN(T)+5.19165E-3*T**2-1.790717E-6*T**3 ++39723*T**(-1); 600.00 Y + 30389.863-198.378793*T+20.9392663*T*LN(T)-34.238743E-3*T**2+2.890636E-6*T**3 +-2398650*T**(-1); 1936.00 Y +-18994.687+292.091104*T-47.9068*T*LN(T); 3700.00 N ! +$ ------------------------------------- + +$ Mg +$ ------------------------------------- +PARAMETER G(HCP_A3,MG:VA;0) 298.15 + -8367.34+143.675547*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 ++78950*T**(-1); 923.00 Y +-14130.185+204.716215*T-34.3088*T*LN(T)+1038.192E25*T**(-9); 3000.00 N ! + +PARAMETER G(HCP_ZN,MG:VA;0) 298.15 + -8267.34+143.675547*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 ++78950*T**(-1); 923.00 Y +-14030.185+204.716215*T-34.3088*T*LN(T)+1038.192E25*T**(-9); 3000.00 N ! + +PARAMETER G(LIQUID,MG;0) 298.15 + -165.097+134.838617*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 ++78950*T**(-1)-80.176E-21*T**7; 923.00 Y +-5439.869+195.324057*T-34.3088*T*LN(T); 3000.00 N ! + +PARAMETER G(FCC_A1,MG:VA;0) 298.15 + -5767.34+142.775547*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 ++78950*T**(-1); 923.00 Y +-11530.185+203.816215*T-34.3088*T*LN(T)+1038.192E25*T**(-9); 3000.00 N ! + +PARAMETER G(BCC_A2,MG:VA;0) 298.15 + -5267.34+141.575547*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 ++78950*T**(-1); 923.00 Y +-11030.185+202.616215*T-34.3088*T*LN(T)+1038.192E25*T**(-9); 3000.00 N ! + +PARAMETER G(CBCC_A12,MG:VA;0) 298.15 + -3764.94+140.664547*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 ++78950*T**(-1); 923.00 Y +-9527.785+201.705215*T-34.3088*T*LN(T)+1038.192E25*T**(-9); 3000.00 N ! + +PARAMETER G(CUB_A13,MG:VA;0) 298.15 + -3367.34+140.675547*T-26.1849782*T*LN(T)+0.4858E-3*T**2-1.393669E-6*T**3 ++78950*T**(-1); 923.00 Y +-9130.185+201.716215*T-34.3088*T*LN(T)+1038.192E25*T**(-9); 3000.00 N ! + +$ ------------------------------------- + +$ Mn +$ Incorporation of Volumetric information from Caian Qiu and Sybrand van der +$ Zwaag, J. Phys. Chem. Solids, 1998, 59(2), 167-174 +$ HCP volumetric data assumed to be the same as those for FCC +$ ------------------------------------- +PARAMETER G(CBCC_A12,MN:VA;0) 298.15 +-8115.28+130.059*T-23.4582*T*LN(T)-7.34768E-3*T**2+69827*T**(-1); 1519.00 Y +-28733.41+312.2648*T-48*T*LN(T)+1656.847E27*T**(-9); 2000.00 N ! +PARAMETER TC(CBCC_A12,MN:VA;0) 298.15 -285.00; 2000.00 N ! +PARAMETER BM(CBCC_A12,MN:VA;0) 298.15 -0.66; 2000.00 N ! +$PARAMETER V0(CBCC_A12,MN:VA;0) 298.15 7.258892E-06; 2000 N ! +$PARAMETER ALPHA(CBCC_A12,MN:VA;0) 298.15 28.13687E-06+11.82448E-8*T; +$ 2000 N ! +$PARAMETER KAPPA(CBCC_A12,MN:VA;0) 298.15 5.24E-12+1.99523E-15*T; +$ 2000 N ! +$PARAMETER N(CBCC_A12,MN:VA;0) 298.15 5.0; 2000 N ! + +PARAMETER G(CUB_A13,MN:VA;0) 298.15 +-5800.4+135.995*T-24.8785*T*LN(T)-5.83359E-3*T**2+70269*T**(-1); 1519.00 Y +-28290.76+311.2933*T-48*T*LN(T)+396.757E28*T**(-9); 2000.00 N ! +$PARAMETER V0(CUB_A13,MN:VA;0) 298.15 7.367796E-06; 2000 N ! +$PARAMETER ALPHA(CUB_A13,MN:VA;0) 298.15 93.65662E-06+31.47284E-9*T; +$ 2000 N ! +$PARAMETER KAPPA(CUB_A13,MN:VA;0) 298.15 5.24E-12+1.99523E-15*T; +$ 2000 N ! +$PARAMETER N(CUB_A13,MN:VA;0) 298.15 5.0; 2000 N ! + +PARAMETER G(FCC_A1,MN:VA;0) 298.15 +-3439.3+131.884*T-24.5177*T*LN(T)-6E-3*T**2+69600*T**(-1); 1519.00 Y +-26070.1+309.6664*T-48*T*LN(T)+386.196E28*T**(-9); 2000.00 N ! +PARAMETER TC(FCC_A1,MN:VA;0) 298.15 -1620.00; 2000.00 N ! +PARAMETER BM(FCC_A1,MN:VA;0) 298.15 -1.86; 2000.00 N ! +$PARAMETER V0(FCC_A1,MN:VA;0) 298.15 7.201547E-06; 2000 N ! +$PARAMETER ALPHA(FCC_A1,MN:VA;0) 298.15 128.1572E-06+1.199968E-8*T; +$ 2000 N ! +$PARAMETER KAPPA(FCC_A1,MN:VA;0) 298.15 5.24E-12+1.99523E-15*T; +$ 2000 N ! +$PARAMETER N(FCC_A1,MN:VA;0) 298.15 5.0; 2000 N ! + +PARAMETER G(BCC_A2,MN:VA;0) 298.15 +-3235.3+127.85*T-23.7*T*LN(T)-7.44271E-3*T**2+60000*T**(-1); 1519.00 Y +-23188.83+307.7043*T-48*T*LN(T)+1265.152E27*T**(-9); 2000.00 N ! +PARAMETER TC(BCC_A2,MN:VA;0) 298.15 -580.00; 2000.00 N ! +PARAMETER BM(BCC_A2,MN:VA;0) 298.15 -0.27; 2000.00 N ! +$PARAMETER V0(BCC_A2,MN:VA;0) 298.15 7.313314E-06; 2000 N ! +$PARAMETER ALPHA(BCC_A2,MN:VA;0) 298.15 131.5987E-06; +$ 2000 N ! +$PARAMETER KAPPA(BCC_A2,MN:VA;0) 298.15 5.24E-12+1.99523E-15*T; +$ 2000 N ! +$PARAMETER N(BCC_A2,MN:VA;0) 298.15 5.0; 2000 N ! + +PARAMETER G(LIQUID,MN;0) 298.15 + 9744.63+117.4382*T-23.4582*T*LN(T)-7.34768E-3*T**2+69827*T**(-1) +-441.929E-23*T**7; 1519.00 Y +-9993.9+299.036*T-48*T*LN(T); 2000.00 N ! +$PARAMETER V0(LIQUID,MN;0) 298.15 8.176651E-06; 2000 N ! +$PARAMETER ALPHA(LIQUID,MN;0) 298.15 87.10223E-06; +$ 2000 N ! +$PARAMETER KAPPA(LIQUID,MN;0) 298.15 5.24E-12+1.99523E-15*T; +$ 2000 N ! +$PARAMETER N(LIQUID,MN;0) 298.15 5.0; 2000 N ! + +PARAMETER G(HCP_A3,MN:VA;0) 298.15 +-4439.3+133.007*T-24.5177*T*LN(T)-6E-3*T**2+69600*T**(-1); 1519.00 Y +-27070.1+310.7894*T-48*T*LN(T)+386.196E28*T**(-9); 2000.00 N ! +PARAMETER TC(HCP_A3,MN:VA;0) 298.15 -1620.00; 2000.00 N ! +PARAMETER BM(HCP_A3,MN:VA;0) 298.15 -1.86; 2000.00 N ! +$PARAMETER V0(HCP_A3,MN:VA;0) 298.15 7.201547E-06; 2000 N ! +$PARAMETER ALPHA(HCP_A3,MN:VA;0) 298.15 128.1572E-06+1.199968E-8*T; +$ 2000 N ! +$PARAMETER KAPPA(HCP_A3,MN:VA;0) 298.15 5.24E-12+1.99523E-15*T; +$ 2000 N ! +$PARAMETER N(HCP_A3,MN:VA;0) 298.15 5.0; 2000 N ! + +$ ------------------------------------- + +$ Mo +$ ------------------------------------- +PARAMETER G(BCC_A2,MO:VA;0) 298.15 + -7746.302+131.9197*T-23.56414*T*LN(T)-3.443396E-3*T**2+0.566283E-6*T**3 ++65812*T**(-1)-0.130927E-9*T**4; 2896.00 Y +-30556.41+283.559746*T-42.63829*T*LN(T)-4849.315E30*T**(-9); 5000.00 N ! + +PARAMETER G(LIQUID,MO;0) 298.15 + 34085.045+117.224788*T-23.56414*T*LN(T)-3.443396E-3*T**2+0.566283E-6*T**3 ++65812*T**(-1)-0.130927E-9*T**4+424.519E-24*T**7; 2896.00 Y +3538.963+271.6697*T-42.63829*T*LN(T); 5000.00 N ! + +PARAMETER G(FCC_A1,MO:VA;0) 298.15 + 7453.698+132.5497*T-23.56414*T*LN(T)-3.443396E-3*T**2+0.566283E-6*T**3 ++65812*T**(-1)-0.130927E-9*T**4; 2896.00 Y +-15356.41+284.189746*T-42.63829*T*LN(T)-4849.315E30*T**(-9); 5000.00 N ! + +PARAMETER G(HCP_A3,MO:VA;0) 298.15 + 3803.698+131.9197*T-23.56414*T*LN(T)-3.443396E-3*T**2+0.566283E-6*T**3 ++65812*T**(-1)-0.130927E-9*T**4; 2896.00 Y +-19006.41+283.559746*T-42.63829*T*LN(T)-4849.315E30*T**(-9); 5000.00 N ! +$ ------------------------------------- + +$ N +$ ------------------------------------- +$ DATA FOR 1/2N2 +FUNCTION GHSERNN 298.15 + -3750.675-9.45425*T-12.7819*T*LN(T)-1.76686E-3*T**2+0.002681E-6*T**3 +-32374*T**(-1); 950.00 Y + -7358.85+17.2003*T-16.3699*T*LN(T)-0.65107E-3*T**2+0.030097E-6*T**3 ++563070*T**(-1); 3350.00 Y + -16392.8+50.26*T-20.4695*T*LN(T)+0.239754E-3*T**2-0.008333E-6*T**3 ++4596375*T**(-1); 6000.00 N ! + +PARAMETER G(GAS,N2;0) 298.15 2*GHSERNN; 6000 N ! + +PARAMETER G(LIQUID,N;0) 298.15 + 26199.325+49.56575*T-12.7819*T*LN(T)-1.76686E-3*T**2+0.002681E-6*T**3 +-32374*T**(-1); 950.00 Y + 22591.15+76.2203*T-16.3699*T*LN(T)-0.65107E-3*T**2+0.030097E-6*T**3 ++563070*T**(-1); 3350.00 Y + 13557.2+109.28*T-20.4695*T*LN(T)+0.239754E-3*T**2-0.008333E-6*T**3 ++4596375*T**(-1); 6000.00 N ! +$ ------------------------------------- + +$ Na +$ ------------------------------------- +PARAMETER G(BCC_A2,NA:VA;0) 200.00 + -11989.434+260.548732*T-51.0393608*T*LN(T)+72.306633E-3*T**2 +-43.638283E-6*T**3+132154*T**(-1); 370.87 Y + -11009.884+199.619999*T-38.1198801*T*LN(T)+9.745854E-3*T**2-1.70664E-6*T**3 ++34342*T**(-1)+165.071E21*T**(-9); 2300.00 N ! + +PARAMETER G(LIQUID,NA;0) 200.00 + -9408.414+253.596552*T-51.0393608*T*LN(T)+72.306633E-3*T**2-43.638283E-6*T**3 ++132154*T**(-1)-276.132E-20*T**7; 370.87 Y + -8400.44+192.587343*T-38.1198801*T*LN(T)+9.745854E-3*T**2-1.70664E-6*T**3 ++34342*T**(-1); 2300.00 N ! + +PARAMETER G(HCP_A3,NA:VA;0) 200.00 + -12093.434+262.548732*T-51.0393608*T*LN(T)+72.306633E-3*T**2 +-43.638283E-6*T**3+132154*T**(-1); 370.87 Y + -11113.884+201.619999*T-38.1198801*T*LN(T)+9.745854E-3*T**2-1.70664E-6*T**3 ++34342*T**(-1)+165.071E21*T**(-9); 2300.00 N ! + +PARAMETER G(FCC_A1,NA:VA;0) 200.00 + -12039.434+261.848732*T-51.0393608*T*LN(T)+72.306633E-3*T**2 +-43.638283E-6*T**3+132154*T**(-1); 370.87 Y + -11059.884+200.919999*T-38.1198801*T*LN(T)+9.745854E-3*T**2-1.70664E-6*T**3 ++34342*T**(-1)+165.071E21*T**(-9); 2300.00 N ! +$ ------------------------------------- + +$ Nb +$ ------------------------------------- +PARAMETER G(BCC_A2,NB:VA;0) 298.15 + -8519.353+142.045475*T-26.4711*T*LN(T)+0.203475E-3*T**2-0.35012E-6*T**3 ++93399*T**(-1); 2750.00 Y +-37669.3+271.720843*T-41.77*T*LN(T)+1528.238E29*T**(-9); 6000.00 N ! + +PARAMETER G(LIQUID,NB;0) 298.15 + 21262.202+131.229057*T-26.4711*T*LN(T)+0.203475E-3*T**2-0.35012E-6*T**3 ++93399*T**(-1)-306.098E-25*T**7; 2750.00 Y +-7499.398+260.756148*T-41.77*T*LN(T); 6000.00 N ! + +PARAMETER G(FCC_A1,NB:VA;0) 298.15 + 4980.647+143.745475*T-26.4711*T*LN(T)+0.203475E-3*T**2-0.35012E-6*T**3 ++93399*T**(-1); 2750.00 Y +-24169.3+273.420843*T-41.77*T*LN(T)+1528.238E29*T**(-9); 6000.00 N ! + +PARAMETER G(HCP_A3,NB:VA;0) 298.15 + 1480.647+144.445475*T-26.4711*T*LN(T)+0.203475E-3*T**2-0.35012E-6*T**3 ++93399*T**(-1); 2750.00 Y +-27669.3+274.120843*T-41.77*T*LN(T)+1528.238E29*T**(-9); 6000.00 N ! +$ ------------------------------------- + +$ Nd +$ ------------------------------------- +PARAMETER G(DHCP,ND;0) 298.15 + -8402.93+111.10239*T-27.0858*T*LN(T)+0.556125E-3*T**2-2.6923E-6*T**3 ++34887*T**(-1); 900.00 Y +-6984.083+83.662617*T-22.7536*T*LN(T)-4.20402E-3*T**2-1.802E-6*T**3; 1128.00 Y + -225610.846+1673.040749*T-238.1828733*T*LN(T)+78.615997E-3*T**2 +-6.048207E-6*T**3+38810350*T**(-1); 1799.00 Y +-25742.331+276.257088*T-48.7854*T*LN(T); 1800.00 N ! + +PARAMETER G(BCC_A2,ND:VA;0) 298.15 + -6965.635+110.556109*T-27.0858*T*LN(T)+0.556125E-3*T**2-2.6923E-6*T**3 ++34887*T**(-1); 400.00 Y + 7312.2-153.033976*T+14.9956777*T*LN(T)-50.479E-3*T**2+7.287217E-6*T**3 +-831810*T**(-1); 1128.00 Y +-18030.266+239.677322*T-44.5596*T*LN(T); 1289.00 Y + 334513.017-2363.919899*T+311.409193*T*LN(T)-156.030778E-3*T**2 ++12.408421E-6*T**3-64319604*T**(-1); 1800.00 N ! + +PARAMETER G(LIQUID,ND;0) 298.15 + -3351.187+109.517314*T-27.0858*T*LN(T)+0.556125E-3*T**2-2.6923E-6*T**3 ++34887*T**(-1); 300.00 Y + 5350.01-86.593963*T+5.357301*T*LN(T)-46.955463E-3*T**2+6.860782E-6*T**3 +-374380*T**(-1); 1128.00 Y +-16335.232+268.625903*T-48.7854*T*LN(T); 1800.00 N ! + +$ From COST507 database +PARAMETER G(FCC_A1,ND:VA;0) 298.15 + -7902.93+111.10239*T-27.0858*T*LN(T)+0.556125E-3*T**2-2.6923E-6*T**3 ++34887*T**(-1); 900.00 Y +-6484.083+83.662617*T-22.7536*T*LN(T)-4.20402E-3*T**2-1.802E-6*T**3; 1128.00 Y + -225110.846+1673.04075*T-238.182873*T*LN(T)+78.615997E-3*T**2-6.048207E-6*T**3 ++38810350*T**(-1); 1799.00 Y +-25242.331+276.257088*T-48.7854*T*LN(T); 1800.00 N ! + +$ From Susanne Norgren, Thesis, KTH 2000 +PARAMETER G(HCP_A3,ND:VA;0) 298.15 + -6902.93+110.6866645*T-27.0858*T*LN(T)+0.556125E-3*T**2-2.6923E-6*T**3 ++34887*T**(-1); 900.00 Y +-5484.083+83.2468915*T-22.7536*T*LN(T)-4.20402E-3*T**2-1.802E-6*T**3; 1128.00 Y +-224110.846+1672.625024*T-238.1828733*T*LN(T)+78.615997E-3*T**2 +-6.048207E-6*T**3+38810350*T**(-1); 1799.00 Y +-24242.331+275.8413625*T-48.7854*T*LN(T); 1800.00 N ! +$ ------------------------------------- + +$ Ni +$ ------------------------------------- +PARAMETER G(FCC_A1,NI:VA;0) 298.15 +-5179.159+117.854*T-22.096*T*LN(T)-4.8407E-3*T**2; 1728.00 Y +-27840.655+279.135*T-43.1*T*LN(T)+1127.54E28*T**(-9); 3000.00 N ! +PARAMETER TC(FCC_A1,NI:VA;0) 298.15 633.00; 3000.00 N ! +PARAMETER BM(FCC_A1,NI:VA;0) 298.15 0.52; 3000.00 N ! + +PARAMETER G(LIQUID,NI;0) 298.15 +11235.527+108.457*T-22.096*T*LN(T)-4.8407E-3*T**2-382.318E-23*T**7; 1728.00 Y +-9549.775+268.598*T-43.1*T*LN(T); 3000.00 N ! + +PARAMETER G(BCC_A2,NI:VA;0) 298.15 +3535.925+114.298*T-22.096*T*LN(T)-4.8407E-3*T**2; 1728.00 Y +-19125.571+275.579*T-43.1*T*LN(T)+1127.54E28*T**(-9); 3000.00 N ! +PARAMETER TC(BCC_A2,NI:VA;0) 298.15 575.00; 3000.00 N ! +PARAMETER BM(BCC_A2,NI:VA;0) 298.15 0.85; 3000.00 N ! + +PARAMETER G(HCP_A3,NI:VA;0) 298.15 +-4133.159+119.109*T-22.096*T*LN(T)-4.8407E-3*T**2; 1728.00 Y +-26794.655+280.39*T-43.1*T*LN(T)+1127.54E28*T**(-9); 3000.00 N ! + +PARAMETER G(CUB_A13,NI:VA;0) 298.15 +-3087.159+117.854*T-22.096*T*LN(T)-4.8407E-3*T**2; 1728.00 Y +-25748.655+279.135*T-43.1*T*LN(T)+1127.54E28*T**(-9); 3000.00 N ! + +PARAMETER G(CBCC_A12,NI:VA;0) 298.15 +-1623.159+117.854*T-22.096*T*LN(T)-4.8407E-3*T**2; 1728.00 Y +-24284.655+279.135*T-43.1*T*LN(T)+1127.54E28*T**(-9); 3000.00 N ! +$ ------------------------------------- + +$ Np +$ ------------------------------------- +PARAMETER G(ORTHO_AC,NP;0) 298.15 +241.888-57.531347*T+4.0543*T*LN(T)-41.27725E-3*T**2-402857*T**(-1); 553.00 Y + -57015.112+664.27337*T-102.523*T*LN(T)+28.4592E-3*T**2-2.483917E-6*T**3 ++4796910*T**(-1); 1799.00 Y +-12092.736+255.780866*T-45.3964*T*LN(T); 4000.00 N ! + +PARAMETER G(TETRAG_AD,NP;0) 298.15 + -10157.32+183.829213*T-34.11*T*LN(T)-16.1186E-3*T**2+4.98465E-6*T**3 ++532825*T**(-1); 555.00 Y +-7873.688+207.01896*T-39.33*T*LN(T); 856.00 Y + 19027.98-46.64846*T-3.4265*T*LN(T)-19.21045E-3*T**2+1.52726E-6*T**3 +-3564640*T**(-1); 1999.00 Y +-16070.82+256.707037*T-45.3964*T*LN(T); 4000.00 N ! + +PARAMETER G(BCC_A2,NP:VA;0) 298.15 + -3224.664+174.911817*T-35.177*T*LN(T)-2.51865E-3*T**2+0.514743E-6*T**3 ++302225*T**(-1); 856.00 Y +-2366.486+180.807719*T-36.401*T*LN(T); 917.00 Y + 50882.281-297.324358*T+30.7734*T*LN(T)-34.3483E-3*T**2+2.707217E-6*T**3 +-7500100*T**(-1); 1999.00 Y +-14879.686+254.773087*T-45.3964*T*LN(T); 4000.00 N ! + +PARAMETER G(LIQUID,NP;0) 298.15 + -4627.18+160.024959*T-31.229*T*LN(T)-16.3885E-3*T**2+2.941883E-6*T**3 ++439915*T**(-1); 917.00 Y +-7415.255+247.671446*T-45.3964*T*LN(T); 4000.00 N ! +$ ------------------------------------- + +$ O +$ ------------------------------------- +$ DATA FOR 1/2O2 +$ Changed for version 3.00: addition of significant figures +FUNCTION GHSEROO 298.15 + -3480.87-25.503038*T-11.1355*T*LN(T)-5.098875E-3*T**2+0.661845833E-6*T**3 +-38365*T**(-1); 1000.00 Y + -6568.763+12.659879*T-16.8138*T*LN(T)-0.5957975E-3*T**2+0.006781E-6*T**3 ++262905*T**(-1); 3300.00 Y + -13986.728+31.259624*T-18.9536*T*LN(T)-0.425243E-3*T**2+0.010721E-6*T**3 ++4383200*T**(-1); 6000.00 N ! + +PARAMETER G(GAS,O2;0) 298.15 2*GHSEROO; 6000 N ! + +$ Changed for version 3.00: addition of significant figures +PARAMETER G(LIQUID,O;0) 298.15 + -6129.77+5.936962*T-11.1355*T*LN(T)-5.098875E-3*T**2+0.661845833E-6*T**3 +-38365*T**(-1); 1000.00 Y + -9217.663+44.099879*T-16.8138*T*LN(T)-0.5957975E-3*T**2+0.006781E-6*T**3 ++262905*T**(-1); 3300.00 Y + -16635.628+62.699624*T-18.9536*T*LN(T)-0.425243E-3*T**2+0.010721E-6*T**3 ++4383200*T**(-1); 6000.00 N ! + +$ Changed for version 3.00: addition of significant figures +PARAMETER G(BCC_A2,O:VA;0) 298.15 + 26519.13-25.503038*T-11.1355*T*LN(T)-5.098875E-3*T**2+0.661845833E-6*T**3 +-38365*T**(-1); 1000.00 Y + 23431.237+12.659879*T-16.8138*T*LN(T)-0.5957975E-3*T**2+0.006781E-6*T**3 ++262905*T**(-1); 3300.00 Y + 16013.272+31.259624*T-18.9536*T*LN(T)-0.425243E-3*T**2+0.010721E-6*T**3 ++4383200*T**(-1); 6000.00 N ! + +$ Changed for version 3.00: addition of significant figures +PARAMETER G(FCC_A1,O:VA;0) 298.15 + 26519.13-25.503038*T-11.1355*T*LN(T)-5.098875E-3*T**2+0.661845833E-6*T**3 +-38365*T**(-1); 1000.00 Y + 23431.237+12.659879*T-16.8138*T*LN(T)-0.5957975E-3*T**2+0.006781E-6*T**3 ++262905*T**(-1); 3300.00 Y + 16013.272+31.259624*T-18.9536*T*LN(T)-0.425243E-3*T**2+0.010721E-6*T**3 ++4383200*T**(-1); 6000.00 N ! +$ ------------------------------------- + +$ Os +$ ------------------------------------- +PARAMETER G(HCP_A3,OS:VA;0) 298.15 +-7196.978+126.369531*T-23.5710242*T*LN(T)-1.90427E-3*T**2; 3306.00 Y + 644910.07-1935.213696*T+224.9980343*T*LN(T)-42.489827E-3*T**2+1.173861E-6*T**3 +-312569031*T**(-1); 5500.00 N ! + +PARAMETER G(LIQUID,OS;0) 298.15 +29263.192+117.895788*T-23.5710242*T*LN(T)-1.90427E-3*T**2; 1000.00 Y + 68715.318-198.324341*T+19.9382156*T*LN(T)-20.464464E-3*T**2+1.014279E-6*T**3 +-6237261*T**(-1); 3306.00 Y +-15903.192+336.874526*T-50*T*LN(T); 5500.00 N ! + +PARAMETER G(FCC_A1,OS:VA;0) 298.15 +5803.022+123.869531*T-23.5710242*T*LN(T)-1.90427E-3*T**2; 3306.00 Y + 657910.07-1937.713696*T+224.9980343*T*LN(T)-42.489827E-3*T**2+1.173861E-6*T**3 +-312569031*T**(-1); 5500.00 N ! + +$ BCC parameter changed 22/5/2000 to make mpt of bcc about 2000 K +$ PARAMETER G(BCC_A2,OS:VA;0) 298.15 GHSEROS+27500-4.4*T; 5500 N ! +PARAMETER G(BCC_A2,OS:VA;0) 298.15 + 20303.022+121.969531*T-23.5710242*T*LN(T)-1.90427E-3*T**2; 3306.00 Y + 672410.07-1939.613696*T+224.9980343*T*LN(T)-42.489827E-3*T**2+1.173861E-6*T**3 + -312569031*T**(-1); 5500.00 N ! + +$ ------------------------------------- + +$ P +$ ------------------------------------- +PARAMETER G(WHITE_P,P;0) 250.00 + -43821.799+1026.693886*T-178.426*T*LN(T)+290.708E-3*T**2-104.022667E-6*T**3 ++1632695*T**(-1); 317.30 Y + -9587.448+152.341487*T-28.7335301*T*LN(T)+1.715669E-3*T**2-0.22829E-6*T**3 ++172966*T**(-1); 1000.00 Y +-8093.075+135.876831*T-26.326*T*LN(T); 3000.00 N ! + +PARAMETER G(LIQUID,P;0) 250.00 + -26316.111+434.930931*T-70.7440584*T*LN(T)-2.898936E-3*T**2+39.049371E-6*T**3 ++1141147*T**(-1); 317.30 Y +-7232.449+133.291873*T-26.326*T*LN(T); 3000.00 N ! + +PARAMETER G(RED_P,P;0) 250.00 + -25976.559+148.672002*T-25.55*T*LN(T)+3.4121E-3*T**2-2.418867E-6*T**3 ++160095*T**(-1); 500.00 Y + -21723.721+77.671737*T-14.368*T*LN(T)-9.57685E-3*T**2+0.393917E-6*T**3 +-141375*T**(-1); 852.35 Y + -119408.413+1026.02962*T-149.4495562*T*LN(T)+67.272364E-3*T**2 +-6.651929E-6*T**3+12495943*T**(-1); 1500.00 Y +-24524.119+153.839181*T-26.326*T*LN(T); 3000.00 N ! + +PARAMETER G(BCC_A2,P:VA;0) 250.00 + 18792.241+135.412002*T-25.55*T*LN(T)+3.4121E-3*T**2-2.418867E-6*T**3 ++160095*T**(-1); 500.00 Y + 23045.079+64.411737*T-14.368*T*LN(T)-9.57685E-3*T**2+0.393917E-6*T**3 +-141375*T**(-1); 852.35 Y + -74639.613+1012.76962*T-149.4495562*T*LN(T)+67.272364E-3*T**2 +-6.651929E-6*T**3+12495943*T**(-1); 1500.00 Y +20244.681+140.579181*T-26.326*T*LN(T); 3000.00 N ! + +PARAMETER G(FCC_A1,P:VA;0) 250.00 + 10842.441+135.534002*T-25.55*T*LN(T)+3.4121E-3*T**2-2.418867E-6*T**3 ++160095*T**(-1); 500.00 Y + 15095.279+64.533737*T-14.368*T*LN(T)-9.57685E-3*T**2+0.393917E-6*T**3 +-141375*T**(-1); 852.35 Y + -82589.413+1012.89162*T-149.4495562*T*LN(T)+67.272364E-3*T**2 +-6.651929E-6*T**3+12495943*T**(-1); 1500.00 Y +12294.881+140.701181*T-26.326*T*LN(T); 3000.00 N ! + +PARAMETER G(RHOMBOHEDRAL_A7,P;0) 250.00 + -44009.799+1026.819156*T-178.426*T*LN(T)+290.708E-3*T**2-104.022667E-6*T**3 ++1632695*T**(-1); 317.30 Y + -9775.448+152.466757*T-28.7335301*T*LN(T)+1.715669E-3*T**2-0.22829E-6*T**3 ++172966*T**(-1); 1000.00 Y +-8281.075+136.002101*T-26.326*T*LN(T); 3000.00 N ! + +$ ------------------------------------- + +$ Pa +$ ------------------------------------- +PARAMETER G(BCT_AA,PA;0) 298.15 +-7681.561+111.973215*T-23.9116*T*LN(T)-6.21325E-3*T**2; 1443.00 Y + 27955.763-177.320253*T+16.305*T*LN(T)-26.3416E-3*T**2+1.884933E-6*T**3 +-5908900*T**(-1); 2176.00 Y +-29949.683+288.308639*T-47.2792*T*LN(T); 4000.00 N ! + +PARAMETER G(BCC_A2,PA:VA;0) 298.15 + 781.847+71.957409*T-18.203*T*LN(T)-13.22095E-3*T**2+1.337387E-6*T**3 +-101600*T**(-1); 1443.00 Y +-10955.948+220.478519*T-39.748*T*LN(T); 1845.00 Y + 284495.194-1397.150521*T+171.108*T*LN(T)-63.7105E-3*T**2+3.343867E-6*T**3 +-74992000*T**(-1); 2710.00 Y +-27885.171+286.096187*T-47.2792*T*LN(T); 4000.00 N ! + +PARAMETER G(LIQUID,PA;0) 298.15 +8499.539+102.429215*T-23.9116*T*LN(T)-6.21325E-3*T**2; 1088.00 Y + 48013.96-278.789916*T+30.336*T*LN(T)-37.2478E-3*T**2+3.075017E-6*T**3 +-5064250*T**(-1); 1845.00 Y +-12508.174+277.955437*T-47.2792*T*LN(T); 4000.00 N ! +$ ------------------------------------- + +$ Pb +$ ------------------------------------- +PARAMETER G(FCC_A1,PB:VA;0) 298.15 +-7650.085+101.700244*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; + 600.61 Y +-10531.095+154.243182*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); + 1200.00 Y + 4157.616+53.139072*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 +-2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! + +PARAMETER G(LIQUID,PB;0) 298.15 + -2977.961+93.949561*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3 +-60.19E-20*T**7; 600.61 Y +-5677.958+146.176046*T-32.4913959*T*LN(T)+1.54613E-3*T**2; 1200.00 Y + 9010.753+45.071937*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 +-2696755*T**(-1); 2100.00 N ! + +PARAMETER G(BCT_A5,PB;0) 298.15 +-7161.085+105.220244*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; + 600.61 Y +-10042.095+157.763182*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); + 1200.00 Y + 4646.616+56.659072*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 +-2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! + +PARAMETER G(HCP_A3,PB:VA;0) 298.15 +-7350.085+102.700244*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; + 600.61 Y +-10231.095+155.243182*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); + 1200.00 Y + 4457.616+54.139072*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 +-2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! + +PARAMETER G(BCC_A2,PB:VA;0) 298.15 +-5250.085+100.600244*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; + 600.61 Y +-8131.095+153.143182*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); + 1200.00 Y + 6557.616+52.039072*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 +-2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! + +$ Data from Boa and Ansara; Thermochimica Acta 1998, 314, 79-86 +PARAMETER G(TET_ALPHA1,PB;0) 298.15 + -5746.785+99.640044*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; + 600.61 Y + -8627.795+152.182982*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); + 1200.00 Y + 6060.916+51.078872*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 + -2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! + +$ Data from Boa and Ansara; Thermochimica Acta 1998, 314, 79-86 +PARAMETER G(RHOMBOHEDRAL_A7,PB;0) 298.15 + -7350.085+102.700244*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; + 600.61 Y + -10231.095+155.243182*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); + 1200.00 Y + 4457.616+54.139072*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 + -2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! + +$ Data from Boa and Ansara; Thermochimica Acta 1998, 314, 79-86 +PARAMETER G(TETRAGONAL_A6,PB;0) 298.15 + -3156.85+101.700244*T-24.5242231*T*LN(T)-3.65895E-3*T**2-0.24395E-6*T**3; + 600.61 Y + -6037.86+154.243182*T-32.4913959*T*LN(T)+1.54613E-3*T**2+805.448E23*T**(-9); + 1200.00 Y + 8650.851+53.139072*T-18.9640637*T*LN(T)-2.882943E-3*T**2+0.098144E-6*T**3 + -2696755*T**(-1)+805.448E23*T**(-9); 2100.00 N ! +$ ------------------------------------- + +$ Pd +$ ------------------------------------- +PARAMETER G(FCC_A1,PD:VA;0) 298.15 + -10204.027+176.076315*T-32.211*T*LN(T)+7.120975E-3*T**2-1.919875E-6*T**3 ++168687*T**(-1); 900.00 Y + 917.062+49.659892*T-13.5708*T*LN(T)-7.17522E-3*T**2+0.191115E-6*T**3 +-1112465*T**(-1); 1828.00 Y + -67161.018+370.102147*T-54.2067086*T*LN(T)+2.091396E-3*T**2-0.062811E-6*T**3 ++18683526*T**(-1); 4000.00 N ! + +PARAMETER G(LIQUID,PD;0) 298.15 + 1302.731+170.964153*T-32.211*T*LN(T)+7.120975E-3*T**2-1.919875E-6*T**3 ++168687*T**(-1); 600.00 Y + 23405.778-116.918419*T+10.8922031*T*LN(T)-27.266568E-3*T**2+2.430675E-6*T**3 +-1853674*T**(-1); 1828.00 Y +-12373.637+251.416903*T-41.17*T*LN(T); 4000.00 N ! + +PARAMETER G(BCC_A2,PD:VA;0) 298.15 + 295.973+174.276315*T-32.211*T*LN(T)+7.120975E-3*T**2-1.919875E-6*T**3 ++168687*T**(-1); 900.00 Y + 11417.062+47.859892*T-13.5708*T*LN(T)-7.17522E-3*T**2+0.191115E-6*T**3 +-1112465*T**(-1); 1828.00 Y + -56661.018+368.302147*T-54.2067086*T*LN(T)+2.091396E-3*T**2-0.062811E-6*T**3 ++18683526*T**(-1); 4000.00 N ! + +PARAMETER G(HCP_A3,PD:VA;0) 298.15 + -8204.027+176.176315*T-32.211*T*LN(T)+7.120975E-3*T**2-1.919875E-6*T**3 ++168687*T**(-1); 900.00 Y + 2917.062+49.759892*T-13.5708*T*LN(T)-7.17522E-3*T**2+0.191115E-6*T**3 +-1112465*T**(-1); 1828.00 Y + -65161.018+370.202147*T-54.2067086*T*LN(T)+2.091396E-3*T**2-0.062811E-6*T**3 ++18683526*T**(-1); 4000.00 N ! +$ ------------------------------------- + +$ Pr +$ ------------------------------------- +PARAMETER G(DHCP,PR;0) 298.15 + -18803.379+356.587384*T-68.9176*T*LN(T)+72.929E-3*T**2-25.184333E-6*T**3 ++507385*T**(-1); 500.00 Y +-7246.848+82.427384*T-22.8909*T*LN(T)-4.97126E-3*T**2-1.22951E-6*T**3; + 800.00 Y + 95411.023-1073.551114*T+146.764*T*LN(T)-128.8205E-3*T**2+15.592233E-6*T**3 +-11588800*T**(-1); 1068.00 Y + -481663.131+4234.333112*T-606.1203107*T*LN(T)+305.181506E-3*T**2 +-30.994702E-6*T**3+70926840*T**(-1); 1204.00 Y +-20014.678+227.685155*T-42.9697*T*LN(T); 3800.00 N ! + +PARAMETER G(BCC_A2,PR:VA;0) 298.15 + -2863.651+28.274853*T-13.7470527*T*LN(T)-22.84377E-3*T**2+3.542468E-6*T**3 +-87486*T**(-1); 1068.00 Y +-11985.919+188.657121*T-38.451*T*LN(T); 1204.00 Y + 953.224+100.826281*T-26.6824313*T*LN(T)-4.106833E-3*T**2+0.176214E-6*T**3 +-2473024*T**(-1); 3800.00 N ! + +PARAMETER G(LIQUID,PR;0) 298.15 + 3848.961-29.099465*T-4.7344931*T*LN(T)-35.119723E-3*T**2+5.427467E-6*T**3 +-207406*T**(-1); 1068.00 Y +-10539.574+219.508805*T-42.9697*T*LN(T); 3800.00 N ! +$ ------------------------------------- + +$ Pt +$ ------------------------------------- +PARAMETER G(FCC_A1,PT:VA;0) 298.15 + -7595.631+124.388275*T-24.5526*T*LN(T)-2.48297E-3*T**2-0.020138E-6*T**3 ++7974*T**(-1); 1300.00 Y + -9253.174+161.529615*T-30.2527*T*LN(T)+2.321665E-3*T**2-0.656946E-6*T**3 +-272106*T**(-1); 2041.50 Y + -222048.216+1019.358919*T-136.192996*T*LN(T)+20.454938E-3*T**2 +-0.759259E-6*T**3+71539020*T**(-1); 4000.00 N ! + +PARAMETER G(LIQUID,PT;0) 298.15 + 12518.385+115.113092*T-24.5526*T*LN(T)-2.48297E-3*T**2-0.020138E-6*T**3 ++7974*T**(-1); 600.00 Y + 19023.491+32.94182*T-12.3403769*T*LN(T)-11.551507E-3*T**2+0.931516E-6*T**3 +-601426*T**(-1); 2041.50 Y +1404.468+205.858962*T-36.5*T*LN(T); 4000.00 N ! + +PARAMETER G(BCC_A2,PT:VA;0) 298.15 + 7404.369+121.988275*T-24.5526*T*LN(T)-2.48297E-3*T**2-0.020138E-6*T**3 ++7974*T**(-1); 1300.00 Y + 5746.826+159.129615*T-30.2527*T*LN(T)+2.321665E-3*T**2-0.656946E-6*T**3 +-272106*T**(-1); 2041.50 Y + -207048.216+1016.958919*T-136.192996*T*LN(T)+20.454938E-3*T**2 +-0.759259E-6*T**3+71539020*T**(-1); 4000.00 N ! + +PARAMETER G(HCP_A3,PT:VA;0) 298.15 + -5095.631+124.488275*T-24.5526*T*LN(T)-2.48297E-3*T**2-0.020138E-6*T**3 ++7974*T**(-1); 1300.00 Y + -6753.174+161.629615*T-30.2527*T*LN(T)+2.321665E-3*T**2-0.656946E-6*T**3 +-272106*T**(-1); 2041.50 Y + -219548.216+1019.458919*T-136.192996*T*LN(T)+20.454938E-3*T**2 +-0.759259E-6*T**3+71539020*T**(-1); 4000.00 N ! +$ ------------------------------------- + +$ Pu +$ ------------------------------------- +PARAMETER G(ALPHA_PU,PU;0) 298.15 +-7396.309+80.301382*T-18.1258*T*LN(T)-22.41E-3*T**2; 400.00 Y + -16605.962+236.786603*T-42.4187*T*LN(T)-1.34493E-3*T**2+0.263443E-6*T**3 ++579325*T**(-1); 944.00 Y +-14462.156+232.961553*T-42.248*T*LN(T); 3000.00 N ! + +PARAMETER G(BCC_A2,PU:VA;0) 298.15 + -1358.984+116.603882*T-27.094*T*LN(T)-9.105E-3*T**2+2.061667E-6*T**3 ++20863*T**(-1); 745.00 Y +-2890.817+156.878957*T-33.72*T*LN(T); 956.00 Y + 29313.619-132.788248*T+6.921*T*LN(T)-20.23305E-3*T**2+1.426922E-6*T**3 +-4469245*T**(-1); 2071.00 Y +-15400.585+227.421855*T-42.248*T*LN(T); 3000.00 N ! + +PARAMETER G(BETA_PU,PU;0) 298.15 +-4873.654+123.249151*T-27.416*T*LN(T)-6.53E-3*T**2; 679.50 Y + 2435.094+43.566585*T-15.7351*T*LN(T)-15.4772E-3*T**2+1.524942E-6*T**3 +-864940*T**(-1); 1464.00 Y +-13959.062+228.221615*T-42.248*T*LN(T); 3000.00 N ! + +PARAMETER G(FCC_A1,PU:VA;0) 298.15 +-3920.781+127.586536*T-28.4781*T*LN(T)-5.4035E-3*T**2; 990.00 Y + 3528.208+41.52572*T-15.7351*T*LN(T)-15.4772E-3*T**2+1.524942E-6*T**3 +-864940*T**(-1); 1464.00 Y +-12865.948+226.18075*T-42.248*T*LN(T); 3000.00 N ! + +PARAMETER G(GAMMA_PU,PU;0) 298.15 + -16766.303+419.402655*T-77.5802*T*LN(T)+81.6415E-3*T**2-28.103833E-6*T**3 ++574825*T**(-1); 487.90 Y +-2942.77+88.325069*T-22.0233*T*LN(T)-11.4795E-3*T**2; 593.90 Y + -9336.967+160.314641*T-32.3405*T*LN(T)-7.0383E-3*T**2+0.692887E-6*T**3 ++630600*T**(-1); 1179.00 Y +-12435.75+226.131617*T-42.248*T*LN(T); 3000.00 N ! + +PARAMETER G(LIQUID,PU;0) 298.15 +-788.209+67.788082*T-18.1258*T*LN(T)-22.41E-3*T**2; 400.00 Y + -9997.862+224.273303*T-42.4187*T*LN(T)-1.34493E-3*T**2+0.263443E-6*T**3 ++579325*T**(-1); 944.00 Y +-7854.056+220.448253*T-42.248*T*LN(T); 3000.00 N ! + +PARAMETER G(TETRAGONAL_A6,PU;0) 298.15 + -496.178+54.586547*T-16.43*T*LN(T)-24.006E-3*T**2+5.166667E-6*T**3 +-158470*T**(-1); 736.00 Y +-6122.307+173.35008*T-35.56*T*LN(T); 757.00 Y + 3982.078+63.890352*T-19.756*T*LN(T)-9.37295E-3*T**2+0.659882E-6*T**3 +-1112565*T**(-1); 2157.00 Y +-15200.539+228.05641*T-42.248*T*LN(T); 3000.00 N ! +$ ------------------------------------- + +$ Rb +$ ------------------------------------- +PARAMETER G(BCC_A2,RB:VA;0) 200.00 + -21669.733+583.580988*T-115.2825888*T*LN(T)+262.77612E-3*T**2 +-152.236932E-6*T**3+385754*T**(-1); 312.46 Y + -7823.397+117.050578*T-29.1775424*T*LN(T)+0.412369E-3*T**2-0.46822E-6*T**3 +-126310*T**(-1)-555.029E20*T**(-9); 900.00 Y + -39488.142+450.974149*T-77.7006456*T*LN(T)+33.795632E-3*T**2-4.829082E-6*T**3 ++3778006*T**(-1)-555.029E20*T**(-9); 1600.00 Y + -159742.511+1287.789466*T-191.2627736*T*LN(T)+81.61687E-3*T**2 +-8.61653E-6*T**3+27738456*T**(-1)-555.029E20*T**(-9); 2100.00 N ! + +PARAMETER G(LIQUID,RB;0) 200.00 + -19452.181+576.470502*T-115.2825888*T*LN(T)+262.77612E-3*T**2 +-152.236932E-6*T**3+385754*T**(-1)+144.078E-19*T**7; 312.46 Y + -5650.532+110.090262*T-29.1775424*T*LN(T)+0.412369E-3*T**2-0.46822E-6*T**3 +-126310*T**(-1); 900.00 Y + -37315.276+444.013833*T-77.7006456*T*LN(T)+33.795632E-3*T**2-4.829082E-6*T**3 ++3778006*T**(-1); 1600.00 Y + -157569.646+1280.829151*T-191.2627736*T*LN(T)+81.61687E-3*T**2 +-8.61653E-6*T**3+27738456*T**(-1); 2100.00 N ! + +PARAMETER G(HCP_A3,RB:VA;0) 200.00 + -21469.733+585.580988*T-115.2825888*T*LN(T)+262.77612E-3*T**2 +-152.236932E-6*T**3+385754*T**(-1); 312.46 Y + -7623.397+119.050578*T-29.1775424*T*LN(T)+0.412369E-3*T**2-0.46822E-6*T**3 +-126310*T**(-1)-555.029E20*T**(-9); 900.00 Y + -39288.142+452.974149*T-77.7006456*T*LN(T)+33.795632E-3*T**2-4.829082E-6*T**3 ++3778006*T**(-1)-555.029E20*T**(-9); 1600.00 Y + -159542.511+1289.789466*T-191.2627736*T*LN(T)+81.61687E-3*T**2 +-8.61653E-6*T**3+27738456*T**(-1)-555.029E20*T**(-9); 2100.00 N ! + +PARAMETER G(FCC_A1,RB:VA;0) 200.00 + -21469.733+584.880988*T-115.2825888*T*LN(T)+262.77612E-3*T**2 +-152.236932E-6*T**3+385754*T**(-1); 312.46 Y + -7623.397+118.350578*T-29.1775424*T*LN(T)+0.412369E-3*T**2-0.46822E-6*T**3 +-126310*T**(-1)-555.029E20*T**(-9); 900.00 Y + -39288.142+452.274149*T-77.7006456*T*LN(T)+33.795632E-3*T**2-4.829082E-6*T**3 ++3778006*T**(-1)-555.029E20*T**(-9); 1600.00 Y + -159542.511+1289.089466*T-191.2627736*T*LN(T)+81.61687E-3*T**2 +-8.61653E-6*T**3+27738456*T**(-1)-555.029E20*T**(-9); 2100.00 N ! +$ ------------------------------------- + +$ Re +$ ------------------------------------- +$ Data from John Arblaster, To be published, CALPHAD, 1996, 20(3) +PARAMETER G(HCP_A3,RE:VA;0) 298.15 -7695.279+128.421589*T-24.348*T*LN(T) + -2.53505E-3*T**2+0.192818E-6*T**3+32915*T**(-1); 1200 Y +-15775.998+194.667426*T-33.586*T*LN(T)+2.24565E-3*T**2-0.281835E-6*T**3 ++1376270*T**(-1); 2400 Y +-70882.739+462.110749*T-67.956*T*LN(T)+11.84945E-3*T**2-0.788955E-6*T**3 ++18075200*T**(-1); 3458 Y +346325.888-1211.371859*T+140.8316548*T*LN(T)-33.764567E-3*T**2 ++1.053726E-6*T**3-134548866*T**(-1); 5000 Y +-78564.296+346.997842*T-49.519*T*LN(T); 6000 N ! + +$ Data from John Arblaster, To be published, CALPHAD, 1996, 20(3) +PARAMETER G(LIQUID,RE;0) 298.15 16125.604+122.076209*T-24.348*T*LN(T) + -2.53505E-3*T**2+0.192818E-6*T**3+32915*T**(-1); 1200 Y +8044.885+188.322047*T-33.586*T*LN(T)+2.24565E-3*T**2-0.281835E-6*T**3 ++1376270*T**(-1); 2000 Y +568842.665-2527.838455*T+314.1788975*T*LN(T)-89.39817E-3*T**2 ++3.92854E-6*T**3-163100987*T**(-1); 3458 Y +-39044.888+335.723691*T-49.519*T*LN(T); 6000 N ! + +PARAMETER G(BCC_A2,RE:VA;0) 298.15 9304.721+124.721589*T-24.348*T*LN(T) + -2.53505E-3*T**2+0.192818E-6*T**3+32915*T**(-1); 1200 Y +1224.002+190.967426*T-33.586*T*LN(T)+2.24565E-3*T**2-0.281835E-6*T**3 ++1376270*T**(-1); 2400 Y +-53882.739+458.410749*T-67.956*T*LN(T)+11.84945E-3*T**2-0.788955E-6*T**3 ++18075200*T**(-1); 3458 Y +363325.888-1215.071859*T+140.8316548*T*LN(T)-33.764567E-3*T**2 ++1.053726E-6*T**3-134548866*T**(-1); 5000 Y +-61564.296+343.297842*T-49.519*T*LN(T); 6000 N ! + +PARAMETER G(FCC_A1,RE:VA;0) 298.15 + 3304.721+126.921589*T-24.348*T*LN(T)-2.53505E-3*T**2+0.192818E-6*T**3 ++32915*T**(-1); 1200.00 Y + -4775.998+193.167426*T-33.586*T*LN(T)+2.24565E-3*T**2-0.281835E-6*T**3 ++1376270*T**(-1); 2400.00 Y + -59882.739+460.610749*T-67.956*T*LN(T)+11.84945E-3*T**2-0.788955E-6*T**3 ++18075200*T**(-1); 3458.00 Y + 357325.888-1212.871859*T+140.8316548*T*LN(T)-33.764567E-3*T**2+1.053726E-6*T**3 +-134548866*T**(-1); 5000.00 Y +-67564.296+345.497842*T-49.519*T*LN(T); 6000.00 N ! +$ ------------------------------------- + +$ Rh +$ ------------------------------------- +PARAMETER G(FCC_A1,RH:VA;0) 298.15 + -7848.828+132.020923*T-24.0178336*T*LN(T)-3.424186E-3*T**2-0.168032E-6*T**3 ++55846*T**(-1); 1200.00 Y + -28367.852+305.771019*T-48.3766632*T*LN(T)+9.66345E-3*T**2-1.512774E-6*T**3 ++3348162*T**(-1); 2237.00 Y + -6237470.481+30151.634226*T-3874.2105805*T*LN(T)+1049.213607E-3*T**2 +-53.978814E-6*T**3+1880362184*T**(-1); 2450.00 Y +-44863.489+344.889895*T-50.58456*T*LN(T); 2500.00 N ! + +PARAMETER G(BCC_A2,RH:VA;0) 298.15 + 11151.172+127.320923*T-24.0178336*T*LN(T)-3.424186E-3*T**2-0.168032E-6*T**3 ++55846*T**(-1); 1200.00 Y + -9367.852+301.071019*T-48.3766632*T*LN(T)+9.66345E-3*T**2-1.512774E-6*T**3 ++3348162*T**(-1); 2237.00 Y + -6218470.481+30146.934226*T-3874.2105805*T*LN(T)+1049.213607E-3*T**2 +-53.978814E-6*T**3+1880362184*T**(-1); 2450.00 Y +-25863.489+340.189895*T-50.58456*T*LN(T); 2500.00 N ! + +PARAMETER G(HCP_A3,RH:VA;0) 298.15 + -4848.828+131.520923*T-24.0178336*T*LN(T)-3.424186E-3*T**2-0.168032E-6*T**3 ++55846*T**(-1); 1200.00 Y + -25367.852+305.271019*T-48.3766632*T*LN(T)+9.66345E-3*T**2-1.512774E-6*T**3 ++3348162*T**(-1); 2237.00 Y + -6234470.481+30151.134226*T-3874.2105805*T*LN(T)+1049.213607E-3*T**2 +-53.978814E-6*T**3+1880362184*T**(-1); 2450.00 Y +-41863.489+344.389895*T-50.58456*T*LN(T); 2500.00 N ! + +PARAMETER G(LIQUID,RH;0) 298.15 + 11244.082+125.099593*T-24.0178336*T*LN(T)-3.424186E-3*T**2-0.168032E-6*T**3 ++55846*T**(-1); 700.00 Y + 35898.508-147.926418*T+15.6492377*T*LN(T)-28.665357E-3*T**2+2.100572E-6*T**3 +-2638940*T**(-1); 2237.00 Y +-18208.54+332.974832*T-50.58456*T*LN(T); 2500.00 N ! +$ ------------------------------------- + +$ Ru +$ ------------------------------------- +PARAMETER G(HCP_A3,RU:VA;0) 298.15 + -7561.873+127.866233*T-22.9143287*T*LN(T)-4.062566E-3*T**2+0.17641E-6*T**3 ++56377*T**(-1); 1500.00 Y + -59448.103+489.516214*T-72.3241219*T*LN(T)+18.726245E-3*T**2-1.952433E-6*T**3 ++11063885*T**(-1); 2607.00 Y + -38588773.031+168610.517401*T-21329.7050475*T*LN(T)+5221.638997E-3*T**2 +-240.245985E-6*T**3+1308.2992629E7*T**(-1); 2740.00 Y +-55768.304+364.482314*T-51.8816*T*LN(T); 4500.00 N ! + +$ Parameter revised 22/5/2000 to make mpt of BCC_A2 about 1600 K +$ PARAMETER G(BCC_A2,RU:VA;0) 298.15 GHSERRU+21500-5.05*T; 4500 N ! +PARAMETER G(BCC_A2,RU:VA;0) 298.15 + 13938.127+122.816233*T-22.9143287*T*LN(T)-4.062566E-3*T**2+0.17641E-6*T**3 + +56377*T**(-1); 1500.00 Y + -37948.103+484.466214*T-72.3241219*T*LN(T)+18.726245E-3*T**2-1.952433E-6*T**3 + +11063885*T**(-1); 2607.00 Y + -38567273.031+168605.467401*T-21329.7050475*T*LN(T)+5221.638997E-3*T**2 + -240.245985E-6*T**3+1308.2992629E7*T**(-1); 2740.00 Y + -34268.304+359.432314*T-51.8816*T*LN(T); 4500.00 N ! + +PARAMETER G(FCC_A1,RU:VA;0) 298.15 + 4938.127+125.466233*T-22.9143287*T*LN(T)-4.062566E-3*T**2+0.17641E-6*T**3 ++56377*T**(-1); 1500.00 Y + -46948.103+487.116214*T-72.3241219*T*LN(T)+18.726245E-3*T**2-1.952433E-6*T**3 ++11063885*T**(-1); 2607.00 Y + -38576273.031+168608.117401*T-21329.7050475*T*LN(T)+5221.638997E-3*T**2 +-240.245985E-6*T**3+1308.2992629E7*T**(-1); 2740.00 Y +-43268.304+362.082314*T-51.8816*T*LN(T); 4500.00 N ! + +PARAMETER G(LIQUID,RU;0) 298.15 + 19918.743+119.467485*T-22.9143287*T*LN(T)-4.062566E-3*T**2+0.17641E-6*T**3 ++56377*T**(-1); 800.00 Y + 50827.232-179.818561*T+19.539341*T*LN(T)-26.524167E-3*T**2+1.667839E-6*T**3 +-3861125*T**(-1); 2607.00 Y +-17161.807+349.673561*T-51.8816*T*LN(T); 4500.00 N ! +$ ------------------------------------- + +$ S +$ ------------------------------------- +$ Phase name changed for version 3.00 of database to ORTHORHOMBIC_S +PARAMETER G(ORTHORHOMBIC_S,S;0) 298.15 -5198.294+53.913855*T-10.726*T*LN(T) + -27.3801E-3*T**2+8.179537E-6*T**3; 368.3 Y + -6475.706+94.182332*T-17.8693298*T*LN(T)-10.936877E-3*T**2+1.406467E-6*T**3 + +36871*T**(-1); 1300 Y + -12485.546+188.304687*T-32*T*LN(T); 1301 N ! + +PARAMETER G(MONOCLINIC,S;0) 298.15 -5725.422+89.544275*T-17.413*T*LN(T) + -9.93935E-3*T**2-0.070062E-6*T**3+1250*T**(-1); 388.36 Y + -7455.008+114.782945*T-21.1531404*T*LN(T)-8.566163E-3*T**2+1.112484E-6*T**3 + +122167*T**(-1); 1300 Y + -11779.415+186.699065*T-32*T*LN(T); 1301 N ! + +PARAMETER G(LIQUID,S;0) 298.15 -4196.575+85.63027*T-17.413*T*LN(T) + -9.93935E-3*T**2-0.070062E-6*T**3+1250*T**(-1); 335 Y + 1790361.982-44195.451432*T+7511.6194258*T*LN(T)-13985.517511E-3*T**2 + +4838.738601E-6*T**3-79880891*T**(-1); 388.36 Y + -876313.954+23366.872986*T-4028.756*T*LN(T)+7954.595E-3*T**2 + -2908.513333E-6*T**3+33980035*T**(-1); 432.25 Y + 454088.687-7814.670231*T+1237.001*T*LN(T)-1560.7295E-3*T**2+359.883667E-6*T**3 + -31765395*T**(-1); 500 Y + 18554.561-144.895285*T+16.535*T*LN(T)-45.4119E-3*T**2+8.327402E-6*T**3 + -2705030*T**(-1); 700 Y + 21243.126-113.298877*T+9.944*T*LN(T)-28.8384E-3*T**2+3.791365E-6*T**3 + -3507570*T**(-1); 900 Y + 16117.849-32.79523*T-2.425*T*LN(T)-17.12545E-3*T**2+1.84974E-6*T**3 + -3215170*T**(-1); 1300 Y + -6461.814+175.590536*T-32*T*LN(T); 1301 N ! + +$ Recommended by Bosse Sundman +PARAMETER G(BCC_A2,S:VA;0) 298.15 99801.706+53.913855*T-10.726*T*LN(T) + -27.3801E-3*T**2+8.179537E-6*T**3; 368.3 Y + 98524.294+94.182332*T-17.8693298*T*LN(T)-10.936877E-3*T**2+1.406467E-6*T**3 + +36871*T**(-1); 1300 Y + 92514.454+188.304687*T-32*T*LN(T); 1301 N ! + +$ Recommended by Bosse Sundman +PARAMETER G(FCC_A1,S:VA;0) 298.15 99801.706+53.913855*T-10.726*T*LN(T) + -27.3801E-3*T**2+8.179537E-6*T**3; 368.3 Y + 98524.294+94.182332*T-17.8693298*T*LN(T)-10.936877E-3*T**2+1.406467E-6*T**3 + +36871*T**(-1); 1300 Y + 92514.454+188.304687*T-32*T*LN(T); 1301 N ! +$ ------------------------------------- + +$ Sb +$ ------------------------------------- +PARAMETER G(RHOMBOHEDRAL_A7,SB;0) 298.15 + -9242.858+156.154689*T-30.5130752*T*LN(T)+7.748768E-3*T**2-3.003415E-6*T**3 ++100625*T**(-1); 903.78 Y +-11738.83+169.485872*T-31.38*T*LN(T)+1616.849E24*T**(-9); 2000.00 N ! + +PARAMETER G(LIQUID,SB;0) 298.15 + 10579.47+134.231525*T-30.5130752*T*LN(T)+7.748768E-3*T**2-3.003415E-6*T**3 ++100625*T**(-1)-174.847E-22*T**7; 903.78 Y +8175.359+147.455986*T-31.38*T*LN(T); 2000.00 N ! + +$ Revised data for Sb bct_a5 from A T Dinsdale for version 3.00 of database +PARAMETER G(BCT_A5,SB;0) 298.15 + 3757.142+148.154689*T-30.5130752*T*LN(T)+7.748768E-3*T**2-3.003415E-6*T**3 ++100625*T**(-1); 903.78 Y +1261.17+161.485872*T-31.38*T*LN(T)+1616.849E24*T**(-9); 2000.00 N ! + +PARAMETER G(FCC_A1,SB:VA;0) 298.15 + 10631.142+142.454689*T-30.5130752*T*LN(T)+7.748768E-3*T**2-3.003415E-6*T**3 ++100625*T**(-1); 903.78 Y +8135.17+155.785872*T-31.38*T*LN(T)+1616.849E24*T**(-9); 2000.00 N ! + +PARAMETER G(BCC_A2,SB:VA;0) 298.15 + 10631.142+141.054689*T-30.5130752*T*LN(T)+7.748768E-3*T**2-3.003415E-6*T**3 ++100625*T**(-1); 903.78 Y +8135.17+154.385872*T-31.38*T*LN(T)+1616.849E24*T**(-9); 2000.00 N ! + +PARAMETER G(HCP_A3,SB:VA;0) 298.15 + 10631.142+143.154689*T-30.5130752*T*LN(T)+7.748768E-3*T**2-3.003415E-6*T**3 ++100625*T**(-1); 903.78 Y +8135.17+156.485872*T-31.38*T*LN(T)+1616.849E24*T**(-9); 2000.00 N ! +$ ------------------------------------- + +$ Sc +$ ------------------------------------- +PARAMETER G(HCP_A3,SC:VA;0) 298.15 + -8689.547+153.48097*T-28.1882*T*LN(T)+3.21892E-3*T**2-1.64531E-6*T**3 ++72177*T**(-1); 800.00 Y +-7511.295+132.759582*T-24.9132*T*LN(T)-0.573295E-3*T**2-0.859345E-6*T**3; + 1608.00 Y + 261143.04-1817.922454*T+241.4410508*T*LN(T)-117.529396E-3*T**2+8.7398E-6*T**3 +-50607159*T**(-1); 2000.00 Y +-30515.246+286.474338*T-44.2249*T*LN(T); 3200.00 N ! + +PARAMETER G(BCC_A2,SC:VA;0) 298.15 + -6709.819+152.456835*T-28.1882*T*LN(T)+3.21892E-3*T**2-1.64531E-6*T**3 ++72177*T**(-1); 800.00 Y +-5531.567+131.735447*T-24.9132*T*LN(T)-0.573295E-3*T**2-0.859345E-6*T**3; + 1000.00 Y + 230161.408-2004.054685*T+276.7666402*T*LN(T)-167.120107E-3*T**2 ++15.637371E-6*T**3-33783257*T**(-1); 1608.00 Y +-25928.011+283.642312*T-44.2249*T*LN(T); 3200.00 N ! + +PARAMETER G(LIQUID,SC;0) 298.15 + 6478.66+45.427539*T-10.7967803*T*LN(T)-20.636524E-3*T**2+2.13106E-6*T**3 +-158106*T**(-1); 1608.00 Y +-11832.111+275.871695*T-44.2249*T*LN(T); 3200.00 N ! + +$ Cacciamani G; Riani P; Borzone G; Parodi N; Saccone A; Ferro R; +$ Pisch A; Schmid-Fetzer R; +$ Intermetallics, 7 (1), 101-108 (1999). +$ "Thermodynamic measurements and assessment of the al-sc system" +PARAMETER G(FCC_A1,SC:VA;0) 298.15 + -3689.547+153.48097*T-28.1882*T*LN(T)+3.21892E-3*T**2-1.64531E-6*T**3 ++72177*T**(-1); 800.00 Y +-2511.295+132.759582*T-24.9132*T*LN(T)-0.573295E-3*T**2-0.859345E-6*T**3; + 1608.00 Y + 266143.04-1817.922454*T+241.4410508*T*LN(T)-117.529396E-3*T**2+8.7398E-6*T**3 +-50607159*T**(-1); 2000.00 Y +-25515.246+286.474338*T-44.2249*T*LN(T); 3200.00 N ! + +$ From Susanne Norgren, Thesis, KTH 2000 +PARAMETER G(DHCP,SC;0) 298.15 + -7489.547+153.8966955*T-28.1882*T*LN(T)+3.21892E-3*T**2-1.64531E-6*T**3 ++72177*T**(-1); 800.00 Y +-6311.295+133.1753075*T-24.9132*T*LN(T)-0.573295E-3*T**2-0.859345E-6*T**3; + 1608.00 Y + 262343.04-1817.506729*T+241.4410508*T*LN(T)-117.529396E-3*T**2+8.7398E-6*T**3 +-50607159*T**(-1); 2000.00 Y +-29315.246+286.8900635*T-44.2249*T*LN(T); 3200.00 N ! +$ ------------------------------------- + +$ Se +$ ------------------------------------- +PARAMETER G(HEXAGONAL_A8,SE;0) 298.15 + -9376.371+174.205877*T-33.6527*T*LN(T)+24.24314E-3*T**2-15.318461E-6*T**3 ++102249*T**(-1); 494.00 Y + -37546.134+507.111538*T-81.2006585*T*LN(T)+37.144892E-3*T**2-5.611026E-6*T**3 ++2614263*T**(-1); 800.00 Y +-12193.47+197.770166*T-35.1456*T*LN(T); 1000.00 N ! + +PARAMETER G(LIQUID,SE;0) 298.15 + 50533.347-1178.288242*T+194.1074389*T*LN(T)-390.268991E-3*T**2 ++119.219297E-6*T**3-2224398*T**(-1); 494.00 Y +-5228.304+183.72559*T-35.1456*T*LN(T); 1000.00 N ! +$ ------------------------------------- + +$ Si +$ ------------------------------------- +PARAMETER G(DIAMOND_A4,SI;0) 298.15 + -8162.609+137.236859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 ++176667*T**(-1); 1687.00 Y +-9457.642+167.281367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! + +PARAMETER G(LIQUID,SI;0) 298.15 + 42533.751+107.13742*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 ++176667*T**(-1)+209.307E-23*T**7; 1687.00 Y +40370.523+137.722298*T-27.196*T*LN(T); 3600.00 N ! + +PARAMETER G(BCC_A2,SI:VA;0) 298.15 + 38837.391+114.736859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 ++176667*T**(-1); 1687.00 Y +37542.358+144.781367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! + +PARAMETER G(FCC_A1,SI:VA;0) 298.15 + 42837.391+115.436859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 ++176667*T**(-1); 1687.00 Y +41542.358+145.481367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! + +PARAMETER G(CBCC_A12,SI:VA;0) 298.15 + 42045.391+116.859859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 ++176667*T**(-1); 1687.00 Y +40750.358+146.904367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! + +PARAMETER G(CUB_A13,SI:VA;0) 298.15 + 39116.391+116.859859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 ++176667*T**(-1); 1687.00 Y +37821.358+146.904367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! + +PARAMETER G(HCP_A3,SI:VA;0) 298.15 + 41037.391+116.436859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 ++176667*T**(-1); 1687.00 Y +39742.358+146.481367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! + +PARAMETER G(HCP_ZN,SI:VA;0) 298.15 + 41038.391+116.436859*T-22.8317533*T*LN(T)-1.912904E-3*T**2-0.003552E-6*T**3 ++176667*T**(-1); 1687.00 Y +39743.358+146.481367*T-27.196*T*LN(T)-420.369E28*T**(-9); 3600.00 N ! +$ ------------------------------------- + +$ Sm +$ ------------------------------------- +PARAMETER G(RHOMB_C19,SM;0) 298.15 + -3872.013-32.10748*T-1.6485*T*LN(T)-50.254E-3*T**2+10.10345E-6*T**3 +-82168*T**(-1); 700.00 Y + -50078.215+627.869894*T-102.665*T*LN(T)+47.4522E-3*T**2-7.538383E-6*T**3 ++3861770*T**(-1); 1190.00 Y + 289719.819-2744.509764*T+381.4198202*T*LN(T)-254.986338E-3*T**2 ++27.512152E-6*T**3-40102102*T**(-1); 1345.00 Y +-23056.079+282.194375*T-50.208*T*LN(T); 2100.00 N ! + +$ Xuping Su, Weijing Zhang and Zhenmin Du +$ J. Alloys and Compounds 1998, 278, 182-4 +PARAMETER G(HCP_A3,SM:VA;0) 298.15 + -3802.0356-32.176971*T-1.6485*T*LN(T)-50.254E-3*T**2+10.10345E-6*T**3 +-82168*T**(-1); 700.00 Y + -50008.2376+627.800403*T-102.665*T*LN(T)+47.4522E-3*T**2-7.538383E-6*T**3 ++3861770*T**(-1); 1190.00 Y + 289789.7964-2744.579255*T+381.4198202*T*LN(T)-254.986338E-3*T**2 ++27.512152E-6*T**3-40102102*T**(-1); 1345.00 Y +-22986.1016+282.124884*T-50.208*T*LN(T); 2100.00 N ! + +PARAMETER G(BCC_A2,SM:VA;0) 298.15 + -4368.72+55.972523*T-16.9298494*T*LN(T)-25.446016E-3*T**2+3.579527E-6*T**3 ++94209*T**(-1); 1190.00 Y +-15957.862+253.121044*T-46.9445*T*LN(T); 1345.00 Y + 111191.653-624.680805*T+71.6856914*T*LN(T)-47.314968E-3*T**2+3.329865E-6*T**3 +-24870276*T**(-1); 2100.00 N ! + +PARAMETER G(LIQUID,SM;0) 298.15 + 3468.783+20.117456*T-11.6968284*T*LN(T)-32.418177E-3*T**2+4.544272E-6*T**3 ++23528*T**(-1); 1190.00 Y +-11728.229+273.487076*T-50.208*T*LN(T); 2100.00 N ! +$ ------------------------------------- + +$ Sn +$ ------------------------------------- +PARAMETER G(BCT_A5,SN;0) 100.00 + -7958.517+122.765451*T-25.858*T*LN(T)+0.51185E-3*T**2-3.192767E-6*T**3 ++18440*T**(-1); 250.00 Y + -5855.135+65.443315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 +-61960*T**(-1); 505.08 Y + 2524.724+4.005269*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 +-1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y +-8256.959+138.99688*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! + +PARAMETER G(DIAMOND_A4,SN;0) 100.00 + -9579.608+114.007785*T-22.972*T*LN(T)-8.13975E-3*T**2+2.7288E-6*T**3 ++25615*T**(-1); 298.15 Y + -9063.001+104.84654*T-21.5750771*T*LN(T)-8.575282E-3*T**2+1.784447E-6*T**3 +-2544*T**(-1); 800.00 Y +-10909.351+147.396535*T-28.4512*T*LN(T); 3000.00 N ! + +PARAMETER G(LIQUID,SN;0) 100.00 + -855.425+108.677684*T-25.858*T*LN(T)+0.51185E-3*T**2-3.192767E-6*T**3 ++18440*T**(-1)+147.031E-20*T**7; 250.00 Y + 1247.957+51.355548*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 +-61960*T**(-1)+147.031E-20*T**7; 505.08 Y + 9496.31-9.809114*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 +-1081244*T**(-1); 800.00 Y +-1285.372+125.182498*T-28.4512*T*LN(T); 3000.00 N ! + +$ Data from Fecht et al. Metall. Trans. A, 1989, 20A, 795-803 +$ Data changed in version 3.00 of database +PARAMETER G(FCC_A1,SN:VA;0) 298.15 + -345.135+56.983315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 +-61960*T**(-1); 505.08 Y + 8034.724-4.454731*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 +-1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y +-2746.959+130.53688*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! + +$ Source of data: Unpublished work - Himo Ansara +PARAMETER G(HCP_A3,SN:VA;0) 298.15 + -1955.135+57.797315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 + -61960*T**(-1); 505.08 Y + 6424.724-3.640731*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 + -1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y + -4356.959+131.35088*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! + +PARAMETER G(HCP_ZN,SN:VA;0) 298.15 + -1950.135+57.797315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 + -61960*T**(-1); 505.08 Y + 6429.724-3.640731*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 + -1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y + -4351.959+131.35088*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! + +PARAMETER G(RHOMBOHEDRAL_A7,SN;0) 100.00 + -5923.517+122.765451*T-25.858*T*LN(T)+0.51185E-3*T**2-3.192767E-6*T**3 ++18440*T**(-1); 250.00 Y + -3820.135+65.443315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 +-61960*T**(-1); 505.08 Y + 4559.724+4.005269*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 +-1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y +-6221.959+138.99688*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! + +PARAMETER G(BCC_A2,SN:VA;0) 100.00 + -3558.517+116.765451*T-25.858*T*LN(T)+0.51185E-3*T**2-3.192767E-6*T**3 ++18440*T**(-1); 250.00 Y + -1455.135+59.443315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 +-61960*T**(-1); 505.08 Y + 6924.724-1.994731*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 +-1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y +-3856.959+132.99688*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! + +$ Source of data: Unpublished assessment of the In-Sn system +$ Himo Ansara +PARAMETER G(TETRAGONAL_A6,SN;0) 298.15 + -468.135+57.181195*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 + -61960*T**(-1); 505.08 Y + 7911.724-4.256851*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 + -1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y + -2869.959+130.73476*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! + +$ Source of data: J Miettinen, CALPHAD to be published +PARAMETER G(CBCC_A12,SN:VA;0) 100.00 + -5958.517+122.765451*T-25.858*T*LN(T)+0.51185E-3*T**2-3.192767E-6*T**3 ++18440*T**(-1); 250.00 Y + -3855.135+65.443315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 +-61960*T**(-1); 505.08 Y + 4524.724+4.005269*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 +-1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y +-6256.959+138.99688*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! + +$ Source of data: J Miettinen, CALPHAD to be published +PARAMETER G(CUB_A13,SN:VA;0) 100.00 + -5958.517+122.765451*T-25.858*T*LN(T)+0.51185E-3*T**2-3.192767E-6*T**3 ++18440*T**(-1); 250.00 Y + -3855.135+65.443315*T-15.961*T*LN(T)-18.8702E-3*T**2+3.121167E-6*T**3 +-61960*T**(-1); 505.08 Y + 4524.724+4.005269*T-8.2590486*T*LN(T)-16.814429E-3*T**2+2.623131E-6*T**3 +-1081244*T**(-1)-123.07E23*T**(-9); 800.00 Y +-6256.959+138.99688*T-28.4512*T*LN(T)-123.07E23*T**(-9); 3000.00 N ! +$ ------------------------------------- + +$ Sr +$ ------------------------------------- +PARAMETER G(FCC_A1,SR:VA;0) 298.15 + -7532.367+107.183879*T-23.905*T*LN(T)-4.61225E-3*T**2-0.167477E-6*T**3 +-2055*T**(-1); 820.00 Y + -13380.102+153.196104*T-30.0905432*T*LN(T)-3.251266E-3*T**2+0.184189E-6*T**3 ++850134*T**(-1); 3000.00 N ! + +PARAMETER G(BCC_A2,SR:VA;0) 298.15 + -6779.234+116.583654*T-25.6708365*T*LN(T)-3.126762E-3*T**2+0.22965E-6*T**3 ++27649*T**(-1); 820.00 Y + -6970.594+122.067301*T-26.57*T*LN(T)-1.9493E-3*T**2-0.017895E-6*T**3 ++16495*T**(-1); 1050.00 Y + 8168.357+0.423037*T-9.7788593*T*LN(T)-9.539908E-3*T**2+0.520221E-6*T**3 +-2414794*T**(-1); 3000.00 N ! + +PARAMETER G(LIQUID,SR;0) 298.15 + 2194.997-10.118994*T-5.0668978*T*LN(T)-31.840595E-3*T**2+4.981237E-6*T**3 +-265559*T**(-1); 1050.00 Y +-10855.29+213.406219*T-39.463*T*LN(T); 3000.00 N ! + +PARAMETER G(HCP_A3,SR:VA;0) 298.15 + -7282.367+107.883879*T-23.905*T*LN(T)-4.61225E-3*T**2-0.167477E-6*T**3 +-2055*T**(-1); 820.00 Y + -13130.102+153.896104*T-30.0905432*T*LN(T)-3.251266E-3*T**2+0.184189E-6*T**3 ++850134*T**(-1); 3000.00 N ! +$ ------------------------------------- + +$ Ta +$ ------------------------------------- +PARAMETER G(BCC_A2,TA:VA;0) 298.15 + -7285.889+119.139857*T-23.7592624*T*LN(T)-2.623033E-3*T**2+0.170109E-6*T**3 +-3293*T**(-1); 1300.00 Y + -22389.955+243.88676*T-41.137088*T*LN(T)+6.167572E-3*T**2-0.655136E-6*T**3 ++2429586*T**(-1); 2500.00 Y + 229382.886-722.59722*T+78.5244752*T*LN(T)-17.983376E-3*T**2+0.195033E-6*T**3 +-93813648*T**(-1); 3290.00 Y + -1042384.014+2985.491246*T-362.1591318*T*LN(T)+43.117795E-3*T**2 +-1.055148E-6*T**3+554714342*T**(-1); 6000.00 N ! + +PARAMETER G(LIQUID,TA;0) 298.15 + 21875.086+111.561128*T-23.7592624*T*LN(T)-2.623033E-3*T**2+0.170109E-6*T**3 +-3293*T**(-1); 1000.00 Y + 43884.339-61.981795*T+0.0279523*T*LN(T)-12.330066E-3*T**2+0.614599E-6*T**3 +-3523338*T**(-1); 3290.00 Y +-6314.543+258.110873*T-41.84*T*LN(T); 6000.00 N ! + +PARAMETER G(FCC_A1,TA:VA;0) 298.15 + 8714.111+120.839857*T-23.7592624*T*LN(T)-2.623033E-3*T**2+0.170109E-6*T**3 +-3293*T**(-1); 1300.00 Y + -6389.955+245.58676*T-41.137088*T*LN(T)+6.167572E-3*T**2-0.655136E-6*T**3 ++2429586*T**(-1); 2500.00 Y + 245382.886-720.89722*T+78.5244752*T*LN(T)-17.983376E-3*T**2+0.195033E-6*T**3 +-93813648*T**(-1); 3290.00 Y + -1026384.014+2987.191246*T-362.1591318*T*LN(T)+43.117795E-3*T**2 +-1.055148E-6*T**3+554714342*T**(-1); 6000.00 N ! + +PARAMETER G(HCP_A3,TA:VA;0) 298.15 + 4714.111+121.539857*T-23.7592624*T*LN(T)-2.623033E-3*T**2+0.170109E-6*T**3 +-3293*T**(-1); 1300.00 Y + -10389.955+246.28676*T-41.137088*T*LN(T)+6.167572E-3*T**2-0.655136E-6*T**3 ++2429586*T**(-1); 2500.00 Y + 241382.886-720.19722*T+78.5244752*T*LN(T)-17.983376E-3*T**2+0.195033E-6*T**3 +-93813648*T**(-1); 3290.00 Y + -1030384.014+2987.891246*T-362.1591318*T*LN(T)+43.117795E-3*T**2 +-1.055148E-6*T**3+554714342*T**(-1); 6000.00 N ! +$ ------------------------------------- + +$ Tb +$ ------------------------------------- +PARAMETER G(HCP_A3,TB:VA;0) 298.15 + -20842.158+409.309555*T-77.5006*T*LN(T)+83.2265E-3*T**2-25.672833E-6*T**3 ++562430*T**(-1); 600.00 Y + -8772.606+102.61162*T-25.8659*T*LN(T)-2.757005E-3*T**2-0.805838E-6*T**3 ++172355*T**(-1); 1200.00 Y +-7944.942+101.7776*T-25.9584*T*LN(T)-1.676335E-3*T**2-1.067632E-6*T**3; + 1562.00 Y + -265240.309+1456.042685*T-200.2156949*T*LN(T)+41.615159E-3*T**2 +-2.044697E-6*T**3+65043790*T**(-1); 3000.00 N ! + +PARAMETER G(BCC_A2,TB:VA;0) 298.15 + -16674.323+406.656848*T-77.5006*T*LN(T)+83.2265E-3*T**2-25.672833E-6*T**3 ++562430*T**(-1); 600.00 Y + -4604.771+99.958913*T-25.8659*T*LN(T)-2.757005E-3*T**2-0.805838E-6*T**3 ++172355*T**(-1); 1200.00 Y + 633060.245-5157.777795*T+706.5805957*T*LN(T)-373.763517E-3*T**2 ++34.100235E-6*T**3-103233571*T**(-1); 1562.00 Y +-23398.029+257.388486*T-46.4842*T*LN(T); 3000.00 N ! + +PARAMETER G(LIQUID,TB;0) 298.15 + 3945.831+29.867521*T-14.252646*T*LN(T)-20.466105E-3*T**2+2.17475E-6*T**3 +-160724*T**(-1); 1562.00 Y +-13247.649+251.16889*T-46.4842*T*LN(T); 3000.00 N ! +$ ------------------------------------- + +$ Tc +$ ------------------------------------- +PARAMETER G(HCP_A3,TC:VA;0) 298.15 +-7947.794+132.5101*T-24.3394*T*LN(T)-2.954747E-3*T**2+63855*T**(-1); 2430.00 Y +-47759.99+318.286*T-47*T*LN(T)+663.829E30*T**(-9); 4000.00 N ! + +PARAMETER G(FCC_A1,TC:VA;0) 298.15 +2052.206+131.0101*T-24.3394*T*LN(T)-2.954747E-3*T**2+63855*T**(-1); 2430.00 Y +-37759.99+316.786*T-47*T*LN(T)+663.829E30*T**(-9); 4000.00 N ! + +PARAMETER G(BCC_A2,TC:VA;0) 298.15 +10052.206+128.0101*T-24.3394*T*LN(T)-2.954747E-3*T**2+63855*T**(-1); 2430.00 Y +-29759.99+313.786*T-47*T*LN(T)+663.829E30*T**(-9); 4000.00 N ! + +PARAMETER G(LIQUID,TC;0) 298.15 + 22454.34+120.1971*T-24.3394*T*LN(T)-2.954747E-3*T**2+63855*T**(-1) +-962.385E-24*T**7; 2430.00 Y +-12221.9+303.7538*T-47*T*LN(T); 4000.00 N ! +$ ------------------------------------- + +$ Te +$ ------------------------------------- +$ Data for Te based on published values by Davydov, Rand and Argent +$ CALPHAD, 1995, 19(3), 375 +$ Data changed for version 3.00 of database +PARAMETER G(HEXAGONAL_A8,TE;0) 298.15 + -10544.679+183.372894*T-35.6687*T*LN(T)+15.83435E-3*T**2-5.240417E-6*T**3 ++155015*T**(-1); 722.66 Y + 9160.595-129.265373*T+13.004*T*LN(T)-36.2361E-3*T**2+5.006367E-6*T**3 +-1286810*T**(-1); 1150.00 Y +-12781.349+174.901226*T-32.5596*T*LN(T); 1600.00 N ! + +$ Data for Te based on published values by Davydov, Rand and Argent +$ CALPHAD, 1995, 19(3), 375 +$ Data changed for version 3.00 of database +PARAMETER G(LIQUID,TE;0) 298.15 + -17554.731+685.8776386*T-126.318*T*LN(T)+221.9435E-3*T**2-94.2075E-6*T**3 ++827930*T**(-1); 626.49 Y + -3165763.484+46756.3570347*T-7196.41*T*LN(T)+7097.75E-3*T**2 +-1306.928333E-6*T**3+258051000*T**(-1); 722.66 Y + 180326.959-1500.5790943*T+202.743*T*LN(T)-142.016E-3*T**2+16.129733E-6*T**3 +-24238450*T**(-1); 1150.00 Y +6328.687+148.7082987*T-32.5596*T*LN(T); 1600.00 N ! +$ ------------------------------------- + +$ Th +$ ------------------------------------- +PARAMETER G(FCC_A1,TH:VA;0) 298.15 + -7732.08+116.273975*T-24.841*T*LN(T)-2.36725E-3*T**2-0.52883E-6*T**3 ++13010*T**(-1); 1633.00 Y + -37352.871+236.906118*T-39.107*T*LN(T)-3.58025E-3*T**2+0.236893E-6*T**3 ++7981000*T**(-1); 2900.00 Y +-33353.313+283.231045*T-46.024*T*LN(T); 4000.00 N ! + +PARAMETER G(BCC_A2,TH:VA;0) 298.15 + -2321.06+133.531195*T-28.244*T*LN(T)+0.43775E-3*T**2-0.53048E-6*T**3 ++91190*T**(-1); 1633.00 Y + -115978.348+800.909049*T-116.453*T*LN(T)+30.98E-3*T**2-2.536883E-6*T**3 ++27512600*T**(-1); 2023.00 Y + -33602.796+208.774709*T-35.813*T*LN(T)-3.46655E-3*T**2+0.166067E-6*T**3 ++11876950*T**(-1); 3600.00 Y +-34333.615+283.181494*T-46.024*T*LN(T); 4000.00 N ! + +PARAMETER G(LIQUID,TH;0) 298.15 + 5031.109+110.886346*T-24.987*T*LN(T)-1.68345E-3*T**2-0.909067E-6*T**3 ++10865*T**(-1); 1499.80 Y + -15602.847+127.657716*T-24.03*T*LN(T)-13.6421E-3*T**2+1.210117E-6*T**3 ++7111100*T**(-1); 2014.50 Y +-17273.382+275.001274*T-46.024*T*LN(T); 4000.00 N ! +$ ------------------------------------- + +$ Ti +$ ------------------------------------- +PARAMETER G(HCP_A3,TI:VA;0) 298.15 + -8059.921+133.615208*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 ++72636*T**(-1); 900.00 Y + -7811.815+132.988068*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 ++42680*T**(-1); 1155.00 Y + 908.837+66.976538*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 +-1477660*T**(-1); 1941.00 Y + -124526.786+638.806871*T-87.2182461*T*LN(T)+8.204849E-3*T**2-0.304747E-6*T**3 ++36699805*T**(-1); 4000.00 N ! + +PARAMETER G(BCC_A2,TI:VA;0) 298.15 + -1272.064+134.71418*T-25.5768*T*LN(T)-0.663845E-3*T**2-0.278803E-6*T**3 ++7208*T**(-1); 1155.00 Y + 6667.385+105.366379*T-22.3771*T*LN(T)+1.21707E-3*T**2-0.84534E-6*T**3 +-2002750*T**(-1); 1941.00 Y + 26483.26-182.426471*T+19.0900905*T*LN(T)-22.00832E-3*T**2+1.228863E-6*T**3 ++1400501*T**(-1); 4000.00 N ! + +PARAMETER G(LIQUID,TI;0) 298.15 + 4134.494+126.63427*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 ++72636*T**(-1); 900.00 Y + 4382.601+126.00713*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 ++42680*T**(-1); 1155.00 Y + 13103.253+59.9956*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 +-1477660*T**(-1); 1300.00 Y + 369519.198-2554.0225*T+342.059267*T*LN(T)-163.409355E-3*T**2+12.457117E-6*T**3 +-67034516*T**(-1); 1941.00 Y +-19887.066+298.7367*T-46.29*T*LN(T); 4000.00 N ! + +PARAMETER G(FCC_A1,TI:VA;0) 298.15 + -2059.921+133.515208*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 ++72636*T**(-1); 900.00 Y + -1811.815+132.888068*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 ++42680*T**(-1); 1155.00 Y + 6908.837+66.876538*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 +-1477660*T**(-1); 1941.00 Y + -118526.786+638.706871*T-87.2182461*T*LN(T)+8.204849E-3*T**2-0.304747E-6*T**3 ++36699805*T**(-1); 4000.00 N ! + +PARAMETER G(CBCC_A12,TI:VA;0) 298.15 + -3457.721+133.615208*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 ++72636*T**(-1); 900.00 Y + -3209.615+132.988068*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 ++42680*T**(-1); 1155.00 Y + 5511.037+66.976538*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 +-1477660*T**(-1); 1941.00 Y + -119924.586+638.806871*T-87.2182461*T*LN(T)+8.204849E-3*T**2-0.304747E-6*T**3 ++36699805*T**(-1); 4000.00 N ! + +PARAMETER G(CUB_A13,TI:VA;0) 298.15 + -528.721+133.615208*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 ++72636*T**(-1); 900.00 Y + -280.615+132.988068*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 ++42680*T**(-1); 1155.00 Y + 8440.037+66.976538*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 +-1477660*T**(-1); 1941.00 Y + -116995.586+638.806871*T-87.2182461*T*LN(T)+8.204849E-3*T**2-0.304747E-6*T**3 ++36699805*T**(-1); 4000.00 N ! + +PARAMETER G(DIAMOND_A4,TI;0) 298.15 + 16940.079+133.615208*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 ++72636*T**(-1); 900.00 Y + 17188.185+132.988068*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 ++42680*T**(-1); 1155.00 Y + 25908.837+66.976538*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 +-1477660*T**(-1); 1941.00 Y + -99526.786+638.806871*T-87.2182461*T*LN(T)+8.204849E-3*T**2-0.304747E-6*T**3 ++36699805*T**(-1); 4000.00 N ! + +$ Data from COST507 database +PARAMETER G(BCT_A5,TI;0) 298.15 + -3457.721+133.615208*T-23.9933*T*LN(T)-4.777975E-3*T**2+0.106716E-6*T**3 ++72636*T**(-1); 900.00 Y + -3209.615+132.988068*T-23.9887*T*LN(T)-4.2033E-3*T**2-0.090876E-6*T**3 ++42680*T**(-1); 1155.00 Y + 5511.037+66.976538*T-14.9466*T*LN(T)-8.1465E-3*T**2+0.202715E-6*T**3 +-1477660*T**(-1); 1941.00 Y + -119924.586+638.806871*T-87.2182461*T*LN(T)+8.204849E-3*T**2-0.304747E-6*T**3 ++36699805*T**(-1); 3000.00 N ! + +$ ------------------------------------- + +$ Tl +$ ------------------------------------- +PARAMETER G(HCP_A3,TL:VA;0) 200.00 + -8104.038+107.140405*T-25.2274*T*LN(T)-3.3063E-3*T**2-0.121807E-6*T**3 ++42058*T**(-1); 577.00 Y + -15406.859+196.771926*T-38.4130658*T*LN(T)+5.228106E-3*T**2-0.519136E-6*T**3 ++729665*T**(-1); 1800.00 N ! + +PARAMETER G(BCC_A2,TL:VA;0) 200.00 + -9194.493+150.019517*T-33.0508*T*LN(T)+17.2318E-3*T**2-10.115933E-6*T**3 ++82153*T**(-1); 577.00 Y + -41836.403+482.633817*T-79.2926704*T*LN(T)+26.042993E-3*T**2-2.359101E-6*T**3 ++3507810*T**(-1); 1800.00 N ! + +PARAMETER G(LIQUID,TL;0) 200.00 + -946.623+0.755649*T-7.44455*T*LN(T)-44.350292E-3*T**2+14.248046E-6*T**3 +-54228*T**(-1); 577.00 Y + -614.74+98.472609*T-25.8437*T*LN(T)-0.83662E-3*T**2+0.000009E-6*T**3 +-612570*T**(-1); 1800.00 N ! + +PARAMETER G(FCC_A1,TL:VA;0) 200.00 + -7794.038+107.140405*T-25.2274*T*LN(T)-3.3063E-3*T**2-0.121807E-6*T**3 ++42058*T**(-1); 577.00 Y + -15096.859+196.771926*T-38.4130658*T*LN(T)+5.228106E-3*T**2-0.519136E-6*T**3 ++729665*T**(-1); 1800.00 N ! +$ ------------------------------------- + +$ Tm +$ ------------------------------------- +PARAMETER G(HCP_A3,TM:VA;0) 298.15 + -10016.715+151.037648*T-34.3664974*T*LN(T)+12.110965E-3*T**2-3.831156E-6*T**3 ++95982*T**(-1); 700.00 Y + -14701.965+147.957496*T-32.1951269*T*LN(T)+0.444753E-3*T**2-0.396694E-6*T**3 ++1091664*T**(-1); 1600.00 Y +-8669.227+97.98144*T-25.1816969*T*LN(T)-3.384563E-3*T**2; 1818.00 Y + 727125.608-4147.400632*T+534.082763*T*LN(T)-190.93039E-3*T**2 ++11.689185E-6*T**3-180382220*T**(-1); 2300.00 N ! + +PARAMETER G(LIQUID,TM;0) 298.15 + 3182.534+144.479977*T-34.3664974*T*LN(T)+12.110965E-3*T**2-3.831156E-6*T**3 ++95982*T**(-1); 600.00 Y + 22640.028-126.738485*T+6.8744933*T*LN(T)-25.487085E-3*T**2+2.288172E-6*T**3 +-1585412*T**(-1); 1818.00 Y +-10090.305+214.184413*T-41.37976*T*LN(T); 2300.00 N ! + +$ U +PARAMETER G(ORTHORHOMBIC_A20,U;0) 298.15 + -8407.734+130.955151*T-26.9182*T*LN(T)+1.25156E-3*T**2-4.42605E-6*T**3 ++38568*T**(-1); 955.00 Y +-22521.8+292.121093*T-48.66*T*LN(T); 3000.00 N ! + +PARAMETER G(TETRAGONAL_U,U;0) 298.15 + -5156.136+106.976316*T-22.841*T*LN(T)-10.84475E-3*T**2+0.027889E-6*T**3 ++81944*T**(-1); 941.50 Y +-14327.309+244.16802*T-42.9278*T*LN(T); 3000.00 N ! + +PARAMETER G(BCC_A2,U:VA;0) 298.15 + -752.767+131.5381*T-27.5152*T*LN(T)-8.35595E-3*T**2+0.967907E-6*T**3 ++204611*T**(-1); 1049.00 Y +-4698.365+202.685635*T-38.2836*T*LN(T); 3000.00 N ! + +PARAMETER G(LIQUID,U;0) 298.15 + 3947.766+120.631251*T-26.9182*T*LN(T)+1.25156E-3*T**2-4.42605E-6*T**3 ++38568*T**(-1); 955.00 Y +-10166.3+281.797193*T-48.66*T*LN(T); 3000.00 N ! + +PARAMETER G(FCC_A1,U:VA;0) 298.15 + -3407.734+130.955151*T-26.9182*T*LN(T)+1.25156E-3*T**2-4.42605E-6*T**3 ++38568*T**(-1); 955.00 Y +-17521.8+292.121093*T-48.66*T*LN(T); 3000.00 N ! + +PARAMETER G(HCP_A3,U:VA;0) 298.15 +4247.233+131.5301*T +-27.5152*T*LN(T)-.00835595*T**2+9.67907E-07*T**3+204611*T**(-1); +1049.00 Y ++301.635+202.677635*T-38.2836*T*LN(T); 2500.00 N ! +$ ------------------------------------- + +$ V +$ ------------------------------------- +PARAMETER G(BCC_A2,V:VA;0) 298.15 + -7930.43+133.346053*T-24.134*T*LN(T)-3.098E-3*T**2+0.12175E-6*T**3 ++69460*T**(-1); 790.00 Y +-7967.842+143.291093*T-25.9*T*LN(T)+0.0625E-3*T**2-0.68E-6*T**3; 2183.00 Y +-41689.864+321.140783*T-47.43*T*LN(T)+644.389E29*T**(-9); 4000.00 N ! + +PARAMETER G(LIQUID,V;0) 298.15 + 12833.687+123.890501*T-24.134*T*LN(T)-3.098E-3*T**2+0.12175E-6*T**3 ++69460*T**(-1)-519.136E-24*T**7; 790.00 Y + 12796.275+133.835541*T-25.9*T*LN(T)+0.0625E-3*T**2-0.68E-6*T**3 +-519.136E-24*T**7; 2183.00 Y +-19617.51+311.055983*T-47.43*T*LN(T); 4000.00 N ! + +PARAMETER G(FCC_A1,V:VA;0) 298.15 +-430.43+135.046053*T-24.134*T*LN(T)-3.098E-3*T**2+0.12175E-6*T**3+69460*T**(-1); + 790.00 Y +-467.842+144.991093*T-25.9*T*LN(T)+0.0625E-3*T**2-0.68E-6*T**3; 2183.00 Y +-34189.864+322.840783*T-47.43*T*LN(T)+644.389E29*T**(-9); 4000.00 N ! + +PARAMETER G(HCP_A3,V:VA;0) 298.15 + -3930.43+135.746053*T-24.134*T*LN(T)-3.098E-3*T**2+0.12175E-6*T**3 ++69460*T**(-1); 790.00 Y +-3967.842+145.691093*T-25.9*T*LN(T)+0.0625E-3*T**2-0.68E-6*T**3; 2183.00 Y +-37689.864+323.540783*T-47.43*T*LN(T)+644.389E29*T**(-9); 4000.00 N ! + +PARAMETER G(CBCC_A12,V:VA;0) 298.15 +1069.57+133.346053*T-24.134*T*LN(T)-3.098E-3*T**2+0.12175E-6*T**3+69460*T**(-1); + 790.00 Y +1032.158+143.291093*T-25.9*T*LN(T)+0.0625E-3*T**2-0.68E-6*T**3; 2183.00 Y +-32689.864+321.140783*T-47.43*T*LN(T)+644.389E29*T**(-9); 4000.00 N ! + +PARAMETER G(CUB_A13,V:VA;0) 298.15 +2069.57+133.346053*T-24.134*T*LN(T)-3.098E-3*T**2+0.12175E-6*T**3+69460*T**(-1); + 790.00 Y +2032.158+143.291093*T-25.9*T*LN(T)+0.0625E-3*T**2-0.68E-6*T**3; 2183.00 Y +-31689.864+321.140783*T-47.43*T*LN(T)+644.389E29*T**(-9); 4000.00 N ! +$ ------------------------------------- + +$ W +$ ------------------------------------- +PARAMETER G(BCC_A2,W:VA;0) 298.15 + -7646.311+130.4*T-24.1*T*LN(T)-1.936E-3*T**2+0.207E-6*T**3+44500*T**(-1) +-0.0533E-9*T**4; 3695.00 Y +-82868.801+389.362335*T-54*T*LN(T)+1528.621E30*T**(-9); 6000.00 N ! + +PARAMETER G(LIQUID,W;0) 298.15 + 44514.273+116.29001*T-24.1*T*LN(T)-1.936E-3*T**2+0.207E-6*T**3+44500*T**(-1) +-0.0533E-9*T**4-2713.468E-27*T**7; 3695.00 Y +-30436.051+375.175*T-54*T*LN(T); 6000.00 N ! + +PARAMETER G(FCC_A1,W:VA;0) 298.15 + 11653.689+131.03*T-24.1*T*LN(T)-1.936E-3*T**2+0.207E-6*T**3+44500*T**(-1) +-0.0533E-9*T**4; 3695.00 Y +-63568.801+389.992335*T-54*T*LN(T)+1528.621E30*T**(-9); 6000.00 N ! + +PARAMETER G(HCP_A3,W:VA;0) 298.15 + 7103.689+130.4*T-24.1*T*LN(T)-1.936E-3*T**2+0.207E-6*T**3+44500*T**(-1) +-0.0533E-9*T**4; 3695.00 Y +-68118.801+389.362335*T-54*T*LN(T)+1528.621E30*T**(-9); 6000.00 N ! +$ ------------------------------------- + +$ Y +$ ------------------------------------- +$ Data from Huasen Shen, Weijing Zhang, Guoquan Liu, Run Wang and Zhenmin Du +$ Report F-95-03, May 1995, University of Science and Technology, Beijing +PARAMETER G(HCP_A3,Y:VA;0) 100 -8011.09379+128.572856*T-25.6656992*T*LN(T) + -1.75716414E-3*T**2-4.17561786E-7*T**3+26911.509*T**(-1); 1000 Y + -7179.74574+114.497104*T-23.4941827*T*LN(T)-3.8211802E-3*T**2 + -8.2534534E-8*T**3; 1795.15 Y + -67480.7761+382.124727*T-56.9527111*T*LN(T)+2.31774379E-3*T**2 + -7.22513088E-8*T**3+18077162.6*T**(-1); 3700 N ! + +$ Data from Huasen Shen, Weijing Zhang, Guoquan Liu, Run Wang and Zhenmin Du +$ Report F-95-03, May 1995, University of Science and Technology, Beijing +PARAMETER G(BCC_A2,Y:VA;0) 100 -833.658863+123.667346*T-25.5832578*T*LN(T) + -2.37175965E-3*T**2+9.10372497E-9*T**3+27340.0687*T**(-1); 1000 Y + -1297.79829+134.528352*T-27.30384768*T*LN(T)-5.41757644E-4*T**2 + -3.05012175E-7*T**3; 1795.15 Y + 15389.4975+0.981325399*T-8.88296647*T*LN(T)-9.04576576E-3*T**2 + +4.02944768E-7*T**3-2542575.96*T**(-1); 3700 N ! + +$ Data from Huasen Shen, Weijing Zhang, Guoquan Liu, Run Wang and Zhenmin Du +$ Report F-95-03, May 1995, University of Science and Technology, Beijing +PARAMETER G(LIQUID,Y;0) 100 2098.50738+119.418730*T-24.6467508*T*LN(T) + -3.47023463E-3*T**2-8.12981167E-7*T**3+23713.7332*T**(-1); 1000 Y + 7386.44846+19.4520171*T-9.06816270*T*LN(T)-1.89533369E-2*T**2 + +1.75953270E-6*T**3; 1795.15 Y + -12976.5957+257.400783*T-43.0952000*T*LN(T); 3700 N ! + +$ Source of data: Assessment of data for the Cu-Y system by Suzana Fries +$ and H L Lukas - private communication +PARAMETER G(FCC_A1,Y:VA;0) 100 -2011.09379+128.572856*T-25.6656992*T*LN(T) + -1.75716414E-3*T**2-4.17561786E-7*T**3+26911.509*T**(-1); 1000 Y + -1179.74574+114.497104*T-23.4941827*T*LN(T)-3.8211802E-3*T**2 + -8.2534534E-8*T**3; 1795.15 Y + -61480.7761+382.124727*T-56.9527111*T*LN(T)+2.31774379E-3*T**2 + -7.22513088E-8*T**3+18077162.6*T**(-1); 3700 N ! +$ ------------------------------------- + +$ Yb +$ ------------------------------------- +PARAMETER G(FCC_A1,YB:VA;0) 298.15 +-9370.941+189.327664*T-40.0791*T*LN(T)+42.27115E-3*T**2-22.242E-6*T**3; + 553.00 Y +-8192.154+121.065655*T-26.7591*T*LN(T)-2.56065E-3*T**2; 1033.00 Y + 16034.89-89.478241*T+2.7623966*T*LN(T)-17.961331E-3*T**2+1.421719E-6*T**3 +-3631462*T**(-1); 2000.00 N ! + +PARAMETER G(BCC_A2,YB:VA;0) 298.15 + -965.99-21.293677*T-3.8534432*T*LN(T)-30.009694E-3*T**2+4.743871E-6*T**3 +-334650*T**(-1); 1033.00 Y +-13368.113+188.313864*T-36.1079*T*LN(T); 1097.00 Y + -3911.847+113.174165*T-25.7402233*T*LN(T)-4.743348E-3*T**2+0.363044E-6*T**3 +-1553668*T**(-1); 2000.00 N ! + +PARAMETER G(LIQUID,YB;0) 298.15 + 7030.788-40.615571*T-1.8061816*T*LN(T)-32.50938E-3*T**2+5.136665E-6*T**3 +-370554*T**(-1); 1033.00 Y +-6445.835+186.690398*T-36.7774*T*LN(T); 2000.00 N ! +$ ------------------------------------- + +$ Zn +$ ------------------------------------- +PARAMETER G(HCP_ZN,ZN:VA;0) 298.15 +-7285.787+118.470069*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; + 692.68 Y +-11070.559+172.34566*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! + +PARAMETER G(HCP_A3,ZN:VA;0) 298.15 +-4315.967+116.900389*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; + 692.68 Y +-8100.739+170.77598*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! + +PARAMETER G(LIQUID,ZN;0) 298.15 + -128.574+108.177079*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3 +-358.958E-21*T**7; 692.68 Y +-3620.391+161.608594*T-31.38*T*LN(T); 1700.00 N ! + +PARAMETER G(FCC_A1,ZN:VA;0) 298.15 +-4315.967+116.900389*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; + 692.68 Y +-8100.739+170.77598*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! + +PARAMETER G(BCC_A2,ZN:VA;0) 298.15 +-4398.827+115.959669*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; + 692.68 Y +-8183.599+169.83526*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! + +$ Data from COST507 database +PARAMETER G(BCT_A5,ZN;0) 298.15 +-4398.827+115.959669*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; + 692.68 Y +-8183.599+169.83526*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! + +$ Data from COST507 database +PARAMETER G(DIAMOND_A4,ZN;0) 298.15 +-7285.787+148.470069*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; + 692.68 Y +-11070.559+202.34566*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! + +$ Source of data: Unpublished work by Alan Dinsdale +PARAMETER G(RHOMBOHEDRAL_A7,ZN;0) 298.15 + -4985.787+129.970069*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; + 692.68 Y + -8770.559+183.84566*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! + +$ Souce of data: B J Lee CALPHAD 1996, 20(4), 471-480 +PARAMETER G(TETRAGONAL_A6,ZN;0) 298.15 +-3101.787+118.470069*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; + 692.68 Y +-6886.559+172.34566*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! + +$ Source of data: J Miettinen, CALPHAD to be published +PARAMETER G(CUB_A13,ZN:VA;0) 298.15 +-5285.787+118.470069*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; + 692.68 Y +-9070.559+172.34566*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! + +$ Source of data: J Miettinen, CALPHAD to be published +PARAMETER G(CBCC_A12,ZN:VA;0) 298.15 +-5285.787+118.470069*T-23.701314*T*LN(T)-1.712034E-3*T**2-1.264963E-6*T**3; + 692.68 Y +-9070.559+172.34566*T-31.38*T*LN(T)+470.514E24*T**(-9); 1700.00 N ! + +$ ------------------------------------- + +$ Zr +$ ------------------------------------- +PARAMETER G(HCP_A3,ZR:VA;0) 130.00 +-7827.595+125.64905*T-24.1618*T*LN(T)-4.37791E-3*T**2+34971*T**(-1); 2128.00 Y +-26085.921+262.724183*T-42.144*T*LN(T)-1342.896E28*T**(-9); 6000.00 N ! + +PARAMETER G(BCC_A2,ZR:VA;0) 298.15 + -525.539+124.9457*T-25.607406*T*LN(T)-0.340084E-3*T**2-0.009729E-6*T**3 ++25233*T**(-1)-0.076143E-9*T**4; 2128.00 Y +-30705.955+264.284163*T-42.144*T*LN(T)+1276.058E29*T**(-9); 6000.00 N ! + +PARAMETER G(OMEGA,ZR;0) 298.15 +-8878.082+144.432234*T-26.8556*T*LN(T)-2.799446E-3*T**2+38376*T**(-1); + 2128.00 Y +-29500.524+265.290858*T-42.144*T*LN(T)+717.445E29*T**(-9); 6000.00 N ! + +PARAMETER G(LIQUID,ZR;0) 298.15 + 10320.095+116.568238*T-24.1618*T*LN(T)-4.37791E-3*T**2+34971*T**(-1) ++1627.5E-25*T**7; 2128.00 Y +-8281.26+253.812609*T-42.144*T*LN(T); 6000.00 N ! + +PARAMETER G(FCC_A1,ZR:VA;0) 298.15 +-227.595+124.74905*T-24.1618*T*LN(T)-4.37791E-3*T**2+34971*T**(-1); 2128.00 Y +-18485.921+261.824183*T-42.144*T*LN(T)-1342.896E28*T**(-9); 6000.00 N ! + +PARAMETER G(CUB_A13,ZR:VA;0) 298.15 -296.395+125.64905*T-24.1618*T*LN(T) +-4.37791E-3*T**2+34971*T**(-1); 2128.00 Y +-18554.721+262.724183*T-42.144*T*LN(T)-1342.896E28*T**(-9); 6000.00 N ! + +PARAMETER G(CBCC_A12,ZR:VA;0) 298.15 -3225.395+125.64905*T +-24.1618*T*LN(T)-4.37791E-3*T**2+34971*T**(-1); 2128.00 Y +-21483.721+262.724183*T-42.144*T*LN(T)-1342.896E28*T**(-9); 6000.00 N ! + +PARAMETER G(ORTHORHOMBIC_A20,ZR;0) 298.15 +4474.461+124.9457*T +-25.607406*T*LN(T)-3.40084E-04*T**2-9.729E-09*T**3+25233*T**(-1) +-7.6143E-11*T**4; 2128.00 Y +-25705.955+264.284163*T-42.144*T*LN(T); 2500.00 N ! + +PARAMETER G(TETRAGONAL_U,ZR;0) 298.15 +4474.461+124.9457*T +-25.607406*T*LN(T)-3.40084E-04*T**2-9.729E-09*T**3+25233*T**(-1) +-7.6143E-11*T**4; 2128.00 Y +-25705.955+264.284163*T-42.144*T*LN(T); 2500.00 N ! +$ ------------------------------------- + + diff --git a/data/sqsdb/AUCU_L10/equiv.in b/data/sqsdb/AUCU_L10/equiv.in new file mode 100644 index 0000000..d4eaada --- /dev/null +++ b/data/sqsdb/AUCU_L10/equiv.in @@ -0,0 +1 @@ +a=c diff --git a/data/sqsdb/AUCU_L10/parentlat.in b/data/sqsdb/AUCU_L10/parentlat.in new file mode 100644 index 0000000..3fd5b88 --- /dev/null +++ b/data/sqsdb/AUCU_L10/parentlat.in @@ -0,0 +1 @@ +FCC_A1/sqs_lev=0_a_ diff --git a/data/sqsdb/AUCU_L10/rndstr.skel b/data/sqsdb/AUCU_L10/rndstr.skel new file mode 100644 index 0000000..11d1ad5 --- /dev/null +++ b/data/sqsdb/AUCU_L10/rndstr.skel @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +-0.5 0.5 0.0 +-0.5 -0.5 0.0 + 0.0 0.0 1.0 + +-0.5 0.0 0.5 c + +-1.0 0.0 1.0 a diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=0_a=1_c=1/bestsqs.out b/data/sqsdb/AUCU_L10/sqsdb_lev=0_a=1_c=1/bestsqs.out new file mode 100644 index 0000000..5d07975 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=0_a=1_c=1/bestsqs.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.500000 0.500000 0.000000 +-0.500000 -0.500000 0.000000 +0.000000 0.000000 1.000000 +-0.500000 0.000000 0.500000 c_A +-1.000000 0.000000 1.000000 a_A diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=0_a=1_c=1/rndstr.in b/data/sqsdb/AUCU_L10/sqsdb_lev=0_a=1_c=1/rndstr.in new file mode 100644 index 0000000..13c77ce --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=0_a=1_c=1/rndstr.in @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +-0.5 0.5 0.0 +-0.5 -0.5 0.0 + 0.0 0.0 1.0 + +-0.5 0.0 0.5 c_A=1 + +-1.0 0.0 1.0 a_A=1 diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out new file mode 100644 index 0000000..427d58e --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out @@ -0,0 +1,25 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +Objective_function= -7.888905 diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out new file mode 100644 index 0000000..1ce7496 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 -1.000000 -1.000000 +2.000000 0.000000 0.000000 +-0.000000 -2.000000 2.000000 +0.500000 -0.500000 0.000000 a_A +1.500000 -0.500000 0.000000 a_A +0.500000 -2.500000 1.000000 a_A +1.500000 -2.500000 1.000000 a_A +0.500000 -1.500000 1.000000 a_B +1.500000 -1.500000 1.000000 a_B +0.500000 -1.500000 0.000000 a_B +1.500000 -1.500000 0.000000 a_B +2.000000 -1.000000 0.000000 a_B +1.000000 -1.000000 0.000000 a_A +2.000000 -3.000000 1.000000 a_A +1.000000 -3.000000 1.000000 a_B +2.000000 -2.000000 1.000000 a_A +1.000000 -2.000000 1.000000 a_B +2.000000 -2.000000 0.000000 a_B +1.000000 -2.000000 0.000000 a_A +2.000000 -1.500000 -0.500000 c_A +1.000000 -1.500000 -0.500000 c_A +2.000000 -2.500000 1.500000 c_A +1.000000 -2.500000 1.500000 c_A +2.000000 -2.500000 0.500000 c_A +1.000000 -2.500000 0.500000 c_A +2.000000 -1.500000 0.500000 c_A +1.000000 -1.500000 0.500000 c_A +0.500000 -1.000000 0.500000 c_A +1.500000 -1.000000 0.500000 c_A +0.500000 -1.000000 -0.500000 c_A +1.500000 -1.000000 -0.500000 c_A +0.500000 -2.000000 1.500000 c_A +1.500000 -2.000000 1.500000 c_A +0.500000 -2.000000 0.500000 c_A +1.500000 -2.000000 0.500000 c_A diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out new file mode 100644 index 0000000..50afd8d --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out @@ -0,0 +1,161 @@ +4 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +4 +1.00000 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +2 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +8 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +1.50000 1.50000 0.00000 0 0 + +4 +1.41421 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +8 +1.41421 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 2.00000 0 0 + +8 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 1.50000 1.00000 0 0 + +8 +1.73205 +2 +0.50000 0.50000 1.00000 0 0 +-0.50000 1.50000 2.00000 0 0 + +16 +1.87083 +2 +0.50000 0.50000 1.00000 0 0 +2.00000 0.00000 0.00000 0 0 + +2 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 -1.00000 0 0 + +4 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 -1.00000 1.00000 0 0 + +8 +1.00000 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +16 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 +1.50000 1.50000 0.00000 0 0 + +16 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +1.50000 1.50000 0.00000 0 0 + +4 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +8 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +8 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +16 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 2.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +32 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 2.00000 0 0 + +16 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 +1.50000 0.50000 2.00000 0 0 + +2 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +4 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.50000 1.50000 0.00000 0 0 + +16 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +1.50000 1.50000 0.00000 0 0 + +4 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +1.50000 0.50000 0.00000 0 0 +1.50000 1.50000 0.00000 0 0 + diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/go b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/go new file mode 100755 index 0000000..db658a5 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.5 -4=1.4 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/job.in b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/job.in new file mode 100755 index 0000000..36b7c95 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J L10_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in new file mode 100644 index 0000000..25775b4 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +-0.5 0.5 0.0 +-0.5 -0.5 0.0 + 0.0 0.0 1.0 + +-0.5 0.0 0.5 c_A=1 + +-1.0 0.0 1.0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out new file mode 100644 index 0000000..fde80eb --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.500000 0.500000 0.000000 a_A=0.500000,a_B=0.500000 +-0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.000000 0.500000 0.500000 c_A=1.000000 +0.500000 0.000000 0.500000 c_A=1.000000 diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..427d58e --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,25 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +Objective_function= -7.888905 diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..86e6e0f --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 -1.000000 -1.000000 +2.000000 0.000000 0.000000 +-0.000000 -2.000000 2.000000 +2.000000 -1.500000 -0.500000 c_B +1.000000 -1.500000 -0.500000 c_A +2.000000 -2.500000 1.500000 c_B +1.000000 -2.500000 1.500000 c_A +2.000000 -2.500000 0.500000 c_A +1.000000 -2.500000 0.500000 c_B +2.000000 -1.500000 0.500000 c_A +1.000000 -1.500000 0.500000 c_B +0.500000 -1.000000 -0.500000 c_B +1.500000 -1.000000 -0.500000 c_B +0.500000 -2.000000 1.500000 c_A +1.500000 -2.000000 1.500000 c_A +0.500000 -2.000000 0.500000 c_A +1.500000 -2.000000 0.500000 c_A +0.500000 -1.000000 0.500000 c_B +1.500000 -1.000000 0.500000 c_B +0.500000 -0.500000 0.000000 a_A +1.500000 -0.500000 0.000000 a_A +0.500000 -2.500000 1.000000 a_A +1.500000 -2.500000 1.000000 a_A +0.500000 -1.500000 1.000000 a_A +1.500000 -1.500000 1.000000 a_A +0.500000 -1.500000 0.000000 a_A +1.500000 -1.500000 0.000000 a_A +2.000000 -1.000000 0.000000 a_A +1.000000 -1.000000 0.000000 a_A +2.000000 -3.000000 1.000000 a_A +1.000000 -3.000000 1.000000 a_A +2.000000 -2.000000 1.000000 a_A +1.000000 -2.000000 1.000000 a_A +2.000000 -2.000000 0.000000 a_A +1.000000 -2.000000 0.000000 a_A diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..3663311 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out @@ -0,0 +1,161 @@ +4 +0.70711 +2 +1.00000 0.50000 0.50000 0 0 +1.50000 -0.00000 0.50000 0 0 + +2 +1.00000 +2 +0.50000 1.00000 0.50000 0 0 +0.50000 1.00000 -0.50000 0 0 + +4 +1.00000 +2 +0.50000 1.00000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 + +8 +1.22474 +2 +1.00000 0.50000 0.50000 0 0 +1.50000 0.00000 -0.50000 0 0 + +4 +1.41421 +2 +0.50000 1.00000 0.50000 0 0 +-0.50000 2.00000 0.50000 0 0 + +8 +1.41421 +2 +0.50000 1.00000 0.50000 0 0 +0.50000 0.00000 1.50000 0 0 + +8 +1.58114 +2 +1.00000 0.50000 0.50000 0 0 +1.50000 -1.00000 0.50000 0 0 + +8 +1.73205 +2 +0.50000 1.00000 0.50000 0 0 +-0.50000 0.00000 -0.50000 0 0 + +16 +1.87083 +2 +1.00000 0.50000 0.50000 0 0 +1.50000 -1.00000 -0.50000 0 0 + +2 +2.00000 +2 +0.50000 1.00000 0.50000 0 0 +0.50000 1.00000 -1.50000 0 0 + +4 +2.00000 +2 +0.50000 1.00000 0.50000 0 0 +0.50000 -1.00000 0.50000 0 0 + +8 +1.00000 +3 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 + +16 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.50000 -0.00000 0.50000 0 0 +1.50000 0.00000 -0.50000 0 0 + +16 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.00000 -0.50000 0.50000 0 0 +1.50000 0.00000 -0.50000 0 0 + +4 +1.41421 +3 +0.50000 1.00000 0.50000 0 0 +-0.00000 1.50000 0.50000 0 0 +-0.50000 2.00000 0.50000 0 0 + +8 +1.41421 +3 +0.50000 1.00000 0.50000 0 0 +-0.50000 1.00000 0.50000 0 0 +-0.50000 2.00000 0.50000 0 0 + +8 +1.41421 +3 +0.50000 1.00000 0.50000 0 0 +-0.00000 1.50000 -0.50000 0 0 +-0.50000 2.00000 0.50000 0 0 + +16 +1.41421 +3 +0.50000 1.00000 0.50000 0 0 +-0.50000 1.00000 1.50000 0 0 +-0.50000 2.00000 0.50000 0 0 + +32 +1.41421 +3 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.50000 0.00000 1.50000 0 0 + +16 +1.41421 +3 +0.50000 1.00000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.50000 0.00000 1.50000 0 0 + +2 +1.00000 +4 +0.50000 1.00000 0.50000 0 0 +1.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 + +4 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +1.50000 -0.00000 0.50000 0 0 +1.00000 0.50000 -0.50000 0 0 +1.50000 0.00000 -0.50000 0 0 + +16 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +1.50000 -0.00000 0.50000 0 0 +1.00000 -0.50000 0.50000 0 0 +1.50000 0.00000 -0.50000 0 0 + +4 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +1.00000 -0.50000 0.50000 0 0 +0.50000 0.00000 -0.50000 0 0 +1.50000 0.00000 -0.50000 0 0 + diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/go b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/go new file mode 100755 index 0000000..db658a5 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.5 -4=1.4 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/job.in b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/job.in new file mode 100755 index 0000000..36b7c95 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J L10_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..269d06a --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +-0.5 0.5 0.0 +-0.5 -0.5 0.0 + 0.0 0.0 1.0 + +-0.5 0.0 0.5 c_A=0.5,c_B=0.5 + +-1.0 0.0 1.0 a_A=1 diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..5494057 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.500000 0.500000 c_A=0.500000,c_B=0.500000 +0.500000 1.000000 0.500000 c_A=0.500000,c_B=0.500000 + +0.500000 0.500000 0.000000 a_A=1.000000 +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..c9c1087 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out @@ -0,0 +1,58 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 -1.000000 0.000000 -1.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 -0.500000 0.000000 -0.500000 +2 1.414214 -0.125000 0.000000 -0.125000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.732051 -0.250000 0.000000 -0.250000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 -1.000000 0.000000 -1.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.500000 0.000000 -0.500000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +Objective_function= -47.232612 diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..1445573 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.000000 1.000000 2.000000 +0.000000 1.000000 -2.000000 +-2.000000 0.000000 0.000000 +-1.000000 1.500000 -0.500000 c_B +-2.000000 1.500000 -0.500000 c_A +-1.000000 0.500000 0.500000 c_B +-2.000000 0.500000 0.500000 c_A +-1.000000 1.500000 0.500000 c_B +-2.000000 1.500000 0.500000 c_B +-1.000000 0.500000 -0.500000 c_A +-2.000000 0.500000 -0.500000 c_A +-0.500000 1.000000 1.500000 c_A +-1.500000 1.000000 1.500000 c_A +-0.500000 1.000000 0.500000 c_A +-1.500000 1.000000 0.500000 c_A +-0.500000 1.000000 -1.500000 c_B +-1.500000 1.000000 -1.500000 c_B +-0.500000 1.000000 -0.500000 c_B +-1.500000 1.000000 -0.500000 c_B +-0.500000 1.500000 -1.000000 a_B +-1.500000 1.500000 -1.000000 a_A +-0.500000 0.500000 0.000000 a_B +-1.500000 0.500000 0.000000 a_A +-0.500000 1.500000 0.000000 a_B +-1.500000 1.500000 0.000000 a_A +-0.500000 1.500000 1.000000 a_B +-1.500000 1.500000 1.000000 a_A +-1.000000 1.000000 -1.000000 a_B +-2.000000 1.000000 -1.000000 a_A +-1.000000 2.000000 0.000000 a_A +-2.000000 2.000000 0.000000 a_B +-1.000000 1.000000 0.000000 a_A +-2.000000 1.000000 0.000000 a_B +-1.000000 1.000000 1.000000 a_B +-2.000000 1.000000 1.000000 a_A diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..f23079b --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out @@ -0,0 +1,388 @@ +4 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +4 +0.70711 +2 +0.50000 1.00000 0.50000 0 0 +-0.00000 1.50000 0.50000 0 0 + +16 +0.70711 +2 +0.50000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +4 +1.00000 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +2 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +2 +1.00000 +2 +0.50000 1.00000 0.50000 0 0 +0.50000 1.00000 -0.50000 0 0 + +4 +1.00000 +2 +0.50000 1.00000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 + +32 +1.22474 +2 +0.50000 1.00000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +2 +1.00000 0.50000 0.50000 0 0 +1.50000 0.00000 -0.50000 0 0 + +8 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +1.50000 1.50000 0.00000 0 0 + +4 +1.41421 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +8 +1.41421 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 2.00000 0 0 + +4 +1.41421 +2 +0.50000 1.00000 0.50000 0 0 +-0.50000 2.00000 0.50000 0 0 + +8 +1.41421 +2 +0.50000 1.00000 0.50000 0 0 +0.50000 0.00000 1.50000 0 0 + +8 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 1.50000 1.00000 0 0 + +16 +1.58114 +2 +1.00000 0.50000 0.50000 0 0 +1.00000 -0.00000 -1.00000 0 0 + +16 +1.58114 +2 +1.00000 0.50000 0.50000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.58114 +2 +1.00000 0.50000 0.50000 0 0 +1.50000 -1.00000 0.50000 0 0 + +8 +1.73205 +2 +0.50000 0.50000 1.00000 0 0 +-0.50000 1.50000 2.00000 0 0 + +8 +1.73205 +2 +0.50000 1.00000 0.50000 0 0 +-0.50000 0.00000 -0.50000 0 0 + +16 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.50000 0 0 +0.50000 1.50000 1.00000 0 0 + +16 +0.70711 +3 +0.50000 1.00000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.00000 1.50000 0.50000 0 0 + +8 +1.00000 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +8 +1.00000 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +1.50000 0.50000 1.00000 0 0 + +8 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +8 +1.00000 +3 +0.50000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +0.50000 1.00000 -0.50000 0 0 + +8 +1.00000 +3 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 + +8 +1.00000 +3 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 + +32 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +32 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +32 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +32 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +16 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +1.00000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +16 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +0.50000 1.00000 -0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +16 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +-0.50000 1.00000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +16 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +1.00000 0.50000 -0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +16 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +-0.50000 0.50000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +32 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.50000 0.00000 -0.50000 0 0 + +16 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 +1.50000 0.00000 -0.50000 0 0 + +16 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.50000 -0.00000 0.50000 0 0 +1.50000 0.00000 -0.50000 0 0 + +16 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.00000 -0.50000 0.50000 0 0 +1.50000 0.00000 -0.50000 0 0 + +16 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 +1.50000 1.50000 0.00000 0 0 + +16 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 1.00000 0.50000 0 0 +1.50000 1.50000 0.00000 0 0 + +16 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +1.50000 1.50000 0.00000 0 0 + +32 +1.22474 +3 +0.50000 0.50000 1.00000 0 0 +0.50000 0.00000 1.50000 0 0 +-0.50000 0.00000 1.50000 0 0 + +16 +1.22474 +3 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.50000 0.00000 1.50000 0 0 + +16 +1.22474 +3 +0.50000 0.50000 1.00000 0 0 +0.50000 -0.50000 1.00000 0 0 +-0.50000 0.00000 1.50000 0 0 + +16 +1.22474 +3 +0.50000 0.50000 1.00000 0 0 +0.50000 0.50000 2.00000 0 0 +-0.50000 0.00000 1.50000 0 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +0.50000 1.00000 1.50000 0 0 +0.50000 1.50000 1.00000 0 0 + +2 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +16 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +4 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +1.00000 0.50000 1.50000 0 0 +1.50000 0.50000 1.00000 0 0 + +8 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 0.50000 0 0 +1.50000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +4 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +1.50000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +8 +1.00000 +4 +0.50000 1.00000 0.50000 0 0 +0.50000 1.50000 0.00000 0 0 +1.00000 1.00000 0.00000 0 0 +0.50000 1.00000 -0.50000 0 0 + +16 +1.00000 +4 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 + +2 +1.00000 +4 +0.50000 1.00000 0.50000 0 0 +1.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 + diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go new file mode 100755 index 0000000..39bd996 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.8 -3=1.3 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in new file mode 100755 index 0000000..0e5e3cb --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J L10_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..4117f65 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +-0.5 0.5 0.0 +-0.5 -0.5 0.0 + 0.0 0.0 1.0 + +-0.5 0.0 0.5 c_A=0.5,c_B=0.5 + +-1.0 0.0 1.0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..f287ea8 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.500000 0.500000 c_A=0.500000,c_B=0.500000 +0.500000 1.000000 0.500000 c_A=0.500000,c_B=0.500000 + +0.500000 0.500000 0.000000 a_A=0.500000,a_B=0.500000 +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/bestcorr.out b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/bestcorr.out new file mode 100644 index 0000000..0dc5241 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/bestcorr.out @@ -0,0 +1,21 @@ +2 0.707107 0.250000 0.250000 0.000000 +2 1.000000 0.250000 0.250000 0.000000 +2 1.000000 0.250000 0.250000 0.000000 +2 1.224745 0.250000 0.250000 0.000000 +2 1.414214 0.125000 0.250000 -0.125000 +2 1.414214 0.250000 0.250000 0.000000 +2 1.581139 0.125000 0.250000 -0.125000 +3 1.000000 -0.125000 -0.125000 0.000000 +3 1.224745 -0.125000 -0.125000 0.000000 +3 1.224745 -0.125000 -0.125000 0.000000 +3 1.414214 -0.093750 -0.125000 0.031250 +3 1.414214 -0.062500 -0.125000 0.062500 +3 1.414214 0.000000 -0.125000 0.125000 +3 1.414214 -0.250000 -0.125000 -0.125000 +3 1.414214 -0.125000 -0.125000 0.000000 +3 1.414214 -0.125000 -0.125000 0.000000 +4 1.000000 0.000000 0.062500 -0.062500 +4 1.224745 0.000000 0.062500 -0.062500 +4 1.224745 0.125000 0.062500 0.062500 +4 1.224745 0.000000 0.062500 -0.062500 +Objective_function= -5.369806 diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/bestsqs.out b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/bestsqs.out new file mode 100644 index 0000000..b5297ad --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.500000 0.500000 1.000000 +0.500000 -1.500000 1.000000 +1.500000 1.500000 1.000000 +0.500000 1.500000 2.000000 a_B +-0.000000 1.000000 2.000000 a_A +0.000000 0.000000 2.000000 a_A +-0.500000 0.500000 2.000000 a_A +0.500000 0.500000 1.000000 a_A +-0.500000 -0.500000 2.000000 a_A +0.500000 -0.500000 1.000000 a_A +0.000000 0.000000 1.000000 a_A +0.500000 0.500000 3.000000 a_B +1.500000 0.500000 2.000000 a_A +1.000000 1.000000 2.000000 a_A +1.000000 1.000000 1.000000 a_B +1.000000 0.000000 2.000000 a_A +0.500000 0.500000 2.000000 a_B +0.500000 -0.500000 2.000000 a_A +-0.500000 0.500000 1.000000 a_A +1.000000 1.500000 1.500000 c_A +0.500000 1.000000 1.500000 c_A +0.500000 -0.000000 1.500000 c_A +-0.000000 0.500000 1.500000 c_A +-0.500000 1.000000 1.500000 c_A +0.000000 -0.500000 1.500000 c_A +-0.500000 0.000000 1.500000 c_A +-1.000000 0.500000 1.500000 c_A +1.000000 0.500000 2.500000 c_A +0.500000 1.000000 2.500000 c_A +1.500000 1.000000 1.500000 c_A +0.500000 0.000000 2.500000 c_A +0.000000 0.500000 2.500000 c_A +1.000000 0.500000 1.500000 c_A +1.000000 -0.500000 1.500000 c_A +0.500000 -1.000000 1.500000 c_A diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/clusters.out b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/clusters.out new file mode 100644 index 0000000..74abc8a --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/clusters.out @@ -0,0 +1,137 @@ +2 +0.70711 +2 +-1.00000 0.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +1 +1.00000 +2 +-1.00000 0.00000 1.00000 0 0 +-1.00000 0.00000 0.00000 0 0 + +2 +1.00000 +2 +-1.00000 0.00000 1.00000 0 0 +0.00000 0.00000 1.00000 0 0 + +4 +1.22474 +2 +-1.00000 0.00000 1.00000 0 0 +-0.50000 0.50000 0.00000 0 0 + +4 +1.41421 +2 +-1.00000 0.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +2 +1.41421 +2 +-1.00000 0.00000 1.00000 0 0 +0.00000 -1.00000 1.00000 0 0 + +4 +1.58114 +2 +-1.00000 0.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +4 +1.00000 +3 +-1.00000 0.00000 1.00000 0 0 +-0.50000 -0.50000 1.00000 0 0 +0.00000 0.00000 1.00000 0 0 + +8 +1.22474 +3 +-1.00000 0.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 +-0.50000 0.50000 0.00000 0 0 + +8 +1.22474 +3 +-1.00000 0.00000 1.00000 0 0 +0.00000 0.00000 1.00000 0 0 +-0.50000 0.50000 0.00000 0 0 + +16 +1.41421 +3 +-1.00000 0.00000 1.00000 0 0 +-0.50000 -0.50000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.41421 +3 +-1.00000 0.00000 1.00000 0 0 +-1.00000 0.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.41421 +3 +-1.00000 0.00000 1.00000 0 0 +-1.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +2 +1.41421 +3 +-1.00000 0.00000 1.00000 0 0 +-0.50000 -0.50000 1.00000 0 0 +0.00000 -1.00000 1.00000 0 0 + +4 +1.41421 +3 +-1.00000 0.00000 1.00000 0 0 +0.00000 0.00000 1.00000 0 0 +0.00000 -1.00000 1.00000 0 0 + +4 +1.41421 +3 +-1.00000 0.00000 1.00000 0 0 +-0.50000 -0.50000 0.00000 0 0 +0.00000 -1.00000 1.00000 0 0 + +1 +1.00000 +4 +-1.00000 0.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 +-0.50000 -0.50000 1.00000 0 0 +0.00000 0.00000 1.00000 0 0 + +2 +1.22474 +4 +-1.00000 0.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 +-1.00000 0.00000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 + +8 +1.22474 +4 +-1.00000 0.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 +0.00000 0.00000 1.00000 0 0 +-0.50000 0.50000 0.00000 0 0 + +2 +1.22474 +4 +-1.00000 0.00000 1.00000 0 0 +0.00000 0.00000 1.00000 0 0 +-0.50000 -0.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 + diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/go b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/go new file mode 100644 index 0000000..c4c7831 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/go @@ -0,0 +1 @@ +corrdump -nop -noe -2=1.6 -3=1.5 -4=1.4 -ro -l=rndstr.in -clus diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/rndstr.in b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/rndstr.in new file mode 100644 index 0000000..7e3bca1 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/rndstr.in @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +-0.5 0.5 0.0 +-0.5 -0.5 0.0 + 0.0 0.0 1.0 + +-0.5 0.0 0.5 c_A=1 + +-1.0 0.0 1.0 a_A=0.75,a_B=0.25 diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/rndstrgrp.out b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/rndstrgrp.out new file mode 100644 index 0000000..2205d4a --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/rndstrgrp.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.500000 0.500000 0.000000 +-0.500000 -0.500000 0.000000 +0.000000 0.000000 1.000000 + +-1.000000 0.000000 1.000000 a_A=0.750000,a_B=0.250000 + +-0.500000 0.000000 0.500000 c_A=1.000000 diff --git a/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/sqsparam.in b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/sqsparam.in new file mode 100644 index 0000000..9ab67d0 --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsdb_lev=3_a=0.75,0.25_c=1/sqsparam.in @@ -0,0 +1 @@ +1 1 10 diff --git a/data/sqsdb/AUCU_L10/sqsgen.in b/data/sqsdb/AUCU_L10/sqsgen.in new file mode 100644 index 0000000..e9638af --- /dev/null +++ b/data/sqsdb/AUCU_L10/sqsgen.in @@ -0,0 +1,6 @@ +level=0 a=1 c=1 +level=1 a=0.5,0.5 c=1 +level=1 a=1 c=0.5,0.5 +level=2 a=0.5,0.5 c=0.5,0.5 +level=3 a=0.75,0.25 c=1 +level=3 a=1 c=0.75,0.25 diff --git a/data/sqsdb/BCC_A2/coord.in b/data/sqsdb/BCC_A2/coord.in new file mode 100644 index 0000000..45a4fb7 --- /dev/null +++ b/data/sqsdb/BCC_A2/coord.in @@ -0,0 +1 @@ +8 diff --git a/data/sqsdb/BCC_A2/rndstr.skel b/data/sqsdb/BCC_A2/rndstr.skel new file mode 100644 index 0000000..22f8e47 --- /dev/null +++ b/data/sqsdb/BCC_A2/rndstr.skel @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0 0 a diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=0_a=1/bestsqs.out b/data/sqsdb/BCC_A2/sqsdb_lev=0_a=1/bestsqs.out new file mode 100644 index 0000000..09e22e4 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=0_a=1/bestsqs.out @@ -0,0 +1,7 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=0_a=1/rndstr.in b/data/sqsdb/BCC_A2/sqsdb_lev=0_a=1/rndstr.in new file mode 100644 index 0000000..70e9a47 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=0_a=1/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0 0 a_A=1 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/bestcorr.out b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..bbebc55 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/bestcorr.out @@ -0,0 +1,18 @@ +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.658312 0.000000 0.000000 0.000000 +2 1.732051 -0.104167 0.000000 -0.104167 +2 2.000000 0.027778 0.000000 0.027778 +3 1.000000 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 -0.083333 0.000000 -0.083333 +3 1.414214 -0.020833 0.000000 -0.020833 +4 1.000000 0.000000 0.000000 0.000000 +4 1.414214 -0.111111 0.000000 -0.111111 +4 1.414214 0.027778 0.000000 0.027778 +4 1.414214 -0.111111 0.000000 -0.111111 +4 1.414214 -0.020833 0.000000 -0.020833 +4 1.414214 0.104167 0.000000 0.104167 +4 1.414214 -0.083333 0.000000 -0.083333 +Objective_function= -5.212568 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/bestsqs.out b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..d0d524a --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.500000 0.500000 -1.500000 +1.500000 2.500000 1.500000 +3.000000 -1.000000 2.000000 +6.000000 2.000000 2.000000 a_A +4.000000 -0.000000 2.000000 a_B +1.500000 1.500000 0.500000 a_A +2.000000 2.000000 1.000000 a_A +1.000000 0.000000 0.000000 a_B +1.500000 0.500000 0.500000 a_B +2.000000 1.000000 1.000000 a_A +2.500000 1.500000 1.500000 a_A +3.000000 2.000000 2.000000 a_A +2.000000 -0.000000 1.000000 a_B +2.500000 0.500000 1.500000 a_B +3.000000 1.000000 2.000000 a_B +3.500000 1.500000 2.500000 a_A +2.500000 -0.500000 1.500000 a_B +3.000000 0.000000 2.000000 a_B +3.500000 0.500000 2.500000 a_A +4.000000 1.000000 3.000000 a_B +5.000000 1.000000 2.000000 a_A +2.500000 2.500000 0.500000 a_A +1.500000 0.500000 -0.500000 a_B +2.000000 1.000000 0.000000 a_B +2.500000 1.500000 0.500000 a_B +3.000000 2.000000 1.000000 a_B +2.000000 0.000000 0.000000 a_B +2.500000 0.500000 0.500000 a_A +3.000000 1.000000 1.000000 a_B +3.500000 1.500000 1.500000 a_A +4.000000 2.000000 2.000000 a_B +3.000000 -0.000000 1.000000 a_A +3.500000 0.500000 1.500000 a_A +4.000000 1.000000 2.000000 a_A +4.500000 1.500000 2.500000 a_A +3.500000 -0.500000 1.500000 a_B +2.000000 1.000000 -1.000000 a_A +2.500000 1.500000 -0.500000 a_B +3.000000 2.000000 -0.000000 a_B +3.500000 2.500000 0.500000 a_A +2.500000 0.500000 -0.500000 a_B +3.000000 1.000000 -0.000000 a_B +3.500000 1.500000 0.500000 a_A +4.000000 2.000000 1.000000 a_A +3.000000 -0.000000 0.000000 a_A +3.500000 0.500000 0.500000 a_B +4.000000 1.000000 1.000000 a_A +4.500000 1.500000 1.500000 a_A +5.000000 2.000000 2.000000 a_B +4.000000 -0.000000 1.000000 a_B +4.500000 0.500000 1.500000 a_A diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/clusters.out b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/clusters.out new file mode 100644 index 0000000..43b67a8 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/clusters.out @@ -0,0 +1,120 @@ +4 +0.86603 +2 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 + +3 +1.00000 +2 +1.50000 0.50000 0.50000 0 0 +0.50000 0.50000 0.50000 0 0 + +6 +1.41421 +2 +1.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +12 +1.65831 +2 +1.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 + +4 +1.73205 +2 +1.50000 0.50000 0.50000 0 0 +0.50000 1.50000 1.50000 0 0 + +3 +2.00000 +2 +1.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +1.00000 +3 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 0 0 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +8 +1.41421 +3 +1.50000 0.50000 0.50000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +6 +1.00000 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 + +6 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +24 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +3 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.50000 0.50000 1.50000 0 0 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +8 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +8 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.50000 0.50000 1.50000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +2 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/go b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/go new file mode 100755 index 0000000..96b66df --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=2.0 -3=1.5 -4=1.5 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/job.in b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/job.in new file mode 100755 index 0000000..a86843a --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -wr=20 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/rndstr.in b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/rndstr.in new file mode 100644 index 0000000..91b3df3 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/rndstrgrp.out b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..558fe9a --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/sqsparam.in b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..aba0664 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=1_a=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 10 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/bestcorr.out b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..609d794 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/bestcorr.out @@ -0,0 +1,43 @@ +2 0.866025 0.250000 0.250000 0.000000 +2 1.000000 0.250000 0.250000 0.000000 +2 1.414214 0.250000 0.250000 0.000000 +2 1.658312 0.250000 0.250000 0.000000 +2 1.732051 0.250000 0.250000 0.000000 +2 2.000000 0.416667 0.250000 0.166667 +3 1.000000 -0.125000 -0.125000 0.000000 +3 1.414214 -0.145833 -0.125000 -0.020833 +3 1.414214 -0.166667 -0.125000 -0.041667 +3 1.414214 -0.125000 -0.125000 0.000000 +3 1.658312 -0.125000 -0.125000 0.000000 +3 1.658312 -0.109375 -0.125000 0.015625 +3 1.658312 -0.135417 -0.125000 -0.010417 +3 1.658312 -0.125000 -0.125000 0.000000 +3 1.658312 -0.135417 -0.125000 -0.010417 +4 1.000000 0.083333 0.062500 0.020833 +4 1.414214 0.041667 0.062500 -0.020833 +4 1.414214 0.083333 0.062500 0.020833 +4 1.414214 0.166667 0.062500 0.104167 +4 1.414214 0.125000 0.062500 0.062500 +4 1.414214 0.125000 0.062500 0.062500 +4 1.414214 0.000000 0.062500 -0.062500 +4 1.658312 0.088542 0.062500 0.026042 +4 1.658312 0.052083 0.062500 -0.010417 +4 1.658312 0.000000 0.062500 -0.062500 +4 1.658312 0.057292 0.062500 -0.005208 +4 1.658312 0.093750 0.062500 0.031250 +4 1.658312 0.062500 0.062500 0.000000 +4 1.658312 0.078125 0.062500 0.015625 +4 1.658312 0.083333 0.062500 0.020833 +4 1.658312 0.031250 0.062500 -0.031250 +4 1.658312 0.020833 0.062500 -0.041667 +4 1.658312 0.020833 0.062500 -0.041667 +4 1.658312 0.052083 0.062500 -0.010417 +4 1.658312 0.062500 0.062500 0.000000 +4 1.658312 0.031250 0.062500 -0.031250 +4 1.658312 0.067708 0.062500 0.005208 +4 1.658312 0.041667 0.062500 -0.020833 +4 1.658312 0.093750 0.062500 0.031250 +4 1.658312 0.020833 0.062500 -0.041667 +4 1.658312 0.083333 0.062500 0.020833 +4 1.658312 0.072917 0.062500 0.010417 +Objective_function= -58.064011 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/bestsqs.out b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..056674b --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 0.000000 -2.000000 +1.000000 0.000000 -2.000000 +0.000000 -4.000000 1.000000 +0.000000 -4.000000 -3.000000 a_A +0.000000 -1.000000 0.000000 a_A +-0.500000 -2.500000 -0.500000 a_B +0.000000 -2.000000 0.000000 a_B +-0.500000 -3.500000 -0.500000 a_A +0.000000 -3.000000 0.000000 a_A +-0.500000 -0.500000 -1.500000 a_A +0.000000 -4.000000 0.000000 a_A +-0.500000 -1.500000 -1.500000 a_B +0.000000 -1.000000 -1.000000 a_A +-0.500000 -2.500000 -1.500000 a_A +0.000000 -2.000000 -1.000000 a_A +-0.500000 -3.500000 -1.500000 a_A +0.000000 -3.000000 -1.000000 a_A +0.500000 -2.500000 -0.500000 a_A +0.500000 -3.500000 -0.500000 a_A +-0.500000 -0.500000 -2.500000 a_A +0.000000 -4.000000 -1.000000 a_A +-0.500000 -1.500000 -2.500000 a_A +0.000000 -1.000000 -2.000000 a_B +0.500000 -0.500000 -1.500000 a_A +0.000000 -2.000000 -2.000000 a_B +0.500000 -1.500000 -1.500000 a_A +0.000000 -3.000000 -2.000000 a_A +0.500000 -2.500000 -1.500000 a_B +0.500000 -3.500000 -1.500000 a_B +0.000000 -4.000000 -2.000000 a_A +0.000000 -1.000000 -3.000000 a_B +0.500000 -0.500000 -2.500000 a_A +-0.000000 -2.000000 -3.000000 a_A +0.500000 -1.500000 -2.500000 a_A +0.000000 -3.000000 -3.000000 a_A diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/clusters.out b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/clusters.out new file mode 100644 index 0000000..43b67a8 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/clusters.out @@ -0,0 +1,120 @@ +4 +0.86603 +2 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 + +3 +1.00000 +2 +1.50000 0.50000 0.50000 0 0 +0.50000 0.50000 0.50000 0 0 + +6 +1.41421 +2 +1.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +12 +1.65831 +2 +1.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 + +4 +1.73205 +2 +1.50000 0.50000 0.50000 0 0 +0.50000 1.50000 1.50000 0 0 + +3 +2.00000 +2 +1.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +1.00000 +3 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 0 0 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +8 +1.41421 +3 +1.50000 0.50000 0.50000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +6 +1.00000 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 + +6 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +24 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +3 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.50000 0.50000 1.50000 0 0 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +8 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +8 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.50000 0.50000 1.50000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +2 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/go b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/go new file mode 100755 index 0000000..7f1f28a --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=2.0 -3=1.5 -4=1.5 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/job.in b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/job.in new file mode 100755 index 0000000..1fc51bb --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -wr=20 -wn=0.5 -ip=$id & +done +wait diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/rndstr.in b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/rndstr.in new file mode 100644 index 0000000..d0e9760 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0 0 a_A=0.75,a_B=0.25 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/rndstrgrp.out b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/rndstrgrp.out new file mode 100644 index 0000000..47dfdf3 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=2_a=0.75,0.25/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.000000 0.000000 a_A=0.750000,a_B=0.250000 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestcorr.out b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestcorr.out new file mode 100644 index 0000000..4e797ee --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestcorr.out @@ -0,0 +1,41 @@ +2 0.866025 -0.003906 0.000000 -0.003906 +2 0.866025 0.006766 -0.000000 0.006766 +2 0.866025 -0.011719 0.000000 -0.011719 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.009021 -0.000000 0.009021 +2 1.000000 0.010417 0.000000 0.010417 +2 1.414214 -0.000000 0.000000 -0.000000 +2 1.414214 0.013532 -0.000000 0.013532 +2 1.414214 -0.005208 0.000000 -0.005208 +2 1.658312 0.003906 0.000000 0.003906 +2 1.658312 -0.013532 -0.000000 -0.013532 +2 1.658312 0.014323 0.000000 0.014323 +3 1.000000 -0.007813 0.000000 -0.007813 +3 1.000000 -0.005638 -0.000000 -0.005638 +3 1.000000 -0.020297 -0.000000 -0.020297 +3 1.000000 -0.005859 0.000000 -0.005859 +3 1.000000 -0.022135 0.000000 -0.022135 +3 1.000000 -0.004511 -0.000000 -0.004511 +3 1.414214 -0.001953 0.000000 -0.001953 +3 1.414214 0.006766 -0.000000 0.006766 +3 1.414214 0.010149 -0.000000 0.010149 +3 1.414214 -0.003906 0.000000 -0.003906 +3 1.414214 -0.004557 0.000000 -0.004557 +3 1.414214 -0.012404 -0.000000 -0.012404 +3 1.414214 -0.003906 0.000000 -0.003906 +3 1.414214 0.004511 -0.000000 0.004511 +3 1.414214 0.002255 -0.000000 0.002255 +3 1.414214 0.009115 0.000000 0.009115 +3 1.414214 0.001302 0.000000 0.001302 +3 1.414214 -0.002255 -0.000000 -0.002255 +3 1.414214 0.001953 0.000000 0.001953 +3 1.414214 -0.013532 -0.000000 -0.013532 +3 1.414214 -0.004557 0.000000 -0.004557 +3 1.414214 0.000000 -0.000000 0.000000 +4 1.000000 -0.003906 0.000000 -0.003906 +4 1.000000 -0.006202 -0.000000 -0.006202 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.018880 0.000000 -0.018880 +4 1.000000 0.002819 -0.000000 0.002819 +4 1.000000 0.007812 0.000000 0.007812 +Objective_function= -46.242716 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestsqs.out b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestsqs.out new file mode 100644 index 0000000..3432775 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 -1.000000 3.000000 +0.000000 -3.000000 1.000000 +3.000000 1.000000 -1.000000 +3.000000 -1.000000 2.000000 a_A +3.000000 -2.000000 2.000000 a_A +0.500000 -3.500000 3.500000 a_B +3.000000 0.000000 1.000000 a_B +3.000000 -1.000000 1.000000 a_A +0.500000 -1.500000 2.500000 a_C +3.000000 -2.000000 1.000000 a_C +0.500000 -2.500000 2.500000 a_A +1.000000 -2.000000 3.000000 a_B +1.000000 -3.000000 3.000000 a_A +3.000000 0.000000 0.000000 a_C +0.500000 -0.500000 1.500000 a_C +3.000000 -1.000000 0.000000 a_C +0.500000 -1.500000 1.500000 a_A +1.000000 -1.000000 2.000000 a_C +0.500000 -2.500000 1.500000 a_B +1.000000 -2.000000 2.000000 a_C +1.500000 -1.500000 2.500000 a_B +1.000000 -3.000000 2.000000 a_C +1.500000 -2.500000 2.500000 a_C +2.000000 -3.000000 3.000000 a_A +3.000000 -3.000000 3.000000 a_C +0.500000 -0.500000 0.500000 a_A +0.500000 -1.500000 0.500000 a_C +1.000000 -1.000000 1.000000 a_C +1.500000 -0.500000 1.500000 a_B +1.000000 -2.000000 1.000000 a_C +1.500000 -1.500000 1.500000 a_B +2.000000 -1.000000 2.000000 a_A +1.500000 -2.500000 1.500000 a_A +2.000000 -2.000000 2.000000 a_B +2.500000 -1.500000 2.500000 a_A +2.500000 -2.500000 2.500000 a_A +1.000000 0.000000 0.000000 a_B +1.500000 -0.500000 0.500000 a_C +2.000000 0.000000 1.000000 a_A +1.500000 -1.500000 0.500000 a_C +2.000000 -1.000000 1.000000 a_B +2.500000 -0.500000 1.500000 a_B +2.000000 -2.000000 1.000000 a_B +2.500000 -1.500000 1.500000 a_A +2.500000 -2.500000 1.500000 a_A +1.500000 -3.500000 3.500000 a_B +2.000000 0.000000 0.000000 a_B +2.000000 -1.000000 0.000000 a_C +2.500000 -0.500000 0.500000 a_A +2.500000 -1.500000 0.500000 a_B +2.500000 0.500000 -0.500000 a_B diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/clusters.out b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/clusters.out new file mode 100644 index 0000000..3b92872 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/clusters.out @@ -0,0 +1,274 @@ +4 +0.86603 +2 +1.50000 0.50000 0.50000 1 0 +1.00000 -0.00000 1.00000 1 0 + +8 +0.86603 +2 +1.50000 0.50000 0.50000 1 1 +1.00000 -0.00000 1.00000 1 0 + +4 +0.86603 +2 +1.50000 0.50000 0.50000 1 1 +1.00000 -0.00000 1.00000 1 1 + +3 +1.00000 +2 +1.50000 0.50000 0.50000 1 0 +0.50000 0.50000 0.50000 1 0 + +6 +1.00000 +2 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 0.50000 1 0 + +3 +1.00000 +2 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 0.50000 1 1 + +6 +1.41421 +2 +1.50000 0.50000 0.50000 1 0 +0.50000 0.50000 1.50000 1 0 + +12 +1.41421 +2 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 1.50000 1 0 + +6 +1.41421 +2 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 1.50000 1 1 + +12 +1.65831 +2 +1.50000 0.50000 0.50000 1 0 +-0.00000 1.00000 1.00000 1 0 + +24 +1.65831 +2 +1.50000 0.50000 0.50000 1 1 +-0.00000 1.00000 1.00000 1 0 + +12 +1.65831 +2 +1.50000 0.50000 0.50000 1 1 +-0.00000 1.00000 1.00000 1 1 + +12 +1.00000 +3 +1.50000 0.50000 0.50000 1 0 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 0.50000 1 0 + +24 +1.00000 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 0.50000 1 0 + +12 +1.00000 +3 +1.50000 0.50000 0.50000 1 0 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 0.50000 1 0 + +24 +1.00000 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 0.50000 1 0 + +12 +1.00000 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 0.50000 1 1 + +12 +1.00000 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 0.50000 1 1 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 0 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.50000 1 0 + +24 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.50000 1 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 0 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.50000 1 0 + +24 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.50000 1 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.50000 1 1 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.50000 1 1 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 0 +0.50000 0.50000 0.50000 1 0 +0.50000 0.50000 1.50000 1 0 + +24 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 0.50000 1 0 +0.50000 0.50000 1.50000 1 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 0 +0.50000 0.50000 0.50000 1 1 +0.50000 0.50000 1.50000 1 0 + +24 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 0.50000 1 1 +0.50000 0.50000 1.50000 1 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 0.50000 1 0 +0.50000 0.50000 1.50000 1 1 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 0.50000 1 1 +0.50000 0.50000 1.50000 1 1 + +8 +1.41421 +3 +1.50000 0.50000 0.50000 1 0 +1.50000 -0.50000 1.50000 1 0 +0.50000 0.50000 1.50000 1 0 + +24 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.50000 -0.50000 1.50000 1 0 +0.50000 0.50000 1.50000 1 0 + +24 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.50000 -0.50000 1.50000 1 1 +0.50000 0.50000 1.50000 1 0 + +8 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.50000 -0.50000 1.50000 1 1 +0.50000 0.50000 1.50000 1 1 + +6 +1.00000 +4 +1.50000 0.50000 0.50000 1 0 +1.00000 -0.00000 1.00000 1 0 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 0.50000 1 0 + +24 +1.00000 +4 +1.50000 0.50000 0.50000 1 1 +1.00000 -0.00000 1.00000 1 0 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 0.50000 1 0 + +24 +1.00000 +4 +1.50000 0.50000 0.50000 1 1 +1.00000 -0.00000 1.00000 1 1 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 0.50000 1 0 + +12 +1.00000 +4 +1.50000 0.50000 0.50000 1 0 +1.00000 -0.00000 1.00000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 0.50000 1 0 + +24 +1.00000 +4 +1.50000 0.50000 0.50000 1 1 +1.00000 -0.00000 1.00000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 0.50000 1 0 + +6 +1.00000 +4 +1.50000 0.50000 0.50000 1 1 +1.00000 -0.00000 1.00000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 0.50000 1 1 + diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/go b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/go new file mode 100755 index 0000000..66f7b8a --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=1.7 -3=1.5 -4=1.3 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/job.in b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/job.in new file mode 100755 index 0000000..a86843a --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -wr=20 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstr.in b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstr.in new file mode 100644 index 0000000..fffb7bf --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0 0 a_A=0.33333,a_B=0.33333,a_C=0.33333 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstrgrp.out b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstrgrp.out new file mode 100644 index 0000000..9a94b21 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.000000 0.000000 a_A=0.333330,a_B=0.333330,a_C=0.333330 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/bestcorr.out b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/bestcorr.out new file mode 100644 index 0000000..7752c85 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/bestcorr.out @@ -0,0 +1,41 @@ +2 0.866025 0.062500 0.062500 0.000000 +2 0.866025 -0.000000 0.000000 -0.000000 +2 0.866025 -0.000000 0.000000 -0.000000 +2 1.000000 0.062500 0.062500 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.414214 0.074219 0.062500 0.011719 +2 1.414214 0.000000 0.000000 -0.000000 +2 1.414214 -0.050781 0.000000 -0.050781 +2 1.658312 -0.007813 0.062500 -0.070312 +2 1.658312 0.000000 0.000000 0.000000 +2 1.658312 -0.000000 0.000000 -0.000000 +3 1.000000 -0.033203 -0.015625 -0.017578 +3 1.000000 -0.005074 -0.000000 -0.005074 +3 1.000000 -0.000000 -0.000000 -0.000000 +3 1.000000 0.002930 -0.000000 0.002930 +3 1.000000 0.000000 -0.000000 0.000000 +3 1.000000 0.003383 -0.000000 0.003383 +3 1.414214 -0.018555 -0.015625 -0.002930 +3 1.414214 -0.005074 -0.000000 -0.005074 +3 1.414214 0.005074 -0.000000 0.005074 +3 1.414214 0.002930 -0.000000 0.002930 +3 1.414214 0.006836 -0.000000 0.006836 +3 1.414214 -0.005074 -0.000000 -0.005074 +3 1.414214 -0.009766 -0.015625 0.005859 +3 1.414214 -0.000000 -0.000000 -0.000000 +3 1.414214 0.010149 -0.000000 0.010149 +3 1.414214 -0.005859 -0.000000 -0.005859 +3 1.414214 -0.001953 -0.000000 -0.001953 +3 1.414214 0.003383 -0.000000 0.003383 +3 1.414214 0.001953 -0.015625 0.017578 +3 1.414214 0.000000 -0.000000 0.000000 +3 1.414214 0.009766 -0.000000 0.009766 +3 1.414214 0.000000 -0.000000 0.000000 +4 1.000000 -0.004883 0.003906 -0.008789 +4 1.000000 -0.012686 0.000000 -0.012686 +4 1.000000 -0.005859 0.000000 -0.005859 +4 1.000000 -0.000000 0.000000 -0.000000 +4 1.000000 -0.005920 0.000000 -0.005920 +4 1.000000 -0.002930 0.000000 -0.002930 +Objective_function= -62.963706 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/bestsqs.out b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/bestsqs.out new file mode 100644 index 0000000..f511a28 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +2.000000 -2.000000 0.000000 +2.000000 -0.000000 2.000000 +-2.000000 -1.000000 1.000000 +-1.000000 -1.000000 1.000000 a_A +-0.500000 -1.500000 1.500000 a_C +-0.000000 -1.000000 2.000000 a_A +0.500000 -1.500000 2.500000 a_C +-0.500000 -0.500000 0.500000 a_B +0.000000 -1.000000 1.000000 a_A +0.500000 -0.500000 1.500000 a_A +-0.000000 -2.000000 1.000000 a_C +0.500000 -1.500000 1.500000 a_C +1.000000 -1.000000 2.000000 a_A +0.500000 -2.500000 1.500000 a_B +1.000000 -2.000000 2.000000 a_A +1.500000 -1.500000 2.500000 a_B +1.500000 -2.500000 2.500000 a_B +2.000000 -3.000000 3.000000 a_B +0.500000 -0.500000 0.500000 a_C +1.000000 -3.000000 2.000000 a_C +0.500000 -1.500000 0.500000 a_A +1.000000 -1.000000 1.000000 a_A +1.500000 -0.500000 1.500000 a_A +1.000000 -2.000000 1.000000 a_A +1.500000 -1.500000 1.500000 a_A +2.000000 -1.000000 2.000000 a_A +1.500000 -2.500000 1.500000 a_C +2.000000 -2.000000 2.000000 a_A +2.500000 -2.500000 2.500000 a_A +1.000000 -2.000000 3.000000 a_C +1.500000 -1.500000 0.500000 a_A +0.000000 -2.000000 2.000000 a_B +2.000000 -2.000000 1.000000 a_B +2.500000 -1.500000 1.500000 a_B +3.000000 -2.000000 2.000000 a_A diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/clusters.out b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/clusters.out new file mode 100644 index 0000000..3b92872 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/clusters.out @@ -0,0 +1,274 @@ +4 +0.86603 +2 +1.50000 0.50000 0.50000 1 0 +1.00000 -0.00000 1.00000 1 0 + +8 +0.86603 +2 +1.50000 0.50000 0.50000 1 1 +1.00000 -0.00000 1.00000 1 0 + +4 +0.86603 +2 +1.50000 0.50000 0.50000 1 1 +1.00000 -0.00000 1.00000 1 1 + +3 +1.00000 +2 +1.50000 0.50000 0.50000 1 0 +0.50000 0.50000 0.50000 1 0 + +6 +1.00000 +2 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 0.50000 1 0 + +3 +1.00000 +2 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 0.50000 1 1 + +6 +1.41421 +2 +1.50000 0.50000 0.50000 1 0 +0.50000 0.50000 1.50000 1 0 + +12 +1.41421 +2 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 1.50000 1 0 + +6 +1.41421 +2 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 1.50000 1 1 + +12 +1.65831 +2 +1.50000 0.50000 0.50000 1 0 +-0.00000 1.00000 1.00000 1 0 + +24 +1.65831 +2 +1.50000 0.50000 0.50000 1 1 +-0.00000 1.00000 1.00000 1 0 + +12 +1.65831 +2 +1.50000 0.50000 0.50000 1 1 +-0.00000 1.00000 1.00000 1 1 + +12 +1.00000 +3 +1.50000 0.50000 0.50000 1 0 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 0.50000 1 0 + +24 +1.00000 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 0.50000 1 0 + +12 +1.00000 +3 +1.50000 0.50000 0.50000 1 0 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 0.50000 1 0 + +24 +1.00000 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 0.50000 1 0 + +12 +1.00000 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 0.50000 1 1 + +12 +1.00000 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 0.50000 1 1 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 0 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.50000 1 0 + +24 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.50000 1 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 0 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.50000 1 0 + +24 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.50000 1 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.50000 1 1 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.50000 1 1 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 0 +0.50000 0.50000 0.50000 1 0 +0.50000 0.50000 1.50000 1 0 + +24 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 0.50000 1 0 +0.50000 0.50000 1.50000 1 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 0 +0.50000 0.50000 0.50000 1 1 +0.50000 0.50000 1.50000 1 0 + +24 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 0.50000 1 1 +0.50000 0.50000 1.50000 1 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 0.50000 1 0 +0.50000 0.50000 1.50000 1 1 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +0.50000 0.50000 0.50000 1 1 +0.50000 0.50000 1.50000 1 1 + +8 +1.41421 +3 +1.50000 0.50000 0.50000 1 0 +1.50000 -0.50000 1.50000 1 0 +0.50000 0.50000 1.50000 1 0 + +24 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.50000 -0.50000 1.50000 1 0 +0.50000 0.50000 1.50000 1 0 + +24 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.50000 -0.50000 1.50000 1 1 +0.50000 0.50000 1.50000 1 0 + +8 +1.41421 +3 +1.50000 0.50000 0.50000 1 1 +1.50000 -0.50000 1.50000 1 1 +0.50000 0.50000 1.50000 1 1 + +6 +1.00000 +4 +1.50000 0.50000 0.50000 1 0 +1.00000 -0.00000 1.00000 1 0 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 0.50000 1 0 + +24 +1.00000 +4 +1.50000 0.50000 0.50000 1 1 +1.00000 -0.00000 1.00000 1 0 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 0.50000 1 0 + +24 +1.00000 +4 +1.50000 0.50000 0.50000 1 1 +1.00000 -0.00000 1.00000 1 1 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 0.50000 1 0 + +12 +1.00000 +4 +1.50000 0.50000 0.50000 1 0 +1.00000 -0.00000 1.00000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 0.50000 1 0 + +24 +1.00000 +4 +1.50000 0.50000 0.50000 1 1 +1.00000 -0.00000 1.00000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 0.50000 1 0 + +6 +1.00000 +4 +1.50000 0.50000 0.50000 1 1 +1.00000 -0.00000 1.00000 1 1 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 0.50000 1 1 + diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/go b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/go new file mode 100755 index 0000000..66f7b8a --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=1.7 -3=1.5 -4=1.3 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/job.in b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/job.in new file mode 100755 index 0000000..bbcf2d6 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -wr=20 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/rndstr.in b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/rndstr.in new file mode 100644 index 0000000..bbd4b4b --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0 0 a_A=0.5,a_B=0.25,a_C=0.25 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/rndstrgrp.out b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/rndstrgrp.out new file mode 100644 index 0000000..fcbfcd5 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=4_a=0.5,0.25,0.25/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.250000,a_C=0.250000 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/bestcorr.out b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/bestcorr.out new file mode 100644 index 0000000..ebee5c2 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/bestcorr.out @@ -0,0 +1,23 @@ +2 0.866025 0.062500 0.062500 0.000000 +2 1.000000 0.041667 0.062500 -0.020833 +2 1.414214 0.000000 0.062500 -0.062500 +2 1.658312 0.083333 0.062500 0.020833 +2 1.732051 0.062500 0.062500 0.000000 +2 2.000000 0.000000 0.062500 -0.062500 +3 1.000000 -0.020833 -0.015625 -0.005208 +3 1.414214 0.000000 -0.015625 0.015625 +3 1.414214 0.000000 -0.015625 0.015625 +3 1.414214 0.000000 -0.015625 0.015625 +3 1.658312 0.020833 -0.015625 0.036458 +3 1.658312 -0.010417 -0.015625 0.005208 +3 1.658312 -0.020833 -0.015625 -0.005208 +3 1.658312 -0.020833 -0.015625 -0.005208 +3 1.658312 0.010417 -0.015625 0.026042 +4 1.000000 0.000000 0.003906 -0.003906 +4 1.414214 0.000000 0.003906 -0.003906 +4 1.414214 0.020833 0.003906 0.016927 +4 1.414214 0.000000 0.003906 -0.003906 +4 1.414214 0.000000 0.003906 -0.003906 +4 1.414214 0.000000 0.003906 -0.003906 +4 1.414214 0.000000 0.003906 -0.003906 +Objective_function= -53.388169 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/bestsqs.out b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/bestsqs.out new file mode 100644 index 0000000..89adb57 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.500000 -1.500000 2.500000 +-0.000000 2.000000 -1.000000 +-4.000000 -2.000000 -1.000000 +-4.000000 -1.000000 0.000000 a_B +-4.000000 -2.000000 0.000000 a_A +-3.500000 -1.500000 0.500000 a_A +-3.000000 -2.000000 1.000000 a_B +-4.000000 -1.000000 -1.000000 a_A +-3.500000 -0.500000 -0.500000 a_A +-3.500000 -1.500000 -0.500000 a_B +-3.000000 -1.000000 -0.000000 a_B +-2.500000 -0.500000 0.500000 a_B +-2.500000 -1.500000 0.500000 a_A +-2.000000 -1.000000 1.000000 a_A +-1.500000 -1.500000 1.500000 a_A +-4.000000 -2.000000 1.000000 a_A +-3.000000 0.000000 -1.000000 a_A +-3.500000 -2.500000 1.500000 a_A +-2.500000 -0.500000 -0.500000 a_B +-2.000000 0.000000 0.000000 a_A +-2.000000 -1.000000 0.000000 a_B +-1.500000 -0.500000 0.500000 a_B +-1.000000 0.000000 1.000000 a_A +-1.000000 -1.000000 1.000000 a_B +-0.500000 -0.500000 1.500000 a_A +-3.000000 -1.000000 1.000000 a_A +-2.500000 -1.500000 1.500000 a_A +-1.500000 0.500000 -0.500000 a_B +-2.000000 -2.000000 2.000000 a_B +-1.000000 0.000000 0.000000 a_A +-0.500000 0.500000 0.500000 a_B +-0.500000 -0.500000 0.500000 a_A +-1.500000 -0.500000 1.500000 a_A +-1.000000 -1.000000 2.000000 a_A +-4.500000 -1.500000 0.500000 a_A diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/clusters.out b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/clusters.out new file mode 100644 index 0000000..b172c9f --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/clusters.out @@ -0,0 +1,155 @@ +4 +0.86603 +2 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 + +3 +1.00000 +2 +1.50000 0.50000 0.50000 0 0 +0.50000 0.50000 0.50000 0 0 + +6 +1.41421 +2 +1.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +12 +1.65831 +2 +1.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 + +4 +1.73205 +2 +1.50000 0.50000 0.50000 0 0 +0.50000 1.50000 1.50000 0 0 + +3 +2.00000 +2 +1.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +1.00000 +3 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 0 0 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +8 +1.41421 +3 +1.50000 0.50000 0.50000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +24 +1.65831 +3 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +48 +1.65831 +3 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.65831 +3 +1.50000 0.50000 0.50000 0 0 +1.50000 0.50000 1.50000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.65831 +3 +1.50000 0.50000 0.50000 0 0 +1.50000 1.50000 1.50000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.65831 +3 +1.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 + +6 +1.00000 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 + +6 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +24 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +3 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.50000 0.50000 1.50000 0 0 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +8 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +8 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.50000 0.50000 1.50000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +2 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/rndstr.in b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/rndstr.in new file mode 100644 index 0000000..8657539 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0 0 a_A=0.625,a_B=0.375 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/rndstrgrp.out b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/rndstrgrp.out new file mode 100644 index 0000000..e51224e --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.625,0.375/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.000000 0.000000 a_A=0.625000,a_B=0.375000 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/bestcorr.out b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/bestcorr.out new file mode 100644 index 0000000..09e9369 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/bestcorr.out @@ -0,0 +1,23 @@ +2 0.866025 0.562500 0.562500 0.000000 +2 1.000000 0.541667 0.562500 -0.020833 +2 1.414214 0.562500 0.562500 0.000000 +2 1.658312 0.562500 0.562500 0.000000 +2 1.732051 0.562500 0.562500 0.000000 +2 2.000000 0.541667 0.562500 -0.020833 +3 1.000000 -0.416667 -0.421875 0.005208 +3 1.414214 -0.416667 -0.421875 0.005208 +3 1.414214 -0.395833 -0.421875 0.026042 +3 1.414214 -0.437500 -0.421875 -0.015625 +3 1.658312 -0.406250 -0.421875 0.015625 +3 1.658312 -0.427083 -0.421875 -0.005208 +3 1.658312 -0.406250 -0.421875 0.015625 +3 1.658312 -0.416667 -0.421875 0.005208 +3 1.658312 -0.427083 -0.421875 -0.005208 +4 1.000000 0.333333 0.316406 0.016927 +4 1.414214 0.312500 0.316406 -0.003906 +4 1.414214 0.312500 0.316406 -0.003906 +4 1.414214 0.291667 0.316406 -0.024740 +4 1.414214 0.312500 0.316406 -0.003906 +4 1.414214 0.312500 0.316406 -0.003906 +4 1.414214 0.375000 0.316406 0.058594 +Objective_function= -53.392799 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/bestsqs.out b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/bestsqs.out new file mode 100644 index 0000000..99211c4 --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.500000 -0.500000 1.500000 +1.000000 -2.000000 0.000000 +2.000000 2.000000 2.000000 +-0.500000 -0.500000 1.500000 a_A +-0.000000 -0.000000 2.000000 a_A +0.500000 0.500000 2.500000 a_A +1.000000 1.000000 3.000000 a_A +-0.500000 -1.500000 1.500000 a_B +0.000000 -1.000000 2.000000 a_A +0.500000 -0.500000 2.500000 a_A +1.000000 -0.000000 3.000000 a_A +-0.000000 -0.000000 1.000000 a_A +0.500000 0.500000 1.500000 a_A +1.000000 1.000000 2.000000 a_A +1.500000 1.500000 2.500000 a_B +0.000000 -1.000000 1.000000 a_B +0.500000 -0.500000 1.500000 a_A +1.000000 -0.000000 2.000000 a_A +1.500000 0.500000 2.500000 a_A +0.000000 -2.000000 1.000000 a_A +0.500000 -1.500000 1.500000 a_A +1.000000 -1.000000 2.000000 a_A +1.500000 -0.500000 2.500000 a_B +1.500000 -0.500000 3.500000 a_A +-0.000000 -2.000000 2.000000 a_A +0.500000 -1.500000 2.500000 a_A +1.000000 -1.000000 3.000000 a_A +0.500000 -0.500000 0.500000 a_A +1.000000 -0.000000 1.000000 a_A +1.500000 0.500000 1.500000 a_A +2.000000 1.000000 2.000000 a_A +0.500000 -1.500000 0.500000 a_A +1.000000 -1.000000 1.000000 a_A +1.500000 -0.500000 1.500000 a_A +2.000000 -0.000000 2.000000 a_A diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/clusters.out b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/clusters.out new file mode 100644 index 0000000..b172c9f --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/clusters.out @@ -0,0 +1,155 @@ +4 +0.86603 +2 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 + +3 +1.00000 +2 +1.50000 0.50000 0.50000 0 0 +0.50000 0.50000 0.50000 0 0 + +6 +1.41421 +2 +1.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +12 +1.65831 +2 +1.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 + +4 +1.73205 +2 +1.50000 0.50000 0.50000 0 0 +0.50000 1.50000 1.50000 0 0 + +3 +2.00000 +2 +1.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +1.00000 +3 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +12 +1.41421 +3 +1.50000 0.50000 0.50000 0 0 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +8 +1.41421 +3 +1.50000 0.50000 0.50000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +24 +1.65831 +3 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +48 +1.65831 +3 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.65831 +3 +1.50000 0.50000 0.50000 0 0 +1.50000 0.50000 1.50000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.65831 +3 +1.50000 0.50000 0.50000 0 0 +1.50000 1.50000 1.50000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.65831 +3 +1.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 + +6 +1.00000 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 + +6 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +24 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +3 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.50000 0.50000 1.50000 0 0 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +8 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +8 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +1.50000 0.50000 1.50000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +2 +1.41421 +4 +1.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +1.50000 -0.50000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 + diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/rndstr.in b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/rndstr.in new file mode 100644 index 0000000..4bf861d --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0 0 a_A=0.875,a_B=0.125 diff --git a/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/rndstrgrp.out b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/rndstrgrp.out new file mode 100644 index 0000000..f6d959b --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsdb_lev=5_a=0.875,0.125/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.000000 0.000000 a_A=0.875000,a_B=0.125000 diff --git a/data/sqsdb/BCC_A2/sqsgen.in b/data/sqsdb/BCC_A2/sqsgen.in new file mode 100644 index 0000000..5760c4d --- /dev/null +++ b/data/sqsdb/BCC_A2/sqsgen.in @@ -0,0 +1,7 @@ +level=0 a=1 +level=1 a=0.5,0.5 +level=2 a=0.75,0.25 +level=3 a=0.33333,0.33333,0.33333 +level=4 a=0.5,0.25,0.25 +level=5 a=0.875,0.125 +level=5 a=0.625,0.375 diff --git a/data/sqsdb/BETASN_A5/notes.txt b/data/sqsdb/BETASN_A5/notes.txt new file mode 100644 index 0000000..be35e74 --- /dev/null +++ b/data/sqsdb/BETASN_A5/notes.txt @@ -0,0 +1 @@ +The c/a ratio cannot be uniquely determined. The experimental value is used. diff --git a/data/sqsdb/BETASN_A5/rndstr.skel b/data/sqsdb/BETASN_A5/rndstr.skel new file mode 100644 index 0000000..c04c314 --- /dev/null +++ b/data/sqsdb/BETASN_A5/rndstr.skel @@ -0,0 +1,8 @@ + +1 1 0.5456 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0 0.5 b +0 0.5 0.75 b diff --git a/data/sqsdb/BETASN_A5/rndstr.skel.sspp b/data/sqsdb/BETASN_A5/rndstr.skel.sspp new file mode 100644 index 0000000..9013e02 --- /dev/null +++ b/data/sqsdb/BETASN_A5/rndstr.skel.sspp @@ -0,0 +1,8 @@ +#const a=1; c=0.5456; +{a} {a} {c} {90} {90} {90} +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 +#const b="b"; +{0} {0} {1/2} {b} +{0} {1/2} {3/4} {b} diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=0_b=1/bestsqs.out b/data/sqsdb/BETASN_A5/sqsdb_lev=0_b=1/bestsqs.out new file mode 100644 index 0000000..4b05e91 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=0_b=1/bestsqs.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.545600 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 +0.000000 0.000000 0.500000 b_A +0.000000 0.500000 0.750000 b_A diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=0_b=1/rndstr.in b/data/sqsdb/BETASN_A5/sqsdb_lev=0_b=1/rndstr.in new file mode 100644 index 0000000..5a57670 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=0_b=1/rndstr.in @@ -0,0 +1,8 @@ + +1 1 0.5456 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0 0.5 b_A=1 +0 0.5 0.75 b_A=1 diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/bestcorr.out b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..fe4f25a --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/bestcorr.out @@ -0,0 +1,25 @@ +2 0.518271 0.000000 0.000000 0.000000 +2 0.545600 0.000000 0.000000 0.000000 +2 0.646100 0.000000 0.000000 0.000000 +2 0.757905 0.000000 0.000000 0.000000 +2 0.845650 0.000000 0.000000 0.000000 +2 1.000000 -0.416667 0.000000 -0.416667 +2 1.077795 0.000000 0.000000 0.000000 +2 1.081563 -0.083333 0.000000 -0.083333 +2 1.091200 0.000000 0.000000 0.000000 +2 1.126324 -0.020833 0.000000 -0.020833 +2 1.139157 -0.041667 0.000000 -0.041667 +2 1.190565 0.000000 0.000000 0.000000 +3 0.646100 0.000000 0.000000 0.000000 +3 0.757905 0.000000 0.000000 0.000000 +3 0.757905 0.000000 0.000000 0.000000 +3 0.757905 0.000000 0.000000 0.000000 +3 0.845650 -0.083333 0.000000 -0.083333 +3 0.845650 0.041667 0.000000 0.041667 +4 0.757905 0.000000 0.000000 0.000000 +4 0.757905 0.000000 0.000000 0.000000 +4 0.757905 0.000000 0.000000 0.000000 +4 0.845650 -0.166667 0.000000 -0.166667 +4 0.845650 0.000000 0.000000 0.000000 +4 0.845650 0.041667 0.000000 0.041667 +Objective_function= -544.172163 diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/bestsqs.out b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..eddb8bd --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.545600 +2.500000 1.500000 1.500000 +1.500000 2.500000 -1.500000 +-2.500000 -1.500000 1.500000 +-1.000000 -0.000000 1.500000 b_B +1.500000 2.500000 -1.000000 b_A +-0.500000 0.500000 1.000000 b_B +1.500000 2.500000 -0.000000 b_A +1.500000 2.500000 1.000000 b_A +0.000000 1.000000 0.500000 b_B +0.500000 0.500000 1.000000 b_B +-0.000000 1.000000 1.500000 b_A +0.500000 0.500000 2.000000 b_A +-2.000000 -1.000000 1.500000 b_A +0.500000 1.500000 0.000000 b_B +1.000000 1.000000 0.500000 b_A +0.500000 1.500000 1.000000 b_A +1.000000 1.000000 1.500000 b_B +-1.500000 -0.500000 1.000000 b_A +1.000000 2.000000 -0.500000 b_A +1.000000 2.000000 0.500000 b_B +1.500000 1.500000 1.000000 b_B +1.000000 2.000000 1.500000 b_A +-1.000000 0.000000 0.500000 b_A +2.000000 2.000000 0.500000 b_B +2.000000 2.000000 1.500000 b_B +2.500000 2.500000 1.000000 b_B +3.000000 3.000000 0.500000 b_B +1.500000 2.000000 0.250000 b_A +0.000000 0.500000 0.750000 b_A +2.000000 2.500000 -0.250000 b_A +-0.000000 0.500000 1.750000 b_A +2.500000 2.000000 1.250000 b_B +-0.000000 1.500000 0.750000 b_B +0.500000 1.000000 1.250000 b_B +2.500000 3.000000 0.250000 b_B +0.500000 1.000000 2.250000 b_B +0.500000 1.000000 0.250000 b_A +-1.000000 -0.500000 1.750000 b_B +1.000000 1.500000 0.750000 b_A +1.500000 1.000000 1.250000 b_A +1.000000 1.500000 1.750000 b_A +1.000000 1.500000 -0.250000 b_B +-0.500000 0.000000 1.250000 b_A +-0.500000 -0.000000 2.250000 b_B +1.500000 2.000000 1.250000 b_B +-0.500000 -0.000000 0.250000 b_B +-1.000000 0.500000 0.750000 b_A +2.000000 2.500000 0.750000 b_A +-0.500000 1.000000 0.250000 b_A +-0.000000 1.500000 -0.250000 b_B +-1.000000 -0.500000 0.750000 b_B diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/clusters.out b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..aeb89f6 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/clusters.out @@ -0,0 +1,162 @@ +4 +0.51827 +2 +0.50000 0.00000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 + +2 +0.54560 +2 +0.50000 0.50000 0.00000 0 0 +0.50000 0.50000 -1.00000 0 0 + +4 +0.64610 +2 +0.50000 0.00000 0.25000 0 0 +0.50000 -0.50000 1.00000 0 0 + +8 +0.75790 +2 +0.50000 0.00000 0.25000 0 0 +1.00000 0.50000 -0.25000 0 0 + +4 +0.84565 +2 +0.50000 0.00000 0.25000 0 0 +-0.00000 -0.00000 1.50000 0 0 + +4 +1.00000 +2 +0.50000 0.00000 0.25000 0 0 +-0.50000 0.00000 0.25000 0 0 + +4 +1.07780 +2 +0.50000 0.00000 0.25000 0 0 +0.50000 -0.50000 2.00000 0 0 + +8 +1.08156 +2 +0.50000 0.00000 0.25000 0 0 +0.00000 -0.50000 -1.25000 0 0 + +2 +1.09120 +2 +0.50000 0.00000 0.25000 0 0 +0.50000 0.00000 -1.75000 0 0 + +8 +1.12632 +2 +0.50000 0.00000 0.25000 0 0 +0.00000 -1.00000 0.50000 0 0 + +8 +1.13916 +2 +0.50000 0.50000 0.00000 0 0 +0.50000 1.50000 -1.00000 0 0 + +8 +1.19056 +2 +0.50000 0.00000 0.25000 0 0 +0.00000 -1.00000 -0.50000 0 0 + +8 +0.64610 +3 +0.50000 0.00000 0.25000 0 0 +0.50000 -0.50000 0.00000 0 0 +0.50000 -0.50000 1.00000 0 0 + +8 +0.75790 +3 +0.50000 0.00000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 +1.00000 0.50000 -0.25000 0 0 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 0.50000 -0.25000 0 0 + +8 +0.75790 +3 +0.50000 0.00000 0.25000 0 0 +0.50000 0.00000 -0.75000 0 0 +1.00000 0.50000 -0.25000 0 0 + +8 +0.84565 +3 +0.50000 0.00000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.00000 -0.00000 1.50000 0 0 + +16 +0.84565 +3 +0.50000 0.00000 0.25000 0 0 +0.50000 -0.50000 1.00000 0 0 +-0.00000 -0.00000 1.50000 0 0 + +8 +0.75790 +4 +0.50000 0.00000 0.25000 0 0 +1.00000 -0.00000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 +1.00000 0.50000 -0.25000 0 0 + +16 +0.75790 +4 +0.50000 0.00000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 +0.50000 0.00000 -0.75000 0 0 +1.00000 0.50000 -0.25000 0 0 + +8 +0.75790 +4 +0.50000 0.00000 0.25000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 0.00000 -0.50000 0 0 +1.00000 0.50000 -0.25000 0 0 + +4 +0.84565 +4 +0.50000 0.00000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 0.00000 1.25000 0 0 +-0.00000 -0.00000 1.50000 0 0 + +16 +0.84565 +4 +0.50000 0.00000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 -0.50000 1.00000 0 0 +-0.00000 -0.00000 1.50000 0 0 + +16 +0.84565 +4 +0.50000 0.00000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.00000 0.50000 0.75000 0 0 +-0.00000 -0.00000 1.50000 0 0 + diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/go b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/go new file mode 100755 index 0000000..2bc4097 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.2 -3=0.9 -4=0.9 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/job.in b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/job.in new file mode 100755 index 0000000..f7fddae --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=10:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J A5_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/rndstr.in b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..badd4ee --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/rndstr.in @@ -0,0 +1,8 @@ + +1 1 0.5456 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0 0.5 b_A=0.5,b_B=0.5 +0 0.5 0.75 b_A=0.5,b_B=0.5 diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..0fdca65 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,9 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.545600 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.000000 0.500000 b_A=0.500000,b_B=0.500000 +0.000000 0.500000 0.750000 b_A=0.500000,b_B=0.500000 diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/sqsparam.in b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..a94e7d2 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=1_b=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +3 10 3 7 diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/bestcorr.out b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..705172c --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/bestcorr.out @@ -0,0 +1,25 @@ +2 0.518271 0.250000 0.250000 0.000000 +2 0.545600 0.250000 0.250000 0.000000 +2 0.646100 0.250000 0.250000 0.000000 +2 0.757905 0.250000 0.250000 0.000000 +2 0.845650 0.250000 0.250000 0.000000 +2 1.000000 0.166667 0.250000 -0.083333 +2 1.077795 0.125000 0.250000 -0.125000 +2 1.081563 0.187500 0.250000 -0.062500 +2 1.091200 0.166667 0.250000 -0.083333 +2 1.126324 0.250000 0.250000 0.000000 +2 1.139157 0.250000 0.250000 0.000000 +2 1.190565 0.250000 0.250000 0.000000 +3 0.646100 -0.125000 -0.125000 0.000000 +3 0.757905 -0.125000 -0.125000 0.000000 +3 0.757905 -0.125000 -0.125000 0.000000 +3 0.757905 -0.125000 -0.125000 0.000000 +3 0.845650 -0.125000 -0.125000 0.000000 +3 0.845650 -0.125000 -0.125000 0.000000 +4 0.757905 0.000000 0.062500 -0.062500 +4 0.757905 0.083333 0.062500 0.020833 +4 0.757905 0.083333 0.062500 0.020833 +4 0.845650 0.000000 0.062500 -0.062500 +4 0.845650 0.041667 0.062500 -0.020833 +4 0.845650 0.041667 0.062500 -0.020833 +Objective_function= -502.352786 diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/bestsqs.out b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..a1fc3b8 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.545600 +2.000000 -1.000000 0.000000 +1.000000 -2.000000 0.000000 +-1.000000 1.000000 -4.000000 +-0.500000 0.500000 -3.000000 b_A +0.500000 -0.500000 -3.000000 b_A +-0.000000 0.000000 -2.500000 b_A +2.500000 -2.500000 -2.000000 b_A +1.500000 -1.500000 -3.000000 b_B +1.000000 -1.000000 -2.500000 b_B +0.500000 -0.500000 -2.000000 b_B +0.000000 0.000000 -1.500000 b_B +2.000000 -2.000000 -2.500000 b_A +1.500000 -1.500000 -2.000000 b_A +1.000000 -1.000000 -1.500000 b_B +0.500000 -0.500000 -1.000000 b_A +0.000000 0.000000 -0.500000 b_A +2.000000 -2.000000 -1.500000 b_A +1.500000 -1.500000 -1.000000 b_A +1.000000 -1.000000 -0.500000 b_A +-0.500000 0.500000 -4.000000 b_A +2.000000 -2.000000 -3.500000 b_A +2.500000 -2.500000 -1.000000 b_A +2.000000 -2.000000 -0.500000 b_A +0.500000 -0.500000 -4.000000 b_A +0.000000 0.000000 -3.500000 b_A +1.500000 -1.500000 -4.000000 b_A +1.000000 -1.000000 -3.500000 b_A +0.500000 -1.000000 -2.750000 b_A +0.500000 0.000000 -2.750000 b_A +1.000000 -1.500000 -2.250000 b_A +0.500000 -1.000000 -1.750000 b_B +1.500000 -1.000000 -2.750000 b_A +1.000000 -0.500000 -2.250000 b_A +1.500000 -2.000000 -1.750000 b_A +1.000000 -1.500000 -1.250000 b_B +0.000000 -0.500000 -2.250000 b_B +1.500000 -1.000000 -1.750000 b_A +1.000000 -0.500000 -1.250000 b_A +1.500000 -2.000000 -0.750000 b_B +1.000000 -1.500000 -0.250000 b_B +2.000000 -1.500000 -1.250000 b_B +1.500000 -1.000000 -0.750000 b_A +1.000000 -0.500000 -0.250000 b_A +0.500000 -1.000000 -3.750000 b_A +0.000000 -0.500000 -3.250000 b_A +0.500000 -1.000000 -0.750000 b_A +2.000000 -1.500000 -0.250000 b_A +0.500000 0.000000 -3.750000 b_A +1.000000 -1.500000 -3.250000 b_A +1.500000 -1.000000 -3.750000 b_B +1.000000 -0.500000 -3.250000 b_A diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/clusters.out b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/clusters.out new file mode 100644 index 0000000..aeb89f6 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/clusters.out @@ -0,0 +1,162 @@ +4 +0.51827 +2 +0.50000 0.00000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 + +2 +0.54560 +2 +0.50000 0.50000 0.00000 0 0 +0.50000 0.50000 -1.00000 0 0 + +4 +0.64610 +2 +0.50000 0.00000 0.25000 0 0 +0.50000 -0.50000 1.00000 0 0 + +8 +0.75790 +2 +0.50000 0.00000 0.25000 0 0 +1.00000 0.50000 -0.25000 0 0 + +4 +0.84565 +2 +0.50000 0.00000 0.25000 0 0 +-0.00000 -0.00000 1.50000 0 0 + +4 +1.00000 +2 +0.50000 0.00000 0.25000 0 0 +-0.50000 0.00000 0.25000 0 0 + +4 +1.07780 +2 +0.50000 0.00000 0.25000 0 0 +0.50000 -0.50000 2.00000 0 0 + +8 +1.08156 +2 +0.50000 0.00000 0.25000 0 0 +0.00000 -0.50000 -1.25000 0 0 + +2 +1.09120 +2 +0.50000 0.00000 0.25000 0 0 +0.50000 0.00000 -1.75000 0 0 + +8 +1.12632 +2 +0.50000 0.00000 0.25000 0 0 +0.00000 -1.00000 0.50000 0 0 + +8 +1.13916 +2 +0.50000 0.50000 0.00000 0 0 +0.50000 1.50000 -1.00000 0 0 + +8 +1.19056 +2 +0.50000 0.00000 0.25000 0 0 +0.00000 -1.00000 -0.50000 0 0 + +8 +0.64610 +3 +0.50000 0.00000 0.25000 0 0 +0.50000 -0.50000 0.00000 0 0 +0.50000 -0.50000 1.00000 0 0 + +8 +0.75790 +3 +0.50000 0.00000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 +1.00000 0.50000 -0.25000 0 0 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 0.50000 -0.25000 0 0 + +8 +0.75790 +3 +0.50000 0.00000 0.25000 0 0 +0.50000 0.00000 -0.75000 0 0 +1.00000 0.50000 -0.25000 0 0 + +8 +0.84565 +3 +0.50000 0.00000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.00000 -0.00000 1.50000 0 0 + +16 +0.84565 +3 +0.50000 0.00000 0.25000 0 0 +0.50000 -0.50000 1.00000 0 0 +-0.00000 -0.00000 1.50000 0 0 + +8 +0.75790 +4 +0.50000 0.00000 0.25000 0 0 +1.00000 -0.00000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 +1.00000 0.50000 -0.25000 0 0 + +16 +0.75790 +4 +0.50000 0.00000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 +0.50000 0.00000 -0.75000 0 0 +1.00000 0.50000 -0.25000 0 0 + +8 +0.75790 +4 +0.50000 0.00000 0.25000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 0.00000 -0.50000 0 0 +1.00000 0.50000 -0.25000 0 0 + +4 +0.84565 +4 +0.50000 0.00000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 0.00000 1.25000 0 0 +-0.00000 -0.00000 1.50000 0 0 + +16 +0.84565 +4 +0.50000 0.00000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 -0.50000 1.00000 0 0 +-0.00000 -0.00000 1.50000 0 0 + +16 +0.84565 +4 +0.50000 0.00000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.00000 0.50000 0.75000 0 0 +-0.00000 -0.00000 1.50000 0 0 + diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/go b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/go new file mode 100755 index 0000000..2bc4097 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.2 -3=0.9 -4=0.9 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/job.in b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/job.in new file mode 100755 index 0000000..ee2e0d8 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=10:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J A5_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/rndstr.in b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/rndstr.in new file mode 100644 index 0000000..6868f64 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/rndstr.in @@ -0,0 +1,8 @@ + +1 1 0.5456 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0 0.5 b_A=0.75,b_B=0.25 +0 0.5 0.75 b_A=0.75,b_B=0.25 diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/rndstrgrp.out b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/rndstrgrp.out new file mode 100644 index 0000000..8cd1ca6 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/rndstrgrp.out @@ -0,0 +1,9 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.545600 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.000000 0.500000 b_A=0.750000,b_B=0.250000 +0.000000 0.500000 0.750000 b_A=0.750000,b_B=0.250000 diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/sqsparam.in b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/sqsparam.in new file mode 100644 index 0000000..a94e7d2 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=2_b=0.75,0.25/sqsparam.in @@ -0,0 +1 @@ +3 10 3 7 diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/bestcorr.out b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/bestcorr.out new file mode 100644 index 0000000..46e417c --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/bestcorr.out @@ -0,0 +1,44 @@ +2 0.518271 0.007812 0.000000 0.007812 +2 0.518271 -0.000000 -0.000000 -0.000000 +2 0.518271 -0.023437 0.000000 -0.023437 +2 0.545600 0.078125 0.000000 0.078125 +2 0.545600 -0.027063 -0.000000 -0.027063 +2 0.545600 -0.015625 0.000000 -0.015625 +2 0.646100 0.007812 0.000000 0.007812 +2 0.646100 -0.054127 -0.000000 -0.054127 +2 0.646100 -0.054687 0.000000 -0.054687 +2 0.757905 -0.015625 0.000000 -0.015625 +2 0.757905 0.013532 -0.000000 0.013532 +2 0.757905 0.046875 0.000000 0.046875 +2 0.845650 0.007812 0.000000 0.007812 +2 0.845650 0.027063 -0.000000 0.027063 +2 0.845650 -0.085938 0.000000 -0.085938 +3 0.646100 -0.003906 0.000000 -0.003906 +3 0.646100 -0.006766 -0.000000 -0.006766 +3 0.646100 -0.013532 -0.000000 -0.013532 +3 0.646100 0.000000 0.000000 0.000000 +3 0.646100 -0.000000 -0.000000 -0.000000 +3 0.646100 -0.015625 0.000000 -0.015625 +3 0.646100 0.003906 0.000000 0.003906 +3 0.646100 -0.006766 -0.000000 -0.006766 +3 0.757905 0.001953 0.000000 0.001953 +3 0.757905 -0.013532 -0.000000 -0.013532 +3 0.757905 0.010149 -0.000000 0.010149 +3 0.757905 0.000000 0.000000 0.000000 +3 0.757905 -0.005859 0.000000 -0.005859 +3 0.757905 -0.003383 -0.000000 -0.003383 +3 0.757905 0.010742 0.000000 0.010742 +3 0.757905 0.001691 -0.000000 0.001691 +3 0.757905 -0.001691 -0.000000 -0.001691 +3 0.757905 0.002930 0.000000 0.002930 +3 0.757905 -0.005074 -0.000000 -0.005074 +3 0.757905 0.020508 0.000000 0.020508 +3 0.757905 -0.012695 0.000000 -0.012695 +3 0.757905 -0.005074 -0.000000 -0.005074 +3 0.757905 0.007813 0.000000 0.007813 +3 0.757905 0.003383 -0.000000 0.003383 +3 0.757905 -0.019531 0.000000 -0.019531 +3 0.757905 -0.006766 -0.000000 -0.006766 +3 0.757905 0.005859 0.000000 0.005859 +3 0.757905 0.000000 -0.000000 0.000000 +Objective_function= -32.991545 diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/bestsqs.out b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/bestsqs.out new file mode 100644 index 0000000..b2b2a97 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.545600 +-1.500000 0.500000 0.500000 +0.000000 -2.000000 1.000000 +1.000000 1.000000 3.000000 +-1.000000 -1.000000 1.500000 b_C +-0.500000 -1.500000 2.000000 b_A +-1.000000 -1.000000 2.500000 b_B +-0.500000 -0.500000 1.000000 b_C +-1.000000 0.000000 1.500000 b_C +-0.000000 -1.000000 1.500000 b_A +-0.500000 -0.500000 2.000000 b_A +-1.000000 -0.000000 2.500000 b_C +-0.000000 -1.000000 2.500000 b_B +-0.500000 -0.500000 3.000000 b_A +-0.000000 -1.000000 3.500000 b_C +-0.500000 -0.500000 4.000000 b_B +-0.000000 -0.000000 0.500000 b_B +-0.000000 -0.000000 1.500000 b_C +-0.500000 0.500000 2.000000 b_C +-0.000000 -0.000000 2.500000 b_A +-0.500000 0.500000 3.000000 b_C +0.500000 -0.500000 3.000000 b_A +-0.000000 -0.000000 3.500000 b_A +-0.500000 0.500000 4.000000 b_C +0.500000 -0.500000 4.000000 b_A +0.500000 0.500000 2.000000 b_C +0.500000 0.500000 3.000000 b_B +-0.000000 1.000000 3.500000 b_C +-1.000000 -0.500000 1.750000 b_B +-0.500000 -1.000000 2.250000 b_A +-1.000000 -0.500000 2.750000 b_B +-0.500000 -0.000000 1.250000 b_C +-1.000000 0.500000 1.750000 b_B +-0.000000 -0.500000 1.750000 b_A +-0.500000 -0.000000 2.250000 b_B +0.500000 -0.000000 2.250000 b_B +-0.000000 -0.500000 2.750000 b_B +-0.500000 -0.000000 3.250000 b_C +-0.000000 -0.500000 3.750000 b_A +-0.500000 -0.000000 4.250000 b_B +0.000000 -1.500000 1.750000 b_B +-0.000000 0.500000 1.750000 b_C +-0.500000 -1.000000 3.250000 b_B +-0.000000 0.500000 2.750000 b_A +-0.500000 1.000000 3.250000 b_B +0.500000 -0.000000 3.250000 b_C +0.000000 0.500000 3.750000 b_A +-0.000000 -0.500000 0.750000 b_A +-0.500000 -1.000000 1.250000 b_A +0.500000 -1.000000 3.250000 b_C +0.500000 1.000000 3.250000 b_A +-1.000000 -1.500000 1.750000 b_B diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/clusters.out b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/clusters.out new file mode 100644 index 0000000..416c284 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/clusters.out @@ -0,0 +1,286 @@ +4 +0.51827 +2 +0.50000 0.00000 0.25000 1 0 +0.50000 0.50000 0.00000 1 0 + +8 +0.51827 +2 +0.50000 0.00000 0.25000 1 1 +0.50000 0.50000 0.00000 1 0 + +4 +0.51827 +2 +0.50000 0.00000 0.25000 1 1 +0.50000 0.50000 0.00000 1 1 + +2 +0.54560 +2 +0.50000 0.50000 0.00000 1 0 +0.50000 0.50000 -1.00000 1 0 + +4 +0.54560 +2 +0.50000 0.50000 0.00000 1 1 +0.50000 0.50000 -1.00000 1 0 + +2 +0.54560 +2 +0.50000 0.50000 0.00000 1 1 +0.50000 0.50000 -1.00000 1 1 + +4 +0.64610 +2 +0.50000 0.00000 0.25000 1 0 +0.50000 -0.50000 1.00000 1 0 + +8 +0.64610 +2 +0.50000 0.00000 0.25000 1 1 +0.50000 -0.50000 1.00000 1 0 + +4 +0.64610 +2 +0.50000 0.00000 0.25000 1 1 +0.50000 -0.50000 1.00000 1 1 + +8 +0.75790 +2 +0.50000 0.00000 0.25000 1 0 +1.00000 0.50000 -0.25000 1 0 + +16 +0.75790 +2 +0.50000 0.00000 0.25000 1 1 +1.00000 0.50000 -0.25000 1 0 + +8 +0.75790 +2 +0.50000 0.00000 0.25000 1 1 +1.00000 0.50000 -0.25000 1 1 + +4 +0.84565 +2 +0.50000 0.00000 0.25000 1 0 +-0.00000 -0.00000 1.50000 1 0 + +8 +0.84565 +2 +0.50000 0.00000 0.25000 1 1 +-0.00000 -0.00000 1.50000 1 0 + +4 +0.84565 +2 +0.50000 0.00000 0.25000 1 1 +-0.00000 -0.00000 1.50000 1 1 + +8 +0.64610 +3 +0.50000 0.00000 0.25000 1 0 +0.50000 -0.50000 0.00000 1 0 +0.50000 -0.50000 1.00000 1 0 + +8 +0.64610 +3 +0.50000 0.00000 0.25000 1 1 +0.50000 -0.50000 0.00000 1 0 +0.50000 -0.50000 1.00000 1 0 + +8 +0.64610 +3 +0.50000 0.00000 0.25000 1 0 +0.50000 -0.50000 0.00000 1 1 +0.50000 -0.50000 1.00000 1 0 + +8 +0.64610 +3 +0.50000 0.00000 0.25000 1 1 +0.50000 -0.50000 0.00000 1 1 +0.50000 -0.50000 1.00000 1 0 + +8 +0.64610 +3 +0.50000 0.00000 0.25000 1 0 +0.50000 -0.50000 0.00000 1 0 +0.50000 -0.50000 1.00000 1 1 + +8 +0.64610 +3 +0.50000 0.00000 0.25000 1 1 +0.50000 -0.50000 0.00000 1 0 +0.50000 -0.50000 1.00000 1 1 + +8 +0.64610 +3 +0.50000 0.00000 0.25000 1 0 +0.50000 -0.50000 0.00000 1 1 +0.50000 -0.50000 1.00000 1 1 + +8 +0.64610 +3 +0.50000 0.00000 0.25000 1 1 +0.50000 -0.50000 0.00000 1 1 +0.50000 -0.50000 1.00000 1 1 + +8 +0.75790 +3 +0.50000 0.00000 0.25000 1 0 +0.50000 0.50000 0.00000 1 0 +1.00000 0.50000 -0.25000 1 0 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 1 1 +0.50000 0.50000 0.00000 1 0 +1.00000 0.50000 -0.25000 1 0 + +8 +0.75790 +3 +0.50000 0.00000 0.25000 1 0 +0.50000 0.50000 0.00000 1 1 +1.00000 0.50000 -0.25000 1 0 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 1 1 +0.50000 0.50000 0.00000 1 1 +1.00000 0.50000 -0.25000 1 0 + +8 +0.75790 +3 +0.50000 0.00000 0.25000 1 1 +0.50000 0.50000 0.00000 1 0 +1.00000 0.50000 -0.25000 1 1 + +8 +0.75790 +3 +0.50000 0.00000 0.25000 1 1 +0.50000 0.50000 0.00000 1 1 +1.00000 0.50000 -0.25000 1 1 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 1 0 +1.00000 -0.00000 0.50000 1 0 +1.00000 0.50000 -0.25000 1 0 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 1 1 +1.00000 -0.00000 0.50000 1 0 +1.00000 0.50000 -0.25000 1 0 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 1 0 +1.00000 -0.00000 0.50000 1 1 +1.00000 0.50000 -0.25000 1 0 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 1 1 +1.00000 -0.00000 0.50000 1 1 +1.00000 0.50000 -0.25000 1 0 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 1 0 +1.00000 -0.00000 0.50000 1 0 +1.00000 0.50000 -0.25000 1 1 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 1 1 +1.00000 -0.00000 0.50000 1 0 +1.00000 0.50000 -0.25000 1 1 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 1 0 +1.00000 -0.00000 0.50000 1 1 +1.00000 0.50000 -0.25000 1 1 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 1 1 +1.00000 -0.00000 0.50000 1 1 +1.00000 0.50000 -0.25000 1 1 + +8 +0.75790 +3 +0.50000 0.00000 0.25000 1 0 +0.50000 0.00000 -0.75000 1 0 +1.00000 0.50000 -0.25000 1 0 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 1 1 +0.50000 0.00000 -0.75000 1 0 +1.00000 0.50000 -0.25000 1 0 + +8 +0.75790 +3 +0.50000 0.00000 0.25000 1 1 +0.50000 0.00000 -0.75000 1 1 +1.00000 0.50000 -0.25000 1 0 + +8 +0.75790 +3 +0.50000 0.00000 0.25000 1 0 +0.50000 0.00000 -0.75000 1 0 +1.00000 0.50000 -0.25000 1 1 + +16 +0.75790 +3 +0.50000 0.00000 0.25000 1 1 +0.50000 0.00000 -0.75000 1 0 +1.00000 0.50000 -0.25000 1 1 + +8 +0.75790 +3 +0.50000 0.00000 0.25000 1 1 +0.50000 0.00000 -0.75000 1 1 +1.00000 0.50000 -0.25000 1 1 + diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/go b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/go new file mode 100755 index 0000000..b13edae --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=0.9 -3=0.7 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/job.in b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/job.in new file mode 100755 index 0000000..0a6e4f0 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=10:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J A5_lv3 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/rndstr.in b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/rndstr.in new file mode 100644 index 0000000..4a80c63 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/rndstr.in @@ -0,0 +1,8 @@ + +1 1 0.5456 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0 0.5 b_A=0.33333,b_B=0.33333,b_C=0.33333 +0 0.5 0.75 b_A=0.33333,b_B=0.33333,b_C=0.33333 diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/rndstrgrp.out b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/rndstrgrp.out new file mode 100644 index 0000000..cb4a5c6 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/rndstrgrp.out @@ -0,0 +1,9 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.545600 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.000000 0.500000 b_A=0.333330,b_B=0.333330,b_C=0.333330 +0.000000 0.500000 0.750000 b_A=0.333330,b_B=0.333330,b_C=0.333330 diff --git a/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/sqsparam.in b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/sqsparam.in new file mode 100644 index 0000000..a94e7d2 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsdb_lev=3_b=0.33333,0.33333,0.33333/sqsparam.in @@ -0,0 +1 @@ +3 10 3 7 diff --git a/data/sqsdb/BETASN_A5/sqsgen.in b/data/sqsdb/BETASN_A5/sqsgen.in new file mode 100644 index 0000000..70706e1 --- /dev/null +++ b/data/sqsdb/BETASN_A5/sqsgen.in @@ -0,0 +1,4 @@ +level=0 b=1 +level=1 b=0.5,0.5 +level=2 b=0.75,0.25 +level=3 b=0.33333,0.33333,0.33333 diff --git a/data/sqsdb/CDI2_C6/rndstr.skel b/data/sqsdb/CDI2_C6/rndstr.skel new file mode 100644 index 0000000..2637954 --- /dev/null +++ b/data/sqsdb/CDI2_C6/rndstr.skel @@ -0,0 +1,10 @@ + +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.25 d +0.666667 0.333333 -0.25 d + +0 0 0 a diff --git a/data/sqsdb/CDI2_C6/rndstr.skel.sspp b/data/sqsdb/CDI2_C6/rndstr.skel.sspp new file mode 100644 index 0000000..8776039 --- /dev/null +++ b/data/sqsdb/CDI2_C6/rndstr.skel.sspp @@ -0,0 +1,10 @@ +#const a=1; c=1.63299; +{a} {a} {c} {90} {90} {120} +1 0 0 +0 1 0 +0 0 1 +#const z=1/4; D="d"; +{1/3} {2/3} {z} {D} +{2/3} {1/3} {-z} {D} +#const A="a"; +{0} {0} {0} {A} diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=0_a=1_d=1/bestsqs.out b/data/sqsdb/CDI2_C6/sqsdb_lev=0_a=1_d=1/bestsqs.out new file mode 100644 index 0000000..6f787b5 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=0_a=1_d=1/bestsqs.out @@ -0,0 +1,9 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.333333 0.666667 0.250000 d_A +0.666667 0.333333 -0.250000 d_A +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=0_a=1_d=1/rndstr.in b/data/sqsdb/CDI2_C6/sqsdb_lev=0_a=1_d=1/rndstr.in new file mode 100644 index 0000000..6f30be3 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=0_a=1_d=1/rndstr.in @@ -0,0 +1,10 @@ + +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.25 d_A=1 +0.666667 0.333333 -0.25 d_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/bestcorr.out b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/bestcorr.out new file mode 100644 index 0000000..b8609cf --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/bestcorr.out @@ -0,0 +1,15 @@ +2 1.000000 0.000000 0.000000 0.000000 +2 1.632990 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.914852 0.000000 0.000000 0.000000 +2 2.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.732051 0.000000 0.000000 0.000000 +3 1.732051 0.000000 0.000000 0.000000 +3 1.914852 0.000000 0.000000 0.000000 +3 1.914852 0.000000 0.000000 0.000000 +3 1.914852 0.000000 0.000000 0.000000 +3 1.914852 0.000000 0.000000 0.000000 +4 1.732051 -0.333333 0.000000 -0.333333 +4 1.732051 0.000000 0.000000 0.000000 +Objective_function= -7.616599 diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/bestsqs.out b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/bestsqs.out new file mode 100644 index 0000000..7d10910 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/bestsqs.out @@ -0,0 +1,30 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 -0.000000 -1.000000 +-1.000000 -2.000000 0.000000 +-3.000000 -0.000000 -1.000000 +-3.000000 -1.000000 -1.000000 a_A +-2.000000 -1.000000 -1.000000 a_B +-1.000000 -1.000000 -1.000000 a_B +0.000000 -1.000000 -1.000000 a_B +-3.000000 -2.000000 -1.000000 a_A +-2.000000 -2.000000 -1.000000 a_A +-1.000000 -2.000000 -1.000000 a_B +-3.000000 -2.000000 -2.000000 a_A +-1.666667 -0.333333 -1.750000 d_A +-1.666667 -0.333333 -0.750000 d_A +-0.666667 -0.333333 -0.750000 d_A +0.333333 -0.333333 -0.750000 d_A +-2.666667 -1.333333 -0.750000 d_A +-1.666667 -1.333333 -0.750000 d_A +-0.666667 -1.333333 -0.750000 d_A +-2.666667 -1.333333 -1.750000 d_A +-2.333333 -0.666667 -1.250000 d_A +-1.333333 -0.666667 -1.250000 d_A +-0.333333 -0.666667 -1.250000 d_A +-0.333333 -0.666667 -0.250000 d_A +-2.333333 -1.666667 -1.250000 d_A +-1.333333 -1.666667 -1.250000 d_A +-1.333333 -1.666667 -0.250000 d_A +-3.333333 -1.666667 -1.250000 d_A diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/clusters.out b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/clusters.out new file mode 100644 index 0000000..e95a627 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/clusters.out @@ -0,0 +1,95 @@ +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 1.00000 0 0 + +1 +1.63299 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +3 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +6 +1.91485 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +2 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 + +6 +1.73205 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +2 +1.73205 +3 +1.00000 1.00000 1.00000 0 0 +3.00000 2.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +12 +1.91485 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +6 +1.91485 +3 +1.00000 1.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +6 +1.91485 +3 +1.00000 1.00000 1.00000 0 0 +0.00000 0.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +1.91485 +3 +1.00000 1.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +1.73205 +4 +1.00000 1.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +2 +1.73205 +4 +1.00000 1.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +3.00000 2.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/go b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/go new file mode 100755 index 0000000..04b4d25 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.95 -4=1.8 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/job.in b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/job.in new file mode 100755 index 0000000..45de499 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C6_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=24 -ip=$id & +done +wait diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/rndstr.in b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/rndstr.in new file mode 100644 index 0000000..8525986 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/rndstr.in @@ -0,0 +1,10 @@ + +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.25 d_A=1 +0.666667 0.333333 -0.25 d_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/rndstrgrp.out b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/rndstrgrp.out new file mode 100644 index 0000000..88ae663 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=0.5,0.5_d=1/rndstrgrp.out @@ -0,0 +1,11 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.333333 0.666667 0.250000 d_A=1.000000 +0.666667 0.333333 -0.250000 d_A=1.000000 diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/bestcorr.out b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..c79bb6a --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/bestcorr.out @@ -0,0 +1,26 @@ +2 0.999995 0.000000 0.000000 0.000000 +2 0.999995 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.414203 0.000000 0.000000 0.000000 +2 1.414203 0.000000 0.000000 0.000000 +2 1.632990 0.000000 0.000000 0.000000 +2 1.732042 0.000000 0.000000 0.000000 +2 1.732042 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.914852 0.000000 0.000000 0.000000 +2 2.000000 -0.333333 0.000000 -0.333333 +3 0.999995 0.000000 0.000000 0.000000 +3 0.999995 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.414203 0.000000 0.000000 0.000000 +3 1.414203 0.000000 0.000000 0.000000 +4 0.999995 0.000000 0.000000 0.000000 +4 0.999995 0.000000 0.000000 0.000000 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414203 -0.333333 0.000000 -0.333333 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414203 -0.333333 0.000000 -0.333333 +4 1.414203 0.000000 0.000000 0.000000 +Objective_function= -5.351728 diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/bestsqs.out b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..c04d13f --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/bestsqs.out @@ -0,0 +1,30 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +0.000000 1.000000 1.000000 +-2.000000 0.000000 0.000000 +-2.000000 -3.000000 1.000000 +-2.666667 -2.333333 1.250000 d_B +-3.666667 -2.333333 1.250000 d_B +-2.666667 -1.333333 1.250000 d_A +-1.666667 -1.333333 1.250000 d_A +-1.666667 -0.333333 1.250000 d_A +-2.666667 -0.333333 1.250000 d_A +-1.666667 -0.333333 0.250000 d_B +-0.666667 -0.333333 0.250000 d_B +-3.333333 -1.666666 1.750000 d_B +-2.333333 -1.666666 1.750000 d_A +-1.333333 -1.666666 0.750000 d_A +-2.333333 -1.666666 0.750000 d_B +-2.333333 -0.666666 0.750000 d_B +-1.333333 -0.666666 0.750000 d_A +-0.333333 0.333334 0.750000 d_A +-1.333333 0.333334 0.750000 d_B +-3.000000 -2.000000 2.000000 a_A +-4.000000 -2.000000 2.000000 a_A +-3.000000 -2.000000 1.000000 a_A +-2.000000 -2.000000 1.000000 a_A +-2.000000 -1.000000 1.000000 a_A +-3.000000 -1.000000 1.000000 a_A +-2.000000 0.000000 1.000000 a_A +-1.000000 0.000000 1.000000 a_A diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/clusters.out b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..dd5cc1b --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/clusters.out @@ -0,0 +1,172 @@ +3 +1.00000 +2 +0.66667 0.33333 0.75000 0 0 +1.33333 0.66667 0.25000 0 0 + +3 +1.00000 +2 +0.66667 0.33333 0.75000 0 0 +0.33333 -0.33333 1.25000 0 0 + +6 +1.00000 +2 +0.66667 0.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +3 +1.41421 +2 +0.66667 0.33333 0.75000 0 0 +1.33333 -0.33333 1.25000 0 0 + +3 +1.41421 +2 +0.66667 0.33333 0.75000 0 0 +1.33333 -0.33333 0.25000 0 0 + +2 +1.63299 +2 +0.66667 0.33333 0.75000 0 0 +0.66667 0.33333 -0.25000 0 0 + +6 +1.73205 +2 +0.33333 0.66667 0.25000 0 0 +0.66667 2.33333 -0.25000 0 0 + +6 +1.73205 +2 +0.33333 0.66667 0.25000 0 0 +-1.33333 0.33333 0.75000 0 0 + +6 +1.73205 +2 +0.66667 0.33333 0.75000 0 0 +1.66667 -0.66667 0.75000 0 0 + +12 +1.91485 +2 +0.66667 0.33333 0.75000 0 0 +0.66667 -0.66667 -0.25000 0 0 + +6 +2.00000 +2 +0.33333 0.66667 0.25000 0 0 +-1.66667 0.66667 0.25000 0 0 + +6 +1.00000 +3 +0.33333 0.66667 0.25000 0 0 +0.66667 1.33333 0.75000 0 0 +-0.33333 0.33333 0.75000 0 0 + +6 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +1.33333 0.66667 1.25000 0 0 +0.33333 -0.33333 1.25000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +1.66667 1.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +-0.33333 0.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +12 +1.41421 +3 +0.66667 0.33333 0.75000 0 0 +0.33333 -0.33333 1.25000 0 0 +1.33333 -0.33333 1.25000 0 0 + +12 +1.41421 +3 +0.66667 0.33333 0.75000 0 0 +1.33333 0.66667 0.25000 0 0 +1.33333 -0.33333 0.25000 0 0 + +2 +1.00000 +4 +0.33333 0.66667 0.25000 0 0 +0.66667 0.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 +-0.33333 0.33333 0.75000 0 0 + +2 +1.00000 +4 +0.66667 0.33333 0.75000 0 0 +0.33333 0.66667 1.25000 0 0 +1.33333 0.66667 1.25000 0 0 +0.33333 -0.33333 1.25000 0 0 + +6 +1.41421 +4 +0.66667 0.33333 0.75000 0 0 +1.33333 0.66667 1.25000 0 0 +0.33333 -0.33333 1.25000 0 0 +1.33333 -0.33333 1.25000 0 0 + +6 +1.41421 +4 +0.66667 0.33333 0.75000 0 0 +0.66667 -0.66667 0.75000 0 0 +0.33333 -0.33333 1.25000 0 0 +1.33333 -0.33333 1.25000 0 0 + +3 +1.41421 +4 +0.66667 0.33333 0.75000 0 0 +1.66667 0.33333 0.75000 0 0 +0.33333 -0.33333 1.25000 0 0 +1.33333 -0.33333 1.25000 0 0 + +6 +1.41421 +4 +0.66667 0.33333 0.75000 0 0 +0.33333 -0.33333 0.25000 0 0 +1.33333 0.66667 0.25000 0 0 +1.33333 -0.33333 0.25000 0 0 + +3 +1.41421 +4 +0.66667 0.33333 0.75000 0 0 +0.66667 -0.66667 0.75000 0 0 +1.33333 0.66667 0.25000 0 0 +1.33333 -0.33333 0.25000 0 0 + +6 +1.41421 +4 +0.66667 0.33333 0.75000 0 0 +1.66667 0.33333 0.75000 0 0 +1.33333 0.66667 0.25000 0 0 +1.33333 -0.33333 0.25000 0 0 + diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/go b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/go new file mode 100755 index 0000000..dfe5853 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.5 -4=1.5 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/job.in b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/job.in new file mode 100755 index 0000000..45de499 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C6_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=24 -ip=$id & +done +wait diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/rndstr.in b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..2f64fe3 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/rndstr.in @@ -0,0 +1,10 @@ + +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.25 d_A=0.5,d_B=0.5 +0.666667 0.333333 -0.25 d_A=0.5,d_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..e57abd1 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=1_a=1_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,11 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.333333 0.666667 0.250000 d_A=0.500000,d_B=0.500000 +-0.333333 0.333334 -0.250000 d_A=0.500000,d_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestcorr.out b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..f6f1e58 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestcorr.out @@ -0,0 +1,33 @@ +2 0.707102 0.000000 0.000000 0.000000 +2 0.999995 0.000000 0.000000 0.000000 +2 0.999995 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224742 0.000000 0.000000 0.000000 +2 1.354002 0.000000 0.000000 0.000000 +2 1.414203 0.000000 0.000000 0.000000 +2 1.414203 0.000000 0.000000 0.000000 +3 0.999995 0.000000 0.000000 0.000000 +3 0.999995 0.000000 0.000000 0.000000 +3 0.999995 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224742 0.000000 0.000000 0.000000 +3 1.224742 0.000000 0.000000 0.000000 +3 1.224742 0.000000 0.000000 0.000000 +4 0.999995 0.000000 0.000000 0.000000 +4 0.999995 0.333333 0.000000 0.333333 +4 0.999995 0.000000 0.000000 0.000000 +4 0.999995 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.224742 -0.333333 0.000000 -0.333333 +4 1.224742 -0.166667 0.000000 -0.166667 +4 1.224742 -0.166667 0.000000 -0.166667 +4 1.224742 0.000000 0.000000 0.000000 +4 1.224742 0.000000 0.000000 0.000000 +4 1.224742 0.333333 0.000000 0.333333 +Objective_function= -343.399988 diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestsqs.out b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..5e5357a --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestsqs.out @@ -0,0 +1,30 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +-0.000000 -2.000000 -1.000000 +0.000000 -0.000000 -1.000000 +4.000000 0.000000 0.000000 +0.333333 -0.333333 -0.750000 d_B +1.333333 -0.333333 -0.750000 d_A +2.333333 -0.333333 -0.750000 d_A +3.333333 -0.333333 -0.750000 d_B +0.333333 -1.333333 -0.750000 d_B +1.333333 -1.333333 -0.750000 d_A +2.333333 -1.333333 -0.750000 d_A +3.333333 -1.333333 -0.750000 d_B +3.666667 -0.666666 -1.250000 d_B +0.666667 -0.666666 -1.250000 d_A +1.666667 -0.666666 -1.250000 d_B +2.666667 -0.666666 -1.250000 d_B +3.666667 -1.666666 -1.250000 d_A +0.666667 -1.666666 -1.250000 d_B +1.666667 -1.666666 -1.250000 d_A +2.666667 -1.666666 -1.250000 d_A +4.000000 -1.000000 -1.000000 a_B +1.000000 -1.000000 -1.000000 a_A +2.000000 -1.000000 -1.000000 a_A +3.000000 -1.000000 -1.000000 a_B +4.000000 -2.000000 -2.000000 a_A +1.000000 -2.000000 -2.000000 a_A +2.000000 -2.000000 -2.000000 a_B +3.000000 -2.000000 -2.000000 a_B diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/clusters.out b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..762dc25 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/clusters.out @@ -0,0 +1,227 @@ +6 +0.70711 +2 +0.33333 0.66667 0.25000 0 0 +0.00000 1.00000 0.00000 0 0 + +3 +1.00000 +2 +0.33333 0.66667 0.25000 0 0 +-0.33333 0.33333 0.75000 0 0 + +3 +1.00000 +2 +0.66667 0.33333 0.75000 0 0 +0.33333 -0.33333 1.25000 0 0 + +6 +1.00000 +2 +0.66667 0.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 + +6 +1.22474 +2 +0.33333 0.66667 0.25000 0 0 +-1.00000 0.00000 0.00000 0 0 + +6 +1.35400 +2 +0.66667 0.33333 0.75000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +1.41421 +2 +0.66667 0.33333 0.75000 0 0 +1.33333 -0.33333 1.25000 0 0 + +3 +1.41421 +2 +0.66667 0.33333 0.75000 0 0 +1.33333 -0.33333 0.25000 0 0 + +6 +1.00000 +3 +0.33333 0.66667 0.25000 0 0 +0.66667 1.33333 0.75000 0 0 +-0.33333 0.33333 0.75000 0 0 + +6 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +1.00000 0.00000 1.00000 0 0 +0.33333 -0.33333 1.25000 0 0 + +6 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +1.33333 0.66667 1.25000 0 0 +0.33333 -0.33333 1.25000 0 0 + +6 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +1.00000 1.00000 1.00000 0 0 +0.66667 1.33333 0.75000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +1.66667 1.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +-0.33333 0.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +6 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +1.33333 0.66667 1.25000 0 0 +1.00000 0.00000 1.00000 0 0 + +2 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 + +12 +1.22474 +3 +0.33333 0.66667 0.25000 0 0 +0.00000 1.00000 0.00000 0 0 +-1.00000 0.00000 0.00000 0 0 + +12 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.33333 0.66667 1.25000 0 0 +2.33333 1.66667 1.25000 0 0 + +6 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.66667 1.33333 0.75000 0 0 +2.33333 1.66667 1.25000 0 0 + +2 +1.00000 +4 +0.33333 0.66667 0.25000 0 0 +0.66667 0.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 +-0.33333 0.33333 0.75000 0 0 + +3 +1.00000 +4 +0.66667 0.33333 0.75000 0 0 +0.00000 0.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 +0.33333 -0.33333 1.25000 0 0 + +6 +1.00000 +4 +0.66667 0.33333 0.75000 0 0 +1.00000 0.00000 1.00000 0 0 +1.33333 0.66667 1.25000 0 0 +0.33333 -0.33333 1.25000 0 0 + +2 +1.00000 +4 +0.66667 0.33333 0.75000 0 0 +0.33333 0.66667 1.25000 0 0 +1.33333 0.66667 1.25000 0 0 +0.33333 -0.33333 1.25000 0 0 + +2 +1.00000 +4 +0.66667 0.33333 0.75000 0 0 +1.00000 1.00000 1.00000 0 0 +1.66667 1.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +2 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +1.33333 0.66667 1.25000 0 0 +2.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 + +6 +1.22474 +4 +0.33333 0.66667 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 +-1.00000 0.00000 0.00000 0 0 + +12 +1.22474 +4 +0.33333 0.66667 0.25000 0 0 +0.00000 1.00000 0.00000 0 0 +-0.33333 0.33333 -0.25000 0 0 +-1.00000 0.00000 0.00000 0 0 + +12 +1.22474 +4 +0.33333 0.66667 0.25000 0 0 +0.00000 1.00000 0.00000 0 0 +-0.66667 0.66667 0.25000 0 0 +-1.00000 0.00000 0.00000 0 0 + +6 +1.22474 +4 +0.33333 0.66667 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.66667 0.66667 0.25000 0 0 +-1.00000 0.00000 0.00000 0 0 + +12 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +1.66667 1.33333 0.75000 0 0 +1.33333 0.66667 1.25000 0 0 +2.33333 1.66667 1.25000 0 0 + +6 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +1.33333 1.66667 1.25000 0 0 +1.33333 0.66667 1.25000 0 0 +2.33333 1.66667 1.25000 0 0 + diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/go b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/go new file mode 100755 index 0000000..c4dcd7e --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.5 -3=1.3 -4=1.3 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/job.in b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/job.in new file mode 100755 index 0000000..45de499 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C6_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=24 -ip=$id & +done +wait diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstr.in b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..1703398 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstr.in @@ -0,0 +1,10 @@ + +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.25 d_A=0.5,d_B=0.5 +0.666667 0.333333 -0.25 d_A=0.5,d_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..a5476f6 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,11 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.333333 0.666667 0.250000 d_A=0.500000,d_B=0.500000 +-0.333333 0.333334 -0.250000 d_A=0.500000,d_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/sqsparam.in b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..fa5710b --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +2 10 2 5 diff --git a/data/sqsdb/CDI2_C6/sqsgen.in b/data/sqsdb/CDI2_C6/sqsgen.in new file mode 100644 index 0000000..5363ce3 --- /dev/null +++ b/data/sqsdb/CDI2_C6/sqsgen.in @@ -0,0 +1,4 @@ +level=0 a=1 d=1 +level=1 a=0.5,0.5 d=1 +level=1 a=1 d=0.5,0.5 +level=2 a=0.5,0.5 d=0.5,0.5 diff --git a/data/sqsdb/CHI_A12/notes.txt b/data/sqsdb/CHI_A12/notes.txt new file mode 100644 index 0000000..be41fdf --- /dev/null +++ b/data/sqsdb/CHI_A12/notes.txt @@ -0,0 +1 @@ +http://som.web.cmu.edu/structures/S025-alpha-Mn.html diff --git a/data/sqsdb/CHI_A12/rndstr.skel b/data/sqsdb/CHI_A12/rndstr.skel new file mode 100644 index 0000000..eb21f32 --- /dev/null +++ b/data/sqsdb/CHI_A12/rndstr.skel @@ -0,0 +1,38 @@ +3.0789 3.0789 3.0789 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0 0 ac + +0.317 0.317 0.317 ac +-0.317 -0.317 0.317 ac +-0.317 0.317 -0.317 ac +0.317 -0.317 -0.317 ac + +0.089 0.089 0.278 g1 +-0.089 -0.089 0.278 g1 +-0.089 0.089 -0.278 g1 +0.089 -0.089 -0.278 g1 +0.278 0.089 0.089 g1 +0.278 -0.089 -0.089 g1 +-0.278 -0.089 0.089 g1 +-0.278 0.089 -0.089 g1 +0.089 0.278 0.089 g1 +-0.089 0.278 -0.089 g1 +0.089 -0.278 -0.089 g1 +-0.089 -0.278 0.089 g1 + +0.356 0.356 0.042 g2 +-0.356 -0.356 0.042 g2 +-0.356 0.356 -0.042 g2 +0.356 -0.356 -0.042 g2 +0.042 0.356 0.356 g2 +0.042 -0.356 -0.356 g2 +-0.042 -0.356 0.356 g2 +-0.042 0.356 -0.356 g2 +0.356 0.042 0.356 g2 +-0.356 0.042 -0.356 g2 +0.356 -0.042 -0.356 g2 +-0.356 -0.042 0.356 g2 + diff --git a/data/sqsdb/CHI_A12/rndstr.skel.sspp b/data/sqsdb/CHI_A12/rndstr.skel.sspp new file mode 100644 index 0000000..0ef4f59 --- /dev/null +++ b/data/sqsdb/CHI_A12/rndstr.skel.sspp @@ -0,0 +1,38 @@ +#const a=8.8940/2.88869; +{a} {a} {a} {90} {90} {90} +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 +#const x=0.0890; z=0.2780; g="g1"; +{x} {x} {z} {g} +{-x} {-x} {z} {g} +{-x} {x} {-z} {g} +{x} {-x} {-z} {g} +{z} {x} {x} {g} +{z} {-x} {-x} {g} +{-z} {-x} {x} {g} +{-z} {x} {-x} {g} +{x} {z} {x} {g} +{-x} {z} {-x} {g} +{x} {-z} {-x} {g} +{-x} {-z} {x} {g} +#const x=0.3560; z=0.0420; g="g2"; +{x} {x} {z} {g} +{-x} {-x} {z} {g} +{-x} {x} {-z} {g} +{x} {-x} {-z} {g} +{z} {x} {x} {g} +{z} {-x} {-x} {g} +{-z} {-x} {x} {g} +{-z} {x} {-x} {g} +{x} {z} {x} {g} +{-x} {z} {-x} {g} +{x} {-z} {-x} {g} +{-x} {-z} {x} {g} +#const x=0.3170; c="ac"; +{x} {x} {x} {c} +{-x} {-x} {x} {c} +{-x} {x} {-x} {c} +{x} {-x} {-x} {c} +#const a="ac"; +{0} {0} {0} {a} diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=0_ac=1_g1=1_g2=1/bestsqs.out b/data/sqsdb/CHI_A12/sqsdb_lev=0_ac=1_g1=1_g2=1/bestsqs.out new file mode 100644 index 0000000..5b6e7b3 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=0_ac=1_g1=1_g2=1/bestsqs.out @@ -0,0 +1,38 @@ +3.0789 3.0789 3.0789 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0 0 ac_A + +0.317 0.317 0.317 ac_A +-0.317 -0.317 0.317 ac_A +-0.317 0.317 -0.317 ac_A +0.317 -0.317 -0.317 ac_A + +0.089 0.089 0.278 g1_A +-0.089 -0.089 0.278 g1_A +-0.089 0.089 -0.278 g1_A +0.089 -0.089 -0.278 g1_A +0.278 0.089 0.089 g1_A +0.278 -0.089 -0.089 g1_A +-0.278 -0.089 0.089 g1_A +-0.278 0.089 -0.089 g1_A +0.089 0.278 0.089 g1_A +-0.089 0.278 -0.089 g1_A +0.089 -0.278 -0.089 g1_A +-0.089 -0.278 0.089 g1_A + +0.356 0.356 0.042 g2_A +-0.356 -0.356 0.042 g2_A +-0.356 0.356 -0.042 g2_A +0.356 -0.356 -0.042 g2_A +0.042 0.356 0.356 g2_A +0.042 -0.356 -0.356 g2_A +-0.042 -0.356 0.356 g2_A +-0.042 0.356 -0.356 g2_A +0.356 0.042 0.356 g2_A +-0.356 0.042 -0.356 g2_A +0.356 -0.042 -0.356 g2_A +-0.356 -0.042 0.356 g2_A + diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=0_ac=1_g1=1_g2=1/rndstr.in b/data/sqsdb/CHI_A12/sqsdb_lev=0_ac=1_g1=1_g2=1/rndstr.in new file mode 100644 index 0000000..24d0eba --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=0_ac=1_g1=1_g2=1/rndstr.in @@ -0,0 +1,38 @@ +3.0789 3.0789 3.0789 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0 0 ac_A=1 + +0.317 0.317 0.317 ac_A=1 +-0.317 -0.317 0.317 ac_A=1 +-0.317 0.317 -0.317 ac_A=1 +0.317 -0.317 -0.317 ac_A=1 + +0.089 0.089 0.278 g1_A=1 +-0.089 -0.089 0.278 g1_A=1 +-0.089 0.089 -0.278 g1_A=1 +0.089 -0.089 -0.278 g1_A=1 +0.278 0.089 0.089 g1_A=1 +0.278 -0.089 -0.089 g1_A=1 +-0.278 -0.089 0.089 g1_A=1 +-0.278 0.089 -0.089 g1_A=1 +0.089 0.278 0.089 g1_A=1 +-0.089 0.278 -0.089 g1_A=1 +0.089 -0.278 -0.089 g1_A=1 +-0.089 -0.278 0.089 g1_A=1 + +0.356 0.356 0.042 g2_A=1 +-0.356 -0.356 0.042 g2_A=1 +-0.356 0.356 -0.042 g2_A=1 +0.356 -0.356 -0.042 g2_A=1 +0.042 0.356 0.356 g2_A=1 +0.042 -0.356 -0.356 g2_A=1 +-0.042 -0.356 0.356 g2_A=1 +-0.042 0.356 -0.356 g2_A=1 +0.356 0.042 0.356 g2_A=1 +-0.356 0.042 -0.356 g2_A=1 +0.356 -0.042 -0.356 g2_A=1 +-0.356 -0.042 0.356 g2_A=1 + diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/bestcorr.out b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/bestcorr.out new file mode 100644 index 0000000..f50fe4a --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/bestcorr.out @@ -0,0 +1,32 @@ +2 0.975904 0.000000 0.000000 0.000000 +2 1.593645 -0.333333 0.000000 -0.333333 +2 1.646311 0.000000 0.000000 0.000000 +2 1.690501 0.000000 0.000000 0.000000 +2 2.253940 0.333333 0.000000 0.333333 +2 2.515420 0.000000 0.000000 0.000000 +2 2.638650 0.000000 0.000000 0.000000 +2 2.666406 0.000000 0.000000 0.000000 +2 2.666406 0.000000 0.000000 0.000000 +2 2.666406 0.000000 0.000000 0.000000 +2 2.760577 -0.333333 0.000000 -0.333333 +3 1.593645 0.000000 0.000000 0.000000 +3 1.593645 0.000000 0.000000 0.000000 +3 1.646311 0.000000 0.000000 0.000000 +3 1.690501 0.000000 0.000000 0.000000 +3 2.253940 0.000000 0.000000 0.000000 +3 2.253940 0.000000 0.000000 0.000000 +3 2.515420 0.000000 0.000000 0.000000 +3 2.515420 0.000000 0.000000 0.000000 +3 2.515420 0.000000 0.000000 0.000000 +4 1.593645 0.000000 0.000000 0.000000 +4 1.593645 1.000000 0.000000 1.000000 +4 1.646311 0.000000 0.000000 0.000000 +4 1.690501 0.000000 0.000000 0.000000 +4 2.253940 -0.333333 0.000000 -0.333333 +4 2.253940 0.000000 0.000000 0.000000 +4 2.253940 1.000000 0.000000 1.000000 +4 2.515420 0.000000 0.000000 0.000000 +4 2.515420 0.000000 0.000000 0.000000 +4 2.515420 0.000000 0.000000 0.000000 +4 2.515420 0.000000 0.000000 0.000000 +Objective_function= -37.651018 diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/bestsqs.out b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/bestsqs.out new file mode 100644 index 0000000..ecf1eaa --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/bestsqs.out @@ -0,0 +1,64 @@ +3.078900 0.000000 0.000000 +0.000000 3.078900 0.000000 +0.000000 0.000000 3.078900 +-0.500000 0.500000 -0.500000 +-0.500000 -0.500000 0.500000 +-0.000000 1.000000 1.000000 +-1.000000 1.000000 1.000000 ac_A +-0.500000 0.500000 0.500000 ac_B +-0.683000 0.317000 0.317000 ac_A +-0.183000 0.817000 0.817000 ac_B +-0.817000 1.183000 0.817000 ac_B +-0.317000 0.683000 0.317000 ac_A +-0.817000 0.817000 1.183000 ac_A +-0.317000 0.317000 0.683000 ac_B +-0.683000 0.683000 0.683000 ac_B +-0.183000 0.183000 0.183000 ac_A +-0.411000 0.589000 -0.222000 g1_A +-0.411000 0.589000 0.778000 g1_A +-0.589000 0.411000 -0.222000 g1_A +-0.589000 0.411000 0.778000 g1_A +-0.589000 0.589000 1.222000 g1_A +-0.589000 0.589000 0.222000 g1_A +-0.411000 0.411000 1.222000 g1_A +-0.411000 0.411000 0.222000 g1_A +-0.722000 0.089000 0.089000 g1_A +-0.222000 0.589000 0.589000 g1_A +-0.722000 0.911000 0.911000 g1_A +-0.222000 0.411000 0.411000 g1_A +-0.278000 0.911000 1.089000 g1_A +-0.778000 0.411000 0.589000 g1_A +-0.278000 1.089000 0.911000 g1_A +-0.778000 0.589000 0.411000 g1_A +-0.411000 -0.222000 0.589000 g1_A +-0.411000 0.778000 0.589000 g1_A +-0.589000 -0.222000 0.411000 g1_A +-0.589000 0.778000 0.411000 g1_A +-0.411000 1.222000 0.411000 g1_A +-0.411000 0.222000 0.411000 g1_A +-0.589000 1.222000 0.589000 g1_A +-0.589000 0.222000 0.589000 g1_A +-0.644000 0.356000 0.042000 g2_A +-0.644000 0.356000 1.042000 g2_A +-0.356000 0.644000 1.042000 g2_A +-0.356000 0.644000 0.042000 g2_A +-0.356000 0.356000 -0.042000 g2_A +-0.356000 0.356000 0.958000 g2_A +-0.644000 0.644000 0.958000 g2_A +-0.644000 0.644000 -0.042000 g2_A +-0.958000 0.356000 0.356000 g2_A +-0.458000 0.856000 0.856000 g2_A +-0.958000 0.644000 0.644000 g2_A +-0.458000 0.144000 0.144000 g2_A +-0.542000 1.144000 0.856000 g2_A +-0.542000 0.144000 0.856000 g2_A +-0.542000 0.856000 1.144000 g2_A +-0.542000 0.856000 0.144000 g2_A +-0.644000 0.042000 0.356000 g2_A +-0.644000 1.042000 0.356000 g2_A +-0.356000 1.042000 0.644000 g2_A +-0.356000 0.042000 0.644000 g2_A +-0.644000 0.958000 0.644000 g2_A +-0.644000 -0.042000 0.644000 g2_A +-0.356000 -0.042000 0.356000 g2_A +-0.356000 0.958000 0.356000 g2_A diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/clusters.out b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/clusters.out new file mode 100644 index 0000000..9a62840 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/clusters.out @@ -0,0 +1,217 @@ +4 +0.97590 +2 +0.50000 0.50000 0.50000 0 0 +0.31700 0.31700 0.31700 0 0 + +6 +1.59365 +2 +0.18300 0.81700 0.18300 0 0 +-0.18300 0.81700 -0.18300 0 0 + +12 +1.64631 +2 +0.81700 0.18300 0.18300 0 0 +0.31700 0.31700 0.31700 0 0 + +4 +1.69050 +2 +0.81700 0.18300 0.18300 0 0 +0.50000 0.50000 0.50000 0 0 + +12 +2.25394 +2 +0.18300 0.18300 0.81700 0 0 +0.81700 0.18300 1.18300 0 0 + +12 +2.51542 +2 +0.18300 0.81700 0.18300 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +2.63865 +2 +0.50000 0.50000 0.50000 0 0 +1.31700 0.68300 0.68300 0 0 + +12 +2.66641 +2 +0.81700 0.18300 0.18300 0 0 +0.31700 -0.31700 -0.31700 0 0 + +4 +2.66641 +2 +0.31700 0.31700 0.31700 0 0 +-0.18300 -0.18300 -0.18300 0 0 + +4 +2.66641 +2 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +6 +2.76058 +2 +0.81700 0.18300 0.18300 0 0 +0.18300 0.81700 0.18300 0 0 + +6 +1.59365 +3 +0.18300 0.81700 0.18300 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.18300 0.81700 -0.18300 0 0 + +4 +1.59365 +3 +0.18300 0.81700 0.18300 0 0 +-0.18300 1.18300 0.18300 0 0 +-0.18300 0.81700 -0.18300 0 0 + +12 +1.64631 +3 +0.31700 0.31700 0.31700 0 0 +0.68300 0.31700 0.68300 0 0 +0.81700 0.18300 0.18300 0 0 + +12 +1.69050 +3 +0.50000 0.50000 0.50000 0 0 +0.31700 0.31700 0.31700 0 0 +0.81700 0.18300 0.18300 0 0 + +12 +2.25394 +3 +0.18300 0.18300 0.81700 0 0 +0.18300 -0.18300 1.18300 0 0 +0.81700 0.18300 1.18300 0 0 + +24 +2.25394 +3 +0.18300 0.18300 0.81700 0 0 +0.68300 0.31700 0.68300 0 0 +0.81700 0.18300 1.18300 0 0 + +12 +2.51542 +3 +0.18300 0.81700 0.18300 0 0 +-0.18300 0.81700 -0.18300 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +2.51542 +3 +0.50000 0.50000 0.50000 0 0 +0.31700 0.31700 0.31700 0 0 +0.18300 0.18300 -0.18300 0 0 + +24 +2.51542 +3 +0.50000 0.50000 0.50000 0 0 +0.81700 0.18300 0.18300 0 0 +0.18300 0.18300 -0.18300 0 0 + +4 +1.59365 +4 +0.18300 0.81700 0.18300 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.18300 1.18300 0.18300 0 0 +-0.18300 0.81700 -0.18300 0 0 + +1 +1.59365 +4 +0.18300 0.81700 0.18300 0 0 +0.18300 1.18300 -0.18300 0 0 +-0.18300 1.18300 0.18300 0 0 +-0.18300 0.81700 -0.18300 0 0 + +4 +1.64631 +4 +0.31700 0.31700 0.31700 0 0 +0.68300 0.68300 0.31700 0 0 +0.68300 0.31700 0.68300 0 0 +0.81700 0.18300 0.18300 0 0 + +12 +1.69050 +4 +0.50000 0.50000 0.50000 0 0 +0.68300 0.68300 0.31700 0 0 +0.31700 0.31700 0.31700 0 0 +0.81700 0.18300 0.18300 0 0 + +6 +2.25394 +4 +0.18300 0.18300 0.81700 0 0 +0.31700 0.31700 1.31700 0 0 +0.68300 0.31700 0.68300 0 0 +0.81700 0.18300 1.18300 0 0 + +12 +2.25394 +4 +0.18300 0.18300 0.81700 0 0 +0.18300 -0.18300 1.18300 0 0 +0.31700 0.31700 1.31700 0 0 +0.81700 0.18300 1.18300 0 0 + +3 +2.25394 +4 +0.18300 0.18300 0.81700 0 0 +0.18300 -0.18300 1.18300 0 0 +0.81700 -0.18300 0.81700 0 0 +0.81700 0.18300 1.18300 0 0 + +4 +2.51542 +4 +0.18300 0.81700 0.18300 0 0 +-0.18300 1.18300 0.18300 0 0 +-0.18300 0.81700 -0.18300 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +2.51542 +4 +0.18300 0.81700 0.18300 0 0 +-0.18300 0.81700 -0.18300 0 0 +-0.18300 0.18300 0.18300 0 0 +-0.50000 0.50000 0.50000 0 0 + +24 +2.51542 +4 +0.50000 0.50000 0.50000 0 0 +0.31700 0.31700 0.31700 0 0 +0.81700 0.18300 0.18300 0 0 +0.18300 0.18300 -0.18300 0 0 + +12 +2.51542 +4 +0.50000 0.50000 0.50000 0 0 +0.31700 0.31700 0.31700 0 0 +-0.18300 0.18300 0.18300 0 0 +0.18300 0.18300 -0.18300 0 0 + diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/go b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/go new file mode 100644 index 0000000..a92b768 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/go @@ -0,0 +1,4 @@ + corrdump -nop -noe -2=3 -3=2.6 -4=2.6 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/job.in b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/job.in new file mode 100755 index 0000000..e844c4d --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=58 -wr=10 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/rndstr.in b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/rndstr.in new file mode 100644 index 0000000..59e05a9 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/rndstr.in @@ -0,0 +1,38 @@ +3.0789 3.0789 3.0789 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0 0 ac_A=0.5,ac_B=0.5 + +0.317 0.317 0.317 ac_A=0.5,ac_B=0.5 +-0.317 -0.317 0.317 ac_A=0.5,ac_B=0.5 +-0.317 0.317 -0.317 ac_A=0.5,ac_B=0.5 +0.317 -0.317 -0.317 ac_A=0.5,ac_B=0.5 + +0.089 0.089 0.278 g1_A=1 +-0.089 -0.089 0.278 g1_A=1 +-0.089 0.089 -0.278 g1_A=1 +0.089 -0.089 -0.278 g1_A=1 +0.278 0.089 0.089 g1_A=1 +0.278 -0.089 -0.089 g1_A=1 +-0.278 -0.089 0.089 g1_A=1 +-0.278 0.089 -0.089 g1_A=1 +0.089 0.278 0.089 g1_A=1 +-0.089 0.278 -0.089 g1_A=1 +0.089 -0.278 -0.089 g1_A=1 +-0.089 -0.278 0.089 g1_A=1 + +0.356 0.356 0.042 g2_A=1 +-0.356 -0.356 0.042 g2_A=1 +-0.356 0.356 -0.042 g2_A=1 +0.356 -0.356 -0.042 g2_A=1 +0.042 0.356 0.356 g2_A=1 +0.042 -0.356 -0.356 g2_A=1 +-0.042 -0.356 0.356 g2_A=1 +-0.042 0.356 -0.356 g2_A=1 +0.356 0.042 0.356 g2_A=1 +-0.356 0.042 -0.356 g2_A=1 +0.356 -0.042 -0.356 g2_A=1 +-0.356 -0.042 0.356 g2_A=1 + diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/rndstrgrp.out b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/rndstrgrp.out new file mode 100644 index 0000000..0f6efa5 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=0.5,0.5_g1=1_g2=1/rndstrgrp.out @@ -0,0 +1,39 @@ +3.078900 0.000000 0.000000 +0.000000 3.078900 0.000000 +0.000000 0.000000 3.078900 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.000000 0.000000 ac_A=0.500000,ac_B=0.500000 + +0.317000 0.317000 0.317000 ac_A=0.500000,ac_B=0.500000 +-0.317000 -0.317000 0.317000 ac_A=0.500000,ac_B=0.500000 +-0.317000 0.317000 -0.317000 ac_A=0.500000,ac_B=0.500000 +0.317000 -0.317000 -0.317000 ac_A=0.500000,ac_B=0.500000 + +0.089000 0.089000 0.278000 g1_A=1.000000 +-0.089000 -0.089000 0.278000 g1_A=1.000000 +-0.089000 0.089000 -0.278000 g1_A=1.000000 +0.089000 -0.089000 -0.278000 g1_A=1.000000 +0.278000 0.089000 0.089000 g1_A=1.000000 +0.278000 -0.089000 -0.089000 g1_A=1.000000 +-0.278000 -0.089000 0.089000 g1_A=1.000000 +-0.278000 0.089000 -0.089000 g1_A=1.000000 +0.089000 0.278000 0.089000 g1_A=1.000000 +-0.089000 0.278000 -0.089000 g1_A=1.000000 +0.089000 -0.278000 -0.089000 g1_A=1.000000 +-0.089000 -0.278000 0.089000 g1_A=1.000000 + +0.356000 0.356000 0.042000 g2_A=1.000000 +-0.356000 -0.356000 0.042000 g2_A=1.000000 +-0.356000 0.356000 -0.042000 g2_A=1.000000 +0.356000 -0.356000 -0.042000 g2_A=1.000000 +0.042000 0.356000 0.356000 g2_A=1.000000 +0.042000 -0.356000 -0.356000 g2_A=1.000000 +-0.042000 -0.356000 0.356000 g2_A=1.000000 +-0.042000 0.356000 -0.356000 g2_A=1.000000 +0.356000 0.042000 0.356000 g2_A=1.000000 +-0.356000 0.042000 -0.356000 g2_A=1.000000 +0.356000 -0.042000 -0.356000 g2_A=1.000000 +-0.356000 -0.042000 0.356000 g2_A=1.000000 diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/bestcorr.out b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/bestcorr.out new file mode 100644 index 0000000..98473ba --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/bestcorr.out @@ -0,0 +1,39 @@ +2 0.775052 0.000000 0.000000 0.000000 +2 0.822948 0.000000 0.000000 0.000000 +2 1.384115 0.000000 0.000000 0.000000 +2 1.437863 0.000000 0.000000 0.000000 +2 1.472796 0.000000 0.000000 0.000000 +2 1.598000 0.000000 0.000000 0.000000 +2 1.644772 0.166667 0.000000 0.166667 +2 1.797455 -0.333333 0.000000 -0.333333 +2 1.839163 -0.166667 0.000000 -0.166667 +3 0.822948 0.000000 0.000000 0.000000 +3 1.384115 0.000000 0.000000 0.000000 +3 1.384115 0.000000 0.000000 0.000000 +3 1.384115 0.000000 0.000000 0.000000 +3 1.437863 0.000000 0.000000 0.000000 +3 1.472796 0.000000 0.000000 0.000000 +3 1.472796 0.000000 0.000000 0.000000 +3 1.598000 0.000000 0.000000 0.000000 +3 1.598000 0.000000 0.000000 0.000000 +3 1.598000 0.000000 0.000000 0.000000 +3 1.598000 0.000000 0.000000 0.000000 +3 1.644772 0.000000 0.000000 0.000000 +3 1.644772 0.000000 0.000000 0.000000 +3 1.644772 0.000000 0.000000 0.000000 +3 1.644772 0.000000 0.000000 0.000000 +3 1.644772 0.000000 0.000000 0.000000 +4 1.384115 0.333333 0.000000 0.333333 +4 1.472796 0.333333 0.000000 0.333333 +4 1.472796 -1.000000 0.000000 -1.000000 +4 1.598000 0.000000 0.000000 0.000000 +4 1.598000 0.333333 0.000000 0.333333 +4 1.598000 0.000000 0.000000 0.000000 +4 1.598000 -0.333333 0.000000 -0.333333 +4 1.598000 -0.333333 0.000000 -0.333333 +4 1.644772 -0.500000 0.000000 -0.500000 +4 1.644772 0.000000 0.000000 0.000000 +4 1.644772 0.166667 0.000000 0.166667 +4 1.644772 0.000000 0.000000 0.000000 +4 1.644772 -0.166667 0.000000 -0.166667 +Objective_function= -47.083566 diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/bestsqs.out b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/bestsqs.out new file mode 100644 index 0000000..75954f8 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/bestsqs.out @@ -0,0 +1,64 @@ +3.078900 0.000000 0.000000 +0.000000 3.078900 0.000000 +0.000000 0.000000 3.078900 +-0.500000 0.500000 -0.500000 +-0.500000 -0.500000 0.500000 +-0.000000 1.000000 1.000000 +-0.411000 0.589000 -0.222000 g1_A +-0.411000 0.589000 0.778000 g1_A +-0.589000 0.411000 -0.222000 g1_A +-0.589000 0.411000 0.778000 g1_B +-0.589000 0.589000 1.222000 g1_B +-0.589000 0.589000 0.222000 g1_B +-0.411000 0.411000 1.222000 g1_B +-0.411000 0.411000 0.222000 g1_A +-0.722000 0.089000 0.089000 g1_B +-0.222000 0.589000 0.589000 g1_A +-0.722000 0.911000 0.911000 g1_B +-0.222000 0.411000 0.411000 g1_A +-0.278000 0.911000 1.089000 g1_B +-0.778000 0.411000 0.589000 g1_B +-0.278000 1.089000 0.911000 g1_A +-0.778000 0.589000 0.411000 g1_A +-0.411000 -0.222000 0.589000 g1_B +-0.411000 0.778000 0.589000 g1_B +-0.589000 -0.222000 0.411000 g1_A +-0.589000 0.778000 0.411000 g1_B +-0.411000 1.222000 0.411000 g1_B +-0.411000 0.222000 0.411000 g1_A +-0.589000 1.222000 0.589000 g1_A +-0.589000 0.222000 0.589000 g1_A +-1.000000 1.000000 1.000000 ac_A +-0.500000 0.500000 0.500000 ac_A +-0.683000 0.317000 0.317000 ac_A +-0.183000 0.817000 0.817000 ac_A +-0.817000 1.183000 0.817000 ac_A +-0.317000 0.683000 0.317000 ac_A +-0.817000 0.817000 1.183000 ac_A +-0.317000 0.317000 0.683000 ac_A +-0.683000 0.683000 0.683000 ac_A +-0.183000 0.183000 0.183000 ac_A +-0.644000 0.356000 0.042000 g2_A +-0.644000 0.356000 1.042000 g2_A +-0.356000 0.644000 1.042000 g2_A +-0.356000 0.644000 0.042000 g2_A +-0.356000 0.356000 -0.042000 g2_A +-0.356000 0.356000 0.958000 g2_A +-0.644000 0.644000 0.958000 g2_A +-0.644000 0.644000 -0.042000 g2_A +-0.958000 0.356000 0.356000 g2_A +-0.458000 0.856000 0.856000 g2_A +-0.958000 0.644000 0.644000 g2_A +-0.458000 0.144000 0.144000 g2_A +-0.542000 1.144000 0.856000 g2_A +-0.542000 0.144000 0.856000 g2_A +-0.542000 0.856000 1.144000 g2_A +-0.542000 0.856000 0.144000 g2_A +-0.644000 0.042000 0.356000 g2_A +-0.644000 1.042000 0.356000 g2_A +-0.356000 1.042000 0.644000 g2_A +-0.356000 0.042000 0.644000 g2_A +-0.644000 0.958000 0.644000 g2_A +-0.644000 -0.042000 0.644000 g2_A +-0.356000 -0.042000 0.356000 g2_A +-0.356000 0.958000 0.356000 g2_A diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/clusters.out b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/clusters.out new file mode 100644 index 0000000..c524940 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/clusters.out @@ -0,0 +1,270 @@ +6 +0.77505 +2 +0.41100 0.58900 0.22200 0 0 +0.58900 0.41100 0.22200 0 0 + +12 +0.82295 +2 +0.08900 0.27800 0.08900 0 0 +0.27800 0.08900 0.08900 0 0 + +24 +1.38412 +2 +0.41100 -0.22200 0.41100 0 0 +0.77800 -0.41100 0.58900 0 0 + +24 +1.43786 +2 +0.08900 0.27800 0.08900 0 0 +0.41100 0.58900 0.22200 0 0 + +12 +1.47280 +2 +0.58900 0.41100 0.22200 0 0 +0.41100 0.41100 -0.22200 0 0 + +12 +1.59800 +2 +0.27800 0.08900 0.08900 0 0 +-0.08900 0.08900 -0.27800 0 0 + +24 +1.64477 +2 +0.58900 0.22200 0.41100 0 0 +0.08900 0.08900 0.27800 0 0 + +12 +1.79746 +2 +0.22200 0.58900 0.41100 0 0 +0.77800 0.58900 0.58900 0 0 + +24 +1.83916 +2 +0.41100 0.22200 0.58900 0 0 +0.08900 0.27800 1.08900 0 0 + +4 +0.82295 +3 +0.08900 0.27800 0.08900 0 0 +0.08900 0.08900 0.27800 0 0 +0.27800 0.08900 0.08900 0 0 + +24 +1.38412 +3 +0.41100 -0.22200 0.41100 0 0 +0.58900 -0.22200 0.58900 0 0 +0.77800 -0.41100 0.58900 0 0 + +8 +1.38412 +3 +0.41100 -0.22200 0.41100 0 0 +0.58900 -0.58900 0.22200 0 0 +0.77800 -0.41100 0.58900 0 0 + +12 +1.38412 +3 +0.58900 0.22200 0.41100 0 0 +0.77800 0.41100 0.41100 0 0 +0.41100 0.58900 0.22200 0 0 + +12 +1.43786 +3 +0.41100 0.58900 0.22200 0 0 +0.22200 0.58900 0.41100 0 0 +0.08900 0.27800 0.08900 0 0 + +12 +1.47280 +3 +0.58900 0.41100 0.22200 0 0 +0.41100 0.58900 0.22200 0 0 +0.41100 0.41100 -0.22200 0 0 + +24 +1.47280 +3 +0.58900 0.41100 0.22200 0 0 +0.27800 0.08900 0.08900 0 0 +0.41100 0.41100 -0.22200 0 0 + +24 +1.59800 +3 +0.27800 0.08900 0.08900 0 0 +0.27800 -0.08900 -0.08900 0 0 +-0.08900 0.08900 -0.27800 0 0 + +24 +1.59800 +3 +0.27800 0.08900 0.08900 0 0 +0.08900 0.27800 0.08900 0 0 +-0.08900 0.08900 -0.27800 0 0 + +12 +1.59800 +3 +0.27800 0.08900 0.08900 0 0 +0.08900 -0.27800 -0.08900 0 0 +-0.08900 0.08900 -0.27800 0 0 + +4 +1.59800 +3 +0.27800 0.08900 0.08900 0 0 +-0.08900 -0.27800 0.08900 0 0 +-0.08900 0.08900 -0.27800 0 0 + +24 +1.64477 +3 +0.58900 0.22200 0.41100 0 0 +0.41100 0.22200 0.58900 0 0 +0.08900 0.08900 0.27800 0 0 + +24 +1.64477 +3 +0.58900 0.22200 0.41100 0 0 +0.22200 0.41100 0.58900 0 0 +0.08900 0.08900 0.27800 0 0 + +12 +1.64477 +3 +0.58900 0.22200 0.41100 0 0 +0.22200 0.58900 0.41100 0 0 +0.08900 0.08900 0.27800 0 0 + +24 +1.64477 +3 +0.08900 0.27800 0.08900 0 0 +0.27800 0.08900 0.08900 0 0 +0.58900 0.41100 0.22200 0 0 + +24 +1.64477 +3 +0.08900 0.27800 0.08900 0 0 +0.41100 0.41100 -0.22200 0 0 +0.58900 0.41100 0.22200 0 0 + +12 +1.38412 +4 +0.41100 -0.22200 0.41100 0 0 +0.58900 -0.22200 0.58900 0 0 +0.58900 -0.41100 0.77800 0 0 +0.77800 -0.41100 0.58900 0 0 + +6 +1.47280 +4 +0.58900 0.41100 0.22200 0 0 +0.72200 0.08900 -0.08900 0 0 +0.27800 0.08900 0.08900 0 0 +0.41100 0.41100 -0.22200 0 0 + +3 +1.47280 +4 +0.58900 0.41100 0.22200 0 0 +0.41100 0.58900 0.22200 0 0 +0.58900 0.58900 -0.22200 0 0 +0.41100 0.41100 -0.22200 0 0 + +24 +1.59800 +4 +0.27800 0.08900 0.08900 0 0 +0.27800 -0.08900 -0.08900 0 0 +0.08900 0.27800 0.08900 0 0 +-0.08900 0.08900 -0.27800 0 0 + +12 +1.59800 +4 +0.27800 0.08900 0.08900 0 0 +0.27800 -0.08900 -0.08900 0 0 +-0.08900 0.27800 -0.08900 0 0 +-0.08900 0.08900 -0.27800 0 0 + +24 +1.59800 +4 +0.27800 0.08900 0.08900 0 0 +0.27800 -0.08900 -0.08900 0 0 +0.08900 -0.27800 -0.08900 0 0 +-0.08900 0.08900 -0.27800 0 0 + +12 +1.59800 +4 +0.27800 0.08900 0.08900 0 0 +0.27800 -0.08900 -0.08900 0 0 +0.08900 -0.08900 -0.27800 0 0 +-0.08900 0.08900 -0.27800 0 0 + +12 +1.59800 +4 +0.27800 0.08900 0.08900 0 0 +0.27800 -0.08900 -0.08900 0 0 +-0.08900 -0.27800 0.08900 0 0 +-0.08900 0.08900 -0.27800 0 0 + +24 +1.64477 +4 +0.58900 0.22200 0.41100 0 0 +0.41100 0.22200 0.58900 0 0 +0.22200 0.41100 0.58900 0 0 +0.08900 0.08900 0.27800 0 0 + +12 +1.64477 +4 +0.58900 0.22200 0.41100 0 0 +0.41100 0.22200 0.58900 0 0 +0.27800 0.08900 0.08900 0 0 +0.08900 0.08900 0.27800 0 0 + +24 +1.64477 +4 +0.58900 0.22200 0.41100 0 0 +0.41100 0.22200 0.58900 0 0 +0.41100 -0.22200 0.41100 0 0 +0.08900 0.08900 0.27800 0 0 + +24 +1.64477 +4 +0.58900 0.22200 0.41100 0 0 +0.41100 0.22200 0.58900 0 0 +0.22200 0.58900 0.41100 0 0 +0.08900 0.08900 0.27800 0 0 + +24 +1.64477 +4 +0.08900 0.27800 0.08900 0 0 +0.27800 0.08900 0.08900 0 0 +0.41100 0.41100 -0.22200 0 0 +0.58900 0.41100 0.22200 0 0 + diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/go b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/go new file mode 100644 index 0000000..69eb7a9 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/go @@ -0,0 +1,4 @@ + corrdump -nop -noe -2=2 -3=1.7 -4=1.7 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/job.in b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/job.in new file mode 100755 index 0000000..e844c4d --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=58 -wr=10 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/rndstr.in b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/rndstr.in new file mode 100644 index 0000000..f2d62bc --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/rndstr.in @@ -0,0 +1,38 @@ +3.0789 3.0789 3.0789 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0 0 ac_A=1 + +0.317 0.317 0.317 ac_A=1 +-0.317 -0.317 0.317 ac_A=1 +-0.317 0.317 -0.317 ac_A=1 +0.317 -0.317 -0.317 ac_A=1 + +0.089 0.089 0.278 g1_A=0.5,g1_B=0.5 +-0.089 -0.089 0.278 g1_A=0.5,g1_B=0.5 +-0.089 0.089 -0.278 g1_A=0.5,g1_B=0.5 +0.089 -0.089 -0.278 g1_A=0.5,g1_B=0.5 +0.278 0.089 0.089 g1_A=0.5,g1_B=0.5 +0.278 -0.089 -0.089 g1_A=0.5,g1_B=0.5 +-0.278 -0.089 0.089 g1_A=0.5,g1_B=0.5 +-0.278 0.089 -0.089 g1_A=0.5,g1_B=0.5 +0.089 0.278 0.089 g1_A=0.5,g1_B=0.5 +-0.089 0.278 -0.089 g1_A=0.5,g1_B=0.5 +0.089 -0.278 -0.089 g1_A=0.5,g1_B=0.5 +-0.089 -0.278 0.089 g1_A=0.5,g1_B=0.5 + +0.356 0.356 0.042 g2_A=1 +-0.356 -0.356 0.042 g2_A=1 +-0.356 0.356 -0.042 g2_A=1 +0.356 -0.356 -0.042 g2_A=1 +0.042 0.356 0.356 g2_A=1 +0.042 -0.356 -0.356 g2_A=1 +-0.042 -0.356 0.356 g2_A=1 +-0.042 0.356 -0.356 g2_A=1 +0.356 0.042 0.356 g2_A=1 +-0.356 0.042 -0.356 g2_A=1 +0.356 -0.042 -0.356 g2_A=1 +-0.356 -0.042 0.356 g2_A=1 + diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/rndstrgrp.out b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/rndstrgrp.out new file mode 100644 index 0000000..b76bd02 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=0.5,0.5_g2=1/rndstrgrp.out @@ -0,0 +1,39 @@ +3.078900 0.000000 0.000000 +0.000000 3.078900 0.000000 +0.000000 0.000000 3.078900 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.089000 0.089000 0.278000 g1_A=0.500000,g1_B=0.500000 +-0.089000 -0.089000 0.278000 g1_A=0.500000,g1_B=0.500000 +-0.089000 0.089000 -0.278000 g1_A=0.500000,g1_B=0.500000 +0.089000 -0.089000 -0.278000 g1_A=0.500000,g1_B=0.500000 +0.278000 0.089000 0.089000 g1_A=0.500000,g1_B=0.500000 +0.278000 -0.089000 -0.089000 g1_A=0.500000,g1_B=0.500000 +-0.278000 -0.089000 0.089000 g1_A=0.500000,g1_B=0.500000 +-0.278000 0.089000 -0.089000 g1_A=0.500000,g1_B=0.500000 +0.089000 0.278000 0.089000 g1_A=0.500000,g1_B=0.500000 +-0.089000 0.278000 -0.089000 g1_A=0.500000,g1_B=0.500000 +0.089000 -0.278000 -0.089000 g1_A=0.500000,g1_B=0.500000 +-0.089000 -0.278000 0.089000 g1_A=0.500000,g1_B=0.500000 + +0.000000 0.000000 0.000000 ac_A=1.000000 + +0.317000 0.317000 0.317000 ac_A=1.000000 +-0.317000 -0.317000 0.317000 ac_A=1.000000 +-0.317000 0.317000 -0.317000 ac_A=1.000000 +0.317000 -0.317000 -0.317000 ac_A=1.000000 + +0.356000 0.356000 0.042000 g2_A=1.000000 +-0.356000 -0.356000 0.042000 g2_A=1.000000 +-0.356000 0.356000 -0.042000 g2_A=1.000000 +0.356000 -0.356000 -0.042000 g2_A=1.000000 +0.042000 0.356000 0.356000 g2_A=1.000000 +0.042000 -0.356000 -0.356000 g2_A=1.000000 +-0.042000 -0.356000 0.356000 g2_A=1.000000 +-0.042000 0.356000 -0.356000 g2_A=1.000000 +0.356000 0.042000 0.356000 g2_A=1.000000 +-0.356000 0.042000 -0.356000 g2_A=1.000000 +0.356000 -0.042000 -0.356000 g2_A=1.000000 +-0.356000 -0.042000 0.356000 g2_A=1.000000 diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/bestcorr.out b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..8fb9523 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/bestcorr.out @@ -0,0 +1,22 @@ +2 0.923383 0.000000 0.000000 0.000000 +2 0.923670 0.000000 0.000000 0.000000 +2 1.254016 0.000000 0.000000 0.000000 +2 1.367226 0.000000 0.000000 0.000000 +2 1.602235 0.000000 0.000000 0.000000 +2 1.732980 0.000000 0.000000 0.000000 +2 1.739489 0.000000 0.000000 0.000000 +2 1.794996 0.000000 0.000000 0.000000 +2 1.795144 0.000000 0.000000 0.000000 +3 0.923383 0.166667 0.000000 0.166667 +3 1.254016 0.333333 0.000000 0.333333 +3 1.367226 0.000000 0.000000 0.000000 +3 1.367226 0.000000 0.000000 0.000000 +3 1.602235 -0.166667 0.000000 -0.166667 +3 1.602235 0.000000 0.000000 0.000000 +3 1.602235 0.000000 0.000000 0.000000 +4 0.923383 -0.333333 0.000000 -0.333333 +4 1.254016 0.333333 0.000000 0.333333 +4 1.602235 0.000000 0.000000 0.000000 +4 1.602235 0.000000 0.000000 0.000000 +4 1.602235 0.166667 0.000000 0.166667 +Objective_function= -42.496744 diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/bestsqs.out b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..316b529 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/bestsqs.out @@ -0,0 +1,64 @@ +3.078900 0.000000 0.000000 +0.000000 3.078900 0.000000 +0.000000 0.000000 3.078900 +-0.500000 0.500000 -0.500000 +-0.500000 -0.500000 0.500000 +-0.000000 1.000000 1.000000 +-0.644000 0.356000 0.042000 g2_A +-0.644000 0.356000 1.042000 g2_B +-0.356000 0.644000 1.042000 g2_A +-0.356000 0.644000 0.042000 g2_A +-0.356000 0.356000 -0.042000 g2_B +-0.356000 0.356000 0.958000 g2_B +-0.644000 0.644000 0.958000 g2_A +-0.644000 0.644000 -0.042000 g2_B +-0.958000 0.356000 0.356000 g2_B +-0.458000 0.856000 0.856000 g2_B +-0.958000 0.644000 0.644000 g2_B +-0.458000 0.144000 0.144000 g2_A +-0.542000 1.144000 0.856000 g2_A +-0.542000 0.144000 0.856000 g2_B +-0.542000 0.856000 1.144000 g2_B +-0.542000 0.856000 0.144000 g2_B +-0.644000 0.042000 0.356000 g2_A +-0.644000 1.042000 0.356000 g2_A +-0.356000 1.042000 0.644000 g2_A +-0.356000 0.042000 0.644000 g2_B +-0.644000 0.958000 0.644000 g2_A +-0.644000 -0.042000 0.644000 g2_A +-0.356000 -0.042000 0.356000 g2_A +-0.356000 0.958000 0.356000 g2_B +-1.000000 1.000000 1.000000 ac_A +-0.500000 0.500000 0.500000 ac_A +-0.683000 0.317000 0.317000 ac_A +-0.183000 0.817000 0.817000 ac_A +-0.817000 1.183000 0.817000 ac_A +-0.317000 0.683000 0.317000 ac_A +-0.817000 0.817000 1.183000 ac_A +-0.317000 0.317000 0.683000 ac_A +-0.683000 0.683000 0.683000 ac_A +-0.183000 0.183000 0.183000 ac_A +-0.411000 0.589000 -0.222000 g1_A +-0.411000 0.589000 0.778000 g1_A +-0.589000 0.411000 -0.222000 g1_A +-0.589000 0.411000 0.778000 g1_A +-0.589000 0.589000 1.222000 g1_A +-0.589000 0.589000 0.222000 g1_A +-0.411000 0.411000 1.222000 g1_A +-0.411000 0.411000 0.222000 g1_A +-0.722000 0.089000 0.089000 g1_A +-0.222000 0.589000 0.589000 g1_A +-0.722000 0.911000 0.911000 g1_A +-0.222000 0.411000 0.411000 g1_A +-0.278000 0.911000 1.089000 g1_A +-0.778000 0.411000 0.589000 g1_A +-0.278000 1.089000 0.911000 g1_A +-0.778000 0.589000 0.411000 g1_A +-0.411000 -0.222000 0.589000 g1_A +-0.411000 0.778000 0.589000 g1_A +-0.589000 -0.222000 0.411000 g1_A +-0.589000 0.778000 0.411000 g1_A +-0.411000 1.222000 0.411000 g1_A +-0.411000 0.222000 0.411000 g1_A +-0.589000 1.222000 0.589000 g1_A +-0.589000 0.222000 0.589000 g1_A diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/clusters.out b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/clusters.out new file mode 100644 index 0000000..1fb5594 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/clusters.out @@ -0,0 +1,143 @@ +24 +0.92338 +2 +0.35600 0.04200 0.35600 0 0 +0.14400 0.14400 0.54200 0 0 + +12 +0.92367 +2 +0.14400 0.54200 0.14400 0 0 +0.14400 0.45800 -0.14400 0 0 + +6 +1.25402 +2 +0.35600 0.64400 -0.04200 0 0 +0.64400 0.35600 -0.04200 0 0 + +12 +1.36723 +2 +-0.04200 0.35600 0.64400 0 0 +-0.35600 0.35600 0.95800 0 0 + +24 +1.60224 +2 +-0.04200 0.35600 0.64400 0 0 +-0.14400 0.85600 0.54200 0 0 + +12 +1.73298 +2 +0.14400 0.54200 0.14400 0 0 +0.54200 0.14400 0.14400 0 0 + +24 +1.73949 +2 +0.14400 0.54200 0.14400 0 0 +-0.04200 0.35600 -0.35600 0 0 + +12 +1.79500 +2 +0.14400 0.54200 0.14400 0 0 +0.35600 0.04200 0.35600 0 0 + +24 +1.79514 +2 +0.54200 0.14400 0.14400 0 0 +0.14400 0.45800 -0.14400 0 0 + +24 +0.92338 +3 +0.14400 0.54200 0.14400 0 0 +0.35600 0.64400 -0.04200 0 0 +0.35600 0.35600 0.04200 0 0 + +12 +1.25402 +3 +0.35600 0.64400 -0.04200 0 0 +0.35600 0.35600 0.04200 0 0 +0.64400 0.35600 -0.04200 0 0 + +12 +1.36723 +3 +-0.04200 0.35600 0.64400 0 0 +-0.14400 0.54200 0.85600 0 0 +-0.35600 0.35600 0.95800 0 0 + +4 +1.36723 +3 +-0.04200 0.35600 0.64400 0 0 +-0.35600 0.04200 0.64400 0 0 +-0.35600 0.35600 0.95800 0 0 + +24 +1.60224 +3 +-0.04200 0.35600 0.64400 0 0 +-0.14400 0.54200 0.85600 0 0 +-0.14400 0.85600 0.54200 0 0 + +24 +1.60224 +3 +-0.04200 0.35600 0.64400 0 0 +0.04200 0.64400 0.64400 0 0 +-0.14400 0.85600 0.54200 0 0 + +24 +1.60224 +3 +0.35600 -0.04200 0.64400 0 0 +0.14400 0.14400 0.54200 0 0 +-0.14400 -0.14400 0.54200 0 0 + +6 +0.92338 +4 +0.14400 0.54200 0.14400 0 0 +0.14400 0.45800 -0.14400 0 0 +0.35600 0.64400 -0.04200 0 0 +0.35600 0.35600 0.04200 0 0 + +3 +1.25402 +4 +0.35600 0.64400 -0.04200 0 0 +0.64400 0.64400 0.04200 0 0 +0.35600 0.35600 0.04200 0 0 +0.64400 0.35600 -0.04200 0 0 + +24 +1.60224 +4 +-0.04200 0.35600 0.64400 0 0 +0.04200 0.64400 0.64400 0 0 +-0.14400 0.54200 0.85600 0 0 +-0.14400 0.85600 0.54200 0 0 + +12 +1.60224 +4 +-0.04200 0.35600 0.64400 0 0 +-0.14400 0.54200 0.85600 0 0 +-0.04200 0.64400 0.35600 0 0 +-0.14400 0.85600 0.54200 0 0 + +24 +1.60224 +4 +-0.04200 0.35600 0.64400 0 0 +0.04200 0.64400 0.64400 0 0 +-0.04200 0.64400 0.35600 0 0 +-0.14400 0.85600 0.54200 0 0 + diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/go b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/go new file mode 100644 index 0000000..8a50ed2 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/go @@ -0,0 +1,4 @@ + corrdump -nop -noe -2=2.0 -3=1.7 -4=1.7 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/job.in b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/job.in new file mode 100755 index 0000000..e844c4d --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=58 -wr=10 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/rndstr.in b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/rndstr.in new file mode 100644 index 0000000..7649858 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/rndstr.in @@ -0,0 +1,38 @@ +3.0789 3.0789 3.0789 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0 0 ac_A=1 + +0.317 0.317 0.317 ac_A=1 +-0.317 -0.317 0.317 ac_A=1 +-0.317 0.317 -0.317 ac_A=1 +0.317 -0.317 -0.317 ac_A=1 + +0.089 0.089 0.278 g1_A=1 +-0.089 -0.089 0.278 g1_A=1 +-0.089 0.089 -0.278 g1_A=1 +0.089 -0.089 -0.278 g1_A=1 +0.278 0.089 0.089 g1_A=1 +0.278 -0.089 -0.089 g1_A=1 +-0.278 -0.089 0.089 g1_A=1 +-0.278 0.089 -0.089 g1_A=1 +0.089 0.278 0.089 g1_A=1 +-0.089 0.278 -0.089 g1_A=1 +0.089 -0.278 -0.089 g1_A=1 +-0.089 -0.278 0.089 g1_A=1 + +0.356 0.356 0.042 g2_A=0.5,g2_B=0.5 +-0.356 -0.356 0.042 g2_A=0.5,g2_B=0.5 +-0.356 0.356 -0.042 g2_A=0.5,g2_B=0.5 +0.356 -0.356 -0.042 g2_A=0.5,g2_B=0.5 +0.042 0.356 0.356 g2_A=0.5,g2_B=0.5 +0.042 -0.356 -0.356 g2_A=0.5,g2_B=0.5 +-0.042 -0.356 0.356 g2_A=0.5,g2_B=0.5 +-0.042 0.356 -0.356 g2_A=0.5,g2_B=0.5 +0.356 0.042 0.356 g2_A=0.5,g2_B=0.5 +-0.356 0.042 -0.356 g2_A=0.5,g2_B=0.5 +0.356 -0.042 -0.356 g2_A=0.5,g2_B=0.5 +-0.356 -0.042 0.356 g2_A=0.5,g2_B=0.5 + diff --git a/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/rndstrgrp.out b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..e75aab4 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsdb_lev=1_ac=1_g1=1_g2=0.5,0.5/rndstrgrp.out @@ -0,0 +1,39 @@ +3.078900 0.000000 0.000000 +0.000000 3.078900 0.000000 +0.000000 0.000000 3.078900 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.356000 0.356000 0.042000 g2_A=0.500000,g2_B=0.500000 +-0.356000 -0.356000 0.042000 g2_A=0.500000,g2_B=0.500000 +-0.356000 0.356000 -0.042000 g2_A=0.500000,g2_B=0.500000 +0.356000 -0.356000 -0.042000 g2_A=0.500000,g2_B=0.500000 +0.042000 0.356000 0.356000 g2_A=0.500000,g2_B=0.500000 +0.042000 -0.356000 -0.356000 g2_A=0.500000,g2_B=0.500000 +-0.042000 -0.356000 0.356000 g2_A=0.500000,g2_B=0.500000 +-0.042000 0.356000 -0.356000 g2_A=0.500000,g2_B=0.500000 +0.356000 0.042000 0.356000 g2_A=0.500000,g2_B=0.500000 +-0.356000 0.042000 -0.356000 g2_A=0.500000,g2_B=0.500000 +0.356000 -0.042000 -0.356000 g2_A=0.500000,g2_B=0.500000 +-0.356000 -0.042000 0.356000 g2_A=0.500000,g2_B=0.500000 + +0.000000 0.000000 0.000000 ac_A=1.000000 + +0.317000 0.317000 0.317000 ac_A=1.000000 +-0.317000 -0.317000 0.317000 ac_A=1.000000 +-0.317000 0.317000 -0.317000 ac_A=1.000000 +0.317000 -0.317000 -0.317000 ac_A=1.000000 + +0.089000 0.089000 0.278000 g1_A=1.000000 +-0.089000 -0.089000 0.278000 g1_A=1.000000 +-0.089000 0.089000 -0.278000 g1_A=1.000000 +0.089000 -0.089000 -0.278000 g1_A=1.000000 +0.278000 0.089000 0.089000 g1_A=1.000000 +0.278000 -0.089000 -0.089000 g1_A=1.000000 +-0.278000 -0.089000 0.089000 g1_A=1.000000 +-0.278000 0.089000 -0.089000 g1_A=1.000000 +0.089000 0.278000 0.089000 g1_A=1.000000 +-0.089000 0.278000 -0.089000 g1_A=1.000000 +0.089000 -0.278000 -0.089000 g1_A=1.000000 +-0.089000 -0.278000 0.089000 g1_A=1.000000 diff --git a/data/sqsdb/CHI_A12/sqsgen.in b/data/sqsdb/CHI_A12/sqsgen.in new file mode 100644 index 0000000..5f072a4 --- /dev/null +++ b/data/sqsdb/CHI_A12/sqsgen.in @@ -0,0 +1,4 @@ +level=0 ac=1 g1=1 g2=1 +level=1 ac=0.5,0.5 g1=1 g2=1 +level=1 ac=1 g1=0.5,0.5 g2=1 +level=1 ac=1 g1=1 g2=0.5,0.5 diff --git a/data/sqsdb/CR3SI_A15/rndstr.skel b/data/sqsdb/CR3SI_A15/rndstr.skel new file mode 100644 index 0000000..e1f436f --- /dev/null +++ b/data/sqsdb/CR3SI_A15/rndstr.skel @@ -0,0 +1,15 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.25 0 0.5 c +0.75 0 0.5 c +0.5 0.25 0 c +0.5 0.75 0 c +0 0.5 0.25 c +0 0.5 0.75 c + +0 0 0 a +0.5 0.5 0.5 a diff --git a/data/sqsdb/CR3SI_A15/rndstr.skel.sspp b/data/sqsdb/CR3SI_A15/rndstr.skel.sspp new file mode 100644 index 0000000..f892ccb --- /dev/null +++ b/data/sqsdb/CR3SI_A15/rndstr.skel.sspp @@ -0,0 +1,15 @@ +#const a=1; +{a} {a} {a} {90} {90} {90} +1 0 0 +0 1 0 +0 0 1 +#const c="c"; +{1/4} {0} {1/2} {c} +{3/4} {0} {1/2} {c} +{1/2} {1/4} {0} {c} +{1/2} {3/4} {0} {c} +{0} {1/2} {1/4} {c} +{0} {1/2} {3/4} {c} +#const a="a"; +{0} {0} {0} {a} +{1/2} {1/2} {1/2} {a} diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=0_a=1_c=1/bestsqs.out b/data/sqsdb/CR3SI_A15/sqsdb_lev=0_a=1_c=1/bestsqs.out new file mode 100644 index 0000000..3fb49c3 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=0_a=1_c=1/bestsqs.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.250000 0.000000 0.500000 c_A +0.750000 0.000000 0.500000 c_A +0.500000 0.250000 0.000000 c_A +0.500000 0.750000 0.000000 c_A +-0.000000 0.500000 0.250000 c_A +0.000000 0.500000 0.750000 c_A +0.000000 0.000000 0.000000 a_A +0.500000 0.500000 0.500000 a_A diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=0_a=1_c=1/rndstr.in b/data/sqsdb/CR3SI_A15/sqsdb_lev=0_a=1_c=1/rndstr.in new file mode 100644 index 0000000..c674c2b --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=0_a=1_c=1/rndstr.in @@ -0,0 +1,15 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.25 0 0.5 c_A=1 +0.75 0 0.5 c_A=1 +0.5 0.25 0 c_A=1 +0.5 0.75 0 c_A=1 +0 0.5 0.25 c_A=1 +0 0.5 0.75 c_A=1 + +0 0 0 a_A=1 +0.5 0.5 0.5 a_A=1 diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out new file mode 100644 index 0000000..de0bef2 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out @@ -0,0 +1,19 @@ +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.658312 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 2.000000 -0.333333 0.000000 -0.333333 +3 1.000000 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.414214 -0.333333 0.000000 -0.333333 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 -0.333333 0.000000 -0.333333 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 1.000000 0.000000 1.000000 +Objective_function= -6.097949 diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out new file mode 100644 index 0000000..6be1886 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.000000 -1.000000 +1.000000 -1.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-1.500000 -1.500000 -1.500000 a_A +-1.500000 -1.500000 -0.500000 a_B +-1.500000 -0.500000 -1.500000 a_A +-0.500000 -0.500000 -1.500000 a_A +-0.500000 -0.500000 -0.500000 a_B +-2.500000 -1.500000 -1.500000 a_B +-0.500000 -1.500000 -1.500000 a_A +-1.500000 -2.500000 -1.500000 a_B +-1.000000 -2.000000 -1.000000 a_B +-2.000000 -1.000000 -1.000000 a_B +-1.000000 -1.000000 -1.000000 a_B +-0.000000 -1.000000 -1.000000 a_A +-1.000000 -0.000000 -1.000000 a_A +-2.000000 -2.000000 -1.000000 a_B +-1.000000 -1.000000 -2.000000 a_A +-2.000000 -2.000000 -2.000000 a_A +-1.750000 -1.000000 -1.500000 c_A +-1.750000 -1.000000 -0.500000 c_A +-0.750000 -1.000000 -0.500000 c_A +-0.750000 -0.000000 -1.500000 c_A +-0.750000 0.000000 -0.500000 c_A +-1.750000 -2.000000 -0.500000 c_A +-0.750000 -1.000000 -1.500000 c_A +-1.750000 -2.000000 -1.500000 c_A +-1.250000 -1.000000 -1.500000 c_A +-1.250000 -1.000000 -0.500000 c_A +-0.250000 -1.000000 -0.500000 c_A +-0.250000 0.000000 -1.500000 c_A +-0.250000 0.000000 -0.500000 c_A +-1.250000 -2.000000 -0.500000 c_A +-0.250000 -1.000000 -1.500000 c_A +-1.250000 -2.000000 -1.500000 c_A +-0.500000 -1.750000 -1.000000 c_A +-1.500000 -0.750000 -1.000000 c_A +-0.500000 -0.750000 -1.000000 c_A +0.500000 -0.750000 -1.000000 c_A +-0.500000 0.250000 -1.000000 c_A +-1.500000 -1.750000 -1.000000 c_A +-1.500000 0.250000 -1.000000 c_A +-2.500000 -0.750000 -1.000000 c_A +-0.500000 -1.250000 -1.000000 c_A +-1.500000 -0.250000 -1.000000 c_A +-0.500000 -0.250000 -1.000000 c_A +-1.500000 -2.250000 -1.000000 c_A +-2.500000 -1.250000 -1.000000 c_A +-1.500000 -1.250000 -1.000000 c_A +0.500000 -1.250000 -1.000000 c_A +-0.500000 -2.250000 -1.000000 c_A +-1.000000 -1.500000 -0.750000 c_A +-1.000000 -1.500000 -1.750000 c_A +-1.000000 -0.500000 -0.750000 c_A +0.000000 -0.500000 -0.750000 c_A +-0.000000 -0.500000 -1.750000 c_A +-2.000000 -1.500000 -0.750000 c_A +-1.000000 -0.500000 -1.750000 c_A +-2.000000 -1.500000 -1.750000 c_A +-2.000000 -0.500000 -1.250000 c_A +-1.000000 -1.500000 -1.250000 c_A +-0.000000 -1.500000 -1.250000 c_A +-1.000000 0.500000 -1.250000 c_A +-0.000000 -0.500000 -1.250000 c_A +-1.000000 -2.500000 -1.250000 c_A +-1.000000 -0.500000 -1.250000 c_A +-2.000000 -1.500000 -1.250000 c_A diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out new file mode 100644 index 0000000..6b89077 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out @@ -0,0 +1,128 @@ +8 +0.86603 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +6 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 + +12 +1.41421 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +24 +1.65831 +2 +0.50000 0.50000 0.50000 0 0 +2.00000 0.00000 0.00000 0 0 + +8 +1.73205 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 -0.50000 0 0 + +6 +2.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -1.50000 0 0 + +24 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +0.50000 0.50000 -0.50000 0 0 + +24 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.50000 1.50000 0.50000 0 0 + +24 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +16 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +6 +1.00000 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 +1.00000 1.00000 0.00000 0 0 +0.50000 0.50000 -0.50000 0 0 + +6 +1.00000 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 1.00000 0.00000 0 0 +0.50000 0.50000 -0.50000 0 0 + +12 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.50000 1.50000 0.50000 0 0 + +48 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +6 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +16 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +16 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +4 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 1.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/go b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/go new file mode 100755 index 0000000..dfe5853 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.5 -4=1.5 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/job.in b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/job.in new file mode 100755 index 0000000..df4e7fa --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J A15_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in new file mode 100644 index 0000000..5a98fd0 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in @@ -0,0 +1,15 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.25 0 0.5 c_A=1 +0.75 0 0.5 c_A=1 +0.5 0.25 0 c_A=1 +0.5 0.75 0 c_A=1 +0 0.5 0.25 c_A=1 +0 0.5 0.75 c_A=1 + +0 0 0 a_A=0.5,a_B=0.5 +0.5 0.5 0.5 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out new file mode 100644 index 0000000..4387769 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out @@ -0,0 +1,16 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.500000 -0.500000 0.500000 a_A=0.500000,a_B=0.500000 +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.250000 0.000000 0.500000 c_A=1.000000 +0.750000 0.000000 0.500000 c_A=1.000000 +0.500000 0.250000 0.000000 c_A=1.000000 +0.500000 0.750000 0.000000 c_A=1.000000 +0.000000 0.500000 0.250000 c_A=1.000000 +-0.000000 0.500000 0.750000 c_A=1.000000 diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..6e8b428 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,25 @@ +2 0.500000 0.000000 0.000000 0.000000 +2 0.612372 0.000000 0.000000 0.000000 +2 0.935414 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.118034 -0.125000 0.000000 -0.125000 +2 1.118034 -0.125000 0.000000 -0.125000 +2 1.172604 -0.020833 0.000000 -0.020833 +2 1.369306 0.041667 0.000000 0.041667 +3 0.612372 0.000000 0.000000 0.000000 +3 0.612372 0.000000 0.000000 0.000000 +3 0.935414 0.062500 0.000000 0.062500 +3 0.935414 0.000000 0.000000 0.000000 +3 0.935414 0.020833 0.000000 0.020833 +3 0.935414 0.062500 0.000000 0.062500 +3 0.935414 0.000000 0.000000 0.000000 +3 0.935414 0.041667 0.000000 0.041667 +4 0.612372 0.000000 0.000000 0.000000 +4 0.935414 0.000000 0.000000 0.000000 +4 0.935414 0.041667 0.000000 0.041667 +4 0.935414 -0.062500 0.000000 -0.062500 +4 0.935414 0.020833 0.000000 0.020833 +4 0.935414 0.000000 0.000000 0.000000 +4 0.935414 0.000000 0.000000 0.000000 +Objective_function= -416.032597 diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..6809b01 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +3.000000 -3.000000 2.000000 +3.000000 -2.000000 3.000000 +2.000000 -3.000000 3.000000 +2.500000 -2.750000 3.000000 c_B +3.500000 -3.750000 4.000000 c_B +4.500000 -4.750000 5.000000 c_A +5.500000 -5.750000 6.000000 c_B +4.500000 -3.750000 4.000000 c_A +5.500000 -4.750000 5.000000 c_B +3.500000 -3.750000 3.000000 c_A +4.500000 -4.750000 4.000000 c_B +2.500000 -3.250000 3.000000 c_A +3.500000 -4.250000 4.000000 c_A +2.500000 -2.250000 2.000000 c_A +3.500000 -3.250000 3.000000 c_B +4.500000 -4.250000 4.000000 c_A +5.500000 -5.250000 5.000000 c_A +3.500000 -3.250000 4.000000 c_B +4.500000 -4.250000 5.000000 c_A +5.000000 -5.500000 5.250000 c_B +4.000000 -3.500000 3.250000 c_B +5.000000 -4.500000 4.250000 c_A +3.000000 -2.500000 3.250000 c_A +4.000000 -3.500000 4.250000 c_B +2.000000 -2.500000 2.250000 c_A +3.000000 -3.500000 3.250000 c_A +4.000000 -4.500000 4.250000 c_B +5.000000 -5.500000 4.750000 c_B +3.000000 -3.500000 3.750000 c_B +4.000000 -4.500000 4.750000 c_A +3.000000 -2.500000 2.750000 c_B +4.000000 -3.500000 3.750000 c_B +5.000000 -4.500000 4.750000 c_A +6.000000 -5.500000 5.750000 c_A +4.000000 -4.500000 3.750000 c_A +3.250000 -3.000000 2.500000 c_A +4.250000 -4.000000 3.500000 c_B +2.250000 -2.000000 2.500000 c_B +3.250000 -3.000000 3.500000 c_B +4.250000 -4.000000 4.500000 c_B +5.250000 -5.000000 5.500000 c_A +3.250000 -4.000000 3.500000 c_B +4.250000 -5.000000 4.500000 c_B +2.750000 -3.000000 2.500000 c_A +3.750000 -4.000000 3.500000 c_B +4.750000 -5.000000 4.500000 c_B +5.750000 -6.000000 5.500000 c_B +3.750000 -4.000000 4.500000 c_A +4.750000 -5.000000 5.500000 c_A +3.750000 -3.000000 3.500000 c_A +4.750000 -4.000000 4.500000 c_A +8.000000 -8.000000 8.000000 a_A +1.000000 -1.000000 1.000000 a_A +2.000000 -2.000000 2.000000 a_A +3.000000 -3.000000 3.000000 a_A +4.000000 -4.000000 4.000000 a_A +5.000000 -5.000000 5.000000 a_A +6.000000 -6.000000 6.000000 a_A +7.000000 -7.000000 7.000000 a_A +5.500000 -5.500000 5.500000 a_A +6.500000 -6.500000 6.500000 a_A +7.500000 -7.500000 7.500000 a_A +0.500000 -0.500000 0.500000 a_A +1.500000 -1.500000 1.500000 a_A +2.500000 -2.500000 2.500000 a_A +3.500000 -3.500000 3.500000 a_A +4.500000 -4.500000 4.500000 a_A diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..7c0e022 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out @@ -0,0 +1,166 @@ +6 +0.50000 +2 +0.50000 0.75000 1.00000 0 0 +0.50000 1.25000 1.00000 0 0 + +24 +0.61237 +2 +1.00000 0.50000 0.25000 0 0 +1.50000 0.75000 0.00000 0 0 + +48 +0.93541 +2 +0.50000 0.75000 1.00000 0 0 +0.00000 1.50000 1.25000 0 0 + +12 +1.00000 +2 +0.50000 0.75000 1.00000 0 0 +1.50000 0.75000 1.00000 0 0 + +6 +1.00000 +2 +0.75000 1.00000 0.50000 0 0 +1.75000 1.00000 0.50000 0 0 + +12 +1.11803 +2 +0.50000 0.75000 1.00000 0 0 +1.50000 1.25000 1.00000 0 0 + +12 +1.11803 +2 +0.50000 0.25000 1.00000 0 0 +0.50000 -0.25000 2.00000 0 0 + +24 +1.17260 +2 +0.50000 0.75000 1.00000 0 0 +0.00000 1.50000 1.75000 0 0 + +48 +1.36931 +2 +1.00000 0.50000 0.25000 0 0 +1.50000 0.75000 -1.00000 0 0 + +24 +0.61237 +3 +1.00000 0.50000 0.25000 0 0 +1.00000 0.50000 -0.25000 0 0 +1.50000 0.75000 0.00000 0 0 + +8 +0.61237 +3 +1.00000 0.50000 0.25000 0 0 +1.25000 1.00000 0.50000 0 0 +1.50000 0.75000 0.00000 0 0 + +48 +0.93541 +3 +0.50000 0.75000 1.00000 0 0 +0.50000 1.25000 1.00000 0 0 +0.00000 1.50000 1.25000 0 0 + +24 +0.93541 +3 +0.50000 0.75000 1.00000 0 0 +0.75000 1.00000 1.50000 0 0 +0.00000 1.50000 1.25000 0 0 + +48 +0.93541 +3 +0.50000 0.75000 1.00000 0 0 +0.25000 1.00000 1.50000 0 0 +0.00000 1.50000 1.25000 0 0 + +48 +0.93541 +3 +0.50000 0.75000 1.00000 0 0 +0.25000 1.00000 0.50000 0 0 +0.00000 1.50000 1.25000 0 0 + +16 +0.93541 +3 +0.50000 0.75000 1.00000 0 0 +-0.25000 1.00000 0.50000 0 0 +0.00000 1.50000 1.25000 0 0 + +24 +0.93541 +3 +0.50000 0.75000 1.00000 0 0 +0.50000 1.25000 1.00000 0 0 +1.25000 1.00000 1.50000 0 0 + +6 +0.61237 +4 +1.00000 0.50000 0.25000 0 0 +1.00000 0.50000 -0.25000 0 0 +1.50000 0.25000 0.00000 0 0 +1.50000 0.75000 0.00000 0 0 + +48 +0.93541 +4 +0.50000 0.75000 1.00000 0 0 +0.50000 1.25000 1.00000 0 0 +0.75000 1.00000 1.50000 0 0 +0.00000 1.50000 1.25000 0 0 + +48 +0.93541 +4 +0.50000 0.75000 1.00000 0 0 +0.50000 1.25000 1.00000 0 0 +0.25000 1.00000 1.50000 0 0 +0.00000 1.50000 1.25000 0 0 + +48 +0.93541 +4 +0.50000 0.75000 1.00000 0 0 +0.50000 1.25000 1.00000 0 0 +0.25000 1.00000 0.50000 0 0 +0.00000 1.50000 1.25000 0 0 + +48 +0.93541 +4 +0.50000 0.75000 1.00000 0 0 +0.50000 1.25000 1.00000 0 0 +-0.25000 1.00000 1.50000 0 0 +0.00000 1.50000 1.25000 0 0 + +24 +0.93541 +4 +0.50000 0.75000 1.00000 0 0 +0.50000 1.25000 1.00000 0 0 +-0.00000 1.50000 0.75000 0 0 +0.00000 1.50000 1.25000 0 0 + +48 +0.93541 +4 +0.50000 0.75000 1.00000 0 0 +0.50000 1.25000 1.00000 0 0 +-0.25000 1.00000 0.50000 0 0 +0.00000 1.50000 1.25000 0 0 + diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/go b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/go new file mode 100755 index 0000000..bf1323a --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.4 -3=0.95 -4=0.95 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/job.in b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/job.in new file mode 100755 index 0000000..df4e7fa --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J A15_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..43ef651 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,15 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.25 0 0.5 c_A=0.5,c_B=0.5 +0.75 0 0.5 c_A=0.5,c_B=0.5 +0.5 0.25 0 c_A=0.5,c_B=0.5 +0.5 0.75 0 c_A=0.5,c_B=0.5 +0 0.5 0.25 c_A=0.5,c_B=0.5 +0 0.5 0.75 c_A=0.5,c_B=0.5 + +0 0 0 a_A=1 +0.5 0.5 0.5 a_A=1 diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..59d6ece --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,16 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.500000 0.250000 0.000000 c_A=0.500000,c_B=0.500000 +0.500000 -0.250000 0.000000 c_A=0.500000,c_B=0.500000 +-0.000000 0.500000 0.250000 c_A=0.500000,c_B=0.500000 +-0.000000 0.500000 -0.250000 c_A=0.500000,c_B=0.500000 +0.250000 0.000000 0.500000 c_A=0.500000,c_B=0.500000 +-0.250000 0.000000 0.500000 c_A=0.500000,c_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 +0.500000 0.500000 0.500000 a_A=1.000000 diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/sqsparam.in b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..c74c870 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=1_a=1_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +2 10 2 8 diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..486d2b4 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out @@ -0,0 +1,19 @@ +2 0.500000 0.000000 0.000000 0.000000 +2 0.559017 0.000000 0.000000 0.000000 +2 0.612372 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 0.901388 -0.020833 0.000000 -0.020833 +2 0.935414 -0.052083 0.000000 -0.052083 +2 1.000000 -0.166667 0.000000 -0.166667 +2 1.000000 -0.083333 0.000000 -0.083333 +2 1.000000 -0.083333 0.000000 -0.083333 +3 0.559017 0.000000 0.000000 0.000000 +3 0.612372 0.000000 0.000000 0.000000 +3 0.612372 0.000000 0.000000 0.000000 +3 0.612372 0.000000 0.000000 0.000000 +3 0.866025 0.000000 0.000000 0.000000 +4 0.612372 0.000000 0.000000 0.000000 +4 0.612372 0.000000 0.000000 0.000000 +4 0.612372 0.000000 0.000000 0.000000 +4 0.866025 -0.083333 0.000000 -0.083333 +Objective_function= -385.996161 diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..917caae --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.000000 1.000000 2.000000 +0.000000 1.000000 -2.000000 +-2.000000 0.000000 0.000000 +-0.500000 1.250000 -1.000000 c_B +-1.500000 1.250000 -1.000000 c_A +-0.500000 0.250000 0.000000 c_B +-1.500000 0.250000 0.000000 c_A +-0.500000 1.250000 0.000000 c_A +-1.500000 1.250000 0.000000 c_B +-0.500000 1.250000 1.000000 c_B +-1.500000 1.250000 1.000000 c_A +-0.500000 0.750000 -1.000000 c_A +-1.500000 0.750000 -1.000000 c_B +-0.500000 1.750000 0.000000 c_B +-1.500000 1.750000 0.000000 c_A +-0.500000 0.750000 0.000000 c_A +-1.500000 0.750000 0.000000 c_B +-0.500000 0.750000 1.000000 c_A +-1.500000 0.750000 1.000000 c_A +-1.000000 1.500000 -0.750000 c_B +-2.000000 1.500000 -0.750000 c_B +-1.000000 0.500000 0.250000 c_A +-2.000000 0.500000 0.250000 c_A +-1.000000 1.500000 0.250000 c_B +-2.000000 1.500000 0.250000 c_B +-1.000000 0.500000 -0.750000 c_B +-2.000000 0.500000 -0.750000 c_A +-1.000000 0.500000 0.750000 c_A +-2.000000 0.500000 0.750000 c_B +-1.000000 0.500000 -0.250000 c_A +-2.000000 0.500000 -0.250000 c_B +-1.000000 1.500000 -0.250000 c_A +-2.000000 1.500000 -0.250000 c_B +-1.000000 1.500000 0.750000 c_B +-2.000000 1.500000 0.750000 c_B +-0.750000 1.000000 -0.500000 c_B +-1.750000 1.000000 -0.500000 c_A +-0.750000 1.000000 -1.500000 c_B +-1.750000 1.000000 -1.500000 c_A +-0.750000 1.000000 0.500000 c_A +-1.750000 1.000000 0.500000 c_B +-0.750000 1.000000 1.500000 c_A +-1.750000 1.000000 1.500000 c_A +-1.250000 1.000000 -0.500000 c_B +-0.250000 1.000000 -0.500000 c_A +-1.250000 1.000000 -1.500000 c_B +-0.250000 1.000000 -1.500000 c_B +-1.250000 1.000000 0.500000 c_B +-0.250000 1.000000 0.500000 c_A +-1.250000 1.000000 1.500000 c_A +-0.250000 1.000000 1.500000 c_A +-1.000000 1.000000 -1.000000 a_A +-2.000000 1.000000 -1.000000 a_B +-1.000000 2.000000 0.000000 a_B +-2.000000 2.000000 0.000000 a_A +-1.000000 1.000000 0.000000 a_A +-2.000000 1.000000 0.000000 a_A +-1.000000 1.000000 1.000000 a_B +-2.000000 1.000000 1.000000 a_B +-0.500000 1.500000 -0.500000 a_A +-1.500000 1.500000 -0.500000 a_A +-0.500000 0.500000 0.500000 a_A +-1.500000 0.500000 0.500000 a_B +-0.500000 1.500000 0.500000 a_B +-1.500000 1.500000 0.500000 a_B +-0.500000 0.500000 -0.500000 a_A +-1.500000 0.500000 -0.500000 a_B diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..49ed5ba --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out @@ -0,0 +1,121 @@ +6 +0.50000 +2 +0.50000 0.75000 1.00000 0 0 +0.50000 1.25000 1.00000 0 0 + +24 +0.55902 +2 +0.50000 0.25000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 + +24 +0.61237 +2 +1.00000 0.50000 0.25000 0 0 +1.50000 0.75000 0.00000 0 0 + +8 +0.86603 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +24 +0.90139 +2 +0.25000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +48 +0.93541 +2 +0.50000 0.75000 1.00000 0 0 +0.00000 1.50000 1.25000 0 0 + +12 +1.00000 +2 +0.50000 0.75000 1.00000 0 0 +1.50000 0.75000 1.00000 0 0 + +6 +1.00000 +2 +0.75000 1.00000 0.50000 0 0 +1.75000 1.00000 0.50000 0 0 + +6 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 + +12 +0.55902 +3 +0.50000 0.25000 1.00000 0 0 +0.50000 -0.25000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 + +24 +0.61237 +3 +1.00000 0.50000 0.25000 0 0 +1.00000 0.50000 -0.25000 0 0 +1.50000 0.75000 0.00000 0 0 + +48 +0.61237 +3 +1.00000 0.50000 0.25000 0 0 +1.00000 1.00000 0.00000 0 0 +1.50000 0.75000 0.00000 0 0 + +8 +0.61237 +3 +1.00000 0.50000 0.25000 0 0 +1.25000 1.00000 0.50000 0 0 +1.50000 0.75000 0.00000 0 0 + +24 +0.86603 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.75000 0.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +24 +0.61237 +4 +1.00000 0.50000 0.25000 0 0 +1.00000 0.50000 -0.25000 0 0 +1.00000 1.00000 0.00000 0 0 +1.50000 0.75000 0.00000 0 0 + +6 +0.61237 +4 +1.00000 0.50000 0.25000 0 0 +1.00000 0.50000 -0.25000 0 0 +1.50000 0.25000 0.00000 0 0 +1.50000 0.75000 0.00000 0 0 + +16 +0.61237 +4 +1.00000 0.50000 0.25000 0 0 +1.00000 1.00000 0.00000 0 0 +1.25000 1.00000 0.50000 0 0 +1.50000 0.75000 0.00000 0 0 + +24 +0.86603 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 0.50000 0.25000 0 0 +0.50000 0.75000 0.00000 0 0 +1.00000 1.00000 0.00000 0 0 + diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go new file mode 100755 index 0000000..fbccef2 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1 -3=0.9 -4=0.9 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in new file mode 100755 index 0000000..0c16527 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J A15_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..ffc8228 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in @@ -0,0 +1,15 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.25 0 0.5 c_A=0.5,c_B=0.5 +0.75 0 0.5 c_A=0.5,c_B=0.5 +0.5 0.25 0 c_A=0.5,c_B=0.5 +0.5 0.75 0 c_A=0.5,c_B=0.5 +0 0.5 0.25 c_A=0.5,c_B=0.5 +0 0.5 0.75 c_A=0.5,c_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 +0.5 0.5 0.5 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..e81e878 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,16 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.500000 0.250000 0.000000 c_A=0.500000,c_B=0.500000 +0.500000 -0.250000 0.000000 c_A=0.500000,c_B=0.500000 +-0.000000 0.500000 0.250000 c_A=0.500000,c_B=0.500000 +-0.000000 0.500000 -0.250000 c_A=0.500000,c_B=0.500000 +0.250000 0.000000 0.500000 c_A=0.500000,c_B=0.500000 +-0.250000 0.000000 0.500000 c_A=0.500000,c_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 +0.500000 0.500000 0.500000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..c74c870 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +2 10 2 8 diff --git a/data/sqsdb/CR3SI_A15/sqsgen.in b/data/sqsdb/CR3SI_A15/sqsgen.in new file mode 100644 index 0000000..46d1288 --- /dev/null +++ b/data/sqsdb/CR3SI_A15/sqsgen.in @@ -0,0 +1,4 @@ +level=0 a=1 c=1 +level=1 a=0.5,0.5 c=1 +level=1 a=1 c=0.5,0.5 +level=2 a=0.5,0.5 c=0.5,0.5 diff --git a/data/sqsdb/CSCL_B2/equiv.in b/data/sqsdb/CSCL_B2/equiv.in new file mode 100644 index 0000000..efc73ad --- /dev/null +++ b/data/sqsdb/CSCL_B2/equiv.in @@ -0,0 +1 @@ +a=b diff --git a/data/sqsdb/CSCL_B2/parentlat.in b/data/sqsdb/CSCL_B2/parentlat.in new file mode 100644 index 0000000..8383444 --- /dev/null +++ b/data/sqsdb/CSCL_B2/parentlat.in @@ -0,0 +1 @@ +BCC_A2/sqs_lev=0_a_ diff --git a/data/sqsdb/CSCL_B2/rndstr.skel b/data/sqsdb/CSCL_B2/rndstr.skel new file mode 100644 index 0000000..81ed7ae --- /dev/null +++ b/data/sqsdb/CSCL_B2/rndstr.skel @@ -0,0 +1,7 @@ +4.123 4.123 4.123 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0.5 0.5 a +0 0 0 b diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=0_a=1_b=1/bestsqs.out b/data/sqsdb/CSCL_B2/sqsdb_lev=0_a=1_b=1/bestsqs.out new file mode 100644 index 0000000..d06626d --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=0_a=1_b=1/bestsqs.out @@ -0,0 +1,8 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.500000 0.500000 a_A +0.000000 0.000000 0.000000 b_A diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=0_a=1_b=1/go b/data/sqsdb/CSCL_B2/sqsdb_lev=0_a=1_b=1/go new file mode 100644 index 0000000..3805ccd --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=0_a=1_b=1/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=10.0 -3=7.15 -4=7.15 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=0_a=1_b=1/rndstr.in b/data/sqsdb/CSCL_B2/sqsdb_lev=0_a=1_b=1/rndstr.in new file mode 100644 index 0000000..76fe4df --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=0_a=1_b=1/rndstr.in @@ -0,0 +1,7 @@ +4.123 4.123 4.123 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0.5 0.5 a_A=1 +0 0 0 b_A=1 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out new file mode 100644 index 0000000..b885228 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out @@ -0,0 +1,15 @@ +2 4.123000 0.000000 0.000000 0.000000 +2 5.830803 0.000000 0.000000 0.000000 +2 7.141245 0.000000 0.000000 0.000000 +2 8.246000 0.000000 0.000000 0.000000 +2 9.219308 0.000000 0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +3 7.141245 0.000000 0.000000 0.000000 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 0.000000 0.000000 0.000000 +4 7.141245 0.000000 0.000000 0.000000 +4 7.141245 0.000000 0.000000 0.000000 +4 7.141245 -0.333333 0.000000 -0.333333 +Objective_function= -62.554837 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out new file mode 100644 index 0000000..1121544 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out @@ -0,0 +1,38 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +1.000000 1.000000 -2.000000 +1.000000 -1.000000 -2.000000 +-4.000000 0.000000 0.000000 +-1.500000 0.500000 -2.500000 a_A +-0.500000 0.500000 -2.500000 a_A +0.500000 0.500000 -2.500000 a_B +-2.500000 0.500000 -2.500000 a_B +-1.500000 0.500000 -1.500000 a_B +-0.500000 0.500000 -1.500000 a_B +0.500000 0.500000 -1.500000 a_A +-2.500000 0.500000 -1.500000 a_A +-1.500000 -0.500000 -2.500000 a_A +-0.500000 -0.500000 -2.500000 a_A +0.500000 -0.500000 -2.500000 a_B +-2.500000 -0.500000 -2.500000 a_B +-1.500000 -0.500000 -1.500000 a_A +-0.500000 -0.500000 -1.500000 a_A +0.500000 -0.500000 -1.500000 a_B +-2.500000 -0.500000 -1.500000 a_B +-2.000000 0.000000 -3.000000 b_A +-1.000000 0.000000 -3.000000 b_A +-0.000000 0.000000 -3.000000 b_A +1.000000 0.000000 -3.000000 b_A +-2.000000 0.000000 -2.000000 b_A +-1.000000 0.000000 -2.000000 b_A +-0.000000 0.000000 -2.000000 b_A +-3.000000 0.000000 -2.000000 b_A +-3.000000 0.000000 -1.000000 b_A +-2.000000 0.000000 -1.000000 b_A +-1.000000 0.000000 -1.000000 b_A +-0.000000 0.000000 -1.000000 b_A +-1.000000 -0.000000 -4.000000 b_A +0.000000 -0.000000 -4.000000 b_A +1.000000 -0.000000 -4.000000 b_A +-2.000000 -0.000000 -4.000000 b_A diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out new file mode 100644 index 0000000..f16f889 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out @@ -0,0 +1,99 @@ +3 +4.12300 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 + +6 +5.83080 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +4 +7.14125 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +3 +8.24600 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -1.50000 0 0 + +12 +9.21931 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 -1.50000 0 0 + +12 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +24 +7.14125 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +3 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +2 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +24 +7.14125 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +24 +7.14125 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +6 +7.14125 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 1.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/go b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/go new file mode 100644 index 0000000..3805ccd --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=10.0 -3=7.15 -4=7.15 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/job.in b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/job.in new file mode 100755 index 0000000..3f1b6b4 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in new file mode 100644 index 0000000..cc334e1 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in @@ -0,0 +1,7 @@ +4.123 4.123 4.123 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0.5 0.5 a_A=0.5,a_B=0.5 +0 0 0 b_A=1 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out new file mode 100644 index 0000000..921c487 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out @@ -0,0 +1,10 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.500000 0.500000 0.500000 Cs_A=0.500000,Cs_B=0.500000 + +0.000000 0.000000 0.000000 Cl_A=1.000000 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/sqsparam.in b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/sqsparam.in new file mode 100644 index 0000000..a285f3b --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=0.5,0.5_b=1/sqsparam.in @@ -0,0 +1 @@ +10 0.75 1 10 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..c637262 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out @@ -0,0 +1,11 @@ +2 4.123000 0.000000 0.000000 0.000000 +2 5.830803 0.000000 0.000000 0.000000 +2 7.141245 0.000000 0.000000 0.000000 +2 8.246000 0.000000 0.000000 0.000000 +2 9.219308 0.000000 0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +4 5.830803 0.333333 0.000000 0.333333 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 0.000000 0.000000 0.000000 +Objective_function= -58.390515 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..6d3d0f3 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +1.000000 2.000000 1.000000 +1.000000 -0.000000 -1.000000 +-3.000000 2.000000 -3.000000 +-2.000000 2.000000 -3.000000 b_B +-0.000000 3.000000 -1.000000 b_A +-1.000000 2.000000 -3.000000 b_B +-1.000000 2.000000 -2.000000 b_B +-1.000000 3.000000 -3.000000 b_B +-1.000000 3.000000 -2.000000 b_A +-0.000000 1.000000 -2.000000 b_A +-0.000000 1.000000 -1.000000 b_B +0.000000 2.000000 -2.000000 b_B +-0.000000 2.000000 -1.000000 b_A +0.000000 3.000000 -2.000000 b_A +-1.000000 4.000000 -3.000000 b_A +1.000000 1.000000 -1.000000 b_A +-2.000000 3.000000 -3.000000 b_B +1.000000 2.000000 -1.000000 b_A +1.000000 2.000000 -0.000000 b_B +-1.500000 2.500000 -2.500000 a_A +-0.500000 1.500000 -1.500000 a_A +-0.500000 2.500000 -2.500000 a_A +-0.500000 2.500000 -1.500000 a_A +-0.500000 3.500000 -2.500000 a_A +-1.500000 1.500000 -2.500000 a_A +0.500000 1.500000 -1.500000 a_A +0.500000 1.500000 -0.500000 a_A +0.500000 2.500000 -1.500000 a_A +0.500000 2.500000 -0.500000 a_A +-0.500000 1.500000 -2.500000 a_A +-1.500000 2.500000 -3.500000 a_A +1.500000 1.500000 -0.500000 a_A +-1.500000 3.500000 -2.500000 a_A +0.500000 0.500000 -1.500000 a_A +0.500000 0.500000 -0.500000 a_A diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..1707477 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out @@ -0,0 +1,68 @@ +3 +4.12300 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 + +6 +5.83080 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +4 +7.14125 +2 +1.00000 1.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +8.24600 +2 +1.00000 1.00000 1.00000 0 0 +3.00000 1.00000 1.00000 0 0 + +12 +9.21931 +2 +1.00000 1.00000 1.00000 0 0 +3.00000 1.00000 0.00000 0 0 + +12 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +2 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/go b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/go new file mode 100755 index 0000000..9b1afdf --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=10 -3=6 -4=6 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/job.in b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/job.in new file mode 100755 index 0000000..22969f9 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..7719f8c --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in @@ -0,0 +1,9 @@ + +4.123 4.123 4.123 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0.5 0.5 a_A=1 + +0 0 0 b_A=0.5,b_B=0.5 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..7267bb3 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,10 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 0.000000 0.000000 Cl_A=0.500000,Cl_B=0.500000 + +0.500000 0.500000 0.500000 Cs_A=1.000000 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/sqsparam.in b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..a285f3b --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=1_a=1_b=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +10 0.75 1 10 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/bestcorr.out b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/bestcorr.out new file mode 100644 index 0000000..b2202c9 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/bestcorr.out @@ -0,0 +1,15 @@ +2 4.123000 0.250000 0.250000 0.000000 +2 5.830803 0.250000 0.250000 0.000000 +2 7.141245 0.250000 0.250000 0.000000 +2 8.246000 0.166667 0.250000 -0.083333 +2 9.219308 0.270833 0.250000 0.020833 +3 5.830803 -0.166667 -0.125000 -0.041667 +3 5.830803 -0.125000 -0.125000 0.000000 +3 7.141245 -0.125000 -0.125000 0.000000 +4 5.830803 0.166667 0.062500 0.104167 +4 5.830803 0.125000 0.062500 0.062500 +4 5.830803 0.000000 0.062500 -0.062500 +4 7.141245 0.083333 0.062500 0.020833 +4 7.141245 0.125000 0.062500 0.062500 +4 7.141245 0.000000 0.062500 -0.062500 +Objective_function= -30.576844 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/bestsqs.out b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/bestsqs.out new file mode 100644 index 0000000..46c4edd --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/bestsqs.out @@ -0,0 +1,38 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +-1.000000 -2.000000 0.000000 +-1.000000 -0.000000 2.000000 +-2.000000 2.000000 -2.000000 +-2.500000 0.500000 -0.500000 a_A +-1.500000 0.500000 -0.500000 a_A +-2.500000 -0.500000 -0.500000 a_A +-1.500000 -0.500000 -0.500000 a_B +-1.500000 -0.500000 0.500000 a_A +-2.500000 1.500000 -1.500000 a_A +-2.500000 0.500000 0.500000 a_A +-1.500000 0.500000 0.500000 a_A +-1.500000 -1.500000 0.500000 a_B +-2.500000 0.500000 -1.500000 a_A +-3.500000 -0.500000 0.500000 a_A +-2.500000 -0.500000 0.500000 a_A +-1.500000 -0.500000 1.500000 a_B +-2.500000 1.500000 -0.500000 a_A +-2.500000 -1.500000 1.500000 a_A +-3.500000 0.500000 -0.500000 a_B +-3.000000 0.000000 -1.000000 b_A +-2.000000 0.000000 -1.000000 b_A +-2.000000 1.000000 -1.000000 b_A +-3.000000 -1.000000 1.000000 b_A +-2.000000 -1.000000 0.000000 b_A +-1.000000 -1.000000 0.000000 b_A +-3.000000 0.000000 0.000000 b_A +-2.000000 0.000000 0.000000 b_A +-1.000000 0.000000 0.000000 b_A +-4.000000 0.000000 0.000000 b_A +-3.000000 1.000000 0.000000 b_A +-2.000000 1.000000 0.000000 b_A +-2.000000 -1.000000 1.000000 b_A +-3.000000 1.000000 -1.000000 b_A +-2.000000 -0.000000 1.000000 b_A +-1.000000 -0.000000 1.000000 b_A diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/clusters.out b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/clusters.out new file mode 100644 index 0000000..f16f889 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/clusters.out @@ -0,0 +1,99 @@ +3 +4.12300 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 + +6 +5.83080 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +4 +7.14125 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +3 +8.24600 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -1.50000 0 0 + +12 +9.21931 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 -1.50000 0 0 + +12 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +24 +7.14125 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +3 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +2 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +24 +7.14125 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +24 +7.14125 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +6 +7.14125 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 1.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/go b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/go new file mode 100755 index 0000000..8835c5d --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=10 -3=7.15 -4=7.15 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/job.in b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/job.in new file mode 100755 index 0000000..22969f9 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/rndstr.in b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/rndstr.in new file mode 100644 index 0000000..46c6c07 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/rndstr.in @@ -0,0 +1,9 @@ + +4.123 4.123 4.123 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0.5 0.5 a_A=0.75,a_B=0.25 + +0 0 0 b_A=1 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/rndstrgrp.out b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/rndstrgrp.out new file mode 100644 index 0000000..6555467 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/rndstrgrp.out @@ -0,0 +1,10 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.500000 0.500000 0.500000 Cs_A=0.750000,Cs_B=0.250000 + +0.000000 0.000000 0.000000 Cl_A=1.000000 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/sqsparam.in b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/sqsparam.in new file mode 100644 index 0000000..6730e4c --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=0.75,0.25_b=1/sqsparam.in @@ -0,0 +1 @@ +10 0.5 1 10 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/bestcorr.out b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..9549303 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/bestcorr.out @@ -0,0 +1,11 @@ +2 4.123000 0.250000 0.250000 0.000000 +2 5.830803 0.250000 0.250000 0.000000 +2 7.141245 0.250000 0.250000 0.000000 +2 8.246000 0.166667 0.250000 -0.083333 +2 9.219308 0.270833 0.250000 0.020833 +3 5.830803 -0.166667 -0.125000 -0.041667 +3 5.830803 -0.125000 -0.125000 0.000000 +4 5.830803 0.166667 0.062500 0.104167 +4 5.830803 0.125000 0.062500 0.062500 +4 5.830803 0.000000 0.062500 -0.062500 +Objective_function= -30.576724 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/bestsqs.out b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..3a56da6 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/bestsqs.out @@ -0,0 +1,38 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +-1.000000 -2.000000 0.000000 +-1.000000 -0.000000 2.000000 +-2.000000 2.000000 -2.000000 +-3.000000 0.000000 -1.000000 b_A +-2.000000 0.000000 -1.000000 b_A +-2.000000 1.000000 -1.000000 b_A +-3.000000 -1.000000 1.000000 b_A +-2.000000 -1.000000 0.000000 b_A +-1.000000 -1.000000 0.000000 b_A +-3.000000 0.000000 0.000000 b_B +-2.000000 0.000000 0.000000 b_A +-1.000000 0.000000 0.000000 b_A +-4.000000 0.000000 0.000000 b_B +-3.000000 1.000000 0.000000 b_A +-2.000000 1.000000 0.000000 b_A +-2.000000 -1.000000 1.000000 b_A +-3.000000 1.000000 -1.000000 b_B +-2.000000 -0.000000 1.000000 b_A +-1.000000 -0.000000 1.000000 b_B +-2.500000 0.500000 -0.500000 a_A +-1.500000 0.500000 -0.500000 a_A +-2.500000 -0.500000 -0.500000 a_A +-1.500000 -0.500000 -0.500000 a_A +-1.500000 -0.500000 0.500000 a_A +-2.500000 1.500000 -1.500000 a_A +-2.500000 0.500000 0.500000 a_A +-1.500000 0.500000 0.500000 a_A +-1.500000 -1.500000 0.500000 a_A +-2.500000 0.500000 -1.500000 a_A +-3.500000 -0.500000 0.500000 a_A +-2.500000 -0.500000 0.500000 a_A +-1.500000 -0.500000 1.500000 a_A +-2.500000 1.500000 -0.500000 a_A +-2.500000 -1.500000 1.500000 a_A +-3.500000 0.500000 -0.500000 a_A diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/clusters.out b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/clusters.out new file mode 100644 index 0000000..1707477 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/clusters.out @@ -0,0 +1,68 @@ +3 +4.12300 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 + +6 +5.83080 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +4 +7.14125 +2 +1.00000 1.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +8.24600 +2 +1.00000 1.00000 1.00000 0 0 +3.00000 1.00000 1.00000 0 0 + +12 +9.21931 +2 +1.00000 1.00000 1.00000 0 0 +3.00000 1.00000 0.00000 0 0 + +12 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +2 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/job.in b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/job.in new file mode 100755 index 0000000..22969f9 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/rndstr.in b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/rndstr.in new file mode 100644 index 0000000..8814b7d --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/rndstr.in @@ -0,0 +1,9 @@ + +4.123 4.123 4.123 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0.5 0.5 a_A=1 + +0 0 0 b_A=0.75,b_B=0.25 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/rndstrgrp.out b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/rndstrgrp.out new file mode 100644 index 0000000..f387fb8 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/rndstrgrp.out @@ -0,0 +1,10 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 0.000000 0.000000 Cl_A=0.750000,Cl_B=0.250000 + +0.500000 0.500000 0.500000 Cs_A=1.000000 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/sqsparam.in b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/sqsparam.in new file mode 100644 index 0000000..6730e4c --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=2_a=1_b=0.75,0.25/sqsparam.in @@ -0,0 +1 @@ +10 0.5 1 10 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestcorr.out b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..1bd1794 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestcorr.out @@ -0,0 +1,35 @@ +2 3.570623 0.000000 0.000000 0.000000 +2 4.123000 0.000000 0.000000 0.000000 +2 4.123000 0.000000 0.000000 0.000000 +2 5.830803 0.000000 0.000000 0.000000 +2 5.830803 0.000000 0.000000 0.000000 +2 6.837222 0.000000 0.000000 0.000000 +2 7.141245 0.000000 0.000000 0.000000 +2 7.141245 0.000000 0.000000 0.000000 +2 8.246000 0.000000 0.000000 0.000000 +2 8.246000 0.000000 0.000000 0.000000 +2 8.985870 0.000000 0.000000 0.000000 +2 9.219308 -0.166667 0.000000 -0.166667 +2 9.219308 -0.166667 0.000000 -0.166667 +3 4.123000 0.000000 0.000000 0.000000 +3 4.123000 0.000000 0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +4 4.123000 0.000000 0.000000 0.000000 +4 5.830803 -0.166667 0.000000 -0.166667 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 -0.666667 0.000000 -0.666667 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 -0.166667 0.000000 -0.166667 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 -0.666667 0.000000 -0.666667 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 0.000000 0.000000 0.000000 +Objective_function= -6.725542 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestsqs.out b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..f83f40f --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +2.000000 2.000000 -1.000000 +-2.000000 -2.000000 -1.000000 +-2.000000 2.000000 1.000000 +-2.500000 1.500000 0.500000 a_B +-0.500000 0.500000 -0.500000 a_A +-1.500000 2.500000 0.500000 a_A +-0.500000 1.500000 -0.500000 a_A +0.500000 1.500000 -0.500000 a_A +-2.500000 1.500000 -0.500000 a_B +-0.500000 2.500000 -0.500000 a_A +0.500000 2.500000 -0.500000 a_B +-0.500000 0.500000 -1.500000 a_B +-1.500000 2.500000 -0.500000 a_A +-1.500000 1.500000 0.500000 a_A +-2.500000 -0.500000 -0.500000 a_A +-1.500000 -0.500000 -0.500000 a_B +-2.500000 0.500000 -0.500000 a_B +-1.500000 0.500000 -0.500000 a_B +-1.500000 1.500000 -0.500000 a_B +-3.000000 1.000000 0.000000 b_B +-1.000000 0.000000 -1.000000 b_B +-2.000000 2.000000 0.000000 b_A +-1.000000 1.000000 -1.000000 b_A +-0.000000 1.000000 -1.000000 b_A +-1.000000 3.000000 0.000000 b_B +-1.000000 2.000000 -1.000000 b_A +-0.000000 2.000000 -1.000000 b_B +1.000000 2.000000 -1.000000 b_A +-2.000000 2.000000 -1.000000 b_A +-2.000000 1.000000 0.000000 b_B +-1.000000 1.000000 0.000000 b_A +-2.000000 -1.000000 -1.000000 b_B +-1.000000 2.000000 0.000000 b_B +-2.000000 0.000000 -1.000000 b_B +-2.000000 1.000000 -1.000000 b_A diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/clusters.out b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..6d3c73c --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/clusters.out @@ -0,0 +1,238 @@ +8 +3.57062 +2 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +4.12300 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +3 +4.12300 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +6 +5.83080 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +6 +5.83080 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +6.83722 +2 +0.50000 0.50000 0.50000 0 0 +-1.00000 0.00000 0.00000 0 0 + +4 +7.14125 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +4 +7.14125 +2 +1.00000 1.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +8.24600 +2 +1.00000 1.00000 1.00000 0 0 +3.00000 1.00000 1.00000 0 0 + +3 +8.24600 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -1.50000 0 0 + +24 +8.98587 +2 +0.50000 0.50000 0.50000 0 0 +-0.00000 -1.00000 -1.00000 0 0 + +12 +9.21931 +2 +1.00000 1.00000 1.00000 0 0 +3.00000 1.00000 0.00000 0 0 + +12 +9.21931 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 -1.50000 0 0 + +12 +4.12300 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +12 +4.12300 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 1.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +12 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 -0.50000 1.50000 0 0 + +12 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +12 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +4.12300 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +6 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 -0.50000 1.50000 0 0 + +24 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +3 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +2 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +6 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +2 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/go b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/go new file mode 100755 index 0000000..9b1afdf --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=10 -3=6 -4=6 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/job.in b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/job.in new file mode 100755 index 0000000..22969f9 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstr.in b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..8481ef5 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstr.in @@ -0,0 +1,9 @@ + +4.123 4.123 4.123 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0.5 0.5 a_A=0.5,a_B=0.5 + +0 0 0 b_A=0.5,b_B=0.5 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..9f94c72 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,10 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.500000 0.500000 0.500000 Cs_A=0.500000,Cs_B=0.500000 + +0.000000 0.000000 0.000000 Cl_A=0.500000,Cl_B=0.500000 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/sqsparam.in b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..aba0664 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 10 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestcorr.out b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..0008abc --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestcorr.out @@ -0,0 +1,35 @@ +2 3.570623 0.000000 -0.000000 0.000000 +2 4.123000 0.000000 0.000000 0.000000 +2 4.123000 0.250000 0.250000 0.000000 +2 5.830803 0.000000 0.000000 0.000000 +2 5.830803 0.250000 0.250000 0.000000 +2 6.837222 0.000000 -0.000000 0.000000 +2 7.141245 0.000000 0.000000 0.000000 +2 7.141245 0.250000 0.250000 0.000000 +2 8.246000 0.000000 0.250000 -0.250000 +2 8.246000 -0.333333 0.000000 -0.333333 +2 8.985870 0.000000 -0.000000 0.000000 +2 9.219308 0.250000 0.250000 0.000000 +2 9.219308 0.000000 0.000000 0.000000 +3 4.123000 0.000000 -0.000000 0.000000 +3 4.123000 0.000000 0.000000 0.000000 +3 5.830803 0.000000 -0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +3 5.830803 -0.083333 0.000000 -0.083333 +3 5.830803 -0.125000 -0.125000 0.000000 +3 5.830803 0.000000 -0.125000 0.125000 +4 4.123000 0.000000 0.000000 0.000000 +4 5.830803 -0.083333 0.000000 -0.083333 +4 5.830803 -0.041667 -0.000000 -0.041667 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 0.125000 -0.000000 0.125000 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 -0.083333 0.000000 -0.083333 +4 5.830803 0.041667 -0.000000 0.041667 +4 5.830803 0.000000 0.062500 -0.062500 +4 5.830803 0.000000 -0.000000 0.000000 +4 5.830803 0.000000 0.062500 -0.062500 +4 5.830803 0.000000 0.062500 -0.062500 +Objective_function= -35.297603 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestsqs.out b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..55a6548 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestsqs.out @@ -0,0 +1,38 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +3.000000 1.000000 1.000000 +-1.000000 -3.000000 1.000000 +-1.000000 1.000000 -3.000000 +1.500000 -1.500000 0.500000 a_B +-0.500000 -1.500000 -0.500000 a_A +2.500000 0.500000 0.500000 a_A +0.500000 -0.500000 -0.500000 a_A +-0.500000 -2.500000 0.500000 a_B +1.500000 0.500000 -0.500000 a_B +0.500000 -1.500000 0.500000 a_B +1.500000 0.500000 -1.500000 a_A +-0.500000 0.500000 -2.500000 a_B +1.500000 -0.500000 0.500000 a_A +1.500000 -0.500000 -0.500000 a_A +-0.500000 -1.500000 -1.500000 a_B +0.500000 -0.500000 -1.500000 a_A +-0.500000 -0.500000 -1.500000 a_B +0.500000 0.500000 -1.500000 a_B +0.500000 -1.500000 -0.500000 a_A +2.000000 1.000000 -1.000000 b_A +-1.000000 -2.000000 -1.000000 b_A +2.000000 -0.000000 0.000000 b_A +0.000000 -1.000000 -1.000000 b_B +-0.000000 -0.000000 -1.000000 b_B +1.000000 0.000000 -1.000000 b_B +0.000000 -2.000000 0.000000 b_A +2.000000 -1.000000 1.000000 b_A +-0.000000 -1.000000 -0.000000 b_A +1.000000 -1.000000 -0.000000 b_A +1.000000 -1.000000 -1.000000 b_A +1.000000 0.000000 0.000000 b_A +1.000000 -2.000000 1.000000 b_A +-1.000000 -1.000000 -2.000000 b_A +-0.000000 0.000000 -2.000000 b_B +1.000000 1.000000 -2.000000 b_A diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/clusters.out b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/clusters.out new file mode 100644 index 0000000..6d3c73c --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/clusters.out @@ -0,0 +1,238 @@ +8 +3.57062 +2 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +4.12300 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +3 +4.12300 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +6 +5.83080 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +6 +5.83080 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +6.83722 +2 +0.50000 0.50000 0.50000 0 0 +-1.00000 0.00000 0.00000 0 0 + +4 +7.14125 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +4 +7.14125 +2 +1.00000 1.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +8.24600 +2 +1.00000 1.00000 1.00000 0 0 +3.00000 1.00000 1.00000 0 0 + +3 +8.24600 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -1.50000 0 0 + +24 +8.98587 +2 +0.50000 0.50000 0.50000 0 0 +-0.00000 -1.00000 -1.00000 0 0 + +12 +9.21931 +2 +1.00000 1.00000 1.00000 0 0 +3.00000 1.00000 0.00000 0 0 + +12 +9.21931 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 -1.50000 0 0 + +12 +4.12300 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +12 +4.12300 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 1.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +12 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 -0.50000 1.50000 0 0 + +12 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +12 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +4.12300 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +6 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 -0.50000 1.50000 0 0 + +24 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +3 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +2 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +6 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +2 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/job.in b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/job.in new file mode 100755 index 0000000..dfdbf7a --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p maint-batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/rndstr.in b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/rndstr.in new file mode 100644 index 0000000..8bdaf92 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/rndstr.in @@ -0,0 +1,9 @@ + +4.123 4.123 4.123 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0.5 0.5 a_A=0.5,a_B=0.5 + +0 0 0 b_A=0.75,b_B=0.25 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/rndstrgrp.out b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/rndstrgrp.out new file mode 100644 index 0000000..0a3d3e8 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/rndstrgrp.out @@ -0,0 +1,10 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.500000 0.500000 0.500000 Cs_A=0.500000,Cs_B=0.500000 + +0.000000 0.000000 0.000000 Cl_A=0.750000,Cl_B=0.250000 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/sqsparam.in b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/sqsparam.in new file mode 100644 index 0000000..6730e4c --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/sqsparam.in @@ -0,0 +1 @@ +10 0.5 1 10 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestcorr.out b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..c874789 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestcorr.out @@ -0,0 +1,35 @@ +2 3.570623 0.000000 -0.000000 0.000000 +2 4.123000 0.250000 0.250000 0.000000 +2 4.123000 0.000000 0.000000 0.000000 +2 5.830803 0.250000 0.250000 0.000000 +2 5.830803 0.000000 0.000000 0.000000 +2 6.837222 0.000000 -0.000000 0.000000 +2 7.141245 0.250000 0.250000 0.000000 +2 7.141245 0.000000 0.000000 0.000000 +2 8.246000 0.000000 0.000000 0.000000 +2 8.246000 0.333333 0.250000 0.083333 +2 8.985870 0.000000 -0.000000 0.000000 +2 9.219308 0.000000 0.000000 0.000000 +2 9.219308 0.250000 0.250000 0.000000 +3 4.123000 0.000000 0.000000 0.000000 +3 4.123000 0.000000 -0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +3 5.830803 -0.166667 -0.125000 -0.041667 +3 5.830803 -0.250000 -0.125000 -0.125000 +3 5.830803 0.000000 -0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +3 5.830803 0.000000 0.000000 0.000000 +4 4.123000 0.000000 0.000000 0.000000 +4 5.830803 0.083333 0.000000 0.083333 +4 5.830803 0.000000 -0.000000 0.000000 +4 5.830803 0.166667 0.062500 0.104167 +4 5.830803 0.000000 -0.000000 0.000000 +4 5.830803 0.250000 0.062500 0.187500 +4 5.830803 0.500000 0.062500 0.437500 +4 5.830803 -0.083333 0.000000 -0.083333 +4 5.830803 0.041667 -0.000000 0.041667 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 -0.125000 -0.000000 -0.125000 +4 5.830803 0.000000 0.000000 0.000000 +4 5.830803 0.000000 0.000000 0.000000 +Objective_function= -35.309759 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestsqs.out b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..c6d1133 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +1.000000 1.000000 -2.000000 +1.000000 -1.000000 -2.000000 +-4.000000 0.000000 0.000000 +-1.500000 0.500000 -2.500000 a_A +-0.500000 0.500000 -2.500000 a_B +0.500000 0.500000 -2.500000 a_B +-2.500000 0.500000 -2.500000 a_A +-1.500000 0.500000 -1.500000 a_A +-0.500000 0.500000 -1.500000 a_A +0.500000 0.500000 -1.500000 a_A +-2.500000 0.500000 -1.500000 a_A +-1.500000 -0.500000 -2.500000 a_A +-0.500000 -0.500000 -2.500000 a_A +0.500000 -0.500000 -2.500000 a_A +-2.500000 -0.500000 -2.500000 a_A +-1.500000 -0.500000 -1.500000 a_A +-0.500000 -0.500000 -1.500000 a_B +0.500000 -0.500000 -1.500000 a_B +-2.500000 -0.500000 -1.500000 a_A +-2.000000 0.000000 -3.000000 b_B +-1.000000 0.000000 -3.000000 b_A +-0.000000 0.000000 -3.000000 b_A +1.000000 0.000000 -3.000000 b_B +-2.000000 0.000000 -2.000000 b_A +-1.000000 0.000000 -2.000000 b_A +-0.000000 0.000000 -2.000000 b_B +-3.000000 0.000000 -2.000000 b_B +-3.000000 0.000000 -1.000000 b_B +-2.000000 0.000000 -1.000000 b_A +-1.000000 0.000000 -1.000000 b_A +-0.000000 0.000000 -1.000000 b_B +-1.000000 -0.000000 -4.000000 b_B +0.000000 -0.000000 -4.000000 b_B +1.000000 -0.000000 -4.000000 b_A +-2.000000 -0.000000 -4.000000 b_A diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/clusters.out b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..6d3c73c --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/clusters.out @@ -0,0 +1,238 @@ +8 +3.57062 +2 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +4.12300 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +3 +4.12300 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +6 +5.83080 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +6 +5.83080 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +6.83722 +2 +0.50000 0.50000 0.50000 0 0 +-1.00000 0.00000 0.00000 0 0 + +4 +7.14125 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +4 +7.14125 +2 +1.00000 1.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +8.24600 +2 +1.00000 1.00000 1.00000 0 0 +3.00000 1.00000 1.00000 0 0 + +3 +8.24600 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -1.50000 0 0 + +24 +8.98587 +2 +0.50000 0.50000 0.50000 0 0 +-0.00000 -1.00000 -1.00000 0 0 + +12 +9.21931 +2 +1.00000 1.00000 1.00000 0 0 +3.00000 1.00000 0.00000 0 0 + +12 +9.21931 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 -1.50000 0 0 + +12 +4.12300 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +12 +4.12300 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 1.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +12 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 -0.50000 1.50000 0 0 + +12 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +12 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +4.12300 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +6 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 -0.50000 1.50000 0 0 + +24 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +3 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +2 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +6 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +2 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/job.in b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/job.in new file mode 100755 index 0000000..dfdbf7a --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p maint-batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstr.in b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..695836f --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstr.in @@ -0,0 +1,9 @@ + +4.123 4.123 4.123 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0.5 0.5 a_A=0.75,a_B=0.25 + +0 0 0 b_A=0.5,b_B=0.5 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..b28098c --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,10 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.500000 0.500000 0.500000 Cs_A=0.750000,Cs_B=0.250000 + +0.000000 0.000000 0.000000 Cl_A=0.500000,Cl_B=0.500000 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/sqsparam.in b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..6730e4c --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +10 0.5 1 10 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestcorr.out b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..5ba0917 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestcorr.out @@ -0,0 +1,35 @@ +2 3.570623 0.250000 0.250000 0.000000 +2 4.123000 0.250000 0.250000 0.000000 +2 4.123000 0.250000 0.250000 0.000000 +2 5.830803 0.250000 0.250000 0.000000 +2 5.830803 0.250000 0.250000 0.000000 +2 6.837222 0.250000 0.250000 0.000000 +2 7.141245 0.250000 0.250000 0.000000 +2 7.141245 0.250000 0.250000 0.000000 +2 8.246000 0.000000 0.250000 -0.250000 +2 8.246000 0.000000 0.250000 -0.250000 +2 8.985870 0.250000 0.250000 0.000000 +2 9.219308 0.250000 0.250000 0.000000 +2 9.219308 0.250000 0.250000 0.000000 +3 4.123000 -0.125000 -0.125000 0.000000 +3 4.123000 -0.125000 -0.125000 0.000000 +3 5.830803 -0.125000 -0.125000 0.000000 +3 5.830803 -0.166667 -0.125000 -0.041667 +3 5.830803 -0.125000 -0.125000 0.000000 +3 5.830803 -0.125000 -0.125000 0.000000 +3 5.830803 -0.166667 -0.125000 -0.041667 +3 5.830803 -0.125000 -0.125000 0.000000 +4 4.123000 0.083333 0.062500 0.020833 +4 5.830803 0.000000 0.062500 -0.062500 +4 5.830803 0.083333 0.062500 0.020833 +4 5.830803 0.166667 0.062500 0.104167 +4 5.830803 0.000000 0.062500 -0.062500 +4 5.830803 0.125000 0.062500 0.062500 +4 5.830803 0.000000 0.062500 -0.062500 +4 5.830803 0.000000 0.062500 -0.062500 +4 5.830803 0.083333 0.062500 0.020833 +4 5.830803 0.166667 0.062500 0.104167 +4 5.830803 0.125000 0.062500 0.062500 +4 5.830803 0.125000 0.062500 0.062500 +4 5.830803 0.000000 0.062500 -0.062500 +Objective_function= -34.117766 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestsqs.out b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..65105d6 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestsqs.out @@ -0,0 +1,38 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +3.000000 1.000000 1.000000 +-1.000000 -3.000000 1.000000 +-1.000000 1.000000 -3.000000 +1.500000 -1.500000 0.500000 a_A +-0.500000 -1.500000 -0.500000 a_A +2.500000 0.500000 0.500000 a_B +0.500000 -0.500000 -0.500000 a_A +-0.500000 -2.500000 0.500000 a_B +1.500000 0.500000 -0.500000 a_B +0.500000 -1.500000 0.500000 a_A +1.500000 0.500000 -1.500000 a_A +-0.500000 0.500000 -2.500000 a_A +1.500000 -0.500000 0.500000 a_A +1.500000 -0.500000 -0.500000 a_A +-0.500000 -1.500000 -1.500000 a_B +0.500000 -0.500000 -1.500000 a_A +-0.500000 -0.500000 -1.500000 a_A +0.500000 0.500000 -1.500000 a_A +0.500000 -1.500000 -0.500000 a_A +2.000000 1.000000 -1.000000 b_A +-1.000000 -2.000000 -1.000000 b_A +2.000000 -0.000000 0.000000 b_A +0.000000 -1.000000 -1.000000 b_A +-0.000000 -0.000000 -1.000000 b_B +1.000000 0.000000 -1.000000 b_B +0.000000 -2.000000 0.000000 b_A +2.000000 -1.000000 1.000000 b_A +-0.000000 -1.000000 -0.000000 b_A +1.000000 -1.000000 -0.000000 b_A +1.000000 -1.000000 -1.000000 b_A +1.000000 0.000000 0.000000 b_B +1.000000 -2.000000 1.000000 b_A +-1.000000 -1.000000 -2.000000 b_A +-0.000000 0.000000 -2.000000 b_B +1.000000 1.000000 -2.000000 b_A diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/clusters.out b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/clusters.out new file mode 100644 index 0000000..6d3c73c --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/clusters.out @@ -0,0 +1,238 @@ +8 +3.57062 +2 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +4.12300 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 + +3 +4.12300 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +6 +5.83080 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +6 +5.83080 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +6.83722 +2 +0.50000 0.50000 0.50000 0 0 +-1.00000 0.00000 0.00000 0 0 + +4 +7.14125 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +4 +7.14125 +2 +1.00000 1.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +8.24600 +2 +1.00000 1.00000 1.00000 0 0 +3.00000 1.00000 1.00000 0 0 + +3 +8.24600 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -1.50000 0 0 + +24 +8.98587 +2 +0.50000 0.50000 0.50000 0 0 +-0.00000 -1.00000 -1.00000 0 0 + +12 +9.21931 +2 +1.00000 1.00000 1.00000 0 0 +3.00000 1.00000 0.00000 0 0 + +12 +9.21931 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 -1.50000 0 0 + +12 +4.12300 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +12 +4.12300 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 1.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +12 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 -0.50000 1.50000 0 0 + +12 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +12 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +4.12300 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +6 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 -0.50000 1.50000 0 0 + +24 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +3 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +8 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +2 +5.83080 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +0.50000 -0.50000 1.50000 0 0 + +6 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +2 +5.83080 +4 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/job.in b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/job.in new file mode 100755 index 0000000..dfdbf7a --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p maint-batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstr.in b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstr.in new file mode 100644 index 0000000..04d6e5d --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstr.in @@ -0,0 +1,9 @@ + +4.123 4.123 4.123 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0.5 0.5 a_A=0.75,a_B=0.25 + +0 0 0 b_A=0.75,b_B=0.25 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstrgrp.out b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstrgrp.out new file mode 100644 index 0000000..0f99e00 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstrgrp.out @@ -0,0 +1,10 @@ +4.123000 0.000000 0.000000 +0.000000 4.123000 0.000000 +0.000000 0.000000 4.123000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.500000 0.500000 0.500000 Cs_A=0.750000,Cs_B=0.250000 + +0.000000 0.000000 0.000000 Cl_A=0.750000,Cl_B=0.250000 diff --git a/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/sqsparam.in b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/sqsparam.in new file mode 100644 index 0000000..6730e4c --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/sqsparam.in @@ -0,0 +1 @@ +10 0.5 1 10 diff --git a/data/sqsdb/CSCL_B2/sqsgen.in b/data/sqsdb/CSCL_B2/sqsgen.in new file mode 100644 index 0000000..5273099 --- /dev/null +++ b/data/sqsdb/CSCL_B2/sqsgen.in @@ -0,0 +1,9 @@ +level=0 a=1 b=1 +level=1 a=0.5,0.5 b=1 +level=1 a=1 b=0.5,0.5 +level=2 a=0.75,0.25 b=1 +level=2 a=1 b=0.75,0.25 +level=3 a=0.5,0.5 b=0.5,0.5 +level=4 a=0.75,0.25 b=0.5,0.5 +level=4 a=0.5,0.5 b=0.75,0.25 +level=4 a=0.75,0.25 b=0.75,0.25 diff --git a/data/sqsdb/CUPRITE_C3/rndstr.skel b/data/sqsdb/CUPRITE_C3/rndstr.skel new file mode 100644 index 0000000..dad25dd --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/rndstr.skel @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.25 0.25 0.25 b +0.75 0.75 0.25 b +0.75 0.25 0.75 b +0.25 0.75 0.75 b + +0 0 0 a +0.5 0.5 0.5 a diff --git a/data/sqsdb/CUPRITE_C3/rndstr.skel.sspp b/data/sqsdb/CUPRITE_C3/rndstr.skel.sspp new file mode 100644 index 0000000..8890a3a --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/rndstr.skel.sspp @@ -0,0 +1,13 @@ +#const a=1; +{a} {a} {a} {90} {90} {90} +1 0 0 +0 1 0 +0 0 1 +#const b="b"; +{1/4} {1/4} {1/4} {b} +{3/4} {3/4} {1/4} {b} +{3/4} {1/4} {3/4} {b} +{1/4} {3/4} {3/4} {b} +#const a="a"; +{0} {0} {0} {a} +{1/2} {1/2} {1/2} {a} diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=0_a=1_b=1/bestsqs.out b/data/sqsdb/CUPRITE_C3/sqsdb_lev=0_a=1_b=1/bestsqs.out new file mode 100644 index 0000000..857077c --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=0_a=1_b=1/bestsqs.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.250000 0.250000 0.250000 b_A +0.750000 0.750000 0.250000 b_A +0.750000 0.250000 0.750000 b_A +0.250000 0.750000 0.750000 b_A +0.000000 0.000000 0.000000 a_A +0.500000 0.500000 0.500000 a_A diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=0_a=1_b=1/rndstr.in b/data/sqsdb/CUPRITE_C3/sqsdb_lev=0_a=1_b=1/rndstr.in new file mode 100644 index 0000000..4f80bb1 --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=0_a=1_b=1/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.25 0.25 0.25 b_A=1 +0.75 0.75 0.25 b_A=1 +0.75 0.25 0.75 b_A=1 +0.25 0.75 0.75 b_A=1 + +0 0 0 a_A=1 +0.5 0.5 0.5 a_A=1 diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out new file mode 100644 index 0000000..1c20f6c --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out @@ -0,0 +1,26 @@ +2 0.866025 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.658312 0.000000 0.000000 0.000000 +2 1.658312 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 2.000000 -0.333333 0.000000 -0.333333 +3 1.000000 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 0.333333 0.000000 0.333333 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 -1.000000 0.000000 -1.000000 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 -1.000000 0.000000 -1.000000 +Objective_function= -6.118462 diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out new file mode 100644 index 0000000..a9fd33c --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.000000 -1.000000 +1.000000 -1.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-1.000000 -2.000000 -1.000000 a_A +-2.000000 -1.000000 -1.000000 a_B +-1.000000 -1.000000 -1.000000 a_B +-0.000000 -1.000000 -1.000000 a_A +-1.000000 -0.000000 -1.000000 a_B +-2.000000 -2.000000 -1.000000 a_B +-1.000000 -1.000000 -2.000000 a_A +-2.000000 -2.000000 -2.000000 a_A +-1.500000 -0.500000 -1.500000 a_B +-0.500000 -1.500000 -1.500000 a_B +-0.500000 -0.500000 -0.500000 a_B +-2.500000 -1.500000 -1.500000 a_A +-1.500000 -2.500000 -1.500000 a_A +-1.500000 -1.500000 -0.500000 a_A +-0.500000 -0.500000 -1.500000 a_B +-1.500000 -1.500000 -1.500000 a_A +-0.750000 -1.750000 -0.750000 b_A +-1.750000 -0.750000 -0.750000 b_A +-0.750000 -0.750000 -0.750000 b_A +0.250000 -0.750000 -0.750000 b_A +-0.750000 0.250000 -0.750000 b_A +-1.750000 -1.750000 -0.750000 b_A +-0.750000 -0.750000 -1.750000 b_A +-1.750000 -1.750000 -1.750000 b_A +-0.250000 -1.250000 -0.750000 b_A +-1.250000 -0.250000 -0.750000 b_A +-0.250000 -0.250000 -0.750000 b_A +-1.250000 -2.250000 -0.750000 b_A +-2.250000 -1.250000 -0.750000 b_A +-1.250000 -1.250000 -0.750000 b_A +-0.250000 -0.250000 -1.750000 b_A +-1.250000 -1.250000 -1.750000 b_A +-1.250000 -0.750000 -1.250000 b_A +-0.250000 -1.750000 -1.250000 b_A +-1.250000 0.250000 -1.250000 b_A +-2.250000 -1.750000 -1.250000 b_A +-1.250000 -2.750000 -1.250000 b_A +-2.250000 -0.750000 -1.250000 b_A +-0.250000 -0.750000 -1.250000 b_A +-1.250000 -1.750000 -1.250000 b_A +-1.750000 -0.250000 -1.250000 b_A +-0.750000 -1.250000 -1.250000 b_A +0.250000 -1.250000 -1.250000 b_A +-2.750000 -1.250000 -1.250000 b_A +-1.750000 -2.250000 -1.250000 b_A +-0.750000 -2.250000 -1.250000 b_A +-0.750000 -0.250000 -1.250000 b_A +-1.750000 -1.250000 -1.250000 b_A diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out new file mode 100644 index 0000000..1ec661a --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out @@ -0,0 +1,178 @@ +4 +0.86603 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +4 +0.86603 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +6 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 + +12 +1.41421 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +12 +1.65831 +2 +0.50000 0.50000 0.50000 0 0 +2.00000 0.00000 0.00000 0 0 + +12 +1.65831 +2 +0.50000 0.50000 0.50000 0 0 +-0.00000 -1.00000 0.00000 0 0 + +8 +1.73205 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 -0.50000 0 0 + +6 +2.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -1.50000 0 0 + +24 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +0.50000 0.50000 -0.50000 0 0 + +12 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.50000 1.50000 0.50000 0 0 + +12 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.50000 1.50000 0.50000 0 0 + +24 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +8 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +8 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 -0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +12 +1.00000 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 +1.00000 1.00000 0.00000 0 0 +0.50000 0.50000 -0.50000 0 0 + +12 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.50000 1.50000 0.50000 0 0 + +24 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +24 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +6 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +8 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +8 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +2 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 1.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +8 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.50000 0.50000 -0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +8 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 -0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +2 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 -0.50000 0 0 +-0.50000 0.50000 -0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/go b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/go new file mode 100755 index 0000000..7b4e4bc --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.6 -4=1.5 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/job.in b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/job.in new file mode 100755 index 0000000..74dc631 --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C3_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in new file mode 100644 index 0000000..77357a4 --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.25 0.25 0.25 b_A=1 +0.75 0.75 0.25 b_A=1 +0.75 0.25 0.75 b_A=1 +0.25 0.75 0.75 b_A=1 + +0 0 0 a_A=0.5,a_B=0.5 +0.5 0.5 0.5 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out new file mode 100644 index 0000000..245e7ae --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 +0.500000 0.500000 0.500000 a_A=0.500000,a_B=0.500000 + +0.250000 0.250000 0.250000 b_A=1.000000 +0.750000 0.750000 0.250000 b_A=1.000000 +0.750000 0.250000 0.750000 b_A=1.000000 +0.250000 0.750000 0.750000 b_A=1.000000 diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..64bc8fa --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out @@ -0,0 +1,18 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.000000 0.000000 0.000000 0.000000 +Objective_function= -7.034192 diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..843d13f --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-2.000000 -1.000000 1.000000 +2.000000 -1.000000 1.000000 +0.000000 1.000000 1.000000 +-1.750000 -0.750000 1.250000 b_B +-0.750000 -0.750000 1.250000 b_A +0.250000 -0.750000 1.250000 b_A +1.250000 -0.750000 1.250000 b_B +-0.750000 0.250000 1.250000 b_B +0.250000 0.250000 1.250000 b_B +-0.750000 -0.750000 2.250000 b_A +0.250000 -0.750000 2.250000 b_A +-1.750000 -0.250000 1.750000 b_B +-0.750000 -0.250000 1.750000 b_B +0.250000 -0.250000 1.750000 b_A +1.250000 -0.250000 1.750000 b_A +-0.750000 -0.250000 0.750000 b_B +0.250000 -0.250000 0.750000 b_A +-0.750000 -1.250000 1.750000 b_A +0.250000 -1.250000 1.750000 b_B +-0.250000 -0.750000 2.750000 b_A +-1.250000 0.250000 1.750000 b_B +-0.250000 0.250000 1.750000 b_B +0.750000 0.250000 1.750000 b_A +0.750000 -0.750000 1.750000 b_A +-0.250000 0.250000 0.750000 b_A +-1.250000 -0.750000 1.750000 b_B +-0.250000 -0.750000 1.750000 b_B +-0.250000 0.750000 1.250000 b_B +-1.250000 -0.250000 2.250000 b_B +-0.250000 -0.250000 2.250000 b_A +0.750000 -0.250000 2.250000 b_A +-1.250000 -0.250000 1.250000 b_A +-0.250000 -0.250000 1.250000 b_B +0.750000 -0.250000 1.250000 b_B +-0.250000 -1.250000 2.250000 b_A +0.000000 -1.000000 3.000000 a_A +-1.000000 0.000000 2.000000 a_A +-0.000000 0.000000 2.000000 a_A +1.000000 0.000000 2.000000 a_A +1.000000 -1.000000 2.000000 a_A +-0.000000 0.000000 1.000000 a_A +-1.000000 -1.000000 2.000000 a_A +0.000000 -1.000000 2.000000 a_A +-1.500000 -0.500000 1.500000 a_A +-0.500000 -0.500000 1.500000 a_A +0.500000 -0.500000 1.500000 a_A +1.500000 -0.500000 1.500000 a_A +-0.500000 0.500000 1.500000 a_A +0.500000 0.500000 1.500000 a_A +-0.500000 -0.500000 2.500000 a_A +0.500000 -0.500000 2.500000 a_A diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..5ff5abf --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out @@ -0,0 +1,115 @@ +12 +0.70711 +2 +0.75000 0.75000 0.25000 0 0 +0.25000 0.75000 -0.25000 0 0 + +12 +0.70711 +2 +0.25000 0.75000 0.75000 0 0 +0.75000 0.25000 0.75000 0 0 + +12 +1.00000 +2 +0.25000 0.75000 0.75000 0 0 +1.25000 0.75000 0.75000 0 0 + +24 +1.22474 +2 +0.25000 0.25000 0.25000 0 0 +-0.75000 -0.25000 -0.25000 0 0 + +24 +1.22474 +2 +0.75000 0.25000 0.75000 0 0 +0.25000 -0.25000 -0.25000 0 0 + +12 +1.41421 +2 +0.25000 0.75000 0.75000 0 0 +1.25000 1.75000 0.75000 0 0 + +12 +1.41421 +2 +0.25000 0.75000 0.75000 0 0 +1.25000 0.75000 -0.25000 0 0 + +24 +1.58114 +2 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 -1.25000 0 0 + +24 +1.58114 +2 +0.75000 0.75000 0.25000 0 0 +0.25000 0.75000 -1.25000 0 0 + +24 +0.70711 +3 +0.75000 0.25000 0.75000 0 0 +0.25000 -0.25000 0.75000 0 0 +0.75000 -0.25000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.25000 0.75000 0 0 +1.25000 0.25000 1.25000 0 0 +0.75000 -0.25000 1.25000 0 0 + +48 +1.00000 +3 +0.25000 0.75000 0.75000 0 0 +0.75000 0.25000 0.75000 0 0 +1.25000 0.75000 0.75000 0 0 + +6 +0.70711 +4 +0.75000 0.25000 0.75000 0 0 +0.25000 0.25000 1.25000 0 0 +0.25000 -0.25000 0.75000 0 0 +0.75000 -0.25000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.25000 0.75000 0 0 +1.25000 -0.25000 0.75000 0 0 +1.25000 0.25000 1.25000 0 0 +0.75000 -0.25000 1.25000 0 0 + +24 +1.00000 +4 +0.25000 0.75000 0.75000 0 0 +0.75000 0.75000 0.25000 0 0 +0.75000 0.25000 0.75000 0 0 +1.25000 0.75000 0.75000 0 0 + +12 +1.00000 +4 +0.25000 0.75000 0.75000 0 0 +0.75000 1.25000 0.75000 0 0 +0.75000 0.25000 0.75000 0 0 +1.25000 0.75000 0.75000 0 0 + +24 +1.00000 +4 +0.25000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 0.25000 0.75000 0 0 +1.25000 0.75000 0.75000 0 0 + diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/go b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/go new file mode 100755 index 0000000..ae1f56d --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.7 -3=1 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/job.in b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/job.in new file mode 100755 index 0000000..74dc631 --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C3_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..ca8e1a2 --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.25 0.25 0.25 b_A=0.5,b_B=0.5 +0.75 0.75 0.25 b_A=0.5,b_B=0.5 +0.75 0.25 0.75 b_A=0.5,b_B=0.5 +0.25 0.75 0.75 b_A=0.5,b_B=0.5 + +0 0 0 a_A=1 +0.5 0.5 0.5 a_A=1 diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..764ccf7 --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.250000 0.250000 0.250000 b_A=0.500000,b_B=0.500000 +0.250000 -0.250000 -0.250000 b_A=0.500000,b_B=0.500000 +-0.250000 0.250000 -0.250000 b_A=0.500000,b_B=0.500000 +-0.250000 -0.250000 0.250000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 +0.500000 0.500000 0.500000 a_A=1.000000 diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestcorr.out b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..b8ec1ae --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestcorr.out @@ -0,0 +1,25 @@ +2 0.433013 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.829156 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.166667 0.000000 0.166667 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.866025 0.000000 0.000000 0.000000 +3 0.866025 0.166667 0.000000 0.166667 +3 0.866025 0.083333 0.000000 0.083333 +4 0.707107 -0.333333 0.000000 -0.333333 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 -1.000000 0.000000 -1.000000 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 -0.166667 0.000000 -0.166667 +Objective_function= -556.535354 diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestsqs.out b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..c674029 --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 -1.000000 -1.000000 +-0.000000 -1.000000 1.000000 +-4.000000 0.000000 0.000000 +-2.750000 -0.750000 0.250000 b_A +-1.750000 -0.750000 0.250000 b_A +-0.750000 -0.750000 0.250000 b_B +-3.750000 -0.750000 0.250000 b_A +-2.750000 -1.750000 0.250000 b_A +-1.750000 -1.750000 0.250000 b_B +-0.750000 -1.750000 0.250000 b_B +-3.750000 -1.750000 0.250000 b_B +-2.750000 -1.250000 -0.250000 b_A +-1.750000 -1.250000 -0.250000 b_A +-0.750000 -1.250000 -0.250000 b_B +-3.750000 -1.250000 -0.250000 b_A +-2.750000 -1.250000 0.750000 b_A +-1.750000 -1.250000 0.750000 b_B +-0.750000 -1.250000 0.750000 b_B +-3.750000 -1.250000 0.750000 b_B +-3.250000 -0.750000 -0.250000 b_B +-2.250000 -0.750000 -0.250000 b_B +-1.250000 -0.750000 -0.250000 b_B +-0.250000 -0.750000 -0.250000 b_B +-3.250000 -1.750000 -0.250000 b_B +-2.250000 -1.750000 -0.250000 b_A +-1.250000 -1.750000 -0.250000 b_B +-0.250000 -1.750000 -0.250000 b_A +-3.250000 -1.250000 0.250000 b_A +-2.250000 -1.250000 0.250000 b_A +-1.250000 -1.250000 0.250000 b_A +-0.250000 -1.250000 0.250000 b_A +-3.250000 -1.250000 -0.750000 b_A +-2.250000 -1.250000 -0.750000 b_B +-1.250000 -1.250000 -0.750000 b_A +-0.250000 -1.250000 -0.750000 b_B +-3.000000 -1.000000 0.000000 a_B +-2.000000 -1.000000 0.000000 a_A +-1.000000 -1.000000 0.000000 a_B +-4.000000 -1.000000 0.000000 a_A +-3.000000 -2.000000 0.000000 a_B +-2.000000 -2.000000 0.000000 a_A +-1.000000 -2.000000 0.000000 a_B +-4.000000 -2.000000 0.000000 a_A +-2.500000 -1.500000 -0.500000 a_B +-1.500000 -1.500000 -0.500000 a_B +-0.500000 -1.500000 -0.500000 a_B +-3.500000 -1.500000 -0.500000 a_A +-2.500000 -1.500000 0.500000 a_A +-1.500000 -1.500000 0.500000 a_B +-0.500000 -1.500000 0.500000 a_A +-3.500000 -1.500000 0.500000 a_A diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/clusters.out b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..acb1d57 --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/clusters.out @@ -0,0 +1,167 @@ +8 +0.43301 +2 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 + +12 +0.70711 +2 +0.75000 0.25000 0.75000 0 0 +0.75000 -0.25000 1.25000 0 0 + +12 +0.70711 +2 +0.75000 0.75000 0.25000 0 0 +0.25000 0.75000 -0.25000 0 0 + +24 +0.82916 +2 +0.25000 0.25000 0.25000 0 0 +1.00000 0.00000 0.00000 0 0 + +4 +0.86603 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +4 +0.86603 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +1.00000 +2 +0.25000 0.75000 0.75000 0 0 +1.25000 0.75000 0.75000 0 0 + +6 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 + +12 +0.70711 +3 +0.75000 0.25000 0.75000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.75000 -0.25000 1.25000 0 0 + +24 +0.70711 +3 +0.75000 0.25000 0.75000 0 0 +0.25000 -0.25000 0.75000 0 0 +0.75000 -0.25000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.25000 0.75000 0 0 +1.25000 0.25000 1.25000 0 0 +0.75000 -0.25000 1.25000 0 0 + +12 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 -0.25000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +0.75000 0.25000 0.75000 0 0 +1.00000 0.00000 0.00000 0 0 + +48 +0.82916 +3 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 1.25000 1.25000 0 0 + +4 +0.86603 +3 +0.50000 0.50000 0.50000 0 0 +0.75000 0.75000 0.25000 0 0 +1.00000 1.00000 0.00000 0 0 + +24 +0.86603 +3 +0.50000 0.50000 0.50000 0 0 +0.25000 0.75000 -0.25000 0 0 +1.00000 1.00000 0.00000 0 0 + +24 +0.86603 +3 +0.50000 0.50000 0.50000 0 0 +0.75000 0.25000 0.75000 0 0 +1.00000 0.00000 0.00000 0 0 + +6 +0.70711 +4 +0.75000 0.25000 0.75000 0 0 +0.25000 0.25000 1.25000 0 0 +0.25000 -0.25000 0.75000 0 0 +0.75000 -0.25000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.25000 0.75000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.25000 0.25000 1.25000 0 0 +0.75000 -0.25000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.25000 0.75000 0 0 +1.25000 -0.25000 0.75000 0 0 +1.25000 0.25000 1.25000 0 0 +0.75000 -0.25000 1.25000 0 0 + +8 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.75000 0.75000 0.25000 0 0 +0.75000 0.25000 0.75000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +0.82916 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +0.82916 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +0.82916 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 1.25000 1.75000 0 0 +0.25000 1.25000 1.25000 0 0 + diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/go b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/go new file mode 100755 index 0000000..565c120 --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1 -3=0.9 -4=0.83 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/job.in b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/job.in new file mode 100755 index 0000000..9b8dc66 --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C3_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstr.in b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..a257702 --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.25 0.25 0.25 b_A=0.5,b_B=0.5 +0.75 0.75 0.25 b_A=0.5,b_B=0.5 +0.75 0.25 0.75 b_A=0.5,b_B=0.5 +0.25 0.75 0.75 b_A=0.5,b_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 +0.5 0.5 0.5 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..f35218f --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.250000 0.250000 0.250000 b_A=0.500000,b_B=0.500000 +0.250000 -0.250000 -0.250000 b_A=0.500000,b_B=0.500000 +-0.250000 0.250000 -0.250000 b_A=0.500000,b_B=0.500000 +-0.250000 -0.250000 0.250000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 +0.500000 0.500000 0.500000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/sqsparam.in b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..47a2996 --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +3 10 4 8 diff --git a/data/sqsdb/CUPRITE_C3/sqsgen.in b/data/sqsdb/CUPRITE_C3/sqsgen.in new file mode 100644 index 0000000..08cd589 --- /dev/null +++ b/data/sqsdb/CUPRITE_C3/sqsgen.in @@ -0,0 +1,4 @@ +level=0 a=1 b=1 +level=1 a=0.5,0.5 b=1 +level=1 a=1 b=0.5,0.5 +level=2 a=0.5,0.5 b=0.5,0.5 diff --git a/data/sqsdb/CUPT_B22/rndstr.skel b/data/sqsdb/CUPT_B22/rndstr.skel new file mode 100644 index 0000000..8a4415f --- /dev/null +++ b/data/sqsdb/CUPT_B22/rndstr.skel @@ -0,0 +1,9 @@ + +1 1 1.633 90 90 120 + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +0 0 0.5 b + +0 0 0 a diff --git a/data/sqsdb/CUPT_B22/rndstr.skel.sspp b/data/sqsdb/CUPT_B22/rndstr.skel.sspp new file mode 100644 index 0000000..f2817ab --- /dev/null +++ b/data/sqsdb/CUPT_B22/rndstr.skel.sspp @@ -0,0 +1,9 @@ +#const a=1; c=1.633; +{a} {a} {c} {90} {90} {120} + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 +#const b="b"; +{0} {0} {1/2} {b} +#const a="a"; +{0} {0} {0} {a} diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=0_a=1_b=1/bestsqs.out b/data/sqsdb/CUPT_B22/sqsdb_lev=0_a=1_b=1/bestsqs.out new file mode 100644 index 0000000..7f0ede5 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=0_a=1_b=1/bestsqs.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 +-0.000000 0.000000 0.500000 b_A +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=0_a=1_b=1/rndstr.in b/data/sqsdb/CUPT_B22/sqsdb_lev=0_a=1_b=1/rndstr.in new file mode 100644 index 0000000..02fdf81 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=0_a=1_b=1/rndstr.in @@ -0,0 +1,9 @@ + +1 1 1.633 90 90 120 + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +0 0 0.5 b_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out new file mode 100644 index 0000000..7d8d03f --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out @@ -0,0 +1,22 @@ +2 0.793486 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.232292 0.000000 0.000000 0.000000 +2 1.276566 0.000000 0.000000 0.000000 +2 1.586995 0.000000 0.000000 0.000000 +2 1.621607 0.000000 0.000000 0.000000 +2 1.633000 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.875781 0.000000 0.000000 0.000000 +2 1.914860 0.000000 0.000000 0.000000 +2 2.000000 1.000000 0.000000 1.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.232292 0.000000 0.000000 0.000000 +3 1.232292 0.000000 0.000000 0.000000 +3 1.276566 0.000000 0.000000 0.000000 +3 1.276566 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.232292 -0.333333 0.000000 -0.333333 +4 1.232292 0.000000 0.000000 0.000000 +4 1.232292 0.000000 0.000000 0.000000 +Objective_function= -6.510726 diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out new file mode 100644 index 0000000..2259ea4 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +-2.000000 -1.000000 0.000000 +-0.000000 1.000000 0.000000 +0.666664 0.333336 -2.666664 +0.333331 0.666669 -2.333331 a_A +-0.666669 0.666669 -2.333331 a_B +-0.000002 1.000002 -1.999998 a_B +-1.000002 0.000002 -1.999998 a_B +-0.333335 0.333335 -1.666665 a_A +-1.666668 -0.333332 -1.333332 a_A +-1.333335 0.333335 -1.666665 a_B +-0.666668 0.666668 -1.333332 a_B +-0.000001 1.000001 -0.999999 a_A +-1.000001 0.000001 -0.999999 a_B +-0.333334 0.333334 -0.666666 a_A +-1.333334 0.333334 -0.666666 a_A +-0.666667 0.666667 -0.333333 a_A +-1.333336 0.333336 -2.666664 a_A +-1.666667 -0.333333 -0.333333 a_B +-0.333336 0.333336 -2.666664 a_B +0.333331 0.666669 -1.833331 b_A +-0.666669 0.666669 -1.833331 b_A +-0.000002 1.000002 -1.499998 b_A +-1.000002 0.000002 -1.499998 b_A +-0.333335 0.333335 -1.166665 b_A +-1.666668 -0.333332 -0.833332 b_A +-1.333335 0.333335 -1.166665 b_A +-0.666668 0.666668 -0.833332 b_A +-0.000001 1.000001 -0.499999 b_A +-1.000001 0.000001 -0.499999 b_A +-0.333334 0.333334 -0.166666 b_A +-1.333334 0.333334 -0.166666 b_A +-0.000003 1.000003 -2.499997 b_A +-1.333336 0.333336 -2.166664 b_A +-1.000003 0.000003 -2.499997 b_A +-0.333336 0.333336 -2.166664 b_A diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out new file mode 100644 index 0000000..ac308ba --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out @@ -0,0 +1,140 @@ +3 +0.79349 +2 +0.00000 -0.00000 1.00000 0 0 +-0.33333 0.33333 1.33333 0 0 + +3 +1.00000 +2 +0.00000 -0.00000 1.00000 0 0 +0.00000 1.00000 1.00000 0 0 + +3 +1.23228 +2 +0.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.33333 0 0 + +3 +1.27657 +2 +0.00000 -0.00000 1.00000 0 0 +1.33333 0.66667 0.66667 0 0 + +3 +1.58699 +2 +0.00000 -0.00000 1.00000 0 0 +0.66667 -0.66667 0.33333 0 0 + +6 +1.62161 +2 +0.00000 -0.00000 1.00000 0 0 +-0.33333 1.33333 1.33333 0 0 + +1 +1.63300 +2 +0.00000 -0.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +1.73205 +2 +0.00000 -0.00000 1.00000 0 0 +1.00000 2.00000 1.00000 0 0 + +6 +1.87577 +2 +0.00000 -0.00000 1.00000 0 0 +-0.33333 -1.66667 0.33333 0 0 + +6 +1.91486 +2 +0.00000 -0.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +2.00000 +2 +0.00000 -0.00000 1.00000 0 0 +0.00000 2.00000 1.00000 0 0 + +6 +1.00000 +3 +0.00000 -0.00000 1.00000 0 0 +-0.33333 0.33333 1.33333 0 0 +0.00000 1.00000 1.00000 0 0 + +2 +1.00000 +3 +0.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.00000 1.00000 1.00000 0 0 + +6 +1.23228 +3 +0.00000 -0.00000 1.00000 0 0 +0.33333 -0.33333 0.66667 0 0 +0.66667 0.33333 0.33333 0 0 + +6 +1.23228 +3 +0.00000 -0.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.33333 0 0 + +12 +1.27657 +3 +0.00000 -0.00000 1.00000 0 0 +0.33333 -0.33333 0.66667 0 0 +1.33333 0.66667 0.66667 0 0 + +6 +1.27657 +3 +0.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 1.33333 0 0 +1.33333 0.66667 0.66667 0 0 + +2 +1.00000 +4 +0.00000 -0.00000 1.00000 0 0 +0.33333 0.66667 0.66667 0 0 +1.00000 1.00000 1.00000 0 0 +0.00000 1.00000 1.00000 0 0 + +3 +1.23228 +4 +0.00000 -0.00000 1.00000 0 0 +0.33333 0.66667 0.66667 0 0 +0.33333 -0.33333 0.66667 0 0 +0.66667 0.33333 0.33333 0 0 + +6 +1.23228 +4 +0.00000 -0.00000 1.00000 0 0 +0.33333 -0.33333 0.66667 0 0 +1.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.33333 0 0 + +2 +1.23228 +4 +0.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.33333 0 0 + diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/go b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/go new file mode 100755 index 0000000..050e53d --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.5 -4=1.24 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/job.in b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/job.in new file mode 100755 index 0000000..fef5ab5 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J B22_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in new file mode 100644 index 0000000..0e57b84 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in @@ -0,0 +1,9 @@ + +1 1 1.633 90 90 120 + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +0 0 0.5 b_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out new file mode 100644 index 0000000..652a6f2 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.000000 0.000000 0.500000 b_A=1.000000 diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..7d8d03f --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out @@ -0,0 +1,22 @@ +2 0.793486 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.232292 0.000000 0.000000 0.000000 +2 1.276566 0.000000 0.000000 0.000000 +2 1.586995 0.000000 0.000000 0.000000 +2 1.621607 0.000000 0.000000 0.000000 +2 1.633000 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.875781 0.000000 0.000000 0.000000 +2 1.914860 0.000000 0.000000 0.000000 +2 2.000000 1.000000 0.000000 1.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.232292 0.000000 0.000000 0.000000 +3 1.232292 0.000000 0.000000 0.000000 +3 1.276566 0.000000 0.000000 0.000000 +3 1.276566 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.232292 -0.333333 0.000000 -0.333333 +4 1.232292 0.000000 0.000000 0.000000 +4 1.232292 0.000000 0.000000 0.000000 +Objective_function= -6.510726 diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..e70e403 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +-2.000000 -1.000000 0.000000 +-0.000000 1.000000 0.000000 +0.666664 0.333336 -2.666664 +0.333331 0.666669 -1.833331 b_B +-0.666669 0.666669 -1.833331 b_A +-0.000002 1.000002 -1.499998 b_A +-1.000002 0.000002 -1.499998 b_B +-0.333335 0.333335 -1.166665 b_A +-1.666668 -0.333332 -0.833332 b_A +-1.333335 0.333335 -1.166665 b_B +-0.666668 0.666668 -0.833332 b_A +-0.000001 1.000001 -0.499999 b_B +-1.000001 0.000001 -0.499999 b_A +-0.333334 0.333334 -0.166666 b_A +-1.333334 0.333334 -0.166666 b_B +-0.000003 1.000003 -2.499997 b_A +-1.333336 0.333336 -2.166664 b_B +-1.000003 0.000003 -2.499997 b_B +-0.333336 0.333336 -2.166664 b_B +0.333331 0.666669 -2.333331 a_A +-0.666669 0.666669 -2.333331 a_A +-0.000002 1.000002 -1.999998 a_A +-1.000002 0.000002 -1.999998 a_A +-0.333335 0.333335 -1.666665 a_A +-1.666668 -0.333332 -1.333332 a_A +-1.333335 0.333335 -1.666665 a_A +-0.666668 0.666668 -1.333332 a_A +-0.000001 1.000001 -0.999999 a_A +-1.000001 0.000001 -0.999999 a_A +-0.333334 0.333334 -0.666666 a_A +-1.333334 0.333334 -0.666666 a_A +-0.666667 0.666667 -0.333333 a_A +-1.333336 0.333336 -2.666664 a_A +-1.666667 -0.333333 -0.333333 a_A +-0.333336 0.333336 -2.666664 a_A diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..81ecc91 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out @@ -0,0 +1,140 @@ +3 +0.79349 +2 +-0.00000 -0.00000 0.50000 0 0 +0.33333 -0.33333 0.16667 0 0 + +3 +1.00000 +2 +-0.00000 -0.00000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 + +3 +1.23228 +2 +-0.00000 -0.00000 0.50000 0 0 +0.66667 0.33333 -0.16667 0 0 + +3 +1.27657 +2 +-0.00000 -0.00000 0.50000 0 0 +0.66667 1.33333 0.83333 0 0 + +3 +1.58699 +2 +-0.00000 -0.00000 0.50000 0 0 +0.66667 -0.66667 -0.16667 0 0 + +6 +1.62161 +2 +-0.00000 -0.00000 0.50000 0 0 +-0.33333 1.33333 0.83333 0 0 + +1 +1.63300 +2 +-0.00000 -0.00000 0.50000 0 0 +-0.00000 0.00000 -0.50000 0 0 + +3 +1.73205 +2 +-0.00000 -0.00000 0.50000 0 0 +1.00000 2.00000 0.50000 0 0 + +6 +1.87577 +2 +-0.00000 -0.00000 0.50000 0 0 +0.33333 1.66667 1.16667 0 0 + +6 +1.91486 +2 +-0.00000 -0.00000 0.50000 0 0 +0.00000 1.00000 1.50000 0 0 + +3 +2.00000 +2 +-0.00000 -0.00000 0.50000 0 0 +-0.00000 2.00000 0.50000 0 0 + +6 +1.00000 +3 +-0.00000 -0.00000 0.50000 0 0 +-0.33333 0.33333 0.83333 0 0 +-0.00000 1.00000 0.50000 0 0 + +2 +1.00000 +3 +-0.00000 -0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 + +6 +1.23228 +3 +-0.00000 -0.00000 0.50000 0 0 +0.33333 -0.33333 0.16667 0 0 +0.66667 0.33333 -0.16667 0 0 + +6 +1.23228 +3 +-0.00000 -0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +0.66667 0.33333 -0.16667 0 0 + +12 +1.27657 +3 +-0.00000 -0.00000 0.50000 0 0 +-0.33333 0.33333 0.83333 0 0 +0.66667 1.33333 0.83333 0 0 + +6 +1.27657 +3 +-0.00000 -0.00000 0.50000 0 0 +0.33333 0.66667 0.16667 0 0 +0.66667 1.33333 0.83333 0 0 + +2 +1.00000 +4 +-0.00000 -0.00000 0.50000 0 0 +0.33333 0.66667 0.16667 0 0 +1.00000 1.00000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 + +3 +1.23228 +4 +-0.00000 -0.00000 0.50000 0 0 +0.33333 0.66667 0.16667 0 0 +0.33333 -0.33333 0.16667 0 0 +0.66667 0.33333 -0.16667 0 0 + +6 +1.23228 +4 +-0.00000 -0.00000 0.50000 0 0 +0.33333 0.66667 0.16667 0 0 +1.00000 1.00000 0.50000 0 0 +0.66667 0.33333 -0.16667 0 0 + +2 +1.23228 +4 +-0.00000 -0.00000 0.50000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +0.66667 0.33333 -0.16667 0 0 + diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/go b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/go new file mode 100755 index 0000000..050e53d --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.5 -4=1.24 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/job.in b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/job.in new file mode 100755 index 0000000..fef5ab5 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J B22_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..10b48f6 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in @@ -0,0 +1,9 @@ + +1 1 1.633 90 90 120 + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +0 0 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..1df9194 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +-0.000000 -0.000000 0.500000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestcorr.out b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..cedd714 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestcorr.out @@ -0,0 +1,39 @@ +2 0.638290 0.000000 0.000000 0.000000 +2 0.793486 0.000000 0.000000 0.000000 +2 0.793486 0.000000 0.000000 0.000000 +2 0.816500 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.186349 0.000000 0.000000 0.000000 +2 1.232292 0.333333 0.000000 0.333333 +2 1.232292 0.333333 0.000000 0.333333 +2 1.276566 0.000000 0.000000 0.000000 +2 1.276566 0.000000 0.000000 0.000000 +2 1.290997 0.000000 0.000000 0.000000 +2 1.478235 0.000000 0.000000 0.000000 +3 0.793486 0.000000 0.000000 0.000000 +3 0.793486 0.000000 0.000000 0.000000 +3 0.816500 0.000000 0.000000 0.000000 +3 0.816500 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.186349 0.000000 0.000000 0.000000 +3 1.186349 0.000000 0.000000 0.000000 +3 1.186349 0.000000 0.000000 0.000000 +3 1.186349 0.000000 0.000000 0.000000 +4 0.816500 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.166667 0.000000 -0.166667 +4 1.000000 -0.166667 0.000000 -0.166667 +4 1.000000 -0.500000 0.000000 -0.500000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.166667 0.000000 0.166667 +4 1.000000 0.166667 0.000000 0.166667 +4 1.000000 0.500000 0.000000 0.500000 +4 1.000000 0.000000 0.000000 0.000000 +Objective_function= -177.754430 diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestsqs.out b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..8675c8f --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +1.333334 2.666666 0.666666 +1.333334 -1.333334 0.666666 +0.666666 0.333334 -0.666666 +2.333333 2.666667 0.166667 b_B +1.666666 1.333334 -0.166666 b_A +2.333333 1.666667 0.166667 b_B +3.000000 2.000000 0.500000 b_B +1.333333 1.666667 0.166667 b_A +2.000000 2.000000 0.500000 b_A +1.666666 0.333334 -0.166666 b_B +2.333333 0.666667 0.166667 b_A +3.000000 1.000000 0.500000 b_A +0.666666 0.333334 -0.166666 b_B +1.333333 0.666667 0.166667 b_A +2.000000 1.000000 0.500000 b_A +2.666667 1.333333 0.833333 b_B +2.333333 -0.333333 0.166667 b_A +1.333333 -0.333333 0.166667 b_B +2.000000 -0.000000 0.500000 b_B +1.666667 2.333333 0.333333 a_A +1.000000 1.000000 -0.000000 a_A +1.666667 1.333333 0.333333 a_B +2.333334 1.666666 0.666666 a_B +2.666667 0.333333 0.333333 a_A +2.000000 2.000000 -0.000000 a_A +1.000000 0.000000 -0.000000 a_A +1.666667 0.333333 0.333333 a_B +2.333334 0.666666 0.666666 a_B +3.333334 1.666666 0.666666 a_A +1.333333 0.666667 -0.333333 a_B +2.000000 1.000000 -0.000000 a_B +2.666667 1.333333 0.333333 a_A +1.666667 -0.666667 0.333333 a_A +2.666667 2.333333 0.333333 a_B +2.000000 0.000000 -0.000000 a_B diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/clusters.out b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..4659d72 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/clusters.out @@ -0,0 +1,264 @@ +6 +0.63828 +2 +0.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.83333 0 0 + +3 +0.79349 +2 +-0.00000 -0.00000 0.50000 0 0 +-0.33333 0.33333 0.83333 0 0 + +3 +0.79349 +2 +0.00000 -0.00000 1.00000 0 0 +0.33333 -0.33333 0.66667 0 0 + +2 +0.81650 +2 +0.00000 -0.00000 1.00000 0 0 +-0.00000 -0.00000 0.50000 0 0 + +3 +1.00000 +2 +0.00000 -0.00000 1.00000 0 0 +0.00000 1.00000 1.00000 0 0 + +3 +1.00000 +2 +-0.00000 -0.00000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 + +6 +1.18634 +2 +-0.00000 -0.00000 0.50000 0 0 +-0.66667 0.66667 0.66667 0 0 + +3 +1.23228 +2 +0.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.33333 0 0 + +3 +1.23228 +2 +-0.00000 -0.00000 0.50000 0 0 +0.66667 0.33333 -0.16667 0 0 + +3 +1.27657 +2 +0.00000 -0.00000 1.00000 0 0 +1.33333 0.66667 0.66667 0 0 + +3 +1.27657 +2 +-0.00000 -0.00000 0.50000 0 0 +0.66667 1.33333 0.83333 0 0 + +12 +1.29099 +2 +0.00000 -0.00000 1.00000 0 0 +1.00000 -0.00000 0.50000 0 0 + +6 +1.47824 +2 +0.00000 -0.00000 1.00000 0 0 +0.33333 -0.33333 0.16667 0 0 + +6 +0.79349 +3 +-0.00000 -0.00000 0.50000 0 0 +-0.66667 -0.33333 0.66667 0 0 +-0.33333 0.33333 0.83333 0 0 + +6 +0.79349 +3 +0.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.83333 0 0 +0.33333 -0.33333 0.66667 0 0 + +6 +0.81650 +3 +0.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.83333 0 0 +-0.00000 -0.00000 0.50000 0 0 + +6 +0.81650 +3 +-0.00000 -0.00000 0.50000 0 0 +-0.66667 -0.33333 0.66667 0 0 +0.00000 -0.00000 1.00000 0 0 + +6 +1.00000 +3 +0.00000 -0.00000 1.00000 0 0 +0.33333 0.66667 1.16667 0 0 +0.00000 1.00000 1.00000 0 0 + +6 +1.00000 +3 +0.00000 -0.00000 1.00000 0 0 +-0.33333 0.33333 1.33333 0 0 +0.00000 1.00000 1.00000 0 0 + +2 +1.00000 +3 +0.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.00000 1.00000 1.00000 0 0 + +6 +1.00000 +3 +-0.00000 -0.00000 0.50000 0 0 +0.33333 0.66667 0.66667 0 0 +-0.00000 1.00000 0.50000 0 0 + +6 +1.00000 +3 +-0.00000 -0.00000 0.50000 0 0 +-0.33333 0.33333 0.83333 0 0 +-0.00000 1.00000 0.50000 0 0 + +2 +1.00000 +3 +-0.00000 -0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 + +12 +1.18634 +3 +-0.00000 -0.00000 0.50000 0 0 +-0.66667 -0.33333 0.66667 0 0 +-0.66667 0.66667 0.66667 0 0 + +6 +1.18634 +3 +-0.00000 -0.00000 0.50000 0 0 +-0.33333 0.33333 0.33333 0 0 +-0.66667 0.66667 0.66667 0 0 + +12 +1.18634 +3 +0.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.83333 0 0 +0.66667 -0.66667 0.83333 0 0 + +6 +1.18634 +3 +0.00000 -0.00000 1.00000 0 0 +0.33333 -0.33333 1.16667 0 0 +0.66667 -0.66667 0.83333 0 0 + +12 +0.81650 +4 +0.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.83333 0 0 +0.33333 -0.33333 0.66667 0 0 +-0.00000 -0.00000 0.50000 0 0 + +3 +1.00000 +4 +0.00000 -0.00000 1.00000 0 0 +-0.33333 0.33333 0.83333 0 0 +0.33333 0.66667 1.16667 0 0 +0.00000 1.00000 1.00000 0 0 + +6 +1.00000 +4 +0.00000 -0.00000 1.00000 0 0 +0.33333 0.66667 1.16667 0 0 +-0.33333 0.33333 1.33333 0 0 +0.00000 1.00000 1.00000 0 0 + +6 +1.00000 +4 +0.00000 -0.00000 1.00000 0 0 +-0.33333 0.33333 0.83333 0 0 +-0.33333 0.33333 1.33333 0 0 +0.00000 1.00000 1.00000 0 0 + +2 +1.00000 +4 +0.00000 -0.00000 1.00000 0 0 +0.33333 0.66667 1.16667 0 0 +1.00000 1.00000 1.00000 0 0 +0.00000 1.00000 1.00000 0 0 + +2 +1.00000 +4 +0.00000 -0.00000 1.00000 0 0 +0.33333 0.66667 0.66667 0 0 +1.00000 1.00000 1.00000 0 0 +0.00000 1.00000 1.00000 0 0 + +3 +1.00000 +4 +-0.00000 -0.00000 0.50000 0 0 +-0.33333 0.33333 0.33333 0 0 +0.33333 0.66667 0.66667 0 0 +-0.00000 1.00000 0.50000 0 0 + +6 +1.00000 +4 +-0.00000 -0.00000 0.50000 0 0 +0.33333 0.66667 0.66667 0 0 +-0.33333 0.33333 0.83333 0 0 +-0.00000 1.00000 0.50000 0 0 + +6 +1.00000 +4 +-0.00000 -0.00000 0.50000 0 0 +-0.33333 0.33333 0.33333 0 0 +-0.33333 0.33333 0.83333 0 0 +-0.00000 1.00000 0.50000 0 0 + +2 +1.00000 +4 +-0.00000 -0.00000 0.50000 0 0 +0.33333 0.66667 0.66667 0 0 +1.00000 1.00000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 + +2 +1.00000 +4 +-0.00000 -0.00000 0.50000 0 0 +0.33333 0.66667 0.16667 0 0 +1.00000 1.00000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 + diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/go b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/go new file mode 100755 index 0000000..1714550 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.5 -3=1.2 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/job.in b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/job.in new file mode 100755 index 0000000..8bc14fa --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J B22_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstr.in b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..a88bead --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstr.in @@ -0,0 +1,9 @@ + +1 1 1.633 90 90 120 + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +0 0 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..d8f692c --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +-0.000000 -0.000000 0.500000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/sqsparam.in b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..a90cc8b --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 10 0 3 diff --git a/data/sqsdb/CUPT_B22/sqsgen.in b/data/sqsdb/CUPT_B22/sqsgen.in new file mode 100644 index 0000000..08cd589 --- /dev/null +++ b/data/sqsdb/CUPT_B22/sqsgen.in @@ -0,0 +1,4 @@ +level=0 a=1 b=1 +level=1 a=0.5,0.5 b=1 +level=1 a=1 b=0.5,0.5 +level=2 a=0.5,0.5 b=0.5,0.5 diff --git a/data/sqsdb/CUPT_L11/equiv.in b/data/sqsdb/CUPT_L11/equiv.in new file mode 100644 index 0000000..efc73ad --- /dev/null +++ b/data/sqsdb/CUPT_L11/equiv.in @@ -0,0 +1 @@ +a=b diff --git a/data/sqsdb/CUPT_L11/parentlat.in b/data/sqsdb/CUPT_L11/parentlat.in new file mode 100644 index 0000000..3fd5b88 --- /dev/null +++ b/data/sqsdb/CUPT_L11/parentlat.in @@ -0,0 +1 @@ +FCC_A1/sqs_lev=0_a_ diff --git a/data/sqsdb/CUPT_L11/rndstr.skel b/data/sqsdb/CUPT_L11/rndstr.skel new file mode 100644 index 0000000..a09fa48 --- /dev/null +++ b/data/sqsdb/CUPT_L11/rndstr.skel @@ -0,0 +1,9 @@ + +0.707107 0.707107 3.4641 90 90 120 + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +0 0 0.5 b + +0 0 0 a diff --git a/data/sqsdb/CUPT_L11/rndstr.skel.sspp b/data/sqsdb/CUPT_L11/rndstr.skel.sspp new file mode 100644 index 0000000..43d4905 --- /dev/null +++ b/data/sqsdb/CUPT_L11/rndstr.skel.sspp @@ -0,0 +1,9 @@ +#const a=sqrt(2)/2; c=2.*sqrt(3.); +{a} {a} {c} {90} {90} {120} + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 +#const B="b"; +{0} {0} {1/2} {B} +#const A="a"; +{0} {0} {0} {A} diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=0_a=1_b=1/bestsqs.out b/data/sqsdb/CUPT_L11/sqsdb_lev=0_a=1_b=1/bestsqs.out new file mode 100644 index 0000000..2fff453 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=0_a=1_b=1/bestsqs.out @@ -0,0 +1,8 @@ +0.707107 0.000000 0.000000 +-0.353553 0.612373 0.000000 +0.000000 0.000000 3.464100 +0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 +0.000000 -0.000000 0.500000 b_A +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=0_a=1_b=1/rndstr.in b/data/sqsdb/CUPT_L11/sqsdb_lev=0_a=1_b=1/rndstr.in new file mode 100644 index 0000000..647060a --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=0_a=1_b=1/rndstr.in @@ -0,0 +1,9 @@ + +0.707107 0.707107 3.4641 90 90 120 + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +0 0 0.5 b_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out new file mode 100644 index 0000000..990d06b --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out @@ -0,0 +1,42 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.224732 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414203 0.000000 0.000000 0.000000 +2 1.414214 -0.166667 0.000000 -0.166667 +2 1.581128 0.083333 0.000000 0.083333 +2 1.870819 0.083333 0.000000 0.083333 +2 1.870829 -0.166667 0.000000 -0.166667 +2 1.999990 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.224732 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.414203 0.000000 0.000000 0.000000 +3 1.414203 0.000000 0.000000 0.000000 +3 1.414203 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +4 1.224732 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414203 -0.333333 0.000000 -0.333333 +4 1.414203 -0.166667 0.000000 -0.166667 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 0.166667 0.000000 0.166667 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 -0.166667 0.000000 -0.166667 +4 1.414214 -0.166667 0.000000 -0.166667 +Objective_function= -9.202474 diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out new file mode 100644 index 0000000..1334f00 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out @@ -0,0 +1,38 @@ +0.707107 0.000000 0.000000 +-0.353553 0.612373 0.000000 +0.000000 0.000000 3.464100 +-1.333333 0.333333 0.333333 +0.666667 -1.666667 0.333333 +4.000000 4.000000 0.000000 +-0.333334 0.333332 0.333334 a_A +0.666666 0.333332 0.333334 a_A +0.333333 -0.333335 0.666667 a_A +2.666666 3.333332 0.333334 a_B +0.666666 -0.666668 0.333334 a_B +3.666666 3.333332 0.333334 a_B +3.333333 2.666665 0.666667 a_B +1.666666 2.333332 0.333334 a_B +3.666666 2.333332 0.333334 a_A +2.666666 2.333332 0.333334 a_B +2.333333 1.666665 0.666667 a_B +0.666666 1.333332 0.333334 a_B +2.666666 1.333332 0.333334 a_A +1.666666 1.333332 0.333334 a_A +1.333333 0.666665 0.666667 a_A +1.666666 0.333332 0.333334 a_A +3.000000 3.000000 0.500000 b_A +0.000000 -1.000000 0.500000 b_A +0.333333 -0.333333 0.166667 b_A +2.000000 2.000000 0.500000 b_A +3.333333 3.666667 0.166667 b_A +3.000000 2.000000 0.500000 b_A +3.333333 2.666667 0.166667 b_A +1.000000 1.000000 0.500000 b_A +2.333333 2.666667 0.166667 b_A +2.000000 1.000000 0.500000 b_A +2.333333 1.666667 0.166667 b_A +0.000000 0.000000 0.500000 b_A +1.333333 1.666667 0.166667 b_A +1.000000 -0.000000 0.500000 b_A +1.333333 0.666667 0.166667 b_A +0.333333 0.666667 0.166667 b_A diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out new file mode 100644 index 0000000..5c333d0 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out @@ -0,0 +1,293 @@ +3 +0.70711 +2 +0.00000 -0.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 + +3 +1.22474 +2 +0.00000 -0.00000 1.00000 0 0 +0.33333 -0.33333 0.66667 0 0 + +3 +1.22475 +2 +0.00000 -0.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +3 +1.41421 +2 +0.00000 -0.00000 1.00000 0 0 +1.33333 0.66667 0.66667 0 0 + +3 +1.41421 +2 +0.00000 -0.00000 1.00000 0 0 +2.00000 -0.00000 1.00000 0 0 + +6 +1.58114 +2 +0.00000 -0.00000 1.00000 0 0 +1.33333 -0.33333 0.66667 0 0 + +6 +1.87083 +2 +0.00000 -0.00000 1.00000 0 0 +2.33333 0.66667 0.66667 0 0 + +6 +1.87083 +2 +0.00000 -0.00000 1.00000 0 0 +-1.00000 2.00000 1.00000 0 0 + +3 +2.00000 +2 +0.00000 -0.00000 1.00000 0 0 +-1.33333 1.33333 1.33333 0 0 + +2 +0.70711 +3 +0.00000 -0.00000 1.00000 0 0 +-1.00000 -0.00000 1.00000 0 0 +0.00000 1.00000 1.00000 0 0 + +6 +1.22474 +3 +0.00000 -0.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.33333 -0.33333 0.66667 0 0 + +6 +1.22475 +3 +0.00000 -0.00000 1.00000 0 0 +0.00000 1.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +2 +1.22475 +3 +0.00000 -0.00000 1.00000 0 0 +-2.00000 -1.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +12 +1.41421 +3 +0.00000 -0.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.33333 0.66667 0.66667 0 0 + +6 +1.41421 +3 +0.00000 -0.00000 1.00000 0 0 +-0.66667 -0.33333 0.66667 0 0 +1.33333 0.66667 0.66667 0 0 + +6 +1.41421 +3 +0.00000 -0.00000 1.00000 0 0 +-0.66667 -1.33333 0.66667 0 0 +1.33333 0.66667 0.66667 0 0 + +3 +1.41421 +3 +0.00000 -0.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +2.00000 -0.00000 1.00000 0 0 + +12 +1.41421 +3 +0.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +2.00000 -0.00000 1.00000 0 0 + +2 +1.41421 +3 +0.00000 -0.00000 1.00000 0 0 +0.00000 -2.00000 1.00000 0 0 +2.00000 -0.00000 1.00000 0 0 + +12 +1.58114 +3 +0.00000 -0.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.33333 -0.33333 0.66667 0 0 + +6 +1.58114 +3 +0.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.33333 -0.33333 0.66667 0 0 + +12 +1.58114 +3 +0.00000 -0.00000 1.00000 0 0 +0.00000 -1.00000 1.00000 0 0 +1.33333 -0.33333 0.66667 0 0 + +12 +1.58114 +3 +0.00000 -0.00000 1.00000 0 0 +0.33333 0.66667 0.66667 0 0 +1.33333 -0.33333 0.66667 0 0 + +12 +1.58114 +3 +0.00000 -0.00000 1.00000 0 0 +-0.66667 -0.33333 0.66667 0 0 +1.33333 -0.33333 0.66667 0 0 + +12 +1.58114 +3 +0.00000 -0.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +1.33333 -0.33333 0.66667 0 0 + +6 +1.58114 +3 +0.00000 -0.00000 1.00000 0 0 +0.00000 -2.00000 1.00000 0 0 +1.33333 -0.33333 0.66667 0 0 + +2 +1.22474 +4 +0.00000 -0.00000 1.00000 0 0 +0.00000 -1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.33333 -0.33333 0.66667 0 0 + +3 +1.22475 +4 +0.00000 -0.00000 1.00000 0 0 +-1.00000 -0.00000 1.00000 0 0 +0.00000 1.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +2 +1.22475 +4 +0.00000 -0.00000 1.00000 0 0 +-1.00000 -0.00000 1.00000 0 0 +-2.00000 -1.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +6 +1.41421 +4 +0.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.33333 0.66667 0.66667 0 0 + +6 +1.41421 +4 +0.00000 -0.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.33333 -0.33333 0.66667 0 0 +1.33333 0.66667 0.66667 0 0 + +3 +1.41421 +4 +0.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.33333 -0.33333 0.66667 0 0 +1.33333 0.66667 0.66667 0 0 + +12 +1.41421 +4 +0.00000 -0.00000 1.00000 0 0 +-0.66667 -0.33333 0.66667 0 0 +0.33333 -0.33333 0.66667 0 0 +1.33333 0.66667 0.66667 0 0 + +6 +1.41421 +4 +0.00000 -0.00000 1.00000 0 0 +0.33333 -0.33333 0.66667 0 0 +-0.66667 -1.33333 0.66667 0 0 +1.33333 0.66667 0.66667 0 0 + +12 +1.41421 +4 +0.00000 -0.00000 1.00000 0 0 +0.33333 0.66667 0.66667 0 0 +-0.66667 -1.33333 0.66667 0 0 +1.33333 0.66667 0.66667 0 0 + +2 +1.41421 +4 +0.00000 -0.00000 1.00000 0 0 +-0.66667 0.66667 0.66667 0 0 +-0.66667 -1.33333 0.66667 0 0 +1.33333 0.66667 0.66667 0 0 + +12 +1.41421 +4 +0.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +2.00000 -0.00000 1.00000 0 0 + +6 +1.41421 +4 +0.00000 -0.00000 1.00000 0 0 +0.00000 -1.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +2.00000 -0.00000 1.00000 0 0 + +3 +1.41421 +4 +0.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.00000 -1.00000 1.00000 0 0 +2.00000 -0.00000 1.00000 0 0 + +6 +1.41421 +4 +0.00000 -0.00000 1.00000 0 0 +0.00000 -1.00000 1.00000 0 0 +1.00000 -1.00000 1.00000 0 0 +2.00000 -0.00000 1.00000 0 0 + +6 +1.41421 +4 +0.00000 -0.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.00000 -2.00000 1.00000 0 0 +2.00000 -0.00000 1.00000 0 0 + diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/go b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/go new file mode 100644 index 0000000..d0f5a13 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/go @@ -0,0 +1,5 @@ +mcsqs.exe -2=2.05 -3=1.6 -4=1.5 +mcsqs.exe -n=32 -wd=2 -wn=0.75 -wr=2 + +cat ../sqsdb_lev\=1_a\=1_b\=0.5\,0.5/bestsqs.out | cellcvrt.exe -sh=0,0,0.5 -wi | sed -e 's/b_/c_/g' -e 's/a_/b_/g' | sed 's/c_/a_/g' > bestsqs.out +cp ../sqsdb_lev\=1_a\=1_b\=0.5\,0.5/bestcorr.out . diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in new file mode 100644 index 0000000..3f98f97 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in @@ -0,0 +1,9 @@ + +0.707107 0.707107 3.4641 90 90 120 + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +0 0 0.5 b_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out new file mode 100644 index 0000000..3ff8cd0 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out @@ -0,0 +1,10 @@ +0.707107 0.000000 0.000000 +-0.353553 0.612373 0.000000 +0.000000 0.000000 3.464100 +0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +0.000000 0.000002 0.000000 a_A=0.500000,a_B=0.500000 + +0.000000 -0.000000 0.500000 b_A=1.000000 diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..fd114dd --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out @@ -0,0 +1,42 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.224732 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414203 0.000000 0.000000 0.000000 +2 1.414214 -0.166667 0.000000 -0.166667 +2 1.581128 0.083333 0.000000 0.083333 +2 1.870819 0.083333 0.000000 0.083333 +2 1.870829 -0.166667 0.000000 -0.166667 +2 1.999990 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.224732 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.414203 0.000000 0.000000 0.000000 +3 1.414203 0.000000 0.000000 0.000000 +3 1.414203 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +3 1.581128 0.000000 0.000000 0.000000 +4 1.224732 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414203 -0.333333 0.000000 -0.333333 +4 1.414203 -0.166667 0.000000 -0.166667 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 0.166667 0.000000 0.166667 +4 1.414214 -0.166667 0.000000 -0.166667 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 -0.166667 0.000000 -0.166667 +Objective_function= -9.202474 diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..3e17130 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +0.707107 0.000000 0.000000 +-0.353553 0.612373 0.000000 +0.000000 0.000000 3.464100 +-1.333333 0.333333 0.333333 +0.666667 -1.666667 0.333333 +4.000000 4.000000 0.000000 +3.000000 2.999998 0.500000 b_A +0.000000 -1.000002 0.500000 b_A +0.333333 -0.333335 0.166667 b_A +2.000000 1.999998 0.500000 b_B +3.333333 3.666665 0.166667 b_B +3.000000 1.999998 0.500000 b_B +3.333333 2.666665 0.166667 b_B +1.000000 0.999998 0.500000 b_B +2.333333 2.666665 0.166667 b_A +2.000000 0.999998 0.500000 b_B +2.333333 1.666665 0.166667 b_B +-0.000000 -0.000002 0.500000 b_B +1.333333 1.666665 0.166667 b_A +1.000000 -0.000002 0.500000 b_A +1.333333 0.666665 0.166667 b_A +0.333333 0.666665 0.166667 b_A +2.333334 1.666666 0.666666 a_A +2.666667 3.333333 0.333333 a_A +3.666667 2.333333 0.333333 a_A +1.333334 0.666666 0.666666 a_A +2.666667 2.333333 0.333333 a_A +1.666667 2.333333 0.333333 a_A +2.666667 1.333333 0.333333 a_A +0.333334 -0.333334 0.666666 a_A +1.666667 1.333333 0.333333 a_A +0.666667 1.333333 0.333333 a_A +1.666667 0.333333 0.333333 a_A +3.333334 2.666666 0.666666 a_A +0.666667 0.333333 0.333333 a_A +-0.333333 0.333333 0.333333 a_A +0.666667 -0.666667 0.333333 a_A +3.666667 3.333333 0.333333 a_A diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..4fa8758 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out @@ -0,0 +1,293 @@ +3 +0.70711 +2 +-0.00000 0.00000 0.50000 0 0 +-1.00000 0.00000 0.50000 0 0 + +3 +1.22474 +2 +-0.00000 0.00000 0.50000 0 0 +0.33333 -0.33333 0.16667 0 0 + +3 +1.22475 +2 +-0.00000 0.00000 0.50000 0 0 +-1.00000 1.00000 0.50000 0 0 + +3 +1.41421 +2 +-0.00000 0.00000 0.50000 0 0 +1.33333 0.66667 0.16667 0 0 + +3 +1.41421 +2 +-0.00000 0.00000 0.50000 0 0 +2.00000 0.00000 0.50000 0 0 + +6 +1.58114 +2 +-0.00000 0.00000 0.50000 0 0 +1.33333 -0.33333 0.16667 0 0 + +6 +1.87083 +2 +-0.00000 0.00000 0.50000 0 0 +2.33333 0.66667 0.16667 0 0 + +6 +1.87083 +2 +-0.00000 0.00000 0.50000 0 0 +-1.00000 2.00000 0.50000 0 0 + +3 +2.00000 +2 +-0.00000 0.00000 0.50000 0 0 +1.33333 -1.33333 0.16667 0 0 + +2 +0.70711 +3 +-0.00000 0.00000 0.50000 0 0 +0.00000 -1.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 + +6 +1.22474 +3 +-0.00000 0.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 +0.33333 -0.33333 0.16667 0 0 + +6 +1.22475 +3 +-0.00000 0.00000 0.50000 0 0 +-1.00000 0.00000 0.50000 0 0 +-1.00000 1.00000 0.50000 0 0 + +2 +1.22475 +3 +-0.00000 0.00000 0.50000 0 0 +-2.00000 -1.00000 0.50000 0 0 +-1.00000 1.00000 0.50000 0 0 + +12 +1.41421 +3 +-0.00000 0.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 +1.33333 0.66667 0.16667 0 0 + +6 +1.41421 +3 +-0.00000 0.00000 0.50000 0 0 +-0.66667 -0.33333 0.16667 0 0 +1.33333 0.66667 0.16667 0 0 + +6 +1.41421 +3 +-0.00000 0.00000 0.50000 0 0 +-0.66667 -1.33333 0.16667 0 0 +1.33333 0.66667 0.16667 0 0 + +3 +1.41421 +3 +-0.00000 0.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 +2.00000 0.00000 0.50000 0 0 + +12 +1.41421 +3 +-0.00000 0.00000 0.50000 0 0 +0.00000 -1.00000 0.50000 0 0 +2.00000 0.00000 0.50000 0 0 + +2 +1.41421 +3 +-0.00000 0.00000 0.50000 0 0 +0.00000 -2.00000 0.50000 0 0 +2.00000 0.00000 0.50000 0 0 + +12 +1.58114 +3 +-0.00000 0.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 +1.33333 -0.33333 0.16667 0 0 + +12 +1.58114 +3 +-0.00000 0.00000 0.50000 0 0 +0.00000 -1.00000 0.50000 0 0 +1.33333 -0.33333 0.16667 0 0 + +6 +1.58114 +3 +-0.00000 0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +1.33333 -0.33333 0.16667 0 0 + +12 +1.58114 +3 +-0.00000 0.00000 0.50000 0 0 +0.33333 0.66667 0.16667 0 0 +1.33333 -0.33333 0.16667 0 0 + +12 +1.58114 +3 +-0.00000 0.00000 0.50000 0 0 +-0.66667 -0.33333 0.16667 0 0 +1.33333 -0.33333 0.16667 0 0 + +12 +1.58114 +3 +-0.00000 0.00000 0.50000 0 0 +2.00000 1.00000 0.50000 0 0 +1.33333 -0.33333 0.16667 0 0 + +6 +1.58114 +3 +-0.00000 0.00000 0.50000 0 0 +0.00000 -2.00000 0.50000 0 0 +1.33333 -0.33333 0.16667 0 0 + +2 +1.22474 +4 +-0.00000 0.00000 0.50000 0 0 +0.00000 -1.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 +0.33333 -0.33333 0.16667 0 0 + +3 +1.22475 +4 +-0.00000 0.00000 0.50000 0 0 +0.00000 1.00000 0.50000 0 0 +-1.00000 0.00000 0.50000 0 0 +-1.00000 1.00000 0.50000 0 0 + +2 +1.22475 +4 +-0.00000 0.00000 0.50000 0 0 +-1.00000 0.00000 0.50000 0 0 +-2.00000 -1.00000 0.50000 0 0 +-1.00000 1.00000 0.50000 0 0 + +6 +1.41421 +4 +-0.00000 0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 +1.33333 0.66667 0.16667 0 0 + +6 +1.41421 +4 +-0.00000 0.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 +0.33333 -0.33333 0.16667 0 0 +1.33333 0.66667 0.16667 0 0 + +3 +1.41421 +4 +-0.00000 0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +0.33333 -0.33333 0.16667 0 0 +1.33333 0.66667 0.16667 0 0 + +12 +1.41421 +4 +-0.00000 0.00000 0.50000 0 0 +-0.66667 -0.33333 0.16667 0 0 +0.33333 -0.33333 0.16667 0 0 +1.33333 0.66667 0.16667 0 0 + +6 +1.41421 +4 +-0.00000 0.00000 0.50000 0 0 +0.33333 -0.33333 0.16667 0 0 +-0.66667 -1.33333 0.16667 0 0 +1.33333 0.66667 0.16667 0 0 + +12 +1.41421 +4 +-0.00000 0.00000 0.50000 0 0 +0.33333 0.66667 0.16667 0 0 +-0.66667 -1.33333 0.16667 0 0 +1.33333 0.66667 0.16667 0 0 + +2 +1.41421 +4 +-0.00000 0.00000 0.50000 0 0 +-0.66667 0.66667 0.16667 0 0 +-0.66667 -1.33333 0.16667 0 0 +1.33333 0.66667 0.16667 0 0 + +12 +1.41421 +4 +-0.00000 0.00000 0.50000 0 0 +0.00000 -1.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 +2.00000 0.00000 0.50000 0 0 + +6 +1.41421 +4 +-0.00000 0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +0.00000 -1.00000 0.50000 0 0 +2.00000 0.00000 0.50000 0 0 + +6 +1.41421 +4 +-0.00000 0.00000 0.50000 0 0 +0.00000 -1.00000 0.50000 0 0 +1.00000 -1.00000 0.50000 0 0 +2.00000 0.00000 0.50000 0 0 + +3 +1.41421 +4 +-0.00000 0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 -1.00000 0.50000 0 0 +2.00000 0.00000 0.50000 0 0 + +6 +1.41421 +4 +-0.00000 0.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 +0.00000 -2.00000 0.50000 0 0 +2.00000 0.00000 0.50000 0 0 + diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/go b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/go new file mode 100644 index 0000000..991c7f3 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/go @@ -0,0 +1,2 @@ +mcsqs.exe -2=2.05 -3=1.6 -4=1.5 +mcsqs.exe -n=32 -wd=2 -wn=0.75 -wr=2 diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..9480c2a --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in @@ -0,0 +1,9 @@ + +0.707107 0.707107 3.4641 90 90 120 + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +0 0 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..b18af48 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,10 @@ +0.707107 0.000000 0.000000 +-0.353553 0.612373 0.000000 +0.000000 0.000000 3.464100 +0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +-0.000000 -0.000002 0.500000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestcorr.out b/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..606602e --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestcorr.out @@ -0,0 +1,29 @@ +2 0.707117 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 1.000010 0.000000 0.000000 0.000000 +2 1.224732 -0.333333 0.000000 -0.333333 +2 1.224732 -0.083333 0.000000 -0.083333 +2 1.224753 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414203 0.000000 0.000000 0.000000 +2 1.414203 0.250000 0.000000 0.250000 +2 1.414214 1.000000 0.000000 1.000000 +2 1.414214 1.000000 0.000000 1.000000 +2 1.581128 -0.333333 0.000000 -0.333333 +2 1.581128 -0.083333 0.000000 -0.083333 +2 1.581147 0.000000 0.000000 0.000000 +3 0.707117 0.000000 0.000000 0.000000 +3 0.707117 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000010 0.000000 0.000000 0.000000 +3 1.000010 0.000000 0.000000 0.000000 +4 0.707117 0.000000 0.000000 0.000000 +4 0.707117 0.000000 0.000000 0.000000 +4 1.000010 0.000000 0.000000 0.000000 +4 1.000010 0.000000 0.000000 0.000000 +4 1.000010 -0.333333 0.000000 -0.333333 +4 1.000010 0.000000 0.000000 0.000000 +Objective_function= -7.524454 diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestsqs.out b/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..4a41298 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +0.707107 0.000000 0.000000 +-0.353553 0.612373 0.000000 +0.000000 0.000000 3.464100 +0.666668 1.333332 1.333332 +-1.333332 -0.666668 1.333332 +0.666668 -0.666668 1.333332 +-0.000000 -0.000002 0.500000 b_B +0.333334 0.666664 1.166666 b_A +0.333334 -0.333336 1.166666 b_A +-0.666666 -0.333336 1.166666 b_A +0.000001 -0.000003 1.499999 b_B +0.666668 0.333330 1.833332 b_A +-0.333332 0.333330 1.833332 b_B +0.333335 0.666663 2.166665 b_A +-0.333332 -0.666670 1.833332 b_B +0.333335 -0.333337 2.166665 b_A +-0.666665 -0.333337 2.166665 b_A +0.000002 -0.000004 2.499998 b_B +0.666669 0.333329 2.833331 b_B +-0.333331 0.333329 2.833331 b_B +-0.333331 -0.666671 2.833331 b_A +0.000003 -0.000005 3.499997 b_B +0.000004 -0.000004 3.999996 a_A +-0.333330 -0.666670 3.333330 a_B +-0.333330 0.333330 3.333330 a_A +0.666670 0.333330 3.333330 a_A +0.000001 -0.000001 0.999999 a_B +-0.666664 -0.333336 2.666664 a_A +0.333336 -0.333336 2.666664 a_B +0.333335 0.666665 1.666665 a_B +0.333336 0.666664 2.666664 a_A +0.333335 -0.333335 1.666665 a_B +-0.666665 -0.333335 1.666665 a_B +0.000002 -0.000002 1.999998 a_A +0.666669 0.333331 2.333331 a_A +-0.333331 0.333331 2.333331 a_B +-0.333331 -0.666669 2.333331 a_B +0.000003 -0.000003 2.999997 a_A diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/clusters.out b/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..65fecc2 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/clusters.out @@ -0,0 +1,186 @@ +6 +0.70710 +2 +0.00000 -0.00000 1.00000 0 0 +-0.33333 -0.66667 0.83333 0 0 + +3 +0.70711 +2 +0.00000 -0.00000 1.00000 0 0 +0.00000 1.00000 1.00000 0 0 + +3 +0.70711 +2 +-0.00000 0.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 + +6 +1.00000 +2 +0.00000 -0.00000 1.00000 0 0 +0.66667 -0.66667 0.83333 0 0 + +3 +1.22474 +2 +0.00000 -0.00000 1.00000 0 0 +0.33333 -0.33333 0.66667 0 0 + +3 +1.22474 +2 +-0.00000 0.00000 0.50000 0 0 +0.33333 -0.33333 0.16667 0 0 + +12 +1.22474 +2 +0.00000 -0.00000 1.00000 0 0 +1.66667 0.33333 0.83333 0 0 + +3 +1.22475 +2 +0.00000 -0.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +3 +1.22475 +2 +-0.00000 0.00000 0.50000 0 0 +-1.00000 1.00000 0.50000 0 0 + +3 +1.41421 +2 +0.00000 -0.00000 1.00000 0 0 +1.33333 0.66667 0.66667 0 0 + +3 +1.41421 +2 +-0.00000 0.00000 0.50000 0 0 +1.33333 0.66667 0.16667 0 0 + +3 +1.41421 +2 +0.00000 -0.00000 1.00000 0 0 +2.00000 -0.00000 1.00000 0 0 + +3 +1.41421 +2 +-0.00000 0.00000 0.50000 0 0 +2.00000 0.00000 0.50000 0 0 + +6 +1.58114 +2 +0.00000 -0.00000 1.00000 0 0 +1.33333 -0.33333 0.66667 0 0 + +6 +1.58114 +2 +-0.00000 0.00000 0.50000 0 0 +1.33333 -0.33333 0.16667 0 0 + +12 +1.58114 +2 +0.00000 -0.00000 1.00000 0 0 +1.66667 -0.66667 0.83333 0 0 + +6 +0.70710 +3 +0.00000 -0.00000 1.00000 0 0 +-0.33333 -0.66667 0.83333 0 0 +0.66667 0.33333 0.83333 0 0 + +6 +0.70710 +3 +0.00000 -0.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.83333 0 0 + +2 +0.70711 +3 +0.00000 -0.00000 1.00000 0 0 +-1.00000 -0.00000 1.00000 0 0 +0.00000 1.00000 1.00000 0 0 + +2 +0.70711 +3 +-0.00000 0.00000 0.50000 0 0 +0.00000 -1.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 + +12 +1.00000 +3 +0.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.83333 0 0 +0.66667 -0.66667 0.83333 0 0 + +12 +1.00000 +3 +0.00000 -0.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.66667 -0.66667 0.83333 0 0 + +2 +0.70710 +4 +0.00000 -0.00000 1.00000 0 0 +-0.33333 0.33333 0.83333 0 0 +-0.33333 -0.66667 0.83333 0 0 +0.66667 0.33333 0.83333 0 0 + +2 +0.70710 +4 +0.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.83333 0 0 + +6 +1.00000 +4 +0.00000 -0.00000 1.00000 0 0 +-0.33333 -0.66667 0.83333 0 0 +0.66667 0.33333 0.83333 0 0 +0.66667 -0.66667 0.83333 0 0 + +12 +1.00000 +4 +0.00000 -0.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.66667 0.33333 0.83333 0 0 +0.66667 -0.66667 0.83333 0 0 + +6 +1.00000 +4 +0.00000 -0.00000 1.00000 0 0 +0.00000 -1.00000 1.00000 0 0 +0.66667 0.33333 0.83333 0 0 +0.66667 -0.66667 0.83333 0 0 + +6 +1.00000 +4 +0.00000 -0.00000 1.00000 0 0 +0.00000 -1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.66667 -0.66667 0.83333 0 0 + diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/go b/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/go new file mode 100644 index 0000000..c12b38a --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/go @@ -0,0 +1,2 @@ +mcsqs.exe -2=1.6 -3=1.05 -4=1.05 +mcsqs.exe -n=32 -wd=2 -wn=0.75 -wr=2 diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstr.in b/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..f6ce569 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstr.in @@ -0,0 +1,9 @@ + +0.707107 0.707107 3.4641 90 90 120 + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +0 0 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..c3d5856 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,10 @@ +0.707107 0.000000 0.000000 +-0.353553 0.612373 0.000000 +0.000000 0.000000 3.464100 +0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 + +-0.000000 -0.000002 0.500000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/CUPT_L11/sqsgen.in b/data/sqsdb/CUPT_L11/sqsgen.in new file mode 100644 index 0000000..8fdf735 --- /dev/null +++ b/data/sqsdb/CUPT_L11/sqsgen.in @@ -0,0 +1,4 @@ +level=0 a=1 b=1 +level=1 a=1 b=0.5,0.5 +level=1 a=0.5,0.5 b=1 +level=2 a=0.5,0.5 b=0.5,0.5 diff --git a/data/sqsdb/DIAMOND_A4/coord.in b/data/sqsdb/DIAMOND_A4/coord.in new file mode 100644 index 0000000..b8626c4 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/coord.in @@ -0,0 +1 @@ +4 diff --git a/data/sqsdb/DIAMOND_A4/rndstr.skel b/data/sqsdb/DIAMOND_A4/rndstr.skel new file mode 100644 index 0000000..db8bd92 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/rndstr.skel @@ -0,0 +1,8 @@ +3.567000 0.000000 0.000000 +0.000000 3.567000 0.000000 +0.000000 0.000000 3.567000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 +0.000000 0.000000 0.000000 c +0.750000 0.250000 0.750000 c diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=0_c=1/bestsqs.out b/data/sqsdb/DIAMOND_A4/sqsdb_lev=0_c=1/bestsqs.out new file mode 100644 index 0000000..3cbee00 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=0_c=1/bestsqs.out @@ -0,0 +1,8 @@ +3.567000 0.000000 0.000000 +0.000000 3.567000 0.000000 +0.000000 0.000000 3.567000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 +0.000000 0.000000 0.000000 c_A +0.750000 0.250000 0.750000 c_A diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=0_c=1/rndstr.in b/data/sqsdb/DIAMOND_A4/sqsdb_lev=0_c=1/rndstr.in new file mode 100644 index 0000000..c2090be --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=0_c=1/rndstr.in @@ -0,0 +1,8 @@ + +3.567 3.567 3.567 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0 0 0 c_A=1 +0.75 0.25 0.75 c_A=1 diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..ee2940c --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,58 @@ +2 1.544556 0.000000 0.000000 0.000000 +2 2.522250 0.000000 0.000000 0.000000 +2 2.957600 0.000000 0.000000 0.000000 +2 3.567000 0.000000 0.000000 0.000000 +2 3.887048 0.000000 0.000000 0.000000 +2 4.368665 0.000000 0.000000 0.000000 +2 4.633669 0.000000 0.000000 0.000000 +2 4.633669 0.000000 0.000000 0.000000 +2 5.044500 -0.166667 0.000000 -0.166667 +2 5.275664 0.000000 0.000000 0.000000 +2 5.639922 0.000000 0.000000 0.000000 +2 5.847596 0.000000 0.000000 0.000000 +3 2.522250 0.000000 0.000000 0.000000 +3 2.522250 0.000000 0.000000 0.000000 +3 2.522250 0.000000 0.000000 0.000000 +3 2.957600 0.000000 0.000000 0.000000 +3 2.957600 0.000000 0.000000 0.000000 +3 2.957600 0.000000 0.000000 0.000000 +3 3.567000 0.000000 0.000000 0.000000 +3 3.567000 0.000000 0.000000 0.000000 +3 3.887048 0.000000 0.000000 0.000000 +3 3.887048 0.000000 0.000000 0.000000 +3 3.887048 0.000000 0.000000 0.000000 +3 3.887048 0.000000 0.000000 0.000000 +4 2.522250 0.000000 0.000000 0.000000 +4 2.522250 0.000000 0.000000 0.000000 +4 2.522250 0.000000 0.000000 0.000000 +4 2.957600 0.000000 0.000000 0.000000 +4 2.957600 -0.166667 0.000000 -0.166667 +4 2.957600 -0.083333 0.000000 -0.083333 +4 2.957600 0.000000 0.000000 0.000000 +4 2.957600 -0.083333 0.000000 -0.083333 +4 2.957600 0.000000 0.000000 0.000000 +4 2.957600 0.000000 0.000000 0.000000 +4 2.957600 0.000000 0.000000 0.000000 +4 3.567000 0.250000 0.000000 0.250000 +4 3.567000 0.000000 0.000000 0.000000 +4 3.567000 0.000000 0.000000 0.000000 +4 3.567000 -0.166667 0.000000 -0.166667 +4 3.567000 0.333333 0.000000 0.333333 +4 3.567000 0.083333 0.000000 0.083333 +4 3.887048 0.000000 0.000000 0.000000 +4 3.887048 0.083333 0.000000 0.083333 +4 3.887048 0.000000 0.000000 0.000000 +4 3.887048 0.000000 0.000000 0.000000 +4 3.887048 0.000000 0.000000 0.000000 +4 3.887048 0.000000 0.000000 0.000000 +4 3.887048 0.000000 0.000000 0.000000 +4 3.887048 0.083333 0.000000 0.083333 +4 3.887048 -0.166667 0.000000 -0.166667 +4 3.887048 -0.083333 0.000000 -0.083333 +4 3.887048 0.000000 0.000000 0.000000 +4 3.887048 0.083333 0.000000 0.083333 +4 3.887048 -0.083333 0.000000 -0.083333 +4 3.887048 0.000000 0.000000 0.000000 +4 3.887048 0.000000 0.000000 0.000000 +4 3.887048 0.000000 0.000000 0.000000 +Objective_function= -67.890761 diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..fb8637a --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +3.567000 0.000000 0.000000 +0.000000 3.567000 0.000000 +0.000000 0.000000 3.567000 +-2.000000 -1.000000 -1.000000 +0.000000 -1.000000 1.000000 +0.000000 1.000000 1.000000 +-1.500000 -0.500000 1.000000 c_A +-1.500000 -1.000000 0.500000 c_A +-1.500000 0.000000 0.500000 c_B +-1.500000 -0.500000 0.000000 c_B +-1.000000 -0.000000 1.000000 c_B +-1.000000 -0.500000 0.500000 c_A +-0.500000 -0.000000 1.500000 c_A +-0.500000 -0.500000 1.000000 c_A +-1.000000 -0.500000 1.500000 c_A +-1.000000 -1.000000 1.000000 c_B +-0.500000 0.500000 1.000000 c_B +-0.500000 -0.000000 0.500000 c_B +-2.000000 -0.500000 0.500000 c_B +-2.000000 -1.000000 -0.000000 c_A +-2.000000 -1.000000 1.000000 c_A +-2.000000 -1.500000 0.500000 c_B +-0.750000 -1.250000 0.750000 c_B +-0.750000 -0.750000 1.250000 c_B +-0.750000 -0.750000 0.250000 c_B +-0.750000 -0.250000 0.750000 c_A +-0.250000 -0.750000 0.750000 c_A +-0.250000 -0.250000 1.250000 c_A +-1.750000 -1.750000 0.250000 c_A +-1.750000 -1.250000 0.750000 c_A +-0.250000 -0.250000 0.250000 c_A +-0.250000 0.250000 0.750000 c_A +-1.750000 -1.250000 -0.250000 c_B +-1.750000 -0.750000 0.250000 c_A +-1.250000 -1.250000 0.250000 c_B +-1.250000 -0.750000 0.750000 c_B +-1.250000 -0.750000 -0.250000 c_B +-1.250000 -0.250000 0.250000 c_B diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/clusters.out b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..4721463 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/clusters.out @@ -0,0 +1,420 @@ +4 +1.54456 +2 +1.00000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 + +12 +2.52225 +2 +0.25000 0.25000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +12 +2.95760 +2 +1.00000 1.00000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 + +6 +3.56700 +2 +0.25000 0.25000 0.25000 0 0 +0.25000 0.25000 1.25000 0 0 + +12 +3.88705 +2 +1.00000 1.00000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +4.36866 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 1.25000 0 0 + +12 +4.63367 +2 +1.00000 1.00000 1.00000 0 0 +-0.25000 0.75000 1.25000 0 0 + +4 +4.63367 +2 +0.25000 0.25000 0.25000 0 0 +1.00000 -0.50000 -0.50000 0 0 + +12 +5.04450 +2 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.75000 1.25000 0 0 + +24 +5.27566 +2 +1.00000 1.00000 1.00000 0 0 +-0.25000 1.25000 1.75000 0 0 + +24 +5.63992 +2 +0.25000 0.25000 0.25000 0 0 +-1.25000 -0.25000 0.25000 0 0 + +12 +5.84760 +2 +1.00000 1.00000 1.00000 0 0 +-0.25000 0.25000 1.75000 0 0 + +12 +2.52225 +3 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +2.52225 +3 +0.25000 0.25000 0.25000 0 0 +0.75000 0.75000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +2.52225 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +48 +2.95760 +3 +1.00000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +2.95760 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 + +12 +2.95760 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.25000 0.25000 1.25000 0 0 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.25000 1.25000 0 0 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 0 0 +1.25000 0.75000 1.75000 0 0 +0.25000 0.75000 1.75000 0 0 + +2 +2.52225 +4 +0.25000 0.25000 0.25000 0 0 +0.75000 0.25000 0.75000 0 0 +0.75000 0.75000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +2.52225 +4 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +2 +2.52225 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.75000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 1.25000 0.75000 0 0 +0.25000 1.25000 1.25000 0 0 + +12 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 +0.50000 1.00000 1.50000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 1.00000 1.50000 0 0 +0.25000 1.25000 1.25000 0 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 + +8 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 1.25000 1.75000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 1.25000 0 0 + +12 +3.56700 +4 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.25000 0.25000 1.25000 0 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.25000 1.25000 0 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.25000 1.25000 0 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.25000 1.25000 0 0 + +6 +3.56700 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.25000 1.25000 0 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.25000 1.25000 0 0 + +12 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 1.00000 1.50000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 1.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +8 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +0.50000 1.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 1.25000 1.25000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 +0.25000 0.75000 1.75000 0 0 + +12 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +0.25000 1.25000 1.25000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +0.25000 1.25000 1.25000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +1.25000 0.75000 1.75000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +1.25000 0.75000 1.75000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +1.25000 0.75000 1.75000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +-0.00000 1.00000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 0.25000 1.75000 0 0 +0.25000 0.75000 1.75000 0 0 + diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/go b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/go new file mode 100644 index 0000000..5b1da30 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=6.0 -3=4.15 -4=4.15 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/job.in b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/job.in new file mode 100755 index 0000000..4641d56 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/job.in @@ -0,0 +1,13 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p maint-batch +##SBATCH --qos=avandewa-condo +#SBATCH --nodes=1 +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs_lev_1_diamond + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/rndstr.in b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..c42947e --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,8 @@ + +3.567 3.567 3.567 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0 0 0 c_A=0.5,c_B=0.5 +0.75 0.25 0.75 c_A=0.5,c_B=0.5 diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/sqsparam.in b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..a285f3b --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=1_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +10 0.75 1 10 diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/bestcorr.out b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..e23d8b1 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/bestcorr.out @@ -0,0 +1,58 @@ +2 1.544556 0.250000 0.250000 0.000000 +2 2.522250 0.250000 0.250000 0.000000 +2 2.957600 0.250000 0.250000 0.000000 +2 3.567000 0.250000 0.250000 0.000000 +2 3.887048 0.250000 0.250000 0.000000 +2 4.368665 0.250000 0.250000 0.000000 +2 4.633669 0.250000 0.250000 0.000000 +2 4.633669 0.250000 0.250000 0.000000 +2 5.044500 0.000000 0.250000 -0.250000 +2 5.275664 0.250000 0.250000 0.000000 +2 5.639922 0.208333 0.250000 -0.041667 +2 5.847596 0.250000 0.250000 0.000000 +3 2.522250 -0.166667 -0.125000 -0.041667 +3 2.522250 -0.125000 -0.125000 0.000000 +3 2.522250 -0.125000 -0.125000 0.000000 +3 2.957600 -0.135417 -0.125000 -0.010417 +3 2.957600 -0.104167 -0.125000 0.020833 +3 2.957600 -0.125000 -0.125000 0.000000 +3 3.567000 -0.125000 -0.125000 0.000000 +3 3.567000 -0.125000 -0.125000 0.000000 +3 3.887048 -0.104167 -0.125000 0.020833 +3 3.887048 -0.145833 -0.125000 -0.020833 +3 3.887048 -0.093750 -0.125000 0.031250 +3 3.887048 -0.125000 -0.125000 0.000000 +4 2.522250 0.000000 0.062500 -0.062500 +4 2.522250 0.125000 0.062500 0.062500 +4 2.522250 0.000000 0.062500 -0.062500 +4 2.957600 0.104167 0.062500 0.041667 +4 2.957600 0.041667 0.062500 -0.020833 +4 2.957600 0.104167 0.062500 0.041667 +4 2.957600 0.020833 0.062500 -0.041667 +4 2.957600 0.083333 0.062500 0.020833 +4 2.957600 0.062500 0.062500 0.000000 +4 2.957600 0.083333 0.062500 0.020833 +4 2.957600 0.104167 0.062500 0.041667 +4 3.567000 0.125000 0.062500 0.062500 +4 3.567000 0.052083 0.062500 -0.010417 +4 3.567000 0.093750 0.062500 0.031250 +4 3.567000 0.083333 0.062500 0.020833 +4 3.567000 0.000000 0.062500 -0.062500 +4 3.567000 0.104167 0.062500 0.041667 +4 3.887048 0.041667 0.062500 -0.020833 +4 3.887048 0.020833 0.062500 -0.041667 +4 3.887048 0.093750 0.062500 0.031250 +4 3.887048 0.062500 0.062500 0.000000 +4 3.887048 0.083333 0.062500 0.020833 +4 3.887048 0.000000 0.062500 -0.062500 +4 3.887048 0.041667 0.062500 -0.020833 +4 3.887048 0.020833 0.062500 -0.041667 +4 3.887048 0.041667 0.062500 -0.020833 +4 3.887048 0.041667 0.062500 -0.020833 +4 3.887048 0.052083 0.062500 -0.010417 +4 3.887048 0.020833 0.062500 -0.041667 +4 3.887048 0.041667 0.062500 -0.020833 +4 3.887048 0.062500 0.062500 0.000000 +4 3.887048 0.010417 0.062500 -0.052083 +4 3.887048 0.062500 0.062500 0.000000 +Objective_function= -54.069144 diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/bestsqs.out b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..534e036 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/bestsqs.out @@ -0,0 +1,38 @@ +3.567000 0.000000 0.000000 +0.000000 3.567000 0.000000 +0.000000 0.000000 3.567000 +-2.000000 -1.000000 -1.000000 +-1.000000 -0.500000 0.500000 +-1.000000 1.500000 0.500000 +-3.000000 0.000000 0.000000 c_A +-2.500000 -1.000000 -0.500000 c_A +-2.500000 -0.500000 0.000000 c_B +-2.500000 -0.000000 -0.500000 c_A +-2.500000 0.500000 0.000000 c_A +-2.000000 -0.500000 -0.500000 c_A +-2.000000 0.000000 0.000000 c_A +-2.000000 0.500000 0.500000 c_A +-1.500000 -0.500000 -0.000000 c_A +-1.500000 -0.000000 0.500000 c_B +-1.500000 0.500000 0.000000 c_A +-1.500000 1.000000 0.500000 c_A +-3.000000 0.500000 0.500000 c_A +-1.000000 0.000000 0.000000 c_A +-3.000000 -0.500000 -0.500000 c_B +-4.000000 0.000000 0.000000 c_B +-1.250000 0.750000 0.250000 c_A +-0.750000 -0.250000 -0.250000 c_A +-0.750000 0.250000 0.250000 c_A +-1.750000 0.250000 0.250000 c_A +-1.750000 0.750000 0.750000 c_B +-1.250000 -0.250000 0.250000 c_A +-3.250000 -0.750000 -0.250000 c_A +-2.250000 0.250000 -0.250000 c_B +-1.750000 -0.750000 -0.750000 c_A +-1.750000 -0.250000 -0.250000 c_A +-2.750000 -0.250000 -0.250000 c_B +-2.750000 0.250000 0.250000 c_A +-3.250000 0.250000 -0.250000 c_B +-2.250000 -0.750000 -0.250000 c_A +-2.250000 -0.250000 0.250000 c_A +-2.250000 0.750000 0.250000 c_A diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/clusters.out b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/clusters.out new file mode 100644 index 0000000..4721463 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/clusters.out @@ -0,0 +1,420 @@ +4 +1.54456 +2 +1.00000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 + +12 +2.52225 +2 +0.25000 0.25000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +12 +2.95760 +2 +1.00000 1.00000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 + +6 +3.56700 +2 +0.25000 0.25000 0.25000 0 0 +0.25000 0.25000 1.25000 0 0 + +12 +3.88705 +2 +1.00000 1.00000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +4.36866 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 1.25000 0 0 + +12 +4.63367 +2 +1.00000 1.00000 1.00000 0 0 +-0.25000 0.75000 1.25000 0 0 + +4 +4.63367 +2 +0.25000 0.25000 0.25000 0 0 +1.00000 -0.50000 -0.50000 0 0 + +12 +5.04450 +2 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.75000 1.25000 0 0 + +24 +5.27566 +2 +1.00000 1.00000 1.00000 0 0 +-0.25000 1.25000 1.75000 0 0 + +24 +5.63992 +2 +0.25000 0.25000 0.25000 0 0 +-1.25000 -0.25000 0.25000 0 0 + +12 +5.84760 +2 +1.00000 1.00000 1.00000 0 0 +-0.25000 0.25000 1.75000 0 0 + +12 +2.52225 +3 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +2.52225 +3 +0.25000 0.25000 0.25000 0 0 +0.75000 0.75000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +2.52225 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +48 +2.95760 +3 +1.00000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +2.95760 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 + +12 +2.95760 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.25000 0.25000 1.25000 0 0 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.25000 1.25000 0 0 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 0 0 +1.25000 0.75000 1.75000 0 0 +0.25000 0.75000 1.75000 0 0 + +2 +2.52225 +4 +0.25000 0.25000 0.25000 0 0 +0.75000 0.25000 0.75000 0 0 +0.75000 0.75000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +2.52225 +4 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +2 +2.52225 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.75000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 1.25000 0.75000 0 0 +0.25000 1.25000 1.25000 0 0 + +12 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 +0.50000 1.00000 1.50000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 1.00000 1.50000 0 0 +0.25000 1.25000 1.25000 0 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 + +8 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 1.25000 1.75000 0 0 +0.25000 1.25000 1.25000 0 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 1.25000 0 0 + +12 +3.56700 +4 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.25000 0.25000 1.25000 0 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.25000 1.25000 0 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.25000 1.25000 0 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.25000 1.25000 0 0 + +6 +3.56700 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.25000 1.25000 0 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.25000 1.25000 0 0 + +12 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 1.00000 1.50000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 1.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +8 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +0.50000 1.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 1.25000 1.25000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 +0.25000 0.75000 1.75000 0 0 + +12 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +0.25000 1.25000 1.25000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +0.25000 1.25000 1.25000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +1.25000 0.75000 1.75000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +1.25000 0.75000 1.75000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +1.25000 0.75000 1.75000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +-0.00000 1.00000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +0.25000 0.75000 1.75000 0 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 0.25000 1.75000 0 0 +0.25000 0.75000 1.75000 0 0 + diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/go b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/go new file mode 100644 index 0000000..5b1da30 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=6.0 -3=4.15 -4=4.15 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/job.in b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/job.in new file mode 100755 index 0000000..0e0bf9f --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/job.in @@ -0,0 +1,13 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p maint-batch +##SBATCH --qos=avandewa-condo +#SBATCH --nodes=1 +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs_lev_2_diamond + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/rndstr.in b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/rndstr.in new file mode 100644 index 0000000..8fbab3d --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/rndstr.in @@ -0,0 +1,8 @@ + +3.567 3.567 3.567 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0 0 0 c_A=0.75,c_B=0.25 +0.75 0.25 0.75 c_A=0.75,c_B=0.25 diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/sqsparam.in b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/sqsparam.in new file mode 100644 index 0000000..a285f3b --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=2_c=0.75,0.25/sqsparam.in @@ -0,0 +1 @@ +10 0.75 1 10 diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/bestcorr.out b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/bestcorr.out new file mode 100644 index 0000000..5c490d4 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/bestcorr.out @@ -0,0 +1,38 @@ +2 1.544556 0.007812 0.000000 0.007812 +2 1.544556 0.000000 -0.000000 0.000000 +2 1.544556 0.007812 0.000000 0.007812 +2 2.522250 -0.000000 0.000000 -0.000000 +2 2.522250 0.000000 -0.000000 0.000000 +2 2.522250 -0.020833 0.000000 -0.020833 +2 2.957600 0.007812 0.000000 0.007812 +2 2.957600 0.004511 -0.000000 0.004511 +2 2.957600 -0.007812 0.000000 -0.007812 +2 3.567000 -0.000000 0.000000 -0.000000 +2 3.567000 0.009021 -0.000000 0.009021 +2 3.567000 -0.031250 0.000000 -0.031250 +2 3.887048 -0.000000 0.000000 -0.000000 +2 3.887048 -0.000000 -0.000000 -0.000000 +2 3.887048 -0.010417 0.000000 -0.010417 +2 4.368665 -0.039062 0.000000 -0.039062 +2 4.368665 -0.022553 -0.000000 -0.022553 +2 4.368665 0.022553 -0.000000 0.022553 +2 4.368665 -0.013021 0.000000 -0.013021 +2 4.633669 -0.039062 0.000000 -0.039062 +2 4.633669 0.000000 -0.000000 0.000000 +2 4.633669 -0.007812 0.000000 -0.007812 +2 4.633669 0.007812 0.000000 0.007812 +2 4.633669 -0.027063 -0.000000 -0.027063 +2 4.633669 0.007813 0.000000 0.007813 +2 5.044500 0.015625 0.000000 0.015625 +2 5.044500 -0.004511 -0.000000 -0.004511 +2 5.044500 -0.052083 0.000000 -0.052083 +2 5.275664 -0.019531 0.000000 -0.019531 +2 5.275664 0.009021 -0.000000 0.009021 +2 5.275664 0.006510 0.000000 0.006510 +2 5.639922 -0.042969 0.000000 -0.042969 +2 5.639922 -0.029319 -0.000000 -0.029319 +2 5.639922 -0.003906 0.000000 -0.003906 +2 5.847596 0.007812 0.000000 0.007812 +2 5.847596 -0.004511 -0.000000 -0.004511 +2 5.847596 0.023437 0.000000 0.023437 +Objective_function= -9.990318 diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/bestsqs.out b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/bestsqs.out new file mode 100644 index 0000000..f864afa --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/bestsqs.out @@ -0,0 +1,54 @@ +3.567000 0.000000 0.000000 +0.000000 3.567000 0.000000 +0.000000 0.000000 3.567000 +-2.000000 -1.500000 -0.500000 +1.000000 0.500000 1.500000 +-1.000000 1.500000 0.500000 +-1.000000 0.500000 1.500000 c_A +-2.000000 0.500000 0.500000 c_B +-1.500000 -0.500000 -0.000000 c_A +-1.500000 -0.000000 0.500000 c_C +-1.500000 0.500000 1.000000 c_B +-1.000000 -0.500000 0.500000 c_C +-1.000000 -0.000000 1.000000 c_A +-0.500000 -0.500000 1.000000 c_A +-1.500000 1.000000 0.500000 c_C +-0.000000 0.500000 1.500000 c_B +-1.000000 0.500000 0.500000 c_C +-1.000000 1.000000 1.000000 c_C +-0.500000 -0.000000 0.500000 c_B +-0.500000 0.500000 1.000000 c_B +-0.500000 1.000000 1.500000 c_C +0.000000 -0.000000 1.000000 c_A +-2.500000 -0.500000 0.000000 c_A +-2.500000 0.000000 0.500000 c_B +-2.000000 0.500000 1.500000 c_C +-2.000000 -1.000000 0.000000 c_A +-2.000000 -0.500000 0.500000 c_B +-2.000000 -0.000000 1.000000 c_B +-1.500000 -1.000000 0.500000 c_B +-1.500000 -0.500000 1.000000 c_C +-1.250000 0.250000 0.750000 c_A +-1.250000 0.750000 1.250000 c_C +-0.750000 -0.250000 0.750000 c_B +-0.750000 0.250000 1.250000 c_A +-1.750000 0.250000 0.250000 c_A +-0.250000 -0.250000 1.250000 c_B +-1.250000 -0.250000 0.250000 c_C +-1.750000 0.750000 0.750000 c_C +-0.750000 1.250000 1.250000 c_C +-0.250000 0.250000 0.750000 c_C +-0.250000 0.750000 1.250000 c_C +-0.250000 1.250000 1.750000 c_C +0.250000 0.250000 1.250000 c_B +-0.750000 0.250000 0.250000 c_B +-0.750000 0.750000 0.750000 c_A +-1.250000 1.250000 0.750000 c_A +-1.750000 -0.250000 0.750000 c_A +-1.750000 0.250000 1.250000 c_A +-2.250000 0.250000 0.750000 c_B +-1.250000 -0.750000 0.750000 c_B +-1.250000 -0.250000 1.250000 c_B +-2.250000 -0.250000 0.250000 c_C +-1.750000 -1.250000 -0.250000 c_A +-1.750000 -0.750000 0.250000 c_A diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/clusters.out b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/clusters.out new file mode 100644 index 0000000..1e339e4 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/clusters.out @@ -0,0 +1,222 @@ +4 +1.54456 +2 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 0 + +8 +1.54456 +2 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 0 + +4 +1.54456 +2 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 + +12 +2.52225 +2 +0.25000 0.25000 0.25000 1 0 +0.25000 0.75000 0.75000 1 0 + +24 +2.52225 +2 +0.25000 0.25000 0.25000 1 1 +0.25000 0.75000 0.75000 1 0 + +12 +2.52225 +2 +0.25000 0.25000 0.25000 1 1 +0.25000 0.75000 0.75000 1 1 + +12 +2.95760 +2 +1.00000 1.00000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +2 +1.00000 1.00000 1.00000 1 1 +0.25000 1.25000 1.25000 1 0 + +12 +2.95760 +2 +1.00000 1.00000 1.00000 1 1 +0.25000 1.25000 1.25000 1 1 + +6 +3.56700 +2 +0.25000 0.25000 0.25000 1 0 +0.25000 0.25000 1.25000 1 0 + +12 +3.56700 +2 +0.25000 0.25000 0.25000 1 1 +0.25000 0.25000 1.25000 1 0 + +6 +3.56700 +2 +0.25000 0.25000 0.25000 1 1 +0.25000 0.25000 1.25000 1 1 + +12 +3.88705 +2 +1.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +2 +1.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +12 +3.88705 +2 +1.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +4.36866 +2 +0.25000 0.25000 0.25000 1 0 +-0.25000 -0.25000 1.25000 1 0 + +24 +4.36866 +2 +0.25000 0.25000 0.25000 1 1 +-0.25000 -0.25000 1.25000 1 0 + +24 +4.36866 +2 +0.25000 0.25000 0.25000 1 0 +-0.25000 -0.25000 1.25000 1 1 + +24 +4.36866 +2 +0.25000 0.25000 0.25000 1 1 +-0.25000 -0.25000 1.25000 1 1 + +12 +4.63367 +2 +1.00000 1.00000 1.00000 1 0 +-0.25000 0.75000 1.25000 1 0 + +24 +4.63367 +2 +1.00000 1.00000 1.00000 1 1 +-0.25000 0.75000 1.25000 1 0 + +12 +4.63367 +2 +1.00000 1.00000 1.00000 1 1 +-0.25000 0.75000 1.25000 1 1 + +4 +4.63367 +2 +0.25000 0.25000 0.25000 1 0 +1.00000 -0.50000 -0.50000 1 0 + +8 +4.63367 +2 +0.25000 0.25000 0.25000 1 1 +1.00000 -0.50000 -0.50000 1 0 + +4 +4.63367 +2 +0.25000 0.25000 0.25000 1 1 +1.00000 -0.50000 -0.50000 1 1 + +12 +5.04450 +2 +0.25000 0.25000 0.25000 1 0 +0.25000 -0.75000 1.25000 1 0 + +24 +5.04450 +2 +0.25000 0.25000 0.25000 1 1 +0.25000 -0.75000 1.25000 1 0 + +12 +5.04450 +2 +0.25000 0.25000 0.25000 1 1 +0.25000 -0.75000 1.25000 1 1 + +24 +5.27566 +2 +1.00000 1.00000 1.00000 1 0 +-0.25000 1.25000 1.75000 1 0 + +48 +5.27566 +2 +1.00000 1.00000 1.00000 1 1 +-0.25000 1.25000 1.75000 1 0 + +24 +5.27566 +2 +1.00000 1.00000 1.00000 1 1 +-0.25000 1.25000 1.75000 1 1 + +24 +5.63992 +2 +0.25000 0.25000 0.25000 1 0 +-1.25000 -0.25000 0.25000 1 0 + +48 +5.63992 +2 +0.25000 0.25000 0.25000 1 1 +-1.25000 -0.25000 0.25000 1 0 + +24 +5.63992 +2 +0.25000 0.25000 0.25000 1 1 +-1.25000 -0.25000 0.25000 1 1 + +12 +5.84760 +2 +1.00000 1.00000 1.00000 1 0 +-0.25000 0.25000 1.75000 1 0 + +24 +5.84760 +2 +1.00000 1.00000 1.00000 1 1 +-0.25000 0.25000 1.75000 1 0 + +12 +5.84760 +2 +1.00000 1.00000 1.00000 1 1 +-0.25000 0.25000 1.75000 1 1 + diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/go b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/go new file mode 100644 index 0000000..5bc9af6 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=6.0 -3=2.15 -4=2.15 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/job.in b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/job.in new file mode 100755 index 0000000..6258521 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/job.in @@ -0,0 +1,13 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p maint-batch +##SBATCH --qos=avandewa-condo +#SBATCH --nodes=1 +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs_lev_3_diamond + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/rndstr.in b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/rndstr.in new file mode 100644 index 0000000..12755c4 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/rndstr.in @@ -0,0 +1,8 @@ + +3.567 3.567 3.567 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0 0 0 c_A=0.33333,c_B=0.33333,c_C=0.33333 +0.75 0.25 0.75 c_A=0.33333,c_B=0.33333,c_C=0.33333 diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/sqsparam.in b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/sqsparam.in new file mode 100644 index 0000000..a285f3b --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=3_c=0.33333,0.33333,0.33333/sqsparam.in @@ -0,0 +1 @@ +10 0.75 1 10 diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/bestcorr.out b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/bestcorr.out new file mode 100644 index 0000000..b9f2395 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/bestcorr.out @@ -0,0 +1,500 @@ +2 1.544556 0.062500 0.062500 0.000000 +2 1.544556 0.000000 0.000000 0.000000 +2 1.544556 0.000000 0.000000 0.000000 +2 2.522250 0.015625 0.062500 -0.046875 +2 2.522250 0.006766 0.000000 0.006766 +2 2.522250 -0.007813 0.000000 -0.007813 +2 2.957600 0.062500 0.062500 0.000000 +2 2.957600 -0.000000 0.000000 -0.000000 +2 2.957600 -0.015625 0.000000 -0.015625 +2 3.567000 0.062500 0.062500 0.000000 +2 3.567000 -0.027063 0.000000 -0.027063 +2 3.567000 -0.031250 0.000000 -0.031250 +2 3.887048 0.062500 0.062500 0.000000 +2 3.887048 0.000000 0.000000 -0.000000 +2 3.887048 -0.015625 0.000000 -0.015625 +2 4.368665 0.015625 0.062500 -0.046875 +2 4.368665 0.006766 0.000000 0.006766 +2 4.368665 0.006766 0.000000 0.006766 +2 4.368665 -0.007813 0.000000 -0.007813 +2 4.633669 0.062500 0.062500 0.000000 +2 4.633669 -0.000000 0.000000 -0.000000 +2 4.633669 -0.015625 0.000000 -0.015625 +2 4.633669 0.062500 0.062500 -0.000000 +2 4.633669 0.000000 0.000000 0.000000 +2 4.633669 0.000000 0.000000 0.000000 +2 5.044500 0.062500 0.062500 0.000000 +2 5.044500 -0.027063 0.000000 -0.027063 +2 5.044500 -0.031250 0.000000 -0.031250 +2 5.275664 0.062500 0.062500 0.000000 +2 5.275664 -0.000000 0.000000 -0.000000 +2 5.275664 -0.015625 0.000000 -0.015625 +2 5.639922 0.015625 0.062500 -0.046875 +2 5.639922 0.006766 0.000000 0.006766 +2 5.639922 -0.007813 0.000000 -0.007813 +2 5.847596 0.062500 0.062500 0.000000 +2 5.847596 0.000000 0.000000 -0.000000 +2 5.847596 -0.000000 0.000000 -0.000000 +3 2.522250 0.031250 -0.015625 0.046875 +3 2.522250 -0.006766 -0.000000 -0.006766 +3 2.522250 0.040595 -0.000000 0.040595 +3 2.522250 0.023438 -0.000000 0.023438 +3 2.522250 -0.015625 -0.000000 -0.015625 +3 2.522250 0.000000 -0.000000 0.000000 +3 2.522250 -0.006836 -0.015625 0.008789 +3 2.522250 0.001691 -0.000000 0.001691 +3 2.522250 -0.012695 -0.000000 -0.012695 +3 2.522250 0.005074 -0.000000 0.005074 +3 2.522250 0.019531 -0.015625 0.035156 +3 2.522250 -0.013532 -0.000000 -0.013532 +3 2.522250 -0.015625 -0.000000 -0.015625 +3 2.522250 0.020297 -0.000000 0.020297 +3 2.957600 -0.008301 -0.015625 0.007324 +3 2.957600 -0.002537 -0.000000 -0.002537 +3 2.957600 -0.004229 -0.000000 -0.004229 +3 2.957600 -0.004395 -0.000000 -0.004395 +3 2.957600 -0.004229 -0.000000 -0.004229 +3 2.957600 0.005371 -0.000000 0.005371 +3 2.957600 0.006348 -0.000000 0.006348 +3 2.957600 0.002537 -0.000000 0.002537 +3 2.957600 -0.003906 -0.015625 0.011719 +3 2.957600 -0.006766 -0.000000 -0.006766 +3 2.957600 0.007813 -0.000000 0.007813 +3 2.957600 0.030446 -0.000000 0.030446 +3 2.957600 0.021484 -0.000000 0.021484 +3 2.957600 0.003383 -0.000000 0.003383 +3 2.957600 -0.003906 -0.015625 0.011719 +3 2.957600 0.003383 -0.000000 0.003383 +3 2.957600 -0.015625 -0.000000 -0.015625 +3 2.957600 -0.020297 -0.000000 -0.020297 +3 2.957600 0.009766 -0.000000 0.009766 +3 2.957600 0.000000 -0.000000 0.000000 +3 3.567000 -0.033203 -0.015625 -0.017578 +3 3.567000 0.006766 -0.000000 0.006766 +3 3.567000 -0.020297 -0.000000 -0.020297 +3 3.567000 -0.005859 -0.000000 -0.005859 +3 3.567000 0.016915 -0.000000 0.016915 +3 3.567000 0.007812 -0.000000 0.007812 +3 3.567000 0.003906 -0.000000 0.003906 +3 3.567000 0.003383 -0.000000 0.003383 +3 3.567000 0.016602 -0.015625 0.032227 +3 3.567000 0.000000 -0.000000 0.000000 +3 3.567000 0.001691 -0.000000 0.001691 +3 3.567000 0.013672 -0.000000 0.013672 +3 3.567000 0.028320 -0.000000 0.028320 +3 3.567000 -0.011840 -0.000000 -0.011840 +3 3.887048 -0.012695 -0.015625 0.002930 +3 3.887048 -0.015223 -0.000000 -0.015223 +3 3.887048 0.008457 -0.000000 0.008457 +3 3.887048 -0.008789 -0.000000 -0.008789 +3 3.887048 -0.001691 -0.000000 -0.001691 +3 3.887048 -0.022461 -0.000000 -0.022461 +3 3.887048 0.010742 -0.000000 0.010742 +3 3.887048 -0.008457 -0.000000 -0.008457 +3 3.887048 -0.003906 -0.015625 0.011719 +3 3.887048 -0.006766 -0.000000 -0.006766 +3 3.887048 0.007813 -0.000000 0.007813 +3 3.887048 0.030446 -0.000000 0.030446 +3 3.887048 0.021484 -0.000000 0.021484 +3 3.887048 0.003383 -0.000000 0.003383 +3 3.887048 -0.017090 -0.015625 -0.001465 +3 3.887048 0.010994 -0.000000 0.010994 +3 3.887048 0.000846 -0.000000 0.000846 +3 3.887048 0.009277 -0.000000 0.009277 +3 3.887048 -0.007612 -0.000000 -0.007612 +3 3.887048 0.002441 -0.000000 0.002441 +3 3.887048 0.002441 -0.000000 0.002441 +3 3.887048 -0.002537 -0.000000 -0.002537 +3 3.887048 0.001953 -0.015625 0.017578 +3 3.887048 0.000000 -0.000000 0.000000 +3 3.887048 0.001691 -0.000000 0.001691 +3 3.887048 0.006836 -0.000000 0.006836 +3 3.887048 0.001691 -0.000000 0.001691 +3 3.887048 0.006836 -0.000000 0.006836 +3 3.887048 0.007812 -0.000000 0.007812 +3 3.887048 -0.003383 -0.000000 -0.003383 +4 2.522250 0.091797 0.003906 0.087891 +4 2.522250 -0.025372 0.000000 -0.025372 +4 2.522250 0.015625 0.000000 0.015625 +4 2.522250 -0.005074 0.000000 -0.005074 +4 2.522250 0.017578 0.000000 0.017578 +4 2.522250 -0.031250 0.003906 -0.035156 +4 2.522250 0.013532 0.000000 0.013532 +4 2.522250 -0.030446 0.000000 -0.030446 +4 2.522250 -0.029297 0.000000 -0.029297 +4 2.522250 0.021484 0.000000 0.021484 +4 2.522250 -0.000000 0.000000 -0.000000 +4 2.522250 0.010149 0.000000 0.010149 +4 2.522250 -0.000000 0.000000 -0.000000 +4 2.522250 -0.013672 0.003906 -0.017578 +4 2.522250 0.020297 0.000000 0.020297 +4 2.522250 0.021484 0.000000 0.021484 +4 2.522250 -0.020297 0.000000 -0.020297 +4 2.522250 0.017578 0.000000 0.017578 +4 2.957600 -0.004883 0.003906 -0.008789 +4 2.957600 -0.005074 0.000000 -0.005074 +4 2.957600 0.003383 0.000000 0.003383 +4 2.957600 -0.014648 0.000000 -0.014648 +4 2.957600 0.000977 0.000000 0.000977 +4 2.957600 -0.005074 0.000000 -0.005074 +4 2.957600 -0.006766 0.000000 -0.006766 +4 2.957600 -0.003906 0.000000 -0.003906 +4 2.957600 0.000977 0.000000 0.000977 +4 2.957600 0.000000 0.000000 0.000000 +4 2.957600 -0.000000 0.000000 -0.000000 +4 2.957600 0.005859 0.000000 0.005859 +4 2.957600 -0.037109 0.003906 -0.041016 +4 2.957600 0.004229 0.000000 0.004229 +4 2.957600 -0.008789 0.000000 -0.008789 +4 2.957600 -0.004883 0.000000 -0.004883 +4 2.957600 -0.012695 0.000000 -0.012695 +4 2.957600 -0.002537 0.000000 -0.002537 +4 2.957600 0.000000 0.000000 0.000000 +4 2.957600 -0.023926 0.003906 -0.027832 +4 2.957600 0.006766 0.000000 0.006766 +4 2.957600 -0.013532 0.000000 -0.013532 +4 2.957600 -0.010254 0.000000 -0.010254 +4 2.957600 0.008301 0.000000 0.008301 +4 2.957600 -0.016113 0.000000 -0.016113 +4 2.957600 0.010149 0.000000 0.010149 +4 2.957600 -0.008301 0.000000 -0.008301 +4 2.957600 -0.010149 0.000000 -0.010149 +4 2.957600 -0.004395 0.000000 -0.004395 +4 2.957600 0.013428 0.003906 0.009521 +4 2.957600 0.010572 0.000000 0.010572 +4 2.957600 -0.007189 0.000000 -0.007189 +4 2.957600 -0.002197 0.000000 -0.002197 +4 2.957600 0.013109 0.000000 0.013109 +4 2.957600 -0.004150 0.000000 -0.004150 +4 2.957600 -0.010498 0.000000 -0.010498 +4 2.957600 0.001269 0.000000 0.001269 +4 2.957600 -0.017337 0.000000 -0.017337 +4 2.957600 -0.009033 0.000000 -0.009033 +4 2.957600 -0.002686 0.000000 -0.002686 +4 2.957600 0.006343 0.000000 0.006343 +4 2.957600 0.004150 0.000000 0.004150 +4 2.957600 -0.002114 0.000000 -0.002114 +4 2.957600 0.003806 0.000000 0.003806 +4 2.957600 -0.000732 0.000000 -0.000732 +4 2.957600 -0.028320 0.003906 -0.032227 +4 2.957600 -0.005920 0.000000 -0.005920 +4 2.957600 -0.008457 0.000000 -0.008457 +4 2.957600 0.007324 0.000000 0.007324 +4 2.957600 -0.019531 0.000000 -0.019531 +4 2.957600 -0.020297 0.000000 -0.020297 +4 2.957600 0.001691 0.000000 0.001691 +4 2.957600 -0.002441 0.000000 -0.002441 +4 2.957600 -0.004883 0.000000 -0.004883 +4 2.957600 0.002537 0.000000 0.002537 +4 2.957600 -0.003383 0.000000 -0.003383 +4 2.957600 0.005859 0.000000 0.005859 +4 2.957600 -0.018066 0.003906 -0.021973 +4 2.957600 0.005920 0.000000 0.005920 +4 2.957600 0.008301 0.000000 0.008301 +4 2.957600 0.017760 0.000000 0.017760 +4 2.957600 -0.022835 0.000000 -0.022835 +4 2.957600 -0.014160 0.000000 -0.014160 +4 2.957600 -0.000846 0.000000 -0.000846 +4 2.957600 0.004395 0.000000 0.004395 +4 2.957600 -0.009277 0.003906 -0.013184 +4 2.957600 -0.017760 0.000000 -0.017760 +4 2.957600 0.000846 0.000000 0.000846 +4 2.957600 0.004395 0.000000 0.004395 +4 2.957600 0.018606 0.000000 0.018606 +4 2.957600 0.001953 0.000000 0.001953 +4 2.957600 0.003906 0.000000 0.003906 +4 2.957600 0.005074 0.000000 0.005074 +4 2.957600 -0.015137 0.000000 -0.015137 +4 2.957600 -0.010994 0.000000 -0.010994 +4 2.957600 -0.012686 0.000000 -0.012686 +4 2.957600 -0.001465 0.000000 -0.001465 +4 2.957600 0.003906 0.003906 -0.000000 +4 2.957600 0.010149 0.000000 0.010149 +4 2.957600 0.008457 0.000000 0.008457 +4 2.957600 0.008789 0.000000 0.008789 +4 2.957600 0.000846 0.000000 0.000846 +4 2.957600 0.000488 0.000000 0.000488 +4 2.957600 0.005371 0.000000 0.005371 +4 2.957600 -0.002537 0.000000 -0.002537 +4 2.957600 0.000977 0.000000 0.000977 +4 2.957600 -0.005074 0.000000 -0.005074 +4 2.957600 -0.010149 0.000000 -0.010149 +4 2.957600 -0.005859 0.000000 -0.005859 +4 3.567000 0.000977 0.003906 -0.002930 +4 3.567000 -0.011840 0.000000 -0.011840 +4 3.567000 0.001691 0.000000 0.001691 +4 3.567000 -0.008789 0.000000 -0.008789 +4 3.567000 0.030273 0.000000 0.030273 +4 3.567000 -0.015223 0.000000 -0.015223 +4 3.567000 -0.001691 0.000000 -0.001691 +4 3.567000 0.024414 0.000000 0.024414 +4 3.567000 -0.006836 0.000000 -0.006836 +4 3.567000 0.001691 0.000000 0.001691 +4 3.567000 0.015223 0.000000 0.015223 +4 3.567000 0.014648 0.000000 0.014648 +4 3.567000 0.011230 0.003906 0.007324 +4 3.567000 0.002537 0.000000 0.002537 +4 3.567000 -0.000000 0.000000 -0.000000 +4 3.567000 -0.011719 0.000000 -0.011719 +4 3.567000 -0.004229 0.000000 -0.004229 +4 3.567000 -0.012207 0.000000 -0.012207 +4 3.567000 -0.006836 0.000000 -0.006836 +4 3.567000 0.000000 0.000000 0.000000 +4 3.567000 -0.005074 0.000000 -0.005074 +4 3.567000 0.003906 0.000000 0.003906 +4 3.567000 -0.005371 0.000000 -0.005371 +4 3.567000 -0.000846 0.000000 -0.000846 +4 3.567000 -0.004883 0.000000 -0.004883 +4 3.567000 0.001691 0.000000 0.001691 +4 3.567000 -0.000846 0.000000 -0.000846 +4 3.567000 -0.001465 0.000000 -0.001465 +4 3.567000 -0.010742 0.003906 -0.014648 +4 3.567000 0.005074 0.000000 0.005074 +4 3.567000 -0.002537 0.000000 -0.002537 +4 3.567000 0.004395 0.000000 0.004395 +4 3.567000 0.003383 0.000000 0.003383 +4 3.567000 0.009766 0.000000 0.009766 +4 3.567000 0.007324 0.000000 0.007324 +4 3.567000 0.007612 0.000000 0.007612 +4 3.567000 -0.015223 0.000000 -0.015223 +4 3.567000 -0.013672 0.000000 -0.013672 +4 3.567000 -0.002441 0.000000 -0.002441 +4 3.567000 -0.010994 0.000000 -0.010994 +4 3.567000 0.000977 0.000000 0.000977 +4 3.567000 0.006766 0.000000 0.006766 +4 3.567000 -0.002537 0.000000 -0.002537 +4 3.567000 -0.004395 0.000000 -0.004395 +4 3.567000 -0.001953 0.003906 -0.005859 +4 3.567000 0.011840 0.000000 0.011840 +4 3.567000 0.012686 0.000000 0.012686 +4 3.567000 0.014160 0.000000 0.014160 +4 3.567000 0.000977 0.000000 0.000977 +4 3.567000 -0.010149 0.000000 -0.010149 +4 3.567000 -0.003383 0.000000 -0.003383 +4 3.567000 -0.016602 0.000000 -0.016602 +4 3.567000 0.011230 0.000000 0.011230 +4 3.567000 0.009303 0.000000 0.009303 +4 3.567000 0.005074 0.000000 0.005074 +4 3.567000 -0.005859 0.000000 -0.005859 +4 3.567000 -0.042969 0.003906 -0.046875 +4 3.567000 -0.003383 0.000000 -0.003383 +4 3.567000 -0.001953 0.000000 -0.001953 +4 3.567000 -0.007812 0.000000 -0.007812 +4 3.567000 -0.003383 0.000000 -0.003383 +4 3.567000 -0.011719 0.000000 -0.011719 +4 3.567000 0.018555 0.003906 0.014648 +4 3.567000 -0.024526 0.000000 -0.024526 +4 3.567000 0.006766 0.000000 0.006766 +4 3.567000 0.010254 0.000000 0.010254 +4 3.567000 -0.002441 0.000000 -0.002441 +4 3.567000 -0.004883 0.000000 -0.004883 +4 3.567000 0.012686 0.000000 0.012686 +4 3.567000 -0.019531 0.000000 -0.019531 +4 3.567000 -0.003383 0.000000 -0.003383 +4 3.567000 -0.011719 0.000000 -0.011719 +4 3.887048 -0.001953 0.003906 -0.005859 +4 3.887048 0.001691 0.000000 0.001691 +4 3.887048 -0.003383 0.000000 -0.003383 +4 3.887048 0.002930 0.000000 0.002930 +4 3.887048 -0.004883 0.000000 -0.004883 +4 3.887048 0.005859 0.000000 0.005859 +4 3.887048 -0.015223 0.000000 -0.015223 +4 3.887048 0.007812 0.000000 0.007812 +4 3.887048 -0.006766 0.000000 -0.006766 +4 3.887048 -0.011719 0.000000 -0.011719 +4 3.887048 0.004639 0.003906 0.000732 +4 3.887048 0.008034 0.000000 0.008034 +4 3.887048 0.013109 0.000000 0.013109 +4 3.887048 0.002197 0.000000 0.002197 +4 3.887048 -0.007189 0.000000 -0.007189 +4 3.887048 0.000244 0.000000 0.000244 +4 3.887048 -0.007568 0.000000 -0.007568 +4 3.887048 0.003806 0.000000 0.003806 +4 3.887048 0.002960 0.000000 0.002960 +4 3.887048 0.001221 0.000000 0.001221 +4 3.887048 -0.014404 0.000000 -0.014404 +4 3.887048 -0.002960 0.000000 -0.002960 +4 3.887048 -0.001709 0.000000 -0.001709 +4 3.887048 -0.004652 0.000000 -0.004652 +4 3.887048 -0.006343 0.000000 -0.006343 +4 3.887048 0.006592 0.000000 0.006592 +4 3.887048 0.011230 0.003906 0.007324 +4 3.887048 -0.004229 0.000000 -0.004229 +4 3.887048 0.002537 0.000000 0.002537 +4 3.887048 -0.006348 0.000000 -0.006348 +4 3.887048 0.017760 0.000000 0.017760 +4 3.887048 -0.000488 0.000000 -0.000488 +4 3.887048 -0.018066 0.000000 -0.018066 +4 3.887048 0.004229 0.000000 0.004229 +4 3.887048 -0.015223 0.000000 -0.015223 +4 3.887048 -0.003906 0.000000 -0.003906 +4 3.887048 -0.006836 0.000000 -0.006836 +4 3.887048 -0.005074 0.000000 -0.005074 +4 3.887048 -0.003906 0.000000 -0.003906 +4 3.887048 0.001691 0.000000 0.001691 +4 3.887048 0.003383 0.000000 0.003383 +4 3.887048 0.005859 0.000000 0.005859 +4 3.887048 -0.018066 0.003906 -0.021973 +4 3.887048 0.005920 0.000000 0.005920 +4 3.887048 0.008301 0.000000 0.008301 +4 3.887048 0.017760 0.000000 0.017760 +4 3.887048 -0.022835 0.000000 -0.022835 +4 3.887048 -0.014160 0.000000 -0.014160 +4 3.887048 -0.000846 0.000000 -0.000846 +4 3.887048 0.004395 0.000000 0.004395 +4 3.887048 0.015625 0.003906 0.011719 +4 3.887048 0.004229 0.000000 0.004229 +4 3.887048 -0.021143 0.000000 -0.021143 +4 3.887048 -0.014648 0.000000 -0.014648 +4 3.887048 0.016915 0.000000 0.016915 +4 3.887048 0.014160 0.000000 0.014160 +4 3.887048 -0.010254 0.000000 -0.010254 +4 3.887048 0.015223 0.000000 0.015223 +4 3.887048 0.006766 0.000000 0.006766 +4 3.887048 0.009277 0.000000 0.009277 +4 3.887048 -0.000488 0.000000 -0.000488 +4 3.887048 0.003383 0.000000 0.003383 +4 3.887048 -0.009766 0.000000 -0.009766 +4 3.887048 0.007612 0.000000 0.007612 +4 3.887048 -0.002537 0.000000 -0.002537 +4 3.887048 -0.005859 0.000000 -0.005859 +4 3.887048 0.021484 0.003906 0.017578 +4 3.887048 -0.021989 0.000000 -0.021989 +4 3.887048 -0.001691 0.000000 -0.001691 +4 3.887048 -0.007812 0.000000 -0.007812 +4 3.887048 -0.001953 0.000000 -0.001953 +4 3.887048 -0.005074 0.000000 -0.005074 +4 3.887048 0.000000 0.000000 0.000000 +4 3.887048 0.010742 0.000000 0.010742 +4 3.887048 -0.003906 0.000000 -0.003906 +4 3.887048 0.005074 0.000000 0.005074 +4 3.887048 -0.003383 0.000000 -0.003383 +4 3.887048 0.002930 0.000000 0.002930 +4 3.887048 -0.004883 0.003906 -0.008789 +4 3.887048 0.010149 0.000000 0.010149 +4 3.887048 0.003383 0.000000 0.003383 +4 3.887048 0.008789 0.000000 0.008789 +4 3.887048 0.010994 0.000000 0.010994 +4 3.887048 -0.005371 0.000000 -0.005371 +4 3.887048 0.017090 0.000000 0.017090 +4 3.887048 -0.012686 0.000000 -0.012686 +4 3.887048 -0.009303 0.000000 -0.009303 +4 3.887048 0.009277 0.000000 0.009277 +4 3.887048 -0.009277 0.000000 -0.009277 +4 3.887048 0.000846 0.000000 0.000846 +4 3.887048 0.009766 0.000000 0.009766 +4 3.887048 -0.000000 0.000000 -0.000000 +4 3.887048 -0.000000 0.000000 -0.000000 +4 3.887048 0.000000 0.000000 0.000000 +4 3.887048 -0.001953 0.003906 -0.005859 +4 3.887048 -0.010994 0.000000 -0.010994 +4 3.887048 -0.008457 0.000000 -0.008457 +4 3.887048 -0.000488 0.000000 -0.000488 +4 3.887048 -0.008301 0.000000 -0.008301 +4 3.887048 -0.009766 0.000000 -0.009766 +4 3.887048 -0.005920 0.000000 -0.005920 +4 3.887048 -0.006836 0.000000 -0.006836 +4 3.887048 0.010149 0.000000 0.010149 +4 3.887048 0.002930 0.000000 0.002930 +4 3.887048 -0.001953 0.003906 -0.005859 +4 3.887048 -0.018606 0.000000 -0.018606 +4 3.887048 -0.001953 0.000000 -0.001953 +4 3.887048 0.001953 0.000000 0.001953 +4 3.887048 -0.015625 0.000000 -0.015625 +4 3.887048 0.005074 0.000000 0.005074 +4 3.887048 -0.005859 0.000000 -0.005859 +4 3.887048 0.024414 0.003906 0.020508 +4 3.887048 0.011840 0.000000 0.011840 +4 3.887048 0.006836 0.000000 0.006836 +4 3.887048 -0.018606 0.000000 -0.018606 +4 3.887048 -0.000977 0.000000 -0.000977 +4 3.887048 -0.015223 0.000000 -0.015223 +4 3.887048 -0.028755 0.000000 -0.028755 +4 3.887048 -0.012695 0.000000 -0.012695 +4 3.887048 -0.018606 0.000000 -0.018606 +4 3.887048 0.006836 0.000000 0.006836 +4 3.887048 0.005074 0.000000 0.005074 +4 3.887048 -0.014648 0.000000 -0.014648 +4 3.887048 -0.008545 0.003906 -0.012451 +4 3.887048 -0.008880 0.000000 -0.008880 +4 3.887048 -0.008034 0.000000 -0.008034 +4 3.887048 -0.015381 0.000000 -0.015381 +4 3.887048 0.011417 0.000000 0.011417 +4 3.887048 0.005615 0.000000 0.005615 +4 3.887048 -0.005615 0.000000 -0.005615 +4 3.887048 0.006343 0.000000 0.006343 +4 3.887048 0.001269 0.000000 0.001269 +4 3.887048 0.002686 0.000000 0.002686 +4 3.887048 0.003174 0.000000 0.003174 +4 3.887048 -0.000423 0.000000 -0.000423 +4 3.887048 -0.015869 0.000000 -0.015869 +4 3.887048 0.002114 0.000000 0.002114 +4 3.887048 -0.002114 0.000000 -0.002114 +4 3.887048 0.000732 0.000000 0.000732 +4 3.887048 -0.007813 0.003906 -0.011719 +4 3.887048 -0.010994 0.000000 -0.010994 +4 3.887048 -0.010742 0.000000 -0.010742 +4 3.887048 -0.014377 0.000000 -0.014377 +4 3.887048 0.001953 0.000000 0.001953 +4 3.887048 -0.006836 0.000000 -0.006836 +4 3.887048 0.007612 0.000000 0.007612 +4 3.887048 0.006836 0.000000 0.006836 +4 3.887048 0.000846 0.000000 0.000846 +4 3.887048 -0.005859 0.000000 -0.005859 +4 3.887048 -0.034180 0.003906 -0.038086 +4 3.887048 0.006766 0.000000 0.006766 +4 3.887048 0.000977 0.000000 0.000977 +4 3.887048 -0.006766 0.000000 -0.006766 +4 3.887048 -0.012695 0.000000 -0.012695 +4 3.887048 -0.003383 0.000000 -0.003383 +4 3.887048 -0.006766 0.000000 -0.006766 +4 3.887048 -0.012695 0.000000 -0.012695 +4 3.887048 -0.003383 0.000000 -0.003383 +4 3.887048 -0.010742 0.000000 -0.010742 +4 3.887048 0.003383 0.000000 0.003383 +4 3.887048 -0.026367 0.000000 -0.026367 +4 3.887048 -0.003418 0.003906 -0.007324 +4 3.887048 0.010994 0.000000 0.010994 +4 3.887048 0.004229 0.000000 0.004229 +4 3.887048 0.001465 0.000000 0.001465 +4 3.887048 -0.014377 0.000000 -0.014377 +4 3.887048 0.020020 0.000000 0.020020 +4 3.887048 -0.005371 0.000000 -0.005371 +4 3.887048 -0.005920 0.000000 -0.005920 +4 3.887048 -0.005920 0.000000 -0.005920 +4 3.887048 0.009277 0.000000 0.009277 +4 3.887048 0.002441 0.000000 0.002441 +4 3.887048 0.000846 0.000000 0.000846 +4 3.887048 0.000488 0.000000 0.000488 +4 3.887048 0.000846 0.000000 0.000846 +4 3.887048 0.009303 0.000000 0.009303 +4 3.887048 -0.001465 0.000000 -0.001465 +4 3.887048 -0.015137 0.003906 -0.019043 +4 3.887048 0.000000 0.000000 0.000000 +4 3.887048 0.003383 0.000000 0.003383 +4 3.887048 -0.015137 0.000000 -0.015137 +4 3.887048 0.000000 0.000000 0.000000 +4 3.887048 -0.000488 0.000000 -0.000488 +4 3.887048 0.005371 0.000000 0.005371 +4 3.887048 0.001691 0.000000 0.001691 +4 3.887048 0.020297 0.000000 0.020297 +4 3.887048 -0.002441 0.000000 -0.002441 +4 3.887048 0.003418 0.000000 0.003418 +4 3.887048 -0.005074 0.000000 -0.005074 +4 3.887048 -0.005371 0.000000 -0.005371 +4 3.887048 -0.001691 0.000000 -0.001691 +4 3.887048 0.005074 0.000000 0.005074 +4 3.887048 -0.001465 0.000000 -0.001465 +4 3.887048 0.012695 0.003906 0.008789 +4 3.887048 0.015223 0.000000 0.015223 +4 3.887048 -0.001691 0.000000 -0.001691 +4 3.887048 0.008789 0.000000 0.008789 +4 3.887048 0.008457 0.000000 0.008457 +4 3.887048 -0.000977 0.000000 -0.000977 +4 3.887048 0.000977 0.000000 0.000977 +4 3.887048 -0.001691 0.000000 -0.001691 +4 3.887048 -0.004883 0.000000 -0.004883 +4 3.887048 -0.008457 0.000000 -0.008457 +4 3.887048 -0.005074 0.000000 -0.005074 +4 3.887048 0.002930 0.000000 0.002930 +Objective_function= -37.753002 diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/bestsqs.out b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/bestsqs.out new file mode 100644 index 0000000..bfd4926 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/bestsqs.out @@ -0,0 +1,38 @@ +3.567000 0.000000 0.000000 +0.000000 3.567000 0.000000 +0.000000 0.000000 3.567000 +-1.000000 -1.000000 1.000000 +1.000000 -1.000000 -1.000000 +1.000000 1.000000 1.000000 +0.500000 -0.000000 1.500000 c_A +0.500000 -1.500000 0.000000 c_A +1.000000 -0.000000 1.000000 c_C +0.000000 -0.500000 0.500000 c_A +1.000000 -1.000000 0.000000 c_A +0.500000 -1.000000 0.500000 c_A +0.500000 -0.500000 1.000000 c_C +1.000000 -1.000000 1.000000 c_C +1.500000 -0.000000 0.500000 c_A +0.500000 -0.500000 0.000000 c_C +0.500000 -0.000000 0.500000 c_A +1.500000 -0.500000 0.000000 c_A +1.000000 -0.500000 0.500000 c_B +0.000000 -1.500000 0.500000 c_C +0.000000 -1.000000 1.000000 c_B +0.000000 -0.500000 1.500000 c_B +0.250000 -0.750000 1.250000 c_B +0.250000 -0.250000 1.750000 c_A +0.750000 -0.750000 0.750000 c_A +0.750000 -0.250000 1.250000 c_C +-0.250000 -0.750000 0.750000 c_C +0.250000 -1.750000 0.250000 c_A +0.250000 -1.250000 0.750000 c_B +0.750000 0.250000 0.750000 c_B +1.250000 -0.750000 0.250000 c_A +1.250000 -0.250000 0.750000 c_C +0.250000 -0.750000 0.250000 c_B +0.250000 -0.250000 0.750000 c_B +0.750000 -1.250000 0.250000 c_A +1.750000 -0.250000 0.250000 c_A +0.750000 -0.750000 -0.250000 c_A +0.750000 -0.250000 0.250000 c_A diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/clusters.out b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/clusters.out new file mode 100644 index 0000000..281e53c --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/clusters.out @@ -0,0 +1,3840 @@ +4 +1.54456 +2 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 0 + +8 +1.54456 +2 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 0 + +4 +1.54456 +2 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 + +12 +2.52225 +2 +0.25000 0.25000 0.25000 1 0 +0.25000 0.75000 0.75000 1 0 + +24 +2.52225 +2 +0.25000 0.25000 0.25000 1 1 +0.25000 0.75000 0.75000 1 0 + +12 +2.52225 +2 +0.25000 0.25000 0.25000 1 1 +0.25000 0.75000 0.75000 1 1 + +12 +2.95760 +2 +1.00000 1.00000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +2 +1.00000 1.00000 1.00000 1 1 +0.25000 1.25000 1.25000 1 0 + +12 +2.95760 +2 +1.00000 1.00000 1.00000 1 1 +0.25000 1.25000 1.25000 1 1 + +6 +3.56700 +2 +0.25000 0.25000 0.25000 1 0 +0.25000 0.25000 1.25000 1 0 + +12 +3.56700 +2 +0.25000 0.25000 0.25000 1 1 +0.25000 0.25000 1.25000 1 0 + +6 +3.56700 +2 +0.25000 0.25000 0.25000 1 1 +0.25000 0.25000 1.25000 1 1 + +12 +3.88705 +2 +1.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +2 +1.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +12 +3.88705 +2 +1.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +4.36866 +2 +0.25000 0.25000 0.25000 1 0 +-0.25000 -0.25000 1.25000 1 0 + +24 +4.36866 +2 +0.25000 0.25000 0.25000 1 1 +-0.25000 -0.25000 1.25000 1 0 + +24 +4.36866 +2 +0.25000 0.25000 0.25000 1 0 +-0.25000 -0.25000 1.25000 1 1 + +24 +4.36866 +2 +0.25000 0.25000 0.25000 1 1 +-0.25000 -0.25000 1.25000 1 1 + +12 +4.63367 +2 +1.00000 1.00000 1.00000 1 0 +-0.25000 0.75000 1.25000 1 0 + +24 +4.63367 +2 +1.00000 1.00000 1.00000 1 1 +-0.25000 0.75000 1.25000 1 0 + +12 +4.63367 +2 +1.00000 1.00000 1.00000 1 1 +-0.25000 0.75000 1.25000 1 1 + +4 +4.63367 +2 +0.25000 0.25000 0.25000 1 0 +1.00000 -0.50000 -0.50000 1 0 + +8 +4.63367 +2 +0.25000 0.25000 0.25000 1 1 +1.00000 -0.50000 -0.50000 1 0 + +4 +4.63367 +2 +0.25000 0.25000 0.25000 1 1 +1.00000 -0.50000 -0.50000 1 1 + +12 +5.04450 +2 +0.25000 0.25000 0.25000 1 0 +0.25000 -0.75000 1.25000 1 0 + +24 +5.04450 +2 +0.25000 0.25000 0.25000 1 1 +0.25000 -0.75000 1.25000 1 0 + +12 +5.04450 +2 +0.25000 0.25000 0.25000 1 1 +0.25000 -0.75000 1.25000 1 1 + +24 +5.27566 +2 +1.00000 1.00000 1.00000 1 0 +-0.25000 1.25000 1.75000 1 0 + +48 +5.27566 +2 +1.00000 1.00000 1.00000 1 1 +-0.25000 1.25000 1.75000 1 0 + +24 +5.27566 +2 +1.00000 1.00000 1.00000 1 1 +-0.25000 1.25000 1.75000 1 1 + +24 +5.63992 +2 +0.25000 0.25000 0.25000 1 0 +-1.25000 -0.25000 0.25000 1 0 + +48 +5.63992 +2 +0.25000 0.25000 0.25000 1 1 +-1.25000 -0.25000 0.25000 1 0 + +24 +5.63992 +2 +0.25000 0.25000 0.25000 1 1 +-1.25000 -0.25000 0.25000 1 1 + +12 +5.84760 +2 +1.00000 1.00000 1.00000 1 0 +-0.25000 0.25000 1.75000 1 0 + +24 +5.84760 +2 +1.00000 1.00000 1.00000 1 1 +-0.25000 0.25000 1.75000 1 0 + +12 +5.84760 +2 +1.00000 1.00000 1.00000 1 1 +-0.25000 0.25000 1.75000 1 1 + +12 +2.52225 +3 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 0 +0.25000 0.75000 0.75000 1 0 + +24 +2.52225 +3 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 0 +0.25000 0.75000 0.75000 1 0 + +12 +2.52225 +3 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 1 +0.25000 0.75000 0.75000 1 0 + +24 +2.52225 +3 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 1 +0.25000 0.75000 0.75000 1 0 + +12 +2.52225 +3 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 0 +0.25000 0.75000 0.75000 1 1 + +12 +2.52225 +3 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 1 +0.25000 0.75000 0.75000 1 1 + +8 +2.52225 +3 +0.25000 0.25000 0.25000 1 0 +0.75000 0.75000 0.25000 1 0 +0.25000 0.75000 0.75000 1 0 + +24 +2.52225 +3 +0.25000 0.25000 0.25000 1 1 +0.75000 0.75000 0.25000 1 0 +0.25000 0.75000 0.75000 1 0 + +24 +2.52225 +3 +0.25000 0.25000 0.25000 1 1 +0.75000 0.75000 0.25000 1 1 +0.25000 0.75000 0.75000 1 0 + +8 +2.52225 +3 +0.25000 0.25000 0.25000 1 1 +0.75000 0.75000 0.25000 1 1 +0.25000 0.75000 0.75000 1 1 + +8 +2.52225 +3 +0.25000 0.25000 0.25000 1 0 +-0.25000 0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 + +24 +2.52225 +3 +0.25000 0.25000 0.25000 1 1 +-0.25000 0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 + +24 +2.52225 +3 +0.25000 0.25000 0.25000 1 1 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 0 + +8 +2.52225 +3 +0.25000 0.25000 0.25000 1 1 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 + +48 +2.95760 +3 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +3 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +3 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +3 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +3 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 0 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +3 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 0 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +3 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 1 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +3 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 1 + +12 +2.95760 +3 +1.00000 1.00000 1.00000 1 0 +1.00000 1.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +3 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 + +12 +2.95760 +3 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +0.25000 1.25000 1.25000 1 0 + +12 +2.95760 +3 +1.00000 1.00000 1.00000 1 0 +1.00000 1.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +3 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 1 + +12 +2.95760 +3 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.25000 1.25000 1 1 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.25000 1.25000 1 1 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.25000 1.25000 1 1 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.25000 1.25000 1 1 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +3 +0.25000 0.25000 0.25000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 1 0 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +3 +0.25000 0.25000 0.25000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 1 + +24 +3.56700 +3 +0.25000 0.25000 0.25000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 1 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +3 +1.00000 1.00000 1.00000 1 1 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +2 +2.52225 +4 +0.25000 0.25000 0.25000 1 0 +0.75000 0.25000 0.75000 1 0 +0.75000 0.75000 0.25000 1 0 +0.25000 0.75000 0.75000 1 0 + +8 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +0.75000 0.25000 0.75000 1 0 +0.75000 0.75000 0.25000 1 0 +0.25000 0.75000 0.75000 1 0 + +12 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +0.75000 0.25000 0.75000 1 1 +0.75000 0.75000 0.25000 1 0 +0.25000 0.75000 0.75000 1 0 + +8 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +0.75000 0.25000 0.75000 1 1 +0.75000 0.75000 0.25000 1 1 +0.25000 0.75000 0.75000 1 0 + +2 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +0.75000 0.25000 0.75000 1 1 +0.75000 0.75000 0.25000 1 1 +0.25000 0.75000 0.75000 1 1 + +8 +2.52225 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 0 +-0.25000 0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 + +24 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 0 +-0.25000 0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 + +8 +2.52225 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 1 +-0.25000 0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 + +24 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 1 +-0.25000 0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 + +24 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 0 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 0 + +24 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 1 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 0 + +8 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 0 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 + +8 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 1 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 + +2 +2.52225 +4 +0.25000 0.25000 0.25000 1 0 +-0.25000 0.75000 0.25000 1 0 +-0.25000 0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 + +8 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +-0.25000 0.75000 0.25000 1 0 +-0.25000 0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 + +12 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +-0.25000 0.75000 0.25000 1 1 +-0.25000 0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 + +8 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +-0.25000 0.75000 0.25000 1 1 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 0 + +2 +2.52225 +4 +0.25000 0.25000 0.25000 1 1 +-0.25000 0.75000 0.25000 1 1 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.75000 1.25000 0.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.75000 1.25000 0.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 0.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 0.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 0.75000 1 1 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 0.75000 1 1 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.75000 1.25000 0.75000 1 0 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.75000 1.25000 0.75000 1 0 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 0.75000 1 0 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 0.75000 1 0 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 0.75000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 0.75000 1 1 +0.25000 1.25000 1.25000 1 1 + +12 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 0 +0.50000 1.00000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 0 +0.50000 1.00000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 +0.50000 1.00000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 0 +0.50000 1.00000 1.50000 1 1 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 1 +0.50000 1.00000 1.50000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 +0.50000 1.00000 1.50000 1 1 +0.25000 1.25000 1.25000 1 0 + +12 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 +0.50000 1.00000 1.50000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.50000 1.00000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 1.00000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 1.00000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 1.00000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 1.00000 1.50000 1 1 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 1.00000 1.50000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 1.00000 1.50000 1 1 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 1.00000 1.50000 1 0 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 1.00000 1.50000 1 0 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 1.00000 1.50000 1 1 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 1 + +8 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 + +8 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 0 + +8 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 + +8 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.75000 1.25000 1.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.75000 1.25000 1.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 1.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 1.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.75000 1.25000 1.75000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.75000 1.25000 1.75000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 1.75000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 1.75000 1 1 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.75000 1.25000 1.75000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.75000 1.25000 1.75000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 1.75000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.75000 1.25000 1.75000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 1.25000 1.25000 1 0 + +48 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 1.25000 1.25000 1 0 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 1.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 1.25000 1.25000 1 1 + +24 +2.95760 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 1.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 1.25000 1.25000 1 1 + +12 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 0 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.25000 1.25000 1 0 + +12 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 0 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 1 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 1 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.25000 1.25000 1 0 + +12 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.25000 1.25000 1 0 + +12 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.25000 1.25000 1 0 + +12 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 0 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.25000 1.25000 1 1 + +12 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 0 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.25000 1.25000 1 1 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 1 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.25000 1.25000 1 1 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 1 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.25000 1.25000 1 1 + +12 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.25000 1.25000 1 1 + +12 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 0 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 0 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 0 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 0 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 0 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.00000 0.50000 0.50000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.00000 0.50000 0.50000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 1 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.25000 0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.25000 0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.25000 0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 1 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.25000 0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 1 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 1 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +-0.25000 0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 1 + +6 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +0.25000 -0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.25000 -0.25000 0.75000 1 0 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.25000 -0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 0 +0.25000 0.25000 1.25000 1 0 + +12 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +0.25000 -0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.25000 -0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 0 + +6 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.25000 -0.25000 0.75000 1 1 +0.25000 0.75000 0.75000 1 1 +0.25000 0.25000 1.25000 1 1 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 0 +0.50000 -0.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 0.25000 1.25000 1 0 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 0.25000 1.25000 1 0 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 0.25000 1.25000 1 1 + +48 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 0.25000 1.25000 1 1 + +24 +3.56700 +4 +0.25000 0.25000 0.25000 1 1 +0.50000 -0.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 0.25000 1.25000 1 1 + +12 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.50000 1.00000 1.50000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 1.00000 1.50000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 1.00000 1.50000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 1.00000 1.50000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 1.00000 1.50000 1 1 +0.25000 0.75000 1.75000 1 0 + +12 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 1.00000 1.50000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 1.00000 1.50000 1 1 +0.25000 0.75000 1.75000 1 0 + +12 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 1.00000 1.50000 1 0 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 1.00000 1.50000 1 0 +0.25000 0.75000 1.75000 1 1 + +12 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 1.00000 1.50000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +8 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 1.50000 1.50000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +8 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +8 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 1.50000 1.50000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 0 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +0.50000 1.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +8 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +0.50000 1.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 0.50000 1.50000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 1.50000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 0.50000 1.50000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 1.50000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 0.50000 1.50000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 1.50000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 0.50000 1.50000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 1.50000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 0.50000 1.50000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 1.50000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 0.50000 1.50000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 1.50000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 1 + +12 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 0.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 1.50000 1 1 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 0.50000 1.50000 1 1 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 1.50000 1 1 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +12 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 1.50000 1 1 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 1.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 1.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 1.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +0.25000 1.25000 1.25000 1 0 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 1.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 0 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +0.25000 1.25000 1.25000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 1.50000 1.50000 1 0 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 0 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 1.50000 1.50000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 1.50000 1.50000 1 0 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 0 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +1.25000 0.75000 1.75000 1 0 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 1.50000 1.50000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 0 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 1.50000 1.50000 1 1 +1.25000 0.75000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.75000 0.25000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.75000 0.25000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.75000 0.25000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.75000 0.25000 1.75000 1 0 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.75000 0.25000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.75000 0.25000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.75000 0.25000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +48 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.75000 0.25000 1.75000 1 1 +0.25000 0.75000 1.75000 1 0 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 0 +0.75000 0.25000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 0 +0.75000 0.25000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 0 +0.75000 0.75000 1.25000 1 1 +0.75000 0.25000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + +24 +3.88705 +4 +1.00000 1.00000 1.00000 1 1 +0.75000 0.75000 1.25000 1 1 +0.75000 0.25000 1.75000 1 1 +0.25000 0.75000 1.75000 1 1 + diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/go b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/go new file mode 100644 index 0000000..5b1da30 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=6.0 -3=4.15 -4=4.15 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/job.in b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/job.in new file mode 100755 index 0000000..355facc --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/job.in @@ -0,0 +1,13 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p maint-batch +##SBATCH --qos=avandewa-condo +#SBATCH --nodes=1 +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs_lev_4_diamond + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/rndstr.in b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/rndstr.in new file mode 100644 index 0000000..4303f99 --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/rndstr.in @@ -0,0 +1,8 @@ + +3.567 3.567 3.567 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0 0 0 c_A=0.5,c_B=0.25,c_C=0.25 +0.75 0.25 0.75 c_A=0.5,c_B=0.25,c_C=0.25 diff --git a/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/sqsparam.in b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/sqsparam.in new file mode 100644 index 0000000..a285f3b --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsdb_lev=4_c=0.5,0.25,0.25/sqsparam.in @@ -0,0 +1 @@ +10 0.75 1 10 diff --git a/data/sqsdb/DIAMOND_A4/sqsgen.in b/data/sqsdb/DIAMOND_A4/sqsgen.in new file mode 100644 index 0000000..049444c --- /dev/null +++ b/data/sqsdb/DIAMOND_A4/sqsgen.in @@ -0,0 +1,5 @@ +level=0 c=1 +level=1 c=0.5,0.5 +level=2 c=0.75,0.25 +level=3 c=0.33333,0.33333,0.33333 +level=4 c=0.5,0.25,0.25 diff --git a/data/sqsdb/FCC_A1/coord.in b/data/sqsdb/FCC_A1/coord.in new file mode 100644 index 0000000..48082f7 --- /dev/null +++ b/data/sqsdb/FCC_A1/coord.in @@ -0,0 +1 @@ +12 diff --git a/data/sqsdb/FCC_A1/rndstr.skel b/data/sqsdb/FCC_A1/rndstr.skel new file mode 100644 index 0000000..aa31812 --- /dev/null +++ b/data/sqsdb/FCC_A1/rndstr.skel @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=0_a=1/bestsqs.out b/data/sqsdb/FCC_A1/sqsdb_lev=0_a=1/bestsqs.out new file mode 100644 index 0000000..71d1d1e --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=0_a=1/bestsqs.out @@ -0,0 +1,7 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=0_a=1/rndstr.in b/data/sqsdb/FCC_A1/sqsdb_lev=0_a=1/rndstr.in new file mode 100644 index 0000000..b5e9ad8 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=0_a=1/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=1 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bak/bestcorra.out b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bak/bestcorra.out new file mode 100644 index 0000000..a652339 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bak/bestcorra.out @@ -0,0 +1,27 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 -0.010417 0.000000 -0.010417 +2 1.414214 0.062500 0.000000 0.062500 +2 1.581139 -0.062500 0.000000 -0.062500 +2 1.732051 0.093750 0.000000 0.093750 +2 1.870829 -0.020833 0.000000 -0.020833 +2 2.000000 -0.041667 0.000000 -0.041667 +2 2.121320 -0.010417 0.000000 -0.010417 +2 2.121320 -0.041667 0.000000 -0.041667 +2 2.236068 -0.041667 0.000000 -0.041667 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 -0.010417 0.000000 -0.010417 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 -0.010417 0.000000 -0.010417 +3 1.224745 0.041667 0.000000 0.041667 +3 1.224745 0.031250 0.000000 0.031250 +3 1.414214 -0.010417 0.000000 -0.010417 +3 1.414214 0.020833 0.000000 0.020833 +3 1.414214 0.062500 0.000000 0.062500 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +Objective_function= -0.651828 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bak/bestcorrb.out b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bak/bestcorrb.out new file mode 100644 index 0000000..e21d0cc --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bak/bestcorrb.out @@ -0,0 +1,9 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 -0.125000 0.000000 -0.125000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -0.125000 0.000000 -0.125000 +Objective_function= -17.070508 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bak/bestsqsa.out b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bak/bestsqsa.out new file mode 100644 index 0000000..5f93227 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bak/bestsqsa.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.000000 2.500000 -1.500000 +-0.000000 1.500000 -2.500000 +-2.000000 -0.500000 0.500000 +-1.000000 -0.000000 0.000000 a_A +-1.500000 0.500000 -1.000000 a_B +-1.500000 1.000000 -0.500000 a_A +-1.000000 0.500000 -0.500000 a_B +-2.000000 3.500000 -3.500000 a_A +-1.500000 1.000000 -1.500000 a_B +-1.500000 1.500000 -1.000000 a_A +-1.000000 1.000000 -1.000000 a_B +-2.000000 -0.000000 0.000000 a_B +-1.500000 1.500000 -2.000000 a_A +-1.500000 2.000000 -1.500000 a_A +-1.000000 1.500000 -1.500000 a_A +-0.500000 1.000000 -1.500000 a_B +-0.500000 1.500000 -1.000000 a_B +-2.000000 0.500000 -0.500000 a_A +-1.500000 2.000000 -2.500000 a_A +-1.500000 2.500000 -2.000000 a_A +-1.000000 2.000000 -2.000000 a_B +-0.500000 1.500000 -2.000000 a_A +-0.500000 2.000000 -1.500000 a_A +-2.000000 1.000000 -1.000000 a_B +-1.000000 2.500000 -2.500000 a_B +-0.500000 2.000000 -2.500000 a_A +-0.500000 2.500000 -2.000000 a_B +-2.000000 1.500000 -1.500000 a_B +-1.000000 3.000000 -3.000000 a_B +-0.500000 2.500000 -3.000000 a_A +-0.500000 3.000000 -2.500000 a_B +-2.000000 2.000000 -2.000000 a_B +-1.000000 3.500000 -3.500000 a_A +-2.000000 2.500000 -2.500000 a_B +-2.000000 3.000000 -3.000000 a_A diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bak/bestsqsb.out b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bak/bestsqsb.out new file mode 100644 index 0000000..31cc30f --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bak/bestsqsb.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +2.000000 -0.000000 1.000000 +2.000000 1.000000 0.000000 +-2.000000 1.500000 1.500000 +-1.000000 1.000000 1.000000 a_B +-1.000000 1.500000 1.500000 a_B +-0.500000 1.500000 2.000000 a_B +-0.500000 2.000000 1.500000 a_A +2.000000 2.500000 2.500000 a_A +-0.000000 0.500000 0.500000 a_B +-0.000000 1.000000 1.000000 a_A +0.000000 1.500000 1.500000 a_B +0.500000 0.500000 1.000000 a_B +0.500000 1.000000 1.500000 a_B +0.500000 1.500000 2.000000 a_B +0.500000 1.000000 0.500000 a_B +0.500000 1.500000 1.000000 a_B +0.500000 2.000000 1.500000 a_A +1.000000 0.500000 0.500000 a_A +1.000000 1.000000 1.000000 a_B +1.000000 1.500000 1.500000 a_B +1.000000 2.000000 2.000000 a_B +1.500000 0.500000 1.000000 a_A +1.500000 1.000000 1.500000 a_A +1.500000 1.500000 2.000000 a_A +1.500000 1.000000 0.500000 a_A +1.500000 1.500000 1.000000 a_A +1.500000 2.000000 1.500000 a_B +-0.000000 2.000000 2.000000 a_B +2.000000 1.000000 1.000000 a_A +2.000000 1.500000 1.500000 a_B +2.000000 2.000000 2.000000 a_A +2.500000 0.500000 1.000000 a_A +2.500000 1.000000 0.500000 a_A +3.000000 1.000000 1.000000 a_A +3.000000 1.500000 1.500000 a_A diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bestcorr.out b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..36bfa08 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bestcorr.out @@ -0,0 +1,19 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 -0.250000 0.000000 -0.250000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 -0.250000 0.000000 -0.250000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 0.666667 0.000000 0.666667 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +Objective_function= -12.975469 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bestsqs.out b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..067bda6 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-2.000000 -1.000000 1.000000 +-2.000000 1.000000 -1.000000 +2.000000 -1.000000 -1.000000 +-1.000000 -1.000000 -1.000000 a_B +-2.500000 -0.500000 -0.000000 a_B +-0.000000 -1.500000 -0.500000 a_A +-1.500000 -1.000000 0.500000 a_A +-2.500000 -0.000000 -0.500000 a_A +-2.000000 -0.500000 -0.500000 a_A +-0.000000 -1.000000 -1.000000 a_B +-1.500000 -1.000000 -0.500000 a_A +-1.500000 -0.500000 0.000000 a_A +-1.000000 -1.000000 0.000000 a_A +-1.000000 -0.500000 -1.500000 a_B +-0.500000 -1.500000 -0.000000 a_B +-0.000000 -0.500000 -1.500000 a_B +-1.500000 -0.500000 -1.000000 a_A +-1.500000 0.000000 -0.500000 a_B +-1.000000 -0.500000 -0.500000 a_B +1.000000 -1.000000 -1.000000 a_A +-0.500000 -1.000000 -0.500000 a_B +-0.500000 -0.500000 0.000000 a_B +-2.000000 0.000000 -1.000000 a_A +-1.500000 0.500000 -1.000000 a_A +-1.000000 0.000000 -1.000000 a_B +-1.000000 -1.500000 -0.500000 a_B +-0.500000 -0.500000 -1.000000 a_B +-0.500000 0.000000 -0.500000 a_B +0.000000 -0.500000 -0.500000 a_A +-2.000000 -1.000000 -1.000000 a_B +0.500000 -1.000000 -0.500000 a_B +-0.500000 -0.000000 -1.500000 a_A +-2.000000 -1.000000 0.000000 a_A +0.500000 -0.500000 -1.000000 a_A +-3.000000 -0.500000 -0.500000 a_A diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/clusters.out b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/clusters.out new file mode 100644 index 0000000..d8465d6 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/clusters.out @@ -0,0 +1,130 @@ +1 +0.00000 +0 + +1 +0.00000 +1 +1.00000 1.00000 1.00000 0 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 2.00000 0 0 + +24 +1.87083 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 -0.00000 1.50000 0 0 + +3 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/job.in b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/job.in new file mode 100755 index 0000000..3f1b6b4 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/rndstr.in b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/rndstr.in new file mode 100644 index 0000000..df7158c --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/rndstrgrp.out b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..ac2e20d --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/sqsparam.in b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..2deca7f --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=1_a=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +10 5 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/bestcorr.out b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..beb2dc6 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/bestcorr.out @@ -0,0 +1,19 @@ +2 0.707107 0.250000 0.250000 0.000000 +2 1.000000 0.250000 0.250000 0.000000 +2 1.224745 0.250000 0.250000 0.000000 +2 1.414214 0.270833 0.250000 0.020833 +2 1.581139 0.270833 0.250000 0.020833 +2 1.732051 0.187500 0.250000 -0.062500 +2 1.870829 0.218750 0.250000 -0.031250 +2 2.000000 0.125000 0.250000 -0.125000 +3 0.707107 -0.125000 -0.125000 0.000000 +3 1.000000 -0.125000 -0.125000 0.000000 +3 1.224745 -0.135417 -0.125000 -0.010417 +3 1.224745 -0.125000 -0.125000 0.000000 +3 1.224745 -0.093750 -0.125000 0.031250 +3 1.224745 -0.156250 -0.125000 -0.031250 +3 1.224745 -0.125000 -0.125000 0.000000 +4 0.707107 0.000000 0.062500 -0.062500 +4 1.000000 0.041667 0.062500 -0.020833 +4 1.000000 0.000000 0.062500 -0.062500 +Objective_function= -77.211787 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/bestsqs.out b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..83a4490 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.500000 -0.500000 -1.000000 +-1.000000 -0.000000 1.000000 +-1.000000 4.500000 -1.500000 +-1.500000 0.500000 -0.000000 a_A +-1.000000 -0.000000 0.000000 a_B +-1.000000 0.500000 0.500000 a_A +-2.000000 4.000000 -2.000000 a_B +-1.500000 1.000000 -0.500000 a_B +-1.500000 1.500000 0.000000 a_A +-1.000000 0.500000 -0.500000 a_A +-1.000000 1.000000 0.000000 a_A +-0.500000 -0.000000 -0.500000 a_A +-0.500000 0.500000 0.000000 a_B +-2.500000 4.000000 -1.500000 a_A +-1.500000 1.500000 -1.000000 a_A +-1.500000 2.000000 -0.500000 a_A +-1.500000 2.500000 -0.000000 a_A +-1.000000 1.000000 -1.000000 a_A +-1.000000 1.500000 -0.500000 a_A +-0.500000 1.000000 -0.500000 a_A +-2.000000 3.000000 -1.000000 a_B +-1.500000 2.500000 -1.000000 a_B +-1.500000 3.000000 -0.500000 a_A +-1.000000 1.500000 -1.500000 a_A +-1.000000 2.000000 -1.000000 a_A +-1.000000 2.500000 -0.500000 a_A +-2.000000 3.500000 -1.500000 a_A +-2.000000 4.000000 -1.000000 a_A +-1.500000 3.000000 -1.500000 a_A +-1.500000 3.500000 -1.000000 a_A +-1.000000 2.500000 -1.500000 a_B +-1.000000 3.000000 -1.000000 a_B +-1.500000 3.500000 -2.000000 a_A +-1.500000 4.000000 -1.500000 a_A +-1.000000 3.500000 -1.500000 a_A diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/clusters.out b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/clusters.out new file mode 100644 index 0000000..5861dd0 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/clusters.out @@ -0,0 +1,121 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 2.00000 0 0 + +24 +1.87083 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 -0.00000 1.50000 0 0 + +3 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/go b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/go new file mode 100755 index 0000000..d5f02fd --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=2.0 -3=1.3 -4=1 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/job.in b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/job.in new file mode 100755 index 0000000..2611032 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -wn=0.75 -wr=20 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/rndstr.in b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/rndstr.in new file mode 100644 index 0000000..bde07aa --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.75,a_B=0.25 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/rndstrgrp.out b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/rndstrgrp.out new file mode 100644 index 0000000..6767379 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=2_a=0.75,0.25/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.000000 0.000000 0.000000 a_A=0.750000,a_B=0.250000 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestcorr.out b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestcorr.out new file mode 100644 index 0000000..e033053 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestcorr.out @@ -0,0 +1,28 @@ +2 0.707107 -0.000000 0.000000 -0.000000 +2 0.707107 0.000000 -0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 -0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.020833 0.000000 0.020833 +2 1.224745 0.015035 -0.000000 0.015035 +2 1.224745 0.024306 0.000000 0.024306 +2 1.414214 -0.000000 0.000000 -0.000000 +2 1.414214 -0.000000 -0.000000 -0.000000 +2 1.414214 -0.013889 0.000000 -0.013889 +3 0.707107 -0.003906 0.000000 -0.003906 +3 0.707107 -0.024808 -0.000000 -0.024808 +3 0.707107 -0.027344 0.000000 -0.027344 +3 0.707107 -0.011276 -0.000000 -0.011276 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 -0.000000 -0.000000 -0.000000 +3 1.000000 0.009021 -0.000000 0.009021 +3 1.000000 0.005208 0.000000 0.005208 +3 1.000000 -0.010417 0.000000 -0.010417 +3 1.000000 -0.003007 -0.000000 -0.003007 +4 0.707107 -0.000000 0.000000 -0.000000 +4 0.707107 0.013532 -0.000000 0.013532 +4 0.707107 0.015625 0.000000 0.015625 +4 0.707107 0.004511 -0.000000 0.004511 +4 0.707107 0.031250 0.000000 0.031250 +Objective_function= -34.867531 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestsqs.out b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestsqs.out new file mode 100644 index 0000000..43de70e --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestsqs.out @@ -0,0 +1,42 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 -0.500000 -1.000000 +-1.500000 -1.500000 0.000000 +-2.000000 2.000000 -2.000000 +-1.500000 -1.000000 -0.500000 a_A +-3.000000 0.500000 -2.500000 a_A +-2.500000 0.500000 -3.000000 a_A +-2.500000 -0.000000 -1.500000 a_C +-2.000000 -0.500000 -1.500000 a_C +-1.500000 -0.500000 -2.000000 a_A +-1.500000 -1.000000 -1.500000 a_B +-1.500000 -0.500000 -1.000000 a_B +-1.000000 -1.000000 -1.000000 a_A +-1.000000 -0.500000 -0.500000 a_B +-2.500000 1.000000 -2.500000 a_B +-2.000000 1.000000 -3.000000 a_B +-2.500000 -0.000000 -2.500000 a_C +-2.500000 0.500000 -2.000000 a_B +-2.000000 -0.000000 -2.000000 a_C +-2.000000 0.500000 -1.500000 a_A +-1.500000 -0.000000 -1.500000 a_B +-1.000000 -0.000000 -2.000000 a_A +-1.000000 -0.500000 -1.500000 a_A +-1.000000 -0.000000 -1.000000 a_C +-0.500000 -0.500000 -1.000000 a_C +-0.500000 -0.000000 -0.500000 a_B +-2.000000 1.500000 -2.500000 a_C +-3.000000 -0.000000 -3.000000 a_C +-2.000000 0.500000 -2.500000 a_B +-2.000000 1.000000 -2.000000 a_B +-1.500000 0.500000 -2.000000 a_C +-1.500000 1.000000 -1.500000 a_C +-1.000000 0.500000 -1.500000 a_C +-2.000000 -1.000000 -2.000000 a_A +-0.500000 -0.000000 -1.500000 a_B +-2.000000 -1.000000 -1.000000 a_A +-1.500000 -1.500000 -1.000000 a_A +-1.500000 1.000000 -2.500000 a_C +-3.000000 -0.000000 -2.000000 a_B +-2.500000 -0.500000 -2.000000 a_A diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/clusters.out b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/clusters.out new file mode 100644 index 0000000..c2c83aa --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/clusters.out @@ -0,0 +1,320 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 0 + +12 +0.70711 +2 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +6 +1.00000 +2 +1.00000 1.00000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 1 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 1 0 +-0.00000 0.50000 1.50000 1 0 + +24 +1.22474 +2 +1.00000 1.00000 1.00000 1 1 +-0.00000 0.50000 1.50000 1 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 1 1 +-0.00000 0.50000 1.50000 1 1 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 1 0 +-0.00000 1.00000 2.00000 1 0 + +12 +1.41421 +2 +1.00000 1.00000 1.00000 1 1 +-0.00000 1.00000 2.00000 1 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 1 1 +-0.00000 1.00000 2.00000 1 1 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 1 0 +-0.50000 0.50000 1.00000 1 0 + +24 +1.58114 +2 +1.00000 1.00000 1.00000 1 1 +-0.50000 0.50000 1.00000 1 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 1 1 +-0.50000 0.50000 1.00000 1 1 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 + +24 +0.70711 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 + +24 +0.70711 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +24 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +24 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 1 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 1 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 0.50000 0.50000 1 0 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 0.50000 1 0 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 + +12 +0.70711 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 0.50000 1 1 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 0.50000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 0.50000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +24 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +24 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +48 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +24 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 1 + +24 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 1 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 1 + +3 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 1.50000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.50000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.50000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +6 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 1.50000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.50000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +3 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.50000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 1 + diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/go b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/go new file mode 100755 index 0000000..2b0d1bd --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=1.7 -3=1.0 -4=1.0 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/job.in b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/job.in new file mode 100755 index 0000000..a86843a --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -wr=20 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstr.in b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstr.in new file mode 100644 index 0000000..497766e --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.33333,a_B=0.33333,a_C=0.33333 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstrgrp.out b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstrgrp.out new file mode 100644 index 0000000..b172599 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.000000 0.000000 0.000000 a_A=0.333330,a_B=0.333330,a_C=0.333330 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/bestcorr.out b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/bestcorr.out new file mode 100644 index 0000000..87353e8 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/bestcorr.out @@ -0,0 +1,46 @@ +2 0.707107 0.062500 0.062500 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.062500 0.062500 -0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.027344 0.062500 -0.035156 +2 1.224745 0.000000 0.000000 -0.000000 +2 1.224745 -0.019531 0.000000 -0.019531 +2 1.414214 0.003906 0.062500 -0.058594 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 -0.011719 0.000000 -0.011719 +2 1.581139 0.097656 0.062500 0.035156 +2 1.581139 -0.003383 0.000000 -0.003383 +2 1.581139 0.015625 0.000000 0.015625 +3 0.707107 -0.015625 -0.015625 0.000000 +3 0.707107 -0.005074 -0.000000 -0.005074 +3 0.707107 0.000000 -0.000000 0.000000 +3 0.707107 0.005074 -0.000000 0.005074 +3 1.000000 -0.015625 -0.015625 0.000000 +3 1.000000 -0.015223 -0.000000 -0.015223 +3 1.000000 0.010149 -0.000000 0.010149 +3 1.000000 0.008789 -0.000000 0.008789 +3 1.000000 -0.005859 -0.000000 -0.005859 +3 1.000000 0.000000 -0.000000 0.000000 +4 0.707107 0.003906 0.003906 -0.000000 +4 0.707107 -0.007612 0.000000 -0.007612 +4 0.707107 -0.008789 0.000000 -0.008789 +4 0.707107 0.002537 0.000000 0.002537 +4 0.707107 -0.017578 0.000000 -0.017578 +4 1.000000 0.003906 0.003906 0.000000 +4 1.000000 0.012686 0.000000 0.012686 +4 1.000000 0.015223 0.000000 0.015223 +4 1.000000 -0.004395 0.000000 -0.004395 +4 1.000000 -0.000000 0.000000 -0.000000 +4 1.000000 -0.002537 0.000000 -0.002537 +4 1.000000 0.002930 0.000000 0.002930 +4 1.000000 -0.010149 0.000000 -0.010149 +4 1.000000 -0.002930 0.000000 -0.002930 +4 1.000000 -0.048828 0.003906 -0.052734 +4 1.000000 0.020297 0.000000 0.020297 +4 1.000000 -0.017578 0.000000 -0.017578 +4 1.000000 -0.005859 0.000000 -0.005859 +4 1.000000 -0.000000 0.000000 -0.000000 +4 1.000000 -0.017578 0.000000 -0.017578 +Objective_function= -60.883232 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/bestsqs.out b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/bestsqs.out new file mode 100644 index 0000000..b40302e --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.500000 -0.000000 -1.500000 +1.500000 1.500000 -1.000000 +2.000000 -1.000000 -1.000000 +3.000000 0.500000 -3.500000 a_A +-0.000000 0.000000 -1.000000 a_C +0.500000 0.000000 -0.500000 a_A +2.000000 1.000000 -3.000000 a_A +0.500000 0.000000 -1.500000 a_C +0.500000 0.500000 -1.000000 a_A +1.000000 -0.500000 -1.500000 a_B +1.000000 0.000000 -1.000000 a_C +1.500000 -0.500000 -1.000000 a_A +0.500000 0.500000 -2.000000 a_C +1.000000 0.000000 -2.000000 a_A +1.000000 0.500000 -1.500000 a_C +1.000000 1.000000 -1.000000 a_A +1.500000 -0.500000 -2.000000 a_A +1.500000 0.000000 -1.500000 a_C +1.500000 0.500000 -1.000000 a_A +2.000000 -0.500000 -1.500000 a_A +1.000000 1.000000 -2.000000 a_A +1.500000 0.000000 -2.500000 a_A +1.500000 0.500000 -2.000000 a_B +1.500000 1.000000 -1.500000 a_B +2.000000 -0.500000 -2.500000 a_B +2.000000 0.000000 -2.000000 a_C +2.000000 0.500000 -1.500000 a_C +2.500000 0.000000 -1.500000 a_B +1.500000 1.000000 -2.500000 a_A +2.000000 0.500000 -2.500000 a_B +2.000000 1.000000 -2.000000 a_A +2.500000 0.000000 -2.500000 a_B +2.500000 0.500000 -2.000000 a_B +2.500000 0.500000 -3.000000 a_A +3.000000 0.500000 -2.500000 a_A diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/clusters.out b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/clusters.out new file mode 100644 index 0000000..c2c83aa --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/clusters.out @@ -0,0 +1,320 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 0 + +12 +0.70711 +2 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +6 +1.00000 +2 +1.00000 1.00000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 1 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 1 0 +-0.00000 0.50000 1.50000 1 0 + +24 +1.22474 +2 +1.00000 1.00000 1.00000 1 1 +-0.00000 0.50000 1.50000 1 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 1 1 +-0.00000 0.50000 1.50000 1 1 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 1 0 +-0.00000 1.00000 2.00000 1 0 + +12 +1.41421 +2 +1.00000 1.00000 1.00000 1 1 +-0.00000 1.00000 2.00000 1 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 1 1 +-0.00000 1.00000 2.00000 1 1 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 1 0 +-0.50000 0.50000 1.00000 1 0 + +24 +1.58114 +2 +1.00000 1.00000 1.00000 1 1 +-0.50000 0.50000 1.00000 1 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 1 1 +-0.50000 0.50000 1.00000 1 1 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 + +24 +0.70711 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 + +24 +0.70711 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +24 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 0 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +24 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 1 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 1 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 1 0 +1.00000 0.50000 0.50000 1 0 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 0.50000 1 0 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 + +12 +0.70711 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 0.50000 1 1 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 0.50000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 1 1 +1.00000 0.50000 0.50000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +24 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +24 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +48 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +24 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 1 + +24 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 1 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 1 + +3 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 1.50000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.50000 1.00000 1 0 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.50000 1.00000 1 1 +0.50000 0.50000 1.00000 1 0 +-0.00000 1.00000 1.00000 1 0 + +6 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.50000 1.50000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.50000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 0 + +3 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.50000 1.50000 1.00000 1 1 +0.50000 0.50000 1.00000 1 1 +-0.00000 1.00000 1.00000 1 1 + diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/go b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/go new file mode 100755 index 0000000..2b0d1bd --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=1.7 -3=1.0 -4=1.0 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/job.in b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/job.in new file mode 100755 index 0000000..bbcf2d6 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -wr=20 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/rndstr.in b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/rndstr.in new file mode 100644 index 0000000..3dc6a51 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.5,a_B=0.25,a_C=0.25 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/rndstrgrp.out b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/rndstrgrp.out new file mode 100644 index 0000000..d889d41 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=4_a=0.5,0.25,0.25/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.250000,a_C=0.250000 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/bestcorr.out b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/bestcorr.out new file mode 100644 index 0000000..95beb83 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/bestcorr.out @@ -0,0 +1,19 @@ +2 0.707107 0.062500 0.062500 0.000000 +2 1.000000 0.041667 0.062500 -0.020833 +2 1.224745 0.052083 0.062500 -0.010417 +2 1.414214 0.041667 0.062500 -0.020833 +2 1.581139 0.041667 0.062500 -0.020833 +2 1.732051 0.031250 0.062500 -0.031250 +2 1.870829 0.000000 0.062500 -0.062500 +2 2.000000 0.166667 0.062500 0.104167 +3 0.707107 -0.031250 -0.015625 -0.015625 +3 1.000000 -0.041667 -0.015625 -0.026042 +3 1.224745 -0.010417 -0.015625 0.005208 +3 1.224745 0.000000 -0.015625 0.015625 +3 1.224745 -0.010417 -0.015625 0.005208 +3 1.224745 -0.020833 -0.015625 -0.005208 +3 1.224745 -0.031250 -0.015625 -0.015625 +4 0.707107 0.000000 0.003906 -0.003906 +4 1.000000 0.000000 0.003906 -0.003906 +4 1.000000 0.000000 0.003906 -0.003906 +Objective_function= -3.393597 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/bestsqs.out b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/bestsqs.out new file mode 100644 index 0000000..7441646 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 -0.500000 -0.500000 +1.000000 2.000000 1.000000 +-0.000000 -2.000000 2.000000 +2.000000 -0.000000 2.000000 a_B +1.500000 -0.000000 2.500000 a_B +0.500000 -1.500000 2.000000 a_A +2.000000 0.500000 1.500000 a_A +1.500000 0.500000 2.000000 a_A +0.500000 -1.000000 1.500000 a_A +1.500000 -1.000000 1.500000 a_A +1.000000 -1.500000 1.500000 a_A +1.000000 -1.000000 2.000000 a_B +1.000000 -0.500000 2.500000 a_B +2.000000 1.000000 1.000000 a_A +1.500000 1.000000 1.500000 a_A +0.500000 -0.500000 1.000000 a_A +1.500000 -0.500000 1.000000 a_A +1.000000 -1.000000 1.000000 a_A +1.000000 -0.500000 1.500000 a_A +1.000000 0.000000 2.000000 a_B +1.500000 -0.500000 2.000000 a_A +2.000000 -0.500000 2.500000 a_A +1.500000 1.500000 1.000000 a_A +0.500000 0.000000 0.500000 a_B +1.500000 -0.000000 0.500000 a_A +1.000000 -0.500000 0.500000 a_B +1.000000 0.000000 1.000000 a_B +1.000000 0.500000 1.500000 a_B +1.500000 0.000000 1.500000 a_B +1.500000 -1.500000 2.000000 a_A +1.000000 0.000000 -0.000000 a_B +1.000000 0.500000 0.500000 a_A +1.000000 1.000000 1.000000 a_A +1.500000 0.500000 1.000000 a_B +1.500000 1.000000 0.500000 a_A diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/clusters.out b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/clusters.out new file mode 100644 index 0000000..e4e2942 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/clusters.out @@ -0,0 +1,121 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 2.00000 0 0 + +24 +1.87083 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 2.00000 0 0 + +3 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/rndstr.in b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/rndstr.in new file mode 100644 index 0000000..b5976b6 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.625,a_B=0.375 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/rndstrgrp.out b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/rndstrgrp.out new file mode 100644 index 0000000..05d7a48 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.625,0.375/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.000000 0.000000 0.000000 a_A=0.625000,a_B=0.375000 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/bestcorr.out b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/bestcorr.out new file mode 100644 index 0000000..a718278 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/bestcorr.out @@ -0,0 +1,19 @@ +2 0.707107 0.562500 0.562500 0.000000 +2 1.000000 0.541667 0.562500 -0.020833 +2 1.224745 0.562500 0.562500 0.000000 +2 1.414214 0.562500 0.562500 0.000000 +2 1.581139 0.572917 0.562500 0.010417 +2 1.732051 0.562500 0.562500 0.000000 +2 1.870829 0.557292 0.562500 -0.005208 +2 2.000000 0.583333 0.562500 0.020833 +3 0.707107 -0.437500 -0.421875 -0.015625 +3 1.000000 -0.416667 -0.421875 0.005208 +3 1.224745 -0.416667 -0.421875 0.005208 +3 1.224745 -0.427083 -0.421875 -0.005208 +3 1.224745 -0.406250 -0.421875 0.015625 +3 1.224745 -0.406250 -0.421875 0.015625 +3 1.224745 -0.406250 -0.421875 0.015625 +4 0.707107 0.375000 0.316406 0.058594 +4 1.000000 0.354167 0.316406 0.037760 +4 1.000000 0.333333 0.316406 0.016927 +Objective_function= -3.400397 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/bestsqs.out b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/bestsqs.out new file mode 100644 index 0000000..c5fad4a --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.500000 1.500000 0.000000 +-1.500000 -1.000000 0.500000 +1.500000 -0.000000 2.500000 +-1.000000 -0.500000 1.500000 a_A +-0.500000 -0.500000 2.000000 a_A +-0.500000 -0.000000 2.500000 a_A +0.000000 -0.500000 2.500000 a_A +-1.500000 -0.000000 0.500000 a_A +-1.500000 0.500000 1.000000 a_B +-1.000000 -0.500000 0.500000 a_A +-1.000000 -0.000000 1.000000 a_A +-1.000000 0.500000 1.500000 a_A +-0.500000 -0.500000 1.000000 a_A +-0.500000 -0.000000 1.500000 a_A +-0.500000 0.500000 2.000000 a_A +-0.500000 1.000000 1.500000 a_A +0.000000 -0.000000 2.000000 a_A +0.000000 0.500000 2.500000 a_A +0.500000 -0.000000 2.500000 a_B +-1.000000 0.500000 0.500000 a_A +-0.500000 -0.000000 0.500000 a_A +-0.500000 0.500000 1.000000 a_A +0.000000 -0.000000 1.000000 a_A +-0.000000 0.500000 1.500000 a_A +0.000000 1.000000 2.000000 a_A +0.500000 0.000000 1.500000 a_A +0.500000 0.500000 2.000000 a_A +0.500000 1.000000 2.500000 a_A +1.000000 -0.000000 2.000000 a_A +1.000000 0.500000 2.500000 a_B +-0.500000 1.000000 0.500000 a_A +-0.500000 0.500000 3.000000 a_A +-0.000000 0.500000 0.500000 a_B +-0.000000 1.000000 1.000000 a_A +0.500000 1.000000 1.500000 a_A diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/clusters.out b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/clusters.out new file mode 100644 index 0000000..e4e2942 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/clusters.out @@ -0,0 +1,121 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 2.00000 0 0 + +24 +1.87083 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 2.00000 0 0 + +3 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/rndstr.in b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/rndstr.in new file mode 100644 index 0000000..40959f0 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.875,a_B=0.125 diff --git a/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/rndstrgrp.out b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/rndstrgrp.out new file mode 100644 index 0000000..73f1a5d --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsdb_lev=5_a=0.875,0.125/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.000000 0.000000 0.000000 a_A=0.875000,a_B=0.125000 diff --git a/data/sqsdb/FCC_A1/sqsgen.in b/data/sqsdb/FCC_A1/sqsgen.in new file mode 100644 index 0000000..1dbe272 --- /dev/null +++ b/data/sqsdb/FCC_A1/sqsgen.in @@ -0,0 +1,7 @@ +level=0 a=1 +level=1 a=0.5,0.5 +level=2 a=0.75,0.25 +level=3 a=0.33333,0.33333,0.33333 +level=4 a=0.5,0.25,0.25 +level=5 a=0.875,0.125 +level=5 a=0.625,0.375 diff --git a/data/sqsdb/FE3AL_D03/rndstr.skel b/data/sqsdb/FE3AL_D03/rndstr.skel new file mode 100644 index 0000000..3e64f20 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/rndstr.skel @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c +0.25 0.25 0.75 c + +0.5 0.5 0.5 b + +0 0 0 a diff --git a/data/sqsdb/FE3AL_D03/rndstr.skel.sspp b/data/sqsdb/FE3AL_D03/rndstr.skel.sspp new file mode 100644 index 0000000..39fa5f7 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/rndstr.skel.sspp @@ -0,0 +1,12 @@ +#const a=1; +{a} {a} {a} {90} {90} {90} +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +#const c="c"; +{1/4} {1/4} {1/4} {c} +{1/4} {1/4} {3/4} {c} +#const b="b"; +{1/2} {1/2} {1/2} {b} +#const a="a"; +{0} {0} {0} {a} diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=0_a=1_b=1_c=1/bestsqs.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=0_a=1_b=1_c=1/bestsqs.out new file mode 100644 index 0000000..5d5f0b0 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=0_a=1_b=1_c=1/bestsqs.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 +0.250000 0.250000 0.250000 c_A +0.250000 0.250000 0.750000 c_A +0.500000 0.500000 0.500000 b_A +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=0_a=1_b=1_c=1/rndstr.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=0_a=1_b=1_c=1/rndstr.in new file mode 100644 index 0000000..dbbe33d --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=0_a=1_b=1_c=1/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=1 +0.25 0.25 0.75 c_A=1 + +0.5 0.5 0.5 b_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/bestcorr.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/bestcorr.out new file mode 100644 index 0000000..dae3675 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/bestcorr.out @@ -0,0 +1,16 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +Objective_function= -7.354555 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/bestsqs.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/bestsqs.out new file mode 100644 index 0000000..e0ce06c --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 -0.500000 -0.500000 +0.000000 1.000000 -1.000000 +1.000000 1.500000 1.500000 +1.000000 2.000000 0.000000 a_A +1.000000 1.500000 0.500000 a_A +1.500000 1.000000 0.500000 a_A +1.500000 1.500000 1.000000 a_A +0.500000 0.500000 -0.000000 a_B +2.000000 2.000000 0.000000 a_A +1.000000 1.000000 -1.000000 a_B +1.000000 1.500000 -0.500000 a_B +1.500000 1.500000 0.000000 a_B +1.500000 2.000000 0.500000 a_A +0.500000 1.000000 -0.500000 a_A +2.000000 1.500000 0.500000 a_B +1.000000 0.500000 -0.500000 a_B +1.000000 1.000000 -0.000000 a_A +1.500000 0.500000 -0.000000 a_B +1.500000 1.000000 -0.500000 a_B +0.750000 1.750000 -0.250000 c_A +0.750000 1.250000 0.250000 c_A +1.250000 0.750000 0.250000 c_A +1.250000 1.250000 0.750000 c_A +0.250000 0.250000 -0.250000 c_A +1.750000 1.750000 -0.250000 c_A +0.750000 0.750000 -1.250000 c_A +0.750000 1.250000 -0.750000 c_A +1.250000 1.250000 -0.250000 c_A +1.250000 1.750000 0.250000 c_A +0.250000 0.750000 -0.750000 c_A +1.750000 1.250000 0.250000 c_A +0.750000 0.250000 -0.750000 c_A +0.750000 0.750000 -0.250000 c_A +1.250000 0.250000 -0.250000 c_A +1.250000 0.750000 -0.750000 c_A +0.250000 1.250000 -0.750000 c_A +0.250000 0.750000 -0.250000 c_A +0.750000 0.250000 -0.250000 c_A +0.750000 0.750000 0.250000 c_A +0.750000 1.250000 0.750000 c_A +1.250000 1.250000 -0.750000 c_A +1.250000 1.750000 -0.250000 c_A +1.250000 2.250000 0.250000 c_A +0.750000 0.750000 -0.750000 c_A +0.750000 1.250000 -0.250000 c_A +0.750000 1.750000 0.250000 c_A +1.250000 0.750000 -0.250000 c_A +1.250000 1.250000 0.250000 c_A +1.250000 1.750000 0.750000 c_A +1.750000 1.250000 0.750000 c_A +1.750000 1.750000 0.250000 c_A +0.500000 1.500000 -0.500000 b_A +0.500000 1.000000 0.000000 b_A +1.000000 0.500000 0.000000 b_A +1.000000 1.000000 0.500000 b_A +1.000000 1.500000 1.000000 b_A +1.500000 1.500000 -0.500000 b_A +1.500000 2.000000 0.000000 b_A +0.500000 1.000000 -1.000000 b_A +1.000000 1.000000 -0.500000 b_A +1.000000 1.500000 0.000000 b_A +1.000000 2.000000 0.500000 b_A +1.500000 1.000000 0.000000 b_A +1.500000 1.500000 0.500000 b_A +0.500000 0.500000 -0.500000 b_A +1.000000 -0.000000 -0.500000 b_A +1.000000 0.500000 -1.000000 b_A diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/clusters.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/clusters.out new file mode 100644 index 0000000..2d5d7fe --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/clusters.out @@ -0,0 +1,103 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/go b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/go new file mode 100755 index 0000000..3ba3055 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.6 -3=1.3 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/job.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/job.in new file mode 100755 index 0000000..6663949 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D03_lv1 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/rndstr.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/rndstr.in new file mode 100644 index 0000000..4756d7e --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=1 +0.25 0.25 0.75 c_A=1 + +0.5 0.5 0.5 b_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/rndstrgrp.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/rndstrgrp.out new file mode 100644 index 0000000..10f0b92 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +1.000000 1.000000 1.000000 a_A=0.500000,a_B=0.500000 + +0.750000 0.750000 0.750000 c_A=1.000000 +0.250000 0.250000 0.250000 c_A=1.000000 + +0.500000 0.500000 0.500000 b_A=1.000000 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/bestcorr.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/bestcorr.out new file mode 100644 index 0000000..dae3675 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/bestcorr.out @@ -0,0 +1,16 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +Objective_function= -7.354555 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/bestsqs.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/bestsqs.out new file mode 100644 index 0000000..3662c2a --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.000000 2.000000 +-1.000000 2.000000 1.000000 +-2.000000 1.000000 1.000000 +-1.500000 1.500000 1.500000 b_A +-2.000000 2.500000 2.000000 b_B +-2.000000 2.000000 2.500000 b_A +-2.500000 3.000000 3.000000 b_A +-0.500000 0.500000 0.500000 b_A +-2.500000 2.000000 2.000000 b_B +-1.000000 1.500000 1.000000 b_B +-3.000000 3.000000 2.500000 b_B +-1.000000 1.000000 1.500000 b_B +-3.000000 2.500000 3.000000 b_A +-1.500000 2.000000 2.000000 b_B +-3.500000 3.500000 3.500000 b_B +-1.500000 1.000000 1.000000 b_A +-2.000000 2.000000 1.500000 b_A +-2.000000 1.500000 2.000000 b_A +-2.500000 2.500000 2.500000 b_B +-1.250000 1.750000 1.750000 c_A +-0.750000 0.750000 1.250000 c_A +-0.750000 1.250000 0.750000 c_A +-0.250000 0.250000 0.250000 c_A +-2.250000 1.750000 1.750000 c_A +-2.250000 2.250000 2.250000 c_A +-2.750000 2.750000 2.250000 c_A +-1.750000 1.250000 1.750000 c_A +-2.750000 2.250000 2.750000 c_A +-1.750000 1.750000 1.250000 c_A +-3.250000 3.250000 3.250000 c_A +-1.250000 0.750000 0.750000 c_A +-1.250000 1.250000 1.250000 c_A +-1.750000 2.250000 1.750000 c_A +-1.750000 1.750000 2.250000 c_A +-2.250000 2.750000 2.750000 c_A +-2.750000 3.250000 3.250000 c_A +-2.250000 2.250000 2.750000 c_A +-2.250000 2.750000 2.250000 c_A +-1.750000 1.750000 1.750000 c_A +-1.750000 2.250000 2.250000 c_A +-3.750000 3.750000 3.750000 c_A +-1.250000 1.250000 1.750000 c_A +-3.250000 2.750000 3.250000 c_A +-1.250000 1.750000 1.250000 c_A +-3.250000 3.250000 2.750000 c_A +-0.750000 0.750000 0.750000 c_A +-2.750000 2.250000 2.250000 c_A +-2.750000 2.750000 2.750000 c_A +-2.250000 1.750000 2.250000 c_A +-2.250000 2.250000 1.750000 c_A +-1.750000 1.250000 1.250000 c_A +-3.000000 3.000000 3.000000 a_A +-2.500000 2.000000 2.500000 a_A +-2.500000 2.500000 2.000000 a_A +-2.000000 1.500000 1.500000 a_A +-2.000000 2.000000 2.000000 a_A +-2.000000 2.500000 2.500000 a_A +-2.500000 3.000000 2.500000 a_A +-1.500000 1.500000 2.000000 a_A +-2.500000 2.500000 3.000000 a_A +-1.500000 2.000000 1.500000 a_A +-3.000000 3.500000 3.500000 a_A +-1.000000 1.000000 1.000000 a_A +-3.000000 2.500000 2.500000 a_A +-3.500000 3.500000 3.000000 a_A +-3.500000 3.000000 3.500000 a_A +-4.000000 4.000000 4.000000 a_A diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/clusters.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/clusters.out new file mode 100644 index 0000000..71e2355 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/clusters.out @@ -0,0 +1,103 @@ +6 +0.70711 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 + +3 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +1.22474 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +6 +1.41421 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 + +12 +1.58114 +2 +0.50000 0.50000 0.50000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +8 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.50000 0.50000 0.50000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.50000 0.00000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +2 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +12 +1.00000 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.50000 0.50000 0.50000 0 0 + +3 +1.00000 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.00000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.50000 0.50000 0.50000 0 0 + diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/go b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/go new file mode 100755 index 0000000..3ba3055 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.6 -3=1.3 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/job.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/job.in new file mode 100755 index 0000000..6663949 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D03_lv1 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/rndstr.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/rndstr.in new file mode 100644 index 0000000..ea7985a --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=1 +0.25 0.25 0.75 c_A=1 + +0.5 0.5 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/rndstrgrp.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/rndstrgrp.out new file mode 100644 index 0000000..2c9e0b7 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +-0.500000 -0.500000 -0.500000 b_A=0.500000,b_B=0.500000 + +-0.250000 -0.250000 -0.250000 c_A=1.000000 +0.250000 0.250000 0.250000 c_A=1.000000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..bba042b --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,27 @@ +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.118034 0.000000 0.000000 0.000000 +2 1.224745 -0.166667 0.000000 -0.166667 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.866025 0.000000 0.000000 0.000000 +3 0.866025 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +Objective_function= -815.513418 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..4494549 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.500000 0.500000 0.000000 +1.000000 1.000000 0.000000 +-0.000000 0.000000 -4.000000 +0.250000 1.250000 -0.250000 c_B +0.250000 1.250000 -1.250000 c_A +0.750000 1.250000 -0.750000 c_B +-0.250000 0.750000 -0.250000 c_A +0.250000 1.250000 -2.250000 c_A +0.750000 1.250000 -1.750000 c_B +-0.250000 0.750000 -1.250000 c_B +0.250000 0.750000 -0.750000 c_A +0.250000 1.250000 -3.250000 c_B +0.750000 1.250000 -2.750000 c_A +-0.250000 0.750000 -2.250000 c_B +0.250000 0.750000 -1.750000 c_A +0.750000 1.250000 -3.750000 c_B +-0.250000 0.750000 -3.250000 c_A +0.250000 0.750000 -2.750000 c_B +0.250000 0.750000 -3.750000 c_A +-0.250000 0.750000 -3.750000 c_A +-0.250000 0.750000 -0.750000 c_B +0.250000 0.750000 -0.250000 c_B +0.250000 1.250000 -3.750000 c_A +-0.250000 0.750000 -1.750000 c_B +0.250000 0.750000 -1.250000 c_A +0.250000 1.250000 -0.750000 c_B +0.750000 1.250000 -0.250000 c_B +-0.250000 0.750000 -2.750000 c_B +0.250000 0.750000 -2.250000 c_A +0.250000 1.250000 -1.750000 c_B +0.750000 1.250000 -1.250000 c_A +0.250000 0.750000 -3.250000 c_A +0.250000 1.250000 -2.750000 c_B +0.750000 1.250000 -2.250000 c_A +0.750000 1.250000 -3.250000 c_A +0.000000 1.000000 -0.500000 b_A +0.000000 1.000000 -1.500000 b_A +0.500000 1.000000 -1.000000 b_A +0.500000 1.500000 -0.500000 b_A +-0.000000 1.000000 -2.500000 b_A +0.500000 1.000000 -2.000000 b_A +0.500000 1.500000 -1.500000 b_A +0.000000 0.500000 -1.000000 b_A +0.000000 1.000000 -3.500000 b_A +0.500000 1.000000 -3.000000 b_A +0.500000 1.500000 -2.500000 b_A +0.000000 0.500000 -2.000000 b_A +0.500000 1.000000 -4.000000 b_A +0.500000 1.500000 -3.500000 b_A +-0.000000 0.500000 -3.000000 b_A +0.000000 0.500000 -4.000000 b_A +0.500000 1.500000 -4.000000 a_A +0.500000 1.500000 -1.000000 a_A +0.000000 0.500000 -0.500000 a_A +-0.000000 1.000000 -4.000000 a_A +0.500000 1.500000 -2.000000 a_A +0.000000 0.500000 -1.500000 a_A +-0.000000 1.000000 -1.000000 a_A +0.500000 1.000000 -0.500000 a_A +0.500000 1.500000 -3.000000 a_A +-0.000000 0.500000 -2.500000 a_A +-0.000000 1.000000 -2.000000 a_A +0.500000 1.000000 -1.500000 a_A +0.000000 0.500000 -3.500000 a_A +-0.000000 1.000000 -3.000000 a_A +0.500000 1.000000 -2.500000 a_A +0.500000 1.000000 -3.500000 a_A diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/clusters.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..2354418 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/clusters.out @@ -0,0 +1,186 @@ +6 +0.50000 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +12 +0.70711 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +6 +1.00000 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +1.11803 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 1.25000 0 0 + +24 +1.22474 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.25000 1.25000 0 0 + +24 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.86603 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +24 +0.86603 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +6 +1.00000 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +1.00000 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +1.00000 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 1.25000 0 0 +-0.25000 0.75000 0.75000 0 0 + +6 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 1.25000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +24 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +6 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 0.25000 -0.25000 0 0 +-0.25000 -0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +24 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +24 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +6 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +-0.25000 -0.25000 0.75000 0 0 + diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/go b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/go new file mode 100755 index 0000000..be92e69 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.4 -3=1 -4=0.9 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/job.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/job.in new file mode 100755 index 0000000..1d89648 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D03_lv1 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/rndstr.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..eeed37c --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=0.5,c_B=0.5 +0.25 0.25 0.75 c_A=0.5,c_B=0.5 + +0.5 0.5 0.5 b_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..02b9ad5 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +-0.250000 -0.250000 -0.250000 c_A=0.500000,c_B=0.500000 +0.250000 0.250000 0.250000 c_A=0.500000,c_B=0.500000 + +-0.500000 -0.500000 -0.500000 b_A=1.000000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/sqsparam.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..9f86470 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +3 10 3 8 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/bestcorr.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/bestcorr.out new file mode 100644 index 0000000..333fe70 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/bestcorr.out @@ -0,0 +1,19 @@ +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 -0.166667 0.000000 -0.166667 +2 1.118034 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.866025 0.000000 0.000000 0.000000 +3 0.866025 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +Objective_function= -25.944444 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/bestsqs.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/bestsqs.out new file mode 100644 index 0000000..09a55a7 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.500000 2.000000 +0.500000 0.500000 -2.000000 +-1.000000 1.000000 0.000000 +0.000000 1.000000 0.500000 b_A +0.000000 1.500000 1.000000 b_B +-0.500000 1.500000 0.500000 b_A +0.500000 1.000000 1.000000 b_B +0.000000 1.000000 -0.500000 b_B +-0.500000 1.500000 -0.500000 b_B +0.000000 1.500000 0.000000 b_A +0.500000 1.000000 0.000000 b_A +-0.000000 1.000000 -1.500000 b_B +0.000000 1.500000 -1.000000 b_B +-0.500000 1.500000 -1.500000 b_A +0.500000 1.000000 -1.000000 b_A +0.000000 1.000000 1.500000 b_A +-0.500000 1.000000 0.000000 b_A +-0.500000 1.500000 1.500000 b_B +0.000000 0.500000 0.000000 b_B +0.500000 1.500000 0.000000 a_B +-0.500000 1.000000 0.500000 a_A +-0.000000 2.000000 0.000000 a_B +0.000000 0.500000 0.500000 a_A +0.000000 1.000000 1.000000 a_A +-0.500000 1.500000 1.000000 a_A +-0.500000 1.000000 -0.500000 a_A +0.000000 0.500000 -0.500000 a_B +0.000000 1.000000 0.000000 a_A +0.000000 1.500000 0.500000 a_A +-0.500000 1.500000 0.000000 a_B +0.500000 1.000000 0.500000 a_B +0.000000 1.000000 -1.000000 a_A +0.000000 1.500000 -0.500000 a_B +-0.500000 1.500000 -1.000000 a_B +0.500000 1.000000 -0.500000 a_B +-0.250000 0.750000 0.250000 c_A +-0.250000 1.250000 0.750000 c_A +-0.750000 1.250000 0.250000 c_A +0.250000 0.750000 0.750000 c_A +-0.250000 0.750000 -0.750000 c_A +-0.750000 1.250000 -0.750000 c_A +-0.250000 1.250000 -0.250000 c_A +0.250000 0.750000 -0.250000 c_A +0.250000 1.250000 0.250000 c_A +-0.250000 1.250000 -1.250000 c_A +-0.250000 1.750000 0.250000 c_A +0.250000 0.750000 -1.250000 c_A +0.250000 1.250000 -0.750000 c_A +-0.250000 1.250000 1.750000 c_A +-0.250000 1.750000 -0.750000 c_A +0.250000 0.750000 1.750000 c_A +-0.250000 0.750000 0.750000 c_A +-0.250000 1.250000 1.250000 c_A +-0.750000 1.250000 0.750000 c_A +0.250000 0.750000 1.250000 c_A +-0.250000 0.750000 -0.250000 c_A +-0.750000 1.250000 -0.250000 c_A +-0.250000 1.250000 0.250000 c_A +0.250000 0.750000 0.250000 c_A +0.250000 1.250000 0.750000 c_A +-0.250000 1.250000 -0.750000 c_A +-0.250000 1.750000 0.750000 c_A +0.250000 0.750000 -0.750000 c_A +0.250000 1.250000 -0.250000 c_A +-0.250000 1.250000 -1.750000 c_A +-0.250000 1.750000 -0.250000 c_A +0.250000 0.750000 -1.750000 c_A diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/clusters.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/clusters.out new file mode 100644 index 0000000..627d749 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/clusters.out @@ -0,0 +1,124 @@ +6 +0.50000 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 + +6 +0.70711 +2 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.86603 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +3 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +24 +1.11803 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.50000 0 0 + +12 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +12 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.86603 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +0.86603 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +1.50000 1.50000 1.50000 0 0 + +6 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/go b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/go new file mode 100755 index 0000000..2dcfcea --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.2 -3=0.87 -4=0.8 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/job.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/job.in new file mode 100755 index 0000000..229e123 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D03_lv2 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/rndstr.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/rndstr.in new file mode 100644 index 0000000..8a23114 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=1 +0.25 0.25 0.75 c_A=1 + +0.5 0.5 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/rndstrgrp.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/rndstrgrp.out new file mode 100644 index 0000000..4ddb001 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.500000 0.500000 0.500000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.250000 0.250000 0.250000 c_A=1.000000 +0.250000 0.250000 0.750000 c_A=1.000000 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/sqsparam.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/sqsparam.in new file mode 100644 index 0000000..7fbfccf --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/sqsparam.in @@ -0,0 +1 @@ +1 3 0 5 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..4ca4a59 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,29 @@ +2 0.433013 0.000000 0.000000 0.000000 +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.829156 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 0.333333 0.000000 0.333333 +2 1.000000 0.250000 0.000000 0.250000 +2 1.089725 0.000000 0.000000 0.000000 +2 1.118034 -0.083333 0.000000 -0.083333 +3 0.500000 0.000000 0.000000 0.000000 +3 0.707107 -0.041667 0.000000 -0.041667 +3 0.707107 0.083333 0.000000 0.083333 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 -0.125000 0.000000 -0.125000 +3 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 -0.333333 0.000000 -0.333333 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.083333 0.000000 0.083333 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +Objective_function= -181.896907 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..f399fa7 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.000000 -0.000000 2.000000 +-0.000000 2.000000 0.000000 +-1.000000 -0.000000 0.000000 +-0.750000 0.750000 0.250000 c_B +-0.750000 0.750000 1.250000 c_B +-0.750000 1.250000 1.750000 c_B +-0.750000 1.750000 0.250000 c_A +-0.250000 0.750000 1.750000 c_B +-0.250000 1.250000 0.250000 c_B +-0.750000 1.250000 0.750000 c_B +-0.750000 1.750000 1.250000 c_A +-0.750000 0.250000 1.750000 c_B +-0.250000 0.750000 0.750000 c_A +-0.250000 1.250000 1.250000 c_A +-0.250000 1.750000 1.750000 c_B +-0.250000 0.250000 0.250000 c_A +-0.750000 0.250000 0.750000 c_A +-0.250000 1.750000 0.750000 c_A +-0.250000 0.250000 1.250000 c_B +-0.250000 0.250000 1.750000 c_B +-0.250000 0.250000 0.750000 c_B +-0.250000 0.750000 1.250000 c_A +-0.250000 1.250000 1.750000 c_B +-0.750000 0.250000 1.250000 c_B +-0.750000 0.750000 1.750000 c_A +-0.250000 0.750000 0.250000 c_A +-0.250000 1.250000 0.750000 c_A +-0.250000 1.750000 1.250000 c_B +-0.750000 0.250000 0.250000 c_A +-0.750000 0.750000 0.750000 c_A +-0.750000 1.250000 1.250000 c_A +-0.750000 1.750000 1.750000 c_A +-0.250000 1.750000 0.250000 c_B +-0.750000 1.250000 0.250000 c_B +-0.750000 1.750000 0.750000 c_A +-0.500000 1.000000 0.500000 a_A +-0.500000 1.000000 1.500000 a_B +-0.500000 1.500000 2.000000 a_A +-0.500000 2.000000 0.500000 a_A +-1.000000 1.000000 2.000000 a_B +-1.000000 1.500000 0.500000 a_B +-0.500000 1.500000 1.000000 a_B +-0.500000 2.000000 1.500000 a_B +-0.500000 0.500000 2.000000 a_A +-1.000000 1.000000 1.000000 a_B +-1.000000 1.500000 1.500000 a_B +-1.000000 2.000000 2.000000 a_A +-1.000000 0.500000 0.500000 a_A +-0.500000 0.500000 1.000000 a_B +-1.000000 2.000000 1.000000 a_A +-1.000000 0.500000 1.500000 a_A +-1.000000 0.500000 2.000000 b_A +-1.000000 0.500000 1.000000 b_A +-1.000000 1.000000 1.500000 b_A +-1.000000 1.500000 2.000000 b_A +-0.500000 0.500000 1.500000 b_A +-0.500000 1.000000 2.000000 b_A +-1.000000 1.000000 0.500000 b_A +-1.000000 1.500000 1.000000 b_A +-1.000000 2.000000 1.500000 b_A +-0.500000 0.500000 0.500000 b_A +-0.500000 1.000000 1.000000 b_A +-0.500000 1.500000 1.500000 b_A +-0.500000 2.000000 2.000000 b_A +-1.000000 2.000000 0.500000 b_A +-0.500000 1.500000 0.500000 b_A +-0.500000 2.000000 1.000000 b_A diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/clusters.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..49b4cee --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/clusters.out @@ -0,0 +1,195 @@ +8 +0.43301 +2 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 + +6 +0.50000 +2 +0.25000 0.25000 0.25000 0 0 +0.75000 0.25000 0.25000 0 0 + +12 +0.70711 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.82916 +2 +0.25000 0.25000 0.25000 0 0 +0.50000 0.00000 -0.50000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +6 +1.00000 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +1.08972 +2 +0.25000 0.25000 0.25000 0 0 +-0.50000 -0.50000 0.00000 0 0 + +24 +1.11803 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 1.25000 0 0 + +12 +0.50000 +3 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.75000 0.25000 0.25000 0 0 + +12 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +12 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 1.25000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/go b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/go new file mode 100755 index 0000000..ac6a1e4 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.2 -3=0.8 -4=0.8 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/job.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/job.in new file mode 100755 index 0000000..229e123 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D03_lv2 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/rndstr.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..a13f89a --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=0.5,c_B=0.5 +0.25 0.25 0.75 c_A=0.5,c_B=0.5 + +0.5 0.5 0.5 b_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..97598af --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.750000 0.750000 0.750000 c_A=0.500000,c_B=0.500000 +0.250000 0.250000 0.250000 c_A=0.500000,c_B=0.500000 + +1.000000 1.000000 1.000000 a_A=0.500000,a_B=0.500000 + +0.500000 0.500000 0.500000 b_A=1.000000 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/sqsparam.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..02d74b3 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 10 1 5 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/bestcorr.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..b00660b --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/bestcorr.out @@ -0,0 +1,25 @@ +2 0.433013 0.000000 0.000000 0.000000 +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.829156 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +3 0.500000 0.000000 0.000000 0.000000 +3 0.707107 -0.083333 0.000000 -0.083333 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.083333 0.000000 0.083333 +3 0.707107 0.062500 0.000000 0.062500 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.166667 0.000000 0.166667 +4 0.707107 0.125000 0.000000 0.125000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.020833 0.000000 0.020833 +4 0.707107 -0.083333 0.000000 -0.083333 +4 0.707107 -0.062500 0.000000 -0.062500 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 -0.125000 0.000000 -0.125000 +4 0.707107 -0.062500 0.000000 -0.062500 +4 0.707107 0.000000 0.000000 0.000000 +Objective_function= -547.824837 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/bestsqs.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..f3df400 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.500000 -0.500000 +1.000000 0.500000 -1.500000 +-1.000000 -1.500000 0.500000 +-1.250000 -0.250000 -0.250000 c_A +-0.750000 -0.750000 -0.250000 c_B +-1.250000 0.250000 -0.750000 c_A +-0.750000 -0.250000 -0.750000 c_B +-0.250000 -0.750000 -0.750000 c_B +-0.250000 -0.250000 -0.250000 c_A +-0.750000 0.250000 -1.250000 c_A +-0.750000 0.750000 -0.750000 c_A +-0.250000 -0.250000 -1.250000 c_B +-0.250000 0.250000 -0.750000 c_B +-1.750000 0.250000 -0.250000 c_A +-0.750000 1.250000 -1.250000 c_A +-0.250000 0.750000 -1.250000 c_B +0.250000 0.250000 -1.250000 c_B +-0.250000 1.250000 -1.750000 c_A +-0.750000 0.250000 -0.250000 c_B +0.250000 0.750000 -1.250000 c_B +-0.250000 1.750000 -1.750000 c_A +0.250000 1.250000 -1.750000 c_A +-0.250000 0.250000 -0.250000 c_B +-0.750000 1.250000 -0.750000 c_B +-0.750000 0.750000 -1.250000 c_B +-0.250000 0.750000 -0.750000 c_B +-0.250000 0.250000 -1.250000 c_A +0.250000 0.250000 -0.750000 c_A +0.250000 -0.250000 -1.250000 c_A +-0.250000 1.250000 -1.250000 c_B +-1.250000 0.250000 -0.250000 c_A +-0.750000 -0.250000 -0.250000 c_B +-1.250000 0.750000 -0.750000 c_B +-0.750000 0.250000 -0.750000 c_A +-0.250000 -0.250000 -0.750000 c_A +-0.500000 1.000000 -1.000000 b_A +0.000000 0.500000 -1.000000 b_B +-0.500000 1.500000 -1.500000 b_B +-0.000000 1.000000 -1.500000 b_A +0.500000 0.500000 -1.500000 b_B +-0.500000 -0.500000 -0.500000 b_A +-1.000000 1.000000 -0.500000 b_B +-1.000000 0.500000 -1.000000 b_B +-0.500000 0.500000 -0.500000 b_B +-0.500000 0.000000 -1.000000 b_B +0.000000 0.000000 -0.500000 b_A +-0.000000 -0.500000 -1.000000 b_A +-0.500000 0.500000 -1.500000 b_A +-1.000000 -0.500000 0.000000 b_B +-1.500000 0.500000 -0.500000 b_A +-1.000000 -0.000000 -0.500000 b_A +-0.000000 0.500000 -1.500000 a_A +-0.500000 -0.500000 0.000000 a_A +-1.000000 0.500000 -0.500000 a_A +-0.500000 0.000000 -0.500000 a_A +-1.000000 1.000000 -1.000000 a_A +-1.000000 0.500000 -1.500000 a_A +-0.500000 0.500000 -1.000000 a_A +-1.500000 -0.500000 0.000000 a_A +-0.000000 0.000000 -1.000000 a_A +-1.000000 -1.000000 0.000000 a_A +-0.500000 1.000000 -1.500000 a_A +-1.500000 -0.000000 -0.500000 a_A +-1.000000 -0.500000 -0.500000 a_A +-0.500000 -1.000000 -0.500000 a_A +-1.000000 0.000000 -1.000000 a_A +-0.500000 -0.500000 -1.000000 a_A diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/clusters.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..a7207f8 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/clusters.out @@ -0,0 +1,171 @@ +8 +0.43301 +2 +0.50000 0.50000 0.50000 0 0 +0.75000 0.25000 0.25000 0 0 + +6 +0.50000 +2 +0.25000 0.25000 0.25000 0 0 +0.75000 0.25000 0.25000 0 0 + +6 +0.70711 +2 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +12 +0.70711 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.82916 +2 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 1.25000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +12 +0.50000 +3 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.00000 0 0 +0.75000 0.25000 0.25000 0 0 + +12 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +12 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +24 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 1.25000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/go b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/go new file mode 100755 index 0000000..ccfcf43 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=0.9 -3=0.8 -4=0.8 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/job.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/job.in new file mode 100755 index 0000000..229e123 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D03_lv2 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/rndstr.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..99297e2 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=0.5,c_B=0.5 +0.25 0.25 0.75 c_A=0.5,c_B=0.5 + +0.5 0.5 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..0a7c432 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +-0.250000 -0.250000 -0.250000 c_A=0.500000,c_B=0.500000 +0.250000 0.250000 0.250000 c_A=0.500000,c_B=0.500000 + +-0.500000 -0.500000 -0.500000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/sqsparam.in b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..9f86470 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +3 10 3 8 diff --git a/data/sqsdb/FE3AL_D03/sqsgen.in b/data/sqsdb/FE3AL_D03/sqsgen.in new file mode 100644 index 0000000..23c46f5 --- /dev/null +++ b/data/sqsdb/FE3AL_D03/sqsgen.in @@ -0,0 +1,7 @@ +level=0 a=1 b=1 c=1 +level=1 a=0.5,0.5 b=1 c=1 +level=1 a=1 b=0.5,0.5 c=1 +level=1 a=1 b=1 c=0.5,0.5 +level=2 a=1 b=0.5,0.5 c=0.5,0.5 +level=2 a=0.5,0.5 b=1 c=0.5,0.5 +level=2 a=0.5,0.5 b=0.5,0.5 c=1 diff --git a/data/sqsdb/FLUORITE_C1/rndstr.skel b/data/sqsdb/FLUORITE_C1/rndstr.skel new file mode 100644 index 0000000..738259d --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/rndstr.skel @@ -0,0 +1,10 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c +0.25 0.25 0.75 c + +0 0 0 a diff --git a/data/sqsdb/FLUORITE_C1/rndstr.skel.sspp b/data/sqsdb/FLUORITE_C1/rndstr.skel.sspp new file mode 100644 index 0000000..64d3a40 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/rndstr.skel.sspp @@ -0,0 +1,10 @@ +#const a=1; +{a} {a} {a} {90} {90} {90} +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +#const c="c"; +{1/4} {1/4} {1/4} {c} +{1/4} {1/4} {3/4} {c} +#const a="a"; +{0} {0} {0} {a} diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=0_a=1_c=1/bestsqs.out b/data/sqsdb/FLUORITE_C1/sqsdb_lev=0_a=1_c=1/bestsqs.out new file mode 100644 index 0000000..db14411 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=0_a=1_c=1/bestsqs.out @@ -0,0 +1,9 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 +0.250000 0.250000 0.250000 c_A +0.250000 0.250000 0.750000 c_A +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=0_a=1_c=1/rndstr.in b/data/sqsdb/FLUORITE_C1/sqsdb_lev=0_a=1_c=1/rndstr.in new file mode 100644 index 0000000..8e6b6b0 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=0_a=1_c=1/rndstr.in @@ -0,0 +1,10 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=1 +0.25 0.25 0.75 c_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out new file mode 100644 index 0000000..3887fdf --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out @@ -0,0 +1,37 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 -0.333333 0.000000 -0.333333 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 -0.333333 0.000000 -0.333333 +4 1.224745 0.000000 0.000000 0.000000 +Objective_function= -52.262628 diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out new file mode 100644 index 0000000..8767593 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 -0.500000 -0.500000 +0.000000 1.000000 -1.000000 +1.000000 1.500000 1.500000 +2.000000 2.000000 0.000000 a_B +2.000000 1.500000 0.500000 a_A +1.500000 1.500000 1.000000 a_B +0.500000 0.500000 0.000000 a_B +1.500000 0.500000 -0.000000 a_A +1.000000 1.000000 -1.000000 a_B +1.000000 1.500000 -0.500000 a_A +1.000000 2.000000 0.000000 a_A +1.500000 2.000000 0.500000 a_B +0.500000 1.000000 -0.500000 a_A +1.500000 1.000000 -0.500000 a_A +1.000000 0.500000 -0.500000 a_B +1.000000 1.000000 0.000000 a_B +1.000000 1.500000 0.500000 a_A +1.500000 1.000000 0.500000 a_A +1.500000 1.500000 0.000000 a_B +0.250000 1.250000 -0.750000 c_A +0.250000 0.750000 -0.250000 c_A +0.750000 0.250000 -0.250000 c_A +0.750000 0.750000 0.250000 c_A +0.750000 1.250000 0.750000 c_A +1.250000 1.250000 -0.750000 c_A +1.250000 1.750000 -0.250000 c_A +1.250000 2.250000 0.250000 c_A +0.750000 0.750000 -0.750000 c_A +0.750000 1.250000 -0.250000 c_A +0.750000 1.750000 0.250000 c_A +1.250000 0.750000 -0.250000 c_A +1.250000 1.250000 0.250000 c_A +1.250000 1.750000 0.750000 c_A +1.750000 1.250000 0.750000 c_A +1.750000 1.750000 0.250000 c_A +1.250000 0.750000 -0.750000 c_A +1.250000 0.250000 -0.250000 c_A +0.750000 1.250000 -0.750000 c_A +0.750000 1.750000 -0.250000 c_A +1.750000 1.750000 -0.250000 c_A +1.250000 1.250000 -0.250000 c_A +1.250000 1.750000 0.250000 c_A +0.250000 0.750000 -0.750000 c_A +0.750000 0.750000 -0.250000 c_A +0.750000 1.250000 0.250000 c_A +1.750000 1.250000 0.250000 c_A +1.250000 0.750000 0.250000 c_A +1.250000 1.250000 0.750000 c_A +0.250000 0.250000 -0.250000 c_A +0.750000 0.750000 -1.250000 c_A +0.750000 0.250000 -0.750000 c_A diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out new file mode 100644 index 0000000..2d4205a --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out @@ -0,0 +1,260 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 2.00000 0 0 + +24 +1.87083 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 -0.00000 1.50000 0 0 + +3 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +48 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +6 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.50000 0 0 +-0.00000 1.00000 2.00000 0 0 + +12 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +12 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 -0.00000 1.50000 0 0 +-0.00000 1.00000 2.00000 0 0 + +8 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 2.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +12 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +48 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +48 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +48 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +8 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +48 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +12 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +8 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/go b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/go new file mode 100755 index 0000000..d2a011d --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.5 -4=1.3 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/job.in b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/job.in new file mode 100755 index 0000000..f7612c3 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C1_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in new file mode 100644 index 0000000..8c33d0a --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in @@ -0,0 +1,10 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=1 +0.25 0.25 0.75 c_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out new file mode 100644 index 0000000..2c62e03 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out @@ -0,0 +1,11 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.250000 0.250000 0.250000 c_A=1.000000 +0.250000 0.250000 0.750000 c_A=1.000000 diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/sqsparam.in b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/sqsparam.in new file mode 100644 index 0000000..7831d53 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=0.5,0.5_c=1/sqsparam.in @@ -0,0 +1 @@ +1 5 1 2 diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..a989e29 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,47 @@ +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.118034 0.000000 0.000000 0.000000 +2 1.224745 -0.166667 0.000000 -0.166667 +2 1.414214 0.000000 0.000000 0.000000 +2 1.500000 0.000000 0.000000 0.000000 +2 1.500000 0.000000 0.000000 0.000000 +2 1.500000 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.658312 0.000000 0.000000 0.000000 +2 1.658312 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.866025 0.000000 0.000000 0.000000 +3 0.866025 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.166667 0.000000 -0.166667 +4 1.000000 0.333333 0.000000 0.333333 +4 1.000000 0.166667 0.000000 0.166667 +4 1.000000 -0.333333 0.000000 -0.333333 +Objective_function= -6.854108 diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..46ddf50 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.500000 -0.500000 +1.000000 0.500000 -1.500000 +-1.000000 -1.500000 0.500000 +-1.250000 -0.250000 -0.250000 c_A +-0.750000 -0.750000 -0.250000 c_A +-1.250000 0.250000 -0.750000 c_A +-0.750000 -0.250000 -0.750000 c_A +-0.250000 -0.750000 -0.750000 c_B +-0.250000 -0.250000 -0.250000 c_A +-0.750000 0.250000 -1.250000 c_B +-0.750000 0.750000 -0.750000 c_A +-0.250000 -0.250000 -1.250000 c_B +-0.250000 0.250000 -0.750000 c_A +-1.750000 0.250000 -0.250000 c_B +-0.750000 1.250000 -1.250000 c_A +-0.250000 0.750000 -1.250000 c_B +0.250000 0.250000 -1.250000 c_B +-0.250000 1.250000 -1.750000 c_B +-0.750000 0.250000 -0.250000 c_B +0.250000 0.750000 -1.250000 c_B +-0.250000 1.750000 -1.750000 c_A +0.250000 1.250000 -1.750000 c_B +-0.250000 0.250000 -0.250000 c_A +-0.750000 1.250000 -0.750000 c_A +-0.750000 0.750000 -1.250000 c_A +-0.250000 0.750000 -0.750000 c_B +-0.250000 0.250000 -1.250000 c_B +0.250000 0.250000 -0.750000 c_A +0.250000 -0.250000 -1.250000 c_A +-0.250000 1.250000 -1.250000 c_B +-1.250000 0.250000 -0.250000 c_B +-0.750000 -0.250000 -0.250000 c_B +-1.250000 0.750000 -0.750000 c_A +-0.750000 0.250000 -0.750000 c_B +-0.250000 -0.250000 -0.750000 c_A +-0.000000 0.500000 -1.500000 a_A +-0.500000 -0.500000 0.000000 a_A +-1.000000 0.500000 -0.500000 a_A +-0.500000 0.000000 -0.500000 a_A +-1.000000 1.000000 -1.000000 a_A +-1.000000 0.500000 -1.500000 a_A +-0.500000 0.500000 -1.000000 a_A +-1.500000 -0.500000 0.000000 a_A +-0.000000 0.000000 -1.000000 a_A +-1.000000 -1.000000 0.000000 a_A +-0.500000 1.000000 -1.500000 a_A +-1.500000 -0.000000 -0.500000 a_A +-1.000000 -0.500000 -0.500000 a_A +-0.500000 -1.000000 -0.500000 a_A +-1.000000 0.000000 -1.000000 a_A +-0.500000 -0.500000 -1.000000 a_A diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..ef00d8f --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out @@ -0,0 +1,324 @@ +6 +0.50000 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +12 +0.70711 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +6 +1.00000 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +1.11803 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 1.25000 0 0 + +24 +1.22474 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.25000 1.25000 0 0 + +12 +1.41421 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 1.75000 0 0 + +12 +1.50000 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 1.25000 1.75000 0 0 + +12 +1.50000 +2 +0.25000 0.25000 0.25000 0 0 +-0.75000 -0.75000 -0.25000 0 0 + +6 +1.50000 +2 +0.25000 0.25000 0.25000 0 0 +-1.25000 0.25000 0.25000 0 0 + +24 +1.58114 +2 +0.75000 0.75000 0.75000 0 0 +-0.75000 0.25000 0.75000 0 0 + +12 +1.65831 +2 +0.75000 0.75000 0.75000 0 0 +-0.75000 1.25000 1.25000 0 0 + +12 +1.65831 +2 +0.25000 0.25000 0.25000 0 0 +-1.25000 -0.25000 -0.25000 0 0 + +24 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.86603 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +24 +0.86603 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +6 +1.00000 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +1.00000 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +1.00000 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 1.25000 0 0 +-0.25000 0.75000 0.75000 0 0 + +48 +1.11803 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +-0.25000 0.75000 1.25000 0 0 + +48 +1.11803 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +-0.25000 0.75000 1.25000 0 0 + +24 +1.11803 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +-0.25000 0.75000 1.25000 0 0 + +48 +1.11803 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +-0.25000 0.75000 1.25000 0 0 + +48 +1.11803 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.25000 0.75000 1.25000 0 0 + +24 +1.11803 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.25000 0 0 +-0.25000 0.75000 1.25000 0 0 + +24 +1.11803 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 1.25000 0 0 +-0.25000 0.75000 1.25000 0 0 + +24 +1.11803 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.75000 0 0 +-0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 1.25000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +24 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +6 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 0.25000 -0.25000 0 0 +-0.25000 -0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +24 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +24 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +6 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +24 +1.00000 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +1.00000 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 +-0.25000 0.75000 0.75000 0 0 + +6 +1.00000 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.25000 0 0 +0.25000 0.75000 1.25000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +1.00000 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 1.25000 0 0 +-0.25000 0.75000 0.75000 0 0 + +12 +1.00000 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.25000 1.25000 0 0 +0.25000 1.25000 1.25000 0 0 +-0.25000 0.75000 0.75000 0 0 + diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/go b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/go new file mode 100755 index 0000000..6799aa2 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.7 -3=1.2 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/job.in b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/job.in new file mode 100755 index 0000000..f7612c3 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C1_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..c1a3f76 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,10 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=0.5,c_B=0.5 +0.25 0.25 0.75 c_A=0.5,c_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..0a0026e --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,11 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +-0.250000 -0.250000 -0.250000 c_A=0.500000,c_B=0.500000 +0.250000 0.250000 0.250000 c_A=0.500000,c_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..6c9c390 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out @@ -0,0 +1,27 @@ +2 0.433013 0.000000 0.000000 0.000000 +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.829156 0.000000 0.000000 0.000000 +2 0.866025 -0.437500 0.000000 -0.437500 +2 0.866025 -0.187500 0.000000 -0.187500 +2 1.000000 -0.333333 0.000000 -0.333333 +2 1.000000 0.166667 0.000000 0.166667 +3 0.500000 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 -0.166667 0.000000 -0.166667 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.125000 0.000000 0.125000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.125000 0.000000 0.125000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +Objective_function= -52.785889 diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..17a16f7 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 -1.000000 1.000000 +-1.000000 1.000000 -1.000000 +0.000000 -1.000000 -1.000000 +-1.750000 -1.250000 -0.750000 c_B +-1.750000 -0.750000 -0.250000 c_B +-1.250000 -1.250000 -0.250000 c_B +-1.250000 -0.750000 0.250000 c_A +-1.750000 -0.750000 -1.250000 c_B +-1.750000 -0.250000 -0.750000 c_B +-1.250000 -0.750000 -0.750000 c_B +-1.250000 -0.250000 -0.250000 c_B +-0.750000 -1.250000 -0.750000 c_A +-0.750000 -0.750000 -0.250000 c_A +-1.250000 -0.250000 -1.250000 c_B +-1.250000 0.250000 -0.750000 c_A +-0.750000 -0.750000 -1.250000 c_A +-0.750000 -0.250000 -0.750000 c_B +-0.250000 -0.750000 -0.750000 c_A +-0.250000 -0.250000 -0.250000 c_B +-1.250000 -0.750000 -0.250000 c_A +-1.250000 -1.250000 -0.750000 c_A +-0.750000 -0.750000 0.250000 c_A +-0.750000 -1.250000 -0.250000 c_A +-1.250000 -0.250000 -0.750000 c_A +-1.250000 -0.750000 -1.250000 c_B +-0.750000 -0.250000 -0.250000 c_B +-0.750000 -0.750000 -0.750000 c_A +-1.250000 0.250000 -1.250000 c_B +-1.250000 -0.250000 -1.750000 c_B +-0.750000 0.250000 -0.750000 c_A +-0.750000 -0.250000 -1.250000 c_B +-1.250000 -1.250000 0.250000 c_A +-1.250000 -1.750000 -0.250000 c_A +-1.750000 -0.250000 -0.250000 c_B +-1.750000 -0.750000 -0.750000 c_A +-1.500000 -1.000000 -0.500000 a_A +-1.500000 -0.500000 0.000000 a_A +-1.000000 -1.000000 0.000000 a_B +-1.000000 -1.500000 -0.500000 a_A +-1.500000 -0.500000 -1.000000 a_B +-1.500000 0.000000 -0.500000 a_B +-1.000000 -0.500000 -0.500000 a_B +-1.000000 -1.000000 -1.000000 a_A +-0.500000 -1.000000 -0.500000 a_B +-0.500000 -0.500000 0.000000 a_A +-1.000000 0.000000 -1.000000 a_B +-1.000000 -0.500000 -1.500000 a_B +-0.500000 -0.500000 -1.000000 a_B +-0.500000 0.000000 -0.500000 a_A +-2.000000 -0.500000 -0.500000 a_A +-2.000000 -1.000000 -1.000000 a_A diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..25fb771 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out @@ -0,0 +1,183 @@ +8 +0.43301 +2 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 + +6 +0.50000 +2 +0.25000 0.25000 0.25000 0 0 +0.75000 0.25000 0.25000 0 0 + +12 +0.70711 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.82916 +2 +0.25000 0.25000 0.25000 0 0 +0.50000 0.00000 -0.50000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +6 +1.00000 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 + +12 +0.50000 +3 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.75000 0.25000 0.25000 0 0 + +12 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +12 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 1.25000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go new file mode 100755 index 0000000..7d3f1bd --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1 -3=0.8 -4=0.8 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in new file mode 100755 index 0000000..daba459 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C1_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..2686a62 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in @@ -0,0 +1,10 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=0.5,c_B=0.5 +0.25 0.25 0.75 c_A=0.5,c_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..23aa4f6 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,11 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +-0.250000 -0.250000 -0.250000 c_A=0.500000,c_B=0.500000 +0.250000 0.250000 0.250000 c_A=0.500000,c_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..b477e9e --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 5 1 3 diff --git a/data/sqsdb/FLUORITE_C1/sqsgen.in b/data/sqsdb/FLUORITE_C1/sqsgen.in new file mode 100644 index 0000000..46d1288 --- /dev/null +++ b/data/sqsdb/FLUORITE_C1/sqsgen.in @@ -0,0 +1,4 @@ +level=0 a=1 c=1 +level=1 a=0.5,0.5 c=1 +level=1 a=1 c=0.5,0.5 +level=2 a=0.5,0.5 c=0.5,0.5 diff --git a/data/sqsdb/GA3PT5/go b/data/sqsdb/GA3PT5/go new file mode 100644 index 0000000..bcb4ee5 --- /dev/null +++ b/data/sqsdb/GA3PT5/go @@ -0,0 +1,2 @@ +wycked 65 abehj +sspp < rndstr.sspp | tail -n +2 > rndstr.skel diff --git a/data/sqsdb/GA3PT5/parentlat.in b/data/sqsdb/GA3PT5/parentlat.in new file mode 100644 index 0000000..3fd5b88 --- /dev/null +++ b/data/sqsdb/GA3PT5/parentlat.in @@ -0,0 +1 @@ +FCC_A1/sqs_lev=0_a_ diff --git a/data/sqsdb/GA3PT5/rndstr.skel b/data/sqsdb/GA3PT5/rndstr.skel new file mode 100644 index 0000000..9ffb04e --- /dev/null +++ b/data/sqsdb/GA3PT5/rndstr.skel @@ -0,0 +1,17 @@ +2 2 1 90 90 90 +0.5 -0.5 0 +0.5 0.5 0 +0 0 1 + +0 0 0 aej + +0.25 0.25 0 aej +0.75 0.25 0 aej + +0 0.25 0.5 aej +0 -0.25 0.5 aej + +0.5 0 0 bh + +0.25 0 0.5 bh +-0.25 0 0.5 bh diff --git a/data/sqsdb/GA3PT5/rndstr.sspp b/data/sqsdb/GA3PT5/rndstr.sspp new file mode 100644 index 0000000..f35ec24 --- /dev/null +++ b/data/sqsdb/GA3PT5/rndstr.sspp @@ -0,0 +1,18 @@ +#const a=2; b=2; c=1; +{a} {b} {c} {90} {90} {90} +0.5 -0.5 0 +0.5 0.5 0 +0 0 1 +#const A="aej"; +{0} {0} {0} {A} +#const E="aej"; +{1/4} {1/4} {0} {E} +{3/4} {1/4} {0} {E} +#const y=1./4.; J="aej"; +{0} {y} {1/2} {J} +{0} {-y} {1/2} {J} +#const B="bh"; +{1/2} {0} {0} {B} +#const x=1./4.; H="bh"; +{x} {0} {1/2} {H} +{-x} {0} {1/2} {H} diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=0_aej=1_bh=1/bestsqs.out b/data/sqsdb/GA3PT5/sqsdb_lev=0_aej=1_bh=1/bestsqs.out new file mode 100644 index 0000000..ec7e602 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=0_aej=1_bh=1/bestsqs.out @@ -0,0 +1,14 @@ +2.000000 0.000000 0.000000 +0.000000 2.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 -0.500000 0.000000 +0.500000 0.500000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.000000 0.000000 aej_A +0.250000 0.250000 0.000000 aej_A +0.750000 0.250000 0.000000 aej_A +0.000000 0.250000 0.500000 aej_A +-0.000000 -0.250000 0.500000 aej_A +0.500000 0.000000 0.000000 bh_A +0.250000 0.000000 0.500000 bh_A +-0.250000 0.000000 0.500000 bh_A diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=0_aej=1_bh=1/rndstr.in b/data/sqsdb/GA3PT5/sqsdb_lev=0_aej=1_bh=1/rndstr.in new file mode 100644 index 0000000..c8ebfa0 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=0_aej=1_bh=1/rndstr.in @@ -0,0 +1,17 @@ +2 2 1 90 90 90 +0.5 -0.5 0 +0.5 0.5 0 +0 0 1 + +0 0 0 aej_A=1 + +0.25 0.25 0 aej_A=1 +0.75 0.25 0 aej_A=1 + +0 0.25 0.5 aej_A=1 +0 -0.25 0.5 aej_A=1 + +0.5 0 0 bh_A=1 + +0.25 0 0.5 bh_A=1 +-0.25 0 0.5 bh_A=1 diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/bestcorr.out b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/bestcorr.out new file mode 100644 index 0000000..85bbb0f --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/bestcorr.out @@ -0,0 +1,66 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.500000 0.000000 0.500000 +2 1.224745 -0.500000 0.000000 -0.500000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 1.000000 1.000000 0.000000 1.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -1.000000 0.000000 -1.000000 +4 1.000000 -1.000000 0.000000 -1.000000 +4 1.000000 0.000000 0.000000 0.000000 +Objective_function= -48.696379 diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/bestsqs.out b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/bestsqs.out new file mode 100644 index 0000000..bbc4740 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/bestsqs.out @@ -0,0 +1,38 @@ +2.000000 0.000000 0.000000 +0.000000 2.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 -0.500000 -2.000000 +0.500000 -0.500000 2.000000 +-0.500000 -0.500000 0.000000 +0.000000 -1.000000 -1.000000 aej_A +0.500000 -1.500000 0.000000 aej_A +0.000000 -1.000000 0.000000 aej_B +0.000000 -1.000000 1.000000 aej_B +0.250000 -0.750000 -1.000000 aej_A +0.750000 -1.250000 0.000000 aej_B +0.250000 -0.750000 0.000000 aej_A +0.250000 -0.750000 1.000000 aej_B +0.250000 -1.250000 -1.000000 aej_A +-0.250000 -0.750000 0.000000 aej_A +0.250000 -1.250000 0.000000 aej_B +0.250000 -1.250000 1.000000 aej_B +0.000000 -0.750000 -0.500000 aej_A +0.500000 -1.250000 0.500000 aej_A +0.000000 -0.750000 0.500000 aej_B +0.500000 -1.250000 -0.500000 aej_B +0.500000 -0.750000 1.500000 aej_B +0.500000 -0.750000 0.500000 aej_A +0.500000 -0.750000 -1.500000 aej_B +0.500000 -0.750000 -0.500000 aej_A +0.500000 -1.000000 -1.000000 bh_A +0.000000 -0.500000 0.000000 bh_A +0.500000 -1.000000 0.000000 bh_A +0.500000 -1.000000 1.000000 bh_A +0.250000 -1.000000 -0.500000 bh_A +0.250000 -1.000000 -1.500000 bh_A +0.250000 -1.000000 0.500000 bh_A +0.250000 -1.000000 1.500000 bh_A +0.750000 -1.000000 -0.500000 bh_A +0.250000 -0.500000 0.500000 bh_A +0.750000 -1.000000 0.500000 bh_A +0.250000 -0.500000 -0.500000 bh_A diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/clusters.out b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/clusters.out new file mode 100644 index 0000000..0b2b722 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/clusters.out @@ -0,0 +1,436 @@ +4 +0.70711 +2 +0.50000 -0.25000 0.50000 0 0 +0.50000 -0.50000 0.00000 0 0 + +8 +0.70711 +2 +0.50000 -0.25000 0.50000 0 0 +0.25000 -0.25000 1.00000 0 0 + +4 +0.70711 +2 +0.75000 -0.25000 1.00000 0 0 +0.50000 -0.50000 1.00000 0 0 + +2 +1.00000 +2 +0.75000 0.25000 1.00000 0 0 +0.75000 0.75000 1.00000 0 0 + +2 +1.00000 +2 +0.50000 -0.25000 0.50000 0 0 +0.00000 -0.25000 0.50000 0 0 + +2 +1.00000 +2 +0.75000 0.25000 1.00000 0 0 +0.25000 0.25000 1.00000 0 0 + +1 +1.00000 +2 +0.50000 -0.25000 0.50000 0 0 +0.50000 -0.75000 0.50000 0 0 + +2 +1.00000 +2 +0.50000 0.25000 0.50000 0 0 +0.50000 0.25000 -0.50000 0 0 + +2 +1.00000 +2 +0.75000 0.25000 1.00000 0 0 +0.75000 0.25000 0.00000 0 0 + +1 +1.00000 +2 +1.00000 0.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +1 +1.00000 +2 +0.50000 0.25000 0.50000 0 0 +0.50000 -0.25000 0.50000 0 0 + +8 +1.22474 +2 +0.50000 0.25000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +2 +0.50000 -0.25000 0.50000 0 0 +0.75000 -0.75000 0.00000 0 0 + +8 +1.22474 +2 +0.50000 0.25000 0.50000 0 0 +0.25000 -0.25000 0.00000 0 0 + +8 +1.22474 +2 +0.75000 -0.25000 1.00000 0 0 +0.50000 -0.50000 0.00000 0 0 + +4 +1.41421 +2 +0.75000 0.25000 1.00000 0 0 +0.75000 0.75000 0.00000 0 0 + +4 +1.41421 +2 +0.50000 -0.25000 0.50000 0 0 +0.00000 -0.25000 -0.50000 0 0 + +4 +1.41421 +2 +0.75000 -0.25000 1.00000 0 0 +0.25000 -0.25000 2.00000 0 0 + +2 +1.41421 +2 +0.75000 0.25000 1.00000 0 0 +1.25000 0.75000 1.00000 0 0 + +2 +1.41421 +2 +1.00000 0.00000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +4 +1.41421 +2 +0.50000 0.25000 0.50000 0 0 +-0.00000 0.75000 0.50000 0 0 + +2 +1.41421 +2 +0.75000 0.25000 1.00000 0 0 +0.25000 0.75000 1.00000 0 0 + +2 +1.41421 +2 +0.50000 -0.25000 0.50000 0 0 +0.50000 0.25000 -0.50000 0 0 + +2 +1.41421 +2 +0.50000 -0.25000 0.50000 0 0 +0.50000 -0.75000 -0.50000 0 0 + +8 +0.70711 +3 +0.50000 -0.25000 0.50000 0 0 +0.50000 -0.50000 0.00000 0 0 +0.25000 -0.25000 0.00000 0 0 + +2 +1.00000 +3 +0.75000 0.25000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.75000 0.75000 1.00000 0 0 + +4 +1.00000 +3 +0.50000 -0.25000 0.50000 0 0 +0.25000 -0.25000 0.00000 0 0 +0.00000 -0.25000 0.50000 0 0 + +2 +1.00000 +3 +0.75000 0.25000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.25000 1.00000 0 0 + +4 +1.00000 +3 +0.75000 0.25000 1.00000 0 0 +0.50000 0.25000 1.50000 0 0 +0.25000 0.25000 1.00000 0 0 + +2 +1.00000 +3 +0.50000 -0.25000 0.50000 0 0 +0.50000 -0.50000 0.00000 0 0 +0.50000 -0.75000 0.50000 0 0 + +4 +1.00000 +3 +0.50000 0.25000 0.50000 0 0 +0.25000 0.25000 0.00000 0 0 +0.50000 0.25000 -0.50000 0 0 + +2 +1.00000 +3 +0.50000 0.25000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 +0.50000 0.25000 -0.50000 0 0 + +4 +1.00000 +3 +0.75000 0.25000 1.00000 0 0 +1.00000 0.25000 0.50000 0 0 +0.75000 0.25000 0.00000 0 0 + +2 +1.00000 +3 +1.00000 0.00000 1.00000 0 0 +1.00000 0.25000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 0.25000 0.50000 0 0 +0.25000 0.25000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 0.25000 0.50000 0 0 +0.25000 0.25000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 0.25000 0.50000 0 0 +-0.00000 0.25000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +4 +1.22474 +3 +0.50000 0.25000 0.50000 0 0 +0.50000 0.25000 -0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +4 +1.22474 +3 +0.50000 0.25000 0.50000 0 0 +0.50000 -0.25000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +4 +1.22474 +3 +0.50000 0.25000 0.50000 0 0 +-0.00000 0.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 0.25000 0.50000 0 0 +0.25000 -0.25000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 0.25000 0.50000 0 0 +0.25000 -0.25000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 -0.25000 0.50000 0 0 +0.50000 -0.50000 0.00000 0 0 +0.75000 -0.75000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 -0.25000 0.50000 0 0 +0.50000 -0.50000 1.00000 0 0 +0.75000 -0.75000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 -0.25000 0.50000 0 0 +0.75000 -0.25000 0.00000 0 0 +0.75000 -0.75000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 -0.25000 0.50000 0 0 +0.50000 -0.75000 0.50000 0 0 +0.75000 -0.75000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 -0.25000 0.50000 0 0 +1.00000 -0.25000 0.50000 0 0 +0.75000 -0.75000 0.00000 0 0 + +4 +1.22474 +3 +0.50000 -0.25000 0.50000 0 0 +0.50000 -0.25000 -0.50000 0 0 +0.75000 -0.75000 0.00000 0 0 + +4 +1.22474 +3 +0.50000 -0.25000 0.50000 0 0 +0.75000 -0.75000 1.00000 0 0 +0.75000 -0.75000 0.00000 0 0 + +4 +1.22474 +3 +0.50000 -0.25000 0.50000 0 0 +0.25000 -0.75000 0.00000 0 0 +0.75000 -0.75000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 0.25000 0.50000 0 0 +0.25000 0.25000 0.00000 0 0 +0.25000 -0.25000 0.00000 0 0 + +4 +1.22474 +3 +0.50000 0.25000 0.50000 0 0 +0.50000 0.25000 -0.50000 0 0 +0.25000 -0.25000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 0.25000 0.50000 0 0 +0.50000 -0.25000 0.50000 0 0 +0.25000 -0.25000 0.00000 0 0 + +4 +1.22474 +3 +0.50000 0.25000 0.50000 0 0 +0.25000 -0.25000 1.00000 0 0 +0.25000 -0.25000 0.00000 0 0 + +4 +1.22474 +3 +0.50000 0.25000 0.50000 0 0 +0.75000 -0.25000 0.00000 0 0 +0.25000 -0.25000 0.00000 0 0 + +8 +1.22474 +3 +0.75000 -0.25000 1.00000 0 0 +0.50000 -0.50000 1.00000 0 0 +0.50000 -0.50000 0.00000 0 0 + +8 +1.22474 +3 +0.75000 -0.25000 1.00000 0 0 +0.50000 -0.25000 0.50000 0 0 +0.50000 -0.50000 0.00000 0 0 + +4 +1.22474 +3 +0.75000 -0.25000 1.00000 0 0 +0.75000 -0.75000 1.00000 0 0 +0.50000 -0.50000 0.00000 0 0 + +4 +1.22474 +3 +0.75000 -0.25000 1.00000 0 0 +0.25000 -0.25000 1.00000 0 0 +0.50000 -0.50000 0.00000 0 0 + +8 +1.22474 +3 +0.75000 -0.25000 1.00000 0 0 +0.75000 -0.25000 0.00000 0 0 +0.50000 -0.50000 0.00000 0 0 + +2 +1.00000 +4 +0.50000 -0.25000 0.50000 0 0 +0.25000 -0.25000 1.00000 0 0 +0.25000 -0.25000 0.00000 0 0 +0.00000 -0.25000 0.50000 0 0 + +4 +1.00000 +4 +0.75000 0.25000 1.00000 0 0 +0.50000 0.25000 1.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.25000 1.00000 0 0 + +2 +1.00000 +4 +0.75000 0.25000 1.00000 0 0 +0.50000 0.25000 0.50000 0 0 +0.50000 0.25000 1.50000 0 0 +0.25000 0.25000 1.00000 0 0 + +1 +1.00000 +4 +0.50000 -0.25000 0.50000 0 0 +0.50000 -0.50000 1.00000 0 0 +0.50000 -0.50000 0.00000 0 0 +0.50000 -0.75000 0.50000 0 0 + +4 +1.00000 +4 +0.50000 0.25000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 +0.25000 0.25000 0.00000 0 0 +0.50000 0.25000 -0.50000 0 0 + diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/go b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/go new file mode 100644 index 0000000..00f4518 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/go @@ -0,0 +1,2 @@ +mcsqs -2=1.5 -3=1.3 -4=1.1 +mcsqs -n=32 -wr=10 -wn=1.0 -wd=2 diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/rndstr.in b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/rndstr.in new file mode 100644 index 0000000..f56a006 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/rndstr.in @@ -0,0 +1,17 @@ +2 2 1 90 90 90 +0.5 -0.5 0 +0.5 0.5 0 +0 0 1 + +0 0 0 aej_A=0.5,aej_B=0.5 + +0.25 0.25 0 aej_A=0.5,aej_B=0.5 +0.75 0.25 0 aej_A=0.5,aej_B=0.5 + +0 0.25 0.5 aej_A=0.5,aej_B=0.5 +0 -0.25 0.5 aej_A=0.5,aej_B=0.5 + +0.5 0 0 bh_A=1 + +0.25 0 0.5 bh_A=1 +-0.25 0 0.5 bh_A=1 diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/rndstrgrp.out b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/rndstrgrp.out new file mode 100644 index 0000000..ae75567 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=0.5,0.5_bh=1/rndstrgrp.out @@ -0,0 +1,19 @@ +2.000000 0.000000 0.000000 +0.000000 2.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 -0.500000 0.000000 +0.500000 0.500000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.000000 aej_A=0.500000,aej_B=0.500000 + +0.250000 0.250000 0.000000 aej_A=0.500000,aej_B=0.500000 +0.250000 -0.250000 0.000000 aej_A=0.500000,aej_B=0.500000 + +0.000000 0.250000 0.500000 aej_A=0.500000,aej_B=0.500000 +1.000000 -0.250000 0.500000 aej_A=0.500000,aej_B=0.500000 + +0.500000 0.000000 0.000000 bh_A=1.000000 + +0.250000 0.000000 0.500000 bh_A=1.000000 +0.750000 0.000000 0.500000 bh_A=1.000000 diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/bestcorr.out b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..82986e9 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/bestcorr.out @@ -0,0 +1,21 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 1.000000 -1.000000 0.000000 -1.000000 +Objective_function= -71.386871 diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/bestsqs.out b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..acf2f71 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +2.000000 0.000000 0.000000 +0.000000 2.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 -0.500000 -2.000000 +0.500000 -0.500000 2.000000 +-0.500000 -0.500000 0.000000 +0.500000 -1.000000 -1.000000 bh_A +0.000000 -0.500000 0.000000 bh_A +0.500000 -1.000000 0.000000 bh_B +0.500000 -1.000000 1.000000 bh_B +0.250000 -1.000000 -0.500000 bh_B +0.250000 -1.000000 -1.500000 bh_B +0.250000 -1.000000 0.500000 bh_A +0.250000 -1.000000 1.500000 bh_A +0.250000 -0.500000 -0.500000 bh_A +0.750000 -1.000000 0.500000 bh_B +0.250000 -0.500000 0.500000 bh_A +0.750000 -1.000000 -0.500000 bh_B +0.000000 -1.000000 -1.000000 aej_A +0.500000 -1.500000 0.000000 aej_A +0.000000 -1.000000 0.000000 aej_A +0.000000 -1.000000 1.000000 aej_A +0.250000 -0.750000 -1.000000 aej_A +0.750000 -1.250000 0.000000 aej_A +0.250000 -0.750000 0.000000 aej_A +0.250000 -0.750000 1.000000 aej_A +0.250000 -1.250000 -1.000000 aej_A +-0.250000 -0.750000 0.000000 aej_A +0.250000 -1.250000 0.000000 aej_A +0.250000 -1.250000 1.000000 aej_A +0.000000 -0.750000 -0.500000 aej_A +0.500000 -1.250000 0.500000 aej_A +0.000000 -0.750000 0.500000 aej_A +0.500000 -1.250000 -0.500000 aej_A +0.500000 -0.750000 -0.500000 aej_A +0.500000 -0.750000 -1.500000 aej_A +0.500000 -0.750000 0.500000 aej_A +0.500000 -0.750000 1.500000 aej_A diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/clusters.out b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/clusters.out new file mode 100644 index 0000000..57c0d23 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/clusters.out @@ -0,0 +1,129 @@ +4 +0.70711 +2 +0.75000 0.00000 0.50000 0 0 +0.50000 0.00000 1.00000 0 0 + +1 +1.00000 +2 +0.75000 0.00000 0.50000 0 0 +0.25000 0.00000 0.50000 0 0 + +2 +1.00000 +2 +0.25000 0.00000 0.50000 0 0 +0.25000 -0.50000 0.50000 0 0 + +2 +1.00000 +2 +0.75000 0.00000 0.50000 0 0 +0.75000 0.00000 -0.50000 0 0 + +1 +1.00000 +2 +0.50000 0.00000 1.00000 0 0 +0.50000 0.00000 0.00000 0 0 + +1 +1.00000 +2 +0.25000 0.00000 0.50000 0 0 +-0.25000 0.00000 0.50000 0 0 + +8 +1.22474 +2 +0.25000 0.00000 0.50000 0 0 +0.00000 -0.50000 0.00000 0 0 + +4 +1.41421 +2 +0.25000 0.00000 0.50000 0 0 +0.25000 -0.50000 -0.50000 0 0 + +2 +1.41421 +2 +0.50000 0.00000 1.00000 0 0 +1.00000 0.50000 1.00000 0 0 + +4 +1.41421 +2 +0.75000 0.00000 0.50000 0 0 +0.25000 0.50000 0.50000 0 0 + +2 +1.41421 +2 +0.75000 0.00000 0.50000 0 0 +0.25000 0.00000 -0.50000 0 0 + +2 +1.41421 +2 +0.25000 0.00000 0.50000 0 0 +-0.25000 0.00000 -0.50000 0 0 + +2 +1.00000 +3 +0.75000 0.00000 0.50000 0 0 +0.50000 0.00000 1.00000 0 0 +0.25000 0.00000 0.50000 0 0 + +2 +1.00000 +3 +0.75000 0.00000 0.50000 0 0 +0.50000 0.00000 0.00000 0 0 +0.75000 0.00000 -0.50000 0 0 + +2 +1.00000 +3 +0.50000 0.00000 1.00000 0 0 +0.75000 0.00000 0.50000 0 0 +0.50000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +0.25000 0.00000 0.50000 0 0 +0.25000 -0.50000 0.50000 0 0 +0.00000 -0.50000 0.00000 0 0 + +4 +1.22474 +3 +0.25000 0.00000 0.50000 0 0 +0.25000 0.00000 -0.50000 0 0 +0.00000 -0.50000 0.00000 0 0 + +4 +1.22474 +3 +0.25000 0.00000 0.50000 0 0 +-0.25000 0.00000 0.50000 0 0 +0.00000 -0.50000 0.00000 0 0 + +4 +1.22474 +3 +0.25000 0.00000 0.50000 0 0 +-0.00000 -0.50000 1.00000 0 0 +0.00000 -0.50000 0.00000 0 0 + +1 +1.00000 +4 +0.75000 0.00000 0.50000 0 0 +0.50000 0.00000 0.00000 0 0 +0.50000 0.00000 1.00000 0 0 +0.25000 0.00000 0.50000 0 0 + diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/go b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/go new file mode 100644 index 0000000..00f4518 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/go @@ -0,0 +1,2 @@ +mcsqs -2=1.5 -3=1.3 -4=1.1 +mcsqs -n=32 -wr=10 -wn=1.0 -wd=2 diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/rndstr.in b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/rndstr.in new file mode 100644 index 0000000..cdcf0f7 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/rndstr.in @@ -0,0 +1,17 @@ +2 2 1 90 90 90 +0.5 -0.5 0 +0.5 0.5 0 +0 0 1 + +0 0 0 aej_A=1 + +0.25 0.25 0 aej_A=1 +0.75 0.25 0 aej_A=1 + +0 0.25 0.5 aej_A=1 +0 -0.25 0.5 aej_A=1 + +0.5 0 0 bh_A=0.5,bh_B=0.5 + +0.25 0 0.5 bh_A=0.5,bh_B=0.5 +-0.25 0 0.5 bh_A=0.5,bh_B=0.5 diff --git a/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/rndstrgrp.out b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..638aa69 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsdb_lev=1_aej=1_bh=0.5,0.5/rndstrgrp.out @@ -0,0 +1,19 @@ +2.000000 0.000000 0.000000 +0.000000 2.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 -0.500000 0.000000 +0.500000 0.500000 0.000000 +0.000000 0.000000 1.000000 + +0.500000 0.000000 0.000000 bh_A=0.500000,bh_B=0.500000 + +0.250000 0.000000 0.500000 bh_A=0.500000,bh_B=0.500000 +-0.250000 0.000000 0.500000 bh_A=0.500000,bh_B=0.500000 + +0.000000 0.000000 0.000000 aej_A=1.000000 + +0.250000 0.250000 0.000000 aej_A=1.000000 +0.250000 -0.250000 0.000000 aej_A=1.000000 + +0.000000 0.250000 0.500000 aej_A=1.000000 +-0.000000 -0.250000 0.500000 aej_A=1.000000 diff --git a/data/sqsdb/GA3PT5/sqsgen.in b/data/sqsdb/GA3PT5/sqsgen.in new file mode 100644 index 0000000..e029e25 --- /dev/null +++ b/data/sqsdb/GA3PT5/sqsgen.in @@ -0,0 +1,3 @@ +level=0 aej=1 bh=1 +level=1 aej=0.5,0.5 bh=1 +level=1 aej=1 bh=0.5,0.5 diff --git a/data/sqsdb/GAMMA_L12/parentlat.in b/data/sqsdb/GAMMA_L12/parentlat.in new file mode 100644 index 0000000..3fd5b88 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/parentlat.in @@ -0,0 +1 @@ +FCC_A1/sqs_lev=0_a_ diff --git a/data/sqsdb/GAMMA_L12/rndstr.skel b/data/sqsdb/GAMMA_L12/rndstr.skel new file mode 100644 index 0000000..45585a3 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/rndstr.skel @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0 0.5 0.5 c +0.5 0 0.5 c +0.5 0.5 0 c + +0 0 0 a diff --git a/data/sqsdb/GAMMA_L12/rndstr.skel.sspp b/data/sqsdb/GAMMA_L12/rndstr.skel.sspp new file mode 100644 index 0000000..e07d9ce --- /dev/null +++ b/data/sqsdb/GAMMA_L12/rndstr.skel.sspp @@ -0,0 +1,11 @@ +#const a=1; +{a} {a} {a} {90} {90} {90} +1 0 0 +0 1 0 +0 0 1 +#const c="c"; +{0} {1/2} {1/2} {c} +{1/2} {0} {1/2} {c} +{1/2} {1/2} {0} {c} +#const a="a"; +{0} {0} {0} {a} diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=0_a=1_c=1/bestsqs.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=0_a=1_c=1/bestsqs.out new file mode 100644 index 0000000..59c7323 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=0_a=1_c=1/bestsqs.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 c_A +0.500000 0.000000 0.500000 c_A +0.500000 0.500000 0.000000 c_A +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=0_a=1_c=1/rndstr.in b/data/sqsdb/GAMMA_L12/sqsdb_lev=0_a=1_c=1/rndstr.in new file mode 100644 index 0000000..16c8330 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=0_a=1_c=1/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0 0.5 0.5 c_A=1 +0.5 0 0.5 c_A=1 +0.5 0.5 0 c_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out new file mode 100644 index 0000000..d8524cf --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out @@ -0,0 +1,10 @@ +2 1.000000 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 2.000000 -0.333333 0.000000 -0.333333 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 1.414214 -0.333333 0.000000 -0.333333 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 1.000000 0.000000 1.000000 +Objective_function= -5.205880 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out new file mode 100644 index 0000000..6b367fd --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.000000 -1.000000 +1.000000 -1.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-1.000000 -2.000000 -1.000000 a_A +-2.000000 -1.000000 -1.000000 a_A +-1.000000 -1.000000 -1.000000 a_B +-0.000000 -1.000000 -1.000000 a_B +-1.000000 -0.000000 -1.000000 a_B +-2.000000 -2.000000 -1.000000 a_B +-1.000000 -1.000000 -2.000000 a_A +-2.000000 -2.000000 -2.000000 a_A +-1.000000 -1.500000 -0.500000 c_A +-1.000000 -1.500000 -1.500000 c_A +-1.000000 -0.500000 -0.500000 c_A +-0.000000 -0.500000 -0.500000 c_A +-0.000000 -0.500000 -1.500000 c_A +-2.000000 -1.500000 -0.500000 c_A +-1.000000 -0.500000 -1.500000 c_A +-2.000000 -1.500000 -1.500000 c_A +-1.500000 -1.000000 -1.500000 c_A +-1.500000 -1.000000 -0.500000 c_A +-0.500000 -1.000000 -0.500000 c_A +-0.500000 0.000000 -1.500000 c_A +-0.500000 -0.000000 -0.500000 c_A +-1.500000 -2.000000 -0.500000 c_A +-0.500000 -1.000000 -1.500000 c_A +-1.500000 -2.000000 -1.500000 c_A +-0.500000 -1.500000 -1.000000 c_A +-1.500000 -0.500000 -1.000000 c_A +-0.500000 -0.500000 -1.000000 c_A +-1.500000 -2.500000 -1.000000 c_A +-2.500000 -1.500000 -1.000000 c_A +-1.500000 -1.500000 -1.000000 c_A +-0.500000 -0.500000 -2.000000 c_A +-1.500000 -1.500000 -2.000000 c_A diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out new file mode 100644 index 0000000..2b66e2b --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out @@ -0,0 +1,62 @@ +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 -1.00000 0 0 + +12 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +8 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +3 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +8 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +2 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 2.00000 0 0 +-0.00000 1.00000 2.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/go b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/go new file mode 100755 index 0000000..f82fd76 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2.0 -3=1.5 -4=1.5 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/job.in b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/job.in new file mode 100755 index 0000000..d62f7db --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=2:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J L12_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in new file mode 100644 index 0000000..bfb6a24 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0 0.5 0.5 c_A=1 +0.5 0 0.5 c_A=1 +0.5 0.5 0 c_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out new file mode 100644 index 0000000..82c3dc2 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 -0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.000000 0.500000 0.500000 c_A=1.000000 +0.500000 0.000000 0.500000 c_A=1.000000 +0.500000 0.500000 0.000000 c_A=1.000000 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..8aea005 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,42 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.333333 0.000000 0.333333 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.333333 0.000000 0.333333 +Objective_function= -344.981357 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out.0 b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out.0 new file mode 100644 index 0000000..582b04a --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out.0 @@ -0,0 +1,155 @@ +2 2.828427 0.000000 0.000000 0.000000 +2 4.000000 0.000000 0.000000 0.000000 +2 4.000000 0.000000 0.000000 0.000000 +2 4.898979 0.000000 0.000000 0.000000 +2 5.656854 0.000000 0.000000 0.000000 +2 5.656854 0.000000 0.000000 0.000000 +2 6.324555 0.000000 0.000000 0.000000 +2 6.928203 0.000000 0.000000 0.000000 +2 7.483315 0.000000 0.000000 0.000000 +2 8.000000 -0.333333 0.000000 -0.333333 +2 8.000000 -0.333333 0.000000 -0.333333 +2 8.485281 0.000000 0.000000 0.000000 +2 8.485281 0.000000 0.000000 0.000000 +2 8.944272 0.000000 0.000000 0.000000 +2 8.944272 0.000000 0.000000 0.000000 +2 8.944272 0.000000 0.000000 0.000000 +2 9.380832 0.000000 0.000000 0.000000 +2 9.797959 0.000000 0.000000 0.000000 +2 9.797959 0.000000 0.000000 0.000000 +2 10.198039 0.000000 0.000000 0.000000 +2 10.198039 0.000000 0.000000 0.000000 +2 10.954451 0.000000 0.000000 0.000000 +2 11.313708 -0.333333 0.000000 -0.333333 +2 11.313708 -0.333333 0.000000 -0.333333 +2 11.661904 0.000000 0.000000 0.000000 +2 11.661904 0.000000 0.000000 0.000000 +2 12.000000 0.000000 0.000000 0.000000 +2 12.000000 0.000000 0.000000 0.000000 +2 12.000000 0.000000 0.000000 0.000000 +2 12.000000 0.000000 0.000000 0.000000 +2 12.328828 0.000000 0.000000 0.000000 +2 12.328828 0.000000 0.000000 0.000000 +2 12.649111 0.000000 0.000000 0.000000 +2 12.649111 0.000000 0.000000 0.000000 +2 12.649111 0.000000 0.000000 0.000000 +2 12.961481 0.000000 0.000000 0.000000 +2 13.266499 0.000000 0.000000 0.000000 +2 13.266499 0.000000 0.000000 0.000000 +2 13.564660 0.000000 0.000000 0.000000 +2 13.856406 1.000000 0.000000 1.000000 +3 2.828427 0.000000 0.000000 0.000000 +3 4.000000 0.000000 0.000000 0.000000 +3 4.000000 0.000000 0.000000 0.000000 +3 4.898979 0.000000 0.000000 0.000000 +3 4.898979 0.000000 0.000000 0.000000 +3 4.898979 0.000000 0.000000 0.000000 +3 4.898979 0.000000 0.000000 0.000000 +3 4.898979 0.000000 0.000000 0.000000 +3 4.898979 0.000000 0.000000 0.000000 +3 5.656854 0.000000 0.000000 0.000000 +3 5.656854 0.000000 0.000000 0.000000 +3 5.656854 0.000000 0.000000 0.000000 +3 5.656854 0.000000 0.000000 0.000000 +3 5.656854 0.000000 0.000000 0.000000 +3 5.656854 0.000000 0.000000 0.000000 +3 5.656854 0.000000 0.000000 0.000000 +3 6.324555 0.000000 0.000000 0.000000 +3 6.324555 0.000000 0.000000 0.000000 +3 6.324555 0.000000 0.000000 0.000000 +3 6.324555 0.000000 0.000000 0.000000 +3 6.324555 0.000000 0.000000 0.000000 +3 6.324555 0.000000 0.000000 0.000000 +3 6.324555 0.000000 0.000000 0.000000 +3 6.324555 0.000000 0.000000 0.000000 +3 6.324555 0.000000 0.000000 0.000000 +3 6.324555 0.000000 0.000000 0.000000 +3 6.324555 0.000000 0.000000 0.000000 +3 6.324555 0.000000 0.000000 0.000000 +3 6.928203 0.000000 0.000000 0.000000 +3 6.928203 0.000000 0.000000 0.000000 +3 6.928203 0.000000 0.000000 0.000000 +3 6.928203 0.000000 0.000000 0.000000 +3 6.928203 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 7.483315 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +3 8.000000 0.000000 0.000000 0.000000 +4 4.000000 -0.333333 0.000000 -0.333333 +4 4.000000 0.000000 0.000000 0.000000 +4 4.000000 -0.333333 0.000000 -0.333333 +4 4.898979 0.000000 0.000000 0.000000 +4 4.898979 0.000000 0.000000 0.000000 +4 4.898979 0.000000 0.000000 0.000000 +4 4.898979 0.000000 0.000000 0.000000 +4 4.898979 0.000000 0.000000 0.000000 +4 4.898979 -0.333333 0.000000 -0.333333 +4 4.898979 0.000000 0.000000 0.000000 +4 4.898979 0.000000 0.000000 0.000000 +4 4.898979 -0.333333 0.000000 -0.333333 +4 4.898979 0.000000 0.000000 0.000000 +4 4.898979 -0.333333 0.000000 -0.333333 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.333333 0.000000 0.333333 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.333333 0.000000 0.333333 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 -1.000000 0.000000 -1.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 -0.333333 0.000000 -0.333333 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.333333 0.000000 0.333333 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +4 5.656854 0.000000 0.000000 0.000000 +Objective_function= -70.669011 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..065a31f --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-2.000000 -1.000000 1.000000 +2.000000 -1.000000 1.000000 +0.000000 1.000000 1.000000 +-0.000000 -1.500000 2.500000 c_B +-1.000000 -0.500000 1.500000 c_B +0.000000 -0.500000 1.500000 c_A +1.000000 -0.500000 1.500000 c_A +1.000000 -0.500000 2.500000 c_B +0.000000 0.500000 1.500000 c_B +-1.000000 -0.500000 2.500000 c_A +-0.000000 -0.500000 2.500000 c_A +-0.500000 -1.000000 2.500000 c_A +0.500000 -1.000000 2.500000 c_B +-0.500000 0.000000 1.500000 c_B +0.500000 0.000000 1.500000 c_A +0.500000 -1.000000 1.500000 c_B +1.500000 -1.000000 1.500000 c_B +-1.500000 -1.000000 1.500000 c_A +-0.500000 -1.000000 1.500000 c_A +-0.500000 -1.500000 2.000000 c_A +0.500000 -1.500000 2.000000 c_A +-0.500000 -0.500000 1.000000 c_B +0.500000 -0.500000 1.000000 c_B +0.500000 -0.500000 2.000000 c_A +1.500000 -0.500000 2.000000 c_A +-1.500000 -0.500000 2.000000 c_B +-0.500000 -0.500000 2.000000 c_B +0.000000 -1.000000 3.000000 a_A +-1.000000 0.000000 2.000000 a_A +-0.000000 0.000000 2.000000 a_A +1.000000 0.000000 2.000000 a_A +1.000000 -1.000000 2.000000 a_A +-0.000000 0.000000 1.000000 a_A +-1.000000 -1.000000 2.000000 a_A +0.000000 -1.000000 2.000000 a_A diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..38a46eb --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out @@ -0,0 +1,290 @@ +12 +0.70711 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 1.00000 1.50000 0 0 + +6 +1.00000 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +3 +1.00000 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 0.50000 0.00000 0 0 + +24 +1.22474 +2 +1.00000 0.50000 0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +6 +1.41421 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +12 +1.41421 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 2.00000 0 0 + +24 +1.58114 +2 +1.00000 0.50000 0.50000 0 0 +1.50000 0.50000 -1.00000 0 0 + +12 +1.73205 +2 +0.50000 0.50000 1.00000 0 0 +-0.50000 1.50000 2.00000 0 0 + +48 +1.87083 +2 +0.50000 1.00000 0.50000 0 0 +-0.50000 1.50000 2.00000 0 0 + +3 +2.00000 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 0.50000 -1.00000 0 0 + +6 +2.00000 +2 +0.50000 1.00000 0.50000 0 0 +0.50000 1.00000 -1.50000 0 0 + +8 +0.70711 +3 +0.50000 1.00000 0.50000 0 0 +0.50000 1.50000 0.00000 0 0 +-0.00000 1.50000 0.50000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +1.50000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 + +48 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.50000 0.50000 0.00000 0 0 +1.50000 -0.50000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.50000 -0.00000 0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.00000 0.50000 -0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +2.00000 0.50000 0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +8 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +0.50000 0.00000 -0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +48 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +0.50000 1.00000 1.50000 0 0 +1.50000 1.50000 1.00000 0 0 + +12 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +24 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 2.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +48 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +0.50000 1.00000 1.50000 0 0 +1.50000 0.50000 2.00000 0 0 + +12 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +1.50000 0.50000 2.00000 0 0 + +24 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 +1.50000 0.50000 2.00000 0 0 + +24 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +1.50000 0.50000 2.00000 0 0 + +3 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +1.00000 0.50000 1.50000 0 0 +1.50000 0.50000 1.00000 0 0 + +12 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 + +3 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 + +48 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +1.50000 -0.00000 0.50000 0 0 +1.50000 0.50000 0.00000 0 0 +1.50000 -0.50000 0.00000 0 0 + +48 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 +1.50000 0.50000 0.00000 0 0 +1.50000 -0.50000 0.00000 0 0 + +48 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 +1.50000 -0.00000 0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +24 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +1.50000 0.50000 0.00000 0 0 +1.00000 0.50000 -0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +48 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 +1.00000 0.50000 -0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +12 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +1.50000 0.50000 0.00000 0 0 +1.00000 -0.50000 0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +24 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +1.50000 0.50000 0.00000 0 0 +2.00000 0.50000 0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +24 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +1.50000 -0.00000 0.50000 0 0 +2.00000 0.50000 0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +6 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +1.00000 0.50000 -0.50000 0 0 +0.50000 -0.50000 0.00000 0 0 +1.50000 -0.50000 0.00000 0 0 + +12 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 +1.50000 -0.50000 1.00000 0 0 +1.50000 -0.50000 0.00000 0 0 + +6 +1.22474 +4 +1.00000 0.50000 0.50000 0 0 +2.00000 0.50000 0.50000 0 0 +1.50000 -0.50000 1.00000 0 0 +1.50000 -0.50000 0.00000 0 0 + diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/go b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/go new file mode 100755 index 0000000..d2a011d --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.5 -4=1.3 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/job.in b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/job.in new file mode 100755 index 0000000..d62f7db --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=2:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J L12_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..67dfa8f --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0 0.5 0.5 c_A=0.5,c_B=0.5 +0.5 0 0.5 c_A=0.5,c_B=0.5 +0.5 0.5 0 c_A=0.5,c_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..7e7018a --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 -0.500000 -0.500000 c_A=0.500000,c_B=0.500000 +-0.500000 0.000000 -0.500000 c_A=0.500000,c_B=0.500000 +-0.500000 0.500000 0.000000 c_A=0.500000,c_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/sqsparam.in b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..f093a2d --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=1_a=1_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +2 10 0 3 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..ee6ca33 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out @@ -0,0 +1,43 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 -0.333333 0.000000 -0.333333 +2 1.414214 -0.333333 0.000000 -0.333333 +2 1.414214 -0.333333 0.000000 -0.333333 +2 1.581139 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +Objective_function= -47.281195 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..1e214cd --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-2.000000 -1.000000 1.000000 +-2.000000 1.000000 -1.000000 +2.000000 -1.000000 -1.000000 +-1.000000 -0.500000 -1.500000 c_A +0.000000 -0.500000 -1.500000 c_A +-1.000000 -1.500000 -0.500000 c_B +-0.000000 -1.500000 -0.500000 c_B +-3.000000 -0.500000 -0.500000 c_B +-2.000000 -0.500000 -0.500000 c_A +-1.000000 -0.500000 -0.500000 c_A +0.000000 -0.500000 -0.500000 c_B +0.500000 -1.000000 -0.500000 c_B +-0.500000 -0.000000 -1.500000 c_B +-1.500000 -1.000000 -0.500000 c_A +-0.500000 -1.000000 -0.500000 c_A +-1.500000 -1.000000 0.500000 c_B +-2.500000 0.000000 -0.500000 c_B +-1.500000 -0.000000 -0.500000 c_A +-0.500000 0.000000 -0.500000 c_A +-1.500000 0.500000 -1.000000 c_B +-2.500000 -0.500000 -0.000000 c_B +-1.500000 -0.500000 0.000000 c_A +-0.500000 -0.500000 0.000000 c_A +-1.500000 -0.500000 -1.000000 c_B +-0.500000 -0.500000 -1.000000 c_B +0.500000 -0.500000 -1.000000 c_A +-0.500000 -1.500000 0.000000 c_A +-1.000000 -0.000000 -1.000000 a_A +-2.000000 -1.000000 0.000000 a_A +-1.000000 -1.000000 0.000000 a_B +-2.000000 0.000000 -1.000000 a_B +-1.000000 -1.000000 -1.000000 a_B +-0.000000 -1.000000 -1.000000 a_B +1.000000 -1.000000 -1.000000 a_A +-2.000000 -1.000000 -1.000000 a_A diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..f62ddfc --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out @@ -0,0 +1,287 @@ +12 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +0.70711 +2 +0.50000 1.00000 0.50000 0 0 +-0.00000 1.50000 0.50000 0 0 + +6 +1.00000 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +3 +1.00000 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 0.50000 0.00000 0 0 + +24 +1.22474 +2 +0.50000 1.00000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +24 +1.22474 +2 +1.00000 0.50000 0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +6 +1.41421 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +12 +1.41421 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 2.00000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +24 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 1.50000 1.00000 0 0 + +24 +1.58114 +2 +1.00000 0.50000 0.50000 0 0 +1.50000 0.50000 -1.00000 0 0 + +12 +1.73205 +2 +0.50000 0.50000 1.00000 0 0 +-0.50000 1.50000 2.00000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +24 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.50000 0 0 +0.50000 1.50000 1.00000 0 0 + +8 +0.70711 +3 +0.50000 1.00000 0.50000 0 0 +0.50000 1.50000 0.00000 0 0 +-0.00000 1.50000 0.50000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +1.50000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 + +24 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +48 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +0.50000 1.00000 -0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +0.50000 1.00000 0.50000 0 0 +1.00000 0.50000 -0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 +1.50000 -0.50000 0.00000 0 0 + +48 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.50000 0.50000 0.00000 0 0 +1.50000 -0.50000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.50000 -0.00000 0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +48 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.50000 -0.50000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +1.00000 0.50000 -0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +2.00000 0.50000 0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +8 +1.22474 +3 +1.00000 0.50000 0.50000 0 0 +0.50000 0.00000 -0.50000 0 0 +1.50000 -0.50000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 +1.50000 1.50000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +1.50000 1.50000 0.00000 0 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +0.50000 1.00000 1.50000 0 0 +0.50000 1.50000 1.00000 0 0 + +6 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +24 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +3 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +1.00000 0.50000 1.50000 0 0 +1.50000 0.50000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 0.50000 0 0 +1.50000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +12 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 + +3 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 + diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go new file mode 100755 index 0000000..41b7f49 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.8 -3=1.3 -4=1. -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in new file mode 100755 index 0000000..79f1a1f --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J L12_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..f786f04 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0 0.5 0.5 c_A=0.5,c_B=0.5 +0.5 0 0.5 c_A=0.5,c_B=0.5 +0.5 0.5 0 c_A=0.5,c_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..167e97e --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 -0.500000 -0.500000 c_A=0.500000,c_B=0.500000 +-0.500000 0.000000 -0.500000 c_A=0.500000,c_B=0.500000 +-0.500000 0.500000 0.000000 c_A=0.500000,c_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..7831d53 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 5 1 2 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=0.75,0.25_c=1/bestcorr.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=0.75,0.25_c=1/bestcorr.out new file mode 100644 index 0000000..35c16d1 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=0.75,0.25_c=1/bestcorr.out @@ -0,0 +1,11 @@ +2 4.000000 0.250000 0.250000 0.000000 +2 5.656854 0.250000 0.250000 0.000000 +2 6.928203 0.250000 0.250000 0.000000 +2 8.000000 0.333333 0.250000 0.083333 +3 5.656854 -0.166667 -0.125000 -0.041667 +3 5.656854 -0.125000 -0.125000 0.000000 +3 6.928203 -0.125000 -0.125000 0.000000 +4 5.656854 0.166667 0.062500 0.104167 +4 5.656854 0.125000 0.062500 0.062500 +4 5.656854 0.000000 0.062500 -0.062500 +Objective_function= -3.030207 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=0.75,0.25_c=1/bestsqs.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=0.75,0.25_c=1/bestsqs.out new file mode 100644 index 0000000..f456758 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=0.75,0.25_c=1/bestsqs.out @@ -0,0 +1,70 @@ +4.000000 0.000000 0.000000 +0.000000 4.000000 0.000000 +0.000000 0.000000 4.000000 +-1.000000 -2.000000 2.000000 +-1.000000 2.000000 -2.000000 +-0.000000 -2.000000 -2.000000 +-1.000000 0.000000 -3.000000 a_A +-1.000000 -1.000000 -2.000000 a_A +-1.000000 -0.000000 -2.000000 a_A +-1.000000 1.000000 -2.000000 a_A +-1.000000 -2.000000 -1.000000 a_A +-1.000000 -1.000000 -1.000000 a_A +-2.000000 -1.000000 -1.000000 a_B +-1.000000 -0.000000 -1.000000 a_B +-1.000000 -1.000000 -3.000000 a_A +-1.000000 -3.000000 0.000000 a_A +-1.000000 -2.000000 -0.000000 a_A +-1.000000 -1.000000 0.000000 a_B +-1.000000 -2.000000 -2.000000 a_A +-2.000000 -2.000000 -2.000000 a_A +-1.000000 -2.000000 1.000000 a_B +-1.000000 -3.000000 -1.000000 a_A +-1.000000 0.500000 -2.500000 c_A +-1.000000 -0.500000 -1.500000 c_A +-1.000000 0.500000 -1.500000 c_A +-1.000000 -0.500000 -3.500000 c_A +-1.000000 -1.500000 -0.500000 c_A +-1.000000 -0.500000 -0.500000 c_A +-2.000000 -0.500000 -0.500000 c_A +-1.000000 -1.500000 -2.500000 c_A +-1.000000 -0.500000 -2.500000 c_A +-1.000000 -2.500000 0.500000 c_A +-1.000000 -1.500000 0.500000 c_A +-1.000000 -2.500000 -1.500000 c_A +-1.000000 -1.500000 -1.500000 c_A +-2.000000 -1.500000 -1.500000 c_A +-1.000000 -3.500000 -0.500000 c_A +-1.000000 -2.500000 -0.500000 c_A +-1.500000 -2.000000 -0.500000 c_A +-0.500000 -1.000000 -1.500000 c_A +-0.500000 0.000000 -1.500000 c_A +-1.500000 -1.000000 0.500000 c_A +-0.500000 -2.000000 -0.500000 c_A +-0.500000 -1.000000 -0.500000 c_A +-1.500000 -1.000000 -0.500000 c_A +-0.500000 -0.000000 -0.500000 c_A +-0.500000 -1.000000 -2.500000 c_A +-1.500000 -1.000000 -1.500000 c_A +-1.500000 0.000000 -1.500000 c_A +-0.500000 -1.000000 0.500000 c_A +-0.500000 -2.000000 -1.500000 c_A +-1.500000 -2.000000 -1.500000 c_A +-1.500000 0.000000 -0.500000 c_A +-1.500000 -1.000000 -2.500000 c_A +-1.500000 -1.500000 -1.000000 c_A +-0.500000 -0.500000 -2.000000 c_A +-1.500000 -1.500000 0.000000 c_A +-1.500000 -0.500000 -0.000000 c_A +-0.500000 -1.500000 -1.000000 c_A +-0.500000 -0.500000 -1.000000 c_A +-1.500000 -0.500000 -1.000000 c_A +-0.500000 0.500000 -1.000000 c_A +-1.500000 -2.500000 -1.000000 c_A +-1.500000 -0.500000 -2.000000 c_A +-0.500000 -1.500000 0.000000 c_A +-0.500000 -0.500000 0.000000 c_A +-0.500000 -1.500000 -2.000000 c_A +-1.500000 -1.500000 -2.000000 c_A +-1.500000 0.500000 -1.000000 c_A +-0.500000 -2.500000 -1.000000 c_A diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=0.75,0.25_c=1/rndstr.in b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=0.75,0.25_c=1/rndstr.in new file mode 100644 index 0000000..7fe01e1 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=0.75,0.25_c=1/rndstr.in @@ -0,0 +1,10 @@ +4 4 4 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0 0.5 0.5 c_A=1 +0.5 0 0.5 c_A=1 +0.5 0.5 0 c_A=1 + +0 0 0 a_A=0.75,a_B=0.25 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=0.75,0.25_c=1/rndstrgrp.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=0.75,0.25_c=1/rndstrgrp.out new file mode 100644 index 0000000..8acd112 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=0.75,0.25_c=1/rndstrgrp.out @@ -0,0 +1,12 @@ +4.000000 0.000000 0.000000 +0.000000 4.000000 0.000000 +0.000000 0.000000 4.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 -0.000000 0.000000 a_A=0.750000,a_B=0.250000 + +0.000000 0.500000 0.500000 c_A=1.000000 +0.500000 0.000000 0.500000 c_A=1.000000 +0.500000 0.500000 0.000000 c_A=1.000000 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=1_c=0.75,0.25/bestcorr.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=1_c=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..6749f6d --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=1_c=0.75,0.25/bestcorr.out @@ -0,0 +1,24 @@ +2 2.828427 0.250000 0.250000 0.000000 +2 4.000000 0.250000 0.250000 0.000000 +2 4.000000 0.250000 0.250000 0.000000 +2 4.898979 0.250000 0.250000 0.000000 +2 5.656854 0.250000 0.250000 0.000000 +2 5.656854 0.250000 0.250000 0.000000 +2 6.324555 0.250000 0.250000 0.000000 +2 6.928203 0.250000 0.250000 0.000000 +2 7.483315 0.250000 0.250000 0.000000 +2 8.000000 0.500000 0.250000 0.250000 +2 8.000000 0.500000 0.250000 0.250000 +3 2.828427 -0.125000 -0.125000 0.000000 +3 4.000000 -0.166667 -0.125000 -0.041667 +3 4.000000 -0.125000 -0.125000 0.000000 +3 4.898979 -0.135417 -0.125000 -0.010417 +3 4.898979 -0.145833 -0.125000 -0.020833 +3 4.898979 -0.187500 -0.125000 -0.062500 +3 4.898979 -0.125000 -0.125000 0.000000 +3 4.898979 -0.125000 -0.125000 0.000000 +3 4.898979 -0.125000 -0.125000 0.000000 +4 4.000000 0.166667 0.062500 0.104167 +4 4.000000 0.083333 0.062500 0.020833 +4 4.000000 0.000000 0.062500 -0.062500 +Objective_function= -11.279135 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=1_c=0.75,0.25/bestsqs.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=1_c=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..cf09d43 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=1_c=0.75,0.25/bestsqs.out @@ -0,0 +1,70 @@ +4.000000 0.000000 0.000000 +0.000000 4.000000 0.000000 +0.000000 0.000000 4.000000 +0.000000 -1.000000 -2.000000 +0.000000 -2.000000 0.000000 +-4.000000 0.000000 0.000000 +-3.000000 -2.500000 -1.500000 c_A +-2.000000 -2.500000 -1.500000 c_A +-1.000000 -2.500000 -1.500000 c_B +-4.000000 -2.500000 -1.500000 c_A +-3.000000 -1.500000 -1.500000 c_A +-2.000000 -1.500000 -1.500000 c_A +-1.000000 -1.500000 -1.500000 c_A +-4.000000 -1.500000 -1.500000 c_A +-3.000000 -1.500000 -0.500000 c_B +-2.000000 -1.500000 -0.500000 c_A +-1.000000 -1.500000 -0.500000 c_A +-4.000000 -1.500000 -0.500000 c_A +-3.000000 -0.500000 -0.500000 c_A +-2.000000 -0.500000 -0.500000 c_A +-1.000000 -0.500000 -0.500000 c_A +-4.000000 -0.500000 -0.500000 c_A +-3.500000 -2.000000 -1.500000 c_A +-2.500000 -2.000000 -1.500000 c_B +-1.500000 -2.000000 -1.500000 c_B +-0.500000 -2.000000 -1.500000 c_A +-3.500000 -1.000000 -1.500000 c_A +-2.500000 -1.000000 -1.500000 c_A +-1.500000 -1.000000 -1.500000 c_A +-0.500000 -1.000000 -1.500000 c_A +-3.500000 -1.000000 -0.500000 c_A +-2.500000 -1.000000 -0.500000 c_B +-1.500000 -1.000000 -0.500000 c_B +-0.500000 -1.000000 -0.500000 c_B +-3.500000 -2.000000 -0.500000 c_A +-2.500000 -2.000000 -0.500000 c_B +-1.500000 -2.000000 -0.500000 c_A +-0.500000 -2.000000 -0.500000 c_A +-3.500000 -1.500000 -1.000000 c_B +-2.500000 -1.500000 -1.000000 c_A +-1.500000 -1.500000 -1.000000 c_B +-0.500000 -1.500000 -1.000000 c_A +-3.500000 -2.500000 -1.000000 c_A +-2.500000 -2.500000 -1.000000 c_A +-1.500000 -2.500000 -1.000000 c_A +-0.500000 -2.500000 -1.000000 c_A +-3.500000 -1.500000 -2.000000 c_A +-2.500000 -1.500000 -2.000000 c_A +-1.500000 -1.500000 -2.000000 c_B +-0.500000 -1.500000 -2.000000 c_A +-3.500000 -2.500000 -2.000000 c_A +-2.500000 -2.500000 -2.000000 c_B +-1.500000 -2.500000 -2.000000 c_A +-0.500000 -2.500000 -2.000000 c_A +-3.000000 -2.000000 -1.000000 a_A +-2.000000 -2.000000 -1.000000 a_A +-1.000000 -2.000000 -1.000000 a_A +-4.000000 -2.000000 -1.000000 a_A +-3.000000 -1.000000 -1.000000 a_A +-2.000000 -1.000000 -1.000000 a_A +-1.000000 -1.000000 -1.000000 a_A +-4.000000 -1.000000 -1.000000 a_A +-3.000000 -2.000000 -2.000000 a_A +-2.000000 -2.000000 -2.000000 a_A +-1.000000 -2.000000 -2.000000 a_A +-4.000000 -2.000000 -2.000000 a_A +-3.000000 -3.000000 -2.000000 a_A +-2.000000 -3.000000 -2.000000 a_A +-1.000000 -3.000000 -2.000000 a_A +-4.000000 -3.000000 -2.000000 a_A diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=1_c=0.75,0.25/rndstr.in b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=1_c=0.75,0.25/rndstr.in new file mode 100644 index 0000000..f75be78 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=1_c=0.75,0.25/rndstr.in @@ -0,0 +1,10 @@ +4 4 4 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0 0.5 0.5 c_A=0.75,c_B=0.25 +0.5 0 0.5 c_A=0.75,c_B=0.25 +0.5 0.5 0 c_A=0.75,c_B=0.25 + +0 0 0 a_A=1 diff --git a/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=1_c=0.75,0.25/rndstrgrp.out b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=1_c=0.75,0.25/rndstrgrp.out new file mode 100644 index 0000000..8b07036 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsdb_lev=3_a=1_c=0.75,0.25/rndstrgrp.out @@ -0,0 +1,12 @@ +4.000000 0.000000 0.000000 +0.000000 4.000000 0.000000 +0.000000 0.000000 4.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 -0.500000 -0.500000 c_A=0.750000,c_B=0.250000 +-0.500000 0.000000 -0.500000 c_A=0.750000,c_B=0.250000 +-0.500000 0.500000 -0.000000 c_A=0.750000,c_B=0.250000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/GAMMA_L12/sqsgen.in b/data/sqsdb/GAMMA_L12/sqsgen.in new file mode 100644 index 0000000..0112318 --- /dev/null +++ b/data/sqsdb/GAMMA_L12/sqsgen.in @@ -0,0 +1,6 @@ +level=0 a=1 c=1 +level=1 a=0.5,0.5 c=1 +level=1 a=1 c=0.5,0.5 +level=2 a=0.5,0.5 c=0.5,0.5 +level=3 a=0.75,0.25 c=1 +level=3 a=1 c=0.75,0.25 diff --git a/data/sqsdb/HCP_A3/coord.in b/data/sqsdb/HCP_A3/coord.in new file mode 100644 index 0000000..48082f7 --- /dev/null +++ b/data/sqsdb/HCP_A3/coord.in @@ -0,0 +1 @@ +12 diff --git a/data/sqsdb/HCP_A3/rndstr.skel b/data/sqsdb/HCP_A3/rndstr.skel new file mode 100644 index 0000000..2a0adfb --- /dev/null +++ b/data/sqsdb/HCP_A3/rndstr.skel @@ -0,0 +1,6 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 c +0.6666666 0.3333333 0.5 c diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=0_c=1/bestsqs.out b/data/sqsdb/HCP_A3/sqsdb_lev=0_c=1/bestsqs.out new file mode 100644 index 0000000..534243b --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=0_c=1/bestsqs.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +-0.000000 -0.000000 1.000000 +0.000000 0.000000 0.000000 c_A +0.666667 0.333333 0.500000 c_A diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=0_c=1/rndstr.in b/data/sqsdb/HCP_A3/sqsdb_lev=0_c=1/rndstr.in new file mode 100644 index 0000000..080f450 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=0_c=1/rndstr.in @@ -0,0 +1,6 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 c_A=1 +0.6666666 0.3333333 0.5 c_A=1 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..95c4dad --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,17 @@ +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.414217 0.000000 0.000000 0.000000 +2 1.632990 0.000000 0.000000 0.000000 +2 1.732054 -0.083333 0.000000 -0.083333 +2 1.732051 -0.041667 0.000000 -0.041667 +2 1.914852 -0.083333 0.000000 -0.083333 +2 2.000000 -0.166667 0.000000 -0.166667 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.414217 0.020833 0.000000 0.020833 +4 1.000000 0.000000 0.000000 0.000000 +4 1.414217 -0.041667 0.000000 -0.041667 +4 1.414217 0.083333 0.000000 0.083333 +4 1.414217 -0.041667 0.000000 -0.041667 +Objective_function= -6.508587 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..8f2baa5 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +-1.000000 2.000000 -1.000000 +-3.000000 -2.000000 1.000000 +3.000000 2.000000 1.000000 +0.000000 2.000000 1.000000 c_B +1.000000 2.000000 1.000000 c_A +2.000000 2.000000 1.000000 c_A +-1.000000 2.000000 1.000000 c_B +-2.000000 1.000000 0.000000 c_A +-1.000000 1.000000 0.000000 c_B +0.000000 1.000000 -0.000000 c_B +0.000000 2.000000 -0.000000 c_B +-2.000000 0.000000 1.000000 c_B +1.000000 3.000000 0.000000 c_A +-2.000000 -1.000000 1.000000 c_A +-1.000000 -0.000000 1.000000 c_B +-1.000000 2.000000 0.000000 c_B +-1.000000 1.000000 1.000000 c_A +0.000000 1.000000 1.000000 c_B +1.000000 1.000000 1.000000 c_A +-2.333333 0.333333 0.500000 c_B +-1.333333 0.333333 0.500000 c_A +-0.333333 0.333333 0.500000 c_A +-0.333333 2.333333 -0.500000 c_A +-1.333333 1.333333 0.500000 c_A +-0.333333 1.333333 0.500000 c_B +0.666667 1.333333 0.500000 c_A +0.666667 2.333333 0.500000 c_B +1.666667 2.333333 0.500000 c_A +-1.333333 1.333333 -0.500000 c_A +-1.333333 -0.666667 1.500000 c_A +-0.333333 0.333333 1.500000 c_B +-0.333333 2.333333 0.500000 c_B +-3.333333 -0.666667 0.500000 c_A +-2.333333 -0.666667 0.500000 c_B +-1.333333 -0.666667 0.500000 c_B diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/clusters.out b/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..b4a980b --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/clusters.out @@ -0,0 +1,108 @@ +6 +1.00000 +2 +0.66667 0.33333 0.50000 0 0 +0.00000 0.00000 1.00000 0 0 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +6 +1.41421 +2 +0.66667 0.33333 0.50000 0 0 +0.00000 1.00000 0.00000 0 0 + +2 +1.63299 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 -0.50000 0 0 + +12 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +2.66667 1.33333 0.50000 0 0 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +12 +1.91485 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +6 +2.00000 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 -1.66667 0.50000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.66667 1.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + +4 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.66667 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 + +12 +1.41421 +4 +0.66667 0.33333 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + +6 +1.41421 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + +12 +1.41421 +4 +0.66667 0.33333 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/rndstr.in b/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..2799b94 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,6 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 c_A=0.5,c_B=0.5 +0.6666666 0.3333333 0.5 c_A=0.5,c_B=0.5 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..b70bb74 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,9 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.000000 c_A=0.500000,c_B=0.500000 +0.666667 0.333333 0.500000 c_A=0.500000,c_B=0.500000 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/sqsparam.in b/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..299a71f --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=1_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +5 5 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/bestcorr.out b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..7cd46a2 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/bestcorr.out @@ -0,0 +1,19 @@ +2 1.000000 0.250000 0.250000 0.000000 +2 1.000000 0.250000 0.250000 0.000000 +2 1.414217 0.250000 0.250000 0.000000 +2 1.632990 0.250000 0.250000 0.000000 +2 1.732054 0.250000 0.250000 0.000000 +2 1.732051 0.250000 0.250000 0.000000 +2 1.914852 0.250000 0.250000 0.000000 +2 2.000000 0.250000 0.250000 0.000000 +3 1.000000 -0.125000 -0.125000 0.000000 +3 1.000000 -0.250000 -0.125000 -0.125000 +3 1.000000 -0.250000 -0.125000 -0.125000 +3 1.414217 -0.125000 -0.125000 0.000000 +3 1.632990 -0.166667 -0.125000 -0.041667 +3 1.632990 -0.083333 -0.125000 0.041667 +4 1.000000 0.125000 0.062500 0.062500 +4 1.414217 0.125000 0.062500 0.062500 +4 1.414217 0.000000 0.062500 -0.062500 +4 1.414217 0.083333 0.062500 0.020833 +Objective_function= -66.219429 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/bestsqs.out b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..9f5d745 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +-2.000000 2.000000 -1.000000 +2.000000 4.000000 -1.000000 +-0.000000 -1.000000 -1.000000 +-1.000000 2.000000 -2.000000 c_A +-1.000000 3.000000 -2.000000 c_B +0.000000 3.000000 -2.000000 c_A +1.000000 3.000000 -2.000000 c_A +0.000000 4.000000 -2.000000 c_A +1.000000 4.000000 -2.000000 c_B +0.000000 5.000000 -2.000000 c_A +0.000000 -0.000000 -1.000000 c_A +-1.000000 1.000000 -1.000000 c_B +0.000000 1.000000 -1.000000 c_A +-1.000000 2.000000 -1.000000 c_A +0.000000 2.000000 -1.000000 c_A +1.000000 2.000000 -1.000000 c_B +0.000000 2.000000 -2.000000 c_A +1.000000 3.000000 -1.000000 c_A +0.000000 5.000000 -3.000000 c_A +-0.333333 2.333333 -1.500000 c_A +-0.333333 3.333333 -1.500000 c_B +0.666667 3.333333 -1.500000 c_B +1.666667 3.333333 -1.500000 c_A +0.666667 4.333333 -1.500000 c_A +-0.333333 0.333333 -0.500000 c_B +0.666667 4.333333 -2.500000 c_A +-1.333333 2.333333 -1.500000 c_A +-0.333333 0.333333 -1.500000 c_A +0.666667 1.333333 -0.500000 c_B +-0.333333 1.333333 -1.500000 c_A +0.666667 1.333333 -1.500000 c_A +-0.333333 3.333333 -2.500000 c_A +0.666667 2.333333 -1.500000 c_A +-0.333333 4.333333 -2.500000 c_A +-1.333333 1.333333 -1.500000 c_A diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/clusters.out b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/clusters.out new file mode 100644 index 0000000..f50b535 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/clusters.out @@ -0,0 +1,122 @@ +6 +1.00000 +2 +0.66667 0.33333 0.50000 0 0 +0.00000 0.00000 1.00000 0 0 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +6 +1.41421 +2 +0.66667 0.33333 0.50000 0 0 +0.00000 1.00000 0.00000 0 0 + +2 +1.63299 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 -0.50000 0 0 + +12 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +2.66667 1.33333 0.50000 0 0 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +12 +1.91485 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +6 +2.00000 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 -1.66667 0.50000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.66667 1.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + +6 +1.63299 +3 +0.66667 0.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.66667 0.33333 -0.50000 0 0 + +6 +1.63299 +3 +0.66667 0.33333 0.50000 0 0 +0.00000 1.00000 0.00000 0 0 +0.66667 0.33333 -0.50000 0 0 + +4 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.66667 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 + +12 +1.41421 +4 +0.66667 0.33333 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + +6 +1.41421 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + +12 +1.41421 +4 +0.66667 0.33333 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/go b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/go new file mode 100755 index 0000000..e4d55b9 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=2.0 -3=1.7 -4=1.5 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/job.in b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/job.in new file mode 100755 index 0000000..bbcf2d6 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -wr=20 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/rndstr.in b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/rndstr.in new file mode 100644 index 0000000..386b693 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/rndstr.in @@ -0,0 +1,6 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 c_A=0.75,c_B=0.25 +0.6666666 0.3333333 0.5 c_A=0.75,c_B=0.25 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/rndstrgrp.out b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/rndstrgrp.out new file mode 100644 index 0000000..098f555 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=2_c=0.75,0.25/rndstrgrp.out @@ -0,0 +1,9 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.000000 c_A=0.750000,c_B=0.250000 +0.666667 0.333333 0.500000 c_A=0.750000,c_B=0.250000 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/bestcorr.out b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/bestcorr.out new file mode 100644 index 0000000..7ef34db --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/bestcorr.out @@ -0,0 +1,50 @@ +2 1.000000 -0.000000 0.000000 -0.000000 +2 1.000000 0.000000 -0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 -0.000000 0.000000 -0.000000 +2 1.000000 0.000000 -0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.414217 -0.000000 0.000000 -0.000000 +2 1.414217 -0.009021 -0.000000 -0.009021 +2 1.414217 0.010417 0.000000 0.010417 +2 1.632990 -0.015625 0.000000 -0.015625 +2 1.632990 0.000000 -0.000000 0.000000 +2 1.632990 -0.015625 0.000000 -0.015625 +2 1.732054 -0.046875 0.000000 -0.046875 +2 1.732054 0.009021 -0.000000 0.009021 +2 1.732054 -0.005208 0.000000 -0.005208 +2 1.732051 -0.046875 0.000000 -0.046875 +2 1.732051 0.027063 -0.000000 0.027063 +2 1.732051 -0.009021 -0.000000 -0.009021 +2 1.732051 -0.036458 0.000000 -0.036458 +3 1.000000 -0.003906 0.000000 -0.003906 +3 1.000000 -0.006766 -0.000000 -0.006766 +3 1.000000 0.006766 -0.000000 0.006766 +3 1.000000 -0.035156 0.000000 -0.035156 +3 1.000000 -0.011719 0.000000 -0.011719 +3 1.000000 -0.002255 -0.000000 -0.002255 +3 1.000000 -0.015625 0.000000 -0.015625 +3 1.000000 0.000000 -0.000000 0.000000 +3 1.000000 0.015625 0.000000 0.015625 +3 1.000000 0.000000 -0.000000 0.000000 +3 1.000000 0.054688 0.000000 0.054688 +3 1.000000 -0.013532 -0.000000 -0.013532 +3 1.000000 -0.023438 0.000000 -0.023438 +3 1.000000 -0.040595 -0.000000 -0.040595 +3 1.414217 0.019531 0.000000 0.019531 +3 1.414217 0.015787 -0.000000 0.015787 +3 1.414217 -0.006766 -0.000000 -0.006766 +3 1.414217 -0.027344 0.000000 -0.027344 +3 1.414217 -0.011276 -0.000000 -0.011276 +3 1.414217 0.009115 0.000000 0.009115 +3 1.414217 -0.011719 0.000000 -0.011719 +3 1.414217 0.011276 -0.000000 0.011276 +4 1.000000 -0.023438 0.000000 -0.023438 +4 1.000000 0.020297 -0.000000 0.020297 +4 1.000000 -0.013532 -0.000000 -0.013532 +4 1.000000 -0.011719 0.000000 -0.011719 +4 1.000000 -0.015625 0.000000 -0.015625 +4 1.000000 0.002255 -0.000000 0.002255 +4 1.000000 -0.000000 -0.000000 -0.000000 +4 1.000000 -0.011719 0.000000 -0.011719 +Objective_function= -43.272421 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/bestsqs.out b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/bestsqs.out new file mode 100644 index 0000000..c9990f2 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +2.000000 -3.000000 2.000000 +-2.000000 -5.000000 2.000000 +-0.000000 -1.000000 -1.000000 +0.000000 -2.000000 -0.000000 c_A +0.000000 -1.000000 -0.000000 c_A +-0.000000 -9.000000 3.000000 c_B +-1.000000 -5.000000 1.000000 c_C +-1.000000 -4.000000 1.000000 c_C +0.000000 -4.000000 1.000000 c_B +1.000000 -4.000000 1.000000 c_B +-1.000000 -3.000000 1.000000 c_B +0.000000 -3.000000 1.000000 c_C +1.000000 -3.000000 1.000000 c_A +0.000000 -3.000000 0.000000 c_C +1.000000 -2.000000 1.000000 c_C +-1.000000 -7.000000 2.000000 c_A +-1.000000 -6.000000 2.000000 c_C +0.000000 -6.000000 2.000000 c_B +1.000000 -6.000000 2.000000 c_B +-1.000000 -5.000000 2.000000 c_B +-0.000000 -5.000000 2.000000 c_B +1.000000 -5.000000 2.000000 c_B +0.000000 -5.000000 1.000000 c_B +1.000000 -4.000000 2.000000 c_A +-0.000000 -8.000000 3.000000 c_A +0.000000 -7.000000 3.000000 c_C +0.000000 -7.000000 2.000000 c_C +0.666667 -1.666667 0.500000 c_A +-1.333333 -6.666667 1.500000 c_C +-1.333333 -5.666667 1.500000 c_C +-0.333333 -4.666667 1.500000 c_C +-0.333333 -3.666667 1.500000 c_C +0.666667 -3.666667 1.500000 c_C +1.666667 -3.666667 1.500000 c_B +-0.333333 -3.666667 0.500000 c_A +0.666667 -3.666667 0.500000 c_B +-0.333333 -7.666667 3.500000 c_A +0.666667 -2.666667 0.500000 c_C +-0.333333 -7.666667 2.500000 c_A +-0.333333 -6.666667 2.500000 c_A +-0.333333 -5.666667 2.500000 c_A +0.666667 -5.666667 2.500000 c_C +-0.333333 -2.666667 0.500000 c_C +-0.333333 -5.666667 1.500000 c_A +0.666667 -5.666667 1.500000 c_A +-0.333333 -1.666667 0.500000 c_B +0.666667 -4.666667 1.500000 c_B +1.666667 -4.666667 1.500000 c_A +-1.333333 -4.666667 1.500000 c_B +-1.333333 -4.666667 0.500000 c_A +0.666667 -6.666667 2.500000 c_B diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/clusters.out b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/clusters.out new file mode 100644 index 0000000..9f0ea05 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/clusters.out @@ -0,0 +1,332 @@ +6 +1.00000 +2 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 1.00000 1 0 + +12 +1.00000 +2 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 1.00000 1 0 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 1.00000 1 1 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 + +12 +1.00000 +2 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 0 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 + +6 +1.41421 +2 +0.66667 0.33333 0.50000 1 0 +0.00000 1.00000 0.00000 1 0 + +12 +1.41421 +2 +0.66667 0.33333 0.50000 1 1 +0.00000 1.00000 0.00000 1 0 + +6 +1.41421 +2 +0.66667 0.33333 0.50000 1 1 +0.00000 1.00000 0.00000 1 1 + +2 +1.63299 +2 +0.66667 0.33333 0.50000 1 0 +0.66667 0.33333 -0.50000 1 0 + +4 +1.63299 +2 +0.66667 0.33333 0.50000 1 1 +0.66667 0.33333 -0.50000 1 0 + +2 +1.63299 +2 +0.66667 0.33333 0.50000 1 1 +0.66667 0.33333 -0.50000 1 1 + +12 +1.73205 +2 +1.00000 1.00000 1.00000 1 0 +2.66667 1.33333 0.50000 1 0 + +24 +1.73205 +2 +1.00000 1.00000 1.00000 1 1 +2.66667 1.33333 0.50000 1 0 + +12 +1.73205 +2 +1.00000 1.00000 1.00000 1 1 +2.66667 1.33333 0.50000 1 1 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 1 0 +2.00000 0.00000 1.00000 1 0 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 1 1 +2.00000 0.00000 1.00000 1 0 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 1 0 +2.00000 0.00000 1.00000 1 1 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 1 1 +2.00000 0.00000 1.00000 1 1 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 0 +0.66667 1.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.66667 1.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 + +24 +1.00000 +3 +1.00000 1.00000 1.00000 1 0 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 0 + +24 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 0 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 1 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 1 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 1 0 +-0.33333 0.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +-0.33333 0.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +-0.33333 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +-0.33333 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 0.00000 1 0 +0.00000 1.00000 0.00000 1 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 0.00000 1 0 +0.00000 1.00000 0.00000 1 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 0.00000 1 1 +0.00000 1.00000 0.00000 1 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 0.00000 1 1 +0.00000 1.00000 0.00000 1 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 0.00000 1 0 +0.00000 1.00000 0.00000 1 1 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 0.00000 1 0 +0.00000 1.00000 0.00000 1 1 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 0.00000 1 1 +0.00000 1.00000 0.00000 1 1 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 0.00000 1 1 +0.00000 1.00000 0.00000 1 1 + +4 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.66667 0.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 + +4 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.66667 0.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 0 + +4 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 1 + +4 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 1 + diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/go b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/go new file mode 100755 index 0000000..c283348 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=1.8 -3=1.5 -4=1.2 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/job.in b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/job.in new file mode 100755 index 0000000..f86154a --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -wr=10 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/rndstr.in b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/rndstr.in new file mode 100644 index 0000000..21123dd --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/rndstr.in @@ -0,0 +1,6 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 c_A=0.33333,c_B=0.33333,c_C=0.33333 +0.6666666 0.3333333 0.5 c_A=0.33333,c_B=0.33333,c_C=0.33333 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/rndstrgrp.out b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/rndstrgrp.out new file mode 100644 index 0000000..b9659fd --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/rndstrgrp.out @@ -0,0 +1,9 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.000000 c_A=0.333330,c_B=0.333330,c_C=0.333330 +0.666667 0.333333 0.500000 c_A=0.333330,c_B=0.333330,c_C=0.333330 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/sqsparam.in b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/sqsparam.in new file mode 100644 index 0000000..71b2aa8 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=3_c=0.33333,0.33333,0.33333/sqsparam.in @@ -0,0 +1 @@ +20 0.5 1 5 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/bestcorr.out b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/bestcorr.out new file mode 100644 index 0000000..c8ad5fc --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/bestcorr.out @@ -0,0 +1,50 @@ +2 1.000000 0.062500 0.062500 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.062500 0.062500 0.000000 +2 1.000000 0.000000 0.000000 -0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.414217 0.062500 0.062500 -0.000000 +2 1.414217 0.000000 0.000000 0.000000 +2 1.414217 0.000000 0.000000 0.000000 +2 1.632990 -0.007813 0.062500 -0.070313 +2 1.632990 -0.081190 0.000000 -0.081190 +2 1.632990 0.023438 0.000000 0.023438 +2 1.732054 0.062500 0.062500 0.000000 +2 1.732054 0.000000 0.000000 0.000000 +2 1.732054 0.000000 0.000000 0.000000 +2 1.732051 0.062500 0.062500 -0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +3 1.000000 -0.050781 -0.015625 -0.035156 +3 1.000000 -0.000000 -0.000000 0.000000 +3 1.000000 0.010149 -0.000000 0.010149 +3 1.000000 0.005859 -0.000000 0.005859 +3 1.000000 -0.023437 -0.000000 -0.023437 +3 1.000000 0.006766 -0.000000 0.006766 +3 1.000000 -0.121094 -0.015625 -0.105469 +3 1.000000 -0.020297 -0.000000 -0.020297 +3 1.000000 0.011719 -0.000000 0.011719 +3 1.000000 -0.060892 -0.000000 -0.060892 +3 1.000000 -0.121094 -0.015625 -0.105469 +3 1.000000 -0.020297 -0.000000 -0.020297 +3 1.000000 0.011719 -0.000000 0.011719 +3 1.000000 -0.060892 -0.000000 -0.060892 +3 1.414217 -0.015625 -0.015625 0.000000 +3 1.414217 0.020297 -0.000000 0.020297 +3 1.414217 -0.040595 -0.000000 -0.040595 +3 1.414217 0.011719 -0.000000 0.011719 +3 1.414217 -0.020297 -0.000000 -0.020297 +3 1.414217 -0.000000 -0.000000 -0.000000 +3 1.414217 0.011719 -0.000000 0.011719 +3 1.414217 0.000000 -0.000000 0.000000 +4 1.000000 0.056641 0.003906 0.052734 +4 1.000000 -0.000000 0.000000 -0.000000 +4 1.000000 0.030446 0.000000 0.030446 +4 1.000000 -0.011719 0.000000 -0.011719 +4 1.000000 -0.005859 0.000000 -0.005859 +4 1.000000 -0.006766 0.000000 -0.006766 +4 1.000000 0.030446 0.000000 0.030446 +4 1.000000 0.000000 0.000000 0.000000 +Objective_function= -29.436692 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/bestsqs.out b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/bestsqs.out new file mode 100644 index 0000000..208d69c --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +-1.000000 1.000000 4.000000 +1.000000 1.000000 4.000000 +0.000000 2.000000 0.000000 +0.000000 4.000000 8.000000 c_C +0.000000 3.000000 8.000000 c_A +0.000000 1.000000 1.000000 c_A +0.000000 2.000000 1.000000 c_C +0.000000 1.000000 2.000000 c_C +0.000000 2.000000 2.000000 c_A +0.000000 1.000000 3.000000 c_A +0.000000 2.000000 3.000000 c_A +0.000000 3.000000 4.000000 c_B +0.000000 2.000000 4.000000 c_A +0.000000 2.000000 5.000000 c_A +0.000000 3.000000 5.000000 c_B +0.000000 2.000000 6.000000 c_C +0.000000 3.000000 6.000000 c_A +0.000000 2.000000 7.000000 c_A +0.000000 3.000000 7.000000 c_A +-0.333333 1.333333 4.500000 c_B +-0.333333 2.333333 4.500000 c_B +-0.333333 2.333333 5.500000 c_A +-0.333333 3.333333 5.500000 c_B +-0.333333 2.333333 6.500000 c_B +-0.333333 3.333333 6.500000 c_A +0.666667 1.333333 3.500000 c_C +0.666667 2.333333 3.500000 c_A +0.666667 1.333333 4.500000 c_A +0.666667 2.333333 4.500000 c_B +-0.333333 1.333333 1.500000 c_C +-0.333333 2.333333 1.500000 c_C +-0.333333 1.333333 2.500000 c_A +-0.333333 2.333333 2.500000 c_A +-0.333333 1.333333 3.500000 c_B +-0.333333 2.333333 3.500000 c_C diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/clusters.out b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/clusters.out new file mode 100644 index 0000000..9f0ea05 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/clusters.out @@ -0,0 +1,332 @@ +6 +1.00000 +2 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 1.00000 1 0 + +12 +1.00000 +2 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 1.00000 1 0 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 1.00000 1 1 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 + +12 +1.00000 +2 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 0 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 + +6 +1.41421 +2 +0.66667 0.33333 0.50000 1 0 +0.00000 1.00000 0.00000 1 0 + +12 +1.41421 +2 +0.66667 0.33333 0.50000 1 1 +0.00000 1.00000 0.00000 1 0 + +6 +1.41421 +2 +0.66667 0.33333 0.50000 1 1 +0.00000 1.00000 0.00000 1 1 + +2 +1.63299 +2 +0.66667 0.33333 0.50000 1 0 +0.66667 0.33333 -0.50000 1 0 + +4 +1.63299 +2 +0.66667 0.33333 0.50000 1 1 +0.66667 0.33333 -0.50000 1 0 + +2 +1.63299 +2 +0.66667 0.33333 0.50000 1 1 +0.66667 0.33333 -0.50000 1 1 + +12 +1.73205 +2 +1.00000 1.00000 1.00000 1 0 +2.66667 1.33333 0.50000 1 0 + +24 +1.73205 +2 +1.00000 1.00000 1.00000 1 1 +2.66667 1.33333 0.50000 1 0 + +12 +1.73205 +2 +1.00000 1.00000 1.00000 1 1 +2.66667 1.33333 0.50000 1 1 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 1 0 +2.00000 0.00000 1.00000 1 0 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 1 1 +2.00000 0.00000 1.00000 1 0 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 1 0 +2.00000 0.00000 1.00000 1 1 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 1 1 +2.00000 0.00000 1.00000 1 1 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 0 +0.66667 1.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.66667 1.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 + +24 +1.00000 +3 +1.00000 1.00000 1.00000 1 0 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 0 + +24 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 0 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 1 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 1 1 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 1 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 1 0 +-0.33333 0.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +-0.33333 0.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +-0.33333 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +-0.33333 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 0.00000 1 0 +0.00000 1.00000 0.00000 1 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 0.00000 1 0 +0.00000 1.00000 0.00000 1 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 0.00000 1 1 +0.00000 1.00000 0.00000 1 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 0.00000 1 1 +0.00000 1.00000 0.00000 1 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 0.00000 1 0 +0.00000 1.00000 0.00000 1 1 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 0.00000 1 0 +0.00000 1.00000 0.00000 1 1 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 0.00000 1 1 +0.00000 1.00000 0.00000 1 1 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 0.00000 1 1 +0.00000 1.00000 0.00000 1 1 + +4 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.66667 0.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 + +4 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.66667 0.33333 0.50000 1 0 +0.66667 1.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 0 +1.66667 1.33333 0.50000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 0 + +4 +1.00000 +4 +1.00000 1.00000 1.00000 1 0 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 1 + +4 +1.00000 +4 +1.00000 1.00000 1.00000 1 1 +0.66667 0.33333 0.50000 1 1 +0.66667 1.33333 0.50000 1 1 +1.66667 1.33333 0.50000 1 1 + diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/go b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/go new file mode 100755 index 0000000..c283348 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=1.8 -3=1.5 -4=1.2 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/job.in b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/job.in new file mode 100755 index 0000000..5900402 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -wr=10 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/rndstr.in b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/rndstr.in new file mode 100644 index 0000000..8edb730 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/rndstr.in @@ -0,0 +1,6 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 c_A=0.5,c_B=0.25,c_C=0.25 +0.6666666 0.3333333 0.5 c_A=0.5,c_B=0.25,c_C=0.25 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/rndstrgrp.out b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/rndstrgrp.out new file mode 100644 index 0000000..b27d79f --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=4_c=0.5,0.25,0.25/rndstrgrp.out @@ -0,0 +1,9 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.000000 c_A=0.500000,c_B=0.250000,c_C=0.250000 +0.666667 0.333333 0.500000 c_A=0.500000,c_B=0.250000,c_C=0.250000 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/bestcorr.out b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/bestcorr.out new file mode 100644 index 0000000..a689332 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/bestcorr.out @@ -0,0 +1,19 @@ +2 1.000000 0.062500 0.062500 0.000000 +2 1.000000 0.062500 0.062500 0.000000 +2 1.414217 0.062500 0.062500 0.000000 +2 1.632990 0.062500 0.062500 0.000000 +2 1.732054 0.062500 0.062500 0.000000 +2 1.732051 0.062500 0.062500 0.000000 +2 1.914852 0.062500 0.062500 0.000000 +2 2.000000 0.020833 0.062500 -0.041667 +3 1.000000 -0.020833 -0.015625 -0.005208 +3 1.000000 -0.062500 -0.015625 -0.046875 +3 1.000000 -0.062500 -0.015625 -0.046875 +3 1.414217 -0.010417 -0.015625 0.005208 +3 1.632990 -0.062500 -0.015625 -0.046875 +3 1.632990 0.020833 -0.015625 0.036458 +4 1.000000 0.000000 0.003906 -0.003906 +4 1.414217 0.020833 0.003906 0.016927 +4 1.414217 -0.020833 0.003906 -0.024740 +4 1.414217 0.000000 0.003906 -0.003906 +Objective_function= -39.984248 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/bestsqs.out b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/bestsqs.out new file mode 100644 index 0000000..57f0a35 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 -1.000000 -3.000000 +1.000000 -1.000000 1.000000 +-5.000000 -3.000000 1.000000 +-2.000000 -3.000000 -2.000000 c_B +-1.000000 -2.000000 -2.000000 c_A +-0.000000 -2.000000 -2.000000 c_B +1.000000 -2.000000 -2.000000 c_A +-4.000000 -4.000000 -1.000000 c_A +-3.000000 -4.000000 -1.000000 c_B +-2.000000 -4.000000 -1.000000 c_A +-3.000000 -3.000000 -1.000000 c_B +-2.000000 -3.000000 -1.000000 c_A +-1.000000 -3.000000 -1.000000 c_B +-1.000000 -3.000000 -0.000000 c_B +-1.000000 -2.000000 -1.000000 c_A +0.000000 -2.000000 -1.000000 c_A +1.000000 -2.000000 -1.000000 c_A +-0.000000 -1.000000 -1.000000 c_A +-4.000000 -4.000000 0.000000 c_A +-3.000000 -4.000000 -0.000000 c_B +-4.000000 -3.000000 -0.000000 c_A +-3.000000 -3.000000 0.000000 c_A +-2.000000 -3.000000 -0.000000 c_B +-2.000000 -2.000000 -0.000000 c_A +-1.000000 -2.000000 -0.000000 c_A +-0.000000 -2.000000 0.000000 c_A +-1.000000 -1.000000 -0.000000 c_A +-0.000000 -1.000000 0.000000 c_A +-4.000000 -4.000000 1.000000 c_A +-3.000000 -5.000000 -1.000000 c_A +-4.000000 -3.000000 1.000000 c_B +-3.000000 -3.000000 1.000000 c_B +-2.000000 -3.000000 1.000000 c_B +-1.000000 -3.000000 -2.000000 c_A +-1.000000 -2.000000 1.000000 c_B +-1.333333 -2.666667 -1.500000 c_A +-0.333333 -1.666667 -1.500000 c_B +0.666667 -1.666667 -1.500000 c_A +-3.333333 -4.666667 -0.500000 c_B +-3.333333 -3.666667 -0.500000 c_A +-2.333333 -3.666667 -0.500000 c_A +-2.333333 -2.666667 -1.500000 c_B +-2.333333 -2.666667 -0.500000 c_A +-1.333333 -2.666667 -0.500000 c_A +-0.333333 -2.666667 -0.500000 c_A +-1.333333 -1.666667 -0.500000 c_A +-0.333333 -1.666667 -0.500000 c_B +0.666667 -1.666667 -0.500000 c_A +-4.333333 -3.666667 -0.500000 c_A +-4.333333 -3.666667 0.500000 c_B +-3.333333 -3.666667 0.500000 c_A +-2.333333 -3.666667 0.500000 c_A +-3.333333 -2.666667 0.500000 c_A +-2.333333 -2.666667 0.500000 c_A +-1.333333 -2.666667 0.500000 c_A +-1.333333 -1.666667 0.500000 c_B +-0.333333 -1.666667 0.500000 c_A +-0.333333 -0.666667 -0.500000 c_A +0.666667 -1.666667 -2.500000 c_A +-4.333333 -3.666667 1.500000 c_A +-3.333333 -3.666667 1.500000 c_B +-3.333333 -3.666667 -1.500000 c_B +-2.333333 -3.666667 -1.500000 c_B +-1.333333 -3.666667 -1.500000 c_A +-2.333333 -1.666667 0.500000 c_B +-0.333333 -2.666667 -1.500000 c_B +0.666667 -2.666667 -1.500000 c_B diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/clusters.out b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/clusters.out new file mode 100644 index 0000000..4ac30d6 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/clusters.out @@ -0,0 +1,122 @@ +6 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.66667 1.33333 0.50000 0 0 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 + +6 +1.41421 +2 +0.66667 0.33333 0.50000 0 0 +0.00000 1.00000 0.00000 0 0 + +2 +1.63299 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 -0.50000 0 0 + +12 +1.73205 +2 +0.66667 0.33333 0.50000 0 0 +-1.00000 0.00000 0.00000 0 0 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +12 +1.91485 +2 +0.66667 0.33333 0.50000 0 0 +-0.33333 0.33333 -0.50000 0 0 + +6 +2.00000 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 2.33333 0.50000 0 0 + +12 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +1.00000 0.00000 1.00000 0 0 +0.00000 0.00000 1.00000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +1.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +-0.33333 -0.66667 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + +6 +1.63299 +3 +0.66667 0.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.66667 0.33333 -0.50000 0 0 + +6 +1.63299 +3 +0.66667 0.33333 0.50000 0 0 +0.00000 1.00000 0.00000 0 0 +0.66667 0.33333 -0.50000 0 0 + +4 +1.00000 +4 +0.66667 0.33333 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 +0.00000 0.00000 1.00000 0 0 + +12 +1.41421 +4 +0.66667 0.33333 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + +12 +1.41421 +4 +0.66667 0.33333 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + +6 +1.41421 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/go b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/go new file mode 100755 index 0000000..e4d55b9 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=2.0 -3=1.7 -4=1.5 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/job.in b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/job.in new file mode 100755 index 0000000..45c7b28 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=64 -wr=10 -wn=1.0 -wd=2 -ip=$id & +done +wait diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/rndstr.in b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/rndstr.in new file mode 100644 index 0000000..2649c91 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/rndstr.in @@ -0,0 +1,6 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 c_A=0.625,c_B=0.375 +0.6666666 0.3333333 0.5 c_A=0.625,c_B=0.375 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/rndstrgrp.out b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/rndstrgrp.out new file mode 100644 index 0000000..6cfaa7a --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.625,0.375/rndstrgrp.out @@ -0,0 +1,9 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.000000 c_A=0.625000,c_B=0.375000 +0.666667 0.333333 0.500000 c_A=0.625000,c_B=0.375000 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/bestcorr.out b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/bestcorr.out new file mode 100644 index 0000000..7b2d999 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/bestcorr.out @@ -0,0 +1,19 @@ +2 1.000000 0.562500 0.562500 0.000000 +2 1.000000 0.562500 0.562500 0.000000 +2 1.414217 0.562500 0.562500 0.000000 +2 1.632990 0.562500 0.562500 0.000000 +2 1.732054 0.562500 0.562500 0.000000 +2 1.732051 0.562500 0.562500 0.000000 +2 1.914852 0.562500 0.562500 0.000000 +2 2.000000 0.562500 0.562500 0.000000 +3 1.000000 -0.416667 -0.421875 0.005208 +3 1.000000 -0.437500 -0.421875 -0.015625 +3 1.000000 -0.437500 -0.421875 -0.015625 +3 1.414217 -0.427083 -0.421875 -0.005208 +3 1.632990 -0.437500 -0.421875 -0.015625 +3 1.632990 -0.437500 -0.421875 -0.015625 +4 1.000000 0.312500 0.316406 -0.003906 +4 1.414217 0.333333 0.316406 0.016927 +4 1.414217 0.333333 0.316406 0.016927 +4 1.414217 0.312500 0.316406 -0.003906 +Objective_function= -49.993059 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/bestsqs.out b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/bestsqs.out new file mode 100644 index 0000000..0542c47 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 -2.000000 -1.000000 +3.000000 2.000000 0.000000 +1.000000 -2.000000 3.000000 +4.000000 0.000000 0.000000 c_A +2.000000 -2.000000 0.000000 c_A +1.000000 -1.000000 0.000000 c_A +2.000000 -1.000000 0.000000 c_A +3.000000 -1.000000 0.000000 c_A +5.000000 -2.000000 2.000000 c_A +1.000000 0.000000 0.000000 c_A +2.000000 0.000000 0.000000 c_A +3.000000 0.000000 0.000000 c_B +2.000000 1.000000 0.000000 c_A +3.000000 1.000000 0.000000 c_A +2.000000 -3.000000 1.000000 c_A +4.000000 0.000000 1.000000 c_A +2.000000 -2.000000 1.000000 c_A +3.000000 -2.000000 1.000000 c_B +1.000000 -1.000000 1.000000 c_A +2.000000 -1.000000 1.000000 c_A +3.000000 -1.000000 1.000000 c_A +4.000000 -1.000000 1.000000 c_A +2.000000 -0.000000 1.000000 c_A +3.000000 -0.000000 1.000000 c_A +3.000000 1.000000 1.000000 c_A +2.000000 -3.000000 2.000000 c_A +3.000000 -3.000000 2.000000 c_B +4.000000 -0.000000 2.000000 c_A +2.000000 -2.000000 2.000000 c_A +3.000000 -2.000000 2.000000 c_B +4.000000 -2.000000 2.000000 c_A +2.000000 -1.000000 2.000000 c_A +3.000000 -1.000000 2.000000 c_A +4.000000 -1.000000 2.000000 c_A +3.000000 0.000000 2.000000 c_B +1.666667 -1.666667 0.500000 c_A +2.666667 -1.666667 0.500000 c_A +1.666667 -0.666667 0.500000 c_A +2.666667 -0.666667 0.500000 c_A +3.666667 -0.666667 0.500000 c_A +1.666667 -1.666667 -0.500000 c_B +1.666667 0.333333 0.500000 c_A +2.666667 0.333333 0.500000 c_A +3.666667 0.333333 0.500000 c_A +3.666667 -0.666667 -0.500000 c_A +0.666667 -0.666667 0.500000 c_A +2.666667 -2.666667 1.500000 c_A +1.666667 -1.666667 1.500000 c_A +2.666667 -1.666667 1.500000 c_A +3.666667 -1.666667 1.500000 c_A +1.666667 -0.666667 1.500000 c_A +2.666667 -0.666667 1.500000 c_A +3.666667 -0.666667 1.500000 c_A +1.666667 -2.666667 1.500000 c_A +2.666667 0.333333 1.500000 c_A +3.666667 0.333333 1.500000 c_A +1.666667 -2.666667 0.500000 c_A +1.666667 -0.666667 -0.500000 c_A +2.666667 -0.666667 -0.500000 c_B +1.666667 -1.666667 2.500000 c_A +2.666667 -1.666667 2.500000 c_A +2.666667 0.333333 -0.500000 c_A +3.666667 0.333333 -0.500000 c_A +2.666667 -0.666667 2.500000 c_A +3.666667 -0.666667 2.500000 c_A +1.666667 -2.666667 2.500000 c_B +4.666667 -1.666667 1.500000 c_A diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/clusters.out b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/clusters.out new file mode 100644 index 0000000..f50b535 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/clusters.out @@ -0,0 +1,122 @@ +6 +1.00000 +2 +0.66667 0.33333 0.50000 0 0 +0.00000 0.00000 1.00000 0 0 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +6 +1.41421 +2 +0.66667 0.33333 0.50000 0 0 +0.00000 1.00000 0.00000 0 0 + +2 +1.63299 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 -0.50000 0 0 + +12 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +2.66667 1.33333 0.50000 0 0 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +12 +1.91485 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +6 +2.00000 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 -1.66667 0.50000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.66667 1.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + +6 +1.63299 +3 +0.66667 0.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.66667 0.33333 -0.50000 0 0 + +6 +1.63299 +3 +0.66667 0.33333 0.50000 0 0 +0.00000 1.00000 0.00000 0 0 +0.66667 0.33333 -0.50000 0 0 + +4 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.66667 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 + +12 +1.41421 +4 +0.66667 0.33333 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + +6 +1.41421 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + +12 +1.41421 +4 +0.66667 0.33333 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/go b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/go new file mode 100755 index 0000000..e4d55b9 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=2.0 -3=1.7 -4=1.5 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/job.in b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/job.in new file mode 100755 index 0000000..45c7b28 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=64 -wr=10 -wn=1.0 -wd=2 -ip=$id & +done +wait diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/rndstr.in b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/rndstr.in new file mode 100644 index 0000000..a647381 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/rndstr.in @@ -0,0 +1,6 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 c_A=0.875,c_B=0.125 +0.6666666 0.3333333 0.5 c_A=0.875,c_B=0.125 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/rndstrgrp.out b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/rndstrgrp.out new file mode 100644 index 0000000..2fb458a --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=5_c=0.875,0.125/rndstrgrp.out @@ -0,0 +1,9 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.000000 c_A=0.875000,c_B=0.125000 +0.666667 0.333333 0.500000 c_A=0.875000,c_B=0.125000 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/bestcorr.out b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/bestcorr.out new file mode 100644 index 0000000..3949f88 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/bestcorr.out @@ -0,0 +1,50 @@ +2 1.000000 0.390625 0.390625 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 -0.000000 0.000000 -0.000000 +2 1.000000 0.390625 0.390625 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.414217 0.390625 0.390625 0.000000 +2 1.414217 0.000000 0.000000 -0.000000 +2 1.414217 0.000000 0.000000 -0.000000 +2 1.632990 0.320312 0.390625 -0.070312 +2 1.632990 0.000000 0.000000 0.000000 +2 1.632990 0.023437 0.000000 0.023437 +2 1.732054 0.378906 0.390625 -0.011719 +2 1.732054 -0.013532 0.000000 -0.013532 +2 1.732054 0.003906 0.000000 0.003906 +2 1.732051 0.437500 0.390625 0.046875 +2 1.732051 0.040595 0.000000 0.040595 +2 1.732051 0.000000 0.000000 -0.000000 +2 1.732051 -0.007812 0.000000 -0.007812 +3 1.000000 -0.252930 -0.244141 -0.008789 +3 1.000000 0.005074 -0.000000 0.005074 +3 1.000000 0.005074 -0.000000 0.005074 +3 1.000000 0.002930 -0.000000 0.002930 +3 1.000000 0.002930 -0.000000 0.002930 +3 1.000000 0.008457 -0.000000 0.008457 +3 1.000000 -0.244141 -0.244141 0.000000 +3 1.000000 0.010149 -0.000000 0.010149 +3 1.000000 -0.005859 -0.000000 -0.005859 +3 1.000000 -0.010149 -0.000000 -0.010149 +3 1.000000 -0.296875 -0.244141 -0.052734 +3 1.000000 -0.000000 -0.000000 -0.000000 +3 1.000000 -0.000000 -0.000000 -0.000000 +3 1.000000 0.000000 -0.000000 0.000000 +3 1.414217 -0.252930 -0.244141 -0.008789 +3 1.414217 0.010149 -0.000000 0.010149 +3 1.414217 0.005074 -0.000000 0.005074 +3 1.414217 0.005859 -0.000000 0.005859 +3 1.414217 -0.005074 -0.000000 -0.005074 +3 1.414217 0.000000 -0.000000 0.000000 +3 1.414217 0.002930 -0.000000 0.002930 +3 1.414217 0.003383 -0.000000 0.003383 +4 1.000000 0.159180 0.152588 0.006592 +4 1.000000 -0.015223 0.000000 -0.015223 +4 1.000000 -0.020297 0.000000 -0.020297 +4 1.000000 -0.005859 0.000000 -0.005859 +4 1.000000 0.002930 0.000000 0.002930 +4 1.000000 -0.008457 0.000000 -0.008457 +4 1.000000 0.010149 0.000000 0.010149 +4 1.000000 0.000000 0.000000 -0.000000 +Objective_function= -29.446962 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/bestsqs.out b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/bestsqs.out new file mode 100644 index 0000000..3418af2 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +-0.000000 -2.000000 -2.000000 +1.000000 3.000000 -2.000000 +3.000000 0.000000 1.000000 +1.000000 0.000000 -3.000000 c_A +1.000000 1.000000 -3.000000 c_A +2.000000 1.000000 -3.000000 c_C +3.000000 1.000000 -3.000000 c_C +1.000000 -1.000000 -2.000000 c_A +2.000000 -1.000000 -2.000000 c_A +1.000000 -0.000000 -2.000000 c_A +2.000000 -0.000000 -2.000000 c_A +3.000000 0.000000 -2.000000 c_A +1.000000 1.000000 -2.000000 c_C +2.000000 1.000000 -2.000000 c_A +3.000000 1.000000 -2.000000 c_A +1.000000 2.000000 -2.000000 c_A +2.000000 2.000000 -2.000000 c_A +3.000000 2.000000 -2.000000 c_B +4.000000 2.000000 -2.000000 c_A +1.000000 -1.000000 -1.000000 c_B +2.000000 -1.000000 -1.000000 c_A +3.000000 -1.000000 -1.000000 c_C +1.000000 -0.000000 -1.000000 c_A +2.000000 0.000000 -1.000000 c_A +3.000000 0.000000 -1.000000 c_A +1.000000 1.000000 -1.000000 c_A +2.000000 1.000000 -1.000000 c_A +3.000000 1.000000 -1.000000 c_A +2.000000 2.000000 -1.000000 c_A +3.000000 2.000000 -1.000000 c_A +4.000000 1.000000 -3.000000 c_B +1.000000 -0.000000 0.000000 c_C +2.000000 -0.000000 0.000000 c_A +3.000000 -0.000000 0.000000 c_B +3.000000 1.000000 0.000000 c_A +1.666667 0.333333 -2.500000 c_A +1.666667 1.333333 -2.500000 c_A +2.666667 1.333333 -2.500000 c_C +3.666667 1.333333 -2.500000 c_A +1.666667 -0.666667 -1.500000 c_A +2.666667 -0.666667 -1.500000 c_A +1.666667 0.333333 -1.500000 c_A +2.666667 0.333333 -1.500000 c_A +0.666667 0.333333 -2.500000 c_A +1.666667 1.333333 -1.500000 c_A +2.666667 1.333333 -1.500000 c_A +3.666667 1.333333 -1.500000 c_A +1.666667 2.333333 -1.500000 c_A +2.666667 2.333333 -1.500000 c_A +3.666667 2.333333 -1.500000 c_A +0.666667 -0.666667 -0.500000 c_B +1.666667 -0.666667 -0.500000 c_A +2.666667 -0.666667 -0.500000 c_A +0.666667 -0.666667 -1.500000 c_A +1.666667 0.333333 -0.500000 c_B +2.666667 0.333333 -0.500000 c_C +0.666667 0.333333 -1.500000 c_A +1.666667 1.333333 -0.500000 c_B +2.666667 1.333333 -0.500000 c_A +0.666667 1.333333 -1.500000 c_A +2.666667 0.333333 -2.500000 c_C +3.666667 0.333333 -2.500000 c_A +0.666667 -1.666667 -1.500000 c_B +1.666667 -1.666667 -1.500000 c_A +2.666667 0.333333 0.500000 c_A +0.666667 0.333333 -0.500000 c_A +0.666667 -0.666667 -2.500000 c_A diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/clusters.out b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/clusters.out new file mode 100644 index 0000000..e46e047 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/clusters.out @@ -0,0 +1,332 @@ +6 +1.00000 +2 +1.00000 1.00000 1.00000 1 0 +1.66667 1.33333 0.50000 1 0 + +12 +1.00000 +2 +1.00000 1.00000 1.00000 1 1 +1.66667 1.33333 0.50000 1 0 + +6 +1.00000 +2 +1.00000 1.00000 1.00000 1 1 +1.66667 1.33333 0.50000 1 1 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 1 0 +0.66667 -0.66667 0.50000 1 0 + +12 +1.00000 +2 +0.66667 0.33333 0.50000 1 1 +0.66667 -0.66667 0.50000 1 0 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 1 1 +0.66667 -0.66667 0.50000 1 1 + +6 +1.41421 +2 +0.66667 0.33333 0.50000 1 0 +0.00000 1.00000 0.00000 1 0 + +12 +1.41421 +2 +0.66667 0.33333 0.50000 1 1 +0.00000 1.00000 0.00000 1 0 + +6 +1.41421 +2 +0.66667 0.33333 0.50000 1 1 +0.00000 1.00000 0.00000 1 1 + +2 +1.63299 +2 +0.66667 0.33333 0.50000 1 0 +0.66667 0.33333 -0.50000 1 0 + +4 +1.63299 +2 +0.66667 0.33333 0.50000 1 1 +0.66667 0.33333 -0.50000 1 0 + +2 +1.63299 +2 +0.66667 0.33333 0.50000 1 1 +0.66667 0.33333 -0.50000 1 1 + +12 +1.73205 +2 +0.66667 0.33333 0.50000 1 0 +-1.00000 0.00000 0.00000 1 0 + +24 +1.73205 +2 +0.66667 0.33333 0.50000 1 1 +-1.00000 0.00000 0.00000 1 0 + +12 +1.73205 +2 +0.66667 0.33333 0.50000 1 1 +-1.00000 0.00000 0.00000 1 1 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 1 0 +2.00000 0.00000 1.00000 1 0 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 1 1 +2.00000 0.00000 1.00000 1 0 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 1 0 +2.00000 0.00000 1.00000 1 1 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 1 1 +2.00000 0.00000 1.00000 1 1 + +12 +1.00000 +3 +0.66667 0.33333 0.50000 1 0 +1.00000 0.00000 1.00000 1 0 +0.00000 0.00000 1.00000 1 0 + +12 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +1.00000 0.00000 1.00000 1 0 +0.00000 0.00000 1.00000 1 0 + +24 +1.00000 +3 +0.66667 0.33333 0.50000 1 0 +1.00000 0.00000 1.00000 1 1 +0.00000 0.00000 1.00000 1 0 + +24 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +1.00000 0.00000 1.00000 1 1 +0.00000 0.00000 1.00000 1 0 + +12 +1.00000 +3 +0.66667 0.33333 0.50000 1 0 +1.00000 0.00000 1.00000 1 1 +0.00000 0.00000 1.00000 1 1 + +12 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +1.00000 0.00000 1.00000 1 1 +0.00000 0.00000 1.00000 1 1 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 1 0 +1.66667 0.33333 0.50000 1 0 +0.66667 -0.66667 0.50000 1 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +1.66667 0.33333 0.50000 1 0 +0.66667 -0.66667 0.50000 1 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +1.66667 0.33333 0.50000 1 1 +0.66667 -0.66667 0.50000 1 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +1.66667 0.33333 0.50000 1 1 +0.66667 -0.66667 0.50000 1 1 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 1 0 +-0.33333 -0.66667 0.50000 1 0 +0.66667 -0.66667 0.50000 1 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +-0.33333 -0.66667 0.50000 1 0 +0.66667 -0.66667 0.50000 1 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +-0.33333 -0.66667 0.50000 1 1 +0.66667 -0.66667 0.50000 1 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 1 1 +-0.33333 -0.66667 0.50000 1 1 +0.66667 -0.66667 0.50000 1 1 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 0.00000 1 0 +0.00000 1.00000 0.00000 1 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 0.00000 1 0 +0.00000 1.00000 0.00000 1 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 0.00000 1 1 +0.00000 1.00000 0.00000 1 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 0.00000 1 1 +0.00000 1.00000 0.00000 1 0 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 0.00000 1 0 +0.00000 1.00000 0.00000 1 1 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 0.00000 1 0 +0.00000 1.00000 0.00000 1 1 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 0 +0.00000 0.00000 0.00000 1 1 +0.00000 1.00000 0.00000 1 1 + +24 +1.41421 +3 +0.66667 0.33333 0.50000 1 1 +0.00000 0.00000 0.00000 1 1 +0.00000 1.00000 0.00000 1 1 + +4 +1.00000 +4 +0.66667 0.33333 0.50000 1 0 +1.00000 1.00000 1.00000 1 0 +1.00000 0.00000 1.00000 1 0 +0.00000 0.00000 1.00000 1 0 + +4 +1.00000 +4 +0.66667 0.33333 0.50000 1 1 +1.00000 1.00000 1.00000 1 0 +1.00000 0.00000 1.00000 1 0 +0.00000 0.00000 1.00000 1 0 + +12 +1.00000 +4 +0.66667 0.33333 0.50000 1 0 +1.00000 1.00000 1.00000 1 1 +1.00000 0.00000 1.00000 1 0 +0.00000 0.00000 1.00000 1 0 + +12 +1.00000 +4 +0.66667 0.33333 0.50000 1 1 +1.00000 1.00000 1.00000 1 1 +1.00000 0.00000 1.00000 1 0 +0.00000 0.00000 1.00000 1 0 + +12 +1.00000 +4 +0.66667 0.33333 0.50000 1 0 +1.00000 1.00000 1.00000 1 1 +1.00000 0.00000 1.00000 1 1 +0.00000 0.00000 1.00000 1 0 + +12 +1.00000 +4 +0.66667 0.33333 0.50000 1 1 +1.00000 1.00000 1.00000 1 1 +1.00000 0.00000 1.00000 1 1 +0.00000 0.00000 1.00000 1 0 + +4 +1.00000 +4 +0.66667 0.33333 0.50000 1 0 +1.00000 1.00000 1.00000 1 1 +1.00000 0.00000 1.00000 1 1 +0.00000 0.00000 1.00000 1 1 + +4 +1.00000 +4 +0.66667 0.33333 0.50000 1 1 +1.00000 1.00000 1.00000 1 1 +1.00000 0.00000 1.00000 1 1 +0.00000 0.00000 1.00000 1 1 + diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/go b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/go new file mode 100755 index 0000000..6229c2d --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/go @@ -0,0 +1,3 @@ +#!/bin/sh +corrdump -nop -noe -2=1.8 -3=1.5 -4=1.2 -ro -l=rndstr.in -clus ; getclus +mcsqs -n=32 -wr=10 -wn=0.75 -wd=1 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/job.in b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/job.in new file mode 100755 index 0000000..1d2a61e --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=64 -wr=10 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/rndstr.in b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/rndstr.in new file mode 100644 index 0000000..8d0885d --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/rndstr.in @@ -0,0 +1,6 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 c_A=0.75,c_B=0.125,c_C=0.125 +0.6666666 0.3333333 0.5 c_A=0.75,c_B=0.125,c_C=0.125 diff --git a/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/rndstrgrp.out b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/rndstrgrp.out new file mode 100644 index 0000000..98646c0 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsdb_lev=6_c=0.75,0.125,0.125/rndstrgrp.out @@ -0,0 +1,9 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.000000 c_A=0.750000,c_B=0.125000,c_C=0.125000 +0.666667 0.333333 0.500000 c_A=0.750000,c_B=0.125000,c_C=0.125000 diff --git a/data/sqsdb/HCP_A3/sqsgen.in b/data/sqsdb/HCP_A3/sqsgen.in new file mode 100644 index 0000000..536b9c0 --- /dev/null +++ b/data/sqsdb/HCP_A3/sqsgen.in @@ -0,0 +1,8 @@ +level=0 c=1 +level=1 c=0.5,0.5 +level=2 c=0.75,0.25 +level=3 c=0.33333,0.33333,0.33333 +level=4 c=0.5,0.25,0.25 +level=5 c=0.875,0.125 +level=5 c=0.625,0.375 +level=6 c=0.75,0.125,0.125 diff --git a/data/sqsdb/HEUSLER_D022/parentlat.in b/data/sqsdb/HEUSLER_D022/parentlat.in new file mode 100644 index 0000000..3fd5b88 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/parentlat.in @@ -0,0 +1 @@ +FCC_A1/sqs_lev=0_a_ diff --git a/data/sqsdb/HEUSLER_D022/rndstr.skel b/data/sqsdb/HEUSLER_D022/rndstr.skel new file mode 100644 index 0000000..73ab486 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/rndstr.skel @@ -0,0 +1,12 @@ + +1 1 2 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0.5 0.25 d +0.5 0 0.25 d + +0 0 0.5 b + +0 0 0 a diff --git a/data/sqsdb/HEUSLER_D022/rndstr.skel.sspp b/data/sqsdb/HEUSLER_D022/rndstr.skel.sspp new file mode 100644 index 0000000..143fd73 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/rndstr.skel.sspp @@ -0,0 +1,12 @@ +#const a=1; c=2; +{a} {a} {c} {90} {90} {90} +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 +#const d="d"; +{0} {1/2} {1/4} {d} +{1/2} {0} {1/4} {d} +#const b="b"; +{0} {0} {1/2} {b} +#const a="a"; +{0} {0} {0} {a} diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=0_a=1_b=1_d=1/bestsqs.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=0_a=1_b=1_d=1/bestsqs.out new file mode 100644 index 0000000..2d96ae2 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=0_a=1_b=1_d=1/bestsqs.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 +0.000000 0.500000 0.250000 d_A +0.500000 0.000000 0.250000 d_A +0.000000 0.000000 0.500000 b_A +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=0_a=1_b=1_d=1/rndstr.in b/data/sqsdb/HEUSLER_D022/sqsdb_lev=0_a=1_b=1_d=1/rndstr.in new file mode 100644 index 0000000..edd3dff --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=0_a=1_b=1_d=1/rndstr.in @@ -0,0 +1,12 @@ + +1 1 2 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0.5 0.25 d_A=1 +0.5 0 0.25 d_A=1 + +0 0 0.5 b_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/bestcorr.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/bestcorr.out new file mode 100644 index 0000000..51c1ca4 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/bestcorr.out @@ -0,0 +1,13 @@ +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 1.224745 -1.000000 0.000000 -1.000000 +4 1.414214 -1.000000 0.000000 -1.000000 +4 1.414214 0.000000 0.000000 0.000000 +Objective_function= -147.454469 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/bestsqs.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/bestsqs.out new file mode 100644 index 0000000..c316fcc --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +1.500000 0.500000 -0.500000 +-0.500000 -1.500000 -0.500000 +-1.500000 1.500000 -0.500000 +-1.000000 0.000000 -1.000000 a_B +-0.500000 -0.500000 -0.500000 a_A +-0.000000 -0.000000 -1.000000 a_B +-0.500000 0.500000 -0.500000 a_B +-1.000000 1.000000 -1.000000 a_A +-0.500000 0.500000 -1.500000 a_A +0.000000 1.000000 -1.000000 a_B +0.500000 0.500000 -0.500000 a_A +-0.500000 0.000000 -0.750000 d_A +-1.500000 1.000000 -0.750000 d_A +0.500000 -0.000000 -0.750000 d_A +-0.500000 -1.000000 -0.750000 d_A +-0.500000 1.000000 -0.750000 d_A +0.000000 0.500000 -1.250000 d_A +0.500000 1.000000 -0.750000 d_A +-1.000000 0.500000 -1.250000 d_A +1.000000 0.500000 -0.750000 d_A +-0.500000 -0.000000 -1.250000 d_A +-1.000000 1.500000 -0.750000 d_A +-0.500000 1.000000 -1.250000 d_A +-1.000000 -0.500000 -0.750000 d_A +-0.000000 0.500000 -0.750000 d_A +0.000000 -0.500000 -0.750000 d_A +-1.000000 0.500000 -0.750000 d_A +0.500000 0.500000 -1.000000 b_A +-0.500000 1.500000 -1.000000 b_A +-0.000000 -0.000000 -0.500000 b_A +0.500000 -0.500000 -1.000000 b_A +-1.000000 1.000000 -0.500000 b_A +-0.500000 0.500000 -1.000000 b_A +-0.500000 -0.500000 -1.000000 b_A +-1.500000 0.500000 -1.000000 b_A diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/clusters.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/clusters.out new file mode 100644 index 0000000..1c5781f --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/clusters.out @@ -0,0 +1,81 @@ +2 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +4 +1.22474 +2 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +2 +1.41421 +2 +0.50000 0.50000 0.50000 0 0 +1.50000 1.50000 0.50000 0 0 + +8 +1.87083 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 -1.00000 0.00000 0 0 + +2 +2.00000 +2 +0.50000 0.50000 0.50000 0 0 +-1.50000 0.50000 0.50000 0 0 + +1 +2.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +4 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 0.50000 0 0 +1.50000 1.50000 0.50000 0 0 + +4 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.50000 1.50000 0.50000 0 0 + +2 +1.22474 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +1 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +1.50000 0.50000 0.50000 0 0 +0.50000 1.50000 0.50000 0 0 +1.50000 1.50000 0.50000 0 0 + +8 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.50000 1.50000 0.50000 0 0 + diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/go b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/go new file mode 100755 index 0000000..f82fd76 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2.0 -3=1.5 -4=1.5 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/job.in b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/job.in new file mode 100755 index 0000000..5e99f4c --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D022_lv1 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/rndstr.in b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/rndstr.in new file mode 100644 index 0000000..a2ebd7c --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/rndstr.in @@ -0,0 +1,12 @@ + +1 1 2 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0.5 0.25 d_A=1 +0.5 0 0.25 d_A=1 + +0 0 0.5 b_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/rndstrgrp.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/rndstrgrp.out new file mode 100644 index 0000000..ed45239 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.500000 0.000000 0.250000 d_A=1.000000 +0.500000 -0.000000 0.750000 d_A=1.000000 + +0.000000 0.000000 0.500000 b_A=1.000000 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/bestcorr.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/bestcorr.out new file mode 100644 index 0000000..de17dd6 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/bestcorr.out @@ -0,0 +1,13 @@ +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 1.224745 -1.000000 0.000000 -1.000000 +4 1.414214 -1.000000 0.000000 -1.000000 +4 1.414214 0.000000 0.000000 0.000000 +Objective_function= -4.861109 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/bestsqs.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/bestsqs.out new file mode 100644 index 0000000..5ebdd6e --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +2.500000 -0.500000 -0.500000 +0.500000 -2.500000 -0.500000 +-0.500000 0.500000 -0.500000 +0.500000 -1.500000 -1.000000 b_B +2.500000 -1.500000 -1.000000 b_A +0.000000 0.000000 -0.500000 b_A +2.500000 -2.500000 -1.000000 b_B +1.500000 -1.500000 -1.000000 b_A +1.000000 -1.000000 -0.500000 b_B +1.500000 -0.500000 -1.000000 b_B +1.500000 -2.500000 -1.000000 b_A +1.500000 -2.000000 -0.750000 d_A +0.500000 -1.000000 -0.750000 d_A +0.500000 0.000000 -0.750000 d_A +0.500000 -2.000000 -0.750000 d_A +2.000000 -1.500000 -1.250000 d_A +1.500000 -1.000000 -0.750000 d_A +2.500000 -1.000000 -0.750000 d_A +2.000000 -2.500000 -1.250000 d_A +1.500000 -2.000000 -1.250000 d_A +1.000000 -1.500000 -0.750000 d_A +1.000000 -0.500000 -0.750000 d_A +1.000000 -2.500000 -0.750000 d_A +2.500000 -2.000000 -1.250000 d_A +2.000000 -1.500000 -0.750000 d_A +-0.000000 -0.500000 -0.750000 d_A +2.000000 -0.500000 -0.750000 d_A +1.000000 -2.000000 -1.000000 a_A +0.500000 -1.500000 -0.500000 a_A +0.500000 -0.500000 -0.500000 a_A +2.500000 -2.500000 -1.500000 a_A +2.000000 -2.000000 -1.000000 a_A +1.000000 -1.000000 -1.000000 a_A +2.000000 -1.000000 -1.000000 a_A +1.500000 -0.500000 -0.500000 a_A diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/clusters.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/clusters.out new file mode 100644 index 0000000..4acd71f --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/clusters.out @@ -0,0 +1,81 @@ +2 +1.00000 +2 +0.50000 0.50000 0.00000 0 0 +0.50000 -0.50000 0.00000 0 0 + +4 +1.22474 +2 +0.50000 0.50000 0.00000 0 0 +0.00000 -0.00000 -0.50000 0 0 + +2 +1.41421 +2 +0.50000 0.50000 0.00000 0 0 +-0.50000 1.50000 0.00000 0 0 + +8 +1.87083 +2 +0.50000 0.50000 0.00000 0 0 +-0.00000 2.00000 0.50000 0 0 + +2 +2.00000 +2 +0.50000 0.50000 0.00000 0 0 +-1.50000 0.50000 0.00000 0 0 + +1 +2.00000 +2 +0.50000 0.50000 0.00000 0 0 +0.50000 0.50000 -1.00000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 +0.00000 -0.00000 -0.50000 0 0 + +4 +1.41421 +3 +0.50000 0.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 +-0.50000 1.50000 0.00000 0 0 + +4 +1.41421 +3 +0.50000 0.50000 0.00000 0 0 +-0.00000 1.00000 -0.50000 0 0 +-0.50000 1.50000 0.00000 0 0 + +2 +1.22474 +4 +0.50000 0.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 +-0.00000 1.00000 -0.50000 0 0 +0.00000 -0.00000 -0.50000 0 0 + +1 +1.41421 +4 +0.50000 0.50000 0.00000 0 0 +0.50000 1.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 +-0.50000 1.50000 0.00000 0 0 + +8 +1.41421 +4 +0.50000 0.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 +-0.00000 1.00000 -0.50000 0 0 +-0.50000 1.50000 0.00000 0 0 + diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/go b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/go new file mode 100755 index 0000000..f82fd76 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2.0 -3=1.5 -4=1.5 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/job.in b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/job.in new file mode 100755 index 0000000..5e99f4c --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D022_lv1 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/rndstr.in b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/rndstr.in new file mode 100644 index 0000000..348dfb2 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/rndstr.in @@ -0,0 +1,12 @@ + +1 1 2 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0.5 0.25 d_A=1 +0.5 0 0.25 d_A=1 + +0 0 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/rndstrgrp.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/rndstrgrp.out new file mode 100644 index 0000000..896fd9a --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +-0.000000 0.000000 0.500000 b_A=0.500000,b_B=0.500000 + +0.500000 0.000000 0.250000 d_A=1.000000 +0.500000 -0.000000 -0.250000 d_A=1.000000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/bestcorr.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..fa7299d --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/bestcorr.out @@ -0,0 +1,31 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 1.000000 1.000000 0.000000 1.000000 +4 1.224745 -0.500000 0.000000 -0.500000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +Objective_function= -6.984861 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/bestsqs.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..26ee535 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +0.000000 1.000000 -1.000000 +1.000000 0.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-0.500000 -1.000000 -1.250000 d_B +-1.000000 -0.500000 -0.750000 d_A +-0.000000 -0.500000 -0.750000 d_A +-0.500000 -0.000000 -1.250000 d_B +0.500000 -0.000000 -1.250000 d_A +0.000000 0.500000 -0.750000 d_B +-1.000000 -1.500000 -0.750000 d_B +-1.500000 -1.000000 -1.250000 d_A +-1.500000 -1.000000 -0.750000 d_A +-1.000000 -0.500000 -1.250000 d_B +0.000000 -0.500000 -1.250000 d_B +-0.500000 -1.000000 -0.750000 d_B +-0.500000 -0.000000 -0.750000 d_B +0.000000 0.500000 -1.250000 d_A +-1.000000 -1.500000 -1.250000 d_A +0.500000 -0.000000 -0.750000 d_A +-0.500000 -0.500000 -2.000000 b_A +-1.000000 -1.000000 -0.500000 b_A +-0.000000 -0.000000 -1.500000 b_A +-0.500000 -0.500000 -1.000000 b_A +0.500000 0.500000 -2.000000 b_A +0.000000 -0.000000 -0.500000 b_A +-1.000000 -1.000000 -1.500000 b_A +-1.500000 -1.500000 -1.000000 b_A +-1.500000 -1.500000 -0.500000 a_A +-1.000000 -1.000000 -1.000000 a_A +0.000000 0.000000 -2.000000 a_A +-0.500000 -0.500000 -1.500000 a_A +-0.500000 -0.500000 -0.500000 a_A +0.000000 -0.000000 -1.000000 a_A +-1.000000 -1.000000 -2.000000 a_A +0.500000 0.500000 -1.500000 a_A diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/clusters.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..a69f7e5 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/clusters.out @@ -0,0 +1,204 @@ +4 +0.70711 +2 +-0.00000 0.50000 0.25000 0 0 +0.50000 1.00000 0.25000 0 0 + +2 +1.00000 +2 +-0.00000 0.50000 0.25000 0 0 +0.00000 0.50000 -0.25000 0 0 + +4 +1.00000 +2 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 + +8 +1.22474 +2 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +4 +1.41421 +2 +-0.00000 0.50000 0.25000 0 0 +-1.00000 0.50000 0.75000 0 0 + +4 +1.41421 +2 +0.50000 -0.00000 0.25000 0 0 +-0.50000 1.00000 0.25000 0 0 + +4 +1.41421 +2 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.75000 0 0 + +8 +1.58114 +2 +-0.00000 0.50000 0.25000 0 0 +-1.50000 1.00000 0.25000 0 0 + +8 +1.73205 +2 +-0.00000 0.50000 0.25000 0 0 +-1.00000 1.50000 -0.25000 0 0 + +16 +1.87083 +2 +-0.00000 0.50000 0.25000 0 0 +-0.50000 2.00000 0.75000 0 0 + +4 +2.00000 +2 +0.50000 -0.00000 0.25000 0 0 +-1.50000 -0.00000 0.25000 0 0 + +2 +2.00000 +2 +0.50000 -0.00000 0.25000 0 0 +0.50000 -0.00000 -0.75000 0 0 + +8 +1.00000 +3 +0.50000 -0.00000 0.25000 0 0 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 + +16 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +0.50000 -1.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +16 +1.41421 +3 +-0.00000 0.50000 0.25000 0 0 +-0.50000 1.00000 0.25000 0 0 +-1.00000 0.50000 0.75000 0 0 + +8 +1.41421 +3 +-0.00000 0.50000 0.25000 0 0 +-0.00000 0.50000 0.75000 0 0 +-1.00000 0.50000 0.75000 0 0 + +16 +1.41421 +3 +-0.00000 0.50000 0.25000 0 0 +-1.00000 1.50000 0.25000 0 0 +-1.00000 0.50000 0.75000 0 0 + +4 +1.41421 +3 +0.50000 -0.00000 0.25000 0 0 +-0.00000 0.50000 0.25000 0 0 +-0.50000 1.00000 0.25000 0 0 + +8 +1.41421 +3 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +-0.50000 1.00000 0.25000 0 0 + +8 +1.41421 +3 +0.50000 -0.00000 0.25000 0 0 +0.00000 0.50000 -0.25000 0 0 +-0.50000 1.00000 0.25000 0 0 + +16 +1.41421 +3 +0.50000 -0.00000 0.25000 0 0 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.75000 0 0 + +8 +1.41421 +3 +0.50000 -0.00000 0.25000 0 0 +0.50000 -0.00000 0.75000 0 0 +-0.50000 -0.00000 0.75000 0 0 + +2 +1.00000 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 + +4 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +0.50000 -0.00000 -0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +0.50000 -1.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +2 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +0.00000 0.50000 -0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +2 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.50000 -1.00000 0.25000 0 0 +1.00000 -0.50000 -0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/go b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/go new file mode 100755 index 0000000..e61c2af --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2.0 -3=1.5 -4=1.3 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/job.in b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/job.in new file mode 100755 index 0000000..5e99f4c --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D022_lv1 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/rndstr.in b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..557ab68 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/rndstr.in @@ -0,0 +1,12 @@ + +1 1 2 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0.5 0.25 d_A=0.5,d_B=0.5 +0.5 0 0.25 d_A=0.5,d_B=0.5 + +0 0 0.5 b_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..be16513 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.500000 0.250000 d_A=0.500000,d_B=0.500000 +0.000000 0.500000 -0.250000 d_A=0.500000,d_B=0.500000 + +0.000000 0.000000 0.500000 b_A=1.000000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/bestcorr.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/bestcorr.out new file mode 100644 index 0000000..e1b47e5 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/bestcorr.out @@ -0,0 +1,42 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 1.000000 -1.000000 0.000000 -1.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 1.000000 0.000000 1.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 1.000000 0.000000 1.000000 +Objective_function= -6.896068 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/bestsqs.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/bestsqs.out new file mode 100644 index 0000000..1f3f153 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +-1.000000 -1.000000 1.000000 +-1.000000 -1.000000 -1.000000 +1.000000 -1.000000 0.000000 +-0.500000 -2.500000 0.000000 b_A +-0.000000 -2.000000 -0.500000 b_A +-0.500000 -1.500000 0.000000 b_B +0.000000 -2.000000 0.500000 b_B +-1.000000 -2.000000 0.500000 b_A +0.500000 -1.500000 0.000000 b_B +-1.000000 -2.000000 -0.500000 b_B +-1.500000 -2.500000 0.000000 b_A +-0.500000 -2.500000 0.500000 a_A +0.000000 -2.000000 0.000000 a_B +-0.500000 -1.500000 0.500000 a_A +-1.000000 -3.000000 -0.000000 a_A +0.000000 -1.000000 0.000000 a_A +-0.500000 -2.500000 -0.500000 a_B +-1.000000 -2.000000 -0.000000 a_B +-0.500000 -1.500000 -0.500000 a_B +-1.000000 -1.500000 0.250000 d_A +-0.500000 -1.000000 -0.250000 d_A +-0.000000 -1.500000 0.250000 d_A +-1.500000 -2.000000 -0.250000 d_A +-0.500000 -2.000000 0.750000 d_A +-1.000000 -1.500000 -0.750000 d_A +-0.500000 -2.000000 -0.250000 d_A +-1.000000 -2.500000 0.250000 d_A +-0.500000 -2.000000 0.250000 d_A +0.000000 -1.500000 -0.250000 d_A +-0.500000 -1.000000 0.250000 d_A +-1.000000 -2.500000 -0.250000 d_A +-1.000000 -1.500000 0.750000 d_A +-0.500000 -2.000000 -0.750000 d_A +-1.000000 -1.500000 -0.250000 d_A +-1.500000 -2.000000 0.250000 d_A diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/clusters.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/clusters.out new file mode 100644 index 0000000..bc8d423 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/clusters.out @@ -0,0 +1,276 @@ +4 +0.70711 +2 +0.50000 0.50000 0.00000 0 0 +-0.00000 1.00000 0.00000 0 0 + +2 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 0.50000 0 0 + +2 +1.00000 +2 +0.50000 0.50000 0.00000 0 0 +0.50000 0.50000 -0.50000 0 0 + +2 +1.00000 +2 +0.50000 0.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 + +4 +1.22474 +2 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +4 +1.22474 +2 +0.50000 0.50000 0.00000 0 0 +0.00000 -0.00000 -0.50000 0 0 + +8 +1.41421 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.00000 0 0 + +2 +1.41421 +2 +0.50000 0.50000 0.50000 0 0 +1.50000 1.50000 0.50000 0 0 + +2 +1.41421 +2 +0.50000 0.50000 0.00000 0 0 +-0.50000 1.50000 0.00000 0 0 + +8 +1.58114 +2 +0.50000 0.50000 0.00000 0 0 +-0.00000 -1.00000 0.00000 0 0 + +8 +1.73205 +2 +0.50000 0.50000 0.00000 0 0 +-0.50000 -0.50000 -0.50000 0 0 + +8 +1.87083 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.87083 +2 +0.50000 0.50000 0.00000 0 0 +-0.00000 2.00000 0.50000 0 0 + +2 +2.00000 +2 +0.50000 0.50000 0.50000 0 0 +-1.50000 0.50000 0.50000 0 0 + +2 +2.00000 +2 +0.50000 0.50000 0.00000 0 0 +-1.50000 0.50000 0.00000 0 0 + +1 +2.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 + +1 +2.00000 +2 +0.50000 0.50000 0.00000 0 0 +0.50000 0.50000 -1.00000 0 0 + +4 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 +0.50000 1.50000 0.50000 0 0 + +4 +1.00000 +3 +0.50000 0.50000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 -0.00000 -0.50000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 +0.00000 -0.00000 -0.50000 0 0 + +16 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 +-0.50000 0.50000 1.00000 0 0 + +8 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +8 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.00000 0 0 + +8 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 +-0.50000 0.50000 1.00000 0 0 + +8 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +16 +1.41421 +3 +0.50000 0.50000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 +1.50000 0.50000 -0.50000 0 0 + +2 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +1.50000 1.50000 0.50000 0 0 + +4 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 0.50000 0 0 +1.50000 1.50000 0.50000 0 0 + +4 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.50000 1.50000 0.50000 0 0 + +2 +1.41421 +3 +0.50000 0.50000 0.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.50000 1.50000 0.00000 0 0 + +4 +1.41421 +3 +0.50000 0.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 +-0.50000 1.50000 0.00000 0 0 + +4 +1.41421 +3 +0.50000 0.50000 0.00000 0 0 +-0.00000 1.00000 -0.50000 0 0 +-0.50000 1.50000 0.00000 0 0 + +2 +1.00000 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 +0.50000 1.50000 0.50000 0 0 + +8 +1.22474 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +4 +1.22474 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +2 +1.22474 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +4 +0.50000 0.50000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 +0.00000 -0.00000 -0.50000 0 0 + +2 +1.22474 +4 +0.50000 0.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 +-0.00000 1.00000 -0.50000 0 0 +0.00000 -0.00000 -0.50000 0 0 + diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/go b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/go new file mode 100755 index 0000000..e61c2af --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2.0 -3=1.5 -4=1.3 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/job.in b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/job.in new file mode 100755 index 0000000..19d66cf --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D022_lv2 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/rndstr.in b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/rndstr.in new file mode 100644 index 0000000..51e80ec --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/rndstr.in @@ -0,0 +1,12 @@ + +1 1 2 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0.5 0.25 d_A=1 +0.5 0 0.25 d_A=1 + +0 0 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/rndstrgrp.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/rndstrgrp.out new file mode 100644 index 0000000..b88091e --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +-0.500000 0.500000 0.000000 b_A=0.500000,b_B=0.500000 + +-0.500000 0.500000 0.500000 a_A=0.500000,a_B=0.500000 + +-0.000000 0.500000 0.250000 d_A=1.000000 +0.500000 0.000000 0.250000 d_A=1.000000 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/bestcorr.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..e2ae204 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/bestcorr.out @@ -0,0 +1,86 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -1.000000 0.000000 -1.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 -1.000000 0.000000 -1.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 1.000000 0.000000 1.000000 +4 1.224745 1.000000 0.000000 1.000000 +Objective_function= -6.877131 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/bestsqs.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..a17e63a --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +-1.000000 -1.000000 1.000000 +-1.000000 -1.000000 -1.000000 +1.000000 -1.000000 0.000000 +-1.000000 -1.500000 0.250000 d_A +-0.500000 -1.000000 -0.250000 d_A +0.000000 -1.500000 0.250000 d_A +-1.500000 -2.000000 -0.250000 d_B +-0.500000 -2.000000 0.750000 d_B +-1.000000 -1.500000 -0.750000 d_B +-0.500000 -2.000000 -0.250000 d_A +-1.000000 -2.500000 0.250000 d_B +-1.000000 -1.500000 0.750000 d_B +-0.500000 -1.000000 0.250000 d_A +-1.000000 -2.500000 -0.250000 d_A +-1.500000 -2.000000 0.250000 d_B +-0.500000 -2.000000 -0.750000 d_A +-1.000000 -1.500000 -0.250000 d_A +-0.500000 -2.000000 0.250000 d_B +0.000000 -1.500000 -0.250000 d_B +-1.000000 -2.000000 0.000000 a_B +-0.500000 -1.500000 -0.500000 a_B +0.000000 -2.000000 0.000000 a_A +-0.500000 -1.500000 0.500000 a_A +-0.500000 -2.500000 0.500000 a_A +0.000000 -1.000000 0.000000 a_A +-0.500000 -2.500000 -0.500000 a_B +-1.000000 -3.000000 0.000000 a_B +-1.000000 -2.000000 0.500000 b_A +-0.500000 -1.500000 0.000000 b_A +0.000000 -2.000000 0.500000 b_A +-1.500000 -2.500000 0.000000 b_A +0.500000 -1.500000 0.000000 b_A +-1.000000 -2.000000 -0.500000 b_A +-0.500000 -2.500000 0.000000 b_A +0.000000 -2.000000 -0.500000 b_A diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/clusters.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..d4e1731 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/clusters.out @@ -0,0 +1,610 @@ +8 +0.70711 +2 +0.50000 -0.00000 0.25000 0 0 +1.00000 0.00000 0.00000 0 0 + +4 +0.70711 +2 +-0.00000 0.50000 0.25000 0 0 +0.50000 1.00000 0.25000 0 0 + +2 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 0.50000 0 0 + +2 +1.00000 +2 +-0.00000 0.50000 0.25000 0 0 +0.00000 0.50000 -0.25000 0 0 + +4 +1.00000 +2 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 + +16 +1.22474 +2 +0.50000 -0.00000 0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +4 +1.22474 +2 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +2 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +4 +1.41421 +2 +-0.00000 0.50000 0.25000 0 0 +-1.00000 0.50000 0.75000 0 0 + +2 +1.41421 +2 +0.50000 0.50000 0.50000 0 0 +1.50000 1.50000 0.50000 0 0 + +4 +1.41421 +2 +0.50000 -0.00000 0.25000 0 0 +-0.50000 1.00000 0.25000 0 0 + +4 +1.41421 +2 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.75000 0 0 + +8 +1.58114 +2 +0.50000 0.50000 0.50000 0 0 +-1.00000 0.50000 0.75000 0 0 + +8 +1.58114 +2 +-0.00000 0.50000 0.25000 0 0 +-0.50000 0.50000 -0.50000 0 0 + +8 +1.58114 +2 +-0.00000 0.50000 0.25000 0 0 +-1.50000 1.00000 0.25000 0 0 + +8 +1.73205 +2 +-0.00000 0.50000 0.25000 0 0 +-1.00000 1.50000 -0.25000 0 0 + +16 +1.87083 +2 +0.50000 0.50000 0.50000 0 0 +-1.00000 1.50000 0.25000 0 0 + +16 +1.87083 +2 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.50000 -0.50000 0 0 + +8 +1.87083 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.87083 +2 +-0.00000 0.50000 0.25000 0 0 +-0.50000 2.00000 0.75000 0 0 + +2 +2.00000 +2 +0.50000 0.50000 0.50000 0 0 +-1.50000 0.50000 0.50000 0 0 + +4 +2.00000 +2 +0.50000 -0.00000 0.25000 0 0 +-1.50000 -0.00000 0.25000 0 0 + +1 +2.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 + +2 +2.00000 +2 +0.50000 -0.00000 0.25000 0 0 +0.50000 -0.00000 -0.75000 0 0 + +8 +0.70711 +3 +-0.00000 0.50000 0.25000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.50000 1.00000 0.25000 0 0 + +4 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 1.00000 0.75000 0 0 +0.50000 1.50000 0.50000 0 0 + +4 +1.00000 +3 +-0.00000 0.50000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 0.50000 -0.25000 0 0 + +8 +1.00000 +3 +0.50000 -0.00000 0.25000 0 0 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 + +4 +1.00000 +3 +0.50000 -0.00000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.50000 -0.00000 0.25000 0 0 + +16 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +1.00000 0.00000 0.00000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +0.50000 -0.50000 0.50000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +1.00000 -0.50000 0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +0.50000 -0.00000 -0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +1.50000 -0.00000 0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +1.50000 -0.50000 0.50000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.75000 0 0 +-0.00000 1.50000 0.75000 0 0 + +16 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 1.00000 0.25000 0 0 +-0.00000 1.50000 0.75000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.00000 1.50000 0.75000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +16 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +0.50000 -1.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +2 +1.00000 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.00000 0.25000 0 0 +0.50000 1.00000 0.75000 0 0 +0.50000 1.50000 0.50000 0 0 + +8 +1.00000 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 + +2 +1.00000 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.50000 -0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +1.00000 -0.50000 0.25000 0 0 +1.00000 0.00000 0.00000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +1.00000 0.00000 0.00000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +1.00000 -0.50000 0.25000 0 0 +0.50000 -0.50000 0.50000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +0.50000 -0.50000 0.50000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +1.00000 -0.50000 0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +1.00000 0.00000 0.00000 0 0 +0.50000 -0.00000 -0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +1.00000 -0.50000 0.25000 0 0 +0.50000 -0.00000 -0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +0.50000 -0.00000 -0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +1.00000 0.00000 0.00000 0 0 +0.50000 -1.00000 0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.50000 -0.50000 0.50000 0 0 +0.50000 -1.00000 0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +1.00000 -0.50000 0.25000 0 0 +0.50000 -1.00000 0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +1.00000 0.00000 0.00000 0 0 +1.50000 -0.00000 0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.50000 -0.50000 0.50000 0 0 +1.50000 -0.00000 0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +1.00000 -0.50000 0.25000 0 0 +1.50000 -0.00000 0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.50000 -0.50000 0.50000 0 0 +-0.00000 -1.00000 0.00000 0 0 +1.00000 -1.00000 0.00000 0 0 + +4 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.50000 -0.00000 -0.25000 0 0 +-0.00000 -1.00000 0.00000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +1.00000 0.00000 0.00000 0 0 +1.50000 -0.50000 0.50000 0 0 +1.00000 -1.00000 0.00000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +1.00000 -0.50000 0.25000 0 0 +1.50000 -0.50000 0.50000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +1.00000 0.00000 0.00000 0 0 +0.00000 -0.50000 -0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +1.00000 0.00000 0.00000 0 0 +1.00000 -0.50000 -0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +1.00000 -0.50000 0.25000 0 0 +1.00000 -0.50000 -0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.00000 0.25000 0 0 +-0.00000 0.50000 0.75000 0 0 +-0.00000 1.50000 0.75000 0 0 + +8 +1.22474 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.75000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.00000 1.50000 0.75000 0 0 + +8 +1.22474 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.00000 0.25000 0 0 +1.00000 1.50000 0.75000 0 0 +-0.00000 1.50000 0.75000 0 0 + +16 +1.22474 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.75000 0 0 +-0.50000 1.00000 0.25000 0 0 +-0.00000 1.50000 0.75000 0 0 + +4 +1.22474 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.25000 0 0 +-0.00000 0.50000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 + +8 +1.22474 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.25000 0 0 +-0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +2 +1.22474 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +4 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +0.50000 -0.00000 -0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +0.50000 -1.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +2 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +0.00000 0.50000 -0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +2 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.50000 -1.00000 0.25000 0 0 +1.00000 -0.50000 -0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/go b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/go new file mode 100755 index 0000000..ca6e499 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2.0 -3=1.3 -4=1.3 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/job.in b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/job.in new file mode 100755 index 0000000..19d66cf --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D022_lv2 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/rndstr.in b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..6d870c8 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/rndstr.in @@ -0,0 +1,12 @@ + +1 1 2 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0.5 0.25 d_A=0.5,d_B=0.5 +0.5 0 0.25 d_A=0.5,d_B=0.5 + +0 0 0.5 b_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..5276f52 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.500000 0.250000 d_A=0.500000,d_B=0.500000 +-0.000000 0.500000 0.750000 d_A=0.500000,d_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.000000 0.000000 0.500000 b_A=1.000000 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/bestcorr.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..e2ae204 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/bestcorr.out @@ -0,0 +1,86 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -1.000000 0.000000 -1.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 -1.000000 0.000000 -1.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 1.000000 0.000000 1.000000 +4 1.224745 1.000000 0.000000 1.000000 +Objective_function= -6.877131 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/bestsqs.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..c7a9101 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +-1.000000 -1.000000 1.000000 +-1.000000 -1.000000 -1.000000 +1.000000 -1.000000 0.000000 +-1.000000 -1.500000 0.250000 d_B +-0.500000 -1.000000 -0.250000 d_A +0.000000 -1.500000 0.250000 d_A +-1.500000 -2.000000 -0.250000 d_B +-0.500000 -2.000000 0.750000 d_A +-1.000000 -1.500000 -0.750000 d_A +-0.500000 -2.000000 -0.250000 d_B +-1.000000 -2.500000 0.250000 d_B +-1.000000 -1.500000 -0.250000 d_B +-1.500000 -2.000000 0.250000 d_B +0.000000 -1.500000 -0.250000 d_B +-0.500000 -1.000000 0.250000 d_A +-0.500000 -2.000000 0.250000 d_A +-1.000000 -1.500000 0.750000 d_A +-0.500000 -2.000000 -0.750000 d_B +-1.000000 -2.500000 -0.250000 d_A +-1.000000 -2.000000 0.500000 b_A +-0.500000 -1.500000 0.000000 b_B +0.000000 -2.000000 0.500000 b_A +-1.500000 -2.500000 0.000000 b_A +0.500000 -1.500000 0.000000 b_B +-1.000000 -2.000000 -0.500000 b_B +-0.500000 -2.500000 0.000000 b_A +0.000000 -2.000000 -0.500000 b_B +-1.000000 -2.000000 0.000000 a_A +-0.500000 -1.500000 -0.500000 a_A +0.000000 -2.000000 0.000000 a_A +-0.500000 -1.500000 0.500000 a_A +-0.500000 -2.500000 0.500000 a_A +0.000000 -1.000000 0.000000 a_A +-0.500000 -2.500000 -0.500000 a_A +-1.000000 -3.000000 0.000000 a_A diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/clusters.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..c48cdaa --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/clusters.out @@ -0,0 +1,610 @@ +8 +0.70711 +2 +0.50000 0.50000 0.00000 0 0 +0.00000 0.50000 -0.25000 0 0 + +4 +0.70711 +2 +-0.00000 0.50000 0.25000 0 0 +0.50000 1.00000 0.25000 0 0 + +2 +1.00000 +2 +-0.00000 0.50000 0.25000 0 0 +0.00000 0.50000 -0.25000 0 0 + +2 +1.00000 +2 +0.50000 0.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 + +4 +1.00000 +2 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 + +16 +1.22474 +2 +-0.00000 0.50000 0.25000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +4 +1.22474 +2 +0.50000 0.50000 0.00000 0 0 +0.00000 -0.00000 -0.50000 0 0 + +8 +1.22474 +2 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +4 +1.41421 +2 +-0.00000 0.50000 0.25000 0 0 +-1.00000 0.50000 0.75000 0 0 + +2 +1.41421 +2 +0.50000 0.50000 0.00000 0 0 +-0.50000 1.50000 0.00000 0 0 + +4 +1.41421 +2 +0.50000 -0.00000 0.25000 0 0 +-0.50000 1.00000 0.25000 0 0 + +4 +1.41421 +2 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.75000 0 0 + +8 +1.58114 +2 +-0.00000 0.50000 0.25000 0 0 +-1.50000 1.00000 0.25000 0 0 + +8 +1.58114 +2 +-0.00000 0.50000 0.25000 0 0 +-0.50000 0.50000 1.00000 0 0 + +8 +1.58114 +2 +-0.00000 0.50000 0.25000 0 0 +-1.50000 0.50000 0.00000 0 0 + +8 +1.73205 +2 +-0.00000 0.50000 0.25000 0 0 +-1.00000 1.50000 -0.25000 0 0 + +16 +1.87083 +2 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.50000 1.00000 0 0 + +16 +1.87083 +2 +0.50000 -0.00000 0.25000 0 0 +-1.00000 -1.00000 0.50000 0 0 + +8 +1.87083 +2 +0.50000 0.50000 0.00000 0 0 +-0.00000 2.00000 0.50000 0 0 + +16 +1.87083 +2 +-0.00000 0.50000 0.25000 0 0 +-0.50000 2.00000 0.75000 0 0 + +2 +2.00000 +2 +0.50000 0.50000 0.00000 0 0 +-1.50000 0.50000 0.00000 0 0 + +4 +2.00000 +2 +0.50000 -0.00000 0.25000 0 0 +-1.50000 -0.00000 0.25000 0 0 + +1 +2.00000 +2 +0.50000 0.50000 0.00000 0 0 +0.50000 0.50000 -1.00000 0 0 + +2 +2.00000 +2 +0.50000 -0.00000 0.25000 0 0 +0.50000 -0.00000 -0.75000 0 0 + +8 +0.70711 +3 +-0.00000 0.50000 0.25000 0 0 +-0.00000 1.00000 0.50000 0 0 +-0.50000 1.00000 0.25000 0 0 + +4 +1.00000 +3 +-0.00000 0.50000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 +0.00000 0.50000 -0.25000 0 0 + +4 +1.00000 +3 +0.50000 0.50000 0.00000 0 0 +0.00000 0.50000 -0.25000 0 0 +-0.50000 0.50000 0.00000 0 0 + +8 +1.00000 +3 +0.50000 -0.00000 0.25000 0 0 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 + +4 +1.00000 +3 +0.50000 -0.00000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.50000 -0.00000 0.25000 0 0 + +8 +1.22474 +3 +-0.00000 0.50000 0.25000 0 0 +-0.50000 1.00000 0.25000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +3 +-0.00000 0.50000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +3 +-0.00000 0.50000 0.25000 0 0 +-0.50000 0.50000 0.00000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +3 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +8 +1.22474 +3 +-0.00000 0.50000 0.25000 0 0 +-0.00000 0.50000 0.75000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +8 +1.22474 +3 +-0.00000 0.50000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +8 +1.22474 +3 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.50000 0.00000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +8 +1.22474 +3 +-0.00000 0.50000 0.25000 0 0 +-0.50000 1.00000 0.75000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +3 +0.50000 0.50000 0.00000 0 0 +0.00000 0.50000 -0.25000 0 0 +-0.00000 1.50000 -0.25000 0 0 + +16 +1.22474 +3 +0.50000 0.50000 0.00000 0 0 +0.50000 1.00000 0.25000 0 0 +-0.00000 1.50000 -0.25000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 +-0.00000 1.50000 -0.25000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.00000 0 0 +0.00000 0.50000 -0.25000 0 0 +0.00000 -0.00000 -0.50000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 +0.00000 -0.00000 -0.50000 0 0 + +8 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +0.50000 -0.50000 0.00000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +16 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +3 +0.50000 -0.00000 0.25000 0 0 +0.50000 -1.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +2 +1.00000 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 0.50000 0.00000 0 0 +0.50000 0.50000 0.00000 0 0 +0.00000 0.50000 -0.25000 0 0 + +8 +1.00000 +4 +0.50000 -0.00000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 + +2 +1.00000 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.50000 1.00000 0.25000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +8 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 0.50000 0.00000 0 0 +-0.50000 1.00000 0.25000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +-0.50000 1.00000 0.25000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 0.50000 0.00000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +-0.50000 0.50000 0.00000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 1.00000 0.25000 0 0 +-0.00000 0.50000 0.75000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +8 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.00000 0.50000 0.75000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +-0.00000 0.50000 0.75000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +8 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-1.00000 0.50000 0.25000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 0.50000 0.00000 0 0 +-1.00000 0.50000 0.25000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +-1.00000 0.50000 0.25000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +8 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.00000 -0.50000 0.25000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 0.50000 0.00000 0 0 +0.00000 -0.50000 0.25000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +8 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +8 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 0.50000 0.00000 0 0 +-1.00000 1.00000 0.50000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +4 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.00000 0.50000 0.75000 0 0 +-1.00000 1.00000 0.50000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.50000 -0.50000 0.00000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +8 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.50000 0.00000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.50000 -0.00000 0.75000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.75000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +-0.00000 0.50000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.50000 1.00000 0.75000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +16 +1.22474 +4 +0.50000 0.50000 0.00000 0 0 +0.50000 1.00000 0.25000 0 0 +0.00000 0.50000 -0.25000 0 0 +-0.00000 1.50000 -0.25000 0 0 + +8 +1.22474 +4 +0.50000 0.50000 0.00000 0 0 +0.00000 0.50000 -0.25000 0 0 +-0.50000 0.50000 0.00000 0 0 +-0.00000 1.50000 -0.25000 0 0 + +8 +1.22474 +4 +0.50000 0.50000 0.00000 0 0 +0.50000 1.00000 0.25000 0 0 +1.00000 1.50000 -0.25000 0 0 +-0.00000 1.50000 -0.25000 0 0 + +16 +1.22474 +4 +0.50000 0.50000 0.00000 0 0 +0.00000 0.50000 -0.25000 0 0 +-0.50000 1.00000 0.25000 0 0 +-0.00000 1.50000 -0.25000 0 0 + +4 +1.22474 +4 +0.50000 0.50000 0.00000 0 0 +0.50000 -0.00000 -0.25000 0 0 +0.00000 0.50000 -0.25000 0 0 +0.00000 -0.00000 -0.50000 0 0 + +8 +1.22474 +4 +0.50000 0.50000 0.00000 0 0 +0.00000 0.50000 -0.25000 0 0 +-0.50000 0.50000 0.00000 0 0 +0.00000 -0.00000 -0.50000 0 0 + +2 +1.22474 +4 +0.50000 0.50000 0.00000 0 0 +-0.50000 0.50000 0.00000 0 0 +-0.00000 1.00000 -0.50000 0 0 +0.00000 -0.00000 -0.50000 0 0 + +16 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +0.50000 -0.50000 0.00000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +4 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +0.50000 -0.00000 -0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.50000 -0.50000 0.00000 0 0 +0.50000 -1.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +8 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.00000 -0.50000 0.25000 0 0 +0.50000 -1.00000 0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +2 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +-0.50000 -0.00000 0.25000 0 0 +0.00000 0.50000 -0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + +2 +1.22474 +4 +0.50000 -0.00000 0.25000 0 0 +0.50000 -1.00000 0.25000 0 0 +1.00000 -0.50000 -0.25000 0 0 +0.00000 -0.50000 -0.25000 0 0 + diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/go b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/go new file mode 100755 index 0000000..ca6e499 --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2.0 -3=1.3 -4=1.3 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/job.in b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/job.in new file mode 100755 index 0000000..19d66cf --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D022_lv2 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/rndstr.in b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..dc0c26a --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/rndstr.in @@ -0,0 +1,12 @@ + +1 1 2 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 + +0 0.5 0.25 d_A=0.5,d_B=0.5 +0.5 0 0.25 d_A=0.5,d_B=0.5 + +0 0 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..5d7eaef --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +-0.500000 0.500000 0.500000 +0.500000 -0.500000 0.500000 +0.500000 0.500000 -0.500000 + +0.000000 0.500000 0.250000 d_A=0.500000,d_B=0.500000 +0.000000 0.500000 -0.250000 d_A=0.500000,d_B=0.500000 + +0.000000 0.000000 0.500000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/HEUSLER_D022/sqsgen.in b/data/sqsdb/HEUSLER_D022/sqsgen.in new file mode 100644 index 0000000..47ab0da --- /dev/null +++ b/data/sqsdb/HEUSLER_D022/sqsgen.in @@ -0,0 +1,7 @@ +level=0 a=1 b=1 d=1 +level=1 a=0.5,0.5 b=1 d=1 +level=1 a=1 b=0.5,0.5 d=1 +level=1 a=1 b=1 d=0.5,0.5 +level=2 a=1 b=0.5,0.5 d=0.5,0.5 +level=2 a=0.5,0.5 b=1 d=0.5,0.5 +level=2 a=0.5,0.5 b=0.5,0.5 d=1 diff --git a/data/sqsdb/HEUSLER_L21/equiv.in b/data/sqsdb/HEUSLER_L21/equiv.in new file mode 100644 index 0000000..efc73ad --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/equiv.in @@ -0,0 +1 @@ +a=b diff --git a/data/sqsdb/HEUSLER_L21/rndstr.skel b/data/sqsdb/HEUSLER_L21/rndstr.skel new file mode 100644 index 0000000..3e64f20 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/rndstr.skel @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c +0.25 0.25 0.75 c + +0.5 0.5 0.5 b + +0 0 0 a diff --git a/data/sqsdb/HEUSLER_L21/rndstr.skel.sspp b/data/sqsdb/HEUSLER_L21/rndstr.skel.sspp new file mode 100644 index 0000000..39fa5f7 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/rndstr.skel.sspp @@ -0,0 +1,12 @@ +#const a=1; +{a} {a} {a} {90} {90} {90} +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +#const c="c"; +{1/4} {1/4} {1/4} {c} +{1/4} {1/4} {3/4} {c} +#const b="b"; +{1/2} {1/2} {1/2} {b} +#const a="a"; +{0} {0} {0} {a} diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=0_a=1_b=1_c=1/bestsqs.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=0_a=1_b=1_c=1/bestsqs.out new file mode 100644 index 0000000..5d5f0b0 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=0_a=1_b=1_c=1/bestsqs.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 +0.250000 0.250000 0.250000 c_A +0.250000 0.250000 0.750000 c_A +0.500000 0.500000 0.500000 b_A +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=0_a=1_b=1_c=1/rndstr.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=0_a=1_b=1_c=1/rndstr.in new file mode 100644 index 0000000..dbbe33d --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=0_a=1_b=1_c=1/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=1 +0.25 0.25 0.75 c_A=1 + +0.5 0.5 0.5 b_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/bestcorr.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/bestcorr.out new file mode 100644 index 0000000..b584918 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/bestcorr.out @@ -0,0 +1,19 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +Objective_function= -51.732358 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/bestsqs.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/bestsqs.out new file mode 100644 index 0000000..cc9910e --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.000000 2.000000 +-1.000000 2.000000 1.000000 +-2.000000 1.000000 1.000000 +-2.000000 2.000000 2.000000 a_B +-2.500000 3.000000 2.500000 a_B +-2.500000 2.500000 3.000000 a_B +-3.000000 3.500000 3.500000 a_A +-1.000000 1.000000 1.000000 a_A +-3.000000 2.500000 2.500000 a_B +-1.500000 2.000000 1.500000 a_B +-3.500000 3.500000 3.000000 a_A +-1.500000 1.500000 2.000000 a_B +-3.500000 3.000000 3.500000 a_A +-2.000000 2.500000 2.500000 a_B +-4.000000 4.000000 4.000000 a_A +-2.000000 1.500000 1.500000 a_A +-2.500000 2.500000 2.000000 a_A +-2.500000 2.000000 2.500000 a_A +-3.000000 3.000000 3.000000 a_B +-2.250000 1.750000 1.750000 c_A +-2.750000 2.750000 2.250000 c_A +-2.750000 2.250000 2.750000 c_A +-3.250000 3.250000 3.250000 c_A +-1.250000 0.750000 0.750000 c_A +-1.250000 1.250000 1.250000 c_A +-1.750000 1.750000 1.250000 c_A +-1.750000 2.250000 1.750000 c_A +-1.750000 1.250000 1.750000 c_A +-1.750000 1.750000 2.250000 c_A +-2.250000 2.250000 2.250000 c_A +-2.250000 2.750000 2.750000 c_A +-0.250000 0.250000 0.250000 c_A +-0.750000 1.250000 0.750000 c_A +-0.750000 0.750000 1.250000 c_A +-1.250000 1.750000 1.750000 c_A +-2.750000 3.250000 3.250000 c_A +-2.250000 2.250000 2.750000 c_A +-2.250000 2.750000 2.250000 c_A +-1.750000 1.750000 1.750000 c_A +-1.750000 2.250000 2.250000 c_A +-3.750000 3.750000 3.750000 c_A +-1.250000 1.250000 1.750000 c_A +-3.250000 2.750000 3.250000 c_A +-1.250000 1.750000 1.250000 c_A +-3.250000 3.250000 2.750000 c_A +-0.750000 0.750000 0.750000 c_A +-2.750000 2.250000 2.250000 c_A +-2.750000 2.750000 2.750000 c_A +-2.250000 1.750000 2.250000 c_A +-2.250000 2.250000 1.750000 c_A +-1.750000 1.250000 1.250000 c_A +-0.500000 0.500000 0.500000 b_A +-1.000000 1.500000 1.000000 b_A +-1.000000 1.000000 1.500000 b_A +-1.500000 2.000000 2.000000 b_A +-3.500000 3.500000 3.500000 b_A +-1.500000 1.000000 1.000000 b_A +-3.000000 2.500000 3.000000 b_A +-2.000000 2.000000 1.500000 b_A +-3.000000 3.000000 2.500000 b_A +-2.000000 1.500000 2.000000 b_A +-2.500000 2.000000 2.000000 b_A +-2.500000 2.500000 2.500000 b_A +-2.500000 3.000000 3.000000 b_A +-2.000000 2.000000 2.500000 b_A +-2.000000 2.500000 2.000000 b_A +-1.500000 1.500000 1.500000 b_A diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/clusters.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/clusters.out new file mode 100644 index 0000000..5861dd0 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/clusters.out @@ -0,0 +1,121 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 2.00000 0 0 + +24 +1.87083 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 -0.00000 1.50000 0 0 + +3 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/go b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/go new file mode 100755 index 0000000..c73051e --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2.0 -3=1.3 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/job.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/job.in new file mode 100755 index 0000000..fb033c0 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J L21_lv1 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/rndstr.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/rndstr.in new file mode 100644 index 0000000..4756d7e --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=1 +0.25 0.25 0.75 c_A=1 + +0.5 0.5 0.5 b_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/rndstrgrp.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/rndstrgrp.out new file mode 100644 index 0000000..10f0b92 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +1.000000 1.000000 1.000000 a_A=0.500000,a_B=0.500000 + +0.750000 0.750000 0.750000 c_A=1.000000 +0.250000 0.250000 0.250000 c_A=1.000000 + +0.500000 0.500000 0.500000 b_A=1.000000 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/sqsparam.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/sqsparam.in new file mode 100644 index 0000000..b477e9e --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=0.5,0.5_b=1_c=1/sqsparam.in @@ -0,0 +1 @@ +1 5 1 3 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/bestcorr.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/bestcorr.out new file mode 100644 index 0000000..b584918 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/bestcorr.out @@ -0,0 +1,19 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +Objective_function= -51.732358 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/bestsqs.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/bestsqs.out new file mode 100644 index 0000000..413864a --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.000000 2.000000 +-1.000000 2.000000 1.000000 +-2.000000 1.000000 1.000000 +-1.500000 1.500000 1.500000 b_B +-2.000000 2.500000 2.000000 b_A +-2.000000 2.000000 2.500000 b_B +-2.500000 3.000000 3.000000 b_B +-0.500000 0.500000 0.500000 b_A +-2.500000 2.000000 2.000000 b_A +-1.000000 1.500000 1.000000 b_A +-3.000000 3.000000 2.500000 b_A +-1.000000 1.000000 1.500000 b_A +-3.000000 2.500000 3.000000 b_B +-1.500000 2.000000 2.000000 b_B +-3.500000 3.500000 3.500000 b_A +-1.500000 1.000000 1.000000 b_A +-2.000000 2.000000 1.500000 b_B +-2.000000 1.500000 2.000000 b_B +-2.500000 2.500000 2.500000 b_B +-1.250000 1.750000 1.750000 c_A +-0.750000 0.750000 1.250000 c_A +-0.750000 1.250000 0.750000 c_A +-0.250000 0.250000 0.250000 c_A +-2.250000 1.750000 1.750000 c_A +-2.250000 2.250000 2.250000 c_A +-2.750000 2.750000 2.250000 c_A +-1.750000 1.250000 1.750000 c_A +-2.750000 2.250000 2.750000 c_A +-1.750000 1.750000 1.250000 c_A +-3.250000 3.250000 3.250000 c_A +-1.250000 0.750000 0.750000 c_A +-1.250000 1.250000 1.250000 c_A +-1.750000 2.250000 1.750000 c_A +-1.750000 1.750000 2.250000 c_A +-2.250000 2.750000 2.750000 c_A +-2.750000 3.250000 3.250000 c_A +-2.250000 2.250000 2.750000 c_A +-2.250000 2.750000 2.250000 c_A +-1.750000 1.750000 1.750000 c_A +-1.750000 2.250000 2.250000 c_A +-3.750000 3.750000 3.750000 c_A +-1.250000 1.250000 1.750000 c_A +-3.250000 2.750000 3.250000 c_A +-1.250000 1.750000 1.250000 c_A +-3.250000 3.250000 2.750000 c_A +-0.750000 0.750000 0.750000 c_A +-2.750000 2.250000 2.250000 c_A +-2.750000 2.750000 2.750000 c_A +-2.250000 1.750000 2.250000 c_A +-2.250000 2.250000 1.750000 c_A +-1.750000 1.250000 1.250000 c_A +-3.000000 3.000000 3.000000 a_A +-2.500000 2.000000 2.500000 a_A +-2.500000 2.500000 2.000000 a_A +-2.000000 1.500000 1.500000 a_A +-2.000000 2.000000 2.000000 a_A +-2.000000 2.500000 2.500000 a_A +-2.500000 3.000000 2.500000 a_A +-1.500000 1.500000 2.000000 a_A +-2.500000 2.500000 3.000000 a_A +-1.500000 2.000000 1.500000 a_A +-3.000000 3.500000 3.500000 a_A +-1.000000 1.000000 1.000000 a_A +-3.000000 2.500000 2.500000 a_A +-3.500000 3.500000 3.000000 a_A +-3.500000 3.000000 3.500000 a_A +-4.000000 4.000000 4.000000 a_A diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/clusters.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/clusters.out new file mode 100644 index 0000000..94dfcb5 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/clusters.out @@ -0,0 +1,121 @@ +6 +0.70711 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 + +3 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +1.22474 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +6 +1.41421 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 + +12 +1.58114 +2 +0.50000 0.50000 0.50000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +4 +1.73205 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +24 +1.87083 +2 +0.50000 0.50000 0.50000 0 0 +-1.00000 1.50000 0.00000 0 0 + +3 +2.00000 +2 +0.50000 0.50000 0.50000 0 0 +-1.50000 0.50000 0.50000 0 0 + +8 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.50000 0.50000 0.50000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.50000 0.00000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +2 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +12 +1.00000 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.50000 0.50000 0.50000 0 0 + +3 +1.00000 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.00000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.50000 0.50000 0.50000 0 0 + diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/go b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/go new file mode 100755 index 0000000..c73051e --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2.0 -3=1.3 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/job.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/job.in new file mode 100755 index 0000000..fb033c0 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J L21_lv1 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/rndstr.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/rndstr.in new file mode 100644 index 0000000..ea7985a --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=1 +0.25 0.25 0.75 c_A=1 + +0.5 0.5 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/rndstrgrp.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/rndstrgrp.out new file mode 100644 index 0000000..2c9e0b7 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +-0.500000 -0.500000 -0.500000 b_A=0.500000,b_B=0.500000 + +-0.250000 -0.250000 -0.250000 c_A=1.000000 +0.250000 0.250000 0.250000 c_A=1.000000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/sqsparam.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/sqsparam.in new file mode 100644 index 0000000..b477e9e --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=0.5,0.5_c=1/sqsparam.in @@ -0,0 +1 @@ +1 5 1 3 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..1e86e87 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,31 @@ +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.118034 -0.125000 0.000000 -0.125000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.166667 0.000000 0.166667 +2 1.500000 -0.083333 0.000000 -0.083333 +2 1.500000 -0.083333 0.000000 -0.083333 +2 1.500000 -0.166667 0.000000 -0.166667 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.866025 -0.020833 0.000000 -0.020833 +3 0.866025 -0.020833 0.000000 -0.020833 +3 1.000000 -0.083333 0.000000 -0.083333 +3 1.000000 -0.083333 0.000000 -0.083333 +3 1.000000 0.041667 0.000000 0.041667 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.866025 0.041667 0.000000 0.041667 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 -0.250000 0.000000 -0.250000 +4 0.866025 -0.041667 0.000000 -0.041667 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 -0.083333 0.000000 -0.083333 +Objective_function= -578.217304 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..aef1e6a --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 1.000000 1.500000 +1.500000 1.000000 0.500000 +-1.000000 1.000000 -1.000000 +0.750000 2.750000 0.750000 c_B +1.250000 2.750000 1.250000 c_B +0.750000 2.250000 0.250000 c_B +-0.250000 0.750000 -0.250000 c_B +-0.250000 1.250000 0.250000 c_B +0.250000 0.750000 0.250000 c_A +0.250000 1.250000 0.750000 c_B +-0.250000 1.750000 -0.250000 c_B +0.750000 1.250000 1.250000 c_A +0.250000 2.250000 0.750000 c_A +0.250000 1.250000 -0.250000 c_A +0.250000 1.750000 0.250000 c_B +0.750000 1.250000 0.250000 c_A +0.750000 1.750000 0.750000 c_B +1.250000 1.250000 0.750000 c_B +1.250000 1.750000 1.250000 c_A +-0.750000 1.250000 -0.750000 c_B +-0.250000 1.250000 -0.250000 c_A +-0.250000 1.750000 0.250000 c_B +0.250000 1.250000 0.250000 c_B +0.250000 1.750000 0.750000 c_A +0.750000 1.250000 0.750000 c_B +0.750000 1.750000 1.250000 c_A +0.250000 2.250000 0.250000 c_A +0.750000 0.750000 0.250000 c_A +0.250000 1.750000 -0.250000 c_B +0.750000 1.750000 0.250000 c_A +0.750000 2.250000 0.750000 c_B +1.250000 1.750000 0.750000 c_A +1.250000 2.250000 1.250000 c_A +0.250000 0.750000 0.750000 c_A +1.750000 2.250000 1.750000 c_A +0.500000 2.500000 0.500000 b_A +1.000000 2.500000 1.000000 b_A +0.500000 2.000000 0.000000 b_A +1.500000 2.500000 1.500000 b_A +1.000000 2.000000 0.500000 b_A +0.000000 0.500000 -0.000000 b_A +0.000000 1.000000 0.500000 b_A +-0.500000 1.500000 -0.500000 b_A +0.500000 1.000000 1.000000 b_A +-0.000000 2.000000 0.500000 b_A +0.500000 2.000000 1.000000 b_A +0.000000 1.500000 -0.000000 b_A +0.500000 1.000000 -0.000000 b_A +0.500000 1.500000 0.500000 b_A +1.000000 1.000000 0.500000 b_A +1.000000 1.500000 1.000000 b_A +1.000000 3.000000 1.000000 a_A +-0.500000 1.000000 -0.500000 a_A +-0.500000 1.500000 0.000000 a_A +0.000000 1.000000 0.000000 a_A +-0.000000 1.500000 0.500000 a_A +0.500000 1.000000 0.500000 a_A +0.500000 1.500000 1.000000 a_A +-0.000000 2.000000 0.000000 a_A +1.000000 1.500000 1.500000 a_A +-0.000000 1.500000 -0.500000 a_A +0.500000 1.500000 0.000000 a_A +0.500000 2.000000 0.500000 a_A +1.000000 1.500000 0.500000 a_A +1.000000 2.000000 1.000000 a_A +1.500000 1.500000 1.000000 a_A +1.500000 2.000000 1.500000 a_A diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/clusters.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..f54a3e3 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/clusters.out @@ -0,0 +1,210 @@ +6 +0.50000 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +12 +0.70711 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +6 +1.00000 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +1.11803 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 1.25000 0 0 + +24 +1.22474 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.25000 1.25000 0 0 + +12 +1.41421 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 1.75000 0 0 + +12 +1.50000 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 1.25000 1.75000 0 0 + +12 +1.50000 +2 +0.25000 0.25000 0.25000 0 0 +-0.75000 -0.75000 -0.25000 0 0 + +6 +1.50000 +2 +0.25000 0.25000 0.25000 0 0 +-1.25000 0.25000 0.25000 0 0 + +24 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.86603 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +24 +0.86603 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +6 +1.00000 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +1.00000 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +1.00000 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 1.25000 0 0 +-0.25000 0.75000 0.75000 0 0 + +6 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 1.25000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +24 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +6 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 0.25000 -0.25000 0 0 +-0.25000 -0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +24 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +24 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +6 +0.86603 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +-0.25000 -0.25000 0.75000 0 0 + diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/go b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/go new file mode 100755 index 0000000..7032f6d --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.5 -3=1 -4=0.9 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/job.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/job.in new file mode 100755 index 0000000..fb033c0 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J L21_lv1 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/rndstr.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..eeed37c --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=0.5,c_B=0.5 +0.25 0.25 0.75 c_A=0.5,c_B=0.5 + +0.5 0.5 0.5 b_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..02b9ad5 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +-0.250000 -0.250000 -0.250000 c_A=0.500000,c_B=0.500000 +0.250000 0.250000 0.250000 c_A=0.500000,c_B=0.500000 + +-0.500000 -0.500000 -0.500000 b_A=1.000000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/sqsparam.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..a94e7d2 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=1_a=1_b=1_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +3 10 3 7 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/bestcorr.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/bestcorr.out new file mode 100644 index 0000000..e3e807e --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/bestcorr.out @@ -0,0 +1,25 @@ +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 -0.333333 0.000000 -0.333333 +2 1.000000 -0.333333 0.000000 -0.333333 +2 1.118034 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.866025 0.000000 0.000000 0.000000 +3 0.866025 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +4 0.866025 0.000000 0.000000 0.000000 +Objective_function= -61.866667 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/bestsqs.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/bestsqs.out new file mode 100644 index 0000000..80f9ef6 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 -1.000000 1.000000 +1.000000 -1.000000 -1.000000 +1.000000 1.000000 1.000000 +0.000000 -0.500000 1.000000 b_B +1.000000 -1.000000 0.500000 b_B +0.500000 -0.500000 0.500000 b_A +0.500000 -0.000000 1.000000 b_B +1.500000 -0.500000 0.500000 b_B +1.000000 -0.500000 1.000000 b_A +0.000000 -1.000000 0.500000 b_B +0.500000 -1.500000 0.500000 b_B +1.000000 -0.500000 0.000000 b_B +1.000000 -0.000000 0.500000 b_A +1.000000 0.500000 1.000000 b_A +1.000000 -1.000000 -0.500000 b_A +0.500000 -1.000000 0.000000 b_A +0.500000 -1.000000 1.000000 b_B +0.500000 -0.500000 1.500000 b_A +-0.500000 -1.000000 1.000000 b_A +0.500000 -0.000000 1.500000 a_B +0.500000 -1.500000 0.000000 a_A +1.000000 -0.000000 1.000000 a_B +0.000000 -0.500000 0.500000 a_B +1.000000 -1.000000 0.000000 a_A +0.500000 -1.000000 0.500000 a_A +0.500000 -0.500000 1.000000 a_B +1.000000 -1.000000 1.000000 a_B +1.500000 -0.000000 0.500000 a_A +0.500000 -0.500000 0.000000 a_A +0.500000 0.000000 0.500000 a_B +1.500000 -0.500000 0.000000 a_B +1.000000 -0.500000 0.500000 a_B +0.000000 -1.500000 0.500000 a_A +0.000000 -1.000000 1.000000 a_A +0.000000 -0.500000 1.500000 a_A +-0.250000 -0.750000 0.750000 c_A +0.750000 -1.250000 0.250000 c_A +0.250000 -0.750000 0.250000 c_A +0.250000 -0.250000 0.750000 c_A +1.250000 -0.750000 0.250000 c_A +0.750000 -0.750000 0.750000 c_A +0.750000 -0.250000 1.250000 c_A +0.250000 -1.750000 0.250000 c_A +0.750000 -0.750000 -0.250000 c_A +0.750000 -0.250000 0.250000 c_A +0.750000 0.250000 0.750000 c_A +1.750000 -0.250000 0.250000 c_A +1.250000 -0.250000 0.750000 c_A +0.250000 -1.250000 0.750000 c_A +0.250000 -0.750000 1.250000 c_A +0.250000 -0.250000 1.750000 c_A +-0.250000 -0.750000 1.250000 c_A +0.750000 -1.250000 0.750000 c_A +0.250000 -0.750000 0.750000 c_A +0.250000 -0.250000 1.250000 c_A +1.250000 -0.750000 0.750000 c_A +0.750000 -0.750000 1.250000 c_A +-0.250000 -1.250000 0.750000 c_A +1.250000 -0.750000 -0.250000 c_A +0.750000 -0.750000 0.250000 c_A +0.750000 -0.250000 0.750000 c_A +0.750000 0.250000 1.250000 c_A +0.750000 -1.250000 -0.250000 c_A +0.250000 -1.250000 0.250000 c_A +1.250000 -0.250000 0.250000 c_A +1.250000 0.250000 0.750000 c_A +0.250000 -0.250000 0.250000 c_A diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/clusters.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/clusters.out new file mode 100644 index 0000000..269b726 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/clusters.out @@ -0,0 +1,168 @@ +6 +0.50000 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 + +6 +0.70711 +2 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.86603 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +3 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +24 +1.11803 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.50000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +12 +1.22474 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +12 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +12 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.86603 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +0.86603 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +1.50000 1.50000 1.50000 0 0 + +6 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.86603 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 +1.00000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +48 +0.86603 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 0.50000 0.50000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +0.86603 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +0.86603 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +1.50000 1.50000 1.50000 0 0 + diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/go b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/go new file mode 100755 index 0000000..8e4a62f --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.3 -3=0.9 -4=0.9 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/job.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/job.in new file mode 100755 index 0000000..f67d219 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J L21_lv2 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/rndstr.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/rndstr.in new file mode 100644 index 0000000..8a23114 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=1 +0.25 0.25 0.75 c_A=1 + +0.5 0.5 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/rndstrgrp.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/rndstrgrp.out new file mode 100644 index 0000000..4ddb001 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.500000 0.500000 0.500000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.250000 0.250000 0.250000 c_A=1.000000 +0.250000 0.250000 0.750000 c_A=1.000000 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/sqsparam.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/sqsparam.in new file mode 100644 index 0000000..b87192b --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_c=1/sqsparam.in @@ -0,0 +1 @@ +1 5 0 3 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..05066ec --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,27 @@ +2 0.433013 0.000000 0.000000 0.000000 +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.829156 0.020833 0.000000 0.020833 +2 0.866025 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 -0.166667 0.000000 -0.166667 +2 1.000000 0.000000 0.000000 0.000000 +3 0.500000 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +Objective_function= -637.623724 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..b40aa4f --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-2.000000 1.000000 1.000000 +-2.000000 -0.500000 0.500000 +-0.000000 0.500000 1.500000 +-2.250000 1.250000 2.250000 c_A +-1.750000 0.750000 1.250000 c_A +-3.750000 0.750000 2.250000 c_B +-1.250000 0.750000 1.750000 c_A +-3.250000 0.250000 1.250000 c_B +-3.250000 0.750000 1.750000 c_B +-0.750000 0.250000 0.750000 c_A +-2.750000 0.250000 1.750000 c_B +-2.750000 0.750000 2.250000 c_A +-2.750000 0.750000 1.250000 c_A +-2.250000 -0.250000 0.750000 c_A +-2.250000 0.250000 1.250000 c_B +-2.250000 0.750000 1.750000 c_A +-1.750000 0.250000 1.750000 c_A +-1.750000 0.250000 0.750000 c_A +-1.250000 0.250000 1.250000 c_B +-2.750000 0.750000 1.750000 c_B +-2.250000 0.750000 2.250000 c_B +-2.250000 0.750000 1.250000 c_A +-1.750000 0.250000 1.250000 c_B +-1.750000 0.750000 1.750000 c_B +-1.750000 1.250000 2.250000 c_B +-1.250000 0.250000 1.750000 c_A +-1.250000 0.250000 0.750000 c_B +-1.250000 0.750000 1.250000 c_B +-3.250000 0.750000 2.250000 c_B +-0.750000 0.250000 1.250000 c_A +-0.750000 0.750000 1.750000 c_B +-2.750000 0.250000 1.250000 c_B +-0.250000 0.250000 0.750000 c_A +-2.250000 0.250000 1.750000 c_A +-1.750000 -0.250000 0.750000 c_A +-4.000000 1.000000 3.000000 a_A +-3.500000 0.500000 2.000000 a_B +-3.500000 1.000000 2.500000 a_A +-3.000000 0.500000 2.500000 a_B +-3.000000 0.500000 1.500000 a_B +-3.000000 1.000000 2.000000 a_B +-2.500000 -0.000000 1.500000 a_B +-2.500000 0.500000 2.000000 a_A +-2.500000 1.000000 2.500000 a_B +-2.500000 1.000000 1.500000 a_B +-2.000000 -0.000000 1.000000 a_A +-2.000000 0.500000 1.500000 a_B +-2.000000 1.000000 2.000000 a_A +-1.500000 0.500000 2.000000 a_A +-1.500000 0.500000 1.000000 a_A +-1.000000 0.500000 1.500000 a_A +-2.500000 1.000000 2.000000 b_A +-2.000000 0.500000 1.000000 b_A +-2.000000 1.000000 1.500000 b_A +-1.500000 0.500000 1.500000 b_A +-1.500000 1.000000 2.000000 b_A +-3.500000 0.500000 1.500000 b_A +-1.000000 -0.000000 0.500000 b_A +-1.000000 0.500000 1.000000 b_A +-3.000000 0.500000 2.000000 b_A +-3.000000 1.000000 2.500000 b_A +-0.500000 0.500000 1.500000 b_A +-2.500000 -0.000000 1.000000 b_A +-2.500000 0.500000 1.500000 b_A +-2.000000 -0.000000 1.500000 b_A +-2.000000 0.500000 2.000000 b_A +-1.500000 -0.000000 1.000000 b_A diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/clusters.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..25fb771 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/clusters.out @@ -0,0 +1,183 @@ +8 +0.43301 +2 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 + +6 +0.50000 +2 +0.25000 0.25000 0.25000 0 0 +0.75000 0.25000 0.25000 0 0 + +12 +0.70711 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.82916 +2 +0.25000 0.25000 0.25000 0 0 +0.50000 0.00000 -0.50000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +6 +1.00000 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 + +12 +0.50000 +3 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.75000 0.25000 0.25000 0 0 + +12 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +12 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 1.25000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/go b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/go new file mode 100755 index 0000000..7d3f1bd --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1 -3=0.8 -4=0.8 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/job.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/job.in new file mode 100755 index 0000000..f67d219 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J L21_lv2 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/rndstr.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..a13f89a --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=0.5,c_B=0.5 +0.25 0.25 0.75 c_A=0.5,c_B=0.5 + +0.5 0.5 0.5 b_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..97598af --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.750000 0.750000 0.750000 c_A=0.500000,c_B=0.500000 +0.250000 0.250000 0.250000 c_A=0.500000,c_B=0.500000 + +1.000000 1.000000 1.000000 a_A=0.500000,a_B=0.500000 + +0.500000 0.500000 0.500000 b_A=1.000000 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/sqsparam.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..a94e7d2 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=0.5,0.5_b=1_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +3 10 3 7 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/bestcorr.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..aa0389e --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/bestcorr.out @@ -0,0 +1,27 @@ +2 0.433013 0.000000 0.000000 0.000000 +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.829156 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 0.166667 0.000000 0.166667 +2 1.000000 0.291667 0.000000 0.291667 +3 0.500000 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.083333 0.000000 0.083333 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 -0.062500 0.000000 -0.062500 +3 0.707107 -0.062500 0.000000 -0.062500 +4 0.707107 -0.166667 0.000000 -0.166667 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 -0.166667 0.000000 -0.166667 +4 0.707107 -0.062500 0.000000 -0.062500 +4 0.707107 0.250000 0.000000 0.250000 +4 0.707107 -0.062500 0.000000 -0.062500 +4 0.707107 -0.062500 0.000000 -0.062500 +4 0.707107 0.250000 0.000000 0.250000 +Objective_function= -363.779290 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/bestsqs.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..4fd7750 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/bestsqs.out @@ -0,0 +1,70 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +2.000000 1.000000 0.000000 +-2.000000 1.000000 0.000000 +0.000000 -0.000000 1.000000 +0.250000 1.750000 0.250000 c_A +0.750000 1.250000 0.250000 c_A +-1.250000 0.750000 0.750000 c_B +1.250000 1.250000 0.750000 c_A +-0.750000 0.750000 0.250000 c_B +-0.250000 1.750000 0.750000 c_B +-0.250000 0.250000 0.250000 c_B +-0.750000 1.250000 0.750000 c_B +-0.250000 0.750000 0.750000 c_B +-0.250000 1.250000 0.250000 c_A +0.250000 0.250000 0.750000 c_A +0.250000 0.750000 0.250000 c_A +-1.250000 1.250000 0.250000 c_B +0.250000 1.250000 0.750000 c_B +0.750000 0.750000 0.750000 c_B +1.250000 0.750000 0.250000 c_B +-1.250000 1.250000 0.750000 c_A +-0.750000 0.750000 0.750000 c_B +-0.750000 1.250000 0.250000 c_B +-0.250000 0.750000 0.250000 c_A +-0.250000 1.250000 0.750000 c_B +0.250000 0.250000 0.250000 c_B +0.250000 0.750000 0.750000 c_A +-0.250000 1.750000 0.250000 c_B +0.250000 1.250000 0.250000 c_A +0.250000 1.750000 0.750000 c_A +0.750000 0.750000 0.250000 c_A +0.750000 1.250000 0.750000 c_A +1.250000 0.750000 0.750000 c_A +-1.250000 0.750000 0.250000 c_A +1.250000 1.250000 0.250000 c_A +-0.250000 0.250000 0.750000 c_B +-0.000000 1.500000 1.000000 b_A +0.500000 1.000000 1.000000 b_B +0.500000 1.500000 0.500000 b_A +1.000000 1.000000 0.500000 b_B +1.000000 1.500000 1.000000 b_A +-0.500000 1.500000 0.500000 b_B +1.500000 1.000000 1.000000 b_A +-1.000000 1.000000 0.500000 b_A +-0.500000 0.500000 0.500000 b_A +-0.500000 1.000000 1.000000 b_B +0.000000 2.000000 0.500000 b_B +0.000000 0.500000 1.000000 b_A +-1.500000 1.000000 1.000000 b_A +-0.000000 1.000000 0.500000 b_B +0.500000 0.500000 0.500000 b_B +-1.000000 1.500000 1.000000 b_B +-1.500000 1.000000 0.500000 a_A +1.000000 1.500000 0.500000 a_A +-1.000000 1.000000 1.000000 a_A +-0.500000 0.500000 1.000000 a_A +-0.500000 1.000000 0.500000 a_A +-0.000000 2.000000 1.000000 a_A +-0.000000 0.500000 0.500000 a_A +-0.500000 1.500000 1.000000 a_A +-0.000000 1.000000 1.000000 a_A +-0.000000 1.500000 0.500000 a_A +0.500000 0.500000 1.000000 a_A +0.500000 1.000000 0.500000 a_A +-1.000000 1.500000 0.500000 a_A +0.500000 1.500000 1.000000 a_A +1.000000 1.000000 1.000000 a_A +1.500000 1.000000 0.500000 a_A diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/clusters.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..8b85ea4 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/clusters.out @@ -0,0 +1,183 @@ +8 +0.43301 +2 +0.50000 0.50000 0.50000 0 0 +0.75000 0.25000 0.25000 0 0 + +6 +0.50000 +2 +0.25000 0.25000 0.25000 0 0 +0.75000 0.25000 0.25000 0 0 + +6 +0.70711 +2 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +12 +0.70711 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.82916 +2 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 1.25000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +4 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +3 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +6 +1.00000 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 + +12 +0.50000 +3 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.00000 0 0 +0.75000 0.25000 0.25000 0 0 + +12 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +12 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +24 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +6 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 1.25000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/go b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/go new file mode 100755 index 0000000..7d3f1bd --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1 -3=0.8 -4=0.8 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/job.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/job.in new file mode 100755 index 0000000..f67d219 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/job.in @@ -0,0 +1,9 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J L21_lv2 + +for (( id=0 ; id<8 ; id++ )); do + mcsqs -n=64 -ip=$id & +done +wait diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/rndstr.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..99297e2 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/rndstr.in @@ -0,0 +1,12 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=0.5,c_B=0.5 +0.25 0.25 0.75 c_A=0.5,c_B=0.5 + +0.5 0.5 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..0a7c432 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,13 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +-0.250000 -0.250000 -0.250000 c_A=0.500000,c_B=0.500000 +0.250000 0.250000 0.250000 c_A=0.500000,c_B=0.500000 + +-0.500000 -0.500000 -0.500000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/sqsparam.in b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..b07cb3b --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsdb_lev=2_a=1_b=0.5,0.5_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +2 10 2 6 diff --git a/data/sqsdb/HEUSLER_L21/sqsgen.in b/data/sqsdb/HEUSLER_L21/sqsgen.in new file mode 100644 index 0000000..23c46f5 --- /dev/null +++ b/data/sqsdb/HEUSLER_L21/sqsgen.in @@ -0,0 +1,7 @@ +level=0 a=1 b=1 c=1 +level=1 a=0.5,0.5 b=1 c=1 +level=1 a=1 b=0.5,0.5 c=1 +level=1 a=1 b=1 c=0.5,0.5 +level=2 a=1 b=0.5,0.5 c=0.5,0.5 +level=2 a=0.5,0.5 b=1 c=0.5,0.5 +level=2 a=0.5,0.5 b=0.5,0.5 c=1 diff --git a/data/sqsdb/LIQUID/liu_sqs/50percent_lsqs_crdf.lat b/data/sqsdb/LIQUID/liu_sqs/50percent_lsqs_crdf.lat new file mode 100755 index 0000000..f1adf00 --- /dev/null +++ b/data/sqsdb/LIQUID/liu_sqs/50percent_lsqs_crdf.lat @@ -0,0 +1,52 @@ +1 1 1.50000 90 90 90 +1 0 0 +0 1 0 +0 0 1 +0.99324657 0.98076563 0.01476635 A +0.23789169 0.28489044 0.98725639 A +0.29524566 0.99737297 0.13794284 A +0.02355360 0.22173304 0.16753782 B +0.53577559 0.03021566 0.98767320 B +0.75120633 0.25890861 0.99894335 B +0.73611912 0.01709688 0.18361597 B +0.49367801 0.26761376 0.15845158 B +0.99396495 0.53029947 0.01591012 A +0.24140514 0.72921850 0.01074865 B +0.21897843 0.46944922 0.17560836 A +0.99864301 0.76368359 0.18810606 B +0.49233564 0.49433264 0.97847074 B +0.73278833 0.77061854 0.99492238 B +0.76704012 0.49788899 0.15942421 A +0.53171907 0.70963221 0.15807449 B +0.97321406 0.02849105 0.33307096 A +0.27794324 0.26157618 0.34600099 B +0.24712521 0.96351225 0.50328951 B +0.02177579 0.21304260 0.51321035 A +0.46490724 0.97067889 0.33420043 A +0.72693219 0.28151430 0.32521945 A +0.74118333 0.02535801 0.47666612 B +0.48047869 0.26370312 0.50848081 A +0.98458433 0.45830820 0.32830873 A +0.24706269 0.74263848 0.31422226 B +0.24559160 0.53196180 0.50113274 A +0.99037060 0.76059064 0.48468354 A +0.48932359 0.53009965 0.33538302 A +0.74995468 0.72403782 0.34092166 B +0.75108497 0.48811362 0.51761871 A +0.51308654 0.73878669 0.50241830 B +0.00576093 0.01497018 0.67655566 A +0.27455238 0.24342298 0.65556898 A +0.23401661 0.01396298 0.86208331 B +0.01906777 0.27100584 0.82061585 B +0.53020140 0.98959215 0.64387630 A +0.74701496 0.24441351 0.67481733 B +0.78472871 0.99650871 0.82615204 A +0.49263108 0.22168400 0.81519817 A +0.00320652 0.48590087 0.64666565 A +0.21547112 0.74579274 0.68125823 A +0.23887610 0.49377731 0.82385224 B +0.99681273 0.71063746 0.85291436 B +0.49425786 0.54577039 0.70156412 B +0.77990845 0.76296154 0.67258700 A +0.73483314 0.46744977 0.82368715 B +0.50097092 0.78658595 0.83975631 B diff --git a/data/sqsdb/LIQUID/rndstr.skel b/data/sqsdb/LIQUID/rndstr.skel new file mode 100644 index 0000000..aa31812 --- /dev/null +++ b/data/sqsdb/LIQUID/rndstr.skel @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a diff --git a/data/sqsdb/LIQUID/sqsdb_lev=0_a=1/bestsqs.in b/data/sqsdb/LIQUID/sqsdb_lev=0_a=1/bestsqs.in new file mode 100644 index 0000000..71d1d1e --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=0_a=1/bestsqs.in @@ -0,0 +1,7 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/LIQUID/sqsdb_lev=0_a=1/bestsqs.out b/data/sqsdb/LIQUID/sqsdb_lev=0_a=1/bestsqs.out new file mode 100644 index 0000000..1e39fe7 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=0_a=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +2.000000 0.000000 0.000000 +0.000000 2.000000 0.000000 +0.000000 0.000000 2.000000 +2.012504 2.010065 0.989685 a_A +2.006260 0.484477 1.475579 a_A +0.507930 1.974123 1.512713 a_A +2.011629 1.974905 1.964174 a_A +1.992981 0.500986 0.504913 a_A +1.959608 1.001860 1.007714 a_A +1.959663 1.520695 1.488836 a_A +0.528324 2.039932 0.506734 a_A +0.479197 0.474559 0.964339 a_A +0.487865 1.024531 1.461894 a_A +1.022165 1.973961 1.023563 a_A +1.037198 0.489545 1.468863 a_A +1.486283 2.005661 1.517616 a_A +1.984617 0.992427 1.974045 a_A +1.990428 1.452835 0.497551 a_A +0.518847 0.484200 2.003977 a_A +0.456107 1.013528 0.497870 a_A +0.492733 1.511578 0.985225 a_A +1.000149 2.004131 1.951208 a_A +0.994827 0.526203 0.498008 a_A +0.969744 1.013153 1.018553 a_A +1.031273 1.497743 1.496142 a_A +1.486952 2.024536 0.499585 a_A +1.481035 0.465918 1.026227 a_A +1.502769 1.043713 1.506096 a_A +0.495367 1.503877 2.029079 a_A +0.962735 1.027378 2.002334 a_A +1.037922 1.522664 0.495121 a_A +1.470202 0.494321 1.985558 a_A +1.524234 0.964013 0.478427 a_A +1.526246 1.517364 1.010144 a_A +1.504338 1.530928 2.006809 a_A diff --git a/data/sqsdb/LIQUID/sqsdb_lev=0_a=1/go b/data/sqsdb/LIQUID/sqsdb_lev=0_a=1/go new file mode 100755 index 0000000..73b42f0 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=0_a=1/go @@ -0,0 +1,6 @@ +#!/bin/bash +if [[ ! -e bestsqs.in ]] +then + mv bestsqs.out bestsqs.in +fi +cellcvrt.exe -uss=../supcel.in < bestsqs.in | cellcvrt.exe -ja=0.05 > bestsqs.out diff --git a/data/sqsdb/LIQUID/sqsdb_lev=0_a=1/rndstr.in b/data/sqsdb/LIQUID/sqsdb_lev=0_a=1/rndstr.in new file mode 100644 index 0000000..b5e9ad8 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=0_a=1/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=1 diff --git a/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/bestcorr.out b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..eb502e0 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/bestcorr.out @@ -0,0 +1,2 @@ +2 0.707107 0.000000 0.000000 0.000000 +Objective_function= Perfect_match diff --git a/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/bestsqs.in b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/bestsqs.in new file mode 100644 index 0000000..e0aeb75 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/bestsqs.in @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +2.000000 0.000000 0.000000 +-0.000000 2.000000 0.000000 +-0.000000 -0.000000 2.000000 +2.000000 2.000000 1.000000 a_A +2.000000 0.500000 1.500000 a_A +0.500000 2.000000 1.500000 a_A +2.000000 2.000000 2.000000 a_B +2.000000 0.500000 0.500000 a_A +2.000000 1.000000 1.000000 a_A +2.000000 1.500000 1.500000 a_B +0.500000 2.000000 0.500000 a_A +0.500000 0.500000 1.000000 a_A +0.500000 1.000000 1.500000 a_A +1.000000 2.000000 1.000000 a_A +1.000000 0.500000 1.500000 a_B +1.500000 2.000000 1.500000 a_B +2.000000 1.000000 2.000000 a_A +2.000000 1.500000 0.500000 a_B +0.500000 0.500000 2.000000 a_B +0.500000 1.000000 0.500000 a_B +0.500000 1.500000 1.000000 a_B +1.000000 2.000000 2.000000 a_B +1.000000 0.500000 0.500000 a_A +1.000000 1.000000 1.000000 a_B +1.000000 1.500000 1.500000 a_B +1.500000 2.000000 0.500000 a_B +1.500000 0.500000 1.000000 a_B +1.500000 1.000000 1.500000 a_B +0.500000 1.500000 2.000000 a_B +1.000000 1.000000 2.000000 a_A +1.000000 1.500000 0.500000 a_A +1.500000 0.500000 2.000000 a_A +1.500000 1.000000 0.500000 a_A +1.500000 1.500000 1.000000 a_A +1.500000 1.500000 2.000000 a_B diff --git a/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/bestsqs.out b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..d8aa225 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +2.000000 0.000000 0.000000 +0.000000 2.000000 0.000000 +0.000000 0.000000 2.000000 +2.047709 1.989694 0.992164 a_A +2.003274 0.525083 1.512379 a_A +0.464686 2.006727 1.509691 a_A +2.018109 1.998054 2.010642 a_B +1.986995 0.455753 0.480776 a_A +1.986938 1.008250 1.046707 a_A +1.956891 1.501806 1.488243 a_B +0.501829 1.967986 0.515853 a_A +0.488736 0.470055 0.989208 a_A +0.530575 1.023620 1.514889 a_A +0.978741 1.977419 1.021619 a_A +0.973865 0.512503 1.481810 a_B +1.485508 2.002437 1.457102 a_B +2.004198 0.982671 1.960444 a_A +2.009849 1.479254 0.515772 a_B +0.463634 0.487522 1.996277 a_B +0.499718 1.002782 0.546151 a_B +0.475805 1.496981 0.963552 a_B +0.978551 2.016176 1.960170 a_B +1.002756 0.473689 0.538010 a_A +1.013030 1.011105 0.965398 a_B +1.006556 1.478608 1.508974 a_B +1.511528 1.980349 0.520286 a_B +1.528884 0.482932 0.983920 a_B +1.497227 1.047504 1.502785 a_B +0.497867 1.532737 1.972434 a_B +0.991399 1.014243 2.037377 a_A +1.033279 1.521773 0.494650 a_A +1.464062 0.486219 2.023347 a_A +1.523325 0.987662 0.491287 a_A +1.501845 1.450176 0.996413 a_A +1.524813 1.475690 1.985284 a_B diff --git a/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/clusters.out b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/clusters.out new file mode 100644 index 0000000..d0203b5 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/clusters.out @@ -0,0 +1,6 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 + diff --git a/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/go b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/go new file mode 100755 index 0000000..44dcdd1 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/go @@ -0,0 +1,9 @@ +#!/bin/bash +corrdump.exe -2=0.8 -clus -nop -noe -ro -l=rndstr.in +(echo 1 ; cat ../supcel.in) > sqscell.out +mcsqs -rc -n=32 +if [[ ! -e bestsqs.in ]] +then + mv bestsqs.out bestsqs.in +fi +cellcvrt.exe -uss=../supcel.in < bestsqs.in | cellcvrt.exe -ja=0.05 > bestsqs.out diff --git a/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/rndstr.in b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/rndstr.in new file mode 100644 index 0000000..df7158c --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/rndstrgrp.out b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..ac2e20d --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=1_a=0.5,0.5/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/bestcorr.out b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..3710e32 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/bestcorr.out @@ -0,0 +1,2 @@ +2 0.707107 0.250000 0.250000 0.000000 +Objective_function= Perfect_match diff --git a/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/bestsqs.in b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/bestsqs.in new file mode 100644 index 0000000..c4ae233 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/bestsqs.in @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +2.000000 0.000000 0.000000 +-0.000000 2.000000 0.000000 +-0.000000 -0.000000 2.000000 +2.000000 2.000000 1.000000 a_A +2.000000 0.500000 1.500000 a_A +0.500000 2.000000 1.500000 a_A +2.000000 2.000000 2.000000 a_B +2.000000 0.500000 0.500000 a_A +2.000000 1.000000 1.000000 a_A +2.000000 1.500000 1.500000 a_A +0.500000 2.000000 0.500000 a_A +0.500000 0.500000 1.000000 a_A +0.500000 1.000000 1.500000 a_A +1.000000 2.000000 1.000000 a_A +1.000000 0.500000 1.500000 a_A +1.500000 2.000000 1.500000 a_B +2.000000 1.000000 2.000000 a_A +2.000000 1.500000 0.500000 a_B +0.500000 0.500000 2.000000 a_B +0.500000 1.000000 0.500000 a_B +0.500000 1.500000 1.000000 a_A +1.000000 2.000000 2.000000 a_A +1.000000 0.500000 0.500000 a_A +1.000000 1.000000 1.000000 a_A +1.000000 1.500000 1.500000 a_A +1.500000 2.000000 0.500000 a_A +1.500000 0.500000 1.000000 a_A +1.500000 1.000000 1.500000 a_A +0.500000 1.500000 2.000000 a_A +1.000000 1.000000 2.000000 a_B +1.000000 1.500000 0.500000 a_B +1.500000 0.500000 2.000000 a_B +1.500000 1.000000 0.500000 a_A +1.500000 1.500000 1.000000 a_A +1.500000 1.500000 2.000000 a_A diff --git a/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/bestsqs.out b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..ad84d0a --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +2.000000 0.000000 0.000000 +0.000000 2.000000 0.000000 +0.000000 0.000000 2.000000 +2.041113 1.995091 1.000030 a_A +2.043901 0.507928 1.499329 a_A +0.484885 2.028784 1.475679 a_A +2.031805 1.988849 2.027900 a_B +2.013485 0.516903 0.497647 a_A +1.968413 1.027193 1.006838 a_A +2.004054 1.510545 1.511472 a_A +0.531325 1.990998 0.534171 a_A +0.468967 0.461304 0.997501 a_A +0.490225 0.977381 1.458540 a_A +0.996020 1.979219 0.955242 a_A +1.011638 0.457217 1.497294 a_A +1.528894 2.028177 1.529497 a_B +2.000255 1.002109 2.001950 a_A +2.037489 1.475395 0.493956 a_B +0.465858 0.515854 2.010952 a_B +0.516352 1.018185 0.501601 a_B +0.507515 1.494860 1.015982 a_A +1.018020 2.045547 1.999687 a_A +1.006037 0.518632 0.519017 a_A +0.979763 1.001429 1.039082 a_A +1.031758 1.490028 1.497249 a_A +1.484481 2.000987 0.516983 a_A +1.487631 0.529793 0.985554 a_A +1.515776 1.044052 1.498504 a_A +0.525380 1.520008 2.015630 a_A +0.962831 0.988655 1.978048 a_B +0.984038 1.524764 0.497039 a_B +1.530707 0.467638 2.002734 a_B +1.502752 1.009551 0.454711 a_A +1.491680 1.508444 1.016920 a_A +1.539542 1.526470 2.000349 a_A diff --git a/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/clusters.out b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/clusters.out new file mode 100644 index 0000000..d0203b5 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/clusters.out @@ -0,0 +1,6 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 + diff --git a/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/go b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/go new file mode 100755 index 0000000..44dcdd1 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/go @@ -0,0 +1,9 @@ +#!/bin/bash +corrdump.exe -2=0.8 -clus -nop -noe -ro -l=rndstr.in +(echo 1 ; cat ../supcel.in) > sqscell.out +mcsqs -rc -n=32 +if [[ ! -e bestsqs.in ]] +then + mv bestsqs.out bestsqs.in +fi +cellcvrt.exe -uss=../supcel.in < bestsqs.in | cellcvrt.exe -ja=0.05 > bestsqs.out diff --git a/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/rndstr.in b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/rndstr.in new file mode 100644 index 0000000..bde07aa --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.75,a_B=0.25 diff --git a/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/rndstrgrp.out b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/rndstrgrp.out new file mode 100644 index 0000000..6767379 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=2_a=0.75,0.25/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.000000 0.000000 0.000000 a_A=0.750000,a_B=0.250000 diff --git a/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestcorr.out b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestcorr.out new file mode 100644 index 0000000..5602dea --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestcorr.out @@ -0,0 +1,4 @@ +2 0.707107 -0.000000 0.000000 -0.000000 +2 0.707107 -0.000000 -0.000000 -0.000000 +2 0.707107 0.000000 0.000000 0.000000 +Objective_function= Perfect_match diff --git a/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestsqs.in b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestsqs.in new file mode 100644 index 0000000..b5b976c --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestsqs.in @@ -0,0 +1,33 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.000000 1.500000 1.500000 +1.500000 -0.000000 1.500000 +1.500000 1.500000 0.000000 +3.000000 3.000000 3.000000 a_B +3.000000 2.000000 2.000000 a_B +3.000000 2.500000 2.500000 a_B +2.000000 3.000000 2.000000 a_A +2.000000 2.000000 1.000000 a_A +2.000000 2.500000 1.500000 a_A +2.500000 3.000000 2.500000 a_C +2.500000 2.000000 1.500000 a_C +2.500000 2.500000 2.000000 a_A +2.000000 2.000000 3.000000 a_A +2.000000 1.000000 2.000000 a_B +2.000000 1.500000 2.500000 a_C +1.000000 2.000000 2.000000 a_A +1.000000 1.000000 1.000000 a_C +1.000000 1.500000 1.500000 a_B +1.500000 2.000000 2.500000 a_A +1.500000 1.000000 1.500000 a_B +1.500000 1.500000 2.000000 a_C +2.500000 2.500000 3.000000 a_B +2.500000 1.500000 2.000000 a_C +2.500000 2.000000 2.500000 a_B +1.500000 2.500000 2.000000 a_C +1.500000 1.500000 1.000000 a_C +1.500000 2.000000 1.500000 a_A +2.000000 2.500000 2.500000 a_B +2.000000 1.500000 1.500000 a_C +2.000000 2.000000 2.000000 a_A diff --git a/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestsqs.out b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestsqs.out new file mode 100644 index 0000000..c711dfc --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/bestsqs.out @@ -0,0 +1,33 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 1.500000 1.500000 +1.500000 0.000000 1.500000 +1.500000 1.500000 0.000000 +3.042010 2.997559 2.989308 a_B +2.974936 2.028741 2.027164 a_B +2.987637 2.540582 2.475980 a_B +1.968715 2.998421 2.007191 a_A +1.960516 1.969576 1.003351 a_A +2.020864 2.462274 1.483081 a_A +2.499471 3.034237 2.494772 a_C +2.510102 1.957668 1.485595 a_C +2.522507 2.493199 2.007172 a_A +1.984325 2.027761 2.994473 a_A +1.967626 1.036082 1.992144 a_B +2.025477 1.504867 2.535114 a_C +0.992766 1.975668 1.988620 a_A +1.017680 1.000204 1.046459 a_C +1.013811 1.490751 1.483051 a_B +1.474609 2.013345 2.536964 a_A +1.542870 1.012389 1.517293 a_B +1.514222 1.537173 1.973186 a_C +2.484797 2.456946 2.986695 a_B +2.452829 1.490099 1.993307 a_C +2.477525 2.035071 2.478016 a_B +1.537877 2.470754 2.002365 a_C +1.507609 1.498978 0.973863 a_C +1.501245 2.017420 1.475910 a_A +1.996732 2.492820 2.485918 a_B +2.010876 1.534513 1.485549 a_C +1.993467 2.011489 1.960917 a_A diff --git a/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/clusters.out b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/clusters.out new file mode 100644 index 0000000..0eaf36d --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/clusters.out @@ -0,0 +1,18 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 0 + +12 +0.70711 +2 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 + diff --git a/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/go b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/go new file mode 100755 index 0000000..5889e7f --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/go @@ -0,0 +1,9 @@ +#!/bin/bash +corrdump.exe -2=0.8 -clus -nop -noe -ro -l=rndstr.in +(echo 1 ; cat supcel.in) > sqscell.out +mcsqs -rc -n=27 +if [[ ! -e bestsqs.in ]] +then + mv bestsqs.out bestsqs.in +fi +cat bestsqs.in | cellcvrt.exe -ja=0.05 > bestsqs.out diff --git a/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstr.in b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstr.in new file mode 100644 index 0000000..497766e --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.33333,a_B=0.33333,a_C=0.33333 diff --git a/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstr.in.org b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstr.in.org new file mode 100644 index 0000000..497766e --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstr.in.org @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.33333,a_B=0.33333,a_C=0.33333 diff --git a/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstrgrp.out b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstrgrp.out new file mode 100644 index 0000000..b172599 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.000000 0.000000 0.000000 a_A=0.333330,a_B=0.333330,a_C=0.333330 diff --git a/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/supcel.in b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/supcel.in new file mode 100644 index 0000000..2e7f1f7 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=3_a=0.33333,0.33333,0.33333/supcel.in @@ -0,0 +1,3 @@ +0 1.5 1.5 +1.5 0 1.5 +1.5 1.5 0 diff --git a/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/bestcorr.out b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/bestcorr.out new file mode 100644 index 0000000..9eb0058 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/bestcorr.out @@ -0,0 +1,4 @@ +2 0.707107 0.062500 0.062500 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +Objective_function= Perfect_match diff --git a/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/bestsqs.in b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/bestsqs.in new file mode 100644 index 0000000..e6d904d --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/bestsqs.in @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +2.000000 0.000000 0.000000 +-0.000000 2.000000 0.000000 +-0.000000 -0.000000 2.000000 +2.000000 2.000000 1.000000 a_B +2.000000 0.500000 1.500000 a_C +0.500000 2.000000 1.500000 a_A +2.000000 2.000000 2.000000 a_B +2.000000 0.500000 0.500000 a_A +2.000000 1.000000 1.000000 a_C +2.000000 1.500000 1.500000 a_B +0.500000 2.000000 0.500000 a_A +0.500000 0.500000 1.000000 a_C +0.500000 1.000000 1.500000 a_C +1.000000 2.000000 1.000000 a_B +1.000000 0.500000 1.500000 a_A +1.500000 2.000000 1.500000 a_A +2.000000 1.000000 2.000000 a_A +2.000000 1.500000 0.500000 a_B +0.500000 0.500000 2.000000 a_A +0.500000 1.000000 0.500000 a_A +0.500000 1.500000 1.000000 a_C +1.000000 2.000000 2.000000 a_A +1.000000 0.500000 0.500000 a_C +1.000000 1.000000 1.000000 a_A +1.000000 1.500000 1.500000 a_B +1.500000 2.000000 0.500000 a_A +1.500000 0.500000 1.000000 a_A +1.500000 1.000000 1.500000 a_A +0.500000 1.500000 2.000000 a_C +1.000000 1.000000 2.000000 a_A +1.000000 1.500000 0.500000 a_C +1.500000 0.500000 2.000000 a_A +1.500000 1.000000 0.500000 a_B +1.500000 1.500000 1.000000 a_B +1.500000 1.500000 2.000000 a_A diff --git a/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/bestsqs.out b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/bestsqs.out new file mode 100644 index 0000000..b2ea984 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +2.000000 0.000000 0.000000 +0.000000 2.000000 0.000000 +0.000000 0.000000 2.000000 +1.959347 1.995125 0.982595 a_B +1.988814 0.510931 1.516577 a_C +0.505579 1.965037 1.488567 a_A +1.988057 2.029203 1.976306 a_B +2.027689 0.462551 0.517720 a_A +1.990046 0.964171 0.984424 a_C +1.980122 1.457667 1.511249 a_B +0.484147 2.042385 0.500533 a_A +0.497359 0.499468 1.002414 a_C +0.515628 0.971951 1.477423 a_C +0.977656 2.000944 0.982701 a_B +1.016248 0.541531 1.491113 a_A +1.521899 1.979316 1.484070 a_A +2.021998 1.003705 1.989589 a_A +1.966412 1.467772 0.514695 a_B +0.508735 0.536780 1.996057 a_A +0.508954 1.009719 0.528354 a_A +0.535625 1.507248 0.968293 a_C +0.985811 2.016369 1.978149 a_A +0.996637 0.468219 0.501184 a_C +1.016451 0.994958 0.954535 a_A +0.971812 1.468797 1.508236 a_B +1.470619 1.977871 0.505942 a_A +1.486062 0.486417 0.977145 a_A +1.458511 0.990724 1.515234 a_A +0.514908 1.513136 1.987793 a_C +1.022373 1.024123 1.966969 a_A +0.998093 1.515257 0.518031 a_C +1.499898 0.505968 1.992755 a_A +1.507540 0.971844 0.530998 a_B +1.496389 1.472705 0.962070 a_B +1.455248 1.492657 1.985245 a_A diff --git a/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/clusters.out b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/clusters.out new file mode 100644 index 0000000..0eaf36d --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/clusters.out @@ -0,0 +1,18 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 1 0 +0.50000 1.00000 0.50000 1 0 + +12 +0.70711 +2 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 1 1 +0.50000 1.00000 0.50000 1 1 + diff --git a/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/go b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/go new file mode 100755 index 0000000..44dcdd1 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/go @@ -0,0 +1,9 @@ +#!/bin/bash +corrdump.exe -2=0.8 -clus -nop -noe -ro -l=rndstr.in +(echo 1 ; cat ../supcel.in) > sqscell.out +mcsqs -rc -n=32 +if [[ ! -e bestsqs.in ]] +then + mv bestsqs.out bestsqs.in +fi +cellcvrt.exe -uss=../supcel.in < bestsqs.in | cellcvrt.exe -ja=0.05 > bestsqs.out diff --git a/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/rndstr.in b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/rndstr.in new file mode 100644 index 0000000..3dc6a51 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/rndstr.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.5,a_B=0.25,a_C=0.25 diff --git a/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/rndstrgrp.out b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/rndstrgrp.out new file mode 100644 index 0000000..d889d41 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsdb_lev=4_a=0.5,0.25,0.25/rndstrgrp.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.250000,a_C=0.250000 diff --git a/data/sqsdb/LIQUID/sqsgen.in b/data/sqsdb/LIQUID/sqsgen.in new file mode 100644 index 0000000..3925c41 --- /dev/null +++ b/data/sqsdb/LIQUID/sqsgen.in @@ -0,0 +1,5 @@ +level=0 a=1 +level=1 a=0.5,0.5 +level=2 a=0.75,0.25 +level=3 a=0.33333,0.33333,0.33333 +level=4 a=0.5,0.25,0.25 diff --git a/data/sqsdb/LIQUID/supcel.in b/data/sqsdb/LIQUID/supcel.in new file mode 100644 index 0000000..a6249ff --- /dev/null +++ b/data/sqsdb/LIQUID/supcel.in @@ -0,0 +1,3 @@ +2 0 0 +0 2 0 +0 0 2 diff --git a/data/sqsdb/MGCU2_C15/rndstr.skel b/data/sqsdb/MGCU2_C15/rndstr.skel new file mode 100644 index 0000000..99336bd --- /dev/null +++ b/data/sqsdb/MGCU2_C15/rndstr.skel @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.125 0.125 0.125 c +0.875 0.375 0.625 c +0.375 0.625 0.875 c +0.625 0.875 0.375 c + +0.5 0.5 0.5 b +0.25 0.75 0.25 b diff --git a/data/sqsdb/MGCU2_C15/rndstr.skel.sspp b/data/sqsdb/MGCU2_C15/rndstr.skel.sspp new file mode 100644 index 0000000..6963678 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/rndstr.skel.sspp @@ -0,0 +1,13 @@ +#const a=1; +{a} {a} {a} {90} {90} {90} +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +#const c="c"; +{1/8} {1/8} {1/8} {c} +{7/8} {3/8} {5/8} {c} +{3/8} {5/8} {7/8} {c} +{5/8} {7/8} {3/8} {c} +#const b="b"; +{1/2} {1/2} {1/2} {b} +{1/4} {3/4} {1/4} {b} diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=0_b=1_c=1/bestsqs.out b/data/sqsdb/MGCU2_C15/sqsdb_lev=0_b=1_c=1/bestsqs.out new file mode 100644 index 0000000..a15f95f --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=0_b=1_c=1/bestsqs.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 +0.125000 0.125000 0.125000 c_A +0.875000 0.375000 0.625000 c_A +0.375000 0.625000 0.875000 c_A +0.625000 0.875000 0.375000 c_A +0.500000 0.500000 0.500000 b_A +0.250000 0.750000 0.250000 b_A diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=0_b=1_c=1/rndstr.in b/data/sqsdb/MGCU2_C15/sqsdb_lev=0_b=1_c=1/rndstr.in new file mode 100644 index 0000000..e260ecf --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=0_b=1_c=1/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.125 0.125 0.125 c_A=1 +0.875 0.375 0.625 c_A=1 +0.375 0.625 0.875 c_A=1 +0.625 0.875 0.375 c_A=1 + +0.5 0.5 0.5 b_A=1 +0.25 0.75 0.25 b_A=1 diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/bestcorr.out b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/bestcorr.out new file mode 100644 index 0000000..1882e10 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/bestcorr.out @@ -0,0 +1,28 @@ +2 0.433013 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.829156 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.089725 -0.166667 0.000000 -0.166667 +2 1.224745 0.041667 0.000000 0.041667 +2 1.299038 -0.250000 0.000000 -0.250000 +2 1.299038 -0.250000 0.000000 -0.250000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.250000 0.000000 0.250000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.829156 -0.083333 0.000000 -0.083333 +4 0.829156 0.250000 0.000000 0.250000 +4 0.829156 -0.083333 0.000000 -0.083333 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 -0.166667 0.000000 -0.166667 +4 0.829156 0.333333 0.000000 0.333333 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.083333 0.000000 0.083333 +Objective_function= -24.671397 diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/bestsqs.out b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/bestsqs.out new file mode 100644 index 0000000..5ac45eb --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 1.000000 -0.500000 +-0.500000 0.000000 -0.500000 +-1.500000 1.000000 1.500000 +-0.750000 1.250000 -0.250000 b_B +-1.250000 0.750000 0.750000 b_A +-1.250000 1.250000 0.250000 b_B +-0.750000 0.250000 -0.250000 b_B +-0.750000 0.750000 0.250000 b_A +-1.250000 1.750000 0.750000 b_B +-1.750000 1.250000 0.750000 b_A +-0.250000 0.750000 -0.250000 b_B +-1.000000 1.000000 0.500000 b_A +-1.500000 1.500000 0.500000 b_A +-1.500000 1.000000 1.000000 b_A +-0.500000 1.000000 -0.000000 b_A +-1.000000 1.500000 0.000000 b_B +-0.500000 0.500000 -0.500000 b_A +0.000000 1.000000 -0.500000 b_B +-1.000000 0.500000 0.000000 b_B +-0.875000 0.625000 0.625000 c_A +-1.375000 1.125000 0.625000 c_A +-0.875000 1.625000 0.625000 c_A +-0.375000 0.625000 0.125000 c_A +-0.875000 1.125000 0.125000 c_A +-0.375000 0.125000 -0.375000 c_A +0.125000 0.625000 -0.375000 c_A +-0.375000 1.125000 -0.375000 c_A +-1.125000 0.875000 0.125000 c_A +-1.125000 1.375000 0.625000 c_A +-1.625000 0.875000 0.625000 c_A +-0.625000 0.875000 -0.375000 c_A +-0.625000 1.375000 0.125000 c_A +-0.125000 0.375000 -0.375000 c_A +-0.125000 0.875000 -0.875000 c_A +-0.625000 0.375000 0.125000 c_A +-1.125000 1.125000 0.875000 c_A +-0.125000 0.625000 -0.625000 c_A +-0.125000 0.125000 -0.125000 c_A +-0.625000 1.125000 0.375000 c_A +-1.125000 1.625000 0.375000 c_A +-0.625000 0.625000 -0.125000 c_A +-0.125000 1.125000 -0.125000 c_A +-1.125000 0.625000 0.375000 c_A +-0.875000 1.375000 0.375000 c_A +-1.375000 1.875000 0.375000 c_A +-1.375000 1.375000 0.875000 c_A +-0.375000 1.375000 -0.125000 c_A +-1.375000 0.875000 0.375000 c_A +-0.375000 0.875000 -0.625000 c_A +-0.375000 0.375000 -0.125000 c_A +-0.875000 0.875000 -0.125000 c_A diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/clusters.out b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/clusters.out new file mode 100644 index 0000000..6e1c97f --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/clusters.out @@ -0,0 +1,192 @@ +4 +0.43301 +2 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 + +12 +0.70711 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +12 +0.82916 +2 +0.50000 0.50000 0.50000 0 0 +-0.25000 0.25000 0.25000 0 0 + +6 +1.00000 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 + +12 +1.08972 +2 +0.50000 0.50000 0.50000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +24 +1.22474 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.25000 1.25000 0 0 + +4 +1.29904 +2 +0.50000 0.50000 0.50000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +12 +1.29904 +2 +0.50000 0.50000 0.50000 0 0 +-0.75000 0.25000 0.75000 0 0 + +12 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +48 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.25000 0.25000 0.25000 0 0 + +12 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.00000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +1.00000 +3 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +1.00000 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 +-0.25000 0.75000 0.75000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 1.25000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.75000 0.25000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.25000 0.25000 0.25000 0 0 + +48 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.75000 0.25000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.25000 0.25000 0.25000 0 0 + +8 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.25000 0.25000 0.25000 0 0 + +12 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.75000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +0.25000 -0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 +-0.25000 0.25000 0.25000 0 0 + diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/go b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/go new file mode 100755 index 0000000..4c36026 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.3 -3=1 -4=0.83 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/job.in b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/job.in new file mode 100755 index 0000000..59d202e --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C15_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/rndstr.in b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/rndstr.in new file mode 100644 index 0000000..345b6a2 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.125 0.125 0.125 c_A=1 +0.875 0.375 0.625 c_A=1 +0.375 0.625 0.875 c_A=1 +0.625 0.875 0.375 c_A=1 + +0.5 0.5 0.5 b_A=0.5,b_B=0.5 +0.25 0.75 0.25 b_A=0.5,b_B=0.5 diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/rndstrgrp.out b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/rndstrgrp.out new file mode 100644 index 0000000..57ee270 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +-0.250000 -0.250000 -0.250000 b_A=0.500000,b_B=0.500000 +0.500000 0.500000 0.500000 b_A=0.500000,b_B=0.500000 + +0.125000 0.125000 0.125000 c_A=1.000000 +0.875000 0.375000 0.625000 c_A=1.000000 +0.375000 0.625000 0.875000 c_A=1.000000 +0.625000 0.875000 0.375000 c_A=1.000000 diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/sqsparam.in b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/sqsparam.in new file mode 100644 index 0000000..7fbfccf --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=0.5,0.5_c=1/sqsparam.in @@ -0,0 +1 @@ +1 3 0 5 diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..154627b --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,20 @@ +2 0.353553 0.000000 0.000000 0.000000 +2 0.612372 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.790569 0.000000 0.000000 0.000000 +2 0.935414 0.000000 0.000000 0.000000 +2 1.000000 0.583333 0.000000 0.583333 +3 0.353553 0.000000 0.000000 0.000000 +3 0.612372 0.000000 0.000000 0.000000 +3 0.612372 0.000000 0.000000 0.000000 +3 0.612372 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +4 0.353553 0.000000 0.000000 0.000000 +4 0.612372 0.000000 0.000000 0.000000 +Objective_function= -303.734446 diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..0386dd2 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.500000 -0.500000 -2.000000 +0.500000 0.500000 -2.000000 +0.500000 -0.500000 2.000000 +0.125000 -0.375000 -0.375000 c_B +0.125000 -0.875000 0.125000 c_A +0.125000 -0.375000 -1.375000 c_B +0.625000 -0.375000 1.125000 c_A +0.125000 -0.375000 -2.375000 c_B +0.625000 -0.375000 0.125000 c_A +0.625000 0.125000 -1.375000 c_B +0.625000 -0.375000 -0.875000 c_A +0.125000 -0.625000 0.375000 c_B +0.125000 -0.125000 -3.125000 c_B +0.125000 -0.625000 -0.625000 c_A +0.125000 -0.125000 -0.125000 c_A +0.625000 -0.125000 0.375000 c_B +0.125000 -0.125000 -1.125000 c_B +0.625000 -0.125000 -0.625000 c_A +0.125000 -0.125000 -2.125000 c_A +0.375000 -0.125000 -2.375000 c_A +0.875000 -0.125000 0.125000 c_B +-0.125000 -0.625000 -1.375000 c_A +0.375000 -0.625000 1.125000 c_A +0.375000 -0.125000 -0.375000 c_B +0.375000 -0.625000 0.125000 c_A +0.375000 -0.125000 -1.375000 c_B +0.375000 -0.625000 -0.875000 c_B +0.375000 0.125000 -1.625000 c_A +0.375000 -0.375000 -1.125000 c_B +-0.125000 -0.375000 -0.625000 c_B +0.375000 -0.375000 -2.125000 c_A +-0.125000 -0.375000 -1.625000 c_A +0.375000 -0.375000 0.875000 c_B +0.375000 0.125000 -0.625000 c_B +0.375000 -0.375000 -0.125000 c_A +-0.000000 -0.500000 -2.000000 b_A +0.500000 -0.500000 0.500000 b_A +0.500000 0.000000 -1.000000 b_A +0.500000 -0.500000 -0.500000 b_A +0.500000 0.000000 -2.000000 b_A +0.500000 -0.500000 -1.500000 b_A +-0.000000 -0.500000 -1.000000 b_A +0.500000 -0.500000 1.500000 b_A +0.250000 -0.750000 -0.250000 b_A +0.250000 -0.250000 0.250000 b_A +0.750000 -0.250000 0.750000 b_A +0.250000 -0.250000 -0.750000 b_A +0.750000 -0.250000 -0.250000 b_A +0.250000 -0.250000 -1.750000 b_A +0.250000 -0.750000 0.750000 b_A +0.250000 -0.250000 -2.750000 b_A diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/clusters.out b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..ecb86cf --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/clusters.out @@ -0,0 +1,128 @@ +12 +0.35355 +2 +0.37500 0.12500 0.37500 0 0 +0.62500 -0.12500 0.37500 0 0 + +24 +0.61237 +2 +0.37500 0.12500 0.37500 0 0 +0.12500 -0.37500 0.62500 0 0 + +12 +0.70711 +2 +0.12500 0.37500 0.37500 0 0 +-0.37500 0.37500 0.87500 0 0 + +12 +0.70711 +2 +0.37500 0.12500 0.37500 0 0 +-0.12500 0.12500 0.87500 0 0 + +24 +0.79057 +2 +0.12500 0.37500 0.37500 0 0 +0.37500 1.12500 0.37500 0 0 + +48 +0.93541 +2 +0.12500 0.37500 0.37500 0 0 +-0.12500 1.12500 0.87500 0 0 + +12 +1.00000 +2 +0.37500 0.12500 0.37500 0 0 +0.37500 1.12500 0.37500 0 0 + +8 +0.35355 +3 +0.12500 0.37500 0.37500 0 0 +0.12500 0.62500 0.62500 0 0 +-0.12500 0.62500 0.37500 0 0 + +24 +0.61237 +3 +0.37500 0.12500 0.37500 0 0 +0.62500 -0.12500 0.37500 0 0 +0.12500 -0.37500 0.62500 0 0 + +24 +0.61237 +3 +0.37500 0.12500 0.37500 0 0 +0.37500 -0.12500 0.62500 0 0 +0.12500 -0.37500 0.62500 0 0 + +8 +0.61237 +3 +0.37500 0.12500 0.37500 0 0 +-0.12500 -0.12500 0.12500 0 0 +0.12500 -0.37500 0.62500 0 0 + +48 +0.70711 +3 +0.12500 0.37500 0.37500 0 0 +-0.12500 0.62500 0.37500 0 0 +-0.37500 0.37500 0.87500 0 0 + +12 +0.70711 +3 +0.12500 0.37500 0.37500 0 0 +-0.12500 0.37500 0.62500 0 0 +-0.37500 0.37500 0.87500 0 0 + +24 +0.70711 +3 +0.12500 0.37500 0.37500 0 0 +0.12500 -0.12500 0.87500 0 0 +-0.37500 0.37500 0.87500 0 0 + +48 +0.70711 +3 +0.37500 0.12500 0.37500 0 0 +0.37500 -0.12500 0.62500 0 0 +-0.12500 0.12500 0.87500 0 0 + +24 +0.70711 +3 +0.37500 0.12500 0.37500 0 0 +0.12500 -0.37500 0.62500 0 0 +-0.12500 0.12500 0.87500 0 0 + +8 +0.70711 +3 +0.37500 0.12500 0.37500 0 0 +-0.12500 -0.37500 0.37500 0 0 +-0.12500 0.12500 0.87500 0 0 + +2 +0.35355 +4 +0.12500 0.37500 0.37500 0 0 +-0.12500 0.37500 0.62500 0 0 +0.12500 0.62500 0.62500 0 0 +-0.12500 0.62500 0.37500 0 0 + +24 +0.61237 +4 +0.37500 0.12500 0.37500 0 0 +0.37500 -0.12500 0.62500 0 0 +0.62500 -0.12500 0.37500 0 0 +0.12500 -0.37500 0.62500 0 0 + diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/go b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/go new file mode 100755 index 0000000..9f36122 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1 -3=0.71 -4=0.7 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/job.in b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/job.in new file mode 100755 index 0000000..59d202e --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C15_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/rndstr.in b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..725db69 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.125 0.125 0.125 c_A=0.5,c_B=0.5 +0.875 0.375 0.625 c_A=0.5,c_B=0.5 +0.375 0.625 0.875 c_A=0.5,c_B=0.5 +0.625 0.875 0.375 c_A=0.5,c_B=0.5 + +0.5 0.5 0.5 b_A=1 +0.25 0.75 0.25 b_A=1 diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..bef1277 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.125000 0.125000 0.125000 c_A=0.500000,c_B=0.500000 +0.125000 0.875000 0.875000 c_A=0.500000,c_B=0.500000 +0.875000 0.875000 0.125000 c_A=0.500000,c_B=0.500000 +0.875000 0.125000 0.875000 c_A=0.500000,c_B=0.500000 + +0.500000 0.500000 0.500000 b_A=1.000000 +0.250000 0.750000 0.250000 b_A=1.000000 diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/sqsparam.in b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..02d74b3 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=1_b=1_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 10 1 5 diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/bestcorr.out b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..403c73f --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/bestcorr.out @@ -0,0 +1,28 @@ +2 0.353553 0.000000 0.000000 0.000000 +2 0.414578 0.000000 0.000000 0.000000 +2 0.433013 0.000000 0.000000 0.000000 +2 0.612372 0.000000 0.000000 0.000000 +2 0.649519 0.000000 0.000000 0.000000 +2 0.649519 0.000000 0.000000 0.000000 +2 0.707107 -0.333333 0.000000 -0.333333 +2 0.707107 -0.166667 0.000000 -0.166667 +2 0.707107 -0.166667 0.000000 -0.166667 +2 0.790569 -0.041667 0.000000 -0.041667 +2 0.819680 0.000000 0.000000 0.000000 +2 0.829156 0.000000 0.000000 0.000000 +3 0.353553 0.000000 0.000000 0.000000 +3 0.414578 0.000000 0.000000 0.000000 +3 0.414578 0.000000 0.000000 0.000000 +3 0.433013 0.000000 0.000000 0.000000 +3 0.612372 0.000000 0.000000 0.000000 +3 0.612372 -0.041667 0.000000 -0.041667 +3 0.612372 -0.041667 0.000000 -0.041667 +3 0.612372 0.125000 0.000000 0.125000 +4 0.353553 0.000000 0.000000 0.000000 +4 0.414578 0.000000 0.000000 0.000000 +4 0.612372 0.000000 0.000000 0.000000 +4 0.612372 0.000000 0.000000 0.000000 +4 0.612372 0.000000 0.000000 0.000000 +4 0.612372 0.083333 0.000000 0.083333 +4 0.612372 0.000000 0.000000 0.000000 +Objective_function= -577.557066 diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/bestsqs.out b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..4ad13dd --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 0.000000 -1.000000 +0.000000 -1.000000 -1.000000 +-1.000000 -1.000000 0.000000 +-0.875000 -0.875000 -0.875000 c_A +-0.875000 -1.375000 -1.375000 c_B +-1.375000 -0.875000 -1.375000 c_B +-1.375000 -1.375000 -1.875000 c_A +-1.375000 -1.375000 -0.875000 c_A +-1.375000 -1.875000 -1.375000 c_B +-1.875000 -1.375000 -1.375000 c_A +-1.875000 -1.875000 -1.875000 c_A +-0.875000 -1.125000 -1.125000 c_A +-0.875000 -0.625000 -0.625000 c_B +-1.375000 -1.125000 -1.625000 c_A +-1.375000 -0.625000 -1.125000 c_A +-1.375000 -1.625000 -1.125000 c_B +-1.375000 -1.125000 -0.625000 c_B +-1.875000 -1.625000 -1.625000 c_A +-1.875000 -1.125000 -1.125000 c_B +-1.125000 -1.125000 -0.875000 c_B +-1.125000 -1.625000 -1.375000 c_A +-1.625000 -1.125000 -1.375000 c_B +-1.625000 -1.625000 -1.875000 c_A +-0.625000 -0.625000 -0.875000 c_A +-0.625000 -1.125000 -1.375000 c_B +-1.125000 -0.625000 -1.375000 c_A +-1.125000 -1.125000 -1.875000 c_B +-1.125000 -0.875000 -1.125000 c_A +-1.125000 -1.375000 -1.625000 c_B +-0.625000 -0.875000 -0.625000 c_B +-0.625000 -1.375000 -1.125000 c_B +-1.625000 -1.375000 -1.125000 c_B +-1.625000 -1.875000 -1.625000 c_B +-1.125000 -1.375000 -0.625000 c_A +-1.125000 -1.875000 -1.125000 c_A +-0.500000 -0.500000 -0.500000 b_A +-0.500000 -1.000000 -1.000000 b_B +-1.000000 -0.500000 -1.000000 b_A +-1.000000 -1.000000 -1.500000 b_B +-1.000000 -1.000000 -0.500000 b_B +-1.000000 -1.500000 -1.000000 b_A +-1.500000 -1.000000 -1.000000 b_B +-1.500000 -1.500000 -1.500000 b_A +-0.750000 -0.250000 -0.750000 b_A +-0.750000 -0.750000 -1.250000 b_B +-0.250000 -0.250000 -0.250000 b_A +-0.250000 -0.750000 -0.750000 b_B +-1.250000 -0.750000 -0.750000 b_B +-1.250000 -1.250000 -1.250000 b_A +-0.750000 -0.750000 -0.250000 b_B +-0.750000 -1.250000 -0.750000 b_A diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/clusters.out b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..a285b4a --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/clusters.out @@ -0,0 +1,184 @@ +12 +0.35355 +2 +0.37500 0.12500 0.37500 0 0 +0.62500 -0.12500 0.37500 0 0 + +24 +0.41458 +2 +0.75000 0.75000 0.75000 0 0 +0.87500 1.12500 0.87500 0 0 + +4 +0.43301 +2 +0.50000 0.50000 0.50000 0 0 +0.75000 0.25000 0.25000 0 0 + +24 +0.61237 +2 +0.37500 0.12500 0.37500 0 0 +0.12500 -0.37500 0.62500 0 0 + +24 +0.64952 +2 +0.50000 0.50000 0.50000 0 0 +0.37500 1.12500 0.37500 0 0 + +8 +0.64952 +2 +0.75000 0.75000 0.75000 0 0 +0.37500 1.12500 0.37500 0 0 + +12 +0.70711 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +12 +0.70711 +2 +0.12500 0.37500 0.37500 0 0 +-0.37500 0.37500 0.87500 0 0 + +12 +0.70711 +2 +0.37500 0.12500 0.37500 0 0 +-0.12500 0.12500 0.87500 0 0 + +24 +0.79057 +2 +0.12500 0.37500 0.37500 0 0 +0.37500 1.12500 0.37500 0 0 + +24 +0.81968 +2 +0.75000 0.75000 0.75000 0 0 +0.37500 1.12500 1.37500 0 0 + +12 +0.82916 +2 +0.50000 0.50000 0.50000 0 0 +-0.25000 0.25000 0.25000 0 0 + +8 +0.35355 +3 +0.12500 0.37500 0.37500 0 0 +0.12500 0.62500 0.62500 0 0 +-0.12500 0.62500 0.37500 0 0 + +12 +0.41458 +3 +0.37500 0.37500 0.12500 0 0 +0.37500 0.62500 -0.12500 0 0 +-0.00000 0.50000 0.00000 0 0 + +24 +0.41458 +3 +0.37500 0.37500 0.12500 0 0 +0.12500 0.12500 0.12500 0 0 +-0.00000 0.50000 0.00000 0 0 + +24 +0.43301 +3 +0.50000 0.50000 0.50000 0 0 +0.87500 0.37500 0.62500 0 0 +0.75000 0.25000 0.25000 0 0 + +24 +0.61237 +3 +0.37500 0.12500 0.37500 0 0 +0.62500 -0.12500 0.37500 0 0 +0.12500 -0.37500 0.62500 0 0 + +24 +0.61237 +3 +0.37500 0.12500 0.37500 0 0 +0.37500 -0.12500 0.62500 0 0 +0.12500 -0.37500 0.62500 0 0 + +48 +0.61237 +3 +0.37500 0.12500 0.37500 0 0 +0.25000 -0.25000 0.25000 0 0 +0.12500 -0.37500 0.62500 0 0 + +8 +0.61237 +3 +0.37500 0.12500 0.37500 0 0 +-0.12500 -0.12500 0.12500 0 0 +0.12500 -0.37500 0.62500 0 0 + +2 +0.35355 +4 +0.12500 0.37500 0.37500 0 0 +-0.12500 0.37500 0.62500 0 0 +0.12500 0.62500 0.62500 0 0 +-0.12500 0.62500 0.37500 0 0 + +8 +0.41458 +4 +0.37500 0.37500 0.12500 0 0 +0.12500 0.37500 0.37500 0 0 +0.12500 0.12500 0.12500 0 0 +-0.00000 0.50000 0.00000 0 0 + +24 +0.61237 +4 +0.37500 0.12500 0.37500 0 0 +0.37500 -0.12500 0.62500 0 0 +0.62500 -0.12500 0.37500 0 0 +0.12500 -0.37500 0.62500 0 0 + +24 +0.61237 +4 +0.37500 0.12500 0.37500 0 0 +0.62500 -0.12500 0.37500 0 0 +0.25000 -0.25000 0.25000 0 0 +0.12500 -0.37500 0.62500 0 0 + +48 +0.61237 +4 +0.37500 0.12500 0.37500 0 0 +0.37500 -0.12500 0.62500 0 0 +0.25000 -0.25000 0.25000 0 0 +0.12500 -0.37500 0.62500 0 0 + +24 +0.61237 +4 +0.37500 0.12500 0.37500 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.25000 -0.25000 0.25000 0 0 +0.12500 -0.37500 0.62500 0 0 + +16 +0.61237 +4 +0.37500 0.12500 0.37500 0 0 +0.25000 -0.25000 0.25000 0 0 +-0.12500 -0.12500 0.12500 0 0 +0.12500 -0.37500 0.62500 0 0 + diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/go b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/go new file mode 100755 index 0000000..8cd8f47 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=0.85 -3=0.63 -4=0.63 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/job.in b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/job.in new file mode 100755 index 0000000..222dc0f --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C15_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/rndstr.in b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..5284f62 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.125 0.125 0.125 c_A=0.5,c_B=0.5 +0.875 0.375 0.625 c_A=0.5,c_B=0.5 +0.375 0.625 0.875 c_A=0.5,c_B=0.5 +0.625 0.875 0.375 c_A=0.5,c_B=0.5 + +0.5 0.5 0.5 b_A=0.5,b_B=0.5 +0.25 0.75 0.25 b_A=0.5,b_B=0.5 diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..2bf81a9 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.125000 0.125000 0.125000 c_A=0.500000,c_B=0.500000 +0.125000 0.875000 0.875000 c_A=0.500000,c_B=0.500000 +0.875000 0.875000 0.125000 c_A=0.500000,c_B=0.500000 +0.875000 0.125000 0.875000 c_A=0.500000,c_B=0.500000 + +0.500000 0.500000 0.500000 b_A=0.500000,b_B=0.500000 +0.250000 0.750000 0.250000 b_A=0.500000,b_B=0.500000 diff --git a/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/sqsparam.in b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..9f86470 --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsdb_lev=2_b=0.5,0.5_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +3 10 3 8 diff --git a/data/sqsdb/MGCU2_C15/sqsgen.in b/data/sqsdb/MGCU2_C15/sqsgen.in new file mode 100644 index 0000000..cbad64a --- /dev/null +++ b/data/sqsdb/MGCU2_C15/sqsgen.in @@ -0,0 +1,4 @@ +level=0 b=1 c=1 +level=1 b=0.5,0.5 c=1 +level=1 b=1 c=0.5,0.5 +level=2 b=0.5,0.5 c=0.5,0.5 diff --git a/data/sqsdb/NIAS_D81/rndstr.skel b/data/sqsdb/NIAS_D81/rndstr.skel new file mode 100644 index 0000000..dd3617d --- /dev/null +++ b/data/sqsdb/NIAS_D81/rndstr.skel @@ -0,0 +1,11 @@ + +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.25 c +0.666667 0.333333 0.75 c + +0 0 0 a +0 0 0.5 a diff --git a/data/sqsdb/NIAS_D81/rndstr.skel.sspp b/data/sqsdb/NIAS_D81/rndstr.skel.sspp new file mode 100644 index 0000000..a892c44 --- /dev/null +++ b/data/sqsdb/NIAS_D81/rndstr.skel.sspp @@ -0,0 +1,11 @@ +#const a=1; c=1.63299; +{a} {a} {c} {90} {90} {120} +1 0 0 +0 1 0 +0 0 1 +#const c="c"; +{1/3} {2/3} {1/4} {c} +{2/3} {1/3} {3/4} {c} +#const a="a"; +{0} {0} {0} {a} +{0} {0} {1/2} {a} diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=0_a=1_c=1/bestsqs.out b/data/sqsdb/NIAS_D81/sqsdb_lev=0_a=1_c=1/bestsqs.out new file mode 100644 index 0000000..047dd1d --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=0_a=1_c=1/bestsqs.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.333333 0.666667 0.250000 c_A +0.666667 0.333333 0.750000 c_A +0.000000 0.000000 0.000000 a_A +0.000000 0.000000 0.500000 a_A diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=0_a=1_c=1/rndstr.in b/data/sqsdb/NIAS_D81/sqsdb_lev=0_a=1_c=1/rndstr.in new file mode 100644 index 0000000..dcbb3cd --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=0_a=1_c=1/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.25 c_A=1 +0.666667 0.333333 0.75 c_A=1 + +0 0 0 a_A=1 +0 0 0.5 a_A=1 diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out new file mode 100644 index 0000000..39d968e --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out @@ -0,0 +1,21 @@ +2 0.816495 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.290993 0.000000 0.000000 0.000000 +2 1.632990 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.914852 0.000000 0.000000 0.000000 +2 1.914854 0.000000 0.000000 0.000000 +2 2.000000 -0.333333 0.000000 -0.333333 +3 1.000000 0.000000 0.000000 0.000000 +3 1.290993 0.000000 0.000000 0.000000 +3 1.290993 0.000000 0.000000 0.000000 +3 1.290993 0.000000 0.000000 0.000000 +3 1.632990 0.000000 0.000000 0.000000 +3 1.632990 0.000000 0.000000 0.000000 +4 1.290993 -0.333333 0.000000 -0.333333 +4 1.290993 0.000000 0.000000 0.000000 +4 1.290993 0.000000 0.000000 0.000000 +4 1.290993 0.000000 0.000000 0.000000 +4 1.290993 0.000000 0.000000 0.000000 +4 1.632990 0.000000 0.000000 0.000000 +Objective_function= -6.440914 diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out new file mode 100644 index 0000000..5215bde --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +-0.000000 -1.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-2.000000 1.000000 -1.000000 +-2.000000 -2.000000 -1.000000 a_A +-3.000000 -1.000000 -1.000000 a_A +-2.000000 -1.000000 -1.000000 a_B +-1.000000 -1.000000 -1.000000 a_B +-2.000000 0.000000 -1.000000 a_B +-3.000000 -2.000000 -1.000000 a_A +-3.000000 -1.000000 -2.000000 a_B +-4.000000 -2.000000 -2.000000 a_A +-2.000000 -2.000000 -0.500000 a_B +-3.000000 -2.000000 -1.500000 a_A +-2.000000 -1.000000 -0.500000 a_B +-1.000000 -1.000000 -0.500000 a_B +-2.000000 -1.000000 -1.500000 a_A +-1.000000 0.000000 -0.500000 a_B +-3.000000 -1.000000 -1.500000 a_A +-2.000000 -0.000000 -1.500000 a_A +-1.666667 -1.333333 -0.750000 c_A +-2.666667 -1.333333 -1.750000 c_A +-1.666667 -0.333333 -0.750000 c_A +-0.666667 -0.333333 -0.750000 c_A +-1.666667 -0.333333 -1.750000 c_A +-2.666667 -1.333333 -0.750000 c_A +-0.666667 -1.333333 -0.750000 c_A +-1.666667 -2.333333 -0.750000 c_A +-3.333333 -0.666667 -1.250000 c_A +-2.333333 -1.666667 -1.250000 c_A +-1.333333 -0.666667 -0.250000 c_A +-2.333333 0.333333 -1.250000 c_A +-1.333333 -0.666667 -1.250000 c_A +-2.333333 -1.666667 -0.250000 c_A +-2.333333 -0.666667 -1.250000 c_A +-3.333333 -1.666667 -1.250000 c_A diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out new file mode 100644 index 0000000..0bc5c91 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out @@ -0,0 +1,138 @@ +2 +0.81649 +2 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 + +6 +1.00000 +2 +1.00000 1.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 + +12 +1.29099 +2 +1.00000 1.00000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +2 +1.63299 +2 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 -0.50000 0 0 + +6 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +12 +1.91485 +2 +1.00000 1.00000 0.50000 0 0 +1.00000 -0.00000 -0.50000 0 0 + +12 +1.91485 +2 +1.00000 1.00000 0.50000 0 0 +0.00000 2.00000 0.00000 0 0 + +6 +2.00000 +2 +1.00000 1.00000 0.50000 0 0 +1.00000 3.00000 0.50000 0 0 + +4 +1.00000 +3 +1.00000 1.00000 0.50000 0 0 +2.00000 1.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 + +24 +1.29099 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +1.29099 +3 +1.00000 1.00000 0.50000 0 0 +2.00000 1.00000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +1.29099 +3 +1.00000 1.00000 0.50000 0 0 +-0.00000 0.00000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +2 +1.63299 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 1.00000 -0.50000 0 0 + +12 +1.63299 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 +1.00000 1.00000 -0.50000 0 0 + +6 +1.29099 +4 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +1.29099 +4 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +2.00000 1.00000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +1.29099 +4 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +-0.00000 0.00000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +1.29099 +4 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +2.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +1.29099 +4 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +1.63299 +4 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 +1.00000 1.00000 -0.50000 0 0 + diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/go b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/go new file mode 100755 index 0000000..57b633a --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.7 -4=1.7 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/job.in b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/job.in new file mode 100755 index 0000000..5f6c345 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D81_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in new file mode 100644 index 0000000..b53019b --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.25 c_A=1 +0.666667 0.333333 0.75 c_A=1 + +0 0 0 a_A=0.5,a_B=0.5 +0 0 0.5 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out new file mode 100644 index 0000000..465343c --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 +0.000000 0.000000 0.500000 a_A=0.500000,a_B=0.500000 + +0.333333 0.666667 0.250000 c_A=1.000000 +0.666667 0.333333 0.750000 c_A=1.000000 diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..662cd74 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,21 @@ +2 0.999995 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.414203 0.000000 0.000000 0.000000 +2 1.632990 0.000000 0.000000 0.000000 +2 1.732042 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.914852 0.000000 0.000000 0.000000 +2 2.000000 -0.333333 0.000000 -0.333333 +3 0.999995 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.414203 0.000000 0.000000 0.000000 +3 1.632990 0.000000 0.000000 0.000000 +3 1.632990 0.000000 0.000000 0.000000 +4 0.999995 0.000000 0.000000 0.000000 +4 1.414203 0.000000 0.000000 0.000000 +4 1.414203 -0.333333 0.000000 -0.333333 +4 1.414203 0.000000 0.000000 0.000000 +4 1.632990 -0.333333 0.000000 -0.333333 +4 1.632990 0.000000 0.000000 0.000000 +Objective_function= -5.342800 diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..6520af4 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +-0.000000 -1.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-2.000000 1.000000 -1.000000 +-1.666667 -1.333333 -0.750000 c_A +-2.666667 -1.333333 -1.750000 c_B +-1.666667 -0.333333 -0.750000 c_B +-0.666667 -0.333333 -0.750000 c_A +-1.666667 -0.333333 -1.750000 c_B +-2.666667 -1.333333 -0.750000 c_B +-0.666667 -1.333333 -0.750000 c_A +-1.666667 -2.333333 -0.750000 c_A +-2.333333 -1.666666 -1.250000 c_B +-3.333333 -0.666666 -1.250000 c_B +-2.333333 -0.666666 -1.250000 c_A +-1.333333 -0.666666 -1.250000 c_A +-2.333333 0.333334 -1.250000 c_A +-3.333333 -1.666666 -1.250000 c_B +-1.333333 -0.666666 -0.250000 c_A +-2.333333 -1.666666 -0.250000 c_B +-2.000000 -2.000000 -1.000000 a_A +-3.000000 -1.000000 -1.000000 a_A +-2.000000 -1.000000 -1.000000 a_A +-1.000000 -1.000000 -1.000000 a_A +-2.000000 0.000000 -1.000000 a_A +-3.000000 -2.000000 -1.000000 a_A +-3.000000 -1.000000 -2.000000 a_A +-4.000000 -2.000000 -2.000000 a_A +-2.000000 -2.000000 -0.500000 a_A +-3.000000 -2.000000 -1.500000 a_A +-2.000000 -1.000000 -0.500000 a_A +-1.000000 -1.000000 -0.500000 a_A +-2.000000 -1.000000 -1.500000 a_A +-1.000000 0.000000 -0.500000 a_A +-3.000000 -1.000000 -1.500000 a_A +-2.000000 -0.000000 -1.500000 a_A diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..3a75b09 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out @@ -0,0 +1,138 @@ +6 +1.00000 +2 +0.33333 0.66667 0.25000 0 0 +0.66667 1.33333 -0.25000 0 0 + +6 +1.00000 +2 +0.66667 0.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +6 +1.41421 +2 +0.66667 0.33333 0.75000 0 0 +1.33333 -0.33333 1.25000 0 0 + +2 +1.63299 +2 +0.66667 0.33333 0.75000 0 0 +0.66667 0.33333 -0.25000 0 0 + +12 +1.73205 +2 +0.33333 0.66667 0.25000 0 0 +0.66667 2.33333 -0.25000 0 0 + +6 +1.73205 +2 +0.33333 0.66667 0.25000 0 0 +1.33333 -0.33333 0.25000 0 0 + +12 +1.91485 +2 +0.33333 0.66667 0.25000 0 0 +0.33333 -0.33333 -0.75000 0 0 + +6 +2.00000 +2 +0.33333 0.66667 0.25000 0 0 +-1.66667 0.66667 0.25000 0 0 + +12 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +1.33333 0.66667 1.25000 0 0 +0.33333 -0.33333 1.25000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +1.66667 1.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +-0.33333 0.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +24 +1.41421 +3 +0.66667 0.33333 0.75000 0 0 +0.33333 -0.33333 1.25000 0 0 +1.33333 -0.33333 1.25000 0 0 + +6 +1.63299 +3 +0.66667 0.33333 0.75000 0 0 +1.33333 0.66667 0.25000 0 0 +0.66667 0.33333 -0.25000 0 0 + +6 +1.63299 +3 +0.66667 0.33333 0.75000 0 0 +1.33333 -0.33333 0.25000 0 0 +0.66667 0.33333 -0.25000 0 0 + +4 +1.00000 +4 +0.66667 0.33333 0.75000 0 0 +0.33333 0.66667 1.25000 0 0 +1.33333 0.66667 1.25000 0 0 +0.33333 -0.33333 1.25000 0 0 + +12 +1.41421 +4 +0.66667 0.33333 0.75000 0 0 +1.33333 0.66667 1.25000 0 0 +0.33333 -0.33333 1.25000 0 0 +1.33333 -0.33333 1.25000 0 0 + +6 +1.41421 +4 +0.66667 0.33333 0.75000 0 0 +1.66667 0.33333 0.75000 0 0 +0.33333 -0.33333 1.25000 0 0 +1.33333 -0.33333 1.25000 0 0 + +12 +1.41421 +4 +0.66667 0.33333 0.75000 0 0 +0.66667 -0.66667 0.75000 0 0 +0.33333 -0.33333 1.25000 0 0 +1.33333 -0.33333 1.25000 0 0 + +6 +1.63299 +4 +0.66667 0.33333 0.75000 0 0 +0.33333 -0.33333 0.25000 0 0 +1.33333 0.66667 0.25000 0 0 +0.66667 0.33333 -0.25000 0 0 + +12 +1.63299 +4 +0.66667 0.33333 0.75000 0 0 +1.33333 0.66667 0.25000 0 0 +1.33333 -0.33333 0.25000 0 0 +0.66667 0.33333 -0.25000 0 0 + diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/go b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/go new file mode 100755 index 0000000..57b633a --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.7 -4=1.7 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/job.in b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/job.in new file mode 100755 index 0000000..5f6c345 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D81_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..69a55b1 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.25 c_A=0.5,c_B=0.5 +0.666667 0.333333 0.75 c_A=0.5,c_B=0.5 + +0 0 0 a_A=1 +0 0 0.5 a_A=1 diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..2550db8 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.333333 0.666667 0.250000 c_A=0.500000,c_B=0.500000 +-0.333333 0.333334 -0.250000 c_A=0.500000,c_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 +0.000000 0.000000 0.500000 a_A=1.000000 diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..6894c69 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out @@ -0,0 +1,35 @@ +2 0.707102 0.000000 0.000000 0.000000 +2 0.816495 0.000000 0.000000 0.000000 +2 0.999995 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224742 0.000000 0.000000 0.000000 +2 1.290993 0.000000 0.000000 0.000000 +2 1.354002 0.000000 0.000000 0.000000 +2 1.414203 0.000000 0.000000 0.000000 +3 0.816495 0.000000 0.000000 0.000000 +3 0.999995 0.000000 0.000000 0.000000 +3 0.999995 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224742 0.000000 0.000000 0.000000 +3 1.224742 0.000000 0.000000 0.000000 +3 1.224742 0.000000 0.000000 0.000000 +3 1.224742 0.000000 0.000000 0.000000 +4 0.999995 -0.333333 0.000000 -0.333333 +4 0.999995 0.000000 0.000000 0.000000 +4 0.999995 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.224742 0.000000 0.000000 0.000000 +4 1.224742 0.000000 0.000000 0.000000 +4 1.224742 0.166667 0.000000 0.166667 +4 1.224742 0.000000 0.000000 0.000000 +4 1.224742 0.000000 0.000000 0.000000 +4 1.224742 0.000000 0.000000 0.000000 +4 1.224742 0.000000 0.000000 0.000000 +Objective_function= -515.150792 diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..d6da6f3 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +0.000000 -0.000000 -2.000000 +1.000000 -1.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-0.666667 -1.333333 -1.750000 c_B +-1.666667 -2.333333 -1.750000 c_A +-0.666667 -1.333333 -0.750000 c_A +0.333333 -1.333333 -1.750000 c_A +-1.666667 -2.333333 -0.750000 c_B +-0.666667 -2.333333 -1.750000 c_B +0.333333 -1.333333 -2.750000 c_B +-0.666667 -2.333333 -2.750000 c_A +-1.333333 -1.666666 -0.250000 c_A +-0.333333 -0.666666 -0.250000 c_A +-1.333333 -1.666666 -1.250000 c_B +-0.333333 -1.666666 -2.250000 c_A +-0.333333 -0.666666 -1.250000 c_B +-1.333333 -2.666666 -2.250000 c_A +-0.333333 -1.666666 -1.250000 c_B +-1.333333 -2.666666 -1.250000 c_B +-1.000000 -2.000000 -2.000000 a_A +0.000000 -1.000000 -2.000000 a_A +-1.000000 -2.000000 -1.000000 a_B +0.000000 -2.000000 -2.000000 a_B +0.000000 -1.000000 -1.000000 a_B +-1.000000 -3.000000 -2.000000 a_A +-0.000000 -2.000000 -3.000000 a_A +-1.000000 -3.000000 -3.000000 a_B +-1.000000 -2.000000 -1.500000 a_A +-0.000000 -1.000000 -1.500000 a_A +-1.000000 -2.000000 -2.500000 a_B +-0.000000 -2.000000 -1.500000 a_A +-0.000000 -1.000000 -2.500000 a_B +-1.000000 -3.000000 -1.500000 a_B +-0.000000 -2.000000 -2.500000 a_B +-1.000000 -3.000000 -2.500000 a_A diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..fa32cd7 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out @@ -0,0 +1,242 @@ +12 +0.70711 +2 +0.66667 0.33333 0.75000 0 0 +1.00000 0.00000 1.00000 0 0 + +2 +0.81649 +2 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +6 +1.00000 +2 +0.66667 0.33333 0.75000 0 0 +0.33333 -0.33333 1.25000 0 0 + +6 +1.00000 +2 +0.66667 0.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +6 +1.00000 +2 +1.00000 1.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 + +12 +1.22474 +2 +0.66667 0.33333 0.75000 0 0 +0.00000 -1.00000 1.00000 0 0 + +12 +1.29099 +2 +1.00000 1.00000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +1.35400 +2 +1.00000 1.00000 0.50000 0 0 +0.66667 1.33333 -0.25000 0 0 + +6 +1.41421 +2 +0.66667 0.33333 0.75000 0 0 +1.33333 -0.33333 1.25000 0 0 + +6 +0.81649 +3 +1.00000 1.00000 0.50000 0 0 +1.33333 0.66667 0.25000 0 0 +1.00000 1.00000 0.00000 0 0 + +12 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +1.00000 0.00000 1.00000 0 0 +0.33333 -0.33333 1.25000 0 0 + +12 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +1.33333 0.66667 1.25000 0 0 +0.33333 -0.33333 1.25000 0 0 + +12 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +1.00000 1.00000 0.50000 0 0 +0.66667 1.33333 0.75000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +1.66667 1.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.75000 0 0 +-0.33333 0.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 0.50000 0 0 +1.33333 0.66667 0.25000 0 0 +1.00000 0.00000 0.50000 0 0 + +4 +1.00000 +3 +1.00000 1.00000 0.50000 0 0 +2.00000 1.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 + +24 +1.22474 +3 +0.66667 0.33333 0.75000 0 0 +1.00000 0.00000 1.00000 0 0 +0.00000 -1.00000 1.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.33333 0.66667 1.25000 0 0 +2.33333 1.66667 1.25000 0 0 + +12 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.66667 1.33333 0.75000 0 0 +2.33333 1.66667 1.25000 0 0 + +6 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +2.33333 1.66667 1.25000 0 0 + +6 +1.00000 +4 +0.66667 0.33333 0.75000 0 0 +0.00000 0.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 +0.33333 -0.33333 1.25000 0 0 + +12 +1.00000 +4 +0.66667 0.33333 0.75000 0 0 +1.00000 0.00000 1.00000 0 0 +1.33333 0.66667 1.25000 0 0 +0.33333 -0.33333 1.25000 0 0 + +4 +1.00000 +4 +0.66667 0.33333 0.75000 0 0 +0.33333 0.66667 1.25000 0 0 +1.33333 0.66667 1.25000 0 0 +0.33333 -0.33333 1.25000 0 0 + +6 +1.00000 +4 +0.66667 0.33333 0.75000 0 0 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.50000 0 0 +0.66667 1.33333 0.75000 0 0 + +4 +1.00000 +4 +0.66667 0.33333 0.75000 0 0 +1.00000 1.00000 0.50000 0 0 +1.66667 1.33333 0.75000 0 0 +0.66667 1.33333 0.75000 0 0 + +4 +1.00000 +4 +1.00000 1.00000 0.50000 0 0 +1.33333 0.66667 0.25000 0 0 +2.00000 1.00000 0.50000 0 0 +1.00000 0.00000 0.50000 0 0 + +12 +1.22474 +4 +0.66667 0.33333 0.75000 0 0 +0.00000 0.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 +0.00000 -1.00000 1.00000 0 0 + +24 +1.22474 +4 +0.66667 0.33333 0.75000 0 0 +1.00000 0.00000 1.00000 0 0 +0.33333 -0.33333 1.25000 0 0 +0.00000 -1.00000 1.00000 0 0 + +24 +1.22474 +4 +0.66667 0.33333 0.75000 0 0 +1.00000 0.00000 1.00000 0 0 +0.66667 -0.66667 0.75000 0 0 +0.00000 -1.00000 1.00000 0 0 + +12 +1.22474 +4 +0.66667 0.33333 0.75000 0 0 +0.00000 0.00000 1.00000 0 0 +0.66667 -0.66667 0.75000 0 0 +0.00000 -1.00000 1.00000 0 0 + +24 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +1.66667 1.33333 0.75000 0 0 +1.33333 0.66667 1.25000 0 0 +2.33333 1.66667 1.25000 0 0 + +12 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +1.33333 1.66667 1.25000 0 0 +1.33333 0.66667 1.25000 0 0 +2.33333 1.66667 1.25000 0 0 + +12 +1.22474 +4 +1.00000 1.00000 1.00000 0 0 +1.33333 0.66667 1.25000 0 0 +1.00000 1.00000 1.50000 0 0 +2.33333 1.66667 1.25000 0 0 + diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go new file mode 100755 index 0000000..412a90e --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.5 -3=1.23 -4=1.23 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in new file mode 100755 index 0000000..53a83d6 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J D81_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..966fb53 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.25 c_A=0.5,c_B=0.5 +0.666667 0.333333 0.75 c_A=0.5,c_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 +0 0 0.5 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..db0ad22 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.632990 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.333333 0.666667 0.250000 c_A=0.500000,c_B=0.500000 +-0.333333 0.333334 -0.250000 c_A=0.500000,c_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 +0.000000 0.000000 0.500000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..9f86470 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +3 10 3 8 diff --git a/data/sqsdb/NIAS_D81/sqsgen.in b/data/sqsdb/NIAS_D81/sqsgen.in new file mode 100644 index 0000000..46d1288 --- /dev/null +++ b/data/sqsdb/NIAS_D81/sqsgen.in @@ -0,0 +1,4 @@ +level=0 a=1 c=1 +level=1 a=0.5,0.5 c=1 +level=1 a=1 c=0.5,0.5 +level=2 a=0.5,0.5 c=0.5,0.5 diff --git a/data/sqsdb/OMEGA_C32/rndstr.skel b/data/sqsdb/OMEGA_C32/rndstr.skel new file mode 100644 index 0000000..715583e --- /dev/null +++ b/data/sqsdb/OMEGA_C32/rndstr.skel @@ -0,0 +1,10 @@ + +1 1 1.633 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.5 d +0.666667 0.333333 0.5 d + +0 0 0 a diff --git a/data/sqsdb/OMEGA_C32/rndstr.skel.sspp b/data/sqsdb/OMEGA_C32/rndstr.skel.sspp new file mode 100644 index 0000000..0ff5903 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/rndstr.skel.sspp @@ -0,0 +1,10 @@ +#const a=1; c=1.633; +{a} {a} {c} {90} {90} {120} +1 0 0 +0 1 0 +0 0 1 +#const d="d"; +{1/3} {2/3} {1/2} {d} +{2/3} {1/3} {1/2} {d} +#const a="a"; +{0} {0} {0} {a} diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=0_a=1_d=1/bestsqs.out b/data/sqsdb/OMEGA_C32/sqsdb_lev=0_a=1_d=1/bestsqs.out new file mode 100644 index 0000000..c91440a --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=0_a=1_d=1/bestsqs.out @@ -0,0 +1,9 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +-0.000000 0.000000 1.000000 +0.333333 0.666667 0.500000 d_A +0.666667 0.333333 0.500000 d_A +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=0_a=1_d=1/rndstr.in b/data/sqsdb/OMEGA_C32/sqsdb_lev=0_a=1_d=1/rndstr.in new file mode 100644 index 0000000..e6be336 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=0_a=1_d=1/rndstr.in @@ -0,0 +1,10 @@ + +1 1 1.633 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.5 d_A=1 +0.666667 0.333333 0.5 d_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/bestcorr.out b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/bestcorr.out new file mode 100644 index 0000000..991e99c --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/bestcorr.out @@ -0,0 +1,21 @@ +2 1.000000 0.000000 0.000000 0.000000 +2 1.633000 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.914860 0.000000 0.000000 0.000000 +2 2.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.732051 0.000000 0.000000 0.000000 +3 1.732051 0.000000 0.000000 0.000000 +3 1.914860 0.000000 0.000000 0.000000 +3 1.914860 0.000000 0.000000 0.000000 +3 1.914860 0.000000 0.000000 0.000000 +4 1.732051 0.000000 0.000000 0.000000 +4 1.732051 0.000000 0.000000 0.000000 +4 1.914860 0.000000 0.000000 0.000000 +4 1.914860 0.000000 0.000000 0.000000 +4 1.914860 0.000000 0.000000 0.000000 +4 1.914860 -0.166667 0.000000 -0.166667 +4 1.914860 0.000000 0.000000 0.000000 +4 1.914860 0.000000 0.000000 0.000000 +4 1.914860 0.000000 0.000000 0.000000 +Objective_function= -7.815831 diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/bestsqs.out b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/bestsqs.out new file mode 100644 index 0000000..73226f6 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +2.000000 1.000000 -1.000000 +-0.000000 -2.000000 -1.000000 +-2.000000 1.000000 -2.000000 +-1.000000 0.000000 -3.000000 a_B +0.000000 -0.000000 -3.000000 a_A +0.000000 1.000000 -3.000000 a_A +-1.000000 -1.000000 -2.000000 a_A +0.000000 -1.000000 -2.000000 a_B +1.000000 -1.000000 -2.000000 a_B +-1.000000 0.000000 -2.000000 a_A +0.000000 0.000000 -2.000000 a_B +1.000000 0.000000 -2.000000 a_A +-1.000000 1.000000 -2.000000 a_B +-0.000000 1.000000 -2.000000 a_A +1.000000 1.000000 -2.000000 a_A +-0.000000 -1.000000 -1.000000 a_B +0.000000 0.000000 -1.000000 a_B +1.000000 0.000000 -1.000000 a_B +-0.000000 -0.000000 -4.000000 a_A +-0.666667 0.666667 -2.500000 d_A +0.333333 0.666667 -2.500000 d_A +0.333333 1.666667 -2.500000 d_A +-0.666667 -0.333333 -1.500000 d_A +0.333333 -0.333333 -1.500000 d_A +1.333333 -0.333333 -1.500000 d_A +-0.666667 0.666667 -1.500000 d_A +0.333333 0.666667 -1.500000 d_A +1.333333 0.666667 -1.500000 d_A +-0.666667 -0.333333 -2.500000 d_A +0.333333 -0.333333 -2.500000 d_A +1.333333 -0.333333 -2.500000 d_A +0.333333 -0.333333 -0.500000 d_A +0.333333 -1.333333 -1.500000 d_A +-0.666667 -0.333333 -3.500000 d_A +-1.666667 -0.333333 -2.500000 d_A +-0.333333 0.333333 -2.500000 d_A +0.666667 0.333333 -2.500000 d_A +0.666667 1.333333 -2.500000 d_A +-0.333333 -0.666667 -1.500000 d_A +0.666667 -0.666667 -1.500000 d_A +-0.333333 0.333333 -3.500000 d_A +-0.333333 0.333333 -1.500000 d_A +0.666667 0.333333 -1.500000 d_A +1.666667 0.333333 -1.500000 d_A +-0.333333 -0.666667 -2.500000 d_A +0.666667 -0.666667 -2.500000 d_A +-0.333333 -1.666667 -1.500000 d_A +-1.333333 0.333333 -2.500000 d_A +0.666667 0.333333 -0.500000 d_A +-0.333333 1.333333 -2.500000 d_A +-1.333333 -0.666667 -2.500000 d_A diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/clusters.out b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/clusters.out new file mode 100644 index 0000000..6053e94 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/clusters.out @@ -0,0 +1,144 @@ +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 1.00000 0 0 + +1 +1.63300 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +3 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +6 +1.91486 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 0.00000 0 0 + +3 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +2 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 + +6 +1.73205 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +2 +1.73205 +3 +1.00000 1.00000 1.00000 0 0 +3.00000 2.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +12 +1.91486 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 1.00000 0 0 +1.00000 2.00000 0.00000 0 0 + +12 +1.91486 +3 +1.00000 1.00000 1.00000 0 0 +2.00000 2.00000 1.00000 0 0 +1.00000 2.00000 0.00000 0 0 + +12 +1.91486 +3 +1.00000 1.00000 1.00000 0 0 +0.00000 2.00000 1.00000 0 0 +1.00000 2.00000 0.00000 0 0 + +3 +1.73205 +4 +1.00000 1.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +2 +1.73205 +4 +1.00000 1.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +3.00000 2.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +12 +1.91486 +4 +1.00000 1.00000 1.00000 0 0 +2.00000 2.00000 1.00000 0 0 +1.00000 2.00000 1.00000 0 0 +1.00000 2.00000 0.00000 0 0 + +12 +1.91486 +4 +1.00000 1.00000 1.00000 0 0 +0.00000 1.00000 1.00000 0 0 +2.00000 2.00000 1.00000 0 0 +1.00000 2.00000 0.00000 0 0 + +3 +1.91486 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 2.00000 0.00000 0 0 + +12 +1.91486 +4 +1.00000 1.00000 1.00000 0 0 +2.00000 2.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 2.00000 0.00000 0 0 + +12 +1.91486 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 1.00000 0 0 +0.00000 2.00000 1.00000 0 0 +1.00000 2.00000 0.00000 0 0 + +4 +1.91486 +4 +1.00000 1.00000 1.00000 0 0 +2.00000 3.00000 1.00000 0 0 +0.00000 2.00000 1.00000 0 0 +1.00000 2.00000 0.00000 0 0 + +6 +1.91486 +4 +1.00000 1.00000 1.00000 0 0 +2.00000 2.00000 1.00000 0 0 +2.00000 1.00000 0.00000 0 0 +1.00000 2.00000 0.00000 0 0 + diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/go b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/go new file mode 100755 index 0000000..284d9f2 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.95 -4=1.95 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/job.in b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/job.in new file mode 100755 index 0000000..576d4ef --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C32_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/rndstr.in b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/rndstr.in new file mode 100644 index 0000000..fe0ebef --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/rndstr.in @@ -0,0 +1,10 @@ + +1 1 1.633 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.5 d_A=1 +0.666667 0.333333 0.5 d_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/rndstrgrp.out b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/rndstrgrp.out new file mode 100644 index 0000000..1c97542 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=0.5,0.5_d=1/rndstrgrp.out @@ -0,0 +1,11 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.333333 0.666667 0.500000 d_A=1.000000 +0.666667 0.333333 0.500000 d_A=1.000000 diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/bestcorr.out b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..900736b --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/bestcorr.out @@ -0,0 +1,22 @@ +2 0.577344 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.154689 0.000000 0.000000 0.000000 +2 1.527517 0.000000 0.000000 0.000000 +2 1.633000 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.732055 0.000000 0.000000 0.000000 +2 1.914860 0.000000 0.000000 0.000000 +2 2.000000 1.000000 0.000000 1.000000 +2 1.999999 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.154689 0.000000 0.000000 0.000000 +3 1.527517 0.000000 0.000000 0.000000 +3 1.527517 0.000000 0.000000 0.000000 +3 1.527517 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.154689 0.000000 0.000000 0.000000 +4 1.154689 0.000000 0.000000 0.000000 +4 1.154689 -0.333333 0.000000 -0.333333 +Objective_function= -8.839384 diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/bestsqs.out b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..a564cc1 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +-2.000000 0.000000 0.000000 +-0.000000 -2.000000 0.000000 +0.000000 0.000000 4.000000 +-0.666667 -0.333333 0.500000 d_A +-1.666667 -0.333333 0.500000 d_B +-0.666667 -1.333333 0.500000 d_B +-1.666667 -1.333333 0.500000 d_A +-0.666667 -0.333333 1.500000 d_B +-1.666667 -0.333333 1.500000 d_A +-0.666667 -1.333333 1.500000 d_B +-1.666667 -1.333333 1.500000 d_A +-0.666667 -0.333333 2.500000 d_A +-1.666667 -0.333333 2.500000 d_A +-0.666667 -1.333333 2.500000 d_A +-1.666667 -1.333333 2.500000 d_A +-0.666667 -0.333333 3.500000 d_B +-1.666667 -0.333333 3.500000 d_B +-0.666667 -1.333333 3.500000 d_A +-1.666667 -1.333333 3.500000 d_A +-1.333333 -0.666666 0.500000 d_B +-0.333333 -0.666666 0.500000 d_B +-1.333333 -1.666666 0.500000 d_B +-0.333333 -1.666666 0.500000 d_B +-1.333333 -0.666666 1.500000 d_B +-0.333333 -0.666666 1.500000 d_B +-1.333333 -1.666666 1.500000 d_A +-0.333333 -1.666666 1.500000 d_A +-1.333333 -0.666666 2.500000 d_B +-0.333333 -0.666666 2.500000 d_A +-1.333333 -1.666666 2.500000 d_B +-0.333333 -1.666666 2.500000 d_A +-1.333333 -0.666666 3.500000 d_A +-0.333333 -0.666666 3.500000 d_B +-1.333333 -1.666666 3.500000 d_B +-0.333333 -1.666666 3.500000 d_A +-1.000000 -1.000000 4.000000 a_A +-2.000000 -1.000000 4.000000 a_A +-1.000000 -2.000000 4.000000 a_A +-2.000000 -2.000000 4.000000 a_A +-1.000000 -1.000000 1.000000 a_A +-2.000000 -1.000000 1.000000 a_A +-1.000000 -2.000000 1.000000 a_A +-2.000000 -2.000000 1.000000 a_A +-1.000000 -1.000000 2.000000 a_A +-2.000000 -1.000000 2.000000 a_A +-1.000000 -2.000000 2.000000 a_A +-2.000000 -2.000000 2.000000 a_A +-1.000000 -1.000000 3.000000 a_A +-2.000000 -1.000000 3.000000 a_A +-1.000000 -2.000000 3.000000 a_A +-2.000000 -2.000000 3.000000 a_A diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/clusters.out b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..f5cee3d --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/clusters.out @@ -0,0 +1,141 @@ +3 +0.57735 +2 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.50000 0 0 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +3 +1.15470 +2 +0.66667 0.33333 0.50000 0 0 +1.33333 -0.33333 0.50000 0 0 + +6 +1.52752 +2 +0.33333 0.66667 0.50000 0 0 +-1.33333 0.33333 0.50000 0 0 + +2 +1.63300 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 -0.50000 0 0 + +6 +1.73205 +2 +0.66667 0.33333 0.50000 0 0 +1.66667 -0.66667 0.50000 0 0 + +6 +1.73206 +2 +0.66667 0.33333 0.50000 0 0 +1.33333 0.66667 -0.50000 0 0 + +12 +1.91486 +2 +0.33333 0.66667 0.50000 0 0 +0.33333 1.66667 -0.50000 0 0 + +6 +2.00000 +2 +0.33333 0.66667 0.50000 0 0 +-1.66667 0.66667 0.50000 0 0 + +6 +2.00000 +2 +0.66667 0.33333 0.50000 0 0 +1.33333 -0.33333 1.50000 0 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +0.33333 0.66667 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +12 +1.15470 +3 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.50000 0 0 +1.33333 -0.33333 0.50000 0 0 + +12 +1.52752 +3 +0.33333 0.66667 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +-1.33333 0.33333 0.50000 0 0 + +6 +1.52752 +3 +0.33333 0.66667 0.50000 0 0 +0.33333 1.66667 0.50000 0 0 +-1.33333 0.33333 0.50000 0 0 + +12 +1.52752 +3 +0.33333 0.66667 0.50000 0 0 +-0.66667 -0.33333 0.50000 0 0 +-1.33333 0.33333 0.50000 0 0 + +2 +1.00000 +4 +0.66667 0.33333 0.50000 0 0 +0.33333 0.66667 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +6 +1.15470 +4 +0.66667 0.33333 0.50000 0 0 +1.33333 0.66667 0.50000 0 0 +0.33333 -0.33333 0.50000 0 0 +1.33333 -0.33333 0.50000 0 0 + +6 +1.15470 +4 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +1.33333 -0.33333 0.50000 0 0 + +3 +1.15470 +4 +0.66667 0.33333 0.50000 0 0 +1.33333 0.66667 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +1.33333 -0.33333 0.50000 0 0 + diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/go b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/go new file mode 100755 index 0000000..614fdca --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.6 -4=1.2 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/job.in b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/job.in new file mode 100755 index 0000000..576d4ef --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C32_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/rndstr.in b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..6f95923 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/rndstr.in @@ -0,0 +1,10 @@ + +1 1 1.633 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.5 d_A=0.5,d_B=0.5 +0.666667 0.333333 0.5 d_A=0.5,d_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..54ad32c --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=1_a=1_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,11 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.333333 0.666667 0.500000 d_A=0.500000,d_B=0.500000 +-0.333333 0.333334 0.500000 d_A=0.500000,d_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestcorr.out b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..7581571 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestcorr.out @@ -0,0 +1,36 @@ +2 0.577344 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 0.999999 0.000000 0.000000 0.000000 +2 1.154689 0.000000 0.000000 0.000000 +2 1.414213 0.000000 0.000000 0.000000 +2 1.527517 0.000000 0.000000 0.000000 +2 1.633000 -0.250000 0.000000 -0.250000 +2 1.633000 -0.250000 0.000000 -0.250000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.732048 0.000000 0.000000 0.000000 +2 1.732055 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 0.999999 0.000000 0.000000 0.000000 +3 1.154689 0.000000 0.000000 0.000000 +3 1.154689 0.000000 0.000000 0.000000 +3 1.414213 0.000000 0.000000 0.000000 +3 1.414213 0.000000 0.000000 0.000000 +3 1.414213 0.000000 0.000000 0.000000 +3 1.414213 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 0.999999 0.000000 0.000000 0.000000 +4 1.154689 0.000000 0.000000 0.000000 +4 1.154689 -0.333333 0.000000 -0.333333 +4 1.154689 0.333333 0.000000 0.333333 +4 1.154689 0.000000 0.000000 0.000000 +Objective_function= -230.961022 diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestsqs.out b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..beab669 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +1.000000 -0.000000 8.000000 +-1.000000 -0.000000 8.000000 +0.000000 -1.000000 -8.000000 +0.333333 -0.333333 8.500000 d_B +0.333333 -0.333333 9.500000 d_A +0.333333 -0.333333 10.500000 d_A +-0.666667 -0.333333 3.500000 d_A +-0.666667 -0.333333 4.500000 d_A +-0.666667 -0.333333 5.500000 d_B +-0.666667 -0.333333 6.500000 d_A +-0.666667 -0.333333 7.500000 d_B +0.333333 -0.333333 0.500000 d_A +0.333333 -0.333333 1.500000 d_B +0.333333 -0.333333 2.500000 d_B +0.333333 -0.333333 3.500000 d_B +0.333333 -0.333333 4.500000 d_B +0.333333 -0.333333 5.500000 d_A +0.333333 -0.333333 6.500000 d_B +0.333333 -0.333333 7.500000 d_A +0.666667 -0.666666 0.500000 d_A +0.666667 -0.666666 1.500000 d_A +0.666667 -0.666666 2.500000 d_B +0.666667 -0.666666 3.500000 d_A +0.666667 -0.666666 4.500000 d_B +-0.333333 -0.666666 -2.500000 d_B +-0.333333 -0.666666 -1.500000 d_B +-0.333333 -0.666666 -0.500000 d_A +-0.333333 -0.666666 0.500000 d_A +-0.333333 -0.666666 1.500000 d_B +-0.333333 -0.666666 2.500000 d_A +-0.333333 -0.666666 3.500000 d_B +-0.333333 -0.666666 4.500000 d_A +-0.333333 -0.666666 5.500000 d_B +-0.333333 -0.666666 6.500000 d_B +-0.333333 -0.666666 7.500000 d_A +0.000000 -1.000000 8.000000 a_B +-0.000000 -1.000000 -7.000000 a_B +-0.000000 -1.000000 -6.000000 a_A +0.000000 -1.000000 -5.000000 a_B +0.000000 -1.000000 -4.000000 a_B +-0.000000 -1.000000 -3.000000 a_A +0.000000 -1.000000 -2.000000 a_B +-0.000000 -1.000000 -1.000000 a_A +0.000000 -1.000000 0.000000 a_A +-0.000000 -1.000000 1.000000 a_A +-0.000000 -1.000000 2.000000 a_A +-0.000000 -1.000000 3.000000 a_B +0.000000 -1.000000 4.000000 a_A +-0.000000 -1.000000 5.000000 a_B +-0.000000 -1.000000 6.000000 a_A +-0.000000 -1.000000 7.000000 a_B diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/clusters.out b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..d257855 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/clusters.out @@ -0,0 +1,241 @@ +3 +0.57735 +2 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.50000 0 0 + +6 +1.00000 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 + +12 +1.00000 +2 +0.33333 0.66667 0.50000 0 0 +0.00000 1.00000 0.00000 0 0 + +3 +1.15470 +2 +0.66667 0.33333 0.50000 0 0 +1.33333 -0.33333 0.50000 0 0 + +12 +1.41422 +2 +0.66667 0.33333 0.50000 0 0 +-0.00000 -1.00000 0.00000 0 0 + +6 +1.52752 +2 +0.33333 0.66667 0.50000 0 0 +-1.33333 0.33333 0.50000 0 0 + +1 +1.63300 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +2 +1.63300 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 -0.50000 0 0 + +3 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +2.00000 0.00000 1.00000 0 0 + +6 +1.73205 +2 +0.66667 0.33333 0.50000 0 0 +1.66667 -0.66667 0.50000 0 0 + +24 +1.73205 +2 +0.33333 0.66667 0.50000 0 0 +-1.00000 1.00000 0.00000 0 0 + +6 +1.73206 +2 +0.66667 0.33333 0.50000 0 0 +1.33333 0.66667 -0.50000 0 0 + +6 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +0.33333 0.66667 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +2 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +12 +1.00000 +3 +0.66667 0.33333 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +0.66667 1.33333 0.50000 0 0 + +2 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +2.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +1.33333 0.66667 1.50000 0 0 +1.00000 0.00000 1.00000 0 0 + +12 +1.00000 +3 +0.33333 0.66667 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 +0.00000 1.00000 0.00000 0 0 + +12 +1.15470 +3 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.50000 0 0 +1.33333 -0.33333 0.50000 0 0 + +6 +1.15470 +3 +0.66667 0.33333 0.50000 0 0 +1.00000 0.00000 1.00000 0 0 +1.33333 -0.33333 0.50000 0 0 + +12 +1.41422 +3 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.50000 0 0 +-0.00000 -1.00000 0.00000 0 0 + +24 +1.41422 +3 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +-0.00000 -1.00000 0.00000 0 0 + +24 +1.41422 +3 +0.66667 0.33333 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 +-0.00000 -1.00000 0.00000 0 0 + +12 +1.41422 +3 +0.66667 0.33333 0.50000 0 0 +1.33333 -0.33333 0.50000 0 0 +-0.00000 -1.00000 0.00000 0 0 + +4 +1.00000 +4 +0.66667 0.33333 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.66667 1.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +2 +1.00000 +4 +0.66667 0.33333 0.50000 0 0 +0.33333 0.66667 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +12 +1.00000 +4 +0.66667 0.33333 0.50000 0 0 +0.33333 0.66667 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +0.66667 1.33333 0.50000 0 0 + +4 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +1.33333 0.66667 1.50000 0 0 +2.00000 1.00000 1.00000 0 0 +1.00000 0.00000 1.00000 0 0 + +6 +1.00000 +4 +0.33333 0.66667 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 1.00000 0.00000 0 0 + +6 +1.15470 +4 +0.66667 0.33333 0.50000 0 0 +1.33333 0.66667 0.50000 0 0 +0.33333 -0.33333 0.50000 0 0 +1.33333 -0.33333 0.50000 0 0 + +6 +1.15470 +4 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +1.33333 -0.33333 0.50000 0 0 + +3 +1.15470 +4 +0.66667 0.33333 0.50000 0 0 +1.33333 0.66667 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +1.33333 -0.33333 0.50000 0 0 + +24 +1.15470 +4 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.50000 0 0 +1.00000 0.00000 1.00000 0 0 +1.33333 -0.33333 0.50000 0 0 + diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/go b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/go new file mode 100755 index 0000000..f2911c9 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.8 -3=1.5 -4=1.2 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/job.in b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/job.in new file mode 100755 index 0000000..1e853e2 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C32_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstr.in b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..c565511 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstr.in @@ -0,0 +1,10 @@ + +1 1 1.633 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0.5 d_A=0.5,d_B=0.5 +0.666667 0.333333 0.5 d_A=0.5,d_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..1607724 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,11 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.633000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.333333 0.666667 0.500000 d_A=0.500000,d_B=0.500000 +-0.333333 0.333334 0.500000 d_A=0.500000,d_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/sqsparam.in b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..1a19ff5 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 10 2 8 diff --git a/data/sqsdb/OMEGA_C32/sqsgen.in b/data/sqsdb/OMEGA_C32/sqsgen.in new file mode 100644 index 0000000..5363ce3 --- /dev/null +++ b/data/sqsdb/OMEGA_C32/sqsgen.in @@ -0,0 +1,4 @@ +level=0 a=1 d=1 +level=1 a=0.5,0.5 d=1 +level=1 a=1 d=0.5,0.5 +level=2 a=0.5,0.5 d=0.5,0.5 diff --git a/data/sqsdb/PEROVSKITE_E21/rndstr.skel b/data/sqsdb/PEROVSKITE_E21/rndstr.skel new file mode 100644 index 0000000..a696e65 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/rndstr.skel @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0 0 d +0 0.5 0 d +0 0 0.5 d + +0.5 0.5 0.5 b + +0 0 0 a diff --git a/data/sqsdb/PEROVSKITE_E21/rndstr.skel.sspp b/data/sqsdb/PEROVSKITE_E21/rndstr.skel.sspp new file mode 100644 index 0000000..eff4959 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/rndstr.skel.sspp @@ -0,0 +1,13 @@ +#const a=1; +{a} {a} {a} {90} {90} {90} +1 0 0 +0 1 0 +0 0 1 +#const d="d"; +{1/2} {0} {0} {d} +{0} {1/2} {0} {d} +{0} {0} {1/2} {d} +#const b="b"; +{1/2} {1/2} {1/2} {b} +#const a="a"; +{0} {0} {0} {a} diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=0_a=1_b=1_d=1/bestsqs.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=0_a=1_b=1_d=1/bestsqs.out new file mode 100644 index 0000000..d089775 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=0_a=1_b=1_d=1/bestsqs.out @@ -0,0 +1,11 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.000000 0.000000 d_A +0.000000 0.500000 0.000000 d_A +0.000000 0.000000 0.500000 d_A +0.500000 0.500000 0.500000 b_A +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=0_a=1_b=1_d=1/rndstr.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=0_a=1_b=1_d=1/rndstr.in new file mode 100644 index 0000000..7ffb8ec --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=0_a=1_b=1_d=1/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0 0 d_A=1 +0 0.5 0 d_A=1 +0 0 0.5 d_A=1 + +0.5 0.5 0.5 b_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/bestcorr.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/bestcorr.out new file mode 100644 index 0000000..12ab5fd --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/bestcorr.out @@ -0,0 +1,11 @@ +2 1.000000 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 2.000000 -0.333333 0.000000 -0.333333 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.732051 0.000000 0.000000 0.000000 +4 1.414214 -0.333333 0.000000 -0.333333 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 1.000000 0.000000 1.000000 +Objective_function= -5.229028 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/bestsqs.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/bestsqs.out new file mode 100644 index 0000000..ff72f0b --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/bestsqs.out @@ -0,0 +1,46 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.000000 -1.000000 +1.000000 -1.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-1.000000 -2.000000 -1.000000 a_B +-2.000000 -1.000000 -1.000000 a_B +-1.000000 -1.000000 -1.000000 a_A +-0.000000 -1.000000 -1.000000 a_A +-1.000000 0.000000 -1.000000 a_A +-2.000000 -2.000000 -1.000000 a_A +-1.000000 -1.000000 -2.000000 a_B +-2.000000 -2.000000 -2.000000 a_B +-2.000000 -1.000000 -1.500000 d_A +-1.000000 -2.000000 -1.500000 d_A +-1.000000 -1.000000 -0.500000 d_A +-1.000000 0.000000 -1.500000 d_A +-0.000000 -1.000000 -1.500000 d_A +-2.000000 -2.000000 -0.500000 d_A +-1.000000 -1.000000 -1.500000 d_A +-2.000000 -2.000000 -1.500000 d_A +-1.000000 -1.500000 -1.000000 d_A +-2.000000 -0.500000 -1.000000 d_A +-1.000000 -0.500000 -1.000000 d_A +0.000000 -0.500000 -1.000000 d_A +-1.000000 0.500000 -1.000000 d_A +-2.000000 -1.500000 -1.000000 d_A +-0.000000 -1.500000 -1.000000 d_A +-1.000000 -2.500000 -1.000000 d_A +-0.500000 -2.000000 -1.000000 d_A +-1.500000 -1.000000 -1.000000 d_A +-0.500000 -1.000000 -1.000000 d_A +0.500000 -1.000000 -1.000000 d_A +-0.500000 -0.000000 -1.000000 d_A +-1.500000 -2.000000 -1.000000 d_A +-1.500000 -0.000000 -1.000000 d_A +-2.500000 -1.000000 -1.000000 d_A +-1.500000 -0.500000 -1.500000 b_A +-0.500000 -1.500000 -1.500000 b_A +-0.500000 -0.500000 -0.500000 b_A +-2.500000 -1.500000 -1.500000 b_A +-1.500000 -2.500000 -1.500000 b_A +-1.500000 -1.500000 -0.500000 b_A +-0.500000 -0.500000 -1.500000 b_A +-1.500000 -1.500000 -1.500000 b_A diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/clusters.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/clusters.out new file mode 100644 index 0000000..afcfab4 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/clusters.out @@ -0,0 +1,69 @@ +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 -1.00000 0 0 + +12 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +8 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +24 +1.73205 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +8 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +2 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 2.00000 0 0 +-0.00000 1.00000 2.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/go b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/go new file mode 100755 index 0000000..a88c755 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.8 -4=1.5 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/job.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/job.in new file mode 100755 index 0000000..7050d7b --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J E21_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=40 -ip=$id & +done +wait diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/rndstr.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/rndstr.in new file mode 100644 index 0000000..344f160 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0 0 d_A=1 +0 0.5 0 d_A=1 +0 0 0.5 d_A=1 + +0.5 0.5 0.5 b_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/rndstrgrp.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/rndstrgrp.out new file mode 100644 index 0000000..0b06eab --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=0.5,0.5_b=1_d=1/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +-0.000000 0.000000 0.500000 d_A=1.000000 +-0.000000 0.500000 0.000000 d_A=1.000000 +0.500000 -0.000000 0.000000 d_A=1.000000 + +0.500000 0.500000 0.500000 b_A=1.000000 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/bestcorr.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/bestcorr.out new file mode 100644 index 0000000..12ab5fd --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/bestcorr.out @@ -0,0 +1,11 @@ +2 1.000000 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 2.000000 -0.333333 0.000000 -0.333333 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.732051 0.000000 0.000000 0.000000 +4 1.414214 -0.333333 0.000000 -0.333333 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 1.000000 0.000000 1.000000 +Objective_function= -5.229028 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/bestsqs.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/bestsqs.out new file mode 100644 index 0000000..6a9ad64 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/bestsqs.out @@ -0,0 +1,46 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.000000 -1.000000 +1.000000 -1.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-1.500000 -0.500000 -1.500000 b_B +-0.500000 -1.500000 -1.500000 b_A +-0.500000 -0.500000 -0.500000 b_B +-2.500000 -1.500000 -1.500000 b_B +-1.500000 -2.500000 -1.500000 b_A +-1.500000 -1.500000 -0.500000 b_A +-0.500000 -0.500000 -1.500000 b_B +-1.500000 -1.500000 -1.500000 b_A +-2.000000 -1.000000 -1.500000 d_A +-1.000000 -2.000000 -1.500000 d_A +-1.000000 -1.000000 -0.500000 d_A +-1.000000 -0.000000 -1.500000 d_A +-0.000000 -1.000000 -1.500000 d_A +-2.000000 -2.000000 -0.500000 d_A +-1.000000 -1.000000 -1.500000 d_A +-2.000000 -2.000000 -1.500000 d_A +-1.000000 -1.500000 -1.000000 d_A +-2.000000 -0.500000 -1.000000 d_A +-1.000000 -0.500000 -1.000000 d_A +0.000000 -0.500000 -1.000000 d_A +-1.000000 0.500000 -1.000000 d_A +-2.000000 -1.500000 -1.000000 d_A +-0.000000 -1.500000 -1.000000 d_A +-1.000000 -2.500000 -1.000000 d_A +-0.500000 -2.000000 -1.000000 d_A +-1.500000 -1.000000 -1.000000 d_A +-0.500000 -1.000000 -1.000000 d_A +0.500000 -1.000000 -1.000000 d_A +-0.500000 -0.000000 -1.000000 d_A +-1.500000 -2.000000 -1.000000 d_A +-1.500000 -0.000000 -1.000000 d_A +-2.500000 -1.000000 -1.000000 d_A +-1.000000 -2.000000 -1.000000 a_A +-2.000000 -1.000000 -1.000000 a_A +-1.000000 -1.000000 -1.000000 a_A +-0.000000 -1.000000 -1.000000 a_A +-1.000000 -0.000000 -1.000000 a_A +-2.000000 -2.000000 -1.000000 a_A +-1.000000 -1.000000 -2.000000 a_A +-2.000000 -2.000000 -2.000000 a_A diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/clusters.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/clusters.out new file mode 100644 index 0000000..1a6db8e --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/clusters.out @@ -0,0 +1,69 @@ +3 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 + +6 +1.41421 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +4 +1.73205 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 -0.50000 0 0 + +3 +2.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -1.50000 0 0 + +12 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +8 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +24 +1.73205 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +-0.50000 -0.50000 -0.50000 0 0 + +3 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +8 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +2 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 1.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/go b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/go new file mode 100755 index 0000000..a88c755 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.8 -4=1.5 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/job.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/job.in new file mode 100755 index 0000000..7050d7b --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J E21_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=40 -ip=$id & +done +wait diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/rndstr.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/rndstr.in new file mode 100644 index 0000000..f47c7b2 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0 0 d_A=1 +0 0.5 0 d_A=1 +0 0 0.5 d_A=1 + +0.5 0.5 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/rndstrgrp.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/rndstrgrp.out new file mode 100644 index 0000000..1b10f93 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=0.5,0.5_d=1/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.500000 0.500000 0.500000 b_A=0.500000,b_B=0.500000 + +-0.000000 -0.000000 0.500000 d_A=1.000000 +-0.000000 0.500000 0.000000 d_A=1.000000 +0.500000 0.000000 0.000000 d_A=1.000000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/bestcorr.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..e5ad380 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/bestcorr.out @@ -0,0 +1,42 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -0.333333 0.000000 -0.333333 +2 2.000000 -0.333333 0.000000 -0.333333 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 -0.333333 0.000000 -0.333333 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 0.000000 0.000000 0.000000 +4 1.224745 -0.333333 0.000000 -0.333333 +4 1.224745 -0.333333 0.000000 -0.333333 +Objective_function= -172.418542 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/bestsqs.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..0dbac9c --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/bestsqs.out @@ -0,0 +1,46 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.000000 0.000000 +0.000000 0.000000 -2.000000 +-2.000000 -2.000000 0.000000 +-2.000000 -1.000000 -0.500000 d_B +-2.000000 0.000000 -0.500000 d_B +-1.000000 0.000000 -0.500000 d_A +-3.000000 -1.000000 -0.500000 d_A +-2.000000 -1.000000 -1.500000 d_A +-2.000000 -0.000000 -1.500000 d_B +-1.000000 -0.000000 -1.500000 d_B +-3.000000 -1.000000 -1.500000 d_A +-2.000000 -0.500000 -1.000000 d_B +-1.000000 -0.500000 -1.000000 d_A +-1.000000 0.500000 -1.000000 d_A +-2.000000 -1.500000 -1.000000 d_B +-2.000000 -0.500000 -2.000000 d_B +-1.000000 -0.500000 -2.000000 d_A +-1.000000 0.500000 -2.000000 d_A +-2.000000 -1.500000 -2.000000 d_B +-1.500000 -1.000000 -1.000000 d_B +-1.500000 -0.000000 -1.000000 d_B +-0.500000 -0.000000 -1.000000 d_A +-2.500000 -1.000000 -1.000000 d_A +-1.500000 -1.000000 -2.000000 d_A +-1.500000 -0.000000 -2.000000 d_A +-0.500000 0.000000 -2.000000 d_B +-2.500000 -1.000000 -2.000000 d_B +-1.500000 -0.500000 -0.500000 b_A +-1.500000 0.500000 -0.500000 b_A +-2.500000 -1.500000 -0.500000 b_A +-2.500000 -0.500000 -0.500000 b_A +-1.500000 -0.500000 -1.500000 b_A +-1.500000 0.500000 -1.500000 b_A +-2.500000 -1.500000 -1.500000 b_A +-2.500000 -0.500000 -1.500000 b_A +-2.000000 -1.000000 -1.000000 a_A +-2.000000 0.000000 -1.000000 a_A +-1.000000 0.000000 -1.000000 a_A +-3.000000 -1.000000 -1.000000 a_A +-2.000000 -1.000000 -2.000000 a_A +-2.000000 0.000000 -2.000000 a_A +-1.000000 0.000000 -2.000000 a_A +-3.000000 -1.000000 -2.000000 a_A diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/clusters.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..75f8782 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/clusters.out @@ -0,0 +1,290 @@ +12 +0.70711 +2 +0.50000 1.00000 1.00000 0 0 +1.00000 0.50000 1.00000 0 0 + +3 +1.00000 +2 +1.00000 0.50000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +6 +1.00000 +2 +1.00000 0.50000 1.00000 0 0 +1.00000 0.50000 0.00000 0 0 + +24 +1.22474 +2 +1.00000 1.00000 0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +12 +1.41421 +2 +1.00000 0.50000 1.00000 0 0 +2.00000 1.50000 1.00000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 0.50000 0 0 +-0.00000 2.00000 0.50000 0 0 + +24 +1.58114 +2 +1.00000 1.00000 0.50000 0 0 +-0.50000 1.00000 0.00000 0 0 + +12 +1.73205 +2 +1.00000 0.50000 1.00000 0 0 +0.00000 1.50000 2.00000 0 0 + +48 +1.87083 +2 +1.00000 0.50000 1.00000 0 0 +-0.50000 -0.00000 2.00000 0 0 + +3 +2.00000 +2 +0.50000 1.00000 1.00000 0 0 +2.50000 1.00000 1.00000 0 0 + +6 +2.00000 +2 +1.00000 0.50000 1.00000 0 0 +1.00000 0.50000 -1.00000 0 0 + +8 +0.70711 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 0.50000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 1.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +48 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.50000 1.00000 0.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 -0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +2.00000 1.00000 0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +2.00000 0.50000 1.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +48 +1.41421 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +2.00000 1.50000 1.00000 0 0 + +12 +1.41421 +3 +1.00000 0.50000 1.00000 0 0 +1.50000 1.00000 1.00000 0 0 +2.00000 1.50000 1.00000 0 0 + +24 +1.41421 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 +2.00000 1.50000 1.00000 0 0 + +24 +1.41421 +3 +1.00000 0.50000 1.00000 0 0 +1.50000 1.00000 2.00000 0 0 +2.00000 1.50000 1.00000 0 0 + +24 +1.41421 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.50000 2.00000 0 0 +2.00000 1.50000 1.00000 0 0 + +48 +1.41421 +3 +1.00000 1.00000 0.50000 0 0 +0.50000 1.00000 1.00000 0 0 +-0.00000 2.00000 0.50000 0 0 + +12 +1.41421 +3 +1.00000 1.00000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 +-0.00000 2.00000 0.50000 0 0 + +12 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.50000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 + +48 +1.22474 +4 +1.00000 1.00000 0.50000 0 0 +1.50000 1.00000 0.00000 0 0 +1.00000 0.50000 1.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +48 +1.22474 +4 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 +1.00000 0.50000 1.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +48 +1.22474 +4 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 +1.50000 1.00000 0.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +4 +1.00000 1.00000 0.50000 0 0 +1.50000 1.00000 0.00000 0 0 +1.00000 1.00000 -0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +4 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 +1.00000 1.00000 -0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +12 +1.22474 +4 +1.00000 1.00000 0.50000 0 0 +1.50000 1.00000 0.00000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +48 +1.22474 +4 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 1.00000 0 0 +2.00000 1.00000 0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +4 +1.00000 1.00000 0.50000 0 0 +1.50000 1.00000 0.00000 0 0 +2.00000 1.00000 0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +12 +1.22474 +4 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 1.00000 0 0 +0.50000 0.00000 0.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +6 +1.22474 +4 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 -0.50000 0 0 +0.50000 0.00000 0.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +6 +1.22474 +4 +1.00000 1.00000 0.50000 0 0 +2.00000 1.00000 0.50000 0 0 +1.50000 -0.00000 1.00000 0 0 +1.50000 0.00000 0.00000 0 0 + diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/go b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/go new file mode 100755 index 0000000..db658a5 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.5 -4=1.4 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/job.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/job.in new file mode 100755 index 0000000..7050d7b --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J E21_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=40 -ip=$id & +done +wait diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/rndstr.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..2193dab --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0 0 d_A=0.5,d_B=0.5 +0 0.5 0 d_A=0.5,d_B=0.5 +0 0 0.5 d_A=0.5,d_B=0.5 + +0.5 0.5 0.5 b_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..dc29660 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 0.000000 0.500000 d_A=0.500000,d_B=0.500000 +-0.000000 0.500000 0.000000 d_A=0.500000,d_B=0.500000 +0.500000 0.000000 0.000000 d_A=0.500000,d_B=0.500000 + +0.500000 0.500000 0.500000 b_A=1.000000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/sqsparam.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..dcf81be --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=1_a=1_b=1_d=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 10 1 3 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/bestcorr.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/bestcorr.out new file mode 100644 index 0000000..7958758 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/bestcorr.out @@ -0,0 +1,32 @@ +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.658312 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 2.000000 -0.333333 0.000000 -0.333333 +2 2.000000 -0.333333 0.000000 -0.333333 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.414214 -0.333333 0.000000 -0.333333 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 -0.333333 0.000000 -0.333333 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 1.000000 0.000000 1.000000 +4 1.414214 -0.333333 0.000000 -0.333333 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 -0.333333 0.000000 -0.333333 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 1.000000 0.000000 1.000000 +Objective_function= -6.091795 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/bestsqs.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/bestsqs.out new file mode 100644 index 0000000..a39b751 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/bestsqs.out @@ -0,0 +1,46 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.000000 -1.000000 +1.000000 -1.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-1.500000 -0.500000 -1.500000 b_A +-0.500000 -1.500000 -1.500000 b_B +-0.500000 -0.500000 -0.500000 b_B +-2.500000 -1.500000 -1.500000 b_A +-1.500000 -2.500000 -1.500000 b_B +-1.500000 -1.500000 -0.500000 b_A +-0.500000 -0.500000 -1.500000 b_B +-1.500000 -1.500000 -1.500000 b_A +-1.000000 -2.000000 -1.000000 a_B +-2.000000 -1.000000 -1.000000 a_A +-1.000000 -1.000000 -1.000000 a_A +-0.000000 -1.000000 -1.000000 a_B +-1.000000 -0.000000 -1.000000 a_A +-2.000000 -2.000000 -1.000000 a_B +-1.000000 -1.000000 -2.000000 a_A +-2.000000 -2.000000 -2.000000 a_B +-0.500000 -2.000000 -1.000000 d_A +-1.500000 -1.000000 -1.000000 d_A +-0.500000 -1.000000 -1.000000 d_A +0.500000 -1.000000 -1.000000 d_A +-0.500000 -0.000000 -1.000000 d_A +-1.500000 -2.000000 -1.000000 d_A +-1.500000 -0.000000 -1.000000 d_A +-2.500000 -1.000000 -1.000000 d_A +-1.000000 -1.500000 -1.000000 d_A +-2.000000 -0.500000 -1.000000 d_A +-1.000000 -0.500000 -1.000000 d_A +0.000000 -0.500000 -1.000000 d_A +-1.000000 0.500000 -1.000000 d_A +-2.000000 -1.500000 -1.000000 d_A +-0.000000 -1.500000 -1.000000 d_A +-1.000000 -2.500000 -1.000000 d_A +-2.000000 -1.000000 -1.500000 d_A +-1.000000 -2.000000 -1.500000 d_A +-1.000000 -1.000000 -0.500000 d_A +-1.000000 -0.000000 -1.500000 d_A +-0.000000 -1.000000 -1.500000 d_A +-2.000000 -2.000000 -0.500000 d_A +-1.000000 -1.000000 -1.500000 d_A +-2.000000 -2.000000 -1.500000 d_A diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/clusters.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/clusters.out new file mode 100644 index 0000000..d3efab6 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/clusters.out @@ -0,0 +1,220 @@ +8 +0.86603 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +3 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +6 +1.41421 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +24 +1.65831 +2 +0.50000 0.50000 0.50000 0 0 +2.00000 0.00000 0.00000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +4 +1.73205 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 -0.50000 0 0 + +3 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 -1.00000 0 0 + +3 +2.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -1.50000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +1.50000 1.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +0.50000 0.50000 -0.50000 0 0 + +12 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.50000 0 0 +-0.00000 2.00000 1.00000 0 0 + +12 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +8 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +12 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.50000 1.50000 0.50000 0 0 + +12 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +8 +1.41421 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 0.50000 0 0 +1.50000 1.50000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +6 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 0.50000 0 0 +0.50000 1.50000 1.50000 0 0 +-0.00000 2.00000 1.00000 0 0 + +24 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.50000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +3 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +8 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.50000 0 0 +-0.00000 1.00000 2.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +8 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +2 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 2.00000 0 0 +-0.00000 1.00000 2.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +6 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.50000 1.50000 0.50000 0 0 + +24 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +3 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +8 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +8 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +2 +1.41421 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.50000 1.50000 0 0 +-0.50000 0.50000 1.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/go b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/go new file mode 100755 index 0000000..dfe5853 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.5 -4=1.5 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/job.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/job.in new file mode 100755 index 0000000..295159d --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J E21_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=40 -ip=$id & +done +wait diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/rndstr.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/rndstr.in new file mode 100644 index 0000000..cd0fbb2 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0 0 d_A=1 +0 0.5 0 d_A=1 +0 0 0.5 d_A=1 + +0.5 0.5 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/rndstrgrp.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/rndstrgrp.out new file mode 100644 index 0000000..da3f83c --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5_d=1/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.500000 0.500000 0.500000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.500000 0.000000 0.000000 d_A=1.000000 +0.000000 0.500000 0.000000 d_A=1.000000 +0.000000 0.000000 0.500000 d_A=1.000000 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/bestcorr.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..a99271c --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/bestcorr.out @@ -0,0 +1,39 @@ +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.118034 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.500000 0.000000 0.000000 0.000000 +2 1.500000 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 -0.166667 0.000000 -0.166667 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.000000 -1.000000 0.000000 -1.000000 +Objective_function= -9.404035 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/bestsqs.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..ec354b3 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/bestsqs.out @@ -0,0 +1,46 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-2.000000 -1.000000 1.000000 +2.000000 -1.000000 1.000000 +0.000000 1.000000 1.000000 +0.000000 0.000000 0.500000 d_A +-1.000000 -1.000000 1.500000 d_A +-0.000000 -1.000000 1.500000 d_B +1.000000 -1.000000 1.500000 d_B +-1.000000 0.000000 1.500000 d_A +-0.000000 0.000000 1.500000 d_A +1.000000 0.000000 1.500000 d_B +-0.000000 -1.000000 2.500000 d_B +-0.000000 -1.500000 2.000000 d_A +-1.000000 -0.500000 1.000000 d_B +0.000000 -0.500000 1.000000 d_B +1.000000 -0.500000 1.000000 d_A +1.000000 -0.500000 2.000000 d_B +-0.000000 0.500000 1.000000 d_A +-1.000000 -0.500000 2.000000 d_A +0.000000 -0.500000 2.000000 d_B +-1.500000 -0.000000 2.000000 d_B +-0.500000 0.000000 2.000000 d_A +0.500000 0.000000 2.000000 d_A +1.500000 0.000000 2.000000 d_B +-0.500000 0.000000 1.000000 d_B +0.500000 0.000000 1.000000 d_A +-0.500000 -1.000000 2.000000 d_A +0.500000 -1.000000 2.000000 d_B +0.000000 -1.000000 3.000000 a_B +-1.000000 0.000000 2.000000 a_A +0.000000 0.000000 2.000000 a_A +1.000000 0.000000 2.000000 a_B +1.000000 -1.000000 2.000000 a_A +0.000000 0.000000 1.000000 a_A +-1.000000 -1.000000 2.000000 a_B +0.000000 -1.000000 2.000000 a_B +-1.500000 -0.500000 1.500000 b_A +-0.500000 -0.500000 1.500000 b_A +0.500000 -0.500000 1.500000 b_A +1.500000 -0.500000 1.500000 b_A +-0.500000 0.500000 1.500000 b_A +0.500000 0.500000 1.500000 b_A +-0.500000 -0.500000 2.500000 b_A +0.500000 -0.500000 2.500000 b_A diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/clusters.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..471d9a3 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/clusters.out @@ -0,0 +1,259 @@ +6 +0.50000 +2 +0.50000 1.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 + +12 +0.70711 +2 +1.00000 0.50000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 + +3 +1.00000 +2 +1.00000 0.50000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +6 +1.00000 +2 +1.00000 0.50000 1.00000 0 0 +1.00000 0.50000 0.00000 0 0 + +24 +1.11803 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.50000 1.00000 0 0 + +24 +1.22474 +2 +1.00000 1.00000 0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +12 +1.41421 +2 +1.00000 0.50000 1.00000 0 0 +2.00000 1.50000 1.00000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 0.50000 0 0 +-0.00000 2.00000 0.50000 0 0 + +24 +1.50000 +2 +1.00000 1.00000 0.50000 0 0 +2.00000 0.00000 0.00000 0 0 + +6 +1.50000 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 1.00000 1.00000 0 0 + +12 +0.70711 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 + +3 +1.00000 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 0.50000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +12 +1.00000 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 + +24 +1.11803 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +-0.00000 1.50000 1.00000 0 0 + +24 +1.11803 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 +-0.00000 1.50000 1.00000 0 0 + +12 +1.11803 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 1.00000 0 0 +-0.00000 1.50000 1.00000 0 0 + +24 +1.11803 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +24 +1.11803 +3 +1.00000 0.50000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +12 +1.11803 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +12 +1.11803 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +48 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 1.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +48 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.50000 1.00000 0.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 -0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +2.00000 1.00000 0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +48 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +2.00000 1.00000 0.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +2.00000 0.50000 1.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +8 +0.70711 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.50000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 + diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/go b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/go new file mode 100755 index 0000000..015c975 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.5 -3=1.3 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/job.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/job.in new file mode 100755 index 0000000..295159d --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J E21_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=40 -ip=$id & +done +wait diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/rndstr.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..a17c2e4 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0 0 d_A=0.5,d_B=0.5 +0 0.5 0 d_A=0.5,d_B=0.5 +0 0 0.5 d_A=0.5,d_B=0.5 + +0.5 0.5 0.5 b_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..cff3f8e --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 0.000000 0.500000 d_A=0.500000,d_B=0.500000 +-0.000000 0.500000 0.000000 d_A=0.500000,d_B=0.500000 +0.500000 -0.000000 0.000000 d_A=0.500000,d_B=0.500000 + +-0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.500000 0.500000 0.500000 b_A=1.000000 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/sqsparam.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..352f666 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=0.5,0.5_b=1_d=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 1 0 3 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/bestcorr.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..bb51400 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/bestcorr.out @@ -0,0 +1,39 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 -0.333333 0.000000 -0.333333 +2 1.414214 -0.333333 0.000000 -0.333333 +2 1.414214 -0.333333 0.000000 -0.333333 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.000000 0.000000 0.000000 0.000000 +Objective_function= -47.244562 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/bestsqs.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..fcf6519 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/bestsqs.out @@ -0,0 +1,46 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 -1.000000 0.000000 +-0.000000 0.000000 2.000000 +-4.000000 0.000000 0.000000 +-3.000000 -1.000000 0.500000 d_B +-2.000000 -1.000000 0.500000 d_A +-1.000000 -1.000000 0.500000 d_A +-4.000000 -1.000000 0.500000 d_B +-3.000000 -1.000000 1.500000 d_A +-2.000000 -1.000000 1.500000 d_B +-1.000000 -1.000000 1.500000 d_B +-4.000000 -1.000000 1.500000 d_A +-3.000000 -0.500000 2.000000 d_A +-2.000000 -0.500000 2.000000 d_A +-1.000000 -0.500000 2.000000 d_B +-4.000000 -0.500000 2.000000 d_B +-3.000000 -0.500000 1.000000 d_B +-2.000000 -0.500000 1.000000 d_B +-1.000000 -0.500000 1.000000 d_A +-4.000000 -0.500000 1.000000 d_A +-2.500000 -1.000000 2.000000 d_A +-1.500000 -1.000000 2.000000 d_B +-0.500000 -1.000000 2.000000 d_A +-3.500000 -1.000000 2.000000 d_A +-2.500000 -1.000000 1.000000 d_B +-1.500000 -1.000000 1.000000 d_A +-0.500000 -1.000000 1.000000 d_B +-3.500000 -1.000000 1.000000 d_B +-2.500000 -0.500000 0.500000 b_B +-1.500000 -0.500000 0.500000 b_A +-0.500000 -0.500000 0.500000 b_A +-3.500000 -0.500000 0.500000 b_A +-2.500000 -0.500000 1.500000 b_A +-1.500000 -0.500000 1.500000 b_B +-0.500000 -0.500000 1.500000 b_B +-3.500000 -0.500000 1.500000 b_B +-3.000000 -1.000000 2.000000 a_A +-2.000000 -1.000000 2.000000 a_A +-1.000000 -1.000000 2.000000 a_A +-4.000000 -1.000000 2.000000 a_A +-3.000000 -1.000000 1.000000 a_A +-2.000000 -1.000000 1.000000 a_A +-1.000000 -1.000000 1.000000 a_A +-4.000000 -1.000000 1.000000 a_A diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/clusters.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..b8d97d5 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/clusters.out @@ -0,0 +1,263 @@ +12 +0.70711 +2 +0.50000 1.00000 1.00000 0 0 +1.00000 0.50000 1.00000 0 0 + +12 +0.70711 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 + +3 +1.00000 +2 +1.00000 0.50000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 + +6 +1.00000 +2 +1.00000 0.50000 1.00000 0 0 +1.00000 0.50000 0.00000 0 0 + +24 +1.22474 +2 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 -0.50000 0 0 + +24 +1.22474 +2 +1.00000 1.00000 0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +12 +1.41421 +2 +1.00000 0.50000 1.00000 0 0 +2.00000 1.50000 1.00000 0 0 + +6 +1.41421 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 0.50000 0 0 +-0.00000 2.00000 0.50000 0 0 + +24 +0.70711 +3 +1.00000 0.50000 1.00000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 0.50000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 +0.50000 0.50000 -0.50000 0 0 + +12 +1.00000 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 + +12 +1.00000 +3 +1.00000 0.50000 1.00000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 + +48 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 +0.00000 0.00000 -0.50000 0 0 + +48 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.00000 0.00000 0 0 +0.00000 0.00000 -0.50000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.00000 0.00000 -0.50000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +0.00000 0.00000 -0.50000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 -0.50000 0.00000 0 0 +0.00000 0.00000 -0.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 1.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +48 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.50000 1.00000 0.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.50000 0.50000 0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 -0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +2.00000 1.00000 0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +2.00000 0.50000 1.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +0.50000 1.00000 0.00000 0 0 +1.50000 1.50000 -0.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.50000 1.50000 0.50000 0 0 +1.50000 1.50000 -0.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +2.00000 1.00000 0.50000 0 0 +1.50000 1.50000 -0.50000 0 0 + +8 +0.70711 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +0.50000 0.50000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.50000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +12 +1.00000 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 1.00000 0.00000 0 0 +1.00000 0.50000 0.00000 0 0 +0.50000 0.50000 -0.50000 0 0 + +6 +1.00000 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.00000 0 0 +1.00000 0.50000 0.00000 0 0 +0.50000 0.50000 -0.50000 0 0 + +3 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 + +24 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.50000 0.50000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 + diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/go b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/go new file mode 100755 index 0000000..015c975 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.5 -3=1.3 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/job.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/job.in new file mode 100755 index 0000000..295159d --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J E21_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=40 -ip=$id & +done +wait diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/rndstr.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..8fb0a10 --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0 0 d_A=0.5,d_B=0.5 +0 0.5 0 d_A=0.5,d_B=0.5 +0 0 0.5 d_A=0.5,d_B=0.5 + +0.5 0.5 0.5 b_A=0.5,b_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..06515fd --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 0.000000 0.500000 d_A=0.500000,d_B=0.500000 +-0.000000 0.500000 0.000000 d_A=0.500000,d_B=0.500000 +0.500000 0.000000 0.000000 d_A=0.500000,d_B=0.500000 + +0.500000 0.500000 0.500000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/sqsparam.in b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..b477e9e --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsdb_lev=2_a=1_b=0.5,0.5_d=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 5 1 3 diff --git a/data/sqsdb/PEROVSKITE_E21/sqsgen.in b/data/sqsdb/PEROVSKITE_E21/sqsgen.in new file mode 100644 index 0000000..06b0ccc --- /dev/null +++ b/data/sqsdb/PEROVSKITE_E21/sqsgen.in @@ -0,0 +1,7 @@ +level=0 a=1 b=1 d=1 +level=1 a=0.5,0.5 b=1 d=1 +level=1 a=1 b=0.5,0.5 d=1 +level=1 a=1 b=1 d=0.5,0.5 +level=2 a=0.5,0.5 b=0.5,0.5 d=1 +level=2 a=0.5,0.5 b=1 d=0.5,0.5 +level=2 a=1 b=0.5,0.5 d=0.5,0.5 diff --git a/data/sqsdb/PYRITE_C2/notes.txt b/data/sqsdb/PYRITE_C2/notes.txt new file mode 100644 index 0000000..767b9dd --- /dev/null +++ b/data/sqsdb/PYRITE_C2/notes.txt @@ -0,0 +1,10 @@ +Each S is bonded to 3 Fe and 1 S. The S-S distance is + ||[x,x,x] - [1-x,1-x,1-x]||. +The Fe-S distance is + ||[x-1/2,x-1/2,x]||. +Assume all bond lengths are equal. + 3*(2x-1)^2 = 2*(x-1/2)^2 + x^2 + 18x^2-20x+5 = 0 + x = [10-sqrt(10)]/18 + = 0.37987 + diff --git a/data/sqsdb/PYRITE_C2/rndstr.skel b/data/sqsdb/PYRITE_C2/rndstr.skel new file mode 100644 index 0000000..b546c59 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/rndstr.skel @@ -0,0 +1,19 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.37987 0.37987 0.37987 c +0.12013 -0.37987 0.87987 c +-0.37987 0.87987 0.12013 c +0.87987 0.12013 -0.37987 c +-0.37987 -0.37987 -0.37987 c +0.87987 0.37987 0.12013 c +0.37987 0.12013 0.87987 c +0.12013 0.87987 0.37987 c + +0 0 0 a +0.5 0 0.5 a +0 0.5 0.5 a +0.5 0.5 0 a diff --git a/data/sqsdb/PYRITE_C2/rndstr.skel.sspp b/data/sqsdb/PYRITE_C2/rndstr.skel.sspp new file mode 100644 index 0000000..dc566e1 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/rndstr.skel.sspp @@ -0,0 +1,19 @@ +#const a=1; +{a} {a} {a} {90} {90} {90} +1 0 0 +0 1 0 +0 0 1 +#const x=0.37987; c="c"; +{x} {x} {x} {c} +{-x+1/2} {-x} {x+1/2} {c} +{-x} {x+1/2} {-x+1/2} {c} +{x+1/2} {-x+1/2} {-x} {c} +{-x} {-x} {-x} {c} +{x+1/2} {x} {-x+1/2} {c} +{x} {-x+1/2} {x+1/2} {c} +{-x+1/2} {x+1/2} {x} {c} +#const a="a"; +{0} {0} {0} {a} +{1/2} {0} {1/2} {a} +{0} {1/2} {1/2} {a} +{1/2} {1/2} {0} {a} diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=0_a=1_c=1/bestsqs.out b/data/sqsdb/PYRITE_C2/sqsdb_lev=0_a=1_c=1/bestsqs.out new file mode 100644 index 0000000..4718f7c --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=0_a=1_c=1/bestsqs.out @@ -0,0 +1,18 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.379870 0.379870 0.379870 c_A +0.120130 -0.379870 0.879870 c_A +-0.379870 0.879870 0.120130 c_A +0.879870 0.120130 -0.379870 c_A +-0.379870 -0.379870 -0.379870 c_A +0.879870 0.379870 0.120130 c_A +0.379870 0.120130 0.879870 c_A +0.120130 0.879870 0.379870 c_A +0.000000 0.000000 0.000000 a_A +0.500000 0.000000 0.500000 a_A +0.000000 0.500000 0.500000 a_A +0.500000 0.500000 0.000000 a_A diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=0_a=1_c=1/rndstr.in b/data/sqsdb/PYRITE_C2/sqsdb_lev=0_a=1_c=1/rndstr.in new file mode 100644 index 0000000..887843f --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=0_a=1_c=1/rndstr.in @@ -0,0 +1,19 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.37987 0.37987 0.37987 c_A=1 +0.12013 -0.37987 0.87987 c_A=1 +-0.37987 0.87987 0.12013 c_A=1 +0.87987 0.12013 -0.37987 c_A=1 +-0.37987 -0.37987 -0.37987 c_A=1 +0.87987 0.37987 0.12013 c_A=1 +0.37987 0.12013 0.87987 c_A=1 +0.12013 0.87987 0.37987 c_A=1 + +0 0 0 a_A=1 +0.5 0 0.5 a_A=1 +0 0.5 0.5 a_A=1 +0.5 0.5 0 a_A=1 diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out new file mode 100644 index 0000000..44aecfd --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out @@ -0,0 +1,17 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 -0.166667 0.000000 -0.166667 +2 1.414214 -0.166667 0.000000 -0.166667 +2 1.581139 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +Objective_function= -326.739214 diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out new file mode 100644 index 0000000..0a3e35b --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 0.000000 0.000000 +0.000000 -1.000000 -1.000000 +-0.000000 -2.000000 2.000000 +-1.000000 -1.000000 0.000000 a_A +-1.000000 -3.000000 1.000000 a_A +-1.000000 -2.000000 1.000000 a_B +-1.000000 -2.000000 0.000000 a_B +-0.500000 -1.000000 0.500000 a_B +-0.500000 -1.000000 -0.500000 a_A +-0.500000 -2.000000 1.500000 a_B +-0.500000 -2.000000 0.500000 a_A +-1.000000 -1.500000 -0.500000 a_A +-1.000000 -2.500000 1.500000 a_B +-1.000000 -2.500000 0.500000 a_B +-1.000000 -1.500000 0.500000 a_A +-0.500000 -0.500000 0.000000 a_A +-0.500000 -2.500000 1.000000 a_B +-0.500000 -1.500000 1.000000 a_A +-0.500000 -1.500000 0.000000 a_B +-0.620130 -0.620130 0.379870 c_A +-0.620130 -2.620130 1.379870 c_A +-0.620130 -1.620130 1.379870 c_A +-0.620130 -1.620130 0.379870 c_A +-0.879870 -1.379870 0.879870 c_A +-0.879870 -1.379870 -0.120130 c_A +-0.879870 -0.379870 -0.120130 c_A +-0.879870 -2.379870 0.879870 c_A +-0.379870 -1.120130 -0.879870 c_A +-0.379870 -2.120130 1.120130 c_A +-0.379870 -2.120130 0.120130 c_A +-0.379870 -1.120130 0.120130 c_A +-0.120130 -0.879870 -0.379870 c_A +-0.120130 -1.879870 1.620130 c_A +-0.120130 -1.879870 0.620130 c_A +-0.120130 -0.879870 0.620130 c_A +-0.379870 -1.379870 -0.379870 c_A +-0.379870 -2.379870 1.620130 c_A +-0.379870 -2.379870 0.620130 c_A +-0.379870 -1.379870 0.620130 c_A +-0.120130 -0.620130 0.120130 c_A +-0.120130 -2.620130 1.120130 c_A +-0.120130 -1.620130 1.120130 c_A +-0.120130 -1.620130 0.120130 c_A +-0.620130 -1.879870 -0.120130 c_A +-0.620130 -0.879870 -0.120130 c_A +-0.620130 -2.879870 0.879870 c_A +-0.620130 -1.879870 0.879870 c_A +-0.879870 -1.120130 -0.620130 c_A +-0.879870 -2.120130 1.379870 c_A +-0.879870 -2.120130 0.379870 c_A +-0.879870 -1.120130 0.379870 c_A diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out new file mode 100644 index 0000000..7cc5697 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out @@ -0,0 +1,108 @@ +24 +0.70711 +2 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 + +12 +1.00000 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +24 +1.22474 +2 +1.00000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +24 +1.22474 +2 +1.00000 0.50000 0.50000 0 0 +1.50000 0.00000 -0.50000 0 0 + +12 +1.41421 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +12 +1.41421 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 1.50000 2.00000 0 0 + +24 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 1.50000 1.00000 0 0 + +24 +1.58114 +2 +1.00000 0.50000 0.50000 0 0 +1.00000 -0.00000 -1.00000 0 0 + +24 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.50000 0 0 +0.50000 1.50000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +0.50000 1.50000 1.00000 0 0 + +24 +1.00000 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +24 +1.00000 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +1.50000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +0.50000 1.00000 1.50000 0 0 +0.50000 1.50000 1.00000 0 0 + +12 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +24 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +24 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +1.00000 1.00000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/go b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/go new file mode 100755 index 0000000..ae1f56d --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.7 -3=1 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/job.in b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/job.in new file mode 100755 index 0000000..d6b2018 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C2_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in new file mode 100644 index 0000000..b37c98f --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in @@ -0,0 +1,19 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.37987 0.37987 0.37987 c_A=1 +0.12013 -0.37987 0.87987 c_A=1 +-0.37987 0.87987 0.12013 c_A=1 +0.87987 0.12013 -0.37987 c_A=1 +-0.37987 -0.37987 -0.37987 c_A=1 +0.87987 0.37987 0.12013 c_A=1 +0.37987 0.12013 0.87987 c_A=1 +0.12013 0.87987 0.37987 c_A=1 + +0 0 0 a_A=0.5,a_B=0.5 +0.5 0 0.5 a_A=0.5,a_B=0.5 +0 0.5 0.5 a_A=0.5,a_B=0.5 +0.5 0.5 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out new file mode 100644 index 0000000..0a1ca8b --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out @@ -0,0 +1,20 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 +0.500000 -0.000000 0.500000 a_A=0.500000,a_B=0.500000 +-0.000000 0.500000 0.500000 a_A=0.500000,a_B=0.500000 +0.500000 0.500000 0.000000 a_A=0.500000,a_B=0.500000 + +0.379870 0.379870 0.379870 c_A=1.000000 +0.120130 -0.379870 0.879870 c_A=1.000000 +-0.379870 0.879870 0.120130 c_A=1.000000 +0.879870 0.120130 -0.379870 c_A=1.000000 +-0.379870 -0.379870 -0.379870 c_A=1.000000 +0.879870 0.379870 0.120130 c_A=1.000000 +0.379870 0.120130 0.879870 c_A=1.000000 +0.120130 0.879870 0.379870 c_A=1.000000 diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/sqsparam.in b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/sqsparam.in new file mode 100644 index 0000000..c74c870 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=0.5,0.5_c=1/sqsparam.in @@ -0,0 +1 @@ +2 10 2 8 diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..7b268d1 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,29 @@ +2 0.416143 0.000000 0.000000 0.000000 +2 0.563440 0.000000 0.000000 0.000000 +2 0.612527 0.000000 0.000000 0.000000 +2 0.832259 0.000000 0.000000 0.000000 +2 0.893300 0.000000 0.000000 0.000000 +2 0.925046 0.000000 0.000000 0.000000 +2 0.945870 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.100970 0.000000 0.000000 0.000000 +2 1.147809 0.000000 0.000000 0.000000 +2 1.147809 0.000000 0.000000 0.000000 +2 1.172685 0.000000 0.000000 0.000000 +2 1.285961 0.000000 0.000000 0.000000 +3 0.612527 0.000000 0.000000 0.000000 +3 0.612527 0.000000 0.000000 0.000000 +3 0.612527 0.000000 0.000000 0.000000 +3 0.612527 0.000000 0.000000 0.000000 +3 0.832259 0.000000 0.000000 0.000000 +3 0.832259 0.000000 0.000000 0.000000 +3 0.893300 0.000000 0.000000 0.000000 +3 0.893300 0.000000 0.000000 0.000000 +3 0.893300 0.000000 0.000000 0.000000 +3 0.893300 0.000000 0.000000 0.000000 +4 0.612527 0.000000 0.000000 0.000000 +4 0.612527 0.000000 0.000000 0.000000 +4 0.832259 0.000000 0.000000 0.000000 +4 0.832259 -0.333333 0.000000 -0.333333 +4 0.832259 0.000000 0.000000 0.000000 +Objective_function= -235.457703 diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..066a36d --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 2.000000 0.000000 +-1.000000 -2.000000 0.000000 +0.000000 0.000000 1.000000 +-0.620130 -0.620130 0.379870 c_B +-0.620130 0.379870 0.379870 c_A +-1.620130 0.379870 0.379870 c_B +-1.620130 -0.620130 0.379870 c_A +-0.379870 0.620130 0.620130 c_A +-1.379870 -0.379870 0.620130 c_B +-0.379870 -0.379870 0.620130 c_A +-1.379870 0.620130 0.620130 c_B +-1.120130 1.379870 0.120130 c_A +-1.120130 -1.620130 0.120130 c_A +-1.120130 0.379870 0.120130 c_B +-1.120130 -0.620130 0.120130 c_B +-0.879870 -1.379870 0.879870 c_A +-0.879870 -0.379870 0.879870 c_A +-0.879870 1.620130 0.879870 c_B +-0.879870 0.620130 0.879870 c_B +-0.620130 -0.879870 0.879870 c_A +-0.620130 0.120130 0.879870 c_A +-1.620130 0.120130 0.879870 c_B +-0.620130 1.120130 0.879870 c_B +-1.379870 -0.120130 0.120130 c_A +-1.379870 0.879870 0.120130 c_A +-1.379870 -1.120130 0.120130 c_B +-0.379870 -0.120130 0.120130 c_B +-1.120130 1.120130 0.620130 c_B +-0.120130 0.120130 0.620130 c_A +-1.120130 0.120130 0.620130 c_B +-1.120130 -0.879870 0.620130 c_A +-0.879870 -0.120130 0.379870 c_A +-0.879870 0.879870 0.379870 c_B +-0.879870 -1.120130 0.379870 c_A +-1.879870 -0.120130 0.379870 c_B +-1.000000 -1.000000 1.000000 a_A +-1.000000 0.000000 1.000000 a_A +-2.000000 0.000000 1.000000 a_A +-1.000000 1.000000 1.000000 a_A +-1.500000 1.000000 0.500000 a_A +-0.500000 0.000000 0.500000 a_A +-1.500000 -0.000000 0.500000 a_A +-1.500000 -1.000000 0.500000 a_A +-1.000000 -0.500000 0.500000 a_A +-1.000000 0.500000 0.500000 a_A +-1.000000 -1.500000 0.500000 a_A +-1.000000 1.500000 0.500000 a_A +-0.500000 -0.500000 1.000000 a_A +-0.500000 0.500000 1.000000 a_A +-1.500000 0.500000 1.000000 a_A +-1.500000 -0.500000 1.000000 a_A diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..1795eb3 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out @@ -0,0 +1,188 @@ +4 +0.41614 +2 +0.87987 0.37987 0.12013 0 0 +1.12013 0.62013 -0.12013 0 0 + +24 +0.56344 +2 +0.37987 0.37987 0.37987 0 0 +0.37987 0.12013 -0.12013 0 0 + +24 +0.61253 +2 +0.12013 0.87987 0.37987 0 0 +0.37987 1.12013 -0.12013 0 0 + +12 +0.83226 +2 +0.62013 0.87987 0.12013 0 0 +1.37987 1.12013 -0.12013 0 0 + +24 +0.89330 +2 +0.87987 0.12013 0.62013 0 0 +1.37987 0.12013 -0.12013 0 0 + +24 +0.92505 +2 +0.87987 0.37987 0.12013 0 0 +1.37987 1.12013 -0.12013 0 0 + +24 +0.94587 +2 +0.62013 0.87987 0.12013 0 0 +1.37987 1.37987 0.37987 0 0 + +24 +1.00000 +2 +0.37987 0.12013 0.87987 0 0 +1.37987 0.12013 0.87987 0 0 + +12 +1.10097 +2 +0.62013 0.62013 0.62013 0 0 +1.37987 1.37987 0.37987 0 0 + +24 +1.14781 +2 +0.37987 0.12013 0.87987 0 0 +1.37987 0.37987 1.37987 0 0 + +24 +1.14781 +2 +0.37987 0.12013 0.87987 0 0 +-0.62013 0.37987 1.37987 0 0 + +24 +1.17268 +2 +0.87987 0.37987 0.12013 0 0 +1.62013 -0.37987 -0.37987 0 0 + +12 +1.28596 +2 +0.62013 0.87987 0.12013 0 0 +-0.62013 1.12013 -0.12013 0 0 + +24 +0.61253 +3 +0.12013 0.87987 0.37987 0 0 +0.37987 1.37987 0.37987 0 0 +0.37987 1.12013 -0.12013 0 0 + +24 +0.61253 +3 +0.12013 0.87987 0.37987 0 0 +0.12013 0.62013 -0.12013 0 0 +0.37987 1.12013 -0.12013 0 0 + +8 +0.61253 +3 +0.12013 0.87987 0.37987 0 0 +-0.12013 1.37987 0.12013 0 0 +0.37987 1.12013 -0.12013 0 0 + +24 +0.61253 +3 +0.12013 0.87987 0.37987 0 0 +-0.12013 1.12013 0.62013 0 0 +-0.12013 1.37987 0.12013 0 0 + +24 +0.83226 +3 +0.62013 0.87987 0.12013 0 0 +1.12013 0.87987 0.37987 0 0 +1.37987 1.12013 -0.12013 0 0 + +24 +0.83226 +3 +0.62013 0.87987 0.12013 0 0 +0.87987 1.37987 0.12013 0 0 +1.37987 1.12013 -0.12013 0 0 + +24 +0.89330 +3 +0.87987 0.12013 0.62013 0 0 +1.12013 -0.12013 0.37987 0 0 +1.37987 0.12013 -0.12013 0 0 + +24 +0.89330 +3 +0.87987 0.12013 0.62013 0 0 +0.87987 0.37987 0.12013 0 0 +1.37987 0.12013 -0.12013 0 0 + +24 +0.89330 +3 +0.87987 0.12013 0.62013 0 0 +0.62013 -0.12013 0.12013 0 0 +1.37987 0.12013 -0.12013 0 0 + +24 +0.89330 +3 +0.12013 0.87987 0.37987 0 0 +0.37987 1.37987 0.37987 0 0 +0.12013 1.62013 -0.12013 0 0 + +8 +0.61253 +4 +0.12013 0.87987 0.37987 0 0 +0.37987 1.37987 0.37987 0 0 +-0.12013 1.37987 0.12013 0 0 +0.37987 1.12013 -0.12013 0 0 + +24 +0.61253 +4 +0.12013 0.87987 0.37987 0 0 +-0.12013 1.12013 0.62013 0 0 +0.37987 1.37987 0.37987 0 0 +-0.12013 1.37987 0.12013 0 0 + +24 +0.83226 +4 +0.62013 0.87987 0.12013 0 0 +0.87987 1.37987 0.12013 0 0 +1.12013 0.87987 0.37987 0 0 +1.37987 1.12013 -0.12013 0 0 + +12 +0.83226 +4 +0.62013 0.87987 0.12013 0 0 +1.12013 0.87987 0.37987 0 0 +0.87987 1.12013 -0.37987 0 0 +1.37987 1.12013 -0.12013 0 0 + +24 +0.83226 +4 +0.62013 0.87987 0.12013 0 0 +0.87987 1.37987 0.12013 0 0 +0.87987 1.12013 -0.37987 0 0 +1.37987 1.12013 -0.12013 0 0 + diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/go b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/go new file mode 100755 index 0000000..c2442e6 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.3 -3=0.9 -4=0.85 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/job.in b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/job.in new file mode 100755 index 0000000..d6b2018 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C2_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..cd44b6b --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,19 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.37987 0.37987 0.37987 c_A=0.5,c_B=0.5 +0.12013 -0.37987 0.87987 c_A=0.5,c_B=0.5 +-0.37987 0.87987 0.12013 c_A=0.5,c_B=0.5 +0.87987 0.12013 -0.37987 c_A=0.5,c_B=0.5 +-0.37987 -0.37987 -0.37987 c_A=0.5,c_B=0.5 +0.87987 0.37987 0.12013 c_A=0.5,c_B=0.5 +0.37987 0.12013 0.87987 c_A=0.5,c_B=0.5 +0.12013 0.87987 0.37987 c_A=0.5,c_B=0.5 + +0 0 0 a_A=1 +0.5 0 0.5 a_A=1 +0 0.5 0.5 a_A=1 +0.5 0.5 0 a_A=1 diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..0ec66ee --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,20 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.379870 0.379870 0.379870 c_A=0.500000,c_B=0.500000 +-0.379870 -0.379870 -0.379870 c_A=0.500000,c_B=0.500000 +0.879870 0.379870 0.120130 c_A=0.500000,c_B=0.500000 +0.120130 -0.379870 0.879870 c_A=0.500000,c_B=0.500000 +0.379870 0.120130 0.879870 c_A=0.500000,c_B=0.500000 +-0.379870 0.879870 0.120130 c_A=0.500000,c_B=0.500000 +0.879870 0.120130 -0.379870 c_A=0.500000,c_B=0.500000 +0.120130 0.879870 0.379870 c_A=0.500000,c_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 +0.500000 0.000000 0.500000 a_A=1.000000 +0.000000 0.500000 0.500000 a_A=1.000000 +0.500000 0.500000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/sqsparam.in b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..02d74b3 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=1_a=1_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 10 1 5 diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..69ea4fc --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out @@ -0,0 +1,27 @@ +2 0.416129 0.000000 0.000000 0.000000 +2 0.416143 0.000000 0.000000 0.000000 +2 0.563440 0.000000 0.000000 0.000000 +2 0.612527 0.000000 0.000000 0.000000 +2 0.642980 0.000000 0.000000 0.000000 +2 0.657954 0.000000 0.000000 0.000000 +2 0.707107 -0.166667 0.000000 -0.166667 +2 0.820466 0.000000 0.000000 0.000000 +2 0.832259 -0.833333 0.000000 -0.833333 +2 0.893300 0.000000 0.000000 0.000000 +3 0.563440 0.000000 0.000000 0.000000 +3 0.612527 0.000000 0.000000 0.000000 +3 0.612527 0.000000 0.000000 0.000000 +3 0.612527 0.000000 0.000000 0.000000 +3 0.612527 0.000000 0.000000 0.000000 +3 0.612527 0.000000 0.000000 0.000000 +3 0.642980 -0.250000 0.000000 -0.250000 +3 0.642980 -0.083333 0.000000 -0.083333 +3 0.642980 -0.083333 0.000000 -0.083333 +4 0.612527 0.000000 0.000000 0.000000 +4 0.612527 0.000000 0.000000 0.000000 +4 0.612527 0.000000 0.000000 0.000000 +4 0.612527 0.000000 0.000000 0.000000 +4 0.642980 0.000000 0.000000 0.000000 +4 0.642980 0.000000 0.000000 0.000000 +4 0.642980 0.000000 0.000000 0.000000 +Objective_function= -343.316580 diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..4b9a5db --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 -1.000000 -1.000000 +0.000000 1.000000 -1.000000 +2.000000 0.000000 0.000000 +0.379870 0.379870 -0.620130 c_B +1.379870 0.379870 -0.620130 c_A +0.379870 0.379870 -1.620130 c_A +1.379870 0.379870 -1.620130 c_B +1.620130 -0.379870 -1.379870 c_A +0.620130 -0.379870 -1.379870 c_B +1.620130 0.620130 -1.379870 c_B +0.620130 0.620130 -1.379870 c_A +0.879870 0.379870 -0.879870 c_A +1.879870 0.379870 -0.879870 c_B +0.879870 -0.620130 -0.879870 c_A +1.879870 -0.620130 -0.879870 c_B +0.120130 0.620130 -1.120130 c_A +1.120130 0.620130 -1.120130 c_B +0.120130 -0.379870 -1.120130 c_A +1.120130 -0.379870 -1.120130 c_B +0.379870 -0.879870 -1.120130 c_A +1.379870 -0.879870 -1.120130 c_A +0.379870 0.120130 -1.120130 c_A +1.379870 0.120130 -1.120130 c_A +1.620130 -0.120130 -1.879870 c_B +0.620130 -0.120130 -1.879870 c_B +1.620130 -0.120130 -0.879870 c_B +0.620130 -0.120130 -0.879870 c_B +0.879870 0.120130 -1.379870 c_B +1.879870 0.120130 -1.379870 c_A +0.879870 0.120130 -0.379870 c_A +1.879870 0.120130 -0.379870 c_B +0.120130 -0.120130 -1.620130 c_A +1.120130 -0.120130 -1.620130 c_B +0.120130 -0.120130 -0.620130 c_B +1.120130 -0.120130 -0.620130 c_A +2.000000 -0.000000 -1.000000 a_A +1.000000 -0.000000 -1.000000 a_B +2.000000 0.000000 -2.000000 a_B +1.000000 0.000000 -2.000000 a_B +0.500000 -0.000000 -0.500000 a_A +1.500000 -0.000000 -0.500000 a_A +0.500000 0.000000 -1.500000 a_A +1.500000 0.000000 -1.500000 a_A +2.000000 -0.500000 -1.500000 a_A +1.000000 -0.500000 -1.500000 a_B +2.000000 0.500000 -1.500000 a_A +1.000000 0.500000 -1.500000 a_A +0.500000 0.500000 -1.000000 a_B +1.500000 0.500000 -1.000000 a_B +0.500000 -0.500000 -1.000000 a_B +1.500000 -0.500000 -1.000000 a_B diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..32b634e --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out @@ -0,0 +1,179 @@ +24 +0.41613 +2 +0.87987 0.37987 0.12013 0 0 +1.00000 0.00000 0.00000 0 0 + +4 +0.41614 +2 +0.62013 0.87987 0.12013 0 0 +0.37987 1.12013 -0.12013 0 0 + +24 +0.56344 +2 +0.37987 0.37987 0.37987 0 0 +0.37987 0.12013 -0.12013 0 0 + +24 +0.61253 +2 +0.12013 0.87987 0.37987 0 0 +0.37987 1.12013 -0.12013 0 0 + +24 +0.64298 +2 +0.87987 0.12013 0.62013 0 0 +1.00000 0.00000 0.00000 0 0 + +8 +0.65795 +2 +1.00000 1.00000 1.00000 0 0 +1.37987 1.37987 1.37987 0 0 + +24 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 + +24 +0.82047 +2 +0.37987 0.37987 0.37987 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +0.83226 +2 +0.62013 0.87987 0.12013 0 0 +1.37987 1.12013 -0.12013 0 0 + +24 +0.89330 +2 +0.87987 0.12013 0.62013 0 0 +1.37987 0.12013 -0.12013 0 0 + +24 +0.56344 +3 +0.37987 0.37987 0.37987 0 0 +0.50000 0.50000 0.00000 0 0 +0.37987 0.12013 -0.12013 0 0 + +24 +0.61253 +3 +0.12013 0.87987 0.37987 0 0 +-0.00000 1.00000 0.00000 0 0 +0.37987 1.12013 -0.12013 0 0 + +24 +0.61253 +3 +0.12013 0.87987 0.37987 0 0 +0.37987 1.37987 0.37987 0 0 +0.37987 1.12013 -0.12013 0 0 + +24 +0.61253 +3 +0.12013 0.87987 0.37987 0 0 +0.12013 0.62013 -0.12013 0 0 +0.37987 1.12013 -0.12013 0 0 + +8 +0.61253 +3 +0.12013 0.87987 0.37987 0 0 +-0.12013 1.37987 0.12013 0 0 +0.37987 1.12013 -0.12013 0 0 + +24 +0.61253 +3 +0.12013 0.87987 0.37987 0 0 +-0.12013 1.12013 0.62013 0 0 +-0.12013 1.37987 0.12013 0 0 + +24 +0.64298 +3 +0.87987 0.12013 0.62013 0 0 +1.12013 -0.12013 0.37987 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +0.64298 +3 +1.00000 0.50000 0.50000 0 0 +1.37987 0.37987 0.37987 0 0 +1.12013 0.62013 -0.12013 0 0 + +24 +0.64298 +3 +1.00000 0.50000 0.50000 0 0 +1.12013 0.87987 0.37987 0 0 +1.12013 0.62013 -0.12013 0 0 + +24 +0.61253 +4 +0.12013 0.87987 0.37987 0 0 +-0.00000 1.00000 0.00000 0 0 +0.12013 0.62013 -0.12013 0 0 +0.37987 1.12013 -0.12013 0 0 + +8 +0.61253 +4 +0.12013 0.87987 0.37987 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.12013 1.37987 0.12013 0 0 +0.37987 1.12013 -0.12013 0 0 + +8 +0.61253 +4 +0.12013 0.87987 0.37987 0 0 +0.37987 1.37987 0.37987 0 0 +-0.12013 1.37987 0.12013 0 0 +0.37987 1.12013 -0.12013 0 0 + +24 +0.61253 +4 +0.12013 0.87987 0.37987 0 0 +-0.12013 1.12013 0.62013 0 0 +0.37987 1.37987 0.37987 0 0 +-0.12013 1.37987 0.12013 0 0 + +24 +0.64298 +4 +0.87987 0.12013 0.62013 0 0 +1.12013 -0.12013 0.37987 0 0 +0.87987 0.37987 0.12013 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +0.64298 +4 +0.87987 0.12013 0.62013 0 0 +1.12013 -0.12013 0.37987 0 0 +0.62013 -0.12013 0.12013 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +0.64298 +4 +1.00000 0.50000 0.50000 0 0 +1.12013 0.87987 0.37987 0 0 +1.37987 0.37987 0.37987 0 0 +1.12013 0.62013 -0.12013 0 0 + diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go new file mode 100755 index 0000000..49239e7 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=0.9 -3=0.65 -4=0.65 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in new file mode 100755 index 0000000..2ad8fd3 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C2_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..633c238 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in @@ -0,0 +1,19 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.37987 0.37987 0.37987 c_A=0.5,c_B=0.5 +0.12013 -0.37987 0.87987 c_A=0.5,c_B=0.5 +-0.37987 0.87987 0.12013 c_A=0.5,c_B=0.5 +0.87987 0.12013 -0.37987 c_A=0.5,c_B=0.5 +-0.37987 -0.37987 -0.37987 c_A=0.5,c_B=0.5 +0.87987 0.37987 0.12013 c_A=0.5,c_B=0.5 +0.37987 0.12013 0.87987 c_A=0.5,c_B=0.5 +0.12013 0.87987 0.37987 c_A=0.5,c_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 +0.5 0 0.5 a_A=0.5,a_B=0.5 +0 0.5 0.5 a_A=0.5,a_B=0.5 +0.5 0.5 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..4414886 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,20 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.379870 0.379870 0.379870 c_A=0.500000,c_B=0.500000 +-0.379870 -0.379870 -0.379870 c_A=0.500000,c_B=0.500000 +0.879870 0.379870 0.120130 c_A=0.500000,c_B=0.500000 +0.120130 -0.379870 0.879870 c_A=0.500000,c_B=0.500000 +0.379870 0.120130 0.879870 c_A=0.500000,c_B=0.500000 +-0.379870 0.879870 0.120130 c_A=0.500000,c_B=0.500000 +0.879870 0.120130 -0.379870 c_A=0.500000,c_B=0.500000 +0.120130 0.879870 0.379870 c_A=0.500000,c_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 +0.500000 0.000000 0.500000 a_A=0.500000,a_B=0.500000 +0.000000 0.500000 0.500000 a_A=0.500000,a_B=0.500000 +0.500000 0.500000 0.000000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..c74c870 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +2 10 2 8 diff --git a/data/sqsdb/PYRITE_C2/sqsgen.in b/data/sqsdb/PYRITE_C2/sqsgen.in new file mode 100644 index 0000000..46d1288 --- /dev/null +++ b/data/sqsdb/PYRITE_C2/sqsgen.in @@ -0,0 +1,4 @@ +level=0 a=1 c=1 +level=1 a=0.5,0.5 c=1 +level=1 a=1 c=0.5,0.5 +level=2 a=0.5,0.5 c=0.5,0.5 diff --git a/data/sqsdb/REO3_D09/rndstr.skel b/data/sqsdb/REO3_D09/rndstr.skel new file mode 100644 index 0000000..ef08313 --- /dev/null +++ b/data/sqsdb/REO3_D09/rndstr.skel @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0 0 d +0 0.5 0 d +0 0 0.5 d + +0 0 0 a diff --git a/data/sqsdb/REO3_D09/rndstr.skel.sspp b/data/sqsdb/REO3_D09/rndstr.skel.sspp new file mode 100644 index 0000000..5a1b792 --- /dev/null +++ b/data/sqsdb/REO3_D09/rndstr.skel.sspp @@ -0,0 +1,11 @@ +#const a=1; +{a} {a} {a} {90} {90} {90} +1 0 0 +0 1 0 +0 0 1 +#const D="d"; +{1/2} {0} {0} {D} +{0} {1/2} {0} {D} +{0} {0} {1/2} {D} +#const A="a"; +{0} {0} {0} {A} diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=0_a=1_d=1/bestsqs.out b/data/sqsdb/REO3_D09/sqsdb_lev=0_a=1_d=1/bestsqs.out new file mode 100644 index 0000000..7ced17d --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=0_a=1_d=1/bestsqs.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.000000 0.000000 d_A +0.000000 0.500000 0.000000 d_A +0.000000 0.000000 0.500000 d_A +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=0_a=1_d=1/rndstr.in b/data/sqsdb/REO3_D09/sqsdb_lev=0_a=1_d=1/rndstr.in new file mode 100644 index 0000000..cd356be --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=0_a=1_d=1/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0 0 d_A=1 +0 0.5 0 d_A=1 +0 0 0.5 d_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/bestcorr.out b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/bestcorr.out new file mode 100644 index 0000000..05e2bb6 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/bestcorr.out @@ -0,0 +1,16 @@ +2 1.000000 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 2.000000 -0.333333 0.000000 -0.333333 +2 2.236068 0.000000 0.000000 0.000000 +2 2.449490 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.732051 0.000000 0.000000 0.000000 +4 1.414214 -0.333333 0.000000 -0.333333 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 1.000000 0.000000 1.000000 +4 1.732051 0.000000 0.000000 0.000000 +4 1.732051 0.000000 0.000000 0.000000 +4 1.732051 -0.333333 0.000000 -0.333333 +Objective_function= -326.532039 diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/bestsqs.out b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/bestsqs.out new file mode 100644 index 0000000..9f060c3 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.000000 -1.000000 +1.000000 -1.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-1.000000 -2.000000 -1.000000 a_A +-2.000000 -1.000000 -1.000000 a_B +-1.000000 -1.000000 -1.000000 a_B +-0.000000 -1.000000 -1.000000 a_A +-1.000000 -0.000000 -1.000000 a_B +-2.000000 -2.000000 -1.000000 a_A +-1.000000 -1.000000 -2.000000 a_B +-2.000000 -2.000000 -2.000000 a_A +-0.500000 -2.000000 -1.000000 d_A +-1.500000 -1.000000 -1.000000 d_A +-0.500000 -1.000000 -1.000000 d_A +0.500000 -1.000000 -1.000000 d_A +-0.500000 -0.000000 -1.000000 d_A +-1.500000 -2.000000 -1.000000 d_A +-1.500000 -0.000000 -1.000000 d_A +-2.500000 -1.000000 -1.000000 d_A +-1.000000 -1.500000 -1.000000 d_A +-2.000000 -0.500000 -1.000000 d_A +-1.000000 -0.500000 -1.000000 d_A +0.000000 -0.500000 -1.000000 d_A +-1.000000 0.500000 -1.000000 d_A +-2.000000 -1.500000 -1.000000 d_A +-0.000000 -1.500000 -1.000000 d_A +-1.000000 -2.500000 -1.000000 d_A +-2.000000 -1.000000 -1.500000 d_A +-1.000000 -2.000000 -1.500000 d_A +-1.000000 -1.000000 -0.500000 d_A +-1.000000 -0.000000 -1.500000 d_A +-0.000000 -1.000000 -1.500000 d_A +-2.000000 -2.000000 -0.500000 d_A +-1.000000 -1.000000 -1.500000 d_A +-2.000000 -2.000000 -1.500000 d_A diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/clusters.out b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/clusters.out new file mode 100644 index 0000000..c750a43 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/clusters.out @@ -0,0 +1,105 @@ +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 -1.00000 0 0 + +12 +2.23607 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 -1.00000 0 0 + +12 +2.44949 +2 +1.00000 1.00000 1.00000 0 0 +2.00000 2.00000 3.00000 0 0 + +12 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +8 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +24 +1.73205 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +3 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +8 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +2 +1.41421 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 2.00000 2.00000 0 0 +-0.00000 1.00000 2.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +24 +1.73205 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +24 +1.73205 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +6 +1.73205 +4 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +1.00000 0.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 + diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/go b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/go new file mode 100755 index 0000000..cc85565 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2.5 -3=1.8 -4=1.8 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/job.in b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/job.in new file mode 100755 index 0000000..4a6ce90 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J D09_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/rndstr.in b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/rndstr.in new file mode 100644 index 0000000..b13a581 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0 0 d_A=1 +0 0.5 0 d_A=1 +0 0 0.5 d_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/rndstrgrp.out b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/rndstrgrp.out new file mode 100644 index 0000000..31fe98a --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.500000 0.000000 0.000000 d_A=1.000000 +0.000000 0.500000 0.000000 d_A=1.000000 +0.000000 0.000000 0.500000 d_A=1.000000 diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/sqsparam.in b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/sqsparam.in new file mode 100644 index 0000000..c74c870 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=0.5,0.5_d=1/sqsparam.in @@ -0,0 +1 @@ +2 10 2 8 diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/bestcorr.out b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..d0d3d95 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/bestcorr.out @@ -0,0 +1,24 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -0.333333 0.000000 -0.333333 +2 2.000000 -0.333333 0.000000 -0.333333 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.000000 -0.333333 0.000000 -0.333333 +Objective_function= -342.952915 diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/bestsqs.out b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..8fd8cd2 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.000000 -2.000000 +1.000000 -1.000000 0.000000 +-2.000000 -2.000000 0.000000 +-1.000000 -2.000000 -0.500000 d_B +0.000000 -2.000000 -0.500000 d_B +-0.000000 -1.000000 -0.500000 d_A +-1.000000 -3.000000 -0.500000 d_A +-1.000000 -2.000000 -1.500000 d_A +-0.000000 -2.000000 -1.500000 d_B +-0.000000 -1.000000 -1.500000 d_B +-1.000000 -3.000000 -1.500000 d_A +-1.000000 -1.500000 -1.000000 d_B +-0.000000 -1.500000 -1.000000 d_B +0.000000 -0.500000 -1.000000 d_A +-1.000000 -2.500000 -1.000000 d_A +-1.000000 -1.500000 -2.000000 d_A +-0.000000 -1.500000 -2.000000 d_A +-0.000000 -0.500000 -2.000000 d_B +-1.000000 -2.500000 -2.000000 d_B +-0.500000 -2.000000 -1.000000 d_B +-0.500000 -1.000000 -1.000000 d_A +0.500000 -1.000000 -1.000000 d_A +-1.500000 -2.000000 -1.000000 d_B +-0.500000 -2.000000 -2.000000 d_B +-0.500000 -1.000000 -2.000000 d_A +0.500000 -1.000000 -2.000000 d_A +-1.500000 -2.000000 -2.000000 d_B +-1.000000 -2.000000 -1.000000 a_A +0.000000 -2.000000 -1.000000 a_A +0.000000 -1.000000 -1.000000 a_A +-1.000000 -3.000000 -1.000000 a_A +-1.000000 -2.000000 -2.000000 a_A +0.000000 -2.000000 -2.000000 a_A +-0.000000 -1.000000 -2.000000 a_A +-1.000000 -3.000000 -2.000000 a_A diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/clusters.out b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..f5e3fc7 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/clusters.out @@ -0,0 +1,153 @@ +12 +0.70711 +2 +0.50000 1.00000 1.00000 0 0 +1.00000 0.50000 1.00000 0 0 + +3 +1.00000 +2 +1.00000 0.50000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +6 +1.00000 +2 +1.00000 0.50000 1.00000 0 0 +1.00000 0.50000 0.00000 0 0 + +24 +1.22474 +2 +1.00000 1.00000 0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +12 +1.41421 +2 +1.00000 0.50000 1.00000 0 0 +2.00000 1.50000 1.00000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 0.50000 0 0 +-0.00000 2.00000 0.50000 0 0 + +24 +1.58114 +2 +1.00000 1.00000 0.50000 0 0 +-0.50000 1.00000 0.00000 0 0 + +12 +1.73205 +2 +1.00000 0.50000 1.00000 0 0 +0.00000 1.50000 2.00000 0 0 + +48 +1.87083 +2 +1.00000 0.50000 1.00000 0 0 +-0.50000 -0.00000 2.00000 0 0 + +3 +2.00000 +2 +0.50000 1.00000 1.00000 0 0 +2.50000 1.00000 1.00000 0 0 + +6 +2.00000 +2 +1.00000 0.50000 1.00000 0 0 +1.00000 0.50000 -1.00000 0 0 + +8 +0.70711 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 0.50000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 1.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +48 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.50000 1.00000 0.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 -0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +2.00000 1.00000 0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 0.50000 0 0 +2.00000 0.50000 1.00000 0 0 +1.50000 0.00000 0.00000 0 0 + +12 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.50000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 + diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/go b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/go new file mode 100755 index 0000000..7ffa23c --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.3 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/job.in b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/job.in new file mode 100755 index 0000000..4a6ce90 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J D09_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/rndstr.in b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..45eec9d --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0 0 d_A=0.5,d_B=0.5 +0 0.5 0 d_A=0.5,d_B=0.5 +0 0 0.5 d_A=0.5,d_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..01b4422 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 0.000000 0.500000 d_A=0.500000,d_B=0.500000 +-0.000000 0.500000 0.000000 d_A=0.500000,d_B=0.500000 +0.500000 0.000000 0.000000 d_A=0.500000,d_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/sqsparam.in b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..fa5710b --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=1_a=1_d=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +2 10 2 5 diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestcorr.out b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..dd5ff51 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestcorr.out @@ -0,0 +1,24 @@ +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.118034 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.500000 0.000000 0.000000 0.000000 +2 1.500000 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 0.166667 0.000000 0.166667 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +4 1.000000 -0.333333 0.000000 -0.333333 +Objective_function= -467.812681 diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestsqs.out b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..c5aa495 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-2.000000 -1.000000 1.000000 +2.000000 -1.000000 1.000000 +0.000000 1.000000 1.000000 +-0.000000 0.000000 0.500000 d_A +-1.000000 -1.000000 1.500000 d_B +-0.000000 -1.000000 1.500000 d_B +1.000000 -1.000000 1.500000 d_A +-1.000000 0.000000 1.500000 d_B +-0.000000 0.000000 1.500000 d_B +1.000000 0.000000 1.500000 d_A +-0.000000 -1.000000 2.500000 d_A +0.000000 -1.500000 2.000000 d_B +-1.000000 -0.500000 1.000000 d_B +0.000000 -0.500000 1.000000 d_A +1.000000 -0.500000 1.000000 d_A +1.000000 -0.500000 2.000000 d_A +-0.000000 0.500000 1.000000 d_A +-1.000000 -0.500000 2.000000 d_B +0.000000 -0.500000 2.000000 d_B +-1.500000 0.000000 2.000000 d_B +-0.500000 0.000000 2.000000 d_A +0.500000 0.000000 2.000000 d_A +1.500000 0.000000 2.000000 d_B +-0.500000 0.000000 1.000000 d_A +0.500000 0.000000 1.000000 d_B +-0.500000 -1.000000 2.000000 d_B +0.500000 -1.000000 2.000000 d_A +0.000000 -1.000000 3.000000 a_B +-1.000000 0.000000 2.000000 a_B +-0.000000 0.000000 2.000000 a_A +1.000000 0.000000 2.000000 a_A +1.000000 -1.000000 2.000000 a_B +-0.000000 0.000000 1.000000 a_B +-1.000000 -1.000000 2.000000 a_A +0.000000 -1.000000 2.000000 a_A diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/clusters.out b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..4143f14 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/clusters.out @@ -0,0 +1,154 @@ +6 +0.50000 +2 +0.50000 1.00000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 + +12 +0.70711 +2 +1.00000 0.50000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 + +3 +1.00000 +2 +1.00000 0.50000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +6 +1.00000 +2 +1.00000 0.50000 1.00000 0 0 +1.00000 0.50000 0.00000 0 0 + +24 +1.11803 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.50000 1.00000 0 0 + +24 +1.22474 +2 +1.00000 1.00000 0.50000 0 0 +1.50000 0.00000 0.00000 0 0 + +12 +1.41421 +2 +1.00000 0.50000 1.00000 0 0 +2.00000 1.50000 1.00000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 0.50000 0 0 +-0.00000 2.00000 0.50000 0 0 + +24 +1.50000 +2 +1.00000 1.00000 0.50000 0 0 +2.00000 0.00000 0.00000 0 0 + +6 +1.50000 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 1.00000 1.00000 0 0 + +12 +0.70711 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 + +3 +1.00000 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 0.50000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 0.00000 0 0 + +12 +1.00000 +3 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 + +8 +0.70711 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.50000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 0.50000 1.00000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 0.50000 0.00000 0 0 + diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/go b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/go new file mode 100755 index 0000000..3a4f832 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.5 -3=1. -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/job.in b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/job.in new file mode 100755 index 0000000..fb36021 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J D09_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstr.in b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..2e82732 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.5 0 0 d_A=0.5,d_B=0.5 +0 0.5 0 d_A=0.5,d_B=0.5 +0 0 0.5 d_A=0.5,d_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..1417103 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 0.000000 0.500000 d_A=0.500000,d_B=0.500000 +-0.000000 0.500000 0.000000 d_A=0.500000,d_B=0.500000 +0.500000 0.000000 0.000000 d_A=0.500000,d_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/sqsparam.in b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..fa5710b --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsdb_lev=2_a=0.5,0.5_d=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +2 10 2 5 diff --git a/data/sqsdb/REO3_D09/sqsgen.in b/data/sqsdb/REO3_D09/sqsgen.in new file mode 100644 index 0000000..5363ce3 --- /dev/null +++ b/data/sqsdb/REO3_D09/sqsgen.in @@ -0,0 +1,4 @@ +level=0 a=1 d=1 +level=1 a=0.5,0.5 d=1 +level=1 a=1 d=0.5,0.5 +level=2 a=0.5,0.5 d=0.5,0.5 diff --git a/data/sqsdb/ROCKSALT_B1/equiv.in b/data/sqsdb/ROCKSALT_B1/equiv.in new file mode 100644 index 0000000..efc73ad --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/equiv.in @@ -0,0 +1 @@ +a=b diff --git a/data/sqsdb/ROCKSALT_B1/rndstr.skel b/data/sqsdb/ROCKSALT_B1/rndstr.skel new file mode 100644 index 0000000..2d1ae37 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/rndstr.skel @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a +0.5 0.5 0.5 b diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=0_a=1_b=1/bestsqs.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=0_a=1_b=1/bestsqs.out new file mode 100644 index 0000000..4db0ef5 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=0_a=1_b=1/bestsqs.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 +0.000000 0.000000 0.000000 a_A +0.500000 0.500000 0.500000 b_A diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=0_a=1_b=1/rndstr.in b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=0_a=1_b=1/rndstr.in new file mode 100644 index 0000000..645afd2 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=0_a=1_b=1/rndstr.in @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=1 +0.5 0.5 0.5 b_A=1 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out new file mode 100644 index 0000000..36fbc74 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out @@ -0,0 +1,16 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 -0.083333 0.000000 -0.083333 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +Objective_function= -77.061206 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out new file mode 100644 index 0000000..fea857b --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.500000 0.500000 2.000000 +-0.500000 -0.500000 0.000000 +2.000000 -2.000000 0.000000 +-0.000000 -0.500000 0.500000 a_A +0.500000 -1.000000 0.500000 a_A +1.000000 -1.500000 0.500000 a_B +1.500000 -2.000000 0.500000 a_B +-0.000000 -0.500000 1.500000 a_A +-0.500000 -0.500000 2.000000 a_B +0.500000 -1.000000 1.500000 a_B +-0.000000 -1.000000 2.000000 a_A +1.000000 -1.500000 1.500000 a_B +0.500000 -1.500000 2.000000 a_A +-0.500000 0.000000 1.500000 a_A +1.000000 -2.000000 2.000000 a_B +-0.500000 -0.500000 1.000000 a_A +0.000000 -1.000000 1.000000 a_B +0.500000 -1.500000 1.000000 a_B +1.000000 -2.000000 1.000000 a_A +-0.500000 -0.000000 2.000000 b_A +0.000000 -0.500000 2.000000 b_A +0.500000 -1.000000 2.000000 b_A +1.000000 -1.500000 2.000000 b_A +-0.000000 -0.500000 1.000000 b_A +-0.500000 -0.500000 1.500000 b_A +0.500000 -1.000000 1.000000 b_A +-0.000000 -1.000000 1.500000 b_A +1.000000 -1.500000 1.000000 b_A +0.500000 -1.500000 1.500000 b_A +1.500000 -2.000000 1.000000 b_A +1.000000 -2.000000 1.500000 b_A +-0.500000 -0.500000 0.500000 b_A +0.000000 -1.000000 0.500000 b_A +0.500000 -1.500000 0.500000 b_A +1.000000 -2.000000 0.500000 b_A diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out new file mode 100644 index 0000000..4cf6de1 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out @@ -0,0 +1,99 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 2.00000 0 0 + +24 +1.87083 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 -0.00000 1.50000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/go b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/go new file mode 100755 index 0000000..03e50a9 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=1.9 -3=1.3 -4=0.9 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/job.in b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/job.in new file mode 100755 index 0000000..1fc51bb --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -wr=20 -wn=0.5 -ip=$id & +done +wait diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in new file mode 100644 index 0000000..67ff35a --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.5,a_B=0.5 +0.5 0.5 0.5 b_A=1 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out new file mode 100644 index 0000000..280a7f5 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +1.000000 1.000000 1.000000 a_A=0.500000,a_B=0.500000 + +0.500000 0.500000 0.500000 b_A=1.000000 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..f73b5c1 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.500000 0.500000 2.000000 +-0.500000 -0.500000 0.000000 +2.000000 -2.000000 0.000000 +0.000000 -0.500000 1.000000 b_A +0.500000 -1.000000 1.000000 b_A +1.000000 -1.500000 1.000000 b_B +1.500000 -2.000000 1.000000 b_B +0.000000 -0.500000 2.000000 b_A +0.000000 -1.000000 0.500000 b_B +0.500000 -1.000000 2.000000 b_B +0.500000 -1.500000 0.500000 b_A +1.000000 -1.500000 2.000000 b_B +1.000000 -2.000000 0.500000 b_A +-0.500000 0.000000 2.000000 b_A +-0.500000 -0.500000 0.500000 b_B +-0.500000 -0.500000 1.500000 b_A +0.000000 -1.000000 1.500000 b_B +0.500000 -1.500000 1.500000 b_B +1.000000 -2.000000 1.500000 b_A +0.000000 -0.500000 0.500000 a_A +0.500000 -1.000000 0.500000 a_A +1.000000 -1.500000 0.500000 a_A +1.500000 -2.000000 0.500000 a_A +0.000000 -0.500000 1.500000 a_A +-0.500000 -0.500000 2.000000 a_A +0.500000 -1.000000 1.500000 a_A +0.000000 -1.000000 2.000000 a_A +1.000000 -1.500000 1.500000 a_A +0.500000 -1.500000 2.000000 a_A +-0.500000 0.000000 1.500000 a_A +1.000000 -2.000000 2.000000 a_A +-0.500000 -0.500000 1.000000 a_A +0.000000 -1.000000 1.000000 a_A +0.500000 -1.500000 1.000000 a_A +1.000000 -2.000000 1.000000 a_A diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/bestcorr.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/bestcorr.out new file mode 100644 index 0000000..6a3be68 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/bestcorr.out @@ -0,0 +1,14 @@ +2 0.707107 0.250000 0.250000 0.000000 +2 1.000000 0.250000 0.250000 0.000000 +2 1.224745 0.250000 0.250000 0.000000 +2 1.414214 0.166667 0.250000 -0.083333 +2 1.581139 0.291667 0.250000 0.041667 +3 0.707107 -0.125000 -0.125000 0.000000 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.224745 -0.166667 -0.125000 -0.041667 +3 1.224745 -0.083333 -0.125000 0.041667 +3 1.224745 -0.125000 -0.125000 0.000000 +3 1.224745 -0.125000 -0.125000 0.000000 +3 1.224745 -0.125000 -0.125000 0.000000 +4 0.707107 0.000000 0.062500 -0.062500 +Objective_function= -59.133135 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/bestsqs.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/bestsqs.out new file mode 100644 index 0000000..73b3092 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.500000 -1.000000 +0.000000 -1.500000 -0.500000 +-2.000000 0.500000 -0.500000 +-0.000000 -0.500000 -1.500000 a_B +-0.000000 -0.000000 -1.000000 a_A +-1.500000 -0.500000 -2.000000 a_A +-1.500000 -0.000000 -1.500000 a_A +-1.000000 -0.500000 -1.500000 a_A +-0.500000 -0.500000 -1.000000 a_A +-0.500000 -0.000000 -0.500000 a_B +0.000000 -1.000000 -1.000000 a_A +-0.000000 -0.500000 -0.500000 a_A +-1.500000 -0.500000 -1.000000 a_A +-1.000000 0.500000 -1.500000 a_A +-1.000000 -1.000000 -1.000000 a_B +-0.500000 -0.000000 -1.500000 a_B +-0.500000 0.500000 -1.000000 a_A +-1.500000 0.500000 -1.000000 a_A +-1.000000 -0.000000 -1.000000 a_A +-1.000000 -0.000000 -0.500000 b_A +-0.500000 -0.500000 -1.500000 b_A +-0.500000 -0.500000 -0.500000 b_A +-0.000000 0.500000 -1.000000 b_A +-1.500000 0.500000 -1.500000 b_A +-1.000000 0.500000 -1.000000 b_A +-1.000000 -0.500000 -1.000000 b_A +-0.500000 -0.000000 -1.000000 b_A +-0.500000 -1.000000 -1.000000 b_A +-0.000000 0.000000 -0.500000 b_A +-0.000000 -1.000000 -0.500000 b_A +-1.500000 0.000000 -1.000000 b_A +-1.500000 -1.000000 -1.000000 b_A +-1.000000 0.000000 -1.500000 b_A +-0.000000 -0.500000 -1.000000 b_A +-1.500000 -0.500000 -1.500000 b_A diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/clusters.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/clusters.out new file mode 100644 index 0000000..4e9d371 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/clusters.out @@ -0,0 +1,87 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/go b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/go new file mode 100755 index 0000000..2b26237 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=1.7 -3=1.3 -4=0.9 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/job.in b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/job.in new file mode 100755 index 0000000..8487c37 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -wd=10.0 -wr=20 -wn=0.5 -ip=$id & +done +wait diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/rndstr.in b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/rndstr.in new file mode 100644 index 0000000..1711f83 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/rndstr.in @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.75,a_B=0.25 +0.5 0.5 0.5 b_A=1 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/rndstrgrp.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/rndstrgrp.out new file mode 100644 index 0000000..692d905 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=0.75,0.25_b=1/rndstrgrp.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +1.000000 1.000000 1.000000 a_A=0.750000,a_B=0.250000 + +0.500000 0.500000 0.500000 b_A=1.000000 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=1_b=0.75,0.25/bestsqs.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=1_b=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..ecbe45c --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=2_a=1_b=0.75,0.25/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.500000 -1.000000 +0.000000 -1.500000 -0.500000 +-2.000000 0.500000 -0.500000 +-1.500000 0.500000 -1.500000 b_B +-1.500000 -0.500000 -1.500000 b_A +-1.000000 0.000000 -1.500000 b_A +-1.000000 0.500000 -1.000000 b_A +-0.500000 0.000000 -1.000000 b_A +0.000000 0.000000 -0.500000 b_A +0.000000 -1.000000 -0.500000 b_B +-1.500000 -0.000000 -1.000000 b_A +-1.500000 -1.000000 -1.000000 b_A +-1.000000 0.000000 -0.500000 b_A +-0.500000 -0.500000 -1.500000 b_A +-0.500000 -0.500000 -0.500000 b_B +0.000000 0.500000 -1.000000 b_B +0.000000 -0.500000 -1.000000 b_A +-1.000000 -0.500000 -1.000000 b_A +-0.500000 -1.000000 -1.000000 b_A +0.000000 -0.500000 -1.500000 a_A +0.000000 0.000000 -1.000000 a_A +-1.500000 -0.500000 -2.000000 a_A +-1.500000 0.000000 -1.500000 a_A +-1.000000 -0.500000 -1.500000 a_A +-0.500000 -0.500000 -1.000000 a_A +-0.500000 0.000000 -0.500000 a_A +0.000000 -1.000000 -1.000000 a_A +0.000000 -0.500000 -0.500000 a_A +-1.500000 -0.500000 -1.000000 a_A +-1.000000 0.500000 -1.500000 a_A +-1.000000 -1.000000 -1.000000 a_A +-0.500000 0.000000 -1.500000 a_A +-0.500000 0.500000 -1.000000 a_A +-1.500000 0.500000 -1.000000 a_A +-1.000000 0.000000 -1.000000 a_A diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestcorr.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..cea0e5f --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestcorr.out @@ -0,0 +1,73 @@ +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.866025 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.118034 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.500000 0.000000 0.000000 0.000000 +2 1.500000 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.658312 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.802776 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.866025 0.000000 0.000000 0.000000 +3 0.866025 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.118034 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.866025 -0.083333 0.000000 -0.083333 +4 0.866025 -0.083333 0.000000 -0.083333 +4 0.866025 0.166667 0.000000 0.166667 +4 0.866025 0.083333 0.000000 0.083333 +Objective_function= -137.985558 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestsqs.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..1fe74f7 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +2.000000 1.000000 1.000000 +-2.000000 1.000000 1.000000 +-0.000000 -0.500000 0.500000 +-0.500000 1.500000 2.000000 a_A +-0.000000 1.000000 2.000000 a_A +-0.000000 1.500000 2.500000 a_A +0.500000 1.000000 1.500000 a_B +0.500000 1.500000 2.000000 a_B +-1.500000 1.000000 1.500000 a_A +1.000000 0.500000 1.500000 a_A +1.000000 1.000000 2.000000 a_A +-1.000000 0.500000 1.500000 a_B +-1.000000 1.000000 2.000000 a_B +1.500000 1.000000 1.500000 a_B +-0.500000 0.500000 1.000000 a_B +-0.500000 1.000000 1.500000 a_A +-0.000000 -0.000000 1.000000 a_B +-0.000000 0.500000 1.500000 a_B +0.500000 0.500000 1.000000 a_A +-1.000000 1.000000 1.500000 b_B +-0.500000 0.500000 1.500000 b_A +-0.500000 1.000000 2.000000 b_A +0.000000 0.500000 1.000000 b_A +0.000000 1.000000 1.500000 b_B +0.000000 1.500000 2.000000 b_B +0.500000 -0.000000 1.000000 b_B +0.500000 0.500000 1.500000 b_A +0.500000 1.000000 2.000000 b_A +-1.500000 0.500000 1.500000 b_B +1.000000 0.500000 1.000000 b_A +1.000000 1.000000 1.500000 b_A +-1.000000 0.500000 1.000000 b_B +1.500000 0.500000 1.500000 b_B +-0.500000 -0.000000 1.000000 b_B +-0.000000 -0.000000 0.500000 b_A diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/clusters.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..f86d271 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/clusters.out @@ -0,0 +1,492 @@ +6 +0.50000 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 + +6 +0.70711 +2 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.86603 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.11803 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.50000 0 0 + +12 +1.22474 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +1.41421 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 1.50000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +24 +1.50000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.50000 2.00000 0 0 + +6 +1.50000 +2 +0.50000 0.50000 0.50000 0 0 +-1.00000 0.50000 0.50000 0 0 + +12 +1.58114 +2 +0.50000 0.50000 0.50000 0 0 +-1.00000 -0.00000 0.50000 0 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +24 +1.65831 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 0.00000 -1.00000 0 0 + +4 +1.73205 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 1.50000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 2.00000 0 0 + +24 +1.80278 +2 +0.50000 0.50000 0.50000 0 0 +-1.00000 -0.50000 0.50000 0 0 + +24 +1.87083 +2 +0.50000 0.50000 0.50000 0 0 +-1.00000 1.50000 0.00000 0 0 + +24 +1.87083 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 -0.00000 1.50000 0 0 + +12 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +12 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.86603 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +0.86603 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +1.50000 1.50000 1.50000 0 0 + +3 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.50000 0.50000 0.50000 0 0 + +3 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.50000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.11803 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.50000 0 0 + +24 +1.11803 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +-0.00000 1.00000 1.50000 0 0 + +48 +1.11803 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.50000 0 0 + +12 +1.11803 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 1.00000 1.50000 0 0 + +24 +1.11803 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +-0.00000 1.00000 1.50000 0 0 + +12 +1.11803 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 2.00000 0 0 +-0.00000 1.00000 1.50000 0 0 + +24 +1.11803 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.50000 -0.00000 0.50000 0 0 + +24 +1.11803 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.50000 -0.00000 0.50000 0 0 + +48 +1.11803 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.50000 -0.00000 0.50000 0 0 + +24 +1.11803 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.50000 -0.00000 0.50000 0 0 + +12 +1.11803 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 +-0.50000 -0.00000 0.50000 0 0 + +12 +1.11803 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +-0.50000 -0.00000 0.50000 0 0 + +48 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +48 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +24 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +48 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.00000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +8 +1.22474 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.50000 0.00000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +48 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +48 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +48 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.86603 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.50000 0 0 +1.00000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +48 +0.86603 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 0.50000 0.50000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +12 +0.86603 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +0.86603 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +1.50000 1.50000 1.50000 0 0 + diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/go b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/go new file mode 100755 index 0000000..03e50a9 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=1.9 -3=1.3 -4=0.9 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/job.in b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/job.in new file mode 100755 index 0000000..1fc51bb --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -wr=20 -wn=0.5 -ip=$id & +done +wait diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstr.in b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..c97dd72 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstr.in @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.5,a_B=0.5 +0.5 0.5 0.5 b_A=0.5,b_B=0.5 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..2abae38 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +1.000000 1.000000 1.000000 a_A=0.500000,a_B=0.500000 + +0.500000 0.500000 0.500000 b_A=0.500000,b_B=0.500000 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestsqs.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..c23f978 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.500000 4.000000 +0.500000 0.500000 -4.000000 +-0.500000 0.500000 0.000000 +-0.000000 1.000000 0.500000 b_B +-0.000000 0.500000 -1.000000 b_A +0.000000 1.000000 -0.500000 b_A +0.000000 1.000000 1.500000 b_A +0.500000 1.000000 2.000000 b_A +0.000000 1.000000 -1.500000 b_A +0.500000 1.000000 -1.000000 b_B +0.500000 1.000000 1.000000 b_A +0.000000 1.000000 -2.500000 b_A +0.500000 1.000000 -2.000000 b_B +0.500000 1.000000 0.000000 b_A +-0.000000 1.000000 -3.500000 b_A +-0.000000 0.500000 1.000000 b_B +-0.000000 1.000000 3.500000 b_A +-0.000000 0.500000 0.000000 b_A +0.000000 1.000000 2.500000 b_A +0.500000 1.500000 0.000000 a_A +0.500000 1.000000 -1.500000 a_A +-0.000000 1.000000 3.000000 a_A +-0.000000 1.000000 -3.000000 a_A +-0.000000 0.500000 1.500000 a_B +0.000000 1.000000 2.000000 a_B +-0.000000 0.500000 -1.500000 a_A +-0.000000 0.500000 0.500000 a_B +0.000000 1.000000 1.000000 a_A +0.500000 1.000000 1.500000 a_B +-0.000000 0.500000 -0.500000 a_B +0.000000 1.000000 -0.000000 a_B +0.500000 1.000000 0.500000 a_B +0.000000 1.000000 -1.000000 a_B +0.500000 1.000000 -0.500000 a_A +0.000000 1.000000 -2.000000 a_A diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestcorr.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..28d8940 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestcorr.out @@ -0,0 +1,25 @@ +2 0.500000 0.000000 -0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.250000 0.250000 0.000000 +2 0.866025 0.000000 -0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.166667 0.250000 -0.083333 +2 1.118034 0.000000 -0.000000 0.000000 +3 0.707107 0.000000 -0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 -0.125000 -0.125000 0.000000 +3 0.866025 0.000000 0.000000 0.000000 +3 0.866025 0.000000 -0.000000 0.000000 +3 1.000000 0.000000 -0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.166667 -0.000000 0.166667 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.000000 0.000000 0.000000 0.000000 +4 0.707107 -0.083333 0.000000 -0.083333 +4 0.707107 0.125000 -0.000000 0.125000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 -0.000000 0.000000 +4 0.707107 0.000000 0.062500 -0.062500 +Objective_function= -67.051807 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestsqs.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..89cc28d --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 0.500000 4.000000 +0.500000 0.500000 -4.000000 +-0.500000 0.500000 0.000000 +0.500000 1.500000 -0.000000 a_B +0.500000 1.000000 -1.500000 a_A +-0.000000 1.000000 3.000000 a_A +0.000000 1.000000 -3.000000 a_A +-0.000000 0.500000 1.500000 a_A +-0.000000 1.000000 2.000000 a_A +0.000000 0.500000 -1.500000 a_B +0.000000 0.500000 0.500000 a_A +-0.000000 1.000000 1.000000 a_A +0.500000 1.000000 1.500000 a_B +0.000000 0.500000 -0.500000 a_A +-0.000000 1.000000 0.000000 a_A +0.500000 1.000000 0.500000 a_B +-0.000000 1.000000 -1.000000 a_A +0.500000 1.000000 -0.500000 a_A +-0.000000 1.000000 -2.000000 a_A +0.000000 1.000000 -0.500000 b_A +0.500000 1.000000 2.000000 b_A +0.000000 1.000000 -1.500000 b_A +-0.000000 1.000000 0.500000 b_A +0.500000 1.000000 1.000000 b_B +0.000000 1.000000 -2.500000 b_B +0.500000 1.000000 -2.000000 b_A +0.500000 1.000000 0.000000 b_B +0.000000 1.000000 -3.500000 b_A +-0.000000 0.500000 1.000000 b_B +0.500000 1.000000 -1.000000 b_B +-0.000000 1.000000 3.500000 b_B +-0.000000 0.500000 0.000000 b_B +-0.000000 1.000000 2.500000 b_B +-0.000000 0.500000 -1.000000 b_A +-0.000000 1.000000 1.500000 b_A diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/clusters.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..0f7e369 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/clusters.out @@ -0,0 +1,166 @@ +6 +0.50000 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 + +6 +0.70711 +2 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.86603 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.11803 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.50000 0 0 + +12 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +12 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.86603 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +0.86603 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +1.50000 1.50000 1.50000 0 0 + +3 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.50000 0.50000 0.50000 0 0 + +3 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.50000 0 0 +-0.00000 1.00000 1.00000 0 0 + +6 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/go b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/go new file mode 100755 index 0000000..f8ae602 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=1.2 -3=1.1 -4=0.8 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/job.in b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/job.in new file mode 100755 index 0000000..1fc51bb --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -wr=20 -wn=0.5 -ip=$id & +done +wait diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstr.in b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..88b00db --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstr.in @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.75,a_B=0.25 +0.5 0.5 0.5 b_A=0.5,b_B=0.5 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..128aa26 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +1.000000 1.000000 1.000000 a_A=0.750000,a_B=0.250000 + +0.500000 0.500000 0.500000 b_A=0.500000,b_B=0.500000 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestcorr.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..0ce3c8c --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestcorr.out @@ -0,0 +1,27 @@ +2 0.500000 0.250000 0.250000 0.000000 +2 0.707107 0.250000 0.250000 0.000000 +2 0.707107 0.250000 0.250000 0.000000 +2 0.866025 0.250000 0.250000 0.000000 +2 1.000000 0.250000 0.250000 0.000000 +2 1.000000 0.250000 0.250000 0.000000 +2 1.118034 0.250000 0.250000 0.000000 +2 1.224745 0.145833 0.250000 -0.104167 +2 1.224745 0.104167 0.250000 -0.145833 +3 0.707107 -0.125000 -0.125000 0.000000 +3 0.707107 -0.125000 -0.125000 0.000000 +3 0.707107 -0.125000 -0.125000 0.000000 +3 0.707107 -0.125000 -0.125000 0.000000 +3 0.866025 -0.062500 -0.125000 0.062500 +3 0.866025 -0.062500 -0.125000 0.062500 +3 1.000000 -0.250000 -0.125000 -0.125000 +3 1.000000 -0.125000 -0.125000 0.000000 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.000000 -0.250000 -0.125000 -0.125000 +3 1.000000 -0.125000 -0.125000 0.000000 +3 1.000000 -0.125000 -0.125000 0.000000 +4 0.707107 0.000000 0.062500 -0.062500 +4 0.707107 0.000000 0.062500 -0.062500 +4 0.707107 0.000000 0.062500 -0.062500 +4 0.707107 0.000000 0.062500 -0.062500 +4 0.707107 0.000000 0.062500 -0.062500 +Objective_function= -73.346193 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestsqs.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..fab1158 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.000000 0.500000 1.500000 +0.500000 1.500000 0.000000 +-1.500000 1.000000 0.500000 +-0.000000 1.500000 0.500000 a_B +-0.000000 2.000000 1.000000 a_A +-1.000000 2.500000 1.500000 a_A +-0.500000 1.000000 1.500000 a_B +-0.500000 1.000000 0.500000 a_B +-0.500000 1.500000 1.000000 a_A +-1.000000 3.000000 2.000000 a_A +-0.000000 0.500000 0.500000 a_A +-0.000000 1.000000 1.000000 a_A +-0.500000 2.000000 1.500000 a_A +-0.500000 2.000000 0.500000 a_B +-1.000000 1.000000 1.000000 a_A +-1.000000 1.500000 1.500000 a_A +-0.000000 1.500000 1.500000 a_A +-1.000000 1.500000 0.500000 a_A +-1.000000 2.000000 1.000000 a_A +-0.500000 1.500000 1.500000 b_B +-0.500000 1.500000 0.500000 b_A +-0.000000 1.000000 0.500000 b_A +-0.500000 2.000000 1.000000 b_A +-0.500000 2.500000 1.500000 b_B +-1.000000 1.000000 0.500000 b_B +-0.000000 1.500000 1.000000 b_A +0.000000 2.000000 1.500000 b_A +-0.500000 0.500000 0.500000 b_A +-1.000000 1.500000 1.000000 b_B +-1.000000 2.000000 1.500000 b_A +-1.000000 2.000000 0.500000 b_A +-1.000000 2.500000 1.000000 b_A +-0.500000 1.000000 1.000000 b_A +-0.000000 0.500000 1.000000 b_A +0.000000 1.000000 1.500000 b_A diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/clusters.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/clusters.out new file mode 100644 index 0000000..68b0590 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/clusters.out @@ -0,0 +1,178 @@ +6 +0.50000 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 + +6 +0.70711 +2 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.86603 +2 +0.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +3 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.11803 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.50000 0 0 + +12 +1.22474 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.00000 1.00000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +12 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +12 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +8 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.86603 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 + +24 +0.86603 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +1.50000 1.50000 1.50000 0 0 + +3 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.50000 0.50000 0.50000 0 0 + +12 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.50000 0.50000 0.50000 0 0 + +3 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.50000 0 0 +-0.00000 1.00000 1.00000 0 0 + +6 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.50000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.00000 0 0 + +8 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +2 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/go b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/go new file mode 100755 index 0000000..f549a4d --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/go @@ -0,0 +1,2 @@ +#!/bin/sh +corrdump -nop -noe -2=1.4 -3=1.1 -4=0.8 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/job.in b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/job.in new file mode 100755 index 0000000..1fc51bb --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -wr=20 -wn=0.5 -ip=$id & +done +wait diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstr.in b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstr.in new file mode 100644 index 0000000..d6a7d28 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstr.in @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 a_A=0.75,a_B=0.25 +0.5 0.5 0.5 b_A=0.75,b_B=0.25 diff --git a/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstrgrp.out b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstrgrp.out new file mode 100644 index 0000000..89c2f2e --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstrgrp.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +1.000000 1.000000 1.000000 a_A=0.750000,a_B=0.250000 + +0.500000 0.500000 0.500000 b_A=0.750000,b_B=0.250000 diff --git a/data/sqsdb/ROCKSALT_B1/sqsgen.in b/data/sqsdb/ROCKSALT_B1/sqsgen.in new file mode 100644 index 0000000..5273099 --- /dev/null +++ b/data/sqsdb/ROCKSALT_B1/sqsgen.in @@ -0,0 +1,9 @@ +level=0 a=1 b=1 +level=1 a=0.5,0.5 b=1 +level=1 a=1 b=0.5,0.5 +level=2 a=0.75,0.25 b=1 +level=2 a=1 b=0.75,0.25 +level=3 a=0.5,0.5 b=0.5,0.5 +level=4 a=0.75,0.25 b=0.5,0.5 +level=4 a=0.5,0.5 b=0.75,0.25 +level=4 a=0.75,0.25 b=0.75,0.25 diff --git a/data/sqsdb/RUTILE_C4/notes.txt b/data/sqsdb/RUTILE_C4/notes.txt new file mode 100644 index 0000000..d5107dc --- /dev/null +++ b/data/sqsdb/RUTILE_C4/notes.txt @@ -0,0 +1,3 @@ +Set x=0.3, a typical value for rutiles. Assume touching spheres on (110) plane. + [0.3*sqrt(2)a]^2 = {[1/sqrt(2) - 0.3*sqrt(2)]a}^2 + (c/2)^2 + c/a = 2*sqrt(0.1) diff --git a/data/sqsdb/RUTILE_C4/rndstr.skel b/data/sqsdb/RUTILE_C4/rndstr.skel new file mode 100644 index 0000000..a34afdd --- /dev/null +++ b/data/sqsdb/RUTILE_C4/rndstr.skel @@ -0,0 +1,13 @@ + +1 1 0.63246 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.3 0.3 0 f +-0.3 -0.3 0 f +0.2 0.8 0.5 f +0.8 0.2 0.5 f + +0 0 0 a +0.5 0.5 0.5 a diff --git a/data/sqsdb/RUTILE_C4/rndstr.skel.sspp b/data/sqsdb/RUTILE_C4/rndstr.skel.sspp new file mode 100644 index 0000000..d652a1d --- /dev/null +++ b/data/sqsdb/RUTILE_C4/rndstr.skel.sspp @@ -0,0 +1,13 @@ +#const a=1; c=0.63246; +{a} {a} {c} {90} {90} {90} +1 0 0 +0 1 0 +0 0 1 +#const x=0.3; f="f"; +{x} {x} {0} {f} +{-x} {-x} {0} {f} +{-x+1/2} {x+1/2} {1/2} {f} +{x+1/2} {-x+1/2} {1/2} {f} +#const a="a"; +{0} {0} {0} {a} +{1/2} {1/2} {1/2} {a} diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=0_a=1_f=1/bestsqs.out b/data/sqsdb/RUTILE_C4/sqsdb_lev=0_a=1_f=1/bestsqs.out new file mode 100644 index 0000000..eeb0da8 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=0_a=1_f=1/bestsqs.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.632460 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.300000 0.300000 0.000000 f_A +-0.300000 -0.300000 0.000000 f_A +0.200000 0.800000 0.500000 f_A +0.800000 0.200000 0.500000 f_A +0.000000 0.000000 0.000000 a_A +0.500000 0.500000 0.500000 a_A diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=0_a=1_f=1/rndstr.in b/data/sqsdb/RUTILE_C4/sqsdb_lev=0_a=1_f=1/rndstr.in new file mode 100644 index 0000000..f7d0c79 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=0_a=1_f=1/rndstr.in @@ -0,0 +1,13 @@ + +1 1 0.63246 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.3 0.3 0 f_A=1 +-0.3 -0.3 0 f_A=1 +0.2 0.8 0.5 f_A=1 +0.8 0.2 0.5 f_A=1 + +0 0 0 a_A=1 +0.5 0.5 0.5 a_A=1 diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/bestcorr.out b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/bestcorr.out new file mode 100644 index 0000000..2c528d6 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/bestcorr.out @@ -0,0 +1,37 @@ +2 0.632460 0.000000 0.000000 0.000000 +2 0.774598 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.183218 0.000000 0.000000 0.000000 +2 1.183221 0.000000 0.000000 0.000000 +2 1.264920 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.414214 -1.000000 0.000000 -1.000000 +2 1.549195 0.000000 0.000000 0.000000 +2 1.549195 0.000000 0.000000 0.000000 +3 0.774598 0.000000 0.000000 0.000000 +3 0.774598 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.183218 0.000000 0.000000 0.000000 +3 1.183218 0.000000 0.000000 0.000000 +3 1.183218 0.000000 0.000000 0.000000 +3 1.183218 0.000000 0.000000 0.000000 +3 1.183221 0.000000 0.000000 0.000000 +3 1.183221 0.000000 0.000000 0.000000 +3 1.183221 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.183218 0.250000 0.000000 0.250000 +4 1.183218 0.000000 0.000000 0.000000 +4 1.183218 -0.250000 0.000000 -0.250000 +4 1.183218 -0.250000 0.000000 -0.250000 +4 1.183218 0.000000 0.000000 0.000000 +4 1.183218 0.000000 0.000000 0.000000 +4 1.183218 0.000000 0.000000 0.000000 +4 1.183218 0.000000 0.000000 0.000000 +4 1.183218 -0.250000 0.000000 -0.250000 +4 1.183218 0.000000 0.000000 0.000000 +4 1.183221 0.000000 0.000000 0.000000 +4 1.183221 0.000000 0.000000 0.000000 +4 1.183221 0.000000 0.000000 0.000000 +4 1.183221 0.000000 0.000000 0.000000 +4 1.183221 0.000000 0.000000 0.000000 +Objective_function= -14.132306 diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/bestsqs.out b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/bestsqs.out new file mode 100644 index 0000000..1cca77f --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.632460 +2.000000 -0.000000 2.000000 +-2.000000 -1.000000 1.000000 +2.000000 0.000000 -2.000000 +1.000000 -1.000000 2.000000 a_A +0.000000 -1.000000 0.000000 a_A +2.000000 -1.000000 1.000000 a_B +-1.000000 -1.000000 1.000000 a_A +0.000000 -1.000000 1.000000 a_B +1.000000 -1.000000 1.000000 a_B +1.000000 -1.000000 0.000000 a_A +0.000000 -1.000000 2.000000 a_B +-0.500000 -0.500000 0.500000 a_B +0.500000 -0.500000 0.500000 a_A +0.500000 -0.500000 -0.500000 a_A +1.500000 -0.500000 -0.500000 a_B +0.500000 -0.500000 1.500000 a_A +1.500000 -0.500000 1.500000 a_A +1.500000 -0.500000 0.500000 a_B +2.500000 -0.500000 0.500000 a_B +1.300000 -0.700000 2.000000 f_A +0.300000 -0.700000 0.000000 f_A +2.300000 -0.700000 1.000000 f_A +-0.700000 -0.700000 1.000000 f_A +0.300000 -0.700000 1.000000 f_A +1.300000 -0.700000 1.000000 f_A +1.300000 -0.700000 -0.000000 f_A +0.300000 -0.700000 2.000000 f_A +2.700000 -0.300000 1.000000 f_A +1.700000 -0.300000 -1.000000 f_A +1.700000 -0.300000 2.000000 f_A +0.700000 -0.300000 0.000000 f_A +1.700000 -0.300000 0.000000 f_A +2.700000 -0.300000 0.000000 f_A +0.700000 -0.300000 1.000000 f_A +1.700000 -0.300000 1.000000 f_A +3.200000 -0.200000 0.500000 f_A +0.200000 -0.200000 0.500000 f_A +2.200000 -0.200000 1.500000 f_A +1.200000 -0.200000 -0.500000 f_A +2.200000 -0.200000 -0.500000 f_A +1.200000 -0.200000 1.500000 f_A +1.200000 -0.200000 0.500000 f_A +2.200000 -0.200000 0.500000 f_A +-0.200000 -0.800000 0.500000 f_A +0.800000 -0.800000 0.500000 f_A +0.800000 -0.800000 -0.500000 f_A +-0.200000 -0.800000 1.500000 f_A +0.800000 -0.800000 1.500000 f_A +-0.200000 -0.800000 -0.500000 f_A +1.800000 -0.800000 0.500000 f_A +-1.200000 -0.800000 0.500000 f_A diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/clusters.out b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/clusters.out new file mode 100644 index 0000000..6e1bcd8 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/clusters.out @@ -0,0 +1,258 @@ +2 +0.63246 +2 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 0.00000 0 0 + +8 +0.77460 +2 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +4 +1.00000 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 + +8 +1.18322 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +8 +1.18322 +2 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 -1.00000 0 0 + +2 +1.26492 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -1.50000 0 0 + +2 +1.41421 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 1.50000 0.50000 0 0 + +2 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 + +4 +1.54920 +2 +0.50000 0.50000 0.50000 0 0 +-0.50000 -0.50000 -0.50000 0 0 + +4 +1.54920 +2 +1.00000 1.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 + +4 +0.77460 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +4 +0.77460 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 2.00000 0 0 +1.50000 1.50000 1.50000 0 0 + +16 +1.00000 +3 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.50000 -0.50000 0.50000 0 0 + +16 +1.18322 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +16 +1.18322 +3 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +16 +1.18322 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +16 +1.18322 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +8 +1.18322 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +0.00000 0.00000 -1.00000 0 0 + +16 +1.18322 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +0.00000 0.00000 -1.00000 0 0 + +8 +1.18322 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 2.00000 0 0 +1.50000 1.50000 2.50000 0 0 + +4 +1.00000 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 +0.50000 -0.50000 0.50000 0 0 + +16 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +8 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 +0.00000 0.00000 0.00000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +16 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.00000 0.00000 0.00000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +16 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +16 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 -0.00000 1.00000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +16 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +1.00000 0.00000 0.00000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +16 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +1.00000 -0.00000 1.00000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +4 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +16 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +0.00000 0.00000 -1.00000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +16 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +1.00000 0.00000 -1.00000 0 0 +0.50000 -0.50000 -0.50000 0 0 + +8 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 0.00000 -1.00000 0 0 + +16 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +1.00000 0.00000 0.00000 0 0 +0.00000 0.00000 -1.00000 0 0 + +16 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 +1.00000 0.00000 -1.00000 0 0 +0.00000 0.00000 -1.00000 0 0 + +4 +1.18322 +4 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.50000 0.50000 0 0 +1.00000 0.00000 -1.00000 0 0 +0.00000 0.00000 -1.00000 0 0 + +16 +1.18322 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 1.00000 2.00000 0 0 +1.50000 0.50000 1.50000 0 0 +1.50000 1.50000 2.50000 0 0 + diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/go b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/go new file mode 100755 index 0000000..82ff2ad --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.6 -3=1.2 -4=1.2 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/job.in b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/job.in new file mode 100755 index 0000000..cf8495d --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C4_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/rndstr.in b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/rndstr.in new file mode 100644 index 0000000..816d386 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/rndstr.in @@ -0,0 +1,13 @@ + +1 1 0.63246 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.3 0.3 0 f_A=1 +-0.3 -0.3 0 f_A=1 +0.2 0.8 0.5 f_A=1 +0.8 0.2 0.5 f_A=1 + +0 0 0 a_A=0.5,a_B=0.5 +0.5 0.5 0.5 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/rndstrgrp.out b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/rndstrgrp.out new file mode 100644 index 0000000..3277220 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.632460 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 +0.500000 0.500000 0.500000 a_A=0.500000,a_B=0.500000 + +0.300000 0.300000 0.000000 f_A=1.000000 +-0.300000 -0.300000 0.000000 f_A=1.000000 +0.200000 0.800000 0.500000 f_A=1.000000 +0.800000 0.200000 0.500000 f_A=1.000000 diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/sqsparam.in b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/sqsparam.in new file mode 100644 index 0000000..be11e17 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=0.5,0.5_f=1/sqsparam.in @@ -0,0 +1 @@ +1 2 1 5 diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/bestcorr.out b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..b91baf5 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/bestcorr.out @@ -0,0 +1,22 @@ +2 0.565685 0.000000 0.000000 0.000000 +2 0.600001 0.000000 0.000000 0.000000 +2 0.632460 0.000000 0.000000 0.000000 +2 0.721110 0.000000 0.000000 0.000000 +2 0.848528 0.000000 0.000000 0.000000 +2 0.848531 0.000000 0.000000 0.000000 +2 0.959169 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +3 0.600001 0.000000 0.000000 0.000000 +3 0.632460 0.000000 0.000000 0.000000 +3 0.632460 0.000000 0.000000 0.000000 +3 0.721110 0.000000 0.000000 0.000000 +3 0.848528 0.000000 0.000000 0.000000 +3 0.848531 0.000000 0.000000 0.000000 +3 0.848531 0.000000 0.000000 0.000000 +4 0.721110 0.000000 0.000000 0.000000 +4 0.721110 0.000000 0.000000 0.000000 +4 0.848528 0.500000 0.000000 0.500000 +4 0.848528 0.000000 0.000000 0.000000 +4 0.848531 -0.250000 0.000000 -0.250000 +4 0.848531 0.000000 0.000000 0.000000 +Objective_function= -52.609685 diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/bestsqs.out b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..6e74ae8 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.632460 +-1.000000 -1.000000 2.000000 +1.000000 1.000000 2.000000 +-1.000000 1.000000 -1.000000 +-1.700000 0.300000 1.000000 f_A +-0.700000 0.300000 1.000000 f_A +-0.700000 1.300000 0.000000 f_B +-0.700000 0.300000 3.000000 f_B +-0.700000 0.300000 2.000000 f_B +-0.700000 1.300000 1.000000 f_B +-0.700000 0.300000 -0.000000 f_A +-0.700000 1.300000 2.000000 f_A +-0.300000 1.700000 1.000000 f_A +-0.300000 0.700000 3.000000 f_B +-1.300000 0.700000 0.000000 f_A +-0.300000 0.700000 1.000000 f_A +-0.300000 0.700000 -0.000000 f_A +-1.300000 0.700000 1.000000 f_B +-0.300000 0.700000 2.000000 f_B +-1.300000 0.700000 2.000000 f_B +-1.200000 0.200000 1.500000 f_B +-0.200000 0.200000 1.500000 f_A +-0.200000 1.200000 0.500000 f_B +-0.200000 0.200000 3.500000 f_B +-0.200000 0.200000 2.500000 f_A +-0.200000 1.200000 1.500000 f_A +-0.200000 0.200000 0.500000 f_B +-1.200000 0.200000 0.500000 f_A +-0.800000 -0.200000 2.500000 f_B +-0.800000 0.800000 1.500000 f_B +0.200000 0.800000 1.500000 f_B +-0.800000 0.800000 -0.500000 f_A +-0.800000 0.800000 2.500000 f_A +0.200000 0.800000 2.500000 f_A +-0.800000 0.800000 0.500000 f_B +-0.800000 -0.200000 1.500000 f_A +-1.000000 1.000000 3.000000 a_A +-1.000000 -0.000000 1.000000 a_A +-1.000000 1.000000 0.000000 a_A +0.000000 1.000000 1.000000 a_A +-1.000000 -0.000000 2.000000 a_A +-1.000000 1.000000 1.000000 a_A +-0.000000 1.000000 2.000000 a_A +-1.000000 1.000000 2.000000 a_A +-1.500000 0.500000 1.500000 a_A +-0.500000 0.500000 1.500000 a_A +-0.500000 1.500000 0.500000 a_A +-0.500000 0.500000 3.500000 a_A +-0.500000 0.500000 2.500000 a_A +-0.500000 1.500000 1.500000 a_A +-0.500000 0.500000 0.500000 a_A +-1.500000 0.500000 0.500000 a_A diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/clusters.out b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/clusters.out new file mode 100644 index 0000000..86d1b61 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/clusters.out @@ -0,0 +1,145 @@ +2 +0.56569 +2 +0.70000 0.70000 1.00000 0 0 +0.30000 0.30000 1.00000 0 0 + +16 +0.60000 +2 +0.80000 0.20000 0.50000 0 0 +0.70000 0.70000 0.00000 0 0 + +4 +0.63246 +2 +0.80000 0.20000 0.50000 0 0 +0.80000 0.20000 -0.50000 0 0 + +4 +0.72111 +2 +0.30000 0.30000 1.00000 0 0 +0.70000 -0.30000 1.00000 0 0 + +2 +0.84853 +2 +0.80000 0.20000 0.50000 0 0 +0.20000 0.80000 0.50000 0 0 + +4 +0.84853 +2 +0.70000 0.70000 1.00000 0 0 +0.30000 0.30000 2.00000 0 0 + +8 +0.95917 +2 +0.30000 0.30000 1.00000 0 0 +0.70000 -0.30000 0.00000 0 0 + +8 +1.00000 +2 +0.80000 0.20000 0.50000 0 0 +0.80000 1.20000 0.50000 0 0 + +8 +0.60000 +3 +0.70000 0.70000 1.00000 0 0 +0.30000 0.30000 1.00000 0 0 +0.80000 0.20000 1.50000 0 0 + +8 +0.63246 +3 +0.80000 0.20000 0.50000 0 0 +0.70000 0.70000 0.00000 0 0 +0.80000 0.20000 -0.50000 0 0 + +8 +0.63246 +3 +0.80000 0.20000 0.50000 0 0 +1.30000 0.30000 0.00000 0 0 +0.80000 0.20000 -0.50000 0 0 + +16 +0.72111 +3 +0.30000 0.30000 1.00000 0 0 +0.20000 -0.20000 1.50000 0 0 +0.70000 -0.30000 1.00000 0 0 + +8 +0.84853 +3 +0.80000 0.20000 0.50000 0 0 +0.70000 0.70000 0.00000 0 0 +0.20000 0.80000 0.50000 0 0 + +8 +0.84853 +3 +0.70000 0.70000 1.00000 0 0 +0.30000 0.30000 1.00000 0 0 +0.30000 0.30000 2.00000 0 0 + +8 +0.84853 +3 +0.70000 0.70000 1.00000 0 0 +0.80000 0.20000 1.50000 0 0 +0.30000 0.30000 2.00000 0 0 + +8 +0.72111 +4 +0.30000 0.30000 1.00000 0 0 +0.20000 -0.20000 0.50000 0 0 +0.20000 -0.20000 1.50000 0 0 +0.70000 -0.30000 1.00000 0 0 + +4 +0.72111 +4 +0.30000 0.30000 1.00000 0 0 +0.80000 0.20000 1.50000 0 0 +0.20000 -0.20000 1.50000 0 0 +0.70000 -0.30000 1.00000 0 0 + +4 +0.84853 +4 +0.80000 0.20000 0.50000 0 0 +0.70000 0.70000 1.00000 0 0 +0.70000 0.70000 0.00000 0 0 +0.20000 0.80000 0.50000 0 0 + +4 +0.84853 +4 +0.80000 0.20000 0.50000 0 0 +0.30000 0.30000 1.00000 0 0 +0.70000 0.70000 0.00000 0 0 +0.20000 0.80000 0.50000 0 0 + +16 +0.84853 +4 +0.70000 0.70000 1.00000 0 0 +0.30000 0.30000 1.00000 0 0 +0.80000 0.20000 1.50000 0 0 +0.30000 0.30000 2.00000 0 0 + +2 +0.84853 +4 +0.70000 0.70000 1.00000 0 0 +0.30000 0.30000 1.00000 0 0 +0.70000 0.70000 2.00000 0 0 +0.30000 0.30000 2.00000 0 0 + diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/go b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/go new file mode 100755 index 0000000..fbccef2 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1 -3=0.9 -4=0.9 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/job.in b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/job.in new file mode 100755 index 0000000..cf8495d --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C4_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/rndstr.in b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/rndstr.in new file mode 100644 index 0000000..6f20f68 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/rndstr.in @@ -0,0 +1,13 @@ + +1 1 0.63246 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.3 0.3 0 f_A=0.5,f_B=0.5 +-0.3 -0.3 0 f_A=0.5,f_B=0.5 +0.2 0.8 0.5 f_A=0.5,f_B=0.5 +0.8 0.2 0.5 f_A=0.5,f_B=0.5 + +0 0 0 a_A=1 +0.5 0.5 0.5 a_A=1 diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/rndstrgrp.out b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..0059a74 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.632460 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.300000 0.300000 0.000000 f_A=0.500000,f_B=0.500000 +-0.300000 -0.300000 0.000000 f_A=0.500000,f_B=0.500000 +0.800000 0.200000 0.500000 f_A=0.500000,f_B=0.500000 +0.200000 0.800000 0.500000 f_A=0.500000,f_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 +0.500000 0.500000 0.500000 a_A=1.000000 diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/sqsparam.in b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..7831d53 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=1_a=1_f=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 5 1 2 diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/bestcorr.out b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..7f09b39 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/bestcorr.out @@ -0,0 +1,27 @@ +2 0.424264 0.000000 0.000000 0.000000 +2 0.424266 0.000000 0.000000 0.000000 +2 0.565685 0.000000 0.000000 0.000000 +2 0.600001 0.000000 0.000000 0.000000 +2 0.632460 0.000000 0.000000 0.000000 +2 0.632460 0.000000 0.000000 0.000000 +2 0.721110 0.000000 0.000000 0.000000 +2 0.761577 0.000000 0.000000 0.000000 +2 0.761581 0.000000 0.000000 0.000000 +2 0.774598 0.000000 0.000000 0.000000 +2 0.848528 0.000000 0.000000 0.000000 +2 0.848531 0.000000 0.000000 0.000000 +2 0.883177 0.000000 0.000000 0.000000 +3 0.565685 0.000000 0.000000 0.000000 +3 0.600001 0.000000 0.000000 0.000000 +3 0.600001 0.000000 0.000000 0.000000 +3 0.632460 0.000000 0.000000 0.000000 +3 0.632460 0.000000 0.000000 0.000000 +3 0.632460 0.000000 0.000000 0.000000 +3 0.632460 0.000000 0.000000 0.000000 +3 0.721110 -0.125000 0.000000 -0.125000 +4 0.600001 0.000000 0.000000 0.000000 +4 0.632460 0.000000 0.000000 0.000000 +4 0.632460 0.000000 0.000000 0.000000 +4 0.721110 0.000000 0.000000 0.000000 +4 0.721110 0.000000 0.000000 0.000000 +Objective_function= -6.468514 diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/bestsqs.out b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..d51712c --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.632460 +2.000000 1.000000 0.000000 +-2.000000 1.000000 0.000000 +0.000000 0.000000 2.000000 +0.300000 0.300000 2.000000 f_B +-0.700000 1.300000 2.000000 f_A +0.300000 1.300000 2.000000 f_A +1.300000 1.300000 2.000000 f_B +0.300000 0.300000 1.000000 f_B +-0.700000 1.300000 1.000000 f_A +0.300000 1.300000 1.000000 f_B +1.300000 1.300000 1.000000 f_B +-0.300000 1.700000 2.000000 f_A +-1.300000 0.700000 2.000000 f_A +-0.300000 0.700000 2.000000 f_A +0.700000 0.700000 2.000000 f_B +-0.300000 1.700000 1.000000 f_B +-1.300000 0.700000 1.000000 f_A +-0.300000 0.700000 1.000000 f_B +0.700000 0.700000 1.000000 f_A +-1.200000 1.200000 0.500000 f_B +-0.200000 1.200000 0.500000 f_A +0.800000 1.200000 0.500000 f_A +-0.200000 0.200000 0.500000 f_B +-1.200000 1.200000 1.500000 f_B +-0.200000 1.200000 1.500000 f_A +0.800000 1.200000 1.500000 f_B +-0.200000 0.200000 1.500000 f_A +0.200000 0.800000 0.500000 f_A +1.200000 0.800000 0.500000 f_B +0.200000 1.800000 0.500000 f_A +-0.800000 0.800000 0.500000 f_A +0.200000 0.800000 1.500000 f_B +1.200000 0.800000 1.500000 f_B +0.200000 1.800000 1.500000 f_A +-0.800000 0.800000 1.500000 f_B +-0.000000 2.000000 2.000000 a_A +-1.000000 1.000000 2.000000 a_A +-0.000000 1.000000 2.000000 a_B +1.000000 1.000000 2.000000 a_B +-0.000000 2.000000 1.000000 a_B +-1.000000 1.000000 1.000000 a_B +-0.000000 1.000000 1.000000 a_A +1.000000 1.000000 1.000000 a_A +0.500000 0.500000 0.500000 a_A +-0.500000 1.500000 0.500000 a_B +0.500000 1.500000 0.500000 a_A +-0.500000 0.500000 0.500000 a_B +0.500000 0.500000 1.500000 a_A +-0.500000 1.500000 1.500000 a_B +0.500000 1.500000 1.500000 a_A +-0.500000 0.500000 1.500000 a_B diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/clusters.out b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/clusters.out new file mode 100644 index 0000000..351bc4b --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/clusters.out @@ -0,0 +1,174 @@ +4 +0.42426 +2 +0.50000 0.50000 0.50000 0 0 +0.20000 0.80000 0.50000 0 0 + +8 +0.42427 +2 +1.00000 1.00000 1.00000 0 0 +0.80000 1.20000 1.50000 0 0 + +2 +0.56569 +2 +0.20000 0.80000 0.50000 0 0 +-0.20000 1.20000 0.50000 0 0 + +16 +0.60000 +2 +0.80000 0.20000 0.50000 0 0 +0.70000 0.70000 0.00000 0 0 + +2 +0.63246 +2 +0.50000 0.50000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 + +4 +0.63246 +2 +0.80000 0.20000 0.50000 0 0 +0.80000 0.20000 -0.50000 0 0 + +4 +0.72111 +2 +0.30000 0.30000 1.00000 0 0 +0.70000 -0.30000 1.00000 0 0 + +8 +0.76158 +2 +0.50000 0.50000 0.50000 0 0 +0.20000 -0.20000 0.50000 0 0 + +8 +0.76158 +2 +0.20000 0.80000 0.50000 0 0 +0.50000 0.50000 -0.50000 0 0 + +8 +0.77460 +2 +0.50000 0.50000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 + +2 +0.84853 +2 +0.80000 0.20000 0.50000 0 0 +0.20000 0.80000 0.50000 0 0 + +4 +0.84853 +2 +0.70000 0.70000 1.00000 0 0 +0.30000 0.30000 2.00000 0 0 + +16 +0.88318 +2 +1.00000 1.00000 1.00000 0 0 +0.20000 0.80000 1.50000 0 0 + +4 +0.56569 +3 +0.20000 0.80000 0.50000 0 0 +-0.00000 1.00000 0.00000 0 0 +-0.20000 1.20000 0.50000 0 0 + +16 +0.60000 +3 +0.80000 0.20000 0.50000 0 0 +0.50000 0.50000 0.50000 0 0 +0.70000 0.70000 0.00000 0 0 + +8 +0.60000 +3 +0.70000 0.70000 1.00000 0 0 +0.30000 0.30000 1.00000 0 0 +0.80000 0.20000 1.50000 0 0 + +4 +0.63246 +3 +0.50000 0.50000 0.50000 0 0 +0.70000 0.70000 0.00000 0 0 +0.50000 0.50000 -0.50000 0 0 + +4 +0.63246 +3 +0.80000 0.20000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 +0.80000 0.20000 -0.50000 0 0 + +8 +0.63246 +3 +0.80000 0.20000 0.50000 0 0 +0.70000 0.70000 0.00000 0 0 +0.80000 0.20000 -0.50000 0 0 + +8 +0.63246 +3 +0.80000 0.20000 0.50000 0 0 +1.30000 0.30000 0.00000 0 0 +0.80000 0.20000 -0.50000 0 0 + +16 +0.72111 +3 +0.30000 0.30000 1.00000 0 0 +0.20000 -0.20000 1.50000 0 0 +0.70000 -0.30000 1.00000 0 0 + +8 +0.60000 +4 +0.80000 0.20000 0.50000 0 0 +0.50000 0.50000 0.50000 0 0 +0.30000 0.30000 0.00000 0 0 +0.70000 0.70000 0.00000 0 0 + +2 +0.63246 +4 +0.50000 0.50000 0.50000 0 0 +0.30000 0.30000 0.00000 0 0 +0.70000 0.70000 0.00000 0 0 +0.50000 0.50000 -0.50000 0 0 + +8 +0.63246 +4 +0.80000 0.20000 0.50000 0 0 +1.00000 0.00000 0.00000 0 0 +1.30000 0.30000 0.00000 0 0 +0.80000 0.20000 -0.50000 0 0 + +8 +0.72111 +4 +0.30000 0.30000 1.00000 0 0 +0.20000 -0.20000 0.50000 0 0 +0.20000 -0.20000 1.50000 0 0 +0.70000 -0.30000 1.00000 0 0 + +4 +0.72111 +4 +0.30000 0.30000 1.00000 0 0 +0.80000 0.20000 1.50000 0 0 +0.20000 -0.20000 1.50000 0 0 +0.70000 -0.30000 1.00000 0 0 + diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/go b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/go new file mode 100755 index 0000000..d60e8d5 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=0.9 -3=0.75 -4=0.75 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/job.in b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/job.in new file mode 100755 index 0000000..8e609da --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J C4_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/rndstr.in b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/rndstr.in new file mode 100644 index 0000000..3cf1b70 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/rndstr.in @@ -0,0 +1,13 @@ + +1 1 0.63246 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.3 0.3 0 f_A=0.5,f_B=0.5 +-0.3 -0.3 0 f_A=0.5,f_B=0.5 +0.2 0.8 0.5 f_A=0.5,f_B=0.5 +0.8 0.2 0.5 f_A=0.5,f_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 +0.5 0.5 0.5 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/rndstrgrp.out b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..17a7362 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsdb_lev=2_a=0.5,0.5_f=0.5,0.5/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 0.632460 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.300000 0.300000 0.000000 f_A=0.500000,f_B=0.500000 +-0.300000 -0.300000 0.000000 f_A=0.500000,f_B=0.500000 +0.800000 0.200000 0.500000 f_A=0.500000,f_B=0.500000 +0.200000 0.800000 0.500000 f_A=0.500000,f_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 +0.500000 0.500000 0.500000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/RUTILE_C4/sqsgen.in b/data/sqsdb/RUTILE_C4/sqsgen.in new file mode 100644 index 0000000..ab37ad9 --- /dev/null +++ b/data/sqsdb/RUTILE_C4/sqsgen.in @@ -0,0 +1,4 @@ +level=0 a=1 f=1 +level=1 a=0.5,0.5 f=1 +level=1 a=1 f=0.5,0.5 +level=2 a=0.5,0.5 f=0.5,0.5 diff --git a/data/sqsdb/SIGMA_D8B/rndstr.skel b/data/sqsdb/SIGMA_D8B/rndstr.skel new file mode 100644 index 0000000..60e6416 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/rndstr.skel @@ -0,0 +1,38 @@ +1.9 1.9 1.0 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.000 0.000 0.500 aj +0.500 0.500 0.000 aj + +0.561 0.235 0.000 aj +0.235 0.561 0.000 aj +-0.235 -0.561 0.000 aj +-0.561 -0.235 0.000 aj +1.061 0.265 -0.500 aj +0.265 1.061 -0.500 aj +0.735 -0.061 -0.500 aj +-0.061 0.735 -0.500 aj + +0.103 0.103 0.000 g +-0.103 -0.103 0.000 g +0.603 0.397 -0.500 g +0.397 0.603 -0.500 g + +0.318 0.318 0.730 ii +-0.318 -0.318 0.730 ii +0.318 0.318 0.270 ii +-0.318 -0.318 0.270 ii +0.818 0.182 0.230 ii +0.182 0.818 0.230 ii +0.818 0.182 -0.230 ii +0.182 0.818 -0.230 ii +0.367 0.038 0.000 ii +0.038 0.367 0.000 ii +-0.038 -0.367 0.000 ii +-0.367 -0.038 0.000 ii +0.867 0.462 -0.500 ii +0.462 0.867 -0.500 ii +0.538 0.133 -0.500 ii +0.133 0.538 -0.500 ii diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=0_aj=1_g=1_ii=1/bestsqs.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=0_aj=1_g=1_ii=1/bestsqs.out new file mode 100644 index 0000000..fb8f9ce --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=0_aj=1_g=1_ii=1/bestsqs.out @@ -0,0 +1,38 @@ +1.9 1.9 1.0 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.000 0.000 0.500 aj_A +0.500 0.500 0.000 aj_A + +0.561 0.235 0.000 aj_A +0.235 0.561 0.000 aj_A +-0.235 -0.561 0.000 aj_A +-0.561 -0.235 0.000 aj_A +1.061 0.265 -0.500 aj_A +0.265 1.061 -0.500 aj_A +0.735 -0.061 -0.500 aj_A +-0.061 0.735 -0.500 aj_A + +0.103 0.103 0.000 g_A +-0.103 -0.103 0.000 g_A +0.603 0.397 -0.500 g_A +0.397 0.603 -0.500 g_A + +0.318 0.318 0.730 ii_A +-0.318 -0.318 0.730 ii_A +0.318 0.318 0.270 ii_A +-0.318 -0.318 0.270 ii_A +0.818 0.182 0.230 ii_A +0.182 0.818 0.230 ii_A +0.818 0.182 -0.230 ii_A +0.182 0.818 -0.230 ii_A +0.367 0.038 0.000 ii_A +0.038 0.367 0.000 ii_A +-0.038 -0.367 0.000 ii_A +-0.367 -0.038 0.000 ii_A +0.867 0.462 -0.500 ii_A +0.462 0.867 -0.500 ii_A +0.538 0.133 -0.500 ii_A +0.133 0.538 -0.500 ii_A diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=0_aj=1_g=1_ii=1/rndstr.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=0_aj=1_g=1_ii=1/rndstr.in new file mode 100644 index 0000000..9d982c0 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=0_aj=1_g=1_ii=1/rndstr.in @@ -0,0 +1,38 @@ +1.9 1.9 1.0 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.000 0.000 0.500 aj_A=1 +0.500 0.500 0.000 aj_A=1 + +0.561 0.235 0.000 aj_A=1 +0.235 0.561 0.000 aj_A=1 +-0.235 -0.561 0.000 aj_A=1 +-0.561 -0.235 0.000 aj_A=1 +1.061 0.265 -0.500 aj_A=1 +0.265 1.061 -0.500 aj_A=1 +0.735 -0.061 -0.500 aj_A=1 +-0.061 0.735 -0.500 aj_A=1 + +0.103 0.103 0.000 g_A=1 +-0.103 -0.103 0.000 g_A=1 +0.603 0.397 -0.500 g_A=1 +0.397 0.603 -0.500 g_A=1 + +0.318 0.318 0.730 ii_A=1 +-0.318 -0.318 0.730 ii_A=1 +0.318 0.318 0.270 ii_A=1 +-0.318 -0.318 0.270 ii_A=1 +0.818 0.182 0.230 ii_A=1 +0.182 0.818 0.230 ii_A=1 +0.818 0.182 -0.230 ii_A=1 +0.182 0.818 -0.230 ii_A=1 +0.367 0.038 0.000 ii_A=1 +0.038 0.367 0.000 ii_A=1 +-0.038 -0.367 0.000 ii_A=1 +-0.367 -0.038 0.000 ii_A=1 +0.867 0.462 -0.500 ii_A=1 +0.462 0.867 -0.500 ii_A=1 +0.538 0.133 -0.500 ii_A=1 +0.133 0.538 -0.500 ii_A=1 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/bestcorr.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/bestcorr.out new file mode 100644 index 0000000..ca95885 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/bestcorr.out @@ -0,0 +1,24 @@ +2 0.516667 0.000000 0.000000 0.000000 +2 0.548149 0.000000 0.000000 0.000000 +2 0.821943 0.000000 0.000000 0.000000 +2 0.875964 0.000000 0.000000 0.000000 +2 0.922594 0.000000 0.000000 0.000000 +2 1.000000 -0.500000 0.000000 -0.500000 +2 1.000000 -1.000000 0.000000 -1.000000 +2 1.033335 0.000000 0.000000 0.000000 +2 1.070086 0.000000 0.000000 0.000000 +2 1.075058 0.000000 0.000000 0.000000 +2 1.125587 0.000000 0.000000 0.000000 +2 1.140380 -0.500000 0.000000 -0.500000 +2 1.259168 0.000000 0.000000 0.000000 +2 1.291631 0.000000 0.000000 0.000000 +2 1.329403 0.000000 0.000000 0.000000 +2 1.360581 0.000000 0.000000 0.000000 +2 1.401301 0.000000 0.000000 0.000000 +2 1.422530 0.000000 0.000000 0.000000 +2 1.433527 0.000000 0.000000 0.000000 +2 1.437978 0.000000 0.000000 0.000000 +2 1.465766 0.000000 0.000000 0.000000 +3 0.548149 0.000000 0.000000 0.000000 +3 0.875964 0.000000 0.000000 0.000000 +Objective_function= 1.000000 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/bestsqs.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/bestsqs.out new file mode 100644 index 0000000..33cd289 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/bestsqs.out @@ -0,0 +1,66 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 -0.000000 1.000000 +1.000000 -0.000000 1.000000 +0.000000 1.000000 -1.000000 +0.000000 1.000000 -0.500000 aj_A +0.000000 1.000000 0.500000 aj_B +-0.500000 0.500000 1.000000 aj_B +0.500000 0.500000 1.000000 aj_A +0.235000 0.561000 0.000000 aj_A +0.235000 0.561000 1.000000 aj_B +-0.439000 0.235000 1.000000 aj_B +0.561000 0.235000 1.000000 aj_A +0.439000 0.765000 0.000000 aj_B +-0.561000 0.765000 0.000000 aj_A +-0.235000 0.439000 1.000000 aj_B +-0.235000 0.439000 -0.000000 aj_A +-0.265000 0.939000 -0.500000 aj_B +-0.265000 0.939000 0.500000 aj_A +0.061000 0.265000 0.500000 aj_A +0.061000 0.265000 1.500000 aj_A +-0.061000 0.735000 -0.500000 aj_B +-0.061000 0.735000 0.500000 aj_A +0.265000 0.061000 0.500000 aj_B +0.265000 0.061000 1.500000 aj_B +-0.897000 0.103000 1.000000 g_A +0.103000 0.103000 1.000000 g_A +-0.103000 0.897000 1.000000 g_A +-0.103000 0.897000 0.000000 g_A +-0.397000 0.397000 0.500000 g_A +0.603000 0.397000 0.500000 g_A +-0.603000 0.603000 0.500000 g_A +0.397000 0.603000 0.500000 g_A +0.318000 0.318000 0.730000 ii_A +-0.682000 0.318000 0.730000 ii_A +-0.318000 0.682000 -0.270000 ii_A +-0.318000 0.682000 0.730000 ii_A +0.318000 0.318000 0.270000 ii_A +0.318000 0.318000 1.270000 ii_A +0.682000 0.682000 0.270000 ii_A +-0.318000 0.682000 0.270000 ii_A +-0.182000 0.182000 1.230000 ii_A +-0.182000 0.182000 0.230000 ii_A +0.182000 0.818000 0.230000 ii_A +-0.818000 0.818000 0.230000 ii_A +-0.182000 0.182000 0.770000 ii_A +0.818000 0.182000 0.770000 ii_A +0.182000 0.818000 -0.230000 ii_A +0.182000 0.818000 0.770000 ii_A +0.038000 0.367000 0.000000 ii_A +0.038000 0.367000 1.000000 ii_A +-0.633000 0.038000 1.000000 ii_A +0.367000 0.038000 1.000000 ii_A +0.633000 0.962000 -0.000000 ii_A +-0.367000 0.962000 0.000000 ii_A +-0.038000 0.633000 1.000000 ii_A +-0.038000 0.633000 0.000000 ii_A +-0.462000 0.133000 0.500000 ii_A +0.538000 0.133000 0.500000 ii_A +-0.133000 0.462000 0.500000 ii_A +0.867000 0.462000 0.500000 ii_A +-0.867000 0.538000 0.500000 ii_A +0.133000 0.538000 0.500000 ii_A +-0.538000 0.867000 0.500000 ii_A +0.462000 0.867000 0.500000 ii_A diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/clusters.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/clusters.out new file mode 100644 index 0000000..adfac99 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/clusters.out @@ -0,0 +1,140 @@ +8 +0.51667 +2 +0.26500 0.06100 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 + +4 +0.54815 +2 +0.76500 0.43900 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 + +16 +0.82194 +2 +0.43900 0.76500 1.00000 0 0 +0.73500 0.93900 1.50000 0 0 + +4 +0.87596 +2 +0.43900 0.76500 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 + +4 +0.92259 +2 +0.26500 0.06100 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +8 +1.00000 +2 +0.93900 0.73500 0.50000 0 0 +0.93900 0.73500 -0.50000 0 0 + +2 +1.00000 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 0.50000 0.00000 0 0 + +4 +1.03333 +2 +0.43900 0.76500 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 + +16 +1.07009 +2 +1.00000 1.00000 0.50000 0 0 +1.23500 0.56100 0.00000 0 0 + +16 +1.07506 +2 +0.26500 0.06100 0.50000 0 0 +0.23500 -0.43900 0.00000 0 0 + +16 +1.12559 +2 +0.26500 0.06100 0.50000 0 0 +0.00000 0.00000 -0.50000 0 0 + +8 +1.14038 +2 +0.93900 0.73500 0.50000 0 0 +0.73500 0.93900 -0.50000 0 0 + +16 +1.25917 +2 +0.26500 0.06100 0.50000 0 0 +0.50000 -0.50000 0.00000 0 0 + +16 +1.29163 +2 +0.93900 0.73500 0.50000 0 0 +0.56100 0.23500 0.00000 0 0 + +8 +1.32940 +2 +0.43900 0.76500 1.00000 0 0 +0.76500 0.43900 0.00000 0 0 + +8 +1.36058 +2 +0.26500 0.06100 0.50000 0 0 +0.73500 -0.06100 -0.50000 0 0 + +8 +1.40130 +2 +0.73500 0.93900 0.50000 0 0 +0.00000 1.00000 0.50000 0 0 + +8 +1.42253 +2 +0.06100 0.26500 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +8 +1.43353 +2 +1.00000 1.00000 0.50000 0 0 +1.50000 1.50000 0.00000 0 0 + +8 +1.43798 +2 +0.76500 0.43900 1.00000 0 0 +0.23500 0.56100 2.00000 0 0 + +16 +1.46577 +2 +0.06100 0.26500 0.50000 0 0 +0.23500 -0.43900 0.00000 0 0 + +4 +0.54815 +3 +0.76500 0.43900 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 + +4 +0.87596 +3 +0.43900 0.76500 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 + diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/go b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/go new file mode 100644 index 0000000..c53f2c9 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/go @@ -0,0 +1,4 @@ + corrdump -nop -noe -2=1.5 -3=0.9 -4=0.9 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/job.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/job.in new file mode 100755 index 0000000..aea864b --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=4:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=4 +#SBATCH -J mcsqs + +for id in [ 0 1 2 3 ] +do + mcsqs -n=30 -ip=$id & +done +wait diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/job2.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/job2.in new file mode 100755 index 0000000..634bc03 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/job2.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=4:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=4 +#SBATCH -J mcsqs + +for id in [ 4 5 6 7 ] +do + mcsqs -n=60 -ip=$id & +done +wait diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/rndstr.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/rndstr.in new file mode 100644 index 0000000..b195665 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/rndstr.in @@ -0,0 +1,38 @@ +1.9 1.9 1.0 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.000 0.000 0.500 aj_A=0.5,aj_B=0.5 +0.500 0.500 0.000 aj_A=0.5,aj_B=0.5 + +0.561 0.235 0.000 aj_A=0.5,aj_B=0.5 +0.235 0.561 0.000 aj_A=0.5,aj_B=0.5 +-0.235 -0.561 0.000 aj_A=0.5,aj_B=0.5 +-0.561 -0.235 0.000 aj_A=0.5,aj_B=0.5 +1.061 0.265 -0.500 aj_A=0.5,aj_B=0.5 +0.265 1.061 -0.500 aj_A=0.5,aj_B=0.5 +0.735 -0.061 -0.500 aj_A=0.5,aj_B=0.5 +-0.061 0.735 -0.500 aj_A=0.5,aj_B=0.5 + +0.103 0.103 0.000 g_A=1 +-0.103 -0.103 0.000 g_A=1 +0.603 0.397 -0.500 g_A=1 +0.397 0.603 -0.500 g_A=1 + +0.318 0.318 0.730 ii_A=1 +-0.318 -0.318 0.730 ii_A=1 +0.318 0.318 0.270 ii_A=1 +-0.318 -0.318 0.270 ii_A=1 +0.818 0.182 0.230 ii_A=1 +0.182 0.818 0.230 ii_A=1 +0.818 0.182 -0.230 ii_A=1 +0.182 0.818 -0.230 ii_A=1 +0.367 0.038 0.000 ii_A=1 +0.038 0.367 0.000 ii_A=1 +-0.038 -0.367 0.000 ii_A=1 +-0.367 -0.038 0.000 ii_A=1 +0.867 0.462 -0.500 ii_A=1 +0.462 0.867 -0.500 ii_A=1 +0.538 0.133 -0.500 ii_A=1 +0.133 0.538 -0.500 ii_A=1 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/rndstrgrp.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/rndstrgrp.out new file mode 100644 index 0000000..e7dfe80 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/rndstrgrp.out @@ -0,0 +1,41 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.500000 aj_A=0.500000,aj_B=0.500000 +0.500000 0.500000 0.000000 aj_A=0.500000,aj_B=0.500000 + +0.235000 0.561000 0.000000 aj_A=0.500000,aj_B=0.500000 +0.561000 0.235000 0.000000 aj_A=0.500000,aj_B=0.500000 +-0.561000 -0.235000 0.000000 aj_A=0.500000,aj_B=0.500000 +-0.235000 -0.561000 0.000000 aj_A=0.500000,aj_B=0.500000 +0.735000 -0.061000 -0.500000 aj_A=0.500000,aj_B=0.500000 +1.061000 0.265000 -0.500000 aj_A=0.500000,aj_B=0.500000 +-0.061000 0.735000 -0.500000 aj_A=0.500000,aj_B=0.500000 +0.265000 1.061000 -0.500000 aj_A=0.500000,aj_B=0.500000 + +0.103000 0.103000 0.000000 g_A=1.000000 +-0.103000 -0.103000 0.000000 g_A=1.000000 +0.603000 0.397000 -0.500000 g_A=1.000000 +0.397000 0.603000 -0.500000 g_A=1.000000 + +0.318000 0.318000 0.730000 ii_A=1.000000 +-0.318000 -0.318000 0.730000 ii_A=1.000000 +0.318000 0.318000 0.270000 ii_A=1.000000 +-0.318000 -0.318000 0.270000 ii_A=1.000000 +0.818000 0.182000 0.230000 ii_A=1.000000 +0.182000 0.818000 0.230000 ii_A=1.000000 +0.818000 0.182000 -0.230000 ii_A=1.000000 +0.182000 0.818000 -0.230000 ii_A=1.000000 + +0.038000 0.367000 0.000000 ii_A=1.000000 +0.367000 0.038000 0.000000 ii_A=1.000000 +-0.367000 -0.038000 0.000000 ii_A=1.000000 +-0.038000 -0.367000 0.000000 ii_A=1.000000 +0.538000 0.133000 -0.500000 ii_A=1.000000 +0.867000 0.462000 -0.500000 ii_A=1.000000 +0.133000 0.538000 -0.500000 ii_A=1.000000 +0.462000 0.867000 -0.500000 ii_A=1.000000 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/sqsparam.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/sqsparam.in new file mode 100644 index 0000000..0d6a524 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=0.5,0.5_g=1_ii=1/sqsparam.in @@ -0,0 +1 @@ +1 5 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/bestcorr.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/bestcorr.out new file mode 100644 index 0000000..39c958b --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/bestcorr.out @@ -0,0 +1,13 @@ +2 0.553523 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.142973 0.000000 0.000000 0.000000 +2 1.210179 -0.250000 0.000000 -0.250000 +3 1.142973 0.000000 0.000000 0.000000 +3 1.210179 0.000000 0.000000 0.000000 +3 1.210179 0.000000 0.000000 0.000000 +3 1.210179 0.000000 0.000000 0.000000 +3 1.210179 0.000000 0.000000 0.000000 +4 1.142973 -1.000000 0.000000 -1.000000 +4 1.210179 0.250000 0.000000 0.250000 +4 1.210179 0.000000 0.000000 0.000000 +Objective_function= -49.743118 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/bestsqs.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/bestsqs.out new file mode 100644 index 0000000..3f74621 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/bestsqs.out @@ -0,0 +1,66 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +0.000000 -1.000000 0.000000 +1.000000 0.000000 0.000000 +0.000000 0.000000 2.000000 +0.103000 -0.897000 2.000000 g_A +0.103000 -0.897000 1.000000 g_B +0.897000 -0.103000 2.000000 g_B +0.897000 -0.103000 1.000000 g_B +0.603000 -0.603000 1.500000 g_B +0.603000 -0.603000 0.500000 g_A +0.397000 -0.397000 1.500000 g_A +0.397000 -0.397000 0.500000 g_A +1.000000 -1.000000 0.500000 aj_A +1.000000 -1.000000 1.500000 aj_A +0.500000 -0.500000 2.000000 aj_A +0.500000 -0.500000 1.000000 aj_A +0.235000 -0.439000 2.000000 aj_A +0.235000 -0.439000 1.000000 aj_A +0.561000 -0.765000 2.000000 aj_A +0.561000 -0.765000 1.000000 aj_A +0.439000 -0.235000 2.000000 aj_A +0.439000 -0.235000 1.000000 aj_A +0.765000 -0.561000 2.000000 aj_A +0.765000 -0.561000 1.000000 aj_A +0.735000 -0.061000 1.500000 aj_A +0.735000 -0.061000 0.500000 aj_A +0.061000 -0.735000 1.500000 aj_A +0.061000 -0.735000 0.500000 aj_A +0.939000 -0.265000 1.500000 aj_A +0.939000 -0.265000 0.500000 aj_A +0.265000 -0.939000 1.500000 aj_A +0.265000 -0.939000 0.500000 aj_A +0.318000 -0.682000 0.730000 ii_A +0.318000 -0.682000 1.730000 ii_A +0.682000 -0.318000 0.730000 ii_A +0.682000 -0.318000 1.730000 ii_A +0.318000 -0.682000 0.270000 ii_A +0.318000 -0.682000 1.270000 ii_A +0.682000 -0.318000 0.270000 ii_A +0.682000 -0.318000 1.270000 ii_A +0.818000 -0.818000 0.230000 ii_A +0.818000 -0.818000 1.230000 ii_A +0.182000 -0.182000 0.230000 ii_A +0.182000 -0.182000 1.230000 ii_A +0.818000 -0.818000 1.770000 ii_A +0.818000 -0.818000 0.770000 ii_A +0.182000 -0.182000 1.770000 ii_A +0.182000 -0.182000 0.770000 ii_A +0.038000 -0.633000 2.000000 ii_A +0.038000 -0.633000 1.000000 ii_A +0.367000 -0.962000 2.000000 ii_A +0.367000 -0.962000 1.000000 ii_A +0.633000 -0.038000 2.000000 ii_A +0.633000 -0.038000 1.000000 ii_A +0.962000 -0.367000 2.000000 ii_A +0.962000 -0.367000 1.000000 ii_A +0.538000 -0.867000 1.500000 ii_A +0.538000 -0.867000 0.500000 ii_A +0.867000 -0.538000 1.500000 ii_A +0.867000 -0.538000 0.500000 ii_A +0.133000 -0.462000 1.500000 ii_A +0.133000 -0.462000 0.500000 ii_A +0.462000 -0.133000 1.500000 ii_A +0.462000 -0.133000 0.500000 ii_A diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/clusters.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/clusters.out new file mode 100644 index 0000000..6199ead --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/clusters.out @@ -0,0 +1,83 @@ +2 +0.55352 +2 +0.60300 0.39700 0.50000 0 0 +0.39700 0.60300 0.50000 0 0 + +4 +1.00000 +2 +0.39700 0.60300 0.50000 0 0 +0.39700 0.60300 -0.50000 0 0 + +4 +1.14297 +2 +0.10300 0.10300 1.00000 0 0 +-0.10300 -0.10300 0.00000 0 0 + +16 +1.21018 +2 +0.60300 0.39700 0.50000 0 0 +0.89700 -0.10300 0.00000 0 0 + +8 +1.14297 +3 +0.10300 0.10300 1.00000 0 0 +-0.10300 -0.10300 1.00000 0 0 +-0.10300 -0.10300 0.00000 0 0 + +8 +1.21018 +3 +0.60300 0.39700 0.50000 0 0 +0.60300 0.39700 -0.50000 0 0 +0.89700 -0.10300 0.00000 0 0 + +8 +1.21018 +3 +0.89700 0.89700 1.00000 0 0 +1.10300 1.10300 1.00000 0 0 +0.60300 1.39700 1.50000 0 0 + +8 +1.21018 +3 +0.89700 0.89700 1.00000 0 0 +0.89700 0.89700 2.00000 0 0 +0.60300 1.39700 1.50000 0 0 + +8 +1.21018 +3 +0.89700 0.89700 1.00000 0 0 +1.10300 1.10300 2.00000 0 0 +0.60300 1.39700 1.50000 0 0 + +2 +1.14297 +4 +0.10300 0.10300 1.00000 0 0 +-0.10300 -0.10300 1.00000 0 0 +0.10300 0.10300 0.00000 0 0 +-0.10300 -0.10300 0.00000 0 0 + +16 +1.21018 +4 +0.89700 0.89700 1.00000 0 0 +1.10300 1.10300 1.00000 0 0 +0.89700 0.89700 2.00000 0 0 +0.60300 1.39700 1.50000 0 0 + +4 +1.21018 +4 +0.89700 0.89700 1.00000 0 0 +1.10300 1.10300 1.00000 0 0 +0.60300 1.39700 0.50000 0 0 +0.60300 1.39700 1.50000 0 0 + diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/go b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/go new file mode 100644 index 0000000..369cf9e --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/go @@ -0,0 +1 @@ +corrdump -nop -noe -2=1.5 -3=1.5 -4=1.5 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/job.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/job.in new file mode 100755 index 0000000..b855f7c --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=60 -wr=10 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/rndstr.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/rndstr.in new file mode 100644 index 0000000..31170a1 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/rndstr.in @@ -0,0 +1,38 @@ +1.9 1.9 1.0 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.000 0.000 0.500 aj_A=1 +0.500 0.500 0.000 aj_A=1 + +0.561 0.235 0.000 aj_A=1 +0.235 0.561 0.000 aj_A=1 +-0.235 -0.561 0.000 aj_A=1 +-0.561 -0.235 0.000 aj_A=1 +1.061 0.265 -0.500 aj_A=1 +0.265 1.061 -0.500 aj_A=1 +0.735 -0.061 -0.500 aj_A=1 +-0.061 0.735 -0.500 aj_A=1 + +0.103 0.103 0.000 g_A=0.5,g_B=0.5 +-0.103 -0.103 0.000 g_A=0.5,g_B=0.5 +0.603 0.397 -0.500 g_A=0.5,g_B=0.5 +0.397 0.603 -0.500 g_A=0.5,g_B=0.5 + +0.318 0.318 0.730 ii_A=1 +-0.318 -0.318 0.730 ii_A=1 +0.318 0.318 0.270 ii_A=1 +-0.318 -0.318 0.270 ii_A=1 +0.818 0.182 0.230 ii_A=1 +0.182 0.818 0.230 ii_A=1 +0.818 0.182 -0.230 ii_A=1 +0.182 0.818 -0.230 ii_A=1 +0.367 0.038 0.000 ii_A=1 +0.038 0.367 0.000 ii_A=1 +-0.038 -0.367 0.000 ii_A=1 +-0.367 -0.038 0.000 ii_A=1 +0.867 0.462 -0.500 ii_A=1 +0.462 0.867 -0.500 ii_A=1 +0.538 0.133 -0.500 ii_A=1 +0.133 0.538 -0.500 ii_A=1 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/rndstrgrp.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/rndstrgrp.out new file mode 100644 index 0000000..66f45b2 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=0.5,0.5_ii=1/rndstrgrp.out @@ -0,0 +1,41 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.103000 0.103000 0.000000 g_A=0.500000,g_B=0.500000 +-0.103000 -0.103000 0.000000 g_A=0.500000,g_B=0.500000 +0.603000 0.397000 -0.500000 g_A=0.500000,g_B=0.500000 +0.397000 0.603000 -0.500000 g_A=0.500000,g_B=0.500000 + +0.000000 0.000000 0.500000 aj_A=1.000000 +0.500000 0.500000 0.000000 aj_A=1.000000 + +0.235000 0.561000 0.000000 aj_A=1.000000 +0.561000 0.235000 0.000000 aj_A=1.000000 +-0.561000 -0.235000 0.000000 aj_A=1.000000 +-0.235000 -0.561000 0.000000 aj_A=1.000000 +0.735000 -0.061000 -0.500000 aj_A=1.000000 +1.061000 0.265000 -0.500000 aj_A=1.000000 +-0.061000 0.735000 -0.500000 aj_A=1.000000 +0.265000 1.061000 -0.500000 aj_A=1.000000 + +0.318000 0.318000 0.730000 ii_A=1.000000 +-0.318000 -0.318000 0.730000 ii_A=1.000000 +0.318000 0.318000 0.270000 ii_A=1.000000 +-0.318000 -0.318000 0.270000 ii_A=1.000000 +0.818000 0.182000 0.230000 ii_A=1.000000 +0.182000 0.818000 0.230000 ii_A=1.000000 +0.818000 0.182000 -0.230000 ii_A=1.000000 +0.182000 0.818000 -0.230000 ii_A=1.000000 + +0.038000 0.367000 0.000000 ii_A=1.000000 +0.367000 0.038000 0.000000 ii_A=1.000000 +-0.367000 -0.038000 0.000000 ii_A=1.000000 +-0.038000 -0.367000 0.000000 ii_A=1.000000 +0.538000 0.133000 -0.500000 ii_A=1.000000 +0.867000 0.462000 -0.500000 ii_A=1.000000 +0.133000 0.538000 -0.500000 ii_A=1.000000 +0.462000 0.867000 -0.500000 ii_A=1.000000 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/bestcorr.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..f44f3cb --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/bestcorr.out @@ -0,0 +1,51 @@ +2 0.460000 0.000000 0.000000 0.000000 +2 0.525624 0.000000 0.000000 0.000000 +2 0.540000 0.000000 0.000000 0.000000 +2 0.592601 0.000000 0.000000 0.000000 +2 0.603814 0.000000 0.000000 0.000000 +2 0.623009 -0.250000 0.000000 -0.250000 +2 0.884025 -1.000000 0.000000 -1.000000 +2 0.908070 0.000000 0.000000 0.000000 +2 0.928458 0.000000 0.000000 0.000000 +2 0.942666 0.000000 0.000000 0.000000 +2 0.944021 0.000000 0.000000 0.000000 +2 0.978070 -1.000000 0.000000 -1.000000 +2 0.985328 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.080843 0.000000 0.000000 0.000000 +2 1.088237 0.000000 0.000000 0.000000 +2 1.102640 0.000000 0.000000 0.000000 +2 1.104206 0.000000 0.000000 0.000000 +2 1.104206 0.000000 0.000000 0.000000 +2 1.117238 0.000000 0.000000 0.000000 +2 1.129726 0.000000 0.000000 0.000000 +2 1.161301 0.000000 0.000000 0.000000 +2 1.161968 0.250000 0.000000 0.250000 +2 1.184075 0.000000 0.000000 0.000000 +2 1.325072 0.000000 0.000000 0.000000 +2 1.334728 0.000000 0.000000 0.000000 +2 1.342196 0.250000 0.000000 0.250000 +2 1.345799 0.000000 0.000000 0.000000 +2 1.367538 0.000000 0.000000 0.000000 +2 1.375089 0.000000 0.000000 0.000000 +2 1.380069 0.000000 0.000000 0.000000 +2 1.388632 0.000000 0.000000 0.000000 +2 1.392315 0.000000 0.000000 0.000000 +2 1.397495 0.000000 0.000000 0.000000 +2 1.398793 0.000000 0.000000 0.000000 +2 1.402056 0.000000 0.000000 0.000000 +2 1.419901 0.000000 0.000000 0.000000 +2 1.432086 0.000000 0.000000 0.000000 +2 1.460000 0.000000 0.000000 0.000000 +2 1.466336 0.000000 0.000000 0.000000 +2 1.477924 0.000000 0.000000 0.000000 +2 1.491415 0.000000 0.000000 0.000000 +2 1.493366 0.000000 0.000000 0.000000 +3 0.592601 0.000000 0.000000 0.000000 +3 0.603814 0.000000 0.000000 0.000000 +3 0.623009 0.000000 0.000000 0.000000 +3 0.623009 0.000000 0.000000 0.000000 +3 0.884025 0.000000 0.000000 0.000000 +4 0.623009 0.000000 0.000000 0.000000 +Objective_function= 2.126991 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/bestsqs.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..7b75e17 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/bestsqs.out @@ -0,0 +1,66 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 -0.000000 1.000000 +1.000000 -0.000000 1.000000 +0.000000 1.000000 -1.000000 +0.318000 0.318000 0.730000 ii_A +-0.682000 0.318000 0.730000 ii_B +0.318000 0.318000 1.270000 ii_B +0.318000 0.318000 0.270000 ii_B +-0.318000 0.682000 -0.270000 ii_B +-0.318000 0.682000 0.730000 ii_A +-0.318000 0.682000 0.270000 ii_A +0.682000 0.682000 0.270000 ii_A +-0.182000 0.182000 1.230000 ii_B +-0.182000 0.182000 0.230000 ii_B +0.818000 0.182000 0.770000 ii_A +-0.182000 0.182000 0.770000 ii_B +0.182000 0.818000 0.230000 ii_A +-0.818000 0.818000 0.230000 ii_A +0.182000 0.818000 0.770000 ii_B +0.182000 0.818000 -0.230000 ii_A +0.038000 0.367000 0.000000 ii_B +0.038000 0.367000 1.000000 ii_B +-0.633000 0.038000 1.000000 ii_A +0.367000 0.038000 1.000000 ii_A +0.633000 0.962000 0.000000 ii_B +-0.367000 0.962000 0.000000 ii_A +-0.038000 0.633000 1.000000 ii_A +-0.038000 0.633000 0.000000 ii_B +-0.462000 0.133000 0.500000 ii_B +0.538000 0.133000 0.500000 ii_A +-0.133000 0.462000 0.500000 ii_A +0.867000 0.462000 0.500000 ii_B +-0.867000 0.538000 0.500000 ii_A +0.133000 0.538000 0.500000 ii_A +-0.538000 0.867000 0.500000 ii_B +0.462000 0.867000 0.500000 ii_B +0.000000 1.000000 -0.500000 aj_A +0.000000 1.000000 0.500000 aj_A +-0.500000 0.500000 1.000000 aj_A +0.500000 0.500000 1.000000 aj_A +0.235000 0.561000 0.000000 aj_A +0.235000 0.561000 1.000000 aj_A +-0.439000 0.235000 1.000000 aj_A +0.561000 0.235000 1.000000 aj_A +0.439000 0.765000 -0.000000 aj_A +-0.561000 0.765000 0.000000 aj_A +-0.235000 0.439000 1.000000 aj_A +-0.235000 0.439000 -0.000000 aj_A +-0.265000 0.939000 -0.500000 aj_A +-0.265000 0.939000 0.500000 aj_A +0.061000 0.265000 0.500000 aj_A +0.061000 0.265000 1.500000 aj_A +-0.061000 0.735000 -0.500000 aj_A +-0.061000 0.735000 0.500000 aj_A +0.265000 0.061000 0.500000 aj_A +0.265000 0.061000 1.500000 aj_A +-0.897000 0.103000 1.000000 g_A +0.103000 0.103000 1.000000 g_A +-0.103000 0.897000 1.000000 g_A +-0.103000 0.897000 0.000000 g_A +-0.397000 0.397000 0.500000 g_A +0.603000 0.397000 0.500000 g_A +-0.603000 0.603000 0.500000 g_A +0.397000 0.603000 0.500000 g_A diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/clusters.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/clusters.out new file mode 100644 index 0000000..b0de4df --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/clusters.out @@ -0,0 +1,307 @@ +4 +0.46000 +2 +0.31800 0.31800 0.27000 0 0 +0.31800 0.31800 0.73000 0 0 + +4 +0.52562 +2 +0.53800 0.13300 0.50000 0 0 +0.46200 -0.13300 0.50000 0 0 + +4 +0.54000 +2 +0.18200 0.81800 0.77000 0 0 +0.18200 0.81800 0.23000 0 0 + +16 +0.59260 +2 +0.81800 0.18200 0.23000 0 0 +0.63300 -0.03800 0.00000 0 0 + +16 +0.60381 +2 +0.68200 0.68200 0.27000 0 0 +0.63300 0.96200 0.00000 0 0 + +16 +0.62301 +2 +0.86700 0.46200 0.50000 0 0 +0.96200 0.63300 0.00000 0 0 + +4 +0.88402 +2 +0.03800 0.36700 1.00000 0 0 +0.36700 0.03800 1.00000 0 0 + +16 +0.90807 +2 +0.18200 0.81800 0.23000 0 0 +0.13300 0.53800 -0.50000 0 0 + +16 +0.92846 +2 +0.03800 0.36700 1.00000 0 0 +0.18200 0.81800 1.23000 0 0 + +16 +0.94267 +2 +0.81800 0.18200 0.77000 0 0 +0.46200 -0.13300 0.50000 0 0 + +16 +0.94402 +2 +0.81800 0.18200 0.77000 0 0 +0.63300 -0.03800 0.00000 0 0 + +4 +0.97807 +2 +0.68200 0.68200 0.27000 0 0 +0.31800 0.31800 0.27000 0 0 + +16 +0.98533 +2 +0.18200 0.81800 0.77000 0 0 +0.31800 0.31800 0.73000 0 0 + +8 +1.00000 +2 +0.13300 0.53800 0.50000 0 0 +0.13300 0.53800 -0.50000 0 0 + +8 +1.00000 +2 +0.18200 0.81800 0.77000 0 0 +0.18200 0.81800 -0.23000 0 0 + +4 +1.08084 +2 +0.68200 0.68200 0.27000 0 0 +0.31800 0.31800 0.73000 0 0 + +4 +1.08824 +2 +0.13300 0.53800 0.50000 0 0 +0.53800 0.13300 0.50000 0 0 + +16 +1.10264 +2 +0.81800 0.18200 0.23000 0 0 +0.96200 -0.36700 0.00000 0 0 + +16 +1.10421 +2 +0.18200 0.81800 0.77000 0 0 +0.31800 0.31800 1.27000 0 0 + +16 +1.10421 +2 +0.18200 0.81800 0.77000 0 0 +0.31800 0.31800 0.27000 0 0 + +4 +1.11724 +2 +0.68200 0.68200 0.73000 0 0 +0.31800 0.31800 1.27000 0 0 + +8 +1.12973 +2 +0.53800 0.13300 0.50000 0 0 +0.46200 -0.13300 -0.50000 0 0 + +16 +1.16130 +2 +0.81800 0.18200 0.23000 0 0 +0.46200 -0.13300 -0.50000 0 0 + +16 +1.16197 +2 +0.13300 0.53800 0.50000 0 0 +0.36700 0.03800 0.00000 0 0 + +16 +1.18408 +2 +0.53800 0.13300 0.50000 0 0 +0.68200 -0.31800 -0.27000 0 0 + +16 +1.32507 +2 +0.81800 0.18200 0.77000 0 0 +0.96200 -0.36700 0.00000 0 0 + +8 +1.33473 +2 +0.53800 0.13300 0.50000 0 0 +0.86700 0.46200 -0.50000 0 0 + +16 +1.34220 +2 +0.86700 0.46200 0.50000 0 0 +1.36700 0.03800 0.00000 0 0 + +16 +1.34580 +2 +0.81800 0.18200 0.23000 0 0 +0.63300 -0.03800 -1.00000 0 0 + +8 +1.36754 +2 +0.86700 0.46200 0.50000 0 0 +0.46200 -0.13300 0.50000 0 0 + +16 +1.37509 +2 +0.81800 0.18200 0.23000 0 0 +0.68200 -0.31800 -0.73000 0 0 + +16 +1.38007 +2 +0.68200 0.68200 0.27000 0 0 +0.63300 0.96200 -1.00000 0 0 + +16 +1.38863 +2 +0.63300 0.96200 1.00000 0 0 +0.31800 0.31800 1.27000 0 0 + +8 +1.39232 +2 +0.81800 0.18200 0.77000 0 0 +0.18200 -0.18200 0.77000 0 0 + +16 +1.39749 +2 +0.81800 0.18200 0.23000 0 0 +0.86700 -0.53800 0.50000 0 0 + +8 +1.39879 +2 +0.31800 0.31800 0.27000 0 0 +0.68200 0.68200 -0.73000 0 0 + +4 +1.40206 +2 +0.96200 0.63300 1.00000 0 0 +1.03800 1.36700 1.00000 0 0 + +8 +1.41990 +2 +0.13300 0.53800 0.50000 0 0 +0.46200 -0.13300 0.50000 0 0 + +16 +1.43209 +2 +0.31800 0.31800 0.27000 0 0 +0.18200 0.81800 -0.77000 0 0 + +4 +1.46000 +2 +0.18200 0.81800 0.23000 0 0 +0.18200 0.81800 -1.23000 0 0 + +8 +1.46634 +2 +0.31800 0.31800 0.27000 0 0 +0.68200 -0.31800 0.73000 0 0 + +8 +1.47792 +2 +0.13300 0.53800 0.50000 0 0 +0.53800 0.13300 -0.50000 0 0 + +16 +1.49142 +2 +0.13300 0.53800 0.50000 0 0 +0.81800 0.18200 0.77000 0 0 + +8 +1.49337 +2 +0.31800 0.31800 0.27000 0 0 +0.68200 -0.31800 -0.27000 0 0 + +8 +0.59260 +3 +0.81800 0.18200 0.23000 0 0 +0.81800 0.18200 -0.23000 0 0 +0.63300 -0.03800 0.00000 0 0 + +8 +0.60381 +3 +0.68200 0.68200 0.27000 0 0 +0.68200 0.68200 -0.27000 0 0 +0.63300 0.96200 0.00000 0 0 + +16 +0.62301 +3 +0.86700 0.46200 0.50000 0 0 +1.13300 0.53800 0.50000 0 0 +0.96200 0.63300 0.00000 0 0 + +16 +0.62301 +3 +0.86700 0.46200 0.50000 0 0 +0.68200 0.68200 0.27000 0 0 +0.96200 0.63300 0.00000 0 0 + +8 +0.88402 +3 +0.03800 0.36700 1.00000 0 0 +0.31800 0.31800 1.27000 0 0 +0.36700 0.03800 1.00000 0 0 + +4 +0.62301 +4 +0.86700 0.46200 0.50000 0 0 +1.13300 0.53800 0.50000 0 0 +1.03800 0.36700 0.00000 0 0 +0.96200 0.63300 0.00000 0 0 + diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/go b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/go new file mode 100644 index 0000000..c3fdf0b --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/go @@ -0,0 +1,3 @@ +corrdump -nop -noe -2=1.5 -3=0.9 -4=0.9 -ro -l=rndstr.in -clus ; getclus + + diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/job.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/job.in new file mode 100755 index 0000000..b855f7c --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=60 -wr=10 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/job2.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/job2.in new file mode 100755 index 0000000..634bc03 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/job2.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=4:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=4 +#SBATCH -J mcsqs + +for id in [ 4 5 6 7 ] +do + mcsqs -n=60 -ip=$id & +done +wait diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/rndstr.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/rndstr.in new file mode 100644 index 0000000..1c3a89a --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/rndstr.in @@ -0,0 +1,38 @@ +1.9 1.9 1.0 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.000 0.000 0.500 aj_A=1 +0.500 0.500 0.000 aj_A=1 + +0.561 0.235 0.000 aj_A=1 +0.235 0.561 0.000 aj_A=1 +-0.235 -0.561 0.000 aj_A=1 +-0.561 -0.235 0.000 aj_A=1 +1.061 0.265 -0.500 aj_A=1 +0.265 1.061 -0.500 aj_A=1 +0.735 -0.061 -0.500 aj_A=1 +-0.061 0.735 -0.500 aj_A=1 + +0.103 0.103 0.000 g_A=1 +-0.103 -0.103 0.000 g_A=1 +0.603 0.397 -0.500 g_A=1 +0.397 0.603 -0.500 g_A=1 + +0.318 0.318 0.730 ii_A=0.5,ii_B=0.5 +-0.318 -0.318 0.730 ii_A=0.5,ii_B=0.5 +0.318 0.318 0.270 ii_A=0.5,ii_B=0.5 +-0.318 -0.318 0.270 ii_A=0.5,ii_B=0.5 +0.818 0.182 0.230 ii_A=0.5,ii_B=0.5 +0.182 0.818 0.230 ii_A=0.5,ii_B=0.5 +0.818 0.182 -0.230 ii_A=0.5,ii_B=0.5 +0.182 0.818 -0.230 ii_A=0.5,ii_B=0.5 +0.367 0.038 0.000 ii_A=0.5,ii_B=0.5 +0.038 0.367 0.000 ii_A=0.5,ii_B=0.5 +-0.038 -0.367 0.000 ii_A=0.5,ii_B=0.5 +-0.367 -0.038 0.000 ii_A=0.5,ii_B=0.5 +0.867 0.462 -0.500 ii_A=0.5,ii_B=0.5 +0.462 0.867 -0.500 ii_A=0.5,ii_B=0.5 +0.538 0.133 -0.500 ii_A=0.5,ii_B=0.5 +0.133 0.538 -0.500 ii_A=0.5,ii_B=0.5 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/rndstrgrp.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..6de3331 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/rndstrgrp.out @@ -0,0 +1,41 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.318000 0.318000 0.730000 ii_A=0.500000,ii_B=0.500000 +0.318000 0.318000 -0.730000 ii_A=0.500000,ii_B=0.500000 +-0.318000 -0.318000 0.730000 ii_A=0.500000,ii_B=0.500000 +-0.318000 -0.318000 -0.730000 ii_A=0.500000,ii_B=0.500000 +0.818000 0.182000 0.230000 ii_A=0.500000,ii_B=0.500000 +0.818000 0.182000 -1.230000 ii_A=0.500000,ii_B=0.500000 +0.182000 0.818000 0.230000 ii_A=0.500000,ii_B=0.500000 +0.182000 0.818000 -1.230000 ii_A=0.500000,ii_B=0.500000 + +0.038000 0.367000 0.000000 ii_A=0.500000,ii_B=0.500000 +0.367000 0.038000 0.000000 ii_A=0.500000,ii_B=0.500000 +-0.367000 -0.038000 0.000000 ii_A=0.500000,ii_B=0.500000 +-0.038000 -0.367000 0.000000 ii_A=0.500000,ii_B=0.500000 +0.538000 0.133000 -0.500000 ii_A=0.500000,ii_B=0.500000 +0.867000 0.462000 -0.500000 ii_A=0.500000,ii_B=0.500000 +0.133000 0.538000 -0.500000 ii_A=0.500000,ii_B=0.500000 +0.462000 0.867000 -0.500000 ii_A=0.500000,ii_B=0.500000 + +0.000000 0.000000 0.500000 aj_A=1.000000 +0.500000 0.500000 0.000000 aj_A=1.000000 + +0.235000 0.561000 0.000000 aj_A=1.000000 +0.561000 0.235000 0.000000 aj_A=1.000000 +-0.561000 -0.235000 0.000000 aj_A=1.000000 +-0.235000 -0.561000 0.000000 aj_A=1.000000 +0.735000 -0.061000 -0.500000 aj_A=1.000000 +1.061000 0.265000 -0.500000 aj_A=1.000000 +-0.061000 0.735000 -0.500000 aj_A=1.000000 +0.265000 1.061000 -0.500000 aj_A=1.000000 + +0.103000 0.103000 0.000000 g_A=1.000000 +-0.103000 -0.103000 0.000000 g_A=1.000000 +0.603000 0.397000 -0.500000 g_A=1.000000 +0.397000 0.603000 -0.500000 g_A=1.000000 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/sqsparam.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..0d6a524 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=1_aj=1_g=1_ii=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 5 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/bestcorr.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/bestcorr.out new file mode 100644 index 0000000..b1832c7 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/bestcorr.out @@ -0,0 +1,47 @@ +2 0.516667 0.000000 0.000000 0.000000 +2 0.548149 0.000000 0.000000 0.000000 +2 0.553523 0.000000 0.000000 0.000000 +2 0.571487 0.000000 0.000000 0.000000 +2 0.592544 0.000000 0.000000 0.000000 +2 0.821943 0.000000 0.000000 0.000000 +2 0.875964 0.000000 0.000000 0.000000 +2 0.905525 0.000000 0.000000 0.000000 +2 0.905621 0.000000 0.000000 0.000000 +2 0.914317 0.000000 0.000000 0.000000 +2 0.922594 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 -1.000000 0.000000 -1.000000 +2 1.000000 -1.000000 0.000000 -1.000000 +2 1.033335 0.000000 0.000000 0.000000 +2 1.059900 0.000000 0.000000 0.000000 +2 1.066741 -0.500000 0.000000 -0.500000 +2 1.070086 0.000000 0.000000 0.000000 +2 1.075058 0.000000 0.000000 0.000000 +2 1.125587 0.000000 0.000000 0.000000 +2 1.140380 0.000000 0.000000 0.000000 +2 1.142973 0.000000 0.000000 0.000000 +2 1.210179 -0.250000 0.000000 -0.250000 +2 1.259168 0.000000 0.000000 0.000000 +2 1.291631 0.000000 0.000000 0.000000 +2 1.329403 0.000000 0.000000 0.000000 +2 1.337541 0.000000 0.000000 0.000000 +2 1.349065 0.000000 0.000000 0.000000 +2 1.349129 0.000000 0.000000 0.000000 +2 1.360581 0.000000 0.000000 0.000000 +2 1.371713 0.500000 0.000000 0.500000 +2 1.401301 0.000000 0.000000 0.000000 +2 1.410537 0.000000 0.000000 0.000000 +2 1.415647 0.000000 0.000000 0.000000 +2 1.422530 0.000000 0.000000 0.000000 +2 1.433527 0.000000 0.000000 0.000000 +2 1.437978 0.000000 0.000000 0.000000 +2 1.457185 0.000000 0.000000 0.000000 +2 1.462169 0.500000 0.000000 0.500000 +2 1.465766 0.000000 0.000000 0.000000 +3 0.548149 0.000000 0.000000 0.000000 +3 0.571487 0.000000 0.000000 0.000000 +3 0.592544 0.000000 0.000000 0.000000 +3 0.592544 0.000000 0.000000 0.000000 +3 0.875964 0.000000 0.000000 0.000000 +4 0.592544 0.000000 0.000000 0.000000 +Objective_function= 2.750000 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/bestsqs.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/bestsqs.out new file mode 100644 index 0000000..045bfd6 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/bestsqs.out @@ -0,0 +1,66 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 -0.000000 1.000000 +1.000000 -0.000000 1.000000 +0.000000 1.000000 -1.000000 +0.000000 1.000000 -0.500000 aj_B +0.000000 1.000000 0.500000 aj_A +-0.500000 0.500000 1.000000 aj_A +0.500000 0.500000 1.000000 aj_B +0.235000 0.561000 0.000000 aj_A +0.235000 0.561000 1.000000 aj_B +-0.439000 0.235000 1.000000 aj_A +0.561000 0.235000 1.000000 aj_B +0.439000 0.765000 0.000000 aj_B +-0.561000 0.765000 0.000000 aj_A +-0.235000 0.439000 1.000000 aj_A +-0.235000 0.439000 -0.000000 aj_B +-0.265000 0.939000 -0.500000 aj_A +-0.265000 0.939000 0.500000 aj_B +0.061000 0.265000 0.500000 aj_B +0.061000 0.265000 1.500000 aj_A +-0.061000 0.735000 -0.500000 aj_A +-0.061000 0.735000 0.500000 aj_B +0.265000 0.061000 0.500000 aj_A +0.265000 0.061000 1.500000 aj_B +-0.897000 0.103000 1.000000 g_B +0.103000 0.103000 1.000000 g_B +-0.103000 0.897000 1.000000 g_B +-0.103000 0.897000 0.000000 g_A +-0.397000 0.397000 0.500000 g_A +0.603000 0.397000 0.500000 g_B +-0.603000 0.603000 0.500000 g_A +0.397000 0.603000 0.500000 g_A +0.318000 0.318000 0.730000 ii_A +-0.682000 0.318000 0.730000 ii_A +-0.318000 0.682000 -0.270000 ii_A +-0.318000 0.682000 0.730000 ii_A +0.318000 0.318000 0.270000 ii_A +0.318000 0.318000 1.270000 ii_A +0.682000 0.682000 0.270000 ii_A +-0.318000 0.682000 0.270000 ii_A +-0.182000 0.182000 1.230000 ii_A +-0.182000 0.182000 0.230000 ii_A +0.182000 0.818000 0.230000 ii_A +-0.818000 0.818000 0.230000 ii_A +-0.182000 0.182000 0.770000 ii_A +0.818000 0.182000 0.770000 ii_A +0.182000 0.818000 -0.230000 ii_A +0.182000 0.818000 0.770000 ii_A +0.038000 0.367000 0.000000 ii_A +0.038000 0.367000 1.000000 ii_A +-0.633000 0.038000 1.000000 ii_A +0.367000 0.038000 1.000000 ii_A +0.633000 0.962000 -0.000000 ii_A +-0.367000 0.962000 0.000000 ii_A +-0.038000 0.633000 1.000000 ii_A +-0.038000 0.633000 0.000000 ii_A +-0.462000 0.133000 0.500000 ii_A +0.538000 0.133000 0.500000 ii_A +-0.133000 0.462000 0.500000 ii_A +0.867000 0.462000 0.500000 ii_A +-0.867000 0.538000 0.500000 ii_A +0.133000 0.538000 0.500000 ii_A +-0.538000 0.867000 0.500000 ii_A +0.462000 0.867000 0.500000 ii_A diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/clusters.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/clusters.out new file mode 100644 index 0000000..a34a3e6 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/clusters.out @@ -0,0 +1,283 @@ +8 +0.51667 +2 +0.26500 0.06100 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 + +4 +0.54815 +2 +0.76500 0.43900 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 + +2 +0.55352 +2 +0.39700 0.60300 0.50000 0 0 +0.60300 0.39700 0.50000 0 0 + +8 +0.57149 +2 +0.50000 0.50000 1.00000 0 0 +0.60300 0.39700 1.50000 0 0 + +16 +0.59254 +2 +0.39700 0.60300 0.50000 0 0 +0.23500 0.56100 0.00000 0 0 + +16 +0.82194 +2 +0.43900 0.76500 1.00000 0 0 +0.73500 0.93900 1.50000 0 0 + +4 +0.87596 +2 +0.43900 0.76500 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 + +8 +0.90552 +2 +0.56100 0.23500 1.00000 0 0 +0.89700 -0.10300 1.00000 0 0 + +8 +0.90562 +2 +0.26500 0.06100 0.50000 0 0 +0.39700 -0.39700 0.50000 0 0 + +16 +0.91432 +2 +0.89700 0.89700 1.00000 0 0 +1.06100 1.26500 1.50000 0 0 + +4 +0.92259 +2 +0.26500 0.06100 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +4 +1.00000 +2 +0.39700 0.60300 0.50000 0 0 +0.39700 0.60300 -0.50000 0 0 + +8 +1.00000 +2 +0.93900 0.73500 0.50000 0 0 +0.93900 0.73500 -0.50000 0 0 + +2 +1.00000 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 0.50000 0.00000 0 0 + +4 +1.03333 +2 +0.43900 0.76500 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 + +8 +1.05990 +2 +0.10300 0.10300 1.00000 0 0 +0.23500 -0.43900 1.00000 0 0 + +4 +1.06674 +2 +0.60300 0.39700 0.50000 0 0 +1.00000 -0.00000 0.50000 0 0 + +16 +1.07009 +2 +1.00000 1.00000 0.50000 0 0 +1.23500 0.56100 0.00000 0 0 + +16 +1.07506 +2 +0.26500 0.06100 0.50000 0 0 +0.23500 -0.43900 0.00000 0 0 + +16 +1.12559 +2 +0.26500 0.06100 0.50000 0 0 +0.00000 0.00000 -0.50000 0 0 + +8 +1.14038 +2 +0.93900 0.73500 0.50000 0 0 +0.73500 0.93900 -0.50000 0 0 + +4 +1.14297 +2 +0.10300 0.10300 1.00000 0 0 +-0.10300 -0.10300 0.00000 0 0 + +16 +1.21018 +2 +0.60300 0.39700 0.50000 0 0 +0.89700 -0.10300 0.00000 0 0 + +16 +1.25917 +2 +0.26500 0.06100 0.50000 0 0 +0.50000 -0.50000 0.00000 0 0 + +16 +1.29163 +2 +0.93900 0.73500 0.50000 0 0 +0.56100 0.23500 0.00000 0 0 + +8 +1.32940 +2 +0.43900 0.76500 1.00000 0 0 +0.76500 0.43900 0.00000 0 0 + +16 +1.33754 +2 +0.60300 0.39700 0.50000 0 0 +0.43900 -0.23500 0.00000 0 0 + +16 +1.34906 +2 +0.56100 0.23500 1.00000 0 0 +0.89700 -0.10300 0.00000 0 0 + +16 +1.34913 +2 +0.89700 0.89700 1.00000 0 0 +0.43900 0.76500 2.00000 0 0 + +8 +1.36058 +2 +0.26500 0.06100 0.50000 0 0 +0.73500 -0.06100 -0.50000 0 0 + +8 +1.37171 +2 +1.00000 1.00000 0.50000 0 0 +1.60300 1.39700 0.50000 0 0 + +8 +1.40130 +2 +0.73500 0.93900 0.50000 0 0 +0.00000 1.00000 0.50000 0 0 + +8 +1.41054 +2 +0.60300 0.39700 0.50000 0 0 +0.93900 -0.26500 0.50000 0 0 + +8 +1.41565 +2 +0.10300 0.10300 1.00000 0 0 +-0.23500 -0.56100 1.00000 0 0 + +8 +1.42253 +2 +0.06100 0.26500 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +8 +1.43353 +2 +1.00000 1.00000 0.50000 0 0 +1.50000 1.50000 0.00000 0 0 + +8 +1.43798 +2 +0.76500 0.43900 1.00000 0 0 +0.23500 0.56100 2.00000 0 0 + +16 +1.45719 +2 +0.10300 0.10300 1.00000 0 0 +0.23500 -0.43900 0.00000 0 0 + +8 +1.46217 +2 +0.89700 0.89700 1.00000 0 0 +0.50000 0.50000 2.00000 0 0 + +16 +1.46577 +2 +0.06100 0.26500 0.50000 0 0 +0.23500 -0.43900 0.00000 0 0 + +4 +0.54815 +3 +0.76500 0.43900 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 + +4 +0.57149 +3 +0.10300 0.10300 1.00000 0 0 +-0.10300 -0.10300 1.00000 0 0 +-0.00000 -0.00000 1.50000 0 0 + +16 +0.59254 +3 +0.56100 0.23500 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.60300 0.39700 1.50000 0 0 + +8 +0.59254 +3 +0.56100 0.23500 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 +0.60300 0.39700 1.50000 0 0 + +4 +0.87596 +3 +0.43900 0.76500 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 + +8 +0.59254 +4 +0.56100 0.23500 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 +0.60300 0.39700 1.50000 0 0 + diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/go b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/go new file mode 100644 index 0000000..7c2d6dc --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/go @@ -0,0 +1 @@ +corrdump -nop -noe -2=1.5 -3=0.9 -4=0.9 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/job.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/job.in new file mode 100755 index 0000000..356c521 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=4:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=4 +#SBATCH -J mcsqs + +for id in [ 0 1 2 3 ] +do + mcsqs -n=60 -ip=$id & +done +wait diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/rndstr.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/rndstr.in new file mode 100644 index 0000000..b010f24 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/rndstr.in @@ -0,0 +1,38 @@ +1.9 1.9 1.0 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.000 0.000 0.500 aj_A=0.5,aj_B=0.5 +0.500 0.500 0.000 aj_A=0.5,aj_B=0.5 + +0.561 0.235 0.000 aj_A=0.5,aj_B=0.5 +0.235 0.561 0.000 aj_A=0.5,aj_B=0.5 +-0.235 -0.561 0.000 aj_A=0.5,aj_B=0.5 +-0.561 -0.235 0.000 aj_A=0.5,aj_B=0.5 +1.061 0.265 -0.500 aj_A=0.5,aj_B=0.5 +0.265 1.061 -0.500 aj_A=0.5,aj_B=0.5 +0.735 -0.061 -0.500 aj_A=0.5,aj_B=0.5 +-0.061 0.735 -0.500 aj_A=0.5,aj_B=0.5 + +0.103 0.103 0.000 g_A=0.5,g_B=0.5 +-0.103 -0.103 0.000 g_A=0.5,g_B=0.5 +0.603 0.397 -0.500 g_A=0.5,g_B=0.5 +0.397 0.603 -0.500 g_A=0.5,g_B=0.5 + +0.318 0.318 0.730 ii_A=1 +-0.318 -0.318 0.730 ii_A=1 +0.318 0.318 0.270 ii_A=1 +-0.318 -0.318 0.270 ii_A=1 +0.818 0.182 0.230 ii_A=1 +0.182 0.818 0.230 ii_A=1 +0.818 0.182 -0.230 ii_A=1 +0.182 0.818 -0.230 ii_A=1 +0.367 0.038 0.000 ii_A=1 +0.038 0.367 0.000 ii_A=1 +-0.038 -0.367 0.000 ii_A=1 +-0.367 -0.038 0.000 ii_A=1 +0.867 0.462 -0.500 ii_A=1 +0.462 0.867 -0.500 ii_A=1 +0.538 0.133 -0.500 ii_A=1 +0.133 0.538 -0.500 ii_A=1 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/rndstrgrp.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/rndstrgrp.out new file mode 100644 index 0000000..0d08c63 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=0.5,0.5_ii=1/rndstrgrp.out @@ -0,0 +1,41 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.500000 aj_A=0.500000,aj_B=0.500000 +0.500000 0.500000 0.000000 aj_A=0.500000,aj_B=0.500000 + +0.235000 0.561000 0.000000 aj_A=0.500000,aj_B=0.500000 +0.561000 0.235000 0.000000 aj_A=0.500000,aj_B=0.500000 +-0.561000 -0.235000 0.000000 aj_A=0.500000,aj_B=0.500000 +-0.235000 -0.561000 0.000000 aj_A=0.500000,aj_B=0.500000 +0.735000 -0.061000 -0.500000 aj_A=0.500000,aj_B=0.500000 +1.061000 0.265000 -0.500000 aj_A=0.500000,aj_B=0.500000 +-0.061000 0.735000 -0.500000 aj_A=0.500000,aj_B=0.500000 +0.265000 1.061000 -0.500000 aj_A=0.500000,aj_B=0.500000 + +0.103000 0.103000 0.000000 g_A=0.500000,g_B=0.500000 +-0.103000 -0.103000 0.000000 g_A=0.500000,g_B=0.500000 +0.603000 0.397000 -0.500000 g_A=0.500000,g_B=0.500000 +0.397000 0.603000 -0.500000 g_A=0.500000,g_B=0.500000 + +0.318000 0.318000 0.730000 ii_A=1.000000 +-0.318000 -0.318000 0.730000 ii_A=1.000000 +0.318000 0.318000 0.270000 ii_A=1.000000 +-0.318000 -0.318000 0.270000 ii_A=1.000000 +0.818000 0.182000 0.230000 ii_A=1.000000 +0.182000 0.818000 0.230000 ii_A=1.000000 +0.818000 0.182000 -0.230000 ii_A=1.000000 +0.182000 0.818000 -0.230000 ii_A=1.000000 + +0.038000 0.367000 0.000000 ii_A=1.000000 +0.367000 0.038000 0.000000 ii_A=1.000000 +-0.367000 -0.038000 0.000000 ii_A=1.000000 +-0.038000 -0.367000 0.000000 ii_A=1.000000 +0.538000 0.133000 -0.500000 ii_A=1.000000 +0.867000 0.462000 -0.500000 ii_A=1.000000 +0.133000 0.538000 -0.500000 ii_A=1.000000 +0.462000 0.867000 -0.500000 ii_A=1.000000 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/bestcorr.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..c7e3889 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/bestcorr.out @@ -0,0 +1,197 @@ +2 0.460000 -1.000000 0.000000 -1.000000 +2 0.516667 0.000000 0.000000 0.000000 +2 0.525325 0.000000 0.000000 0.000000 +2 0.525624 0.000000 0.000000 0.000000 +2 0.536436 0.000000 0.000000 0.000000 +2 0.538022 0.000000 0.000000 0.000000 +2 0.540000 -1.000000 0.000000 -1.000000 +2 0.548149 0.000000 0.000000 0.000000 +2 0.549070 0.000000 0.000000 0.000000 +2 0.557617 0.000000 0.000000 0.000000 +2 0.558619 0.000000 0.000000 0.000000 +2 0.592601 0.000000 0.000000 0.000000 +2 0.603814 0.000000 0.000000 0.000000 +2 0.623009 -0.250000 0.000000 -0.250000 +2 0.821943 0.000000 0.000000 0.000000 +2 0.861069 0.000000 0.000000 0.000000 +2 0.875964 0.000000 0.000000 0.000000 +2 0.878030 0.000000 0.000000 0.000000 +2 0.878667 0.000000 0.000000 0.000000 +2 0.879799 0.000000 0.000000 0.000000 +2 0.879922 0.000000 0.000000 0.000000 +2 0.884025 -1.000000 0.000000 -1.000000 +2 0.884882 0.000000 0.000000 0.000000 +2 0.908070 0.000000 0.000000 0.000000 +2 0.913450 0.000000 0.000000 0.000000 +2 0.917321 0.000000 0.000000 0.000000 +2 0.920361 0.000000 0.000000 0.000000 +2 0.922594 0.000000 0.000000 0.000000 +2 0.928458 0.000000 0.000000 0.000000 +2 0.940362 0.000000 0.000000 0.000000 +2 0.942666 0.000000 0.000000 0.000000 +2 0.944021 0.000000 0.000000 0.000000 +2 0.978070 0.000000 0.000000 0.000000 +2 0.985328 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 1.000000 0.000000 1.000000 +2 1.000000 -1.000000 0.000000 -1.000000 +2 1.000000 -1.000000 0.000000 -1.000000 +2 1.024861 0.000000 0.000000 0.000000 +2 1.033335 0.000000 0.000000 0.000000 +2 1.052972 0.000000 0.000000 0.000000 +2 1.070086 0.000000 0.000000 0.000000 +2 1.073466 0.000000 0.000000 0.000000 +2 1.075058 0.000000 0.000000 0.000000 +2 1.080843 0.000000 0.000000 0.000000 +2 1.088237 0.000000 0.000000 0.000000 +2 1.095072 0.000000 0.000000 0.000000 +2 1.102640 0.000000 0.000000 0.000000 +2 1.104206 0.000000 0.000000 0.000000 +2 1.104206 0.000000 0.000000 0.000000 +2 1.108929 0.000000 0.000000 0.000000 +2 1.114776 0.000000 0.000000 0.000000 +2 1.117238 0.000000 0.000000 0.000000 +2 1.125587 0.000000 0.000000 0.000000 +2 1.129587 0.000000 0.000000 0.000000 +2 1.129726 0.000000 0.000000 0.000000 +2 1.134797 0.000000 0.000000 0.000000 +2 1.140380 0.000000 0.000000 0.000000 +2 1.143269 0.000000 0.000000 0.000000 +2 1.150224 0.000000 0.000000 0.000000 +2 1.161301 0.000000 0.000000 0.000000 +2 1.161968 0.250000 0.000000 0.250000 +2 1.184075 0.000000 0.000000 0.000000 +2 1.259168 0.000000 0.000000 0.000000 +2 1.291631 0.000000 0.000000 0.000000 +2 1.299894 0.000000 0.000000 0.000000 +2 1.304492 0.000000 0.000000 0.000000 +2 1.314269 0.000000 0.000000 0.000000 +2 1.318781 0.000000 0.000000 0.000000 +2 1.325072 0.000000 0.000000 0.000000 +2 1.327207 0.000000 0.000000 0.000000 +2 1.327616 0.000000 0.000000 0.000000 +2 1.329403 0.000000 0.000000 0.000000 +2 1.334728 0.000000 0.000000 0.000000 +2 1.341061 0.000000 0.000000 0.000000 +2 1.342196 0.250000 0.000000 0.250000 +2 1.345799 0.000000 0.000000 0.000000 +2 1.354397 0.000000 0.000000 0.000000 +2 1.360491 0.000000 0.000000 0.000000 +2 1.360581 0.000000 0.000000 0.000000 +2 1.360902 0.000000 0.000000 0.000000 +2 1.366422 0.000000 0.000000 0.000000 +2 1.367538 0.000000 0.000000 0.000000 +2 1.372691 0.000000 0.000000 0.000000 +2 1.374325 0.000000 0.000000 0.000000 +2 1.375089 0.000000 0.000000 0.000000 +2 1.380069 0.000000 0.000000 0.000000 +2 1.388058 0.000000 0.000000 0.000000 +2 1.388632 0.000000 0.000000 0.000000 +2 1.392315 0.000000 0.000000 0.000000 +2 1.397495 0.000000 0.000000 0.000000 +2 1.398793 0.000000 0.000000 0.000000 +2 1.401301 0.000000 0.000000 0.000000 +2 1.402056 0.000000 0.000000 0.000000 +2 1.419901 0.000000 0.000000 0.000000 +2 1.422530 0.000000 0.000000 0.000000 +2 1.431901 0.000000 0.000000 0.000000 +2 1.432086 0.000000 0.000000 0.000000 +2 1.433527 0.000000 0.000000 0.000000 +2 1.433854 0.000000 0.000000 0.000000 +2 1.437978 0.000000 0.000000 0.000000 +2 1.439723 0.000000 0.000000 0.000000 +2 1.448121 0.000000 0.000000 0.000000 +2 1.452154 0.000000 0.000000 0.000000 +2 1.460000 -1.000000 0.000000 -1.000000 +2 1.465766 0.000000 0.000000 0.000000 +2 1.466336 0.000000 0.000000 0.000000 +2 1.467082 0.000000 0.000000 0.000000 +2 1.471895 0.000000 0.000000 0.000000 +2 1.474695 0.000000 0.000000 0.000000 +2 1.477924 0.000000 0.000000 0.000000 +2 1.491415 0.000000 0.000000 0.000000 +2 1.493366 0.000000 0.000000 0.000000 +2 1.497670 0.000000 0.000000 0.000000 +3 0.536436 0.000000 0.000000 0.000000 +3 0.548149 0.000000 0.000000 0.000000 +3 0.548149 0.000000 0.000000 0.000000 +3 0.549070 0.000000 0.000000 0.000000 +3 0.557617 0.000000 0.000000 0.000000 +3 0.558619 0.000000 0.000000 0.000000 +3 0.558619 0.000000 0.000000 0.000000 +3 0.592601 0.000000 0.000000 0.000000 +3 0.592601 0.000000 0.000000 0.000000 +3 0.592601 0.250000 0.000000 0.250000 +3 0.603814 0.000000 0.000000 0.000000 +3 0.603814 0.000000 0.000000 0.000000 +3 0.603814 0.000000 0.000000 0.000000 +3 0.623009 0.000000 0.000000 0.000000 +3 0.623009 0.000000 0.000000 0.000000 +3 0.623009 -0.250000 0.000000 -0.250000 +3 0.623009 0.000000 0.000000 0.000000 +3 0.821943 0.000000 0.000000 0.000000 +3 0.821943 0.000000 0.000000 0.000000 +3 0.821943 0.000000 0.000000 0.000000 +3 0.861069 0.000000 0.000000 0.000000 +3 0.861069 -0.250000 0.000000 -0.250000 +3 0.875964 0.000000 0.000000 0.000000 +3 0.875964 0.000000 0.000000 0.000000 +3 0.878030 0.000000 0.000000 0.000000 +3 0.878030 0.000000 0.000000 0.000000 +3 0.878030 0.000000 0.000000 0.000000 +3 0.878030 -0.250000 0.000000 -0.250000 +3 0.878030 0.000000 0.000000 0.000000 +3 0.878667 0.000000 0.000000 0.000000 +3 0.878667 0.250000 0.000000 0.250000 +3 0.879799 0.000000 0.000000 0.000000 +3 0.879799 0.000000 0.000000 0.000000 +3 0.879799 0.000000 0.000000 0.000000 +3 0.879922 0.000000 0.000000 0.000000 +3 0.879922 0.000000 0.000000 0.000000 +3 0.879922 0.000000 0.000000 0.000000 +3 0.879922 0.000000 0.000000 0.000000 +3 0.879922 0.000000 0.000000 0.000000 +3 0.884025 0.000000 0.000000 0.000000 +3 0.884025 0.000000 0.000000 0.000000 +3 0.884025 0.000000 0.000000 0.000000 +3 0.884882 0.000000 0.000000 0.000000 +3 0.884882 0.000000 0.000000 0.000000 +3 0.884882 0.000000 0.000000 0.000000 +4 0.549070 0.000000 0.000000 0.000000 +4 0.558619 0.000000 0.000000 0.000000 +4 0.592601 0.000000 0.000000 0.000000 +4 0.603814 0.000000 0.000000 0.000000 +4 0.623009 0.000000 0.000000 0.000000 +4 0.623009 0.000000 0.000000 0.000000 +4 0.623009 0.000000 0.000000 0.000000 +4 0.623009 0.250000 0.000000 0.250000 +4 0.821943 -0.250000 0.000000 -0.250000 +4 0.821943 0.000000 0.000000 0.000000 +4 0.821943 0.250000 0.000000 0.250000 +4 0.861069 0.000000 0.000000 0.000000 +4 0.875964 0.000000 0.000000 0.000000 +4 0.878030 0.000000 0.000000 0.000000 +4 0.878030 0.000000 0.000000 0.000000 +4 0.878030 0.000000 0.000000 0.000000 +4 0.878030 0.000000 0.000000 0.000000 +4 0.878030 0.000000 0.000000 0.000000 +4 0.878030 0.000000 0.000000 0.000000 +4 0.878667 0.000000 0.000000 0.000000 +4 0.879799 0.000000 0.000000 0.000000 +4 0.879799 0.000000 0.000000 0.000000 +4 0.879922 0.000000 0.000000 0.000000 +4 0.879922 0.000000 0.000000 0.000000 +4 0.879922 -0.250000 0.000000 -0.250000 +4 0.879922 0.000000 0.000000 0.000000 +4 0.879922 0.250000 0.000000 0.250000 +4 0.879922 0.000000 0.000000 0.000000 +4 0.879922 0.250000 0.000000 0.250000 +4 0.879922 0.000000 0.000000 0.000000 +4 0.884025 0.000000 0.000000 0.000000 +4 0.884025 0.000000 0.000000 0.000000 +4 0.884025 0.000000 0.000000 0.000000 +4 0.884882 0.000000 0.000000 0.000000 +4 0.884882 0.000000 0.000000 0.000000 +4 0.884882 0.000000 0.000000 0.000000 +4 0.884882 0.000000 0.000000 0.000000 +Objective_function= 10.040000 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/bestsqs.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..2908a9a --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/bestsqs.out @@ -0,0 +1,66 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 -0.000000 1.000000 +1.000000 -0.000000 1.000000 +0.000000 1.000000 -1.000000 +0.000000 1.000000 -0.500000 aj_A +0.000000 1.000000 0.500000 aj_B +-0.500000 0.500000 1.000000 aj_B +0.500000 0.500000 1.000000 aj_A +0.235000 0.561000 0.000000 aj_B +0.235000 0.561000 1.000000 aj_A +-0.439000 0.235000 1.000000 aj_A +0.561000 0.235000 1.000000 aj_B +0.439000 0.765000 -0.000000 aj_A +-0.561000 0.765000 0.000000 aj_B +-0.235000 0.439000 1.000000 aj_A +-0.235000 0.439000 -0.000000 aj_B +-0.265000 0.939000 -0.500000 aj_B +-0.265000 0.939000 0.500000 aj_A +0.061000 0.265000 0.500000 aj_A +0.061000 0.265000 1.500000 aj_B +-0.061000 0.735000 -0.500000 aj_A +-0.061000 0.735000 0.500000 aj_B +0.265000 0.061000 0.500000 aj_A +0.265000 0.061000 1.500000 aj_B +0.318000 0.318000 0.730000 ii_A +-0.682000 0.318000 0.730000 ii_A +0.318000 0.318000 1.270000 ii_B +0.318000 0.318000 0.270000 ii_B +-0.318000 0.682000 -0.270000 ii_B +-0.318000 0.682000 0.730000 ii_B +-0.318000 0.682000 0.270000 ii_A +0.682000 0.682000 0.270000 ii_A +-0.182000 0.182000 1.230000 ii_A +-0.182000 0.182000 0.230000 ii_A +0.818000 0.182000 0.770000 ii_B +-0.182000 0.182000 0.770000 ii_B +0.182000 0.818000 0.230000 ii_A +-0.818000 0.818000 0.230000 ii_A +0.182000 0.818000 0.770000 ii_B +0.182000 0.818000 -0.230000 ii_B +0.038000 0.367000 0.000000 ii_A +0.038000 0.367000 1.000000 ii_B +-0.633000 0.038000 1.000000 ii_B +0.367000 0.038000 1.000000 ii_A +0.633000 0.962000 0.000000 ii_A +-0.367000 0.962000 0.000000 ii_A +-0.038000 0.633000 1.000000 ii_B +-0.038000 0.633000 0.000000 ii_B +-0.462000 0.133000 0.500000 ii_B +0.538000 0.133000 0.500000 ii_A +-0.133000 0.462000 0.500000 ii_A +0.867000 0.462000 0.500000 ii_B +-0.867000 0.538000 0.500000 ii_A +0.133000 0.538000 0.500000 ii_A +-0.538000 0.867000 0.500000 ii_B +0.462000 0.867000 0.500000 ii_B +-0.897000 0.103000 1.000000 g_A +0.103000 0.103000 1.000000 g_A +-0.103000 0.897000 1.000000 g_A +-0.103000 0.897000 0.000000 g_A +-0.397000 0.397000 0.500000 g_A +0.603000 0.397000 0.500000 g_A +-0.603000 0.603000 0.500000 g_A +0.397000 0.603000 0.500000 g_A diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/clusters.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/clusters.out new file mode 100644 index 0000000..6e42cc3 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/clusters.out @@ -0,0 +1,1295 @@ +4 +0.46000 +2 +0.31800 0.31800 0.27000 0 0 +0.31800 0.31800 0.73000 0 0 + +8 +0.51667 +2 +1.00000 1.00000 0.50000 0 0 +1.06100 1.26500 0.50000 0 0 + +8 +0.52533 +2 +0.53800 0.13300 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +4 +0.52562 +2 +0.53800 0.13300 0.50000 0 0 +0.46200 -0.13300 0.50000 0 0 + +8 +0.53644 +2 +0.46200 0.86700 0.50000 0 0 +0.73500 0.93900 0.50000 0 0 + +16 +0.53802 +2 +0.73500 0.93900 0.50000 0 0 +0.63300 0.96200 0.00000 0 0 + +4 +0.54000 +2 +0.18200 0.81800 0.77000 0 0 +0.18200 0.81800 0.23000 0 0 + +4 +0.54815 +2 +0.76500 0.43900 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 + +16 +0.54907 +2 +0.18200 0.81800 0.23000 0 0 +0.23500 0.56100 0.00000 0 0 + +16 +0.55762 +2 +0.43900 0.76500 1.00000 0 0 +0.68200 0.68200 1.27000 0 0 + +8 +0.55862 +2 +1.00000 1.00000 0.50000 0 0 +1.18200 0.81800 0.77000 0 0 + +16 +0.59260 +2 +0.81800 0.18200 0.23000 0 0 +0.63300 -0.03800 0.00000 0 0 + +16 +0.60381 +2 +0.68200 0.68200 0.27000 0 0 +0.63300 0.96200 0.00000 0 0 + +16 +0.62301 +2 +0.86700 0.46200 0.50000 0 0 +0.96200 0.63300 0.00000 0 0 + +16 +0.82194 +2 +0.43900 0.76500 1.00000 0 0 +0.73500 0.93900 1.50000 0 0 + +16 +0.86107 +2 +1.00000 1.00000 0.50000 0 0 +1.03800 1.36700 0.00000 0 0 + +4 +0.87596 +2 +0.43900 0.76500 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 + +16 +0.87803 +2 +0.68200 0.68200 0.73000 0 0 +0.43900 0.76500 0.00000 0 0 + +8 +0.87867 +2 +0.18200 0.81800 0.23000 0 0 +0.00000 1.00000 -0.50000 0 0 + +16 +0.87980 +2 +0.93900 0.73500 0.50000 0 0 +0.63300 0.96200 0.00000 0 0 + +16 +0.87992 +2 +0.36700 0.03800 1.00000 0 0 +0.73500 -0.06100 0.50000 0 0 + +4 +0.88402 +2 +0.03800 0.36700 1.00000 0 0 +0.36700 0.03800 1.00000 0 0 + +8 +0.88488 +2 +0.50000 0.50000 1.00000 0 0 +0.81800 0.18200 1.23000 0 0 + +16 +0.90807 +2 +0.18200 0.81800 0.23000 0 0 +0.13300 0.53800 -0.50000 0 0 + +8 +0.91345 +2 +0.46200 0.86700 0.50000 0 0 +0.00000 1.00000 0.50000 0 0 + +16 +0.91732 +2 +0.18200 0.81800 0.77000 0 0 +0.23500 0.56100 0.00000 0 0 + +16 +0.92036 +2 +0.76500 0.43900 1.00000 0 0 +0.31800 0.31800 1.27000 0 0 + +4 +0.92259 +2 +0.26500 0.06100 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +0.92846 +2 +0.03800 0.36700 1.00000 0 0 +0.18200 0.81800 1.23000 0 0 + +8 +0.94036 +2 +0.36700 0.03800 1.00000 0 0 +0.23500 -0.43900 1.00000 0 0 + +16 +0.94267 +2 +0.81800 0.18200 0.77000 0 0 +0.46200 -0.13300 0.50000 0 0 + +16 +0.94402 +2 +0.81800 0.18200 0.77000 0 0 +0.63300 -0.03800 0.00000 0 0 + +4 +0.97807 +2 +0.68200 0.68200 0.27000 0 0 +0.31800 0.31800 0.27000 0 0 + +16 +0.98533 +2 +0.18200 0.81800 0.77000 0 0 +0.31800 0.31800 0.73000 0 0 + +8 +1.00000 +2 +0.13300 0.53800 0.50000 0 0 +0.13300 0.53800 -0.50000 0 0 + +8 +1.00000 +2 +0.18200 0.81800 0.77000 0 0 +0.18200 0.81800 -0.23000 0 0 + +8 +1.00000 +2 +0.93900 0.73500 0.50000 0 0 +0.93900 0.73500 -0.50000 0 0 + +2 +1.00000 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 0.50000 0.00000 0 0 + +8 +1.02486 +2 +0.63300 0.96200 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 + +4 +1.03333 +2 +0.43900 0.76500 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 + +8 +1.05297 +2 +0.13300 0.53800 0.50000 0 0 +-0.00000 -0.00000 0.50000 0 0 + +16 +1.07009 +2 +1.00000 1.00000 0.50000 0 0 +1.23500 0.56100 0.00000 0 0 + +8 +1.07347 +2 +0.53800 0.13300 0.50000 0 0 +0.93900 -0.26500 0.50000 0 0 + +16 +1.07506 +2 +0.26500 0.06100 0.50000 0 0 +0.23500 -0.43900 0.00000 0 0 + +4 +1.08084 +2 +0.68200 0.68200 0.27000 0 0 +0.31800 0.31800 0.73000 0 0 + +4 +1.08824 +2 +0.13300 0.53800 0.50000 0 0 +0.53800 0.13300 0.50000 0 0 + +16 +1.09507 +2 +0.31800 0.31800 0.27000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +1.10264 +2 +0.81800 0.18200 0.23000 0 0 +0.96200 -0.36700 0.00000 0 0 + +16 +1.10421 +2 +0.18200 0.81800 0.77000 0 0 +0.31800 0.31800 1.27000 0 0 + +16 +1.10421 +2 +0.18200 0.81800 0.77000 0 0 +0.31800 0.31800 0.27000 0 0 + +16 +1.10893 +2 +0.68200 0.68200 0.27000 0 0 +1.23500 0.56100 0.00000 0 0 + +16 +1.11478 +2 +0.06100 0.26500 0.50000 0 0 +-0.36700 -0.03800 0.00000 0 0 + +4 +1.11724 +2 +0.68200 0.68200 0.73000 0 0 +0.31800 0.31800 1.27000 0 0 + +16 +1.12559 +2 +0.26500 0.06100 0.50000 0 0 +0.00000 0.00000 -0.50000 0 0 + +16 +1.12959 +2 +0.53800 0.13300 0.50000 0 0 +0.73500 -0.06100 -0.50000 0 0 + +8 +1.12973 +2 +0.53800 0.13300 0.50000 0 0 +0.46200 -0.13300 -0.50000 0 0 + +16 +1.13480 +2 +0.46200 0.86700 0.50000 0 0 +0.73500 0.93900 -0.50000 0 0 + +8 +1.14038 +2 +0.93900 0.73500 0.50000 0 0 +0.73500 0.93900 -0.50000 0 0 + +16 +1.14327 +2 +0.68200 0.68200 0.73000 0 0 +0.23500 0.56100 0.00000 0 0 + +8 +1.15022 +2 +0.81800 0.18200 0.77000 0 0 +0.50000 0.50000 0.00000 0 0 + +16 +1.16130 +2 +0.81800 0.18200 0.23000 0 0 +0.46200 -0.13300 -0.50000 0 0 + +16 +1.16197 +2 +0.13300 0.53800 0.50000 0 0 +0.36700 0.03800 0.00000 0 0 + +16 +1.18408 +2 +0.53800 0.13300 0.50000 0 0 +0.68200 -0.31800 -0.27000 0 0 + +16 +1.25917 +2 +0.26500 0.06100 0.50000 0 0 +0.50000 -0.50000 0.00000 0 0 + +16 +1.29163 +2 +0.93900 0.73500 0.50000 0 0 +0.56100 0.23500 0.00000 0 0 + +16 +1.29989 +2 +0.68200 0.68200 0.73000 0 0 +1.23500 0.56100 0.00000 0 0 + +16 +1.30449 +2 +0.46200 0.86700 0.50000 0 0 +0.50000 1.50000 0.00000 0 0 + +16 +1.31427 +2 +0.96200 0.63300 1.00000 0 0 +1.06100 1.26500 1.50000 0 0 + +16 +1.31878 +2 +0.81800 0.18200 0.77000 0 0 +0.43900 -0.23500 0.00000 0 0 + +16 +1.32507 +2 +0.81800 0.18200 0.77000 0 0 +0.96200 -0.36700 0.00000 0 0 + +16 +1.32721 +2 +0.18200 0.81800 0.23000 0 0 +0.23500 0.56100 -1.00000 0 0 + +16 +1.32762 +2 +0.53800 0.13300 0.50000 0 0 +0.23500 -0.43900 0.00000 0 0 + +8 +1.32940 +2 +0.43900 0.76500 1.00000 0 0 +0.76500 0.43900 0.00000 0 0 + +8 +1.33473 +2 +0.53800 0.13300 0.50000 0 0 +0.86700 0.46200 -0.50000 0 0 + +16 +1.34106 +2 +0.68200 0.68200 0.27000 0 0 +1.06100 1.26500 0.50000 0 0 + +16 +1.34220 +2 +0.86700 0.46200 0.50000 0 0 +1.36700 0.03800 0.00000 0 0 + +16 +1.34580 +2 +0.81800 0.18200 0.23000 0 0 +0.63300 -0.03800 -1.00000 0 0 + +16 +1.35440 +2 +0.96200 0.63300 1.00000 0 0 +0.50000 0.50000 2.00000 0 0 + +16 +1.36049 +2 +0.81800 0.18200 0.77000 0 0 +0.73500 -0.06100 -0.50000 0 0 + +8 +1.36058 +2 +0.26500 0.06100 0.50000 0 0 +0.73500 -0.06100 -0.50000 0 0 + +8 +1.36090 +2 +0.18200 0.81800 0.77000 0 0 +0.00000 1.00000 -0.50000 0 0 + +8 +1.36642 +2 +0.46200 0.86700 0.50000 0 0 +1.06100 1.26500 0.50000 0 0 + +8 +1.36754 +2 +0.86700 0.46200 0.50000 0 0 +0.46200 -0.13300 0.50000 0 0 + +16 +1.37269 +2 +0.36700 0.03800 1.00000 0 0 +0.23500 -0.43900 0.00000 0 0 + +8 +1.37433 +2 +0.03800 0.36700 1.00000 0 0 +0.43900 -0.23500 1.00000 0 0 + +16 +1.37509 +2 +0.81800 0.18200 0.23000 0 0 +0.68200 -0.31800 -0.73000 0 0 + +16 +1.38007 +2 +0.68200 0.68200 0.27000 0 0 +0.63300 0.96200 -1.00000 0 0 + +8 +1.38806 +2 +0.06100 0.26500 0.50000 0 0 +0.13300 -0.46200 0.50000 0 0 + +16 +1.38863 +2 +0.63300 0.96200 1.00000 0 0 +0.31800 0.31800 1.27000 0 0 + +8 +1.39232 +2 +0.81800 0.18200 0.77000 0 0 +0.18200 -0.18200 0.77000 0 0 + +16 +1.39749 +2 +0.81800 0.18200 0.23000 0 0 +0.86700 -0.53800 0.50000 0 0 + +8 +1.39879 +2 +0.31800 0.31800 0.27000 0 0 +0.68200 0.68200 -0.73000 0 0 + +8 +1.40130 +2 +0.73500 0.93900 0.50000 0 0 +0.00000 1.00000 0.50000 0 0 + +4 +1.40206 +2 +0.96200 0.63300 1.00000 0 0 +1.03800 1.36700 1.00000 0 0 + +8 +1.41990 +2 +0.13300 0.53800 0.50000 0 0 +0.46200 -0.13300 0.50000 0 0 + +8 +1.42253 +2 +0.06100 0.26500 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +1.43190 +2 +0.63300 0.96200 1.00000 0 0 +0.76500 0.43900 2.00000 0 0 + +16 +1.43209 +2 +0.31800 0.31800 0.27000 0 0 +0.18200 0.81800 -0.77000 0 0 + +8 +1.43353 +2 +1.00000 1.00000 0.50000 0 0 +1.50000 1.50000 0.00000 0 0 + +16 +1.43385 +2 +0.18200 0.81800 0.23000 0 0 +-0.56100 0.76500 0.00000 0 0 + +8 +1.43798 +2 +0.76500 0.43900 1.00000 0 0 +0.23500 0.56100 2.00000 0 0 + +16 +1.43972 +2 +0.31800 0.31800 0.27000 0 0 +0.93900 0.73500 0.50000 0 0 + +16 +1.44812 +2 +0.81800 0.18200 0.23000 0 0 +0.50000 -0.50000 0.00000 0 0 + +16 +1.45215 +2 +0.50000 0.50000 1.00000 0 0 +1.03800 0.36700 2.00000 0 0 + +4 +1.46000 +2 +0.18200 0.81800 0.23000 0 0 +0.18200 0.81800 -1.23000 0 0 + +16 +1.46577 +2 +0.06100 0.26500 0.50000 0 0 +0.23500 -0.43900 0.00000 0 0 + +8 +1.46634 +2 +0.31800 0.31800 0.27000 0 0 +0.68200 -0.31800 0.73000 0 0 + +16 +1.46708 +2 +0.53800 0.13300 0.50000 0 0 +0.93900 -0.26500 -0.50000 0 0 + +16 +1.47190 +2 +0.18200 0.81800 0.77000 0 0 +0.93900 0.73500 0.50000 0 0 + +16 +1.47470 +2 +0.53800 0.13300 0.50000 0 0 +0.76500 -0.56100 0.00000 0 0 + +8 +1.47792 +2 +0.13300 0.53800 0.50000 0 0 +0.53800 0.13300 -0.50000 0 0 + +16 +1.49142 +2 +0.13300 0.53800 0.50000 0 0 +0.81800 0.18200 0.77000 0 0 + +8 +1.49337 +2 +0.31800 0.31800 0.27000 0 0 +0.68200 -0.31800 -0.27000 0 0 + +8 +1.49767 +2 +0.31800 0.31800 0.73000 0 0 +0.00000 0.00000 -0.50000 0 0 + +8 +0.53644 +3 +0.46200 0.86700 0.50000 0 0 +0.53800 1.13300 0.50000 0 0 +0.73500 0.93900 0.50000 0 0 + +4 +0.54815 +3 +0.76500 0.43900 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 + +8 +0.54815 +3 +0.76500 0.43900 1.00000 0 0 +0.81800 0.18200 1.23000 0 0 +0.56100 0.23500 1.00000 0 0 + +8 +0.54907 +3 +0.18200 0.81800 0.23000 0 0 +0.18200 0.81800 -0.23000 0 0 +0.23500 0.56100 0.00000 0 0 + +8 +0.55762 +3 +0.68200 0.68200 0.73000 0 0 +0.68200 0.68200 1.27000 0 0 +0.43900 0.76500 1.00000 0 0 + +16 +0.55862 +3 +1.00000 1.00000 0.50000 0 0 +1.26500 1.06100 0.50000 0 0 +1.18200 0.81800 0.77000 0 0 + +4 +0.55862 +3 +0.31800 0.31800 0.27000 0 0 +0.31800 0.31800 -0.27000 0 0 +0.50000 0.50000 0.00000 0 0 + +8 +0.59260 +3 +0.81800 0.18200 0.23000 0 0 +0.81800 0.18200 -0.23000 0 0 +0.63300 -0.03800 0.00000 0 0 + +16 +0.59260 +3 +0.13300 0.53800 0.50000 0 0 +0.06100 0.26500 0.50000 0 0 +0.31800 0.31800 0.27000 0 0 + +16 +0.59260 +3 +0.13300 0.53800 0.50000 0 0 +0.23500 0.56100 0.00000 0 0 +0.31800 0.31800 0.27000 0 0 + +8 +0.60381 +3 +0.68200 0.68200 0.27000 0 0 +0.68200 0.68200 -0.27000 0 0 +0.63300 0.96200 0.00000 0 0 + +16 +0.60381 +3 +0.63300 0.96200 1.00000 0 0 +0.43900 0.76500 1.00000 0 0 +0.68200 0.68200 1.27000 0 0 + +16 +0.60381 +3 +0.63300 0.96200 1.00000 0 0 +0.73500 0.93900 1.50000 0 0 +0.68200 0.68200 1.27000 0 0 + +16 +0.62301 +3 +0.86700 0.46200 0.50000 0 0 +1.13300 0.53800 0.50000 0 0 +0.96200 0.63300 0.00000 0 0 + +16 +0.62301 +3 +0.86700 0.46200 0.50000 0 0 +0.93900 0.73500 0.50000 0 0 +0.96200 0.63300 0.00000 0 0 + +16 +0.62301 +3 +0.86700 0.46200 0.50000 0 0 +0.68200 0.68200 0.27000 0 0 +0.96200 0.63300 0.00000 0 0 + +16 +0.62301 +3 +0.63300 0.96200 1.00000 0 0 +0.43900 0.76500 1.00000 0 0 +0.46200 0.86700 1.50000 0 0 + +16 +0.82194 +3 +0.43900 0.76500 1.00000 0 0 +0.63300 0.96200 1.00000 0 0 +0.73500 0.93900 1.50000 0 0 + +16 +0.82194 +3 +0.73500 0.93900 0.50000 0 0 +0.46200 0.86700 0.50000 0 0 +0.43900 0.76500 1.00000 0 0 + +16 +0.82194 +3 +0.73500 0.93900 0.50000 0 0 +0.68200 0.68200 0.73000 0 0 +0.43900 0.76500 1.00000 0 0 + +16 +0.86107 +3 +1.00000 1.00000 0.50000 0 0 +1.06100 1.26500 0.50000 0 0 +1.03800 1.36700 0.00000 0 0 + +16 +0.86107 +3 +1.00000 1.00000 0.50000 0 0 +0.81800 1.18200 0.23000 0 0 +1.03800 1.36700 0.00000 0 0 + +4 +0.87596 +3 +0.43900 0.76500 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 + +8 +0.87596 +3 +0.43900 0.76500 1.00000 0 0 +0.68200 0.68200 1.27000 0 0 +0.76500 0.43900 1.00000 0 0 + +16 +0.87803 +3 +0.68200 0.68200 0.73000 0 0 +0.68200 0.68200 0.27000 0 0 +0.43900 0.76500 0.00000 0 0 + +16 +0.87803 +3 +0.68200 0.68200 0.73000 0 0 +0.73500 0.93900 0.50000 0 0 +0.43900 0.76500 0.00000 0 0 + +16 +0.87803 +3 +0.43900 0.76500 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.68200 0.68200 1.73000 0 0 + +16 +0.87803 +3 +0.43900 0.76500 1.00000 0 0 +0.46200 0.86700 1.50000 0 0 +0.68200 0.68200 1.73000 0 0 + +8 +0.87803 +3 +0.43900 0.76500 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 +0.68200 0.68200 1.73000 0 0 + +8 +0.87867 +3 +0.18200 0.81800 0.23000 0 0 +0.18200 0.81800 -0.23000 0 0 +0.00000 1.00000 -0.50000 0 0 + +16 +0.87867 +3 +0.18200 0.81800 0.23000 0 0 +-0.03800 0.63300 0.00000 0 0 +0.00000 1.00000 -0.50000 0 0 + +16 +0.87980 +3 +0.93900 0.73500 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +0.63300 0.96200 0.00000 0 0 + +16 +0.87980 +3 +0.93900 0.73500 0.50000 0 0 +0.68200 0.68200 0.27000 0 0 +0.63300 0.96200 0.00000 0 0 + +16 +0.87980 +3 +0.63300 0.96200 1.00000 0 0 +0.73500 0.93900 1.50000 0 0 +0.93900 0.73500 1.50000 0 0 + +16 +0.87992 +3 +0.36700 0.03800 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +0.87992 +3 +0.36700 0.03800 1.00000 0 0 +0.63300 -0.03800 1.00000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +0.87992 +3 +0.36700 0.03800 1.00000 0 0 +0.43900 -0.23500 1.00000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +0.87992 +3 +0.73500 0.93900 0.50000 0 0 +0.53800 1.13300 0.50000 0 0 +0.36700 1.03800 0.00000 0 0 + +16 +0.87992 +3 +0.73500 0.93900 0.50000 0 0 +0.46200 0.86700 0.50000 0 0 +0.36700 1.03800 0.00000 0 0 + +16 +0.88402 +3 +0.03800 0.36700 1.00000 0 0 +0.06100 0.26500 1.50000 0 0 +0.36700 0.03800 1.00000 0 0 + +8 +0.88402 +3 +0.03800 0.36700 1.00000 0 0 +0.31800 0.31800 1.27000 0 0 +0.36700 0.03800 1.00000 0 0 + +8 +0.88402 +3 +0.03800 0.36700 1.00000 0 0 +-0.00000 -0.00000 1.50000 0 0 +0.36700 0.03800 1.00000 0 0 + +16 +0.88488 +3 +0.50000 0.50000 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 +0.81800 0.18200 1.23000 0 0 + +4 +0.88488 +3 +0.81800 0.18200 0.77000 0 0 +0.81800 0.18200 1.23000 0 0 +0.50000 0.50000 1.00000 0 0 + +16 +0.88488 +3 +0.81800 0.18200 0.77000 0 0 +0.53800 0.13300 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +4 +0.54907 +4 +0.18200 0.81800 0.23000 0 0 +0.18200 0.81800 -0.23000 0 0 +0.43900 0.76500 0.00000 0 0 +0.23500 0.56100 0.00000 0 0 + +8 +0.55862 +4 +1.00000 1.00000 0.50000 0 0 +1.26500 1.06100 0.50000 0 0 +1.18200 0.81800 0.23000 0 0 +1.18200 0.81800 0.77000 0 0 + +8 +0.59260 +4 +0.81800 0.18200 0.23000 0 0 +0.81800 0.18200 -0.23000 0 0 +0.56100 0.23500 0.00000 0 0 +0.63300 -0.03800 0.00000 0 0 + +8 +0.60381 +4 +0.63300 0.96200 1.00000 0 0 +0.43900 0.76500 1.00000 0 0 +0.68200 0.68200 0.73000 0 0 +0.68200 0.68200 1.27000 0 0 + +16 +0.62301 +4 +0.86700 0.46200 0.50000 0 0 +1.13300 0.53800 0.50000 0 0 +0.93900 0.73500 0.50000 0 0 +0.96200 0.63300 0.00000 0 0 + +16 +0.62301 +4 +0.86700 0.46200 0.50000 0 0 +0.93900 0.73500 0.50000 0 0 +0.68200 0.68200 0.27000 0 0 +0.96200 0.63300 0.00000 0 0 + +4 +0.62301 +4 +0.86700 0.46200 0.50000 0 0 +1.13300 0.53800 0.50000 0 0 +1.03800 0.36700 0.00000 0 0 +0.96200 0.63300 0.00000 0 0 + +16 +0.62301 +4 +0.63300 0.96200 1.00000 0 0 +0.43900 0.76500 1.00000 0 0 +0.68200 0.68200 1.27000 0 0 +0.46200 0.86700 1.50000 0 0 + +16 +0.82194 +4 +0.43900 0.76500 1.00000 0 0 +0.63300 0.96200 1.00000 0 0 +0.46200 0.86700 1.50000 0 0 +0.73500 0.93900 1.50000 0 0 + +16 +0.82194 +4 +0.43900 0.76500 1.00000 0 0 +0.63300 0.96200 1.00000 0 0 +0.68200 0.68200 1.27000 0 0 +0.73500 0.93900 1.50000 0 0 + +16 +0.82194 +4 +0.73500 0.93900 0.50000 0 0 +0.46200 0.86700 0.50000 0 0 +0.68200 0.68200 0.73000 0 0 +0.43900 0.76500 1.00000 0 0 + +16 +0.86107 +4 +1.00000 1.00000 0.50000 0 0 +1.06100 1.26500 0.50000 0 0 +0.81800 1.18200 0.23000 0 0 +1.03800 1.36700 0.00000 0 0 + +8 +0.87596 +4 +0.43900 0.76500 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.68200 0.68200 1.27000 0 0 +0.76500 0.43900 1.00000 0 0 + +16 +0.87803 +4 +0.68200 0.68200 0.73000 0 0 +0.68200 0.68200 0.27000 0 0 +0.73500 0.93900 0.50000 0 0 +0.43900 0.76500 0.00000 0 0 + +16 +0.87803 +4 +0.68200 0.68200 0.73000 0 0 +0.68200 0.68200 0.27000 0 0 +0.46200 0.86700 0.50000 0 0 +0.43900 0.76500 0.00000 0 0 + +8 +0.87803 +4 +0.68200 0.68200 0.73000 0 0 +0.68200 0.68200 0.27000 0 0 +0.76500 0.43900 0.00000 0 0 +0.43900 0.76500 0.00000 0 0 + +16 +0.87803 +4 +0.68200 0.68200 0.73000 0 0 +0.68200 0.68200 0.27000 0 0 +0.50000 0.50000 0.00000 0 0 +0.43900 0.76500 0.00000 0 0 + +16 +0.87803 +4 +0.43900 0.76500 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.46200 0.86700 1.50000 0 0 +0.68200 0.68200 1.73000 0 0 + +8 +0.87803 +4 +0.43900 0.76500 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 +0.68200 0.68200 1.73000 0 0 + +16 +0.87867 +4 +0.18200 0.81800 0.23000 0 0 +0.18200 0.81800 -0.23000 0 0 +-0.03800 0.63300 0.00000 0 0 +0.00000 1.00000 -0.50000 0 0 + +16 +0.87980 +4 +0.93900 0.73500 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +0.73500 0.93900 0.50000 0 0 +0.63300 0.96200 0.00000 0 0 + +16 +0.87980 +4 +0.63300 0.96200 1.00000 0 0 +0.73500 0.93900 1.50000 0 0 +0.68200 0.68200 1.27000 0 0 +0.93900 0.73500 1.50000 0 0 + +16 +0.87992 +4 +0.36700 0.03800 1.00000 0 0 +0.63300 -0.03800 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +0.87992 +4 +0.36700 0.03800 1.00000 0 0 +0.63300 -0.03800 1.00000 0 0 +0.43900 -0.23500 1.00000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +0.87992 +4 +0.36700 0.03800 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 +0.53800 0.13300 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +0.87992 +4 +0.36700 0.03800 1.00000 0 0 +0.63300 -0.03800 1.00000 0 0 +0.53800 0.13300 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +0.87992 +4 +0.36700 0.03800 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 +0.46200 -0.13300 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +0.87992 +4 +0.36700 0.03800 1.00000 0 0 +0.63300 -0.03800 1.00000 0 0 +0.46200 -0.13300 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +0.87992 +4 +0.36700 0.03800 1.00000 0 0 +0.43900 -0.23500 1.00000 0 0 +0.46200 -0.13300 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +0.87992 +4 +0.73500 0.93900 0.50000 0 0 +0.53800 1.13300 0.50000 0 0 +0.46200 0.86700 0.50000 0 0 +0.36700 1.03800 0.00000 0 0 + +16 +0.88402 +4 +0.03800 0.36700 1.00000 0 0 +0.06100 0.26500 1.50000 0 0 +0.31800 0.31800 1.27000 0 0 +0.36700 0.03800 1.00000 0 0 + +8 +0.88402 +4 +0.03800 0.36700 1.00000 0 0 +0.31800 0.31800 1.27000 0 0 +-0.00000 -0.00000 1.50000 0 0 +0.36700 0.03800 1.00000 0 0 + +8 +0.88402 +4 +0.03800 0.36700 1.00000 0 0 +0.06100 0.26500 0.50000 0 0 +0.26500 0.06100 0.50000 0 0 +0.36700 0.03800 1.00000 0 0 + +8 +0.88488 +4 +0.50000 0.50000 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 +0.81800 0.18200 1.23000 0 0 + +16 +0.88488 +4 +0.50000 0.50000 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 +0.53800 0.13300 1.50000 0 0 +0.81800 0.18200 1.23000 0 0 + +16 +0.88488 +4 +0.50000 0.50000 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 +0.53800 0.13300 1.50000 0 0 +0.81800 0.18200 1.23000 0 0 + +8 +0.88488 +4 +0.81800 0.18200 0.77000 0 0 +0.81800 0.18200 1.23000 0 0 +0.56100 0.23500 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/go b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/go new file mode 100644 index 0000000..7c2d6dc --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/go @@ -0,0 +1 @@ +corrdump -nop -noe -2=1.5 -3=0.9 -4=0.9 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/job.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/job.in new file mode 100755 index 0000000..356c521 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=4:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=4 +#SBATCH -J mcsqs + +for id in [ 0 1 2 3 ] +do + mcsqs -n=60 -ip=$id & +done +wait diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/rndstr.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/rndstr.in new file mode 100644 index 0000000..ec12009 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/rndstr.in @@ -0,0 +1,38 @@ +1.9 1.9 1.0 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.000 0.000 0.500 aj_A=0.5,aj_B=0.5 +0.500 0.500 0.000 aj_A=0.5,aj_B=0.5 + +0.561 0.235 0.000 aj_A=0.5,aj_B=0.5 +0.235 0.561 0.000 aj_A=0.5,aj_B=0.5 +-0.235 -0.561 0.000 aj_A=0.5,aj_B=0.5 +-0.561 -0.235 0.000 aj_A=0.5,aj_B=0.5 +1.061 0.265 -0.500 aj_A=0.5,aj_B=0.5 +0.265 1.061 -0.500 aj_A=0.5,aj_B=0.5 +0.735 -0.061 -0.500 aj_A=0.5,aj_B=0.5 +-0.061 0.735 -0.500 aj_A=0.5,aj_B=0.5 + +0.103 0.103 0.000 g_A=1 +-0.103 -0.103 0.000 g_A=1 +0.603 0.397 -0.500 g_A=1 +0.397 0.603 -0.500 g_A=1 + +0.318 0.318 0.730 ii_A=0.5,ii_B=0.5 +-0.318 -0.318 0.730 ii_A=0.5,ii_B=0.5 +0.318 0.318 0.270 ii_A=0.5,ii_B=0.5 +-0.318 -0.318 0.270 ii_A=0.5,ii_B=0.5 +0.818 0.182 0.230 ii_A=0.5,ii_B=0.5 +0.182 0.818 0.230 ii_A=0.5,ii_B=0.5 +0.818 0.182 -0.230 ii_A=0.5,ii_B=0.5 +0.182 0.818 -0.230 ii_A=0.5,ii_B=0.5 +0.367 0.038 0.000 ii_A=0.5,ii_B=0.5 +0.038 0.367 0.000 ii_A=0.5,ii_B=0.5 +-0.038 -0.367 0.000 ii_A=0.5,ii_B=0.5 +-0.367 -0.038 0.000 ii_A=0.5,ii_B=0.5 +0.867 0.462 -0.500 ii_A=0.5,ii_B=0.5 +0.462 0.867 -0.500 ii_A=0.5,ii_B=0.5 +0.538 0.133 -0.500 ii_A=0.5,ii_B=0.5 +0.133 0.538 -0.500 ii_A=0.5,ii_B=0.5 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/rndstrgrp.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..626fd86 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=0.5,0.5_g=1_ii=0.5,0.5/rndstrgrp.out @@ -0,0 +1,41 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.500000 aj_A=0.500000,aj_B=0.500000 +0.500000 0.500000 0.000000 aj_A=0.500000,aj_B=0.500000 + +0.235000 0.561000 0.000000 aj_A=0.500000,aj_B=0.500000 +0.561000 0.235000 0.000000 aj_A=0.500000,aj_B=0.500000 +-0.561000 -0.235000 0.000000 aj_A=0.500000,aj_B=0.500000 +-0.235000 -0.561000 0.000000 aj_A=0.500000,aj_B=0.500000 +0.735000 -0.061000 -0.500000 aj_A=0.500000,aj_B=0.500000 +1.061000 0.265000 -0.500000 aj_A=0.500000,aj_B=0.500000 +-0.061000 0.735000 -0.500000 aj_A=0.500000,aj_B=0.500000 +0.265000 1.061000 -0.500000 aj_A=0.500000,aj_B=0.500000 + +0.318000 0.318000 0.730000 ii_A=0.500000,ii_B=0.500000 +0.318000 0.318000 -0.730000 ii_A=0.500000,ii_B=0.500000 +-0.318000 -0.318000 0.730000 ii_A=0.500000,ii_B=0.500000 +-0.318000 -0.318000 -0.730000 ii_A=0.500000,ii_B=0.500000 +0.818000 0.182000 0.230000 ii_A=0.500000,ii_B=0.500000 +0.818000 0.182000 -1.230000 ii_A=0.500000,ii_B=0.500000 +0.182000 0.818000 0.230000 ii_A=0.500000,ii_B=0.500000 +0.182000 0.818000 -1.230000 ii_A=0.500000,ii_B=0.500000 + +0.038000 0.367000 0.000000 ii_A=0.500000,ii_B=0.500000 +0.367000 0.038000 0.000000 ii_A=0.500000,ii_B=0.500000 +-0.367000 -0.038000 0.000000 ii_A=0.500000,ii_B=0.500000 +-0.038000 -0.367000 0.000000 ii_A=0.500000,ii_B=0.500000 +0.538000 0.133000 -0.500000 ii_A=0.500000,ii_B=0.500000 +0.867000 0.462000 -0.500000 ii_A=0.500000,ii_B=0.500000 +0.133000 0.538000 -0.500000 ii_A=0.500000,ii_B=0.500000 +0.462000 0.867000 -0.500000 ii_A=0.500000,ii_B=0.500000 + +0.103000 0.103000 0.000000 g_A=1.000000 +-0.103000 -0.103000 0.000000 g_A=1.000000 +0.603000 0.397000 -0.500000 g_A=1.000000 +0.397000 0.603000 -0.500000 g_A=1.000000 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/bestcorr.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..a20001a --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/bestcorr.out @@ -0,0 +1,35 @@ +2 0.460000 0.000000 0.000000 0.000000 +2 0.516580 0.000000 0.000000 0.000000 +2 0.525624 0.000000 0.000000 0.000000 +2 0.540000 0.000000 0.000000 0.000000 +2 0.553523 0.000000 0.000000 0.000000 +2 0.592601 0.000000 0.000000 0.000000 +2 0.603814 0.000000 0.000000 0.000000 +2 0.607167 0.000000 0.000000 0.000000 +2 0.623009 0.250000 0.000000 0.250000 +2 0.637687 0.000000 0.000000 0.000000 +2 0.884025 0.000000 0.000000 0.000000 +2 0.908070 0.000000 0.000000 0.000000 +2 0.928458 0.000000 0.000000 0.000000 +2 0.930937 0.000000 0.000000 0.000000 +2 0.932319 0.000000 0.000000 0.000000 +2 0.942666 0.000000 0.000000 0.000000 +2 0.944021 0.000000 0.000000 0.000000 +2 0.953233 0.000000 0.000000 0.000000 +2 0.957248 0.000000 0.000000 0.000000 +2 0.967652 0.000000 0.000000 0.000000 +2 0.978070 0.000000 0.000000 0.000000 +2 0.985328 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +3 0.592601 0.000000 0.000000 0.000000 +3 0.603814 0.000000 0.000000 0.000000 +3 0.607167 0.000000 0.000000 0.000000 +3 0.607167 0.000000 0.000000 0.000000 +3 0.607167 0.000000 0.000000 0.000000 +3 0.623009 0.000000 0.000000 0.000000 +3 0.623009 0.250000 0.000000 0.250000 +3 0.637687 0.000000 0.000000 0.000000 +3 0.637687 0.000000 0.000000 0.000000 +Objective_function= -0.123009 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/bestsqs.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..019e718 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/bestsqs.out @@ -0,0 +1,66 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +-0.000000 -1.000000 -1.000000 +0.000000 1.000000 -1.000000 +1.000000 0.000000 0.000000 +0.103000 0.103000 -1.000000 g_B +0.103000 -0.897000 -1.000000 g_A +0.897000 -0.103000 -1.000000 g_A +0.897000 0.897000 -1.000000 g_A +0.603000 0.397000 -1.500000 g_B +0.603000 0.397000 -0.500000 g_B +0.397000 -0.397000 -0.500000 g_A +0.397000 -0.397000 -1.500000 g_B +0.318000 -0.682000 -1.270000 ii_A +0.318000 0.318000 -1.270000 ii_A +0.682000 0.682000 -1.270000 ii_A +0.682000 -0.318000 -1.270000 ii_B +0.318000 0.318000 -0.730000 ii_A +0.318000 -0.682000 -0.730000 ii_B +0.682000 -0.318000 -0.730000 ii_B +0.682000 0.682000 -0.730000 ii_B +0.818000 0.182000 -0.770000 ii_A +0.818000 0.182000 -1.770000 ii_B +0.182000 -0.182000 -1.770000 ii_A +0.182000 -0.182000 -0.770000 ii_A +0.818000 0.182000 -1.230000 ii_B +0.818000 0.182000 -0.230000 ii_B +0.182000 -0.182000 -0.230000 ii_A +0.182000 -0.182000 -1.230000 ii_B +0.038000 0.367000 -1.000000 ii_A +0.038000 -0.633000 -1.000000 ii_A +0.367000 0.038000 -1.000000 ii_B +0.367000 -0.962000 -1.000000 ii_A +0.633000 -0.038000 -1.000000 ii_B +0.633000 0.962000 -1.000000 ii_B +0.962000 -0.367000 -1.000000 ii_A +0.962000 0.633000 -1.000000 ii_B +0.538000 0.133000 -1.500000 ii_B +0.538000 0.133000 -0.500000 ii_A +0.133000 -0.462000 -0.500000 ii_A +0.133000 -0.462000 -1.500000 ii_B +0.867000 0.462000 -1.500000 ii_A +0.867000 0.462000 -0.500000 ii_A +0.462000 -0.133000 -0.500000 ii_B +0.462000 -0.133000 -1.500000 ii_B +1.000000 0.000000 -0.500000 aj_A +1.000000 0.000000 -1.500000 aj_A +0.500000 0.500000 -1.000000 aj_A +0.500000 -0.500000 -1.000000 aj_A +0.235000 0.561000 -1.000000 aj_A +0.235000 -0.439000 -1.000000 aj_A +0.561000 0.235000 -1.000000 aj_A +0.561000 -0.765000 -1.000000 aj_A +0.439000 -0.235000 -1.000000 aj_A +0.439000 0.765000 -1.000000 aj_A +0.765000 -0.561000 -1.000000 aj_A +0.765000 0.439000 -1.000000 aj_A +0.735000 -0.061000 -1.500000 aj_A +0.735000 -0.061000 -0.500000 aj_A +0.939000 -0.265000 -0.500000 aj_A +0.939000 -0.265000 -1.500000 aj_A +0.061000 0.265000 -1.500000 aj_A +0.061000 0.265000 -0.500000 aj_A +0.265000 0.061000 -0.500000 aj_A +0.265000 0.061000 -1.500000 aj_A diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/clusters.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/clusters.out new file mode 100644 index 0000000..1ac6ffa --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/clusters.out @@ -0,0 +1,213 @@ +4 +0.46000 +2 +0.31800 0.31800 0.27000 0 0 +0.31800 0.31800 0.73000 0 0 + +8 +0.51658 +2 +0.63300 0.96200 1.00000 0 0 +0.89700 0.89700 1.00000 0 0 + +4 +0.52562 +2 +0.53800 0.13300 0.50000 0 0 +0.46200 -0.13300 0.50000 0 0 + +4 +0.54000 +2 +0.18200 0.81800 0.77000 0 0 +0.18200 0.81800 0.23000 0 0 + +2 +0.55352 +2 +0.39700 0.60300 0.50000 0 0 +0.60300 0.39700 0.50000 0 0 + +16 +0.59260 +2 +0.81800 0.18200 0.23000 0 0 +0.63300 -0.03800 0.00000 0 0 + +16 +0.60381 +2 +0.68200 0.68200 0.27000 0 0 +0.63300 0.96200 0.00000 0 0 + +16 +0.60717 +2 +0.81800 0.18200 0.23000 0 0 +0.89700 -0.10300 0.00000 0 0 + +16 +0.62301 +2 +0.86700 0.46200 0.50000 0 0 +0.96200 0.63300 0.00000 0 0 + +8 +0.63769 +2 +0.18200 0.81800 0.77000 0 0 +0.39700 0.60300 0.50000 0 0 + +4 +0.88402 +2 +0.03800 0.36700 1.00000 0 0 +0.36700 0.03800 1.00000 0 0 + +16 +0.90807 +2 +0.18200 0.81800 0.23000 0 0 +0.13300 0.53800 -0.50000 0 0 + +16 +0.92846 +2 +0.03800 0.36700 1.00000 0 0 +0.18200 0.81800 1.23000 0 0 + +8 +0.93094 +2 +0.18200 0.81800 0.23000 0 0 +0.39700 0.60300 -0.50000 0 0 + +8 +0.93232 +2 +0.89700 0.89700 1.00000 0 0 +1.03800 1.36700 1.00000 0 0 + +16 +0.94267 +2 +0.81800 0.18200 0.77000 0 0 +0.46200 -0.13300 0.50000 0 0 + +16 +0.94402 +2 +0.81800 0.18200 0.77000 0 0 +0.63300 -0.03800 0.00000 0 0 + +16 +0.95323 +2 +0.81800 0.18200 0.77000 0 0 +0.89700 -0.10300 0.00000 0 0 + +16 +0.95725 +2 +0.36700 0.03800 1.00000 0 0 +0.60300 0.39700 0.50000 0 0 + +16 +0.96765 +2 +0.63300 0.96200 1.00000 0 0 +0.60300 1.39700 1.50000 0 0 + +4 +0.97807 +2 +0.68200 0.68200 0.27000 0 0 +0.31800 0.31800 0.27000 0 0 + +16 +0.98533 +2 +0.18200 0.81800 0.77000 0 0 +0.31800 0.31800 0.73000 0 0 + +8 +1.00000 +2 +0.13300 0.53800 0.50000 0 0 +0.13300 0.53800 -0.50000 0 0 + +8 +1.00000 +2 +0.18200 0.81800 0.77000 0 0 +0.18200 0.81800 -0.23000 0 0 + +4 +1.00000 +2 +0.39700 0.60300 0.50000 0 0 +0.39700 0.60300 -0.50000 0 0 + +8 +0.59260 +3 +0.81800 0.18200 0.23000 0 0 +0.81800 0.18200 -0.23000 0 0 +0.63300 -0.03800 0.00000 0 0 + +8 +0.60381 +3 +0.68200 0.68200 0.27000 0 0 +0.68200 0.68200 -0.27000 0 0 +0.63300 0.96200 0.00000 0 0 + +8 +0.60717 +3 +0.81800 0.18200 0.23000 0 0 +0.81800 0.18200 -0.23000 0 0 +0.89700 -0.10300 0.00000 0 0 + +16 +0.60717 +3 +0.89700 0.89700 1.00000 0 0 +0.63300 0.96200 1.00000 0 0 +0.81800 1.18200 1.23000 0 0 + +8 +0.60717 +3 +0.89700 0.89700 1.00000 0 0 +1.10300 1.10300 1.00000 0 0 +0.81800 1.18200 1.23000 0 0 + +16 +0.62301 +3 +0.86700 0.46200 0.50000 0 0 +1.13300 0.53800 0.50000 0 0 +0.96200 0.63300 0.00000 0 0 + +16 +0.62301 +3 +0.86700 0.46200 0.50000 0 0 +0.68200 0.68200 0.27000 0 0 +0.96200 0.63300 0.00000 0 0 + +4 +0.63769 +3 +0.18200 0.81800 0.77000 0 0 +0.18200 0.81800 0.23000 0 0 +0.39700 0.60300 0.50000 0 0 + +16 +0.63769 +3 +0.39700 0.60300 0.50000 0 0 +0.13300 0.53800 0.50000 0 0 +0.18200 0.81800 0.77000 0 0 + diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/go b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/go new file mode 100644 index 0000000..6584c70 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/go @@ -0,0 +1 @@ +corrdump -nop -noe -2=1 -3=0.65 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/job.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/job.in new file mode 100755 index 0000000..7302e38 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for id in [ 0 1 2 3 4 5 6 7 ] +do + mcsqs -n=60 -ip=$id & +done +wait diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/rndstr.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/rndstr.in new file mode 100644 index 0000000..5a8b7da --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/rndstr.in @@ -0,0 +1,38 @@ +1.9 1.9 1.0 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.000 0.000 0.500 aj_A=1 +0.500 0.500 0.000 aj_A=1 + +0.561 0.235 0.000 aj_A=1 +0.235 0.561 0.000 aj_A=1 +-0.235 -0.561 0.000 aj_A=1 +-0.561 -0.235 0.000 aj_A=1 +1.061 0.265 -0.500 aj_A=1 +0.265 1.061 -0.500 aj_A=1 +0.735 -0.061 -0.500 aj_A=1 +-0.061 0.735 -0.500 aj_A=1 + +0.103 0.103 0.000 g_A=0.5,g_B=0.5 +-0.103 -0.103 0.000 g_A=0.5,g_B=0.5 +0.603 0.397 -0.500 g_A=0.5,g_B=0.5 +0.397 0.603 -0.500 g_A=0.5,g_B=0.5 + +0.318 0.318 0.730 ii_A=0.5,ii_B=0.5 +-0.318 -0.318 0.730 ii_A=0.5,ii_B=0.5 +0.318 0.318 0.270 ii_A=0.5,ii_B=0.5 +-0.318 -0.318 0.270 ii_A=0.5,ii_B=0.5 +0.818 0.182 0.230 ii_A=0.5,ii_B=0.5 +0.182 0.818 0.230 ii_A=0.5,ii_B=0.5 +0.818 0.182 -0.230 ii_A=0.5,ii_B=0.5 +0.182 0.818 -0.230 ii_A=0.5,ii_B=0.5 +0.367 0.038 0.000 ii_A=0.5,ii_B=0.5 +0.038 0.367 0.000 ii_A=0.5,ii_B=0.5 +-0.038 -0.367 0.000 ii_A=0.5,ii_B=0.5 +-0.367 -0.038 0.000 ii_A=0.5,ii_B=0.5 +0.867 0.462 -0.500 ii_A=0.5,ii_B=0.5 +0.462 0.867 -0.500 ii_A=0.5,ii_B=0.5 +0.538 0.133 -0.500 ii_A=0.5,ii_B=0.5 +0.133 0.538 -0.500 ii_A=0.5,ii_B=0.5 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/rndstrgrp.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..d57b6c7 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=2_aj=1_g=0.5,0.5_ii=0.5,0.5/rndstrgrp.out @@ -0,0 +1,41 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.103000 0.103000 0.000000 g_A=0.500000,g_B=0.500000 +-0.103000 -0.103000 0.000000 g_A=0.500000,g_B=0.500000 +0.603000 0.397000 -0.500000 g_A=0.500000,g_B=0.500000 +0.397000 0.603000 -0.500000 g_A=0.500000,g_B=0.500000 + +0.318000 0.318000 0.730000 ii_A=0.500000,ii_B=0.500000 +-0.318000 -0.318000 0.730000 ii_A=0.500000,ii_B=0.500000 +0.318000 0.318000 0.270000 ii_A=0.500000,ii_B=0.500000 +-0.318000 -0.318000 0.270000 ii_A=0.500000,ii_B=0.500000 +0.818000 0.182000 0.230000 ii_A=0.500000,ii_B=0.500000 +0.182000 0.818000 0.230000 ii_A=0.500000,ii_B=0.500000 +0.818000 0.182000 -0.230000 ii_A=0.500000,ii_B=0.500000 +0.182000 0.818000 -0.230000 ii_A=0.500000,ii_B=0.500000 + +0.038000 0.367000 0.000000 ii_A=0.500000,ii_B=0.500000 +0.367000 0.038000 0.000000 ii_A=0.500000,ii_B=0.500000 +-0.367000 -0.038000 0.000000 ii_A=0.500000,ii_B=0.500000 +-0.038000 -0.367000 0.000000 ii_A=0.500000,ii_B=0.500000 +0.538000 0.133000 -0.500000 ii_A=0.500000,ii_B=0.500000 +0.133000 0.538000 -0.500000 ii_A=0.500000,ii_B=0.500000 +0.867000 0.462000 -0.500000 ii_A=0.500000,ii_B=0.500000 +0.462000 0.867000 -0.500000 ii_A=0.500000,ii_B=0.500000 + +0.000000 0.000000 0.500000 aj_A=1.000000 +0.500000 0.500000 0.000000 aj_A=1.000000 + +0.235000 0.561000 0.000000 aj_A=1.000000 +0.561000 0.235000 0.000000 aj_A=1.000000 +-0.561000 -0.235000 0.000000 aj_A=1.000000 +-0.235000 -0.561000 0.000000 aj_A=1.000000 +0.735000 -0.061000 -0.500000 aj_A=1.000000 +-0.061000 0.735000 -0.500000 aj_A=1.000000 +1.061000 0.265000 -0.500000 aj_A=1.000000 +0.265000 1.061000 -0.500000 aj_A=1.000000 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/bestcorr.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..bb445a2 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/bestcorr.out @@ -0,0 +1,83 @@ +2 0.460000 0.000000 0.000000 0.000000 +2 0.516580 -0.250000 0.000000 -0.250000 +2 0.516667 0.000000 0.000000 0.000000 +2 0.525325 -0.500000 0.000000 -0.500000 +2 0.525624 0.000000 0.000000 0.000000 +2 0.536436 0.000000 0.000000 0.000000 +2 0.538022 0.000000 0.000000 0.000000 +2 0.540000 -1.000000 0.000000 -1.000000 +2 0.548149 0.000000 0.000000 0.000000 +2 0.549070 0.000000 0.000000 0.000000 +2 0.553523 0.000000 0.000000 0.000000 +2 0.557617 0.000000 0.000000 0.000000 +2 0.558619 0.000000 0.000000 0.000000 +2 0.571487 0.000000 0.000000 0.000000 +2 0.592544 0.000000 0.000000 0.000000 +2 0.592601 -0.250000 0.000000 -0.250000 +2 0.603814 0.000000 0.000000 0.000000 +2 0.607167 0.000000 0.000000 0.000000 +2 0.623009 0.000000 0.000000 0.000000 +2 0.637687 0.000000 0.000000 0.000000 +2 0.821943 0.000000 0.000000 0.000000 +2 0.861069 0.000000 0.000000 0.000000 +2 0.875964 0.000000 0.000000 0.000000 +2 0.878030 0.000000 0.000000 0.000000 +2 0.878667 0.000000 0.000000 0.000000 +2 0.879799 0.000000 0.000000 0.000000 +2 0.879922 0.000000 0.000000 0.000000 +2 0.884025 0.000000 0.000000 0.000000 +2 0.884882 0.000000 0.000000 0.000000 +2 0.905525 0.000000 0.000000 0.000000 +2 0.905621 0.000000 0.000000 0.000000 +2 0.908070 0.000000 0.000000 0.000000 +2 0.913450 0.000000 0.000000 0.000000 +2 0.914317 0.000000 0.000000 0.000000 +2 0.917321 0.000000 0.000000 0.000000 +2 0.920361 0.000000 0.000000 0.000000 +2 0.922594 0.000000 0.000000 0.000000 +2 0.928458 -0.250000 0.000000 -0.250000 +2 0.930937 0.000000 0.000000 0.000000 +2 0.932319 -0.250000 0.000000 -0.250000 +2 0.940362 -0.500000 0.000000 -0.500000 +2 0.942666 0.000000 0.000000 0.000000 +2 0.944021 0.250000 0.000000 0.250000 +2 0.953233 0.000000 0.000000 0.000000 +2 0.957248 0.000000 0.000000 0.000000 +2 0.967652 0.000000 0.000000 0.000000 +2 0.978070 0.000000 0.000000 0.000000 +2 0.985328 0.000000 0.000000 0.000000 +2 1.000000 -0.500000 0.000000 -0.500000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 -1.000000 0.000000 -1.000000 +3 0.536436 0.000000 0.000000 0.000000 +3 0.548149 0.000000 0.000000 0.000000 +3 0.548149 0.000000 0.000000 0.000000 +3 0.549070 0.000000 0.000000 0.000000 +3 0.557617 0.000000 0.000000 0.000000 +3 0.558619 0.000000 0.000000 0.000000 +3 0.558619 0.000000 0.000000 0.000000 +3 0.571487 0.000000 0.000000 0.000000 +3 0.592544 0.000000 0.000000 0.000000 +3 0.592544 0.000000 0.000000 0.000000 +3 0.592544 0.000000 0.000000 0.000000 +3 0.592601 0.000000 0.000000 0.000000 +3 0.592601 0.000000 0.000000 0.000000 +3 0.592601 0.000000 0.000000 0.000000 +3 0.603814 0.000000 0.000000 0.000000 +3 0.603814 0.000000 0.000000 0.000000 +3 0.603814 0.000000 0.000000 0.000000 +3 0.607167 0.000000 0.000000 0.000000 +3 0.607167 0.000000 0.000000 0.000000 +3 0.607167 0.000000 0.000000 0.000000 +3 0.607167 0.000000 0.000000 0.000000 +3 0.607167 0.000000 0.000000 0.000000 +3 0.623009 0.250000 0.000000 0.250000 +3 0.623009 -0.250000 0.000000 -0.250000 +3 0.623009 0.000000 0.000000 0.000000 +3 0.623009 0.000000 0.000000 0.000000 +3 0.637687 0.000000 0.000000 0.000000 +3 0.637687 0.000000 0.000000 0.000000 +3 0.637687 0.000000 0.000000 0.000000 +Objective_function= 4.733420 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/bestsqs.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..5739d99 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/bestsqs.out @@ -0,0 +1,66 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 -0.000000 1.000000 +1.000000 -0.000000 1.000000 +0.000000 1.000000 -1.000000 +0.000000 1.000000 -0.500000 aj_A +0.000000 1.000000 0.500000 aj_B +-0.500000 0.500000 1.000000 aj_B +0.500000 0.500000 1.000000 aj_A +0.235000 0.561000 0.000000 aj_A +0.235000 0.561000 1.000000 aj_A +-0.439000 0.235000 1.000000 aj_A +0.561000 0.235000 1.000000 aj_A +0.439000 0.765000 0.000000 aj_B +-0.561000 0.765000 0.000000 aj_B +-0.235000 0.439000 1.000000 aj_B +-0.235000 0.439000 -0.000000 aj_B +-0.265000 0.939000 -0.500000 aj_B +-0.265000 0.939000 0.500000 aj_A +0.061000 0.265000 0.500000 aj_A +0.061000 0.265000 1.500000 aj_B +-0.061000 0.735000 -0.500000 aj_B +-0.061000 0.735000 0.500000 aj_A +0.265000 0.061000 0.500000 aj_A +0.265000 0.061000 1.500000 aj_B +-0.897000 0.103000 1.000000 g_B +0.103000 0.103000 1.000000 g_A +-0.103000 0.897000 1.000000 g_B +-0.103000 0.897000 0.000000 g_A +-0.397000 0.397000 0.500000 g_A +0.603000 0.397000 0.500000 g_A +-0.603000 0.603000 0.500000 g_B +0.397000 0.603000 0.500000 g_B +0.318000 0.318000 0.730000 ii_A +-0.682000 0.318000 0.730000 ii_A +-0.318000 0.682000 -0.270000 ii_A +-0.318000 0.682000 0.730000 ii_A +0.318000 0.318000 0.270000 ii_B +0.318000 0.318000 1.270000 ii_B +0.682000 0.682000 0.270000 ii_B +-0.318000 0.682000 0.270000 ii_B +-0.182000 0.182000 1.230000 ii_A +-0.182000 0.182000 0.230000 ii_B +0.182000 0.818000 0.230000 ii_B +-0.818000 0.818000 0.230000 ii_A +-0.182000 0.182000 0.770000 ii_A +0.818000 0.182000 0.770000 ii_B +0.182000 0.818000 -0.230000 ii_B +0.182000 0.818000 0.770000 ii_A +0.038000 0.367000 0.000000 ii_A +0.038000 0.367000 1.000000 ii_B +-0.633000 0.038000 1.000000 ii_B +0.367000 0.038000 1.000000 ii_B +0.633000 0.962000 -0.000000 ii_A +-0.367000 0.962000 0.000000 ii_B +-0.038000 0.633000 1.000000 ii_A +-0.038000 0.633000 0.000000 ii_A +-0.462000 0.133000 0.500000 ii_A +0.538000 0.133000 0.500000 ii_B +-0.133000 0.462000 0.500000 ii_A +0.867000 0.462000 0.500000 ii_B +-0.867000 0.538000 0.500000 ii_A +0.133000 0.538000 0.500000 ii_B +-0.538000 0.867000 0.500000 ii_B +0.462000 0.867000 0.500000 ii_A diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/clusters.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/clusters.out new file mode 100644 index 0000000..e988558 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/clusters.out @@ -0,0 +1,521 @@ +4 +0.46000 +2 +0.31800 0.31800 0.27000 0 0 +0.31800 0.31800 0.73000 0 0 + +8 +0.51658 +2 +0.63300 0.96200 1.00000 0 0 +0.89700 0.89700 1.00000 0 0 + +8 +0.51667 +2 +1.00000 1.00000 0.50000 0 0 +1.06100 1.26500 0.50000 0 0 + +8 +0.52533 +2 +0.53800 0.13300 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +4 +0.52562 +2 +0.53800 0.13300 0.50000 0 0 +0.46200 -0.13300 0.50000 0 0 + +8 +0.53644 +2 +0.46200 0.86700 0.50000 0 0 +0.73500 0.93900 0.50000 0 0 + +16 +0.53802 +2 +0.73500 0.93900 0.50000 0 0 +0.63300 0.96200 0.00000 0 0 + +4 +0.54000 +2 +0.18200 0.81800 0.77000 0 0 +0.18200 0.81800 0.23000 0 0 + +4 +0.54815 +2 +0.76500 0.43900 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 + +16 +0.54907 +2 +0.18200 0.81800 0.23000 0 0 +0.23500 0.56100 0.00000 0 0 + +2 +0.55352 +2 +0.39700 0.60300 0.50000 0 0 +0.60300 0.39700 0.50000 0 0 + +16 +0.55762 +2 +0.43900 0.76500 1.00000 0 0 +0.68200 0.68200 1.27000 0 0 + +8 +0.55862 +2 +1.00000 1.00000 0.50000 0 0 +1.18200 0.81800 0.77000 0 0 + +8 +0.57149 +2 +0.50000 0.50000 1.00000 0 0 +0.60300 0.39700 1.50000 0 0 + +16 +0.59254 +2 +0.39700 0.60300 0.50000 0 0 +0.23500 0.56100 0.00000 0 0 + +16 +0.59260 +2 +0.81800 0.18200 0.23000 0 0 +0.63300 -0.03800 0.00000 0 0 + +16 +0.60381 +2 +0.68200 0.68200 0.27000 0 0 +0.63300 0.96200 0.00000 0 0 + +16 +0.60717 +2 +0.81800 0.18200 0.23000 0 0 +0.89700 -0.10300 0.00000 0 0 + +16 +0.62301 +2 +0.86700 0.46200 0.50000 0 0 +0.96200 0.63300 0.00000 0 0 + +8 +0.63769 +2 +0.18200 0.81800 0.77000 0 0 +0.39700 0.60300 0.50000 0 0 + +16 +0.82194 +2 +0.43900 0.76500 1.00000 0 0 +0.73500 0.93900 1.50000 0 0 + +16 +0.86107 +2 +1.00000 1.00000 0.50000 0 0 +1.03800 1.36700 0.00000 0 0 + +4 +0.87596 +2 +0.43900 0.76500 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 + +16 +0.87803 +2 +0.68200 0.68200 0.73000 0 0 +0.43900 0.76500 0.00000 0 0 + +8 +0.87867 +2 +0.18200 0.81800 0.23000 0 0 +0.00000 1.00000 -0.50000 0 0 + +16 +0.87980 +2 +0.93900 0.73500 0.50000 0 0 +0.63300 0.96200 0.00000 0 0 + +16 +0.87992 +2 +0.36700 0.03800 1.00000 0 0 +0.73500 -0.06100 0.50000 0 0 + +4 +0.88402 +2 +0.03800 0.36700 1.00000 0 0 +0.36700 0.03800 1.00000 0 0 + +8 +0.88488 +2 +0.50000 0.50000 1.00000 0 0 +0.81800 0.18200 1.23000 0 0 + +8 +0.90552 +2 +0.56100 0.23500 1.00000 0 0 +0.89700 -0.10300 1.00000 0 0 + +8 +0.90562 +2 +0.26500 0.06100 0.50000 0 0 +0.39700 -0.39700 0.50000 0 0 + +16 +0.90807 +2 +0.18200 0.81800 0.23000 0 0 +0.13300 0.53800 -0.50000 0 0 + +8 +0.91345 +2 +0.46200 0.86700 0.50000 0 0 +0.00000 1.00000 0.50000 0 0 + +16 +0.91432 +2 +0.89700 0.89700 1.00000 0 0 +1.06100 1.26500 1.50000 0 0 + +16 +0.91732 +2 +0.18200 0.81800 0.77000 0 0 +0.23500 0.56100 0.00000 0 0 + +16 +0.92036 +2 +0.76500 0.43900 1.00000 0 0 +0.31800 0.31800 1.27000 0 0 + +4 +0.92259 +2 +0.26500 0.06100 0.50000 0 0 +0.73500 -0.06100 0.50000 0 0 + +16 +0.92846 +2 +0.03800 0.36700 1.00000 0 0 +0.18200 0.81800 1.23000 0 0 + +8 +0.93094 +2 +0.18200 0.81800 0.23000 0 0 +0.39700 0.60300 -0.50000 0 0 + +8 +0.93232 +2 +0.89700 0.89700 1.00000 0 0 +1.03800 1.36700 1.00000 0 0 + +8 +0.94036 +2 +0.36700 0.03800 1.00000 0 0 +0.23500 -0.43900 1.00000 0 0 + +16 +0.94267 +2 +0.81800 0.18200 0.77000 0 0 +0.46200 -0.13300 0.50000 0 0 + +16 +0.94402 +2 +0.81800 0.18200 0.77000 0 0 +0.63300 -0.03800 0.00000 0 0 + +16 +0.95323 +2 +0.81800 0.18200 0.77000 0 0 +0.89700 -0.10300 0.00000 0 0 + +16 +0.95725 +2 +0.36700 0.03800 1.00000 0 0 +0.60300 0.39700 0.50000 0 0 + +16 +0.96765 +2 +0.63300 0.96200 1.00000 0 0 +0.60300 1.39700 1.50000 0 0 + +4 +0.97807 +2 +0.68200 0.68200 0.27000 0 0 +0.31800 0.31800 0.27000 0 0 + +16 +0.98533 +2 +0.18200 0.81800 0.77000 0 0 +0.31800 0.31800 0.73000 0 0 + +8 +1.00000 +2 +0.13300 0.53800 0.50000 0 0 +0.13300 0.53800 -0.50000 0 0 + +8 +1.00000 +2 +0.18200 0.81800 0.77000 0 0 +0.18200 0.81800 -0.23000 0 0 + +4 +1.00000 +2 +0.39700 0.60300 0.50000 0 0 +0.39700 0.60300 -0.50000 0 0 + +8 +1.00000 +2 +0.93900 0.73500 0.50000 0 0 +0.93900 0.73500 -0.50000 0 0 + +2 +1.00000 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 0.50000 0.00000 0 0 + +8 +0.53644 +3 +0.46200 0.86700 0.50000 0 0 +0.53800 1.13300 0.50000 0 0 +0.73500 0.93900 0.50000 0 0 + +4 +0.54815 +3 +0.76500 0.43900 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.56100 0.23500 1.00000 0 0 + +8 +0.54815 +3 +0.76500 0.43900 1.00000 0 0 +0.81800 0.18200 1.23000 0 0 +0.56100 0.23500 1.00000 0 0 + +8 +0.54907 +3 +0.18200 0.81800 0.23000 0 0 +0.18200 0.81800 -0.23000 0 0 +0.23500 0.56100 0.00000 0 0 + +8 +0.55762 +3 +0.68200 0.68200 0.73000 0 0 +0.68200 0.68200 1.27000 0 0 +0.43900 0.76500 1.00000 0 0 + +16 +0.55862 +3 +1.00000 1.00000 0.50000 0 0 +1.26500 1.06100 0.50000 0 0 +1.18200 0.81800 0.77000 0 0 + +4 +0.55862 +3 +0.31800 0.31800 0.27000 0 0 +0.31800 0.31800 -0.27000 0 0 +0.50000 0.50000 0.00000 0 0 + +4 +0.57149 +3 +0.10300 0.10300 1.00000 0 0 +-0.10300 -0.10300 1.00000 0 0 +-0.00000 -0.00000 1.50000 0 0 + +16 +0.59254 +3 +0.39700 0.60300 0.50000 0 0 +0.13300 0.53800 0.50000 0 0 +0.23500 0.56100 0.00000 0 0 + +16 +0.59254 +3 +0.56100 0.23500 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.60300 0.39700 1.50000 0 0 + +8 +0.59254 +3 +0.56100 0.23500 1.00000 0 0 +0.76500 0.43900 1.00000 0 0 +0.60300 0.39700 1.50000 0 0 + +8 +0.59260 +3 +0.81800 0.18200 0.23000 0 0 +0.81800 0.18200 -0.23000 0 0 +0.63300 -0.03800 0.00000 0 0 + +16 +0.59260 +3 +0.13300 0.53800 0.50000 0 0 +0.06100 0.26500 0.50000 0 0 +0.31800 0.31800 0.27000 0 0 + +16 +0.59260 +3 +0.13300 0.53800 0.50000 0 0 +0.23500 0.56100 0.00000 0 0 +0.31800 0.31800 0.27000 0 0 + +8 +0.60381 +3 +0.68200 0.68200 0.27000 0 0 +0.68200 0.68200 -0.27000 0 0 +0.63300 0.96200 0.00000 0 0 + +16 +0.60381 +3 +0.63300 0.96200 1.00000 0 0 +0.43900 0.76500 1.00000 0 0 +0.68200 0.68200 1.27000 0 0 + +16 +0.60381 +3 +0.63300 0.96200 1.00000 0 0 +0.73500 0.93900 1.50000 0 0 +0.68200 0.68200 1.27000 0 0 + +8 +0.60717 +3 +0.81800 0.18200 0.23000 0 0 +0.81800 0.18200 -0.23000 0 0 +0.89700 -0.10300 0.00000 0 0 + +16 +0.60717 +3 +0.81800 0.18200 0.23000 0 0 +0.73500 -0.06100 0.50000 0 0 +0.89700 -0.10300 0.00000 0 0 + +16 +0.60717 +3 +0.81800 0.18200 0.23000 0 0 +1.00000 -0.00000 0.50000 0 0 +0.89700 -0.10300 0.00000 0 0 + +16 +0.60717 +3 +0.89700 0.89700 1.00000 0 0 +0.63300 0.96200 1.00000 0 0 +0.81800 1.18200 1.23000 0 0 + +8 +0.60717 +3 +0.89700 0.89700 1.00000 0 0 +1.10300 1.10300 1.00000 0 0 +0.81800 1.18200 1.23000 0 0 + +16 +0.62301 +3 +0.86700 0.46200 0.50000 0 0 +1.13300 0.53800 0.50000 0 0 +0.96200 0.63300 0.00000 0 0 + +16 +0.62301 +3 +0.86700 0.46200 0.50000 0 0 +0.93900 0.73500 0.50000 0 0 +0.96200 0.63300 0.00000 0 0 + +16 +0.62301 +3 +0.86700 0.46200 0.50000 0 0 +0.68200 0.68200 0.27000 0 0 +0.96200 0.63300 0.00000 0 0 + +16 +0.62301 +3 +0.63300 0.96200 1.00000 0 0 +0.43900 0.76500 1.00000 0 0 +0.46200 0.86700 1.50000 0 0 + +4 +0.63769 +3 +0.18200 0.81800 0.77000 0 0 +0.18200 0.81800 0.23000 0 0 +0.39700 0.60300 0.50000 0 0 + +16 +0.63769 +3 +0.18200 0.81800 0.77000 0 0 +0.23500 0.56100 1.00000 0 0 +0.39700 0.60300 0.50000 0 0 + +16 +0.63769 +3 +0.39700 0.60300 0.50000 0 0 +0.13300 0.53800 0.50000 0 0 +0.18200 0.81800 0.77000 0 0 + diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/go b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/go new file mode 100644 index 0000000..2bfc080 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/go @@ -0,0 +1 @@ +corrdump -nop -noe -2=1.0 -3=0.65 -ro -l=rndstr.in -clus ; getclus diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/job.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/job.in new file mode 100755 index 0000000..7302e38 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=8:00:00 +#SBATCH -p batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for id in [ 0 1 2 3 4 5 6 7 ] +do + mcsqs -n=60 -ip=$id & +done +wait diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/rndstr.in b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/rndstr.in new file mode 100644 index 0000000..f5927b2 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/rndstr.in @@ -0,0 +1,38 @@ +1.9 1.9 1.0 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0.000 0.000 0.500 aj_A=0.5,aj_B=0.5 +0.500 0.500 0.000 aj_A=0.5,aj_B=0.5 + +0.561 0.235 0.000 aj_A=0.5,aj_B=0.5 +0.235 0.561 0.000 aj_A=0.5,aj_B=0.5 +-0.235 -0.561 0.000 aj_A=0.5,aj_B=0.5 +-0.561 -0.235 0.000 aj_A=0.5,aj_B=0.5 +1.061 0.265 -0.500 aj_A=0.5,aj_B=0.5 +0.265 1.061 -0.500 aj_A=0.5,aj_B=0.5 +0.735 -0.061 -0.500 aj_A=0.5,aj_B=0.5 +-0.061 0.735 -0.500 aj_A=0.5,aj_B=0.5 + +0.103 0.103 0.000 g_A=0.5,g_B=0.5 +-0.103 -0.103 0.000 g_A=0.5,g_B=0.5 +0.603 0.397 -0.500 g_A=0.5,g_B=0.5 +0.397 0.603 -0.500 g_A=0.5,g_B=0.5 + +0.318 0.318 0.730 ii_A=0.5,ii_B=0.5 +-0.318 -0.318 0.730 ii_A=0.5,ii_B=0.5 +0.318 0.318 0.270 ii_A=0.5,ii_B=0.5 +-0.318 -0.318 0.270 ii_A=0.5,ii_B=0.5 +0.818 0.182 0.230 ii_A=0.5,ii_B=0.5 +0.182 0.818 0.230 ii_A=0.5,ii_B=0.5 +0.818 0.182 -0.230 ii_A=0.5,ii_B=0.5 +0.182 0.818 -0.230 ii_A=0.5,ii_B=0.5 +0.367 0.038 0.000 ii_A=0.5,ii_B=0.5 +0.038 0.367 0.000 ii_A=0.5,ii_B=0.5 +-0.038 -0.367 0.000 ii_A=0.5,ii_B=0.5 +-0.367 -0.038 0.000 ii_A=0.5,ii_B=0.5 +0.867 0.462 -0.500 ii_A=0.5,ii_B=0.5 +0.462 0.867 -0.500 ii_A=0.5,ii_B=0.5 +0.538 0.133 -0.500 ii_A=0.5,ii_B=0.5 +0.133 0.538 -0.500 ii_A=0.5,ii_B=0.5 diff --git a/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/rndstrgrp.out b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..0f87700 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsdb_lev=3_aj=0.5,0.5_g=0.5,0.5_ii=0.5,0.5/rndstrgrp.out @@ -0,0 +1,41 @@ +1.900000 0.000000 0.000000 +0.000000 1.900000 0.000000 +0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.000000 0.500000 aj_A=0.500000,aj_B=0.500000 +0.500000 0.500000 0.000000 aj_A=0.500000,aj_B=0.500000 + +0.235000 0.561000 0.000000 aj_A=0.500000,aj_B=0.500000 +0.561000 0.235000 0.000000 aj_A=0.500000,aj_B=0.500000 +-0.561000 -0.235000 0.000000 aj_A=0.500000,aj_B=0.500000 +-0.235000 -0.561000 0.000000 aj_A=0.500000,aj_B=0.500000 +0.735000 -0.061000 -0.500000 aj_A=0.500000,aj_B=0.500000 +1.061000 0.265000 -0.500000 aj_A=0.500000,aj_B=0.500000 +-0.061000 0.735000 -0.500000 aj_A=0.500000,aj_B=0.500000 +0.265000 1.061000 -0.500000 aj_A=0.500000,aj_B=0.500000 + +0.103000 0.103000 0.000000 g_A=0.500000,g_B=0.500000 +-0.103000 -0.103000 0.000000 g_A=0.500000,g_B=0.500000 +0.603000 0.397000 -0.500000 g_A=0.500000,g_B=0.500000 +0.397000 0.603000 -0.500000 g_A=0.500000,g_B=0.500000 + +0.318000 0.318000 0.730000 ii_A=0.500000,ii_B=0.500000 +-0.318000 -0.318000 0.730000 ii_A=0.500000,ii_B=0.500000 +0.318000 0.318000 0.270000 ii_A=0.500000,ii_B=0.500000 +-0.318000 -0.318000 0.270000 ii_A=0.500000,ii_B=0.500000 +0.818000 0.182000 0.230000 ii_A=0.500000,ii_B=0.500000 +0.182000 0.818000 0.230000 ii_A=0.500000,ii_B=0.500000 +0.818000 0.182000 -0.230000 ii_A=0.500000,ii_B=0.500000 +0.182000 0.818000 -0.230000 ii_A=0.500000,ii_B=0.500000 + +0.038000 0.367000 0.000000 ii_A=0.500000,ii_B=0.500000 +0.367000 0.038000 0.000000 ii_A=0.500000,ii_B=0.500000 +-0.367000 -0.038000 0.000000 ii_A=0.500000,ii_B=0.500000 +-0.038000 -0.367000 0.000000 ii_A=0.500000,ii_B=0.500000 +0.538000 0.133000 -0.500000 ii_A=0.500000,ii_B=0.500000 +0.867000 0.462000 -0.500000 ii_A=0.500000,ii_B=0.500000 +0.133000 0.538000 -0.500000 ii_A=0.500000,ii_B=0.500000 +0.462000 0.867000 -0.500000 ii_A=0.500000,ii_B=0.500000 diff --git a/data/sqsdb/SIGMA_D8B/sqsgen.in b/data/sqsdb/SIGMA_D8B/sqsgen.in new file mode 100644 index 0000000..aea2298 --- /dev/null +++ b/data/sqsdb/SIGMA_D8B/sqsgen.in @@ -0,0 +1,8 @@ +level=0 aj=1 g=1 ii=1 +level=1 aj=0.5,0.5 g=1 ii=1 +level=1 aj=1 g=0.5,0.5 ii=1 +level=1 aj=1 g=1 ii=0.5,0.5 +level=2 aj=1 g=0.5,0.5 ii=0.5,0.5 +level=2 aj=0.5,0.5 g=1 ii=0.5,0.5 +level=2 aj=0.5,0.5 g=0.5,0.5 ii=1 +level=3 aj=0.5,0.5 g=0.5,0.5 ii=0.5,0.5 diff --git a/data/sqsdb/WURTZITE_B4/rndstr.skel b/data/sqsdb/WURTZITE_B4/rndstr.skel new file mode 100644 index 0000000..468b067 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/rndstr.skel @@ -0,0 +1,10 @@ +3.820000 0.000000 0.000000 +-1.910000 3.308217 0.000000 +0.000000 0.000000 6.260000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +-0.000000 0.000000 1.000000 +0.333333 0.666667 0.000000 a +0.666667 0.333333 0.500000 a +0.333333 0.666667 0.125000 b +0.666667 0.333333 0.625000 b diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=0_a=1_b=1/bestsqs.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=0_a=1_b=1/bestsqs.out new file mode 100644 index 0000000..2ac02c3 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=0_a=1_b=1/bestsqs.out @@ -0,0 +1,10 @@ +3.820000 0.000000 0.000000 +-1.910000 3.308217 0.000000 +0.000000 0.000000 6.260000 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +-0.000000 0.000000 1.000000 +0.333333 0.666667 0.000000 a_A +0.666667 0.333333 0.500000 a_A +0.333333 0.666667 0.125000 b_A +0.666667 0.333333 0.625000 b_A diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=0_a=1_b=1/rndstr.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=0_a=1_b=1/rndstr.in new file mode 100644 index 0000000..6b0a13e --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=0_a=1_b=1/rndstr.in @@ -0,0 +1,11 @@ + +3.82 3.82 6.26 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0 a_A=1 +0.666667 0.333333 0.5 a_A=1 + +0.333333 0.666667 0.125 b_A=1 +0.666667 0.333333 0.625 b_A=1 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out new file mode 100644 index 0000000..5bf4807 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out @@ -0,0 +1,20 @@ +2 3.820000 0.000000 0.000000 0.000000 +2 3.828960 0.000000 0.000000 0.000000 +2 5.408608 0.000000 0.000000 0.000000 +2 6.260000 0.000000 0.000000 0.000000 +2 6.616434 0.000000 0.000000 0.000000 +2 6.621589 0.000000 0.000000 0.000000 +2 7.333485 0.000000 0.000000 0.000000 +3 3.820000 0.000000 0.000000 0.000000 +3 3.820000 0.000000 0.000000 0.000000 +3 3.828960 0.000000 0.000000 0.000000 +3 3.828960 0.000000 0.000000 0.000000 +3 5.408608 0.000000 0.000000 0.000000 +3 5.408608 0.000000 0.000000 0.000000 +4 3.828960 0.000000 0.000000 0.000000 +4 3.828960 0.000000 0.000000 0.000000 +4 5.408608 0.000000 0.000000 0.000000 +4 5.408608 -0.333333 0.000000 -0.333333 +4 5.408608 0.000000 0.000000 0.000000 +4 5.408608 0.000000 0.000000 0.000000 +Objective_function= -6.721190 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out new file mode 100644 index 0000000..bf75b52 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out @@ -0,0 +1,38 @@ +3.820000 0.000000 0.000000 +-1.910000 3.308217 0.000000 +0.000000 0.000000 6.260000 +-0.000000 -1.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-2.000000 1.000000 -1.000000 +-1.666667 -1.333333 -1.000000 a_B +-2.666667 -0.333333 -1.000000 a_B +-1.666667 -0.333333 -1.000000 a_B +-2.666667 -2.333333 -1.000000 a_A +-3.666667 -1.333333 -1.000000 a_A +-2.666667 -1.333333 -1.000000 a_A +-0.666667 -1.333333 -1.000000 a_B +-1.666667 -2.333333 -1.000000 a_A +-1.333333 -1.666667 -0.500000 a_A +-2.333333 -1.666667 -1.500000 a_B +-1.333333 -0.666667 -0.500000 a_B +-0.333333 -0.666667 -0.500000 a_A +-1.333333 -0.666667 -1.500000 a_B +-2.333333 -1.666667 -0.500000 a_B +-2.333333 -0.666667 -1.500000 a_A +-3.333333 -1.666667 -1.500000 a_A +-1.666667 -1.333333 -0.875000 b_A +-2.666667 -0.333333 -0.875000 b_A +-1.666667 -0.333333 -0.875000 b_A +-0.666667 -0.333333 -0.875000 b_A +-1.666667 0.666667 -0.875000 b_A +-2.666667 -1.333333 -0.875000 b_A +-0.666667 -1.333333 -0.875000 b_A +-1.666667 -2.333333 -0.875000 b_A +-1.333333 -1.666667 -0.375000 b_A +-2.333333 -1.666667 -1.375000 b_A +-1.333333 -0.666667 -0.375000 b_A +-0.333333 -0.666667 -0.375000 b_A +-1.333333 -0.666667 -1.375000 b_A +-2.333333 -1.666667 -0.375000 b_A +-2.333333 -0.666667 -1.375000 b_A +-3.333333 -1.666667 -1.375000 b_A diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out new file mode 100644 index 0000000..21fb2c3 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out @@ -0,0 +1,132 @@ +6 +3.82000 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 + +6 +3.82897 +2 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.00000 0 0 + +6 +5.40864 +2 +0.66667 0.33333 0.50000 0 0 +1.33333 -0.33333 0.00000 0 0 + +2 +6.26000 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 -0.50000 0 0 + +6 +6.61643 +2 +0.66667 0.33333 0.50000 0 0 +1.66667 -0.66667 0.50000 0 0 + +12 +6.62162 +2 +0.33333 0.66667 1.00000 0 0 +0.66667 2.33333 0.50000 0 0 + +12 +7.33348 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 -0.50000 0 0 + +2 +3.82000 +3 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +1.66667 0.33333 0.50000 0 0 + +2 +3.82000 +3 +0.66667 0.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 +1.66667 0.33333 0.50000 0 0 + +6 +3.82897 +3 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +0.33333 -0.33333 0.00000 0 0 + +6 +3.82897 +3 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +0.33333 -0.33333 1.00000 0 0 + +12 +5.40864 +3 +0.66667 0.33333 0.50000 0 0 +1.66667 0.33333 0.50000 0 0 +1.33333 -0.33333 0.00000 0 0 + +12 +5.40864 +3 +0.66667 0.33333 0.50000 0 0 +1.66667 0.33333 0.50000 0 0 +1.33333 -0.33333 1.00000 0 0 + +2 +3.82897 +4 +0.66667 0.33333 0.50000 0 0 +-0.33333 -0.66667 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +0.33333 -0.33333 0.00000 0 0 + +2 +3.82897 +4 +0.66667 0.33333 0.50000 0 0 +-0.33333 -0.66667 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +0.33333 -0.33333 1.00000 0 0 + +6 +5.40864 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +1.66667 0.33333 0.50000 0 0 +1.33333 -0.33333 0.00000 0 0 + +6 +5.40864 +4 +0.66667 0.33333 0.50000 0 0 +1.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.00000 0 0 +1.33333 -0.33333 0.00000 0 0 + +12 +5.40864 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +0.33333 -0.33333 0.00000 0 0 +1.33333 -0.33333 0.00000 0 0 + +6 +5.40864 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +1.66667 0.33333 0.50000 0 0 +1.33333 -0.33333 1.00000 0 0 + diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/go b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/go new file mode 100644 index 0000000..8f17a33 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=7.5 -3=6.15 -4=6.15 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/job.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/job.in new file mode 100755 index 0000000..69b022d --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=15:00:00 +#SBATCH -p maint-batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in new file mode 100644 index 0000000..ea6a30e --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in @@ -0,0 +1,11 @@ + +3.82 3.82 6.26 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0 a_A=0.5,a_B=0.5 +0.666667 0.333333 0.5 a_A=0.5,a_B=0.5 + +0.333333 0.666667 0.125 b_A=1 +0.666667 0.333333 0.625 b_A=1 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..1463fdc --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out @@ -0,0 +1,20 @@ +2 3.820000 0.000000 0.000000 0.000000 +2 3.828960 0.000000 0.000000 0.000000 +2 5.408608 0.000000 0.000000 0.000000 +2 6.260000 0.000000 0.000000 0.000000 +2 6.616434 0.000000 0.000000 0.000000 +2 6.621589 0.000000 0.000000 0.000000 +2 7.333485 0.000000 0.000000 0.000000 +3 3.820000 0.000000 0.000000 0.000000 +3 3.820000 0.000000 0.000000 0.000000 +3 3.828960 0.000000 0.000000 0.000000 +3 3.828960 0.000000 0.000000 0.000000 +3 5.408608 0.000000 0.000000 0.000000 +3 5.408608 0.000000 0.000000 0.000000 +4 3.828960 0.000000 0.000000 0.000000 +4 3.828960 0.000000 0.000000 0.000000 +4 5.408608 0.000000 0.000000 0.000000 +4 5.408608 0.000000 0.000000 0.000000 +4 5.408608 -0.333333 0.000000 -0.333333 +4 5.408608 0.000000 0.000000 0.000000 +Objective_function= -6.721190 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..4264589 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +3.820000 0.000000 0.000000 +-1.910000 3.308217 0.000000 +0.000000 0.000000 6.260000 +-0.000000 -1.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-2.000000 1.000000 -1.000000 +-1.666667 -1.333333 -0.875000 b_B +-2.666667 -0.333333 -0.875000 b_B +-1.666667 -0.333333 -0.875000 b_A +-0.666667 -0.333333 -0.875000 b_A +-1.666667 0.666667 -0.875000 b_A +-2.666667 -1.333333 -0.875000 b_B +-0.666667 -1.333333 -0.875000 b_A +-1.666667 -2.333333 -0.875000 b_B +-1.333333 -1.666667 -0.375000 b_B +-2.333333 -1.666667 -1.375000 b_A +-1.333333 -0.666667 -0.375000 b_A +-0.333333 -0.666667 -0.375000 b_B +-1.333333 -0.666667 -1.375000 b_A +-2.333333 -1.666667 -0.375000 b_A +-2.333333 -0.666667 -1.375000 b_B +-3.333333 -1.666667 -1.375000 b_B +-1.666667 -1.333333 -1.000000 a_A +-2.666667 -0.333333 -1.000000 a_A +-1.666667 -0.333333 -1.000000 a_A +-2.666667 -2.333333 -1.000000 a_A +-3.666667 -1.333333 -1.000000 a_A +-2.666667 -1.333333 -1.000000 a_A +-0.666667 -1.333333 -1.000000 a_A +-1.666667 -2.333333 -1.000000 a_A +-1.333333 -1.666667 -0.500000 a_A +-2.333333 -1.666667 -1.500000 a_A +-1.333333 -0.666667 -0.500000 a_A +-0.333333 -0.666667 -0.500000 a_A +-1.333333 -0.666667 -1.500000 a_A +-2.333333 -1.666667 -0.500000 a_A +-2.333333 -0.666667 -1.500000 a_A +-3.333333 -1.666667 -1.500000 a_A diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..ee306fb --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out @@ -0,0 +1,132 @@ +6 +3.82000 +2 +0.33333 0.66667 0.12500 0 0 +0.33333 -0.33333 0.12500 0 0 + +6 +3.82897 +2 +0.33333 0.66667 0.12500 0 0 +0.66667 1.33333 -0.37500 0 0 + +6 +5.40864 +2 +0.33333 0.66667 0.12500 0 0 +-0.33333 1.33333 -0.37500 0 0 + +2 +6.26000 +2 +0.66667 0.33333 0.62500 0 0 +0.66667 0.33333 -0.37500 0 0 + +6 +6.61643 +2 +0.66667 0.33333 0.62500 0 0 +1.66667 -0.66667 0.62500 0 0 + +12 +6.62162 +2 +0.33333 0.66667 0.12500 0 0 +0.66667 2.33333 -0.37500 0 0 + +12 +7.33348 +2 +0.66667 0.33333 0.62500 0 0 +1.66667 1.33333 -0.37500 0 0 + +2 +3.82000 +3 +0.66667 0.33333 0.62500 0 0 +-0.33333 -0.66667 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 + +2 +3.82000 +3 +0.66667 0.33333 0.62500 0 0 +1.66667 0.33333 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 + +6 +3.82897 +3 +0.33333 0.66667 0.12500 0 0 +0.33333 1.66667 0.12500 0 0 +0.66667 1.33333 -0.37500 0 0 + +6 +3.82897 +3 +0.66667 0.33333 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 +0.33333 -0.33333 1.12500 0 0 + +12 +5.40864 +3 +0.33333 0.66667 0.12500 0 0 +0.33333 1.66667 0.12500 0 0 +-0.33333 1.33333 -0.37500 0 0 + +12 +5.40864 +3 +0.66667 0.33333 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 +1.33333 -0.33333 1.12500 0 0 + +2 +3.82897 +4 +0.33333 0.66667 0.12500 0 0 +1.33333 1.66667 0.12500 0 0 +0.33333 1.66667 0.12500 0 0 +0.66667 1.33333 -0.37500 0 0 + +2 +3.82897 +4 +0.66667 0.33333 0.62500 0 0 +-0.33333 -0.66667 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 +0.33333 -0.33333 1.12500 0 0 + +6 +5.40864 +4 +0.33333 0.66667 0.12500 0 0 +-0.66667 0.66667 0.12500 0 0 +0.33333 1.66667 0.12500 0 0 +-0.33333 1.33333 -0.37500 0 0 + +12 +5.40864 +4 +0.33333 0.66667 0.12500 0 0 +0.33333 1.66667 0.12500 0 0 +0.66667 1.33333 -0.37500 0 0 +-0.33333 1.33333 -0.37500 0 0 + +6 +5.40864 +4 +0.33333 0.66667 0.12500 0 0 +-0.66667 0.66667 0.12500 0 0 +0.66667 1.33333 -0.37500 0 0 +-0.33333 1.33333 -0.37500 0 0 + +6 +5.40864 +4 +0.66667 0.33333 0.62500 0 0 +1.66667 0.33333 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 +1.33333 -0.33333 1.12500 0 0 + diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/go b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/go new file mode 100644 index 0000000..8f17a33 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=7.5 -3=6.15 -4=6.15 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/job.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/job.in new file mode 100755 index 0000000..69b022d --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=15:00:00 +#SBATCH -p maint-batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..e6aa854 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in @@ -0,0 +1,11 @@ + +3.82 3.82 6.26 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0 a_A=1 +0.666667 0.333333 0.5 a_A=1 + +0.333333 0.666667 0.125 b_A=0.5,b_B=0.5 +0.666667 0.333333 0.625 b_A=0.5,b_B=0.5 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/bestcorr.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/bestcorr.out new file mode 100644 index 0000000..13f497d --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/bestcorr.out @@ -0,0 +1,21 @@ +2 1.000000 0.222222 0.250000 -0.027778 +2 1.002328 0.277778 0.250000 0.027778 +2 1.415853 0.277778 0.250000 0.027778 +2 1.638700 0.166667 0.250000 -0.083333 +2 1.732051 0.277778 0.250000 0.027778 +2 1.733390 0.250000 0.250000 0.000000 +2 1.919723 0.222222 0.250000 -0.027778 +2 2.000000 0.222222 0.250000 -0.027778 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.002328 -0.166667 -0.125000 -0.041667 +3 1.002328 -0.166667 -0.125000 -0.041667 +3 1.415853 -0.111111 -0.125000 0.013889 +3 1.415853 -0.111111 -0.125000 0.013889 +4 1.002328 0.166667 0.062500 0.104167 +4 1.002328 0.166667 0.062500 0.104167 +4 1.415853 0.055556 0.062500 -0.006944 +4 1.415853 0.111111 0.062500 0.048611 +4 1.415853 0.000000 0.062500 -0.062500 +4 1.415853 0.055556 0.062500 -0.006944 +Objective_function= -17.461932 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/bestsqs.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/bestsqs.out new file mode 100644 index 0000000..22b375e --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.638700 +1.000000 -1.000000 1.000000 +-2.000000 -2.000000 1.000000 +-1.000000 -3.000000 -1.000000 +-1.666667 -3.333333 0.000000 a_A +-0.666667 -3.333333 0.000000 a_A +-0.666667 -2.333333 -0.000000 a_A +-1.666667 -4.333333 1.000000 a_A +-0.666667 -1.333333 0.000000 a_B +-1.666667 -3.333333 1.000000 a_A +-1.666667 -2.333333 1.000000 a_A +-1.666667 -5.333333 1.000000 a_A +-0.666667 -3.333333 1.000000 a_A +-0.666667 -2.333333 1.000000 a_B +-1.666667 -4.333333 0.000000 a_A +0.333333 -1.333333 1.000000 a_A +-1.333333 -3.666667 0.500000 a_B +-0.333333 -3.666667 0.500000 a_A +-0.333333 -2.666667 0.500000 a_A +-2.333333 -3.666667 0.500000 a_A +-0.333333 -1.666667 0.500000 a_B +-1.333333 -3.666667 1.500000 a_B +-1.333333 -2.666667 1.500000 a_A +-2.333333 -4.666667 0.500000 a_A +-1.333333 -2.666667 0.500000 a_A +-1.333333 -1.666667 0.500000 a_B +-1.333333 -4.666667 0.500000 a_A +-1.333333 -3.666667 -0.500000 a_A +-1.666667 -3.333333 0.125000 b_A +-0.666667 -3.333333 0.125000 b_A +-0.666667 -2.333333 0.125000 b_A +-1.666667 -4.333333 1.125000 b_A +-0.666667 -1.333333 0.125000 b_A +-1.666667 -3.333333 1.125000 b_A +-1.666667 -2.333333 1.125000 b_A +-2.666667 -4.333333 0.125000 b_A +-0.666667 -3.333333 1.125000 b_A +-0.666667 -2.333333 1.125000 b_A +-1.666667 -4.333333 0.125000 b_A +-0.666667 -4.333333 0.125000 b_A +-1.333333 -3.666667 0.625000 b_A +-0.333333 -3.666667 0.625000 b_A +-0.333333 -2.666667 0.625000 b_A +-2.333333 -3.666667 0.625000 b_A +-0.333333 -1.666667 0.625000 b_A +-1.333333 -3.666667 1.625000 b_A +-1.333333 -2.666667 1.625000 b_A +-2.333333 -4.666667 0.625000 b_A +-1.333333 -2.666667 0.625000 b_A +-1.333333 -1.666667 0.625000 b_A +-1.333333 -4.666667 0.625000 b_A +-1.333333 -3.666667 -0.375000 b_A diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/go b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/go new file mode 100644 index 0000000..7a20fb6 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=2.0 -3=1.5 -4=1.5 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/job.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/job.in new file mode 100755 index 0000000..de18648 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p maint-batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -wr=10 -wn=0.5 -wd=2 -ip=$id & +done +wait diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/rndstr.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/rndstr.in new file mode 100644 index 0000000..7318c28 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1.6387 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0 a_A=0.75,a_B=0.25 +0.666667 0.333333 0.5 a_A=0.75,a_B=0.25 + +0.333333 0.666667 0.125 b_A=1 +0.666667 0.333333 0.625 b_A=1 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/rndstrgrp.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/rndstrgrp.out new file mode 100644 index 0000000..5cafcc8 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=0.75,0.25_b=1/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.638700 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.333333 0.666667 0.000000 a_A=0.750000,a_B=0.250000 +0.666667 0.333333 0.500000 a_A=0.750000,a_B=0.250000 + +0.333333 0.666667 0.125000 b_A=1.000000 +0.666667 0.333333 0.625000 b_A=1.000000 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/bestcorr.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..476c9fb --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/bestcorr.out @@ -0,0 +1,21 @@ +2 1.000000 0.222222 0.250000 -0.027778 +2 1.002328 0.222222 0.250000 -0.027778 +2 1.415853 0.277778 0.250000 0.027778 +2 1.638700 0.166667 0.250000 -0.083333 +2 1.732051 0.222222 0.250000 -0.027778 +2 1.733390 0.222222 0.250000 -0.027778 +2 1.919723 0.222222 0.250000 -0.027778 +2 2.000000 0.222222 0.250000 -0.027778 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.002328 -0.055556 -0.125000 0.069444 +3 1.002328 -0.055556 -0.125000 0.069444 +3 1.415853 -0.111111 -0.125000 0.013889 +3 1.415853 -0.111111 -0.125000 0.013889 +4 1.002328 0.000000 0.062500 -0.062500 +4 1.002328 0.000000 0.062500 -0.062500 +4 1.415853 0.055556 0.062500 -0.006944 +4 1.415853 0.000000 0.062500 -0.062500 +4 1.415853 0.055556 0.062500 -0.006944 +4 1.415853 0.055556 0.062500 -0.006944 +Objective_function= -46.209027 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/bestsqs.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..e92ac37 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.638700 +1.000000 -1.000000 1.000000 +-2.000000 -2.000000 1.000000 +-1.000000 -3.000000 -1.000000 +-1.666667 -3.333333 0.125000 b_A +-0.666667 -3.333333 0.125000 b_A +-0.666667 -2.333333 0.125000 b_A +-1.666667 -4.333333 1.125000 b_A +-0.666667 -1.333333 0.125000 b_B +-1.666667 -3.333333 1.125000 b_B +-1.666667 -2.333333 1.125000 b_A +-2.666667 -4.333333 0.125000 b_A +-0.666667 -3.333333 1.125000 b_B +-0.666667 -2.333333 1.125000 b_A +-1.666667 -4.333333 0.125000 b_B +-0.666667 -4.333333 0.125000 b_A +-1.333333 -3.666667 0.625000 b_A +-0.333333 -3.666667 0.625000 b_A +-0.333333 -2.666667 0.625000 b_A +-2.333333 -3.666667 0.625000 b_A +-0.333333 -1.666667 0.625000 b_A +-1.333333 -3.666667 1.625000 b_B +-1.333333 -2.666667 1.625000 b_B +-2.333333 -4.666667 0.625000 b_A +-1.333333 -2.666667 0.625000 b_A +-1.333333 -1.666667 0.625000 b_A +-1.333333 -4.666667 0.625000 b_A +-1.333333 -3.666667 -0.375000 b_A +-1.666667 -3.333333 0.000000 a_A +-0.666667 -3.333333 0.000000 a_A +-0.666667 -2.333333 -0.000000 a_A +-1.666667 -4.333333 1.000000 a_A +-0.666667 -1.333333 0.000000 a_A +-1.666667 -3.333333 1.000000 a_A +-1.666667 -2.333333 1.000000 a_A +-1.666667 -5.333333 1.000000 a_A +-0.666667 -3.333333 1.000000 a_A +-0.666667 -2.333333 1.000000 a_A +-1.666667 -4.333333 0.000000 a_A +0.333333 -1.333333 1.000000 a_A +-1.333333 -3.666667 0.500000 a_A +-0.333333 -3.666667 0.500000 a_A +-0.333333 -2.666667 0.500000 a_A +-2.333333 -3.666667 0.500000 a_A +-0.333333 -1.666667 0.500000 a_A +-1.333333 -3.666667 1.500000 a_A +-1.333333 -2.666667 1.500000 a_A +-2.333333 -4.666667 0.500000 a_A +-1.333333 -2.666667 0.500000 a_A +-1.333333 -1.666667 0.500000 a_A +-1.333333 -4.666667 0.500000 a_A +-1.333333 -3.666667 -0.500000 a_A diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/go b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/go new file mode 100644 index 0000000..7a20fb6 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=2.0 -3=1.5 -4=1.5 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/job.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/job.in new file mode 100755 index 0000000..336b5af --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p maint-batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J B4_lev2_2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -wr=20 -wn=0.75 -wd=2 -ip=$id & +done +wait diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/rndstr.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/rndstr.in new file mode 100644 index 0000000..e30d4ae --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1.6387 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0 a_A=1 +0.666667 0.333333 0.5 a_A=1 + +0.333333 0.666667 0.125 b_A=0.75,b_B=0.25 +0.666667 0.333333 0.625 b_A=0.75,b_B=0.25 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/rndstrgrp.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/rndstrgrp.out new file mode 100644 index 0000000..f64db0d --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=2_a=1_b=0.75,0.25/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.638700 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.333333 0.666667 0.125000 b_A=0.750000,b_B=0.250000 +0.666667 0.333333 0.625000 b_A=0.750000,b_B=0.250000 + +0.333333 0.666667 0.000000 a_A=1.000000 +0.666667 0.333333 0.500000 a_A=1.000000 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestcorr.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..970a3c0 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestcorr.out @@ -0,0 +1,70 @@ +2 0.782500 0.000000 0.000000 0.000000 +2 3.220992 0.000000 0.000000 0.000000 +2 3.820000 0.000000 0.000000 0.000000 +2 3.820000 0.000000 0.000000 0.000000 +2 3.828960 0.000000 0.000000 0.000000 +2 3.828960 0.000000 0.000000 0.000000 +2 3.899321 0.000000 0.000000 0.000000 +2 4.491291 0.000000 0.000000 0.000000 +2 4.996689 0.000000 0.000000 0.000000 +2 5.408608 0.000000 0.000000 0.000000 +2 5.408608 0.000000 0.000000 0.000000 +2 5.477500 0.000000 0.000000 0.000000 +2 5.896083 0.000000 0.000000 0.000000 +2 6.260000 0.000000 0.000000 0.000000 +2 6.260000 0.000000 0.000000 0.000000 +2 6.289618 0.000000 0.000000 0.000000 +3 3.820000 0.000000 0.000000 0.000000 +3 3.820000 0.000000 0.000000 0.000000 +3 3.820000 0.000000 0.000000 0.000000 +3 3.820000 0.000000 0.000000 0.000000 +3 3.820000 0.000000 0.000000 0.000000 +3 3.820000 0.000000 0.000000 0.000000 +3 3.828960 0.000000 0.000000 0.000000 +3 3.828960 0.000000 0.000000 0.000000 +3 3.828960 0.000000 0.000000 0.000000 +3 3.828960 0.000000 0.000000 0.000000 +3 3.828960 0.000000 0.000000 0.000000 +3 3.828960 0.000000 0.000000 0.000000 +3 3.899321 0.000000 0.000000 0.000000 +3 3.899321 0.000000 0.000000 0.000000 +3 3.899321 0.000000 0.000000 0.000000 +3 3.899321 0.000000 0.000000 0.000000 +3 3.899321 0.000000 0.000000 0.000000 +3 3.899321 0.000000 0.000000 0.000000 +3 3.899321 0.000000 0.000000 0.000000 +3 3.899321 0.000000 0.000000 0.000000 +3 4.491291 0.000000 0.000000 0.000000 +3 4.491291 0.000000 0.000000 0.000000 +3 4.491291 0.000000 0.000000 0.000000 +3 4.491291 0.000000 0.000000 0.000000 +3 4.491291 0.000000 0.000000 0.000000 +3 4.491291 0.000000 0.000000 0.000000 +3 4.996689 0.000000 0.000000 0.000000 +3 4.996689 0.000000 0.000000 0.000000 +3 4.996689 0.000000 0.000000 0.000000 +3 4.996689 0.000000 0.000000 0.000000 +4 3.820000 0.000000 0.000000 0.000000 +4 3.820000 0.000000 0.000000 0.000000 +4 3.828960 0.000000 0.000000 0.000000 +4 3.828960 0.000000 0.000000 0.000000 +4 3.828960 0.333333 0.000000 0.333333 +4 3.828960 0.000000 0.000000 0.000000 +4 3.828960 0.000000 0.000000 0.000000 +4 3.828960 -0.333333 0.000000 -0.333333 +4 3.899321 0.000000 0.000000 0.000000 +4 3.899321 0.000000 0.000000 0.000000 +4 3.899321 -0.333333 0.000000 -0.333333 +4 3.899321 0.000000 0.000000 0.000000 +4 3.899321 0.000000 0.000000 0.000000 +4 3.899321 0.000000 0.000000 0.000000 +4 3.899321 0.333333 0.000000 0.333333 +4 3.899321 0.000000 0.000000 0.000000 +4 3.899321 -0.333333 0.000000 -0.333333 +4 3.899321 0.000000 0.000000 0.000000 +4 3.899321 0.000000 0.000000 0.000000 +4 3.899321 0.000000 0.000000 0.000000 +4 3.899321 0.333333 0.000000 0.333333 +4 3.899321 -0.333333 0.000000 -0.333333 +4 3.899321 0.000000 0.000000 0.000000 +Objective_function= -21.275700 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestsqs.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..91d6ccf --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +3.820000 0.000000 0.000000 +-1.910000 3.308217 0.000000 +0.000000 0.000000 6.260000 +-1.000000 1.000000 -1.000000 +1.000000 -1.000000 -1.000000 +-2.000000 -2.000000 0.000000 +-0.666667 -1.333333 -1.000000 a_B +-1.666667 -0.333333 -1.000000 a_A +-0.666667 -0.333333 -1.000000 a_A +-1.666667 -2.333333 -1.000000 a_B +-2.666667 -1.333333 -1.000000 a_A +-1.666667 -1.333333 -1.000000 a_B +0.333333 -1.333333 -1.000000 a_A +-0.666667 -2.333333 -1.000000 a_B +-1.333333 -0.666667 -1.500000 a_B +-1.333333 -0.666667 -0.500000 a_B +-0.333333 -0.666667 -0.500000 a_B +-2.333333 -1.666667 -1.500000 a_A +-2.333333 -1.666667 -0.500000 a_A +-1.333333 -1.666667 -0.500000 a_B +-0.333333 -0.666667 -1.500000 a_A +-1.333333 -1.666667 -1.500000 a_A +-0.666667 -1.333333 -0.875000 b_A +-1.666667 -0.333333 -0.875000 b_A +-0.666667 -0.333333 -0.875000 b_A +-1.666667 -2.333333 -0.875000 b_B +-2.666667 -1.333333 -0.875000 b_B +-1.666667 -1.333333 -0.875000 b_A +0.333333 -1.333333 -0.875000 b_B +-0.666667 -2.333333 -0.875000 b_B +-1.333333 -0.666667 -1.375000 b_A +-1.333333 -0.666667 -0.375000 b_B +-0.333333 -0.666667 -0.375000 b_A +-2.333333 -1.666667 -1.375000 b_A +-2.333333 -1.666667 -0.375000 b_B +-1.333333 -1.666667 -0.375000 b_B +-0.333333 -0.666667 -1.375000 b_A +-1.333333 -1.666667 -1.375000 b_B diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/clusters.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..7f075f2 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/clusters.out @@ -0,0 +1,490 @@ +2 +0.78250 +2 +0.66667 0.33333 0.62500 0 0 +0.66667 0.33333 0.50000 0 0 + +6 +3.22101 +2 +0.33333 0.66667 0.12500 0 0 +-0.33333 0.33333 0.50000 0 0 + +6 +3.82000 +2 +0.66667 0.33333 0.50000 0 0 +1.66667 0.33333 0.50000 0 0 + +6 +3.82000 +2 +0.66667 0.33333 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 + +6 +3.82897 +2 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.00000 0 0 + +6 +3.82897 +2 +0.33333 0.66667 0.12500 0 0 +0.66667 1.33333 -0.37500 0 0 + +12 +3.89932 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.62500 0 0 + +6 +4.49130 +2 +0.66667 0.33333 0.62500 0 0 +1.33333 0.66667 0.00000 0 0 + +6 +4.99672 +2 +0.33333 0.66667 0.12500 0 0 +-0.33333 1.33333 0.50000 0 0 + +6 +5.40864 +2 +0.66667 0.33333 0.50000 0 0 +1.33333 -0.33333 0.00000 0 0 + +6 +5.40864 +2 +0.33333 0.66667 0.12500 0 0 +-0.33333 1.33333 -0.37500 0 0 + +2 +5.47750 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 -0.37500 0 0 + +6 +5.89611 +2 +0.33333 0.66667 0.12500 0 0 +-0.33333 1.33333 -0.50000 0 0 + +2 +6.26000 +2 +0.66667 0.33333 0.62500 0 0 +0.66667 0.33333 -0.37500 0 0 + +2 +6.26000 +2 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 -0.50000 0 0 + +12 +6.28965 +2 +0.66667 0.33333 0.62500 0 0 +0.33333 -1.33333 1.00000 0 0 + +6 +3.82000 +3 +0.66667 0.33333 0.50000 0 0 +1.33333 0.66667 0.12500 0 0 +1.66667 0.33333 0.50000 0 0 + +2 +3.82000 +3 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +1.66667 0.33333 0.50000 0 0 + +2 +3.82000 +3 +0.66667 0.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 +1.66667 0.33333 0.50000 0 0 + +6 +3.82000 +3 +0.66667 0.33333 0.62500 0 0 +0.33333 -0.33333 1.00000 0 0 +0.66667 -0.66667 0.62500 0 0 + +2 +3.82000 +3 +0.66667 0.33333 0.62500 0 0 +-0.33333 -0.66667 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 + +2 +3.82000 +3 +0.66667 0.33333 0.62500 0 0 +1.66667 0.33333 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 + +6 +3.82897 +3 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +0.33333 -0.33333 0.00000 0 0 + +6 +3.82897 +3 +0.33333 0.66667 0.12500 0 0 +0.33333 0.66667 0.00000 0 0 +0.66667 1.33333 -0.37500 0 0 + +6 +3.82897 +3 +0.33333 0.66667 0.12500 0 0 +0.33333 1.66667 0.12500 0 0 +0.66667 1.33333 -0.37500 0 0 + +6 +3.82897 +3 +0.66667 0.33333 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 +0.33333 -0.33333 1.12500 0 0 + +6 +3.82897 +3 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 0.62500 0 0 +0.33333 -0.33333 1.00000 0 0 + +6 +3.82897 +3 +0.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +0.33333 -0.33333 1.00000 0 0 + +12 +3.89932 +3 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 + +12 +3.89932 +3 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.12500 0 0 +0.66667 -0.66667 0.62500 0 0 + +6 +3.89932 +3 +0.66667 0.33333 0.50000 0 0 +1.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.62500 0 0 + +6 +3.89932 +3 +0.66667 0.33333 0.50000 0 0 +-0.33333 -0.66667 0.50000 0 0 +0.66667 -0.66667 0.62500 0 0 + +12 +3.89932 +3 +0.66667 0.33333 0.62500 0 0 +0.66667 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +12 +3.89932 +3 +0.66667 0.33333 0.62500 0 0 +0.33333 0.66667 1.00000 0 0 +0.66667 1.33333 0.50000 0 0 + +6 +3.89932 +3 +0.66667 0.33333 0.62500 0 0 +-0.33333 0.33333 0.62500 0 0 +0.66667 1.33333 0.50000 0 0 + +6 +3.89932 +3 +0.66667 0.33333 0.62500 0 0 +1.66667 1.33333 0.62500 0 0 +0.66667 1.33333 0.50000 0 0 + +6 +4.49130 +3 +0.66667 0.33333 0.62500 0 0 +0.66667 0.33333 0.50000 0 0 +1.33333 0.66667 0.00000 0 0 + +6 +4.49130 +3 +0.66667 0.33333 0.62500 0 0 +1.66667 1.33333 0.62500 0 0 +1.33333 0.66667 0.00000 0 0 + +12 +4.49130 +3 +0.66667 0.33333 0.62500 0 0 +0.33333 -0.33333 0.12500 0 0 +1.33333 0.66667 0.00000 0 0 + +6 +4.49130 +3 +0.33333 0.66667 1.00000 0 0 +0.33333 0.66667 1.12500 0 0 +-0.33333 0.33333 1.62500 0 0 + +6 +4.49130 +3 +0.33333 0.66667 1.00000 0 0 +-0.66667 0.66667 1.00000 0 0 +-0.33333 0.33333 1.62500 0 0 + +12 +4.49130 +3 +0.33333 0.66667 1.00000 0 0 +0.66667 1.33333 1.50000 0 0 +-0.33333 0.33333 1.62500 0 0 + +12 +4.99672 +3 +0.33333 0.66667 0.12500 0 0 +-0.33333 0.33333 0.50000 0 0 +-0.33333 1.33333 0.50000 0 0 + +12 +4.99672 +3 +0.33333 0.66667 0.12500 0 0 +-0.33333 0.33333 0.62500 0 0 +-0.33333 1.33333 0.50000 0 0 + +12 +4.99672 +3 +0.66667 0.33333 0.50000 0 0 +1.33333 0.66667 0.12500 0 0 +1.33333 -0.33333 0.12500 0 0 + +12 +4.99672 +3 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.00000 0 0 +1.33333 -0.33333 0.12500 0 0 + +2 +3.82000 +4 +0.66667 0.33333 0.50000 0 0 +1.33333 0.66667 0.12500 0 0 +1.66667 1.33333 0.50000 0 0 +1.66667 0.33333 0.50000 0 0 + +2 +3.82000 +4 +0.66667 0.33333 0.62500 0 0 +0.33333 -0.33333 1.00000 0 0 +-0.33333 -0.66667 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 + +2 +3.82897 +4 +0.66667 0.33333 0.50000 0 0 +-0.33333 -0.66667 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +0.33333 -0.33333 0.00000 0 0 + +2 +3.82897 +4 +0.33333 0.66667 0.12500 0 0 +1.33333 1.66667 0.12500 0 0 +0.33333 1.66667 0.12500 0 0 +0.66667 1.33333 -0.37500 0 0 + +6 +3.82897 +4 +0.33333 0.66667 0.12500 0 0 +0.33333 0.66667 0.00000 0 0 +-0.33333 0.33333 -0.37500 0 0 +0.66667 1.33333 -0.37500 0 0 + +2 +3.82897 +4 +0.66667 0.33333 0.62500 0 0 +-0.33333 -0.66667 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 +0.33333 -0.33333 1.12500 0 0 + +2 +3.82897 +4 +0.66667 0.33333 0.50000 0 0 +-0.33333 -0.66667 0.50000 0 0 +0.66667 -0.66667 0.50000 0 0 +0.33333 -0.33333 1.00000 0 0 + +6 +3.82897 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 0.62500 0 0 +1.33333 0.66667 1.00000 0 0 +0.33333 -0.33333 1.00000 0 0 + +12 +3.89932 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 0.62500 0 0 +0.33333 -0.33333 0.12500 0 0 +0.66667 -0.66667 0.62500 0 0 + +12 +3.89932 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 0.62500 0 0 +1.66667 0.33333 0.50000 0 0 +0.66667 -0.66667 0.62500 0 0 + +6 +3.89932 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 0.62500 0 0 +0.66667 -0.66667 0.50000 0 0 +0.66667 -0.66667 0.62500 0 0 + +12 +3.89932 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 0.62500 0 0 +-0.33333 -0.66667 0.50000 0 0 +0.66667 -0.66667 0.62500 0 0 + +6 +3.89932 +4 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.12500 0 0 +-0.33333 -0.66667 0.50000 0 0 +0.66667 -0.66667 0.62500 0 0 + +12 +3.89932 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 0.62500 0 0 +0.33333 -0.33333 1.00000 0 0 +0.66667 -0.66667 0.62500 0 0 + +6 +3.89932 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 0.62500 0 0 +-0.33333 -0.66667 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 + +6 +3.89932 +4 +0.66667 0.33333 0.50000 0 0 +0.33333 -0.33333 0.12500 0 0 +-0.33333 -0.66667 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 + +6 +3.89932 +4 +0.66667 0.33333 0.50000 0 0 +0.66667 0.33333 0.62500 0 0 +1.66667 0.33333 0.62500 0 0 +0.66667 -0.66667 0.62500 0 0 + +12 +3.89932 +4 +0.66667 0.33333 0.62500 0 0 +0.66667 0.33333 0.50000 0 0 +0.33333 0.66667 1.00000 0 0 +0.66667 1.33333 0.50000 0 0 + +6 +3.89932 +4 +0.66667 0.33333 0.62500 0 0 +0.33333 0.66667 1.00000 0 0 +-0.33333 0.33333 0.62500 0 0 +0.66667 1.33333 0.50000 0 0 + +12 +3.89932 +4 +0.66667 0.33333 0.62500 0 0 +0.66667 0.33333 0.50000 0 0 +0.33333 0.66667 0.12500 0 0 +0.66667 1.33333 0.50000 0 0 + +6 +3.89932 +4 +0.66667 0.33333 0.62500 0 0 +0.66667 0.33333 0.50000 0 0 +1.66667 1.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +6 +3.89932 +4 +0.66667 0.33333 0.62500 0 0 +0.66667 0.33333 0.50000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + +6 +3.89932 +4 +0.66667 0.33333 0.62500 0 0 +0.33333 0.66667 1.00000 0 0 +-0.33333 0.33333 0.50000 0 0 +0.66667 1.33333 0.50000 0 0 + diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/go b/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/go new file mode 100644 index 0000000..95533ba --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=6.5 -3=5.15 -4=4.15 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/job.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/job.in new file mode 100755 index 0000000..7fd48aa --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=20:00:00 +#SBATCH -p maint-batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstr.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..0e83f68 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=3_a=0.5,0.5_b=0.5,0.5/rndstr.in @@ -0,0 +1,11 @@ + +3.82 3.82 6.26 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0 a_A=0.5,a_B=0.5 +0.666667 0.333333 0.5 a_A=0.5,a_B=0.5 + +0.333333 0.666667 0.125 b_A=0.5,b_B=0.5 +0.666667 0.333333 0.625 b_A=0.5,b_B=0.5 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestcorr.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..b551747 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestcorr.out @@ -0,0 +1,21 @@ +2 0.204838 0.000000 -0.000000 0.000000 +2 0.843180 0.000000 -0.000000 0.000000 +2 1.000000 0.222222 0.250000 -0.027778 +2 1.000000 0.000000 0.000000 0.000000 +2 1.002328 0.000000 0.000000 0.000000 +2 1.002328 0.222222 0.250000 -0.027778 +2 1.020764 0.000000 -0.000000 0.000000 +2 1.175707 0.000000 -0.000000 0.000000 +2 1.308026 -0.055556 -0.000000 -0.055556 +2 1.415853 0.222222 0.250000 -0.027778 +2 1.415853 0.000000 0.000000 0.000000 +2 1.433863 0.000000 -0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.000000 0.055556 -0.000000 0.055556 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +4 1.000000 0.000000 -0.000000 0.000000 +4 1.000000 0.000000 -0.000000 0.000000 +Objective_function= -85.418625 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestsqs.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..583a35e --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.638700 +0.000000 0.000000 -1.000000 +0.000000 -3.000000 0.000000 +-4.000000 0.000000 0.000000 +-2.666667 -1.333333 -1.000000 a_B +-1.666667 -1.333333 -1.000000 a_B +-0.666667 -1.333333 -1.000000 a_A +-3.666667 -1.333333 -1.000000 a_A +-2.666667 -0.333333 -1.000000 a_B +-1.666667 -0.333333 -1.000000 a_B +-0.666667 -0.333333 -1.000000 a_A +-3.666667 -0.333333 -1.000000 a_A +-2.666667 -2.333333 -1.000000 a_B +-1.666667 -2.333333 -1.000000 a_B +-0.666667 -2.333333 -1.000000 a_A +-3.666667 -2.333333 -1.000000 a_A +-2.333333 -1.666667 -0.500000 a_B +-1.333333 -1.666667 -0.500000 a_A +-0.333333 -1.666667 -0.500000 a_B +-3.333333 -1.666667 -0.500000 a_A +-2.333333 -0.666667 -0.500000 a_A +-1.333333 -0.666667 -0.500000 a_B +-0.333333 -0.666667 -0.500000 a_A +-3.333333 -0.666667 -0.500000 a_B +-2.333333 -2.666667 -0.500000 a_A +-1.333333 -2.666667 -0.500000 a_B +-0.333333 -2.666667 -0.500000 a_A +-3.333333 -2.666667 -0.500000 a_B +-2.666667 -1.333333 -0.875000 b_A +-1.666667 -1.333333 -0.875000 b_A +-0.666667 -1.333333 -0.875000 b_A +-3.666667 -1.333333 -0.875000 b_B +-2.666667 -0.333333 -0.875000 b_B +-1.666667 -0.333333 -0.875000 b_A +-0.666667 -0.333333 -0.875000 b_A +-3.666667 -0.333333 -0.875000 b_A +-2.666667 -2.333333 -0.875000 b_B +-1.666667 -2.333333 -0.875000 b_A +-0.666667 -2.333333 -0.875000 b_A +-3.666667 -2.333333 -0.875000 b_B +-2.333333 -1.666667 -0.375000 b_B +-1.333333 -1.666667 -0.375000 b_A +-0.333333 -1.666667 -0.375000 b_A +-3.333333 -1.666667 -0.375000 b_A +-2.333333 -0.666667 -0.375000 b_A +-1.333333 -0.666667 -0.375000 b_A +-0.333333 -0.666667 -0.375000 b_A +-3.333333 -0.666667 -0.375000 b_A +-2.333333 -2.666667 -0.375000 b_A +-1.333333 -2.666667 -0.375000 b_A +-0.333333 -2.666667 -0.375000 b_B +-3.333333 -2.666667 -0.375000 b_A diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/go b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/go new file mode 100644 index 0000000..7f02544 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=1.5 -3=1.0 -4=1.0 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/job.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/job.in new file mode 100755 index 0000000..ea7758f --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p maint-batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -wr=10 -wn=0.5 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/rndstr.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/rndstr.in new file mode 100644 index 0000000..8a9ac17 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1.6387 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0 a_A=0.5,a_B=0.5 +0.666667 0.333333 0.5 a_A=0.5,a_B=0.5 + +0.333333 0.666667 0.125 b_A=0.75,b_B=0.25 +0.666667 0.333333 0.625 b_A=0.75,b_B=0.25 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/rndstrgrp.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/rndstrgrp.out new file mode 100644 index 0000000..48a72f9 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.5,0.5_b=0.75,0.25/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.638700 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.333333 0.666667 0.000000 a_A=0.500000,a_B=0.500000 +0.666667 0.333333 0.500000 a_A=0.500000,a_B=0.500000 + +0.333333 0.666667 0.125000 b_A=0.750000,b_B=0.250000 +0.666667 0.333333 0.625000 b_A=0.750000,b_B=0.250000 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestcorr.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..a1b4567 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestcorr.out @@ -0,0 +1,21 @@ +2 0.204838 0.000000 -0.000000 0.000000 +2 0.843180 0.000000 -0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.222222 0.250000 -0.027778 +2 1.002328 0.222222 0.250000 -0.027778 +2 1.002328 0.000000 0.000000 0.000000 +2 1.020764 0.000000 -0.000000 0.000000 +2 1.175707 0.000000 -0.000000 0.000000 +2 1.308026 0.000000 -0.000000 0.000000 +2 1.415853 0.000000 0.000000 0.000000 +2 1.415853 0.222222 0.250000 -0.027778 +2 1.433863 0.000000 -0.000000 0.000000 +3 1.000000 0.055556 -0.000000 0.055556 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.000000 -0.166667 -0.125000 -0.041667 +4 1.000000 0.000000 -0.000000 0.000000 +4 1.000000 0.000000 -0.000000 0.000000 +Objective_function= -225.774600 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestsqs.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..a73aa8b --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.638700 +-1.000000 1.000000 -1.000000 +1.000000 -1.000000 -1.000000 +-3.000000 -3.000000 0.000000 +-1.666667 -2.333333 -1.000000 a_A +-2.666667 -1.333333 -1.000000 a_A +-1.666667 -1.333333 -1.000000 a_A +-0.666667 -1.333333 -1.000000 a_B +-1.666667 -0.333333 -1.000000 a_A +-0.666667 -0.333333 -1.000000 a_A +-2.666667 -3.333333 -1.000000 a_A +-3.666667 -2.333333 -1.000000 a_A +-2.666667 -2.333333 -1.000000 a_B +-0.666667 -2.333333 -1.000000 a_A +0.333333 -1.333333 -1.000000 a_A +-1.666667 -3.333333 -1.000000 a_A +-2.333333 -1.666667 -1.500000 a_A +-2.333333 -1.666667 -0.500000 a_A +-1.333333 -1.666667 -0.500000 a_B +-1.333333 -0.666667 -1.500000 a_B +-1.333333 -0.666667 -0.500000 a_A +-0.333333 -0.666667 -0.500000 a_A +-3.333333 -2.666667 -1.500000 a_B +-3.333333 -2.666667 -0.500000 a_A +-2.333333 -2.666667 -0.500000 a_B +-1.333333 -1.666667 -1.500000 a_A +-0.333333 -0.666667 -1.500000 a_A +-2.333333 -2.666667 -1.500000 a_A +-1.666667 -2.333333 -0.875000 b_B +-2.666667 -1.333333 -0.875000 b_B +-1.666667 -1.333333 -0.875000 b_A +-0.666667 -1.333333 -0.875000 b_A +-1.666667 -0.333333 -0.875000 b_A +-0.666667 -0.333333 -0.875000 b_A +-2.666667 -3.333333 -0.875000 b_B +-3.666667 -2.333333 -0.875000 b_B +-2.666667 -2.333333 -0.875000 b_B +-0.666667 -2.333333 -0.875000 b_A +0.333333 -1.333333 -0.875000 b_A +-1.666667 -3.333333 -0.875000 b_B +-2.333333 -1.666667 -1.375000 b_B +-2.333333 -1.666667 -0.375000 b_A +-1.333333 -1.666667 -0.375000 b_B +-1.333333 -0.666667 -1.375000 b_B +-1.333333 -0.666667 -0.375000 b_A +-0.333333 -0.666667 -0.375000 b_A +-3.333333 -2.666667 -1.375000 b_A +-3.333333 -2.666667 -0.375000 b_B +-2.333333 -2.666667 -0.375000 b_A +-1.333333 -1.666667 -1.375000 b_A +-0.333333 -0.666667 -1.375000 b_B +-2.333333 -2.666667 -1.375000 b_B diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/go b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/go new file mode 100644 index 0000000..7f02544 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=1.5 -3=1.0 -4=1.0 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/job.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/job.in new file mode 100755 index 0000000..adfd22e --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p maint-batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -wr=20 -wn=0.75 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstr.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..699fd74 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1.6387 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0 a_A=0.75,a_B=0.25 +0.666667 0.333333 0.5 a_A=0.75,a_B=0.25 + +0.333333 0.666667 0.125 b_A=0.5,b_B=0.5 +0.666667 0.333333 0.625 b_A=0.5,b_B=0.5 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..4ac5663 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.638700 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.333333 0.666667 0.000000 a_A=0.750000,a_B=0.250000 +0.666667 0.333333 0.500000 a_A=0.750000,a_B=0.250000 + +0.333333 0.666667 0.125000 b_A=0.500000,b_B=0.500000 +0.666667 0.333333 0.625000 b_A=0.500000,b_B=0.500000 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestcorr.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestcorr.out new file mode 100644 index 0000000..898b512 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestcorr.out @@ -0,0 +1,21 @@ +2 0.204838 0.166667 0.250000 -0.083333 +2 0.843180 0.277778 0.250000 0.027778 +2 1.000000 0.222222 0.250000 -0.027778 +2 1.000000 0.222222 0.250000 -0.027778 +2 1.002328 0.222222 0.250000 -0.027778 +2 1.002328 0.222222 0.250000 -0.027778 +2 1.020764 0.250000 0.250000 0.000000 +2 1.175707 0.277778 0.250000 0.027778 +2 1.308026 0.277778 0.250000 0.027778 +2 1.415853 0.222222 0.250000 -0.027778 +2 1.415853 0.222222 0.250000 -0.027778 +2 1.433863 0.333333 0.250000 0.083333 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.000000 -0.166667 -0.125000 -0.041667 +3 1.000000 -0.166667 -0.125000 -0.041667 +4 1.000000 0.166667 0.062500 0.104167 +4 1.000000 0.166667 0.062500 0.104167 +Objective_function= -17.426334 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestsqs.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestsqs.out new file mode 100644 index 0000000..5ccf003 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.638700 +-3.000000 -2.000000 1.000000 +-1.000000 2.000000 1.000000 +-1.000000 0.000000 -1.000000 +-2.666667 -0.333333 0.000000 a_B +-1.666667 -0.333333 -0.000000 a_A +-1.666667 0.666667 0.000000 a_A +-3.666667 -1.333333 1.000000 a_B +-3.666667 -1.333333 -0.000000 a_B +-4.666667 -0.333333 1.000000 a_B +-3.666667 -0.333333 1.000000 a_A +-2.666667 -0.333333 1.000000 a_A +-3.666667 0.666667 1.000000 a_A +-2.666667 0.666667 1.000000 a_A +-2.666667 0.666667 0.000000 a_A +-1.666667 1.666667 1.000000 a_A +-2.333333 -0.666667 0.500000 a_A +-2.333333 -0.666667 -0.500000 a_A +-1.333333 0.333333 0.500000 a_A +-1.333333 0.333333 -0.500000 a_A +-3.333333 -1.666667 0.500000 a_A +-1.333333 1.333333 0.500000 a_A +-4.333333 -0.666667 0.500000 a_B +-3.333333 -0.666667 0.500000 a_A +-3.333333 0.333333 1.500000 a_B +-3.333333 0.333333 0.500000 a_A +-2.333333 0.333333 0.500000 a_A +-2.333333 1.333333 0.500000 a_A +-2.666667 -0.333333 0.125000 b_A +-1.666667 -0.333333 0.125000 b_A +-1.666667 0.666667 0.125000 b_B +-0.666667 0.666667 0.125000 b_B +-3.666667 -1.333333 0.125000 b_A +-1.666667 1.666667 0.125000 b_A +-3.666667 -0.333333 1.125000 b_A +-2.666667 -0.333333 1.125000 b_A +-2.666667 -1.333333 0.125000 b_A +-2.666667 0.666667 1.125000 b_A +-2.666667 0.666667 0.125000 b_A +-0.666667 -0.333333 0.125000 b_A +-2.333333 -0.666667 0.625000 b_B +-2.333333 -0.666667 -0.375000 b_A +-1.333333 0.333333 0.625000 b_B +-1.333333 0.333333 -0.375000 b_A +-3.333333 -1.666667 0.625000 b_A +-1.333333 1.333333 0.625000 b_A +-4.333333 -0.666667 0.625000 b_A +-3.333333 -0.666667 0.625000 b_B +-3.333333 0.333333 1.625000 b_A +-3.333333 0.333333 0.625000 b_B +-2.333333 0.333333 0.625000 b_A +-2.333333 1.333333 0.625000 b_A diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/go b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/go new file mode 100644 index 0000000..7f02544 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/go @@ -0,0 +1,4 @@ +corrdump -nop -noe -2=1.5 -3=1.0 -4=1.0 -ro -l=rndstr.in -clus ; getclus + + + diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/job.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/job.in new file mode 100755 index 0000000..ea7758f --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/job.in @@ -0,0 +1,12 @@ +#!/bin/bash +#SBATCH --time=12:00:00 +#SBATCH -p maint-batch + +#SBATCH --tasks-per-node=8 +#SBATCH -J mcsqs + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -wr=10 -wn=0.5 -wd=1 -ip=$id & +done +wait diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstr.in b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstr.in new file mode 100644 index 0000000..c4edc3c --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1.6387 90 90 120 +1 0 0 +0 1 0 +0 0 1 + +0.333333 0.666667 0 a_A=0.75,a_B=0.25 +0.666667 0.333333 0.5 a_A=0.75,a_B=0.25 + +0.333333 0.666667 0.125 b_A=0.75,b_B=0.25 +0.666667 0.333333 0.625 b_A=0.75,b_B=0.25 diff --git a/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstrgrp.out b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstrgrp.out new file mode 100644 index 0000000..fe635fa --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsdb_lev=4_a=0.75,0.25_b=0.75,0.25/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +-0.500000 0.866025 0.000000 +0.000000 0.000000 1.638700 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.333333 0.666667 0.000000 a_A=0.750000,a_B=0.250000 +0.666667 0.333333 0.500000 a_A=0.750000,a_B=0.250000 + +0.333333 0.666667 0.125000 b_A=0.750000,b_B=0.250000 +0.666667 0.333333 0.625000 b_A=0.750000,b_B=0.250000 diff --git a/data/sqsdb/WURTZITE_B4/sqsgen.in b/data/sqsdb/WURTZITE_B4/sqsgen.in new file mode 100644 index 0000000..5273099 --- /dev/null +++ b/data/sqsdb/WURTZITE_B4/sqsgen.in @@ -0,0 +1,9 @@ +level=0 a=1 b=1 +level=1 a=0.5,0.5 b=1 +level=1 a=1 b=0.5,0.5 +level=2 a=0.75,0.25 b=1 +level=2 a=1 b=0.75,0.25 +level=3 a=0.5,0.5 b=0.5,0.5 +level=4 a=0.75,0.25 b=0.5,0.5 +level=4 a=0.5,0.5 b=0.75,0.25 +level=4 a=0.75,0.25 b=0.75,0.25 diff --git a/data/sqsdb/ZINCBLENDE_B3/equiv.in b/data/sqsdb/ZINCBLENDE_B3/equiv.in new file mode 100644 index 0000000..d4eaada --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/equiv.in @@ -0,0 +1 @@ +a=c diff --git a/data/sqsdb/ZINCBLENDE_B3/parentlat.in b/data/sqsdb/ZINCBLENDE_B3/parentlat.in new file mode 100644 index 0000000..d73379c --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/parentlat.in @@ -0,0 +1 @@ +DIAMOND_A4/sqs_lev=0_c_ diff --git a/data/sqsdb/ZINCBLENDE_B3/rndstr.skel b/data/sqsdb/ZINCBLENDE_B3/rndstr.skel new file mode 100644 index 0000000..108ad8a --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/rndstr.skel @@ -0,0 +1,9 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c + +0 0 0 a diff --git a/data/sqsdb/ZINCBLENDE_B3/rndstr.skel.sspp b/data/sqsdb/ZINCBLENDE_B3/rndstr.skel.sspp new file mode 100644 index 0000000..3647002 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/rndstr.skel.sspp @@ -0,0 +1,9 @@ +#const a=1; +{a} {a} {a} {90} {90} {90} +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +#const c="c"; +{1/4} {1/4} {1/4} {c} +#const a="a"; +{0} {0} {0} {a} diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=0_a=1_c=1/bestsqs.out b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=0_a=1_c=1/bestsqs.out new file mode 100644 index 0000000..2e14064 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=0_a=1_c=1/bestsqs.out @@ -0,0 +1,8 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 +0.250000 0.250000 0.250000 c_A +0.000000 0.000000 0.000000 a_A diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=0_a=1_c=1/rndstr.in b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=0_a=1_c=1/rndstr.in new file mode 100644 index 0000000..2c50155 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=0_a=1_c=1/rndstr.in @@ -0,0 +1,9 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=1 + +0 0 0 a_A=1 diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out new file mode 100644 index 0000000..64d8f49 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/bestcorr.out @@ -0,0 +1,31 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +Objective_function= -7.017734 diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out new file mode 100644 index 0000000..204d74c --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 1.000000 2.000000 +-1.000000 2.000000 1.000000 +-2.000000 1.000000 1.000000 +-3.000000 3.000000 3.000000 a_B +-2.500000 2.000000 2.500000 a_B +-2.500000 2.500000 2.000000 a_A +-2.000000 1.500000 1.500000 a_B +-2.000000 2.000000 2.000000 a_B +-2.000000 2.500000 2.500000 a_A +-2.500000 3.000000 2.500000 a_B +-1.500000 1.500000 2.000000 a_B +-2.500000 2.500000 3.000000 a_B +-1.500000 2.000000 1.500000 a_A +-3.000000 3.500000 3.500000 a_A +-1.000000 1.000000 1.000000 a_A +-3.000000 2.500000 2.500000 a_B +-3.500000 3.500000 3.000000 a_A +-3.500000 3.000000 3.500000 a_A +-4.000000 4.000000 4.000000 a_A +-2.750000 3.250000 3.250000 c_A +-2.250000 2.250000 2.750000 c_A +-2.250000 2.750000 2.250000 c_A +-1.750000 1.750000 1.750000 c_A +-1.750000 2.250000 2.250000 c_A +-3.750000 3.750000 3.750000 c_A +-1.250000 1.250000 1.750000 c_A +-3.250000 2.750000 3.250000 c_A +-1.250000 1.750000 1.250000 c_A +-3.250000 3.250000 2.750000 c_A +-0.750000 0.750000 0.750000 c_A +-2.750000 2.250000 2.250000 c_A +-2.750000 2.750000 2.750000 c_A +-2.250000 1.750000 2.250000 c_A +-2.250000 2.250000 1.750000 c_A +-1.750000 1.250000 1.250000 c_A diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out new file mode 100644 index 0000000..6146a68 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/clusters.out @@ -0,0 +1,206 @@ +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 2.00000 0 0 + +24 +1.87083 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 -0.00000 1.50000 0 0 + +3 +2.00000 +2 +1.00000 1.00000 1.00000 0 0 +-1.00000 1.00000 1.00000 0 0 + +4 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +4 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +12 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +12 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +24 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +8 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 -0.00000 0.50000 0 0 +-0.00000 0.50000 1.50000 0 0 + +12 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 + +12 +1.22474 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.50000 0 0 +-0.00000 0.50000 0.50000 0 0 + +24 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +24 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +-0.00000 1.00000 2.00000 0 0 + +6 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.50000 0 0 +-0.00000 1.00000 2.00000 0 0 + +12 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +6 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 -0.00000 1.50000 0 0 +-0.00000 1.00000 2.00000 0 0 + +6 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 2.00000 1.50000 0 0 +-0.00000 1.00000 2.00000 0 0 + +4 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 -0.00000 2.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +4 +1.41421 +3 +1.00000 1.00000 1.00000 0 0 +-0.00000 2.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +1 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +1 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +0.50000 1.00000 1.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +3 +1.00000 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/go b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/go new file mode 100755 index 0000000..cc09dfa --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2.0 -3=1.5 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/job.in b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/job.in new file mode 100755 index 0000000..55e05d5 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=2:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J B3_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in new file mode 100644 index 0000000..9e7658e --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/rndstr.in @@ -0,0 +1,9 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=1 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out new file mode 100644 index 0000000..bc8385c --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=0.5,0.5_c=1/rndstrgrp.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 + +0.250000 0.250000 0.250000 c_A=1.000000 diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..64d8f49 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/bestcorr.out @@ -0,0 +1,31 @@ +2 0.707107 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.224745 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.581139 0.000000 0.000000 0.000000 +2 1.732051 0.000000 0.000000 0.000000 +2 1.870829 0.000000 0.000000 0.000000 +2 2.000000 -1.000000 0.000000 -1.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.224745 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.333333 0.000000 -0.333333 +Objective_function= -7.017734 diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..284e530 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +1.000000 -0.500000 -0.500000 +0.000000 1.000000 -1.000000 +1.000000 1.500000 1.500000 +0.250000 1.250000 -0.750000 c_B +0.250000 0.750000 -0.250000 c_B +0.750000 0.250000 -0.250000 c_B +0.750000 0.750000 0.250000 c_A +0.750000 1.250000 0.750000 c_A +1.250000 1.250000 -0.750000 c_A +1.250000 1.750000 -0.250000 c_A +1.250000 2.250000 0.250000 c_B +0.750000 0.750000 -0.750000 c_A +0.750000 1.250000 -0.250000 c_A +0.750000 1.750000 0.250000 c_B +1.250000 0.750000 -0.250000 c_B +1.250000 1.250000 0.250000 c_A +1.250000 1.750000 0.750000 c_A +1.750000 1.250000 0.750000 c_B +1.750000 1.750000 0.250000 c_B +2.000000 2.000000 0.000000 a_A +2.000000 1.500000 0.500000 a_A +1.500000 1.500000 1.000000 a_A +0.500000 0.500000 0.000000 a_A +1.500000 0.500000 -0.000000 a_A +1.000000 1.000000 -1.000000 a_A +1.000000 1.500000 -0.500000 a_A +1.000000 2.000000 0.000000 a_A +1.500000 2.000000 0.500000 a_A +0.500000 1.000000 -0.500000 a_A +1.500000 1.000000 -0.500000 a_A +1.000000 0.500000 -0.500000 a_A +1.000000 1.000000 0.000000 a_A +1.000000 1.500000 0.500000 a_A +1.500000 1.000000 0.500000 a_A +1.500000 1.500000 0.000000 a_A diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..c98cd46 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/clusters.out @@ -0,0 +1,206 @@ +6 +0.70711 +2 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.75000 0 0 + +3 +1.00000 +2 +0.25000 0.25000 0.25000 0 0 +-0.75000 0.25000 0.25000 0 0 + +12 +1.22474 +2 +0.25000 0.25000 0.25000 0 0 +-0.75000 -0.25000 0.75000 0 0 + +6 +1.41421 +2 +0.25000 0.25000 0.25000 0 0 +-0.75000 0.25000 1.25000 0 0 + +12 +1.58114 +2 +0.25000 0.25000 0.25000 0 0 +-1.25000 -0.25000 0.25000 0 0 + +4 +1.73205 +2 +0.25000 0.25000 0.25000 0 0 +-0.75000 -0.75000 1.25000 0 0 + +24 +1.87083 +2 +0.25000 0.25000 0.25000 0 0 +-1.25000 1.25000 -0.25000 0 0 + +3 +2.00000 +2 +0.25000 0.25000 0.25000 0 0 +-1.75000 0.25000 0.25000 0 0 + +4 +0.70711 +3 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.75000 0 0 +-0.25000 0.25000 0.75000 0 0 + +4 +0.70711 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.75000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 + +12 +1.00000 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +-0.75000 0.25000 0.25000 0 0 + +24 +1.22474 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +-0.75000 -0.25000 0.75000 0 0 + +12 +1.22474 +3 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.75000 0 0 +-0.75000 -0.25000 0.75000 0 0 + +12 +1.22474 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.75000 0.25000 0 0 +-0.75000 -0.25000 0.75000 0 0 + +24 +1.22474 +3 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.75000 0.25000 0 0 +-0.75000 -0.25000 0.75000 0 0 + +8 +1.22474 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.75000 -0.25000 0 0 +-0.75000 -0.25000 0.75000 0 0 + +12 +1.22474 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +-0.75000 -0.25000 -0.25000 0 0 + +12 +1.22474 +3 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 -0.25000 0 0 +-0.75000 -0.25000 -0.25000 0 0 + +6 +1.41421 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +-0.75000 0.25000 1.25000 0 0 + +24 +1.41421 +3 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.75000 0 0 +-0.75000 0.25000 1.25000 0 0 + +24 +1.41421 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.75000 0.25000 0 0 +-0.75000 0.25000 1.25000 0 0 + +12 +1.41421 +3 +0.25000 0.25000 0.25000 0 0 +-0.75000 0.25000 0.25000 0 0 +-0.75000 0.25000 1.25000 0 0 + +6 +1.41421 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.75000 0.75000 0 0 +-0.75000 0.25000 1.25000 0 0 + +6 +1.41421 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 1.25000 0.75000 0 0 +-0.75000 0.25000 1.25000 0 0 + +4 +1.41421 +3 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.75000 1.25000 0 0 +-0.75000 0.25000 1.25000 0 0 + +4 +1.41421 +3 +0.25000 0.25000 0.25000 0 0 +-0.75000 1.25000 0.25000 0 0 +-0.75000 0.25000 1.25000 0 0 + +1 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.25000 0 0 +0.25000 -0.25000 0.75000 0 0 +-0.25000 0.25000 0.75000 0 0 + +1 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 + +12 +1.00000 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.75000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +-0.75000 0.25000 0.25000 0 0 + +3 +1.00000 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 -0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +-0.75000 0.25000 0.25000 0 0 + diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/go b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/go new file mode 100755 index 0000000..cc09dfa --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2.0 -3=1.5 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/job.in b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/job.in new file mode 100755 index 0000000..55e05d5 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=2:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J B3_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..f27116f --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/rndstr.in @@ -0,0 +1,9 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=0.5,c_B=0.5 + +0 0 0 a_A=1 diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..d0220b0 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=1_a=1_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.250000 0.250000 0.250000 c_A=0.500000,c_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..a635d2a --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestcorr.out @@ -0,0 +1,58 @@ +2 0.433013 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.829156 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.089725 0.083333 0.000000 0.083333 +2 1.224745 -0.166667 0.000000 -0.166667 +2 1.224745 -0.166667 0.000000 -0.166667 +2 1.299038 -0.250000 0.000000 -0.250000 +2 1.299038 0.000000 0.000000 0.000000 +2 1.414214 0.166667 0.000000 0.166667 +2 1.414214 0.166667 0.000000 0.166667 +2 1.479020 0.000000 0.000000 0.000000 +2 1.581139 -0.166667 0.000000 -0.166667 +2 1.581139 -0.166667 0.000000 -0.166667 +2 1.639360 -0.083333 0.000000 -0.083333 +2 1.732051 0.500000 0.000000 0.500000 +2 1.732051 0.500000 0.000000 0.500000 +2 1.785357 -0.166667 0.000000 -0.166667 +2 1.785357 0.083333 0.000000 0.083333 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.250000 0.000000 0.250000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 -0.250000 0.000000 -0.250000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.829156 0.083333 0.000000 0.083333 +4 0.829156 -0.083333 0.000000 -0.083333 +4 0.829156 0.166667 0.000000 0.166667 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.250000 0.000000 0.250000 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.083333 0.000000 0.083333 +4 0.829156 0.083333 0.000000 0.083333 +4 0.829156 -0.083333 0.000000 -0.083333 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 -0.250000 0.000000 -0.250000 +4 0.829156 -0.083333 0.000000 -0.083333 +4 0.829156 0.083333 0.000000 0.083333 +Objective_function= -55.848981 diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..4061e6a --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-1.000000 -1.000000 1.000000 +-1.000000 1.000000 -1.000000 +0.000000 -1.000000 -1.000000 +-1.250000 -0.750000 -0.250000 c_B +-1.250000 -1.250000 -0.750000 c_A +-0.750000 -0.750000 0.250000 c_A +-0.750000 -1.250000 -0.250000 c_B +-1.250000 -0.250000 -0.750000 c_B +-1.250000 -0.750000 -1.250000 c_B +-0.750000 -0.250000 -0.250000 c_A +-0.750000 -0.750000 -0.750000 c_A +-1.250000 0.250000 -1.250000 c_B +-1.250000 -0.250000 -1.750000 c_A +-0.750000 0.250000 -0.750000 c_A +-0.750000 -0.250000 -1.250000 c_B +-1.250000 -1.250000 0.250000 c_A +-1.250000 -1.750000 -0.250000 c_A +-1.750000 -0.250000 -0.250000 c_B +-1.750000 -0.750000 -0.750000 c_B +-1.500000 -1.000000 -0.500000 a_A +-1.500000 -0.500000 0.000000 a_B +-1.000000 -1.000000 0.000000 a_B +-1.000000 -1.500000 -0.500000 a_B +-1.500000 -0.500000 -1.000000 a_B +-1.500000 0.000000 -0.500000 a_B +-1.000000 -0.500000 -0.500000 a_A +-1.000000 -1.000000 -1.000000 a_B +-0.500000 -1.000000 -0.500000 a_A +-0.500000 -0.500000 0.000000 a_B +-1.000000 0.000000 -1.000000 a_A +-1.000000 -0.500000 -1.500000 a_A +-0.500000 -0.500000 -1.000000 a_A +-0.500000 0.000000 -0.500000 a_A +-2.000000 -0.500000 -0.500000 a_A +-2.000000 -1.000000 -1.000000 a_B diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out new file mode 100644 index 0000000..187e001 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/clusters.out @@ -0,0 +1,398 @@ +4 +0.43301 +2 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 + +6 +0.70711 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 + +6 +0.70711 +2 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +0.82916 +2 +0.25000 0.25000 0.25000 0 0 +0.50000 0.00000 -0.50000 0 0 + +3 +1.00000 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +3 +1.00000 +2 +0.25000 0.25000 0.25000 0 0 +-0.75000 0.25000 0.25000 0 0 + +12 +1.08972 +2 +0.25000 0.25000 0.25000 0 0 +-0.50000 -0.50000 0.00000 0 0 + +12 +1.22474 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 0.50000 1.50000 0 0 + +12 +1.22474 +2 +0.25000 0.25000 0.25000 0 0 +-0.75000 -0.25000 0.75000 0 0 + +4 +1.29904 +2 +0.25000 0.25000 0.25000 0 0 +1.00000 -0.50000 -0.50000 0 0 + +12 +1.29904 +2 +0.25000 0.25000 0.25000 0 0 +-1.00000 0.00000 0.00000 0 0 + +6 +1.41421 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 1.00000 2.00000 0 0 + +6 +1.41421 +2 +0.25000 0.25000 0.25000 0 0 +-0.75000 0.25000 1.25000 0 0 + +24 +1.47902 +2 +0.25000 0.25000 0.25000 0 0 +1.00000 -1.00000 0.00000 0 0 + +12 +1.58114 +2 +1.00000 1.00000 1.00000 0 0 +-0.50000 0.50000 1.00000 0 0 + +12 +1.58114 +2 +0.25000 0.25000 0.25000 0 0 +-1.25000 -0.25000 0.25000 0 0 + +12 +1.63936 +2 +0.25000 0.25000 0.25000 0 0 +-1.00000 -0.50000 -0.50000 0 0 + +4 +1.73205 +2 +1.00000 1.00000 1.00000 0 0 +-0.00000 -0.00000 2.00000 0 0 + +4 +1.73205 +2 +0.25000 0.25000 0.25000 0 0 +-0.75000 -0.75000 1.25000 0 0 + +12 +1.78536 +2 +1.00000 1.00000 1.00000 0 0 +-0.75000 1.25000 1.25000 0 0 + +12 +1.78536 +2 +1.00000 1.00000 1.00000 0 0 +-0.25000 0.75000 2.25000 0 0 + +6 +0.70711 +3 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.25000 0.25000 0.75000 0 0 + +4 +0.70711 +3 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.75000 0 0 +-0.25000 0.25000 0.75000 0 0 + +4 +0.70711 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.75000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 + +6 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 0.50000 1.00000 0 0 + +4 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +4 +0.70711 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 1.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +24 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 +0.50000 0.00000 -0.50000 0 0 + +6 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +0.75000 -0.25000 0.25000 0 0 +0.50000 0.00000 -0.50000 0 0 + +12 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +0.25000 0.75000 -0.25000 0 0 +0.50000 0.00000 -0.50000 0 0 + +24 +0.82916 +3 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 1.25000 1.25000 0 0 + +12 +0.82916 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 + +6 +0.82916 +3 +1.00000 1.00000 1.00000 0 0 +1.00000 1.50000 1.50000 0 0 +0.25000 1.25000 1.25000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.00000 +3 +1.00000 1.00000 1.00000 0 0 +0.50000 0.50000 1.00000 0 0 +-0.00000 1.00000 1.00000 0 0 + +12 +1.00000 +3 +0.25000 0.25000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.75000 0.25000 0.25000 0 0 + +12 +1.00000 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +-0.75000 0.25000 0.25000 0 0 + +1 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.25000 0 0 +0.25000 -0.25000 0.75000 0 0 +-0.25000 0.25000 0.75000 0 0 + +4 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.25000 0.75000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 + +1 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 + +1 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 0.50000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +4 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 1.00000 1.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +1 +0.70711 +4 +1.00000 1.00000 1.00000 0 0 +1.00000 0.50000 1.50000 0 0 +0.50000 1.00000 1.50000 0 0 +0.50000 0.50000 1.00000 0 0 + +12 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +0.50000 0.50000 0.00000 0 0 +0.50000 0.00000 -0.50000 0 0 + +24 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 +0.75000 -0.25000 0.25000 0 0 +0.50000 0.00000 -0.50000 0 0 + +12 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 +0.25000 0.75000 -0.25000 0 0 +0.50000 0.00000 -0.50000 0 0 + +24 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +0.25000 0.75000 -0.25000 0 0 +0.50000 0.00000 -0.50000 0 0 + +4 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 -0.25000 0 0 +0.25000 0.75000 -0.25000 0 0 +0.50000 0.00000 -0.50000 0 0 + +12 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 +0.25000 -0.25000 -0.25000 0 0 +0.50000 0.00000 -0.50000 0 0 + +24 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +0.25000 -0.25000 -0.25000 0 0 +0.50000 0.00000 -0.50000 0 0 + +12 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 +1.00000 0.00000 0.00000 0 0 +0.50000 0.00000 -0.50000 0 0 + +12 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.00000 0 0 +0.00000 0.50000 -0.50000 0 0 +0.50000 0.00000 -0.50000 0 0 + +12 +0.82916 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 1.25000 1.25000 0 0 + +12 +0.82916 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 + +4 +0.82916 +4 +1.00000 1.00000 1.00000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 1.25000 1.25000 0 0 + +12 +0.82916 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 1.25000 1.75000 0 0 +0.25000 1.25000 1.25000 0 0 + +12 +0.82916 +4 +1.00000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 1.25000 0 0 + diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go new file mode 100755 index 0000000..0d3859e --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.8 -3=1 -4=0.9 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in new file mode 100755 index 0000000..9b2b3ea --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/job.in @@ -0,0 +1,10 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH -J B3_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in new file mode 100644 index 0000000..f178a5c --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstr.in @@ -0,0 +1,9 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.25 0.25 0.25 c_A=0.5,c_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..3464890 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/rndstrgrp.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.250000 0.250000 0.250000 c_A=0.500000,c_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..7831d53 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsdb_lev=2_a=0.5,0.5_c=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 5 1 2 diff --git a/data/sqsdb/ZINCBLENDE_B3/sqsgen.in b/data/sqsdb/ZINCBLENDE_B3/sqsgen.in new file mode 100644 index 0000000..46d1288 --- /dev/null +++ b/data/sqsdb/ZINCBLENDE_B3/sqsgen.in @@ -0,0 +1,4 @@ +level=0 a=1 c=1 +level=1 a=0.5,0.5 c=1 +level=1 a=1 c=0.5,0.5 +level=2 a=0.5,0.5 c=0.5,0.5 diff --git a/data/sqsdb/ZINTL_B32/rndstr.skel b/data/sqsdb/ZINTL_B32/rndstr.skel new file mode 100644 index 0000000..eb2fe1a --- /dev/null +++ b/data/sqsdb/ZINTL_B32/rndstr.skel @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.5 0.5 0.5 b +0.25 0.75 0.25 b + +0 0 0 a +0.75 0.25 0.75 a diff --git a/data/sqsdb/ZINTL_B32/rndstr.skel.sspp b/data/sqsdb/ZINTL_B32/rndstr.skel.sspp new file mode 100644 index 0000000..cf51248 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/rndstr.skel.sspp @@ -0,0 +1,11 @@ +#const a=1; +{a} {a} {a} {90} {90} {90} +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +#const b="b"; +{1/2} {1/2} {1/2} {b} +{1/4} {3/4} {1/4} {b} +#const a="a"; +{0} {0} {0} {a} +{3/4} {1/4} {3/4} {a} diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=0_a=1_b=1/bestsqs.out b/data/sqsdb/ZINTL_B32/sqsdb_lev=0_a=1_b=1/bestsqs.out new file mode 100644 index 0000000..edf3eb0 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=0_a=1_b=1/bestsqs.out @@ -0,0 +1,10 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 +0.500000 0.500000 0.500000 b_A +0.250000 0.750000 0.250000 b_A +0.000000 0.000000 0.000000 a_A +0.750000 0.250000 0.750000 a_A diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=0_a=1_b=1/rndstr.in b/data/sqsdb/ZINTL_B32/sqsdb_lev=0_a=1_b=1/rndstr.in new file mode 100644 index 0000000..5e75a85 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=0_a=1_b=1/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.5 0.5 0.5 b_A=1 +0.25 0.75 0.25 b_A=1 + +0 0 0 a_A=1 +0.75 0.25 0.75 a_A=1 diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out new file mode 100644 index 0000000..5026b68 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/bestcorr.out @@ -0,0 +1,23 @@ +2 0.433013 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.829156 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.089725 -0.166667 0.000000 -0.166667 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.250000 0.000000 0.250000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.829156 -0.083333 0.000000 -0.083333 +4 0.829156 -0.083333 0.000000 -0.083333 +4 0.829156 0.333333 0.000000 0.333333 +4 0.829156 -0.166667 0.000000 -0.166667 +4 0.829156 0.250000 0.000000 0.250000 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.083333 0.000000 0.083333 +4 0.829156 0.000000 0.000000 0.000000 +Objective_function= -13.995696 diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out new file mode 100644 index 0000000..8843337 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +-0.500000 -0.000000 1.500000 +0.000000 -0.500000 1.500000 +1.500000 1.500000 -1.000000 +0.000000 0.000000 2.000000 a_A +0.000000 0.000000 1.000000 a_B +0.500000 0.500000 2.000000 a_A +1.000000 1.000000 2.000000 a_B +0.500000 0.500000 1.000000 a_B +0.500000 0.500000 -0.000000 a_A +1.000000 1.000000 1.000000 a_A +1.000000 1.000000 -0.000000 a_A +-0.250000 -0.250000 2.250000 a_A +1.250000 1.250000 0.250000 a_B +0.250000 0.250000 2.250000 a_A +1.250000 1.250000 -0.750000 a_B +0.250000 0.250000 1.250000 a_B +0.250000 0.250000 0.250000 a_B +0.750000 0.750000 1.250000 a_B +0.750000 0.750000 0.250000 a_A +1.000000 1.000000 -0.500000 b_A +0.500000 0.500000 1.500000 b_A +0.000000 -0.000000 0.500000 b_A +0.500000 0.500000 0.500000 b_A +1.000000 1.000000 1.500000 b_A +1.000000 1.000000 0.500000 b_A +0.000000 0.000000 2.500000 b_A +0.000000 0.000000 1.500000 b_A +0.750000 0.750000 0.750000 b_A +0.750000 0.750000 -0.250000 b_A +-0.250000 -0.250000 1.750000 b_A +0.250000 0.250000 1.750000 b_A +1.250000 1.250000 -0.250000 b_A +0.750000 0.750000 1.750000 b_A +0.250000 0.250000 0.750000 b_A +-0.250000 -0.250000 2.750000 b_A diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out new file mode 100644 index 0000000..50784ec --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/clusters.out @@ -0,0 +1,160 @@ +4 +0.43301 +2 +1.00000 1.00000 1.00000 0 0 +1.25000 1.25000 1.25000 0 0 + +12 +0.70711 +2 +0.25000 0.25000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +12 +0.82916 +2 +0.25000 0.25000 0.25000 0 0 +0.00000 -0.50000 0.50000 0 0 + +6 +1.00000 +2 +0.25000 0.25000 0.25000 0 0 +-0.75000 0.25000 0.25000 0 0 + +12 +1.08972 +2 +0.25000 0.25000 0.25000 0 0 +-0.50000 -0.50000 0.00000 0 0 + +12 +0.70711 +3 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +0.70711 +3 +0.25000 0.25000 0.25000 0 0 +0.75000 0.75000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +0.70711 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +48 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 -0.50000 0.50000 0 0 + +12 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.00000 -0.50000 0.50000 0 0 + +24 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +0.75000 -0.25000 0.25000 0 0 +0.00000 -0.50000 0.50000 0 0 + +2 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +0.75000 0.25000 0.75000 0 0 +0.75000 0.75000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +2 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.75000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +24 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 -0.50000 0.50000 0 0 + +48 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.00000 -0.50000 0.50000 0 0 + +12 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +0.25000 -0.25000 0.75000 0 0 +0.00000 -0.50000 0.50000 0 0 + +24 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.25000 -0.25000 0.75000 0 0 +0.00000 -0.50000 0.50000 0 0 + +24 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 -0.00000 0.50000 0 0 +0.75000 -0.25000 0.25000 0 0 +0.00000 -0.50000 0.50000 0 0 + +8 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 -0.25000 0 0 +0.75000 -0.25000 0.25000 0 0 +0.00000 -0.50000 0.50000 0 0 + +24 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +0.50000 -0.50000 0.00000 0 0 +0.00000 -0.50000 0.50000 0 0 + +24 +0.82916 +4 +0.25000 0.25000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.50000 -0.00000 0.50000 0 0 +0.00000 -0.50000 0.50000 0 0 + diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/go b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/go new file mode 100755 index 0000000..2bc4097 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.2 -3=0.9 -4=0.9 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/job.in b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/job.in new file mode 100755 index 0000000..6b51d43 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J B32_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in new file mode 100644 index 0000000..09ba766 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.5 0.5 0.5 b_A=1 +0.25 0.75 0.25 b_A=1 + +0 0 0 a_A=0.5,a_B=0.5 +0.75 0.25 0.75 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out new file mode 100644 index 0000000..72af77a --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 +0.750000 1.250000 0.750000 a_A=0.500000,a_B=0.500000 + +0.500000 0.500000 0.500000 b_A=1.000000 +0.250000 0.750000 0.250000 b_A=1.000000 diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/sqsparam.in b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/sqsparam.in new file mode 100644 index 0000000..edaa0e6 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=0.5,0.5_b=1/sqsparam.in @@ -0,0 +1 @@ +1 2 0 2 diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..0b95c5b --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/bestcorr.out @@ -0,0 +1,23 @@ +2 0.433013 0.000000 0.000000 0.000000 +2 0.707107 -0.166667 0.000000 -0.166667 +2 0.829156 0.000000 0.000000 0.000000 +2 1.000000 0.166667 0.000000 0.166667 +2 1.089725 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.000000 0.000000 0.000000 +4 0.829156 0.000000 0.000000 0.000000 +Objective_function= Perfect_match diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..c4fb393 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 -0.500000 0.000000 +-1.000000 -1.000000 0.000000 +-0.000000 0.000000 -2.000000 +-0.000000 -0.500000 -2.000000 b_A +-0.500000 -1.500000 -1.500000 b_B +-0.000000 -0.500000 -1.000000 b_A +-0.500000 -1.500000 -0.500000 b_B +-0.500000 -1.000000 -2.000000 b_A +-0.000000 -1.000000 -1.500000 b_B +-0.500000 -1.000000 -1.000000 b_A +-0.000000 -1.000000 -0.500000 b_B +-0.250000 -1.250000 -0.250000 b_B +-0.250000 -0.750000 -1.750000 b_B +-0.250000 -1.250000 -1.250000 b_A +-0.250000 -0.750000 -0.750000 b_B +0.250000 -0.750000 -0.250000 b_A +-0.750000 -1.250000 -1.750000 b_A +0.250000 -0.750000 -1.250000 b_B +-0.750000 -1.250000 -0.750000 b_A +-0.500000 -1.000000 -0.500000 a_A +-0.000000 -1.000000 -2.000000 a_A +-0.500000 -1.000000 -1.500000 a_A +0.000000 -1.000000 -1.000000 a_A +0.000000 -0.500000 -0.500000 a_A +-0.500000 -1.500000 -2.000000 a_A +0.000000 -0.500000 -1.500000 a_A +-0.500000 -1.500000 -1.000000 a_A +0.250000 -0.750000 -1.750000 a_A +-0.750000 -1.250000 -1.250000 a_A +0.250000 -0.750000 -0.750000 a_A +-0.750000 -1.250000 -0.250000 a_A +-0.250000 -1.250000 -1.750000 a_A +-0.250000 -0.750000 -1.250000 a_A +-0.250000 -1.250000 -0.750000 a_A +-0.250000 -0.750000 -0.250000 a_A diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..c6762ee --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/clusters.out @@ -0,0 +1,160 @@ +4 +0.43301 +2 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 + +12 +0.70711 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +12 +0.82916 +2 +0.50000 0.50000 0.50000 0 0 +-0.25000 0.25000 0.25000 0 0 + +6 +1.00000 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 + +12 +1.08972 +2 +0.50000 0.50000 0.50000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +12 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +48 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.25000 0.25000 0.25000 0 0 + +12 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.00000 0 0 +-0.25000 0.25000 0.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 1.25000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.75000 0.25000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.25000 0.25000 0.25000 0 0 + +48 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.75000 0.25000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.25000 0.25000 0.25000 0 0 + +8 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.25000 0.25000 0.25000 0 0 + +12 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.75000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +0.25000 -0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +0.82916 +4 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 +-0.25000 0.25000 0.25000 0 0 + diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/go b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/go new file mode 100755 index 0000000..2bc4097 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.2 -3=0.9 -4=0.9 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/job.in b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/job.in new file mode 100755 index 0000000..6b51d43 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J B32_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..2fc31b3 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.5 0.5 0.5 b_A=0.5,b_B=0.5 +0.25 0.75 0.25 b_A=0.5,b_B=0.5 + +0 0 0 a_A=1 +0.75 0.25 0.75 a_A=1 diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..14ed5db --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.500000 0.500000 0.500000 b_A=0.500000,b_B=0.500000 +0.250000 -0.250000 0.250000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=1.000000 +0.750000 0.250000 0.750000 a_A=1.000000 diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/sqsparam.in b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..02d74b3 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=1_a=1_b=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 10 1 5 diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestcorr.out b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..cc98c6b --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestcorr.out @@ -0,0 +1,64 @@ +2 0.433013 0.000000 0.000000 0.000000 +2 0.433013 0.000000 0.000000 0.000000 +2 0.433013 0.000000 0.000000 0.000000 +2 0.500000 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.829156 0.000000 0.000000 0.000000 +2 0.829156 0.000000 0.000000 0.000000 +2 0.829156 0.000000 0.000000 0.000000 +2 0.866025 -0.500000 0.000000 -0.500000 +2 0.866025 0.500000 0.000000 0.500000 +2 1.000000 -0.666667 0.000000 -0.666667 +2 1.000000 -0.666667 0.000000 -0.666667 +3 0.500000 0.000000 0.000000 0.000000 +3 0.500000 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +3 0.829156 0.000000 0.000000 0.000000 +4 0.500000 0.000000 0.000000 0.000000 +4 0.707107 0.166667 0.000000 0.166667 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 -1.000000 0.000000 -1.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 -0.500000 0.000000 -0.500000 +4 0.707107 -1.000000 0.000000 -1.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.500000 0.000000 0.500000 +4 0.707107 -1.000000 0.000000 -1.000000 +4 0.707107 -0.166667 0.000000 -0.166667 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 0.500000 0.000000 0.500000 +4 0.707107 -1.000000 0.000000 -1.000000 +4 0.707107 0.000000 0.000000 0.000000 +4 0.707107 -0.500000 0.000000 -0.500000 +4 0.707107 -1.000000 0.000000 -1.000000 +Objective_function= -184.956390 diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestsqs.out b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..a18e1a5 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/bestsqs.out @@ -0,0 +1,38 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.500000 1.000000 -0.500000 +0.500000 -1.000000 -0.500000 +-1.000000 0.000000 -1.000000 +-0.000000 -0.000000 -0.500000 b_B +-0.500000 -0.500000 -1.500000 b_A +-0.500000 -0.000000 -1.000000 b_B +-0.000000 -0.500000 -1.000000 b_A +0.500000 0.000000 -1.000000 b_A +-0.500000 0.500000 -1.500000 b_B +-0.000000 -0.000000 -1.500000 b_A +-0.000000 0.500000 -1.000000 b_B +0.250000 0.250000 -1.250000 b_A +0.250000 0.750000 -0.750000 b_A +-0.250000 0.250000 -1.750000 b_B +-0.250000 0.750000 -1.250000 b_B +-0.250000 0.250000 -0.750000 b_A +0.250000 -0.250000 -0.750000 b_A +-0.750000 0.250000 -1.250000 b_B +-0.250000 -0.250000 -1.250000 b_B +-0.000000 0.500000 -1.500000 a_A +0.500000 0.000000 -1.500000 a_B +0.500000 0.500000 -1.000000 a_A +0.000000 0.000000 -2.000000 a_B +0.000000 -0.500000 -1.500000 a_B +-0.000000 0.000000 -1.000000 a_A +0.500000 -0.500000 -1.000000 a_B +-0.500000 0.000000 -1.500000 a_A +-0.750000 -0.250000 -1.250000 a_B +-0.250000 -0.750000 -1.250000 a_A +-0.250000 -0.250000 -0.750000 a_A +0.250000 -0.750000 -0.750000 a_B +-0.250000 -0.250000 -1.750000 a_B +-0.250000 0.250000 -1.250000 a_A +0.250000 -0.250000 -1.250000 a_A +0.250000 0.250000 -0.750000 a_B diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/clusters.out b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/clusters.out new file mode 100644 index 0000000..a1acc77 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/clusters.out @@ -0,0 +1,448 @@ +4 +0.43301 +2 +1.00000 1.00000 1.00000 0 0 +1.25000 1.25000 1.25000 0 0 + +8 +0.43301 +2 +0.50000 0.50000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 + +4 +0.43301 +2 +0.50000 0.50000 0.50000 0 0 +0.75000 0.25000 0.25000 0 0 + +12 +0.50000 +2 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 0.75000 0 0 + +12 +0.70711 +2 +0.25000 0.25000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +12 +0.70711 +2 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +12 +0.82916 +2 +0.25000 0.25000 0.25000 0 0 +0.00000 -0.50000 0.50000 0 0 + +24 +0.82916 +2 +0.25000 0.25000 0.25000 0 0 +-0.00000 -0.50000 0.00000 0 0 + +12 +0.82916 +2 +0.50000 0.50000 0.50000 0 0 +-0.25000 0.25000 0.25000 0 0 + +8 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 -0.25000 0 0 + +8 +0.86603 +2 +0.25000 0.25000 0.25000 0 0 +-0.25000 -0.25000 0.75000 0 0 + +6 +1.00000 +2 +0.25000 0.25000 0.25000 0 0 +-0.75000 0.25000 0.25000 0 0 + +6 +1.00000 +2 +0.75000 0.75000 0.75000 0 0 +-0.25000 0.75000 0.75000 0 0 + +24 +0.50000 +3 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 + +24 +0.50000 +3 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 0.50000 0 0 +0.75000 1.25000 0.75000 0 0 + +12 +0.70711 +3 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 + +12 +0.70711 +3 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 + +24 +0.70711 +3 +0.25000 0.25000 0.25000 0 0 +0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +0.70711 +3 +0.25000 0.25000 0.25000 0 0 +0.75000 0.75000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +0.70711 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +12 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.25000 0.75000 1.25000 0 0 + +12 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +3 +0.75000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +48 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +0.00000 -0.50000 0.50000 0 0 + +24 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +0.00000 -0.50000 0.50000 0 0 + +48 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +0.00000 -0.50000 0.50000 0 0 + +12 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.00000 -0.50000 0.50000 0 0 + +24 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +0.75000 -0.25000 0.25000 0 0 +0.00000 -0.50000 0.50000 0 0 + +24 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +0.00000 0.00000 0.00000 0 0 +-0.00000 -0.50000 0.00000 0 0 + +48 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +-0.00000 -0.00000 0.50000 0 0 +-0.00000 -0.50000 0.00000 0 0 + +48 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 +-0.00000 -0.50000 0.00000 0 0 + +24 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +0.25000 -0.25000 0.75000 0 0 +-0.00000 -0.50000 0.00000 0 0 + +12 +0.82916 +3 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 -0.25000 0 0 +-0.00000 -0.50000 0.00000 0 0 + +48 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 +0.75000 1.25000 0.75000 0 0 + +24 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 0.75000 0 0 + +24 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 1.00000 0.50000 0 0 +0.75000 1.25000 0.75000 0 0 + +12 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +1.00000 0.50000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 + +48 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 1.00000 0 0 +-0.25000 0.25000 0.25000 0 0 + +12 +0.82916 +3 +0.50000 0.50000 0.50000 0 0 +0.50000 -0.00000 0.00000 0 0 +-0.25000 0.25000 0.25000 0 0 + +24 +0.50000 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 0.50000 0 0 +0.50000 1.00000 1.00000 0 0 +0.75000 1.25000 0.75000 0 0 + +12 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.50000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.25000 0.75000 0.75000 0 0 + +24 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +24 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.50000 0 0 +0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +12 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 0.75000 0.25000 0 0 +0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +0.50000 0.50000 0.50000 0 0 +0.75000 0.75000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 0.75000 0.25000 0 0 +0.75000 0.75000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +2 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +0.75000 0.25000 0.75000 0 0 +0.75000 0.75000 0.25000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +-0.00000 0.50000 0.50000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +8 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +0.25000 0.25000 0.75000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +2 +0.70711 +4 +0.25000 0.25000 0.25000 0 0 +-0.25000 0.75000 0.25000 0 0 +-0.25000 0.25000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 + +12 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.50000 1.00000 1.00000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +24 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.75000 0.75000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 0.75000 1.25000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.25000 0.75000 0 0 +0.75000 0.25000 1.25000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.50000 1.00000 1.00000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +8 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.25000 0.75000 0.75000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + +2 +0.70711 +4 +0.75000 0.75000 0.75000 0 0 +0.75000 1.25000 1.25000 0 0 +0.25000 1.25000 0.75000 0 0 +0.25000 0.75000 1.25000 0 0 + diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/go b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/go new file mode 100755 index 0000000..dbdca63 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1 -3=0.83 -4=0.8 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/job.in b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/job.in new file mode 100755 index 0000000..d755506 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J B32_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=32 -ip=$id & +done +wait diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstr.in b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstr.in new file mode 100644 index 0000000..38a70b8 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstr.in @@ -0,0 +1,11 @@ + +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + +0.5 0.5 0.5 b_A=0.5,b_B=0.5 +0.25 0.75 0.25 b_A=0.5,b_B=0.5 + +0 0 0 a_A=0.5,a_B=0.5 +0.75 0.25 0.75 a_A=0.5,a_B=0.5 diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..22928f9 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/rndstrgrp.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 +0.000000 0.500000 0.500000 +0.500000 0.000000 0.500000 +0.500000 0.500000 0.000000 + +0.500000 0.500000 0.500000 b_A=0.500000,b_B=0.500000 +0.250000 -0.250000 0.250000 b_A=0.500000,b_B=0.500000 + +0.000000 0.000000 0.000000 a_A=0.500000,a_B=0.500000 +0.750000 0.250000 0.750000 a_A=0.500000,a_B=0.500000 diff --git a/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/sqsparam.in b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..02d74b3 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsdb_lev=2_a=0.5,0.5_b=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +1 10 1 5 diff --git a/data/sqsdb/ZINTL_B32/sqsgen.in b/data/sqsdb/ZINTL_B32/sqsgen.in new file mode 100644 index 0000000..08cd589 --- /dev/null +++ b/data/sqsdb/ZINTL_B32/sqsgen.in @@ -0,0 +1,4 @@ +level=0 a=1 b=1 +level=1 a=0.5,0.5 b=1 +level=1 a=1 b=0.5,0.5 +level=2 a=0.5,0.5 b=0.5,0.5 diff --git a/data/sqsdb/ZIRCONIA_TET/notes.txt b/data/sqsdb/ZIRCONIA_TET/notes.txt new file mode 100644 index 0000000..a67fefd --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/notes.txt @@ -0,0 +1,3 @@ +Set z=1/4. Assume touching spheres of identical atoms. + (c/2)^2 = (a/2)^2 + (c/4)^2 + c/a = sqrt(4/3) diff --git a/data/sqsdb/ZIRCONIA_TET/rndstr.skel b/data/sqsdb/ZIRCONIA_TET/rndstr.skel new file mode 100644 index 0000000..1025bc0 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/rndstr.skel @@ -0,0 +1,13 @@ + +1 1 1.1547 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0 0.5 0.25 d +0 0.5 0.75 d +0.5 0 0.25 d +0.5 0 -0.25 d + +0 0 0.5 b +0.5 0.5 0 b diff --git a/data/sqsdb/ZIRCONIA_TET/rndstr.skel.sspp b/data/sqsdb/ZIRCONIA_TET/rndstr.skel.sspp new file mode 100644 index 0000000..fb0e070 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/rndstr.skel.sspp @@ -0,0 +1,13 @@ +#const a=1; c=1.1547; +{a} {a} {c} {90} {90} {90} +1 0 0 +0 1 0 +0 0 1 +#const z=1/4; d="d"; +{0} {1/2} {z} {d} +{0} {1/2} {z+1/2} {d} +{1/2} {0} {-z+1/2} {d} +{1/2} {0} {-z} {d} +#const b="b"; +{0} {0} {1/2} {b} +{1/2} {1/2} {0} {b} diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=0_b=1_d=1/bestsqs.out b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=0_b=1_d=1/bestsqs.out new file mode 100644 index 0000000..1d7873c --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=0_b=1_d=1/bestsqs.out @@ -0,0 +1,12 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.154700 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +-0.000000 -0.000000 1.000000 +-0.000000 0.500000 0.250000 d_A +0.000000 0.500000 0.750000 d_A +0.500000 -0.000000 0.250000 d_A +0.500000 0.000000 -0.250000 d_A +-0.000000 -0.000000 0.500000 b_A +0.500000 0.500000 0.000000 b_A diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=0_b=1_d=1/rndstr.in b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=0_b=1_d=1/rndstr.in new file mode 100644 index 0000000..4237866 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=0_b=1_d=1/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1.1547 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0 0.5 0.25 d_A=1 +0 0.5 0.75 d_A=1 +0.5 0 0.25 d_A=1 +0.5 0 -0.25 d_A=1 + +0 0 0.5 b_A=1 +0.5 0.5 0 b_A=1 diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/bestcorr.out b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/bestcorr.out new file mode 100644 index 0000000..e7aa5e5 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/bestcorr.out @@ -0,0 +1,19 @@ +2 0.912871 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.154700 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +2 1.527525 0.000000 0.000000 0.000000 +2 1.683251 0.000000 0.000000 0.000000 +2 1.825742 0.000000 0.000000 0.000000 +2 1.870828 0.000000 0.000000 0.000000 +2 2.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.154700 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +3 1.414214 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.154700 0.000000 0.000000 0.000000 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 0.000000 0.000000 0.000000 +4 1.414214 -1.000000 0.000000 -1.000000 +Objective_function= -7.198369 diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/bestsqs.out b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/bestsqs.out new file mode 100644 index 0000000..6c4eb38 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.154700 +0.000000 -1.000000 -1.000000 +2.000000 0.000000 0.000000 +-0.000000 -2.000000 2.000000 +2.000000 -1.000000 -0.500000 b_A +1.000000 -1.000000 -0.500000 b_A +2.000000 -2.000000 1.500000 b_A +1.000000 -2.000000 1.500000 b_B +2.000000 -2.000000 0.500000 b_B +1.000000 -2.000000 0.500000 b_B +2.000000 -1.000000 0.500000 b_B +1.000000 -1.000000 0.500000 b_A +0.500000 -0.500000 0.000000 b_B +1.500000 -0.500000 0.000000 b_A +0.500000 -2.500000 1.000000 b_B +1.500000 -2.500000 1.000000 b_B +0.500000 -1.500000 1.000000 b_A +1.500000 -1.500000 1.000000 b_B +0.500000 -1.500000 0.000000 b_A +1.500000 -1.500000 0.000000 b_A +2.000000 -0.500000 0.250000 d_A +1.000000 -0.500000 0.250000 d_A +2.000000 -2.500000 1.250000 d_A +1.000000 -2.500000 1.250000 d_A +2.000000 -1.500000 1.250000 d_A +1.000000 -1.500000 1.250000 d_A +2.000000 -1.500000 0.250000 d_A +1.000000 -1.500000 0.250000 d_A +2.000000 -1.500000 -0.250000 d_A +1.000000 -1.500000 -0.250000 d_A +2.000000 -0.500000 -0.250000 d_A +1.000000 -0.500000 -0.250000 d_A +2.000000 -2.500000 0.750000 d_A +1.000000 -2.500000 0.750000 d_A +2.000000 -1.500000 0.750000 d_A +1.000000 -1.500000 0.750000 d_A +0.500000 -1.000000 0.250000 d_A +1.500000 -1.000000 0.250000 d_A +0.500000 -1.000000 -0.750000 d_A +1.500000 -1.000000 -0.750000 d_A +0.500000 -2.000000 1.250000 d_A +1.500000 -2.000000 1.250000 d_A +0.500000 -2.000000 0.250000 d_A +1.500000 -2.000000 0.250000 d_A +0.500000 -1.000000 -0.250000 d_A +1.500000 -1.000000 -0.250000 d_A +0.500000 -2.000000 1.750000 d_A +1.500000 -2.000000 1.750000 d_A +0.500000 -2.000000 0.750000 d_A +1.500000 -2.000000 0.750000 d_A +0.500000 -1.000000 0.750000 d_A +1.500000 -1.000000 0.750000 d_A diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/clusters.out b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/clusters.out new file mode 100644 index 0000000..f9b8878 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/clusters.out @@ -0,0 +1,122 @@ +8 +0.91287 +2 +1.00000 1.00000 0.50000 0 0 +0.50000 1.50000 1.00000 0 0 + +4 +1.00000 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +2 +1.15470 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 0.50000 0.00000 0 0 + +4 +1.41421 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +8 +1.52752 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 -0.50000 0.00000 0 0 + +16 +1.68325 +2 +1.00000 1.00000 0.50000 0 0 +2.50000 1.50000 0.00000 0 0 + +8 +1.82574 +2 +0.50000 0.50000 1.00000 0 0 +-0.50000 1.50000 2.00000 0 0 + +8 +1.87083 +2 +1.00000 1.00000 0.50000 0 0 +1.50000 1.50000 -1.00000 0 0 + +4 +2.00000 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 -1.50000 1.00000 0 0 + +16 +1.00000 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +1.50000 0.50000 1.00000 0 0 + +8 +1.15470 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 + +8 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +1.50000 1.50000 1.00000 0 0 + +8 +1.41421 +3 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +4 +1.00000 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 0.00000 1.50000 0 0 +1.00000 1.00000 1.50000 0 0 +1.50000 0.50000 1.00000 0 0 + +8 +1.15470 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 -0.00000 0.50000 0 0 +1.00000 1.00000 0.50000 0 0 +0.50000 0.50000 0.00000 0 0 + +4 +1.41421 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 1.00000 1.50000 0 0 +1.50000 1.50000 1.00000 0 0 + +16 +1.41421 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 +1.50000 0.50000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 + +2 +1.41421 +4 +0.50000 0.50000 1.00000 0 0 +0.50000 1.50000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 +1.50000 1.50000 1.00000 0 0 + diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/go b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/go new file mode 100755 index 0000000..dfe5853 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=2 -3=1.5 -4=1.5 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/job.in b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/job.in new file mode 100755 index 0000000..db1fc14 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J ZrO2_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/rndstr.in b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/rndstr.in new file mode 100644 index 0000000..ddaed47 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1.1547 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0 0.5 0.25 d_A=1 +0 0.5 0.75 d_A=1 +0.5 0 0.25 d_A=1 +0.5 0 -0.25 d_A=1 + +0 0 0.5 b_A=0.5,b_B=0.5 +0.5 0.5 0 b_A=0.5,b_B=0.5 diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/rndstrgrp.out b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/rndstrgrp.out new file mode 100644 index 0000000..6cf710e --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=0.5,0.5_d=1/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.154700 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +-0.000000 1.000000 0.500000 b_A=0.500000,b_B=0.500000 +0.500000 0.500000 0.000000 b_A=0.500000,b_B=0.500000 + +-0.000000 0.500000 0.250000 d_A=1.000000 +0.000000 0.500000 0.750000 d_A=1.000000 +0.500000 0.000000 0.250000 d_A=1.000000 +0.500000 0.000000 -0.250000 d_A=1.000000 diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/bestcorr.out b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..3eb0a64 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/bestcorr.out @@ -0,0 +1,18 @@ +2 0.577350 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.912871 0.000000 0.000000 0.000000 +2 1.000000 0.000000 0.000000 0.000000 +2 1.154700 0.000000 0.000000 0.000000 +2 1.154700 0.000000 0.000000 0.000000 +2 1.154700 0.000000 0.000000 0.000000 +2 1.354006 0.000000 0.000000 0.000000 +2 1.414214 0.000000 0.000000 0.000000 +3 0.912871 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +3 1.000000 0.000000 0.000000 0.000000 +4 0.912871 0.000000 0.000000 0.000000 +4 1.000000 0.000000 0.000000 0.000000 +4 1.000000 -0.500000 0.000000 -0.500000 +4 1.000000 -0.500000 0.000000 -0.500000 +Objective_function= -7.830261 diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/bestsqs.out b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..cf8c7c4 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.154700 +0.000000 -2.000000 0.000000 +-2.000000 0.000000 0.000000 +0.000000 0.000000 -2.000000 +-1.000000 -0.500000 -0.750000 d_B +-2.000000 -0.500000 -0.750000 d_A +-1.000000 -1.500000 -0.750000 d_A +-2.000000 -1.500000 -0.750000 d_B +-1.000000 -0.500000 -1.750000 d_B +-2.000000 -0.500000 -1.750000 d_A +-1.000000 -1.500000 -1.750000 d_A +-2.000000 -1.500000 -1.750000 d_B +-1.500000 -1.000000 -0.750000 d_B +-0.500000 -1.000000 -0.750000 d_B +-1.500000 -2.000000 -0.750000 d_A +-0.500000 -2.000000 -0.750000 d_A +-1.500000 -1.000000 -1.750000 d_A +-0.500000 -1.000000 -1.750000 d_B +-1.500000 -2.000000 -1.750000 d_A +-0.500000 -2.000000 -1.750000 d_B +-1.000000 -1.500000 -0.250000 d_B +-2.000000 -1.500000 -0.250000 d_B +-1.000000 -0.500000 -0.250000 d_A +-2.000000 -0.500000 -0.250000 d_A +-1.000000 -1.500000 -1.250000 d_A +-2.000000 -1.500000 -1.250000 d_B +-1.000000 -0.500000 -1.250000 d_A +-2.000000 -0.500000 -1.250000 d_B +-0.500000 -1.000000 -0.250000 d_A +-1.500000 -1.000000 -0.250000 d_A +-0.500000 -2.000000 -0.250000 d_A +-1.500000 -2.000000 -0.250000 d_A +-0.500000 -1.000000 -1.250000 d_B +-1.500000 -1.000000 -1.250000 d_B +-0.500000 -2.000000 -1.250000 d_B +-1.500000 -2.000000 -1.250000 d_B +-1.000000 -1.000000 -0.500000 b_A +-2.000000 -1.000000 -0.500000 b_A +-1.000000 -2.000000 -0.500000 b_A +-2.000000 -2.000000 -0.500000 b_A +-1.000000 -1.000000 -1.500000 b_A +-2.000000 -1.000000 -1.500000 b_A +-1.000000 -2.000000 -1.500000 b_A +-2.000000 -2.000000 -1.500000 b_A +-0.500000 -0.500000 -1.000000 b_A +-1.500000 -0.500000 -1.000000 b_A +-0.500000 -1.500000 -1.000000 b_A +-1.500000 -1.500000 -1.000000 b_A +-0.500000 -0.500000 -2.000000 b_A +-1.500000 -0.500000 -2.000000 b_A +-0.500000 -1.500000 -2.000000 b_A +-1.500000 -1.500000 -2.000000 b_A diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/clusters.out b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..ffab64b --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/clusters.out @@ -0,0 +1,114 @@ +4 +0.57735 +2 +0.50000 1.00000 0.25000 0 0 +0.50000 1.00000 0.75000 0 0 + +8 +0.70711 +2 +0.50000 1.00000 0.75000 0 0 +1.00000 1.50000 0.75000 0 0 + +16 +0.91287 +2 +1.00000 0.50000 0.75000 0 0 +0.50000 0.00000 1.25000 0 0 + +8 +1.00000 +2 +0.50000 1.00000 0.75000 0 0 +1.50000 1.00000 0.75000 0 0 + +4 +1.15470 +2 +0.50000 1.00000 0.75000 0 0 +0.50000 1.00000 -0.25000 0 0 + +8 +1.15470 +2 +1.00000 0.50000 0.25000 0 0 +1.00000 -0.50000 -0.25000 0 0 + +8 +1.15470 +2 +1.00000 0.50000 0.25000 0 0 +-0.00000 0.50000 -0.25000 0 0 + +16 +1.35401 +2 +1.00000 0.50000 0.75000 0 0 +1.50000 0.00000 -0.25000 0 0 + +8 +1.41421 +2 +0.50000 1.00000 0.75000 0 0 +1.50000 2.00000 0.75000 0 0 + +32 +0.91287 +3 +1.00000 0.50000 0.75000 0 0 +1.00000 0.50000 1.25000 0 0 +0.50000 0.00000 1.25000 0 0 + +16 +1.00000 +3 +0.50000 1.00000 0.75000 0 0 +1.00000 1.50000 0.75000 0 0 +1.50000 1.00000 0.75000 0 0 + +16 +1.00000 +3 +0.50000 1.00000 0.75000 0 0 +1.00000 1.50000 0.25000 0 0 +1.50000 1.00000 0.75000 0 0 + +16 +1.00000 +3 +0.50000 1.00000 0.75000 0 0 +1.00000 0.50000 1.25000 0 0 +1.50000 1.00000 0.75000 0 0 + +8 +0.91287 +4 +1.00000 0.50000 0.75000 0 0 +1.00000 0.50000 1.25000 0 0 +0.50000 -0.00000 0.75000 0 0 +0.50000 0.00000 1.25000 0 0 + +4 +1.00000 +4 +0.50000 1.00000 0.75000 0 0 +1.00000 0.50000 0.75000 0 0 +1.00000 1.50000 0.75000 0 0 +1.50000 1.00000 0.75000 0 0 + +4 +1.00000 +4 +0.50000 1.00000 0.75000 0 0 +1.00000 0.50000 0.25000 0 0 +1.00000 1.50000 0.25000 0 0 +1.50000 1.00000 0.75000 0 0 + +4 +1.00000 +4 +0.50000 1.00000 0.75000 0 0 +1.00000 1.50000 1.25000 0 0 +1.00000 0.50000 1.25000 0 0 +1.50000 1.00000 0.75000 0 0 + diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/go b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/go new file mode 100755 index 0000000..a6845f3 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.5 -3=1 -4=1 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/job.in b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/job.in new file mode 100755 index 0000000..db1fc14 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J ZrO2_lv1 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/rndstr.in b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..af3e68a --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1.1547 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0 0.5 0.25 d_A=0.5,d_B=0.5 +0 0.5 0.75 d_A=0.5,d_B=0.5 +0.5 0 0.25 d_A=0.5,d_B=0.5 +0.5 0 -0.25 d_A=0.5,d_B=0.5 + +0 0 0.5 b_A=1 +0.5 0.5 0 b_A=1 diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..8978f83 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=1_b=1_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.154700 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.500000 0.250000 d_A=0.500000,d_B=0.500000 +-0.500000 -0.000000 0.250000 d_A=0.500000,d_B=0.500000 +-0.000000 -0.500000 0.750000 d_A=0.500000,d_B=0.500000 +0.500000 0.000000 0.750000 d_A=0.500000,d_B=0.500000 + +0.000000 0.000000 0.500000 b_A=1.000000 +0.500000 0.500000 0.000000 b_A=1.000000 diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/bestcorr.out b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/bestcorr.out new file mode 100644 index 0000000..7f12ebd --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/bestcorr.out @@ -0,0 +1,23 @@ +2 0.577350 0.000000 0.000000 0.000000 +2 0.577350 0.000000 0.000000 0.000000 +2 0.707107 0.000000 0.000000 0.000000 +2 0.912871 0.000000 0.000000 0.000000 +2 0.912871 0.000000 0.000000 0.000000 +2 1.000000 -0.062500 0.000000 -0.062500 +2 1.000000 0.000000 0.000000 0.000000 +2 1.000000 -0.250000 0.000000 -0.250000 +2 1.154700 0.000000 0.000000 0.000000 +2 1.154700 0.000000 0.000000 0.000000 +2 1.154700 0.000000 0.000000 0.000000 +2 1.154700 0.000000 0.000000 0.000000 +2 1.154701 0.000000 0.000000 0.000000 +2 1.354006 -0.125000 0.000000 -0.125000 +3 0.577350 0.000000 0.000000 0.000000 +3 0.707107 0.000000 0.000000 0.000000 +3 0.912871 0.000000 0.000000 0.000000 +3 0.912871 0.000000 0.000000 0.000000 +3 0.912871 0.000000 0.000000 0.000000 +4 0.912871 0.000000 0.000000 0.000000 +4 0.912871 0.000000 0.000000 0.000000 +4 0.912871 0.000000 0.000000 0.000000 +Objective_function= -384.459179 diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/bestsqs.out b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/bestsqs.out new file mode 100644 index 0000000..ed55c36 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/bestsqs.out @@ -0,0 +1,54 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.154700 +-1.000000 -1.000000 0.000000 +1.000000 -1.000000 0.000000 +0.000000 0.000000 4.000000 +0.000000 -0.500000 0.250000 d_B +-0.000000 -1.500000 0.250000 d_B +0.000000 -0.500000 1.250000 d_A +-0.000000 -1.500000 1.250000 d_B +0.000000 -0.500000 2.250000 d_A +-0.000000 -1.500000 2.250000 d_B +0.000000 -0.500000 3.250000 d_A +-0.000000 -1.500000 3.250000 d_A +-0.500000 -1.000000 0.250000 d_B +0.500000 -1.000000 0.250000 d_A +-0.500000 -1.000000 1.250000 d_A +0.500000 -1.000000 1.250000 d_A +-0.500000 -1.000000 2.250000 d_B +0.500000 -1.000000 2.250000 d_B +-0.500000 -1.000000 3.250000 d_A +0.500000 -1.000000 3.250000 d_B +0.000000 -1.500000 0.750000 d_B +0.000000 -0.500000 0.750000 d_A +-0.000000 -1.500000 1.750000 d_B +0.000000 -0.500000 1.750000 d_B +-0.000000 -1.500000 2.750000 d_A +0.000000 -0.500000 2.750000 d_B +0.000000 -1.500000 3.750000 d_B +0.000000 -0.500000 3.750000 d_A +0.500000 -1.000000 0.750000 d_A +-0.500000 -1.000000 0.750000 d_B +0.500000 -1.000000 1.750000 d_A +-0.500000 -1.000000 1.750000 d_B +0.500000 -1.000000 2.750000 d_A +-0.500000 -1.000000 2.750000 d_B +0.500000 -1.000000 3.750000 d_A +-0.500000 -1.000000 3.750000 d_A +0.000000 -1.000000 0.500000 b_B +0.000000 -2.000000 0.500000 b_B +0.000000 -1.000000 1.500000 b_A +0.000000 -2.000000 1.500000 b_A +0.000000 -1.000000 2.500000 b_B +0.000000 -2.000000 2.500000 b_B +0.000000 -1.000000 3.500000 b_A +0.000000 -2.000000 3.500000 b_B +-0.500000 -1.500000 4.000000 b_A +0.500000 -1.500000 4.000000 b_B +-0.500000 -1.500000 1.000000 b_A +0.500000 -1.500000 1.000000 b_B +-0.500000 -1.500000 2.000000 b_A +0.500000 -1.500000 2.000000 b_A +-0.500000 -1.500000 3.000000 b_A +0.500000 -1.500000 3.000000 b_B diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/clusters.out b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/clusters.out new file mode 100644 index 0000000..0745cf2 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/clusters.out @@ -0,0 +1,143 @@ +4 +0.57735 +2 +0.50000 1.00000 0.25000 0 0 +0.50000 1.00000 0.75000 0 0 + +16 +0.57735 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 1.00000 1.25000 0 0 + +8 +0.70711 +2 +0.50000 1.00000 0.75000 0 0 +1.00000 1.50000 0.75000 0 0 + +16 +0.91287 +2 +1.00000 0.50000 0.75000 0 0 +0.50000 0.00000 1.25000 0 0 + +8 +0.91287 +2 +0.50000 0.50000 1.00000 0 0 +1.00000 1.00000 1.50000 0 0 + +16 +1.00000 +2 +0.50000 1.00000 0.75000 0 0 +0.50000 1.50000 0.00000 0 0 + +4 +1.00000 +2 +0.50000 0.50000 1.00000 0 0 +1.50000 0.50000 1.00000 0 0 + +8 +1.00000 +2 +0.50000 1.00000 0.75000 0 0 +1.50000 1.00000 0.75000 0 0 + +2 +1.15470 +2 +0.50000 0.50000 1.00000 0 0 +0.50000 0.50000 0.00000 0 0 + +4 +1.15470 +2 +0.50000 1.00000 0.75000 0 0 +0.50000 1.00000 -0.25000 0 0 + +8 +1.15470 +2 +1.00000 0.50000 0.25000 0 0 +1.00000 -0.50000 -0.25000 0 0 + +8 +1.15470 +2 +1.00000 0.50000 0.25000 0 0 +-0.00000 0.50000 -0.25000 0 0 + +32 +1.15470 +2 +0.50000 0.50000 1.00000 0 0 +0.00000 1.50000 1.25000 0 0 + +16 +1.35401 +2 +1.00000 0.50000 0.75000 0 0 +1.50000 0.00000 -0.25000 0 0 + +8 +0.57735 +3 +0.50000 1.00000 0.75000 0 0 +1.00000 1.00000 0.50000 0 0 +0.50000 1.00000 0.25000 0 0 + +16 +0.70711 +3 +0.50000 1.00000 0.75000 0 0 +1.00000 1.00000 0.50000 0 0 +1.00000 1.50000 0.75000 0 0 + +32 +0.91287 +3 +1.00000 0.50000 0.75000 0 0 +1.00000 0.50000 1.25000 0 0 +0.50000 0.00000 1.25000 0 0 + +16 +0.91287 +3 +1.00000 0.50000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +0.50000 0.00000 1.25000 0 0 + +16 +0.91287 +3 +0.50000 0.50000 1.00000 0 0 +0.50000 1.00000 1.25000 0 0 +1.00000 1.00000 1.50000 0 0 + +32 +0.91287 +4 +1.00000 0.50000 0.75000 0 0 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 1.25000 0 0 +0.50000 0.00000 1.25000 0 0 + +8 +0.91287 +4 +1.00000 0.50000 0.75000 0 0 +1.00000 0.50000 1.25000 0 0 +0.50000 -0.00000 0.75000 0 0 +0.50000 0.00000 1.25000 0 0 + +8 +0.91287 +4 +0.50000 0.50000 1.00000 0 0 +1.00000 0.50000 1.25000 0 0 +0.50000 1.00000 1.25000 0 0 +1.00000 1.00000 1.50000 0 0 + diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/go b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/go new file mode 100755 index 0000000..8cf9033 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/go @@ -0,0 +1,3 @@ +#!/bin/bash +corrdump -nop -noe -2=1.4 -3=0.92 -4=0.92 -ro -l=rndstr.in -clus +getclus diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/job.in b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/job.in new file mode 100755 index 0000000..a90a47a --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/job.in @@ -0,0 +1,11 @@ +#!/bin/bash +#SBATCH --time=3:00:00 +#SBATCH --tasks-per-node=8 +#SBATCH --qos=avandewa-condo +#SBATCH -J ZrO2_lv2 + +for (( id=0 ; id<8 ; id++ )) +do + mcsqs -n=48 -ip=$id & +done +wait diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/rndstr.in b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/rndstr.in new file mode 100644 index 0000000..5e005c7 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/rndstr.in @@ -0,0 +1,13 @@ + +1 1 1.1547 90 90 90 +1 0 0 +0 1 0 +0 0 1 + +0 0.5 0.25 d_A=0.5,d_B=0.5 +0 0.5 0.75 d_A=0.5,d_B=0.5 +0.5 0 0.25 d_A=0.5,d_B=0.5 +0.5 0 -0.25 d_A=0.5,d_B=0.5 + +0 0 0.5 b_A=0.5,b_B=0.5 +0.5 0.5 0 b_A=0.5,b_B=0.5 diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/rndstrgrp.out b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/rndstrgrp.out new file mode 100644 index 0000000..9f33bb4 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/rndstrgrp.out @@ -0,0 +1,14 @@ +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.154700 +1.000000 0.000000 0.000000 +0.000000 1.000000 0.000000 +0.000000 0.000000 1.000000 + +0.000000 0.500000 0.250000 d_A=0.500000,d_B=0.500000 +-0.500000 -0.000000 0.250000 d_A=0.500000,d_B=0.500000 +-0.000000 -0.500000 0.750000 d_A=0.500000,d_B=0.500000 +0.500000 0.000000 0.750000 d_A=0.500000,d_B=0.500000 + +0.000000 0.000000 0.500000 b_A=0.500000,b_B=0.500000 +0.500000 0.500000 0.000000 b_A=0.500000,b_B=0.500000 diff --git a/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/sqsparam.in b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/sqsparam.in new file mode 100644 index 0000000..c74c870 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsdb_lev=2_b=0.5,0.5_d=0.5,0.5/sqsparam.in @@ -0,0 +1 @@ +2 10 2 8 diff --git a/data/sqsdb/ZIRCONIA_TET/sqsgen.in b/data/sqsdb/ZIRCONIA_TET/sqsgen.in new file mode 100644 index 0000000..0f98168 --- /dev/null +++ b/data/sqsdb/ZIRCONIA_TET/sqsgen.in @@ -0,0 +1,4 @@ +level=0 b=1 d=1 +level=1 b=0.5,0.5 d=1 +level=1 b=1 d=0.5,0.5 +level=2 b=0.5,0.5 d=0.5,0.5 diff --git a/data/str/A15.lat b/data/str/A15.lat new file mode 100644 index 0000000..f0a6b46 --- /dev/null +++ b/data/str/A15.lat @@ -0,0 +1,13 @@ +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0.5 0.5 0.5 A +0.25 0.5 0 B +0.75 0.5 0 B +0.75 0.5 0 B +0 0.25 0.5 B +0 0.75 0.5 B +0.5 0 0.25 B +0.5 0 0.75 B diff --git a/data/str/A3Prime.lat b/data/str/A3Prime.lat new file mode 100644 index 0000000..559e63e --- /dev/null +++ b/data/str/A3Prime.lat @@ -0,0 +1,8 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0 0 0.5 A +0.6666666 0.3333333 0.25 B +0.3333333 0.6666666 0.75 B diff --git a/data/str/A9.lat b/data/str/A9.lat new file mode 100644 index 0000000..e76221a --- /dev/null +++ b/data/str/A9.lat @@ -0,0 +1,8 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0.25 A +0 0 0.75 A +0.3333333 0.6666666 0.25 B +0.6666666 0.3333333 0.75 B diff --git a/data/str/B2.lat b/data/str/B2.lat new file mode 100644 index 0000000..620bc29 --- /dev/null +++ b/data/str/B2.lat @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0.5 0.5 0.5 B diff --git a/data/str/B24.lat b/data/str/B24.lat new file mode 100644 index 0000000..2077259 --- /dev/null +++ b/data/str/B24.lat @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A +0.5 0.5 -0.5 B diff --git a/data/str/B3.lat b/data/str/B3.lat new file mode 100644 index 0000000..a8da9d1 --- /dev/null +++ b/data/str/B3.lat @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A +0.25 0.25 0.25 B diff --git a/data/str/B32.lat b/data/str/B32.lat new file mode 100644 index 0000000..cfebb60 --- /dev/null +++ b/data/str/B32.lat @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 + 0.125 0.125 0.125 A +-0.125 -0.125 -0.125 A + 0.375 0.375 0.375 B +-0.375 -0.375 -0.375 B diff --git a/data/str/B35.lat b/data/str/B35.lat new file mode 100644 index 0000000..4b6cf57 --- /dev/null +++ b/data/str/B35.lat @@ -0,0 +1,10 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0.3333333 0.6666666 0.5 A +0.6666666 0.3333333 0.5 A +0.5 0 0 B +0 0.5 0 B +0.5 0.5 0 B diff --git a/data/str/B81.lat b/data/str/B81.lat new file mode 100644 index 0000000..2d72824 --- /dev/null +++ b/data/str/B81.lat @@ -0,0 +1,8 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0 0 0.5 A +0.3333333 0.6666666 0.25 B +0.6666666 0.3333333 0.75 B diff --git a/data/str/B82.lat b/data/str/B82.lat new file mode 100644 index 0000000..30465f3 --- /dev/null +++ b/data/str/B82.lat @@ -0,0 +1,10 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0 0 0.5 A +0.3333333 0.6666666 0.25 B +0.6666666 0.3333333 0.75 B +0.6666666 0.3333333 0.25 A +0.3333333 0.6666666 0.75 A diff --git a/data/str/BaPtSb.lat b/data/str/BaPtSb.lat new file mode 100644 index 0000000..5934c2a --- /dev/null +++ b/data/str/BaPtSb.lat @@ -0,0 +1,7 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0.3333333 0.6666666 0.5 B +0.6666666 0.3333333 0.5 C diff --git a/data/str/Bh.lat b/data/str/Bh.lat new file mode 100644 index 0000000..c497a05 --- /dev/null +++ b/data/str/Bh.lat @@ -0,0 +1,6 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0.6666666 0.3333333 0.5 B diff --git a/data/str/Bk.lat b/data/str/Bk.lat new file mode 100644 index 0000000..6886a17 --- /dev/null +++ b/data/str/Bk.lat @@ -0,0 +1,8 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0.3333333 0.6666666 0.25 A +0.6666666 0.3333333 0.75 A +0.6666666 0.3333333 0.25 B +0.3333333 0.6666666 0.75 B diff --git a/data/str/C15.lat b/data/str/C15.lat new file mode 100644 index 0000000..2023f6e --- /dev/null +++ b/data/str/C15.lat @@ -0,0 +1,10 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0.125 0.125 0.125 A +0.875 0.875 0.875 A +0.5 0.5 0.5 B +0 0.5 0.5 B +0.5 0 0.5 B +0.5 0.5 0 B diff --git a/data/str/C1b.lat b/data/str/C1b.lat new file mode 100644 index 0000000..6617f76 --- /dev/null +++ b/data/str/C1b.lat @@ -0,0 +1,7 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A +-0.5 0.5 0.5 B +0.25 0.25 0.25 C diff --git a/data/str/C3.lat b/data/str/C3.lat new file mode 100644 index 0000000..4eeb39a --- /dev/null +++ b/data/str/C3.lat @@ -0,0 +1,10 @@ +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0 0.5 0.5 A +0.5 0 0.5 A +0.5 0.5 0 A +0.25 0.25 0.25 B +0.75 0.75 0.75 B diff --git a/data/str/C32.lat b/data/str/C32.lat new file mode 100644 index 0000000..380d81f --- /dev/null +++ b/data/str/C32.lat @@ -0,0 +1,7 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0.3333333 0.6666666 0.5 B +0.6666666 0.3333333 0.5 B diff --git a/data/str/C9.lat b/data/str/C9.lat new file mode 100644 index 0000000..50418f4 --- /dev/null +++ b/data/str/C9.lat @@ -0,0 +1,10 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0 0.5 0.5 +0.125 0.125 0.125 A +-0.125 -0.125 -0.125 A +0 0 0 B +0.5 0 0 B +0 0.5 0 B +0 0 0.5 B diff --git a/data/str/Ca7Ge.lat b/data/str/Ca7Ge.lat new file mode 100644 index 0000000..b872d0f --- /dev/null +++ b/data/str/Ca7Ge.lat @@ -0,0 +1,12 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A +0.5 0.5 0.5 B +0.5 0 0 B +0 0.5 0 B +0 0 0.5 B +0 -0.5 0.5 B +-0.5 0 0.5 B +-0.5 0.5 0 B diff --git a/data/str/D03.lat b/data/str/D03.lat new file mode 100644 index 0000000..b279ce0 --- /dev/null +++ b/data/str/D03.lat @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A +-0.5 0.5 0.5 A +-0.25 -0.25 -0.25 B +0.25 0.25 0.25 B diff --git a/data/str/D09.lat b/data/str/D09.lat new file mode 100644 index 0000000..6d9aad0 --- /dev/null +++ b/data/str/D09.lat @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0.5 0 0 B +0 0.5 0 B +0 0 0.5 B diff --git a/data/str/D2d.lat b/data/str/D2d.lat new file mode 100644 index 0000000..3c87c4c --- /dev/null +++ b/data/str/D2d.lat @@ -0,0 +1,10 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0.3333333 0.6666666 0 B +0.6666666 0.3333333 0 B +0.5 0.5 0 B +0 0.5 0.5 B +0.5 0.5 0.5 B diff --git a/data/str/E21.lat b/data/str/E21.lat new file mode 100644 index 0000000..4abe2a7 --- /dev/null +++ b/data/str/E21.lat @@ -0,0 +1,9 @@ +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0.5 0.5 0.5 B +0 0.5 0.5 C +0.5 0 0.5 C +0.5 0.5 0 C diff --git a/data/str/L12.lat b/data/str/L12.lat new file mode 100644 index 0000000..68c1063 --- /dev/null +++ b/data/str/L12.lat @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0 0.5 0.5 B +0.5 0 0.5 B +0.5 0.5 0 B diff --git a/data/str/L21.lat b/data/str/L21.lat new file mode 100644 index 0000000..24e3f87 --- /dev/null +++ b/data/str/L21.lat @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A +-0.5 0.5 0.5 B +-0.25 -0.25 -0.25 C +0.25 0.25 0.25 C diff --git a/data/str/La2O3.lat b/data/str/La2O3.lat new file mode 100644 index 0000000..199c72b --- /dev/null +++ b/data/str/La2O3.lat @@ -0,0 +1,8 @@ +1 1 1 90 90 90 +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 +0 0 0 A +0 0.5 0.5 B +0.5 0 0.5 B +0.5 0.5 0 B diff --git a/data/str/Li3N.lat b/data/str/Li3N.lat new file mode 100644 index 0000000..94b3af5 --- /dev/null +++ b/data/str/Li3N.lat @@ -0,0 +1,8 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A +0 0 0.5 B +0.3333333 0.6666666 0 B +0.6666666 0.3333333 0 B diff --git a/data/str/NbO.lat b/data/str/NbO.lat new file mode 100644 index 0000000..7310652 --- /dev/null +++ b/data/str/NbO.lat @@ -0,0 +1,10 @@ +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 +0 0.5 0.5 A +0.5 0 0.5 A +0.5 0.5 0 A +0.5 0 0 B +0 0.5 0 B +0 0 0.5 B diff --git a/data/str/Pt3O4.lat b/data/str/Pt3O4.lat new file mode 100644 index 0000000..7120c20 --- /dev/null +++ b/data/str/Pt3O4.lat @@ -0,0 +1,11 @@ +1 1 1 90 90 90 +-0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0.5 0.5 A +0.5 0 0.5 A +0.5 0.5 0 A +0.5 0.5 0.5 B +0.5 0 0 B +0 0.5 0 B +0 0 0.5 B diff --git a/data/str/README b/data/str/README new file mode 100644 index 0000000..932aa2e --- /dev/null +++ b/data/str/README @@ -0,0 +1,2 @@ +Thanks to Dongwon Shin at Penn State for converting a large number of common lattices +found at http://cst-www.nrl.navy.mil/lattice/ into the ATAT format. diff --git a/data/tmelt.in b/data/tmelt.in new file mode 100644 index 0000000..57b45d1 --- /dev/null +++ b/data/tmelt.in @@ -0,0 +1,101 @@ +Actinium 1323 +Aluminum 933 +Americium 1449 +Antimony 904 +Argon 84 +Arsenic 1090 +Astatine 575 +Barium 1000 +Berkelium 1323 +Beryllium 1560 +Bismuth 544 +Boron 2348 +Bromine 266 +Cadmium 594 +Calcium 1115 +Californium 1173 +Carbon 3823 +Cerium 1071 +Cesium 302 +Chlorine 172 +Chromium 2180 +Cobalt 1768 +Copper 1358 +Curium 1618 +Dysprosium 1685 +Einsteinium 1133 +Erbium 1770 +Europium 1095 +Fermium 1800 +Fluorine 54 +Gadolinium 1586 +Gallium 303 +Germanium 1211 +Gold 1337 +Hafnium 2506 +Holmium 1747 +Hydrogen 14 +Indium 430 +Iodine 387 +Iridium 2739 +Iron 1811 +Krypton 116 +Lanthanum 1193 +Lawrencium 1900 +Lead 601 +Lithium 454 +Lutetium 1936 +Magnesium 923 +Manganese 1519 +Mendelevium 1100 +Mercury 234 +Molybdenum 2896 +Neodymium 1294 +Neon 25 +Neptunium 917 +Nickel 1728 +Niobium 2750 +Nitrogen 63 +Nobelium 1100 +Osmium 3306 +Oxygen 55 +Palladium 1828 +Phosphorus 317 +Platinum 2041 +Plutonium 913 +Polonium 527 +Potassium 337 +Praseodymium 1204 +Promethium 274 +Protactinium 1845 +Radium 973 +Radon 202 +Rhenium 3459 +Rhodium 2237 +Rubidium 312 +Ruthenium 2607 +Samarium 1345 +Scandium 1814 +Selenium 494 +Silicon 1687 +Silver 1235 +Sodium 371 +Strontium 1050 +Sulfur 388 +Tantalum 3290 +Technetium 2430 +Tellurium 723 +Terbium 1629 +Thallium 577 +Thorium 2023 +Thulium 1818 +Tin 505 +Titanium 1941 +Tungsten 3695 +Uranium 1408 +Vanadium 2183 +Xenon 161 +Ytterbium 1092 +Yttrium 1799 +Zinc 693 +Zirconium 2128 diff --git a/data/wurtzite.lat b/data/wurtzite.lat new file mode 100644 index 0000000..6b7ef88 --- /dev/null +++ b/data/wurtzite.lat @@ -0,0 +1,8 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0.33333333 0.66666667 0.00000000 A +0.66666667 0.33333333 0.50000000 A +0.33333333 0.66666667 0.37500000 B +0.66666667 0.33333333 -0.12500000 B diff --git a/data/wyckoff/axes_a.txt b/data/wyckoff/axes_a.txt new file mode 100644 index 0000000..4ba3fd2 --- /dev/null +++ b/data/wyckoff/axes_a.txt @@ -0,0 +1,2 @@ +#const a=; b=; c=; alpha=; beta=; gamma=; +{a} {b} {c} {alpha} {beta} {gamma} diff --git a/data/wyckoff/axes_c.txt b/data/wyckoff/axes_c.txt new file mode 100644 index 0000000..e05ed54 --- /dev/null +++ b/data/wyckoff/axes_c.txt @@ -0,0 +1,2 @@ +#const a=; +{a} {a} {a} {90} {90} {90} diff --git a/data/wyckoff/axes_h.txt b/data/wyckoff/axes_h.txt new file mode 100644 index 0000000..5629432 --- /dev/null +++ b/data/wyckoff/axes_h.txt @@ -0,0 +1,2 @@ +#const a=; c=; +{a} {a} {c} {90} {90} {120} diff --git a/data/wyckoff/axes_m.txt b/data/wyckoff/axes_m.txt new file mode 100644 index 0000000..ebc6e07 --- /dev/null +++ b/data/wyckoff/axes_m.txt @@ -0,0 +1,2 @@ +#const a=; b=; c=; beta=; +{a} {b} {c} {90} {beta} {90} diff --git a/data/wyckoff/axes_o.txt b/data/wyckoff/axes_o.txt new file mode 100644 index 0000000..ccc5b2d --- /dev/null +++ b/data/wyckoff/axes_o.txt @@ -0,0 +1,2 @@ +#const a=; b=; c=; +{a} {b} {c} {90} {90} {90} diff --git a/data/wyckoff/axes_t.txt b/data/wyckoff/axes_t.txt new file mode 100644 index 0000000..b406956 --- /dev/null +++ b/data/wyckoff/axes_t.txt @@ -0,0 +1,2 @@ +#const a=; c=; +{a} {a} {c} {90} {90} {90} diff --git a/data/wyckoff/cell_A.txt b/data/wyckoff/cell_A.txt new file mode 100644 index 0000000..1649641 --- /dev/null +++ b/data/wyckoff/cell_A.txt @@ -0,0 +1,3 @@ +1 0 0 +0 0.5 -0.5 +0 0.5 0.5 diff --git a/data/wyckoff/cell_C.txt b/data/wyckoff/cell_C.txt new file mode 100644 index 0000000..f649707 --- /dev/null +++ b/data/wyckoff/cell_C.txt @@ -0,0 +1,3 @@ +0.5 -0.5 0 +0.5 0.5 0 +0 0 1 diff --git a/data/wyckoff/cell_F.txt b/data/wyckoff/cell_F.txt new file mode 100644 index 0000000..06fa14d --- /dev/null +++ b/data/wyckoff/cell_F.txt @@ -0,0 +1,3 @@ +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 diff --git a/data/wyckoff/cell_I.txt b/data/wyckoff/cell_I.txt new file mode 100644 index 0000000..3b0aa4d --- /dev/null +++ b/data/wyckoff/cell_I.txt @@ -0,0 +1,3 @@ +-0.5 0.5 0.5 + 0.5 -0.5 0.5 + 0.5 0.5 -0.5 diff --git a/data/wyckoff/cell_P.txt b/data/wyckoff/cell_P.txt new file mode 100644 index 0000000..87dbd49 --- /dev/null +++ b/data/wyckoff/cell_P.txt @@ -0,0 +1,3 @@ +1 0 0 +0 1 0 +0 0 1 diff --git a/data/wyckoff/cell_R.txt b/data/wyckoff/cell_R.txt new file mode 100644 index 0000000..a655121 --- /dev/null +++ b/data/wyckoff/cell_R.txt @@ -0,0 +1,3 @@ + 0.666667 0.333333 0.333333 +-0.333333 0.333333 0.333333 +-0.333333 -0.666667 0.333333 diff --git a/data/wyckoff/nph-wp-list.txt b/data/wyckoff/nph-wp-list.txt new file mode 100644 index 0000000..e69de29 diff --git a/data/wyckoff/origin.txt b/data/wyckoff/origin.txt new file mode 100644 index 0000000..225a601 --- /dev/null +++ b/data/wyckoff/origin.txt @@ -0,0 +1,24 @@ +48 +50 +59 +68 +70 +85 +86 +88 +125 +126 +129 +130 +133 +134 +137 +138 +141 +142 +201 +203 +222 +224 +227 +228 diff --git a/data/wyckoff/spcgrp.txt b/data/wyckoff/spcgrp.txt new file mode 100644 index 0000000..7a4fda5 --- /dev/null +++ b/data/wyckoff/spcgrp.txt @@ -0,0 +1,230 @@ +1 P1 a P +2 P-1 a P +3 P2 m P +4 P2_1 m P +5 C2 m C +6 Pm m P +7 Pc m P +8 Cm m C +9 Cc m C +10 P2/m m P +11 P2_1/m m P +12 C2/m m C +13 P2/c m P +14 P2_1/c m P +15 C2/c m C +16 P222 o P +17 P222_1 o P +18 P2_12_12 o P +19 P2_12_12_1 o P +20 C222_1 o C +21 C222 o C +22 F222 o F +23 I222 o I +24 I2_12_12_1 o I +25 Pmm2 o P +26 Pmc2_1 o P +27 Pcc2 o P +28 Pma2 o P +29 Pca2_1 o P +30 Pnc2 o P +31 Pmn2_1 o P +32 Pba2 o P +33 Pna2_1 o P +34 Pnn2 o P +35 Cmm2 o C +36 Cmc2_1 o C +37 Ccc2 o C +38 Amm2 o A +39 Aem2 o A +40 Ama2 o A +41 Aea2 o A +42 Fmm2 o F +43 Fdd2 o F +44 Imm2 o I +45 Iba2 o I +46 Ima2 o I +47 Pmmm o P +48 Pnnn o P +49 Pccm o P +50 Pban o P +51 Pmma o P +52 Pnna o P +53 Pmna o P +54 Pcca o P +55 Pbam o P +56 Pccn o P +57 Pbcm o P +58 Pnnm o P +59 Pmmn o P +60 Pbcn o P +61 Pbca o P +62 Pnma o P +63 Cmcm o C +64 Cmce o C +65 Cmmm o C +66 Cccm o C +67 Cmme o C +68 Ccce o C +69 Fmmm o F +70 Fddd o F +71 Immm o I +72 Ibam o I +73 Ibca o I +74 Imma o I +75 P4 t P +76 P4_1 t P +77 P4_2 t P +78 P4_3 t P +79 I4 t I +80 I4_1 t I +81 P-4 t P +82 I-4 t I +83 P4/m t P +84 P4_2/m t P +85 P4/n t P +86 P4_2/n t P +87 I4/m t I +88 I4_1/a t I +89 P422 t P +90 P42_12 t P +91 P4_122 t P +92 P4_12_12 t P +93 P4_222 t P +94 P4_22_12 t P +95 P4_322 t P +96 P4_32_12 t P +97 I422 t I +98 I4_122 t I +99 P4mm t P +100 P4bm t P +101 P4_2cm t P +102 P4_2nm t P +103 P4cc t P +104 P4nc t P +105 P4_2mc t P +106 P4_2bc t P +107 I4mm t I +108 I4cm t I +109 I4_1md t I +110 I4_1cd t I +111 P-42m t P +112 P-42c t P +113 P-42_1m t P +114 P-42_1c t P +115 P-4m2 t P +116 P-4c2 t P +117 P-4b2 t P +118 P-4n2 t P +119 I-4m2 t I +120 I-4c2 t I +121 I-42m t I +122 I-42d t I +123 P4/mmm t P +124 P4/mcc t P +125 P4/nbm t P +126 P4/nnc t P +127 P4/mbm t P +128 P4/mnc t P +129 P4/nmm t P +130 P4/ncc t P +131 P4_2/mmc t P +132 P4_2/mcm t P +133 P4_2/nbc t P +134 P4_2/nnm t P +135 P4_2/mbc t P +136 P4_2/mnm t P +137 P4_2/nmc t P +138 P4_2/ncm t P +139 I4/mmm t I +140 I4/mcm t I +141 I4_1/amd t I +142 I4_1/acd t I +143 P3 h P +144 P3_1 h P +145 P3_2 h P +146 R3 h R +147 P-3 h P +148 R-3 h R +149 P312 h P +150 P321 h P +151 P3_112 h P +152 P3_121 h P +153 P3_212 h P +154 P3_221 h P +155 R32 h R +156 P3m1 h P +157 P31m h P +158 P3c1 h P +159 P31c h P +160 R3m h R +161 R3c h R +162 P-31m h P +163 P-31c h P +164 P-3m1 h P +165 P-3c1 h P +166 R-3m h R +167 R-3c h R +168 P6 h P +169 P6_1 h P +170 P6_5 h P +171 P6_2 h P +172 P6_4 h P +173 P6_3 h P +174 P-6 h P +175 P6/m h P +176 P6_3/m h P +177 P622 h P +178 P6_122 h P +179 P6_522 h P +180 P6_222 h P +181 P6_422 h P +182 P6_322 h P +183 P6mm h P +184 P6cc h P +185 P6_3cm h P +186 P6_3mc h P +187 P-6m2 h P +188 P-6c2 h P +189 P-62m h P +190 P-62c h P +191 P6/mmm h P +192 P6/mcc h P +193 P6_3/mcm h P +194 P6_3/mmc h P +195 P23 c P +196 F23 c F +197 I23 c I +198 P2_13 c P +199 I2_13 c I +200 Pm-3 c P +201 Pn-3 c P +202 Fm-3 c F +203 Fd-3 c F +204 Im-3 c I +205 Pa-3 c P +206 Ia-3 c I +207 P432 c P +208 P4_232 c P +209 F432 c F +210 F4_132 c F +211 I432 c I +212 P4_332 c P +213 P4_132 c P +214 I4_132 c I +215 P-43m c P +216 F-43m c F +217 I-43m c I +218 P-43n c P +219 F-43c c F +220 I-43d c I +221 Pm-3m c P +222 Pn-3n c P +223 Pm-3n c P +224 Pn-3m c P +225 Fm-3m c F +226 Fm-3c c F +227 Fd-3m c F +228 Fd-3c c F +229 Im-3m c I +230 Ia-3d c I diff --git a/data/wyckoff/spcgrptab.txt b/data/wyckoff/spcgrptab.txt new file mode 100644 index 0000000..3e8babd --- /dev/null +++ b/data/wyckoff/spcgrptab.txt @@ -0,0 +1,230 @@ +1 aP 1_ 1 +2 aP 1_ 2 +3 mP 2om 2 +4 mP 2om 2 +5 mC 2om 2 +6 mP 2om 2 +7 mP 2om 2 +8 mC 2om 2 +9 mC 2om 2 +10 mP 2om 4 +11 mP 2om 4 +12 mC 2om 4 +13 mP 2om 4 +14 mP 2om 4 +15 mC 2om 4 +16 oP 222 4 +17 oP 222 4 +18 oP 222 4 +19 oP 222 4 +20 oC 222 4 +21 oC 222 4 +22 oF 222 4 +23 oI 222 4 +24 oI 222 4 +25 oP mmm 4 +26 oP mmm 4 +27 oP mmm 4 +28 oP mmm 4 +29 oP mmm 4 +30 oP mmm 4 +31 oP mmm 4 +32 oP mmm 4 +33 oP mmm 4 +34 oP mmm 4 +35 oC mmm 4 +36 oC mmm 4 +37 oC mmm 4 +38 oA mmm 4 +39 oA mmm 4 +40 oA mmm 4 +41 oA mmm 4 +42 oF mmm 4 +43 oF 2mm 4 +44 oI mmm 4 +45 oI mmm 4 +46 oI mmm 4 +47 oP mmm 36 +48 oP mmm 8 +49 oP mmm 8 +50 oP mmm 8 +51 oP mmm 8 +52 oP mmm 8 +53 oP mmm 8 +54 oP mmm 8 +55 oP mmm 8 +56 oP mmm 8 +57 oP mmm 8 +58 oP mmm 8 +59 oP mmm 8 +60 oP mmm 8 +61 oP mmm 8 +62 oP mmm 8 +63 oC mmm 8 +64 oC mmm 8 +65 oC mmm 8 +66 oC mmm 8 +67 oC mmm 8 +68 oC mmm 8 +69 oF mmm 8 +70 oF mmm 8 +71 oI mmm 8 +72 oI mmm 8 +73 oI mmm 8 +74 oI mmm 8 +75 tP 4om 4 +76 tP 4 4 +77 tP 4om 4 +78 tP 4 4 +79 tI 4om 4 +80 tI 4 4 +81 tP 4_ 4 +82 tI 4_ 4 +83 tP 4om 8 +84 tP 4om 8 +85 tP 4om 8 +86 tP 4om 8 +87 tI 4om 8 +88 tI 4om 8 +89 tP 422 8 +90 tP 422 8 +91 tP 422 8 +92 tP 422 8 +93 tP 422 8 +94 tP 422 8 +95 tP 422 8 +96 tP 422 8 +97 tI 422 8 +98 tI 422 8 +99 tP 4ommm 8 +100 tP 4ommm 8 +101 tP 4ommm 8 +102 tP 4ommm 8 +103 tP 4ommm 8 +104 tP 4ommm 8 +105 tP 4ommm 8 +106 tP 4ommm 8 +107 tI 4ommm 8 +108 tI 4ommm 8 +109 tI 4mm 8 +110 tI 4mm 8 +111 tP 4_2m 8 +112 tP 4_2m 8 +113 tP 4_2m 8 +114 tP 4_2m 8 +115 tP 4_2m 8 +116 tP 4_2m 8 +117 tP 4_2m 8 +118 tP 4_2m 8 +119 tI 4_2m 8 +120 tI 4_2m 8 +121 tI 4_2m 8 +122 tI 4_2m 8 +123 tP 4ommm 16 +124 tP 4ommm 16 +125 tP 4ommm 16 +126 tP 4ommm 16 +127 tP 4ommm 16 +128 tP 4ommm 16 +129 tP 4ommm 16 +130 tP 4ommm 16 +131 tP 4ommm 16 +132 tP 4ommm 16 +133 tP 4ommm 16 +134 tP 4ommm 16 +135 tP 4ommm 16 +136 tP 4ommm 16 +137 tP 4ommm 16 +138 tP 4ommm 16 +139 tI 4ommm 16 +140 tI 4ommm 16 +141 tI 4ommm 16 +142 tI 4ommm 16 +143 hP 6_ 3 +144 hP 3 3 +145 hP 3 3 +146 hR 3 3 +147 hP 3_ 6 +148 hR 3_ 6 +149 hP 32 6 +150 hP 32 6 +151 hP 32 6 +152 hP 32 6 +153 hP 32 6 +154 hP 32 6 +155 hR 32 6 +156 hP 6_m2 6 +157 hP 6_m2 6 +158 hP 6_m2 6 +159 hP 6_m2 6 +160 hR 3m 6 +161 hR 3m 6 +162 hP 3_m 12 +163 hP 3_m 12 +164 hP 3_m 12 +165 hP 3_m 12 +166 hR 3_m 12 +167 hR 3_m 12 +168 hP 6om 6 +169 hP 6 6 +170 hP 6 6 +171 hP 6 6 +172 hP 6 6 +173 hP 6om 6 +174 hP 6_ 6 +175 hP 6om 12 +176 hP 6om 12 +177 hP 622 12 +178 hP 622 12 +179 hP 622 12 +180 hP 622 12 +181 hP 622 12 +182 hP 622 12 +183 hP 6ommm 12 +184 hP 6ommm 12 +185 hP 6ommm 12 +186 hP 6ommm 12 +187 hP 6_m2 12 +188 hP 6_m2 12 +189 hP 6_m2 12 +190 hP 6_m2 12 +191 hP 6ommm 24 +192 hP 6ommm 24 +193 hP 6ommm 24 +194 hP 6ommm 24 +195 cP 23 12 +196 cF 23 12 +197 cI 23 12 +198 cP 23 12 +199 cI 23 12 +200 cP m3_ 24 +201 cP m3_ 24 +202 cF m3_ 24 +203 cF m3_ 24 +204 cI m3_ 24 +205 cP m3_ 24 +206 cI m3_ 24 +207 cP 432 24 +208 cP 432 24 +209 cF 432 24 +210 cF 432 24 +211 cI 432 24 +212 cP 432 24 +213 cP 432 24 +214 cI 432 24 +215 cP 4_3m 24 +216 cF 4_3m 24 +217 cI 4_3m 24 +218 cP 4_3m 24 +219 cF 4_3m 24 +220 cI 4_3m 24 +221 cP m3_m 48 +222 cP m3_m 48 +223 cP m3_m 48 +224 cP m3_m 48 +225 cF m3_m 48 +226 cF m3_m 48 +227 cF m3_m 48 +228 cF m3_m 48 +229 cI m3_m 48 +230 cI m3_m 48 diff --git a/data/wyckoff/wyckoff1.txt b/data/wyckoff/wyckoff1.txt new file mode 100644 index 0000000..ba6dbbe --- /dev/null +++ b/data/wyckoff/wyckoff1.txt @@ -0,0 +1 @@ +x y z a diff --git a/data/wyckoff/wyckoff10.txt b/data/wyckoff/wyckoff10.txt new file mode 100644 index 0000000..fa6824e --- /dev/null +++ b/data/wyckoff/wyckoff10.txt @@ -0,0 +1,24 @@ +0 0 0 a +0 1/2 0 b +0 0 1/2 c +1/2 0 0 d +1/2 1/2 0 e +0 1/2 1/2 f +1/2 0 1/2 g +1/2 1/2 1/2 h +0 y 0 i +0 -y 0 i +1/2 y 0 j +1/2 -y 0 j +0 y 1/2 k +0 -y 1/2 k +1/2 y 1/2 l +1/2 -y 1/2 l +x 0 z m +-x 0 -z m +x 1/2 z n +-x 1/2 -z n +x y z o +-x y -z o +-x -y -z o +x -y z o diff --git a/data/wyckoff/wyckoff100.txt b/data/wyckoff/wyckoff100.txt new file mode 100644 index 0000000..83eef69 --- /dev/null +++ b/data/wyckoff/wyckoff100.txt @@ -0,0 +1,16 @@ +0 0 z a +1/2 1/2 z a +1/2 0 z b +0 1/2 z b +x x+1/2 z c +-x -x+1/2 z c +-x+1/2 x z c +x+1/2 -x z c +x y z d +-x -y z d +-y x z d +y -x z d +x+1/2 -y+1/2 z d +-x+1/2 y+1/2 z d +-y+1/2 -x+1/2 z d +y+1/2 x+1/2 z d diff --git a/data/wyckoff/wyckoff101.txt b/data/wyckoff/wyckoff101.txt new file mode 100644 index 0000000..415deee --- /dev/null +++ b/data/wyckoff/wyckoff101.txt @@ -0,0 +1,20 @@ +0 0 z a +0 0 z+1/2 a +1/2 1/2 z b +1/2 1/2 z+1/2 b +0 1/2 z c +1/2 0 z+1/2 c +0 1/2 z+1/2 c +1/2 0 z c +x x z d +-x -x z d +-x x z+1/2 d +x -x z+1/2 d +x y z e +-x -y z e +-y x z+1/2 e +y -x z+1/2 e +x -y z+1/2 e +-x y z+1/2 e +-y -x z e +y x z e diff --git a/data/wyckoff/wyckoff102.txt b/data/wyckoff/wyckoff102.txt new file mode 100644 index 0000000..f4df343 --- /dev/null +++ b/data/wyckoff/wyckoff102.txt @@ -0,0 +1,18 @@ +0 0 z a +1/2 1/2 z+1/2 a +0 1/2 z b +0 1/2 z+1/2 b +1/2 0 z+1/2 b +1/2 0 z b +x x z c +-x -x z c +-x+1/2 x+1/2 z+1/2 c +x+1/2 -x+1/2 z+1/2 c +x y z d +-x -y z d +-y+1/2 x+1/2 z+1/2 d +y+1/2 -x+1/2 z+1/2 d +x+1/2 -y+1/2 z+1/2 d +-x+1/2 y+1/2 z+1/2 d +-y -x z d +y x z d diff --git a/data/wyckoff/wyckoff103.txt b/data/wyckoff/wyckoff103.txt new file mode 100644 index 0000000..6c672c5 --- /dev/null +++ b/data/wyckoff/wyckoff103.txt @@ -0,0 +1,16 @@ +0 0 z a +0 0 z+1/2 a +1/2 1/2 z b +1/2 1/2 z+1/2 b +0 1/2 z c +1/2 0 z c +0 1/2 z+1/2 c +1/2 0 z+1/2 c +x y z d +-x -y z d +-y x z d +y -x z d +x -y z+1/2 d +-x y z+1/2 d +-y -x z+1/2 d +y x z+1/2 d diff --git a/data/wyckoff/wyckoff104.txt b/data/wyckoff/wyckoff104.txt new file mode 100644 index 0000000..bb9cea5 --- /dev/null +++ b/data/wyckoff/wyckoff104.txt @@ -0,0 +1,14 @@ +0 0 z a +1/2 1/2 z+1/2 a +0 1/2 z b +1/2 0 z b +1/2 0 z+1/2 b +0 1/2 z+1/2 b +x y z c +-x -y z c +-y x z c +y -x z c +x+1/2 -y+1/2 z+1/2 c +-x+1/2 y+1/2 z+1/2 c +-y+1/2 -x+1/2 z+1/2 c +y+1/2 x+1/2 z+1/2 c diff --git a/data/wyckoff/wyckoff105.txt b/data/wyckoff/wyckoff105.txt new file mode 100644 index 0000000..b70528b --- /dev/null +++ b/data/wyckoff/wyckoff105.txt @@ -0,0 +1,22 @@ +0 0 z a +0 0 z+1/2 a +1/2 1/2 z b +1/2 1/2 z+1/2 b +0 1/2 z c +1/2 0 z+1/2 c +x 0 z d +-x 0 z d +0 x z+1/2 d +0 -x z+1/2 d +x 1/2 z e +-x 1/2 z e +1/2 x z+1/2 e +1/2 -x z+1/2 e +x y z f +-x -y z f +-y x z+1/2 f +y -x z+1/2 f +x -y z f +-x y z f +-y -x z+1/2 f +y x z+1/2 f diff --git a/data/wyckoff/wyckoff106.txt b/data/wyckoff/wyckoff106.txt new file mode 100644 index 0000000..aa89cb4 --- /dev/null +++ b/data/wyckoff/wyckoff106.txt @@ -0,0 +1,16 @@ +0 0 z a +0 0 z+1/2 a +1/2 1/2 z a +1/2 1/2 z+1/2 a +0 1/2 z b +1/2 0 z+1/2 b +1/2 0 z b +0 1/2 z+1/2 b +x y z c +-x -y z c +-y x z+1/2 c +y -x z+1/2 c +x+1/2 -y+1/2 z c +-x+1/2 y+1/2 z c +-y+1/2 -x+1/2 z+1/2 c +y+1/2 x+1/2 z+1/2 c diff --git a/data/wyckoff/wyckoff107.txt b/data/wyckoff/wyckoff107.txt new file mode 100644 index 0000000..e134334 --- /dev/null +++ b/data/wyckoff/wyckoff107.txt @@ -0,0 +1,19 @@ +0 0 z a +0 1/2 z b +1/2 0 z b +x x z c +-x -x z c +-x x z c +x -x z c +x 0 z d +-x 0 z d +0 x z d +0 -x z d +x y z e +-x -y z e +-y x z e +y -x z e +x -y z e +-x y z e +-y -x z e +y x z e diff --git a/data/wyckoff/wyckoff108.txt b/data/wyckoff/wyckoff108.txt new file mode 100644 index 0000000..31e4fe2 --- /dev/null +++ b/data/wyckoff/wyckoff108.txt @@ -0,0 +1,16 @@ +0 0 z a +0 0 z+1/2 a +1/2 0 z b +0 1/2 z b +x x+1/2 z c +-x -x+1/2 z c +-x+1/2 x z c +x+1/2 -x z c +x y z d +-x -y z d +-y x z d +y -x z d +x -y z+1/2 d +-x y z+1/2 d +-y -x z+1/2 d +y x z+1/2 d diff --git a/data/wyckoff/wyckoff109.txt b/data/wyckoff/wyckoff109.txt new file mode 100644 index 0000000..160d899 --- /dev/null +++ b/data/wyckoff/wyckoff109.txt @@ -0,0 +1,14 @@ +0 0 z a +0 1/2 z+1/4 a +0 y z b +1/2 -y+1/2 z+1/2 b +-y 1/2 z+1/4 b +y+1/2 0 z+3/4 b +x y z c +-x+1/2 -y+1/2 z+1/2 c +-y x+1/2 z+1/4 c +y+1/2 -x z+3/4 c +x -y z c +-x+1/2 y+1/2 z+1/2 c +-y -x+1/2 z+1/4 c +y+1/2 x z+3/4 c diff --git a/data/wyckoff/wyckoff11.txt b/data/wyckoff/wyckoff11.txt new file mode 100644 index 0000000..b6456ca --- /dev/null +++ b/data/wyckoff/wyckoff11.txt @@ -0,0 +1,14 @@ +0 0 0 a +0 1/2 0 a +1/2 0 0 b +1/2 1/2 0 b +0 0 1/2 c +0 1/2 1/2 c +1/2 0 1/2 d +1/2 1/2 1/2 d +x 1/4 z e +-x 3/4 -z e +x y z f +-x y+1/2 -z f +-x -y -z f +x -y+1/2 z f diff --git a/data/wyckoff/wyckoff110.txt b/data/wyckoff/wyckoff110.txt new file mode 100644 index 0000000..8781b64 --- /dev/null +++ b/data/wyckoff/wyckoff110.txt @@ -0,0 +1,12 @@ +0 0 z a +0 1/2 z+1/4 a +0 0 z+1/2 a +0 1/2 z+3/4 a +x y z b +-x+1/2 -y+1/2 z+1/2 b +-y x+1/2 z+1/4 b +y+1/2 -x z+3/4 b +x -y z+1/2 b +-x+1/2 y+1/2 z b +-y -x+1/2 z+3/4 b +y+1/2 x z+1/4 b diff --git a/data/wyckoff/wyckoff111.txt b/data/wyckoff/wyckoff111.txt new file mode 100644 index 0000000..7355fc7 --- /dev/null +++ b/data/wyckoff/wyckoff111.txt @@ -0,0 +1,44 @@ +0 0 0 a +1/2 1/2 1/2 b +0 0 1/2 c +1/2 1/2 0 d +1/2 0 0 e +0 1/2 0 e +1/2 0 1/2 f +0 1/2 1/2 f +0 0 z g +0 0 -z g +1/2 1/2 z h +1/2 1/2 -z h +x 0 0 i +-x 0 0 i +0 -x 0 i +0 x 0 i +x 1/2 1/2 j +-x 1/2 1/2 j +1/2 -x 1/2 j +1/2 x 1/2 j +x 0 1/2 k +-x 0 1/2 k +0 -x 1/2 k +0 x 1/2 k +x 1/2 0 l +-x 1/2 0 l +1/2 -x 0 l +1/2 x 0 l +0 1/2 z m +1/2 0 -z m +0 1/2 -z m +1/2 0 z m +x x z n +-x -x z n +x -x -z n +-x x -z n +x y z o +-x -y z o +y -x -z o +-y x -z o +-x y -z o +x -y -z o +-y -x z o +y x z o diff --git a/data/wyckoff/wyckoff112.txt b/data/wyckoff/wyckoff112.txt new file mode 100644 index 0000000..ac072db --- /dev/null +++ b/data/wyckoff/wyckoff112.txt @@ -0,0 +1,48 @@ +0 0 1/4 a +0 0 3/4 a +1/2 0 1/4 b +0 1/2 3/4 b +1/2 1/2 1/4 c +1/2 1/2 3/4 c +0 1/2 1/4 d +1/2 0 3/4 d +0 0 0 e +0 0 1/2 e +1/2 1/2 0 f +1/2 1/2 1/2 f +x 0 1/4 g +-x 0 1/4 g +0 -x 3/4 g +0 x 3/4 g +1/2 y 1/4 h +1/2 -y 1/4 h +y 1/2 3/4 h +-y 1/2 3/4 h +x 1/2 1/4 i +-x 1/2 1/4 i +1/2 -x 3/4 i +1/2 x 3/4 i +0 y 1/4 j +0 -y 1/4 j +y 0 3/4 j +-y 0 3/4 j +0 0 z k +0 0 -z k +0 0 -z+1/2 k +0 0 z+1/2 k +1/2 1/2 z l +1/2 1/2 -z l +1/2 1/2 -z+1/2 l +1/2 1/2 z+1/2 l +0 1/2 z m +1/2 0 -z m +0 1/2 -z+1/2 m +1/2 0 z+1/2 m +x y z n +-x -y z n +y -x -z n +-y x -z n +-x y -z+1/2 n +x -y -z+1/2 n +-y -x z+1/2 n +y x z+1/2 n diff --git a/data/wyckoff/wyckoff113.txt b/data/wyckoff/wyckoff113.txt new file mode 100644 index 0000000..91d9c33 --- /dev/null +++ b/data/wyckoff/wyckoff113.txt @@ -0,0 +1,22 @@ +0 0 0 a +1/2 1/2 0 a +0 0 1/2 b +1/2 1/2 1/2 b +0 1/2 z c +1/2 0 -z c +0 0 z d +0 0 -z d +1/2 1/2 -z d +1/2 1/2 z d +x x+1/2 z e +-x -x+1/2 z e +x+1/2 -x -z e +-x+1/2 x -z e +x y z f +-x -y z f +y -x -z f +-y x -z f +-x+1/2 y+1/2 -z f +x+1/2 -y+1/2 -z f +-y+1/2 -x+1/2 z f +y+1/2 x+1/2 z f diff --git a/data/wyckoff/wyckoff114.txt b/data/wyckoff/wyckoff114.txt new file mode 100644 index 0000000..fcd1bc1 --- /dev/null +++ b/data/wyckoff/wyckoff114.txt @@ -0,0 +1,20 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +0 0 z c +0 0 -z c +1/2 1/2 -z+1/2 c +1/2 1/2 z+1/2 c +0 1/2 z d +1/2 0 -z d +1/2 0 -z+1/2 d +0 1/2 z+1/2 d +x y z e +-x -y z e +y -x -z e +-y x -z e +-x+1/2 y+1/2 -z+1/2 e +x+1/2 -y+1/2 -z+1/2 e +-y+1/2 -x+1/2 z+1/2 e +y+1/2 x+1/2 z+1/2 e diff --git a/data/wyckoff/wyckoff115.txt b/data/wyckoff/wyckoff115.txt new file mode 100644 index 0000000..016fe32 --- /dev/null +++ b/data/wyckoff/wyckoff115.txt @@ -0,0 +1,34 @@ +0 0 0 a +1/2 1/2 0 b +1/2 1/2 1/2 c +0 0 1/2 d +0 0 z e +0 0 -z e +1/2 1/2 z f +1/2 1/2 -z f +0 1/2 z g +1/2 0 -z g +x x 0 h +-x -x 0 h +x -x 0 h +-x x 0 h +x x 1/2 i +-x -x 1/2 i +x -x 1/2 i +-x x 1/2 i +x 0 z j +-x 0 z j +0 -x -z j +0 x -z j +x 1/2 z k +-x 1/2 z k +1/2 -x -z k +1/2 x -z k +x y z l +-x -y z l +y -x -z l +-y x -z l +x -y z l +-x y z l +y x -z l +-y -x -z l diff --git a/data/wyckoff/wyckoff116.txt b/data/wyckoff/wyckoff116.txt new file mode 100644 index 0000000..7371b0b --- /dev/null +++ b/data/wyckoff/wyckoff116.txt @@ -0,0 +1,36 @@ +0 0 1/4 a +0 0 3/4 a +1/2 1/2 1/4 b +1/2 1/2 3/4 b +0 0 0 c +0 0 1/2 c +1/2 1/2 0 d +1/2 1/2 1/2 d +x x 1/4 e +-x -x 1/4 e +x -x 3/4 e +-x x 3/4 e +x x 3/4 f +-x -x 3/4 f +x -x 1/4 f +-x x 1/4 f +0 0 z g +0 0 -z g +0 0 z+1/2 g +0 0 -z+1/2 g +1/2 1/2 z h +1/2 1/2 -z h +1/2 1/2 z+1/2 h +1/2 1/2 -z+1/2 h +0 1/2 z i +1/2 0 -z i +0 1/2 z+1/2 i +1/2 0 -z+1/2 i +x y z j +-x -y z j +y -x -z j +-y x -z j +x -y z+1/2 j +-x y z+1/2 j +y x -z+1/2 j +-y -x -z+1/2 j diff --git a/data/wyckoff/wyckoff117.txt b/data/wyckoff/wyckoff117.txt new file mode 100644 index 0000000..aa385c5 --- /dev/null +++ b/data/wyckoff/wyckoff117.txt @@ -0,0 +1,32 @@ +0 0 0 a +1/2 1/2 0 a +0 0 1/2 b +1/2 1/2 1/2 b +0 1/2 0 c +1/2 0 0 c +0 1/2 1/2 d +1/2 0 1/2 d +0 0 z e +0 0 -z e +1/2 1/2 z e +1/2 1/2 -z e +0 1/2 z f +1/2 0 -z f +1/2 0 z f +0 1/2 -z f +x x+1/2 0 g +-x -x+1/2 0 g +x+1/2 -x 0 g +-x+1/2 x 0 g +x x+1/2 1/2 h +-x -x+1/2 1/2 h +x+1/2 -x 1/2 h +-x+1/2 x 1/2 h +x y z i +-x -y z i +y -x -z i +-y x -z i +x+1/2 -y+1/2 z i +-x+1/2 y+1/2 z i +y+1/2 x+1/2 -z i +-y+1/2 -x+1/2 -z i diff --git a/data/wyckoff/wyckoff118.txt b/data/wyckoff/wyckoff118.txt new file mode 100644 index 0000000..3a3f93e --- /dev/null +++ b/data/wyckoff/wyckoff118.txt @@ -0,0 +1,32 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +0 1/2 1/4 c +1/2 0 3/4 c +0 1/2 3/4 d +1/2 0 1/4 d +0 0 z e +0 0 -z e +1/2 1/2 z+1/2 e +1/2 1/2 -z+1/2 e +x -x+1/2 1/4 f +-x x+1/2 1/4 f +-x+1/2 -x 3/4 f +x+1/2 x 3/4 f +x x+1/2 1/4 g +-x -x+1/2 1/4 g +x+1/2 -x 3/4 g +-x+1/2 x 3/4 g +0 1/2 z h +1/2 0 -z h +1/2 0 z+1/2 h +0 1/2 -z+1/2 h +x y z i +-x -y z i +y -x -z i +-y x -z i +x+1/2 -y+1/2 z+1/2 i +-x+1/2 y+1/2 z+1/2 i +y+1/2 x+1/2 -z+1/2 i +-y+1/2 -x+1/2 -z+1/2 i diff --git a/data/wyckoff/wyckoff119.txt b/data/wyckoff/wyckoff119.txt new file mode 100644 index 0000000..a435762 --- /dev/null +++ b/data/wyckoff/wyckoff119.txt @@ -0,0 +1,28 @@ +0 0 0 a +0 0 1/2 b +0 1/2 1/4 c +0 1/2 3/4 d +0 0 z e +0 0 -z e +0 1/2 z f +1/2 0 -z f +x x 0 g +-x -x 0 g +x -x 0 g +-x x 0 g +x x+1/2 1/4 h +-x -x+1/2 1/4 h +x+1/2 -x 3/4 h +-x+1/2 x 3/4 h +x 0 z i +-x 0 z i +0 -x -z i +0 x -z i +x y z j +-x -y z j +y -x -z j +-y x -z j +x -y z j +-x y z j +y x -z j +-y -x -z j diff --git a/data/wyckoff/wyckoff12.txt b/data/wyckoff/wyckoff12.txt new file mode 100644 index 0000000..6170534 --- /dev/null +++ b/data/wyckoff/wyckoff12.txt @@ -0,0 +1,18 @@ +0 0 0 a +0 1/2 0 b +0 0 1/2 c +0 1/2 1/2 d +1/4 1/4 0 e +3/4 1/4 0 e +1/4 1/4 1/2 f +3/4 1/4 1/2 f +0 y 0 g +0 -y 0 g +0 y 1/2 h +0 -y 1/2 h +x 0 z i +-x 0 -z i +x y z j +-x y -z j +-x -y -z j +x -y z j diff --git a/data/wyckoff/wyckoff120.txt b/data/wyckoff/wyckoff120.txt new file mode 100644 index 0000000..1d13805 --- /dev/null +++ b/data/wyckoff/wyckoff120.txt @@ -0,0 +1,32 @@ +0 0 1/4 a +0 0 3/4 a +0 0 0 b +0 0 1/2 b +0 1/2 1/4 c +0 1/2 3/4 c +0 1/2 0 d +1/2 0 0 d +x x 1/4 e +-x -x 1/4 e +x -x 3/4 e +-x x 3/4 e +0 0 z f +0 0 -z f +0 0 z+1/2 f +0 0 -z+1/2 f +0 1/2 z g +1/2 0 -z g +0 1/2 z+1/2 g +1/2 0 -z+1/2 g +x x+1/2 0 h +-x -x+1/2 0 h +x+1/2 -x 0 h +-x+1/2 x 0 h +x y z i +-x -y z i +y -x -z i +-y x -z i +x -y z+1/2 i +-x y z+1/2 i +y x -z+1/2 i +-y -x -z+1/2 i diff --git a/data/wyckoff/wyckoff121.txt b/data/wyckoff/wyckoff121.txt new file mode 100644 index 0000000..0f0ece6 --- /dev/null +++ b/data/wyckoff/wyckoff121.txt @@ -0,0 +1,32 @@ +0 0 0 a +0 0 1/2 b +0 1/2 0 c +1/2 0 0 c +0 1/2 1/4 d +0 1/2 3/4 d +0 0 z e +0 0 -z e +x 0 0 f +-x 0 0 f +0 -x 0 f +0 x 0 f +x 0 1/2 g +-x 0 1/2 g +0 -x 1/2 g +0 x 1/2 g +0 1/2 z h +1/2 0 -z h +0 1/2 -z h +1/2 0 z h +x x z i +-x -x z i +x -x -z i +-x x -z i +x y z j +-x -y z j +y -x -z j +-y x -z j +-x y -z j +x -y -z j +-y -x z j +y x z j diff --git a/data/wyckoff/wyckoff122.txt b/data/wyckoff/wyckoff122.txt new file mode 100644 index 0000000..c6203ff --- /dev/null +++ b/data/wyckoff/wyckoff122.txt @@ -0,0 +1,20 @@ +0 0 0 a +1/2 0 3/4 a +0 0 1/2 b +1/2 0 1/4 b +0 0 z c +0 0 -z c +1/2 0 -z+3/4 c +1/2 0 z+3/4 c +x 1/4 1/8 d +-x 3/4 1/8 d +1/4 -x 7/8 d +3/4 x 7/8 d +x y z e +-x -y z e +y -x -z e +-y x -z e +-x+1/2 y -z+3/4 e +x+1/2 -y -z+3/4 e +-y+1/2 -x z+3/4 e +y+1/2 x z+3/4 e diff --git a/data/wyckoff/wyckoff123.txt b/data/wyckoff/wyckoff123.txt new file mode 100644 index 0000000..8a8e059 --- /dev/null +++ b/data/wyckoff/wyckoff123.txt @@ -0,0 +1,96 @@ +0 0 0 a +0 0 1/2 b +1/2 1/2 0 c +1/2 1/2 1/2 d +0 1/2 1/2 e +1/2 0 1/2 e +0 1/2 0 f +1/2 0 0 f +0 0 z g +0 0 -z g +1/2 1/2 z h +1/2 1/2 -z h +0 1/2 z i +1/2 0 z i +0 1/2 -z i +1/2 0 -z i +x x 0 j +-x -x 0 j +-x x 0 j +x -x 0 j +x x 1/2 k +-x -x 1/2 k +-x x 1/2 k +x -x 1/2 k +x 0 0 l +-x 0 0 l +0 x 0 l +0 -x 0 l +x 0 1/2 m +-x 0 1/2 m +0 x 1/2 m +0 -x 1/2 m +x 1/2 0 n +-x 1/2 0 n +1/2 x 0 n +1/2 -x 0 n +x 1/2 1/2 o +-x 1/2 1/2 o +1/2 x 1/2 o +1/2 -x 1/2 o +x y 0 p +-x -y 0 p +-y x 0 p +y -x 0 p +-x y 0 p +x -y 0 p +y x 0 p +-y -x 0 p +x y 1/2 q +-x -y 1/2 q +-y x 1/2 q +y -x 1/2 q +-x y 1/2 q +x -y 1/2 q +y x 1/2 q +-y -x 1/2 q +x x z r +-x -x z r +-x x z r +x -x z r +-x x -z r +x -x -z r +x x -z r +-x -x -z r +x 0 z s +-x 0 z s +0 x z s +0 -x z s +-x 0 -z s +x 0 -z s +0 x -z s +0 -x -z s +x 1/2 z t +-x 1/2 z t +1/2 x z t +1/2 -x z t +-x 1/2 -z t +x 1/2 -z t +1/2 x -z t +1/2 -x -z t +x y z u +-x -y z u +-y x z u +y -x z u +-x y -z u +x -y -z u +y x -z u +-y -x -z u +-x -y -z u +x y -z u +y -x -z u +-y x -z u +x -y z u +-x y z u +-y -x z u +y x z u diff --git a/data/wyckoff/wyckoff124.txt b/data/wyckoff/wyckoff124.txt new file mode 100644 index 0000000..7faaa16 --- /dev/null +++ b/data/wyckoff/wyckoff124.txt @@ -0,0 +1,80 @@ +0 0 1/4 a +0 0 3/4 a +0 0 0 b +0 0 1/2 b +1/2 1/2 1/4 c +1/2 1/2 3/4 c +1/2 1/2 0 d +1/2 1/2 1/2 d +0 1/2 0 e +1/2 0 0 e +0 1/2 1/2 e +1/2 0 1/2 e +0 1/2 1/4 f +1/2 0 1/4 f +0 1/2 3/4 f +1/2 0 3/4 f +0 0 z g +0 0 -z+1/2 g +0 0 -z g +0 0 z+1/2 g +1/2 1/2 z h +1/2 1/2 -z+1/2 h +1/2 1/2 -z h +1/2 1/2 z+1/2 h +0 1/2 z i +1/2 0 z i +0 1/2 -z+1/2 i +1/2 0 -z+1/2 i +0 1/2 -z i +1/2 0 -z i +0 1/2 z+1/2 i +1/2 0 z+1/2 i +x x 1/4 j +-x -x 1/4 j +-x x 1/4 j +x -x 1/4 j +-x -x 3/4 j +x x 3/4 j +x -x 3/4 j +-x x 3/4 j +x 0 1/4 k +-x 0 1/4 k +0 x 1/4 k +0 -x 1/4 k +-x 0 3/4 k +x 0 3/4 k +0 -x 3/4 k +0 x 3/4 k +x 1/2 1/4 l +-x 1/2 1/4 l +1/2 x 1/4 l +1/2 -x 1/4 l +-x 1/2 3/4 l +x 1/2 3/4 l +1/2 -x 3/4 l +1/2 x 3/4 l +x y 0 m +-x -y 0 m +-y x 0 m +y -x 0 m +-x y 1/2 m +x -y 1/2 m +y x 1/2 m +-y -x 1/2 m +x y z n +-x -y z n +-y x z n +y -x z n +-x y -z+1/2 n +x -y -z+1/2 n +y x -z+1/2 n +-y -x -z+1/2 n +-x -y -z n +x y -z n +y -x -z n +-y x -z n +x -y z+1/2 n +-x y z+1/2 n +-y -x z+1/2 n +y x z+1/2 n diff --git a/data/wyckoff/wyckoff125.txt b/data/wyckoff/wyckoff125.txt new file mode 100644 index 0000000..58118ff --- /dev/null +++ b/data/wyckoff/wyckoff125.txt @@ -0,0 +1,80 @@ +0 0 0 a +1/2 1/2 0 a +0 0 1/2 b +1/2 1/2 1/2 b +0 1/2 0 c +1/2 0 0 c +0 1/2 1/2 d +1/2 0 1/2 d +1/4 1/4 0 e +3/4 3/4 0 e +3/4 1/4 0 e +1/4 3/4 0 e +1/4 1/4 1/2 f +3/4 3/4 1/2 f +3/4 1/4 1/2 f +1/4 3/4 1/2 f +0 0 z g +0 0 -z g +1/2 1/2 -z g +1/2 1/2 z g +0 1/2 z h +1/2 0 z h +0 1/2 -z h +1/2 0 -z h +x x 0 i +-x -x 0 i +-x x 0 i +x -x 0 i +-x+1/2 -x+1/2 0 i +x+1/2 x+1/2 0 i +x+1/2 -x+1/2 0 i +-x+1/2 x+1/2 0 i +x x 1/2 j +-x -x 1/2 j +-x x 1/2 j +x -x 1/2 j +-x+1/2 -x+1/2 1/2 j +x+1/2 x+1/2 1/2 j +x+1/2 -x+1/2 1/2 j +-x+1/2 x+1/2 1/2 j +x 0 0 k +-x 0 0 k +0 x 0 k +0 -x 0 k +-x+1/2 1/2 0 k +x+1/2 1/2 0 k +1/2 -x+1/2 0 k +1/2 x+1/2 0 k +x 0 1/2 l +-x 0 1/2 l +0 x 1/2 l +0 -x 1/2 l +-x+1/2 1/2 1/2 l +x+1/2 1/2 1/2 l +1/2 -x+1/2 1/2 l +1/2 x+1/2 1/2 l +x x+1/2 z m +-x -x+1/2 z m +-x+1/2 x z m +x+1/2 -x z m +-x x+1/2 -z m +x -x+1/2 -z m +x+1/2 x -z m +-x+1/2 -x -z m +x y z n +-x -y z n +-y x z n +y -x z n +-x y -z n +x -y -z n +y x -z n +-y -x -z n +-x+1/2 -y+1/2 -z n +x+1/2 y+1/2 -z n +y+1/2 -x+1/2 -z n +-y+1/2 x+1/2 -z n +x+1/2 -y+1/2 z n +-x+1/2 y+1/2 z n +-y+1/2 -x+1/2 z n +y+1/2 x+1/2 z n diff --git a/data/wyckoff/wyckoff125s1.txt b/data/wyckoff/wyckoff125s1.txt new file mode 100644 index 0000000..58118ff --- /dev/null +++ b/data/wyckoff/wyckoff125s1.txt @@ -0,0 +1,80 @@ +0 0 0 a +1/2 1/2 0 a +0 0 1/2 b +1/2 1/2 1/2 b +0 1/2 0 c +1/2 0 0 c +0 1/2 1/2 d +1/2 0 1/2 d +1/4 1/4 0 e +3/4 3/4 0 e +3/4 1/4 0 e +1/4 3/4 0 e +1/4 1/4 1/2 f +3/4 3/4 1/2 f +3/4 1/4 1/2 f +1/4 3/4 1/2 f +0 0 z g +0 0 -z g +1/2 1/2 -z g +1/2 1/2 z g +0 1/2 z h +1/2 0 z h +0 1/2 -z h +1/2 0 -z h +x x 0 i +-x -x 0 i +-x x 0 i +x -x 0 i +-x+1/2 -x+1/2 0 i +x+1/2 x+1/2 0 i +x+1/2 -x+1/2 0 i +-x+1/2 x+1/2 0 i +x x 1/2 j +-x -x 1/2 j +-x x 1/2 j +x -x 1/2 j +-x+1/2 -x+1/2 1/2 j +x+1/2 x+1/2 1/2 j +x+1/2 -x+1/2 1/2 j +-x+1/2 x+1/2 1/2 j +x 0 0 k +-x 0 0 k +0 x 0 k +0 -x 0 k +-x+1/2 1/2 0 k +x+1/2 1/2 0 k +1/2 -x+1/2 0 k +1/2 x+1/2 0 k +x 0 1/2 l +-x 0 1/2 l +0 x 1/2 l +0 -x 1/2 l +-x+1/2 1/2 1/2 l +x+1/2 1/2 1/2 l +1/2 -x+1/2 1/2 l +1/2 x+1/2 1/2 l +x x+1/2 z m +-x -x+1/2 z m +-x+1/2 x z m +x+1/2 -x z m +-x x+1/2 -z m +x -x+1/2 -z m +x+1/2 x -z m +-x+1/2 -x -z m +x y z n +-x -y z n +-y x z n +y -x z n +-x y -z n +x -y -z n +y x -z n +-y -x -z n +-x+1/2 -y+1/2 -z n +x+1/2 y+1/2 -z n +y+1/2 -x+1/2 -z n +-y+1/2 x+1/2 -z n +x+1/2 -y+1/2 z n +-x+1/2 y+1/2 z n +-y+1/2 -x+1/2 z n +y+1/2 x+1/2 z n diff --git a/data/wyckoff/wyckoff125s2.txt b/data/wyckoff/wyckoff125s2.txt new file mode 100644 index 0000000..1b1a7c6 --- /dev/null +++ b/data/wyckoff/wyckoff125s2.txt @@ -0,0 +1,80 @@ +1/4 1/4 0 a +3/4 3/4 0 a +1/4 1/4 1/2 b +3/4 3/4 1/2 b +3/4 1/4 0 c +1/4 3/4 0 c +3/4 1/4 1/2 d +1/4 3/4 1/2 d +0 0 0 e +1/2 1/2 0 e +1/2 0 0 e +0 1/2 0 e +0 0 1/2 f +1/2 1/2 1/2 f +1/2 0 1/2 f +0 1/2 1/2 f +1/4 1/4 z g +1/4 1/4 -z g +3/4 3/4 -z g +3/4 3/4 z g +3/4 1/4 z h +1/4 3/4 z h +3/4 1/4 -z h +1/4 3/4 -z h +x x 0 i +-x+1/2 -x+1/2 0 i +-x+1/2 x 0 i +x -x+1/2 0 i +-x -x 0 i +x+1/2 x+1/2 0 i +x+1/2 -x 0 i +-x x+1/2 0 i +x x 1/2 j +-x+1/2 -x+1/2 1/2 j +-x+1/2 x 1/2 j +x -x+1/2 1/2 j +-x -x 1/2 j +x+1/2 x+1/2 1/2 j +x+1/2 -x 1/2 j +-x x+1/2 1/2 j +x 1/4 0 k +-x+1/2 1/4 0 k +1/4 x 0 k +1/4 -x+1/2 0 k +-x 3/4 0 k +x+1/2 3/4 0 k +3/4 -x 0 k +3/4 x+1/2 0 k +x 1/4 1/2 l +-x+1/2 1/4 1/2 l +1/4 x 1/2 l +1/4 -x+1/2 1/2 l +-x 3/4 1/2 l +x+1/2 3/4 1/2 l +3/4 -x 1/2 l +3/4 x+1/2 1/2 l +x -x z m +-x+1/2 x+1/2 z m +x+1/2 x z m +-x -x+1/2 z m +-x+1/2 -x -z m +x x+1/2 -z m +-x x -z m +x+1/2 -x+1/2 -z m +x y z n +-x+1/2 -y+1/2 z n +-y+1/2 x z n +y -x+1/2 z n +-x+1/2 y -z n +x -y+1/2 -z n +y x -z n +-y+1/2 -x+1/2 -z n +-x -y -z n +x+1/2 y+1/2 -z n +y+1/2 -x -z n +-y x+1/2 -z n +x+1/2 -y z n +-x y+1/2 z n +-y -x z n +y+1/2 x+1/2 z n diff --git a/data/wyckoff/wyckoff126.txt b/data/wyckoff/wyckoff126.txt new file mode 100644 index 0000000..8fa5cdf --- /dev/null +++ b/data/wyckoff/wyckoff126.txt @@ -0,0 +1,72 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +1/2 0 0 c +0 1/2 0 c +0 1/2 1/2 c +1/2 0 1/2 c +1/2 0 1/4 d +0 1/2 1/4 d +1/2 0 3/4 d +0 1/2 3/4 d +0 0 z e +0 0 -z e +1/2 1/2 -z+1/2 e +1/2 1/2 z+1/2 e +1/4 1/4 1/4 f +3/4 3/4 1/4 f +3/4 1/4 1/4 f +1/4 3/4 1/4 f +3/4 1/4 3/4 f +1/4 3/4 3/4 f +1/4 1/4 3/4 f +3/4 3/4 3/4 f +1/2 0 z g +0 1/2 z g +1/2 0 -z g +0 1/2 -z g +0 1/2 -z+1/2 g +1/2 0 -z+1/2 g +0 1/2 z+1/2 g +1/2 0 z+1/2 g +x x 0 h +-x -x 0 h +-x x 0 h +x -x 0 h +-x+1/2 -x+1/2 1/2 h +x+1/2 x+1/2 1/2 h +x+1/2 -x+1/2 1/2 h +-x+1/2 x+1/2 1/2 h +x 0 0 i +-x 0 0 i +0 x 0 i +0 -x 0 i +-x+1/2 1/2 1/2 i +x+1/2 1/2 1/2 i +1/2 -x+1/2 1/2 i +1/2 x+1/2 1/2 i +x 0 1/2 j +-x 0 1/2 j +0 x 1/2 j +0 -x 1/2 j +-x+1/2 1/2 0 j +x+1/2 1/2 0 j +1/2 -x+1/2 0 j +1/2 x+1/2 0 j +x y z k +-x -y z k +-y x z k +y -x z k +-x y -z k +x -y -z k +y x -z k +-y -x -z k +-x+1/2 -y+1/2 -z+1/2 k +x+1/2 y+1/2 -z+1/2 k +y+1/2 -x+1/2 -z+1/2 k +-y+1/2 x+1/2 -z+1/2 k +x+1/2 -y+1/2 z+1/2 k +-x+1/2 y+1/2 z+1/2 k +-y+1/2 -x+1/2 z+1/2 k +y+1/2 x+1/2 z+1/2 k diff --git a/data/wyckoff/wyckoff126s1.txt b/data/wyckoff/wyckoff126s1.txt new file mode 100644 index 0000000..8fa5cdf --- /dev/null +++ b/data/wyckoff/wyckoff126s1.txt @@ -0,0 +1,72 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +1/2 0 0 c +0 1/2 0 c +0 1/2 1/2 c +1/2 0 1/2 c +1/2 0 1/4 d +0 1/2 1/4 d +1/2 0 3/4 d +0 1/2 3/4 d +0 0 z e +0 0 -z e +1/2 1/2 -z+1/2 e +1/2 1/2 z+1/2 e +1/4 1/4 1/4 f +3/4 3/4 1/4 f +3/4 1/4 1/4 f +1/4 3/4 1/4 f +3/4 1/4 3/4 f +1/4 3/4 3/4 f +1/4 1/4 3/4 f +3/4 3/4 3/4 f +1/2 0 z g +0 1/2 z g +1/2 0 -z g +0 1/2 -z g +0 1/2 -z+1/2 g +1/2 0 -z+1/2 g +0 1/2 z+1/2 g +1/2 0 z+1/2 g +x x 0 h +-x -x 0 h +-x x 0 h +x -x 0 h +-x+1/2 -x+1/2 1/2 h +x+1/2 x+1/2 1/2 h +x+1/2 -x+1/2 1/2 h +-x+1/2 x+1/2 1/2 h +x 0 0 i +-x 0 0 i +0 x 0 i +0 -x 0 i +-x+1/2 1/2 1/2 i +x+1/2 1/2 1/2 i +1/2 -x+1/2 1/2 i +1/2 x+1/2 1/2 i +x 0 1/2 j +-x 0 1/2 j +0 x 1/2 j +0 -x 1/2 j +-x+1/2 1/2 0 j +x+1/2 1/2 0 j +1/2 -x+1/2 0 j +1/2 x+1/2 0 j +x y z k +-x -y z k +-y x z k +y -x z k +-x y -z k +x -y -z k +y x -z k +-y -x -z k +-x+1/2 -y+1/2 -z+1/2 k +x+1/2 y+1/2 -z+1/2 k +y+1/2 -x+1/2 -z+1/2 k +-y+1/2 x+1/2 -z+1/2 k +x+1/2 -y+1/2 z+1/2 k +-x+1/2 y+1/2 z+1/2 k +-y+1/2 -x+1/2 z+1/2 k +y+1/2 x+1/2 z+1/2 k diff --git a/data/wyckoff/wyckoff126s2.txt b/data/wyckoff/wyckoff126s2.txt new file mode 100644 index 0000000..bf5d0cb --- /dev/null +++ b/data/wyckoff/wyckoff126s2.txt @@ -0,0 +1,72 @@ +1/4 1/4 1/4 a +3/4 3/4 3/4 a +1/4 1/4 3/4 b +3/4 3/4 1/4 b +1/4 3/4 3/4 c +3/4 1/4 3/4 c +3/4 1/4 1/4 c +1/4 3/4 1/4 c +1/4 3/4 0 d +3/4 1/4 0 d +1/4 3/4 1/2 d +3/4 1/4 1/2 d +1/4 1/4 z e +1/4 1/4 -z+1/2 e +3/4 3/4 -z e +3/4 3/4 z+1/2 e +0 0 0 f +1/2 1/2 0 f +1/2 0 0 f +0 1/2 0 f +1/2 0 1/2 f +0 1/2 1/2 f +0 0 1/2 f +1/2 1/2 1/2 f +1/4 3/4 z g +3/4 1/4 z g +1/4 3/4 -z+1/2 g +3/4 1/4 -z+1/2 g +3/4 1/4 -z g +1/4 3/4 -z g +3/4 1/4 z+1/2 g +1/4 3/4 z+1/2 g +x x 1/4 h +-x+1/2 -x+1/2 1/4 h +-x+1/2 x 1/4 h +x -x+1/2 1/4 h +-x -x 3/4 h +x+1/2 x+1/2 3/4 h +x+1/2 -x 3/4 h +-x x+1/2 3/4 h +x 1/4 1/4 i +-x+1/2 1/4 1/4 i +1/4 x 1/4 i +1/4 -x+1/2 1/4 i +-x 3/4 3/4 i +x+1/2 3/4 3/4 i +3/4 -x 3/4 i +3/4 x+1/2 3/4 i +x 3/4 1/4 j +-x+1/2 3/4 1/4 j +3/4 x 1/4 j +3/4 -x+1/2 1/4 j +-x 1/4 3/4 j +x+1/2 1/4 3/4 j +1/4 -x 3/4 j +1/4 x+1/2 3/4 j +x y z k +-x+1/2 -y+1/2 z k +-y+1/2 x z k +y -x+1/2 z k +-x+1/2 y -z+1/2 k +x -y+1/2 -z+1/2 k +y x -z+1/2 k +-y+1/2 -x+1/2 -z+1/2 k +-x -y -z k +x+1/2 y+1/2 -z k +y+1/2 -x -z k +-y x+1/2 -z k +x+1/2 -y z+1/2 k +-x y+1/2 z+1/2 k +-y -x z+1/2 k +y+1/2 x+1/2 z+1/2 k diff --git a/data/wyckoff/wyckoff127.txt b/data/wyckoff/wyckoff127.txt new file mode 100644 index 0000000..5eedf98 --- /dev/null +++ b/data/wyckoff/wyckoff127.txt @@ -0,0 +1,64 @@ +0 0 0 a +1/2 1/2 0 a +0 0 1/2 b +1/2 1/2 1/2 b +0 1/2 1/2 c +1/2 0 1/2 c +0 1/2 0 d +1/2 0 0 d +0 0 z e +1/2 1/2 -z e +0 0 -z e +1/2 1/2 z e +0 1/2 z f +1/2 0 z f +1/2 0 -z f +0 1/2 -z f +x x+1/2 0 g +-x -x+1/2 0 g +-x+1/2 x 0 g +x+1/2 -x 0 g +x x+1/2 1/2 h +-x -x+1/2 1/2 h +-x+1/2 x 1/2 h +x+1/2 -x 1/2 h +x y 0 i +-x -y 0 i +-y x 0 i +y -x 0 i +-x+1/2 y+1/2 0 i +x+1/2 -y+1/2 0 i +y+1/2 x+1/2 0 i +-y+1/2 -x+1/2 0 i +x y 1/2 j +-x -y 1/2 j +-y x 1/2 j +y -x 1/2 j +-x+1/2 y+1/2 1/2 j +x+1/2 -y+1/2 1/2 j +y+1/2 x+1/2 1/2 j +-y+1/2 -x+1/2 1/2 j +x x+1/2 z k +-x -x+1/2 z k +-x+1/2 x z k +x+1/2 -x z k +-x+1/2 x -z k +x+1/2 -x -z k +x x+1/2 -z k +-x -x+1/2 -z k +x y z l +-x -y z l +-y x z l +y -x z l +-x+1/2 y+1/2 -z l +x+1/2 -y+1/2 -z l +y+1/2 x+1/2 -z l +-y+1/2 -x+1/2 -z l +-x -y -z l +x y -z l +y -x -z l +-y x -z l +x+1/2 -y+1/2 z l +-x+1/2 y+1/2 z l +-y+1/2 -x+1/2 z l +y+1/2 x+1/2 z l diff --git a/data/wyckoff/wyckoff128.txt b/data/wyckoff/wyckoff128.txt new file mode 100644 index 0000000..e5edd02 --- /dev/null +++ b/data/wyckoff/wyckoff128.txt @@ -0,0 +1,56 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +0 1/2 0 c +1/2 0 0 c +1/2 0 1/2 c +0 1/2 1/2 c +0 1/2 1/4 d +1/2 0 1/4 d +0 1/2 3/4 d +1/2 0 3/4 d +0 0 z e +1/2 1/2 -z+1/2 e +0 0 -z e +1/2 1/2 z+1/2 e +0 1/2 z f +1/2 0 z f +1/2 0 -z+1/2 f +0 1/2 -z+1/2 f +0 1/2 -z f +1/2 0 -z f +1/2 0 z+1/2 f +0 1/2 z+1/2 f +x x+1/2 1/4 g +-x -x+1/2 1/4 g +-x+1/2 x 1/4 g +x+1/2 -x 1/4 g +-x -x+1/2 3/4 g +x x+1/2 3/4 g +x+1/2 -x 3/4 g +-x+1/2 x 3/4 g +x y 0 h +-x -y 0 h +-y x 0 h +y -x 0 h +-x+1/2 y+1/2 1/2 h +x+1/2 -y+1/2 1/2 h +y+1/2 x+1/2 1/2 h +-y+1/2 -x+1/2 1/2 h +x y z i +-x -y z i +-y x z i +y -x z i +-x+1/2 y+1/2 -z+1/2 i +x+1/2 -y+1/2 -z+1/2 i +y+1/2 x+1/2 -z+1/2 i +-y+1/2 -x+1/2 -z+1/2 i +-x -y -z i +x y -z i +y -x -z i +-y x -z i +x+1/2 -y+1/2 z+1/2 i +-x+1/2 y+1/2 z+1/2 i +-y+1/2 -x+1/2 z+1/2 i +y+1/2 x+1/2 z+1/2 i diff --git a/data/wyckoff/wyckoff129.txt b/data/wyckoff/wyckoff129.txt new file mode 100644 index 0000000..66541fd --- /dev/null +++ b/data/wyckoff/wyckoff129.txt @@ -0,0 +1,66 @@ +0 0 0 a +1/2 1/2 0 a +0 0 1/2 b +1/2 1/2 1/2 b +0 1/2 z c +1/2 0 -z c +1/4 1/4 0 d +3/4 3/4 0 d +1/4 3/4 0 d +3/4 1/4 0 d +1/4 1/4 1/2 e +3/4 3/4 1/2 e +1/4 3/4 1/2 e +3/4 1/4 1/2 e +0 0 z f +1/2 1/2 z f +1/2 1/2 -z f +0 0 -z f +x x 0 g +-x -x 0 g +-x+1/2 x+1/2 0 g +x+1/2 -x+1/2 0 g +-x+1/2 -x+1/2 0 g +x+1/2 x+1/2 0 g +x -x 0 g +-x x 0 g +x x 1/2 h +-x -x 1/2 h +-x+1/2 x+1/2 1/2 h +x+1/2 -x+1/2 1/2 h +-x+1/2 -x+1/2 1/2 h +x+1/2 x+1/2 1/2 h +x -x 1/2 h +-x x 1/2 h +0 y z i +0 -y z i +-y+1/2 1/2 z i +y+1/2 1/2 z i +1/2 y+1/2 -z i +1/2 -y+1/2 -z i +y 0 -z i +-y 0 -z i +x x+1/2 z j +-x -x+1/2 z j +-x x+1/2 z j +x -x+1/2 z j +-x+1/2 x -z j +x+1/2 -x -z j +x+1/2 x -z j +-x+1/2 -x -z j +x y z k +-x -y z k +-y+1/2 x+1/2 z k +y+1/2 -x+1/2 z k +-x+1/2 y+1/2 -z k +x+1/2 -y+1/2 -z k +y x -z k +-y -x -z k +-x+1/2 -y+1/2 -z k +x+1/2 y+1/2 -z k +y -x -z k +-y x -z k +x -y z k +-x y z k +-y+1/2 -x+1/2 z k +y+1/2 x+1/2 z k diff --git a/data/wyckoff/wyckoff129s1.txt b/data/wyckoff/wyckoff129s1.txt new file mode 100644 index 0000000..66541fd --- /dev/null +++ b/data/wyckoff/wyckoff129s1.txt @@ -0,0 +1,66 @@ +0 0 0 a +1/2 1/2 0 a +0 0 1/2 b +1/2 1/2 1/2 b +0 1/2 z c +1/2 0 -z c +1/4 1/4 0 d +3/4 3/4 0 d +1/4 3/4 0 d +3/4 1/4 0 d +1/4 1/4 1/2 e +3/4 3/4 1/2 e +1/4 3/4 1/2 e +3/4 1/4 1/2 e +0 0 z f +1/2 1/2 z f +1/2 1/2 -z f +0 0 -z f +x x 0 g +-x -x 0 g +-x+1/2 x+1/2 0 g +x+1/2 -x+1/2 0 g +-x+1/2 -x+1/2 0 g +x+1/2 x+1/2 0 g +x -x 0 g +-x x 0 g +x x 1/2 h +-x -x 1/2 h +-x+1/2 x+1/2 1/2 h +x+1/2 -x+1/2 1/2 h +-x+1/2 -x+1/2 1/2 h +x+1/2 x+1/2 1/2 h +x -x 1/2 h +-x x 1/2 h +0 y z i +0 -y z i +-y+1/2 1/2 z i +y+1/2 1/2 z i +1/2 y+1/2 -z i +1/2 -y+1/2 -z i +y 0 -z i +-y 0 -z i +x x+1/2 z j +-x -x+1/2 z j +-x x+1/2 z j +x -x+1/2 z j +-x+1/2 x -z j +x+1/2 -x -z j +x+1/2 x -z j +-x+1/2 -x -z j +x y z k +-x -y z k +-y+1/2 x+1/2 z k +y+1/2 -x+1/2 z k +-x+1/2 y+1/2 -z k +x+1/2 -y+1/2 -z k +y x -z k +-y -x -z k +-x+1/2 -y+1/2 -z k +x+1/2 y+1/2 -z k +y -x -z k +-y x -z k +x -y z k +-x y z k +-y+1/2 -x+1/2 z k +y+1/2 x+1/2 z k diff --git a/data/wyckoff/wyckoff129s2.txt b/data/wyckoff/wyckoff129s2.txt new file mode 100644 index 0000000..1d9fb95 --- /dev/null +++ b/data/wyckoff/wyckoff129s2.txt @@ -0,0 +1,66 @@ +3/4 1/4 0 a +1/4 3/4 0 a +3/4 1/4 1/2 b +1/4 3/4 1/2 b +1/4 1/4 z c +3/4 3/4 -z c +0 0 0 d +1/2 1/2 0 d +1/2 0 0 d +0 1/2 0 d +0 0 1/2 e +1/2 1/2 1/2 e +1/2 0 1/2 e +0 1/2 1/2 e +3/4 1/4 z f +1/4 3/4 z f +1/4 3/4 -z f +3/4 1/4 -z f +x -x 0 g +-x+1/2 x+1/2 0 g +x+1/2 x 0 g +-x -x+1/2 0 g +-x x 0 g +x+1/2 -x+1/2 0 g +-x+1/2 -x 0 g +x x+1/2 0 g +x -x 1/2 h +-x+1/2 x+1/2 1/2 h +x+1/2 x 1/2 h +-x -x+1/2 1/2 h +-x x 1/2 h +x+1/2 -x+1/2 1/2 h +-x+1/2 -x 1/2 h +x x+1/2 1/2 h +1/4 y z i +1/4 -y+1/2 z i +-y+1/2 1/4 z i +y 1/4 z i +3/4 y+1/2 -z i +3/4 -y -z i +y+1/2 3/4 -z i +-y 3/4 -z i +x x z j +-x+1/2 -x+1/2 z j +-x+1/2 x z j +x -x+1/2 z j +-x x+1/2 -z j +x+1/2 -x -z j +x+1/2 x+1/2 -z j +-x -x -z j +x y z k +-x+1/2 -y+1/2 z k +-y+1/2 x z k +y -x+1/2 z k +-x y+1/2 -z k +x+1/2 -y -z k +y+1/2 x+1/2 -z k +-y -x -z k +-x -y -z k +x+1/2 y+1/2 -z k +y+1/2 -x -z k +-y x+1/2 -z k +x -y+1/2 z k +-x+1/2 y z k +-y+1/2 -x+1/2 z k +y x z k diff --git a/data/wyckoff/wyckoff13.txt b/data/wyckoff/wyckoff13.txt new file mode 100644 index 0000000..e4a5a1a --- /dev/null +++ b/data/wyckoff/wyckoff13.txt @@ -0,0 +1,16 @@ +0 0 0 a +0 0 1/2 a +1/2 1/2 0 b +1/2 1/2 1/2 b +0 1/2 0 c +0 1/2 1/2 c +1/2 0 0 d +1/2 0 1/2 d +0 y 1/4 e +0 -y 3/4 e +1/2 y 1/4 f +1/2 -y 3/4 f +x y z g +-x y -z+1/2 g +-x -y -z g +x -y z+1/2 g diff --git a/data/wyckoff/wyckoff130.txt b/data/wyckoff/wyckoff130.txt new file mode 100644 index 0000000..e40335b --- /dev/null +++ b/data/wyckoff/wyckoff130.txt @@ -0,0 +1,52 @@ +0 0 1/4 a +1/2 1/2 1/4 a +1/2 1/2 3/4 a +0 0 3/4 a +0 0 0 b +1/2 1/2 0 b +1/2 1/2 1/2 b +0 0 1/2 b +0 1/2 z c +1/2 0 -z+1/2 c +1/2 0 -z c +0 1/2 z+1/2 c +1/4 1/4 0 d +3/4 3/4 0 d +1/4 3/4 0 d +3/4 1/4 0 d +1/4 3/4 1/2 d +3/4 1/4 1/2 d +1/4 1/4 1/2 d +3/4 3/4 1/2 d +0 0 z e +1/2 1/2 z e +1/2 1/2 -z+1/2 e +0 0 -z+1/2 e +1/2 1/2 -z e +0 0 -z e +0 0 z+1/2 e +1/2 1/2 z+1/2 e +x x 1/4 f +-x -x 1/4 f +-x+1/2 x+1/2 1/4 f +x+1/2 -x+1/2 1/4 f +-x+1/2 -x+1/2 3/4 f +x+1/2 x+1/2 3/4 f +x -x 3/4 f +-x x 3/4 f +x y z g +-x -y z g +-y+1/2 x+1/2 z g +y+1/2 -x+1/2 z g +-x+1/2 y+1/2 -z+1/2 g +x+1/2 -y+1/2 -z+1/2 g +y x -z+1/2 g +-y -x -z+1/2 g +-x+1/2 -y+1/2 -z g +x+1/2 y+1/2 -z g +y -x -z g +-y x -z g +x -y z+1/2 g +-x y z+1/2 g +-y+1/2 -x+1/2 z+1/2 g +y+1/2 x+1/2 z+1/2 g diff --git a/data/wyckoff/wyckoff130s1.txt b/data/wyckoff/wyckoff130s1.txt new file mode 100644 index 0000000..e40335b --- /dev/null +++ b/data/wyckoff/wyckoff130s1.txt @@ -0,0 +1,52 @@ +0 0 1/4 a +1/2 1/2 1/4 a +1/2 1/2 3/4 a +0 0 3/4 a +0 0 0 b +1/2 1/2 0 b +1/2 1/2 1/2 b +0 0 1/2 b +0 1/2 z c +1/2 0 -z+1/2 c +1/2 0 -z c +0 1/2 z+1/2 c +1/4 1/4 0 d +3/4 3/4 0 d +1/4 3/4 0 d +3/4 1/4 0 d +1/4 3/4 1/2 d +3/4 1/4 1/2 d +1/4 1/4 1/2 d +3/4 3/4 1/2 d +0 0 z e +1/2 1/2 z e +1/2 1/2 -z+1/2 e +0 0 -z+1/2 e +1/2 1/2 -z e +0 0 -z e +0 0 z+1/2 e +1/2 1/2 z+1/2 e +x x 1/4 f +-x -x 1/4 f +-x+1/2 x+1/2 1/4 f +x+1/2 -x+1/2 1/4 f +-x+1/2 -x+1/2 3/4 f +x+1/2 x+1/2 3/4 f +x -x 3/4 f +-x x 3/4 f +x y z g +-x -y z g +-y+1/2 x+1/2 z g +y+1/2 -x+1/2 z g +-x+1/2 y+1/2 -z+1/2 g +x+1/2 -y+1/2 -z+1/2 g +y x -z+1/2 g +-y -x -z+1/2 g +-x+1/2 -y+1/2 -z g +x+1/2 y+1/2 -z g +y -x -z g +-y x -z g +x -y z+1/2 g +-x y z+1/2 g +-y+1/2 -x+1/2 z+1/2 g +y+1/2 x+1/2 z+1/2 g diff --git a/data/wyckoff/wyckoff130s2.txt b/data/wyckoff/wyckoff130s2.txt new file mode 100644 index 0000000..d7e8fd1 --- /dev/null +++ b/data/wyckoff/wyckoff130s2.txt @@ -0,0 +1,52 @@ +3/4 1/4 1/4 a +1/4 3/4 1/4 a +1/4 3/4 3/4 a +3/4 1/4 3/4 a +3/4 1/4 0 b +1/4 3/4 0 b +1/4 3/4 1/2 b +3/4 1/4 1/2 b +1/4 1/4 z c +3/4 3/4 -z+1/2 c +3/4 3/4 -z c +1/4 1/4 z+1/2 c +0 0 0 d +1/2 1/2 0 d +1/2 0 0 d +0 1/2 0 d +0 1/2 1/2 d +1/2 0 1/2 d +1/2 1/2 1/2 d +0 0 1/2 d +3/4 1/4 z e +1/4 3/4 z e +1/4 3/4 -z+1/2 e +3/4 1/4 -z+1/2 e +1/4 3/4 -z e +3/4 1/4 -z e +3/4 1/4 z+1/2 e +1/4 3/4 z+1/2 e +x -x 1/4 f +-x+1/2 x+1/2 1/4 f +x+1/2 x 1/4 f +-x -x+1/2 1/4 f +-x x 3/4 f +x+1/2 -x+1/2 3/4 f +-x+1/2 -x 3/4 f +x x+1/2 3/4 f +x y z g +-x+1/2 -y+1/2 z g +-y+1/2 x z g +y -x+1/2 z g +-x y+1/2 -z+1/2 g +x+1/2 -y -z+1/2 g +y+1/2 x+1/2 -z+1/2 g +-y -x -z+1/2 g +-x -y -z g +x+1/2 y+1/2 -z g +y+1/2 -x -z g +-y x+1/2 -z g +x -y+1/2 z+1/2 g +-x+1/2 y z+1/2 g +-y+1/2 -x+1/2 z+1/2 g +y x z+1/2 g diff --git a/data/wyckoff/wyckoff131.txt b/data/wyckoff/wyckoff131.txt new file mode 100644 index 0000000..9082e1a --- /dev/null +++ b/data/wyckoff/wyckoff131.txt @@ -0,0 +1,88 @@ +0 0 0 a +0 0 1/2 a +1/2 1/2 0 b +1/2 1/2 1/2 b +0 1/2 0 c +1/2 0 1/2 c +0 1/2 1/2 d +1/2 0 0 d +0 0 1/4 e +0 0 3/4 e +1/2 1/2 1/4 f +1/2 1/2 3/4 f +0 0 z g +0 0 z+1/2 g +0 0 -z g +0 0 -z+1/2 g +1/2 1/2 z h +1/2 1/2 z+1/2 h +1/2 1/2 -z h +1/2 1/2 -z+1/2 h +0 1/2 z i +1/2 0 z+1/2 i +0 1/2 -z i +1/2 0 -z+1/2 i +x 0 0 j +-x 0 0 j +0 x 1/2 j +0 -x 1/2 j +x 1/2 1/2 k +-x 1/2 1/2 k +1/2 x 0 k +1/2 -x 0 k +x 0 1/2 l +-x 0 1/2 l +0 x 0 l +0 -x 0 l +x 1/2 0 m +-x 1/2 0 m +1/2 x 1/2 m +1/2 -x 1/2 m +x x 1/4 n +-x -x 1/4 n +-x x 3/4 n +x -x 3/4 n +-x -x 3/4 n +x x 3/4 n +x -x 1/4 n +-x x 1/4 n +0 y z o +0 -y z o +-y 0 z+1/2 o +y 0 z+1/2 o +0 y -z o +0 -y -z o +y 0 -z+1/2 o +-y 0 -z+1/2 o +1/2 y z p +1/2 -y z p +-y 1/2 z+1/2 p +y 1/2 z+1/2 p +1/2 y -z p +1/2 -y -z p +y 1/2 -z+1/2 p +-y 1/2 -z+1/2 p +x y 0 q +-x -y 0 q +-y x 1/2 q +y -x 1/2 q +-x y 0 q +x -y 0 q +y x 1/2 q +-y -x 1/2 q +x y z r +-x -y z r +-y x z+1/2 r +y -x z+1/2 r +-x y -z r +x -y -z r +y x -z+1/2 r +-y -x -z+1/2 r +-x -y -z r +x y -z r +y -x -z+1/2 r +-y x -z+1/2 r +x -y z r +-x y z r +-y -x z+1/2 r +y x z+1/2 r diff --git a/data/wyckoff/wyckoff132.txt b/data/wyckoff/wyckoff132.txt new file mode 100644 index 0000000..2f193fa --- /dev/null +++ b/data/wyckoff/wyckoff132.txt @@ -0,0 +1,88 @@ +0 0 0 a +0 0 1/2 a +0 0 1/4 b +0 0 3/4 b +1/2 1/2 0 c +1/2 1/2 1/2 c +1/2 1/2 1/4 d +1/2 1/2 3/4 d +0 1/2 1/4 e +1/2 0 3/4 e +0 1/2 3/4 e +1/2 0 1/4 e +0 1/2 0 f +1/2 0 1/2 f +0 1/2 1/2 f +1/2 0 0 f +0 0 z g +0 0 z+1/2 g +0 0 -z+1/2 g +0 0 -z g +1/2 1/2 z h +1/2 1/2 z+1/2 h +1/2 1/2 -z+1/2 h +1/2 1/2 -z h +x x 0 i +-x -x 0 i +-x x 1/2 i +x -x 1/2 i +x x 1/2 j +-x -x 1/2 j +-x x 0 j +x -x 0 j +0 1/2 z k +1/2 0 z+1/2 k +0 1/2 -z+1/2 k +1/2 0 -z k +0 1/2 -z k +1/2 0 -z+1/2 k +0 1/2 z+1/2 k +1/2 0 z k +x 0 1/4 l +-x 0 1/4 l +0 x 3/4 l +0 -x 3/4 l +-x 0 3/4 l +x 0 3/4 l +0 -x 1/4 l +0 x 1/4 l +x 1/2 1/4 m +-x 1/2 1/4 m +1/2 x 3/4 m +1/2 -x 3/4 m +-x 1/2 3/4 m +x 1/2 3/4 m +1/2 -x 1/4 m +1/2 x 1/4 m +x y 0 n +-x -y 0 n +-y x 1/2 n +y -x 1/2 n +-x y 1/2 n +x -y 1/2 n +y x 0 n +-y -x 0 n +x x z o +-x -x z o +-x x z+1/2 o +x -x z+1/2 o +-x x -z+1/2 o +x -x -z+1/2 o +x x -z o +-x -x -z o +x y z p +-x -y z p +-y x z+1/2 p +y -x z+1/2 p +-x y -z+1/2 p +x -y -z+1/2 p +y x -z p +-y -x -z p +-x -y -z p +x y -z p +y -x -z+1/2 p +-y x -z+1/2 p +x -y z+1/2 p +-x y z+1/2 p +-y -x z p +y x z p diff --git a/data/wyckoff/wyckoff133.txt b/data/wyckoff/wyckoff133.txt new file mode 100644 index 0000000..789c1df --- /dev/null +++ b/data/wyckoff/wyckoff133.txt @@ -0,0 +1,80 @@ +0 1/2 1/4 a +0 1/2 3/4 a +1/2 0 1/4 a +1/2 0 3/4 a +0 0 1/4 b +1/2 1/2 3/4 b +1/2 1/2 1/4 b +0 0 3/4 b +0 1/2 0 c +0 1/2 1/2 c +1/2 0 1/2 c +1/2 0 0 c +0 0 0 d +1/2 1/2 1/2 d +0 0 1/2 d +1/2 1/2 0 d +1/4 1/4 1/4 e +3/4 3/4 1/4 e +1/4 3/4 3/4 e +3/4 1/4 3/4 e +3/4 1/4 1/4 e +1/4 3/4 1/4 e +3/4 3/4 3/4 e +1/4 1/4 3/4 e +0 1/2 z f +0 1/2 z+1/2 f +0 1/2 -z+1/2 f +0 1/2 -z f +1/2 0 -z+1/2 f +1/2 0 -z f +1/2 0 z f +1/2 0 z+1/2 f +0 0 z g +1/2 1/2 z+1/2 g +0 0 -z+1/2 g +1/2 1/2 -z g +1/2 1/2 -z+1/2 g +0 0 -z g +1/2 1/2 z g +0 0 z+1/2 g +x 0 1/4 h +-x 0 1/4 h +1/2 x+1/2 3/4 h +1/2 -x+1/2 3/4 h +-x+1/2 1/2 1/4 h +x+1/2 1/2 1/4 h +0 -x 3/4 h +0 x 3/4 h +x 0 3/4 i +-x 0 3/4 i +1/2 x+1/2 1/4 i +1/2 -x+1/2 1/4 i +-x+1/2 1/2 3/4 i +x+1/2 1/2 3/4 i +0 -x 1/4 i +0 x 1/4 i +x x+1/2 0 j +-x -x+1/2 0 j +-x x+1/2 1/2 j +x -x+1/2 1/2 j +-x+1/2 -x 1/2 j +x+1/2 x 1/2 j +x+1/2 -x 0 j +-x+1/2 x 0 j +x y z k +-x -y z k +-y+1/2 x+1/2 z+1/2 k +y+1/2 -x+1/2 z+1/2 k +-x y -z+1/2 k +x -y -z+1/2 k +y+1/2 x+1/2 -z k +-y+1/2 -x+1/2 -z k +-x+1/2 -y+1/2 -z+1/2 k +x+1/2 y+1/2 -z+1/2 k +y -x -z k +-y x -z k +x+1/2 -y+1/2 z k +-x+1/2 y+1/2 z k +-y -x z+1/2 k +y x z+1/2 k diff --git a/data/wyckoff/wyckoff133s1.txt b/data/wyckoff/wyckoff133s1.txt new file mode 100644 index 0000000..789c1df --- /dev/null +++ b/data/wyckoff/wyckoff133s1.txt @@ -0,0 +1,80 @@ +0 1/2 1/4 a +0 1/2 3/4 a +1/2 0 1/4 a +1/2 0 3/4 a +0 0 1/4 b +1/2 1/2 3/4 b +1/2 1/2 1/4 b +0 0 3/4 b +0 1/2 0 c +0 1/2 1/2 c +1/2 0 1/2 c +1/2 0 0 c +0 0 0 d +1/2 1/2 1/2 d +0 0 1/2 d +1/2 1/2 0 d +1/4 1/4 1/4 e +3/4 3/4 1/4 e +1/4 3/4 3/4 e +3/4 1/4 3/4 e +3/4 1/4 1/4 e +1/4 3/4 1/4 e +3/4 3/4 3/4 e +1/4 1/4 3/4 e +0 1/2 z f +0 1/2 z+1/2 f +0 1/2 -z+1/2 f +0 1/2 -z f +1/2 0 -z+1/2 f +1/2 0 -z f +1/2 0 z f +1/2 0 z+1/2 f +0 0 z g +1/2 1/2 z+1/2 g +0 0 -z+1/2 g +1/2 1/2 -z g +1/2 1/2 -z+1/2 g +0 0 -z g +1/2 1/2 z g +0 0 z+1/2 g +x 0 1/4 h +-x 0 1/4 h +1/2 x+1/2 3/4 h +1/2 -x+1/2 3/4 h +-x+1/2 1/2 1/4 h +x+1/2 1/2 1/4 h +0 -x 3/4 h +0 x 3/4 h +x 0 3/4 i +-x 0 3/4 i +1/2 x+1/2 1/4 i +1/2 -x+1/2 1/4 i +-x+1/2 1/2 3/4 i +x+1/2 1/2 3/4 i +0 -x 1/4 i +0 x 1/4 i +x x+1/2 0 j +-x -x+1/2 0 j +-x x+1/2 1/2 j +x -x+1/2 1/2 j +-x+1/2 -x 1/2 j +x+1/2 x 1/2 j +x+1/2 -x 0 j +-x+1/2 x 0 j +x y z k +-x -y z k +-y+1/2 x+1/2 z+1/2 k +y+1/2 -x+1/2 z+1/2 k +-x y -z+1/2 k +x -y -z+1/2 k +y+1/2 x+1/2 -z k +-y+1/2 -x+1/2 -z k +-x+1/2 -y+1/2 -z+1/2 k +x+1/2 y+1/2 -z+1/2 k +y -x -z k +-y x -z k +x+1/2 -y+1/2 z k +-x+1/2 y+1/2 z k +-y -x z+1/2 k +y x z+1/2 k diff --git a/data/wyckoff/wyckoff133s2.txt b/data/wyckoff/wyckoff133s2.txt new file mode 100644 index 0000000..16612f3 --- /dev/null +++ b/data/wyckoff/wyckoff133s2.txt @@ -0,0 +1,80 @@ +1/4 1/4 0 a +1/4 1/4 1/2 a +3/4 3/4 0 a +3/4 3/4 1/2 a +3/4 1/4 0 b +1/4 3/4 1/2 b +1/4 3/4 0 b +3/4 1/4 1/2 b +1/4 1/4 1/4 c +1/4 1/4 3/4 c +3/4 3/4 3/4 c +3/4 3/4 1/4 c +3/4 1/4 3/4 d +1/4 3/4 1/4 d +3/4 1/4 1/4 d +1/4 3/4 3/4 d +0 0 0 e +1/2 1/2 0 e +1/2 0 1/2 e +0 1/2 1/2 e +1/2 0 0 e +0 1/2 0 e +0 0 1/2 e +1/2 1/2 1/2 e +1/4 1/4 z f +1/4 1/4 z+1/2 f +1/4 1/4 -z f +1/4 1/4 -z+1/2 f +3/4 3/4 -z f +3/4 3/4 -z+1/2 f +3/4 3/4 z f +3/4 3/4 z+1/2 f +3/4 1/4 z g +1/4 3/4 z+1/2 g +3/4 1/4 -z g +1/4 3/4 -z+1/2 g +1/4 3/4 -z g +3/4 1/4 -z+1/2 g +1/4 3/4 z g +3/4 1/4 z+1/2 g +x 1/4 0 h +-x+1/2 1/4 0 h +1/4 x 1/2 h +1/4 -x+1/2 1/2 h +-x 3/4 0 h +x+1/2 3/4 0 h +3/4 -x 1/2 h +3/4 x+1/2 1/2 h +x 1/4 1/2 i +-x+1/2 1/4 1/2 i +1/4 x 0 i +1/4 -x+1/2 0 i +-x 3/4 1/2 i +x+1/2 3/4 1/2 i +3/4 -x 0 i +3/4 x+1/2 0 i +x x 1/4 j +-x+1/2 -x+1/2 1/4 j +-x+1/2 x 3/4 j +x -x+1/2 3/4 j +-x -x 3/4 j +x+1/2 x+1/2 3/4 j +x+1/2 -x 1/4 j +-x x+1/2 1/4 j +x y z k +-x+1/2 -y+1/2 z k +-y+1/2 x z+1/2 k +y -x+1/2 z+1/2 k +-x+1/2 y -z k +x -y+1/2 -z k +y x -z+1/2 k +-y+1/2 -x+1/2 -z+1/2 k +-x -y -z k +x+1/2 y+1/2 -z k +y+1/2 -x -z+1/2 k +-y x+1/2 -z+1/2 k +x+1/2 -y z k +-x y+1/2 z k +-y -x z+1/2 k +y+1/2 x+1/2 z+1/2 k diff --git a/data/wyckoff/wyckoff134.txt b/data/wyckoff/wyckoff134.txt new file mode 100644 index 0000000..cc57fb4 --- /dev/null +++ b/data/wyckoff/wyckoff134.txt @@ -0,0 +1,88 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +0 1/2 0 c +0 1/2 1/2 c +1/2 0 1/2 c +1/2 0 0 c +0 1/2 1/4 d +0 1/2 3/4 d +1/2 0 1/4 d +1/2 0 3/4 d +1/4 1/4 1/4 e +3/4 3/4 1/4 e +1/4 3/4 3/4 e +3/4 1/4 3/4 e +3/4 3/4 3/4 f +1/4 1/4 3/4 f +3/4 1/4 1/4 f +1/4 3/4 1/4 f +0 0 z g +1/2 1/2 z+1/2 g +0 0 -z g +1/2 1/2 -z+1/2 g +0 1/2 z h +0 1/2 z+1/2 h +0 1/2 -z h +0 1/2 -z+1/2 h +1/2 0 -z+1/2 h +1/2 0 -z h +1/2 0 z+1/2 h +1/2 0 z h +x 0 0 i +-x 0 0 i +1/2 x+1/2 1/2 i +1/2 -x+1/2 1/2 i +-x+1/2 1/2 1/2 i +x+1/2 1/2 1/2 i +0 -x 0 i +0 x 0 i +x 0 1/2 j +-x 0 1/2 j +1/2 x+1/2 0 j +1/2 -x+1/2 0 j +-x+1/2 1/2 0 j +x+1/2 1/2 0 j +0 -x 1/2 j +0 x 1/2 j +x x+1/2 1/4 k +-x -x+1/2 1/4 k +-x x+1/2 3/4 k +x -x+1/2 3/4 k +-x+1/2 -x 1/4 k +x+1/2 x 1/4 k +x+1/2 -x 3/4 k +-x+1/2 x 3/4 k +x x+1/2 3/4 l +-x -x+1/2 3/4 l +-x x+1/2 1/4 l +x -x+1/2 1/4 l +-x+1/2 -x 3/4 l +x+1/2 x 3/4 l +x+1/2 -x 1/4 l +-x+1/2 x 1/4 l +x x z m +-x -x z m +-x+1/2 x+1/2 z+1/2 m +x+1/2 -x+1/2 z+1/2 m +-x x -z m +x -x -z m +x+1/2 x+1/2 -z+1/2 m +-x+1/2 -x+1/2 -z+1/2 m +x y z n +-x -y z n +-y+1/2 x+1/2 z+1/2 n +y+1/2 -x+1/2 z+1/2 n +-x y -z n +x -y -z n +y+1/2 x+1/2 -z+1/2 n +-y+1/2 -x+1/2 -z+1/2 n +-x+1/2 -y+1/2 -z+1/2 n +x+1/2 y+1/2 -z+1/2 n +y -x -z n +-y x -z n +x+1/2 -y+1/2 z+1/2 n +-x+1/2 y+1/2 z+1/2 n +-y -x z n +y x z n diff --git a/data/wyckoff/wyckoff134s1.txt b/data/wyckoff/wyckoff134s1.txt new file mode 100644 index 0000000..cc57fb4 --- /dev/null +++ b/data/wyckoff/wyckoff134s1.txt @@ -0,0 +1,88 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +0 1/2 0 c +0 1/2 1/2 c +1/2 0 1/2 c +1/2 0 0 c +0 1/2 1/4 d +0 1/2 3/4 d +1/2 0 1/4 d +1/2 0 3/4 d +1/4 1/4 1/4 e +3/4 3/4 1/4 e +1/4 3/4 3/4 e +3/4 1/4 3/4 e +3/4 3/4 3/4 f +1/4 1/4 3/4 f +3/4 1/4 1/4 f +1/4 3/4 1/4 f +0 0 z g +1/2 1/2 z+1/2 g +0 0 -z g +1/2 1/2 -z+1/2 g +0 1/2 z h +0 1/2 z+1/2 h +0 1/2 -z h +0 1/2 -z+1/2 h +1/2 0 -z+1/2 h +1/2 0 -z h +1/2 0 z+1/2 h +1/2 0 z h +x 0 0 i +-x 0 0 i +1/2 x+1/2 1/2 i +1/2 -x+1/2 1/2 i +-x+1/2 1/2 1/2 i +x+1/2 1/2 1/2 i +0 -x 0 i +0 x 0 i +x 0 1/2 j +-x 0 1/2 j +1/2 x+1/2 0 j +1/2 -x+1/2 0 j +-x+1/2 1/2 0 j +x+1/2 1/2 0 j +0 -x 1/2 j +0 x 1/2 j +x x+1/2 1/4 k +-x -x+1/2 1/4 k +-x x+1/2 3/4 k +x -x+1/2 3/4 k +-x+1/2 -x 1/4 k +x+1/2 x 1/4 k +x+1/2 -x 3/4 k +-x+1/2 x 3/4 k +x x+1/2 3/4 l +-x -x+1/2 3/4 l +-x x+1/2 1/4 l +x -x+1/2 1/4 l +-x+1/2 -x 3/4 l +x+1/2 x 3/4 l +x+1/2 -x 1/4 l +-x+1/2 x 1/4 l +x x z m +-x -x z m +-x+1/2 x+1/2 z+1/2 m +x+1/2 -x+1/2 z+1/2 m +-x x -z m +x -x -z m +x+1/2 x+1/2 -z+1/2 m +-x+1/2 -x+1/2 -z+1/2 m +x y z n +-x -y z n +-y+1/2 x+1/2 z+1/2 n +y+1/2 -x+1/2 z+1/2 n +-x y -z n +x -y -z n +y+1/2 x+1/2 -z+1/2 n +-y+1/2 -x+1/2 -z+1/2 n +-x+1/2 -y+1/2 -z+1/2 n +x+1/2 y+1/2 -z+1/2 n +y -x -z n +-y x -z n +x+1/2 -y+1/2 z+1/2 n +-x+1/2 y+1/2 z+1/2 n +-y -x z n +y x z n diff --git a/data/wyckoff/wyckoff134s2.txt b/data/wyckoff/wyckoff134s2.txt new file mode 100644 index 0000000..3b806b0 --- /dev/null +++ b/data/wyckoff/wyckoff134s2.txt @@ -0,0 +1,88 @@ +1/4 3/4 1/4 a +3/4 1/4 3/4 a +3/4 1/4 1/4 b +1/4 3/4 3/4 b +1/4 1/4 1/4 c +1/4 1/4 3/4 c +3/4 3/4 3/4 c +3/4 3/4 1/4 c +1/4 1/4 0 d +1/4 1/4 1/2 d +3/4 3/4 0 d +3/4 3/4 1/2 d +0 0 1/2 e +1/2 1/2 1/2 e +1/2 0 0 e +0 1/2 0 e +0 0 0 f +1/2 1/2 0 f +1/2 0 1/2 f +0 1/2 1/2 f +3/4 1/4 z g +1/4 3/4 z+1/2 g +3/4 1/4 -z+1/2 g +1/4 3/4 -z g +1/4 1/4 z h +1/4 1/4 z+1/2 h +1/4 1/4 -z+1/2 h +1/4 1/4 -z h +3/4 3/4 -z h +3/4 3/4 -z+1/2 h +3/4 3/4 z+1/2 h +3/4 3/4 z h +x 1/4 3/4 i +-x+1/2 1/4 3/4 i +1/4 x 1/4 i +1/4 -x+1/2 1/4 i +-x 3/4 1/4 i +x+1/2 3/4 1/4 i +3/4 -x 3/4 i +3/4 x+1/2 3/4 i +x 1/4 1/4 j +-x+1/2 1/4 1/4 j +1/4 x 3/4 j +1/4 -x+1/2 3/4 j +-x 3/4 3/4 j +x+1/2 3/4 3/4 j +3/4 -x 1/4 j +3/4 x+1/2 1/4 j +x x 0 k +-x+1/2 -x+1/2 0 k +-x+1/2 x 1/2 k +x -x+1/2 1/2 k +-x -x 0 k +x+1/2 x+1/2 0 k +x+1/2 -x 1/2 k +-x x+1/2 1/2 k +x x 1/2 l +-x+1/2 -x+1/2 1/2 l +-x+1/2 x 0 l +x -x+1/2 0 l +-x -x 1/2 l +x+1/2 x+1/2 1/2 l +x+1/2 -x 0 l +-x x+1/2 0 l +x -x z m +-x+1/2 x+1/2 z m +x+1/2 x z+1/2 m +-x -x+1/2 z+1/2 m +-x+1/2 -x -z+1/2 m +x x+1/2 -z+1/2 m +-x x -z m +x+1/2 -x+1/2 -z m +x y z n +-x+1/2 -y+1/2 z n +-y+1/2 x z+1/2 n +y -x+1/2 z+1/2 n +-x+1/2 y -z+1/2 n +x -y+1/2 -z+1/2 n +y x -z n +-y+1/2 -x+1/2 -z n +-x -y -z n +x+1/2 y+1/2 -z n +y+1/2 -x -z+1/2 n +-y x+1/2 -z+1/2 n +x+1/2 -y z+1/2 n +-x y+1/2 z+1/2 n +-y -x z n +y+1/2 x+1/2 z n diff --git a/data/wyckoff/wyckoff135.txt b/data/wyckoff/wyckoff135.txt new file mode 100644 index 0000000..d63b2a3 --- /dev/null +++ b/data/wyckoff/wyckoff135.txt @@ -0,0 +1,64 @@ +0 0 0 a +0 0 1/2 a +1/2 1/2 0 a +1/2 1/2 1/2 a +0 0 1/4 b +0 0 3/4 b +1/2 1/2 3/4 b +1/2 1/2 1/4 b +0 1/2 0 c +1/2 0 1/2 c +1/2 0 0 c +0 1/2 1/2 c +0 1/2 1/4 d +1/2 0 3/4 d +0 1/2 3/4 d +1/2 0 1/4 d +0 0 z e +0 0 z+1/2 e +1/2 1/2 -z e +1/2 1/2 -z+1/2 e +0 0 -z e +0 0 -z+1/2 e +1/2 1/2 z e +1/2 1/2 z+1/2 e +0 1/2 z f +1/2 0 z+1/2 f +1/2 0 -z f +0 1/2 -z+1/2 f +0 1/2 -z f +1/2 0 -z+1/2 f +1/2 0 z f +0 1/2 z+1/2 f +x x+1/2 1/4 g +-x -x+1/2 1/4 g +-x+1/2 x 3/4 g +x+1/2 -x 3/4 g +-x -x+1/2 3/4 g +x x+1/2 3/4 g +x+1/2 -x 1/4 g +-x+1/2 x 1/4 g +x y 0 h +-x -y 0 h +-y x 1/2 h +y -x 1/2 h +-x+1/2 y+1/2 0 h +x+1/2 -y+1/2 0 h +y+1/2 x+1/2 1/2 h +-y+1/2 -x+1/2 1/2 h +x y z i +-x -y z i +-y x z+1/2 i +y -x z+1/2 i +-x+1/2 y+1/2 -z i +x+1/2 -y+1/2 -z i +y+1/2 x+1/2 -z+1/2 i +-y+1/2 -x+1/2 -z+1/2 i +-x -y -z i +x y -z i +y -x -z+1/2 i +-y x -z+1/2 i +x+1/2 -y+1/2 z i +-x+1/2 y+1/2 z i +-y+1/2 -x+1/2 z+1/2 i +y+1/2 x+1/2 z+1/2 i diff --git a/data/wyckoff/wyckoff136.txt b/data/wyckoff/wyckoff136.txt new file mode 100644 index 0000000..af10c42 --- /dev/null +++ b/data/wyckoff/wyckoff136.txt @@ -0,0 +1,64 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +0 1/2 0 c +0 1/2 1/2 c +1/2 0 1/2 c +1/2 0 0 c +0 1/2 1/4 d +0 1/2 3/4 d +1/2 0 1/4 d +1/2 0 3/4 d +0 0 z e +1/2 1/2 z+1/2 e +1/2 1/2 -z+1/2 e +0 0 -z e +x x 0 f +-x -x 0 f +-x+1/2 x+1/2 1/2 f +x+1/2 -x+1/2 1/2 f +x -x 0 g +-x x 0 g +x+1/2 x+1/2 1/2 g +-x+1/2 -x+1/2 1/2 g +0 1/2 z h +0 1/2 z+1/2 h +1/2 0 -z+1/2 h +1/2 0 -z h +0 1/2 -z h +0 1/2 -z+1/2 h +1/2 0 z+1/2 h +1/2 0 z h +x y 0 i +-x -y 0 i +-y+1/2 x+1/2 1/2 i +y+1/2 -x+1/2 1/2 i +-x+1/2 y+1/2 1/2 i +x+1/2 -y+1/2 1/2 i +y x 0 i +-y -x 0 i +x x z j +-x -x z j +-x+1/2 x+1/2 z+1/2 j +x+1/2 -x+1/2 z+1/2 j +-x+1/2 x+1/2 -z+1/2 j +x+1/2 -x+1/2 -z+1/2 j +x x -z j +-x -x -z j +x y z k +-x -y z k +-y+1/2 x+1/2 z+1/2 k +y+1/2 -x+1/2 z+1/2 k +-x+1/2 y+1/2 -z+1/2 k +x+1/2 -y+1/2 -z+1/2 k +y x -z k +-y -x -z k +-x -y -z k +x y -z k +y+1/2 -x+1/2 -z+1/2 k +-y+1/2 x+1/2 -z+1/2 k +x+1/2 -y+1/2 z+1/2 k +-x+1/2 y+1/2 z+1/2 k +-y -x z k +y x z k diff --git a/data/wyckoff/wyckoff137.txt b/data/wyckoff/wyckoff137.txt new file mode 100644 index 0000000..11c829a --- /dev/null +++ b/data/wyckoff/wyckoff137.txt @@ -0,0 +1,52 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +0 0 z c +1/2 1/2 z+1/2 c +1/2 1/2 -z+1/2 c +0 0 -z c +0 1/2 z d +0 1/2 z+1/2 d +1/2 0 -z+1/2 d +1/2 0 -z d +1/4 1/4 1/4 e +3/4 3/4 1/4 e +1/4 3/4 3/4 e +3/4 1/4 3/4 e +1/4 3/4 1/4 e +3/4 1/4 1/4 e +1/4 1/4 3/4 e +3/4 3/4 3/4 e +x x 0 f +-x -x 0 f +-x+1/2 x+1/2 1/2 f +x+1/2 -x+1/2 1/2 f +-x+1/2 -x+1/2 1/2 f +x+1/2 x+1/2 1/2 f +x -x 0 f +-x x 0 f +0 y z g +0 -y z g +-y+1/2 1/2 z+1/2 g +y+1/2 1/2 z+1/2 g +1/2 y+1/2 -z+1/2 g +1/2 -y+1/2 -z+1/2 g +y 0 -z g +-y 0 -z g +x y z h +-x -y z h +-y+1/2 x+1/2 z+1/2 h +y+1/2 -x+1/2 z+1/2 h +-x+1/2 y+1/2 -z+1/2 h +x+1/2 -y+1/2 -z+1/2 h +y x -z h +-y -x -z h +-x+1/2 -y+1/2 -z+1/2 h +x+1/2 y+1/2 -z+1/2 h +y -x -z h +-y x -z h +x -y z h +-x y z h +-y+1/2 -x+1/2 z+1/2 h +y+1/2 x+1/2 z+1/2 h diff --git a/data/wyckoff/wyckoff137s1.txt b/data/wyckoff/wyckoff137s1.txt new file mode 100644 index 0000000..11c829a --- /dev/null +++ b/data/wyckoff/wyckoff137s1.txt @@ -0,0 +1,52 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +0 0 z c +1/2 1/2 z+1/2 c +1/2 1/2 -z+1/2 c +0 0 -z c +0 1/2 z d +0 1/2 z+1/2 d +1/2 0 -z+1/2 d +1/2 0 -z d +1/4 1/4 1/4 e +3/4 3/4 1/4 e +1/4 3/4 3/4 e +3/4 1/4 3/4 e +1/4 3/4 1/4 e +3/4 1/4 1/4 e +1/4 1/4 3/4 e +3/4 3/4 3/4 e +x x 0 f +-x -x 0 f +-x+1/2 x+1/2 1/2 f +x+1/2 -x+1/2 1/2 f +-x+1/2 -x+1/2 1/2 f +x+1/2 x+1/2 1/2 f +x -x 0 f +-x x 0 f +0 y z g +0 -y z g +-y+1/2 1/2 z+1/2 g +y+1/2 1/2 z+1/2 g +1/2 y+1/2 -z+1/2 g +1/2 -y+1/2 -z+1/2 g +y 0 -z g +-y 0 -z g +x y z h +-x -y z h +-y+1/2 x+1/2 z+1/2 h +y+1/2 -x+1/2 z+1/2 h +-x+1/2 y+1/2 -z+1/2 h +x+1/2 -y+1/2 -z+1/2 h +y x -z h +-y -x -z h +-x+1/2 -y+1/2 -z+1/2 h +x+1/2 y+1/2 -z+1/2 h +y -x -z h +-y x -z h +x -y z h +-x y z h +-y+1/2 -x+1/2 z+1/2 h +y+1/2 x+1/2 z+1/2 h diff --git a/data/wyckoff/wyckoff137s2.txt b/data/wyckoff/wyckoff137s2.txt new file mode 100644 index 0000000..e795a54 --- /dev/null +++ b/data/wyckoff/wyckoff137s2.txt @@ -0,0 +1,52 @@ +3/4 1/4 3/4 a +1/4 3/4 1/4 a +3/4 1/4 1/4 b +1/4 3/4 3/4 b +3/4 1/4 z c +1/4 3/4 z+1/2 c +1/4 3/4 -z c +3/4 1/4 -z+1/2 c +1/4 1/4 z d +1/4 1/4 z+1/2 d +3/4 3/4 -z d +3/4 3/4 -z+1/2 d +0 0 0 e +1/2 1/2 0 e +1/2 0 1/2 e +0 1/2 1/2 e +0 1/2 0 e +1/2 0 0 e +1/2 1/2 1/2 e +0 0 1/2 e +x -x 1/4 f +-x+1/2 x+1/2 1/4 f +x+1/2 x 3/4 f +-x -x+1/2 3/4 f +-x x 3/4 f +x+1/2 -x+1/2 3/4 f +-x+1/2 -x 1/4 f +x x+1/2 1/4 f +1/4 y z g +1/4 -y+1/2 z g +-y+1/2 1/4 z+1/2 g +y 1/4 z+1/2 g +3/4 y+1/2 -z g +3/4 -y -z g +y+1/2 3/4 -z+1/2 g +-y 3/4 -z+1/2 g +x y z h +-x+1/2 -y+1/2 z h +-y+1/2 x z+1/2 h +y -x+1/2 z+1/2 h +-x y+1/2 -z h +x+1/2 -y -z h +y+1/2 x+1/2 -z+1/2 h +-y -x -z+1/2 h +-x -y -z h +x+1/2 y+1/2 -z h +y+1/2 -x -z+1/2 h +-y x+1/2 -z+1/2 h +x -y+1/2 z h +-x+1/2 y z h +-y+1/2 -x+1/2 z+1/2 h +y x z+1/2 h diff --git a/data/wyckoff/wyckoff138.txt b/data/wyckoff/wyckoff138.txt new file mode 100644 index 0000000..79463a5 --- /dev/null +++ b/data/wyckoff/wyckoff138.txt @@ -0,0 +1,68 @@ +0 0 1/4 a +1/2 1/2 3/4 a +1/2 1/2 1/4 a +0 0 3/4 a +0 0 0 b +1/2 1/2 1/2 b +1/2 1/2 0 b +0 0 1/2 b +1/4 1/4 1/4 c +3/4 3/4 1/4 c +1/4 3/4 3/4 c +3/4 1/4 3/4 c +1/4 1/4 3/4 d +3/4 3/4 3/4 d +1/4 3/4 1/4 d +3/4 1/4 1/4 d +0 1/2 z e +0 1/2 z+1/2 e +1/2 0 -z e +1/2 0 -z+1/2 e +0 0 z f +1/2 1/2 z+1/2 f +1/2 1/2 -z f +0 0 -z+1/2 f +1/2 1/2 -z+1/2 f +0 0 -z f +0 0 z+1/2 f +1/2 1/2 z f +x x 1/4 g +-x -x 1/4 g +-x+1/2 x+1/2 3/4 g +x+1/2 -x+1/2 3/4 g +-x+1/2 -x+1/2 1/4 g +x+1/2 x+1/2 1/4 g +x -x 3/4 g +-x x 3/4 g +x x 3/4 h +-x -x 3/4 h +-x+1/2 x+1/2 1/4 h +x+1/2 -x+1/2 1/4 h +-x+1/2 -x+1/2 3/4 h +x+1/2 x+1/2 3/4 h +x -x 1/4 h +-x x 1/4 h +x x+1/2 z i +-x -x+1/2 z i +-x x+1/2 z+1/2 i +x -x+1/2 z+1/2 i +-x+1/2 x -z i +x+1/2 -x -z i +x+1/2 x -z+1/2 i +-x+1/2 -x -z+1/2 i +x y z j +-x -y z j +-y+1/2 x+1/2 z+1/2 j +y+1/2 -x+1/2 z+1/2 j +-x+1/2 y+1/2 -z j +x+1/2 -y+1/2 -z j +y x -z+1/2 j +-y -x -z+1/2 j +-x+1/2 -y+1/2 -z+1/2 j +x+1/2 y+1/2 -z+1/2 j +y -x -z j +-y x -z j +x -y z+1/2 j +-x y z+1/2 j +-y+1/2 -x+1/2 z j +y+1/2 x+1/2 z j diff --git a/data/wyckoff/wyckoff138s1.txt b/data/wyckoff/wyckoff138s1.txt new file mode 100644 index 0000000..79463a5 --- /dev/null +++ b/data/wyckoff/wyckoff138s1.txt @@ -0,0 +1,68 @@ +0 0 1/4 a +1/2 1/2 3/4 a +1/2 1/2 1/4 a +0 0 3/4 a +0 0 0 b +1/2 1/2 1/2 b +1/2 1/2 0 b +0 0 1/2 b +1/4 1/4 1/4 c +3/4 3/4 1/4 c +1/4 3/4 3/4 c +3/4 1/4 3/4 c +1/4 1/4 3/4 d +3/4 3/4 3/4 d +1/4 3/4 1/4 d +3/4 1/4 1/4 d +0 1/2 z e +0 1/2 z+1/2 e +1/2 0 -z e +1/2 0 -z+1/2 e +0 0 z f +1/2 1/2 z+1/2 f +1/2 1/2 -z f +0 0 -z+1/2 f +1/2 1/2 -z+1/2 f +0 0 -z f +0 0 z+1/2 f +1/2 1/2 z f +x x 1/4 g +-x -x 1/4 g +-x+1/2 x+1/2 3/4 g +x+1/2 -x+1/2 3/4 g +-x+1/2 -x+1/2 1/4 g +x+1/2 x+1/2 1/4 g +x -x 3/4 g +-x x 3/4 g +x x 3/4 h +-x -x 3/4 h +-x+1/2 x+1/2 1/4 h +x+1/2 -x+1/2 1/4 h +-x+1/2 -x+1/2 3/4 h +x+1/2 x+1/2 3/4 h +x -x 1/4 h +-x x 1/4 h +x x+1/2 z i +-x -x+1/2 z i +-x x+1/2 z+1/2 i +x -x+1/2 z+1/2 i +-x+1/2 x -z i +x+1/2 -x -z i +x+1/2 x -z+1/2 i +-x+1/2 -x -z+1/2 i +x y z j +-x -y z j +-y+1/2 x+1/2 z+1/2 j +y+1/2 -x+1/2 z+1/2 j +-x+1/2 y+1/2 -z j +x+1/2 -y+1/2 -z j +y x -z+1/2 j +-y -x -z+1/2 j +-x+1/2 -y+1/2 -z+1/2 j +x+1/2 y+1/2 -z+1/2 j +y -x -z j +-y x -z j +x -y z+1/2 j +-x y z+1/2 j +-y+1/2 -x+1/2 z j +y+1/2 x+1/2 z j diff --git a/data/wyckoff/wyckoff138s2.txt b/data/wyckoff/wyckoff138s2.txt new file mode 100644 index 0000000..a3fb7b8 --- /dev/null +++ b/data/wyckoff/wyckoff138s2.txt @@ -0,0 +1,68 @@ +3/4 1/4 0 a +1/4 3/4 1/2 a +1/4 3/4 0 a +3/4 1/4 1/2 a +3/4 1/4 3/4 b +1/4 3/4 1/4 b +1/4 3/4 3/4 b +3/4 1/4 1/4 b +0 0 1/2 c +1/2 1/2 1/2 c +1/2 0 0 c +0 1/2 0 c +0 0 0 d +1/2 1/2 0 d +1/2 0 1/2 d +0 1/2 1/2 d +1/4 1/4 z e +1/4 1/4 z+1/2 e +3/4 3/4 -z+1/2 e +3/4 3/4 -z e +3/4 1/4 z f +1/4 3/4 z+1/2 f +1/4 3/4 -z+1/2 f +3/4 1/4 -z f +1/4 3/4 -z f +3/4 1/4 -z+1/2 f +3/4 1/4 z+1/2 f +1/4 3/4 z f +x -x 1/2 g +-x+1/2 x+1/2 1/2 g +x+1/2 x 0 g +-x -x+1/2 0 g +-x x 1/2 g +x+1/2 -x+1/2 1/2 g +-x+1/2 -x 0 g +x x+1/2 0 g +x -x 0 h +-x+1/2 x+1/2 0 h +x+1/2 x 1/2 h +-x -x+1/2 1/2 h +-x x 0 h +x+1/2 -x+1/2 0 h +-x+1/2 -x 1/2 h +x x+1/2 1/2 h +x x z i +-x+1/2 -x+1/2 z i +-x+1/2 x z+1/2 i +x -x+1/2 z+1/2 i +-x x+1/2 -z+1/2 i +x+1/2 -x -z+1/2 i +x+1/2 x+1/2 -z i +-x -x -z i +x y z j +-x+1/2 -y+1/2 z j +-y+1/2 x z+1/2 j +y -x+1/2 z+1/2 j +-x y+1/2 -z+1/2 j +x+1/2 -y -z+1/2 j +y+1/2 x+1/2 -z j +-y -x -z j +-x -y -z j +x+1/2 y+1/2 -z j +y+1/2 -x -z+1/2 j +-y x+1/2 -z+1/2 j +x -y+1/2 z+1/2 j +-x+1/2 y z+1/2 j +-y+1/2 -x+1/2 z j +y x z j diff --git a/data/wyckoff/wyckoff139.txt b/data/wyckoff/wyckoff139.txt new file mode 100644 index 0000000..dc96d4e --- /dev/null +++ b/data/wyckoff/wyckoff139.txt @@ -0,0 +1,76 @@ +0 0 0 a +0 0 1/2 b +0 1/2 0 c +1/2 0 0 c +0 1/2 1/4 d +1/2 0 1/4 d +0 0 z e +0 0 -z e +1/4 1/4 1/4 f +3/4 3/4 1/4 f +3/4 1/4 1/4 f +1/4 3/4 1/4 f +0 1/2 z g +1/2 0 z g +0 1/2 -z g +1/2 0 -z g +x x 0 h +-x -x 0 h +-x x 0 h +x -x 0 h +x 0 0 i +-x 0 0 i +0 x 0 i +0 -x 0 i +x 1/2 0 j +-x 1/2 0 j +1/2 x 0 j +1/2 -x 0 j +x x+1/2 1/4 k +-x -x+1/2 1/4 k +-x+1/2 x 1/4 k +x+1/2 -x 1/4 k +-x -x+1/2 3/4 k +x x+1/2 3/4 k +x+1/2 -x 3/4 k +-x+1/2 x 3/4 k +x y 0 l +-x -y 0 l +-y x 0 l +y -x 0 l +-x y 0 l +x -y 0 l +y x 0 l +-y -x 0 l +x x z m +-x -x z m +-x x z m +x -x z m +-x x -z m +x -x -z m +x x -z m +-x -x -z m +0 y z n +0 -y z n +-y 0 z n +y 0 z n +0 y -z n +0 -y -z n +y 0 -z n +-y 0 -z n +x y z o +-x -y z o +-y x z o +y -x z o +-x y -z o +x -y -z o +y x -z o +-y -x -z o +-x -y -z o +x y -z o +y -x -z o +-y x -z o +x -y z o +-x y z o +-y -x z o +y x z o diff --git a/data/wyckoff/wyckoff14.txt b/data/wyckoff/wyckoff14.txt new file mode 100644 index 0000000..6faeed7 --- /dev/null +++ b/data/wyckoff/wyckoff14.txt @@ -0,0 +1,12 @@ +0 0 0 a +0 1/2 1/2 a +1/2 0 0 b +1/2 1/2 1/2 b +0 0 1/2 c +0 1/2 0 c +1/2 0 1/2 d +1/2 1/2 0 d +x y z e +-x y+1/2 -z+1/2 e +-x -y -z e +x -y+1/2 z+1/2 e diff --git a/data/wyckoff/wyckoff140.txt b/data/wyckoff/wyckoff140.txt new file mode 100644 index 0000000..12eeaa2 --- /dev/null +++ b/data/wyckoff/wyckoff140.txt @@ -0,0 +1,72 @@ +0 0 1/4 a +0 0 3/4 a +0 1/2 1/4 b +1/2 0 1/4 b +0 0 0 c +0 0 1/2 c +0 1/2 0 d +1/2 0 0 d +1/4 1/4 1/4 e +3/4 3/4 1/4 e +3/4 1/4 1/4 e +1/4 3/4 1/4 e +0 0 z f +0 0 -z+1/2 f +0 0 -z f +0 0 z+1/2 f +0 1/2 z g +1/2 0 z g +0 1/2 -z+1/2 g +1/2 0 -z+1/2 g +x x+1/2 0 h +-x -x+1/2 0 h +-x+1/2 x 0 h +x+1/2 -x 0 h +x x 1/4 i +-x -x 1/4 i +-x x 1/4 i +x -x 1/4 i +-x -x 3/4 i +x x 3/4 i +x -x 3/4 i +-x x 3/4 i +x 0 1/4 j +-x 0 1/4 j +0 x 1/4 j +0 -x 1/4 j +-x 0 3/4 j +x 0 3/4 j +0 -x 3/4 j +0 x 3/4 j +x y 0 k +-x -y 0 k +-y x 0 k +y -x 0 k +-x y 1/2 k +x -y 1/2 k +y x 1/2 k +-y -x 1/2 k +x x+1/2 z l +-x -x+1/2 z l +-x+1/2 x z l +x+1/2 -x z l +-x x+1/2 -z+1/2 l +x -x+1/2 -z+1/2 l +x+1/2 x -z+1/2 l +-x+1/2 -x -z+1/2 l +x y z m +-x -y z m +-y x z m +y -x z m +-x y -z+1/2 m +x -y -z+1/2 m +y x -z+1/2 m +-y -x -z+1/2 m +-x -y -z m +x y -z m +y -x -z m +-y x -z m +x -y z+1/2 m +-x y z+1/2 m +-y -x z+1/2 m +y x z+1/2 m diff --git a/data/wyckoff/wyckoff141.txt b/data/wyckoff/wyckoff141.txt new file mode 100644 index 0000000..be14b38 --- /dev/null +++ b/data/wyckoff/wyckoff141.txt @@ -0,0 +1,56 @@ +0 0 0 a +0 1/2 1/4 a +0 0 1/2 b +0 1/2 3/4 b +0 1/4 1/8 c +1/2 1/4 5/8 c +3/4 1/2 3/8 c +3/4 0 7/8 c +0 1/4 5/8 d +1/2 1/4 1/8 d +3/4 1/2 7/8 d +3/4 0 3/8 d +0 0 z e +0 1/2 z+1/4 e +1/2 0 -z+3/4 e +1/2 1/2 -z+1/2 e +x 1/4 1/8 f +-x+1/2 1/4 5/8 f +3/4 x+1/2 3/8 f +3/4 -x 7/8 f +-x 1/4 1/8 f +x+1/2 1/4 5/8 f +1/4 -x 7/8 f +1/4 x+1/2 3/8 f +x x 0 g +-x+1/2 -x+1/2 1/2 g +-x x+1/2 1/4 g +x+1/2 -x 3/4 g +-x -x+1/2 1/4 g +x+1/2 x 3/4 g +x -x 0 g +-x+1/2 x+1/2 1/2 g +0 y z h +1/2 -y+1/2 z+1/2 h +-y 1/2 z+1/4 h +y+1/2 0 z+3/4 h +1/2 y -z+3/4 h +0 -y+1/2 -z+1/4 h +y+1/2 1/2 -z+1/2 h +-y 0 -z h +x y z i +-x+1/2 -y+1/2 z+1/2 i +-y x+1/2 z+1/4 i +y+1/2 -x z+3/4 i +-x+1/2 y -z+3/4 i +x -y+1/2 -z+1/4 i +y+1/2 x+1/2 -z+1/2 i +-y -x -z i +-x -y+1/2 -z+1/4 i +x+1/2 y -z+3/4 i +y -x -z i +-y+1/2 x+1/2 -z+1/2 i +x+1/2 -y+1/2 z+1/2 i +-x y z i +-y+1/2 -x z+3/4 i +y x+1/2 z+1/4 i diff --git a/data/wyckoff/wyckoff141s1.txt b/data/wyckoff/wyckoff141s1.txt new file mode 100644 index 0000000..be14b38 --- /dev/null +++ b/data/wyckoff/wyckoff141s1.txt @@ -0,0 +1,56 @@ +0 0 0 a +0 1/2 1/4 a +0 0 1/2 b +0 1/2 3/4 b +0 1/4 1/8 c +1/2 1/4 5/8 c +3/4 1/2 3/8 c +3/4 0 7/8 c +0 1/4 5/8 d +1/2 1/4 1/8 d +3/4 1/2 7/8 d +3/4 0 3/8 d +0 0 z e +0 1/2 z+1/4 e +1/2 0 -z+3/4 e +1/2 1/2 -z+1/2 e +x 1/4 1/8 f +-x+1/2 1/4 5/8 f +3/4 x+1/2 3/8 f +3/4 -x 7/8 f +-x 1/4 1/8 f +x+1/2 1/4 5/8 f +1/4 -x 7/8 f +1/4 x+1/2 3/8 f +x x 0 g +-x+1/2 -x+1/2 1/2 g +-x x+1/2 1/4 g +x+1/2 -x 3/4 g +-x -x+1/2 1/4 g +x+1/2 x 3/4 g +x -x 0 g +-x+1/2 x+1/2 1/2 g +0 y z h +1/2 -y+1/2 z+1/2 h +-y 1/2 z+1/4 h +y+1/2 0 z+3/4 h +1/2 y -z+3/4 h +0 -y+1/2 -z+1/4 h +y+1/2 1/2 -z+1/2 h +-y 0 -z h +x y z i +-x+1/2 -y+1/2 z+1/2 i +-y x+1/2 z+1/4 i +y+1/2 -x z+3/4 i +-x+1/2 y -z+3/4 i +x -y+1/2 -z+1/4 i +y+1/2 x+1/2 -z+1/2 i +-y -x -z i +-x -y+1/2 -z+1/4 i +x+1/2 y -z+3/4 i +y -x -z i +-y+1/2 x+1/2 -z+1/2 i +x+1/2 -y+1/2 z+1/2 i +-x y z i +-y+1/2 -x z+3/4 i +y x+1/2 z+1/4 i diff --git a/data/wyckoff/wyckoff141s2.txt b/data/wyckoff/wyckoff141s2.txt new file mode 100644 index 0000000..eb1c34f --- /dev/null +++ b/data/wyckoff/wyckoff141s2.txt @@ -0,0 +1,56 @@ +0 3/4 1/8 a +1/2 3/4 3/8 a +0 1/4 3/8 b +0 3/4 5/8 b +0 0 0 c +1/2 0 1/2 c +1/4 3/4 1/4 c +1/4 1/4 3/4 c +0 0 1/2 d +1/2 0 0 d +1/4 3/4 3/4 d +1/4 1/4 1/4 d +0 1/4 z e +0 3/4 z+1/4 e +1/2 1/4 -z+1/2 e +1/2 3/4 -z+1/4 e +x 0 0 f +-x+1/2 0 1/2 f +1/4 x+3/4 1/4 f +1/4 -x+1/4 3/4 f +-x 0 0 f +x+1/2 0 1/2 f +3/4 -x+1/4 3/4 f +3/4 x+3/4 1/4 f +x x+1/4 7/8 g +-x+1/2 -x+3/4 3/8 g +-x x+3/4 1/8 g +x+1/2 -x+1/4 5/8 g +-x -x+3/4 1/8 g +x+1/2 x+1/4 5/8 g +x -x+1/4 7/8 g +-x+1/2 x+3/4 3/8 g +0 y z h +1/2 -y z+1/2 h +-y+1/4 3/4 z+1/4 h +y+1/4 1/4 z+3/4 h +1/2 y -z+1/2 h +0 -y -z h +y+1/4 3/4 -z+1/4 h +-y+1/4 1/4 -z+3/4 h +x y z i +-x+1/2 -y z+1/2 i +-y+1/4 x+3/4 z+1/4 i +y+1/4 -x+1/4 z+3/4 i +-x+1/2 y -z+1/2 i +x -y -z i +y+1/4 x+3/4 -z+1/4 i +-y+1/4 -x+1/4 -z+3/4 i +-x -y -z i +x+1/2 y -z+1/2 i +y+3/4 -x+1/4 -z+3/4 i +-y+3/4 x+3/4 -z+1/4 i +x+1/2 -y z+1/2 i +-x y z i +-y+3/4 -x+1/4 z+3/4 i +y+3/4 x+3/4 z+1/4 i diff --git a/data/wyckoff/wyckoff142.txt b/data/wyckoff/wyckoff142.txt new file mode 100644 index 0000000..15a5c16 --- /dev/null +++ b/data/wyckoff/wyckoff142.txt @@ -0,0 +1,56 @@ +0 0 0 a +0 1/2 1/4 a +1/2 0 1/4 a +1/2 1/2 0 a +0 0 1/4 b +0 1/2 1/2 b +0 1/2 0 b +0 0 3/4 b +0 1/4 1/8 c +1/2 1/4 5/8 c +3/4 1/2 3/8 c +3/4 0 7/8 c +1/2 1/4 1/8 c +0 1/4 5/8 c +3/4 1/2 7/8 c +3/4 0 3/8 c +0 0 z d +0 1/2 z+1/4 d +1/2 0 -z+1/4 d +1/2 1/2 -z d +0 1/2 -z+1/4 d +0 0 -z d +1/2 1/2 z d +1/2 0 z+1/4 d +1/4 y 1/8 e +1/4 -y+1/2 5/8 e +-y 3/4 3/8 e +y+1/2 3/4 7/8 e +3/4 -y+1/2 1/8 e +3/4 y 5/8 e +y 3/4 7/8 e +-y+1/2 3/4 3/8 e +x x 1/4 f +-x+1/2 -x+1/2 3/4 f +-x x+1/2 1/2 f +x+1/2 -x 0 f +-x -x+1/2 0 f +x+1/2 x 1/2 f +x -x 3/4 f +-x+1/2 x+1/2 1/4 f +x y z g +-x+1/2 -y+1/2 z+1/2 g +-y x+1/2 z+1/4 g +y+1/2 -x z+3/4 g +-x+1/2 y -z+1/4 g +x -y+1/2 -z+3/4 g +y+1/2 x+1/2 -z g +-y -x -z+1/2 g +-x -y+1/2 -z+1/4 g +x+1/2 y -z+3/4 g +y -x -z g +-y+1/2 x+1/2 -z+1/2 g +x+1/2 -y+1/2 z g +-x y z+1/2 g +-y+1/2 -x z+1/4 g +y x+1/2 z+3/4 g diff --git a/data/wyckoff/wyckoff142s1.txt b/data/wyckoff/wyckoff142s1.txt new file mode 100644 index 0000000..15a5c16 --- /dev/null +++ b/data/wyckoff/wyckoff142s1.txt @@ -0,0 +1,56 @@ +0 0 0 a +0 1/2 1/4 a +1/2 0 1/4 a +1/2 1/2 0 a +0 0 1/4 b +0 1/2 1/2 b +0 1/2 0 b +0 0 3/4 b +0 1/4 1/8 c +1/2 1/4 5/8 c +3/4 1/2 3/8 c +3/4 0 7/8 c +1/2 1/4 1/8 c +0 1/4 5/8 c +3/4 1/2 7/8 c +3/4 0 3/8 c +0 0 z d +0 1/2 z+1/4 d +1/2 0 -z+1/4 d +1/2 1/2 -z d +0 1/2 -z+1/4 d +0 0 -z d +1/2 1/2 z d +1/2 0 z+1/4 d +1/4 y 1/8 e +1/4 -y+1/2 5/8 e +-y 3/4 3/8 e +y+1/2 3/4 7/8 e +3/4 -y+1/2 1/8 e +3/4 y 5/8 e +y 3/4 7/8 e +-y+1/2 3/4 3/8 e +x x 1/4 f +-x+1/2 -x+1/2 3/4 f +-x x+1/2 1/2 f +x+1/2 -x 0 f +-x -x+1/2 0 f +x+1/2 x 1/2 f +x -x 3/4 f +-x+1/2 x+1/2 1/4 f +x y z g +-x+1/2 -y+1/2 z+1/2 g +-y x+1/2 z+1/4 g +y+1/2 -x z+3/4 g +-x+1/2 y -z+1/4 g +x -y+1/2 -z+3/4 g +y+1/2 x+1/2 -z g +-y -x -z+1/2 g +-x -y+1/2 -z+1/4 g +x+1/2 y -z+3/4 g +y -x -z g +-y+1/2 x+1/2 -z+1/2 g +x+1/2 -y+1/2 z g +-x y z+1/2 g +-y+1/2 -x z+1/4 g +y x+1/2 z+3/4 g diff --git a/data/wyckoff/wyckoff142s2.txt b/data/wyckoff/wyckoff142s2.txt new file mode 100644 index 0000000..f6cf85e --- /dev/null +++ b/data/wyckoff/wyckoff142s2.txt @@ -0,0 +1,56 @@ +0 1/4 3/8 a +0 3/4 5/8 a +1/2 1/4 5/8 a +1/2 3/4 3/8 a +0 1/4 1/8 b +0 3/4 3/8 b +0 3/4 7/8 b +0 1/4 5/8 b +0 0 0 c +1/2 0 1/2 c +1/4 3/4 1/4 c +1/4 1/4 3/4 c +1/2 0 0 c +0 0 1/2 c +1/4 3/4 3/4 c +1/4 1/4 1/4 c +0 1/4 z d +0 3/4 z+1/4 d +1/2 1/4 -z d +1/2 3/4 -z+3/4 d +0 3/4 -z d +0 1/4 -z+3/4 d +1/2 3/4 z d +1/2 1/4 z+1/4 d +x 0 1/4 e +-x+1/2 0 3/4 e +1/4 x+3/4 1/2 e +1/4 -x+1/4 0 e +-x 0 3/4 e +x+1/2 0 1/4 e +3/4 -x+1/4 1/2 e +3/4 x+3/4 0 e +x x+1/4 1/8 f +-x+1/2 -x+3/4 5/8 f +-x x+3/4 3/8 f +x+1/2 -x+1/4 7/8 f +-x -x+3/4 7/8 f +x+1/2 x+1/4 3/8 f +x -x+1/4 5/8 f +-x+1/2 x+3/4 1/8 f +x y z g +-x+1/2 -y z+1/2 g +-y+1/4 x+3/4 z+1/4 g +y+1/4 -x+1/4 z+3/4 g +-x+1/2 y -z g +x -y -z+1/2 g +y+1/4 x+3/4 -z+3/4 g +-y+1/4 -x+1/4 -z+1/4 g +-x -y -z g +x+1/2 y -z+1/2 g +y+3/4 -x+1/4 -z+3/4 g +-y+3/4 x+3/4 -z+1/4 g +x+1/2 -y z g +-x y z+1/2 g +-y+3/4 -x+1/4 z+1/4 g +y+3/4 x+3/4 z+3/4 g diff --git a/data/wyckoff/wyckoff143.txt b/data/wyckoff/wyckoff143.txt new file mode 100644 index 0000000..5b221f1 --- /dev/null +++ b/data/wyckoff/wyckoff143.txt @@ -0,0 +1,6 @@ +0 0 z a +1/3 2/3 z b +2/3 1/3 z c +x y z d +-y x-y z d +-x+y -x z d diff --git a/data/wyckoff/wyckoff144.txt b/data/wyckoff/wyckoff144.txt new file mode 100644 index 0000000..d7be626 --- /dev/null +++ b/data/wyckoff/wyckoff144.txt @@ -0,0 +1,3 @@ +x y z a +-y x-y z+1/3 a +-x+y -x z+2/3 a diff --git a/data/wyckoff/wyckoff145.txt b/data/wyckoff/wyckoff145.txt new file mode 100644 index 0000000..a1a2d3f --- /dev/null +++ b/data/wyckoff/wyckoff145.txt @@ -0,0 +1,3 @@ +x y z a +-y x-y z+2/3 a +-x+y -x z+1/3 a diff --git a/data/wyckoff/wyckoff146.txt b/data/wyckoff/wyckoff146.txt new file mode 100644 index 0000000..73d0586 --- /dev/null +++ b/data/wyckoff/wyckoff146.txt @@ -0,0 +1,4 @@ +0 0 z a +x y z b +-y x-y z b +-x+y -x z b diff --git a/data/wyckoff/wyckoff147.txt b/data/wyckoff/wyckoff147.txt new file mode 100644 index 0000000..4f4cd24 --- /dev/null +++ b/data/wyckoff/wyckoff147.txt @@ -0,0 +1,18 @@ +0 0 0 a +0 0 1/2 b +0 0 z c +0 0 -z c +1/3 2/3 z d +2/3 1/3 -z d +1/2 0 0 e +0 1/2 0 e +1/2 1/2 0 e +1/2 0 1/2 f +0 1/2 1/2 f +1/2 1/2 1/2 f +x y z g +-y x-y z g +-x+y -x z g +-x -y -z g +y -x+y -z g +x-y x -z g diff --git a/data/wyckoff/wyckoff148.txt b/data/wyckoff/wyckoff148.txt new file mode 100644 index 0000000..ff0891d --- /dev/null +++ b/data/wyckoff/wyckoff148.txt @@ -0,0 +1,16 @@ +0 0 0 a +0 0 1/2 b +0 0 z c +0 0 -z c +1/2 0 1/2 d +0 1/2 1/2 d +1/2 1/2 1/2 d +1/2 0 0 e +0 1/2 0 e +1/2 1/2 0 e +x y z f +-y x-y z f +-x+y -x z f +-x -y -z f +y -x+y -z f +x-y x -z f diff --git a/data/wyckoff/wyckoff149.txt b/data/wyckoff/wyckoff149.txt new file mode 100644 index 0000000..fb42644 --- /dev/null +++ b/data/wyckoff/wyckoff149.txt @@ -0,0 +1,24 @@ +0 0 0 a +0 0 1/2 b +1/3 2/3 0 c +1/3 2/3 1/2 d +2/3 1/3 0 e +2/3 1/3 1/2 f +0 0 z g +0 0 -z g +1/3 2/3 z h +1/3 2/3 -z h +2/3 1/3 z i +2/3 1/3 -z i +x -x 0 j +x 2*x 0 j +-2*x -x 0 j +x -x 1/2 k +x 2*x 1/2 k +-2*x -x 1/2 k +x y z l +-y x-y z l +-x+y -x z l +-y -x -z l +-x+y y -z l +x x-y -z l diff --git a/data/wyckoff/wyckoff15.txt b/data/wyckoff/wyckoff15.txt new file mode 100644 index 0000000..a1ccfa8 --- /dev/null +++ b/data/wyckoff/wyckoff15.txt @@ -0,0 +1,14 @@ +0 0 0 a +0 0 1/2 a +0 1/2 0 b +0 1/2 1/2 b +1/4 1/4 0 c +3/4 1/4 1/2 c +1/4 1/4 1/2 d +3/4 1/4 0 d +0 y 1/4 e +0 -y 3/4 e +x y z f +-x y -z+1/2 f +-x -y -z f +x -y z+1/2 f diff --git a/data/wyckoff/wyckoff150.txt b/data/wyckoff/wyckoff150.txt new file mode 100644 index 0000000..1749fb1 --- /dev/null +++ b/data/wyckoff/wyckoff150.txt @@ -0,0 +1,18 @@ +0 0 0 a +0 0 1/2 b +0 0 z c +0 0 -z c +1/3 2/3 z d +2/3 1/3 -z d +x 0 0 e +0 x 0 e +-x -x 0 e +x 0 1/2 f +0 x 1/2 f +-x -x 1/2 f +x y z g +-y x-y z g +-x+y -x z g +y x -z g +x-y -y -z g +-x -x+y -z g diff --git a/data/wyckoff/wyckoff151.txt b/data/wyckoff/wyckoff151.txt new file mode 100644 index 0000000..50fd105 --- /dev/null +++ b/data/wyckoff/wyckoff151.txt @@ -0,0 +1,12 @@ +x -x 1/3 a +x 2*x 2/3 a +-2*x -x 0 a +x -x 5/6 b +x 2*x 1/6 b +-2*x -x 1/2 b +x y z c +-y x-y z+1/3 c +-x+y -x z+2/3 c +-y -x -z+2/3 c +-x+y y -z+1/3 c +x x-y -z c diff --git a/data/wyckoff/wyckoff152.txt b/data/wyckoff/wyckoff152.txt new file mode 100644 index 0000000..3e60ac2 --- /dev/null +++ b/data/wyckoff/wyckoff152.txt @@ -0,0 +1,12 @@ +x 0 1/3 a +0 x 2/3 a +-x -x 0 a +x 0 5/6 b +0 x 1/6 b +-x -x 1/2 b +x y z c +-y x-y z+1/3 c +-x+y -x z+2/3 c +y x -z c +x-y -y -z+2/3 c +-x -x+y -z+1/3 c diff --git a/data/wyckoff/wyckoff153.txt b/data/wyckoff/wyckoff153.txt new file mode 100644 index 0000000..7ecb0be --- /dev/null +++ b/data/wyckoff/wyckoff153.txt @@ -0,0 +1,12 @@ +x -x 2/3 a +x 2*x 1/3 a +-2*x -x 0 a +x -x 1/6 b +x 2*x 5/6 b +-2*x -x 1/2 b +x y z c +-y x-y z+2/3 c +-x+y -x z+1/3 c +-y -x -z+1/3 c +-x+y y -z+2/3 c +x x-y -z c diff --git a/data/wyckoff/wyckoff154.txt b/data/wyckoff/wyckoff154.txt new file mode 100644 index 0000000..c5b9907 --- /dev/null +++ b/data/wyckoff/wyckoff154.txt @@ -0,0 +1,12 @@ +x 0 2/3 a +0 x 1/3 a +-x -x 0 a +x 0 1/6 b +0 x 5/6 b +-x -x 1/2 b +x y z c +-y x-y z+2/3 c +-x+y -x z+1/3 c +y x -z c +x-y -y -z+1/3 c +-x -x+y -z+2/3 c diff --git a/data/wyckoff/wyckoff155.txt b/data/wyckoff/wyckoff155.txt new file mode 100644 index 0000000..6629795 --- /dev/null +++ b/data/wyckoff/wyckoff155.txt @@ -0,0 +1,16 @@ +0 0 0 a +0 0 1/2 b +0 0 z c +0 0 -z c +x 0 0 d +0 x 0 d +-x -x 0 d +x 0 1/2 e +0 x 1/2 e +-x -x 1/2 e +x y z f +-y x-y z f +-x+y -x z f +y x -z f +x-y -y -z f +-x -x+y -z f diff --git a/data/wyckoff/wyckoff156.txt b/data/wyckoff/wyckoff156.txt new file mode 100644 index 0000000..3172a9d --- /dev/null +++ b/data/wyckoff/wyckoff156.txt @@ -0,0 +1,12 @@ +0 0 z a +1/3 2/3 z b +2/3 1/3 z c +x -x z d +x 2*x z d +-2*x -x z d +x y z e +-y x-y z e +-x+y -x z e +-y -x z e +-x+y y z e +x x-y z e diff --git a/data/wyckoff/wyckoff157.txt b/data/wyckoff/wyckoff157.txt new file mode 100644 index 0000000..7f77029 --- /dev/null +++ b/data/wyckoff/wyckoff157.txt @@ -0,0 +1,12 @@ +0 0 z a +1/3 2/3 z b +2/3 1/3 z b +x 0 z c +0 x z c +-x -x z c +x y z d +-y x-y z d +-x+y -x z d +y x z d +x-y -y z d +-x -x+y z d diff --git a/data/wyckoff/wyckoff158.txt b/data/wyckoff/wyckoff158.txt new file mode 100644 index 0000000..3ae0a73 --- /dev/null +++ b/data/wyckoff/wyckoff158.txt @@ -0,0 +1,12 @@ +0 0 z a +0 0 z+1/2 a +1/3 2/3 z b +1/3 2/3 z+1/2 b +2/3 1/3 z c +2/3 1/3 z+1/2 c +x y z d +-y x-y z d +-x+y -x z d +-y -x z+1/2 d +-x+y y z+1/2 d +x x-y z+1/2 d diff --git a/data/wyckoff/wyckoff159.txt b/data/wyckoff/wyckoff159.txt new file mode 100644 index 0000000..5878905 --- /dev/null +++ b/data/wyckoff/wyckoff159.txt @@ -0,0 +1,10 @@ +0 0 z a +0 0 z+1/2 a +1/3 2/3 z b +2/3 1/3 z+1/2 b +x y z c +-y x-y z c +-x+y -x z c +y x z+1/2 c +x-y -y z+1/2 c +-x -x+y z+1/2 c diff --git a/data/wyckoff/wyckoff16.txt b/data/wyckoff/wyckoff16.txt new file mode 100644 index 0000000..d154142 --- /dev/null +++ b/data/wyckoff/wyckoff16.txt @@ -0,0 +1,36 @@ +0 0 0 a +1/2 0 0 b +0 1/2 0 c +0 0 1/2 d +1/2 1/2 0 e +1/2 0 1/2 f +0 1/2 1/2 g +1/2 1/2 1/2 h +x 0 0 i +-x 0 0 i +x 0 1/2 j +-x 0 1/2 j +x 1/2 0 k +-x 1/2 0 k +x 1/2 1/2 l +-x 1/2 1/2 l +0 y 0 m +0 -y 0 m +0 y 1/2 n +0 -y 1/2 n +1/2 y 0 o +1/2 -y 0 o +1/2 y 1/2 p +1/2 -y 1/2 p +0 0 z q +0 0 -z q +1/2 0 z r +1/2 0 -z r +0 1/2 z s +0 1/2 -z s +1/2 1/2 z t +1/2 1/2 -z t +x y z u +-x -y z u +-x y -z u +x -y -z u diff --git a/data/wyckoff/wyckoff160.txt b/data/wyckoff/wyckoff160.txt new file mode 100644 index 0000000..c3fc860 --- /dev/null +++ b/data/wyckoff/wyckoff160.txt @@ -0,0 +1,10 @@ +0 0 z a +x -x z b +x 2*x z b +-2*x -x z b +x y z c +-y x-y z c +-x+y -x z c +-y -x z c +-x+y y z c +x x-y z c diff --git a/data/wyckoff/wyckoff161.txt b/data/wyckoff/wyckoff161.txt new file mode 100644 index 0000000..a5527ef --- /dev/null +++ b/data/wyckoff/wyckoff161.txt @@ -0,0 +1,8 @@ +0 0 z a +0 0 z+1/2 a +x y z b +-y x-y z b +-x+y -x z b +-y -x z+1/2 b +-x+y y z+1/2 b +x x-y z+1/2 b diff --git a/data/wyckoff/wyckoff162.txt b/data/wyckoff/wyckoff162.txt new file mode 100644 index 0000000..9627dbd --- /dev/null +++ b/data/wyckoff/wyckoff162.txt @@ -0,0 +1,48 @@ +0 0 0 a +0 0 1/2 b +1/3 2/3 0 c +2/3 1/3 0 c +1/3 2/3 1/2 d +2/3 1/3 1/2 d +0 0 z e +0 0 -z e +1/2 0 0 f +0 1/2 0 f +1/2 1/2 0 f +1/2 0 1/2 g +0 1/2 1/2 g +1/2 1/2 1/2 g +1/3 2/3 z h +1/3 2/3 -z h +2/3 1/3 -z h +2/3 1/3 z h +x -x 0 i +x 2*x 0 i +-2*x -x 0 i +-x x 0 i +-x -2*x 0 i +2*x x 0 i +x -x 1/2 j +x 2*x 1/2 j +-2*x -x 1/2 j +-x x 1/2 j +-x -2*x 1/2 j +2*x x 1/2 j +x 0 z k +0 x z k +-x -x z k +0 -x -z k +-x 0 -z k +x x -z k +x y z l +-y x-y z l +-x+y -x z l +-y -x -z l +-x+y y -z l +x x-y -z l +-x -y -z l +y -x+y -z l +x-y x -z l +y x z l +x-y -y z l +-x -x+y z l diff --git a/data/wyckoff/wyckoff163.txt b/data/wyckoff/wyckoff163.txt new file mode 100644 index 0000000..1dce43e --- /dev/null +++ b/data/wyckoff/wyckoff163.txt @@ -0,0 +1,40 @@ +0 0 1/4 a +0 0 3/4 a +0 0 0 b +0 0 1/2 b +1/3 2/3 1/4 c +2/3 1/3 3/4 c +2/3 1/3 1/4 d +1/3 2/3 3/4 d +0 0 z e +0 0 -z+1/2 e +0 0 -z e +0 0 z+1/2 e +1/3 2/3 z f +1/3 2/3 -z+1/2 f +2/3 1/3 -z f +2/3 1/3 z+1/2 f +1/2 0 0 g +0 1/2 0 g +1/2 1/2 0 g +0 1/2 1/2 g +1/2 0 1/2 g +1/2 1/2 1/2 g +x -x 1/4 h +x 2*x 1/4 h +-2*x -x 1/4 h +-x x 3/4 h +-x -2*x 3/4 h +2*x x 3/4 h +x y z i +-y x-y z i +-x+y -x z i +-y -x -z+1/2 i +-x+y y -z+1/2 i +x x-y -z+1/2 i +-x -y -z i +y -x+y -z i +x-y x -z i +y x z+1/2 i +x-y -y z+1/2 i +-x -x+y z+1/2 i diff --git a/data/wyckoff/wyckoff164.txt b/data/wyckoff/wyckoff164.txt new file mode 100644 index 0000000..2e9a23b --- /dev/null +++ b/data/wyckoff/wyckoff164.txt @@ -0,0 +1,42 @@ +0 0 0 a +0 0 1/2 b +0 0 z c +0 0 -z c +1/3 2/3 z d +2/3 1/3 -z d +1/2 0 0 e +0 1/2 0 e +1/2 1/2 0 e +1/2 0 1/2 f +0 1/2 1/2 f +1/2 1/2 1/2 f +x 0 0 g +0 x 0 g +-x -x 0 g +-x 0 0 g +0 -x 0 g +x x 0 g +x 0 1/2 h +0 x 1/2 h +-x -x 1/2 h +-x 0 1/2 h +0 -x 1/2 h +x x 1/2 h +x -x z i +x 2*x z i +-2*x -x z i +-x x -z i +2*x x -z i +-x -2*x -z i +x y z j +-y x-y z j +-x+y -x z j +y x -z j +x-y -y -z j +-x -x+y -z j +-x -y -z j +y -x+y -z j +x-y x -z j +-y -x z j +-x+y y z j +x x-y z j diff --git a/data/wyckoff/wyckoff165.txt b/data/wyckoff/wyckoff165.txt new file mode 100644 index 0000000..22d9f19 --- /dev/null +++ b/data/wyckoff/wyckoff165.txt @@ -0,0 +1,36 @@ +0 0 1/4 a +0 0 3/4 a +0 0 0 b +0 0 1/2 b +0 0 z c +0 0 -z+1/2 c +0 0 -z c +0 0 z+1/2 c +1/3 2/3 z d +2/3 1/3 -z+1/2 d +2/3 1/3 -z d +1/3 2/3 z+1/2 d +1/2 0 0 e +0 1/2 0 e +1/2 1/2 0 e +0 1/2 1/2 e +1/2 0 1/2 e +1/2 1/2 1/2 e +x 0 1/4 f +0 x 1/4 f +-x -x 1/4 f +-x 0 3/4 f +0 -x 3/4 f +x x 3/4 f +x y z g +-y x-y z g +-x+y -x z g +y x -z+1/2 g +x-y -y -z+1/2 g +-x -x+y -z+1/2 g +-x -y -z g +y -x+y -z g +x-y x -z g +-y -x z+1/2 g +-x+y y z+1/2 g +x x-y z+1/2 g diff --git a/data/wyckoff/wyckoff166.txt b/data/wyckoff/wyckoff166.txt new file mode 100644 index 0000000..60bc14c --- /dev/null +++ b/data/wyckoff/wyckoff166.txt @@ -0,0 +1,40 @@ +0 0 0 a +0 0 1/2 b +0 0 z c +0 0 -z c +1/2 0 1/2 d +0 1/2 1/2 d +1/2 1/2 1/2 d +1/2 0 0 e +0 1/2 0 e +1/2 1/2 0 e +x 0 0 f +0 x 0 f +-x -x 0 f +-x 0 0 f +0 -x 0 f +x x 0 f +x 0 1/2 g +0 x 1/2 g +-x -x 1/2 g +-x 0 1/2 g +0 -x 1/2 g +x x 1/2 g +x -x z h +x 2*x z h +-2*x -x z h +-x x -z h +2*x x -z h +-x -2*x -z h +x y z i +-y x-y z i +-x+y -x z i +y x -z i +x-y -y -z i +-x -x+y -z i +-x -y -z i +y -x+y -z i +x-y x -z i +-y -x z i +-x+y y z i +x x-y z i diff --git a/data/wyckoff/wyckoff167.txt b/data/wyckoff/wyckoff167.txt new file mode 100644 index 0000000..497fba1 --- /dev/null +++ b/data/wyckoff/wyckoff167.txt @@ -0,0 +1,32 @@ +0 0 1/4 a +0 0 3/4 a +0 0 0 b +0 0 1/2 b +0 0 z c +0 0 -z+1/2 c +0 0 -z c +0 0 z+1/2 c +1/2 0 0 d +0 1/2 0 d +1/2 1/2 0 d +0 1/2 1/2 d +1/2 0 1/2 d +1/2 1/2 1/2 d +x 0 1/4 e +0 x 1/4 e +-x -x 1/4 e +-x 0 3/4 e +0 -x 3/4 e +x x 3/4 e +x y z f +-y x-y z f +-x+y -x z f +y x -z+1/2 f +x-y -y -z+1/2 f +-x -x+y -z+1/2 f +-x -y -z f +y -x+y -z f +x-y x -z f +-y -x z+1/2 f +-x+y y z+1/2 f +x x-y z+1/2 f diff --git a/data/wyckoff/wyckoff168.txt b/data/wyckoff/wyckoff168.txt new file mode 100644 index 0000000..635ef74 --- /dev/null +++ b/data/wyckoff/wyckoff168.txt @@ -0,0 +1,12 @@ +0 0 z a +1/3 2/3 z b +2/3 1/3 z b +1/2 0 z c +0 1/2 z c +1/2 1/2 z c +x y z d +-y x-y z d +-x+y -x z d +-x -y z d +y -x+y z d +x-y x z d diff --git a/data/wyckoff/wyckoff169.txt b/data/wyckoff/wyckoff169.txt new file mode 100644 index 0000000..ddf20b3 --- /dev/null +++ b/data/wyckoff/wyckoff169.txt @@ -0,0 +1,6 @@ +x y z a +-y x-y z+1/3 a +-x+y -x z+2/3 a +-x -y z+1/2 a +y -x+y z+5/6 a +x-y x z+1/6 a diff --git a/data/wyckoff/wyckoff17.txt b/data/wyckoff/wyckoff17.txt new file mode 100644 index 0000000..b73e8f9 --- /dev/null +++ b/data/wyckoff/wyckoff17.txt @@ -0,0 +1,12 @@ +x 0 0 a +-x 0 1/2 a +x 1/2 0 b +-x 1/2 1/2 b +0 y 1/4 c +0 -y 3/4 c +1/2 y 1/4 d +1/2 -y 3/4 d +x y z e +-x -y z+1/2 e +-x y -z+1/2 e +x -y -z e diff --git a/data/wyckoff/wyckoff170.txt b/data/wyckoff/wyckoff170.txt new file mode 100644 index 0000000..e6b2bee --- /dev/null +++ b/data/wyckoff/wyckoff170.txt @@ -0,0 +1,6 @@ +x y z a +-y x-y z+2/3 a +-x+y -x z+1/3 a +-x -y z+1/2 a +y -x+y z+1/6 a +x-y x z+5/6 a diff --git a/data/wyckoff/wyckoff171.txt b/data/wyckoff/wyckoff171.txt new file mode 100644 index 0000000..558c125 --- /dev/null +++ b/data/wyckoff/wyckoff171.txt @@ -0,0 +1,12 @@ +0 0 z a +0 0 z+2/3 a +0 0 z+1/3 a +1/2 1/2 z b +1/2 0 z+2/3 b +0 1/2 z+1/3 b +x y z c +-y x-y z+2/3 c +-x+y -x z+1/3 c +-x -y z c +y -x+y z+2/3 c +x-y x z+1/3 c diff --git a/data/wyckoff/wyckoff172.txt b/data/wyckoff/wyckoff172.txt new file mode 100644 index 0000000..754fd56 --- /dev/null +++ b/data/wyckoff/wyckoff172.txt @@ -0,0 +1,12 @@ +0 0 z a +0 0 z+1/3 a +0 0 z+2/3 a +1/2 1/2 z b +1/2 0 z+1/3 b +0 1/2 z+2/3 b +x y z c +-y x-y z+1/3 c +-x+y -x z+2/3 c +-x -y z c +y -x+y z+1/3 c +x-y x z+2/3 c diff --git a/data/wyckoff/wyckoff173.txt b/data/wyckoff/wyckoff173.txt new file mode 100644 index 0000000..44f5cce --- /dev/null +++ b/data/wyckoff/wyckoff173.txt @@ -0,0 +1,10 @@ +0 0 z a +0 0 z+1/2 a +1/3 2/3 z b +2/3 1/3 z+1/2 b +x y z c +-y x-y z c +-x+y -x z c +-x -y z+1/2 c +y -x+y z+1/2 c +x-y x z+1/2 c diff --git a/data/wyckoff/wyckoff174.txt b/data/wyckoff/wyckoff174.txt new file mode 100644 index 0000000..b2b8655 --- /dev/null +++ b/data/wyckoff/wyckoff174.txt @@ -0,0 +1,24 @@ +0 0 0 a +0 0 1/2 b +1/3 2/3 0 c +1/3 2/3 1/2 d +2/3 1/3 0 e +2/3 1/3 1/2 f +0 0 z g +0 0 -z g +1/3 2/3 z h +1/3 2/3 -z h +2/3 1/3 z i +2/3 1/3 -z i +x y 0 j +-y x-y 0 j +-x+y -x 0 j +x y 1/2 k +-y x-y 1/2 k +-x+y -x 1/2 k +x y z l +-y x-y z l +-x+y -x z l +x y -z l +-y x-y -z l +-x+y -x -z l diff --git a/data/wyckoff/wyckoff175.txt b/data/wyckoff/wyckoff175.txt new file mode 100644 index 0000000..fbe46b7 --- /dev/null +++ b/data/wyckoff/wyckoff175.txt @@ -0,0 +1,48 @@ +0 0 0 a +0 0 1/2 b +1/3 2/3 0 c +2/3 1/3 0 c +1/3 2/3 1/2 d +2/3 1/3 1/2 d +0 0 z e +0 0 -z e +1/2 0 0 f +0 1/2 0 f +1/2 1/2 0 f +1/2 0 1/2 g +0 1/2 1/2 g +1/2 1/2 1/2 g +1/3 2/3 z h +2/3 1/3 z h +2/3 1/3 -z h +1/3 2/3 -z h +1/2 0 z i +0 1/2 z i +1/2 1/2 z i +1/2 0 -z i +0 1/2 -z i +1/2 1/2 -z i +x y 0 j +-y x-y 0 j +-x+y -x 0 j +-x -y 0 j +y -x+y 0 j +x-y x 0 j +x y 1/2 k +-y x-y 1/2 k +-x+y -x 1/2 k +-x -y 1/2 k +y -x+y 1/2 k +x-y x 1/2 k +x y z l +-y x-y z l +-x+y -x z l +-x -y z l +y -x+y z l +x-y x z l +-x -y -z l +y -x+y -z l +x-y x -z l +x y -z l +-y x-y -z l +-x+y -x -z l diff --git a/data/wyckoff/wyckoff176.txt b/data/wyckoff/wyckoff176.txt new file mode 100644 index 0000000..1a9fa3e --- /dev/null +++ b/data/wyckoff/wyckoff176.txt @@ -0,0 +1,40 @@ +0 0 1/4 a +0 0 3/4 a +0 0 0 b +0 0 1/2 b +1/3 2/3 1/4 c +2/3 1/3 3/4 c +2/3 1/3 1/4 d +1/3 2/3 3/4 d +0 0 z e +0 0 z+1/2 e +0 0 -z e +0 0 -z+1/2 e +1/3 2/3 z f +2/3 1/3 z+1/2 f +2/3 1/3 -z f +1/3 2/3 -z+1/2 f +1/2 0 0 g +0 1/2 0 g +1/2 1/2 0 g +1/2 0 1/2 g +0 1/2 1/2 g +1/2 1/2 1/2 g +x y 1/4 h +-y x-y 1/4 h +-x+y -x 1/4 h +-x -y 3/4 h +y -x+y 3/4 h +x-y x 3/4 h +x y z i +-y x-y z i +-x+y -x z i +-x -y z+1/2 i +y -x+y z+1/2 i +x-y x z+1/2 i +-x -y -z i +y -x+y -z i +x-y x -z i +x y -z+1/2 i +-y x-y -z+1/2 i +-x+y -x -z+1/2 i diff --git a/data/wyckoff/wyckoff177.txt b/data/wyckoff/wyckoff177.txt new file mode 100644 index 0000000..57afe2c --- /dev/null +++ b/data/wyckoff/wyckoff177.txt @@ -0,0 +1,60 @@ +0 0 0 a +0 0 1/2 b +1/3 2/3 0 c +2/3 1/3 0 c +1/3 2/3 1/2 d +2/3 1/3 1/2 d +0 0 z e +0 0 -z e +1/2 0 0 f +0 1/2 0 f +1/2 1/2 0 f +1/2 0 1/2 g +0 1/2 1/2 g +1/2 1/2 1/2 g +1/3 2/3 z h +2/3 1/3 z h +2/3 1/3 -z h +1/3 2/3 -z h +1/2 0 z i +0 1/2 z i +1/2 1/2 z i +0 1/2 -z i +1/2 0 -z i +1/2 1/2 -z i +x 0 0 j +0 x 0 j +-x -x 0 j +-x 0 0 j +0 -x 0 j +x x 0 j +x 0 1/2 k +0 x 1/2 k +-x -x 1/2 k +-x 0 1/2 k +0 -x 1/2 k +x x 1/2 k +x -x 0 l +x 2*x 0 l +-2*x -x 0 l +-x x 0 l +-x -2*x 0 l +2*x x 0 l +x -x 1/2 m +x 2*x 1/2 m +-2*x -x 1/2 m +-x x 1/2 m +-x -2*x 1/2 m +2*x x 1/2 m +x y z n +-y x-y z n +-x+y -x z n +-x -y z n +y -x+y z n +x-y x z n +y x -z n +x-y -y -z n +-x -x+y -z n +-y -x -z n +-x+y y -z n +x x-y -z n diff --git a/data/wyckoff/wyckoff178.txt b/data/wyckoff/wyckoff178.txt new file mode 100644 index 0000000..c610418 --- /dev/null +++ b/data/wyckoff/wyckoff178.txt @@ -0,0 +1,24 @@ +x 0 0 a +0 x 1/3 a +-x -x 2/3 a +-x 0 1/2 a +0 -x 5/6 a +x x 1/6 a +x 2*x 1/4 b +-2*x -x 7/12 b +x -x 11/12 b +-x -2*x 3/4 b +2*x x 1/12 b +-x x 5/12 b +x y z c +-y x-y z+1/3 c +-x+y -x z+2/3 c +-x -y z+1/2 c +y -x+y z+5/6 c +x-y x z+1/6 c +y x -z+1/3 c +x-y -y -z c +-x -x+y -z+2/3 c +-y -x -z+5/6 c +-x+y y -z+1/2 c +x x-y -z+1/6 c diff --git a/data/wyckoff/wyckoff179.txt b/data/wyckoff/wyckoff179.txt new file mode 100644 index 0000000..cf66c70 --- /dev/null +++ b/data/wyckoff/wyckoff179.txt @@ -0,0 +1,24 @@ +x 0 0 a +0 x 2/3 a +-x -x 1/3 a +-x 0 1/2 a +0 -x 1/6 a +x x 5/6 a +x 2*x 3/4 b +-2*x -x 5/12 b +x -x 1/12 b +-x -2*x 1/4 b +2*x x 11/12 b +-x x 7/12 b +x y z c +-y x-y z+2/3 c +-x+y -x z+1/3 c +-x -y z+1/2 c +y -x+y z+1/6 c +x-y x z+5/6 c +y x -z+2/3 c +x-y -y -z c +-x -x+y -z+1/3 c +-y -x -z+1/6 c +-x+y y -z+1/2 c +x x-y -z+5/6 c diff --git a/data/wyckoff/wyckoff18.txt b/data/wyckoff/wyckoff18.txt new file mode 100644 index 0000000..3b95511 --- /dev/null +++ b/data/wyckoff/wyckoff18.txt @@ -0,0 +1,8 @@ +0 0 z a +1/2 1/2 -z a +0 1/2 z b +1/2 0 -z b +x y z c +-x -y z c +-x+1/2 y+1/2 -z c +x+1/2 -y+1/2 -z c diff --git a/data/wyckoff/wyckoff180.txt b/data/wyckoff/wyckoff180.txt new file mode 100644 index 0000000..8a875ad --- /dev/null +++ b/data/wyckoff/wyckoff180.txt @@ -0,0 +1,60 @@ +0 0 0 a +0 0 2/3 a +0 0 1/3 a +0 0 1/2 b +0 0 1/6 b +0 0 5/6 b +1/2 0 0 c +0 1/2 2/3 c +1/2 1/2 1/3 c +1/2 0 1/2 d +0 1/2 1/6 d +1/2 1/2 5/6 d +0 0 z e +0 0 z+2/3 e +0 0 z+1/3 e +0 0 -z+2/3 e +0 0 -z e +0 0 -z+1/3 e +1/2 0 z f +0 1/2 z+2/3 f +1/2 1/2 z+1/3 f +0 1/2 -z+2/3 f +1/2 0 -z f +1/2 1/2 -z+1/3 f +x 0 0 g +0 x 2/3 g +-x -x 1/3 g +-x 0 0 g +0 -x 2/3 g +x x 1/3 g +x 0 1/2 h +0 x 1/6 h +-x -x 5/6 h +-x 0 1/2 h +0 -x 1/6 h +x x 5/6 h +x 2*x 0 i +-2*x -x 2/3 i +x -x 1/3 i +-x -2*x 0 i +2*x x 2/3 i +-x x 1/3 i +x 2*x 1/2 j +-2*x -x 1/6 j +x -x 5/6 j +-x -2*x 1/2 j +2*x x 1/6 j +-x x 5/6 j +x y z k +-y x-y z+2/3 k +-x+y -x z+1/3 k +-x -y z k +y -x+y z+2/3 k +x-y x z+1/3 k +y x -z+2/3 k +x-y -y -z k +-x -x+y -z+1/3 k +-y -x -z+2/3 k +-x+y y -z k +x x-y -z+1/3 k diff --git a/data/wyckoff/wyckoff181.txt b/data/wyckoff/wyckoff181.txt new file mode 100644 index 0000000..b46fe0e --- /dev/null +++ b/data/wyckoff/wyckoff181.txt @@ -0,0 +1,60 @@ +0 0 0 a +0 0 1/3 a +0 0 2/3 a +0 0 1/2 b +0 0 5/6 b +0 0 1/6 b +1/2 0 0 c +0 1/2 1/3 c +1/2 1/2 2/3 c +1/2 0 1/2 d +0 1/2 5/6 d +1/2 1/2 1/6 d +0 0 z e +0 0 z+1/3 e +0 0 z+2/3 e +0 0 -z+1/3 e +0 0 -z e +0 0 -z+2/3 e +1/2 0 z f +0 1/2 z+1/3 f +1/2 1/2 z+2/3 f +0 1/2 -z+1/3 f +1/2 0 -z f +1/2 1/2 -z+2/3 f +x 0 0 g +0 x 1/3 g +-x -x 2/3 g +-x 0 0 g +0 -x 1/3 g +x x 2/3 g +x 0 1/2 h +0 x 5/6 h +-x -x 1/6 h +-x 0 1/2 h +0 -x 5/6 h +x x 1/6 h +x 2*x 0 i +-2*x -x 1/3 i +x -x 2/3 i +-x -2*x 0 i +2*x x 1/3 i +-x x 2/3 i +x 2*x 1/2 j +-2*x -x 5/6 j +x -x 1/6 j +-x -2*x 1/2 j +2*x x 5/6 j +-x x 1/6 j +x y z k +-y x-y z+1/3 k +-x+y -x z+2/3 k +-x -y z k +y -x+y z+1/3 k +x-y x z+2/3 k +y x -z+1/3 k +x-y -y -z k +-x -x+y -z+2/3 k +-y -x -z+1/3 k +-x+y y -z k +x x-y -z+2/3 k diff --git a/data/wyckoff/wyckoff182.txt b/data/wyckoff/wyckoff182.txt new file mode 100644 index 0000000..1b915bf --- /dev/null +++ b/data/wyckoff/wyckoff182.txt @@ -0,0 +1,40 @@ +0 0 0 a +0 0 1/2 a +0 0 1/4 b +0 0 3/4 b +1/3 2/3 1/4 c +2/3 1/3 3/4 c +1/3 2/3 3/4 d +2/3 1/3 1/4 d +0 0 z e +0 0 z+1/2 e +0 0 -z e +0 0 -z+1/2 e +1/3 2/3 z f +2/3 1/3 z+1/2 f +2/3 1/3 -z f +1/3 2/3 -z+1/2 f +x 0 0 g +0 x 0 g +-x -x 0 g +-x 0 1/2 g +0 -x 1/2 g +x x 1/2 g +x 2*x 1/4 h +-2*x -x 1/4 h +x -x 1/4 h +-x -2*x 3/4 h +2*x x 3/4 h +-x x 3/4 h +x y z i +-y x-y z i +-x+y -x z i +-x -y z+1/2 i +y -x+y z+1/2 i +x-y x z+1/2 i +y x -z i +x-y -y -z i +-x -x+y -z i +-y -x -z+1/2 i +-x+y y -z+1/2 i +x x-y -z+1/2 i diff --git a/data/wyckoff/wyckoff183.txt b/data/wyckoff/wyckoff183.txt new file mode 100644 index 0000000..3bc4410 --- /dev/null +++ b/data/wyckoff/wyckoff183.txt @@ -0,0 +1,30 @@ +0 0 z a +1/3 2/3 z b +2/3 1/3 z b +1/2 0 z c +0 1/2 z c +1/2 1/2 z c +x 0 z d +0 x z d +-x -x z d +-x 0 z d +0 -x z d +x x z d +x -x z e +x 2*x z e +-2*x -x z e +-x x z e +-x -2*x z e +2*x x z e +x y z f +-y x-y z f +-x+y -x z f +-x -y z f +y -x+y z f +x-y x z f +-y -x z f +-x+y y z f +x x-y z f +y x z f +x-y -y z f +-x -x+y z f diff --git a/data/wyckoff/wyckoff184.txt b/data/wyckoff/wyckoff184.txt new file mode 100644 index 0000000..277109b --- /dev/null +++ b/data/wyckoff/wyckoff184.txt @@ -0,0 +1,24 @@ +0 0 z a +0 0 z+1/2 a +1/3 2/3 z b +2/3 1/3 z b +1/3 2/3 z+1/2 b +2/3 1/3 z+1/2 b +1/2 0 z c +0 1/2 z c +1/2 1/2 z c +0 1/2 z+1/2 c +1/2 0 z+1/2 c +1/2 1/2 z+1/2 c +x y z d +-y x-y z d +-x+y -x z d +-x -y z d +y -x+y z d +x-y x z d +-y -x z+1/2 d +-x+y y z+1/2 d +x x-y z+1/2 d +y x z+1/2 d +x-y -y z+1/2 d +-x -x+y z+1/2 d diff --git a/data/wyckoff/wyckoff185.txt b/data/wyckoff/wyckoff185.txt new file mode 100644 index 0000000..fe39a20 --- /dev/null +++ b/data/wyckoff/wyckoff185.txt @@ -0,0 +1,24 @@ +0 0 z a +0 0 z+1/2 a +1/3 2/3 z b +2/3 1/3 z+1/2 b +1/3 2/3 z+1/2 b +2/3 1/3 z b +x 0 z c +0 x z c +-x -x z c +-x 0 z+1/2 c +0 -x z+1/2 c +x x z+1/2 c +x y z d +-y x-y z d +-x+y -x z d +-x -y z+1/2 d +y -x+y z+1/2 d +x-y x z+1/2 d +-y -x z+1/2 d +-x+y y z+1/2 d +x x-y z+1/2 d +y x z d +x-y -y z d +-x -x+y z d diff --git a/data/wyckoff/wyckoff186.txt b/data/wyckoff/wyckoff186.txt new file mode 100644 index 0000000..aae9c87 --- /dev/null +++ b/data/wyckoff/wyckoff186.txt @@ -0,0 +1,22 @@ +0 0 z a +0 0 z+1/2 a +1/3 2/3 z b +2/3 1/3 z+1/2 b +x -x z c +x 2*x z c +-2*x -x z c +-x x z+1/2 c +-x -2*x z+1/2 c +2*x x z+1/2 c +x y z d +-y x-y z d +-x+y -x z d +-x -y z+1/2 d +y -x+y z+1/2 d +x-y x z+1/2 d +-y -x z d +-x+y y z d +x x-y z d +y x z+1/2 d +x-y -y z+1/2 d +-x -x+y z+1/2 d diff --git a/data/wyckoff/wyckoff187.txt b/data/wyckoff/wyckoff187.txt new file mode 100644 index 0000000..1362f16 --- /dev/null +++ b/data/wyckoff/wyckoff187.txt @@ -0,0 +1,48 @@ +0 0 0 a +0 0 1/2 b +1/3 2/3 0 c +1/3 2/3 1/2 d +2/3 1/3 0 e +2/3 1/3 1/2 f +0 0 z g +0 0 -z g +1/3 2/3 z h +1/3 2/3 -z h +2/3 1/3 z i +2/3 1/3 -z i +x -x 0 j +x 2*x 0 j +-2*x -x 0 j +x -x 1/2 k +x 2*x 1/2 k +-2*x -x 1/2 k +x y 0 l +-y x-y 0 l +-x+y -x 0 l +-y -x 0 l +-x+y y 0 l +x x-y 0 l +x y 1/2 m +-y x-y 1/2 m +-x+y -x 1/2 m +-y -x 1/2 m +-x+y y 1/2 m +x x-y 1/2 m +x -x z n +x 2*x z n +-2*x -x z n +x -x -z n +x 2*x -z n +-2*x -x -z n +x y z o +-y x-y z o +-x+y -x z o +x y -z o +-y x-y -z o +-x+y -x -z o +-y -x z o +-x+y y z o +x x-y z o +-y -x -z o +-x+y y -z o +x x-y -z o diff --git a/data/wyckoff/wyckoff188.txt b/data/wyckoff/wyckoff188.txt new file mode 100644 index 0000000..3ad7d19 --- /dev/null +++ b/data/wyckoff/wyckoff188.txt @@ -0,0 +1,48 @@ +0 0 0 a +0 0 1/2 a +0 0 1/4 b +0 0 3/4 b +1/3 2/3 0 c +1/3 2/3 1/2 c +1/3 2/3 1/4 d +1/3 2/3 3/4 d +2/3 1/3 0 e +2/3 1/3 1/2 e +2/3 1/3 1/4 f +2/3 1/3 3/4 f +0 0 z g +0 0 -z+1/2 g +0 0 z+1/2 g +0 0 -z g +1/3 2/3 z h +1/3 2/3 -z+1/2 h +1/3 2/3 z+1/2 h +1/3 2/3 -z h +2/3 1/3 z i +2/3 1/3 -z+1/2 i +2/3 1/3 z+1/2 i +2/3 1/3 -z i +x -x 0 j +x 2*x 0 j +-2*x -x 0 j +x -x 1/2 j +x 2*x 1/2 j +-2*x -x 1/2 j +x y 1/4 k +-y x-y 1/4 k +-x+y -x 1/4 k +-y -x 3/4 k +-x+y y 3/4 k +x x-y 3/4 k +x y z l +-y x-y z l +-x+y -x z l +x y -z+1/2 l +-y x-y -z+1/2 l +-x+y -x -z+1/2 l +-y -x z+1/2 l +-x+y y z+1/2 l +x x-y z+1/2 l +-y -x -z l +-x+y y -z l +x x-y -z l diff --git a/data/wyckoff/wyckoff189.txt b/data/wyckoff/wyckoff189.txt new file mode 100644 index 0000000..abcca34 --- /dev/null +++ b/data/wyckoff/wyckoff189.txt @@ -0,0 +1,48 @@ +0 0 0 a +0 0 1/2 b +1/3 2/3 0 c +2/3 1/3 0 c +1/3 2/3 1/2 d +2/3 1/3 1/2 d +0 0 z e +0 0 -z e +x 0 0 f +0 x 0 f +-x -x 0 f +x 0 1/2 g +0 x 1/2 g +-x -x 1/2 g +1/3 2/3 z h +1/3 2/3 -z h +2/3 1/3 -z h +2/3 1/3 z h +x 0 z i +0 x z i +-x -x z i +x 0 -z i +0 x -z i +-x -x -z i +x y 0 j +-y x-y 0 j +-x+y -x 0 j +y x 0 j +x-y -y 0 j +-x -x+y 0 j +x y 1/2 k +-y x-y 1/2 k +-x+y -x 1/2 k +y x 1/2 k +x-y -y 1/2 k +-x -x+y 1/2 k +x y z l +-y x-y z l +-x+y -x z l +x y -z l +-y x-y -z l +-x+y -x -z l +y x -z l +x-y -y -z l +-x -x+y -z l +y x z l +x-y -y z l +-x -x+y z l diff --git a/data/wyckoff/wyckoff19.txt b/data/wyckoff/wyckoff19.txt new file mode 100644 index 0000000..fe4301a --- /dev/null +++ b/data/wyckoff/wyckoff19.txt @@ -0,0 +1,4 @@ +x y z a +-x+1/2 -y z+1/2 a +-x y+1/2 -z+1/2 a +x+1/2 -y+1/2 -z a diff --git a/data/wyckoff/wyckoff190.txt b/data/wyckoff/wyckoff190.txt new file mode 100644 index 0000000..0c02a1e --- /dev/null +++ b/data/wyckoff/wyckoff190.txt @@ -0,0 +1,40 @@ +0 0 0 a +0 0 1/2 a +0 0 1/4 b +0 0 3/4 b +1/3 2/3 1/4 c +2/3 1/3 3/4 c +2/3 1/3 1/4 d +1/3 2/3 3/4 d +0 0 z e +0 0 -z+1/2 e +0 0 -z e +0 0 z+1/2 e +1/3 2/3 z f +1/3 2/3 -z+1/2 f +2/3 1/3 -z f +2/3 1/3 z+1/2 f +x 0 0 g +0 x 0 g +-x -x 0 g +x 0 1/2 g +0 x 1/2 g +-x -x 1/2 g +x y 1/4 h +-y x-y 1/4 h +-x+y -x 1/4 h +y x 3/4 h +x-y -y 3/4 h +-x -x+y 3/4 h +x y z i +-y x-y z i +-x+y -x z i +x y -z+1/2 i +-y x-y -z+1/2 i +-x+y -x -z+1/2 i +y x -z i +x-y -y -z i +-x -x+y -z i +y x z+1/2 i +x-y -y z+1/2 i +-x -x+y z+1/2 i diff --git a/data/wyckoff/wyckoff191.txt b/data/wyckoff/wyckoff191.txt new file mode 100644 index 0000000..c30e4f1 --- /dev/null +++ b/data/wyckoff/wyckoff191.txt @@ -0,0 +1,120 @@ +0 0 0 a +0 0 1/2 b +1/3 2/3 0 c +2/3 1/3 0 c +1/3 2/3 1/2 d +2/3 1/3 1/2 d +0 0 z e +0 0 -z e +1/2 0 0 f +0 1/2 0 f +1/2 1/2 0 f +1/2 0 1/2 g +0 1/2 1/2 g +1/2 1/2 1/2 g +1/3 2/3 z h +2/3 1/3 z h +2/3 1/3 -z h +1/3 2/3 -z h +1/2 0 z i +0 1/2 z i +1/2 1/2 z i +0 1/2 -z i +1/2 0 -z i +1/2 1/2 -z i +x 0 0 j +0 x 0 j +-x -x 0 j +-x 0 0 j +0 -x 0 j +x x 0 j +x 0 1/2 k +0 x 1/2 k +-x -x 1/2 k +-x 0 1/2 k +0 -x 1/2 k +x x 1/2 k +x 2*x 0 l +-2*x -x 0 l +x -x 0 l +-x -2*x 0 l +2*x x 0 l +-x x 0 l +x 2*x 1/2 m +-2*x -x 1/2 m +x -x 1/2 m +-x -2*x 1/2 m +2*x x 1/2 m +-x x 1/2 m +x 0 z n +0 x z n +-x -x z n +-x 0 z n +0 -x z n +x x z n +0 x -z n +x 0 -z n +-x -x -z n +0 -x -z n +-x 0 -z n +x x -z n +x 2*x z o +-2*x -x z o +x -x z o +-x -2*x z o +2*x x z o +-x x z o +2*x x -z o +-x -2*x -z o +-x x -z o +-2*x -x -z o +x 2*x -z o +x -x -z o +x y 0 p +-y x-y 0 p +-x+y -x 0 p +-x -y 0 p +y -x+y 0 p +x-y x 0 p +y x 0 p +x-y -y 0 p +-x -x+y 0 p +-y -x 0 p +-x+y y 0 p +x x-y 0 p +x y 1/2 q +-y x-y 1/2 q +-x+y -x 1/2 q +-x -y 1/2 q +y -x+y 1/2 q +x-y x 1/2 q +y x 1/2 q +x-y -y 1/2 q +-x -x+y 1/2 q +-y -x 1/2 q +-x+y y 1/2 q +x x-y 1/2 q +x y z r +-y x-y z r +-x+y -x z r +-x -y z r +y -x+y z r +x-y x z r +y x -z r +x-y -y -z r +-x -x+y -z r +-y -x -z r +-x+y y -z r +x x-y -z r +-x -y -z r +y -x+y -z r +x-y x -z r +x y -z r +-y x-y -z r +-x+y -x -z r +-y -x z r +-x+y y z r +x x-y z r +y x z r +x-y -y z r +-x -x+y z r diff --git a/data/wyckoff/wyckoff192.txt b/data/wyckoff/wyckoff192.txt new file mode 100644 index 0000000..d6e9693 --- /dev/null +++ b/data/wyckoff/wyckoff192.txt @@ -0,0 +1,108 @@ +0 0 1/4 a +0 0 3/4 a +0 0 0 b +0 0 1/2 b +1/3 2/3 1/4 c +2/3 1/3 1/4 c +2/3 1/3 3/4 c +1/3 2/3 3/4 c +1/3 2/3 0 d +2/3 1/3 0 d +2/3 1/3 1/2 d +1/3 2/3 1/2 d +0 0 z e +0 0 -z+1/2 e +0 0 -z e +0 0 z+1/2 e +1/2 0 1/4 f +0 1/2 1/4 f +1/2 1/2 1/4 f +1/2 0 3/4 f +0 1/2 3/4 f +1/2 1/2 3/4 f +1/2 0 0 g +0 1/2 0 g +1/2 1/2 0 g +0 1/2 1/2 g +1/2 0 1/2 g +1/2 1/2 1/2 g +1/3 2/3 z h +2/3 1/3 z h +2/3 1/3 -z+1/2 h +1/3 2/3 -z+1/2 h +2/3 1/3 -z h +1/3 2/3 -z h +1/3 2/3 z+1/2 h +2/3 1/3 z+1/2 h +1/2 0 z i +0 1/2 z i +1/2 1/2 z i +0 1/2 -z+1/2 i +1/2 0 -z+1/2 i +1/2 1/2 -z+1/2 i +1/2 0 -z i +0 1/2 -z i +1/2 1/2 -z i +0 1/2 z+1/2 i +1/2 0 z+1/2 i +1/2 1/2 z+1/2 i +x 0 1/4 j +0 x 1/4 j +-x -x 1/4 j +-x 0 1/4 j +0 -x 1/4 j +x x 1/4 j +-x 0 3/4 j +0 -x 3/4 j +x x 3/4 j +x 0 3/4 j +0 x 3/4 j +-x -x 3/4 j +x 2*x 1/4 k +-2*x -x 1/4 k +x -x 1/4 k +-x -2*x 1/4 k +2*x x 1/4 k +-x x 1/4 k +-x -2*x 3/4 k +2*x x 3/4 k +-x x 3/4 k +x 2*x 3/4 k +-2*x -x 3/4 k +x -x 3/4 k +x y 0 l +-y x-y 0 l +-x+y -x 0 l +-x -y 0 l +y -x+y 0 l +x-y x 0 l +y x 1/2 l +x-y -y 1/2 l +-x -x+y 1/2 l +-y -x 1/2 l +-x+y y 1/2 l +x x-y 1/2 l +x y z m +-y x-y z m +-x+y -x z m +-x -y z m +y -x+y z m +x-y x z m +y x -z+1/2 m +x-y -y -z+1/2 m +-x -x+y -z+1/2 m +-y -x -z+1/2 m +-x+y y -z+1/2 m +x x-y -z+1/2 m +-x -y -z m +y -x+y -z m +x-y x -z m +x y -z m +-y x-y -z m +-x+y -x -z m +-y -x z+1/2 m +-x+y y z+1/2 m +x x-y z+1/2 m +y x z+1/2 m +x-y -y z+1/2 m +-x -x+y z+1/2 m diff --git a/data/wyckoff/wyckoff193.txt b/data/wyckoff/wyckoff193.txt new file mode 100644 index 0000000..3e39b5f --- /dev/null +++ b/data/wyckoff/wyckoff193.txt @@ -0,0 +1,96 @@ +0 0 1/4 a +0 0 3/4 a +0 0 0 b +0 0 1/2 b +1/3 2/3 1/4 c +2/3 1/3 3/4 c +2/3 1/3 1/4 c +1/3 2/3 3/4 c +1/3 2/3 0 d +2/3 1/3 1/2 d +2/3 1/3 0 d +1/3 2/3 1/2 d +0 0 z e +0 0 z+1/2 e +0 0 -z+1/2 e +0 0 -z e +1/2 0 0 f +0 1/2 0 f +1/2 1/2 0 f +1/2 0 1/2 f +0 1/2 1/2 f +1/2 1/2 1/2 f +x 0 1/4 g +0 x 1/4 g +-x -x 1/4 g +-x 0 3/4 g +0 -x 3/4 g +x x 3/4 g +1/3 2/3 z h +2/3 1/3 z+1/2 h +2/3 1/3 -z+1/2 h +1/3 2/3 -z h +2/3 1/3 -z h +1/3 2/3 -z+1/2 h +1/3 2/3 z+1/2 h +2/3 1/3 z h +x 2*x 0 i +-2*x -x 0 i +x -x 0 i +-x -2*x 1/2 i +2*x x 1/2 i +-x x 1/2 i +-x -2*x 0 i +2*x x 0 i +-x x 0 i +x 2*x 1/2 i +-2*x -x 1/2 i +x -x 1/2 i +x y 1/4 j +-y x-y 1/4 j +-x+y -x 1/4 j +-x -y 3/4 j +y -x+y 3/4 j +x-y x 3/4 j +y x 1/4 j +x-y -y 1/4 j +-x -x+y 1/4 j +-y -x 3/4 j +-x+y y 3/4 j +x x-y 3/4 j +x 0 z k +0 x z k +-x -x z k +-x 0 z+1/2 k +0 -x z+1/2 k +x x z+1/2 k +0 x -z+1/2 k +x 0 -z+1/2 k +-x -x -z+1/2 k +0 -x -z k +-x 0 -z k +x x -z k +x y z l +-y x-y z l +-x+y -x z l +-x -y z+1/2 l +y -x+y z+1/2 l +x-y x z+1/2 l +y x -z+1/2 l +x-y -y -z+1/2 l +-x -x+y -z+1/2 l +-y -x -z l +-x+y y -z l +x x-y -z l +-x -y -z l +y -x+y -z l +x-y x -z l +x y -z+1/2 l +-y x-y -z+1/2 l +-x+y -x -z+1/2 l +-y -x z+1/2 l +-x+y y z+1/2 l +x x-y z+1/2 l +y x z l +x-y -y z l +-x -x+y z l diff --git a/data/wyckoff/wyckoff194.txt b/data/wyckoff/wyckoff194.txt new file mode 100644 index 0000000..dc248c3 --- /dev/null +++ b/data/wyckoff/wyckoff194.txt @@ -0,0 +1,88 @@ +0 0 0 a +0 0 1/2 a +0 0 1/4 b +0 0 3/4 b +1/3 2/3 1/4 c +2/3 1/3 3/4 c +1/3 2/3 3/4 d +2/3 1/3 1/4 d +0 0 z e +0 0 z+1/2 e +0 0 -z e +0 0 -z+1/2 e +1/3 2/3 z f +2/3 1/3 z+1/2 f +2/3 1/3 -z f +1/3 2/3 -z+1/2 f +1/2 0 0 g +0 1/2 0 g +1/2 1/2 0 g +1/2 0 1/2 g +0 1/2 1/2 g +1/2 1/2 1/2 g +x 2*x 1/4 h +-2*x -x 1/4 h +x -x 1/4 h +-x -2*x 3/4 h +2*x x 3/4 h +-x x 3/4 h +x 0 0 i +0 x 0 i +-x -x 0 i +-x 0 1/2 i +0 -x 1/2 i +x x 1/2 i +-x 0 0 i +0 -x 0 i +x x 0 i +x 0 1/2 i +0 x 1/2 i +-x -x 1/2 i +x y 1/4 j +-y x-y 1/4 j +-x+y -x 1/4 j +-x -y 3/4 j +y -x+y 3/4 j +x-y x 3/4 j +y x 3/4 j +x-y -y 3/4 j +-x -x+y 3/4 j +-y -x 1/4 j +-x+y y 1/4 j +x x-y 1/4 j +x 2*x z k +-2*x -x z k +x -x z k +-x -2*x z+1/2 k +2*x x z+1/2 k +-x x z+1/2 k +2*x x -z k +-x -2*x -z k +-x x -z k +-2*x -x -z+1/2 k +x 2*x -z+1/2 k +x -x -z+1/2 k +x y z l +-y x-y z l +-x+y -x z l +-x -y z+1/2 l +y -x+y z+1/2 l +x-y x z+1/2 l +y x -z l +x-y -y -z l +-x -x+y -z l +-y -x -z+1/2 l +-x+y y -z+1/2 l +x x-y -z+1/2 l +-x -y -z l +y -x+y -z l +x-y x -z l +x y -z+1/2 l +-y x-y -z+1/2 l +-x+y -x -z+1/2 l +-y -x z l +-x+y y z l +x x-y z l +y x z+1/2 l +x-y -y z+1/2 l +-x -x+y z+1/2 l diff --git a/data/wyckoff/wyckoff195.txt b/data/wyckoff/wyckoff195.txt new file mode 100644 index 0000000..2d91157 --- /dev/null +++ b/data/wyckoff/wyckoff195.txt @@ -0,0 +1,48 @@ +0 0 0 a +1/2 1/2 1/2 b +0 1/2 1/2 c +1/2 0 1/2 c +1/2 1/2 0 c +1/2 0 0 d +0 1/2 0 d +0 0 1/2 d +x x x e +-x -x x e +-x x -x e +x -x -x e +x 0 0 f +-x 0 0 f +0 x 0 f +0 -x 0 f +0 0 x f +0 0 -x f +x 0 1/2 g +-x 0 1/2 g +1/2 x 0 g +1/2 -x 0 g +0 1/2 x g +0 1/2 -x g +x 1/2 0 h +-x 1/2 0 h +0 x 1/2 h +0 -x 1/2 h +1/2 0 x h +1/2 0 -x h +x 1/2 1/2 i +-x 1/2 1/2 i +1/2 x 1/2 i +1/2 -x 1/2 i +1/2 1/2 x i +1/2 1/2 -x i +x y z j +-x -y z j +-x y -z j +x -y -z j +z x y j +z -x -y j +-z -x y j +-z x -y j +y z x j +-y z -x j +y -z -x j +-y -z x j diff --git a/data/wyckoff/wyckoff196.txt b/data/wyckoff/wyckoff196.txt new file mode 100644 index 0000000..5447e00 --- /dev/null +++ b/data/wyckoff/wyckoff196.txt @@ -0,0 +1,32 @@ +0 0 0 a +1/2 1/2 1/2 b +1/4 1/4 1/4 c +3/4 3/4 3/4 d +x x x e +-x -x x e +-x x -x e +x -x -x e +x 0 0 f +-x 0 0 f +0 x 0 f +0 -x 0 f +0 0 x f +0 0 -x f +x 1/4 1/4 g +-x 3/4 1/4 g +1/4 x 1/4 g +1/4 -x 3/4 g +1/4 1/4 x g +3/4 1/4 -x g +x y z h +-x -y z h +-x y -z h +x -y -z h +z x y h +z -x -y h +-z -x y h +-z x -y h +y z x h +-y z -x h +y -z -x h +-y -z x h diff --git a/data/wyckoff/wyckoff197.txt b/data/wyckoff/wyckoff197.txt new file mode 100644 index 0000000..d0fbd7d --- /dev/null +++ b/data/wyckoff/wyckoff197.txt @@ -0,0 +1,32 @@ +0 0 0 a +0 1/2 1/2 b +1/2 0 1/2 b +1/2 1/2 0 b +x x x c +-x -x x c +-x x -x c +x -x -x c +x 0 0 d +-x 0 0 d +0 x 0 d +0 -x 0 d +0 0 x d +0 0 -x d +x 1/2 0 e +-x 1/2 0 e +0 x 1/2 e +0 -x 1/2 e +1/2 0 x e +1/2 0 -x e +x y z f +-x -y z f +-x y -z f +x -y -z f +z x y f +z -x -y f +-z -x y f +-z x -y f +y z x f +-y z -x f +y -z -x f +-y -z x f diff --git a/data/wyckoff/wyckoff198.txt b/data/wyckoff/wyckoff198.txt new file mode 100644 index 0000000..84f7001 --- /dev/null +++ b/data/wyckoff/wyckoff198.txt @@ -0,0 +1,16 @@ +x x x a +-x+1/2 -x x+1/2 a +-x x+1/2 -x+1/2 a +x+1/2 -x+1/2 -x a +x y z b +-x+1/2 -y z+1/2 b +-x y+1/2 -z+1/2 b +x+1/2 -y+1/2 -z b +z x y b +z+1/2 -x+1/2 -y b +-z+1/2 -x y+1/2 b +-z x+1/2 -y+1/2 b +y z x b +-y z+1/2 -x+1/2 b +y+1/2 -z+1/2 -x b +-y+1/2 -z x+1/2 b diff --git a/data/wyckoff/wyckoff199.txt b/data/wyckoff/wyckoff199.txt new file mode 100644 index 0000000..d21c8c7 --- /dev/null +++ b/data/wyckoff/wyckoff199.txt @@ -0,0 +1,22 @@ +x x x a +-x+1/2 -x x+1/2 a +-x x+1/2 -x+1/2 a +x+1/2 -x+1/2 -x a +x 0 1/4 b +-x+1/2 0 3/4 b +1/4 x 0 b +3/4 -x+1/2 0 b +0 1/4 x b +0 3/4 -x+1/2 b +x y z c +-x+1/2 -y z+1/2 c +-x y+1/2 -z+1/2 c +x+1/2 -y+1/2 -z c +z x y c +z+1/2 -x+1/2 -y c +-z+1/2 -x y+1/2 c +-z x+1/2 -y+1/2 c +y z x c +-y z+1/2 -x+1/2 c +y+1/2 -z+1/2 -x c +-y+1/2 -z x+1/2 c diff --git a/data/wyckoff/wyckoff2.txt b/data/wyckoff/wyckoff2.txt new file mode 100644 index 0000000..e70ec6b --- /dev/null +++ b/data/wyckoff/wyckoff2.txt @@ -0,0 +1,10 @@ +0 0 0 a +0 0 1/2 b +0 1/2 0 c +1/2 0 0 d +1/2 1/2 0 e +1/2 0 1/2 f +0 1/2 1/2 g +1/2 1/2 1/2 h +x y z i +-x -y -z i diff --git a/data/wyckoff/wyckoff20.txt b/data/wyckoff/wyckoff20.txt new file mode 100644 index 0000000..c269287 --- /dev/null +++ b/data/wyckoff/wyckoff20.txt @@ -0,0 +1,8 @@ +x 0 0 a +-x 0 1/2 a +0 y 1/4 b +0 -y 3/4 b +x y z c +-x -y z+1/2 c +-x y -z+1/2 c +x -y -z c diff --git a/data/wyckoff/wyckoff200.txt b/data/wyckoff/wyckoff200.txt new file mode 100644 index 0000000..a0f3ce2 --- /dev/null +++ b/data/wyckoff/wyckoff200.txt @@ -0,0 +1,88 @@ +0 0 0 a +1/2 1/2 1/2 b +0 1/2 1/2 c +1/2 0 1/2 c +1/2 1/2 0 c +1/2 0 0 d +0 1/2 0 d +0 0 1/2 d +x 0 0 e +-x 0 0 e +0 x 0 e +0 -x 0 e +0 0 x e +0 0 -x e +x 0 1/2 f +-x 0 1/2 f +1/2 x 0 f +1/2 -x 0 f +0 1/2 x f +0 1/2 -x f +x 1/2 0 g +-x 1/2 0 g +0 x 1/2 g +0 -x 1/2 g +1/2 0 x g +1/2 0 -x g +x 1/2 1/2 h +-x 1/2 1/2 h +1/2 x 1/2 h +1/2 -x 1/2 h +1/2 1/2 x h +1/2 1/2 -x h +x x x i +-x -x x i +-x x -x i +x -x -x i +-x -x -x i +x x -x i +x -x x i +-x x x i +0 y z j +0 -y z j +0 y -z j +0 -y -z j +z 0 y j +z 0 -y j +-z 0 y j +-z 0 -y j +y z 0 j +-y z 0 j +y -z 0 j +-y -z 0 j +1/2 y z k +1/2 -y z k +1/2 y -z k +1/2 -y -z k +z 1/2 y k +z 1/2 -y k +-z 1/2 y k +-z 1/2 -y k +y z 1/2 k +-y z 1/2 k +y -z 1/2 k +-y -z 1/2 k +x y z l +-x -y z l +-x y -z l +x -y -z l +z x y l +z -x -y l +-z -x y l +-z x -y l +y z x l +-y z -x l +y -z -x l +-y -z x l +-x -y -z l +x y -z l +x -y z l +-x y z l +-z -x -y l +-z x y l +z x -y l +z -x y l +-y -z -x l +y -z x l +-y z x l +y z -x l diff --git a/data/wyckoff/wyckoff201.txt b/data/wyckoff/wyckoff201.txt new file mode 100644 index 0000000..e6dbd68 --- /dev/null +++ b/data/wyckoff/wyckoff201.txt @@ -0,0 +1,72 @@ +0 0 0 a +1/2 1/2 1/2 a +1/4 1/4 1/4 b +3/4 3/4 1/4 b +3/4 1/4 3/4 b +1/4 3/4 3/4 b +3/4 3/4 3/4 c +1/4 1/4 3/4 c +1/4 3/4 1/4 c +3/4 1/4 1/4 c +0 1/2 1/2 d +1/2 0 1/2 d +1/2 1/2 0 d +1/2 0 0 d +0 1/2 0 d +0 0 1/2 d +x x x e +-x -x x e +-x x -x e +x -x -x e +-x+1/2 -x+1/2 -x+1/2 e +x+1/2 x+1/2 -x+1/2 e +x+1/2 -x+1/2 x+1/2 e +-x+1/2 x+1/2 x+1/2 e +x 0 0 f +-x 0 0 f +0 x 0 f +0 -x 0 f +0 0 x f +0 0 -x f +-x+1/2 1/2 1/2 f +x+1/2 1/2 1/2 f +1/2 -x+1/2 1/2 f +1/2 x+1/2 1/2 f +1/2 1/2 -x+1/2 f +1/2 1/2 x+1/2 f +x 1/2 0 g +-x 1/2 0 g +0 x 1/2 g +0 -x 1/2 g +1/2 0 x g +1/2 0 -x g +-x+1/2 0 1/2 g +x+1/2 0 1/2 g +1/2 -x+1/2 0 g +1/2 x+1/2 0 g +0 1/2 -x+1/2 g +0 1/2 x+1/2 g +x y z h +-x -y z h +-x y -z h +x -y -z h +z x y h +z -x -y h +-z -x y h +-z x -y h +y z x h +-y z -x h +y -z -x h +-y -z x h +-x+1/2 -y+1/2 -z+1/2 h +x+1/2 y+1/2 -z+1/2 h +x+1/2 -y+1/2 z+1/2 h +-x+1/2 y+1/2 z+1/2 h +-z+1/2 -x+1/2 -y+1/2 h +-z+1/2 x+1/2 y+1/2 h +z+1/2 x+1/2 -y+1/2 h +z+1/2 -x+1/2 y+1/2 h +-y+1/2 -z+1/2 -x+1/2 h +y+1/2 -z+1/2 x+1/2 h +-y+1/2 z+1/2 x+1/2 h +y+1/2 z+1/2 -x+1/2 h diff --git a/data/wyckoff/wyckoff201s1.txt b/data/wyckoff/wyckoff201s1.txt new file mode 100644 index 0000000..e6dbd68 --- /dev/null +++ b/data/wyckoff/wyckoff201s1.txt @@ -0,0 +1,72 @@ +0 0 0 a +1/2 1/2 1/2 a +1/4 1/4 1/4 b +3/4 3/4 1/4 b +3/4 1/4 3/4 b +1/4 3/4 3/4 b +3/4 3/4 3/4 c +1/4 1/4 3/4 c +1/4 3/4 1/4 c +3/4 1/4 1/4 c +0 1/2 1/2 d +1/2 0 1/2 d +1/2 1/2 0 d +1/2 0 0 d +0 1/2 0 d +0 0 1/2 d +x x x e +-x -x x e +-x x -x e +x -x -x e +-x+1/2 -x+1/2 -x+1/2 e +x+1/2 x+1/2 -x+1/2 e +x+1/2 -x+1/2 x+1/2 e +-x+1/2 x+1/2 x+1/2 e +x 0 0 f +-x 0 0 f +0 x 0 f +0 -x 0 f +0 0 x f +0 0 -x f +-x+1/2 1/2 1/2 f +x+1/2 1/2 1/2 f +1/2 -x+1/2 1/2 f +1/2 x+1/2 1/2 f +1/2 1/2 -x+1/2 f +1/2 1/2 x+1/2 f +x 1/2 0 g +-x 1/2 0 g +0 x 1/2 g +0 -x 1/2 g +1/2 0 x g +1/2 0 -x g +-x+1/2 0 1/2 g +x+1/2 0 1/2 g +1/2 -x+1/2 0 g +1/2 x+1/2 0 g +0 1/2 -x+1/2 g +0 1/2 x+1/2 g +x y z h +-x -y z h +-x y -z h +x -y -z h +z x y h +z -x -y h +-z -x y h +-z x -y h +y z x h +-y z -x h +y -z -x h +-y -z x h +-x+1/2 -y+1/2 -z+1/2 h +x+1/2 y+1/2 -z+1/2 h +x+1/2 -y+1/2 z+1/2 h +-x+1/2 y+1/2 z+1/2 h +-z+1/2 -x+1/2 -y+1/2 h +-z+1/2 x+1/2 y+1/2 h +z+1/2 x+1/2 -y+1/2 h +z+1/2 -x+1/2 y+1/2 h +-y+1/2 -z+1/2 -x+1/2 h +y+1/2 -z+1/2 x+1/2 h +-y+1/2 z+1/2 x+1/2 h +y+1/2 z+1/2 -x+1/2 h diff --git a/data/wyckoff/wyckoff201s2.txt b/data/wyckoff/wyckoff201s2.txt new file mode 100644 index 0000000..2fb425f --- /dev/null +++ b/data/wyckoff/wyckoff201s2.txt @@ -0,0 +1,72 @@ +1/4 1/4 1/4 a +3/4 3/4 3/4 a +0 0 0 b +1/2 1/2 0 b +1/2 0 1/2 b +0 1/2 1/2 b +1/2 1/2 1/2 c +0 0 1/2 c +0 1/2 0 c +1/2 0 0 c +1/4 3/4 3/4 d +3/4 1/4 3/4 d +3/4 3/4 1/4 d +3/4 1/4 1/4 d +1/4 3/4 1/4 d +1/4 1/4 3/4 d +x x x e +-x+1/2 -x+1/2 x e +-x+1/2 x -x+1/2 e +x -x+1/2 -x+1/2 e +-x -x -x e +x+1/2 x+1/2 -x e +x+1/2 -x x+1/2 e +-x x+1/2 x+1/2 e +x 1/4 1/4 f +-x+1/2 1/4 1/4 f +1/4 x 1/4 f +1/4 -x+1/2 1/4 f +1/4 1/4 x f +1/4 1/4 -x+1/2 f +-x 3/4 3/4 f +x+1/2 3/4 3/4 f +3/4 -x 3/4 f +3/4 x+1/2 3/4 f +3/4 3/4 -x f +3/4 3/4 x+1/2 f +x 3/4 1/4 g +-x+1/2 3/4 1/4 g +1/4 x 3/4 g +1/4 -x+1/2 3/4 g +3/4 1/4 x g +3/4 1/4 -x+1/2 g +-x 1/4 3/4 g +x+1/2 1/4 3/4 g +3/4 -x 1/4 g +3/4 x+1/2 1/4 g +1/4 3/4 -x g +1/4 3/4 x+1/2 g +x y z h +-x+1/2 -y+1/2 z h +-x+1/2 y -z+1/2 h +x -y+1/2 -z+1/2 h +z x y h +z -x+1/2 -y+1/2 h +-z+1/2 -x+1/2 y h +-z+1/2 x -y+1/2 h +y z x h +-y+1/2 z -x+1/2 h +y -z+1/2 -x+1/2 h +-y+1/2 -z+1/2 x h +-x -y -z h +x+1/2 y+1/2 -z h +x+1/2 -y z+1/2 h +-x y+1/2 z+1/2 h +-z -x -y h +-z x+1/2 y+1/2 h +z+1/2 x+1/2 -y h +z+1/2 -x y+1/2 h +-y -z -x h +y+1/2 -z x+1/2 h +-y z+1/2 x+1/2 h +y+1/2 z+1/2 -x h diff --git a/data/wyckoff/wyckoff202.txt b/data/wyckoff/wyckoff202.txt new file mode 100644 index 0000000..46e8a09 --- /dev/null +++ b/data/wyckoff/wyckoff202.txt @@ -0,0 +1,72 @@ +0 0 0 a +1/2 1/2 1/2 b +1/4 1/4 1/4 c +3/4 3/4 3/4 c +0 1/4 1/4 d +0 3/4 1/4 d +1/4 0 1/4 d +1/4 0 3/4 d +1/4 1/4 0 d +3/4 1/4 0 d +x 0 0 e +-x 0 0 e +0 x 0 e +0 -x 0 e +0 0 x e +0 0 -x e +x x x f +-x -x x f +-x x -x f +x -x -x f +-x -x -x f +x x -x f +x -x x f +-x x x f +x 1/4 1/4 g +-x 3/4 1/4 g +1/4 x 1/4 g +1/4 -x 3/4 g +1/4 1/4 x g +3/4 1/4 -x g +-x 3/4 3/4 g +x 1/4 3/4 g +3/4 -x 3/4 g +3/4 x 1/4 g +3/4 3/4 -x g +1/4 3/4 x g +0 y z h +0 -y z h +0 y -z h +0 -y -z h +z 0 y h +z 0 -y h +-z 0 y h +-z 0 -y h +y z 0 h +-y z 0 h +y -z 0 h +-y -z 0 h +x y z i +-x -y z i +-x y -z i +x -y -z i +z x y i +z -x -y i +-z -x y i +-z x -y i +y z x i +-y z -x i +y -z -x i +-y -z x i +-x -y -z i +x y -z i +x -y z i +-x y z i +-z -x -y i +-z x y i +z x -y i +z -x y i +-y -z -x i +y -z x i +-y z x i +y z -x i diff --git a/data/wyckoff/wyckoff203.txt b/data/wyckoff/wyckoff203.txt new file mode 100644 index 0000000..95480e4 --- /dev/null +++ b/data/wyckoff/wyckoff203.txt @@ -0,0 +1,56 @@ +0 0 0 a +1/4 1/4 1/4 a +1/2 1/2 1/2 b +3/4 3/4 3/4 b +1/8 1/8 1/8 c +7/8 7/8 1/8 c +7/8 1/8 7/8 c +1/8 7/8 7/8 c +5/8 5/8 5/8 d +3/8 3/8 5/8 d +3/8 5/8 3/8 d +5/8 3/8 3/8 d +x x x e +-x -x x e +-x x -x e +x -x -x e +-x+1/4 -x+1/4 -x+1/4 e +x+1/4 x+1/4 -x+1/4 e +x+1/4 -x+1/4 x+1/4 e +-x+1/4 x+1/4 x+1/4 e +x 0 0 f +-x 0 0 f +0 x 0 f +0 -x 0 f +0 0 x f +0 0 -x f +-x+1/4 1/4 1/4 f +x+1/4 1/4 1/4 f +1/4 -x+1/4 1/4 f +1/4 x+1/4 1/4 f +1/4 1/4 -x+1/4 f +1/4 1/4 x+1/4 f +x y z g +-x -y z g +-x y -z g +x -y -z g +z x y g +z -x -y g +-z -x y g +-z x -y g +y z x g +-y z -x g +y -z -x g +-y -z x g +-x+1/4 -y+1/4 -z+1/4 g +x+1/4 y+1/4 -z+1/4 g +x+1/4 -y+1/4 z+1/4 g +-x+1/4 y+1/4 z+1/4 g +-z+1/4 -x+1/4 -y+1/4 g +-z+1/4 x+1/4 y+1/4 g +z+1/4 x+1/4 -y+1/4 g +z+1/4 -x+1/4 y+1/4 g +-y+1/4 -z+1/4 -x+1/4 g +y+1/4 -z+1/4 x+1/4 g +-y+1/4 z+1/4 x+1/4 g +y+1/4 z+1/4 -x+1/4 g diff --git a/data/wyckoff/wyckoff203s1.txt b/data/wyckoff/wyckoff203s1.txt new file mode 100644 index 0000000..95480e4 --- /dev/null +++ b/data/wyckoff/wyckoff203s1.txt @@ -0,0 +1,56 @@ +0 0 0 a +1/4 1/4 1/4 a +1/2 1/2 1/2 b +3/4 3/4 3/4 b +1/8 1/8 1/8 c +7/8 7/8 1/8 c +7/8 1/8 7/8 c +1/8 7/8 7/8 c +5/8 5/8 5/8 d +3/8 3/8 5/8 d +3/8 5/8 3/8 d +5/8 3/8 3/8 d +x x x e +-x -x x e +-x x -x e +x -x -x e +-x+1/4 -x+1/4 -x+1/4 e +x+1/4 x+1/4 -x+1/4 e +x+1/4 -x+1/4 x+1/4 e +-x+1/4 x+1/4 x+1/4 e +x 0 0 f +-x 0 0 f +0 x 0 f +0 -x 0 f +0 0 x f +0 0 -x f +-x+1/4 1/4 1/4 f +x+1/4 1/4 1/4 f +1/4 -x+1/4 1/4 f +1/4 x+1/4 1/4 f +1/4 1/4 -x+1/4 f +1/4 1/4 x+1/4 f +x y z g +-x -y z g +-x y -z g +x -y -z g +z x y g +z -x -y g +-z -x y g +-z x -y g +y z x g +-y z -x g +y -z -x g +-y -z x g +-x+1/4 -y+1/4 -z+1/4 g +x+1/4 y+1/4 -z+1/4 g +x+1/4 -y+1/4 z+1/4 g +-x+1/4 y+1/4 z+1/4 g +-z+1/4 -x+1/4 -y+1/4 g +-z+1/4 x+1/4 y+1/4 g +z+1/4 x+1/4 -y+1/4 g +z+1/4 -x+1/4 y+1/4 g +-y+1/4 -z+1/4 -x+1/4 g +y+1/4 -z+1/4 x+1/4 g +-y+1/4 z+1/4 x+1/4 g +y+1/4 z+1/4 -x+1/4 g diff --git a/data/wyckoff/wyckoff203s2.txt b/data/wyckoff/wyckoff203s2.txt new file mode 100644 index 0000000..9f816e0 --- /dev/null +++ b/data/wyckoff/wyckoff203s2.txt @@ -0,0 +1,56 @@ +1/8 1/8 1/8 a +7/8 7/8 7/8 a +5/8 5/8 5/8 b +3/8 3/8 3/8 b +0 0 0 c +3/4 3/4 0 c +3/4 0 3/4 c +0 3/4 3/4 c +1/2 1/2 1/2 d +1/4 1/4 1/2 d +1/4 1/2 1/4 d +1/2 1/4 1/4 d +x x x e +-x+3/4 -x+3/4 x e +-x+3/4 x -x+3/4 e +x -x+3/4 -x+3/4 e +-x -x -x e +x+1/4 x+1/4 -x e +x+1/4 -x x+1/4 e +-x x+1/4 x+1/4 e +x 1/8 1/8 f +-x+3/4 5/8 1/8 f +1/8 x 1/8 f +1/8 -x+3/4 5/8 f +1/8 1/8 x f +5/8 1/8 -x+3/4 f +-x 7/8 7/8 f +x+1/4 3/8 7/8 f +7/8 -x 7/8 f +7/8 x+1/4 3/8 f +7/8 7/8 -x f +3/8 7/8 x+1/4 f +x y z g +-x+3/4 -y+3/4 z g +-x+3/4 y -z+3/4 g +x -y+3/4 -z+3/4 g +z x y g +z -x+3/4 -y+3/4 g +-z+3/4 -x+3/4 y g +-z+3/4 x -y+3/4 g +y z x g +-y+3/4 z -x+3/4 g +y -z+3/4 -x+3/4 g +-y+3/4 -z+3/4 x g +-x -y -z g +x+1/4 y+1/4 -z g +x+1/4 -y z+1/4 g +-x y+1/4 z+1/4 g +-z -x -y g +-z x+1/4 y+1/4 g +z+1/4 x+1/4 -y g +z+1/4 -x y+1/4 g +-y -z -x g +y+1/4 -z x+1/4 g +-y z+1/4 x+1/4 g +y+1/4 z+1/4 -x g diff --git a/data/wyckoff/wyckoff204.txt b/data/wyckoff/wyckoff204.txt new file mode 100644 index 0000000..b4da232 --- /dev/null +++ b/data/wyckoff/wyckoff204.txt @@ -0,0 +1,64 @@ +0 0 0 a +0 1/2 1/2 b +1/2 0 1/2 b +1/2 1/2 0 b +1/4 1/4 1/4 c +3/4 3/4 1/4 c +3/4 1/4 3/4 c +1/4 3/4 3/4 c +x 0 0 d +-x 0 0 d +0 x 0 d +0 -x 0 d +0 0 x d +0 0 -x d +x 0 1/2 e +-x 0 1/2 e +1/2 x 0 e +1/2 -x 0 e +0 1/2 x e +0 1/2 -x e +x x x f +-x -x x f +-x x -x f +x -x -x f +-x -x -x f +x x -x f +x -x x f +-x x x f +0 y z g +0 -y z g +0 y -z g +0 -y -z g +z 0 y g +z 0 -y g +-z 0 y g +-z 0 -y g +y z 0 g +-y z 0 g +y -z 0 g +-y -z 0 g +x y z h +-x -y z h +-x y -z h +x -y -z h +z x y h +z -x -y h +-z -x y h +-z x -y h +y z x h +-y z -x h +y -z -x h +-y -z x h +-x -y -z h +x y -z h +x -y z h +-x y z h +-z -x -y h +-z x y h +z x -y h +z -x y h +-y -z -x h +y -z x h +-y z x h +y z -x h diff --git a/data/wyckoff/wyckoff205.txt b/data/wyckoff/wyckoff205.txt new file mode 100644 index 0000000..11815b4 --- /dev/null +++ b/data/wyckoff/wyckoff205.txt @@ -0,0 +1,40 @@ +0 0 0 a +1/2 0 1/2 a +0 1/2 1/2 a +1/2 1/2 0 a +1/2 1/2 1/2 b +0 1/2 0 b +1/2 0 0 b +0 0 1/2 b +x x x c +-x+1/2 -x x+1/2 c +-x x+1/2 -x+1/2 c +x+1/2 -x+1/2 -x c +-x -x -x c +x+1/2 x -x+1/2 c +x -x+1/2 x+1/2 c +-x+1/2 x+1/2 x c +x y z d +-x+1/2 -y z+1/2 d +-x y+1/2 -z+1/2 d +x+1/2 -y+1/2 -z d +z x y d +z+1/2 -x+1/2 -y d +-z+1/2 -x y+1/2 d +-z x+1/2 -y+1/2 d +y z x d +-y z+1/2 -x+1/2 d +y+1/2 -z+1/2 -x d +-y+1/2 -z x+1/2 d +-x -y -z d +x+1/2 y -z+1/2 d +x -y+1/2 z+1/2 d +-x+1/2 y+1/2 z d +-z -x -y d +-z+1/2 x+1/2 y d +z+1/2 x -y+1/2 d +z -x+1/2 y+1/2 d +-y -z -x d +y -z+1/2 x+1/2 d +-y+1/2 z+1/2 x d +y+1/2 z -x+1/2 d diff --git a/data/wyckoff/wyckoff206.txt b/data/wyckoff/wyckoff206.txt new file mode 100644 index 0000000..b4c11e7 --- /dev/null +++ b/data/wyckoff/wyckoff206.txt @@ -0,0 +1,52 @@ +0 0 0 a +1/2 0 1/2 a +0 1/2 1/2 a +1/2 1/2 0 a +1/4 1/4 1/4 b +1/4 3/4 3/4 b +3/4 3/4 1/4 b +3/4 1/4 3/4 b +x x x c +-x+1/2 -x x+1/2 c +-x x+1/2 -x+1/2 c +x+1/2 -x+1/2 -x c +-x -x -x c +x+1/2 x -x+1/2 c +x -x+1/2 x+1/2 c +-x+1/2 x+1/2 x c +x 0 1/4 d +-x+1/2 0 3/4 d +1/4 x 0 d +3/4 -x+1/2 0 d +0 1/4 x d +0 3/4 -x+1/2 d +-x 0 3/4 d +x+1/2 0 1/4 d +3/4 -x 0 d +1/4 x+1/2 0 d +0 3/4 -x d +0 1/4 x+1/2 d +x y z e +-x+1/2 -y z+1/2 e +-x y+1/2 -z+1/2 e +x+1/2 -y+1/2 -z e +z x y e +z+1/2 -x+1/2 -y e +-z+1/2 -x y+1/2 e +-z x+1/2 -y+1/2 e +y z x e +-y z+1/2 -x+1/2 e +y+1/2 -z+1/2 -x e +-y+1/2 -z x+1/2 e +-x -y -z e +x+1/2 y -z+1/2 e +x -y+1/2 z+1/2 e +-x+1/2 y+1/2 z e +-z -x -y e +-z+1/2 x+1/2 y e +z+1/2 x -y+1/2 e +z -x+1/2 y+1/2 e +-y -z -x e +y -z+1/2 x+1/2 e +-y+1/2 z+1/2 x e +y+1/2 z -x+1/2 e diff --git a/data/wyckoff/wyckoff207.txt b/data/wyckoff/wyckoff207.txt new file mode 100644 index 0000000..92911a1 --- /dev/null +++ b/data/wyckoff/wyckoff207.txt @@ -0,0 +1,88 @@ +0 0 0 a +1/2 1/2 1/2 b +0 1/2 1/2 c +1/2 0 1/2 c +1/2 1/2 0 c +1/2 0 0 d +0 1/2 0 d +0 0 1/2 d +x 0 0 e +-x 0 0 e +0 x 0 e +0 -x 0 e +0 0 x e +0 0 -x e +x 1/2 1/2 f +-x 1/2 1/2 f +1/2 x 1/2 f +1/2 -x 1/2 f +1/2 1/2 x f +1/2 1/2 -x f +x x x g +-x -x x g +-x x -x g +x -x -x g +x x -x g +-x -x -x g +x -x x g +-x x x g +x 1/2 0 h +-x 1/2 0 h +0 x 1/2 h +0 -x 1/2 h +1/2 0 x h +1/2 0 -x h +1/2 x 0 h +1/2 -x 0 h +x 0 1/2 h +-x 0 1/2 h +0 1/2 -x h +0 1/2 x h +0 y y i +0 -y y i +0 y -y i +0 -y -y i +y 0 y i +y 0 -y i +-y 0 y i +-y 0 -y i +y y 0 i +-y y 0 i +y -y 0 i +-y -y 0 i +1/2 y y j +1/2 -y y j +1/2 y -y j +1/2 -y -y j +y 1/2 y j +y 1/2 -y j +-y 1/2 y j +-y 1/2 -y j +y y 1/2 j +-y y 1/2 j +y -y 1/2 j +-y -y 1/2 j +x y z k +-x -y z k +-x y -z k +x -y -z k +z x y k +z -x -y k +-z -x y k +-z x -y k +y z x k +-y z -x k +y -z -x k +-y -z x k +y x -z k +-y -x -z k +y -x z k +-y x z k +x z -y k +-x z y k +-x -z -y k +x -z y k +z y -x k +z -y x k +-z y x k +-z -y -x k diff --git a/data/wyckoff/wyckoff208.txt b/data/wyckoff/wyckoff208.txt new file mode 100644 index 0000000..430d2f7 --- /dev/null +++ b/data/wyckoff/wyckoff208.txt @@ -0,0 +1,120 @@ +0 0 0 a +1/2 1/2 1/2 a +1/4 1/4 1/4 b +3/4 3/4 1/4 b +3/4 1/4 3/4 b +1/4 3/4 3/4 b +3/4 3/4 3/4 c +1/4 1/4 3/4 c +1/4 3/4 1/4 c +3/4 1/4 1/4 c +0 1/2 1/2 d +1/2 0 1/2 d +1/2 1/2 0 d +0 1/2 0 d +1/2 0 0 d +0 0 1/2 d +1/4 0 1/2 e +3/4 0 1/2 e +1/2 1/4 0 e +1/2 3/4 0 e +0 1/2 1/4 e +0 1/2 3/4 e +1/4 1/2 0 f +3/4 1/2 0 f +0 1/4 1/2 f +0 3/4 1/2 f +1/2 0 1/4 f +1/2 0 3/4 f +x x x g +-x -x x g +-x x -x g +x -x -x g +x+1/2 x+1/2 -x+1/2 g +-x+1/2 -x+1/2 -x+1/2 g +x+1/2 -x+1/2 x+1/2 g +-x+1/2 x+1/2 x+1/2 g +x 0 0 h +-x 0 0 h +0 x 0 h +0 -x 0 h +0 0 x h +0 0 -x h +1/2 x+1/2 1/2 h +1/2 -x+1/2 1/2 h +x+1/2 1/2 1/2 h +-x+1/2 1/2 1/2 h +1/2 1/2 -x+1/2 h +1/2 1/2 x+1/2 h +x 0 1/2 i +-x 0 1/2 i +1/2 x 0 i +1/2 -x 0 i +0 1/2 x i +0 1/2 -x i +1/2 x+1/2 0 i +1/2 -x+1/2 0 i +x+1/2 0 1/2 i +-x+1/2 0 1/2 i +0 1/2 -x+1/2 i +0 1/2 x+1/2 i +x 1/2 0 j +-x 1/2 0 j +0 x 1/2 j +0 -x 1/2 j +1/2 0 x j +1/2 0 -x j +0 x+1/2 1/2 j +0 -x+1/2 1/2 j +x+1/2 1/2 0 j +-x+1/2 1/2 0 j +1/2 0 -x+1/2 j +1/2 0 x+1/2 j +1/4 y -y+1/2 k +3/4 -y -y+1/2 k +3/4 y y+1/2 k +1/4 -y y+1/2 k +-y+1/2 1/4 y k +-y+1/2 3/4 -y k +y+1/2 3/4 y k +y+1/2 1/4 -y k +y -y+1/2 1/4 k +-y -y+1/2 3/4 k +y y+1/2 3/4 k +-y y+1/2 1/4 k +1/4 y y+1/2 l +3/4 -y y+1/2 l +3/4 y -y+1/2 l +1/4 -y -y+1/2 l +y+1/2 1/4 y l +y+1/2 3/4 -y l +-y+1/2 3/4 y l +-y+1/2 1/4 -y l +y y+1/2 1/4 l +-y y+1/2 3/4 l +y -y+1/2 3/4 l +-y -y+1/2 1/4 l +x y z m +-x -y z m +-x y -z m +x -y -z m +z x y m +z -x -y m +-z -x y m +-z x -y m +y z x m +-y z -x m +y -z -x m +-y -z x m +y+1/2 x+1/2 -z+1/2 m +-y+1/2 -x+1/2 -z+1/2 m +y+1/2 -x+1/2 z+1/2 m +-y+1/2 x+1/2 z+1/2 m +x+1/2 z+1/2 -y+1/2 m +-x+1/2 z+1/2 y+1/2 m +-x+1/2 -z+1/2 -y+1/2 m +x+1/2 -z+1/2 y+1/2 m +z+1/2 y+1/2 -x+1/2 m +z+1/2 -y+1/2 x+1/2 m +-z+1/2 y+1/2 x+1/2 m +-z+1/2 -y+1/2 -x+1/2 m diff --git a/data/wyckoff/wyckoff209.txt b/data/wyckoff/wyckoff209.txt new file mode 100644 index 0000000..b15dc32 --- /dev/null +++ b/data/wyckoff/wyckoff209.txt @@ -0,0 +1,84 @@ +0 0 0 a +1/2 1/2 1/2 b +1/4 1/4 1/4 c +1/4 1/4 3/4 c +0 1/4 1/4 d +0 3/4 1/4 d +1/4 0 1/4 d +1/4 0 3/4 d +1/4 1/4 0 d +3/4 1/4 0 d +x 0 0 e +-x 0 0 e +0 x 0 e +0 -x 0 e +0 0 x e +0 0 -x e +x x x f +-x -x x f +-x x -x f +x -x -x f +x x -x f +-x -x -x f +x -x x f +-x x x f +0 y y g +0 -y y g +0 y -y g +0 -y -y g +y 0 y g +y 0 -y g +-y 0 y g +-y 0 -y g +y y 0 g +-y y 0 g +y -y 0 g +-y -y 0 g +1/2 y y h +1/2 -y y h +1/2 y -y h +1/2 -y -y h +y 1/2 y h +y 1/2 -y h +-y 1/2 y h +-y 1/2 -y h +y y 1/2 h +-y y 1/2 h +y -y 1/2 h +-y -y 1/2 h +x 1/4 1/4 i +-x 3/4 1/4 i +1/4 x 1/4 i +1/4 -x 3/4 i +1/4 1/4 x i +3/4 1/4 -x i +1/4 x 3/4 i +3/4 -x 3/4 i +x 1/4 3/4 i +-x 1/4 1/4 i +1/4 1/4 -x i +1/4 3/4 x i +x y z j +-x -y z j +-x y -z j +x -y -z j +z x y j +z -x -y j +-z -x y j +-z x -y j +y z x j +-y z -x j +y -z -x j +-y -z x j +y x -z j +-y -x -z j +y -x z j +-y x z j +x z -y j +-x z y j +-x -z -y j +x -z y j +z y -x j +z -y x j +-z y x j +-z -y -x j diff --git a/data/wyckoff/wyckoff21.txt b/data/wyckoff/wyckoff21.txt new file mode 100644 index 0000000..cee540c --- /dev/null +++ b/data/wyckoff/wyckoff21.txt @@ -0,0 +1,22 @@ +0 0 0 a +0 1/2 0 b +1/2 0 1/2 c +0 0 1/2 d +x 0 0 e +-x 0 0 e +x 0 1/2 f +-x 0 1/2 f +0 y 0 g +0 -y 0 g +0 y 1/2 h +0 -y 1/2 h +0 0 z i +0 0 -z i +0 1/2 z j +0 1/2 -z j +1/4 1/4 z k +3/4 1/4 -z k +x y z l +-x -y z l +-x y -z l +x -y -z l diff --git a/data/wyckoff/wyckoff210.txt b/data/wyckoff/wyckoff210.txt new file mode 100644 index 0000000..4607f3f --- /dev/null +++ b/data/wyckoff/wyckoff210.txt @@ -0,0 +1,68 @@ +0 0 0 a +3/4 1/4 3/4 a +1/2 1/2 1/2 b +1/4 3/4 1/4 b +1/8 1/8 1/8 c +7/8 3/8 5/8 c +3/8 5/8 7/8 c +5/8 7/8 3/8 c +5/8 5/8 5/8 d +3/8 7/8 1/8 d +7/8 1/8 3/8 d +1/8 3/8 7/8 d +x x x e +-x -x+1/2 x+1/2 e +-x+1/2 x+1/2 -x e +x+1/2 -x -x+1/2 e +x+3/4 x+1/4 -x+3/4 e +-x+1/4 -x+1/4 -x+1/4 e +x+1/4 -x+3/4 x+3/4 e +-x+3/4 x+3/4 x+1/4 e +x 0 0 f +-x 1/2 1/2 f +0 x 0 f +1/2 -x 1/2 f +0 0 x f +1/2 1/2 -x f +3/4 x+1/4 3/4 f +1/4 -x+1/4 1/4 f +x+3/4 1/4 3/4 f +-x+3/4 3/4 1/4 f +3/4 1/4 -x+3/4 f +1/4 3/4 x+3/4 f +1/8 y -y+1/4 g +7/8 -y+1/2 -y+3/4 g +3/8 y+1/2 y+3/4 g +5/8 -y y+1/4 g +-y+1/4 1/8 y g +-y+3/4 7/8 -y+1/2 g +y+3/4 3/8 y+1/2 g +y+1/4 5/8 -y g +y -y+1/4 1/8 g +-y+1/2 -y+3/4 7/8 g +y+1/2 y+3/4 3/8 g +-y y+1/4 5/8 g +x y z h +-x -y+1/2 z+1/2 h +-x+1/2 y+1/2 -z h +x+1/2 -y -z+1/2 h +z x y h +z+1/2 -x -y+1/2 h +-z -x+1/2 y+1/2 h +-z+1/2 x+1/2 -y h +y z x h +-y+1/2 z+1/2 -x h +y+1/2 -z -x+1/2 h +-y -z+1/2 x+1/2 h +y+3/4 x+1/4 -z+3/4 h +-y+1/4 -x+1/4 -z+1/4 h +y+1/4 -x+3/4 z+3/4 h +-y+3/4 x+3/4 z+1/4 h +x+3/4 z+1/4 -y+3/4 h +-x+3/4 z+3/4 y+1/4 h +-x+1/4 -z+1/4 -y+1/4 h +x+1/4 -z+3/4 y+3/4 h +z+3/4 y+1/4 -x+3/4 h +z+1/4 -y+3/4 x+3/4 h +-z+3/4 y+3/4 x+1/4 h +-z+1/4 -y+1/4 -x+1/4 h diff --git a/data/wyckoff/wyckoff211.txt b/data/wyckoff/wyckoff211.txt new file mode 100644 index 0000000..201726c --- /dev/null +++ b/data/wyckoff/wyckoff211.txt @@ -0,0 +1,88 @@ +0 0 0 a +0 1/2 1/2 b +1/2 0 1/2 b +1/2 1/2 0 b +1/4 1/4 1/4 c +3/4 3/4 1/4 c +3/4 1/4 3/4 c +1/4 3/4 3/4 c +1/4 1/2 0 d +3/4 1/2 0 d +0 1/4 1/2 d +0 3/4 1/2 d +1/2 0 1/4 d +1/2 0 3/4 d +x 0 0 e +-x 0 0 e +0 x 0 e +0 -x 0 e +0 0 x e +0 0 -x e +x x x f +-x -x x f +-x x -x f +x -x -x f +x x -x f +-x -x -x f +x -x x f +-x x x f +x 1/2 0 g +-x 1/2 0 g +0 x 1/2 g +0 -x 1/2 g +1/2 0 x g +1/2 0 -x g +1/2 x 0 g +1/2 -x 0 g +x 0 1/2 g +-x 0 1/2 g +0 1/2 -x g +0 1/2 x g +0 y y h +0 -y y h +0 y -y h +0 -y -y h +y 0 y h +y 0 -y h +-y 0 y h +-y 0 -y h +y y 0 h +-y y 0 h +y -y 0 h +-y -y 0 h +1/4 y -y+1/2 i +3/4 -y -y+1/2 i +3/4 y y+1/2 i +1/4 -y y+1/2 i +-y+1/2 1/4 y i +-y+1/2 3/4 -y i +y+1/2 3/4 y i +y+1/2 1/4 -y i +y -y+1/2 1/4 i +-y -y+1/2 3/4 i +y y+1/2 3/4 i +-y y+1/2 1/4 i +x y z j +-x -y z j +-x y -z j +x -y -z j +z x y j +z -x -y j +-z -x y j +-z x -y j +y z x j +-y z -x j +y -z -x j +-y -z x j +y x -z j +-y -x -z j +y -x z j +-y x z j +x z -y j +-x z y j +-x -z -y j +x -z y j +z y -x j +z -y x j +-z y x j +-z -y -x j diff --git a/data/wyckoff/wyckoff212.txt b/data/wyckoff/wyckoff212.txt new file mode 100644 index 0000000..bf2d43c --- /dev/null +++ b/data/wyckoff/wyckoff212.txt @@ -0,0 +1,52 @@ +1/8 1/8 1/8 a +3/8 7/8 5/8 a +7/8 5/8 3/8 a +5/8 3/8 7/8 a +5/8 5/8 5/8 b +7/8 3/8 1/8 b +3/8 1/8 7/8 b +1/8 7/8 3/8 b +x x x c +-x+1/2 -x x+1/2 c +-x x+1/2 -x+1/2 c +x+1/2 -x+1/2 -x c +x+1/4 x+3/4 -x+3/4 c +-x+1/4 -x+1/4 -x+1/4 c +x+3/4 -x+3/4 x+1/4 c +-x+3/4 x+1/4 x+3/4 c +1/8 y -y+1/4 d +3/8 -y -y+3/4 d +7/8 y+1/2 y+1/4 d +5/8 -y+1/2 y+3/4 d +-y+1/4 1/8 y d +-y+3/4 3/8 -y d +y+1/4 7/8 y+1/2 d +y+3/4 5/8 -y+1/2 d +y -y+1/4 1/8 d +-y -y+3/4 3/8 d +y+1/2 y+1/4 7/8 d +-y+1/2 y+3/4 5/8 d +x y z e +-x+1/2 -y z+1/2 e +-x y+1/2 -z+1/2 e +x+1/2 -y+1/2 -z e +z x y e +z+1/2 -x+1/2 -y e +-z+1/2 -x y+1/2 e +-z x+1/2 -y+1/2 e +y z x e +-y z+1/2 -x+1/2 e +y+1/2 -z+1/2 -x e +-y+1/2 -z x+1/2 e +y+1/4 x+3/4 -z+3/4 e +-y+1/4 -x+1/4 -z+1/4 e +y+3/4 -x+3/4 z+1/4 e +-y+3/4 x+1/4 z+3/4 e +x+1/4 z+3/4 -y+3/4 e +-x+3/4 z+1/4 y+3/4 e +-x+1/4 -z+1/4 -y+1/4 e +x+3/4 -z+3/4 y+1/4 e +z+1/4 y+3/4 -x+3/4 e +z+3/4 -y+3/4 x+1/4 e +-z+3/4 y+1/4 x+3/4 e +-z+1/4 -y+1/4 -x+1/4 e diff --git a/data/wyckoff/wyckoff213.txt b/data/wyckoff/wyckoff213.txt new file mode 100644 index 0000000..e40eb90 --- /dev/null +++ b/data/wyckoff/wyckoff213.txt @@ -0,0 +1,52 @@ +3/8 3/8 3/8 a +1/8 5/8 7/8 a +5/8 7/8 1/8 a +7/8 1/8 5/8 a +7/8 7/8 7/8 b +5/8 1/8 3/8 b +1/8 3/8 5/8 b +3/8 5/8 1/8 b +x x x c +-x+1/2 -x x+1/2 c +-x x+1/2 -x+1/2 c +x+1/2 -x+1/2 -x c +x+3/4 x+1/4 -x+1/4 c +-x+3/4 -x+3/4 -x+3/4 c +x+1/4 -x+1/4 x+3/4 c +-x+1/4 x+3/4 x+1/4 c +1/8 y y+1/4 d +3/8 -y y+3/4 d +7/8 y+1/2 -y+1/4 d +5/8 -y+1/2 -y+3/4 d +y+1/4 1/8 y d +y+3/4 3/8 -y d +-y+1/4 7/8 y+1/2 d +-y+3/4 5/8 -y+1/2 d +y y+1/4 1/8 d +-y y+3/4 3/8 d +y+1/2 -y+1/4 7/8 d +-y+1/2 -y+3/4 5/8 d +x y z e +-x+1/2 -y z+1/2 e +-x y+1/2 -z+1/2 e +x+1/2 -y+1/2 -z e +z x y e +z+1/2 -x+1/2 -y e +-z+1/2 -x y+1/2 e +-z x+1/2 -y+1/2 e +y z x e +-y z+1/2 -x+1/2 e +y+1/2 -z+1/2 -x e +-y+1/2 -z x+1/2 e +y+3/4 x+1/4 -z+1/4 e +-y+3/4 -x+3/4 -z+3/4 e +y+1/4 -x+1/4 z+3/4 e +-y+1/4 x+3/4 z+1/4 e +x+3/4 z+1/4 -y+1/4 e +-x+1/4 z+3/4 y+1/4 e +-x+3/4 -z+3/4 -y+3/4 e +x+1/4 -z+1/4 y+3/4 e +z+3/4 y+1/4 -x+1/4 e +z+1/4 -y+1/4 x+3/4 e +-z+1/4 y+3/4 x+1/4 e +-z+3/4 -y+3/4 -x+3/4 e diff --git a/data/wyckoff/wyckoff214.txt b/data/wyckoff/wyckoff214.txt new file mode 100644 index 0000000..5acc02d --- /dev/null +++ b/data/wyckoff/wyckoff214.txt @@ -0,0 +1,88 @@ +1/8 1/8 1/8 a +3/8 7/8 5/8 a +7/8 5/8 3/8 a +5/8 3/8 7/8 a +7/8 7/8 7/8 b +5/8 1/8 3/8 b +1/8 3/8 5/8 b +3/8 5/8 1/8 b +1/8 0 1/4 c +3/8 0 3/4 c +1/4 1/8 0 c +3/4 3/8 0 c +0 1/4 1/8 c +0 3/4 3/8 c +5/8 0 1/4 d +7/8 0 3/4 d +1/4 5/8 0 d +3/4 7/8 0 d +0 1/4 5/8 d +0 3/4 7/8 d +x x x e +-x+1/2 -x x+1/2 e +-x x+1/2 -x+1/2 e +x+1/2 -x+1/2 -x e +x+3/4 x+1/4 -x+1/4 e +-x+3/4 -x+3/4 -x+3/4 e +x+1/4 -x+1/4 x+3/4 e +-x+1/4 x+3/4 x+1/4 e +x 0 1/4 f +-x+1/2 0 3/4 f +1/4 x 0 f +3/4 -x+1/2 0 f +0 1/4 x f +0 3/4 -x+1/2 f +3/4 x+1/4 0 f +3/4 -x+3/4 1/2 f +x+3/4 1/2 1/4 f +-x+1/4 0 1/4 f +0 1/4 -x+1/4 f +1/2 1/4 x+3/4 f +1/8 y y+1/4 g +3/8 -y y+3/4 g +7/8 y+1/2 -y+1/4 g +5/8 -y+1/2 -y+3/4 g +y+1/4 1/8 y g +y+3/4 3/8 -y g +-y+1/4 7/8 y+1/2 g +-y+3/4 5/8 -y+1/2 g +y y+1/4 1/8 g +-y y+3/4 3/8 g +y+1/2 -y+1/4 7/8 g +-y+1/2 -y+3/4 5/8 g +1/8 y -y+1/4 h +3/8 -y -y+3/4 h +7/8 y+1/2 y+1/4 h +5/8 -y+1/2 y+3/4 h +-y+1/4 1/8 y h +-y+3/4 3/8 -y h +y+1/4 7/8 y+1/2 h +y+3/4 5/8 -y+1/2 h +y -y+1/4 1/8 h +-y -y+3/4 3/8 h +y+1/2 y+1/4 7/8 h +-y+1/2 y+3/4 5/8 h +x y z i +-x+1/2 -y z+1/2 i +-x y+1/2 -z+1/2 i +x+1/2 -y+1/2 -z i +z x y i +z+1/2 -x+1/2 -y i +-z+1/2 -x y+1/2 i +-z x+1/2 -y+1/2 i +y z x i +-y z+1/2 -x+1/2 i +y+1/2 -z+1/2 -x i +-y+1/2 -z x+1/2 i +y+3/4 x+1/4 -z+1/4 i +-y+3/4 -x+3/4 -z+3/4 i +y+1/4 -x+1/4 z+3/4 i +-y+1/4 x+3/4 z+1/4 i +x+3/4 z+1/4 -y+1/4 i +-x+1/4 z+3/4 y+1/4 i +-x+3/4 -z+3/4 -y+3/4 i +x+1/4 -z+1/4 y+3/4 i +z+3/4 y+1/4 -x+1/4 i +z+1/4 -y+1/4 x+3/4 i +-z+1/4 y+3/4 x+1/4 i +-z+3/4 -y+3/4 -x+3/4 i diff --git a/data/wyckoff/wyckoff215.txt b/data/wyckoff/wyckoff215.txt new file mode 100644 index 0000000..1693337 --- /dev/null +++ b/data/wyckoff/wyckoff215.txt @@ -0,0 +1,72 @@ +0 0 0 a +1/2 1/2 1/2 b +0 1/2 1/2 c +1/2 0 1/2 c +1/2 1/2 0 c +1/2 0 0 d +0 1/2 0 d +0 0 1/2 d +x x x e +-x -x x e +-x x -x e +x -x -x e +x 0 0 f +-x 0 0 f +0 x 0 f +0 -x 0 f +0 0 x f +0 0 -x f +x 1/2 1/2 g +-x 1/2 1/2 g +1/2 x 1/2 g +1/2 -x 1/2 g +1/2 1/2 x g +1/2 1/2 -x g +x 1/2 0 h +-x 1/2 0 h +0 x 1/2 h +0 -x 1/2 h +1/2 0 x h +1/2 0 -x h +1/2 x 0 h +1/2 -x 0 h +x 0 1/2 h +-x 0 1/2 h +0 1/2 x h +0 1/2 -x h +x x z i +-x -x z i +-x x -z i +x -x -z i +z x x i +z -x -x i +-z -x x i +-z x -x i +x z x i +-x z -x i +x -z -x i +-x -z x i +x y z j +-x -y z j +-x y -z j +x -y -z j +z x y j +z -x -y j +-z -x y j +-z x -y j +y z x j +-y z -x j +y -z -x j +-y -z x j +y x z j +-y -x z j +y -x -z j +-y x -z j +x z y j +-x z -y j +-x -z y j +x -z -y j +z y x j +z -y -x j +-z y -x j +-z -y x j diff --git a/data/wyckoff/wyckoff216.txt b/data/wyckoff/wyckoff216.txt new file mode 100644 index 0000000..a6099d9 --- /dev/null +++ b/data/wyckoff/wyckoff216.txt @@ -0,0 +1,56 @@ +0 0 0 a +1/2 1/2 1/2 b +1/4 1/4 1/4 c +3/4 3/4 3/4 d +x x x e +-x -x x e +-x x -x e +x -x -x e +x 0 0 f +-x 0 0 f +0 x 0 f +0 -x 0 f +0 0 x f +0 0 -x f +x 1/4 1/4 g +-x 3/4 1/4 g +1/4 x 1/4 g +1/4 -x 3/4 g +1/4 1/4 x g +3/4 1/4 -x g +x x z h +-x -x z h +-x x -z h +x -x -z h +z x x h +z -x -x h +-z -x x h +-z x -x h +x z x h +-x z -x h +x -z -x h +-x -z x h +x y z i +-x -y z i +-x y -z i +x -y -z i +z x y i +z -x -y i +-z -x y i +-z x -y i +y z x i +-y z -x i +y -z -x i +-y -z x i +y x z i +-y -x z i +y -x -z i +-y x -z i +x z y i +-x z -y i +-x -z y i +x -z -y i +z y x i +z -y -x i +-z y -x i +-z -y x i diff --git a/data/wyckoff/wyckoff217.txt b/data/wyckoff/wyckoff217.txt new file mode 100644 index 0000000..bf37a8e --- /dev/null +++ b/data/wyckoff/wyckoff217.txt @@ -0,0 +1,68 @@ +0 0 0 a +0 1/2 1/2 b +1/2 0 1/2 b +1/2 1/2 0 b +x x x c +-x -x x c +-x x -x c +x -x -x c +1/4 1/2 0 d +3/4 1/2 0 d +0 1/4 1/2 d +0 3/4 1/2 d +1/2 0 1/4 d +1/2 0 3/4 d +x 0 0 e +-x 0 0 e +0 x 0 e +0 -x 0 e +0 0 x e +0 0 -x e +x 1/2 0 f +-x 1/2 0 f +0 x 1/2 f +0 -x 1/2 f +1/2 0 x f +1/2 0 -x f +1/2 x 0 f +1/2 -x 0 f +x 0 1/2 f +-x 0 1/2 f +0 1/2 x f +0 1/2 -x f +x x z g +-x -x z g +-x x -z g +x -x -z g +z x x g +z -x -x g +-z -x x g +-z x -x g +x z x g +-x z -x g +x -z -x g +-x -z x g +x y z h +-x -y z h +-x y -z h +x -y -z h +z x y h +z -x -y h +-z -x y h +-z x -y h +y z x h +-y z -x h +y -z -x h +-y -z x h +y x z h +-y -x z h +y -x -z h +-y x -z h +x z y h +-x z -y h +-x -z y h +x -z -y h +z y x h +z -y -x h +-z y -x h +-z -y x h diff --git a/data/wyckoff/wyckoff218.txt b/data/wyckoff/wyckoff218.txt new file mode 100644 index 0000000..52546a7 --- /dev/null +++ b/data/wyckoff/wyckoff218.txt @@ -0,0 +1,88 @@ +0 0 0 a +1/2 1/2 1/2 a +0 1/2 1/2 b +1/2 0 1/2 b +1/2 1/2 0 b +0 1/2 0 b +1/2 0 0 b +0 0 1/2 b +1/4 1/2 0 c +3/4 1/2 0 c +0 1/4 1/2 c +0 3/4 1/2 c +1/2 0 1/4 c +1/2 0 3/4 c +1/4 0 1/2 d +3/4 0 1/2 d +1/2 1/4 0 d +1/2 3/4 0 d +0 1/2 1/4 d +0 1/2 3/4 d +x x x e +-x -x x e +-x x -x e +x -x -x e +x+1/2 x+1/2 x+1/2 e +-x+1/2 -x+1/2 x+1/2 e +x+1/2 -x+1/2 -x+1/2 e +-x+1/2 x+1/2 -x+1/2 e +x 0 0 f +-x 0 0 f +0 x 0 f +0 -x 0 f +0 0 x f +0 0 -x f +1/2 x+1/2 1/2 f +1/2 -x+1/2 1/2 f +x+1/2 1/2 1/2 f +-x+1/2 1/2 1/2 f +1/2 1/2 x+1/2 f +1/2 1/2 -x+1/2 f +x 1/2 0 g +-x 1/2 0 g +0 x 1/2 g +0 -x 1/2 g +1/2 0 x g +1/2 0 -x g +0 x+1/2 1/2 g +0 -x+1/2 1/2 g +x+1/2 1/2 0 g +-x+1/2 1/2 0 g +1/2 0 x+1/2 g +1/2 0 -x+1/2 g +x 0 1/2 h +-x 0 1/2 h +1/2 x 0 h +1/2 -x 0 h +0 1/2 x h +0 1/2 -x h +1/2 x+1/2 0 h +1/2 -x+1/2 0 h +x+1/2 0 1/2 h +-x+1/2 0 1/2 h +0 1/2 x+1/2 h +0 1/2 -x+1/2 h +x y z i +-x -y z i +-x y -z i +x -y -z i +z x y i +z -x -y i +-z -x y i +-z x -y i +y z x i +-y z -x i +y -z -x i +-y -z x i +y+1/2 x+1/2 z+1/2 i +-y+1/2 -x+1/2 z+1/2 i +y+1/2 -x+1/2 -z+1/2 i +-y+1/2 x+1/2 -z+1/2 i +x+1/2 z+1/2 y+1/2 i +-x+1/2 z+1/2 -y+1/2 i +-x+1/2 -z+1/2 y+1/2 i +x+1/2 -z+1/2 -y+1/2 i +z+1/2 y+1/2 x+1/2 i +z+1/2 -y+1/2 -x+1/2 i +-z+1/2 y+1/2 -x+1/2 i +-z+1/2 -y+1/2 x+1/2 i diff --git a/data/wyckoff/wyckoff219.txt b/data/wyckoff/wyckoff219.txt new file mode 100644 index 0000000..8e0bc7e --- /dev/null +++ b/data/wyckoff/wyckoff219.txt @@ -0,0 +1,72 @@ +0 0 0 a +1/2 1/2 1/2 a +1/4 1/4 1/4 b +3/4 3/4 3/4 b +0 1/4 1/4 c +0 3/4 1/4 c +1/4 0 1/4 c +1/4 0 3/4 c +1/4 1/4 0 c +3/4 1/4 0 c +1/4 0 0 d +3/4 0 0 d +0 1/4 0 d +0 3/4 0 d +0 0 1/4 d +0 0 3/4 d +x x x e +-x -x x e +-x x -x e +x -x -x e +x+1/2 x+1/2 x+1/2 e +-x+1/2 -x+1/2 x+1/2 e +x+1/2 -x+1/2 -x+1/2 e +-x+1/2 x+1/2 -x+1/2 e +x 0 0 f +-x 0 0 f +0 x 0 f +0 -x 0 f +0 0 x f +0 0 -x f +1/2 x+1/2 1/2 f +1/2 -x+1/2 1/2 f +x+1/2 1/2 1/2 f +-x+1/2 1/2 1/2 f +1/2 1/2 x+1/2 f +1/2 1/2 -x+1/2 f +x 1/4 1/4 g +-x 3/4 1/4 g +1/4 x 1/4 g +1/4 -x 3/4 g +1/4 1/4 x g +3/4 1/4 -x g +3/4 x+1/2 3/4 g +1/4 -x+1/2 3/4 g +x+1/2 3/4 3/4 g +-x+1/2 3/4 1/4 g +3/4 3/4 x+1/2 g +3/4 1/4 -x+1/2 g +x y z h +-x -y z h +-x y -z h +x -y -z h +z x y h +z -x -y h +-z -x y h +-z x -y h +y z x h +-y z -x h +y -z -x h +-y -z x h +y+1/2 x+1/2 z+1/2 h +-y+1/2 -x+1/2 z+1/2 h +y+1/2 -x+1/2 -z+1/2 h +-y+1/2 x+1/2 -z+1/2 h +x+1/2 z+1/2 y+1/2 h +-x+1/2 z+1/2 -y+1/2 h +-x+1/2 -z+1/2 y+1/2 h +x+1/2 -z+1/2 -y+1/2 h +z+1/2 y+1/2 x+1/2 h +z+1/2 -y+1/2 -x+1/2 h +-z+1/2 y+1/2 -x+1/2 h +-z+1/2 -y+1/2 x+1/2 h diff --git a/data/wyckoff/wyckoff22.txt b/data/wyckoff/wyckoff22.txt new file mode 100644 index 0000000..2bce911 --- /dev/null +++ b/data/wyckoff/wyckoff22.txt @@ -0,0 +1,20 @@ +0 0 0 a +0 0 1/2 b +1/4 1/4 1/4 c +1/4 1/4 3/4 d +x 0 0 e +-x 0 0 e +0 y 0 f +0 -y 0 f +0 0 z g +0 0 -z g +1/4 1/4 z h +3/4 1/4 -z h +1/4 y 1/4 i +3/4 -y 1/4 i +x 1/4 1/4 j +-x 3/4 1/4 j +x y z k +-x -y z k +-x y -z k +x -y -z k diff --git a/data/wyckoff/wyckoff220.txt b/data/wyckoff/wyckoff220.txt new file mode 100644 index 0000000..b0fd45e --- /dev/null +++ b/data/wyckoff/wyckoff220.txt @@ -0,0 +1,56 @@ +3/8 0 1/4 a +1/8 0 3/4 a +1/4 3/8 0 a +3/4 1/8 0 a +0 1/4 3/8 a +0 3/4 1/8 a +7/8 0 1/4 b +5/8 0 3/4 b +1/4 7/8 0 b +3/4 5/8 0 b +0 1/4 7/8 b +0 3/4 5/8 b +x x x c +-x+1/2 -x x+1/2 c +-x x+1/2 -x+1/2 c +x+1/2 -x+1/2 -x c +x+1/4 x+1/4 x+1/4 c +-x+1/4 -x+3/4 x+3/4 c +x+3/4 -x+1/4 -x+3/4 c +-x+3/4 x+3/4 -x+1/4 c +x 0 1/4 d +-x+1/2 0 3/4 d +1/4 x 0 d +3/4 -x+1/2 0 d +0 1/4 x d +0 3/4 -x+1/2 d +1/4 x+1/4 1/2 d +1/4 -x+3/4 0 d +x+1/4 1/2 1/4 d +-x+3/4 0 1/4 d +1/2 1/4 x+1/4 d +0 1/4 -x+3/4 d +x y z e +-x+1/2 -y z+1/2 e +-x y+1/2 -z+1/2 e +x+1/2 -y+1/2 -z e +z x y e +z+1/2 -x+1/2 -y e +-z+1/2 -x y+1/2 e +-z x+1/2 -y+1/2 e +y z x e +-y z+1/2 -x+1/2 e +y+1/2 -z+1/2 -x e +-y+1/2 -z x+1/2 e +y+1/4 x+1/4 z+1/4 e +-y+1/4 -x+3/4 z+3/4 e +y+3/4 -x+1/4 -z+3/4 e +-y+3/4 x+3/4 -z+1/4 e +x+1/4 z+1/4 y+1/4 e +-x+3/4 z+3/4 -y+1/4 e +-x+1/4 -z+3/4 y+3/4 e +x+3/4 -z+1/4 -y+3/4 e +z+1/4 y+1/4 x+1/4 e +z+3/4 -y+1/4 -x+3/4 e +-z+3/4 y+3/4 -x+1/4 e +-z+1/4 -y+3/4 x+3/4 e diff --git a/data/wyckoff/wyckoff221.txt b/data/wyckoff/wyckoff221.txt new file mode 100644 index 0000000..d53fa16 --- /dev/null +++ b/data/wyckoff/wyckoff221.txt @@ -0,0 +1,184 @@ +0 0 0 a +1/2 1/2 1/2 b +0 1/2 1/2 c +1/2 0 1/2 c +1/2 1/2 0 c +1/2 0 0 d +0 1/2 0 d +0 0 1/2 d +x 0 0 e +-x 0 0 e +0 x 0 e +0 -x 0 e +0 0 x e +0 0 -x e +x 1/2 1/2 f +-x 1/2 1/2 f +1/2 x 1/2 f +1/2 -x 1/2 f +1/2 1/2 x f +1/2 1/2 -x f +x x x g +-x -x x g +-x x -x g +x -x -x g +x x -x g +-x -x -x g +x -x x g +-x x x g +x 1/2 0 h +-x 1/2 0 h +0 x 1/2 h +0 -x 1/2 h +1/2 0 x h +1/2 0 -x h +1/2 x 0 h +1/2 -x 0 h +x 0 1/2 h +-x 0 1/2 h +0 1/2 -x h +0 1/2 x h +0 y y i +0 -y y i +0 y -y i +0 -y -y i +y 0 y i +y 0 -y i +-y 0 y i +-y 0 -y i +y y 0 i +-y y 0 i +y -y 0 i +-y -y 0 i +1/2 y y j +1/2 -y y j +1/2 y -y j +1/2 -y -y j +y 1/2 y j +y 1/2 -y j +-y 1/2 y j +-y 1/2 -y j +y y 1/2 j +-y y 1/2 j +y -y 1/2 j +-y -y 1/2 j +0 y z k +0 -y z k +0 y -z k +0 -y -z k +z 0 y k +z 0 -y k +-z 0 y k +-z 0 -y k +y z 0 k +-y z 0 k +y -z 0 k +-y -z 0 k +y 0 -z k +-y 0 -z k +y 0 z k +-y 0 z k +0 z -y k +0 z y k +0 -z -y k +0 -z y k +z y 0 k +z -y 0 k +-z y 0 k +-z -y 0 k +1/2 y z l +1/2 -y z l +1/2 y -z l +1/2 -y -z l +z 1/2 y l +z 1/2 -y l +-z 1/2 y l +-z 1/2 -y l +y z 1/2 l +-y z 1/2 l +y -z 1/2 l +-y -z 1/2 l +y 1/2 -z l +-y 1/2 -z l +y 1/2 z l +-y 1/2 z l +1/2 z -y l +1/2 z y l +1/2 -z -y l +1/2 -z y l +z y 1/2 l +z -y 1/2 l +-z y 1/2 l +-z -y 1/2 l +x x z m +-x -x z m +-x x -z m +x -x -z m +z x x m +z -x -x m +-z -x x m +-z x -x m +x z x m +-x z -x m +x -z -x m +-x -z x m +x x -z m +-x -x -z m +x -x z m +-x x z m +x z -x m +-x z x m +-x -z -x m +x -z x m +z x -x m +z -x x m +-z x x m +-z -x -x m +x y z n +-x -y z n +-x y -z n +x -y -z n +z x y n +z -x -y n +-z -x y n +-z x -y n +y z x n +-y z -x n +y -z -x n +-y -z x n +y x -z n +-y -x -z n +y -x z n +-y x z n +x z -y n +-x z y n +-x -z -y n +x -z y n +z y -x n +z -y x n +-z y x n +-z -y -x n +-x -y -z n +x y -z n +x -y z n +-x y z n +-z -x -y n +-z x y n +z x -y n +z -x y n +-y -z -x n +y -z x n +-y z x n +y z -x n +-y -x z n +y x z n +-y x -z n +y -x -z n +-x -z y n +x -z -y n +x z y n +-x z -y n +-z -y x n +-z y -x n +z -y -x n +z y x n diff --git a/data/wyckoff/wyckoff222.txt b/data/wyckoff/wyckoff222.txt new file mode 100644 index 0000000..e67c103 --- /dev/null +++ b/data/wyckoff/wyckoff222.txt @@ -0,0 +1,152 @@ +0 0 0 a +1/2 1/2 1/2 a +0 1/2 1/2 b +1/2 0 1/2 b +1/2 1/2 0 b +1/2 0 0 b +0 1/2 0 b +0 0 1/2 b +1/4 1/4 1/4 c +3/4 3/4 1/4 c +3/4 1/4 3/4 c +1/4 3/4 3/4 c +1/4 1/4 3/4 c +3/4 3/4 3/4 c +1/4 3/4 1/4 c +3/4 1/4 1/4 c +1/4 0 1/2 d +3/4 0 1/2 d +1/2 1/4 0 d +1/2 3/4 0 d +0 1/2 1/4 d +0 1/2 3/4 d +0 1/4 1/2 d +0 3/4 1/2 d +1/4 1/2 0 d +3/4 1/2 0 d +1/2 0 3/4 d +1/2 0 1/4 d +x 0 0 e +-x 0 0 e +0 x 0 e +0 -x 0 e +0 0 x e +0 0 -x e +-x+1/2 1/2 1/2 e +x+1/2 1/2 1/2 e +1/2 -x+1/2 1/2 e +1/2 x+1/2 1/2 e +1/2 1/2 -x+1/2 e +1/2 1/2 x+1/2 e +x x x f +-x -x x f +-x x -x f +x -x -x f +x x -x f +-x -x -x f +x -x x f +-x x x f +-x+1/2 -x+1/2 -x+1/2 f +x+1/2 x+1/2 -x+1/2 f +x+1/2 -x+1/2 x+1/2 f +-x+1/2 x+1/2 x+1/2 f +-x+1/2 -x+1/2 x+1/2 f +x+1/2 x+1/2 x+1/2 f +-x+1/2 x+1/2 -x+1/2 f +x+1/2 -x+1/2 -x+1/2 f +x 0 1/2 g +-x 0 1/2 g +1/2 x 0 g +1/2 -x 0 g +0 1/2 x g +0 1/2 -x g +0 x 1/2 g +0 -x 1/2 g +x 1/2 0 g +-x 1/2 0 g +1/2 0 -x g +1/2 0 x g +-x+1/2 1/2 0 g +x+1/2 1/2 0 g +0 -x+1/2 1/2 g +0 x+1/2 1/2 g +1/2 0 -x+1/2 g +1/2 0 x+1/2 g +1/2 -x+1/2 0 g +1/2 x+1/2 0 g +-x+1/2 0 1/2 g +x+1/2 0 1/2 g +0 1/2 x+1/2 g +0 1/2 -x+1/2 g +0 y y h +0 -y y h +0 y -y h +0 -y -y h +y 0 y h +y 0 -y h +-y 0 y h +-y 0 -y h +y y 0 h +-y y 0 h +y -y 0 h +-y -y 0 h +1/2 -y+1/2 -y+1/2 h +1/2 y+1/2 -y+1/2 h +1/2 -y+1/2 y+1/2 h +1/2 y+1/2 y+1/2 h +-y+1/2 1/2 -y+1/2 h +-y+1/2 1/2 y+1/2 h +y+1/2 1/2 -y+1/2 h +y+1/2 1/2 y+1/2 h +-y+1/2 -y+1/2 1/2 h +y+1/2 -y+1/2 1/2 h +-y+1/2 y+1/2 1/2 h +y+1/2 y+1/2 1/2 h +x y z i +-x -y z i +-x y -z i +x -y -z i +z x y i +z -x -y i +-z -x y i +-z x -y i +y z x i +-y z -x i +y -z -x i +-y -z x i +y x -z i +-y -x -z i +y -x z i +-y x z i +x z -y i +-x z y i +-x -z -y i +x -z y i +z y -x i +z -y x i +-z y x i +-z -y -x i +-x+1/2 -y+1/2 -z+1/2 i +x+1/2 y+1/2 -z+1/2 i +x+1/2 -y+1/2 z+1/2 i +-x+1/2 y+1/2 z+1/2 i +-z+1/2 -x+1/2 -y+1/2 i +-z+1/2 x+1/2 y+1/2 i +z+1/2 x+1/2 -y+1/2 i +z+1/2 -x+1/2 y+1/2 i +-y+1/2 -z+1/2 -x+1/2 i +y+1/2 -z+1/2 x+1/2 i +-y+1/2 z+1/2 x+1/2 i +y+1/2 z+1/2 -x+1/2 i +-y+1/2 -x+1/2 z+1/2 i +y+1/2 x+1/2 z+1/2 i +-y+1/2 x+1/2 -z+1/2 i +y+1/2 -x+1/2 -z+1/2 i +-x+1/2 -z+1/2 y+1/2 i +x+1/2 -z+1/2 -y+1/2 i +x+1/2 z+1/2 y+1/2 i +-x+1/2 z+1/2 -y+1/2 i +-z+1/2 -y+1/2 x+1/2 i +-z+1/2 y+1/2 -x+1/2 i +z+1/2 -y+1/2 -x+1/2 i +z+1/2 y+1/2 x+1/2 i diff --git a/data/wyckoff/wyckoff222s1.txt b/data/wyckoff/wyckoff222s1.txt new file mode 100644 index 0000000..e67c103 --- /dev/null +++ b/data/wyckoff/wyckoff222s1.txt @@ -0,0 +1,152 @@ +0 0 0 a +1/2 1/2 1/2 a +0 1/2 1/2 b +1/2 0 1/2 b +1/2 1/2 0 b +1/2 0 0 b +0 1/2 0 b +0 0 1/2 b +1/4 1/4 1/4 c +3/4 3/4 1/4 c +3/4 1/4 3/4 c +1/4 3/4 3/4 c +1/4 1/4 3/4 c +3/4 3/4 3/4 c +1/4 3/4 1/4 c +3/4 1/4 1/4 c +1/4 0 1/2 d +3/4 0 1/2 d +1/2 1/4 0 d +1/2 3/4 0 d +0 1/2 1/4 d +0 1/2 3/4 d +0 1/4 1/2 d +0 3/4 1/2 d +1/4 1/2 0 d +3/4 1/2 0 d +1/2 0 3/4 d +1/2 0 1/4 d +x 0 0 e +-x 0 0 e +0 x 0 e +0 -x 0 e +0 0 x e +0 0 -x e +-x+1/2 1/2 1/2 e +x+1/2 1/2 1/2 e +1/2 -x+1/2 1/2 e +1/2 x+1/2 1/2 e +1/2 1/2 -x+1/2 e +1/2 1/2 x+1/2 e +x x x f +-x -x x f +-x x -x f +x -x -x f +x x -x f +-x -x -x f +x -x x f +-x x x f +-x+1/2 -x+1/2 -x+1/2 f +x+1/2 x+1/2 -x+1/2 f +x+1/2 -x+1/2 x+1/2 f +-x+1/2 x+1/2 x+1/2 f +-x+1/2 -x+1/2 x+1/2 f +x+1/2 x+1/2 x+1/2 f +-x+1/2 x+1/2 -x+1/2 f +x+1/2 -x+1/2 -x+1/2 f +x 0 1/2 g +-x 0 1/2 g +1/2 x 0 g +1/2 -x 0 g +0 1/2 x g +0 1/2 -x g +0 x 1/2 g +0 -x 1/2 g +x 1/2 0 g +-x 1/2 0 g +1/2 0 -x g +1/2 0 x g +-x+1/2 1/2 0 g +x+1/2 1/2 0 g +0 -x+1/2 1/2 g +0 x+1/2 1/2 g +1/2 0 -x+1/2 g +1/2 0 x+1/2 g +1/2 -x+1/2 0 g +1/2 x+1/2 0 g +-x+1/2 0 1/2 g +x+1/2 0 1/2 g +0 1/2 x+1/2 g +0 1/2 -x+1/2 g +0 y y h +0 -y y h +0 y -y h +0 -y -y h +y 0 y h +y 0 -y h +-y 0 y h +-y 0 -y h +y y 0 h +-y y 0 h +y -y 0 h +-y -y 0 h +1/2 -y+1/2 -y+1/2 h +1/2 y+1/2 -y+1/2 h +1/2 -y+1/2 y+1/2 h +1/2 y+1/2 y+1/2 h +-y+1/2 1/2 -y+1/2 h +-y+1/2 1/2 y+1/2 h +y+1/2 1/2 -y+1/2 h +y+1/2 1/2 y+1/2 h +-y+1/2 -y+1/2 1/2 h +y+1/2 -y+1/2 1/2 h +-y+1/2 y+1/2 1/2 h +y+1/2 y+1/2 1/2 h +x y z i +-x -y z i +-x y -z i +x -y -z i +z x y i +z -x -y i +-z -x y i +-z x -y i +y z x i +-y z -x i +y -z -x i +-y -z x i +y x -z i +-y -x -z i +y -x z i +-y x z i +x z -y i +-x z y i +-x -z -y i +x -z y i +z y -x i +z -y x i +-z y x i +-z -y -x i +-x+1/2 -y+1/2 -z+1/2 i +x+1/2 y+1/2 -z+1/2 i +x+1/2 -y+1/2 z+1/2 i +-x+1/2 y+1/2 z+1/2 i +-z+1/2 -x+1/2 -y+1/2 i +-z+1/2 x+1/2 y+1/2 i +z+1/2 x+1/2 -y+1/2 i +z+1/2 -x+1/2 y+1/2 i +-y+1/2 -z+1/2 -x+1/2 i +y+1/2 -z+1/2 x+1/2 i +-y+1/2 z+1/2 x+1/2 i +y+1/2 z+1/2 -x+1/2 i +-y+1/2 -x+1/2 z+1/2 i +y+1/2 x+1/2 z+1/2 i +-y+1/2 x+1/2 -z+1/2 i +y+1/2 -x+1/2 -z+1/2 i +-x+1/2 -z+1/2 y+1/2 i +x+1/2 -z+1/2 -y+1/2 i +x+1/2 z+1/2 y+1/2 i +-x+1/2 z+1/2 -y+1/2 i +-z+1/2 -y+1/2 x+1/2 i +-z+1/2 y+1/2 -x+1/2 i +z+1/2 -y+1/2 -x+1/2 i +z+1/2 y+1/2 x+1/2 i diff --git a/data/wyckoff/wyckoff222s2.txt b/data/wyckoff/wyckoff222s2.txt new file mode 100644 index 0000000..6c023ae --- /dev/null +++ b/data/wyckoff/wyckoff222s2.txt @@ -0,0 +1,152 @@ +1/4 1/4 1/4 a +3/4 3/4 3/4 a +3/4 1/4 1/4 b +1/4 3/4 1/4 b +1/4 1/4 3/4 b +1/4 3/4 3/4 b +3/4 1/4 3/4 b +3/4 3/4 1/4 b +0 0 0 c +1/2 1/2 0 c +1/2 0 1/2 c +0 1/2 1/2 c +0 0 1/2 c +1/2 1/2 1/2 c +0 1/2 0 c +1/2 0 0 c +0 3/4 1/4 d +1/2 3/4 1/4 d +1/4 0 3/4 d +1/4 1/2 3/4 d +3/4 1/4 0 d +3/4 1/4 1/2 d +3/4 0 1/4 d +3/4 1/2 1/4 d +0 1/4 3/4 d +1/2 1/4 3/4 d +1/4 3/4 1/2 d +1/4 3/4 0 d +x 1/4 1/4 e +-x+1/2 1/4 1/4 e +1/4 x 1/4 e +1/4 -x+1/2 1/4 e +1/4 1/4 x e +1/4 1/4 -x+1/2 e +-x 3/4 3/4 e +x+1/2 3/4 3/4 e +3/4 -x 3/4 e +3/4 x+1/2 3/4 e +3/4 3/4 -x e +3/4 3/4 x+1/2 e +x x x f +-x+1/2 -x+1/2 x f +-x+1/2 x -x+1/2 f +x -x+1/2 -x+1/2 f +x x -x+1/2 f +-x+1/2 -x+1/2 -x+1/2 f +x -x+1/2 x f +-x+1/2 x x f +-x -x -x f +x+1/2 x+1/2 -x f +x+1/2 -x x+1/2 f +-x x+1/2 x+1/2 f +-x -x x+1/2 f +x+1/2 x+1/2 x+1/2 f +-x x+1/2 -x f +x+1/2 -x -x f +x 3/4 1/4 g +-x+1/2 3/4 1/4 g +1/4 x 3/4 g +1/4 -x+1/2 3/4 g +3/4 1/4 x g +3/4 1/4 -x+1/2 g +3/4 x 1/4 g +3/4 -x+1/2 1/4 g +x 1/4 3/4 g +-x+1/2 1/4 3/4 g +1/4 3/4 -x+1/2 g +1/4 3/4 x g +-x 1/4 3/4 g +x+1/2 1/4 3/4 g +3/4 -x 1/4 g +3/4 x+1/2 1/4 g +1/4 3/4 -x g +1/4 3/4 x+1/2 g +1/4 -x 3/4 g +1/4 x+1/2 3/4 g +-x 3/4 1/4 g +x+1/2 3/4 1/4 g +3/4 1/4 x+1/2 g +3/4 1/4 -x g +1/4 y y h +1/4 -y+1/2 y h +1/4 y -y+1/2 h +1/4 -y+1/2 -y+1/2 h +y 1/4 y h +y 1/4 -y+1/2 h +-y+1/2 1/4 y h +-y+1/2 1/4 -y+1/2 h +y y 1/4 h +-y+1/2 y 1/4 h +y -y+1/2 1/4 h +-y+1/2 -y+1/2 1/4 h +3/4 -y -y h +3/4 y+1/2 -y h +3/4 -y y+1/2 h +3/4 y+1/2 y+1/2 h +-y 3/4 -y h +-y 3/4 y+1/2 h +y+1/2 3/4 -y h +y+1/2 3/4 y+1/2 h +-y -y 3/4 h +y+1/2 -y 3/4 h +-y y+1/2 3/4 h +y+1/2 y+1/2 3/4 h +x y z i +-x+1/2 -y+1/2 z i +-x+1/2 y -z+1/2 i +x -y+1/2 -z+1/2 i +z x y i +z -x+1/2 -y+1/2 i +-z+1/2 -x+1/2 y i +-z+1/2 x -y+1/2 i +y z x i +-y+1/2 z -x+1/2 i +y -z+1/2 -x+1/2 i +-y+1/2 -z+1/2 x i +y x -z+1/2 i +-y+1/2 -x+1/2 -z+1/2 i +y -x+1/2 z i +-y+1/2 x z i +x z -y+1/2 i +-x+1/2 z y i +-x+1/2 -z+1/2 -y+1/2 i +x -z+1/2 y i +z y -x+1/2 i +z -y+1/2 x i +-z+1/2 y x i +-z+1/2 -y+1/2 -x+1/2 i +-x -y -z i +x+1/2 y+1/2 -z i +x+1/2 -y z+1/2 i +-x y+1/2 z+1/2 i +-z -x -y i +-z x+1/2 y+1/2 i +z+1/2 x+1/2 -y i +z+1/2 -x y+1/2 i +-y -z -x i +y+1/2 -z x+1/2 i +-y z+1/2 x+1/2 i +y+1/2 z+1/2 -x i +-y -x z+1/2 i +y+1/2 x+1/2 z+1/2 i +-y x+1/2 -z i +y+1/2 -x -z i +-x -z y+1/2 i +x+1/2 -z -y i +x+1/2 z+1/2 y+1/2 i +-x z+1/2 -y i +-z -y x+1/2 i +-z y+1/2 -x i +z+1/2 -y -x i +z+1/2 y+1/2 x+1/2 i diff --git a/data/wyckoff/wyckoff223.txt b/data/wyckoff/wyckoff223.txt new file mode 100644 index 0000000..de3d052 --- /dev/null +++ b/data/wyckoff/wyckoff223.txt @@ -0,0 +1,176 @@ +0 0 0 a +1/2 1/2 1/2 a +0 1/2 1/2 b +1/2 0 1/2 b +1/2 1/2 0 b +0 1/2 0 b +1/2 0 0 b +0 0 1/2 b +1/4 0 1/2 c +3/4 0 1/2 c +1/2 1/4 0 c +1/2 3/4 0 c +0 1/2 1/4 c +0 1/2 3/4 c +1/4 1/2 0 d +3/4 1/2 0 d +0 1/4 1/2 d +0 3/4 1/2 d +1/2 0 1/4 d +1/2 0 3/4 d +1/4 1/4 1/4 e +3/4 3/4 1/4 e +3/4 1/4 3/4 e +1/4 3/4 3/4 e +3/4 3/4 3/4 e +1/4 1/4 3/4 e +1/4 3/4 1/4 e +3/4 1/4 1/4 e +x 0 0 f +-x 0 0 f +0 x 0 f +0 -x 0 f +0 0 x f +0 0 -x f +1/2 x+1/2 1/2 f +1/2 -x+1/2 1/2 f +x+1/2 1/2 1/2 f +-x+1/2 1/2 1/2 f +1/2 1/2 -x+1/2 f +1/2 1/2 x+1/2 f +x 0 1/2 g +-x 0 1/2 g +1/2 x 0 g +1/2 -x 0 g +0 1/2 x g +0 1/2 -x g +1/2 x+1/2 0 g +1/2 -x+1/2 0 g +x+1/2 0 1/2 g +-x+1/2 0 1/2 g +0 1/2 -x+1/2 g +0 1/2 x+1/2 g +x 1/2 0 h +-x 1/2 0 h +0 x 1/2 h +0 -x 1/2 h +1/2 0 x h +1/2 0 -x h +0 x+1/2 1/2 h +0 -x+1/2 1/2 h +x+1/2 1/2 0 h +-x+1/2 1/2 0 h +1/2 0 -x+1/2 h +1/2 0 x+1/2 h +x x x i +-x -x x i +-x x -x i +x -x -x i +x+1/2 x+1/2 -x+1/2 i +-x+1/2 -x+1/2 -x+1/2 i +x+1/2 -x+1/2 x+1/2 i +-x+1/2 x+1/2 x+1/2 i +-x -x -x i +x x -x i +x -x x i +-x x x i +-x+1/2 -x+1/2 x+1/2 i +x+1/2 x+1/2 x+1/2 i +-x+1/2 x+1/2 -x+1/2 i +x+1/2 -x+1/2 -x+1/2 i +1/4 y y+1/2 j +3/4 -y y+1/2 j +3/4 y -y+1/2 j +1/4 -y -y+1/2 j +y+1/2 1/4 y j +y+1/2 3/4 -y j +-y+1/2 3/4 y j +-y+1/2 1/4 -y j +y y+1/2 1/4 j +-y y+1/2 3/4 j +y -y+1/2 3/4 j +-y -y+1/2 1/4 j +3/4 -y -y+1/2 j +1/4 y -y+1/2 j +1/4 -y y+1/2 j +3/4 y y+1/2 j +-y+1/2 3/4 -y j +-y+1/2 1/4 y j +y+1/2 1/4 -y j +y+1/2 3/4 y j +-y -y+1/2 3/4 j +y -y+1/2 1/4 j +-y y+1/2 1/4 j +y y+1/2 3/4 j +0 y z k +0 -y z k +0 y -z k +0 -y -z k +z 0 y k +z 0 -y k +-z 0 y k +-z 0 -y k +y z 0 k +-y z 0 k +y -z 0 k +-y -z 0 k +y+1/2 1/2 -z+1/2 k +-y+1/2 1/2 -z+1/2 k +y+1/2 1/2 z+1/2 k +-y+1/2 1/2 z+1/2 k +1/2 z+1/2 -y+1/2 k +1/2 z+1/2 y+1/2 k +1/2 -z+1/2 -y+1/2 k +1/2 -z+1/2 y+1/2 k +z+1/2 y+1/2 1/2 k +z+1/2 -y+1/2 1/2 k +-z+1/2 y+1/2 1/2 k +-z+1/2 -y+1/2 1/2 k +x y z l +-x -y z l +-x y -z l +x -y -z l +z x y l +z -x -y l +-z -x y l +-z x -y l +y z x l +-y z -x l +y -z -x l +-y -z x l +y+1/2 x+1/2 -z+1/2 l +-y+1/2 -x+1/2 -z+1/2 l +y+1/2 -x+1/2 z+1/2 l +-y+1/2 x+1/2 z+1/2 l +x+1/2 z+1/2 -y+1/2 l +-x+1/2 z+1/2 y+1/2 l +-x+1/2 -z+1/2 -y+1/2 l +x+1/2 -z+1/2 y+1/2 l +z+1/2 y+1/2 -x+1/2 l +z+1/2 -y+1/2 x+1/2 l +-z+1/2 y+1/2 x+1/2 l +-z+1/2 -y+1/2 -x+1/2 l +-x -y -z l +x y -z l +x -y z l +-x y z l +-z -x -y l +-z x y l +z x -y l +z -x y l +-y -z -x l +y -z x l +-y z x l +y z -x l +-y+1/2 -x+1/2 z+1/2 l +y+1/2 x+1/2 z+1/2 l +-y+1/2 x+1/2 -z+1/2 l +y+1/2 -x+1/2 -z+1/2 l +-x+1/2 -z+1/2 y+1/2 l +x+1/2 -z+1/2 -y+1/2 l +x+1/2 z+1/2 y+1/2 l +-x+1/2 z+1/2 -y+1/2 l +-z+1/2 -y+1/2 x+1/2 l +-z+1/2 y+1/2 -x+1/2 l +z+1/2 -y+1/2 -x+1/2 l +z+1/2 y+1/2 x+1/2 l diff --git a/data/wyckoff/wyckoff224.txt b/data/wyckoff/wyckoff224.txt new file mode 100644 index 0000000..c23331e --- /dev/null +++ b/data/wyckoff/wyckoff224.txt @@ -0,0 +1,192 @@ +0 0 0 a +1/2 1/2 1/2 a +1/4 1/4 1/4 b +3/4 3/4 1/4 b +3/4 1/4 3/4 b +1/4 3/4 3/4 b +3/4 3/4 3/4 c +1/4 1/4 3/4 c +1/4 3/4 1/4 c +3/4 1/4 1/4 c +0 1/2 1/2 d +1/2 0 1/2 d +1/2 1/2 0 d +0 1/2 0 d +1/2 0 0 d +0 0 1/2 d +x x x e +-x -x x e +-x x -x e +x -x -x e +x+1/2 x+1/2 -x+1/2 e +-x+1/2 -x+1/2 -x+1/2 e +x+1/2 -x+1/2 x+1/2 e +-x+1/2 x+1/2 x+1/2 e +1/4 0 1/2 f +3/4 0 1/2 f +1/2 1/4 0 f +1/2 3/4 0 f +0 1/2 1/4 f +0 1/2 3/4 f +1/4 1/2 0 f +3/4 1/2 0 f +0 1/4 1/2 f +0 3/4 1/2 f +1/2 0 1/4 f +1/2 0 3/4 f +x 0 0 g +-x 0 0 g +0 x 0 g +0 -x 0 g +0 0 x g +0 0 -x g +1/2 x+1/2 1/2 g +1/2 -x+1/2 1/2 g +x+1/2 1/2 1/2 g +-x+1/2 1/2 1/2 g +1/2 1/2 -x+1/2 g +1/2 1/2 x+1/2 g +x 0 1/2 h +-x 0 1/2 h +1/2 x 0 h +1/2 -x 0 h +0 1/2 x h +0 1/2 -x h +1/2 x+1/2 0 h +1/2 -x+1/2 0 h +x+1/2 0 1/2 h +-x+1/2 0 1/2 h +0 1/2 -x+1/2 h +0 1/2 x+1/2 h +-x+1/2 1/2 0 h +x+1/2 1/2 0 h +0 -x+1/2 1/2 h +0 x+1/2 1/2 h +1/2 0 -x+1/2 h +1/2 0 x+1/2 h +0 -x 1/2 h +0 x 1/2 h +-x 1/2 0 h +x 1/2 0 h +1/2 0 x h +1/2 0 -x h +1/4 y -y+1/2 i +3/4 -y -y+1/2 i +3/4 y y+1/2 i +1/4 -y y+1/2 i +-y+1/2 1/4 y i +-y+1/2 3/4 -y i +y+1/2 3/4 y i +y+1/2 1/4 -y i +y -y+1/2 1/4 i +-y -y+1/2 3/4 i +y y+1/2 3/4 i +-y y+1/2 1/4 i +1/4 -y+1/2 y i +3/4 y+1/2 y i +3/4 -y+1/2 -y i +1/4 y+1/2 -y i +y 1/4 -y+1/2 i +y 3/4 y+1/2 i +-y 3/4 -y+1/2 i +-y 1/4 y+1/2 i +-y+1/2 y 1/4 i +y+1/2 y 3/4 i +-y+1/2 -y 3/4 i +y+1/2 -y 1/4 i +1/4 y y+1/2 j +3/4 -y y+1/2 j +3/4 y -y+1/2 j +1/4 -y -y+1/2 j +y+1/2 1/4 y j +y+1/2 3/4 -y j +-y+1/2 3/4 y j +-y+1/2 1/4 -y j +y y+1/2 1/4 j +-y y+1/2 3/4 j +y -y+1/2 3/4 j +-y -y+1/2 1/4 j +1/4 -y+1/2 -y j +3/4 y+1/2 -y j +3/4 -y+1/2 y j +1/4 y+1/2 y j +-y 1/4 -y+1/2 j +-y 3/4 y+1/2 j +y 3/4 -y+1/2 j +y 1/4 y+1/2 j +-y+1/2 -y 1/4 j +y+1/2 -y 3/4 j +-y+1/2 y 3/4 j +y+1/2 y 1/4 j +x x z k +-x -x z k +-x x -z k +x -x -z k +z x x k +z -x -x k +-z -x x k +-z x -x k +x z x k +-x z -x k +x -z -x k +-x -z x k +x+1/2 x+1/2 -z+1/2 k +-x+1/2 -x+1/2 -z+1/2 k +x+1/2 -x+1/2 z+1/2 k +-x+1/2 x+1/2 z+1/2 k +x+1/2 z+1/2 -x+1/2 k +-x+1/2 z+1/2 x+1/2 k +-x+1/2 -z+1/2 -x+1/2 k +x+1/2 -z+1/2 x+1/2 k +z+1/2 x+1/2 -x+1/2 k +z+1/2 -x+1/2 x+1/2 k +-z+1/2 x+1/2 x+1/2 k +-z+1/2 -x+1/2 -x+1/2 k +x y z l +-x -y z l +-x y -z l +x -y -z l +z x y l +z -x -y l +-z -x y l +-z x -y l +y z x l +-y z -x l +y -z -x l +-y -z x l +y+1/2 x+1/2 -z+1/2 l +-y+1/2 -x+1/2 -z+1/2 l +y+1/2 -x+1/2 z+1/2 l +-y+1/2 x+1/2 z+1/2 l +x+1/2 z+1/2 -y+1/2 l +-x+1/2 z+1/2 y+1/2 l +-x+1/2 -z+1/2 -y+1/2 l +x+1/2 -z+1/2 y+1/2 l +z+1/2 y+1/2 -x+1/2 l +z+1/2 -y+1/2 x+1/2 l +-z+1/2 y+1/2 x+1/2 l +-z+1/2 -y+1/2 -x+1/2 l +-x+1/2 -y+1/2 -z+1/2 l +x+1/2 y+1/2 -z+1/2 l +x+1/2 -y+1/2 z+1/2 l +-x+1/2 y+1/2 z+1/2 l +-z+1/2 -x+1/2 -y+1/2 l +-z+1/2 x+1/2 y+1/2 l +z+1/2 x+1/2 -y+1/2 l +z+1/2 -x+1/2 y+1/2 l +-y+1/2 -z+1/2 -x+1/2 l +y+1/2 -z+1/2 x+1/2 l +-y+1/2 z+1/2 x+1/2 l +y+1/2 z+1/2 -x+1/2 l +-y -x z l +y x z l +-y x -z l +y -x -z l +-x -z y l +x -z -y l +x z y l +-x z -y l +-z -y x l +-z y -x l +z -y -x l +z y x l diff --git a/data/wyckoff/wyckoff224s1.txt b/data/wyckoff/wyckoff224s1.txt new file mode 100644 index 0000000..c23331e --- /dev/null +++ b/data/wyckoff/wyckoff224s1.txt @@ -0,0 +1,192 @@ +0 0 0 a +1/2 1/2 1/2 a +1/4 1/4 1/4 b +3/4 3/4 1/4 b +3/4 1/4 3/4 b +1/4 3/4 3/4 b +3/4 3/4 3/4 c +1/4 1/4 3/4 c +1/4 3/4 1/4 c +3/4 1/4 1/4 c +0 1/2 1/2 d +1/2 0 1/2 d +1/2 1/2 0 d +0 1/2 0 d +1/2 0 0 d +0 0 1/2 d +x x x e +-x -x x e +-x x -x e +x -x -x e +x+1/2 x+1/2 -x+1/2 e +-x+1/2 -x+1/2 -x+1/2 e +x+1/2 -x+1/2 x+1/2 e +-x+1/2 x+1/2 x+1/2 e +1/4 0 1/2 f +3/4 0 1/2 f +1/2 1/4 0 f +1/2 3/4 0 f +0 1/2 1/4 f +0 1/2 3/4 f +1/4 1/2 0 f +3/4 1/2 0 f +0 1/4 1/2 f +0 3/4 1/2 f +1/2 0 1/4 f +1/2 0 3/4 f +x 0 0 g +-x 0 0 g +0 x 0 g +0 -x 0 g +0 0 x g +0 0 -x g +1/2 x+1/2 1/2 g +1/2 -x+1/2 1/2 g +x+1/2 1/2 1/2 g +-x+1/2 1/2 1/2 g +1/2 1/2 -x+1/2 g +1/2 1/2 x+1/2 g +x 0 1/2 h +-x 0 1/2 h +1/2 x 0 h +1/2 -x 0 h +0 1/2 x h +0 1/2 -x h +1/2 x+1/2 0 h +1/2 -x+1/2 0 h +x+1/2 0 1/2 h +-x+1/2 0 1/2 h +0 1/2 -x+1/2 h +0 1/2 x+1/2 h +-x+1/2 1/2 0 h +x+1/2 1/2 0 h +0 -x+1/2 1/2 h +0 x+1/2 1/2 h +1/2 0 -x+1/2 h +1/2 0 x+1/2 h +0 -x 1/2 h +0 x 1/2 h +-x 1/2 0 h +x 1/2 0 h +1/2 0 x h +1/2 0 -x h +1/4 y -y+1/2 i +3/4 -y -y+1/2 i +3/4 y y+1/2 i +1/4 -y y+1/2 i +-y+1/2 1/4 y i +-y+1/2 3/4 -y i +y+1/2 3/4 y i +y+1/2 1/4 -y i +y -y+1/2 1/4 i +-y -y+1/2 3/4 i +y y+1/2 3/4 i +-y y+1/2 1/4 i +1/4 -y+1/2 y i +3/4 y+1/2 y i +3/4 -y+1/2 -y i +1/4 y+1/2 -y i +y 1/4 -y+1/2 i +y 3/4 y+1/2 i +-y 3/4 -y+1/2 i +-y 1/4 y+1/2 i +-y+1/2 y 1/4 i +y+1/2 y 3/4 i +-y+1/2 -y 3/4 i +y+1/2 -y 1/4 i +1/4 y y+1/2 j +3/4 -y y+1/2 j +3/4 y -y+1/2 j +1/4 -y -y+1/2 j +y+1/2 1/4 y j +y+1/2 3/4 -y j +-y+1/2 3/4 y j +-y+1/2 1/4 -y j +y y+1/2 1/4 j +-y y+1/2 3/4 j +y -y+1/2 3/4 j +-y -y+1/2 1/4 j +1/4 -y+1/2 -y j +3/4 y+1/2 -y j +3/4 -y+1/2 y j +1/4 y+1/2 y j +-y 1/4 -y+1/2 j +-y 3/4 y+1/2 j +y 3/4 -y+1/2 j +y 1/4 y+1/2 j +-y+1/2 -y 1/4 j +y+1/2 -y 3/4 j +-y+1/2 y 3/4 j +y+1/2 y 1/4 j +x x z k +-x -x z k +-x x -z k +x -x -z k +z x x k +z -x -x k +-z -x x k +-z x -x k +x z x k +-x z -x k +x -z -x k +-x -z x k +x+1/2 x+1/2 -z+1/2 k +-x+1/2 -x+1/2 -z+1/2 k +x+1/2 -x+1/2 z+1/2 k +-x+1/2 x+1/2 z+1/2 k +x+1/2 z+1/2 -x+1/2 k +-x+1/2 z+1/2 x+1/2 k +-x+1/2 -z+1/2 -x+1/2 k +x+1/2 -z+1/2 x+1/2 k +z+1/2 x+1/2 -x+1/2 k +z+1/2 -x+1/2 x+1/2 k +-z+1/2 x+1/2 x+1/2 k +-z+1/2 -x+1/2 -x+1/2 k +x y z l +-x -y z l +-x y -z l +x -y -z l +z x y l +z -x -y l +-z -x y l +-z x -y l +y z x l +-y z -x l +y -z -x l +-y -z x l +y+1/2 x+1/2 -z+1/2 l +-y+1/2 -x+1/2 -z+1/2 l +y+1/2 -x+1/2 z+1/2 l +-y+1/2 x+1/2 z+1/2 l +x+1/2 z+1/2 -y+1/2 l +-x+1/2 z+1/2 y+1/2 l +-x+1/2 -z+1/2 -y+1/2 l +x+1/2 -z+1/2 y+1/2 l +z+1/2 y+1/2 -x+1/2 l +z+1/2 -y+1/2 x+1/2 l +-z+1/2 y+1/2 x+1/2 l +-z+1/2 -y+1/2 -x+1/2 l +-x+1/2 -y+1/2 -z+1/2 l +x+1/2 y+1/2 -z+1/2 l +x+1/2 -y+1/2 z+1/2 l +-x+1/2 y+1/2 z+1/2 l +-z+1/2 -x+1/2 -y+1/2 l +-z+1/2 x+1/2 y+1/2 l +z+1/2 x+1/2 -y+1/2 l +z+1/2 -x+1/2 y+1/2 l +-y+1/2 -z+1/2 -x+1/2 l +y+1/2 -z+1/2 x+1/2 l +-y+1/2 z+1/2 x+1/2 l +y+1/2 z+1/2 -x+1/2 l +-y -x z l +y x z l +-y x -z l +y -x -z l +-x -z y l +x -z -y l +x z y l +-x z -y l +-z -y x l +-z y -x l +z -y -x l +z y x l diff --git a/data/wyckoff/wyckoff224s2.txt b/data/wyckoff/wyckoff224s2.txt new file mode 100644 index 0000000..3c1db1d --- /dev/null +++ b/data/wyckoff/wyckoff224s2.txt @@ -0,0 +1,192 @@ +1/4 1/4 1/4 a +3/4 3/4 3/4 a +0 0 0 b +1/2 1/2 0 b +1/2 0 1/2 b +0 1/2 1/2 b +1/2 1/2 1/2 c +0 0 1/2 c +0 1/2 0 c +1/2 0 0 c +1/4 3/4 3/4 d +3/4 1/4 3/4 d +3/4 3/4 1/4 d +1/4 3/4 1/4 d +3/4 1/4 1/4 d +1/4 1/4 3/4 d +x x x e +-x+1/2 -x+1/2 x e +-x+1/2 x -x+1/2 e +x -x+1/2 -x+1/2 e +x+1/2 x+1/2 -x e +-x -x -x e +x+1/2 -x x+1/2 e +-x x+1/2 x+1/2 e +1/2 1/4 3/4 f +0 1/4 3/4 f +3/4 1/2 1/4 f +3/4 0 1/4 f +1/4 3/4 1/2 f +1/4 3/4 0 f +1/2 3/4 1/4 f +0 3/4 1/4 f +1/4 1/2 3/4 f +1/4 0 3/4 f +3/4 1/4 1/2 f +3/4 1/4 0 f +x 1/4 1/4 g +-x+1/2 1/4 1/4 g +1/4 x 1/4 g +1/4 -x+1/2 1/4 g +1/4 1/4 x g +1/4 1/4 -x+1/2 g +3/4 x+1/2 3/4 g +3/4 -x 3/4 g +x+1/2 3/4 3/4 g +-x 3/4 3/4 g +3/4 3/4 -x g +3/4 3/4 x+1/2 g +x 1/4 3/4 h +-x+1/2 1/4 3/4 h +3/4 x 1/4 h +3/4 -x+1/2 1/4 h +1/4 3/4 x h +1/4 3/4 -x+1/2 h +3/4 x+1/2 1/4 h +3/4 -x 1/4 h +x+1/2 1/4 3/4 h +-x 1/4 3/4 h +1/4 3/4 -x h +1/4 3/4 x+1/2 h +-x 3/4 1/4 h +x+1/2 3/4 1/4 h +1/4 -x 3/4 h +1/4 x+1/2 3/4 h +3/4 1/4 -x h +3/4 1/4 x+1/2 h +1/4 -x+1/2 3/4 h +1/4 x 3/4 h +-x+1/2 3/4 1/4 h +x 3/4 1/4 h +3/4 1/4 x h +3/4 1/4 -x+1/2 h +1/2 y y+1/2 i +0 -y+1/2 y+1/2 i +0 y -y i +1/2 -y+1/2 -y i +y+1/2 1/2 y i +y+1/2 0 -y+1/2 i +-y 0 y i +-y 1/2 -y+1/2 i +y y+1/2 1/2 i +-y+1/2 y+1/2 0 i +y -y 0 i +-y+1/2 -y 1/2 i +1/2 -y -y+1/2 i +0 y+1/2 -y+1/2 i +0 -y y i +1/2 y+1/2 y i +-y+1/2 1/2 -y i +-y+1/2 0 y+1/2 i +y 0 -y i +y 1/2 y+1/2 i +-y -y+1/2 1/2 i +y+1/2 -y+1/2 0 i +-y y 0 i +y+1/2 y 1/2 i +1/2 y -y j +0 -y+1/2 -y j +0 y y+1/2 j +1/2 -y+1/2 y+1/2 j +-y 1/2 y j +-y 0 -y+1/2 j +y+1/2 0 y j +y+1/2 1/2 -y+1/2 j +y -y 1/2 j +-y+1/2 -y 0 j +y y+1/2 0 j +-y+1/2 y+1/2 1/2 j +1/2 -y y j +0 y+1/2 y j +0 -y -y+1/2 j +1/2 y+1/2 -y+1/2 j +y 1/2 -y j +y 0 y+1/2 j +-y+1/2 0 -y j +-y+1/2 1/2 y+1/2 j +-y y 1/2 j +y+1/2 y 0 j +-y -y+1/2 0 j +y+1/2 -y+1/2 1/2 j +x x z k +-x+1/2 -x+1/2 z k +-x+1/2 x -z+1/2 k +x -x+1/2 -z+1/2 k +z x x k +z -x+1/2 -x+1/2 k +-z+1/2 -x+1/2 x k +-z+1/2 x -x+1/2 k +x z x k +-x+1/2 z -x+1/2 k +x -z+1/2 -x+1/2 k +-x+1/2 -z+1/2 x k +x+1/2 x+1/2 -z k +-x -x -z k +x+1/2 -x z+1/2 k +-x x+1/2 z+1/2 k +x+1/2 z+1/2 -x k +-x z+1/2 x+1/2 k +-x -z -x k +x+1/2 -z x+1/2 k +z+1/2 x+1/2 -x k +z+1/2 -x x+1/2 k +-z x+1/2 x+1/2 k +-z -x -x k +x y z l +-x+1/2 -y+1/2 z l +-x+1/2 y -z+1/2 l +x -y+1/2 -z+1/2 l +z x y l +z -x+1/2 -y+1/2 l +-z+1/2 -x+1/2 y l +-z+1/2 x -y+1/2 l +y z x l +-y+1/2 z -x+1/2 l +y -z+1/2 -x+1/2 l +-y+1/2 -z+1/2 x l +y+1/2 x+1/2 -z l +-y -x -z l +y+1/2 -x z+1/2 l +-y x+1/2 z+1/2 l +x+1/2 z+1/2 -y l +-x z+1/2 y+1/2 l +-x -z -y l +x+1/2 -z y+1/2 l +z+1/2 y+1/2 -x l +z+1/2 -y x+1/2 l +-z y+1/2 x+1/2 l +-z -y -x l +-x -y -z l +x+1/2 y+1/2 -z l +x+1/2 -y z+1/2 l +-x y+1/2 z+1/2 l +-z -x -y l +-z x+1/2 y+1/2 l +z+1/2 x+1/2 -y l +z+1/2 -x y+1/2 l +-y -z -x l +y+1/2 -z x+1/2 l +-y z+1/2 x+1/2 l +y+1/2 z+1/2 -x l +-y+1/2 -x+1/2 z l +y x z l +-y+1/2 x -z+1/2 l +y -x+1/2 -z+1/2 l +-x+1/2 -z+1/2 y l +x -z+1/2 -y+1/2 l +x z y l +-x+1/2 z -y+1/2 l +-z+1/2 -y+1/2 x l +-z+1/2 y -x+1/2 l +z -y+1/2 -x+1/2 l +z y x l diff --git a/data/wyckoff/wyckoff225.txt b/data/wyckoff/wyckoff225.txt new file mode 100644 index 0000000..d99398a --- /dev/null +++ b/data/wyckoff/wyckoff225.txt @@ -0,0 +1,156 @@ +0 0 0 a +1/2 1/2 1/2 b +1/4 1/4 1/4 c +1/4 1/4 3/4 c +0 1/4 1/4 d +0 3/4 1/4 d +1/4 0 1/4 d +1/4 0 3/4 d +1/4 1/4 0 d +3/4 1/4 0 d +x 0 0 e +-x 0 0 e +0 x 0 e +0 -x 0 e +0 0 x e +0 0 -x e +x x x f +-x -x x f +-x x -x f +x -x -x f +x x -x f +-x -x -x f +x -x x f +-x x x f +x 1/4 1/4 g +-x 3/4 1/4 g +1/4 x 1/4 g +1/4 -x 3/4 g +1/4 1/4 x g +3/4 1/4 -x g +1/4 x 3/4 g +3/4 -x 3/4 g +x 1/4 3/4 g +-x 1/4 1/4 g +1/4 1/4 -x g +1/4 3/4 x g +0 y y h +0 -y y h +0 y -y h +0 -y -y h +y 0 y h +y 0 -y h +-y 0 y h +-y 0 -y h +y y 0 h +-y y 0 h +y -y 0 h +-y -y 0 h +1/2 y y i +1/2 -y y i +1/2 y -y i +1/2 -y -y i +y 1/2 y i +y 1/2 -y i +-y 1/2 y i +-y 1/2 -y i +y y 1/2 i +-y y 1/2 i +y -y 1/2 i +-y -y 1/2 i +0 y z j +0 -y z j +0 y -z j +0 -y -z j +z 0 y j +z 0 -y j +-z 0 y j +-z 0 -y j +y z 0 j +-y z 0 j +y -z 0 j +-y -z 0 j +y 0 -z j +-y 0 -z j +y 0 z j +-y 0 z j +0 z -y j +0 z y j +0 -z -y j +0 -z y j +z y 0 j +z -y 0 j +-z y 0 j +-z -y 0 j +x x z k +-x -x z k +-x x -z k +x -x -z k +z x x k +z -x -x k +-z -x x k +-z x -x k +x z x k +-x z -x k +x -z -x k +-x -z x k +x x -z k +-x -x -z k +x -x z k +-x x z k +x z -x k +-x z x k +-x -z -x k +x -z x k +z x -x k +z -x x k +-z x x k +-z -x -x k +x y z l +-x -y z l +-x y -z l +x -y -z l +z x y l +z -x -y l +-z -x y l +-z x -y l +y z x l +-y z -x l +y -z -x l +-y -z x l +y x -z l +-y -x -z l +y -x z l +-y x z l +x z -y l +-x z y l +-x -z -y l +x -z y l +z y -x l +z -y x l +-z y x l +-z -y -x l +-x -y -z l +x y -z l +x -y z l +-x y z l +-z -x -y l +-z x y l +z x -y l +z -x y l +-y -z -x l +y -z x l +-y z x l +y z -x l +-y -x z l +y x z l +-y x -z l +y -x -z l +-x -z y l +x -z -y l +x z y l +-x z -y l +-z -y x l +-z y -x l +z -y -x l +z y x l diff --git a/data/wyckoff/wyckoff226.txt b/data/wyckoff/wyckoff226.txt new file mode 100644 index 0000000..f5ae91c --- /dev/null +++ b/data/wyckoff/wyckoff226.txt @@ -0,0 +1,152 @@ +1/4 1/4 1/4 a +3/4 3/4 3/4 a +0 0 0 b +1/2 1/2 1/2 b +1/4 0 0 c +3/4 0 0 c +0 1/4 0 c +0 3/4 0 c +0 0 1/4 c +0 0 3/4 c +0 1/4 1/4 d +0 3/4 1/4 d +1/4 0 1/4 d +1/4 0 3/4 d +1/4 1/4 0 d +3/4 1/4 0 d +x 0 0 e +-x 0 0 e +0 x 0 e +0 -x 0 e +0 0 x e +0 0 -x e +1/2 x+1/2 1/2 e +1/2 -x+1/2 1/2 e +x+1/2 1/2 1/2 e +-x+1/2 1/2 1/2 e +1/2 1/2 -x+1/2 e +1/2 1/2 x+1/2 e +x 1/4 1/4 f +-x 3/4 1/4 f +1/4 x 1/4 f +1/4 -x 3/4 f +1/4 1/4 x f +3/4 1/4 -x f +-x 3/4 3/4 f +x 1/4 3/4 f +3/4 -x 3/4 f +3/4 x 1/4 f +3/4 3/4 -x f +1/4 3/4 x f +x x x g +-x -x x g +-x x -x g +x -x -x g +x+1/2 x+1/2 -x+1/2 g +-x+1/2 -x+1/2 -x+1/2 g +x+1/2 -x+1/2 x+1/2 g +-x+1/2 x+1/2 x+1/2 g +-x -x -x g +x x -x g +x -x x g +-x x x g +-x+1/2 -x+1/2 x+1/2 g +x+1/2 x+1/2 x+1/2 g +-x+1/2 x+1/2 -x+1/2 g +x+1/2 -x+1/2 -x+1/2 g +1/4 y y h +3/4 -y y h +3/4 y -y h +1/4 -y -y h +y 1/4 y h +y 3/4 -y h +-y 3/4 y h +-y 1/4 -y h +y y 1/4 h +-y y 3/4 h +y -y 3/4 h +-y -y 1/4 h +3/4 -y -y h +1/4 y -y h +1/4 -y y h +3/4 y y h +-y 3/4 -y h +-y 1/4 y h +y 1/4 -y h +y 3/4 y h +-y -y 3/4 h +y -y 1/4 h +-y y 1/4 h +y y 3/4 h +0 y z i +0 -y z i +0 y -z i +0 -y -z i +z 0 y i +z 0 -y i +-z 0 y i +-z 0 -y i +y z 0 i +-y z 0 i +y -z 0 i +-y -z 0 i +y+1/2 1/2 -z+1/2 i +-y+1/2 1/2 -z+1/2 i +y+1/2 1/2 z+1/2 i +-y+1/2 1/2 z+1/2 i +1/2 z+1/2 -y+1/2 i +1/2 z+1/2 y+1/2 i +1/2 -z+1/2 -y+1/2 i +1/2 -z+1/2 y+1/2 i +z+1/2 y+1/2 1/2 i +z+1/2 -y+1/2 1/2 i +-z+1/2 y+1/2 1/2 i +-z+1/2 -y+1/2 1/2 i +x y z j +-x -y z j +-x y -z j +x -y -z j +z x y j +z -x -y j +-z -x y j +-z x -y j +y z x j +-y z -x j +y -z -x j +-y -z x j +y+1/2 x+1/2 -z+1/2 j +-y+1/2 -x+1/2 -z+1/2 j +y+1/2 -x+1/2 z+1/2 j +-y+1/2 x+1/2 z+1/2 j +x+1/2 z+1/2 -y+1/2 j +-x+1/2 z+1/2 y+1/2 j +-x+1/2 -z+1/2 -y+1/2 j +x+1/2 -z+1/2 y+1/2 j +z+1/2 y+1/2 -x+1/2 j +z+1/2 -y+1/2 x+1/2 j +-z+1/2 y+1/2 x+1/2 j +-z+1/2 -y+1/2 -x+1/2 j +-x -y -z j +x y -z j +x -y z j +-x y z j +-z -x -y j +-z x y j +z x -y j +z -x y j +-y -z -x j +y -z x j +-y z x j +y z -x j +-y+1/2 -x+1/2 z+1/2 j +y+1/2 x+1/2 z+1/2 j +-y+1/2 x+1/2 -z+1/2 j +y+1/2 -x+1/2 -z+1/2 j +-x+1/2 -z+1/2 y+1/2 j +x+1/2 -z+1/2 -y+1/2 j +x+1/2 z+1/2 y+1/2 j +-x+1/2 z+1/2 -y+1/2 j +-z+1/2 -y+1/2 x+1/2 j +-z+1/2 y+1/2 -x+1/2 j +z+1/2 -y+1/2 -x+1/2 j +z+1/2 y+1/2 x+1/2 j diff --git a/data/wyckoff/wyckoff227.txt b/data/wyckoff/wyckoff227.txt new file mode 100644 index 0000000..4af051b --- /dev/null +++ b/data/wyckoff/wyckoff227.txt @@ -0,0 +1,128 @@ +0 0 0 a +3/4 1/4 3/4 a +1/2 1/2 1/2 b +1/4 3/4 1/4 b +1/8 1/8 1/8 c +7/8 3/8 5/8 c +3/8 5/8 7/8 c +5/8 7/8 3/8 c +5/8 5/8 5/8 d +3/8 7/8 1/8 d +7/8 1/8 3/8 d +1/8 3/8 7/8 d +x x x e +-x -x+1/2 x+1/2 e +-x+1/2 x+1/2 -x e +x+1/2 -x -x+1/2 e +x+3/4 x+1/4 -x+3/4 e +-x+1/4 -x+1/4 -x+1/4 e +x+1/4 -x+3/4 x+3/4 e +-x+3/4 x+3/4 x+1/4 e +x 0 0 f +-x 1/2 1/2 f +0 x 0 f +1/2 -x 1/2 f +0 0 x f +1/2 1/2 -x f +3/4 x+1/4 3/4 f +1/4 -x+1/4 1/4 f +x+3/4 1/4 3/4 f +-x+3/4 3/4 1/4 f +3/4 1/4 -x+3/4 f +1/4 3/4 x+3/4 f +x x z g +-x -x+1/2 z+1/2 g +-x+1/2 x+1/2 -z g +x+1/2 -x -z+1/2 g +z x x g +z+1/2 -x -x+1/2 g +-z -x+1/2 x+1/2 g +-z+1/2 x+1/2 -x g +x z x g +-x+1/2 z+1/2 -x g +x+1/2 -z -x+1/2 g +-x -z+1/2 x+1/2 g +x+3/4 x+1/4 -z+3/4 g +-x+1/4 -x+1/4 -z+1/4 g +x+1/4 -x+3/4 z+3/4 g +-x+3/4 x+3/4 z+1/4 g +x+3/4 z+1/4 -x+3/4 g +-x+3/4 z+3/4 x+1/4 g +-x+1/4 -z+1/4 -x+1/4 g +x+1/4 -z+3/4 x+3/4 g +z+3/4 x+1/4 -x+3/4 g +z+1/4 -x+3/4 x+3/4 g +-z+3/4 x+3/4 x+1/4 g +-z+1/4 -x+1/4 -x+1/4 g +1/8 y -y+1/4 h +7/8 -y+1/2 -y+3/4 h +3/8 y+1/2 y+3/4 h +5/8 -y y+1/4 h +-y+1/4 1/8 y h +-y+3/4 7/8 -y+1/2 h +y+3/4 3/8 y+1/2 h +y+1/4 5/8 -y h +y -y+1/4 1/8 h +-y+1/2 -y+3/4 7/8 h +y+1/2 y+3/4 3/8 h +-y y+1/4 5/8 h +1/8 -y+1/4 y h +3/8 y+3/4 y+1/2 h +7/8 -y+3/4 -y+1/2 h +5/8 y+1/4 -y h +y 1/8 -y+1/4 h +y+1/2 3/8 y+3/4 h +-y+1/2 7/8 -y+3/4 h +-y 5/8 y+1/4 h +-y+1/4 y 1/8 h +y+3/4 y+1/2 3/8 h +-y+3/4 -y+1/2 7/8 h +y+1/4 -y 5/8 h +x y z i +-x -y+1/2 z+1/2 i +-x+1/2 y+1/2 -z i +x+1/2 -y -z+1/2 i +z x y i +z+1/2 -x -y+1/2 i +-z -x+1/2 y+1/2 i +-z+1/2 x+1/2 -y i +y z x i +-y+1/2 z+1/2 -x i +y+1/2 -z -x+1/2 i +-y -z+1/2 x+1/2 i +y+3/4 x+1/4 -z+3/4 i +-y+1/4 -x+1/4 -z+1/4 i +y+1/4 -x+3/4 z+3/4 i +-y+3/4 x+3/4 z+1/4 i +x+3/4 z+1/4 -y+3/4 i +-x+3/4 z+3/4 y+1/4 i +-x+1/4 -z+1/4 -y+1/4 i +x+1/4 -z+3/4 y+3/4 i +z+3/4 y+1/4 -x+3/4 i +z+1/4 -y+3/4 x+3/4 i +-z+3/4 y+3/4 x+1/4 i +-z+1/4 -y+1/4 -x+1/4 i +-x+1/4 -y+1/4 -z+1/4 i +x+1/4 y+3/4 -z+3/4 i +x+3/4 -y+3/4 z+1/4 i +-x+3/4 y+1/4 z+3/4 i +-z+1/4 -x+1/4 -y+1/4 i +-z+3/4 x+1/4 y+3/4 i +z+1/4 x+3/4 -y+3/4 i +z+3/4 -x+3/4 y+1/4 i +-y+1/4 -z+1/4 -x+1/4 i +y+3/4 -z+3/4 x+1/4 i +-y+3/4 z+1/4 x+3/4 i +y+1/4 z+3/4 -x+3/4 i +-y+1/2 -x z+1/2 i +y x z i +-y x+1/2 -z+1/2 i +y+1/2 -x+1/2 -z i +-x+1/2 -z y+1/2 i +x+1/2 -z+1/2 -y i +x z y i +-x z+1/2 -y+1/2 i +-z+1/2 -y x+1/2 i +-z y+1/2 -x+1/2 i +z+1/2 -y+1/2 -x i +z y x i diff --git a/data/wyckoff/wyckoff227s1.txt b/data/wyckoff/wyckoff227s1.txt new file mode 100644 index 0000000..4af051b --- /dev/null +++ b/data/wyckoff/wyckoff227s1.txt @@ -0,0 +1,128 @@ +0 0 0 a +3/4 1/4 3/4 a +1/2 1/2 1/2 b +1/4 3/4 1/4 b +1/8 1/8 1/8 c +7/8 3/8 5/8 c +3/8 5/8 7/8 c +5/8 7/8 3/8 c +5/8 5/8 5/8 d +3/8 7/8 1/8 d +7/8 1/8 3/8 d +1/8 3/8 7/8 d +x x x e +-x -x+1/2 x+1/2 e +-x+1/2 x+1/2 -x e +x+1/2 -x -x+1/2 e +x+3/4 x+1/4 -x+3/4 e +-x+1/4 -x+1/4 -x+1/4 e +x+1/4 -x+3/4 x+3/4 e +-x+3/4 x+3/4 x+1/4 e +x 0 0 f +-x 1/2 1/2 f +0 x 0 f +1/2 -x 1/2 f +0 0 x f +1/2 1/2 -x f +3/4 x+1/4 3/4 f +1/4 -x+1/4 1/4 f +x+3/4 1/4 3/4 f +-x+3/4 3/4 1/4 f +3/4 1/4 -x+3/4 f +1/4 3/4 x+3/4 f +x x z g +-x -x+1/2 z+1/2 g +-x+1/2 x+1/2 -z g +x+1/2 -x -z+1/2 g +z x x g +z+1/2 -x -x+1/2 g +-z -x+1/2 x+1/2 g +-z+1/2 x+1/2 -x g +x z x g +-x+1/2 z+1/2 -x g +x+1/2 -z -x+1/2 g +-x -z+1/2 x+1/2 g +x+3/4 x+1/4 -z+3/4 g +-x+1/4 -x+1/4 -z+1/4 g +x+1/4 -x+3/4 z+3/4 g +-x+3/4 x+3/4 z+1/4 g +x+3/4 z+1/4 -x+3/4 g +-x+3/4 z+3/4 x+1/4 g +-x+1/4 -z+1/4 -x+1/4 g +x+1/4 -z+3/4 x+3/4 g +z+3/4 x+1/4 -x+3/4 g +z+1/4 -x+3/4 x+3/4 g +-z+3/4 x+3/4 x+1/4 g +-z+1/4 -x+1/4 -x+1/4 g +1/8 y -y+1/4 h +7/8 -y+1/2 -y+3/4 h +3/8 y+1/2 y+3/4 h +5/8 -y y+1/4 h +-y+1/4 1/8 y h +-y+3/4 7/8 -y+1/2 h +y+3/4 3/8 y+1/2 h +y+1/4 5/8 -y h +y -y+1/4 1/8 h +-y+1/2 -y+3/4 7/8 h +y+1/2 y+3/4 3/8 h +-y y+1/4 5/8 h +1/8 -y+1/4 y h +3/8 y+3/4 y+1/2 h +7/8 -y+3/4 -y+1/2 h +5/8 y+1/4 -y h +y 1/8 -y+1/4 h +y+1/2 3/8 y+3/4 h +-y+1/2 7/8 -y+3/4 h +-y 5/8 y+1/4 h +-y+1/4 y 1/8 h +y+3/4 y+1/2 3/8 h +-y+3/4 -y+1/2 7/8 h +y+1/4 -y 5/8 h +x y z i +-x -y+1/2 z+1/2 i +-x+1/2 y+1/2 -z i +x+1/2 -y -z+1/2 i +z x y i +z+1/2 -x -y+1/2 i +-z -x+1/2 y+1/2 i +-z+1/2 x+1/2 -y i +y z x i +-y+1/2 z+1/2 -x i +y+1/2 -z -x+1/2 i +-y -z+1/2 x+1/2 i +y+3/4 x+1/4 -z+3/4 i +-y+1/4 -x+1/4 -z+1/4 i +y+1/4 -x+3/4 z+3/4 i +-y+3/4 x+3/4 z+1/4 i +x+3/4 z+1/4 -y+3/4 i +-x+3/4 z+3/4 y+1/4 i +-x+1/4 -z+1/4 -y+1/4 i +x+1/4 -z+3/4 y+3/4 i +z+3/4 y+1/4 -x+3/4 i +z+1/4 -y+3/4 x+3/4 i +-z+3/4 y+3/4 x+1/4 i +-z+1/4 -y+1/4 -x+1/4 i +-x+1/4 -y+1/4 -z+1/4 i +x+1/4 y+3/4 -z+3/4 i +x+3/4 -y+3/4 z+1/4 i +-x+3/4 y+1/4 z+3/4 i +-z+1/4 -x+1/4 -y+1/4 i +-z+3/4 x+1/4 y+3/4 i +z+1/4 x+3/4 -y+3/4 i +z+3/4 -x+3/4 y+1/4 i +-y+1/4 -z+1/4 -x+1/4 i +y+3/4 -z+3/4 x+1/4 i +-y+3/4 z+1/4 x+3/4 i +y+1/4 z+3/4 -x+3/4 i +-y+1/2 -x z+1/2 i +y x z i +-y x+1/2 -z+1/2 i +y+1/2 -x+1/2 -z i +-x+1/2 -z y+1/2 i +x+1/2 -z+1/2 -y i +x z y i +-x z+1/2 -y+1/2 i +-z+1/2 -y x+1/2 i +-z y+1/2 -x+1/2 i +z+1/2 -y+1/2 -x i +z y x i diff --git a/data/wyckoff/wyckoff227s2.txt b/data/wyckoff/wyckoff227s2.txt new file mode 100644 index 0000000..6213389 --- /dev/null +++ b/data/wyckoff/wyckoff227s2.txt @@ -0,0 +1,128 @@ +1/8 1/8 1/8 a +7/8 3/8 3/8 a +3/8 3/8 3/8 b +1/8 5/8 1/8 b +0 0 0 c +3/4 1/4 1/2 c +1/4 1/2 3/4 c +1/2 3/4 1/4 c +1/2 1/2 1/2 d +1/4 3/4 0 d +3/4 0 1/4 d +0 1/4 3/4 d +x x x e +-x+3/4 -x+1/4 x+1/2 e +-x+1/4 x+1/2 -x+3/4 e +x+1/2 -x+3/4 -x+1/4 e +x+3/4 x+1/4 -x+1/2 e +-x -x -x e +x+1/4 -x+1/2 x+3/4 e +-x+1/2 x+3/4 x+1/4 e +x 1/8 1/8 f +-x+3/4 1/8 5/8 f +1/8 x 1/8 f +5/8 -x+3/4 1/8 f +1/8 1/8 x f +1/8 5/8 -x+3/4 f +7/8 x+1/4 3/8 f +7/8 -x 7/8 f +x+3/4 3/8 3/8 f +-x+1/2 7/8 3/8 f +7/8 3/8 -x+1/2 f +3/8 3/8 x+3/4 f +x x z g +-x+3/4 -x+1/4 z+1/2 g +-x+1/4 x+1/2 -z+3/4 g +x+1/2 -x+3/4 -z+1/4 g +z x x g +z+1/2 -x+3/4 -x+1/4 g +-z+3/4 -x+1/4 x+1/2 g +-z+1/4 x+1/2 -x+3/4 g +x z x g +-x+1/4 z+1/2 -x+3/4 g +x+1/2 -z+3/4 -x+1/4 g +-x+3/4 -z+1/4 x+1/2 g +x+3/4 x+1/4 -z+1/2 g +-x -x -z g +x+1/4 -x+1/2 z+3/4 g +-x+1/2 x+3/4 z+1/4 g +x+3/4 z+1/4 -x+1/2 g +-x+1/2 z+3/4 x+1/4 g +-x -z -x g +x+1/4 -z+1/2 x+3/4 g +z+3/4 x+1/4 -x+1/2 g +z+1/4 -x+1/2 x+3/4 g +-z+1/2 x+3/4 x+1/4 g +-z -x -x g +0 y -y h +3/4 -y+1/4 -y+1/2 h +1/4 y+1/2 y+3/4 h +1/2 -y+3/4 y+1/4 h +-y 0 y h +-y+1/2 3/4 -y+1/4 h +y+3/4 1/4 y+1/2 h +y+1/4 1/2 -y+3/4 h +y -y 0 h +-y+1/4 -y+1/2 3/4 h +y+1/2 y+3/4 1/4 h +-y+3/4 y+1/4 1/2 h +0 -y y h +1/4 y+3/4 y+1/2 h +3/4 -y+1/2 -y+1/4 h +1/2 y+1/4 -y+3/4 h +y 0 -y h +y+1/2 1/4 y+3/4 h +-y+1/4 3/4 -y+1/2 h +-y+3/4 1/2 y+1/4 h +-y y 0 h +y+3/4 y+1/2 1/4 h +-y+1/2 -y+1/4 3/4 h +y+1/4 -y+3/4 1/2 h +x y z i +-x+3/4 -y+1/4 z+1/2 i +-x+1/4 y+1/2 -z+3/4 i +x+1/2 -y+3/4 -z+1/4 i +z x y i +z+1/2 -x+3/4 -y+1/4 i +-z+3/4 -x+1/4 y+1/2 i +-z+1/4 x+1/2 -y+3/4 i +y z x i +-y+1/4 z+1/2 -x+3/4 i +y+1/2 -z+3/4 -x+1/4 i +-y+3/4 -z+1/4 x+1/2 i +y+3/4 x+1/4 -z+1/2 i +-y -x -z i +y+1/4 -x+1/2 z+3/4 i +-y+1/2 x+3/4 z+1/4 i +x+3/4 z+1/4 -y+1/2 i +-x+1/2 z+3/4 y+1/4 i +-x -z -y i +x+1/4 -z+1/2 y+3/4 i +z+3/4 y+1/4 -x+1/2 i +z+1/4 -y+1/2 x+3/4 i +-z+1/2 y+3/4 x+1/4 i +-z -y -x i +-x -y -z i +x+1/4 y+3/4 -z+1/2 i +x+3/4 -y+1/2 z+1/4 i +-x+1/2 y+1/4 z+3/4 i +-z -x -y i +-z+1/2 x+1/4 y+3/4 i +z+1/4 x+3/4 -y+1/2 i +z+3/4 -x+1/2 y+1/4 i +-y -z -x i +y+3/4 -z+1/2 x+1/4 i +-y+1/2 z+1/4 x+3/4 i +y+1/4 z+3/4 -x+1/2 i +-y+1/4 -x+3/4 z+1/2 i +y x z i +-y+3/4 x+1/2 -z+1/4 i +y+1/2 -x+1/4 -z+3/4 i +-x+1/4 -z+3/4 y+1/2 i +x+1/2 -z+1/4 -y+3/4 i +x z y i +-x+3/4 z+1/2 -y+1/4 i +-z+1/4 -y+3/4 x+1/2 i +-z+3/4 y+1/2 -x+1/4 i +z+1/2 -y+1/4 -x+3/4 i +z y x i diff --git a/data/wyckoff/wyckoff228.txt b/data/wyckoff/wyckoff228.txt new file mode 100644 index 0000000..8730ebf --- /dev/null +++ b/data/wyckoff/wyckoff228.txt @@ -0,0 +1,144 @@ +0 0 0 a +3/4 1/4 3/4 a +3/4 3/4 3/4 a +0 1/2 0 a +1/8 1/8 1/8 b +7/8 3/8 5/8 b +3/8 5/8 7/8 b +5/8 7/8 3/8 b +5/8 5/8 5/8 b +7/8 3/8 1/8 b +3/8 1/8 7/8 b +1/8 7/8 3/8 b +3/8 3/8 3/8 c +5/8 1/8 7/8 c +1/8 7/8 5/8 c +7/8 5/8 1/8 c +1/8 5/8 3/8 c +7/8 7/8 7/8 c +5/8 3/8 1/8 c +3/8 1/8 5/8 c +1/4 0 0 d +3/4 1/2 1/2 d +0 1/4 0 d +1/2 3/4 1/2 d +0 0 1/4 d +1/2 1/2 3/4 d +3/4 1/2 3/4 d +1/4 0 1/4 d +0 1/4 3/4 d +1/2 3/4 1/4 d +3/4 1/4 1/2 d +1/4 3/4 0 d +x x x e +-x -x+1/2 x+1/2 e +-x+1/2 x+1/2 -x e +x+1/2 -x -x+1/2 e +x+3/4 x+1/4 -x+3/4 e +-x+1/4 -x+1/4 -x+1/4 e +x+1/4 -x+3/4 x+3/4 e +-x+3/4 x+3/4 x+1/4 e +-x+3/4 -x+3/4 -x+3/4 e +x+3/4 x+1/4 -x+1/4 e +x+1/4 -x+1/4 x+3/4 e +-x+1/4 x+3/4 x+1/4 e +-x -x+1/2 x e +x+1/2 x+1/2 x+1/2 e +-x+1/2 x -x e +x -x -x+1/2 e +x 0 0 f +-x 1/2 1/2 f +0 x 0 f +1/2 -x 1/2 f +0 0 x f +1/2 1/2 -x f +3/4 x+1/4 3/4 f +1/4 -x+1/4 1/4 f +x+3/4 1/4 3/4 f +-x+3/4 3/4 1/4 f +3/4 1/4 -x+3/4 f +1/4 3/4 x+3/4 f +-x+3/4 3/4 3/4 f +x+3/4 1/4 1/4 f +3/4 -x+3/4 3/4 f +1/4 x+3/4 1/4 f +3/4 3/4 -x+3/4 f +1/4 1/4 x+3/4 f +0 -x+1/2 0 f +1/2 x+1/2 1/2 f +-x 1/2 0 f +x 0 1/2 f +0 1/2 x f +1/2 0 -x f +1/8 y -y+1/4 g +7/8 -y+1/2 -y+3/4 g +3/8 y+1/2 y+3/4 g +5/8 -y y+1/4 g +-y+1/4 1/8 y g +-y+3/4 7/8 -y+1/2 g +y+3/4 3/8 y+1/2 g +y+1/4 5/8 -y g +y -y+1/4 1/8 g +-y+1/2 -y+3/4 7/8 g +y+1/2 y+3/4 3/8 g +-y y+1/4 5/8 g +5/8 -y+3/4 y+1/2 g +7/8 y+1/4 y g +3/8 -y+1/4 -y g +1/8 y+3/4 -y+1/2 g +y+1/2 5/8 -y+3/4 g +y 7/8 y+1/4 g +-y 3/8 -y+1/4 g +-y+1/2 1/8 y+3/4 g +-y+3/4 y+1/2 5/8 g +y+1/4 y 7/8 g +-y+1/4 -y 3/8 g +y+3/4 -y+1/2 1/8 g +x y z h +-x -y+1/2 z+1/2 h +-x+1/2 y+1/2 -z h +x+1/2 -y -z+1/2 h +z x y h +z+1/2 -x -y+1/2 h +-z -x+1/2 y+1/2 h +-z+1/2 x+1/2 -y h +y z x h +-y+1/2 z+1/2 -x h +y+1/2 -z -x+1/2 h +-y -z+1/2 x+1/2 h +y+3/4 x+1/4 -z+3/4 h +-y+1/4 -x+1/4 -z+1/4 h +y+1/4 -x+3/4 z+3/4 h +-y+3/4 x+3/4 z+1/4 h +x+3/4 z+1/4 -y+3/4 h +-x+3/4 z+3/4 y+1/4 h +-x+1/4 -z+1/4 -y+1/4 h +x+1/4 -z+3/4 y+3/4 h +z+3/4 y+1/4 -x+3/4 h +z+1/4 -y+3/4 x+3/4 h +-z+3/4 y+3/4 x+1/4 h +-z+1/4 -y+1/4 -x+1/4 h +-x+3/4 -y+3/4 -z+3/4 h +x+3/4 y+1/4 -z+1/4 h +x+1/4 -y+1/4 z+3/4 h +-x+1/4 y+3/4 z+1/4 h +-z+3/4 -x+3/4 -y+3/4 h +-z+1/4 x+3/4 y+1/4 h +z+3/4 x+1/4 -y+1/4 h +z+1/4 -x+1/4 y+3/4 h +-y+3/4 -z+3/4 -x+3/4 h +y+1/4 -z+1/4 x+3/4 h +-y+1/4 z+3/4 x+1/4 h +y+3/4 z+1/4 -x+1/4 h +-y -x+1/2 z h +y+1/2 x+1/2 z+1/2 h +-y+1/2 x -z h +y -x -z+1/2 h +-x -z+1/2 y h +x -z -y+1/2 h +x+1/2 z+1/2 y+1/2 h +-x+1/2 z -y h +-z -y+1/2 x h +-z+1/2 y -x h +z -y -x+1/2 h +z+1/2 y+1/2 x+1/2 h diff --git a/data/wyckoff/wyckoff228s1.txt b/data/wyckoff/wyckoff228s1.txt new file mode 100644 index 0000000..8730ebf --- /dev/null +++ b/data/wyckoff/wyckoff228s1.txt @@ -0,0 +1,144 @@ +0 0 0 a +3/4 1/4 3/4 a +3/4 3/4 3/4 a +0 1/2 0 a +1/8 1/8 1/8 b +7/8 3/8 5/8 b +3/8 5/8 7/8 b +5/8 7/8 3/8 b +5/8 5/8 5/8 b +7/8 3/8 1/8 b +3/8 1/8 7/8 b +1/8 7/8 3/8 b +3/8 3/8 3/8 c +5/8 1/8 7/8 c +1/8 7/8 5/8 c +7/8 5/8 1/8 c +1/8 5/8 3/8 c +7/8 7/8 7/8 c +5/8 3/8 1/8 c +3/8 1/8 5/8 c +1/4 0 0 d +3/4 1/2 1/2 d +0 1/4 0 d +1/2 3/4 1/2 d +0 0 1/4 d +1/2 1/2 3/4 d +3/4 1/2 3/4 d +1/4 0 1/4 d +0 1/4 3/4 d +1/2 3/4 1/4 d +3/4 1/4 1/2 d +1/4 3/4 0 d +x x x e +-x -x+1/2 x+1/2 e +-x+1/2 x+1/2 -x e +x+1/2 -x -x+1/2 e +x+3/4 x+1/4 -x+3/4 e +-x+1/4 -x+1/4 -x+1/4 e +x+1/4 -x+3/4 x+3/4 e +-x+3/4 x+3/4 x+1/4 e +-x+3/4 -x+3/4 -x+3/4 e +x+3/4 x+1/4 -x+1/4 e +x+1/4 -x+1/4 x+3/4 e +-x+1/4 x+3/4 x+1/4 e +-x -x+1/2 x e +x+1/2 x+1/2 x+1/2 e +-x+1/2 x -x e +x -x -x+1/2 e +x 0 0 f +-x 1/2 1/2 f +0 x 0 f +1/2 -x 1/2 f +0 0 x f +1/2 1/2 -x f +3/4 x+1/4 3/4 f +1/4 -x+1/4 1/4 f +x+3/4 1/4 3/4 f +-x+3/4 3/4 1/4 f +3/4 1/4 -x+3/4 f +1/4 3/4 x+3/4 f +-x+3/4 3/4 3/4 f +x+3/4 1/4 1/4 f +3/4 -x+3/4 3/4 f +1/4 x+3/4 1/4 f +3/4 3/4 -x+3/4 f +1/4 1/4 x+3/4 f +0 -x+1/2 0 f +1/2 x+1/2 1/2 f +-x 1/2 0 f +x 0 1/2 f +0 1/2 x f +1/2 0 -x f +1/8 y -y+1/4 g +7/8 -y+1/2 -y+3/4 g +3/8 y+1/2 y+3/4 g +5/8 -y y+1/4 g +-y+1/4 1/8 y g +-y+3/4 7/8 -y+1/2 g +y+3/4 3/8 y+1/2 g +y+1/4 5/8 -y g +y -y+1/4 1/8 g +-y+1/2 -y+3/4 7/8 g +y+1/2 y+3/4 3/8 g +-y y+1/4 5/8 g +5/8 -y+3/4 y+1/2 g +7/8 y+1/4 y g +3/8 -y+1/4 -y g +1/8 y+3/4 -y+1/2 g +y+1/2 5/8 -y+3/4 g +y 7/8 y+1/4 g +-y 3/8 -y+1/4 g +-y+1/2 1/8 y+3/4 g +-y+3/4 y+1/2 5/8 g +y+1/4 y 7/8 g +-y+1/4 -y 3/8 g +y+3/4 -y+1/2 1/8 g +x y z h +-x -y+1/2 z+1/2 h +-x+1/2 y+1/2 -z h +x+1/2 -y -z+1/2 h +z x y h +z+1/2 -x -y+1/2 h +-z -x+1/2 y+1/2 h +-z+1/2 x+1/2 -y h +y z x h +-y+1/2 z+1/2 -x h +y+1/2 -z -x+1/2 h +-y -z+1/2 x+1/2 h +y+3/4 x+1/4 -z+3/4 h +-y+1/4 -x+1/4 -z+1/4 h +y+1/4 -x+3/4 z+3/4 h +-y+3/4 x+3/4 z+1/4 h +x+3/4 z+1/4 -y+3/4 h +-x+3/4 z+3/4 y+1/4 h +-x+1/4 -z+1/4 -y+1/4 h +x+1/4 -z+3/4 y+3/4 h +z+3/4 y+1/4 -x+3/4 h +z+1/4 -y+3/4 x+3/4 h +-z+3/4 y+3/4 x+1/4 h +-z+1/4 -y+1/4 -x+1/4 h +-x+3/4 -y+3/4 -z+3/4 h +x+3/4 y+1/4 -z+1/4 h +x+1/4 -y+1/4 z+3/4 h +-x+1/4 y+3/4 z+1/4 h +-z+3/4 -x+3/4 -y+3/4 h +-z+1/4 x+3/4 y+1/4 h +z+3/4 x+1/4 -y+1/4 h +z+1/4 -x+1/4 y+3/4 h +-y+3/4 -z+3/4 -x+3/4 h +y+1/4 -z+1/4 x+3/4 h +-y+1/4 z+3/4 x+1/4 h +y+3/4 z+1/4 -x+1/4 h +-y -x+1/2 z h +y+1/2 x+1/2 z+1/2 h +-y+1/2 x -z h +y -x -z+1/2 h +-x -z+1/2 y h +x -z -y+1/2 h +x+1/2 z+1/2 y+1/2 h +-x+1/2 z -y h +-z -y+1/2 x h +-z+1/2 y -x h +z -y -x+1/2 h +z+1/2 y+1/2 x+1/2 h diff --git a/data/wyckoff/wyckoff228s2.txt b/data/wyckoff/wyckoff228s2.txt new file mode 100644 index 0000000..ff6757f --- /dev/null +++ b/data/wyckoff/wyckoff228s2.txt @@ -0,0 +1,144 @@ +1/8 1/8 1/8 a +7/8 3/8 7/8 a +7/8 7/8 7/8 a +1/8 5/8 1/8 a +1/4 1/4 1/4 b +0 1/2 3/4 b +1/2 3/4 0 b +3/4 0 1/2 b +3/4 3/4 3/4 b +0 1/2 1/4 b +1/2 1/4 0 b +1/4 0 1/2 b +0 0 0 c +1/4 3/4 1/2 c +3/4 1/2 1/4 c +1/2 1/4 3/4 c +3/4 1/4 0 c +1/2 1/2 1/2 c +1/4 0 3/4 c +0 3/4 1/4 c +7/8 1/8 1/8 d +3/8 5/8 5/8 d +1/8 7/8 1/8 d +5/8 3/8 5/8 d +1/8 1/8 7/8 d +5/8 5/8 3/8 d +7/8 1/8 7/8 d +3/8 5/8 3/8 d +5/8 3/8 7/8 d +1/8 7/8 3/8 d +7/8 3/8 1/8 d +3/8 7/8 5/8 d +x x x e +-x+1/4 -x+3/4 x+1/2 e +-x+3/4 x+1/2 -x+1/4 e +x+1/2 -x+1/4 -x+3/4 e +x+3/4 x+1/4 -x e +-x+1/2 -x+1/2 -x+1/2 e +x+1/4 -x x+3/4 e +-x x+3/4 x+1/4 e +-x -x -x e +x+3/4 x+1/4 -x+1/2 e +x+1/4 -x+1/2 x+3/4 e +-x+1/2 x+3/4 x+1/4 e +-x+1/4 -x+3/4 x e +x+1/2 x+1/2 x+1/2 e +-x+3/4 x -x+1/4 e +x -x+1/4 -x+3/4 e +x 1/8 1/8 f +-x+1/4 5/8 5/8 f +1/8 x 1/8 f +5/8 -x+1/4 5/8 f +1/8 1/8 x f +5/8 5/8 -x+1/4 f +7/8 x+1/4 7/8 f +3/8 -x+1/2 3/8 f +x+3/4 3/8 7/8 f +-x 7/8 3/8 f +7/8 3/8 -x f +3/8 7/8 x+3/4 f +-x 7/8 7/8 f +x+3/4 3/8 3/8 f +7/8 -x 7/8 f +3/8 x+3/4 3/8 f +7/8 7/8 -x f +3/8 3/8 x+3/4 f +1/8 -x+3/4 1/8 f +5/8 x+1/2 5/8 f +-x+1/4 5/8 1/8 f +x 1/8 5/8 f +1/8 5/8 x f +5/8 1/8 -x+1/4 f +1/4 y -y g +0 -y+3/4 -y+1/2 g +1/2 y+1/2 y+1/4 g +3/4 -y+1/4 y+3/4 g +-y 1/4 y g +-y+1/2 0 -y+3/4 g +y+1/4 1/2 y+1/2 g +y+3/4 3/4 -y+1/4 g +y -y 1/4 g +-y+3/4 -y+1/2 0 g +y+1/2 y+1/4 1/2 g +-y+1/4 y+3/4 3/4 g +3/4 -y y g +0 y+1/4 y+1/2 g +1/2 -y+1/2 -y+3/4 g +1/4 y+3/4 -y+1/4 g +y 3/4 -y g +y+1/2 0 y+1/4 g +-y+3/4 1/2 -y+1/2 g +-y+1/4 1/4 y+3/4 g +-y y 3/4 g +y+1/4 y+1/2 0 g +-y+1/2 -y+3/4 1/2 g +y+3/4 -y+1/4 1/4 g +x y z h +-x+1/4 -y+3/4 z+1/2 h +-x+3/4 y+1/2 -z+1/4 h +x+1/2 -y+1/4 -z+3/4 h +z x y h +z+1/2 -x+1/4 -y+3/4 h +-z+1/4 -x+3/4 y+1/2 h +-z+3/4 x+1/2 -y+1/4 h +y z x h +-y+3/4 z+1/2 -x+1/4 h +y+1/2 -z+1/4 -x+3/4 h +-y+1/4 -z+3/4 x+1/2 h +y+3/4 x+1/4 -z h +-y+1/2 -x+1/2 -z+1/2 h +y+1/4 -x z+3/4 h +-y x+3/4 z+1/4 h +x+3/4 z+1/4 -y h +-x z+3/4 y+1/4 h +-x+1/2 -z+1/2 -y+1/2 h +x+1/4 -z y+3/4 h +z+3/4 y+1/4 -x h +z+1/4 -y x+3/4 h +-z y+3/4 x+1/4 h +-z+1/2 -y+1/2 -x+1/2 h +-x -y -z h +x+3/4 y+1/4 -z+1/2 h +x+1/4 -y+1/2 z+3/4 h +-x+1/2 y+3/4 z+1/4 h +-z -x -y h +-z+1/2 x+3/4 y+1/4 h +z+3/4 x+1/4 -y+1/2 h +z+1/4 -x+1/2 y+3/4 h +-y -z -x h +y+1/4 -z+1/2 x+3/4 h +-y+1/2 z+3/4 x+1/4 h +y+3/4 z+1/4 -x+1/2 h +-y+1/4 -x+3/4 z h +y+1/2 x+1/2 z+1/2 h +-y+3/4 x -z+1/4 h +y -x+1/4 -z+3/4 h +-x+1/4 -z+3/4 y h +x -z+1/4 -y+3/4 h +x+1/2 z+1/2 y+1/2 h +-x+3/4 z -y+1/4 h +-z+1/4 -y+3/4 x h +-z+3/4 y -x+1/4 h +z -y+1/4 -x+3/4 h +z+1/2 y+1/2 x+1/2 h diff --git a/data/wyckoff/wyckoff229.txt b/data/wyckoff/wyckoff229.txt new file mode 100644 index 0000000..c7f2b9d --- /dev/null +++ b/data/wyckoff/wyckoff229.txt @@ -0,0 +1,172 @@ +0 0 0 a +0 1/2 1/2 b +1/2 0 1/2 b +1/2 1/2 0 b +1/4 1/4 1/4 c +3/4 3/4 1/4 c +3/4 1/4 3/4 c +1/4 3/4 3/4 c +1/4 0 1/2 d +3/4 0 1/2 d +1/2 1/4 0 d +1/2 3/4 0 d +0 1/2 1/4 d +0 1/2 3/4 d +x 0 0 e +-x 0 0 e +0 x 0 e +0 -x 0 e +0 0 x e +0 0 -x e +x x x f +-x -x x f +-x x -x f +x -x -x f +x x -x f +-x -x -x f +x -x x f +-x x x f +x 0 1/2 g +-x 0 1/2 g +1/2 x 0 g +1/2 -x 0 g +0 1/2 x g +0 1/2 -x g +0 x 1/2 g +0 -x 1/2 g +x 1/2 0 g +-x 1/2 0 g +1/2 0 -x g +1/2 0 x g +0 y y h +0 -y y h +0 y -y h +0 -y -y h +y 0 y h +y 0 -y h +-y 0 y h +-y 0 -y h +y y 0 h +-y y 0 h +y -y 0 h +-y -y 0 h +1/4 y -y+1/2 i +3/4 -y -y+1/2 i +3/4 y y+1/2 i +1/4 -y y+1/2 i +-y+1/2 1/4 y i +-y+1/2 3/4 -y i +y+1/2 3/4 y i +y+1/2 1/4 -y i +y -y+1/2 1/4 i +-y -y+1/2 3/4 i +y y+1/2 3/4 i +-y y+1/2 1/4 i +3/4 -y y+1/2 i +1/4 y y+1/2 i +1/4 -y -y+1/2 i +3/4 y -y+1/2 i +y+1/2 3/4 -y i +y+1/2 1/4 y i +-y+1/2 1/4 -y i +-y+1/2 3/4 y i +-y y+1/2 3/4 i +y y+1/2 1/4 i +-y -y+1/2 1/4 i +y -y+1/2 3/4 i +0 y z j +0 -y z j +0 y -z j +0 -y -z j +z 0 y j +z 0 -y j +-z 0 y j +-z 0 -y j +y z 0 j +-y z 0 j +y -z 0 j +-y -z 0 j +y 0 -z j +-y 0 -z j +y 0 z j +-y 0 z j +0 z -y j +0 z y j +0 -z -y j +0 -z y j +z y 0 j +z -y 0 j +-z y 0 j +-z -y 0 j +x x z k +-x -x z k +-x x -z k +x -x -z k +z x x k +z -x -x k +-z -x x k +-z x -x k +x z x k +-x z -x k +x -z -x k +-x -z x k +x x -z k +-x -x -z k +x -x z k +-x x z k +x z -x k +-x z x k +-x -z -x k +x -z x k +z x -x k +z -x x k +-z x x k +-z -x -x k +x y z l +-x -y z l +-x y -z l +x -y -z l +z x y l +z -x -y l +-z -x y l +-z x -y l +y z x l +-y z -x l +y -z -x l +-y -z x l +y x -z l +-y -x -z l +y -x z l +-y x z l +x z -y l +-x z y l +-x -z -y l +x -z y l +z y -x l +z -y x l +-z y x l +-z -y -x l +-x -y -z l +x y -z l +x -y z l +-x y z l +-z -x -y l +-z x y l +z x -y l +z -x y l +-y -z -x l +y -z x l +-y z x l +y z -x l +-y -x z l +y x z l +-y x -z l +y -x -z l +-x -z y l +x -z -y l +x z y l +-x z -y l +-z -y x l +-z y -x l +z -y -x l +z y x l diff --git a/data/wyckoff/wyckoff23.txt b/data/wyckoff/wyckoff23.txt new file mode 100644 index 0000000..83cbea9 --- /dev/null +++ b/data/wyckoff/wyckoff23.txt @@ -0,0 +1,20 @@ +0 0 0 a +1/2 0 0 b +0 0 1/2 c +0 1/2 0 d +x 0 0 e +-x 0 0 e +x 0 1/2 f +-x 0 1/2 f +0 y 0 g +0 -y 0 g +1/2 y 0 h +1/2 -y 0 h +0 0 z i +0 0 -z i +0 1/2 z j +0 1/2 -z j +x y z k +-x -y z k +-x y -z k +x -y -z k diff --git a/data/wyckoff/wyckoff230.txt b/data/wyckoff/wyckoff230.txt new file mode 100644 index 0000000..6f7a766 --- /dev/null +++ b/data/wyckoff/wyckoff230.txt @@ -0,0 +1,152 @@ +0 0 0 a +1/2 0 1/2 a +0 1/2 1/2 a +1/2 1/2 0 a +3/4 1/4 1/4 a +3/4 3/4 3/4 a +1/4 1/4 3/4 a +1/4 3/4 1/4 a +1/8 1/8 1/8 b +3/8 7/8 5/8 b +7/8 5/8 3/8 b +5/8 3/8 7/8 b +7/8 7/8 7/8 b +5/8 1/8 3/8 b +1/8 3/8 5/8 b +3/8 5/8 1/8 b +1/8 0 1/4 c +3/8 0 3/4 c +1/4 1/8 0 c +3/4 3/8 0 c +0 1/4 1/8 c +0 3/4 3/8 c +7/8 0 3/4 c +5/8 0 1/4 c +3/4 7/8 0 c +1/4 5/8 0 c +0 3/4 7/8 c +0 1/4 5/8 c +3/8 0 1/4 d +1/8 0 3/4 d +1/4 3/8 0 d +3/4 1/8 0 d +0 1/4 3/8 d +0 3/4 1/8 d +3/4 5/8 0 d +3/4 3/8 1/2 d +1/8 1/2 1/4 d +7/8 0 1/4 d +0 1/4 7/8 d +1/2 1/4 1/8 d +x x x e +-x+1/2 -x x+1/2 e +-x x+1/2 -x+1/2 e +x+1/2 -x+1/2 -x e +x+3/4 x+1/4 -x+1/4 e +-x+3/4 -x+3/4 -x+3/4 e +x+1/4 -x+1/4 x+3/4 e +-x+1/4 x+3/4 x+1/4 e +-x -x -x e +x+1/2 x -x+1/2 e +x -x+1/2 x+1/2 e +-x+1/2 x+1/2 x e +-x+1/4 -x+3/4 x+3/4 e +x+1/4 x+1/4 x+1/4 e +-x+3/4 x+3/4 -x+1/4 e +x+3/4 -x+1/4 -x+3/4 e +x 0 1/4 f +-x+1/2 0 3/4 f +1/4 x 0 f +3/4 -x+1/2 0 f +0 1/4 x f +0 3/4 -x+1/2 f +3/4 x+1/4 0 f +3/4 -x+3/4 1/2 f +x+3/4 1/2 1/4 f +-x+1/4 0 1/4 f +0 1/4 -x+1/4 f +1/2 1/4 x+3/4 f +-x 0 3/4 f +x+1/2 0 1/4 f +3/4 -x 0 f +1/4 x+1/2 0 f +0 3/4 -x f +0 1/4 x+1/2 f +1/4 -x+3/4 0 f +1/4 x+1/4 1/2 f +-x+1/4 1/2 3/4 f +x+3/4 0 3/4 f +0 3/4 x+3/4 f +1/2 3/4 -x+1/4 f +1/8 y -y+1/4 g +3/8 -y -y+3/4 g +7/8 y+1/2 y+1/4 g +5/8 -y+1/2 y+3/4 g +-y+1/4 1/8 y g +-y+3/4 3/8 -y g +y+1/4 7/8 y+1/2 g +y+3/4 5/8 -y+1/2 g +y -y+1/4 1/8 g +-y -y+3/4 3/8 g +y+1/2 y+1/4 7/8 g +-y+1/2 y+3/4 5/8 g +7/8 -y y+3/4 g +5/8 y y+1/4 g +1/8 -y+1/2 -y+3/4 g +3/8 y+1/2 -y+1/4 g +y+3/4 7/8 -y g +y+1/4 5/8 y g +-y+3/4 1/8 -y+1/2 g +-y+1/4 3/8 y+1/2 g +-y y+3/4 7/8 g +y y+1/4 5/8 g +-y+1/2 -y+3/4 1/8 g +y+1/2 -y+1/4 3/8 g +x y z h +-x+1/2 -y z+1/2 h +-x y+1/2 -z+1/2 h +x+1/2 -y+1/2 -z h +z x y h +z+1/2 -x+1/2 -y h +-z+1/2 -x y+1/2 h +-z x+1/2 -y+1/2 h +y z x h +-y z+1/2 -x+1/2 h +y+1/2 -z+1/2 -x h +-y+1/2 -z x+1/2 h +y+3/4 x+1/4 -z+1/4 h +-y+3/4 -x+3/4 -z+3/4 h +y+1/4 -x+1/4 z+3/4 h +-y+1/4 x+3/4 z+1/4 h +x+3/4 z+1/4 -y+1/4 h +-x+1/4 z+3/4 y+1/4 h +-x+3/4 -z+3/4 -y+3/4 h +x+1/4 -z+1/4 y+3/4 h +z+3/4 y+1/4 -x+1/4 h +z+1/4 -y+1/4 x+3/4 h +-z+1/4 y+3/4 x+1/4 h +-z+3/4 -y+3/4 -x+3/4 h +-x -y -z h +x+1/2 y -z+1/2 h +x -y+1/2 z+1/2 h +-x+1/2 y+1/2 z h +-z -x -y h +-z+1/2 x+1/2 y h +z+1/2 x -y+1/2 h +z -x+1/2 y+1/2 h +-y -z -x h +y -z+1/2 x+1/2 h +-y+1/2 z+1/2 x h +y+1/2 z -x+1/2 h +-y+1/4 -x+3/4 z+3/4 h +y+1/4 x+1/4 z+1/4 h +-y+3/4 x+3/4 -z+1/4 h +y+3/4 -x+1/4 -z+3/4 h +-x+1/4 -z+3/4 y+3/4 h +x+3/4 -z+1/4 -y+3/4 h +x+1/4 z+1/4 y+1/4 h +-x+3/4 z+3/4 -y+1/4 h +-z+1/4 -y+3/4 x+3/4 h +-z+3/4 y+3/4 -x+1/4 h +z+3/4 -y+1/4 -x+3/4 h +z+1/4 y+1/4 x+1/4 h diff --git a/data/wyckoff/wyckoff24.txt b/data/wyckoff/wyckoff24.txt new file mode 100644 index 0000000..bef30b6 --- /dev/null +++ b/data/wyckoff/wyckoff24.txt @@ -0,0 +1,10 @@ +x 0 1/4 a +-x+1/2 0 3/4 a +1/4 y 0 b +1/4 -y 1/2 b +0 1/4 z c +0 3/4 -z+1/2 c +x y z d +-x+1/2 -y z+1/2 d +-x y+1/2 -z+1/2 d +x+1/2 -y+1/2 -z d diff --git a/data/wyckoff/wyckoff25.txt b/data/wyckoff/wyckoff25.txt new file mode 100644 index 0000000..2c865f3 --- /dev/null +++ b/data/wyckoff/wyckoff25.txt @@ -0,0 +1,16 @@ +0 0 z a +0 1/2 z b +1/2 0 z c +1/2 1/2 z d +x 0 z e +-x 0 z e +x 1/2 z f +-x 1/2 z f +0 y z g +0 -y z g +1/2 y z h +1/2 -y z h +x y z i +-x -y z i +x -y z i +-x y z i diff --git a/data/wyckoff/wyckoff26.txt b/data/wyckoff/wyckoff26.txt new file mode 100644 index 0000000..295c098 --- /dev/null +++ b/data/wyckoff/wyckoff26.txt @@ -0,0 +1,8 @@ +0 y z a +0 -y z+1/2 a +1/2 y z b +1/2 -y z+1/2 b +x y z c +-x -y z+1/2 c +x -y z+1/2 c +-x y z c diff --git a/data/wyckoff/wyckoff27.txt b/data/wyckoff/wyckoff27.txt new file mode 100644 index 0000000..d3b60ff --- /dev/null +++ b/data/wyckoff/wyckoff27.txt @@ -0,0 +1,12 @@ +0 0 z a +0 0 z+1/2 a +0 1/2 z b +0 1/2 z+1/2 b +1/2 0 z c +1/2 0 z+1/2 c +1/2 1/2 z d +1/2 1/2 z+1/2 d +x y z e +-x -y z e +x -y z+1/2 e +-x y z+1/2 e diff --git a/data/wyckoff/wyckoff28.txt b/data/wyckoff/wyckoff28.txt new file mode 100644 index 0000000..bddaf23 --- /dev/null +++ b/data/wyckoff/wyckoff28.txt @@ -0,0 +1,10 @@ +0 0 z a +1/2 0 z a +0 1/2 z b +1/2 1/2 z b +1/4 y z c +3/4 -y z c +x y z d +-x -y z d +x+1/2 -y z d +-x+1/2 y z d diff --git a/data/wyckoff/wyckoff29.txt b/data/wyckoff/wyckoff29.txt new file mode 100644 index 0000000..597146e --- /dev/null +++ b/data/wyckoff/wyckoff29.txt @@ -0,0 +1,4 @@ +x y z a +-x -y z+1/2 a +x+1/2 -y z a +-x+1/2 y z+1/2 a diff --git a/data/wyckoff/wyckoff3.txt b/data/wyckoff/wyckoff3.txt new file mode 100644 index 0000000..f5f0b3b --- /dev/null +++ b/data/wyckoff/wyckoff3.txt @@ -0,0 +1,6 @@ +0 y 0 a +0 y 1/2 b +1/2 y 0 c +1/2 y 1/2 d +x y z e +-x y -z e diff --git a/data/wyckoff/wyckoff30.txt b/data/wyckoff/wyckoff30.txt new file mode 100644 index 0000000..d9e0c16 --- /dev/null +++ b/data/wyckoff/wyckoff30.txt @@ -0,0 +1,8 @@ +0 0 z a +0 1/2 z+1/2 a +1/2 0 z b +1/2 1/2 z+1/2 b +x y z c +-x -y z c +x -y+1/2 z+1/2 c +-x y+1/2 z+1/2 c diff --git a/data/wyckoff/wyckoff31.txt b/data/wyckoff/wyckoff31.txt new file mode 100644 index 0000000..6a26d8f --- /dev/null +++ b/data/wyckoff/wyckoff31.txt @@ -0,0 +1,6 @@ +0 y z a +1/2 -y z+1/2 a +x y z b +-x+1/2 -y z+1/2 b +x+1/2 -y z+1/2 b +-x y z b diff --git a/data/wyckoff/wyckoff32.txt b/data/wyckoff/wyckoff32.txt new file mode 100644 index 0000000..6cd4d87 --- /dev/null +++ b/data/wyckoff/wyckoff32.txt @@ -0,0 +1,8 @@ +0 0 z a +1/2 1/2 z a +0 1/2 z b +1/2 0 z b +x y z c +-x -y z c +x+1/2 -y+1/2 z c +-x+1/2 y+1/2 z c diff --git a/data/wyckoff/wyckoff33.txt b/data/wyckoff/wyckoff33.txt new file mode 100644 index 0000000..9b01fb1 --- /dev/null +++ b/data/wyckoff/wyckoff33.txt @@ -0,0 +1,4 @@ +x y z a +-x -y z+1/2 a +x+1/2 -y+1/2 z a +-x+1/2 y+1/2 z+1/2 a diff --git a/data/wyckoff/wyckoff34.txt b/data/wyckoff/wyckoff34.txt new file mode 100644 index 0000000..7d638ea --- /dev/null +++ b/data/wyckoff/wyckoff34.txt @@ -0,0 +1,8 @@ +0 0 z a +1/2 1/2 z+1/2 a +0 1/2 z b +1/2 0 z+1/2 b +x y z c +-x -y z c +x+1/2 -y+1/2 z+1/2 c +-x+1/2 y+1/2 z+1/2 c diff --git a/data/wyckoff/wyckoff35.txt b/data/wyckoff/wyckoff35.txt new file mode 100644 index 0000000..b5fdd2d --- /dev/null +++ b/data/wyckoff/wyckoff35.txt @@ -0,0 +1,12 @@ +0 0 z a +0 1/2 z b +1/4 1/4 z c +1/4 3/4 z c +x 0 z d +-x 0 z d +0 y z e +0 -y z e +x y z f +-x -y z f +x -y z f +-x y z f diff --git a/data/wyckoff/wyckoff36.txt b/data/wyckoff/wyckoff36.txt new file mode 100644 index 0000000..ce7fd0d --- /dev/null +++ b/data/wyckoff/wyckoff36.txt @@ -0,0 +1,6 @@ +0 y z a +0 -y z+1/2 a +x y z b +-x -y z+1/2 b +x -y z+1/2 b +-x y z b diff --git a/data/wyckoff/wyckoff37.txt b/data/wyckoff/wyckoff37.txt new file mode 100644 index 0000000..4c7d922 --- /dev/null +++ b/data/wyckoff/wyckoff37.txt @@ -0,0 +1,10 @@ +0 0 z a +0 0 z+1/2 a +0 1/2 z b +0 1/2 z+1/2 b +1/4 1/4 z c +1/4 3/4 z+1/2 c +x y z d +-x -y z d +x -y z+1/2 d +-x y z+1/2 d diff --git a/data/wyckoff/wyckoff38.txt b/data/wyckoff/wyckoff38.txt new file mode 100644 index 0000000..81fcc01 --- /dev/null +++ b/data/wyckoff/wyckoff38.txt @@ -0,0 +1,12 @@ +0 0 z a +1/2 0 z b +x 0 z c +-x 0 z c +0 y z d +0 -y z d +1/2 y z e +1/2 -y z e +x y z f +-x -y z f +x -y z f +-x y z f diff --git a/data/wyckoff/wyckoff39.txt b/data/wyckoff/wyckoff39.txt new file mode 100644 index 0000000..1a665a6 --- /dev/null +++ b/data/wyckoff/wyckoff39.txt @@ -0,0 +1,10 @@ +0 0 z a +0 1/2 z a +1/2 0 z b +1/2 1/2 z b +x 1/4 z c +-x 3/4 z c +x y z d +-x -y z d +x -y+1/2 z d +-x y+1/2 z d diff --git a/data/wyckoff/wyckoff4.txt b/data/wyckoff/wyckoff4.txt new file mode 100644 index 0000000..722daed --- /dev/null +++ b/data/wyckoff/wyckoff4.txt @@ -0,0 +1,2 @@ +x y z a +-x y+1/2 -z a diff --git a/data/wyckoff/wyckoff40.txt b/data/wyckoff/wyckoff40.txt new file mode 100644 index 0000000..aba7239 --- /dev/null +++ b/data/wyckoff/wyckoff40.txt @@ -0,0 +1,8 @@ +0 0 z a +1/2 0 z a +1/4 y z b +3/4 -y z b +x y z c +-x -y z c +x+1/2 -y z c +-x+1/2 y z c diff --git a/data/wyckoff/wyckoff41.txt b/data/wyckoff/wyckoff41.txt new file mode 100644 index 0000000..c9480b7 --- /dev/null +++ b/data/wyckoff/wyckoff41.txt @@ -0,0 +1,6 @@ +0 0 z a +1/2 1/2 z a +x y z b +-x -y z b +x+1/2 -y+1/2 z b +-x+1/2 y+1/2 z b diff --git a/data/wyckoff/wyckoff42.txt b/data/wyckoff/wyckoff42.txt new file mode 100644 index 0000000..e9d01db --- /dev/null +++ b/data/wyckoff/wyckoff42.txt @@ -0,0 +1,11 @@ +0 0 z a +1/4 1/4 z b +1/4 3/4 z b +0 y z c +0 -y z c +x 0 z d +-x 0 z d +x y z e +-x -y z e +x -y z e +-x y z e diff --git a/data/wyckoff/wyckoff43.txt b/data/wyckoff/wyckoff43.txt new file mode 100644 index 0000000..b8800cb --- /dev/null +++ b/data/wyckoff/wyckoff43.txt @@ -0,0 +1,6 @@ +0 0 z a +1/4 1/4 z+1/4 a +x y z b +-x -y z b +x+1/4 -y+1/4 z+1/4 b +-x+1/4 y+1/4 z+1/4 b diff --git a/data/wyckoff/wyckoff44.txt b/data/wyckoff/wyckoff44.txt new file mode 100644 index 0000000..c151e7f --- /dev/null +++ b/data/wyckoff/wyckoff44.txt @@ -0,0 +1,10 @@ +0 0 z a +0 1/2 z b +x 0 z c +-x 0 z c +0 y z d +0 -y z d +x y z e +-x -y z e +x -y z e +-x y z e diff --git a/data/wyckoff/wyckoff45.txt b/data/wyckoff/wyckoff45.txt new file mode 100644 index 0000000..6cd4d87 --- /dev/null +++ b/data/wyckoff/wyckoff45.txt @@ -0,0 +1,8 @@ +0 0 z a +1/2 1/2 z a +0 1/2 z b +1/2 0 z b +x y z c +-x -y z c +x+1/2 -y+1/2 z c +-x+1/2 y+1/2 z c diff --git a/data/wyckoff/wyckoff46.txt b/data/wyckoff/wyckoff46.txt new file mode 100644 index 0000000..aba7239 --- /dev/null +++ b/data/wyckoff/wyckoff46.txt @@ -0,0 +1,8 @@ +0 0 z a +1/2 0 z a +1/4 y z b +3/4 -y z b +x y z c +-x -y z c +x+1/2 -y z c +-x+1/2 y z c diff --git a/data/wyckoff/wyckoff47.txt b/data/wyckoff/wyckoff47.txt new file mode 100644 index 0000000..42d32de --- /dev/null +++ b/data/wyckoff/wyckoff47.txt @@ -0,0 +1,64 @@ +0 0 0 a +x y z A +-x -y z A +-x y -z A +x -y -z A +-x -y -z A +x y -z A +x -y z A +-x y z A +1/2 0 0 b +0 0 1/2 c +1/2 0 1/2 d +0 1/2 0 e +1/2 1/2 0 f +0 1/2 1/2 g +1/2 1/2 1/2 h +x 0 0 i +-x 0 0 i +x 0 1/2 j +-x 0 1/2 j +x 1/2 0 k +-x 1/2 0 k +x 1/2 1/2 l +-x 1/2 1/2 l +0 y 0 m +0 -y 0 m +0 y 1/2 n +0 -y 1/2 n +1/2 y 0 o +1/2 -y 0 o +1/2 y 1/2 p +1/2 -y 1/2 p +0 0 z q +0 0 -z q +0 1/2 z r +0 1/2 -z r +1/2 0 z s +1/2 0 -z s +1/2 1/2 z t +1/2 1/2 -z t +0 y z u +0 -y z u +0 y -z u +0 -y -z u +1/2 y z v +1/2 -y z v +1/2 y -z v +1/2 -y -z v +x 0 z w +-x 0 z w +-x 0 -z w +x 0 -z w +x 1/2 z x +-x 1/2 z x +-x 1/2 -z x +x 1/2 -z x +x y 0 y +-x -y 0 y +-x y 0 y +x -y 0 y +x y 1/2 z +-x -y 1/2 z +-x y 1/2 z +x -y 1/2 z diff --git a/data/wyckoff/wyckoff48.txt b/data/wyckoff/wyckoff48.txt new file mode 100644 index 0000000..8a02c71 --- /dev/null +++ b/data/wyckoff/wyckoff48.txt @@ -0,0 +1,48 @@ +0 0 0 a +1/2 1/2 1/2 a +1/2 0 0 b +0 1/2 1/2 b +0 0 1/2 c +1/2 1/2 0 c +0 1/2 0 d +1/2 0 1/2 d +1/4 1/4 1/4 e +3/4 3/4 1/4 e +3/4 1/4 3/4 e +1/4 3/4 3/4 e +3/4 3/4 3/4 f +1/4 1/4 3/4 f +1/4 3/4 1/4 f +3/4 1/4 1/4 f +x 0 0 g +-x 0 0 g +-x+1/2 1/2 1/2 g +x+1/2 1/2 1/2 g +x 0 1/2 h +-x 0 1/2 h +-x+1/2 1/2 0 h +x+1/2 1/2 0 h +0 y 0 i +0 -y 0 i +1/2 -y+1/2 1/2 i +1/2 y+1/2 1/2 i +1/2 y 0 j +1/2 -y 0 j +0 -y+1/2 1/2 j +0 y+1/2 1/2 j +0 0 z k +0 0 -z k +1/2 1/2 -z+1/2 k +1/2 1/2 z+1/2 k +0 1/2 z l +0 1/2 -z l +1/2 0 -z+1/2 l +1/2 0 z+1/2 l +x y z m +-x -y z m +-x y -z m +x -y -z m +-x+1/2 -y+1/2 -z+1/2 m +x+1/2 y+1/2 -z+1/2 m +x+1/2 -y+1/2 z+1/2 m +-x+1/2 y+1/2 z+1/2 m diff --git a/data/wyckoff/wyckoff48s1.txt b/data/wyckoff/wyckoff48s1.txt new file mode 100644 index 0000000..8a02c71 --- /dev/null +++ b/data/wyckoff/wyckoff48s1.txt @@ -0,0 +1,48 @@ +0 0 0 a +1/2 1/2 1/2 a +1/2 0 0 b +0 1/2 1/2 b +0 0 1/2 c +1/2 1/2 0 c +0 1/2 0 d +1/2 0 1/2 d +1/4 1/4 1/4 e +3/4 3/4 1/4 e +3/4 1/4 3/4 e +1/4 3/4 3/4 e +3/4 3/4 3/4 f +1/4 1/4 3/4 f +1/4 3/4 1/4 f +3/4 1/4 1/4 f +x 0 0 g +-x 0 0 g +-x+1/2 1/2 1/2 g +x+1/2 1/2 1/2 g +x 0 1/2 h +-x 0 1/2 h +-x+1/2 1/2 0 h +x+1/2 1/2 0 h +0 y 0 i +0 -y 0 i +1/2 -y+1/2 1/2 i +1/2 y+1/2 1/2 i +1/2 y 0 j +1/2 -y 0 j +0 -y+1/2 1/2 j +0 y+1/2 1/2 j +0 0 z k +0 0 -z k +1/2 1/2 -z+1/2 k +1/2 1/2 z+1/2 k +0 1/2 z l +0 1/2 -z l +1/2 0 -z+1/2 l +1/2 0 z+1/2 l +x y z m +-x -y z m +-x y -z m +x -y -z m +-x+1/2 -y+1/2 -z+1/2 m +x+1/2 y+1/2 -z+1/2 m +x+1/2 -y+1/2 z+1/2 m +-x+1/2 y+1/2 z+1/2 m diff --git a/data/wyckoff/wyckoff48s2.txt b/data/wyckoff/wyckoff48s2.txt new file mode 100644 index 0000000..5d6ffd3 --- /dev/null +++ b/data/wyckoff/wyckoff48s2.txt @@ -0,0 +1,48 @@ +1/4 1/4 1/4 a +3/4 3/4 3/4 a +3/4 1/4 1/4 b +1/4 3/4 3/4 b +1/4 1/4 3/4 c +3/4 3/4 1/4 c +1/4 3/4 1/4 d +3/4 1/4 3/4 d +1/2 1/2 1/2 e +0 0 1/2 e +0 1/2 0 e +1/2 0 0 e +0 0 0 f +1/2 1/2 0 f +1/2 0 1/2 f +0 1/2 1/2 f +x 1/4 1/4 g +-x+1/2 1/4 1/4 g +-x 3/4 3/4 g +x+1/2 3/4 3/4 g +x 1/4 3/4 h +-x+1/2 1/4 3/4 h +-x 3/4 1/4 h +x+1/2 3/4 1/4 h +1/4 y 1/4 i +1/4 -y+1/2 1/4 i +3/4 -y 3/4 i +3/4 y+1/2 3/4 i +3/4 y 1/4 j +3/4 -y+1/2 1/4 j +1/4 -y 3/4 j +1/4 y+1/2 3/4 j +1/4 1/4 z k +1/4 1/4 -z+1/2 k +3/4 3/4 -z k +3/4 3/4 z+1/2 k +1/4 3/4 z l +1/4 3/4 -z+1/2 l +3/4 1/4 -z l +3/4 1/4 z+1/2 l +x y z m +-x+1/2 -y+1/2 z m +-x+1/2 y -z+1/2 m +x -y+1/2 -z+1/2 m +-x -y -z m +x+1/2 y+1/2 -z m +x+1/2 -y z+1/2 m +-x y+1/2 z+1/2 m diff --git a/data/wyckoff/wyckoff49.txt b/data/wyckoff/wyckoff49.txt new file mode 100644 index 0000000..6aab6f0 --- /dev/null +++ b/data/wyckoff/wyckoff49.txt @@ -0,0 +1,60 @@ +0 0 0 a +0 0 1/2 a +1/2 1/2 0 b +1/2 1/2 1/2 b +0 1/2 0 c +0 1/2 1/2 c +1/2 0 0 d +1/2 0 1/2 d +0 0 1/4 e +0 0 3/4 e +1/2 0 1/4 f +1/2 0 3/4 f +0 1/2 1/4 g +0 1/2 3/4 g +1/2 1/2 1/4 h +1/2 1/2 3/4 h +x 0 1/4 i +-x 0 1/4 i +-x 0 3/4 i +x 0 3/4 i +x 1/2 1/4 j +-x 1/2 1/4 j +-x 1/2 3/4 j +x 1/2 3/4 j +0 y 1/4 k +0 -y 1/4 k +0 -y 3/4 k +0 y 3/4 k +1/2 y 1/4 l +1/2 -y 1/4 l +1/2 -y 3/4 l +1/2 y 3/4 l +0 0 z m +0 0 -z+1/2 m +0 0 -z m +0 0 z+1/2 m +1/2 1/2 z n +1/2 1/2 -z+1/2 n +1/2 1/2 -z n +1/2 1/2 z+1/2 n +0 1/2 z o +0 1/2 -z+1/2 o +0 1/2 -z o +0 1/2 z+1/2 o +1/2 0 z p +1/2 0 -z+1/2 p +1/2 0 -z p +1/2 0 z+1/2 p +x y 0 q +-x -y 0 q +-x y 1/2 q +x -y 1/2 q +x y z r +-x -y z r +-x y -z+1/2 r +x -y -z+1/2 r +-x -y -z r +x y -z r +x -y z+1/2 r +-x y z+1/2 r diff --git a/data/wyckoff/wyckoff5.txt b/data/wyckoff/wyckoff5.txt new file mode 100644 index 0000000..14bfe65 --- /dev/null +++ b/data/wyckoff/wyckoff5.txt @@ -0,0 +1,4 @@ +0 y 0 a +0 y 1/2 b +x y z c +-x y -z c diff --git a/data/wyckoff/wyckoff50.txt b/data/wyckoff/wyckoff50.txt new file mode 100644 index 0000000..df3bd8c --- /dev/null +++ b/data/wyckoff/wyckoff50.txt @@ -0,0 +1,48 @@ +0 0 0 a +1/2 1/2 0 a +1/2 0 0 b +0 1/2 0 b +1/2 0 1/2 c +0 1/2 1/2 c +0 0 1/2 d +1/2 1/2 1/2 d +1/4 1/4 0 e +3/4 3/4 0 e +3/4 1/4 0 e +1/4 3/4 0 e +1/4 1/4 1/2 f +3/4 3/4 1/2 f +3/4 1/4 1/2 f +1/4 3/4 1/2 f +x 0 0 g +-x 0 0 g +-x+1/2 1/2 0 g +x+1/2 1/2 0 g +x 0 1/2 h +-x 0 1/2 h +-x+1/2 1/2 1/2 h +x+1/2 1/2 1/2 h +0 y 0 i +0 -y 0 i +1/2 -y+1/2 0 i +1/2 y+1/2 0 i +0 y 1/2 j +0 -y 1/2 j +1/2 -y+1/2 1/2 j +1/2 y+1/2 1/2 j +0 0 z k +0 0 -z k +1/2 1/2 -z k +1/2 1/2 z k +0 1/2 z l +0 1/2 -z l +1/2 0 -z l +1/2 0 z l +x y z m +-x -y z m +-x y -z m +x -y -z m +-x+1/2 -y+1/2 -z m +x+1/2 y+1/2 -z m +x+1/2 -y+1/2 z m +-x+1/2 y+1/2 z m diff --git a/data/wyckoff/wyckoff50s1.txt b/data/wyckoff/wyckoff50s1.txt new file mode 100644 index 0000000..df3bd8c --- /dev/null +++ b/data/wyckoff/wyckoff50s1.txt @@ -0,0 +1,48 @@ +0 0 0 a +1/2 1/2 0 a +1/2 0 0 b +0 1/2 0 b +1/2 0 1/2 c +0 1/2 1/2 c +0 0 1/2 d +1/2 1/2 1/2 d +1/4 1/4 0 e +3/4 3/4 0 e +3/4 1/4 0 e +1/4 3/4 0 e +1/4 1/4 1/2 f +3/4 3/4 1/2 f +3/4 1/4 1/2 f +1/4 3/4 1/2 f +x 0 0 g +-x 0 0 g +-x+1/2 1/2 0 g +x+1/2 1/2 0 g +x 0 1/2 h +-x 0 1/2 h +-x+1/2 1/2 1/2 h +x+1/2 1/2 1/2 h +0 y 0 i +0 -y 0 i +1/2 -y+1/2 0 i +1/2 y+1/2 0 i +0 y 1/2 j +0 -y 1/2 j +1/2 -y+1/2 1/2 j +1/2 y+1/2 1/2 j +0 0 z k +0 0 -z k +1/2 1/2 -z k +1/2 1/2 z k +0 1/2 z l +0 1/2 -z l +1/2 0 -z l +1/2 0 z l +x y z m +-x -y z m +-x y -z m +x -y -z m +-x+1/2 -y+1/2 -z m +x+1/2 y+1/2 -z m +x+1/2 -y+1/2 z m +-x+1/2 y+1/2 z m diff --git a/data/wyckoff/wyckoff50s2.txt b/data/wyckoff/wyckoff50s2.txt new file mode 100644 index 0000000..b4798de --- /dev/null +++ b/data/wyckoff/wyckoff50s2.txt @@ -0,0 +1,48 @@ +1/4 1/4 0 a +3/4 3/4 0 a +3/4 1/4 0 b +1/4 3/4 0 b +3/4 1/4 1/2 c +1/4 3/4 1/2 c +1/4 1/4 1/2 d +3/4 3/4 1/2 d +0 0 0 e +1/2 1/2 0 e +1/2 0 0 e +0 1/2 0 e +0 0 1/2 f +1/2 1/2 1/2 f +1/2 0 1/2 f +0 1/2 1/2 f +x 1/4 0 g +-x+1/2 1/4 0 g +-x 3/4 0 g +x+1/2 3/4 0 g +x 1/4 1/2 h +-x+1/2 1/4 1/2 h +-x 3/4 1/2 h +x+1/2 3/4 1/2 h +1/4 y 0 i +1/4 -y+1/2 0 i +3/4 -y 0 i +3/4 y+1/2 0 i +1/4 y 1/2 j +1/4 -y+1/2 1/2 j +3/4 -y 1/2 j +3/4 y+1/2 1/2 j +1/4 1/4 z k +1/4 1/4 -z k +3/4 3/4 -z k +3/4 3/4 z k +1/4 3/4 z l +1/4 3/4 -z l +3/4 1/4 -z l +3/4 1/4 z l +x y z m +-x+1/2 -y+1/2 z m +-x+1/2 y -z m +x -y+1/2 -z m +-x -y -z m +x+1/2 y+1/2 -z m +x+1/2 -y z m +-x y+1/2 z m diff --git a/data/wyckoff/wyckoff51.txt b/data/wyckoff/wyckoff51.txt new file mode 100644 index 0000000..681a886 --- /dev/null +++ b/data/wyckoff/wyckoff51.txt @@ -0,0 +1,40 @@ +0 0 0 a +1/2 0 0 a +0 1/2 0 b +1/2 1/2 0 b +0 0 1/2 c +1/2 0 1/2 c +0 1/2 1/2 d +1/2 1/2 1/2 d +1/4 0 z e +3/4 0 -z e +1/4 1/2 z f +3/4 1/2 -z f +0 y 0 g +1/2 -y 0 g +0 -y 0 g +1/2 y 0 g +0 y 1/2 h +1/2 -y 1/2 h +0 -y 1/2 h +1/2 y 1/2 h +x 0 z i +-x+1/2 0 z i +-x 0 -z i +x+1/2 0 -z i +x 1/2 z j +-x+1/2 1/2 z j +-x 1/2 -z j +x+1/2 1/2 -z j +1/4 y z k +1/4 -y z k +3/4 y -z k +3/4 -y -z k +x y z l +-x+1/2 -y z l +-x y -z l +x+1/2 -y -z l +-x -y -z l +x+1/2 y -z l +x -y z l +-x+1/2 y z l diff --git a/data/wyckoff/wyckoff52.txt b/data/wyckoff/wyckoff52.txt new file mode 100644 index 0000000..bad3087 --- /dev/null +++ b/data/wyckoff/wyckoff52.txt @@ -0,0 +1,24 @@ +0 0 0 a +1/2 0 0 a +1/2 1/2 1/2 a +0 1/2 1/2 a +0 0 1/2 b +1/2 0 1/2 b +1/2 1/2 0 b +0 1/2 0 b +1/4 0 z c +1/4 1/2 -z+1/2 c +3/4 0 -z c +3/4 1/2 z+1/2 c +x 1/4 1/4 d +-x+1/2 3/4 1/4 d +-x 3/4 3/4 d +x+1/2 1/4 3/4 d +x y z e +-x+1/2 -y z e +-x+1/2 y+1/2 -z+1/2 e +x -y+1/2 -z+1/2 e +-x -y -z e +x+1/2 y -z e +x+1/2 -y+1/2 z+1/2 e +-x y+1/2 z+1/2 e diff --git a/data/wyckoff/wyckoff53.txt b/data/wyckoff/wyckoff53.txt new file mode 100644 index 0000000..d45ef40 --- /dev/null +++ b/data/wyckoff/wyckoff53.txt @@ -0,0 +1,32 @@ +0 0 0 a +1/2 0 1/2 a +1/2 0 0 b +0 0 1/2 b +1/2 1/2 0 c +0 1/2 1/2 c +0 1/2 0 d +1/2 1/2 1/2 d +x 0 0 e +-x+1/2 0 1/2 e +-x 0 0 e +x+1/2 0 1/2 e +x 1/2 0 f +-x+1/2 1/2 1/2 f +-x 1/2 0 f +x+1/2 1/2 1/2 f +1/4 y 1/4 g +1/4 -y 3/4 g +3/4 -y 3/4 g +3/4 y 1/4 g +0 y z h +1/2 -y z+1/2 h +1/2 y -z+1/2 h +0 -y -z h +x y z i +-x+1/2 -y z+1/2 i +-x+1/2 y -z+1/2 i +x -y -z i +-x -y -z i +x+1/2 y -z+1/2 i +x+1/2 -y z+1/2 i +-x y z i diff --git a/data/wyckoff/wyckoff54.txt b/data/wyckoff/wyckoff54.txt new file mode 100644 index 0000000..919243c --- /dev/null +++ b/data/wyckoff/wyckoff54.txt @@ -0,0 +1,28 @@ +0 0 0 a +1/2 0 0 a +0 0 1/2 a +1/2 0 1/2 a +0 1/2 0 b +1/2 1/2 0 b +0 1/2 1/2 b +1/2 1/2 1/2 b +0 y 1/4 c +1/2 -y 1/4 c +0 -y 3/4 c +1/2 y 3/4 c +1/4 0 z d +3/4 0 -z+1/2 d +3/4 0 -z d +1/4 0 z+1/2 d +1/4 1/2 z e +3/4 1/2 -z+1/2 e +3/4 1/2 -z e +1/4 1/2 z+1/2 e +x y z f +-x+1/2 -y z f +-x y -z+1/2 f +x+1/2 -y -z+1/2 f +-x -y -z f +x+1/2 y -z f +x -y z+1/2 f +-x+1/2 y z+1/2 f diff --git a/data/wyckoff/wyckoff55.txt b/data/wyckoff/wyckoff55.txt new file mode 100644 index 0000000..bb31ad4 --- /dev/null +++ b/data/wyckoff/wyckoff55.txt @@ -0,0 +1,32 @@ +0 0 0 a +1/2 1/2 0 a +0 0 1/2 b +1/2 1/2 1/2 b +0 1/2 0 c +1/2 0 0 c +0 1/2 1/2 d +1/2 0 1/2 d +0 0 z e +1/2 1/2 -z e +0 0 -z e +1/2 1/2 z e +0 1/2 z f +1/2 0 -z f +0 1/2 -z f +1/2 0 z f +x y 0 g +-x -y 0 g +-x+1/2 y+1/2 0 g +x+1/2 -y+1/2 0 g +x y 1/2 h +-x -y 1/2 h +-x+1/2 y+1/2 1/2 h +x+1/2 -y+1/2 1/2 h +x y z i +-x -y z i +-x+1/2 y+1/2 -z i +x+1/2 -y+1/2 -z i +-x -y -z i +x y -z i +x+1/2 -y+1/2 z i +-x+1/2 y+1/2 z i diff --git a/data/wyckoff/wyckoff56.txt b/data/wyckoff/wyckoff56.txt new file mode 100644 index 0000000..dde7235 --- /dev/null +++ b/data/wyckoff/wyckoff56.txt @@ -0,0 +1,24 @@ +0 0 0 a +1/2 1/2 0 a +0 1/2 1/2 a +1/2 0 1/2 a +0 0 1/2 b +1/2 1/2 1/2 b +0 1/2 0 b +1/2 0 0 b +1/4 1/4 z c +3/4 3/4 -z+1/2 c +3/4 3/4 -z c +1/4 1/4 z+1/2 c +1/4 3/4 z d +3/4 1/4 -z+1/2 d +3/4 1/4 -z d +1/4 3/4 z+1/2 d +x y z e +-x+1/2 -y+1/2 z e +-x y+1/2 -z+1/2 e +x+1/2 -y -z+1/2 e +-x -y -z e +x+1/2 y+1/2 -z e +x -y+1/2 z+1/2 e +-x+1/2 y z+1/2 e diff --git a/data/wyckoff/wyckoff57.txt b/data/wyckoff/wyckoff57.txt new file mode 100644 index 0000000..19f0ef9 --- /dev/null +++ b/data/wyckoff/wyckoff57.txt @@ -0,0 +1,24 @@ +0 0 0 a +0 0 1/2 a +0 1/2 1/2 a +0 1/2 0 a +1/2 0 0 b +1/2 0 1/2 b +1/2 1/2 1/2 b +1/2 1/2 0 b +x 1/4 0 c +-x 3/4 1/2 c +-x 3/4 0 c +x 1/4 1/2 c +x y 1/4 d +-x -y 3/4 d +-x y+1/2 1/4 d +x -y+1/2 3/4 d +x y z e +-x -y z+1/2 e +-x y+1/2 -z+1/2 e +x -y+1/2 -z e +-x -y -z e +x y -z+1/2 e +x -y+1/2 z+1/2 e +-x y+1/2 z e diff --git a/data/wyckoff/wyckoff58.txt b/data/wyckoff/wyckoff58.txt new file mode 100644 index 0000000..5d61497 --- /dev/null +++ b/data/wyckoff/wyckoff58.txt @@ -0,0 +1,28 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +0 1/2 0 c +1/2 0 1/2 c +0 1/2 1/2 d +1/2 0 0 d +0 0 z e +1/2 1/2 -z+1/2 e +0 0 -z e +1/2 1/2 z+1/2 e +0 1/2 z f +1/2 0 -z+1/2 f +0 1/2 -z f +1/2 0 z+1/2 f +x y 0 g +-x -y 0 g +-x+1/2 y+1/2 1/2 g +x+1/2 -y+1/2 1/2 g +x y z h +-x -y z h +-x+1/2 y+1/2 -z+1/2 h +x+1/2 -y+1/2 -z+1/2 h +-x -y -z h +x y -z h +x+1/2 -y+1/2 z+1/2 h +-x+1/2 y+1/2 z+1/2 h diff --git a/data/wyckoff/wyckoff59.txt b/data/wyckoff/wyckoff59.txt new file mode 100644 index 0000000..6cad411 --- /dev/null +++ b/data/wyckoff/wyckoff59.txt @@ -0,0 +1,28 @@ +0 0 z a +1/2 1/2 -z a +0 1/2 z b +1/2 0 -z b +1/4 1/4 0 c +3/4 3/4 0 c +1/4 3/4 0 c +3/4 1/4 0 c +1/4 1/4 1/2 d +3/4 3/4 1/2 d +1/4 3/4 1/2 d +3/4 1/4 1/2 d +0 y z e +0 -y z e +1/2 y+1/2 -z e +1/2 -y+1/2 -z e +x 0 z f +-x 0 z f +-x+1/2 1/2 -z f +x+1/2 1/2 -z f +x y z g +-x -y z g +-x+1/2 y+1/2 -z g +x+1/2 -y+1/2 -z g +-x+1/2 -y+1/2 -z g +x+1/2 y+1/2 -z g +x -y z g +-x y z g diff --git a/data/wyckoff/wyckoff59s1.txt b/data/wyckoff/wyckoff59s1.txt new file mode 100644 index 0000000..6cad411 --- /dev/null +++ b/data/wyckoff/wyckoff59s1.txt @@ -0,0 +1,28 @@ +0 0 z a +1/2 1/2 -z a +0 1/2 z b +1/2 0 -z b +1/4 1/4 0 c +3/4 3/4 0 c +1/4 3/4 0 c +3/4 1/4 0 c +1/4 1/4 1/2 d +3/4 3/4 1/2 d +1/4 3/4 1/2 d +3/4 1/4 1/2 d +0 y z e +0 -y z e +1/2 y+1/2 -z e +1/2 -y+1/2 -z e +x 0 z f +-x 0 z f +-x+1/2 1/2 -z f +x+1/2 1/2 -z f +x y z g +-x -y z g +-x+1/2 y+1/2 -z g +x+1/2 -y+1/2 -z g +-x+1/2 -y+1/2 -z g +x+1/2 y+1/2 -z g +x -y z g +-x y z g diff --git a/data/wyckoff/wyckoff59s2.txt b/data/wyckoff/wyckoff59s2.txt new file mode 100644 index 0000000..4d5c257 --- /dev/null +++ b/data/wyckoff/wyckoff59s2.txt @@ -0,0 +1,28 @@ +1/4 1/4 z a +3/4 3/4 -z a +1/4 3/4 z b +3/4 1/4 -z b +0 0 0 c +1/2 1/2 0 c +0 1/2 0 c +1/2 0 0 c +0 0 1/2 d +1/2 1/2 1/2 d +0 1/2 1/2 d +1/2 0 1/2 d +1/4 y z e +1/4 -y+1/2 z e +3/4 y+1/2 -z e +3/4 -y -z e +x 1/4 z f +-x+1/2 1/4 z f +-x 3/4 -z f +x+1/2 3/4 -z f +x y z g +-x+1/2 -y+1/2 z g +-x y+1/2 -z g +x+1/2 -y -z g +-x -y -z g +x+1/2 y+1/2 -z g +x -y+1/2 z g +-x+1/2 y z g diff --git a/data/wyckoff/wyckoff6.txt b/data/wyckoff/wyckoff6.txt new file mode 100644 index 0000000..037c8f3 --- /dev/null +++ b/data/wyckoff/wyckoff6.txt @@ -0,0 +1,4 @@ +x 0 z a +x 1/2 z b +x y z c +x -y z c diff --git a/data/wyckoff/wyckoff60.txt b/data/wyckoff/wyckoff60.txt new file mode 100644 index 0000000..2732326 --- /dev/null +++ b/data/wyckoff/wyckoff60.txt @@ -0,0 +1,20 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 a +1/2 1/2 0 a +0 1/2 0 b +1/2 0 1/2 b +0 1/2 1/2 b +1/2 0 0 b +0 y 1/4 c +1/2 -y+1/2 3/4 c +0 -y 3/4 c +1/2 y+1/2 1/4 c +x y z d +-x+1/2 -y+1/2 z+1/2 d +-x y -z+1/2 d +x+1/2 -y+1/2 -z d +-x -y -z d +x+1/2 y+1/2 -z+1/2 d +x -y z+1/2 d +-x+1/2 y+1/2 z d diff --git a/data/wyckoff/wyckoff61.txt b/data/wyckoff/wyckoff61.txt new file mode 100644 index 0000000..b541646 --- /dev/null +++ b/data/wyckoff/wyckoff61.txt @@ -0,0 +1,16 @@ +0 0 0 a +1/2 0 1/2 a +0 1/2 1/2 a +1/2 1/2 0 a +0 0 1/2 b +1/2 0 0 b +0 1/2 0 b +1/2 1/2 1/2 b +x y z c +-x+1/2 -y z+1/2 c +-x y+1/2 -z+1/2 c +x+1/2 -y+1/2 -z c +-x -y -z c +x+1/2 y -z+1/2 c +x -y+1/2 z+1/2 c +-x+1/2 y+1/2 z c diff --git a/data/wyckoff/wyckoff62.txt b/data/wyckoff/wyckoff62.txt new file mode 100644 index 0000000..902abb2 --- /dev/null +++ b/data/wyckoff/wyckoff62.txt @@ -0,0 +1,20 @@ +0 0 0 a +1/2 0 1/2 a +0 1/2 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 0 0 b +0 1/2 1/2 b +1/2 1/2 0 b +x 1/4 z c +-x+1/2 3/4 z+1/2 c +-x 3/4 -z c +x+1/2 1/4 -z+1/2 c +x y z d +-x+1/2 -y z+1/2 d +-x y+1/2 -z d +x+1/2 -y+1/2 -z+1/2 d +-x -y -z d +x+1/2 y -z+1/2 d +x -y+1/2 z d +-x+1/2 y+1/2 z+1/2 d diff --git a/data/wyckoff/wyckoff63.txt b/data/wyckoff/wyckoff63.txt new file mode 100644 index 0000000..fea3750 --- /dev/null +++ b/data/wyckoff/wyckoff63.txt @@ -0,0 +1,30 @@ +0 0 0 a +0 0 1/2 a +0 1/2 0 b +0 1/2 1/2 b +0 y 1/4 c +0 -y 3/4 c +1/4 1/4 0 d +3/4 3/4 1/2 d +3/4 1/4 1/2 d +1/4 3/4 0 d +x 0 0 e +-x 0 1/2 e +-x 0 0 e +x 0 1/2 e +0 y z f +0 -y z+1/2 f +0 y -z+1/2 f +0 -y -z f +x y 1/4 g +-x -y 3/4 g +-x y 1/4 g +x -y 3/4 g +x y z h +-x -y z+1/2 h +-x y -z+1/2 h +x -y -z h +-x -y -z h +x y -z+1/2 h +x -y z+1/2 h +-x y z h diff --git a/data/wyckoff/wyckoff64.txt b/data/wyckoff/wyckoff64.txt new file mode 100644 index 0000000..a8978a6 --- /dev/null +++ b/data/wyckoff/wyckoff64.txt @@ -0,0 +1,28 @@ +0 0 0 a +0 1/2 1/2 a +1/2 0 0 b +1/2 1/2 1/2 b +1/4 1/4 0 c +3/4 1/4 1/2 c +3/4 3/4 1/2 c +1/4 3/4 0 c +x 0 0 d +-x 1/2 1/2 d +-x 0 0 d +x 1/2 1/2 d +1/4 y 1/4 e +3/4 -y+1/2 3/4 e +3/4 -y 3/4 e +1/4 y+1/2 1/4 e +0 y z f +0 -y+1/2 z+1/2 f +0 y+1/2 -z+1/2 f +0 -y -z f +x y z g +-x -y+1/2 z+1/2 g +-x y+1/2 -z+1/2 g +x -y -z g +-x -y -z g +x y+1/2 -z+1/2 g +x -y+1/2 z+1/2 g +-x y z g diff --git a/data/wyckoff/wyckoff65.txt b/data/wyckoff/wyckoff65.txt new file mode 100644 index 0000000..fb2467e --- /dev/null +++ b/data/wyckoff/wyckoff65.txt @@ -0,0 +1,48 @@ +0 0 0 a +1/2 0 0 b +1/2 0 1/2 c +0 0 1/2 d +1/4 1/4 0 e +3/4 1/4 0 e +1/4 1/4 1/2 f +3/4 1/4 1/2 f +x 0 0 g +-x 0 0 g +x 0 1/2 h +-x 0 1/2 h +0 y 0 i +0 -y 0 i +0 y 1/2 j +0 -y 1/2 j +0 0 z k +0 0 -z k +0 1/2 z l +0 1/2 -z l +1/4 1/4 z m +3/4 1/4 -z m +3/4 3/4 -z m +1/4 3/4 z m +0 y z n +0 -y z n +0 y -z n +0 -y -z n +x 0 z o +-x 0 z o +-x 0 -z o +x 0 -z o +x y 0 p +-x -y 0 p +-x y 0 p +x -y 0 p +x y 1/2 q +-x -y 1/2 q +-x y 1/2 q +x -y 1/2 q +x y z r +-x -y z r +-x y -z r +x -y -z r +-x -y -z r +x y -z r +x -y z r +-x y z r diff --git a/data/wyckoff/wyckoff66.txt b/data/wyckoff/wyckoff66.txt new file mode 100644 index 0000000..f451961 --- /dev/null +++ b/data/wyckoff/wyckoff66.txt @@ -0,0 +1,44 @@ +0 0 1/4 a +0 0 3/4 a +0 1/2 1/4 b +0 1/2 3/4 b +0 0 0 c +0 0 1/2 c +0 1/2 0 d +0 1/2 1/2 d +1/4 1/4 0 e +3/4 1/4 1/2 e +1/4 3/4 0 f +3/4 3/4 1/2 f +x 0 1/4 g +-x 0 1/4 g +-x 0 3/4 g +x 0 3/4 g +0 y 1/4 h +0 -y 1/4 h +0 -y 3/4 h +0 y 3/4 h +0 0 z i +0 0 -z+1/2 i +0 0 -z i +0 0 z+1/2 i +0 1/2 z j +0 1/2 -z+1/2 j +0 1/2 -z j +0 1/2 z+1/2 j +1/4 1/4 z k +3/4 1/4 -z+1/2 k +3/4 3/4 -z k +1/4 3/4 z+1/2 k +x y 0 l +-x -y 0 l +-x y 1/2 l +x -y 1/2 l +x y z m +-x -y z m +-x y -z+1/2 m +x -y -z+1/2 m +-x -y -z m +x y -z m +x -y z+1/2 m +-x y z+1/2 m diff --git a/data/wyckoff/wyckoff67.txt b/data/wyckoff/wyckoff67.txt new file mode 100644 index 0000000..f088e5d --- /dev/null +++ b/data/wyckoff/wyckoff67.txt @@ -0,0 +1,50 @@ +1/4 0 0 a +3/4 0 0 a +1/4 0 1/2 b +3/4 0 1/2 b +0 0 0 c +0 1/2 0 c +0 0 1/2 d +0 1/2 1/2 d +1/4 1/4 0 e +3/4 1/4 0 e +1/4 1/4 1/2 f +3/4 1/4 1/2 f +0 1/4 z g +0 3/4 -z g +x 0 0 h +-x 1/2 0 h +-x 0 0 h +x 1/2 0 h +x 0 1/2 i +-x 1/2 1/2 i +-x 0 1/2 i +x 1/2 1/2 i +1/4 y 0 j +3/4 -y+1/2 0 j +3/4 -y 0 j +1/4 y+1/2 0 j +1/4 y 1/2 k +3/4 -y+1/2 1/2 k +3/4 -y 1/2 k +1/4 y+1/2 1/2 k +1/4 0 z l +3/4 1/2 -z l +3/4 0 -z l +1/4 1/2 z l +0 y z m +0 -y+1/2 z m +0 y+1/2 -z m +0 -y -z m +x 1/4 z n +-x 1/4 z n +-x 3/4 -z n +x 3/4 -z n +x y z o +-x -y+1/2 z o +-x y+1/2 -z o +x -y -z o +-x -y -z o +x y+1/2 -z o +x -y+1/2 z o +-x y z o diff --git a/data/wyckoff/wyckoff68.txt b/data/wyckoff/wyckoff68.txt new file mode 100644 index 0000000..e123742 --- /dev/null +++ b/data/wyckoff/wyckoff68.txt @@ -0,0 +1,36 @@ +0 0 0 a +0 1/2 1/2 a +0 0 1/2 b +0 1/2 0 b +1/4 0 1/4 c +1/4 1/2 1/4 c +3/4 0 3/4 c +3/4 1/2 3/4 c +0 1/4 1/4 d +1/2 1/4 1/4 d +0 1/4 3/4 d +1/2 1/4 3/4 d +x 0 0 e +-x+1/2 1/2 0 e +-x 1/2 1/2 e +x+1/2 0 1/2 e +0 y 0 f +1/2 -y+1/2 0 f +0 -y+1/2 1/2 f +1/2 y 1/2 f +0 0 z g +0 0 -z g +0 1/2 -z+1/2 g +0 1/2 z+1/2 g +1/4 1/4 z h +3/4 1/4 -z h +3/4 1/4 -z+1/2 h +1/4 1/4 z+1/2 h +x y z i +-x+1/2 -y+1/2 z i +-x y -z i +x+1/2 -y+1/2 -z i +-x -y+1/2 -z+1/2 i +x+1/2 y -z+1/2 i +x -y+1/2 z+1/2 i +-x+1/2 y z+1/2 i diff --git a/data/wyckoff/wyckoff68s1.txt b/data/wyckoff/wyckoff68s1.txt new file mode 100644 index 0000000..e123742 --- /dev/null +++ b/data/wyckoff/wyckoff68s1.txt @@ -0,0 +1,36 @@ +0 0 0 a +0 1/2 1/2 a +0 0 1/2 b +0 1/2 0 b +1/4 0 1/4 c +1/4 1/2 1/4 c +3/4 0 3/4 c +3/4 1/2 3/4 c +0 1/4 1/4 d +1/2 1/4 1/4 d +0 1/4 3/4 d +1/2 1/4 3/4 d +x 0 0 e +-x+1/2 1/2 0 e +-x 1/2 1/2 e +x+1/2 0 1/2 e +0 y 0 f +1/2 -y+1/2 0 f +0 -y+1/2 1/2 f +1/2 y 1/2 f +0 0 z g +0 0 -z g +0 1/2 -z+1/2 g +0 1/2 z+1/2 g +1/4 1/4 z h +3/4 1/4 -z h +3/4 1/4 -z+1/2 h +1/4 1/4 z+1/2 h +x y z i +-x+1/2 -y+1/2 z i +-x y -z i +x+1/2 -y+1/2 -z i +-x -y+1/2 -z+1/2 i +x+1/2 y -z+1/2 i +x -y+1/2 z+1/2 i +-x+1/2 y z+1/2 i diff --git a/data/wyckoff/wyckoff68s2.txt b/data/wyckoff/wyckoff68s2.txt new file mode 100644 index 0000000..d1f9a6d --- /dev/null +++ b/data/wyckoff/wyckoff68s2.txt @@ -0,0 +1,36 @@ +0 1/4 1/4 a +0 3/4 3/4 a +0 1/4 3/4 b +0 3/4 1/4 b +1/4 3/4 0 c +1/4 1/4 0 c +3/4 3/4 1/2 c +3/4 1/4 1/2 c +0 0 0 d +1/2 0 0 d +0 0 1/2 d +1/2 0 1/2 d +x 1/4 1/4 e +-x+1/2 3/4 1/4 e +-x 3/4 3/4 e +x+1/2 1/4 3/4 e +0 y 1/4 f +1/2 -y 1/4 f +0 -y 3/4 f +1/2 y 3/4 f +0 1/4 z g +0 1/4 -z+1/2 g +0 3/4 -z g +0 3/4 z+1/2 g +1/4 0 z h +3/4 0 -z+1/2 h +3/4 0 -z h +1/4 0 z+1/2 h +x y z i +-x+1/2 -y z i +-x y -z+1/2 i +x+1/2 -y -z+1/2 i +-x -y -z i +x+1/2 y -z i +x -y z+1/2 i +-x+1/2 y z+1/2 i diff --git a/data/wyckoff/wyckoff69.txt b/data/wyckoff/wyckoff69.txt new file mode 100644 index 0000000..6d05fdc --- /dev/null +++ b/data/wyckoff/wyckoff69.txt @@ -0,0 +1,48 @@ +0 0 0 a +0 0 1/2 b +0 1/4 1/4 c +0 3/4 1/4 c +1/4 0 1/4 d +3/4 0 1/4 d +1/4 1/4 0 e +3/4 1/4 0 e +1/4 1/4 1/4 f +3/4 3/4 3/4 f +x 0 0 g +-x 0 0 g +0 y 0 h +0 -y 0 h +0 0 z i +0 0 -z i +1/4 1/4 z j +3/4 1/4 -z j +3/4 3/4 -z j +1/4 3/4 z j +1/4 y 1/4 k +3/4 -y 1/4 k +3/4 -y 3/4 k +1/4 y 3/4 k +x 1/4 1/4 l +-x 3/4 1/4 l +-x 3/4 3/4 l +x 1/4 3/4 l +0 y z m +0 -y z m +0 y -z m +0 -y -z m +x 0 z n +-x 0 z n +-x 0 -z n +x 0 -z n +x y 0 o +-x -y 0 o +-x y 0 o +x -y 0 o +x y z p +-x -y z p +-x y -z p +x -y -z p +-x -y -z p +x y -z p +x -y z p +-x y z p diff --git a/data/wyckoff/wyckoff7.txt b/data/wyckoff/wyckoff7.txt new file mode 100644 index 0000000..0e25914 --- /dev/null +++ b/data/wyckoff/wyckoff7.txt @@ -0,0 +1,2 @@ +x y z a +x -y z+1/2 a diff --git a/data/wyckoff/wyckoff70.txt b/data/wyckoff/wyckoff70.txt new file mode 100644 index 0000000..a9d40f2 --- /dev/null +++ b/data/wyckoff/wyckoff70.txt @@ -0,0 +1,32 @@ +0 0 0 a +1/4 1/4 1/4 a +0 0 1/2 b +1/4 1/4 3/4 b +1/8 1/8 1/8 c +7/8 7/8 1/8 c +7/8 1/8 7/8 c +1/8 7/8 7/8 c +5/8 5/8 5/8 d +3/8 3/8 5/8 d +3/8 5/8 3/8 d +5/8 3/8 3/8 d +x 0 0 e +-x 0 0 e +-x+1/4 1/4 1/4 e +x+1/4 1/4 1/4 e +0 y 0 f +0 -y 0 f +1/4 -y+1/4 1/4 f +1/4 y+1/4 1/4 f +0 0 z g +0 0 -z g +1/4 1/4 -z+1/4 g +1/4 1/4 z+1/4 g +x y z h +-x -y z h +-x y -z h +x -y -z h +-x+1/4 -y+1/4 -z+1/4 h +x+1/4 y+1/4 -z+1/4 h +x+1/4 -y+1/4 z+1/4 h +-x+1/4 y+1/4 z+1/4 h diff --git a/data/wyckoff/wyckoff70s1.txt b/data/wyckoff/wyckoff70s1.txt new file mode 100644 index 0000000..a9d40f2 --- /dev/null +++ b/data/wyckoff/wyckoff70s1.txt @@ -0,0 +1,32 @@ +0 0 0 a +1/4 1/4 1/4 a +0 0 1/2 b +1/4 1/4 3/4 b +1/8 1/8 1/8 c +7/8 7/8 1/8 c +7/8 1/8 7/8 c +1/8 7/8 7/8 c +5/8 5/8 5/8 d +3/8 3/8 5/8 d +3/8 5/8 3/8 d +5/8 3/8 3/8 d +x 0 0 e +-x 0 0 e +-x+1/4 1/4 1/4 e +x+1/4 1/4 1/4 e +0 y 0 f +0 -y 0 f +1/4 -y+1/4 1/4 f +1/4 y+1/4 1/4 f +0 0 z g +0 0 -z g +1/4 1/4 -z+1/4 g +1/4 1/4 z+1/4 g +x y z h +-x -y z h +-x y -z h +x -y -z h +-x+1/4 -y+1/4 -z+1/4 h +x+1/4 y+1/4 -z+1/4 h +x+1/4 -y+1/4 z+1/4 h +-x+1/4 y+1/4 z+1/4 h diff --git a/data/wyckoff/wyckoff70s2.txt b/data/wyckoff/wyckoff70s2.txt new file mode 100644 index 0000000..bff33af --- /dev/null +++ b/data/wyckoff/wyckoff70s2.txt @@ -0,0 +1,32 @@ +1/8 1/8 1/8 a +7/8 7/8 7/8 a +1/8 1/8 5/8 b +7/8 7/8 3/8 b +0 0 0 c +3/4 3/4 0 c +3/4 0 3/4 c +0 3/4 3/4 c +1/2 1/2 1/2 d +1/4 1/4 1/2 d +1/4 1/2 1/4 d +1/2 1/4 1/4 d +x 1/8 1/8 e +-x+3/4 5/8 1/8 e +-x 7/8 7/8 e +x+1/4 3/8 7/8 e +1/8 y 1/8 f +5/8 -y+3/4 1/8 f +7/8 -y 7/8 f +3/8 y+1/4 7/8 f +1/8 1/8 z g +5/8 1/8 -z+3/4 g +7/8 7/8 -z g +3/8 7/8 z+1/4 g +x y z h +-x+3/4 -y+3/4 z h +-x+3/4 y -z+3/4 h +x -y+3/4 -z+3/4 h +-x -y -z h +x+1/4 y+1/4 -z h +x+1/4 -y z+1/4 h +-x y+1/4 z+1/4 h diff --git a/data/wyckoff/wyckoff71.txt b/data/wyckoff/wyckoff71.txt new file mode 100644 index 0000000..6567723 --- /dev/null +++ b/data/wyckoff/wyckoff71.txt @@ -0,0 +1,40 @@ +0 0 0 a +0 1/2 1/2 b +1/2 1/2 0 c +1/2 0 1/2 d +x 0 0 e +-x 0 0 e +x 1/2 0 f +-x 1/2 0 f +0 y 0 g +0 -y 0 g +0 y 1/2 h +0 -y 1/2 h +0 0 z i +0 0 -z i +1/2 0 z j +1/2 0 -z j +1/4 1/4 1/4 k +3/4 3/4 1/4 k +3/4 1/4 3/4 k +1/4 3/4 3/4 k +0 y z l +0 -y z l +0 y -z l +0 -y -z l +x 0 z m +-x 0 z m +-x 0 -z m +x 0 -z m +x y 0 n +-x -y 0 n +-x y 0 n +x -y 0 n +x y z o +-x -y z o +-x y -z o +x -y -z o +-x -y -z o +x y -z o +x -y z o +-x y z o diff --git a/data/wyckoff/wyckoff72.txt b/data/wyckoff/wyckoff72.txt new file mode 100644 index 0000000..a5a7dd7 --- /dev/null +++ b/data/wyckoff/wyckoff72.txt @@ -0,0 +1,40 @@ +0 0 1/4 a +0 0 3/4 a +1/2 0 1/4 b +1/2 0 3/4 b +0 0 0 c +1/2 1/2 0 c +1/2 0 0 d +0 1/2 0 d +1/4 1/4 1/4 e +3/4 3/4 1/4 e +1/4 3/4 3/4 e +3/4 1/4 3/4 e +x 0 1/4 f +-x 0 1/4 f +-x 0 3/4 f +x 0 3/4 f +0 y 1/4 g +0 -y 1/4 g +0 -y 3/4 g +0 y 3/4 g +0 0 z h +1/2 1/2 -z h +0 0 -z h +1/2 1/2 z h +0 1/2 z i +1/2 0 -z i +0 1/2 -z i +1/2 0 z i +x y 0 j +-x -y 0 j +-x+1/2 y+1/2 0 j +x+1/2 -y+1/2 0 j +x y z k +-x -y z k +-x+1/2 y+1/2 -z k +x+1/2 -y+1/2 -z k +-x -y -z k +x y -z k +x+1/2 -y+1/2 z k +-x+1/2 y+1/2 z k diff --git a/data/wyckoff/wyckoff73.txt b/data/wyckoff/wyckoff73.txt new file mode 100644 index 0000000..9149d5b --- /dev/null +++ b/data/wyckoff/wyckoff73.txt @@ -0,0 +1,28 @@ +0 0 0 a +1/2 0 1/2 a +0 1/2 1/2 a +1/2 1/2 0 a +1/4 1/4 1/4 b +1/4 3/4 3/4 b +3/4 3/4 1/4 b +3/4 1/4 3/4 b +x 0 1/4 c +-x+1/2 0 3/4 c +-x 0 3/4 c +x+1/2 0 1/4 c +1/4 y 0 d +1/4 -y 1/2 d +3/4 -y 0 d +3/4 y 1/2 d +0 1/4 z e +0 3/4 -z+1/2 e +0 3/4 -z e +0 1/4 z+1/2 e +x y z f +-x+1/2 -y z+1/2 f +-x y+1/2 -z+1/2 f +x+1/2 -y+1/2 -z f +-x -y -z f +x+1/2 y -z+1/2 f +x -y+1/2 z+1/2 f +-x+1/2 y+1/2 z f diff --git a/data/wyckoff/wyckoff74.txt b/data/wyckoff/wyckoff74.txt new file mode 100644 index 0000000..6097e7d --- /dev/null +++ b/data/wyckoff/wyckoff74.txt @@ -0,0 +1,34 @@ +0 0 0 a +0 1/2 0 a +0 0 1/2 b +0 1/2 1/2 b +1/4 1/4 1/4 c +3/4 1/4 1/4 c +1/4 1/4 3/4 d +3/4 1/4 3/4 d +0 1/4 z e +0 3/4 -z e +x 0 0 f +-x 1/2 0 f +-x 0 0 f +x 1/2 0 f +1/4 y 1/4 g +3/4 -y+1/2 1/4 g +3/4 -y 3/4 g +1/4 y+1/2 3/4 g +0 y z h +0 -y+1/2 z h +0 y+1/2 -z h +0 -y -z h +x 1/4 z i +-x 1/4 z i +-x 3/4 -z i +x 3/4 -z i +x y z j +-x -y+1/2 z j +-x y+1/2 -z j +x -y -z j +-x -y -z j +x y+1/2 -z j +x -y+1/2 z j +-x y z j diff --git a/data/wyckoff/wyckoff75.txt b/data/wyckoff/wyckoff75.txt new file mode 100644 index 0000000..9068207 --- /dev/null +++ b/data/wyckoff/wyckoff75.txt @@ -0,0 +1,8 @@ +0 0 z a +1/2 1/2 z b +0 1/2 z c +1/2 0 z c +x y z d +-x -y z d +-y x z d +y -x z d diff --git a/data/wyckoff/wyckoff76.txt b/data/wyckoff/wyckoff76.txt new file mode 100644 index 0000000..04966ff --- /dev/null +++ b/data/wyckoff/wyckoff76.txt @@ -0,0 +1,4 @@ +x y z a +-x -y z+1/2 a +-y x z+1/4 a +y -x z+3/4 a diff --git a/data/wyckoff/wyckoff77.txt b/data/wyckoff/wyckoff77.txt new file mode 100644 index 0000000..2bcea39 --- /dev/null +++ b/data/wyckoff/wyckoff77.txt @@ -0,0 +1,10 @@ +0 0 z a +0 0 z+1/2 a +1/2 1/2 z b +1/2 1/2 z+1/2 b +0 1/2 z c +1/2 0 z+1/2 c +x y z d +-x -y z d +-y x z+1/2 d +y -x z+1/2 d diff --git a/data/wyckoff/wyckoff78.txt b/data/wyckoff/wyckoff78.txt new file mode 100644 index 0000000..ee0a06a --- /dev/null +++ b/data/wyckoff/wyckoff78.txt @@ -0,0 +1,4 @@ +x y z a +-x -y z+1/2 a +-y x z+3/4 a +y -x z+1/4 a diff --git a/data/wyckoff/wyckoff79.txt b/data/wyckoff/wyckoff79.txt new file mode 100644 index 0000000..d26bfd8 --- /dev/null +++ b/data/wyckoff/wyckoff79.txt @@ -0,0 +1,7 @@ +0 0 z a +0 1/2 z b +1/2 0 z b +x y z c +-x -y z c +-y x z c +y -x z c diff --git a/data/wyckoff/wyckoff8.txt b/data/wyckoff/wyckoff8.txt new file mode 100644 index 0000000..fe2d9ee --- /dev/null +++ b/data/wyckoff/wyckoff8.txt @@ -0,0 +1,3 @@ +x 0 z a +x y z b +x -y z b diff --git a/data/wyckoff/wyckoff80.txt b/data/wyckoff/wyckoff80.txt new file mode 100644 index 0000000..d413f51 --- /dev/null +++ b/data/wyckoff/wyckoff80.txt @@ -0,0 +1,6 @@ +0 0 z a +0 1/2 z+1/4 a +x y z b +-x+1/2 -y+1/2 z+1/2 b +-y x+1/2 z+1/4 b +y+1/2 -x z+3/4 b diff --git a/data/wyckoff/wyckoff81.txt b/data/wyckoff/wyckoff81.txt new file mode 100644 index 0000000..2830089 --- /dev/null +++ b/data/wyckoff/wyckoff81.txt @@ -0,0 +1,14 @@ +0 0 0 a +0 0 1/2 b +1/2 1/2 0 c +1/2 1/2 1/2 d +0 0 z e +0 0 -z e +1/2 1/2 z f +1/2 1/2 -z f +0 1/2 z g +1/2 0 -z g +x y z h +-x -y z h +y -x -z h +-y x -z h diff --git a/data/wyckoff/wyckoff82.txt b/data/wyckoff/wyckoff82.txt new file mode 100644 index 0000000..11102c0 --- /dev/null +++ b/data/wyckoff/wyckoff82.txt @@ -0,0 +1,12 @@ +0 0 0 a +0 0 1/2 b +0 1/2 1/4 c +0 1/2 3/4 d +0 0 z e +0 0 -z e +0 1/2 z f +1/2 0 -z f +x y z g +-x -y z g +y -x -z g +-y x -z g diff --git a/data/wyckoff/wyckoff83.txt b/data/wyckoff/wyckoff83.txt new file mode 100644 index 0000000..ebf39f6 --- /dev/null +++ b/data/wyckoff/wyckoff83.txt @@ -0,0 +1,32 @@ +0 0 0 a +0 0 1/2 b +1/2 1/2 0 c +1/2 1/2 1/2 d +0 1/2 0 e +1/2 0 0 e +0 1/2 1/2 f +1/2 0 1/2 f +0 0 z g +0 0 -z g +1/2 1/2 z h +1/2 1/2 -z h +0 1/2 z i +1/2 0 z i +0 1/2 -z i +1/2 0 -z i +x y 0 j +-x -y 0 j +-y x 0 j +y -x 0 j +x y 1/2 k +-x -y 1/2 k +-y x 1/2 k +y -x 1/2 k +x y z l +-x -y z l +-y x z l +y -x z l +-x -y -z l +x y -z l +y -x -z l +-y x -z l diff --git a/data/wyckoff/wyckoff84.txt b/data/wyckoff/wyckoff84.txt new file mode 100644 index 0000000..3c1a7d7 --- /dev/null +++ b/data/wyckoff/wyckoff84.txt @@ -0,0 +1,36 @@ +0 0 0 a +0 0 1/2 a +1/2 1/2 0 b +1/2 1/2 1/2 b +0 1/2 0 c +1/2 0 1/2 c +0 1/2 1/2 d +1/2 0 0 d +0 0 1/4 e +0 0 3/4 e +1/2 1/2 1/4 f +1/2 1/2 3/4 f +0 0 z g +0 0 z+1/2 g +0 0 -z g +0 0 -z+1/2 g +1/2 1/2 z h +1/2 1/2 z+1/2 h +1/2 1/2 -z h +1/2 1/2 -z+1/2 h +0 1/2 z i +1/2 0 z+1/2 i +0 1/2 -z i +1/2 0 -z+1/2 i +x y 0 j +-x -y 0 j +-y x 1/2 j +y -x 1/2 j +x y z k +-x -y z k +-y x z+1/2 k +y -x z+1/2 k +-x -y -z k +x y -z k +y -x -z+1/2 k +-y x -z+1/2 k diff --git a/data/wyckoff/wyckoff85.txt b/data/wyckoff/wyckoff85.txt new file mode 100644 index 0000000..eb93d8e --- /dev/null +++ b/data/wyckoff/wyckoff85.txt @@ -0,0 +1,26 @@ +0 0 0 a +1/2 1/2 0 a +0 0 1/2 b +1/2 1/2 1/2 b +0 1/2 z c +1/2 0 -z c +1/4 1/4 0 d +3/4 3/4 0 d +1/4 3/4 0 d +3/4 1/4 0 d +1/4 1/4 1/2 e +3/4 3/4 1/2 e +1/4 3/4 1/2 e +3/4 1/4 1/2 e +0 0 z f +1/2 1/2 z f +1/2 1/2 -z f +0 0 -z f +x y z g +-x -y z g +-y+1/2 x+1/2 z g +y+1/2 -x+1/2 z g +-x+1/2 -y+1/2 -z g +x+1/2 y+1/2 -z g +y -x -z g +-y x -z g diff --git a/data/wyckoff/wyckoff85s1.txt b/data/wyckoff/wyckoff85s1.txt new file mode 100644 index 0000000..eb93d8e --- /dev/null +++ b/data/wyckoff/wyckoff85s1.txt @@ -0,0 +1,26 @@ +0 0 0 a +1/2 1/2 0 a +0 0 1/2 b +1/2 1/2 1/2 b +0 1/2 z c +1/2 0 -z c +1/4 1/4 0 d +3/4 3/4 0 d +1/4 3/4 0 d +3/4 1/4 0 d +1/4 1/4 1/2 e +3/4 3/4 1/2 e +1/4 3/4 1/2 e +3/4 1/4 1/2 e +0 0 z f +1/2 1/2 z f +1/2 1/2 -z f +0 0 -z f +x y z g +-x -y z g +-y+1/2 x+1/2 z g +y+1/2 -x+1/2 z g +-x+1/2 -y+1/2 -z g +x+1/2 y+1/2 -z g +y -x -z g +-y x -z g diff --git a/data/wyckoff/wyckoff85s2.txt b/data/wyckoff/wyckoff85s2.txt new file mode 100644 index 0000000..012cd86 --- /dev/null +++ b/data/wyckoff/wyckoff85s2.txt @@ -0,0 +1,26 @@ +1/4 3/4 0 a +3/4 1/4 0 a +1/4 3/4 1/2 b +3/4 1/4 1/2 b +1/4 1/4 z c +3/4 3/4 -z c +0 0 0 d +1/2 1/2 0 d +1/2 0 0 d +0 1/2 0 d +0 0 1/2 e +1/2 1/2 1/2 e +1/2 0 1/2 e +0 1/2 1/2 e +1/4 3/4 z f +3/4 1/4 z f +3/4 1/4 -z f +1/4 3/4 -z f +x y z g +-x+1/2 -y+1/2 z g +-y+1/2 x z g +y -x+1/2 z g +-x -y -z g +x+1/2 y+1/2 -z g +y+1/2 -x -z g +-y x+1/2 -z g diff --git a/data/wyckoff/wyckoff86.txt b/data/wyckoff/wyckoff86.txt new file mode 100644 index 0000000..bad2787 --- /dev/null +++ b/data/wyckoff/wyckoff86.txt @@ -0,0 +1,28 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +1/4 1/4 1/4 c +3/4 3/4 1/4 c +1/4 3/4 3/4 c +3/4 1/4 3/4 c +1/4 1/4 3/4 d +3/4 3/4 3/4 d +1/4 3/4 1/4 d +3/4 1/4 1/4 d +0 1/2 z e +0 1/2 z+1/2 e +1/2 0 -z+1/2 e +1/2 0 -z e +0 0 z f +1/2 1/2 z+1/2 f +1/2 1/2 -z+1/2 f +0 0 -z f +x y z g +-x -y z g +-y+1/2 x+1/2 z+1/2 g +y+1/2 -x+1/2 z+1/2 g +-x+1/2 -y+1/2 -z+1/2 g +x+1/2 y+1/2 -z+1/2 g +y -x -z g +-y x -z g diff --git a/data/wyckoff/wyckoff86s1.txt b/data/wyckoff/wyckoff86s1.txt new file mode 100644 index 0000000..bad2787 --- /dev/null +++ b/data/wyckoff/wyckoff86s1.txt @@ -0,0 +1,28 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +1/4 1/4 1/4 c +3/4 3/4 1/4 c +1/4 3/4 3/4 c +3/4 1/4 3/4 c +1/4 1/4 3/4 d +3/4 3/4 3/4 d +1/4 3/4 1/4 d +3/4 1/4 1/4 d +0 1/2 z e +0 1/2 z+1/2 e +1/2 0 -z+1/2 e +1/2 0 -z e +0 0 z f +1/2 1/2 z+1/2 f +1/2 1/2 -z+1/2 f +0 0 -z f +x y z g +-x -y z g +-y+1/2 x+1/2 z+1/2 g +y+1/2 -x+1/2 z+1/2 g +-x+1/2 -y+1/2 -z+1/2 g +x+1/2 y+1/2 -z+1/2 g +y -x -z g +-y x -z g diff --git a/data/wyckoff/wyckoff86s2.txt b/data/wyckoff/wyckoff86s2.txt new file mode 100644 index 0000000..cb1d6f5 --- /dev/null +++ b/data/wyckoff/wyckoff86s2.txt @@ -0,0 +1,28 @@ +1/4 1/4 1/4 a +3/4 3/4 3/4 a +1/4 1/4 3/4 b +3/4 3/4 1/4 b +0 0 0 c +1/2 1/2 0 c +0 1/2 1/2 c +1/2 0 1/2 c +0 0 1/2 d +1/2 1/2 1/2 d +0 1/2 0 d +1/2 0 0 d +3/4 1/4 z e +3/4 1/4 z+1/2 e +1/4 3/4 -z e +1/4 3/4 -z+1/2 e +1/4 1/4 z f +3/4 3/4 z+1/2 f +3/4 3/4 -z f +1/4 1/4 -z+1/2 f +x y z g +-x+1/2 -y+1/2 z g +-y x+1/2 z+1/2 g +y+1/2 -x z+1/2 g +-x -y -z g +x+1/2 y+1/2 -z g +y -x+1/2 -z+1/2 g +-y+1/2 x -z+1/2 g diff --git a/data/wyckoff/wyckoff87.txt b/data/wyckoff/wyckoff87.txt new file mode 100644 index 0000000..36b524a --- /dev/null +++ b/data/wyckoff/wyckoff87.txt @@ -0,0 +1,28 @@ +0 0 0 a +0 0 1/2 b +0 1/2 0 c +1/2 0 0 c +0 1/2 1/4 d +1/2 0 1/4 d +0 0 z e +0 0 -z e +1/4 1/4 1/4 f +3/4 3/4 1/4 f +3/4 1/4 1/4 f +1/4 3/4 1/4 f +0 1/2 z g +1/2 0 z g +0 1/2 -z g +1/2 0 -z g +x y 0 h +-x -y 0 h +-y x 0 h +y -x 0 h +x y z i +-x -y z i +-y x z i +y -x z i +-x -y -z i +x y -z i +y -x -z i +-y x -z i diff --git a/data/wyckoff/wyckoff88.txt b/data/wyckoff/wyckoff88.txt new file mode 100644 index 0000000..30ece33 --- /dev/null +++ b/data/wyckoff/wyckoff88.txt @@ -0,0 +1,24 @@ +0 0 0 a +0 1/2 1/4 a +0 0 1/2 b +0 1/2 3/4 b +0 1/4 1/8 c +1/2 1/4 5/8 c +3/4 1/2 3/8 c +3/4 0 7/8 c +0 1/4 5/8 d +1/2 1/4 1/8 d +3/4 1/2 7/8 d +3/4 0 3/8 d +0 0 z e +0 1/2 z+1/4 e +0 1/2 -z+1/4 e +0 0 -z e +x y z f +-x+1/2 -y+1/2 z+1/2 f +-y x+1/2 z+1/4 f +y+1/2 -x z+3/4 f +-x -y+1/2 -z+1/4 f +x+1/2 y -z+3/4 f +y -x -z f +-y+1/2 x+1/2 -z+1/2 f diff --git a/data/wyckoff/wyckoff88s1.txt b/data/wyckoff/wyckoff88s1.txt new file mode 100644 index 0000000..30ece33 --- /dev/null +++ b/data/wyckoff/wyckoff88s1.txt @@ -0,0 +1,24 @@ +0 0 0 a +0 1/2 1/4 a +0 0 1/2 b +0 1/2 3/4 b +0 1/4 1/8 c +1/2 1/4 5/8 c +3/4 1/2 3/8 c +3/4 0 7/8 c +0 1/4 5/8 d +1/2 1/4 1/8 d +3/4 1/2 7/8 d +3/4 0 3/8 d +0 0 z e +0 1/2 z+1/4 e +0 1/2 -z+1/4 e +0 0 -z e +x y z f +-x+1/2 -y+1/2 z+1/2 f +-y x+1/2 z+1/4 f +y+1/2 -x z+3/4 f +-x -y+1/2 -z+1/4 f +x+1/2 y -z+3/4 f +y -x -z f +-y+1/2 x+1/2 -z+1/2 f diff --git a/data/wyckoff/wyckoff88s2.txt b/data/wyckoff/wyckoff88s2.txt new file mode 100644 index 0000000..2a34573 --- /dev/null +++ b/data/wyckoff/wyckoff88s2.txt @@ -0,0 +1,24 @@ +0 1/4 1/8 a +1/2 1/4 3/8 a +0 1/4 5/8 b +1/2 1/4 7/8 b +0 0 0 c +1/2 0 1/2 c +3/4 1/4 1/4 c +3/4 3/4 3/4 c +0 0 1/2 d +1/2 0 0 d +3/4 1/4 3/4 d +3/4 3/4 1/4 d +0 1/4 z e +1/2 1/4 z+1/4 e +0 3/4 -z e +1/2 3/4 -z+3/4 e +x y z f +-x+1/2 -y z+1/2 f +-y+3/4 x+1/4 z+1/4 f +y+3/4 -x+3/4 z+3/4 f +-x -y -z f +x+1/2 y -z+1/2 f +y+1/4 -x+3/4 -z+3/4 f +-y+1/4 x+1/4 -z+1/4 f diff --git a/data/wyckoff/wyckoff89.txt b/data/wyckoff/wyckoff89.txt new file mode 100644 index 0000000..b196880 --- /dev/null +++ b/data/wyckoff/wyckoff89.txt @@ -0,0 +1,48 @@ +0 0 0 a +0 0 1/2 b +1/2 1/2 0 c +1/2 1/2 1/2 d +1/2 0 0 e +0 1/2 0 e +1/2 0 1/2 f +0 1/2 1/2 f +0 0 z g +0 0 -z g +1/2 1/2 z h +1/2 1/2 -z h +0 1/2 z i +1/2 0 z i +0 1/2 -z i +1/2 0 -z i +x x 0 j +-x -x 0 j +-x x 0 j +x -x 0 j +x x 1/2 k +-x -x 1/2 k +-x x 1/2 k +x -x 1/2 k +x 0 0 l +-x 0 0 l +0 x 0 l +0 -x 0 l +x 1/2 1/2 m +-x 1/2 1/2 m +1/2 x 1/2 m +1/2 -x 1/2 m +x 0 1/2 n +-x 0 1/2 n +0 x 1/2 n +0 -x 1/2 n +x 1/2 0 o +-x 1/2 0 o +1/2 x 0 o +1/2 -x 0 o +x y z p +-x -y z p +-y x z p +y -x z p +-x y -z p +x -y -z p +y x -z p +-y -x -z p diff --git a/data/wyckoff/wyckoff9.txt b/data/wyckoff/wyckoff9.txt new file mode 100644 index 0000000..0e25914 --- /dev/null +++ b/data/wyckoff/wyckoff9.txt @@ -0,0 +1,2 @@ +x y z a +x -y z+1/2 a diff --git a/data/wyckoff/wyckoff90.txt b/data/wyckoff/wyckoff90.txt new file mode 100644 index 0000000..7dc3736 --- /dev/null +++ b/data/wyckoff/wyckoff90.txt @@ -0,0 +1,26 @@ +0 0 0 a +1/2 1/2 0 a +0 0 1/2 b +1/2 1/2 1/2 b +0 1/2 z c +1/2 0 -z c +0 0 z d +1/2 1/2 z d +1/2 1/2 -z d +0 0 -z d +x x 0 e +-x -x 0 e +-x+1/2 x+1/2 0 e +x+1/2 -x+1/2 0 e +x x 1/2 f +-x -x 1/2 f +-x+1/2 x+1/2 1/2 f +x+1/2 -x+1/2 1/2 f +x y z g +-x -y z g +-y+1/2 x+1/2 z g +y+1/2 -x+1/2 z g +-x+1/2 y+1/2 -z g +x+1/2 -y+1/2 -z g +y x -z g +-y -x -z g diff --git a/data/wyckoff/wyckoff91.txt b/data/wyckoff/wyckoff91.txt new file mode 100644 index 0000000..d59f3c1 --- /dev/null +++ b/data/wyckoff/wyckoff91.txt @@ -0,0 +1,20 @@ +0 y 0 a +0 -y 1/2 a +-y 0 1/4 a +y 0 3/4 a +1/2 y 0 b +1/2 -y 1/2 b +-y 1/2 1/4 b +y 1/2 3/4 b +x x 3/8 c +-x -x 7/8 c +-x x 5/8 c +x -x 1/8 c +x y z d +-x -y z+1/2 d +-y x z+1/4 d +y -x z+3/4 d +-x y -z d +x -y -z+1/2 d +y x -z+3/4 d +-y -x -z+1/4 d diff --git a/data/wyckoff/wyckoff92.txt b/data/wyckoff/wyckoff92.txt new file mode 100644 index 0000000..d5b830a --- /dev/null +++ b/data/wyckoff/wyckoff92.txt @@ -0,0 +1,12 @@ +x x 0 a +-x -x 1/2 a +-x+1/2 x+1/2 1/4 a +x+1/2 -x+1/2 3/4 a +x y z b +-x -y z+1/2 b +-y+1/2 x+1/2 z+1/4 b +y+1/2 -x+1/2 z+3/4 b +-x+1/2 y+1/2 -z+1/4 b +x+1/2 -y+1/2 -z+3/4 b +y x -z b +-y -x -z+1/2 b diff --git a/data/wyckoff/wyckoff93.txt b/data/wyckoff/wyckoff93.txt new file mode 100644 index 0000000..2ea6a7d --- /dev/null +++ b/data/wyckoff/wyckoff93.txt @@ -0,0 +1,56 @@ +0 0 0 a +0 0 1/2 a +1/2 1/2 0 b +1/2 1/2 1/2 b +0 1/2 0 c +1/2 0 1/2 c +0 1/2 1/2 d +1/2 0 0 d +0 0 1/4 e +0 0 3/4 e +1/2 1/2 1/4 f +1/2 1/2 3/4 f +0 0 z g +0 0 z+1/2 g +0 0 -z g +0 0 -z+1/2 g +1/2 1/2 z h +1/2 1/2 z+1/2 h +1/2 1/2 -z h +1/2 1/2 -z+1/2 h +0 1/2 z i +1/2 0 z+1/2 i +0 1/2 -z i +1/2 0 -z+1/2 i +x 0 0 j +-x 0 0 j +0 x 1/2 j +0 -x 1/2 j +x 1/2 1/2 k +-x 1/2 1/2 k +1/2 x 0 k +1/2 -x 0 k +x 0 1/2 l +-x 0 1/2 l +0 x 0 l +0 -x 0 l +x 1/2 0 m +-x 1/2 0 m +1/2 x 1/2 m +1/2 -x 1/2 m +x x 1/4 n +-x -x 1/4 n +-x x 3/4 n +x -x 3/4 n +x x 3/4 o +-x -x 3/4 o +-x x 1/4 o +x -x 1/4 o +x y z p +-x -y z p +-y x z+1/2 p +y -x z+1/2 p +-x y -z p +x -y -z p +y x -z+1/2 p +-y -x -z+1/2 p diff --git a/data/wyckoff/wyckoff94.txt b/data/wyckoff/wyckoff94.txt new file mode 100644 index 0000000..c7c2771 --- /dev/null +++ b/data/wyckoff/wyckoff94.txt @@ -0,0 +1,28 @@ +0 0 0 a +1/2 1/2 1/2 a +0 0 1/2 b +1/2 1/2 0 b +0 0 z c +1/2 1/2 z+1/2 c +1/2 1/2 -z+1/2 c +0 0 -z c +0 1/2 z d +0 1/2 z+1/2 d +1/2 0 -z+1/2 d +1/2 0 -z d +x x 0 e +-x -x 0 e +-x+1/2 x+1/2 1/2 e +x+1/2 -x+1/2 1/2 e +x x 1/2 f +-x -x 1/2 f +-x+1/2 x+1/2 0 f +x+1/2 -x+1/2 0 f +x y z g +-x -y z g +-y+1/2 x+1/2 z+1/2 g +y+1/2 -x+1/2 z+1/2 g +-x+1/2 y+1/2 -z+1/2 g +x+1/2 -y+1/2 -z+1/2 g +y x -z g +-y -x -z g diff --git a/data/wyckoff/wyckoff95.txt b/data/wyckoff/wyckoff95.txt new file mode 100644 index 0000000..06cbe38 --- /dev/null +++ b/data/wyckoff/wyckoff95.txt @@ -0,0 +1,20 @@ +0 y 0 a +0 -y 1/2 a +-y 0 3/4 a +y 0 1/4 a +1/2 y 0 b +1/2 -y 1/2 b +-y 1/2 3/4 b +y 1/2 1/4 b +x x 5/8 c +-x -x 1/8 c +-x x 3/8 c +x -x 7/8 c +x y z d +-x -y z+1/2 d +-y x z+3/4 d +y -x z+1/4 d +-x y -z d +x -y -z+1/2 d +y x -z+1/4 d +-y -x -z+3/4 d diff --git a/data/wyckoff/wyckoff96.txt b/data/wyckoff/wyckoff96.txt new file mode 100644 index 0000000..aaa99ec --- /dev/null +++ b/data/wyckoff/wyckoff96.txt @@ -0,0 +1,12 @@ +x x 0 a +-x -x 1/2 a +-x+1/2 x+1/2 3/4 a +x+1/2 -x+1/2 1/4 a +x y z b +-x -y z+1/2 b +-y+1/2 x+1/2 z+3/4 b +y+1/2 -x+1/2 z+1/4 b +-x+1/2 y+1/2 -z+3/4 b +x+1/2 -y+1/2 -z+1/4 b +y x -z b +-y -x -z+1/2 b diff --git a/data/wyckoff/wyckoff97.txt b/data/wyckoff/wyckoff97.txt new file mode 100644 index 0000000..0f7fa89 --- /dev/null +++ b/data/wyckoff/wyckoff97.txt @@ -0,0 +1,36 @@ +0 0 0 a +0 0 1/2 b +0 1/2 0 c +1/2 0 0 c +0 1/2 1/4 d +1/2 0 1/4 d +0 0 z e +0 0 -z e +0 1/2 z f +1/2 0 z f +0 1/2 -z f +1/2 0 -z f +x x 0 g +-x -x 0 g +-x x 0 g +x -x 0 g +x 0 0 h +-x 0 0 h +0 x 0 h +0 -x 0 h +x 0 1/2 i +-x 0 1/2 i +0 x 1/2 i +0 -x 1/2 i +x x+1/2 1/4 j +-x -x+1/2 1/4 j +-x+1/2 x 1/4 j +x+1/2 -x 1/4 j +x y z k +-x -y z k +-y x z k +y -x z k +-x y -z k +x -y -z k +y x -z k +-y -x -z k diff --git a/data/wyckoff/wyckoff98.txt b/data/wyckoff/wyckoff98.txt new file mode 100644 index 0000000..6073a4f --- /dev/null +++ b/data/wyckoff/wyckoff98.txt @@ -0,0 +1,28 @@ +0 0 0 a +0 1/2 1/4 a +0 0 1/2 b +0 1/2 3/4 b +0 0 z c +0 1/2 z+1/4 c +1/2 0 -z+3/4 c +1/2 1/2 -z+1/2 c +x x 0 d +-x+1/2 -x+1/2 1/2 d +-x x+1/2 1/4 d +x+1/2 -x 3/4 d +-x x 0 e +x+1/2 -x+1/2 1/2 e +-x -x+1/2 1/4 e +x+1/2 x 3/4 e +x 1/4 1/8 f +-x+1/2 1/4 5/8 f +3/4 x+1/2 3/8 f +3/4 -x 7/8 f +x y z g +-x+1/2 -y+1/2 z+1/2 g +-y x+1/2 z+1/4 g +y+1/2 -x z+3/4 g +-x+1/2 y -z+3/4 g +x -y+1/2 -z+1/4 g +y+1/2 x+1/2 -z+1/2 g +-y -x -z g diff --git a/data/wyckoff/wyckoff99.txt b/data/wyckoff/wyckoff99.txt new file mode 100644 index 0000000..821266b --- /dev/null +++ b/data/wyckoff/wyckoff99.txt @@ -0,0 +1,24 @@ +0 0 z a +1/2 1/2 z b +1/2 0 z c +0 1/2 z c +x x z d +-x -x z d +-x x z d +x -x z d +x 0 z e +-x 0 z e +0 x z e +0 -x z e +x 1/2 z f +-x 1/2 z f +1/2 x z f +1/2 -x z f +x y z g +-x -y z g +-y x z g +y -x z g +x -y z g +-x y z g +-y -x z g +y x z g diff --git a/data/zincblende.lat b/data/zincblende.lat new file mode 100644 index 0000000..3998b4b --- /dev/null +++ b/data/zincblende.lat @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A +0.25 0.25 0.25 B diff --git a/doc/emc2tc.pdf b/doc/emc2tc.pdf new file mode 100644 index 0000000..0016f18 Binary files /dev/null and b/doc/emc2tc.pdf differ diff --git a/doc/history.txt b/doc/history.txt new file mode 100644 index 0000000..93f8ec6 --- /dev/null +++ b/doc/history.txt @@ -0,0 +1,34 @@ +1.50: + constituent strain + allow any structure names + allow new structures to be added at all times + +1.66: + unit cell in 'symmetric' form, ready for ab-initio codes + constituent strain fitting code + temperature-dependent ECI in Monte Carlo code + manual in tex/html + reciprocal space Monte-Carlo (BETA) + easy-to-configure job control scripts + +2.03: + vibrational and electronic entropy included. + +2.50: + mixed canonical/grandcanonical multicomponent monte carlo + +2.53: + reciprocal space multicomponent monte carlo (for electrostatics) + +2.54: + automated patching system for c++ language qwirks + +2.70: + tensorial/generalized cluster expansion (gce utility) + +2.71: + fixed bug in multisublattice structure enumeration routine + (only affects cases where a pure translation maps one sublattice onto another: + omits some structures with lattice vector equal to one of the unit cell lattice vectors + cluster expansions not affected, but perhaps missed ground states or SQS, but unlikely) + diff --git a/doc/manual.dvi b/doc/manual.dvi new file mode 100644 index 0000000..83d0fa8 Binary files /dev/null and b/doc/manual.dvi differ diff --git a/doc/manual.pdf b/doc/manual.pdf new file mode 100644 index 0000000..0883236 Binary files /dev/null and b/doc/manual.pdf differ diff --git a/doc/references.bib b/doc/references.bib new file mode 100644 index 0000000..c566883 --- /dev/null +++ b/doc/references.bib @@ -0,0 +1,110 @@ +@article{avdw:atat2, + author="A. van de Walle", + title="{{}}{M}ulticomponent multisublattice alloys, nonconfigurational entropy and other additions to the {A}lloy {T}heoretic {A}utomated {T}oolkit", + journal="Calphad", + volume=33, + pages="266", + avdwhtml={Download: \htmladdnormallink{[from eprint archive]}{http://arxiv.org/abs/0906.1608} \htmladdnormallink{[From doi]}{http://dx.doi.org/10.1016/j.calphad.2008.12.005}}, + year=2009 +} + + +@article{avdw:atat, + author="A. van de Walle and M. Asta and G. Ceder", + title="{{}}{T}he {A}lloy {T}heoretic {A}utomated {T}oolkit: {A} User Guide", + journal="Calphad", + volume=26, + pages="539", + year="2002", + avdwhtml={Download: \htmladdnormallink{[from e-print archive]}{http://arxiv.org/abs/cond-mat/0212159} \htmladdnormallink{[from ScienceDirect]}{http://dx.doi.org/10.1016/S0364-5916(02)80006-2}} +} + +@article{avdw:maps, + author="A. van de Walle and G. Ceder", + title="Automating First-Principles Phase Diagram Calculations", + journal="J. Phase Equilib.", + volume=23, + pages="348", + year="2002", + avdwhtml={Download: \htmladdnormallink{[from e-print archives]}{http://arXiv.org/abs/cond-mat/0201511} \htmladdnormallink{[PDF 1173 KB]}{papers/jpe_lores.pdf} \htmladdnormallink{[PDF 2701 KB]}{papers/jpe_hires.pdf} \htmladdnormallink{[from DOI]}{http://dx.doi.org/10.1361/105497102770331596} \htmladdnormallink{[paper errata (preprint ok)]}{papers/mapserr.pdf}} +} + +@article{avdw:emc2, + author="A. van de Walle and M. Asta", + title="Self-driven lattice-model Monte Carlo simulations of alloy thermodynamic properties and phase diagrams", + journal="Model. Simul. Mater. Sc.", + volume=10, + pages="521", + year="2002", + avdwhtml={Download: \htmladdnormallink{[from e-print archives]}{http://arXiv.org/abs/cond-mat/0201473} \htmladdnormallink{[from MSMSE online]}{http://stacks.iop.org/MSMSE/10/521}} +} + +@article{avdw:mcsqs, + title="Efficient stochastic generation of Special Quasirandom Structures", + author="A. van de Walle and P. Tiwary and M. M. de Jong and D. L. Olmsted and M. D. Asta and A. Dick and D. Shin and Y. Wang and L.-Q. Chen and Z.-K. Liu", + journal="Calphad", + volume=42, + pages="13", + year=2013, + avdwhtml={Download: \htmladdnormallink{[From doi]}{http://dx.doi.org/10.1016/j.calphad.2013.06.006}} +} + +@article{avdw:funstab, + author="A. van de Walle and Q. Hong and S. Kadkhodaei and R. Sun", + title="The free energy of mechanically unstable phases", + journal="Nature Commun.", + volume="6", + pages="7559", + year=2015, + avdwhtml={Download: \htmladdnormallink{[DOI]}{http://dx.doi.org/10.1038/ncomms8559}} +} + +@article{avdw:jomatat, + author="A. van de Walle", + title="{{}}{M}ethods for First-Principles Alloy Thermodynamics", + journal="JOM - J. Min. Met. Mat. S.", + volume="65", + pages="1523", + year=2013, + avdwhtml={Download: \htmladdnormallink{[From doi]}{http://dx.doi.org/10.1007/s11837-013-0764-3}} +} + +@article{avdw:gce, + title="A complete representation of structure-property relationships in crystals", + author="A. van de Walle", + journal="Nat. Mater.", + volume=7, + pages="455", + year="2008", + avdwhtml={Download: \htmladdnormallink{[From doi]}{http://dx.doi.org/10.1038/nmat2200} \htmladdnormallink{[Featured on cover]}{http://www.nature.com/nmat/journal/v7/n6/index.html} \htmladdnormallink{[See associated ``News and Views'' piece by Gus Hart]}{http://dx.doi.org/10.1038/nmat2190}} +} + +@article{avdw:smceo2, + author="A. van de Walle and D. Ellis", + title="First-principles thermodynamics of coherent interfaces in samarium-doped ceria nanoscale superlattices", + journal="Phys. Rev. Lett.", + volume=98, + pages="266101", + year="2007", + avdwhtml={Download: \htmladdnormallink{[from PRL online]}{http://link.aps.org/abstract/PRL/v98/e266101}} +} + +@article{cockayne:bayes, + title="Building effective models from scarce but accurate data: Application to an alloy cluster expansion model", + author="E. Cockayne and A. van de Walle", + journal="Phys. Rev. B", + volume=81, + pages="012104", + year=2010, + avdwhtml={Download: \htmladdnormallink{[from eprint archive]}{http://arxiv.org/abs/0908.0659} \htmladdnormallink{[From doi]}{http://dx.doi.org/10.1103/PhysRevB.81.012104}} +} + +@article{avdw:harm, + title="Ab initio calculation of anisotropic interfacial excess free energies", + author="A. van de Walle and C. Balaji Gopal and S. Demers and Q. Hong and A. Kowalski and L. Miljacic and G. Pomrehn and P. Tiwary", + journal="Phys. Rev. B", + volume="89", + pages="184101", + year=2014, + avdwhtml={Download: \htmladdnormallink{[from eprint archive]}{http://arxiv.org/abs/1301.0168} \htmladdnormallink{[From doi]}{http://dx.doi.org/10.1103/PhysRevB.89.184101}} +} diff --git a/examples/abinit.wrap b/examples/abinit.wrap new file mode 100644 index 0000000..50ef97c --- /dev/null +++ b/examples/abinit.wrap @@ -0,0 +1,13 @@ +optcell 1 +kptopt 1 +ionmov 3 +toldfe 1e-7 +tolmxf 1e-6 +nstep 20 +ntime 20 +ecut 8.0 +ecutsm 0.5 +kppra 1000 +subatom s/Ga/ga.13.hgh/g +subatom s/In/in.13.hgh/g +subatom s/N/n.5.hgh/g diff --git a/examples/bcc_lat.in b/examples/bcc_lat.in new file mode 100644 index 0000000..35c122f --- /dev/null +++ b/examples/bcc_lat.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0 0 A,B diff --git a/examples/csvasp.wrap b/examples/csvasp.wrap new file mode 100644 index 0000000..b05edf5 --- /dev/null +++ b/examples/csvasp.wrap @@ -0,0 +1,14 @@ +[INCAR] +PREC = high +SIGMA = 0.1 +ISMEAR=-5 +IBRION=-1 +ISIF=2 + +[KPOINTS] +KPOINTS file +0 +Gamma +11 11 11 +0 0 0 + diff --git a/examples/cuau.in b/examples/cuau.in new file mode 100644 index 0000000..e070417 --- /dev/null +++ b/examples/cuau.in @@ -0,0 +1,5 @@ +3.8 3.8 3.8 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 Cu,Au diff --git a/examples/cvvasp.wrap b/examples/cvvasp.wrap new file mode 100644 index 0000000..035cde9 --- /dev/null +++ b/examples/cvvasp.wrap @@ -0,0 +1,10 @@ +[INCAR] +PREC = high +ISMEAR = 1 +SIGMA = 0.1 +NSW=41 +IBRION = 2 +ISIF = 4 +KPPRA = 1000 +USEPOT = PAWPBE +DOSTATIC diff --git a/examples/dir.in b/examples/dir.in new file mode 100644 index 0000000..890caa1 --- /dev/null +++ b/examples/dir.in @@ -0,0 +1,4 @@ +1 0 0 +1 1 0 +1 1 1 +2 0 1 diff --git a/examples/fcc_lat.in b/examples/fcc_lat.in new file mode 100644 index 0000000..33c5759 --- /dev/null +++ b/examples/fcc_lat.in @@ -0,0 +1,5 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A,B diff --git a/examples/fvasp.wrap b/examples/fvasp.wrap new file mode 100644 index 0000000..1cb1e10 --- /dev/null +++ b/examples/fvasp.wrap @@ -0,0 +1,9 @@ +[INCAR] +PREC = high +ISMEAR = 1 +SIGMA = 0.1 +IBRION=-1 +ISIF=2 +LREAL=AUTO +KPPRA = 1000 +USEPOT = PAWPBE diff --git a/examples/hcp_lat.in b/examples/hcp_lat.in new file mode 100644 index 0000000..ab331b6 --- /dev/null +++ b/examples/hcp_lat.in @@ -0,0 +1,6 @@ +1 1 1.63299 90 90 120 +1 0 0 +0 1 0 +0 0 1 +0 0 0 A,B +0.6666666 0.3333333 0.5 A,B diff --git a/examples/mc/clusters.out b/examples/mc/clusters.out new file mode 100644 index 0000000..ed856dc --- /dev/null +++ b/examples/mc/clusters.out @@ -0,0 +1,45 @@ +1 +0.000000 +0 + +1 +0.000000 +1 +0.000000 0.000000 0.000000 + +6 +2.687006 +2 +0.000000 0.000000 0.000000 +-0.000000 0.500000 -0.500000 + +3 +3.800000 +2 +0.000000 0.000000 0.000000 +-1.000000 0.000000 0.000000 + +12 +4.654031 +2 +0.000000 0.000000 0.000000 +-1.000000 -0.500000 0.500000 + +6 +5.374012 +2 +0.000000 0.000000 0.000000 +0.000000 -1.000000 1.000000 + +12 +6.008328 +2 +0.000000 0.000000 0.000000 +-0.500000 -1.500000 0.000000 + +4 +6.581793 +2 +0.000000 0.000000 0.000000 +-1.000000 -1.000000 1.000000 + diff --git a/examples/mc/eci.out b/examples/mc/eci.out new file mode 100644 index 0000000..5573bad --- /dev/null +++ b/examples/mc/eci.out @@ -0,0 +1,8 @@ +0.006143 +-0.018951 +0.011470 +-0.009881 +0.000023 +0.002117 +-0.003311 +-0.002577 diff --git a/examples/mc/emc2.in b/examples/mc/emc2.in new file mode 100755 index 0000000..be3a3ed --- /dev/null +++ b/examples/mc/emc2.in @@ -0,0 +1,2 @@ +#!/bin/csh +emc2 -T0=50 -T1=700 -dT=25 -mu0=0.5 -mu1=1.5 -dmu=0.05 -er=40 -gs=0 -o=mc.out -k=8.617e-5 -dx=0.005 diff --git a/examples/mc/gs_str.out b/examples/mc/gs_str.out new file mode 100644 index 0000000..2efdc8b --- /dev/null +++ b/examples/mc/gs_str.out @@ -0,0 +1,64 @@ +3.800000 0.000000 0.000000 +0.000000 3.800000 0.000000 +0.000000 0.000000 3.800000 +-0.000000 0.500000 -0.500000 +0.000000 -0.500000 -0.500000 +-0.500000 0.000000 0.500000 +-0.500000 -0.000000 -0.500000 Cu +end + +3.800000 0.000000 0.000000 +0.000000 3.800000 0.000000 +0.000000 0.000000 3.800000 +0.000000 1.000000 0.000000 +-0.000000 0.000000 1.000000 +1.000000 0.000000 0.000000 +1.000000 1.000000 1.000000 Au +1.000000 0.500000 0.500000 Cu +0.500000 1.000000 0.500000 Cu +0.500000 0.500000 1.000000 Cu +end + +3.800000 0.000000 0.000000 +0.000000 3.800000 0.000000 +0.000000 0.000000 3.800000 +0.000000 -0.500000 0.500000 +0.000000 0.500000 0.500000 +-1.000000 0.000000 0.000000 +-0.500000 0.000000 0.500000 Au +-1.000000 0.000000 1.000000 Cu +end + +3.800000 0.000000 0.000000 +0.000000 3.800000 0.000000 +0.000000 0.000000 3.800000 +0.500000 -0.500000 0.000000 +-0.500000 -0.500000 0.000000 +-0.000000 0.500000 -2.500000 +-0.000000 -0.500000 -0.500000 Au +-0.000000 -0.500000 -2.500000 Au +0.000000 -0.500000 -1.500000 Au +0.000000 -0.000000 -1.000000 Cu +0.000000 -0.000000 -2.000000 Cu +end + +3.800000 0.000000 0.000000 +0.000000 3.800000 0.000000 +0.000000 0.000000 3.800000 +-0.500000 0.500000 0.000000 +-0.500000 -0.500000 0.000000 +0.500000 0.000000 1.500000 +-0.500000 0.000000 0.500000 Au +0.000000 0.000000 1.000000 Au +-0.500000 0.000000 1.500000 Cu +end + +3.800000 0.000000 0.000000 +0.000000 3.800000 0.000000 +0.000000 0.000000 3.800000 +-0.000000 0.500000 -0.500000 +0.000000 -0.500000 -0.500000 +-0.500000 0.000000 0.500000 +-0.500000 -0.000000 -0.500000 Au +end + diff --git a/examples/mc/lat.in b/examples/mc/lat.in new file mode 100644 index 0000000..e070417 --- /dev/null +++ b/examples/mc/lat.in @@ -0,0 +1,5 @@ +3.8 3.8 3.8 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 Cu,Au diff --git a/examples/mc/phb.in b/examples/mc/phb.in new file mode 100755 index 0000000..9258168 --- /dev/null +++ b/examples/mc/phb.in @@ -0,0 +1,2 @@ +#!/bin/csh +phb -dT=10 -dmu=0.001 -ltep=1e-3 -er=40 -gs1=0 -gs2=1 -o=phb.out -k=8.617e-5 -dx=1e-4 diff --git a/examples/rocksalt_lat.in b/examples/rocksalt_lat.in new file mode 100644 index 0000000..0c9f704 --- /dev/null +++ b/examples/rocksalt_lat.in @@ -0,0 +1,6 @@ +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 A,B +0.5 0.5 0.5 O diff --git a/examples/svasp.wrap b/examples/svasp.wrap new file mode 100644 index 0000000..7c61c2b --- /dev/null +++ b/examples/svasp.wrap @@ -0,0 +1,6 @@ +[INCAR] +PREC = high +ISMEAR=-5 +IBRION=-1 +ISIF=2 +KPPRA = 1000 diff --git a/examples/vasp.wrap b/examples/vasp.wrap new file mode 100644 index 0000000..f7f19a8 --- /dev/null +++ b/examples/vasp.wrap @@ -0,0 +1,10 @@ +[INCAR] +PREC = high +ISMEAR = 1 +SIGMA = 0.1 +NSW=41 +IBRION = 2 +ISIF = 3 +KPPRA = 1000 +USEPOT = PAWPBE +DOSTATIC diff --git a/examples/vasp_par.wrap b/examples/vasp_par.wrap new file mode 100644 index 0000000..56b5b91 --- /dev/null +++ b/examples/vasp_par.wrap @@ -0,0 +1,11 @@ +[INCAR] +PREC = high +ISMEAR = 1 +SIGMA = 0.1 +NSW=41 +IBRION = 2 +ISIF = 3 +ISTART = 0 +ICHARG = 1 +KPPRA = 8000 +DOSTATIC diff --git a/foolproof b/foolproof new file mode 100755 index 0000000..ad99c9b --- /dev/null +++ b/foolproof @@ -0,0 +1,106 @@ +#!/bin/csh + +cat - <& /dev/null +if ( $status != 0 ) then + echo You don\'t have ${CXX}. You can download g++ from http://www.gnu.org/ + exit 1 +endif + +make --version x >& /dev/null +if ( $status != 0 ) then + foreach makename (gmake gnumake) + $makename --version x >& /dev/null + if ( $status == 0 ) then + echo It looks like GNU make on your system is called $makename + echo Please use $makename + exit 1 + endif + end + echo You do not have gnu make. Please download it from http://www.gnu.org/ + exit 1 +endif + +perl -v >& /dev/null +if ( $status != 0 ) then + echo You do not have perl. Please download it from http://www.perl.com/ + exit 1 +endif + +#tail +2 $0 >& /dev/null +#if ( $status != 0 ) then +# tail -n +2 $0 >& /dev/null +# if ( $status == 0 ) then +# echo Patching tail command... +# ./patchtail +# endif +#endif + +cd src + +echo Testing compiler features... +echo -n 'PATCHCXXFLAGS=' >! makefileflags +foreach feature ( ) + echo -n " " $feature ": " + ${CXX} test${feature}.c++ -o test${feature} >&! tmp.out + if (`cat tmp.out | wc -l` != 0) then + echo -n ' -ffriend-injection' >> makefileflags + echo "patched" + else + echo "ok" + endif + rm -f tmp.out +end + +echo "#\!/bin/sh" >! ./patchlang +echo -n "cat -" >> ./patchlang +echo -n " | ./patchconst " >> ./patchlang +chmod +x ./patchlang +foreach feature ( friend doth str2s template uT static ) + echo -n " " $feature ": " + ${CXX} test${feature}.c++ -o test${feature} >&! tmp.out + if (`cat tmp.out | wc -l` != 0) then + echo -n ' | ' ./patch${feature} >> ./patchlang + echo "patched" + else + echo "ok" + endif + rm -f tmp.out +end +echo "" >> ./patchlang + +cd .. + +echo Tests successfully passed. diff --git a/foolproof.sh b/foolproof.sh new file mode 100755 index 0000000..9503ddb --- /dev/null +++ b/foolproof.sh @@ -0,0 +1,6 @@ +#!/bin/sh +if [ ! -e /bin/csh ]; then + echo /bin/csh cannot be found. Please install it or create a symbolic link from /bin/csh to /usr/bin/tcsh , if installed. + exit 1 +fi +./foolproof $* diff --git a/glue/abinit/abinit.wrap b/glue/abinit/abinit.wrap new file mode 100644 index 0000000..b27ba83 --- /dev/null +++ b/glue/abinit/abinit.wrap @@ -0,0 +1,11 @@ +optcell 1 +kptopt 1 +ionmov 3 +toldfe 1e-7 +tolmxf 1e-6 +nstep 20 +ntime 20 +ecut 8.0 +ecutsm 0.5 +kppra 1000 +ppsuffix .pspnc diff --git a/glue/abinit/extract_abinit b/glue/abinit/extract_abinit new file mode 100755 index 0000000..197b52b --- /dev/null +++ b/glue/abinit/extract_abinit @@ -0,0 +1,27 @@ +#!/bin/csh +source ~/.atat.rc + +set outfile="$1" + +getlines -af "-outvars: echo values of variables after computation" < $outfile >! out.tmp + +cat out.tmp | grep acell | cut -c 12- | awk '{c=1.88973; print $1/c,0,0; print 0,$2/c,0; print 0,0,$3/c;}' >! cell.tmp +grep -q rprim out.tmp +if ($status == 1) then + (echo 1 0 0 ; echo 0 1 0 ; echo 0 0 1 ) >>! cell.tmp +else + cat out.tmp | getlines -af rprim | sed 's/rprim/ /g' | getlines -jbf '^ *[a-z=]' | cut -c 12- >>! cell.tmp +endif + +cat cell.tmp | cellcvrt -f >! str_relax.out + +cat out.tmp | getlines -af xred | sed 's/xred/ /g' | getlines -jbf '^ *[a-z=]' | cut -c 12- >! atompos.tmp +cat out.tmp | getlines -af " typat" | sed 's/typat/ /g' | getlines -jbf '^ *[a-z=]' | cut -c 12- | blanktonl | grep -v '^ *$' >! atomnum.tmp + +cat out.tmp | getlines -af " znucl" | sed 's/znucl/ /g' | getlines -jbf '^ *[a-z=]' | cut -c 12- | blanktonl | grep -v '^ *$' | sed 's/\.0*//g'>! atomz.tmp + +awk '{symb[$2]=$1;} END {t=1; while (getline < "atomz.tmp") {name[t]=symb[$1]; t++;} while (getline < "atomnum.tmp") {print name[$1];}}' $atatdir/data/atomz.in >! atoms.tmp + +paste atompos.tmp atoms.tmp >>! str_relax.out +#rm out.tmp cell.tmp atompos.tmp atomnum.tmp atomz.tmp atoms.tmp + diff --git a/glue/abinit/makefile b/glue/abinit/makefile new file mode 100644 index 0000000..15897ac --- /dev/null +++ b/glue/abinit/makefile @@ -0,0 +1,4 @@ +BINDIR=$(HOME)/bin/ + +install: + ../../safecp runstruct_abinit $(BINDIR) diff --git a/glue/abinit/runstruct_abinit b/glue/abinit/runstruct_abinit new file mode 100755 index 0000000..25cdc6e --- /dev/null +++ b/glue/abinit/runstruct_abinit @@ -0,0 +1,145 @@ +#!/bin/csh + +set wrapfilename="abinit.wrap" + +while ( $#argv != 0 ) + switch ("$1") + case "-h": + cat - <! ~/.ezabinit.rc <! str.tmp +tail -n +7 str.tmp | awk '{print $4}' | sort -u |\ + awk 'BEGIN {while (getline < "atomz.in") {z[$1]=$2;}} {print $1,z[$1];}' >! atoms.tmp + +grep -q kppra $wrapfile +if ($status == 0) then + echo `getvalue kppra < $wrapfile ; tail -n +7 str.tmp | wc -l` | awk '{print $1/$2}' >! nkpts.tmp + set kppra=`cat nkpts.tmp` +endif + +grep -i subatom $wrapfile | sed 's/.*[ =]//g' >! sed.tmp + +cat $wrapfile | grep -v -i -e kppra -e subatom | sed 's/{natom}/'`tail -n +7 str.tmp | wc -l`'/g' >! abinit.in +echo rprim `head -3 str.tmp` >>! abinit.in +echo ntypat `cat atoms.tmp | wc -l` >>! abinit.in +echo natom `tail -n +7 str.tmp | wc -l` >>! abinit.in +echo znucl `awk '{print $2}' atoms.tmp` >>! abinit.in +echo typat `tail -n +7 str.tmp | awk 'BEGIN {n=1; while (getline < "atoms.tmp") {t[$1]=n; n++;}} {print t[$4];}'` >>! abinit.in +echo acell "3*1" >>! abinit.in +echo xred >>! abinit.in +tail -n +7 str.tmp | awk '{print " ",$1,$2,$3}' >>! abinit.in +if ($?kppra) then + echo ngkpt `(echo $kppra ; head -3 str.tmp ) | kmesh -q -r` >>! abinit.in +endif + +echo abinit.in >! abinit.files +echo abinit.out >>! abinit.files +echo abi >>! abinit.files +echo abo >>! abinit.files +echo tmp >>! abinit.files +awk '{print "'$POTDIR'/" $2 $1}' atoms.tmp | sed -f sed.tmp >>! abinit.files + +rm -f str.tmp atoms.tmp nkpts.tmp atomz.in sed.tmp + +if (! $?notrunabinit) then + $CMDPREFIX $ABINITCMD < abinit.files >& log.out +endif + +endif + +if (! $?notrunabinit) then + set lastout=`ls -1 abinit.out* | sort | tail -n -1` + tail -n +`grep -n "BROYDEN STEP NUMBER" $lastout | tail -n -1 | sed 's/:.*//g'` $lastout | getlines -bf "== END DATASET" >! abinitoutlast.tmp + cat abinitoutlast.tmp | getvalue "Etotal" | tail -n -1 | awk '{print $1*27.21138386}' >! energy + cat abinitoutlast.tmp | grep acell | sed 's/.*=//g' >! acell.tmp + cat abinitoutlast.tmp | getlines -af rprim | sed 's/.*=//g' | head -3 >! rprim.tmp + cat abinitoutlast.tmp | getlines -jaf 'reduced coordinates .array xred.' | getlines -jbf 'rms' >! xred.tmp + awk 'BEGIN {CONVFMT="%.9g"; sc=1.8897259886; getline < "acell.tmp"; s[1]=$1/sc; s[2]=$2/sc; s[3]=$3/sc; } {n++; print s[n]*$1,s[n]*$2,s[n]*$3}' rprim.tmp>! str_relax.out + ( echo 1 0 0 ; echo 0 1 0 ; echo 0 0 1 ) >> str_relax.out + cat $strout | cellcvrt -f | tail -n +7 | awk '{print $4}' >! typat.tmp + paste xred.tmp typat.tmp >> str_relax.out + + cat abinitoutlast.tmp | getlines -jbt 'cartesian forces .eV.Angstrom. at end:' 'frms,max,avg' | awk '{print $2,$3,$4}' >! force.out + + rm -f abinitout.tmp xred.tmp rprim.tmp acell.tmp typat.tmp abinitoutlast.tmp +endif diff --git a/glue/castep/README.ATAT b/glue/castep/README.ATAT new file mode 100644 index 0000000..2dbc44d --- /dev/null +++ b/glue/castep/README.ATAT @@ -0,0 +1,27 @@ +Alloy Theoretic Automated Toolkit +--------------------------------- + +http://www.its.caltech.edu/~avdw/atat/ + +CASTEP interface +---------------- + +Contributed by Matt Probert + +To make it work, extract the archive into the atat/glue +directory, either copy/create a link to runstruct_castep in the ~/bin/ +directory (the other interfaces copy) or set the $PATH to the directory +containing runstruct_castep and run that script from a directory containing +str.out (generated by ATAT) and a castep.wrap file (which is used to create +the .cell and .param files for CASTEP). + +runstruct_castep -h will display program options/help (and is the same as +the abinit/vasp versions). + +The default behaviour is to run CASTEP until the "total energy" (BFGS Final +Enthalpy/Num ions) is found, if found, it checks to see if CASTEP gave any +errors about needing extra bands in the last two BFGS iterations - if so, +it updates the .param file adding the extra bands and runs CASTEP again +(but tells the user so they can cancel it if necessary). If the error +persists, it warns the user and exits. + diff --git a/glue/castep/castep.wrap b/glue/castep/castep.wrap new file mode 100644 index 0000000..3b0ec85 --- /dev/null +++ b/glue/castep/castep.wrap @@ -0,0 +1,12 @@ +[cell] +kpoints_mp_spacing = 0.04 +symmetry_generate +snap_to_symmetry + +[param] +task = Geometry Optimisation +basis_precision = precise +grid_scale = 2.0 +fine_grid_scale = 3.0 +elec_energy_tol = 0.0000001 eV +geom_max_iter = 50 diff --git a/glue/castep/extract_castep b/glue/castep/extract_castep new file mode 100755 index 0000000..5dfaab3 --- /dev/null +++ b/glue/castep/extract_castep @@ -0,0 +1,76 @@ +#!/bin/csh + +# This script should not be used on its own. It should be considered a part of the runstruct_castep script. +# It is called using "source" as we wish to pass variables between the two scripts. +# Included as an extra script to prevent repetition in the main script and increase readability. +# Initial version: 11/08/2011. Author: Aaron Hopkinson (a.hopkinson89@gmail.com) +# +# Revision: 14/10/2011. Changed variable names to better document code. Divided energy by number of ions. + +# Initially we are on run 1. The max value of this is 3, when the script is complete - either by running CASTEP +# twice (with either failure or success) or by succeeding on first attempt. +set run = 1 + +while ( $run < 3 ) + # Did CASTEP finish Geometry optimisation? (We want the line number) + set lineno = `grep -n "Geometry optimization completed successfully." $extractfilename | sed -e 's/\([0-9]*\)\(.*\)/\1/g'` + + # No. The line above could not be found. + if ( $lineno == "") then + echo `grep "BFGS: WARNING" $extractfilename` + echo "Please adjust the parameters in the wrap file and run the program again." + echo "" >! error + # Failure. + exit 1 + endif + + # Subtract 20 from line number and check the lines from then onwards for the final iteration number. + set lineno = `expr $lineno - 20` + set iterno = `tail -n +$lineno $extractfilename | grep "finished iteration" | sed -e 's/\([A-Za-z: ]*\)\([0-9]*\)\(.*\)/\2/g'` + # Once we know the final iteration number, subtract one from it. + set iterno = `expr $iterno - 1` + # Get line number of the second to last BFGS iteration. + set lineno = `grep -n -e "Starting BFGS iteration[ ]*$iterno" $extractfilename | sed -e 's/\([0-9]*\)\(.*\)/\1/g'` + # Now see if there was an nextra_bands error in these last two iterations. + set extrabands = `tail -n +$lineno $extractfilename | grep -m 1 "Recommend using nextra_bands" | sed -e 's/\([A-Za-z_ ]*\)\([0-9]*\)\(.*\)/\2/g'` + + # Do we need more bands? (!= "" is a yes) + if ( $extrabands != "" ) then + # Are not in extract only mode? + if ( ! $?extractonly ) then + # If it's the end of run number 2, don't run CASTEP again. We don't want to tie up too much computer time. + if ( $run == 2 ) then + echo "Again, there are no empty bands for at least one kpoint and spin." + echo "CASTEP will not run again, if you wish to continue the calculation please run CASTEP again with nextra_bands = $extrabands. This can be added to the wrap file if necessary." + echo "" >! error + exit 1 + endif + + # Tell user about nextra_bands, add to .param and run CASTEP once more. + echo "WARNING: There are no empty bands for at least one kpoint and spin; this may slow the convergence and/or lead to an inaccurate groundstate." + echo "The value of nextra_bands has been set to $extrabands in the param file" + echo "CASTEP will restart the calculation.." + echo "nextra_bands = $extrabands" >>! $paramfile + $CMDPREFIX $CASTEPCMD $seedname + # End of second run. + set run = 2 + else + # If we are in extract only mode and we need to increase nextra_kpoints, tell the user but we don't want to run CASTEP. + echo "There are no empty bands for at least one kpoint and spin; this may slow the convergence and/or lead to an inaccurate groundstate." + echo "Since this program is running in extract only mode, nothing has been done. Consider setting nextra_bands to $extrabands in the param file and run CASTEP again." + echo "" >! error + exit 1 + endif + else + # We didn't need to increase nextra_kpoints, CASTEP didn't error and everything went well, create energy file. + echo "Extracting energy of the structure from CASTEP output files.." + set energy = `grep "BFGS: Final Enthalpy" $extractfilename | sed -e 's/BFGS: Final Enthalpy[ =]*//g' | sed -e 's/[ eV]*//g'` + # Find number of ions for division. + set noions = `grep "Total number of ions in cell" $extractfilename | sed -e 's/[ ]*Total number of ions in cell[ =]*//g'` + # Use bc for division, write output to file. (Scale is how many decimal places - needed for negative exponents). + # bc doesn't like scientific notation, change from "E" -> "*10^" - also, remove the "+" for positive exponents. + echo "scale = 16; $energy / $noions" | sed -e 's/E/*10^/g' | sed -e 's/+//g' | bc >! energy + # Set run = 3, regardless of run number. We want to exit this loop. + set run = 3 + endif +end diff --git a/glue/castep/runstruct_castep b/glue/castep/runstruct_castep new file mode 100755 index 0000000..0753031 --- /dev/null +++ b/glue/castep/runstruct_castep @@ -0,0 +1,156 @@ +#!/bin/csh + +# This script makes use of a wrap file (located in either the current directory +# or up to 3 directories up) as well as an "str.out" file (in the current directory) +# generated from MAPS. With these files we run CASTEP and then extract the energy of +# the structure which is placed in a file called "energy" in the current directory. +# If the calculation fails, an empty file called "error" will be created instead. + +# Initial version created: 11/08/2011. Author: Aaron Hopkinson (a.hopkinson89@gmail.com) +# This script is heavily based on the runstruct_abinit and runstruct_vasp scripts +# provided with ATAT. +# +# Revision: 14/10/2011. Updated extract_castep (change of variable names, division of +# energy by total number of ions) and fixed typo in the comment above. + +source ~/.atat.rc +set strout = "str.out" +set wrapfilename = "castep.wrap" +set seedname = "temp" +set cellfile = "$seedname.cell" +set paramfile = "$seedname.param" +set extractfilename = "$seedname.castep" + +# Loop over command line arguments to set script mode. +while ( $#argv != 0 ) + switch ( "$1" ) + case "-h": + cat - <! ~/.runstruct_castep.rc <! $paramfile + + # Now generate the .cell file. Firstly by extracting the coordinates from str.out + # and using cellcvrt (included with ATAT) to convert to necessary format for CASTEP. + echo "%block lattice_cart" >! $cellfile + cat $strout | cellcvrt -c -ns=1 -sig=9 | head -n 6 | tail -n 3 >>! $cellfile + echo "%endblock lattice_cart" >>! $cellfile + echo "" >>! $cellfile + echo "%block positions_abs" >>! $cellfile + cat $strout | cellcvrt -c -ns=1 -sig=9 | tail -n +7 | sed -e 's/\([-0-9\.]*[ ]*[-0-9\.]*[ ]*[-0-9\.]*\)\([ ]*\)\([A-Za-z]*\)/\3\2\1/g' >>! $cellfile + echo "%endblock positions_abs" >>! $cellfile + + # Add in the extra parameters from the .wrap file. + echo "" >>! $cellfile + head -n `expr $paramlines - 1` $wrapfile | tail -n +2 >>! $cellfile + + # If not-not running CASTEP: ie: We ARE running CASTEP.. + if ( ! $?notruncastep ) then + # Run CASTEP: + echo "Running CASTEP Geometry Optimisation.." + $CMDPREFIX $CASTEPCMD $seedname + + # Use external script to extract the energy and check for errors. (External because it is used below as well) + source $atatdir/glue/castep/extract_castep + + # $run == 3 when extract_castep is finished - explained in there. + if ( $run == 3 ) then + # If we don't want to clean, at least move CASTEP output to a new directory for neatness. + # Default action in case people want to analyse runs. + if ( ! $?clean ) then + echo "Moving CASTEP output files to $PWD/castep_files.." + mkdir castep_files >& /dev/null + mv $seedname.* *.usp castep_files + else + # Otherwise, delete output. + echo "Removing CASTEP output files.." + rm -f $seedname.* *.usp + endif + endif + endif +else + # Extract energy from a previously generated .castep file. + source $atatdir/glue/castep/extract_castep + exit +endif diff --git a/glue/flapw/flapw.wrap b/glue/flapw/flapw.wrap new file mode 100644 index 0000000..5906dc2 --- /dev/null +++ b/glue/flapw/flapw.wrap @@ -0,0 +1,40 @@ +Title: InSb bulk +Mode: bulk +**** lattice vectors ********************* +INSERTCELL +* atomic number cartesian or internal coordinates +INSERTATOMS +*** GENERAL OPTIONS *********************** +Density of states:F ,Band structure:F +Treat non-MT potential in second variation:F +Force calculation:F +Geometry optimization:F +Screened exchange:F +Frequency calculation:F +Spin-Orbit coupling:F ,self-consistent:F, option:default +%%%P matrix calculation:F, Longitudinal form:F, MCD:F +P matrix calculation:F, Longitudinal form:F +L matrix calculation:F, option:default +******************************************* +star-function cut-off: 8.0 +jspins=1 +nwin=1 +plane-wave cut off: 3.60 +SPA = 15 +In rmt=2.50 ncore=12 lmt=8 +Sb rmt=2.60 ncore=14 lmt=8 0 0 0.2 0 +*** SPECIAL K-POINTS ********************** +Include time-reversal symmetry:T +Division along axis (each window new line) +KPPRA = 8000 +Tedrahedron method:T +gauss=T 0.0010 +*** MIXING OPTIONS *********************** +(B)royden or (S)traight mixing for density:B +Maximum number of iterations: 40 +Mixing parameter: .1 +Convergency: 0.05 +**** OPTIONS FOR SPIN-POLARIZED CASE **** +spin-options:default +**** ADVANCED SETTINGS ****************** +advanced setup:default diff --git a/glue/flapw/runstruct_flapw b/glue/flapw/runstruct_flapw new file mode 100755 index 0000000..211ecb5 --- /dev/null +++ b/glue/flapw/runstruct_flapw @@ -0,0 +1,50 @@ +#!/bin/csh + +set strout="str_hint.out" + +if ( ! -e $strout ) then + set strout="str.out" +endif + +if (! -e $strout ) then + echo str.out or str_hint.out does not exist + echo NOTE: $0 needs to be run within the subdirectory containing a structure. + exit 1 +endif + +set wrapfilename="flapw.wrap" + +set wrapfile="$wrapfilename" +if (! -e $wrapfile) then + set wrapfile="../$wrapfilename" + if (! -e $wrapfile) then + set wrapfile="../../$wrapfilename" + if (! -e $wrapfile) then + set wrapfile="../../../$wrapfilename" + if (! -e $wrapfile) then + echo You need a $wrapfilename file in $PWD , $PWD/.. , $PWD/../.. or $PWD/../../.. + echo NOTE: $0 needs to be run within the numbered subdirectory. + exit 1 + endif + endif + endif +endif + +( echo 1.0 ; cat $strout | cellcvrt -f | head -3 ) >! flapwcell.tmp + +( echo internal ; cat $strout | cellcvrt -f | tail -n +7 | awk '{print " " $4,$1,$2,$3;}' ) >! flapwatom.tmp + +set nbkp=`getvalue '[kK][pP][pP][rR][aA]' < $wrapfile` +set spa=`getvalue '[sS][pP][aA]' < $wrapfile` +set nbat=`cellcvrt -pn < $strout` +( echo $nbkp $nbat | awk '{print $1/$2}'; cat $strout | cellcvrt -f | head -3 ) | kmesh -q -r >& flapwkpoint.tmp + +awk '{if ($1=="INSERTCELL") {system("cat flapwcell.tmp");} \ + else if ($1=="INSERTATOMS") {system("cat flapwatom.tmp");} \ + else if (tolower($1)=="kppra") {system("cat flapwkpoint.tmp");} \ + else if (tolower($1)=="spa") {print "number of states:" '$nbat'*'$spa';} \ + else {print $0;} \ +}' $wrapfile >! flapw.in + +rm flapwcell.tmp flapwatom.tmp flapwkpoint.tmp + diff --git a/glue/gulp/gulp.wrap b/glue/gulp/gulp.wrap new file mode 100644 index 0000000..4f874bb --- /dev/null +++ b/glue/gulp/gulp.wrap @@ -0,0 +1,9 @@ +opti conp gradient prop +addshell Ni +harmonic +Al Al 10 0.8 0.8 +Ni Al 10 0.8 0.8 +Ni Ni 20 0.8 0.8 +INSERTPOS +spacegroup + 1 diff --git a/glue/gulp/makefile b/glue/gulp/makefile new file mode 100644 index 0000000..f951240 --- /dev/null +++ b/glue/gulp/makefile @@ -0,0 +1,4 @@ +BINDIR=$(HOME)/bin/ + +install: + ../../safecp runstruct_gulp $(BINDIR) diff --git a/glue/gulp/runstruct_gulp b/glue/gulp/runstruct_gulp new file mode 100755 index 0000000..ddf8ff8 --- /dev/null +++ b/glue/gulp/runstruct_gulp @@ -0,0 +1,122 @@ +#!/bin/csh + +set wrap="gulp.wrap" +set strfile="str_hint.out" +if ( ! -e $strfile ) then + set strfile="str.out" +endif + +while ( $#argv != 0 ) + switch ("$1") + case "-h": + cat - <! gulp.in + + grep addshell $wrap | sed 's/.*addshell *//g' | blanktonl >! shell.tmp + + cat $strfile | cellcvrt -f -sig=9 >! str.tmp + echo vectors >> gulp.in + head -3 str.tmp >> gulp.in + echo fractional >> gulp.in + tail -n +7 str.tmp | awk 'BEGIN {while (getline < "shell.tmp") {s[$1]=1;}} {if (s[$4]==1) {print $4,"core",$1,$2,$3; print $4,"shell",$1,$2,$3} else {print $4,"core",$1,$2,$3}}' >> gulp.in + + getlines -jaf 'INSERTPOS' < $wrap | grep -v addshell >> gulp.in + + endif + + if ( $?notrungulp ) exit + + $* gulp < gulp.in >! gulp.out + +endif + +cellcvrt -abc -f < $strfile >! str_o.tmp + +getvalue "Final energy" < gulp.out | tail -n -1 >! energy +if (`cat energy | wc -w` == "0") then + grep eV gulp.out | getvalue "Total lattice energy" >! energy +endif + +grep -q "Final cell parameters and derivatives" gulp.out +if ( $status == 1 ) then + cat $strfile | cellcvrt -f | head -6 >! str_relax.tmp +else + echo -n >! str_relax.tmp + getlines -af "Final cell parameters and derivatives" < gulp.out | tail -n +4 | getlines -jbf "\-\-\-\-\-\-" | awk '{print $2}' | nltoblank >> str_relax.tmp + cat - >> str_relax.tmp <> str_relax.tmp +else + getlines -af "Final .* coordinates" < gulp.out | tail -n +7 | getlines -jbf "\-\-\-\-\-\-" | awk '{if ($3=="c") {print $4,$5,$6,$2}}' >> str_relax.tmp + cellcvrt -osf=str_o.tmp -fsf=$strfile -f -sig=9 < str_relax.tmp >! str_relax.out +endif + +getlines -af "Final internal derivatives" < gulp.out | tail -n +7 | getlines -jbf "\-\-\-\-\-\-" | awk '{if ($3=="c") {print $4,$5,$6; s[1]+=$4; s[2]+=$5; s[3]+=$6; n++}} END {print s[1],s[2],s[3] > "sumf.tmp"}' >! force.tmp + +cellcvrt -r < str_relax.out >! recip.tmp + +awk 'BEGIN {for (i=1; i<=3; i++) {getline < "recip.tmp"; a[1,i]=$1; a[2,i]=$2; a[3,i]=$3; } getline < "sumf.tmp"; sg[1]=$1; sg[2]=$2; sg[3]=$3;} { \ +split($0,g); \ +for (i=1; i<=3; i++) { \ + f[i]=0; \ + for (j=1; j<=3; j++) { \ + f[i]-=a[i,j]*(g[j]-sg[j]); \ + } \ +} \ +print f[1],f[2],f[3]; \ +sg[1]=0; sg[2]=0; sg[3]=0; \ +}' force.tmp >! force.out + +rm -f str_o.tmp str.tmp str_relax.tmp force.tmp sumf.tmp recip.tmp shell.tmp diff --git a/glue/jobctrl/blanktonl b/glue/jobctrl/blanktonl new file mode 100755 index 0000000..8e32074 --- /dev/null +++ b/glue/jobctrl/blanktonl @@ -0,0 +1,7 @@ +#!/bin/csh +if ( x"$1" == "x-h" ) then + echo Converts each contiguous sequence of blanks to a newline character. + exit +endif +sed "s/^[ ]*//g" | sed "s/[ ][ ]*/\\ +/g" diff --git a/glue/jobctrl/calc b/glue/jobctrl/calc new file mode 100755 index 0000000..afbf2b2 --- /dev/null +++ b/glue/jobctrl/calc @@ -0,0 +1,6 @@ +#!/bin/csh +if ( $#argv == 0 || x"$1" == "x-h" ) then + echo Syntax: calc \"mathematical expression\" + exit 1 +endif +awk "BEGIN {print $*}" diff --git a/glue/jobctrl/chl b/glue/jobctrl/chl new file mode 100755 index 0000000..58da7dc --- /dev/null +++ b/glue/jobctrl/chl @@ -0,0 +1,86 @@ +#!/usr/bin/perl + +# 10/2002 V. Blum, NREL +# Replacement for MAPS's original chl command to work on current Scyld Beowulf etc. +# In case of problems with this version of chl, the old version is called chl.csh + +if ($ARGV[0]) +{ + if ($ARGV[0] =~ "-h" ) + { + print "chl [-m alternative_machine_config_file]\n"; + print "Checks the load on the remote machines specified in the ~/.machines.rc file\n"; + print "or as overridden by the -m option\n"; + print "The first column of output is the load and the commands following the + sign\n"; + print "give the command prefix needed to run on that machine\n"; + print "A default ~/.machines.rc is created the first time the command is run.\n"; + print "See comments therein for the format of the file.\n"; + exit; + } + if ($ARGV[0] =~ "-m" ) + { + $machinefile = $ARGV[1] ; + } +} +else +{ + $machinefile = "$ENV{HOME}/.machines.rc" ; +} + +if (! -e $machinefile ) +{ + print "Unable to read machine description $machinefile.\n" ; + if (-e "$ENV{HOME}/.machines.rc" ) + { + print "Resorting to $ENV{HOME}/.machines.rc.\n" ; + $machinefile = "$ENV{HOME}/.machines.rc" ; + } + else + { + print "Creating $ENV{HOME}/.machines.rc ... \n" ; + print "Please edit this file to reflect your machine setup.\n" ; + + open (MF,">$ENV{HOME}/.machines.rc") ; + print MF "#configuration file for chl, minload, and pollmach\n"; + print MF "#this line indicates the waiting time between the checks of machine availability\n"; + print MF "#in seconds\n"; + print MF "set waitbetweenpoll=60\n"; + print MF "#The remainder of this file lists the machines\n"; + print MF "#columns in this file are separated by a +\n"; + print MF "#each line corresponds to a machine\n"; + print MF "#the first column indicates the command to obtain the load on a remote machine\n"; + print MF "#the second column is the command prefix to lauch a job on that remote machine\n"; + print MF "#note that the command must cd into the same directory on the remote machine\n"; + print MF "#as on the local machine. The 'node' command does that automatically.\n"; + print MF "#Type 'node' on the command line for more info.\n"; + print MF "# \n"; + print MF "#the first line sets the threshold load for not starting a job (here 0.5)\n"; + print MF "#do not remove the 'none' keyword\n"; + print MF "echo 0.5 + none\n"; + print MF "#list the machines here\n"; + print MF "#example on a local network (e.g. beowolf) with shared disk\n"; + print MF "rsh machinename uptime | getvalue average + node machinename\n"; + print MF "#secure version of the above\n"; + print MF "ssh user\@machinename uptime | getvalue average + node -s user\@machinename\n"; + print MF "#if the machines do not share the same disk\n"; + print MF "ssh user\@machinename uptime | getvalue average + node -r -s user\@machinename\n"; + print MF "#example for queueing system\n"; + print MF "llq -u $USER | wc -l | awk '{print ($1-4)/2}' + qit \n"; + close (MF) ; + exit ; + } +} + +open(MF,"$machinefile") ; + while() + { + if ( (!(/^ *$/)) && (!(/^ *\#/)) && (!(/^set/)) ) + { + # command lines return the load level " + " the ``node'' command to run remotely ... + @cmdline = split /\+/, $_ ; + $load = `@cmdline[0]` ; + chop $load ; + print $load, " + ", @cmdline[1] ; + } + } +close(MF) ; diff --git a/glue/jobctrl/chl.csh b/glue/jobctrl/chl.csh new file mode 100755 index 0000000..91cedc1 --- /dev/null +++ b/glue/jobctrl/chl.csh @@ -0,0 +1,46 @@ +#!/bin/csh +if ( "x"$1 == "x-m" ) then + set machinefile=$2 +else + set machinefile="~/.machines.rc" +endif + +if ( ! -e $machinefile ) then + echo Unable to read $machinefile + if (! -e ~/.machines.rc) then + cat - <! ~/.machines.rc <! machlist.in +foreach mach (`echo $1 | sed 's/,/ /g'`) + echo $mach >> machlist.in +end +mpirun -nolocal -np `echo $1 | sed 's/,/ /g' | wc -w` -machinefile machlist.in `which $2` $argv[3-] diff --git a/glue/jobctrl/fixeol b/glue/jobctrl/fixeol new file mode 100755 index 0000000..ee6c24d --- /dev/null +++ b/glue/jobctrl/fixeol @@ -0,0 +1,28 @@ +#!/bin/csh +if ( x$1 == "x-u" ) then + shift + if ( "x"$1 == "x" ) then + sed 's/ $//g' + else + foreach file ( $* ) + cp -f $file ${file}.bak + cat ${file}.bak | sed 's/ $//g' >! $file +# rm -f ${file}.bak + end + endif +else if ( x$1 == "x-p" ) then + shift + if ( "x"$1 == "x" ) then + awk '{print $0 "\015";}' + else + foreach file ( $* ) + cp -f $file ${file}.bak + cat ${file}.bak | awk '{print $0 "\015";}' >! $file +# rm -f ${file}.bak + end + endif +else + echo "converts text files to unix (-u) or to pc (-p) format." + echo "Syntax: fixeol -u|-p [file1, file2 ...]" + exit +endif diff --git a/glue/jobctrl/foreachfile b/glue/jobctrl/foreachfile new file mode 100755 index 0000000..faf0dab --- /dev/null +++ b/glue/jobctrl/foreachfile @@ -0,0 +1,66 @@ +#!/bin/csh + +if ( $#argv == 0 || x"$1" == "x-h" ) then + cat - <& /dev/null + set doit=1 + if ( $?skiperror ) then + if ( -e error ) then + set doit=0 + endif + endif + if ( $?toskip ) then + if ( -e $toskip ) then + set doit=0; + endif + endif + if ( $?toadd ) then + if ( ! -e $toadd ) then + set doit=0; + endif + endif + if ( $doit ) then + csh -f -c "$argv[2-]" + endif + popd >& /dev/null +end diff --git a/glue/jobctrl/getlines b/glue/jobctrl/getlines new file mode 100755 index 0000000..60f7630 --- /dev/null +++ b/glue/jobctrl/getlines @@ -0,0 +1,43 @@ +#!/bin/csh +if ( $#argv == 0 || x"$1" == "x-h" ) then + cat - <& /dev/null +if ( $status == 1 ) then + echo Cannot find command $1 + exit 1 +endif + +touch pollmach_is_running + +set commandtorun="$*" + +if ( $?usebusyflag ) then + echo Interactive loop mode... + while ( 1 ) + echo Waiting... + while ( ! -e busy && ! -e stop && ! -e stoppoll && ! -e error ) + sleep 2 + end + if ( -e stop || -e stoppoll || -e error ) then + echo exiting + break + endif + echo Running command + $commandtorun < /dev/null + rm busy + end + rm -f pollmach_is_running + rm -f stop stoppoll busy + exit +else + +if ( ! -e $machinefile ) then + echo Warning: File $machinefile not found, running in single machine mode... + echo for more information on the multiple machine mode type chl + + while (! -e stoppoll) + find . -name wait |& grep -q wait + if ($status == 1) then + if ( $?exitwhendone ) goto myexit + while (-e ready) + sleep 3 + end + touch ready + while (-e ready) + sleep 3 + end + endif + + pushd `find . -name wait -printf "%A@ %p\n" |& sed 's+/wait++g' | sort -n -r | tail -n -1 | awk '{print $2}'` >& /dev/null + rm -f wait + echo Running in $PWD + $commandtorun < /dev/null + echo Done running in $PWD + popd >& /dev/null + end + +else + + if ( $?usesema ) then + rm -f pollmachload*.tmp + grep -v -e '^#' -e '^set' $machinefile | awk 'BEGIN {n=1;} {print "0" > "pollmachload"n".tmp"; n++;}' + endif + set waitbetweenpoll=`grep '^set ' $machinefile | getvalue waitbetweenpoll` + while (! -e stoppoll) + find . -name wait |& grep -q wait + if ($status == 1) then + while (-e ready) + sleep 3 + end + touch ready + while (-e ready) + if (-e stoppoll) goto myexit + sleep 3 + end + endif + + if ( $?usesema ) then + while (1) + if (-e stoppoll) goto myexit + grep -q '^0$' pollmachload*.tmp + if ( $status == 0 ) break + sleep $waitbetweenpoll + end + set nodenumber=`grep -l '^0$' pollmachload*.tmp | tail -n -1 | sed -e 's/pollmachload//g' -e 's/.tmp//g'` + set node=`grep -v -e '^#' -e '^set' $machinefile | tail -n +$nodenumber | head -1 | sed 's/^.*+//g'` + set curdir=`find . -name wait -printf "%A@ %p\n" |& sed 's+/wait++g' | sort -n -r | tail -n -1 | awk '{print $2}'` >& /dev/null + rm -f ${curdir}/wait + (echo 1 >! pollmachload${nodenumber}.tmp ; \ + pushd $curdir; \ + echo Running in $PWD on $nodenumber ; \ + $commandtorun "$node" < /dev/null ; \ + echo Done running in $PWD on $nodenumber; \ + popd >& /dev/null ; \ + echo 0 >! pollmachload${nodenumber}.tmp ) & + sleep $waitbetweenpoll + + else + + while ( 1 ) + if (-e stoppoll) goto myexit + set node=`minload -m $machinefile` + if ( "$node" != "none" ) break + sleep $waitbetweenpoll + end + + pushd `find . -name wait -printf "%A@ %p\n" |& sed 's+/wait++g' | sort -n -r | tail -n -1 | awk '{print $2}'` >& /dev/null + rm -f wait + echo Running in $PWD on $node + ($commandtorun "$node" < /dev/null ; echo Done running in $PWD on $node) & + popd >& /dev/null + sleep $waitbetweenpoll + endif + end +endif +endif + +myexit: +rm -f stoppoll +if (-e ready) then + rm -f ready +endif + +if ( $?waitforchildren ) then + wait +endif + +rm -f pollmach_is_running diff --git a/glue/jobctrl/qit b/glue/jobctrl/qit new file mode 100755 index 0000000..9b697ba --- /dev/null +++ b/glue/jobctrl/qit @@ -0,0 +1,8 @@ +#!/bin/csh +if ( ! -e ../qit.wrap ) then + echo Cannot find qit.wrap + exit 1 +endif + +cat ../qit.wrap | sed 's+\$THECWD+'`pwd`'+g' | sed 's+\$THECMD+'$argv[1-]'+g' >! llscript +llsubmit llscript diff --git a/glue/jobctrl/readme b/glue/jobctrl/readme new file mode 100644 index 0000000..eca02ea --- /dev/null +++ b/glue/jobctrl/readme @@ -0,0 +1,16 @@ +To install, type: + make install + +The scripts + getvalue, getlines +are basic text utilities that are helpful to extract info from text files. + +pollmach is the main script that glues maps to an energy code. + +In multiple machine environment, the following are useful: + +minload returns the machine with the lowest load, or "none" if all machines are overloaded. +chl lists the load on all machines (it is called by minload). +node runs a job on a remote machine making sure the remote job has access to the files in the + current directory of the local machine. + diff --git a/glue/jobctrl/splitnodefile.pbs b/glue/jobctrl/splitnodefile.pbs new file mode 100755 index 0000000..655ba8c --- /dev/null +++ b/glue/jobctrl/splitnodefile.pbs @@ -0,0 +1,15 @@ +#!/bin/csh +if ( x$2 == "x" ) then + echo Usage: splitnodefile nodefile number_of_groups \[nodes_to_reserve_for_master\] + exit +endif +set nodefilename=$1 +set nbgroup=$2 +set nbskip=0 +if ( x$3 != "x" ) then + set nbskip=$3 +endif +set nbnode=`cat $nodefilename | wc -l` +cat $nodefilename | awk 'BEGIN {nbgroup='$nbgroup'; nbskip='$nbskip'; nbnode='$nbnode'; l=0} \ +{if (l "subnodefile0.tmp" } else {idx=1+int(nbgroup*(l-nbskip)/(nbnode-nbskip)); file="subnodefile" idx ".tmp"; print $0 > file; np[idx]++} l++} \ +END {print "set waitbetweenpoll=5" > "machine.rc"; for (j=1; j<=nbgroup; j++) {print "mpirun -np "np[j]" -machinefile '`pwd`'/subnodefile"j".tmp" > "machine.rc" }}' diff --git a/glue/jobctrl/splitnodefile.sgi b/glue/jobctrl/splitnodefile.sgi new file mode 100755 index 0000000..413a282 --- /dev/null +++ b/glue/jobctrl/splitnodefile.sgi @@ -0,0 +1,18 @@ +#!/bin/csh +if ( x$2 == "x" ) then + echo Usage: splitnodefile total_number_of_nodes number_of_groups \[nodes_to_reserve_for_master\] + exit +endif +set nbnode=$1 +set nbgroup=$2 +set nbskip=0 +if ( x$3 != "x" ) then + set nbskip=$3 +endif +awk 'BEGIN {nbgroup='$nbgroup'; nbskip='$nbskip'; nbnode='$nbnode';\ +if (nbskip>0) {print "mpirun -np "nbskip" dplace -c 0-"(nbskip-1) > "masterprefix.tmp";} \ +print "set waitbetweenpoll=5"; \ +for (g=0; g! machine.rc diff --git a/glue/jobctrl/sspp b/glue/jobctrl/sspp new file mode 100755 index 0000000..7ae4a72 --- /dev/null +++ b/glue/jobctrl/sspp @@ -0,0 +1,57 @@ +#!/bin/csh +if ( x"$1" == "x-h" ) then +cat - <! tmp.awk +sed -e 's/^#const/%/g' -e 's/#awk/%/g' -e 'sI//.*IIg' | \ +cpp -P | sed -e '\/^[^%]/ s/\"/\\"/g' | \ +sed -e '\/^[^%]/ s/^.*$/print "&"/g' \ + -e 's/\\{/\"obrace\"/g' -e 's/\\}/\"cbrace\"/g' \ + -e '\/^[^%]/ s/{\([^{}]*\)}/" (\1) "/g' \ + -e '\/^%/ s/^%/print ""; /g' \ + -e 's/^$/print ""/g' \ + >> tmp.awk +echo "}" >> tmp.awk +if ("x-nb" == x"$1") then + awk -f tmp.awk | grep -v '^$' +else + awk -f tmp.awk +endif +rm -f tmp.awk diff --git a/glue/oc/patchtdb b/glue/oc/patchtdb new file mode 100644 index 0000000..9c8fc5f --- /dev/null +++ b/glue/oc/patchtdb @@ -0,0 +1,6 @@ +#/bin/bash +cat - > tmp.tdb +grep FUNCTION tmp.tdb | awk 'BEGIN {n=0;} {printf "s/%s/FUNC%04i/g\n",$2,n; n++}' > tmp.sed +cat tmp.tdb | awk '/^ELEMENT/ {printf " ELEMENT %-2s %-24s %f %f %f !\n",$2,$3,$4,$5,$6;} ! /^ELEMENT/ {print $0;}' |\ + sed -e 's/^PHASE/ PHASE/g' -e 's/^FUNCTION/ FUNCTION/g' -e 's/^CONSTITUENT/ CONSTITUENT/g' -e 's/^PARAMETER\(.*\)N !/ PARAMETER\1N REFDUM !/g' | sed -f tmp.sed +rm tmp.tdb tmp.sed diff --git a/glue/pandat/mkaxes b/glue/pandat/mkaxes new file mode 100755 index 0000000..9ff3ea9 --- /dev/null +++ b/glue/pandat/mkaxes @@ -0,0 +1,60 @@ +#!/bin/bash + +echo | awk 'BEGIN { +minT='$1'; +maxT='$2'; +ticTstep='$3'; +ticsize=0.05; +ticstep=0.25; +print "# vtk DataFile Version 3.0\nvtk output\nASCII\nDATASET POLYDATA"; +npt=6; +for (T=minT; T<=maxT+ticTstep/2.; T+=ticTstep) {npt+=6;} +for (t=0; t<=1.01; t+=ticstep) {npt+=6;} +print "POINTS" , npt , "float"; +s60=sqrt(3.)/2.; +c60=0.5; +for (T=minT; T<=maxT+(maxT-minT)/2.; T+=maxT-minT) { + print T,0,0; + print T,1,0; + print T,c60,s60; +} +ntic=0; +for (t=0; t<=1.01; t+=ticstep) { + print minT,t,0; + print minT,t+c60*ticsize,-s60*ticsize; + + print minT,1-t*c60,t*s60; + print minT,1-t*c60+c60*ticsize,t*s60+s60*ticsize; + + print minT,c60*(1.-t),s60*(1.-t); + print minT,c60*(1.-t)-ticsize,s60*(1.-t); + + ntic+=3; +} +for (T=minT; T<=maxT+ticTstep/2.; T+=ticTstep) { + print T,0,0; + print T,-s60*ticsize,-c60*ticsize; + + print T,1,0; + print T,1+s60*ticsize,-c60*ticsize; + + print T,c60,s60; + print T,c60,s60+ticsize; + + ntic+=3; +} +nln=9+ntic; +print "LINES ",nln,nln*3; +print 2,0,1; +print 2,1,2; +print 2,2,0; +print 2,3,4; +print 2,4,5; +print 2,5,3; +print 2,0,3; +print 2,1,4; +print 2,2,5; +for (i=0; i axes.vtk diff --git a/glue/pandat/pandat2vtk b/glue/pandat/pandat2vtk new file mode 100755 index 0000000..61f381d --- /dev/null +++ b/glue/pandat/pandat2vtk @@ -0,0 +1,38 @@ +#!/bin/bash + +cat $1/section_default_?/Table/Default.table $1/section_default_??/Table/Default.table |\ + grep -v -e "xml" -e "mole" -e "Default" | sed -e 's/x00[0-9][0-9]//g' -e 's/G=.*//g' |\ + grep -v 'f____[^=]*__="[^"][^"]' |\ + sed -e 's/f[^=]*="0"//g' -e 's/f[^=]*=""//g' -e 's/f____\([^=]*\)__="1"/onephase="\1"/g' -e 's/phase_name="[^"]*"//g' -e 's/=""/="0"/g' |\ + sed -e 's/[^"]*"\([^"]*\)"/\1 /g' -e 's+ *++g' | awk 'BEGIN {last=""} {if (last!="" && $5!="" && $5!=last) {print "";} last=$5; print $0}' | \ + awk 'BEGIN {getline; print $0; l2=$0; getline; l1=$0} {if ($0!="" || l2!="") {print l1;} else {l2=l1; l1=$0; getline;}; l2=l1; l1=$0} END {if (l2!="") {print l1;}}' > alltables.tmp + +awk '{if ($5!="") {file="phase_" $5 ".out"; print $1,$2,$3,$4 > file;} else {print "" > file}}' alltables.tmp + +#rm alltables.tmp + +col=0 +for file in phase_*.out +do + echo $file + triph -bf -sc=$2 -col=$col -t=$file > $(echo $file | sed 's/.out/.vtk/g') + col=$((col+1)) +done + +cat $1/section_default_?/Table/tieline.table $1/section_default_??/Table/tieline.table |\ + sed 's/""/"0"/g' | grep -v -e "xml" -e "mole" | grep '"' | sed -e 's/[^"]*"\([^"]*\)"/\1 /g' -e 's+ */>++g' | awk '{print $2,$1,$3,$4,$5}' > alltielines.tmp + +cat - > tielines.vtk <> tielines.vtk +awk '{print $2/'$2',$3+$4/2.,$4*sqrt(3.)/2.}' alltielines.tmp >> tielines.vtk +echo LINES `cat alltielines.tmp | wc -l | awk '{print $1/2,$1/2*3}'` >> tielines.vtk +awk 'BEGIN {n=0} {getline; print 2,n,n+1; n+=2;}' alltielines.tmp >> tielines.vtk + +#rm alltielines.tmp + diff --git a/glue/pwscf/runstruct_pwscf b/glue/pwscf/runstruct_pwscf new file mode 100755 index 0000000..a1b3444 --- /dev/null +++ b/glue/pwscf/runstruct_pwscf @@ -0,0 +1,73 @@ +#!/bin/csh + +#goto here + +set strout="str_hint.out" + +if ( ! -e $strout ) then + set strout="str.out" +endif + +if (! -e $strout ) then + echo str.out or str_hint.out does not exist + echo NOTE: runstruct_xxxx needs to be run within the subdirectory containing a structure. + exit 1 +endif + +set wrapfilename="pwscf.wrap" + +set wrapfile="$wrapfilename" +if (! -e $wrapfile) then + set wrapfile="../$wrapfilename" + if (! -e $wrapfile) then + set wrapfile="../../$wrapfilename" + if (! -e $wrapfile) then + set wrapfile="../../../$wrapfilename" + if (! -e $wrapfile) then + echo You need a $wrapfilename file in $PWD , $PWD/.. , $PWD/../.. or $PWD/../../.. + echo NOTE: $0 needs to be run within the numbered subdirectory. + exit 1 + endif + endif + endif +endif + + +( echo " ibrav="`fixcell -b < $strout | head -1 | awk '{print 1+(index("cP cF cI hP hR tP tI oP oC oF oI mP mC aP",$1)-1)/3;}'` ;\ + (cellcvrt -f < $strout | fixcell -b | tail -n +3 | head -3 ; echo 1 0 0 ; echo 0 1 0; echo 0 0 1 ) | cellcvrt -f -abc | head -1 | awk '{print " a="$1; print " b="$2; print " c="$3; print " cosbc="cos($4/360*2*3.1415926535897932384626433); print " cosac="cos($5/360*2*3.1415926535897932384626433); print " cosab="cos($6/360*2*3.1415926535897932384626433);}' ; echo " nat="`cellcvrt -f < $strout | tail -n +7 | wc -l` ;\ + echo " ntyp="`cellcvrt -f < $strout | tail -n +7 | awk '{print $4}' | sort -u | wc -l` \ +) >& pwsystem.tmp + +( echo "ATOMIC_POSITIONS (crystal)" ;\ + cellcvrt -f < $strout | tail -n +7 | awk '{print " " $4,$1,$2,$3;}' \ +) >& pwatom.tmp + +grep -q '[kK][pP][pP][rR][aA]' < $wrapfile +if ( $status == 1 ) then + grep -q INSERTKPOINTS < $wrapfile + if ( $status == 0 ) then + echo Missing kppra token in $wrapfile + exit + endif +endif +set nbkp=`getvalue '[kK][pP][pP][rR][aA]' < $wrapfile` +set nbat=`cellcvrt -pn < $strout` +( echo "K_POINTS (automatic)" ; \ + echo " "`( echo $nbkp $nbat | awk '{print $1/$2}' ; cat $strout | cellcvrt -f | head -3 ) | kmesh -q -r` 0 0 0 \ +) >& pwkpoint.tmp + +awk '{if ($1=="INSERTSYSTEM") {system("cat pwsystem.tmp");} \ + else if ($1=="INSERTATOMS") {system("cat pwatom.tmp");} \ + else if ($1=="INSERTKPOINTS") {system("cat pwkpoint.tmp");} \ + else {print $0;} \ +}' $wrapfile | grep -v -i kppra >! pwscf.in + +pw.x < pwscf.in > pwscf.out + +getlines -af 'Begin final coordinates' < pwscf.out > finalval.tmp + +getvalue 'total energy' < finalval.tmp | tail -n -1 | awk '{print $1*13.605698066}' > energy + +( getlines -jbt 'CELL_PARAMETERS' '^$' < finalval.tmp ; echo 1 0 0 ; echo 0 1 0 ; echo 0 0 1 ; getlines -jbt 'ATOMIC_POSITIONS' 'End' < finalval.tmp | awk '{print $2,$3,$4,$1}') | cellcvrt -sc=`getvalue alat < finalcoord.tmp` > str_relax.out + +#rm -f pwsysten.tmp pwatom.tmp pwkpoint.tmp finalval.tmp diff --git a/glue/qe/example/INPUT/Mo.GTH_LDA.UPF b/glue/qe/example/INPUT/Mo.GTH_LDA.UPF new file mode 100644 index 0000000..3e0f121 --- /dev/null +++ b/glue/qe/example/INPUT/Mo.GTH_LDA.UPF @@ -0,0 +1,3175 @@ + + + Generated in analytical, separable form + Author: Goedecker/Hartwigsen/Hutter/Teter + Generation date: Phys.Rev.B58, 3641 (1998); B54, 1703 (1996) + Pseudopotential type: NC + Element: Mo + Functional: PZ + + Suggested minimum cutoff for wavefunctions: 0. Ry + Suggested minimum cutoff for charge density: 0. Ry + The Pseudo was generated with a Non-Relativistic Calculation + Local Potential: unknown format, L component and cutoff radius: -3 0.0000 + + Valence configuration: + nl pn l occ Rcut Rcut US E pseu + + Generation configuration: not available. + Comment: + Info: automatically converted from CPMD format + + + + + + + + 2.171147537034563E-005 2.198457211116720E-005 2.226110398610910E-005 2.254111420383938E-005 + 2.282464651652428E-005 2.311174522666450E-005 2.340245519401759E-005 2.369682184260741E-005 + 2.399489116782168E-005 2.429670974359892E-005 2.460232472970564E-005 2.491178387910520E-005 + 2.522513554541928E-005 2.554242869048326E-005 2.586371289199661E-005 2.618903835126948E-005 + 2.651845590106674E-005 2.685201701355076E-005 2.718977380832398E-005 2.753177906057281E-005 + 2.787808620931367E-005 2.822874936574316E-005 2.858382332169288E-005 2.894336355819083E-005 + 2.930742625413051E-005 2.967606829504880E-005 3.004934728201463E-005 3.042732154062916E-005 + 3.081005013013924E-005 3.119759285266571E-005 3.159001026254742E-005 3.198736367580301E-005 + 3.238971517971176E-005 3.279712764251469E-005 3.320966472323807E-005 3.362739088164004E-005 + 3.405037138828273E-005 3.447867233473085E-005 3.491236064387865E-005 3.535150408040683E-005 + 3.579617126137077E-005 3.624643166692218E-005 3.670235565116549E-005 3.716401445315077E-005 + 3.763148020800517E-005 3.810482595820391E-005 3.858412566498349E-005 3.906945421989825E-005 + 3.956088745652224E-005 4.005850216229860E-005 4.056237609053748E-005 4.107258797256529E-005 + 4.158921753002666E-005 4.211234548734097E-005 4.264205358431595E-005 4.317842458891940E-005 + 4.372154231021209E-005 4.427149161144288E-005 4.482835842330898E-005 4.539222975738277E-005 + 4.596319371970736E-005 4.654133952456350E-005 4.712675750840944E-005 4.771953914399617E-005 + 4.831977705466033E-005 4.892756502879664E-005 4.954299803451261E-005 5.016617223446748E-005 + 5.079718500089781E-005 5.143613493083225E-005 5.208312186149726E-005 5.273824688591707E-005 + 5.340161236870961E-005 5.407332196208112E-005 5.475348062202228E-005 5.544219462470747E-005 + 5.613957158310078E-005 5.684572046377080E-005 5.756075160391674E-005 5.828477672860911E-005 + 5.901790896824662E-005 5.976026287623330E-005 6.051195444687758E-005 6.127310113351666E-005 + 6.204382186686900E-005 6.282423707361717E-005 6.361446869522500E-005 6.441464020699111E-005 + 6.522487663734209E-005 6.604530458736879E-005 6.687605225060745E-005 6.771724943307065E-005 + 6.856902757352960E-005 6.943151976405162E-005 7.030486077079635E-005 7.118918705507286E-005 + 7.208463679466226E-005 7.299134990540818E-005 7.390946806307880E-005 7.483913472550429E-005 + 7.578049515499206E-005 7.673369644102442E-005 7.769888752324161E-005 7.867621921471386E-005 + 7.966584422550648E-005 8.066791718654075E-005 8.168259467375557E-005 8.271003523257270E-005 + 8.375039940266971E-005 8.480384974306500E-005 8.587055085751739E-005 8.695066942024627E-005 + 8.804437420197458E-005 8.915183609629952E-005 9.027322814639542E-005 9.140872557205149E-005 + 9.255850579705072E-005 9.372274847689245E-005 9.490163552686406E-005 9.609535115046566E-005 + 9.730408186819206E-005 9.852801654667705E-005 9.976734642820429E-005 1.010222651605891E-004 + 1.022929688274367E-004 1.035796559787802E-004 1.048825276621049E-004 1.062017874537619E-004 + 1.075376414907778E-004 1.088902985030637E-004 1.102599698460297E-004 1.116468695336098E-004 + 1.130512142717019E-004 1.144732234920283E-004 1.159131193864229E-004 1.173711269415489E-004 + 1.188474739740528E-004 1.203423911661622E-004 1.218561121017298E-004 1.233888733027315E-004 + 1.249409142662234E-004 1.265124775017637E-004 1.281038085693053E-004 1.297151561175649E-004 + 1.313467719228755E-004 1.329989109285262E-004 1.346718312845978E-004 1.363657943882997E-004 + 1.380810649248129E-004 1.398179109086489E-004 1.415766037255261E-004 1.433574181747752E-004 + 1.451606325122771E-004 1.469865284939405E-004 1.488353914197276E-004 1.507075101782321E-004 + 1.526031772918186E-004 1.545226889623306E-004 1.564663451173717E-004 1.584344494571708E-004 + 1.604273095020349E-004 1.624452366404007E-004 1.644885461774888E-004 1.665575573845717E-004 + 1.686525935488601E-004 1.707739820240166E-004 1.729220542813069E-004 1.750971459613913E-004 + 1.772995969267699E-004 1.795297513148875E-004 1.817879575919038E-004 1.840745686071445E-004 + 1.863899416482327E-004 1.887344384969166E-004 1.911084254855991E-004 1.935122735545765E-004 + 1.959463583100007E-004 1.984110600825669E-004 2.009067639869412E-004 2.034338599819368E-004 + 2.059927429314437E-004 2.085838126661292E-004 2.112074740459109E-004 2.138641370232170E-004 + 2.165542167070434E-004 2.192781334278128E-004 2.220363128030554E-004 2.248291858039098E-004 + 2.276571888224644E-004 2.305207637399450E-004 2.334203579957578E-004 2.363564246574050E-004 + 2.393294224912759E-004 2.423398160343302E-004 2.453880756666845E-004 2.484746776851072E-004 + 2.516001043774442E-004 2.547648440979744E-004 2.579693913437179E-004 2.612142468317021E-004 + 2.644999175771978E-004 2.678269169729444E-004 2.711957648693661E-004 2.746069876558005E-004 + 2.780611183427489E-004 2.815586966451576E-004 2.851002690667529E-004 2.886863889854309E-004 + 2.923176167397247E-004 2.959945197163594E-004 2.997176724389047E-004 3.034876566575493E-004 + 3.073050614399970E-004 3.111704832635114E-004 3.150845261081176E-004 3.190478015509721E-004 + 3.230609288619270E-004 3.271245351002891E-004 3.312392552128004E-004 3.354057321328508E-004 + 3.396246168809346E-004 3.438965686663780E-004 3.482222549903386E-004 3.526023517501047E-004 + 3.570375433447076E-004 3.615285227818558E-004 3.660759917862246E-004 3.706806609090974E-004 + 3.753432496393925E-004 3.800644865160863E-004 3.848451092420447E-004 3.896858647992959E-004 + 3.945875095657441E-004 3.995508094333562E-004 4.045765399278353E-004 4.096654863297948E-004 + 4.148184437974646E-004 4.200362174909325E-004 4.253196226979532E-004 4.306694849613408E-004 + 4.360866402079567E-004 4.415719348793306E-004 4.471262260639144E-004 4.527503816310060E-004 + 4.584452803663555E-004 4.642118121094761E-004 4.700508778926853E-004 4.759633900818912E-004 + 4.819502725191522E-004 4.880124606670299E-004 4.941509017547558E-004 5.003665549262388E-004 + 5.066603913899329E-004 5.130333945705898E-004 5.194865602629232E-004 5.260208967872011E-004 + 5.326374251468000E-004 5.393371791877374E-004 5.461212057602127E-004 5.529905648821803E-004 + 5.599463299049787E-004 5.669895876810447E-004 5.741214387337350E-004 5.813429974292865E-004 + 5.886553921509380E-004 5.960597654752416E-004 6.035572743505939E-004 6.111490902780103E-004 + 6.188363994941748E-004 6.266204031567931E-004 6.345023175322735E-004 6.424833741857734E-004 + 6.505648201736326E-004 6.587479182382280E-004 6.670339470052815E-004 6.754242011836454E-004 + 6.839199917676056E-004 6.925226462417255E-004 7.012335087882688E-004 7.100539404972313E-004 + 7.189853195790119E-004 7.280290415797642E-004 7.371865195994499E-004 7.464591845126402E-004 + 7.558484851920941E-004 7.653558887351445E-004 7.749828806929388E-004 7.847309653025563E-004 + 7.946016657220497E-004 8.045965242684420E-004 8.147171026587150E-004 8.249649822538339E-004 + 8.353417643058343E-004 8.458490702080230E-004 8.564885417483254E-004 8.672618413658149E-004 + 8.781706524104764E-004 8.892166794062293E-004 9.004016483172640E-004 9.117273068177301E-004 + 9.231954245648098E-004 9.348077934752337E-004 9.465662280052694E-004 9.584725654342345E-004 + 9.705286661515769E-004 9.827364139475606E-004 9.950977163076169E-004 1.007614504710388E-003 + 1.020288734929528E-003 1.033122387339295E-003 1.046117467223986E-003 1.059276005091274E-003 + 1.072600056989472E-003 1.086091704828795E-003 1.099753056706669E-003 1.113586247237119E-003 + 1.127593437884308E-003 1.141776817300273E-003 1.156138601666904E-003 1.170681035042228E-003 + 1.185406389711046E-003 1.200316966539985E-003 1.215415095337010E-003 1.230703135215462E-003 + 1.246183474962676E-003 1.261858533413234E-003 1.277730759826908E-003 1.293802634271369E-003 + 1.310076668009696E-003 1.326555403892772E-003 1.343241416756604E-003 1.360137313824650E-003 + 1.377245735115202E-003 1.394569353853894E-003 1.412110876891398E-003 1.429873045126380E-003 + 1.447858633933761E-003 1.466070453598387E-003 1.484511349754130E-003 1.503184203828533E-003 + 1.522091933493037E-003 1.541237493118870E-003 1.560623874238675E-003 1.580254106013944E-003 + 1.600131255708328E-003 1.620258429166909E-003 1.640638771301490E-003 1.661275466581992E-003 + 1.682171739534039E-003 1.703330855242791E-003 1.724756119863130E-003 1.746450881136241E-003 + 1.768418528912712E-003 1.790662495682201E-003 1.813186257109770E-003 1.835993332578969E-003 + 1.859087285741742E-003 1.882471725075255E-003 1.906150304445728E-003 1.930126723679362E-003 + 1.954404729140447E-003 1.978988114316728E-003 2.003880720412152E-003 2.029086436947068E-003 + 2.054609202365964E-003 2.080453004652867E-003 2.106621881954460E-003 2.133119923211065E-003 + 2.159951268795537E-003 2.187120111160212E-003 2.214630695491988E-003 2.242487320375636E-003 + 2.270694338465468E-003 2.299256157165449E-003 2.328177239317858E-003 2.357462103900627E-003 + 2.387115326733422E-003 2.417141541192645E-003 2.447545438935392E-003 2.478331770632539E-003 + 2.509505346711056E-003 2.541071038105624E-003 2.573033777019745E-003 2.605398557696404E-003 + 2.638170437198428E-003 2.671354536198660E-003 2.704956039780089E-003 2.738980198246010E-003 + 2.773432327940405E-003 2.808317812078633E-003 2.843642101588563E-003 2.879410715962302E-003 + 2.915629244118618E-003 2.952303345276222E-003 2.989438749838031E-003 3.027041260286561E-003 + 3.065116752090577E-003 3.103671174623136E-003 3.142710552091196E-003 3.182240984476917E-003 + 3.222268648490779E-003 3.262799798536726E-003 3.303840767689412E-003 3.345397968683766E-003 + 3.387477894916991E-003 3.430087121463173E-003 3.473232306100653E-003 3.516920190352305E-003 + 3.561157600538931E-003 3.605951448845873E-003 3.651308734403059E-003 3.697236544378643E-003 + 3.743742055086373E-003 3.790832533106912E-003 3.838515336423258E-003 3.886797915570438E-003 + 3.935687814799680E-003 3.985192673257204E-003 4.035320226177861E-003 4.086078306093782E-003 + 4.137474844058219E-003 4.189517870884798E-003 4.242215518402344E-003 4.295576020725497E-003 + 4.349607715541305E-003 4.404319045412007E-003 4.459718559094215E-003 4.515814912874651E-003 + 4.572616871922720E-003 4.630133311660087E-003 4.688373219147478E-003 4.747345694488933E-003 + 4.807059952253702E-003 4.867525322916051E-003 4.928751254313161E-003 4.990747313121376E-003 + 5.053523186351026E-003 5.117088682860016E-003 5.181453734886500E-003 5.246628399600810E-003 + 5.312622860676901E-003 5.379447429883592E-003 5.447112548695775E-003 5.515628789925927E-003 + 5.585006859376139E-003 5.655257597510908E-003 5.726391981151004E-003 5.798421125188589E-003 + 5.871356284323967E-003 5.945208854824136E-003 6.019990376303487E-003 6.095712533526907E-003 + 6.172387158235515E-003 6.250026230995416E-003 6.328641883069685E-003 6.408246398313903E-003 + 6.488852215095539E-003 6.570471928237458E-003 6.653118290985892E-003 6.736804217003168E-003 + 6.821542782385478E-003 6.907347227706080E-003 6.994230960084116E-003 7.082207555279539E-003 + 7.171290759814340E-003 7.261494493120461E-003 7.352832849714759E-003 7.445320101401283E-003 + 7.538970699501271E-003 7.633799277111212E-003 7.729820651389279E-003 7.827049825870578E-003 + 7.925501992811421E-003 8.025192535563200E-003 8.126137030976047E-003 8.228351251832727E-003 + 8.331851169313224E-003 8.436652955490212E-003 8.542772985855995E-003 8.650227841881228E-003 + 8.759034313605770E-003 8.869209402262214E-003 8.980770322932310E-003 9.093734507236885E-003 + 9.208119606059557E-003 9.323943492304736E-003 9.441224263690309E-003 9.559980245575399E-003 + 9.680229993823794E-003 9.801992297703305E-003 9.925286182821628E-003 1.005013091409918E-002 + 1.017654599877921E-002 1.030455118947589E-002 1.043416648726070E-002 1.056541214478762E-002 + 1.069830866945766E-002 1.083287682662318E-002 1.096913764283252E-002 1.110711240911545E-002 + 1.124682268430987E-002 1.138829029843058E-002 1.153153735608006E-002 1.167658623990253E-002 + 1.182345961408119E-002 1.197218042787955E-002 1.212277191922736E-002 1.227525761835153E-002 + 1.242966135145277E-002 1.258600724442852E-002 1.274431972664263E-002 1.290462353474255E-002 + 1.306694371652444E-002 1.323130563484694E-002 1.339773497159419E-002 1.356625773168864E-002 + 1.373690024715444E-002 1.390968918123181E-002 1.408465153254322E-002 1.426181463931204E-002 + 1.444120618363413E-002 1.462285419580328E-002 1.480678705869096E-002 1.499303351218120E-002 + 1.518162265766128E-002 1.537258396256886E-002 1.556594726499637E-002 1.576174277835320E-002 + 1.596000109608666E-002 1.616075319646226E-002 1.636403044740409E-002 1.656986461139624E-002 + 1.677828785044557E-002 1.698933273110721E-002 1.720303222957316E-002 1.741941973682480E-002 + 1.763852906385043E-002 1.786039444692815E-002 1.808505055297545E-002 1.831253248496598E-002 + 1.854287578741440E-002 1.877611645193040E-002 1.901229092284232E-002 1.925143610289173E-002 + 1.949358935899958E-002 1.973878852810477E-002 1.998707192307637E-002 2.023847833869996E-002 + 2.049304705773948E-002 2.075081785707520E-002 2.101183101391893E-002 2.127612731210752E-002 + 2.154374804847524E-002 2.181473503930662E-002 2.208913062687032E-002 2.236697768603514E-002 + 2.264831963096938E-002 2.293320042192433E-002 2.322166457210317E-002 2.351375715461624E-002 + 2.380952380952381E-002 2.410901075096749E-002 2.441226477439117E-002 2.471933326385299E-002 + 2.503026419942916E-002 2.534510616471094E-002 2.566390835439599E-002 2.598672058197505E-002 + 2.631359328751543E-002 2.664457754554241E-002 2.697972507301967E-002 2.731908823743029E-002 + 2.766272006495913E-002 2.801067424877835E-002 2.836300515743712E-002 2.871976784335668E-002 + 2.908101805143262E-002 2.944681222774488E-002 2.981720752837774E-002 3.019226182835048E-002 + 3.057203373066051E-002 3.095658257544027E-002 3.134596844922909E-002 3.174025219436198E-002 + 3.213949541847629E-002 3.254376050413801E-002 3.295311061858933E-002 3.336760972361842E-002 + 3.378732258555376E-002 3.421231478538395E-002 3.464265272900480E-002 3.507840365759561E-002 + 3.551963565812549E-002 3.596641767399222E-002 3.641881951579477E-002 3.687691187224126E-002 + 3.734076632119450E-002 3.781045534085581E-002 3.828605232109009E-002 3.876763157489312E-002 + 3.925526835000305E-002 3.974903884065817E-002 4.024902019950219E-002 4.075529054963965E-002 + 4.126792899684277E-002 4.178701564191187E-002 4.231263159319140E-002 4.284485897924308E-002 + 4.338378096167880E-002 4.392948174815479E-002 4.448204660552911E-002 4.504156187318500E-002 + 4.560811497652136E-002 4.618179444061321E-002 4.676268990404401E-002 4.735089213291171E-002 + 4.794649303501136E-002 4.854958567419562E-002 4.916026428491637E-002 4.977862428694898E-002 + 5.040476230030178E-002 5.103877616031333E-002 5.168076493293913E-002 5.233082893023101E-002 + 5.298906972601117E-002 5.365559017174305E-002 5.433049441260247E-002 5.501388790375011E-002 + 5.570587742680934E-002 5.640657110655099E-002 5.711607842778804E-002 5.783451025248306E-002 + 5.856197883707025E-002 5.929859784999601E-002 6.004448238947976E-002 6.079974900149826E-002 + 6.156451569799634E-002 6.233890197532623E-002 6.312302883291925E-002 6.391701879219218E-002 + 6.472099591569155E-002 6.553508582647874E-002 6.635941572775839E-002 6.719411442275475E-002 + 6.803931233483729E-002 6.889514152789908E-002 6.976173572699296E-002 7.063923033922545E-002 + 7.152776247491505E-002 7.242747096901586E-002 7.333849640281026E-002 7.426098112587608E-002 + 7.519506927832782E-002 7.614090681333988E-002 7.709864151995151E-002 7.806842304615891E-002 + 7.905040292229883E-002 8.004473458472454E-002 8.105157339978136E-002 8.207107668808278E-002 + 8.310340374909145E-002 8.414871588601128E-002 8.520717643099000E-002 8.627895077064145E-002 + 8.736420637188683E-002 8.846311280812151E-002 8.957584178571225E-002 9.070256717082530E-002 + 9.184346501659459E-002 9.299871359062988E-002 9.416849340287088E-002 9.535298723379353E-002 + 9.655238016296848E-002 9.776685959798119E-002 9.899661530371452E-002 1.002418394319991E-001 + 1.015027265516386E-001 1.027794736788106E-001 1.040722803078514E-001 1.053813484424271E-001 + 1.067068826270968E-001 1.080490899792740E-001 1.094081802215879E-001 1.107843657146540E-001 + 1.121778614902558E-001 1.135888852849429E-001 1.150176575740544E-001 1.164644016061668E-001 + 1.179293434379789E-001 1.194127119696324E-001 1.209147389804781E-001 1.224356591652927E-001 + 1.239757101709488E-001 1.255351326335498E-001 1.271141702160281E-001 1.287130696462183E-001 + 1.303320807554096E-001 1.319714565173816E-001 1.336314530879323E-001 1.353123298449035E-001 + 1.370143494287079E-001 1.387377777833686E-001 1.404828841980719E-001 1.422499413492458E-001 + 1.440392253431655E-001 1.458510157590949E-001 1.476855956929731E-001 1.495432518016468E-001 + 1.514242743476626E-001 1.533289572446206E-001 1.552575981030979E-001 1.572104982771532E-001 + 1.591879629114112E-001 1.611903009887446E-001 1.632178253785520E-001 1.652708528856437E-001 + 1.673497042997453E-001 1.694547044456189E-001 1.715861822338206E-001 1.737444707120913E-001 + 1.759299071173964E-001 1.781428329286211E-001 1.803835939199250E-001 1.826525402147721E-001 + 1.849500263406375E-001 1.872764112844021E-001 1.896320585484471E-001 1.920173362074494E-001 + 1.944326169658963E-001 1.968782782163208E-001 1.993547020982682E-001 2.018622755580091E-001 + 2.044013904089975E-001 2.069724433930952E-001 2.095758362425622E-001 2.122119757428270E-001 + 2.148812737960507E-001 2.175841474854840E-001 2.203210191406402E-001 2.230923164032842E-001 + 2.258984722942506E-001 2.287399252811074E-001 2.316171193466640E-001 2.345305040583472E-001 + 2.374805346384459E-001 2.404676720352394E-001 2.434923829950240E-001 2.465551401350404E-001 + 2.496564220173231E-001 2.527967132234765E-001 2.559765044303893E-001 2.591962924869083E-001 + 2.624565804914668E-001 2.657578778706991E-001 2.691007004590378E-001 2.724855705793124E-001 + 2.759130171243668E-001 2.793835756396956E-001 2.828977884071284E-001 2.864562045295605E-001 + 2.900593800167494E-001 2.937078778721968E-001 2.974022681811146E-001 3.011431281995053E-001 + 3.049310424443581E-001 3.087666027849794E-001 3.126504085354769E-001 3.165830665483997E-001 + 3.205651913095645E-001 3.245974050340659E-001 3.286803377635022E-001 3.328146274644201E-001 + 3.370009201279954E-001 3.412398698709749E-001 3.455321390378792E-001 3.498783983044986E-001 + 3.542793267826869E-001 3.587356121264713E-001 3.632479506395043E-001 3.678170473838577E-001 + 3.724436162901946E-001 3.771283802693198E-001 3.818720713251351E-001 3.866754306690204E-001 + 3.915392088356444E-001 3.964641658002415E-001 4.014510710973583E-001 4.065007039410920E-001 + 4.116138533468491E-001 4.167913182546260E-001 4.220339076538486E-001 4.273424407097776E-001 + 4.327177468915015E-001 4.381606661015494E-001 4.436720488071194E-001 4.492527561729733E-001 + 4.549036601959921E-001 4.606256438414243E-001 4.664196011808576E-001 4.722864375319127E-001 + 4.782270695997064E-001 4.842424256200863E-001 4.903334455046676E-001 4.965010809877008E-001 + 5.027462957747768E-001 5.090700656934130E-001 5.154733788455256E-001 5.219572357618207E-001 + 5.285226495581349E-001 5.351706460937292E-001 5.419022641315888E-001 5.487185555007286E-001 + 5.556205852605410E-001 5.626094318672203E-001 5.696861873422655E-001 5.768519574431187E-001 + 5.841078618359375E-001 5.914550342705439E-001 5.988946227575809E-001 6.064277897478833E-001 + 6.140557123141205E-001 6.217795823347141E-001 6.296006066800667E-001 6.375200074011466E-001 + 6.455390219204263E-001 6.536589032252406E-001 6.618809200635640E-001 6.702063571422536E-001 + 6.786365153277932E-001 6.871727118495484E-001 6.958162805055937E-001 7.045685718711185E-001 + 7.134309535094530E-001 7.224048101857611E-001 7.314915440834033E-001 7.406925750230395E-001 + 7.500093406844753E-001 7.594432968312976E-001 7.689959175383505E-001 7.786686954220517E-001 + 7.884631418736264E-001 7.983807872952611E-001 8.084231813392276E-001 8.185918931500294E-001 + 8.288885116095726E-001 8.393146455854414E-001 8.498719241822835E-001 8.605619969963554E-001 + 8.713865343732866E-001 8.823472276690618E-001 8.934457895143094E-001 9.046839540818998E-001 + 9.160634773579081E-001 9.275861374160005E-001 9.392537346952513E-001 9.510680922814748E-001 + 9.630310561920817E-001 9.751444956645191E-001 9.874103034483527E-001 9.998303961010000E-001 + 1.012406714287209E+000 1.025141223082285E+000 1.038035912279131E+000 1.051092796699174E+000 + 1.064313916507163E+000 1.077701337529971E+000 1.091257151579369E+000 1.104983476778880E+000 + 1.118882457894746E+000 1.132956266671040E+000 1.147207102169019E+000 1.161637191110725E+000 + 1.176248788226909E+000 1.191044176609352E+000 1.206025668067587E+000 1.221195603490136E+000 + 1.236556353210273E+000 1.252110317376392E+000 1.267859926327040E+000 1.283807640970656E+000 + 1.299955953170101E+000 1.316307386132012E+000 1.332864494801051E+000 1.349629866259140E+000 + 1.366606120129672E+000 1.383795908986857E+000 1.401201918770178E+000 1.418826869204071E+000 + 1.436673514222906E+000 1.454744642401271E+000 1.473043077389712E+000 1.491571678355927E+000 + 1.510333340431508E+000 1.529330995164332E+000 1.548567610976596E+000 1.568046193628659E+000 + 1.587769786688696E+000 1.607741472008242E+000 1.627964370203768E+000 1.648441641144254E+000 + 1.669176484444949E+000 1.690172139967308E+000 1.711431888325216E+000 1.732959051397613E+000 + 1.754756992847520E+000 1.776829118647641E+000 1.799178877612540E+000 1.821809761937521E+000 + 1.844725307744309E+000 1.867929095633551E+000 1.891424751244317E+000 1.915215945820602E+000 + 1.939306396784956E+000 1.963699868319360E+000 1.988400171953364E+000 2.013411167159667E+000 + 2.038736761957159E+000 2.064380913521545E+000 2.090347628803689E+000 2.116640965155674E+000 + 2.143265030964805E+000 2.170223986295535E+000 2.197522043539474E+000 2.225163468073613E+000 + 2.253152578926765E+000 2.281493749454449E+000 2.310191408022225E+000 2.339250038697620E+000 + 2.368674181950808E+000 2.398468435364027E+000 2.428637454349992E+000 2.459185952879306E+000 + 2.490118704217005E+000 2.521440541668429E+000 2.553156359334394E+000 2.585271112875942E+000 + 2.617789820288658E+000 2.650717562686722E+000 2.684059485096889E+000 2.717820797262358E+000 + 2.752006774456849E+000 2.786622758308855E+000 2.821674157636270E+000 2.857166449291561E+000 + 2.893105179017499E+000 2.929495962313727E+000 2.966344485314178E+000 3.003656505675528E+000 + 3.041437853476882E+000 3.079694432130690E+000 3.118432219305205E+000 3.157657267858492E+000 + 3.197375706784179E+000 3.237593742169170E+000 3.278317658163303E+000 3.319553817961313E+000 + 3.361308664797071E+000 3.403588722950333E+000 3.446400598766217E+000 3.489750981687409E+000 + 3.533646645299443E+000 3.578094448389070E+000 3.623101336015943E+000 3.668674340597831E+000 + 3.714820583009407E+000 3.761547273694939E+000 3.808861713794921E+000 3.856771296286865E+000 + 3.905283507140523E+000 3.954405926487526E+000 4.004146229805844E+000 4.054512189119075E+000 + 4.105511674210819E+000 4.157152653854392E+000 4.209443197057916E+000 4.262391474325160E+000 + 4.316005758932176E+000 4.370294428220000E+000 4.425265964903675E+000 4.480928958397631E+000 + 4.537292106157857E+000 4.594364215040872E+000 4.652154202679785E+000 4.710671098877755E+000 + 4.769924047018852E+000 4.829922305496783E+000 4.890675249161508E+000 4.952192370784063E+000 + 5.014483282539875E+000 5.077557717510619E+000 5.141425531205098E+000 5.206096703099147E+000 + 5.271581338194933E+000 5.337889668599935E+000 5.405032055125669E+000 5.473018988906638E+000 + 5.541861093039579E+000 5.611569124243299E+000 5.682153974539522E+000 5.753626672954685E+000 + 5.825998387243343E+000 5.899280425633103E+000 5.973484238591537E+000 6.048621420615412E+000 + 6.124703712042261E+000 6.201743000884924E+000 6.279751324689030E+000 6.358740872413860E+000 + 6.438723986336977E+000 6.519713163982632E+000 6.601721060074619E+000 6.684760488513559E+000 + 6.768844424379070E+000 6.853986005957223E+000 6.940198536793337E+000 7.027495487770768E+000 + 7.115890499215728E+000 7.205397383028568E+000 7.296030124842014E+000 7.387802886206343E+000 + 7.480730006802243E+000 7.574826006681382E+000 7.670105588535155E+000 7.766583639992103E+000 + 7.864275235944020E+000 7.963195640901549E+000 8.063360311379229E+000 8.164784898310581E+000 + 8.267485249493692E+000 8.371477412067350E+000 8.476777635018552E+000 8.583402371721373E+000 + 8.691368282507831E+000 8.800692237271173E+000 8.911391318101717E+000 9.023482821956085E+000 + 9.136984263359816E+000 9.251913377144021E+000 9.368288121216581E+000 9.486126679367999E+000 + 9.605447464112741E+000 9.726269119566203E+000 9.848610524357829E+000 9.972490794581057E+000 + 1.009792928678011E+001 1.022494560097462E+001 1.035355958372211E+001 1.048379133121902E+001 + 1.061566119244089E+001 1.074918977232180E+001 1.088439793497402E+001 1.102130680694809E+001 + 1.115993778053374E+001 1.130031251710269E+001 1.144245295049308E+001 1.158638129043684E+001 + 1.173212002602992E+001 1.187969192924624E+001 1.202912005849594E+001 1.218042776222820E+001 + 1.233363868257957E+001 1.248877675906811E+001 1.264586623233384E+001 1.280493164792660E+001 + 1.296599786014118E+001 1.312909003590092E+001 1.329423365869014E+001 1.346145453253584E+001 + 1.363077878603981E+001 1.380223287646110E+001 1.397584359385021E+001 1.415163806523496E+001 + 1.432964375885910E+001 1.450988848847448E+001 1.469240041768675E+001 1.487720806435621E+001 + 1.506434030505367E+001 1.525382637957240E+001 1.544569589549712E+001 1.563997883282999E+001 + 1.583670554867528E+001 1.603590678198261E+001 1.623761365834989E+001 1.644185769488701E+001 + 1.664867080514014E+001 1.685808530407856E+001 1.707013391314381E+001 1.728484976536241E+001 + 1.750226641052319E+001 1.772241782041921E+001 1.794533839415622E+001 1.817106296352742E+001 + 1.839962679845595E+001 1.863106561250611E+001 1.886541556846338E+001 1.910271328398521E+001 + 1.934299583732248E+001 1.958630077311291E+001 1.983266610824782E+001 2.008213033781199E+001 + 2.033473244109885E+001 2.059051188770100E+001 2.084950864367729E+001 2.111176317779784E+001 + 2.137731646786710E+001 2.164621000712696E+001 2.191848581074002E+001 2.219418642235449E+001 + 2.247335492075190E+001 2.275603492657804E+001 2.304227060915897E+001 2.333210669340248E+001 + 2.362558846678634E+001 2.392276178643481E+001 2.422367308628360E+001 2.452836938433557E+001 + 2.483689829000724E+001 2.514930801156774E+001 2.546564736367176E+001 2.578596577498658E+001 + 2.611031329591568E+001 2.643874060641917E+001 2.677129902393239E+001 2.710804051138478E+001 + 2.744901768531877E+001 2.779428382411156E+001 2.814389287629981E+001 2.849789946900913E+001 + 2.885635891648996E+001 2.921932722876016E+001 2.958686112035704E+001 2.995901801919896E+001 + 3.033585607555843E+001 3.071743417114853E+001 3.110381192832293E+001 3.149504971939232E+001 + 3.189120867605761E+001 3.229235069896163E+001 3.269853846736172E+001 3.310983544892298E+001 + 3.352630590963560E+001 3.394801492385648E+001 3.437502838447692E+001 3.480741301321903E+001 + 3.524523637106063E+001 3.568856686879219E+001 3.613747377770602E+001 3.659202724041982E+001 + 3.705229828183705E+001 3.751835882024424E+001 3.799028167854879E+001 3.846814059565750E+001 + 3.895201023799827E+001 3.944196621118726E+001 3.993808507184200E+001 4.044044433954386E+001 + 4.094912250895057E+001 4.146419906206089E+001 4.198575448063428E+001 4.251387025876589E+001 + 4.304862891562055E+001 4.359011400832648E+001 4.413841014503092E+001 4.469360299812087E+001 + 4.525577931760905E+001 4.582502694468923E+001 4.640143482546129E+001 4.698509302482924E+001 + 4.757609274057430E+001 4.817452631760430E+001 4.878048726238327E+001 4.939407025754175E+001 + 5.001537117667088E+001 5.064448709930354E+001 5.128151632608238E+001 5.192655839412022E+001 + 5.257971409255263E+001 5.324108547828618E+001 5.391077589194564E+001 5.458888997402043E+001 + 5.527553368121563E+001 5.597081430300756E+001 5.667484047840775E+001 5.738772221293865E+001 + 5.810957089582146E+001 5.884049931738156E+001 5.958062168667203E+001 6.033005364931866E+001 + 6.108891230559055E+001 6.185731622869645E+001 6.263538548331276E+001 6.342324164434362E+001 + 6.422100781591691E+001 6.502880865062018E+001 6.584677036897715E+001 6.667502077917055E+001 + 6.751368929701223E+001 6.836290696616409E+001 6.922280647861496E+001 7.009352219541287E+001 + 7.097519016766020E+001 7.186794815777151E+001 7.277193566099879E+001 7.368729392722892E+001 + 7.461416598305301E+001 7.555269665411562E+001 7.650303258774373E+001 7.746532227586019E+001 + 7.843971607818681E+001 7.942636624573736E+001 8.042542694460798E+001 8.143705428006564E+001 + 8.246140632093939E+001 8.349864312431998E+001 8.454892676056791E+001 8.561242133863830E+001 + 8.668929303172283E+001 8.777971010321413E+001 8.888384293299846E+001 9.000186404407646E+001 + 9.113394812952158E+001 9.228027207977554E+001 9.344101501028749E+001 9.461635828950219E+001 + 9.580648556719792E+001 9.701158280318334E+001 9.823183829635352E+001 9.946744271411156E+001 + 1.007185891221620E+002 + + + 2.713934421293203E-007 2.748071513895899E-007 2.782637998263638E-007 2.817639275479923E-007 + 2.853080814565535E-007 2.888968153333062E-007 2.925306899252199E-007 2.962102730325927E-007 + 2.999361395977710E-007 3.037088717949865E-007 3.075290591213206E-007 3.113972984888151E-007 + 3.153141943177411E-007 3.192803586310408E-007 3.232964111499576E-007 3.273629793908685E-007 + 3.314806987633342E-007 3.356502126693845E-007 3.398721726040498E-007 3.441472382571601E-007 + 3.484760776164209E-007 3.528593670717896E-007 3.572977915211610E-007 3.617920444773854E-007 + 3.663428281766313E-007 3.709508536881101E-007 3.756168410251829E-007 3.803415192578645E-007 + 3.851256266267406E-007 3.899699106583214E-007 3.948751282818428E-007 3.998420459475377E-007 + 4.048714397463970E-007 4.099640955314337E-007 4.151208090404759E-007 4.203423860205005E-007 + 4.256296423535341E-007 4.309834041841356E-007 4.364045080484831E-007 4.418938010050854E-007 + 4.474521407671347E-007 4.530803958365273E-007 4.587794456395686E-007 4.645501806643847E-007 + 4.703935026000646E-007 4.763103244775489E-007 4.823015708122937E-007 4.883681777487281E-007 + 4.945110932065280E-007 5.007312770287325E-007 5.070297011317185E-007 5.134073496570661E-007 + 5.198652191253333E-007 5.264043185917621E-007 5.330256698039494E-007 5.397303073614925E-007 + 5.465192788776511E-007 5.533936451430360E-007 5.603544802913623E-007 5.674028719672846E-007 + 5.745399214963420E-007 5.817667440570438E-007 5.890844688551181E-007 5.964942392999521E-007 + 6.039972131832542E-007 6.115945628599580E-007 6.192874754314077E-007 6.270771529308435E-007 + 6.349648125112226E-007 6.429516866354031E-007 6.510390232687158E-007 6.592280860739633E-007 + 6.675201546088702E-007 6.759165245260140E-007 6.844185077752785E-007 6.930274328088435E-007 + 7.017446447887598E-007 7.105715057971350E-007 7.195093950489593E-007 7.285597091076139E-007 + 7.377238621030827E-007 7.470032859529163E-007 7.563994305859698E-007 7.659137641689583E-007 + 7.755477733358625E-007 7.853029634202147E-007 7.951808586903125E-007 8.051830025873889E-007 + 8.153109579667762E-007 8.255663073421099E-007 8.359506531325931E-007 8.464656179133831E-007 + 8.571128446691201E-007 8.678939970506453E-007 8.788107596349544E-007 8.898648381884108E-007 + 9.010579599332783E-007 9.123918738176023E-007 9.238683507884851E-007 9.354891840688037E-007 + 9.472561894374008E-007 9.591712055128053E-007 9.712360940405201E-007 9.834527401839233E-007 + 9.958230528188310E-007 1.008348964831759E-006 1.021032433421945E-006 1.033875440407159E-006 + 1.046879992533371E-006 1.060048121788313E-006 1.073381885718967E-006 1.086883367753078E-006 + 1.100554677524682E-006 1.114397951203744E-006 1.128415351829943E-006 1.142609069650644E-006 + 1.156981322463134E-006 1.171534355961156E-006 1.186270444085801E-006 1.201191889380821E-006 + 1.216301023352401E-006 1.231600206833463E-006 1.247091830352554E-006 1.262778314507363E-006 + 1.278662110342958E-006 1.294745699734753E-006 1.311031595776311E-006 1.327522343172024E-006 + 1.344220518634722E-006 1.361128731288296E-006 1.378249623075371E-006 1.395585869170122E-006 + 1.413140178396273E-006 1.430915293650353E-006 1.448913992330287E-006 1.467139086769361E-006 + 1.485593424675660E-006 1.504279889577028E-006 1.523201401271622E-006 1.542360916284144E-006 + 1.561761428327793E-006 1.581405968772046E-006 1.601297607116316E-006 1.621439451469561E-006 + 1.641834649035944E-006 1.662486386606577E-006 1.683397891057473E-006 1.704572429853746E-006 + 1.726013311560161E-006 1.747723886358111E-006 1.769707546569076E-006 1.791967727184690E-006 + 1.814507906403464E-006 1.837331606174256E-006 1.860442392746595E-006 1.883843877227901E-006 + 1.907539716147733E-006 1.931533612029133E-006 1.955829313967146E-006 1.980430618214635E-006 + 2.005341368775436E-006 2.030565458005008E-006 2.056106827218610E-006 2.081969467307146E-006 + 2.108157419360752E-006 2.134674775300208E-006 2.161525678516336E-006 2.188714324517392E-006 + 2.216244961584624E-006 2.244121891436094E-006 2.272349469898798E-006 2.300932107589307E-006 + 2.329874270602910E-006 2.359180481211457E-006 2.388855318569988E-006 2.418903419432206E-006 + 2.449329478875009E-006 2.480138251032086E-006 2.511334549836765E-006 2.542923249774211E-006 + 2.574909286643047E-006 2.607297658326615E-006 2.640093425573887E-006 2.673301712790213E-006 + 2.706927708838043E-006 2.740976667847661E-006 2.775453910038193E-006 2.810364822548873E-006 + 2.845714860280805E-006 2.881509546749313E-006 2.917754474946973E-006 2.954455308217563E-006 + 2.991617781140948E-006 3.029247700429128E-006 3.067350945833557E-006 3.105933471063841E-006 + 3.145001304718052E-006 3.184560551224681E-006 3.224617391796474E-006 3.265178085396276E-006 + 3.306248969714972E-006 3.347836462161805E-006 3.389947060867077E-006 3.432587345697506E-006 + 3.475763979284362E-006 3.519483708064470E-006 3.563753363334412E-006 3.608579862317886E-006 + 3.653970209246558E-006 3.699931496454492E-006 3.746470905486309E-006 3.793595708219366E-006 + 3.841313267999962E-006 3.889631040793893E-006 3.938556576351470E-006 3.988097519387152E-006 + 4.038261610774088E-006 4.089056688753614E-006 4.140490690160006E-006 4.192571651660635E-006 + 4.245307711011683E-006 4.298707108329725E-006 4.352778187379233E-006 4.407529396876309E-006 + 4.462969291808846E-006 4.519106534773199E-006 4.575949897327807E-006 4.633508261363718E-006 + 4.691790620492407E-006 4.750806081451079E-006 4.810563865525559E-006 4.871073309991199E-006 + 4.932343869571801E-006 4.994385117916952E-006 5.057206749097942E-006 5.120818579122436E-006 + 5.185230547468307E-006 5.250452718636656E-006 5.316495283724415E-006 5.383368562016760E-006 + 5.451083002599459E-006 5.519649185991633E-006 5.589077825798931E-006 5.659379770387576E-006 + 5.730566004579444E-006 5.802647651368452E-006 5.875635973658566E-006 5.949542376023641E-006 + 6.024378406489403E-006 6.100155758337874E-006 6.176886271934448E-006 6.254581936577985E-006 + 6.333254892374161E-006 6.412917432132373E-006 6.493582003286540E-006 6.575261209840014E-006 + 6.657967814335001E-006 6.741714739846718E-006 6.826515072002659E-006 6.912382061027253E-006 + 6.999329123812234E-006 7.087369846013060E-006 7.176517984171688E-006 7.266787467866082E-006 + 7.358192401886726E-006 7.450747068440520E-006 7.544465929382424E-006 7.639363628475129E-006 + 7.735454993677186E-006 7.832755039459915E-006 7.931278969153419E-006 8.031042177322168E-006 + 8.132060252170408E-006 8.234348977977851E-006 8.337924337566019E-006 8.442802514795567E-006 + 8.548999897095071E-006 8.656533078021570E-006 8.765418859853360E-006 8.875674256215392E-006 + 8.987316494737650E-006 9.100363019747053E-006 9.214831494993124E-006 9.330739806408002E-006 + 9.448106064901177E-006 9.566948609189307E-006 9.687286008661736E-006 9.809137066281955E-006 + 9.932520821525622E-006 1.005745655335553E-005 1.018396378323394E-005 1.031206227817292E-005 + 1.044177205382293E-005 1.057311337760029E-005 1.070610677185407E-005 1.084077301707269E-005 + 1.097713315513096E-005 1.111520849257787E-005 1.125502060396580E-005 1.139659133522163E-005 + 1.153994280706012E-005 1.168509741844042E-005 1.183207785006587E-005 1.198090706792793E-005 + 1.213160832689471E-005 1.228420517434451E-005 1.243872145384521E-005 1.259518130887986E-005 + 1.275360918661910E-005 1.291402984174118E-005 1.307646834029983E-005 1.324095006364093E-005 + 1.340750071236840E-005 1.357614631035994E-005 1.374691320883337E-005 1.391982809046398E-005 + 1.409491797355385E-005 1.427221021625341E-005 1.445173252083630E-005 1.463351293802785E-005 + 1.481757987138808E-005 1.500396208174981E-005 1.519268869171263E-005 1.538378919019328E-005 + 1.557729343703345E-005 1.577323166766542E-005 1.597163449783635E-005 1.617253292839211E-005 + 1.637595835012121E-005 1.658194254865964E-005 1.679051770945755E-005 1.700171642280812E-005 + 1.721557168894002E-005 1.743211692317368E-005 1.765138596114248E-005 1.787341306407975E-005 + 1.809823292417201E-005 1.832588066997983E-005 1.855639187192662E-005 1.878980254785666E-005 + 1.902614916866297E-005 1.926546866398588E-005 1.950779842798344E-005 1.975317632517430E-005 + 2.000164069635410E-005 2.025323036458637E-005 2.050798464126863E-005 2.076594333227490E-005 + 2.102714674417549E-005 2.129163569053489E-005 2.155945149828913E-005 2.183063601420302E-005 + 2.210523161140890E-005 2.238328119602751E-005 2.266482821387212E-005 2.294991665723712E-005 + 2.323859107177178E-005 2.353089656344068E-005 2.382687880557161E-005 2.412658404599203E-005 + 2.443005911425559E-005 2.473735142895910E-005 2.504850900515191E-005 2.536358046183835E-005 + 2.568261502957455E-005 2.600566255816083E-005 2.633277352443075E-005 2.666399904013831E-005 + 2.699939085994421E-005 2.733900138950265E-005 2.768288369364985E-005 2.803109150469545E-005 + 2.838367923081835E-005 2.874070196456811E-005 2.910221549147323E-005 2.946827629875784E-005 + 2.983894158416778E-005 3.021426926490807E-005 3.059431798669240E-005 3.097914713290675E-005 + 3.136881683388820E-005 3.176338797632030E-005 3.216292221274682E-005 3.256748197120505E-005 + 3.297713046498034E-005 3.339193170248325E-005 3.381195049725112E-005 3.423725247807512E-005 + 3.466790409925507E-005 3.510397265098291E-005 3.554552626985703E-005 3.599263394952877E-005 + 3.644536555148273E-005 3.690379181595277E-005 3.736798437297539E-005 3.783801575358201E-005 + 3.831395940113221E-005 3.879588968278920E-005 3.928388190113996E-005 3.977801230596146E-005 + 4.027835810613473E-005 4.078499748170908E-005 4.129800959611765E-005 4.181747460854708E-005 + 4.234347368646239E-005 4.287608901828967E-005 4.341540382625816E-005 4.396150237940382E-005 + 4.451447000673664E-005 4.507439311057342E-005 4.564135918003824E-005 4.621545680473304E-005 + 4.679677568857966E-005 4.738540666383641E-005 4.798144170529073E-005 4.858497394463048E-005 + 4.919609768499601E-005 4.981490841571505E-005 5.044150282722327E-005 5.107597882617228E-005 + 5.171843555072774E-005 5.236897338605997E-005 5.302769398002931E-005 5.369470025906871E-005 + 5.437009644426632E-005 5.505398806765009E-005 5.574648198867769E-005 5.644768641093314E-005 + 5.715771089903400E-005 5.787666639575109E-005 5.860466523934348E-005 5.934182118111167E-005 + 6.008824940317128E-005 6.084406653645064E-005 6.160939067891451E-005 6.238434141401721E-005 + 6.316903982938784E-005 6.396360853575020E-005 6.476817168608125E-005 6.558285499501012E-005 + 6.640778575846126E-005 6.724309287354491E-005 6.808890685869719E-005 6.894535987407409E-005 + 6.981258574220173E-005 7.069071996888635E-005 7.157989976438755E-005 7.248026406485737E-005 + 7.339195355404959E-005 7.431511068530171E-005 7.524987970379359E-005 7.619640666908635E-005 + 7.715483947794393E-005 7.812532788744270E-005 7.910802353837106E-005 8.010307997892379E-005 + 8.111065268869424E-005 8.213089910296823E-005 8.316397863732366E-005 8.421005271253961E-005 + 8.526928477981849E-005 8.634184034632601E-005 8.742788700105145E-005 8.852759444099425E-005 + 8.964113449767926E-005 9.076868116400576E-005 9.191041062143448E-005 9.306650126751604E-005 + 9.423713374376590E-005 9.542249096389016E-005 9.662275814236600E-005 9.783812282338222E-005 + 9.906877491014277E-005 1.003149066945400E-004 1.015767128872006E-004 1.028543906479091E-004 + 1.041481396164153E-004 1.054581619436277E-004 1.067846623231999E-004 1.081278480235154E-004 + 1.094879289200721E-004 1.108651175282777E-004 1.122596290366539E-004 1.136716813404611E-004 + 1.151014950757445E-004 1.165492936538092E-004 1.180153032961289E-004 1.194997530696925E-004 + 1.210028749227974E-004 1.225249037212913E-004 1.240660772852703E-004 1.256266364262397E-004 + 1.272068249847402E-004 1.288068898684487E-004 1.304270810907588E-004 1.320676518098452E-004 + 1.337288583682207E-004 1.354109603327898E-004 1.371142205354066E-004 1.388389051139431E-004 + 1.405852835538734E-004 1.423536287303822E-004 1.441442169510008E-004 1.459573279987817E-004 + 1.477932451760148E-004 1.496522553484944E-004 1.515346489903420E-004 1.534407202293942E-004 + 1.553707668931596E-004 1.573250905553565E-004 1.593039965830328E-004 1.613077941842819E-004 + 1.633367964565556E-004 1.653913204355868E-004 1.674716871449274E-004 1.695782216461080E-004 + 1.717112530894306E-004 1.738711147653976E-004 1.760581441567903E-004 1.782726829914005E-004 + 1.805150772954266E-004 1.827856774475411E-004 1.850848382336370E-004 1.874129189022650E-004 + 1.897702832207660E-004 1.921572995321107E-004 1.945743408124546E-004 1.970217847294150E-004 + 1.995000137010832E-004 2.020094149557782E-004 2.045503805925512E-004 2.071233076424530E-004 + 2.097285981305696E-004 2.123666591388402E-004 2.150379028696645E-004 2.177427467103101E-004 + 2.204816132981304E-004 2.232549305866018E-004 2.260631319121932E-004 2.289066560620747E-004 + 2.317859473426800E-004 2.347014556491300E-004 2.376536365355290E-004 2.406429512861467E-004 + 2.436698669874948E-004 2.467348566013096E-004 2.498383990384546E-004 2.529809792337495E-004 + 2.561630882217435E-004 2.593852232134400E-004 2.626478876739867E-004 2.659515914013440E-004 + 2.692968506059405E-004 2.726841879913328E-004 2.761141328358790E-004 2.795872210754393E-004 + 2.831039953871173E-004 2.866650052740542E-004 2.902708071512896E-004 2.939219644327030E-004 + 2.976190476190476E-004 3.013626343870936E-004 3.051533096798897E-004 3.089916657981624E-004 + 3.128783024928645E-004 3.168138270588868E-004 3.207988544299499E-004 3.248340072746882E-004 + 3.289199160939429E-004 3.330572193192801E-004 3.372465634127459E-004 3.414886029678787E-004 + 3.457840008119892E-004 3.501334281097294E-004 3.545375644679640E-004 3.589970980419586E-004 + 3.635127256429078E-004 3.680851528468110E-004 3.727150941047218E-004 3.774032728543811E-004 + 3.821504216332564E-004 3.869572821930034E-004 3.918246056153637E-004 3.967531524295248E-004 + 4.017436927309536E-004 4.067970063017251E-004 4.119138827323667E-004 4.170951215452303E-004 + 4.223415323194220E-004 4.276539348172994E-004 4.330331591125600E-004 4.384800457199452E-004 + 4.439954457265687E-004 4.495802209249028E-004 4.552352439474346E-004 4.609613984030158E-004 + 4.667595790149312E-004 4.726306917606976E-004 4.785756540136261E-004 4.845953946861640E-004 + 4.906908543750382E-004 4.968629855082271E-004 5.031127524937774E-004 5.094411318704957E-004 + 5.158491124605347E-004 5.223376955238983E-004 5.289078949148924E-004 5.355607372405385E-004 + 5.422972620209851E-004 5.491185218519348E-004 5.560255825691139E-004 5.630195234148126E-004 + 5.701014372065170E-004 5.772724305076652E-004 5.845336238005501E-004 5.918861516613964E-004 + 5.993311629376420E-004 6.068698209274453E-004 6.145033035614547E-004 6.222328035868623E-004 + 6.300595287537723E-004 6.379847020039167E-004 6.460095616617392E-004 6.541353616278877E-004 + 6.623633715751397E-004 6.706948771467883E-004 6.791311801575308E-004 6.876735987968764E-004 + 6.963234678351168E-004 7.050821388318875E-004 7.139509803473506E-004 7.229313781560383E-004 + 7.320247354633781E-004 7.412324731249501E-004 7.505560298684971E-004 7.599968625187283E-004 + 7.695564462249544E-004 7.792362746915780E-004 7.890378604114906E-004 7.989627349024022E-004 + 8.090124489461445E-004 8.191885728309842E-004 8.294926965969799E-004 8.399264302844343E-004 + 8.504914041854661E-004 8.611892690987386E-004 8.720216965874121E-004 8.829903792403181E-004 + 8.940970309364381E-004 9.053433871126983E-004 9.167312050351283E-004 9.282622640734511E-004 + 9.399383659790978E-004 9.517613351667485E-004 9.637330189993939E-004 9.758552880769864E-004 + 9.881300365287354E-004 1.000559182309057E-003 1.013144667497267E-003 1.025888458601035E-003 + 1.038792546863643E-003 1.051858948575141E-003 1.065089705387375E-003 1.078486884633018E-003 + 1.092052579648585E-003 1.105788910101519E-003 1.119698022321403E-003 1.133782089635316E-003 + 1.148043312707432E-003 1.162483919882873E-003 1.177106167535886E-003 1.191912340422419E-003 + 1.206904752037106E-003 1.222085744974765E-003 1.237457691296432E-003 1.253022992899988E-003 + 1.268784081895483E-003 1.284743420985133E-003 1.300903503848142E-003 1.317266855530339E-003 + 1.333836032838710E-003 1.350613624740925E-003 1.367602252769848E-003 1.384804571433175E-003 + 1.402223268628198E-003 1.419861066061787E-003 1.437720719675680E-003 1.455805020077085E-003 + 1.474116792974736E-003 1.492658899620406E-003 1.511434237255977E-003 1.530445739566158E-003 + 1.549696377136860E-003 1.569189157919372E-003 1.588927127700351E-003 1.608913370577728E-003 + 1.629151009442621E-003 1.649643206467270E-003 1.670393163599154E-003 1.691404123061294E-003 + 1.712679367858848E-003 1.734222222292107E-003 1.756036052475899E-003 1.778124266865572E-003 + 1.800490316789569E-003 1.823137696988686E-003 1.846069946162164E-003 1.869290647520585E-003 + 1.892803429345783E-003 1.916611965557757E-003 1.940719976288724E-003 1.965131228464415E-003 + 1.989849536392640E-003 2.014878762359308E-003 2.040222817231900E-003 2.065885661070546E-003 + 2.091871303746816E-003 2.118183805570237E-003 2.144827277922757E-003 2.171805883901142E-003 + 2.199123838967455E-003 2.226785411607764E-003 2.254794923999062E-003 2.283156752684652E-003 + 2.311875329257969E-003 2.340955141055027E-003 2.370400731855590E-003 2.400216702593118E-003 + 2.430407712073705E-003 2.460978477704010E-003 2.491933776228352E-003 2.523278444475114E-003 + 2.555017380112469E-003 2.587155542413691E-003 2.619697953032028E-003 2.652649696785338E-003 + 2.686015922450634E-003 2.719801843568550E-003 2.754012739258002E-003 2.788653955041052E-003 + 2.823730903678133E-003 2.859249066013843E-003 2.895213991833300E-003 2.931631300729340E-003 + 2.968506682980574E-003 3.005845900440492E-003 3.043654787437801E-003 3.081939251688005E-003 + 3.120705275216539E-003 3.159958915293456E-003 3.199706305379867E-003 3.239953656086354E-003 + 3.280707256143335E-003 3.321973473383739E-003 3.363758755737973E-003 3.406069632241406E-003 + 3.448912714054585E-003 3.492294695496195E-003 3.536222355089106E-003 3.580702556619506E-003 + 3.625742250209367E-003 3.671348473402461E-003 3.717528352263933E-003 3.764289102493816E-003 + 3.811638030554477E-003 3.859582534812242E-003 3.908130106693461E-003 3.957288331854996E-003 + 4.007064891369556E-003 4.057467562925824E-003 4.108504222043777E-003 4.160182843305252E-003 + 4.212511501599943E-003 4.265498373387187E-003 4.319151737973491E-003 4.373479978806233E-003 + 4.428491584783586E-003 4.484195151580892E-003 4.540599382993804E-003 4.597713092298222E-003 + 4.655545203627432E-003 4.714104753366498E-003 4.773400891564189E-003 4.833442883362756E-003 + 4.894240110445555E-003 4.955802072503020E-003 5.018138388716979E-003 5.081258799263650E-003 + 5.145173166835614E-003 5.209891478182824E-003 5.275423845673108E-003 5.341780508872220E-003 + 5.408971836143769E-003 5.477008326269368E-003 5.545900610088993E-003 5.615659452162167E-003 + 5.686295752449902E-003 5.757820548017804E-003 5.830245014760721E-003 5.903580469148909E-003 + 5.977838369996331E-003 6.053030320251080E-003 6.129168068808345E-003 6.206263512346261E-003 + 6.284328697184711E-003 6.363375821167663E-003 6.443417235569070E-003 6.524465447022759E-003 + 6.606533119476687E-003 6.689633076171615E-003 6.773778301644860E-003 6.858981943759107E-003 + 6.945257315756763E-003 7.032617898340254E-003 7.121077341778319E-003 7.210649468038984E-003 + 7.301348272949220E-003 7.393187928381799E-003 7.486182784469761E-003 7.580347371848541E-003 + 7.675696403926506E-003 7.772244779183927E-003 7.870007583500834E-003 7.969000092514332E-003 + 8.069237774005330E-003 8.170736290315507E-003 8.273511500794551E-003 8.377579464278171E-003 + 8.482956441597416E-003 8.589658898119355E-003 8.697703506319923E-003 8.807107148388981E-003 + 8.917886918868162E-003 9.030060127322014E-003 9.143644301042543E-003 9.258657187787995E-003 + 9.375116758555943E-003 9.493041210391221E-003 9.612448969229382E-003 9.733358692775647E-003 + 9.855789273420332E-003 9.979759841190764E-003 1.010528976674035E-002 1.023239866437537E-002 + 1.036110639511966E-002 1.049143306981802E-002 1.062339905227854E-002 1.075702496245444E-002 + 1.089233167966608E-002 1.102934034586327E-002 1.116807236892887E-002 1.130854942602375E-002 + 1.145079346697385E-002 1.159482671770001E-002 1.174067168369064E-002 1.188835115351844E-002 + 1.203788820240102E-002 1.218930619580649E-002 1.234262879310441E-002 1.249787995126250E-002 + 1.265508392859011E-002 1.281426528852856E-002 1.297544890348914E-002 1.313865995873967E-002 + 1.330392395633954E-002 1.347126671912463E-002 1.364071439474212E-002 1.381229345973600E-002 + 1.398603072368433E-002 1.416195333338801E-002 1.434008877711274E-002 1.452046488888407E-002 + 1.470310985283637E-002 1.488805220761691E-002 1.507532085084484E-002 1.526494504362670E-002 + 1.545695441512842E-002 1.565137896720490E-002 1.584824907908801E-002 1.604759551213321E-002 + 1.624944941462626E-002 1.645384232665015E-002 1.666080618501314E-002 1.687037332823925E-002 + 1.708257650162091E-002 1.729744886233571E-002 1.751502398462722E-002 1.773533586505089E-002 + 1.795841892778633E-002 1.818430803001589E-002 1.841303846737139E-002 1.864464597944908E-002 + 1.887916675539386E-002 1.911663743955415E-002 1.935709513720745E-002 1.960057742035824E-002 + 1.984712233360869E-002 2.009676840010302E-002 2.034955462754710E-002 2.060552051430317E-002 + 2.086470605556186E-002 2.112715174959135E-002 2.139289860406520E-002 2.166198814247016E-002 + 2.193446241059401E-002 2.221036398309551E-002 2.248973597015675E-002 2.277262202421901E-002 + 2.305906634680387E-002 2.334911369541939E-002 2.364280939055397E-002 2.394019932275753E-002 + 2.424132995981195E-002 2.454624835399200E-002 2.485500214941705E-002 2.516763958949583E-002 + 2.548420952446449E-002 2.580476141901931E-002 2.612934536004612E-002 2.645801206444593E-002 + 2.679081288706007E-002 2.712779982869418E-002 2.746902554424342E-002 2.781454335092017E-002 + 2.816440723658457E-002 2.851867186818062E-002 2.887739260027782E-002 2.924062548372026E-002 + 2.960842727438510E-002 2.998085544205034E-002 3.035796817937491E-002 3.073982441099132E-002 + 3.112648380271257E-002 3.151800677085537E-002 3.191445449167993E-002 3.231588891094928E-002 + 3.272237275360822E-002 3.313396953358403E-002 3.355074356371112E-002 3.397275996577948E-002 + 3.440008468071062E-002 3.483278447886069E-002 3.527092697045337E-002 3.571458061614451E-002 + 3.616381473771874E-002 3.661869952892159E-002 3.707930606642722E-002 3.754570632094410E-002 + 3.801797316846103E-002 3.849618040163363E-002 3.898040274131506E-002 3.947071584823115E-002 + 3.996719633480224E-002 4.046992177711462E-002 4.097897072704129E-002 4.149442272451642E-002 + 4.201635830996339E-002 4.254485903687916E-002 4.308000748457771E-002 4.362188727109262E-002 + 4.417058306624304E-002 4.472618060486339E-002 4.528876670019930E-002 4.585842925747288E-002 + 4.643525728761760E-002 4.701934092118674E-002 4.761077142243651E-002 4.820964120358581E-002 + 4.881604383925654E-002 4.943007408109407E-002 5.005182787257306E-002 5.068140236398844E-002 + 5.131889592763524E-002 5.196440817317990E-002 5.261803996322395E-002 5.327989342906450E-002 + 5.395007198665221E-002 5.462868035275001E-002 5.531582456129594E-002 5.601161197997039E-002 + 5.671615132697321E-002 5.742955268801090E-002 5.815192753349732E-002 5.888338873597194E-002 + 5.962405058773566E-002 6.037402881870979E-002 6.113344061451886E-002 6.190240463480079E-002 + 6.268104103174844E-002 6.346947146888275E-002 6.426781914006373E-002 6.507620878873935E-002 + 6.589476672743666E-002 6.672362085749919E-002 6.756290068907086E-002 6.841273736133298E-002 + 6.927326366299473E-002 7.014461405304125E-002 7.102692468174403E-002 7.192033341193356E-002 + 7.282497984054179E-002 7.374100532041379E-002 7.466855298239421E-002 7.560776775769265E-002 + 7.655879640052826E-002 7.752178751106155E-002 7.849689155861288E-002 7.948426090517326E-002 + 8.048404982921221E-002 8.149641454978290E-002 8.252151325093274E-002 8.355950610641949E-002 + 8.461055530473838E-002 8.567482507446529E-002 8.675248170991672E-002 8.784369359713461E-002 + 8.894863124019660E-002 9.006746728785710E-002 9.120037656052518E-002 9.234753607757928E-002 + 9.350912508502804E-002 9.468532508351728E-002 9.587631985668944E-002 9.708229549990129E-002 + 9.830344044930026E-002 9.953994551126936E-002 1.007920038922404E-001 1.020598112288823E-001 + 1.033435656186712E-001 1.046434676508419E-001 1.059597204377319E-001 1.072925296465172E-001 + 1.086421035313479E-001 1.100086529658897E-001 1.113923914762715E-001 1.127935352744511E-001 + 1.142123032919977E-001 1.156489172143003E-001 1.171036015152073E-001 1.185765834921000E-001 + 1.200680933014093E-001 1.215783639945775E-001 1.231076315544729E-001 1.246561349322632E-001 + 1.262241160847514E-001 1.278118200121827E-001 1.294194947965264E-001 1.310473916402378E-001 + 1.326957649055112E-001 1.343648721540225E-001 1.360549741871753E-001 1.377663350868511E-001 + 1.394992222566717E-001 1.412539064637836E-001 1.430306618811635E-001 1.448297661304605E-001 + 1.466515003253741E-001 1.484961491155780E-001 1.503640007311993E-001 1.522553470278525E-001 + 1.541704835322446E-001 1.561097094883513E-001 1.580733279041729E-001 1.600616455990826E-001 + 1.620749732517647E-001 1.641136254487615E-001 1.661779207336268E-001 1.682681816566980E-001 + 1.703847348254976E-001 1.725279109557638E-001 1.746980449231277E-001 1.768954758154370E-001 + 1.791205469857388E-001 1.813736061059310E-001 1.836550052210844E-001 1.859651008044527E-001 + 1.883042538131709E-001 1.906728297446550E-001 1.930711986937140E-001 1.954997354103749E-001 + 1.979588193584411E-001 2.004488347747826E-001 2.029701707293737E-001 2.055232211860876E-001 + 2.081083850642517E-001 2.107260663009820E-001 2.133766739142976E-001 2.160606220670302E-001 + 2.187783301315399E-001 2.215302227552402E-001 2.243167299269528E-001 2.271382870440928E-001 + 2.299953349806994E-001 2.328883201563264E-001 2.358176946057923E-001 2.387839160498152E-001 + 2.417874479665310E-001 2.448287596639114E-001 2.479083263530978E-001 2.510266292226499E-001 + 2.541841555137356E-001 2.573813985962625E-001 2.606188580459661E-001 2.638970397224730E-001 + 2.672164558483388E-001 2.705776250890870E-001 2.739810726342503E-001 2.774273302794311E-001 + 2.809169365093988E-001 2.844504365822255E-001 2.880283826144871E-001 2.916513336675310E-001 + 2.953198558348292E-001 2.990345223304351E-001 3.027959135785450E-001 3.066046173041946E-001 + 3.104612286250905E-001 3.143663501445968E-001 3.183205920458970E-001 3.223245721873322E-001 + 3.263789161989460E-001 3.304842575802396E-001 3.346412377991549E-001 3.388505063923098E-001 + 3.431127210664847E-001 3.474285478013945E-001 3.517986609537476E-001 3.562237433626141E-001 + 3.607044864561245E-001 3.652415903595020E-001 3.698357640044630E-001 3.744877252399871E-001 + 3.791982009444803E-001 3.839679271393567E-001 3.887976491040366E-001 3.936881214924040E-001 + 3.986401084507201E-001 4.036543837370205E-001 4.087317308420215E-001 4.138729431115373E-001 + 4.190788238704450E-001 4.243501865482061E-001 4.296878548059615E-001 4.350926626652378E-001 + 4.405654546382580E-001 4.461070858599023E-001 4.517184222213253E-001 4.574003405052477E-001 + 4.631537285229631E-001 4.689794852530530E-001 4.748785209818599E-001 4.808517574457188E-001 + 4.869001279749783E-001 4.930245776398408E-001 4.992260633980250E-001 5.055055542442982E-001 + 5.118640313618822E-001 5.183024882757612E-001 5.248219310079286E-001 5.314233782345736E-001 + 5.381078614452569E-001 5.448764251040811E-001 5.517301268128865E-001 5.586700374765109E-001 + 5.656972414701132E-001 5.728128368086154E-001 5.800179353182662E-001 5.873136628103656E-001 + 5.947011592571788E-001 6.021815789700539E-001 6.097560907797909E-001 6.174258782192719E-001 + 6.251921397083861E-001 6.330560887412943E-001 6.410189540760298E-001 6.490819799265029E-001 + 6.572464261569080E-001 6.655135684785773E-001 6.738846986493205E-001 6.823611246752553E-001 + 6.909441710151955E-001 6.996351787875946E-001 7.084355059800969E-001 7.173465276617331E-001 + 7.263696361977683E-001 7.355062414672695E-001 7.447577710834005E-001 7.541256706164833E-001 + 7.636114038198820E-001 7.732164528587057E-001 7.829423185414095E-001 7.927905205542953E-001 + 8.027625976989614E-001 8.128601081327522E-001 8.230846296122144E-001 8.334377597396320E-001 + 8.439211162126530E-001 8.545363370770511E-001 8.652850809826870E-001 8.761690274426610E-001 + 8.871898770957526E-001 8.983493519721439E-001 9.096491957624849E-001 9.210911740903616E-001 + 9.326770747881628E-001 9.444087081764453E-001 9.562879073467967E-001 9.683165284482524E-001 + 9.804964509773351E-001 9.928295780717170E-001 1.005317836807600E+000 1.017963178500821E+000 + 1.030767579011742E+000 1.043733039054000E+000 1.056861584507099E+000 1.070155266732979E+000 + 1.083616162896535E+000 1.097246376290177E+000 1.111048036662481E+000 1.125023300550956E+000 + 1.139174351619020E+000 1.153503400997194E+000 1.168012687628594E+000 1.182704478618777E+000 + 1.197581069589974E+000 1.212644785039792E+000 1.227897978704419E+000 1.243343033926394E+000 + 1.258982364027025E+000 + + + + 2.294147391829657E+000 2.294147391690128E+000 2.294147391547069E+000 2.294147391400388E+000 + 2.294147391249988E+000 2.294147391095789E+000 2.294147390937681E+000 2.294147390775574E+000 + 2.294147390609355E+000 2.294147390438937E+000 2.294147390264202E+000 2.294147390085042E+000 + 2.294147389901347E+000 2.294147389713006E+000 2.294147389519892E+000 2.294147389321893E+000 + 2.294147389118880E+000 2.294147388910726E+000 2.294147388697304E+000 2.294147388478482E+000 + 2.294147388254121E+000 2.294147388024070E+000 2.294147387788206E+000 2.294147387546367E+000 + 2.294147387298404E+000 2.294147387044172E+000 2.294147386783493E+000 2.294147386516217E+000 + 2.294147386242180E+000 2.294147385961205E+000 2.294147385673115E+000 2.294147385377736E+000 + 2.294147385074870E+000 2.294147384764347E+000 2.294147384445958E+000 2.294147384119507E+000 + 2.294147383784798E+000 2.294147383441612E+000 2.294147383089742E+000 2.294147382728957E+000 + 2.294147382359045E+000 2.294147381979766E+000 2.294147381590889E+000 2.294147381192163E+000 + 2.294147380783347E+000 2.294147380364175E+000 2.294147379934394E+000 2.294147379493737E+000 + 2.294147379041926E+000 2.294147378578673E+000 2.294147378103693E+000 2.294147377616691E+000 + 2.294147377117358E+000 2.294147376605387E+000 2.294147376080451E+000 2.294147375542231E+000 + 2.294147374990384E+000 2.294147374424565E+000 2.294147373844428E+000 2.294147373249601E+000 + 2.294147372639717E+000 2.294147372014390E+000 2.294147371373235E+000 2.294147370715848E+000 + 2.294147370041822E+000 2.294147369350732E+000 2.294147368642147E+000 2.294147367915624E+000 + 2.294147367170705E+000 2.294147366406934E+000 2.294147365623829E+000 2.294147364820896E+000 + 2.294147363997634E+000 2.294147363153536E+000 2.294147362288065E+000 2.294147361400686E+000 + 2.294147360490845E+000 2.294147359557973E+000 2.294147358601482E+000 2.294147357620776E+000 + 2.294147356615246E+000 2.294147355584261E+000 2.294147354527178E+000 2.294147353443334E+000 + 2.294147352332043E+000 2.294147351192631E+000 2.294147350024375E+000 2.294147348826536E+000 + 2.294147347598379E+000 2.294147346339134E+000 2.294147345048007E+000 2.294147343724191E+000 + 2.294147342366866E+000 2.294147340975179E+000 2.294147339548266E+000 2.294147338085226E+000 + 2.294147336585150E+000 2.294147335047100E+000 2.294147333470114E+000 2.294147331853207E+000 + 2.294147330195363E+000 2.294147328495560E+000 2.294147326752720E+000 2.294147324965762E+000 + 2.294147323133563E+000 2.294147321254989E+000 2.294147319328847E+000 2.294147317353959E+000 + 2.294147315329067E+000 2.294147313252910E+000 2.294147311124204E+000 2.294147308941611E+000 + 2.294147306703758E+000 2.294147304409258E+000 2.294147302056674E+000 2.294147299644530E+000 + 2.294147297171323E+000 2.294147294635506E+000 2.294147292035497E+000 2.294147289369665E+000 + 2.294147286636351E+000 2.294147283833842E+000 2.294147280960386E+000 2.294147278014183E+000 + 2.294147274993405E+000 2.294147271896152E+000 2.294147268720492E+000 2.294147265464442E+000 + 2.294147262125961E+000 2.294147258702967E+000 2.294147255193318E+000 2.294147251594827E+000 + 2.294147247905238E+000 2.294147244122241E+000 2.294147240243483E+000 2.294147236266532E+000 + 2.294147232188907E+000 2.294147228008052E+000 2.294147223721360E+000 2.294147219326149E+000 + 2.294147214819672E+000 2.294147210199114E+000 2.294147205461584E+000 2.294147200604128E+000 + 2.294147195623701E+000 2.294147190517194E+000 2.294147185281416E+000 2.294147179913095E+000 + 2.294147174408872E+000 2.294147168765306E+000 2.294147162978881E+000 2.294147157045970E+000 + 2.294147150962866E+000 2.294147144725759E+000 2.294147138330764E+000 2.294147131773887E+000 + 2.294147125051010E+000 2.294147118157950E+000 2.294147111090389E+000 2.294147103843912E+000 + 2.294147096413989E+000 2.294147088795981E+000 2.294147080985114E+000 2.294147072976518E+000 + 2.294147064765182E+000 2.294147056345977E+000 2.294147047713643E+000 2.294147038862777E+000 + 2.294147029787844E+000 2.294147020483186E+000 2.294147010942975E+000 2.294147001161255E+000 + 2.294146991131910E+000 2.294146980848668E+000 2.294146970305105E+000 2.294146959494633E+000 + 2.294146948410493E+000 2.294146937045753E+000 2.294146925393315E+000 2.294146913445898E+000 + 2.294146901196024E+000 2.294146888636046E+000 2.294146875758109E+000 2.294146862554170E+000 + 2.294146849015968E+000 2.294146835135043E+000 2.294146820902725E+000 2.294146806310112E+000 + 2.294146791348087E+000 2.294146776007295E+000 2.294146760278149E+000 2.294146744150821E+000 + 2.294146727615225E+000 2.294146710661026E+000 2.294146693277634E+000 2.294146675454172E+000 + 2.294146657179516E+000 2.294146638442230E+000 2.294146619230609E+000 2.294146599532642E+000 + 2.294146579336021E+000 2.294146558628118E+000 2.294146537395997E+000 2.294146515626373E+000 + 2.294146493305654E+000 2.294146470419886E+000 2.294146446954759E+000 2.294146422895608E+000 + 2.294146398227396E+000 2.294146372934703E+000 2.294146347001730E+000 2.294146320412258E+000 + 2.294146293149675E+000 2.294146265196929E+000 2.294146236536559E+000 2.294146207150650E+000 + 2.294146177020830E+000 2.294146146128272E+000 2.294146114453666E+000 2.294146081977210E+000 + 2.294146048678609E+000 2.294146014537054E+000 2.294145979531200E+000 2.294145943639169E+000 + 2.294145906838526E+000 2.294145869106268E+000 2.294145830418820E+000 2.294145790751987E+000 + 2.294145750080988E+000 2.294145708380395E+000 2.294145665624153E+000 2.294145621785528E+000 + 2.294145576837121E+000 2.294145530750839E+000 2.294145483497884E+000 2.294145435048708E+000 + 2.294145385373042E+000 2.294145334439829E+000 2.294145282217229E+000 2.294145228672614E+000 + 2.294145173772511E+000 2.294145117482609E+000 2.294145059767715E+000 2.294145000591765E+000 + 2.294144939917766E+000 2.294144877707804E+000 2.294144813922982E+000 2.294144748523445E+000 + 2.294144681468310E+000 2.294144612715666E+000 2.294144542222540E+000 2.294144469944877E+000 + 2.294144395837490E+000 2.294144319854073E+000 2.294144241947123E+000 2.294144162067953E+000 + 2.294144080166634E+000 2.294143996191968E+000 2.294143910091478E+000 2.294143821811346E+000 + 2.294143731296383E+000 2.294143638490036E+000 2.294143543334279E+000 2.294143445769651E+000 + 2.294143345735158E+000 2.294143243168278E+000 2.294143138004911E+000 2.294143030179317E+000 + 2.294142919624107E+000 2.294142806270184E+000 2.294142690046694E+000 2.294142570880991E+000 + 2.294142448698597E+000 2.294142323423142E+000 2.294142194976326E+000 2.294142063277866E+000 + 2.294141928245441E+000 2.294141789794660E+000 2.294141647838982E+000 2.294141502289682E+000 + 2.294141353055782E+000 2.294141200044015E+000 2.294141043158739E+000 2.294140882301889E+000 + 2.294140717372933E+000 2.294140548268787E+000 2.294140374883753E+000 2.294140197109462E+000 + 2.294140014834790E+000 2.294139827945820E+000 2.294139636325733E+000 2.294139439854773E+000 + 2.294139238410120E+000 2.294139031865882E+000 2.294138820092952E+000 2.294138602958974E+000 + 2.294138380328230E+000 2.294138152061562E+000 2.294137918016299E+000 2.294137678046164E+000 + 2.294137432001161E+000 2.294137179727501E+000 2.294136921067516E+000 2.294136655859527E+000 + 2.294136383937770E+000 2.294136105132290E+000 2.294135819268826E+000 2.294135526168702E+000 + 2.294135225648724E+000 2.294134917521051E+000 2.294134601593102E+000 2.294134277667411E+000 + 2.294133945541514E+000 2.294133605007813E+000 2.294133255853477E+000 2.294132897860271E+000 + 2.294132530804438E+000 2.294132154456557E+000 2.294131768581398E+000 2.294131372937777E+000 + 2.294130967278409E+000 2.294130551349744E+000 2.294130124891806E+000 2.294129687638058E+000 + 2.294129239315200E+000 2.294128779643017E+000 2.294128308334191E+000 2.294127825094156E+000 + 2.294127329620869E+000 2.294126821604634E+000 2.294126300727937E+000 2.294125766665212E+000 + 2.294125219082657E+000 2.294124657638012E+000 2.294124081980366E+000 2.294123491749906E+000 + 2.294122886577730E+000 2.294122266085585E+000 2.294121629885650E+000 2.294120977580278E+000 + 2.294120308761762E+000 2.294119623012074E+000 2.294118919902600E+000 2.294118198993871E+000 + 2.294117459835311E+000 2.294116701964917E+000 2.294115924909006E+000 2.294115128181893E+000 + 2.294114311285604E+000 2.294113473709556E+000 2.294112614930246E+000 2.294111734410910E+000 + 2.294110831601207E+000 2.294109905936850E+000 2.294108956839278E+000 2.294107983715277E+000 + 2.294106985956631E+000 2.294105962939708E+000 2.294104914025102E+000 2.294103838557209E+000 + 2.294102735863840E+000 2.294101605255781E+000 2.294100446026382E+000 2.294099257451085E+000 + 2.294098038787013E+000 2.294096789272473E+000 2.294095508126482E+000 2.294094194548302E+000 + 2.294092847716914E+000 2.294091466790517E+000 2.294090050906004E+000 2.294088599178414E+000 + 2.294087110700387E+000 2.294085584541595E+000 2.294084019748151E+000 2.294082415342032E+000 + 2.294080770320452E+000 2.294079083655236E+000 2.294077354292188E+000 2.294075581150421E+000 + 2.294073763121684E+000 2.294071899069678E+000 2.294069987829349E+000 2.294068028206114E+000 + 2.294066018975190E+000 2.294063958880766E+000 2.294061846635254E+000 2.294059680918460E+000 + 2.294057460376779E+000 2.294055183622335E+000 2.294052849232131E+000 2.294050455747122E+000 + 2.294048001671365E+000 2.294045485471019E+000 2.294042905573418E+000 2.294040260366105E+000 + 2.294037548195787E+000 2.294034767367322E+000 2.294031916142670E+000 2.294028992739772E+000 + 2.294025995331484E+000 2.294022922044389E+000 2.294019770957657E+000 2.294016540101829E+000 + 2.294013227457597E+000 2.294009830954538E+000 2.294006348469811E+000 2.294002777826833E+000 + 2.293999116793948E+000 2.293995363082987E+000 2.293991514347864E+000 2.293987568183107E+000 + 2.293983522122359E+000 2.293979373636816E+000 2.293975120133679E+000 2.293970758954504E+000 + 2.293966287373552E+000 2.293961702596103E+000 2.293957001756674E+000 2.293952181917261E+000 + 2.293947240065476E+000 2.293942173112693E+000 2.293936977892095E+000 2.293931651156704E+000 + 2.293926189577363E+000 2.293920589740619E+000 2.293914848146642E+000 2.293908961206993E+000 + 2.293902925242419E+000 2.293896736480502E+000 2.293890391053376E+000 2.293883884995239E+000 + 2.293877214239917E+000 2.293870374618310E+000 2.293863361855786E+000 2.293856171569523E+000 + 2.293848799265740E+000 2.293841240336929E+000 2.293833490058949E+000 2.293825543588076E+000 + 2.293817395957994E+000 2.293809042076667E+000 2.293800476723188E+000 2.293791694544485E+000 + 2.293782690051989E+000 2.293773457618238E+000 2.293763991473295E+000 2.293754285701199E+000 + 2.293744334236237E+000 2.293734130859180E+000 2.293723669193378E+000 2.293712942700779E+000 + 2.293701944677858E+000 2.293690668251402E+000 2.293679106374263E+000 2.293667251820899E+000 + 2.293655097182898E+000 2.293642634864341E+000 2.293629857077059E+000 2.293616755835766E+000 + 2.293603322953054E+000 2.293589550034321E+000 2.293575428472485E+000 2.293560949442634E+000 + 2.293546103896485E+000 2.293530882556777E+000 2.293515275911446E+000 2.293499274207676E+000 + 2.293482867445835E+000 2.293466045373222E+000 2.293448797477634E+000 2.293431112980851E+000 + 2.293412980831860E+000 2.293394389699989E+000 2.293375327967809E+000 2.293355783723879E+000 + 2.293335744755320E+000 2.293315198540183E+000 2.293294132239634E+000 2.293272532689924E+000 + 2.293250386394185E+000 2.293227679513999E+000 2.293204397860757E+000 2.293180526886786E+000 + 2.293156051676297E+000 2.293130956936048E+000 2.293105226985814E+000 2.293078845748562E+000 + 2.293051796740476E+000 2.293024063060612E+000 2.292995627380378E+000 2.292966471932706E+000 + 2.292936578500965E+000 2.292905928407592E+000 2.292874502502441E+000 2.292842281150811E+000 + 2.292809244221226E+000 2.292775371072839E+000 2.292740640542565E+000 2.292705030931886E+000 + 2.292668519993288E+000 2.292631084916403E+000 2.292592702313756E+000 2.292553348206200E+000 + 2.292512998007931E+000 2.292471626511157E+000 2.292429207870391E+000 2.292385715586301E+000 + 2.292341122489198E+000 2.292295400722109E+000 2.292248521723339E+000 2.292200456208741E+000 + 2.292151174153396E+000 2.292100644772917E+000 2.292048836504243E+000 2.291995716985967E+000 + 2.291941253038152E+000 2.291885410641649E+000 2.291828154916891E+000 2.291769450102164E+000 + 2.291709259531299E+000 2.291647545610825E+000 2.291584269796539E+000 2.291519392569496E+000 + 2.291452873411382E+000 2.291384670779257E+000 2.291314742079701E+000 2.291243043642234E+000 + 2.291169530692164E+000 2.291094157322668E+000 2.291016876466214E+000 2.290937639865250E+000 + 2.290856398042143E+000 2.290773100268380E+000 2.290687694533004E+000 2.290600127510215E+000 + 2.290510344526183E+000 2.290418289525032E+000 2.290323905033942E+000 2.290227132127391E+000 + 2.290127910390511E+000 2.290026177881488E+000 2.289921871093036E+000 2.289814924912896E+000 + 2.289705272583364E+000 2.289592845659753E+000 2.289477573967877E+000 2.289359385560415E+000 + 2.289238206672172E+000 2.289113961674284E+000 2.288986573027179E+000 2.288855961232441E+000 + 2.288722044783432E+000 2.288584740114631E+000 2.288443961549795E+000 2.288299621248745E+000 + 2.288151629152816E+000 2.287999892929014E+000 2.287844317912681E+000 2.287684807048793E+000 + 2.287521260831728E+000 2.287353577243582E+000 2.287181651690911E+000 2.287005376939867E+000 + 2.286824643049769E+000 2.286639337304962E+000 2.286449344144973E+000 2.286254545092973E+000 + 2.286054818682384E+000 2.285850040381671E+000 2.285640082517308E+000 2.285424814194723E+000 + 2.285204101217364E+000 2.284977806003694E+000 2.284745787502100E+000 2.284507901103746E+000 + 2.284263998553177E+000 2.284013927856762E+000 2.283757533188799E+000 2.283494654795318E+000 + 2.283225128895484E+000 2.282948787580555E+000 2.282665458710273E+000 2.282374965806778E+000 + 2.282077127945799E+000 2.281771759645183E+000 2.281458670750640E+000 2.281137666318694E+000 + 2.280808546496671E+000 2.280471106399750E+000 2.280125135984983E+000 2.279770419922167E+000 + 2.279406737461516E+000 2.279033862298112E+000 2.278651562432925E+000 2.278259600030520E+000 + 2.277857731273119E+000 2.277445706211145E+000 2.277023268610096E+000 2.276590155793578E+000 + 2.276146098482556E+000 2.275690820630567E+000 2.275224039254997E+000 2.274745464264079E+000 + 2.274254798279765E+000 2.273751736456205E+000 2.273235966293774E+000 2.272707167448552E+000 + 2.272165011537190E+000 2.271609161936956E+000 2.271039273580920E+000 2.270454992748142E+000 + 2.269855956848792E+000 2.269241794203978E+000 2.268612123820269E+000 2.267966555158722E+000 + 2.267304687898328E+000 2.266626111693716E+000 2.265930405927001E+000 2.265217139453636E+000 + 2.264485870342108E+000 2.263736145607433E+000 2.262967500938137E+000 2.262179460416739E+000 + 2.261371536233536E+000 2.260543228393473E+000 2.259694024416042E+000 2.258823399028012E+000 + 2.257930813848782E+000 2.257015717068297E+000 2.256077543117270E+000 2.255115712329591E+000 + 2.254129630596726E+000 2.253118689013942E+000 2.252082263518190E+000 2.251019714517444E+000 + 2.249930386511323E+000 2.248813607702832E+000 2.247668689600953E+000 2.246494926614030E+000 + 2.245291595633576E+000 2.244057955608504E+000 2.242793247109381E+000 2.241496691882643E+000 + 2.240167492394496E+000 2.238804831364350E+000 2.237407871287452E+000 2.235975753946674E+000 + 2.234507599913080E+000 2.233002508035138E+000 2.231459554916366E+000 2.229877794381073E+000 + 2.228256256928137E+000 2.226593949172415E+000 2.224889853273689E+000 2.223142926352836E+000 + 2.221352099894998E+000 2.219516279139535E+000 2.217634342456511E+000 2.215705140709447E+000 + 2.213727496604134E+000 2.211700204023236E+000 2.209622027346477E+000 2.207491700756108E+000 + 2.205307927527436E+000 2.203069379304198E+000 2.200774695358518E+000 2.198422481835170E+000 + 2.196011310979914E+000 2.193539720351756E+000 2.191006212018735E+000 2.188409251737120E+000 + 2.185747268113744E+000 2.183018651751228E+000 2.180221754375909E+000 2.177354887948205E+000 + 2.174416323755201E+000 2.171404291485306E+000 2.168316978284697E+000 2.165152527795360E+000 + 2.161909039174644E+000 2.158584566095939E+000 2.155177115730547E+000 2.151684647710358E+000 + 2.148105073071358E+000 2.144436253177723E+000 2.140675998626385E+000 2.136822068132014E+000 + 2.132872167392250E+000 2.128823947933165E+000 2.124675005934849E+000 2.120422881037078E+000 + 2.116065055125114E+000 2.111598951095523E+000 2.107021931602167E+000 2.102331297782294E+000 + 2.097524287962919E+000 2.092598076347528E+000 2.087549771683278E+000 2.082376415908890E+000 + 2.077074982783412E+000 2.071642376496106E+000 2.066075430257763E+000 2.060370904873796E+000 + 2.054525487299482E+000 2.048535789177718E+000 2.042398345359922E+000 2.036109612410451E+000 + 2.029665967095275E+000 2.023063704855446E+000 2.016299038266180E+000 2.009368095482273E+000 + 2.002266918670806E+000 1.994991462431960E+000 1.987537592209080E+000 1.979901082689038E+000 + 1.972077616194133E+000 1.964062781066756E+000 1.955852070048326E+000 1.947440878653905E+000 + 1.938824503544168E+000 1.929998140896426E+000 1.920956884776574E+000 1.911695725513953E+000 + 1.902209548081245E+000 1.892493130481647E+000 1.882541142145769E+000 1.872348142340815E+000 + 1.861908578594768E+000 1.851216785138488E+000 1.840266981368885E+000 1.829053270336273E+000 + 1.817569637259592E+000 1.805809948073009E+000 1.793767948007890E+000 1.781437260214199E+000 + 1.768811384425762E+000 1.755883695673894E+000 1.742647443054336E+000 1.729095748552561E+000 + 1.715221605932902E+000 1.701017879697114E+000 1.686477304118464E+000 1.671592482357527E+000 + 1.656355885666384E+000 1.640759852688205E+000 1.624796588859411E+000 1.608458165922208E+000 + 1.591736521555456E+000 1.574623459132281E+000 1.557110647613415E+000 1.539189621585207E+000 + 1.520851781452334E+000 1.502088393794992E+000 1.482890591901352E+000 1.463249376486198E+000 + 1.443155616607271E+000 1.422600050791363E+000 1.401573288382570E+000 1.380065811125830E+000 + 1.358067974999255E+000 1.335570012309320E+000 1.312562034063593E+000 1.289034032636202E+000 + 1.264975884741842E+000 1.240377354734621E+000 1.215228098248794E+000 1.189517666198807E+000 + 1.163235509156936E+000 1.136370982127159E+000 1.108913349734644E+000 1.080851791850897E+000 + 1.052175409675010E+000 1.022873232292268E+000 9.929342237318775E-001 9.623472905460648E-001 + 9.311012899336362E-001 8.991850384313516E-001 8.665873211971196E-001 8.332969019096801E-001 + 7.993025333096266E-001 7.645929684074364E-001 7.291569723842688E-001 6.929833352118511E-001 + 6.560608850181495E-001 6.183785022256245E-001 5.799251344892955E-001 5.406898124617872E-001 + 5.006616664128085E-001 4.598299437304068E-001 4.181840273311934E-001 3.757134550067569E-001 + 3.324079397329527E-001 2.882573909684254E-001 2.432519369683366E-001 1.973819481382044E-001 + 1.506380614524225E-001 1.030112059605930E-001 5.449262940383548E-002 5.073925961990966E-003 +-4.525293484936377E-002 -9.649557811432707E-002 -1.486611922693690E-001 -2.017564966600069E-001 +-2.557877078910256E-001 -3.107605049622535E-001 -3.666799931853522E-001 -4.235506668802564E-001 +-4.813763708538517E-001 -5.401602606673208E-001 -5.999047617033888E-001 -6.606115270492197E-001 +-7.222813942161181E-001 -7.849143407230148E-001 -8.485094385763308E-001 -9.130648076860357E-001 +-9.785775682640026E-001 -1.045043792258845E+000 -1.112458453889042E+000 -1.180815379344718E+000 +-1.250107195737520E+000 -1.320325279387335E+000 -1.391459703544720E+000 -1.463499185658602E+000 +-1.536431034309366E+000 -1.610241095939703E+000 -1.684913701526954E+000 -1.760431613353749E+000 +-1.836775972046530E+000 -1.913926244064971E+000 -1.991860169839416E+000 -2.070553712767380E+000 +-2.149981009294917E+000 -2.230114320323745E+000 -2.310923984199448E+000 -2.392378371552084E+000 +-2.474443842275164E+000 -2.557084704944574E+000 -2.640263178994232E+000 -2.723939359979720E+000 +-2.808071188276385E+000 -2.892614421571780E+000 -2.977522611526188E+000 -3.062747084987612E+000 +-3.148236930158880E+000 -3.233938988125633E+000 -3.319797850162553E+000 -3.405755861243163E+000 +-3.491753130184331E+000 -3.577727546860103E+000 -3.663614806921526E+000 -3.749348444457638E+000 +-3.834859873029367E+000 -3.920078435501257E+000 -4.004931463085475E+000 -4.089344343999364E+000 +-4.173240602119491E+000 -4.256541985993900E+000 -4.339168568547878E+000 -4.421038857787314E+000 +-4.502069918768508E+000 -4.582177507061508E+000 -4.661276213888315E+000 -4.739279623065012E+000 +-4.816100479819211E+000 -4.891650871491169E+000 -4.965842420057235E+000 -5.038586486339542E+000 +-5.109794385685093E+000 -5.179377614810560E+000 -5.247248089417758E+000 -5.313318392087328E+000 +-5.377502029856665E+000 -5.439713700782185E+000 -5.499869568675963E+000 -5.557887545094601E+000 +-5.613687577542823E+000 -5.667191942738355E+000 -5.718325543668279E+000 -5.767016209051142E+000 +-5.813194993706177E+000 -5.856796478220781E+000 -5.897759066202652E+000 -5.936025277304915E+000 +-5.971542034122268E+000 -6.004260940976600E+000 -6.034138552542041E+000 -6.061136630205174E+000 +-6.085222384017044E+000 -6.106368698071839E+000 -6.124554337144742E+000 -6.139764132439539E+000 +-6.151989144337342E+000 -6.161226800102279E+000 -6.167481004589546E+000 -6.170762222117023E+000 +-6.171087527804003E+000 -6.168480626850463E+000 -6.162971840427132E+000 -6.154598057070475E+000 +-6.143402648726576E+000 -6.129435350862543E+000 -6.112752106361569E+000 -6.093414873236102E+000 +-6.071491396529563E+000 -6.047054945127497E+000 -6.020184014560167E+000 -5.990961997245707E+000 +-5.959476821991483E+000 -5.925820564936101E+000 -5.890089034469399E+000 -5.852381333007993E+000 +-5.812799398822269E+000 -5.771447531402170E+000 -5.728431904107237E+000 -5.683860068065250E+000 +-5.637840451458721E+000 -5.590481858463585E+000 -5.541892972176213E+000 -5.492181865879635E+000 +-5.441455526954314E+000 -5.389819397632850E+000 -5.337376936629396E+000 -5.284229205445534E+000 +-5.230474482866489E+000 -5.176207910817551E+000 -5.121521174356531E+000 -5.066502218138347E+000 +-5.011235001210536E+000 -4.955799291491692E+000 -4.900270500756761E+000 -4.844719560414754E+000 +-4.789212837824990E+000 -4.733812092368184E+000 -4.678574469979649E+000 -4.623552534372152E+000 +-4.568794332737030E+000 -4.514343493320731E+000 -4.460239351938701E+000 -4.406517104215522E+000 +-4.353207980132849E+000 -4.300339437329752E+000 -4.247935369532589E+000 -4.196016326494179E+000 +-4.144599741891914E+000 -4.093700165766511E+000 -4.043329498273010E+000 -3.993497221754732E+000 +-3.944210628431895E+000 -3.895475041310408E+000 -3.847294026252578E+000 -3.799669593501878E+000 +-3.752602387307449E+000 -3.706091862642678E+000 -3.660136448347547E+000 -3.614733696338457E+000 +-3.569880416817037E+000 -3.525572799665075E+000 -3.481806522433481E+000 -3.438576845517127E+000 +-3.395878695253258E+000 -3.353706735790552E+000 -3.312055430649631E+000 -3.270919094937169E+000 +-3.230291939188151E+000 -3.190168105797641E+000 -3.150541698969829E+000 -3.111406809061560E+000 +-3.072757532134781E+000 -3.034587985461491E+000 -2.996892319648806E+000 -2.959664727974831E+000 +-2.922899453449826E+000 -2.886590794044476E+000 -2.850733106459365E+000 -2.815320808747651E+000 +-2.780348382047939E+000 -2.745810371635706E+000 -2.711701387460082E+000 -2.678016104297662E+000 +-2.644749261625604E+000 -2.611895663292640E+000 -2.579450177047297E+000 -2.547407733967465E+000 +-2.515763327823872E+000 -2.484512014400765E+000 -2.453648910790577E+000 -2.423169194674185E+000 +-2.393068103594785E+000 -2.363340934230860E+000 -2.333983041671749E+000 -2.304989838698229E+000 +-2.276356795069542E+000 -2.248079436817705E+000 -2.220153345549751E+000 -2.192574157758030E+000 +-2.165337564138814E+000 -2.138439308919185E+000 -2.111875189192152E+000 -2.085641054260027E+000 +-2.059732804985876E+000 -2.034146393153050E+000 -2.008877820832657E+000 -1.983923139758855E+000 +-1.959278450711968E+000 -1.934939902909186E+000 -1.910903693402897E+000 -1.887166066486468E+000 +-1.863723313107394E+000 -1.840571770287771E+000 -1.817707820551928E+000 -1.795127891361198E+000 +-1.772828454555713E+000 -1.750806025803096E+000 -1.729057164054057E+000 -1.707578471004695E+000 +-1.686366590565520E+000 -1.665418208337063E+000 -1.644730051091976E+000 -1.624298886263604E+000 +-1.604121521440872E+000 -1.584194803869474E+000 -1.564515619959252E+000 -1.545080894797677E+000 +-1.525887591669410E+000 -1.506932711581782E+000 -1.488213292796216E+000 -1.469726410365444E+000 +-1.451469175676472E+000 -1.433438735999239E+000 -1.415632274040858E+000 -1.398047007505421E+000 +-1.380680188659258E+000 -1.363529103901585E+000 -1.346591073340522E+000 -1.329863450374328E+000 +-1.313343621277882E+000 -1.297029004794281E+000 -1.280917051731502E+000 -1.265005244564105E+000 +-1.249291097039845E+000 -1.233772153791197E+000 -1.218445989951709E+000 -1.203310210777098E+000 +-1.188362451271076E+000 -1.173600375815808E+000 -1.159021677806967E+000 -1.144624079293333E+000 +-1.130405330620843E+000 -1.116363210081092E+000 -1.102495523564174E+000 -1.088800104215856E+000 +-1.075274812099005E+000 -1.061917533859206E+000 -1.048726182394562E+000 -1.035698696529568E+000 +-1.022833040693049E+000 -1.010127204600111E+000 -9.975792029380094E-001 -9.851870750559593E-001 +-9.729488846587656E-001 -9.608627195042777E-001 -9.489266911046046E-001 -9.371389344310214E-001 +-9.254976076225683E-001 -9.140008916982459E-001 -9.026469902727992E-001 -8.914341292760336E-001 +-8.803605566756026E-001 -8.694245422032614E-001 -8.586243770844973E-001 -8.479583737715359E-001 +-8.374248656796628E-001 -8.270222069268044E-001 -8.167487720763699E-001 -8.066029558832604E-001 +-7.965831730430527E-001 -7.866878579442954E-001 -7.769154644238696E-001 -7.672644655254083E-001 +-7.577333532606965E-001 -7.483206383740511E-001 -7.390248501096232E-001 -7.298445359815814E-001 +-7.207782615471681E-001 -7.118246101825563E-001 -7.029821828615027E-001 -6.942495979367510E-001 +-6.856254909241373E-001 -6.771085142893978E-001 -6.686973372376037E-001 -6.603906455052273E-001 +-6.521871411547874E-001 -6.440855423720366E-001 -6.360845832656852E-001 -6.281830136695931E-001 +-6.203795989474339E-001 -6.126731197997834E-001 -6.050623720735938E-001 -5.975461665740507E-001 +-5.901233288787519E-001 -5.827926991542045E-001 -5.755531319746021E-001 -5.684034961428417E-001 +-5.613426745137804E-001 -5.543695638196724E-001 -5.474830744977839E-001 -5.406821305201496E-001 +-5.339656692254345E-001 -5.273326411528985E-001 -5.207820098784091E-001 -5.143127518525015E-001 +-5.079238562404493E-001 -5.016143247643128E-001 -4.953831715469639E-001 -4.892294229580341E-001 +-4.831521174617857E-001 -4.771503054668720E-001 -4.712230491779567E-001 -4.653694224491868E-001 +-4.595885106394763E-001 -4.538794104695922E-001 -4.482412298810198E-001 -4.426730878965694E-001 +-4.371741144827289E-001 -4.317434504137140E-001 -4.263802471372145E-001 -4.210836666418081E-001 +-4.158528813260152E-001 -4.106870738689895E-001 -4.055854371028051E-001 -4.005471738863373E-001 +-3.955714969807096E-001 -3.906576289262808E-001 -3.858048019211715E-001 -3.810122577012885E-001 +-3.762792474218459E-001 -3.716050315403598E-001 -3.669888797010877E-001 -3.624300706209141E-001 +-3.579278919766449E-001 -3.534816402937060E-001 -3.490906208362278E-001 -3.447541474984850E-001 +-3.404715426976971E-001 -3.362421372681508E-001 -3.320652703566417E-001 -3.279402893192185E-001 +-3.238665496192006E-001 -3.198434147264729E-001 -3.158702560180226E-001 -3.119464526797177E-001 +-3.080713916093045E-001 -3.042444673206058E-001 -3.004650818489166E-001 -2.967326446575674E-001 +-2.930465725456526E-001 -2.894062895569064E-001 -2.858112268897047E-001 -2.822608228081924E-001 +-2.787545225545081E-001 -2.752917782621029E-001 -2.718720488701371E-001 -2.684948000389348E-001 +-2.651595040664959E-001 -2.618656398060386E-001 -2.586126925845704E-001 -2.554001541224705E-001 +-2.522275224540674E-001 -2.490943018492092E-001 -2.460000027358012E-001 -2.429441416233111E-001 +-2.399262410272238E-001 -2.369458293944302E-001 -2.340024410295500E-001 -2.310956160221624E-001 +-2.282249001749455E-001 -2.253898449327085E-001 -2.225900073123010E-001 -2.198249498333994E-001 +-2.170942404501465E-001 -2.143974524836453E-001 -2.117341645552901E-001 -2.091039605209227E-001 +-2.065064294058123E-001 -2.039411653404373E-001 -2.014077674970679E-001 -1.989058400271375E-001 +-1.964349919993881E-001 -1.939948373387890E-001 -1.915849947662097E-001 -1.892050877388450E-001 +-1.868547443913804E-001 -1.845335974778858E-001 -1.822412843144338E-001 -1.799774467224288E-001 +-1.777417309726407E-001 -1.755337877299359E-001 -1.733532719986897E-001 -1.711998430688837E-001 +-1.690731644628660E-001 -1.669729038827772E-001 -1.648987331586296E-001 -1.628503281970267E-001 +-1.608273689305264E-001 -1.588295392676274E-001 -1.568565270433799E-001 -1.549080239706103E-001 +-1.529837255917486E-001 -1.510833312312587E-001 -1.492065439486551E-001 -1.473530704921063E-001 +-1.455226212526143E-001 -1.437149102187609E-001 -1.419296549320196E-001 -1.401665764426196E-001 +-1.384253992659596E-001 -1.367058513395638E-001 -1.350076639805698E-001 -1.333305718437483E-001 +-1.316743128800404E-001 -1.300386282956134E-001 -1.284232625114234E-001 -1.268279631232797E-001 +-1.252524808624077E-001 -1.236965695564987E-001 -1.221599860912453E-001 -1.206424903723552E-001 +-1.191438452880347E-001 + + + + 1.168143813516104E-004 1.182837253851561E-004 1.197715514913657E-004 1.212780921460921E-004 + 1.228035827493748E-004 1.243482616622210E-004 1.259123702438502E-004 1.274961528894069E-004 + 1.290998570681481E-004 1.307237333621110E-004 1.323680355052663E-004 1.340330204231653E-004 + 1.357189482730845E-004 1.374260824846764E-004 1.391546898011302E-004 1.409050403208514E-004 + 1.426774075396648E-004 1.444720683935493E-004 1.462893033019094E-004 1.481293962113914E-004 + 1.499926346402504E-004 1.518793097232759E-004 1.537897162572820E-004 1.557241527471699E-004 + 1.576829214525707E-004 1.596663284350727E-004 1.616746836060452E-004 1.637083007750624E-004 + 1.657674976989367E-004 1.678525961313692E-004 1.699639218732241E-004 1.721018048234353E-004 + 1.742665790305547E-004 1.764585827449470E-004 1.786781584716432E-004 1.809256530238563E-004 + 1.832014175771723E-004 1.855058077244222E-004 1.878391835312436E-004 1.902019095923425E-004 + 1.925943550884609E-004 1.950168938440626E-004 1.974699043857442E-004 1.999537700013800E-004 + 2.024688788000123E-004 2.050156237724936E-004 2.075944028528922E-004 2.102056189806705E-004 + 2.128496801636449E-004 2.155269995417383E-004 2.182379954515330E-004 2.209830914916376E-004 + 2.237627165888747E-004 2.265773050653012E-004 2.294272967060733E-004 2.323131368281621E-004 + 2.352352763499364E-004 2.381941718616189E-004 2.411902856966298E-004 2.442240860038277E-004 + 2.472960468206574E-004 2.504066481472204E-004 2.535563760212754E-004 2.567457225941825E-004 + 2.599751862078036E-004 2.632452714723682E-004 2.665564893453205E-004 2.699093572111571E-004 + 2.733043989622691E-004 2.767421450808028E-004 2.802231327215463E-004 2.837479057958628E-004 + 2.873170150566767E-004 2.909310181845302E-004 2.945904798747227E-004 2.982959719255442E-004 + 3.020480733276205E-004 3.058473703543819E-004 3.096944566536687E-004 3.135899333404915E-004 + 3.175344090909542E-004 3.215285002373629E-004 3.255728308645277E-004 3.296680329072772E-004 + 3.338147462492013E-004 3.380136188226315E-004 3.422653067098832E-004 3.465704742457699E-004 + 3.509297941214055E-004 3.553439474893159E-004 3.598136240698674E-004 3.643395222590388E-004 + 3.689223492375467E-004 3.735628210813432E-004 3.782616628735057E-004 3.830196088175298E-004 + 3.878374023520526E-004 3.927157962670151E-004 3.976555528212863E-004 4.026574438617698E-004 + 4.077222509440042E-004 4.128507654542833E-004 4.180437887333117E-004 4.233021322014155E-004 + 4.286266174853292E-004 4.340180765465749E-004 4.394773518114587E-004 4.450052963027008E-004 + 4.506027737727219E-004 4.562706588386079E-004 4.620098371187669E-004 4.678212053713111E-004 + 4.737056716341767E-004 4.796641553670047E-004 4.856975875948113E-004 4.918069110534589E-004 + 4.979930803369619E-004 5.042570620466427E-004 5.105998349421663E-004 5.170223900944724E-004 + 5.235257310406313E-004 5.301108739406489E-004 5.367788477362434E-004 5.435306943116187E-004 + 5.503674686562625E-004 5.572902390297867E-004 5.643000871288482E-004 5.713981082561631E-004 + 5.785854114916507E-004 5.858631198657303E-004 5.932323705347942E-004 6.006943149588915E-004 + 6.082501190816454E-004 6.159009635124326E-004 6.236480437108585E-004 6.314925701735464E-004 + 6.394357686232803E-004 6.474788802005266E-004 6.556231616573637E-004 6.638698855538529E-004 + 6.722203404568746E-004 6.806758311414719E-004 6.892376787947219E-004 6.979072212221731E-004 + 7.066858130568819E-004 7.155748259710719E-004 7.245756488904626E-004 7.336896882112905E-004 + 7.429183680200582E-004 7.522631303160549E-004 7.617254352366646E-004 7.713067612855185E-004 + 7.810086055635126E-004 7.908324840027293E-004 8.007799316033083E-004 8.108525026732876E-004 + 8.210517710714676E-004 8.313793304533300E-004 8.418367945200458E-004 8.524257972706219E-004 + 8.631479932572099E-004 8.740050578436363E-004 8.849986874671768E-004 8.961305999036292E-004 + 9.074025345357177E-004 9.188162526248671E-004 9.303735375864121E-004 9.420761952682491E-004 + 9.539260542330036E-004 9.659249660437504E-004 9.780748055533107E-004 9.903774711972125E-004 + 1.002834885290313E-003 1.015448994327165E-003 1.028221769286162E-003 1.041155205937495E-003 + 1.054251325155007E-003 1.067512173231944E-003 1.080939822200694E-003 1.094536370156546E-003 + 1.108303941585512E-003 1.122244687696287E-003 1.136360786756371E-003 1.150654444432423E-003 + 1.165127894134906E-003 1.179783397367046E-003 1.194623244078203E-003 1.209649753021671E-003 + 1.224865272116984E-003 1.240272178816784E-003 1.255872880478287E-003 1.271669814739447E-003 + 1.287665449899826E-003 1.303862285306270E-003 1.320262851743437E-003 1.336869711829217E-003 + 1.353685460415161E-003 1.370712724991908E-003 1.387954166099739E-003 1.405412477744287E-003 + 1.423090387817463E-003 1.440990658523704E-003 1.459116086811556E-003 1.477469504810693E-003 + 1.496053780274449E-003 1.514871817027883E-003 1.533926555421518E-003 1.553220972790756E-003 + 1.572758083921089E-003 1.592540941519160E-003 1.612572636689731E-003 1.632856299418685E-003 + 1.653395099062064E-003 1.674192244841286E-003 1.695250986344586E-003 1.716574614034741E-003 + 1.738166459763225E-003 1.760029897290783E-003 1.782168342814587E-003 1.804585255502013E-003 + 1.827284138031113E-003 1.850268537137923E-003 1.873542044170617E-003 1.897108295650651E-003 + 1.920970973840970E-003 1.945133807321332E-003 1.969600571570913E-003 1.994375089558199E-003 + 2.019461232338318E-003 2.044862919657887E-003 2.070584120567449E-003 2.096628854041634E-003 + 2.123001189607110E-003 2.149705247978423E-003 2.176745201701859E-003 2.204125275807367E-003 + 2.231849748468733E-003 2.259922951671999E-003 2.288349271892331E-003 2.317133150779393E-003 + 2.346279085851313E-003 2.375791631197428E-003 2.405675398189811E-003 2.435935056203794E-003 + 2.466575333347525E-003 2.497601017200708E-003 2.529016955562641E-003 2.560828057209656E-003 + 2.593039292662078E-003 2.625655694960850E-003 2.658682360453904E-003 2.692124449592437E-003 + 2.725987187737196E-003 2.760275865974898E-003 2.794995841944933E-003 2.830152540676447E-003 + 2.865751455435967E-003 2.901798148585676E-003 2.938298252452483E-003 2.975257470208036E-003 + 3.012681576759785E-003 3.050576419653262E-003 3.088947919985701E-003 3.127802073331158E-003 + 3.167144950677258E-003 3.206982699373722E-003 3.247321544092834E-003 3.288167787801967E-003 + 3.329527812748358E-003 3.371408081456265E-003 3.413815137736644E-003 3.456755607709563E-003 + 3.500236200839429E-003 3.544263710983262E-003 3.588845017452154E-003 3.633987086086050E-003 + 3.679696970342079E-003 3.725981812396543E-003 3.772848844260780E-003 3.820305388911057E-003 + 3.868358861432658E-003 3.917016770178390E-003 3.966286717941620E-003 4.016176403144086E-003 + 4.066693621038652E-003 4.117846264927149E-003 4.169642327393583E-003 4.222089901552804E-003 + 4.275197182314902E-003 4.328972467665500E-003 4.383424159962128E-003 4.438560767246932E-003 + 4.494390904575847E-003 4.550923295364511E-003 4.608166772751113E-003 4.666130280976326E-003 + 4.724822876780659E-003 4.784253730819326E-003 4.844432129094914E-003 4.905367474408103E-003 + 4.967069287826569E-003 5.029547210172400E-003 5.092811003528185E-003 5.156870552762052E-003 + 5.221735867071893E-003 5.287417081548957E-003 5.353924458761170E-003 5.421268390356294E-003 + 5.489459398685280E-003 5.558508138446022E-003 5.628425398347766E-003 5.699222102796469E-003 + 5.770909313601295E-003 5.843498231702620E-003 5.917000198921731E-003 5.991426699732513E-003 + 6.066789363055430E-003 6.143099964074034E-003 6.220370426074329E-003 6.298612822307237E-003 + 6.377839377874485E-003 6.458062471638201E-003 6.539294638154501E-003 6.621548569631374E-003 + 6.704837117911198E-003 6.789173296478174E-003 6.874570282490942E-003 6.961041418840806E-003 + 7.048600216235787E-003 7.137260355310877E-003 7.227035688764834E-003 7.317940243523777E-003 + 7.409988222932038E-003 7.503194008970487E-003 7.597572164502758E-003 7.693137435549732E-003 + 7.789904753592520E-003 7.887889237904462E-003 7.987106197912375E-003 8.087571135587505E-003 + 8.189299747866512E-003 8.292307929102830E-003 8.396611773548881E-003 8.502227577869443E-003 + 8.609171843686588E-003 8.717461280156638E-003 8.827112806579404E-003 8.938143555040270E-003 + 9.050570873085462E-003 9.164412326430867E-003 9.279685701704961E-003 9.396409009226073E-003 + 9.514600485814635E-003 9.634278597640695E-003 9.755462043107184E-003 9.878169755769446E-003 + 1.000242090729135E-002 1.012823491043855E-002 1.025563142210938E-002 1.038463034640373E-002 + 1.051525183773050E-002 1.064751630395401E-002 1.078144440957997E-002 1.091705707898142E-002 + 1.105437549966515E-002 1.119342112557915E-002 1.133421568046149E-002 1.147678116123136E-002 + 1.162113984142256E-002 1.176731427466010E-002 1.191532729818049E-002 1.206520203639605E-002 + 1.221696190450413E-002 1.237063061214145E-002 1.252623216708438E-002 1.268379087899559E-002 + 1.284333136321771E-002 1.300487854461456E-002 1.316845766146057E-002 1.333409426937895E-002 + 1.350181424532931E-002 1.367164379164515E-002 1.384360944012208E-002 1.401773805615728E-002 + 1.419405684294078E-002 1.437259334569935E-002 1.455337545599355E-002 1.473643141606858E-002 + 1.492178982325977E-002 1.510947963445312E-002 1.529953017060183E-002 1.549197112129941E-002 + 1.568683254940997E-002 1.588414489575660E-002 1.608393898386842E-002 1.628624602478707E-002 + 1.649109762193345E-002 1.669852577603520E-002 1.690856289011609E-002 1.712124177454767E-002 + 1.733659565216424E-002 1.755465816344179E-002 1.777546337174171E-002 1.799904576862010E-002 + 1.822544027920355E-002 1.845468226763200E-002 1.868680754256987E-002 1.892185236278581E-002 + 1.915985344280247E-002 1.940084795861668E-002 1.964487355349122E-002 1.989196834381890E-002 + 2.014217092505986E-002 2.039552037775311E-002 2.065205627360305E-002 2.091181868164201E-002 + 2.117484817446975E-002 2.144118583457073E-002 2.171087326071025E-002 2.198395257441045E-002 + 2.226046642650694E-002 2.254045800378732E-002 2.282397103571236E-002 2.311104980122094E-002 + 2.340173913561991E-002 2.369608443755961E-002 2.399413167609648E-002 2.429592739784333E-002 + 2.460151873420885E-002 2.491095340872711E-002 2.522427974447828E-002 2.554154667160169E-002 + 2.586280373490211E-002 2.618810110155090E-002 2.651748956888255E-002 2.685102057228830E-002 + 2.718874619320772E-002 2.753071916721938E-002 2.787699289223214E-002 2.822762143677795E-002 + 2.858265954840749E-002 2.894216266218997E-002 2.930618690931816E-002 2.967478912582011E-002 + 3.004802686137873E-002 3.042595838826049E-002 3.080864271035479E-002 3.119613957232477E-002 + 3.158850946887162E-002 3.198581365411315E-002 3.238811415107825E-002 3.279547376131873E-002 + 3.320795607463939E-002 3.362562547894850E-002 3.404854717022945E-002 3.447678716263546E-002 + 3.491041229870839E-002 3.534949025972350E-002 3.579408957616134E-002 3.624427963830844E-002 + 3.670013070698821E-002 3.716171392442380E-002 3.762910132523378E-002 3.810236584756324E-002 + 3.858158134435091E-002 3.906682259473442E-002 3.955816531559522E-002 4.005568617324447E-002 + 4.055946279525195E-002 4.106957378241929E-002 4.158609872089943E-002 4.210911819446382E-002 + 4.263871379691884E-002 4.317496814467375E-002 4.371796488946122E-002 4.426778873121240E-002 + 4.482452543108870E-002 4.538826182467107E-002 4.595908583530944E-002 4.653708648763388E-002 + 4.712235392122868E-002 4.771497940447235E-002 4.831505534854388E-002 4.892267532159834E-002 + 4.953793406311306E-002 5.016092749840632E-002 5.079175275333062E-002 5.143050816914182E-002 + 5.207729331754710E-002 5.273220901593254E-002 5.339535734277281E-002 5.406684165322522E-002 + 5.474676659490881E-002 5.543523812387204E-002 5.613236352074989E-002 5.683825140711281E-002 + 5.755301176200943E-002 5.827675593870466E-002 5.900959668161593E-002 5.975164814344884E-002 + 6.050302590253438E-002 6.126384698037044E-002 6.203422985936806E-002 6.281429450080636E-002 + 6.360416236299653E-002 6.440395641965800E-002 6.521380117850829E-002 6.603382270006859E-002 + 6.686414861668713E-002 6.770490815178282E-002 6.855623213931017E-002 6.941825304344897E-002 + 7.029110497851895E-002 7.117492372912312E-002 7.206984677052074E-002 7.297601328923234E-002 + 7.389356420387895E-002 7.482264218625650E-002 7.576339168264902E-002 7.671595893538119E-002 + 7.768049200461272E-002 7.865714079037679E-002 7.964605705486356E-002 8.064739444495160E-002 + 8.166130851498875E-002 8.268795674982365E-002 8.372749858809132E-002 8.478009544575221E-002 + 8.584591073988898E-002 8.692510991276094E-002 8.801786045611859E-002 8.912433193578019E-002 + 9.024469601647048E-002 9.137912648692544E-002 9.252779928526263E-002 9.369089252461929E-002 + 9.486858651906015E-002 9.606106380975490E-002 9.726850919142828E-002 9.849110973908268E-002 + 9.972905483499533E-002 1.009825361959908E-001 1.022517479009892E-001 1.035368864188322E-001 + 1.048381506363874E-001 1.061557418869306E-001 1.074898639788089E-001 1.088407232243822E-001 + 1.102085284692471E-001 1.115934911217404E-001 1.129958251827241E-001 1.144157472756519E-001 + 1.158534766769164E-001 1.173092353464783E-001 1.187832479587749E-001 1.202757419339105E-001 + 1.217869474691258E-001 1.233170975705459E-001 1.248664280852072E-001 1.264351777333606E-001 + 1.280235881410503E-001 1.296319038729677E-001 1.312603724655759E-001 1.329092444605065E-001 + 1.345787734382236E-001 1.362692160519541E-001 1.379808320618816E-001 1.397138843695999E-001 + 1.414686390528246E-001 1.432453654003580E-001 1.450443359473040E-001 1.468658265105293E-001 + 1.487101162243658E-001 1.505774875765503E-001 1.524682264443952E-001 1.543826221311867E-001 + 1.563209674028028E-001 1.582835585245453E-001 1.602706952981804E-001 1.622826810991790E-001 + 1.643198229141505E-001 1.663824313784619E-001 1.684708208140326E-001 1.705853092672975E-001 + 1.727262185473276E-001 1.748938742640989E-001 1.770886058668986E-001 1.793107466828556E-001 + 1.815606339555877E-001 1.838386088839476E-001 1.861450166608583E-001 1.884802065122230E-001 + 1.908445317358925E-001 1.932383497406788E-001 1.956620220853944E-001 1.981159145179032E-001 + 2.006003970141640E-001 2.031158438172458E-001 2.056626334762988E-001 2.082411488854570E-001 + 2.108517773226520E-001 2.134949104883160E-001 2.161709445439465E-001 2.188802801505117E-001 + 2.216233225066683E-001 2.244004813867636E-001 2.272121711785942E-001 2.300588109208903E-001 + 2.329408243404937E-001 2.358586398891990E-001 2.388126907802189E-001 2.418034150242425E-001 + 2.448312554650444E-001 2.478966598146087E-001 2.510000806877254E-001 2.541419756360148E-001 + 2.573228071813389E-001 2.605430428485476E-001 2.638031551975171E-001 2.671036218544234E-001 + 2.704449255422033E-001 2.738275541101441E-001 2.772520005625444E-001 2.807187630863878E-001 + 2.842283450779660E-001 2.877812551683837E-001 2.913780072478832E-001 2.950191204889085E-001 + 2.987051193678457E-001 3.024365336853542E-001 3.062138985852140E-001 3.100377545716048E-001 + 3.139086475247260E-001 3.178271287146754E-001 3.217937548134857E-001 3.258090879052243E-001 + 3.298736954940573E-001 3.339881505101644E-001 3.381530313134051E-001 3.423689216946144E-001 + 3.466364108744129E-001 3.509560934994091E-001 3.553285696356595E-001 3.597544447592645E-001 + 3.642343297439517E-001 3.687688408455045E-001 3.733585996828975E-001 3.780042332159655E-001 + 3.827063737194639E-001 3.874656587533410E-001 3.922827311290509E-001 3.971582388717373E-001 + 4.020928351780825E-001 4.070871783696504E-001 4.121419318415024E-001 4.172577640058893E-001 + 4.224353482308043E-001 4.276753627731601E-001 4.329784907063761E-001 4.383454198421182E-001 + 4.437768426459471E-001 4.492734561466252E-001 4.548359618387926E-001 4.604650655787605E-001 + 4.661614774731093E-001 4.719259117598060E-001 4.777590866815357E-001 4.836617243509082E-001 + 4.896345506072335E-001 4.956782948645003E-001 5.017936899502115E-001 5.079814719347172E-001 + 5.142423799506438E-001 5.205771560020488E-001 5.269865447628761E-001 5.334712933642949E-001 + 5.400321511704982E-001 5.466698695424884E-001 5.533852015894071E-001 5.601789019069098E-001 + 5.670517263020961E-001 5.740044315044873E-001 5.810377748625025E-001 5.881525140249083E-001 + 5.953494066066567E-001 6.026292098385330E-001 6.099926802000213E-001 6.174405730347425E-001 + 6.249736421478510E-001 6.325926393847030E-001 6.402983141901246E-001 6.480914131475863E-001 + 6.559726794975332E-001 6.639428526341551E-001 6.720026675797993E-001 6.801528544362490E-001 + 6.883941378120556E-001 6.967272362250675E-001 7.051528614793161E-001 7.136717180153523E-001 + 7.222845022331255E-001 7.309919017864832E-001 7.397945948482970E-001 7.486932493452638E-001 + 7.576885221613336E-001 7.667810583087407E-001 7.759714900655742E-001 7.852604360787723E-001 + 7.946485004314471E-001 8.041362716733669E-001 8.137243218134301E-001 8.234132052729412E-001 + 8.332034577984275E-001 8.430955953327833E-001 8.530901128434187E-001 8.631874831061258E-001 + 8.733881554433361E-001 8.836925544153771E-001 8.941010784633859E-001 9.046140985024338E-001 + 9.152319564634482E-001 9.259549637824889E-001 9.367833998358674E-001 9.477175103196634E-001 + 9.587575055720793E-001 9.699035588371250E-001 9.811558044680979E-001 9.925143360692609E-001 + 1.003979204574196E+000 1.015550416259217E+000 1.027227930690265E+000 1.039011658601721E+000 + 1.050901459705501E+000 1.062897140428907E+000 1.074998451579597E+000 1.087205085936133E+000 + 1.099516675762580E+000 1.111932790245563E+000 1.124452932852334E+000 1.137076538608336E+000 + 1.149802971292835E+000 1.162631520551237E+000 1.175561398922715E+000 1.188591738781891E+000 + 1.201721589193321E+000 1.214949912677644E+000 1.228275581888353E+000 1.241697376198157E+000 + 1.255213978194144E+000 1.268823970080910E+000 1.282525829991080E+000 1.296317928202722E+000 + 1.310198523263280E+000 1.324165758019915E+000 1.338217655556209E+000 1.352352115035465E+000 + 1.366566907451037E+000 1.380859671284294E+000 1.395227908071200E+000 1.409668977878595E+000 + 1.424180094691711E+000 1.438758321714680E+000 1.453400566586124E+000 1.468103576512355E+000 + 1.482863933320996E+000 1.497678048438320E+000 1.512542157794038E+000 1.527452316657674E+000 + 1.542404394411273E+000 1.557394069263595E+000 1.572416822911632E+000 1.587467935155784E+000 + 1.602542478475726E+000 1.617635312574667E+000 1.632741078900349E+000 1.647854195151989E+000 + 1.662968849783037E+000 1.678078996510540E+000 1.693178348842761E+000 1.708260374637559E+000 + 1.723318290705088E+000 1.738345057469297E+000 1.753333373703820E+000 1.768275671358929E+000 + 1.783164110497341E+000 1.797990574357912E+000 1.812746664567454E+000 1.827423696522191E+000 + 1.842012694961771E+000 1.856504389760003E+000 1.870889211958064E+000 1.885157290067252E+000 + 1.899298446669932E+000 1.913302195348901E+000 1.927157737976850E+000 1.940853962399399E+000 + 1.954379440546626E+000 1.967722427009825E+000 1.980870858121853E+000 1.993812351581089E+000 + 2.006534206660809E+000 2.019023405047412E+000 2.031266612352637E+000 2.043250180346642E+000 + 2.054960149960342E+000 2.066382255107140E+000 2.077501927375605E+000 2.088304301646223E+000 + 2.098774222686720E+000 2.108896252781702E+000 2.118654680453651E+000 2.128033530333251E+000 + 2.137016574237973E+000 2.145587343518587E+000 2.153729142733701E+000 2.161425064712817E+000 + 2.168658007068347E+000 2.175410690216858E+000 2.181665676969226E+000 2.187405393748483E+000 + 2.192612153492923E+000 2.197268180300295E+000 2.201355635866851E+000 2.204856647772399E+000 + 2.207753339659400E+000 2.210027863350496E+000 2.211662432944578E+000 2.212639360926629E+000 + 2.212941096320997E+000 2.212550264911470E+000 2.211449711544511E+000 2.209622544524152E+000 + 2.207052182098443E+000 2.203722401027773E+000 2.199617387215050E+000 2.194721788366300E+000 + 2.189020768638061E+000 2.182500065214601E+000 2.175146046743808E+000 2.166945773545355E+000 + 2.157887059488465E+000 2.147958535419466E+000 2.137149714001015E+000 2.125451055805819E+000 + 2.112854036487582E+000 2.099351214830953E+000 2.084936301460614E+000 2.069604227967158E+000 + 2.053351216184340E+000 2.036174847328806E+000 2.018074130689378E+000 1.999049571528895E+000 + 1.979103237837385E+000 1.958238825551248E+000 1.936461721829575E+000 1.913779065955465E+000 + 1.890199807408179E+000 1.865734760630830E+000 1.840396655998701E+000 1.814200186475679E+000 + 1.787162049430443E+000 1.759300983071259E+000 1.730637796947872E+000 1.701195395962286E+000 + 1.670998797327282E+000 1.640075139912494E+000 1.608453685423922E+000 1.576165810873447E+000 + 1.543244991811344E+000 1.509726775817224E+000 1.475648745773176E+000 1.441050472478484E+000 + 1.405973456207389E+000 1.370461056860975E+000 1.334558412421573E+000 1.298312345482599E+000 + 1.261771257699533E+000 1.224985012087979E+000 1.188004803182581E+000 1.150883015166170E+000 + 1.113673068180671E+000 1.076429253140509E+000 1.039206555484125E+000 1.002060468419258E+000 + 9.650467963422839E-001 9.282214492391077E-001 8.916402290048089E-001 8.553586087489620E-001 + 8.194315062823161E-001 7.839130531066432E-001 7.488563603504553E-001 7.143132832081446E-001 + 6.803341855455759E-001 6.469677064299366E-001 6.142605304233315E-001 5.822571635455340E-001 + 5.509997168600118E-001 5.205276996660152E-001 4.908778242865139E-001 4.620838244253875E-001 + 4.341762890252966E-001 4.071825134896839E-001 3.811263700364659E-001 3.560281988272188E-001 + 3.319047213637791E-001 3.087689774641347E-001 2.866302869228099E-001 2.654942367285193E-001 + 2.453626944560055E-001 2.262338481724752E-001 2.081022729046483E-001 1.909590234047043E-001 + 1.747917526359928E-001 1.595848550776830E-001 1.453196336267102E-001 1.319744885608791E-001 + 1.195251267250932E-001 1.079447888189819E-001 9.720449240489924E-002 8.727328802616210E-002 + 7.811852563172346E-002 6.970612835055894E-002 6.200087055085545E-002 5.496665705940455E-002 + 4.856680040794299E-002 4.276429301695845E-002 3.752207132427208E-002 3.280326901443038E-002 + 2.857145670358839E-002 2.479086567971115E-002 2.142659358483612E-002 1.844479024917222E-002 + 1.581282223902467E-002 1.349941505431954E-002 1.147477229852743E-002 9.710671535220108E-003 + 8.180536932483114E-003 6.859489170011271E-003 5.724373435506568E-003 4.753766659110083E-003 + 3.927965420052889E-003 3.228956202701496E-003 2.640369875118271E-003 2.147422409094888E-003 + 1.736843954777521E-003 1.396798425494412E-003 1.116795740781936E-003 8.875988208707734E-004 + 7.011273283546760E-004 5.503600178339592E-004 4.292373882940224E-004 3.325661427559988E-004 + 2.559267525493674E-004 1.955852066875007E-004 1.484098073233219E-004 1.117936566876234E-004 + 8.358327513498588E-005 6.201359892960268E-005 4.564943418907813E-005 3.333329288952412E-005 + 2.413940985493662E-005 1.733363699095063E-005 1.233883248682622E-005 8.705307255125231E-006 + 6.085856751792257E-006 4.214891221390997E-006 2.891178670860432E-006 1.963729612914043E-006 + 1.320377911455068E-006 8.786450694193956E-007 5.785133896056769E-007 3.767742640700617E-007 + 2.426594044862351E-007 1.545034850009714E-007 9.722517896178022E-008 6.044904125093193E-008 + 3.712255714737842E-008 2.251066933408230E-008 1.347416335388560E-008 7.958576203713732E-009 + 4.637060945267326E-009 2.664244400915297E-009 1.508951682624286E-009 8.421489409306341E-010 + 4.629702406693819E-010 2.506121035085013E-010 1.335259905451553E-010 6.999549290190674E-011 + 3.608578297592452E-011 1.828861183983271E-011 9.107853368001805E-012 4.455016991268077E-012 + 2.139356885297748E-012 1.008126767132626E-012 4.659479994834109E-013 2.111238346870619E-013 + 9.373381829940587E-014 4.075592700388993E-014 1.734567464279496E-014 7.222079909290567E-015 + 2.940104860198917E-015 1.169621774383324E-015 4.544190811871316E-016 1.723201797032400E-016 + 6.374080978016569E-017 2.298410071803684E-017 8.073943038490288E-018 2.761243459446046E-018 + 9.187342918852427E-019 2.971934650788142E-019 9.339915204590106E-020 2.849596478648763E-020 + 8.434025644783998E-021 2.419712179940619E-021 6.723995517643825E-022 1.808318956013082E-022 + 4.702693643042093E-023 1.181607886327321E-023 2.866003929200250E-024 6.704539877921182E-025 + 1.511305421385928E-025 3.279584067040652E-026 6.844637272292801E-027 1.372519560197563E-027 + 2.641700149191244E-028 4.875225230514999E-029 8.617671522098778E-030 1.457456093198250E-030 + 2.355730077219035E-031 3.634812296692883E-032 5.347541561343863E-033 7.492356639719964E-034 + 9.984766831857034E-035 1.264043890127002E-035 1.518192051833205E-036 1.727638649777210E-037 + 1.860147583401664E-038 1.892351553613111E-039 1.816320150463672E-040 1.642402453881362E-041 + 1.397036091423895E-042 1.116102742524612E-043 8.361416648277759E-045 5.864457922156715E-046 + 3.844355056226040E-047 2.351384525803246E-048 1.339573347173098E-049 7.095301605119188E-051 + 3.487673432070480E-052 1.587962149384748E-053 6.684083467377450E-055 2.595838417660875E-056 + 9.282444322881088E-058 3.049919536664498E-059 9.188088977325532E-061 2.532320535853384E-062 + 6.370750184139000E-064 1.459613470142129E-065 3.038310269202013E-067 5.732167872344327E-069 + 9.777257543051255E-071 1.503896922102659E-072 2.080584555746421E-074 2.581984350615295E-076 + 2.866341465651324E-078 2.838462982230591E-080 2.500134766973201E-082 1.952902541646995E-084 + 1.348696327140287E-086 8.209378687115657E-089 4.390163524713185E-091 2.055900239308590E-093 + 8.402623730898485E-096 2.986915915200982E-098 9.202208333081257E-101 2.448212170207383E-103 + 5.603780194285448E-106 1.099346177088358E-108 1.841253627019908E-111 2.622285840712977E-114 + 3.162650545470516E-117 3.216618215722144E-120 2.746951936101650E-123 1.961031195583446E-126 + 1.165010575757922E-129 5.732806881914227E-133 2.325550945667309E-136 7.738951071906787E-140 + 2.102126670174741E-143 4.636859410346502E-147 8.262062102241439E-151 1.182784808118059E-154 + 1.352912296023963E-158 1.229456393054683E-162 8.824837098006933E-167 4.973439221598089E-171 + 2.187279562755618E-175 7.459721816212301E-180 1.960271833100722E-184 3.942929399948992E-189 + 6.029646885412628E-194 6.961802209494900E-199 6.025857666963402E-204 3.881643967630056E-209 + 1.846988660460368E-214 6.442201432472851E-220 1.634223483315370E-225 2.990850930665509E-231 + 3.916469369207124E-237 3.638571805006467E-243 2.377551032706143E-249 1.082984727730132E-255 + 3.407543134942384E-262 7.337016054420329E-269 1.070745400861972E-275 1.048734597676805E-282 + 6.824539377528473E-290 2.920210886424894E-297 8.129786970749036E-305 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + + 6.183560639931707E-014 6.419846840976769E-014 6.665162009641271E-014 6.919851160809172E-014 + 7.184272493072200E-014 7.458797892505562E-014 7.743813455694057E-014 8.039720032744045E-014 + 8.346933791044918E-014 8.665886800573182E-014 8.997027641561924E-014 9.340822035390777E-014 + 9.697753499583318E-014 1.006832402783330E-013 1.045305479601601E-013 1.085248689517773E-013 + 1.126718209253410E-013 1.169772362154798E-013 1.214471700219751E-013 1.260879089258852E-013 + 1.309059797310833E-013 1.359081586436537E-013 1.411014808020464E-013 1.464932501714006E-013 + 1.520910498159504E-013 1.579027525639561E-013 1.639365320801682E-013 1.702008743613901E-013 + 1.767045896713083E-013 1.834568249313798E-013 1.904670765851962E-013 1.977452039544218E-013 + 2.053014431050913E-013 2.131464212437622E-013 2.212911716637785E-013 2.297471492626541E-013 + 2.385262466524123E-013 2.476408108855300E-013 2.571036608200153E-013 2.669281051480411E-013 + 2.771279611134824E-013 2.877175739446953E-013 2.987118370298578E-013 3.101262128632498E-013 + 3.219767547919373E-013 3.342801295934325E-013 3.470536409160989E-013 3.603152536152570E-013 + 3.740836190192223E-013 3.883781011608129E-013 4.032188040112050E-013 4.186265997544597E-013 + 4.346231581424706E-013 4.512309769716206E-013 4.684734137240212E-013 4.863747184178130E-013 + 5.049600677127558E-013 5.242556003190492E-013 5.442884537592065E-013 5.650868025346675E-013 + 5.866798977508271E-013 6.090981082562287E-013 6.323729633537579E-013 6.565371971439204E-013 + 6.816247945625702E-013 7.076710391778160E-013 7.347125628133595E-013 7.627873970680295E-013 + 7.919350268039861E-013 8.221964456788195E-013 8.536142137996233E-013 8.862325175801679E-013 + 9.200972318853217E-013 9.552559845501342E-013 9.917582233643420E-013 1.029655285616452E-012 + 1.069000470295268E-012 1.109849113050382E-012 1.152258664017038E-012 1.196288768614867E-012 + 1.242001351434064E-012 1.289460703327062E-012 1.338733571828127E-012 1.389889255028077E-012 + 1.442999699036150E-012 1.498139599166058E-012 1.555386504988583E-012 1.614820929398446E-012 + 1.676526461848811E-012 1.740589885912761E-012 1.807101301336946E-012 1.876154250759234E-012 + 1.947845851268445E-012 2.022276930991242E-012 2.099552170898330E-012 2.179780252029276E-012 + 2.263074008343154E-012 2.349550585409872E-012 2.439331605165431E-012 2.532543336962824E-012 + 2.629316875159095E-012 2.729788323488376E-012 2.834098986480195E-012 2.942395568192230E-012 + 3.054830378537088E-012 3.171561547493172E-012 3.292753247501032E-012 3.418575924357895E-012 + 3.549206536935139E-012 3.684828806055892E-012 3.825633472882633E-012 3.971818567178426E-012 + 4.123589685818865E-012 4.281160281946538E-012 4.444751965174725E-012 4.614594813262321E-012 + 4.790927695698657E-012 4.973998609653012E-012 5.164065028761503E-012 5.361394265241801E-012 + 5.566263845844930E-012 5.778961902172970E-012 5.999787575911601E-012 6.229051439547304E-012 + 6.467075933161178E-012 6.714195817913259E-012 6.970758646855633E-012 7.237125253736092E-012 + 7.513670260480022E-012 7.800782604064217E-012 8.098866083523457E-012 8.408339927859467E-012 + 8.729639385650693E-012 9.063216337192217E-012 9.409539930027004E-012 9.769097238761678E-012 + 1.014239395009546E-011 1.052995507402534E-011 1.093232568222781E-011 1.135007167465569E-011 + 1.178378057542797E-011 1.223406235913245E-011 1.270155030870282E-011 1.318690190607702E-011 + 1.369079975688963E-011 1.421395255049807E-011 1.475709605669391E-011 1.532099416050015E-011 + 1.590643993651013E-011 1.651425676427954E-011 1.714529948633900E-011 1.780045561045727E-011 + 1.848064655784514E-011 1.918682895905538E-011 1.991999599940224E-011 2.068117881579134E-011 + 2.147144794692572E-011 2.229191483892715E-011 2.314373340848985E-011 2.402810166576599E-011 + 2.494626339926414E-011 2.589950992513177E-011 2.688918190328076E-011 2.791667122291108E-011 + 2.898342296008399E-011 3.009093741009726E-011 3.124077219752318E-011 3.243454446687345E-011 + 3.367393315697467E-011 3.496068136225271E-011 3.629659878424474E-011 3.768356427679082E-011 + 3.912352848847996E-011 4.061851660607066E-011 4.217063120274325E-011 4.378205519518768E-011 + 4.545505491369047E-011 4.719198328953291E-011 4.899528316418764E-011 5.086749072496661E-011 + 5.281123907194950E-011 5.482926192121522E-011 5.692439744957804E-011 5.909959228624000E-011 + 6.135790565697309E-011 6.370251368665624E-011 6.613671386622458E-011 6.866392969030590E-011 + 7.128771547207257E-011 7.401176134207889E-011 7.683989843811084E-011 7.977610429335482E-011 + 8.282450843045489E-011 8.598939816933196E-011 8.927522465693222E-011 9.268660912738003E-011 + 9.622834940135014E-011 9.990542663378698E-011 1.037230123194722E-010 1.076864755662878E-010 + 1.118013906464023E-010 1.160735448360081E-010 1.205089465546246E-010 1.251138338154236E-010 + 1.298946829984602E-010 1.348582179591381E-010 1.400114194847393E-010 1.453615351122947E-010 + 1.509160893216227E-010 1.566828941178617E-010 1.626700600183777E-010 1.688860074595127E-010 + 1.753394786391970E-010 1.820395498120976E-010 1.889956440545879E-010 1.962175445174859E-010 + 2.037154081852164E-010 2.114997801607264E-010 2.195816084962618E-010 2.279722595908586E-010 + 2.366835341761919E-010 2.457276839132923E-010 2.551174286234386E-010 2.648659741774865E-010 + 2.749870310687843E-010 2.854948336957829E-010 2.964041603814950E-010 3.077303541579129E-010 + 3.194893443446536E-010 3.316976689521662E-010 3.443724979409968E-010 3.575316573698550E-010 + 3.711936544664059E-010 3.853777036560764E-010 4.001037535854745E-010 4.153925151784112E-010 + 4.312654907640216E-010 4.477450043179038E-010 4.648542328588429E-010 4.826172390452697E-010 + 5.010590050172708E-010 5.202054675318002E-010 5.400835544404423E-010 5.607212225610835E-010 + 5.821474969967247E-010 6.043925119567369E-010 6.274875531379869E-010 6.514651017254170E-010 + 6.763588800739737E-010 7.022038991361375E-010 7.290365077017363E-010 7.568944435193210E-010 + 7.858168863709738E-010 8.158445131752110E-010 8.470195551954805E-010 8.793858574346901E-010 + 9.129889402993255E-010 9.478760636198661E-010 9.840962931175403E-010 1.021700569410912E-009 + 1.060741779659325E-009 1.101274831943989E-009 1.143356732491300E-009 1.187046665847017E-009 + 1.232406078114042E-009 1.279498763370862E-009 1.328390953392221E-009 1.379151410798169E-009 + 1.431851525762514E-009 1.486565416416704E-009 1.543370033090285E-009 1.602345266534635E-009 + 1.663574060282080E-009 1.727142527298485E-009 1.793140071093360E-009 1.861659511457777E-009 + 1.932797215007008E-009 2.006653230711394E-009 2.083331430606120E-009 2.162939655877776E-009 + 2.245589868533114E-009 2.331398308863398E-009 2.420485658925699E-009 2.512977212271141E-009 + 2.609003050158770E-009 2.708698224502831E-009 2.812202947810857E-009 2.919662790379564E-009 + 3.031228885025995E-009 3.147058139641798E-009 3.267313457869557E-009 3.392163968211616E-009 + 3.521785261893457E-009 3.656359639816342E-009 3.796076368946436E-009 3.941131948500932E-009 + 4.091730386305733E-009 4.248083485713112E-009 4.410411143483065E-009 4.578941659047240E-009 + 4.753912055590293E-009 4.935568413400378E-009 5.124166215957486E-009 5.319970709246412E-009 + 5.523257274799714E-009 5.734311816995158E-009 5.953431165152616E-009 6.180923490995565E-009 + 6.417108742064589E-009 6.662319091692333E-009 6.916899406172628E-009 7.181207729781059E-009 + 7.455615788328768E-009 7.740509511958010E-009 8.036289577914491E-009 8.343371974059869E-009 + 8.662188583917015E-009 8.993187794070712E-009 9.336835124778089E-009 9.693613884675692E-009 + 1.006402585050381E-008 1.044859197280421E-008 1.084785310858359E-008 1.126237078197309E-008 + 1.169272797395393E-008 1.213952994225954E-008 1.260340507260717E-008 1.308500576245650E-008 + 1.358500933853784E-008 1.410411900944034E-008 1.464306485460004E-008 1.520260485107823E-008 + 1.578352593957479E-008 1.638664513117503E-008 1.701281065638684E-008 1.766290315808441E-008 + 1.833783693003514E-008 1.903856120275301E-008 1.976606147848547E-008 2.052136091721213E-008 + 2.130552177560423E-008 2.211964690096792E-008 2.296488128227352E-008 2.384241366045108E-008 + 2.475347820021712E-008 2.569935622578409E-008 2.668137802289257E-008 2.770092470970150E-008 + 2.875943017916716E-008 2.985838311564181E-008 3.099932908852964E-008 3.218387272594204E-008 + 3.341367997141128E-008 3.469048042683494E-008 3.601606978494625E-008 3.739231235473154E-008 + 3.882114368334551E-008 4.030457327821229E-008 4.184468743314014E-008 4.344365216242384E-008 + 4.510371624706188E-008 4.682721439737036E-008 4.861657053644368E-008 5.047430120907779E-008 + 5.240301912095014E-008 5.440543681303440E-008 5.648437047641492E-008 5.864274391286859E-008 + 6.088359264678145E-008 6.321006819418306E-008 6.562544249490319E-008 6.813311251408060E-008 + 7.073660501949866E-008 7.343958154146319E-008 7.624584352219753E-008 7.915933766199814E-008 + 8.218416146966507E-008 8.532456902501679E-008 8.858497696158869E-008 9.196997067793130E-008 + 9.548431078624168E-008 9.913293980739396E-008 1.029209891217874E-007 1.068537861857837E-007 + 1.109368620238816E-007 1.151759590071643E-007 1.195770389289597E-007 1.241462913890631E-007 + 1.288901424983208E-007 1.338152639158065E-007 1.389285822313038E-007 1.442372887062860E-007 + 1.497488493870876E-007 1.554710156044937E-007 1.614118348745060E-007 1.675796622156168E-007 + 1.739831718985027E-007 1.806313696446562E-007 1.875336052911155E-007 1.946995859390933E-007 + 2.021393896049936E-007 2.098634793930166E-007 2.178827182092696E-007 2.262083840380813E-007 + 2.348521858019955E-007 2.438262798277419E-007 2.531432869413415E-007 2.628163102163724E-007 + 2.728589534003641E-007 2.832853400452144E-007 2.941101333685338E-007 3.053485568738438E-007 + 3.170164157586091E-007 3.291301191402158E-007 3.417067031311365E-007 3.547638547957259E-007 + 3.683199370223299E-007 3.823940143456710E-007 3.970058797558204E-007 4.121760825314421E-007 + 4.279259571364404E-007 4.442776532206374E-007 4.612541667666498E-007 4.788793724267603E-007 + 4.971780570952366E-007 5.161759547632972E-007 5.358997827057292E-007 5.563772790500030E-007 + 5.776372417807278E-007 5.997095692342608E-007 6.226253021403908E-007 6.464166672702099E-007 + 6.711171227515018E-007 6.967614051153765E-007 7.233855781402525E-007 7.510270835618642E-007 + 7.797247937205650E-007 8.095190662199071E-007 8.404518006733641E-007 8.725664976189179E-007 + 9.059083196843302E-007 9.405241550890782E-007 9.764626835721673E-007 1.013774444838521E-006 + 1.052511909620120E-006 1.092729553451758E-006 1.134483933265114E-006 1.177833766908745E-006 + 1.222840015705805E-006 1.269565970165443E-006 1.318077338968383E-006 1.368442341351711E-006 + 1.420731803022641E-006 1.475019255736121E-006 1.531381040676136E-006 1.589896415785986E-006 + 1.650647667198351E-006 1.713720224921686E-006 1.779202782945514E-006 1.847187423933341E-006 + 1.917769748678371E-006 1.991049010503934E-006 2.067128254797347E-006 2.146114463873344E-006 + 2.228118707370481E-006 2.313256298391825E-006 2.401646955609264E-006 2.493414971559076E-006 + 2.588689387365214E-006 2.687604174135693E-006 2.790298421286804E-006 2.896916532059753E-006 + 3.007608426504135E-006 3.122529752213518E-006 3.241842103108896E-006 3.365713246577303E-006 + 3.494317359284602E-006 3.627835271993379E-006 3.766454723729886E-006 3.910370625656790E-006 + 4.059785335022134E-006 4.214908939569300E-006 4.375959552806951E-006 4.543163620553729E-006 + 4.716756239187796E-006 4.896981486048060E-006 5.084092762450738E-006 5.278353149802629E-006 + 5.480035779311076E-006 5.689424215809188E-006 5.906812856235078E-006 6.132507343324329E-006 + 6.366824995095789E-006 6.610095250733721E-006 6.862660133491547E-006 7.124874731266651E-006 + 7.397107695520397E-006 7.679741759243016E-006 7.973174274690106E-006 8.277817771644678E-006 + 8.594100536987629E-006 8.922467216389641E-006 9.263379438967577E-006 9.617316465781917E-006 + 9.984775863083715E-006 1.036627420125527E-005 1.076234778042410E-005 1.117355338376703E-005 + 1.160046905956042E-005 1.204369493307235E-005 1.250385404943412E-005 1.298159324867260E-005 + 1.347758407412847E-005 1.399252371553359E-005 1.452713598806805E-005 1.508217234876809E-005 + 1.565841295170857E-005 1.625666774343667E-005 1.687777760019150E-005 1.752261550850087E-005 + 1.819208779080787E-005 1.888713537784298E-005 1.960873512952143E-005 2.035790120621496E-005 + 2.113568649231576E-005 2.194318407408393E-005 2.278152877384612E-005 2.365189874268960E-005 + 2.455551711387998E-005 2.549365371931340E-005 2.646762687140248E-005 2.747880521288705E-005 + 2.852860963715304E-005 2.961851528174462E-005 3.075005359785251E-005 3.192481449866969E-005 + 3.314444858961470E-005 3.441066948353530E-005 3.572525620412568E-005 3.709005568091038E-005 + 3.850698533927708E-005 3.997803578917128E-005 4.150527361620266E-005 4.309084427905609E-005 + 4.473697511724689E-005 4.644597847341160E-005 4.822025493448738E-005 5.006229669629347E-005 + 5.197469105620363E-005 5.396012403877174E-005 5.602138415935881E-005 5.816136633100043E-005 + 6.038307591994892E-005 6.268963295553522E-005 6.508427650020220E-005 6.757036918578698E-005 + 7.015140192235697E-005 7.283099878614140E-005 7.561292209335011E-005 7.850107766692340E-005 + 8.149952030352502E-005 8.461245944836552E-005 8.784426508572574E-005 9.119947385335237E-005 + 9.468279538920032E-005 9.829911891931537E-005 1.020535200959861E-004 1.059512680956295E-004 + 1.099978329862381E-004 1.141988933745809E-004 1.185603443437324E-004 1.230883056919059E-004 + 1.277891304839692E-004 1.326694139274615E-004 1.377360025853585E-004 1.429960039382992E-004 + 1.484567963094664E-004 1.541260391657934E-004 1.600116838097001E-004 1.661219844760717E-004 + 1.724655098497590E-004 1.790511550194413E-004 1.858881538842803E-004 1.929860920304190E-004 + 2.003549200949999E-004 2.080049676360426E-004 2.159469575272058E-004 2.241920208971500E-004 + 2.327517126339774E-004 2.416380274759546E-004 2.508634167105302E-004 2.604408055044755E-004 + 2.703836108887985E-004 2.807057604229931E-004 2.914217115640597E-004 3.025464717666905E-004 + 3.140956193419894E-004 3.260853251030792E-004 3.385323748270348E-004 3.514541925636282E-004 + 3.648688648225036E-004 3.787951656715732E-004 3.932525827805978E-004 4.082613444452005E-004 + 4.238424476278125E-004 4.400176870534115E-004 4.568096853992811E-004 4.742419246194474E-004 + 4.923387784459499E-004 5.111255461106107E-004 5.306284873325642E-004 5.508748586184599E-004 + 5.718929509239208E-004 5.937121287266340E-004 6.163628705632445E-004 6.398768110840983E-004 + 6.642867846818598E-004 6.896268707519856E-004 7.159324406451895E-004 7.432402063741101E-004 + 7.715882711386726E-004 8.010161817369179E-004 8.315649829304210E-004 8.632772738359441E-004 + 8.961972664174387E-004 9.303708461551663E-004 9.658456349714479E-004 1.002671056495261E-003 + 1.040898403750913E-003 1.080580909358917E-003 1.121773818340302E-003 1.164534463618815E-003 + 1.208922344318658E-003 1.254999206958927E-003 1.302829129649300E-003 1.352478609395188E-003 + 1.404016652624298E-003 1.457514869050308E-003 1.513047568993439E-003 1.570691864281687E-003 + 1.630527772860711E-003 1.692638327244720E-003 1.757109686945093E-003 1.824031255018233E-003 + 1.893495798878612E-003 1.965599575528026E-003 2.040442461357169E-003 2.118128086680385E-003 + 2.198763975170299E-003 2.282461688364006E-003 2.369336975418263E-003 2.459509928297126E-003 + 2.553105142580721E-003 2.650251884090757E-003 2.751084261533781E-003 2.855741405370082E-003 + 2.964367653122614E-003 3.077112741346609E-003 3.194132004488074E-003 3.315586580865741E-003 + 3.441643626018529E-003 3.572476533668185E-003 3.708265164553446E-003 3.849196083400923E-003 + 3.995462804304493E-003 4.147266044793861E-003 4.304813988880937E-003 4.468322559380289E-003 + 4.638015699809594E-003 4.814125666183285E-003 4.996893329022141E-003 5.186568485910471E-003 + 5.383410184940547E-003 5.587687059394475E-003 5.799677674021526E-003 6.019670883278916E-003 + 6.247966201913729E-003 6.484874188271859E-003 6.730716840731027E-003 6.985828007662807E-003 + 7.250553811339310E-003 7.525253086209427E-003 7.810297831978379E-003 8.106073681935210E-003 + 8.412980386980641E-003 8.731432315818140E-003 9.061858971780351E-003 9.404705526770514E-003 + 9.760433372809855E-003 1.012952069168781E-002 1.051246304322208E-002 1.090977397264331E-002 + 1.132198563762540E-002 1.174964945549176E-002 1.219333677113237E-002 1.265363954617404E-002 + 1.313117106995178E-002 1.362656669283233E-002 1.414048458244764E-002 1.467360650339676E-002 + 1.522663862097781E-002 1.580031232951436E-002 1.639538510583695E-002 1.701264138848415E-002 + 1.765289348318024E-002 1.831698249514578E-002 1.900577928879125E-002 1.972018547533388E-002 + 2.046113442887311E-002 2.122959233144368E-002 2.202655924755499E-002 2.285307022870917E-002 + 2.371019644836820E-002 2.459904636782449E-002 2.552076693339862E-002 2.647654480536406E-002 + 2.746760761896744E-002 2.849522527787296E-002 2.956071128032787E-002 3.066542407829414E-002 + 3.181076846974912E-002 3.299819702430341E-002 3.422921154222116E-002 3.550536454687237E-002 + 3.682826081056627E-002 3.819955891364585E-002 3.962097283663759E-002 4.109427358515492E-002 + 4.262129084716466E-002 4.420391468210761E-002 4.584409724125535E-002 4.754385451856163E-002 + 4.930526813112129E-002 5.113048712821961E-002 5.302172982778221E-002 5.498128567887785E-002 + 5.701151714874542E-002 5.911486163261222E-002 6.129383338437891E-002 6.355102546600966E-002 + 6.588911171323532E-002 6.831084871492926E-002 7.081907780322899E-002 7.341672705120930E-002 + 7.610681327458700E-002 7.889244403362171E-002 8.177681963103231E-002 8.476323510136655E-002 + 8.785508218689189E-002 9.105585129464107E-002 9.436913342882043E-002 9.779862209232948E-002 + 1.013481151506295E-001 1.050215166507152E-001 1.088228385873651E-001 1.127562026082939E-001 + 1.168258416492254E-001 1.210361014892487E-001 1.253914422161861E-001 1.298964395909671E-001 + 1.345557862992912E-001 1.393742930780936E-001 1.443568897035019E-001 1.495086258261685E-001 + 1.548346716389524E-001 1.603403183610330E-001 1.660309785215938E-001 1.719121860251984E-001 + 1.779895959800028E-001 1.842689842688394E-001 1.907562468421611E-001 1.974573987106614E-001 + 2.043785726142415E-001 2.115260173428098E-001 2.189060956831255E-001 2.265252819646971E-001 + 2.343901591764086E-001 2.425074156242604E-001 2.508838410992965E-001 2.595263225233934E-001 + 2.684418390392882E-001 2.776374565097999E-001 2.871203213898642E-001 2.968976539336435E-001 + 3.069767406975784E-001 3.173649262989892E-001 3.280696043884675E-001 3.390982077930785E-001 + 3.504581977862005E-001 3.621570524386290E-001 3.742022540045828E-001 3.866012752952125E-001 + 3.993615649913805E-001 4.124905318467665E-001 4.259955277316840E-001 4.398838294676850E-001 + 4.541626194026737E-001 4.688389646763071E-001 4.839197951256775E-001 4.994118797816738E-001 + 5.153218019073185E-001 5.316559325303668E-001 5.484204024239933E-001 5.656210724912534E-001 + 5.832635025112333E-001 6.013529182076809E-001 6.198941766040779E-001 6.388917296330252E-001 + 6.583495859722595E-001 6.782712710846065E-001 6.986597854451138E-001 7.195175609449661E-001 + 7.408464154692120E-001 7.626475056534815E-001 7.849212778338387E-001 8.076674172140698E-001 + 8.308847952855323E-001 8.545714155468662E-001 8.787243575839725E-001 9.033397195848533E-001 + 9.284125593795438E-001 9.539368341118541E-001 9.799053386676994E-001 1.006309643004027E+000 + 1.033140028542735E+000 1.060385423816043E+000 1.088033339572716E+000 1.116069803579188E+000 + 1.144479295375383E+000 1.173244681271984E+000 1.202347149904314E+000 1.231766148687243E+000 + 1.261479321546098E+000 1.291462448329978E+000 1.321689386345967E+000 1.352132014485864E+000 + 1.382760180450162E+000 1.413541651607776E+000 1.444442070063668E+000 1.475424912539667E+000 + 1.506451455706783E+000 1.537480747638857E+000 1.568469586087930E+000 1.599372504310366E+000 + 1.630141765198911E+000 1.660727364499626E+000 1.691077043912546E+000 1.721136314891154E+000 + 1.750848493967310E+000 1.780154750434172E+000 1.808994167220003E+000 1.837303815778689E+000 + 1.865018845808513E+000 1.892072590587833E+000 1.918396688683994E+000 1.943921222749663E+000 + 1.968574876067324E+000 1.992285107437669E+000 2.014978344929993E+000 2.036580198921557E+000 + 2.057015694748073E+000 2.076209525167643E+000 2.094086322705807E+000 2.110570951799111E+000 + 2.125588820488445E+000 2.139066211231726E+000 2.150930630207860E+000 2.161111174271158E+000 + 2.169538914487912E+000 2.176147294945427E+000 2.180872545270055E+000 2.183654105025781E+000 + 2.184435057890940E+000 2.183162573229767E+000 2.179788352390494E+000 2.174269076775698E+000 + 2.166566854447078E+000 2.156649661749805E+000 2.144491776175309E+000 2.130074196430773E+000 + 2.113385045453702E+000 2.094419951906241E+000 2.073182405512282E+000 2.049684081466587E+000 + 2.023945129055714E+000 1.995994419590984E+000 1.965869748770932E+000 1.933617988669949E+000 + 1.899295184697000E+000 1.862966593088715E+000 1.824706654798586E+000 1.784598902023092E+000 + 1.742735794068006E+000 1.699218479805829E+000 1.654156484608589E+000 1.607667320356725E+000 + 1.559876017922443E+000 1.510914582398587E+000 1.460921372285238E+000 1.410040404846851E+000 + 1.358420590900478E+000 1.306214903378456E+000 1.253579485109652E+000 1.200672702365297E+000 + 1.147654151799069E+000 1.094683629454252E+000 1.041920071492670E+000 9.895204771959297E-001 + 9.376388255762654E-001 8.864249975886869E-001 8.360237164339679E-001 7.865735187636839E-001 + 7.382057697225346E-001 6.910437346743351E-001 6.452017201427309E-001 6.007842959462372E-001 + 5.578856097167424E-001 5.165888039611327E-001 4.769655445650611E-001 4.390756681594734E-001 + 4.029669540932602E-001 3.686750249065440E-001 3.362233772096188E-001 3.056235427811042E-001 + 2.768753775481358E-001 2.499674739477842E-001 2.248776900431832E-001 2.015737867306303E-001 + 1.800141624774253E-001 1.601486733245640E-001 1.419195244201900E-001 1.252622181617712E-001 + 1.101065431524127E-001 9.637758764757738E-002 8.399676100129809E-002 7.288280682351242E-002 + 6.295279213018998E-002 5.412305769086229E-002 4.631011602920181E-002 3.943148507557901E-002 + 3.340644726070262E-002 2.815672582348539E-002 2.360707222436795E-002 1.968576074407512E-002 + 1.632498854175195E-002 1.346118158102346E-002 1.103520884649774E-002 8.992509110742723E-003 + 7.283136124884827E-003 5.861729456186774E-003 4.687419255603150E-003 3.723673991496438E-003 + 2.938100628394032E-003 2.302206869625421E-003 1.791134938451122E-003 1.383375971957114E-003 + 1.060473481452693E-003 8.067235339868276E-004 6.088783770743294E-004 4.558592092118435E-004 + 3.384827377370435E-004 2.492051055778290E-004 1.818857473284128E-004 1.315727848036008E-004 + 9.431071783542207E-005 6.697042538186872E-005 4.710087553363402E-005 3.280145436914102E-005 + 2.261346031822888E-005 1.542906509120544E-005 1.041590264638071E-005 6.955399651479157E-006 + 4.592988399449915E-006 2.998429644689491E-006 1.934602284950046E-006 1.233274421957247E-006 + 7.765430796542704E-007 4.828068685192712E-007 2.963085624914519E-007 1.794465588084408E-007 + 1.072012677597675E-007 6.315220825936522E-008 3.667306221330532E-008 2.098544149557784E-008 + 1.182877147267018E-008 6.565169896419569E-009 3.586469138888046E-009 1.927652420256533E-009 + 1.018948294473140E-009 5.294855572201259E-010 2.703626956902454E-010 1.355930609144997E-010 + 6.676190203906513E-011 3.225655404815736E-011 1.528613312806991E-011 7.101577217576324E-012 + 3.232743289069066E-012 1.441195999655181E-012 6.288988929755065E-013 2.684783596798289E-013 + 1.120642730882942E-013 4.570957309585348E-014 1.820856168460023E-014 7.079662969388703E-015 + 2.685043853119871E-015 9.927015151319443E-016 3.575478836993590E-016 1.253748980553110E-016 + 4.277137199804593E-017 1.418599728554460E-017 4.571101999490379E-018 1.429942935079141E-018 + 4.339379372168726E-019 1.276479297388510E-019 3.636929162986650E-020 1.002858879076976E-020 + 2.674045783358953E-021 6.888947802199280E-022 1.713222055425330E-022 4.109256166625883E-023 + 9.497380539815817E-024 2.113137364279920E-024 4.521856347249380E-025 9.296987090656557E-026 + 1.834697918542044E-026 3.471627293289024E-027 6.291956447316637E-028 1.091059949175055E-028 + 1.808156523765630E-029 2.860551996557478E-030 4.314985974699659E-031 6.198705787485663E-032 + 8.469891976073840E-033 1.099409435089564E-033 1.353883768096018E-034 1.579664802035572E-035 + 1.743880793171811E-036 1.818982727822241E-037 1.790096804413985E-038 1.659667400125774E-039 + 1.447459650840511E-040 1.185660570857860E-041 9.107379403791303E-043 6.549359064187460E-044 + 4.402017652942290E-045 2.760637012434199E-046 1.612536339811080E-047 8.757320326569862E-049 + 4.413605881921041E-050 2.060417572301071E-051 8.892304487844936E-053 3.540849585347938E-054 + 1.298223713767979E-055 4.373538246824303E-057 1.350912129774124E-058 3.817490350201204E-060 + 9.847074156206889E-062 2.313192937829854E-063 4.937003995166190E-065 9.550093418888066E-067 + 1.670179452140903E-068 2.634034832618124E-070 3.736338162154497E-072 4.754137880515742E-074 + 5.411322978161949E-076 5.494347532181014E-078 4.961964730528021E-080 3.974002959711526E-082 + 2.813967987287492E-084 1.756194566690728E-086 9.629425973461713E-089 4.623587712151763E-091 + 1.937534043869129E-093 7.061789775864033E-096 2.230700225345409E-098 6.084929690729218E-101 + 1.428055104597717E-103 2.872471355576355E-106 4.932785303388246E-109 7.203042713210384E-112 + 8.907268210740552E-115 9.288598722134799E-118 8.133156082112128E-121 5.953192291157344E-124 + 3.626207386540546E-127 1.829563319471423E-130 7.609626701302027E-134 2.596432026637023E-137 + 7.231212112234074E-141 1.635435832386018E-144 2.987826657439761E-148 4.385610343307988E-152 + 5.143411963364554E-156 4.792390056557515E-160 3.526980740413945E-164 2.038029978001329E-168 + 9.189997855163005E-173 3.213594750687376E-177 8.658489581168585E-182 1.785674110177280E-186 + 2.799835026999403E-191 3.314512076069249E-196 2.941535923028689E-201 1.942801131742796E-206 + 9.478382713589715E-212 3.389703200785931E-217 8.816499400776338E-223 1.654386071504565E-228 + 2.221233392824956E-234 2.115864107484459E-240 1.417568425188868E-246 6.620547074717091E-253 + 2.135847643186027E-259 4.715261024506088E-266 7.055533357485022E-273 7.085436161101190E-280 + 4.727501767594538E-287 2.074101156359361E-294 5.920416300664874E-302 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + + 2.015274358376310E-009 2.066291271629170E-009 2.118599684188827E-009 2.172232290515832E-009 + 2.227222612734959E-009 2.283605021587595E-009 2.341414757914590E-009 2.400687954682922E-009 + 2.461461659569977E-009 2.523773858119569E-009 2.587663497484117E-009 2.653170510767895E-009 + 2.720335841986519E-009 2.789201471658295E-009 2.859810443043410E-009 2.932206889047359E-009 + 3.006436059805450E-009 3.082544350965625E-009 3.160579332687230E-009 3.240589779373939E-009 + 3.322625700159307E-009 3.406738370164144E-009 3.492980362545104E-009 3.581405581354632E-009 + 3.672069295232767E-009 3.765028171951805E-009 3.860340313835528E-009 3.958065294075039E-009 + 4.058264193963938E-009 4.160999641076140E-009 4.266335848410125E-009 4.374338654524151E-009 + 4.485075564687516E-009 4.598615793073515E-009 4.715030306020601E-009 4.834391866388602E-009 + 4.956775079037911E-009 5.082256437459927E-009 5.210914371587993E-009 5.342829296818677E-009 + 5.478083664273955E-009 5.616762012335891E-009 5.758951019485860E-009 5.904739558481411E-009 + 6.054218751904673E-009 6.207482029116878E-009 6.364625184654784E-009 6.525746438105368E-009 + 6.690946495496256E-009 6.860328612240312E-009 7.033998657673560E-009 7.212065181227010E-009 + 7.394639480273573E-009 7.581835669692528E-009 7.773770753195076E-009 7.970564696455401E-009 + 8.172340502093184E-009 8.379224286554165E-009 8.591345358937107E-009 8.808836301816168E-009 + 9.031833054109266E-009 9.260474996044392E-009 9.494905036276743E-009 9.735269701211289E-009 + 9.981719226586603E-009 1.023440765137698E-008 1.049349291407187E-008 1.075913695139255E-008 + 1.103150579950786E-008 1.131076969781224E-008 1.159710319533077E-008 1.189068525981811E-008 + 1.219169938961912E-008 1.250033372836125E-008 1.281678118255057E-008 1.314123954214441E-008 + 1.347391160417665E-008 1.381500529951243E-008 1.416473382281167E-008 1.452331576578277E-008 + 1.489097525380936E-008 1.526794208603610E-008 1.565445187900055E-008 1.605074621390116E-008 + 1.645707278759347E-008 1.687368556740855E-008 1.730084494989092E-008 1.773881792355488E-008 + 1.818787823576089E-008 1.864830656381681E-008 1.912039069041001E-008 1.960442568348118E-008 + 2.010071408065127E-008 2.060956607831727E-008 2.113129972553524E-008 2.166624112281108E-008 + 2.221472462592408E-008 2.277709305491013E-008 2.335369790833527E-008 2.394489958299394E-008 + 2.455106759916846E-008 2.517258083159134E-008 2.580982774625422E-008 2.646320664321178E-008 + 2.713312590553228E-008 2.782000425455009E-008 2.852427101158021E-008 2.924636636625804E-008 + 2.998674165167213E-008 3.074585962646225E-008 3.152419476405816E-008 3.232223354924127E-008 + 3.314047478221326E-008 3.397942989036234E-008 3.483962324792229E-008 3.572159250372292E-008 + 3.662588891723840E-008 3.755307770314209E-008 3.850373838458419E-008 3.947846515541257E-008 + 4.047786725156304E-008 4.150256933185163E-008 4.255321186840669E-008 4.363045154698454E-008 + 4.473496167741988E-008 4.586743261446557E-008 4.702857218928726E-008 4.821910615188061E-008 + 4.943977862468855E-008 5.069135256770219E-008 5.197461025533514E-008 5.329035376537076E-008 + 5.463940548028652E-008 5.602260860126962E-008 5.744082767524563E-008 5.889494913524762E-008 + 6.038588185446587E-008 6.191455771432300E-008 6.348193218693009E-008 6.508898493228777E-008 + 6.673672041060514E-008 6.842616851012019E-008 7.015838519081324E-008 7.193445314441580E-008 + 7.375548247112886E-008 7.562261137347016E-008 7.753700686768848E-008 7.949986551318639E-008 + 8.151241416040803E-008 8.357591071766151E-008 8.569164493735087E-008 8.786093922211390E-008 + 9.008514945136641E-008 9.236566582877023E-008 9.470391375115636E-008 9.710135469944301E-008 + 9.955948715210871E-008 1.020798475217902E-007 1.046640111155890E-007 1.073135931196908E-007 + 1.100302496089067E-007 1.128156785817755E-007 1.156716210218661E-007 1.185998619859490E-007 + 1.216022317197151E-007 1.246806068017358E-007 1.278369113163884E-007 1.310731180564680E-007 + 1.343912497562479E-007 1.377933803557541E-007 1.412816362970424E-007 1.448581978532962E-007 + 1.485253004915648E-007 1.522852362700031E-007 1.561403552704828E-007 1.600930670674662E-007 + 1.641458422340714E-007 1.683012138862567E-007 1.725617792661007E-007 1.769302013651633E-007 + 1.814092105889369E-007 1.860016064634423E-007 1.907102593850190E-007 1.955381124144156E-007 + 2.004881831162982E-007 2.055635654453225E-007 2.107674316799575E-007 2.161030344052588E-007 + 2.215737085458388E-007 2.271828734503030E-007 2.329340350284482E-007 2.388307879425725E-007 + 2.448768178542510E-007 2.510759037279926E-007 2.574319201932155E-007 2.639488399660089E-007 + 2.706307363322139E-007 2.774817856933508E-007 2.845062701770062E-007 2.917085803132996E-007 + 2.990932177790998E-007 3.066647982117225E-007 3.144280540938443E-007 3.223878377114572E-007 + 3.305491241867030E-007 3.389170145874757E-007 3.474967391157596E-007 3.562936603766631E-007 + 3.653132767302203E-007 3.745612257280409E-007 3.840432876369517E-007 3.937653890518546E-007 + 4.037336066000278E-007 4.139541707392118E-007 4.244334696518445E-007 4.351780532378685E-007 + 4.461946372086335E-007 4.574901072844194E-007 4.690715234982298E-007 4.809461246085373E-007 + 4.931213326237246E-007 5.056047574410836E-007 5.184042016032296E-007 5.315276651749368E-007 + 5.449833507434325E-007 5.587796685452568E-007 5.729252417229391E-007 5.874289117147158E-007 + 6.022997437807082E-007 6.175470326689954E-007 6.331803084251076E-007 6.492093423486131E-007 + 6.656441531004714E-007 6.824950129650079E-007 6.997724542704125E-007 7.174872759717552E-007 + 7.356505504006812E-007 7.542736301859445E-007 7.733681553491497E-007 7.929460605801302E-007 + 8.130195826964749E-007 8.336012682919322E-007 8.547039815783952E-007 8.763409124264324E-007 + 8.985255846093552E-007 9.212718642559792E-007 9.445939685173799E-007 9.685064744530342E-007 + 9.930243281419200E-007 1.018162854024267E-006 1.043937764479786E-006 1.070365169648375E-006 + 1.097461587499436E-006 1.125243954156095E-006 1.153729634480783E-006 1.182936432928783E-006 + 1.212882604676544E-006 1.243586867031696E-006 1.275068411131919E-006 1.307346913939963E-006 + 1.340442550542326E-006 1.374376006759264E-006 1.409168492074024E-006 1.444841752889394E-006 + 1.481418086119821E-006 1.518920353127619E-006 1.557371994011986E-006 1.596797042259716E-006 + 1.637220139766819E-006 1.678666552240407E-006 1.721162184990456E-006 1.764733599121367E-006 + 1.809408028133386E-006 1.855213394944299E-006 1.902178329342040E-006 1.950332185879079E-006 + 1.999705062219837E-006 2.050327817952537E-006 2.102232093877290E-006 2.155450331782453E-006 + 2.210015794721603E-006 2.265962587803858E-006 2.323325679510454E-006 2.382140923550983E-006 + 2.442445081272904E-006 2.504275844638332E-006 2.567671859782515E-006 2.632672751168641E-006 + 2.699319146354156E-006 2.767652701384021E-006 2.837716126826781E-006 2.909553214469765E-006 + 2.983208864690011E-006 3.058729114518129E-006 3.136161166412580E-006 3.215553417762332E-006 + 3.296955491136430E-006 3.380418265299249E-006 3.465993907010939E-006 3.553735903632891E-006 + 3.643699096558543E-006 3.735939715490541E-006 3.830515413585551E-006 3.927485303488799E-006 + 4.026909994280784E-006 4.128851629359257E-006 4.233373925280238E-006 4.340542211582185E-006 + 4.450423471618341E-006 4.563086384422753E-006 4.678601367636038E-006 4.797040621517870E-006 + 4.918478174073544E-006 5.042989927322954E-006 5.170653704740813E-006 5.301549299897787E-006 + 5.435758526332969E-006 5.573365268688823E-006 5.714455535140596E-006 5.859117511152920E-006 + 6.007441614597235E-006 6.159520552264487E-006 6.315449377808371E-006 6.475325551155362E-006 + 6.639248999418695E-006 6.807322179354350E-006 6.979650141397938E-006 7.156340595322786E-006 + 7.337503977559967E-006 7.523253520222559E-006 7.713705321877169E-006 7.908978420106893E-006 + 8.109194865911276E-006 8.314479799989494E-006 8.524961530954616E-006 8.740771615527877E-006 + 8.962044940762744E-006 9.188919808350612E-006 9.421538021060487E-006 9.660044971366804E-006 + 9.904589732320823E-006 1.015532515072213E-005 1.041240794264883E-005 1.067599879140593E-005 + 1.094626244795302E-005 1.122336783387437E-005 1.150748814695527E-005 1.179880096943111E-005 + 1.209748837897655E-005 1.240373706250410E-005 1.271773843284354E-005 1.303968874837466E-005 + 1.336978923568837E-005 1.370824621535285E-005 1.405527123086313E-005 1.441108118085483E-005 + 1.477589845466464E-005 1.514995107132214E-005 1.553347282206015E-005 1.592670341643216E-005 + 1.632988863212869E-005 1.674328046858559E-005 1.716713730448086E-005 1.760172405921804E-005 + 1.804731235849713E-005 1.850418070407667E-005 1.897261464783269E-005 1.945290697022366E-005 + 1.994535786327290E-005 2.045027511818246E-005 2.096797431769618E-005 2.149877903333155E-005 + 2.204302102760424E-005 2.260104046137117E-005 2.317318610642175E-005 2.375981556345053E-005 + 2.436129548554656E-005 2.497800180734022E-005 2.561031997994967E-005 2.625864521187437E-005 + 2.692338271598607E-005 2.760494796277097E-005 2.830376693998227E-005 2.902027641886456E-005 + 2.975492422711662E-005 3.050816952876311E-005 3.128048311111040E-005 3.207234767896468E-005 + 3.288425815629774E-005 3.371672199554739E-005 3.457025949474683E-005 3.544540412268042E-005 + 3.634270285226908E-005 3.726271650239380E-005 3.820602008837055E-005 3.917320318129577E-005 + 4.016487027648668E-005 4.118164117124619E-005 4.222415135218933E-005 4.329305239237235E-005 + 4.438901235847251E-005 4.551271622827369E-005 4.666486631871718E-005 4.784618272478652E-005 + 4.905740376949925E-005 5.029928646528755E-005 5.157260698705521E-005 5.287816115720647E-005 + 5.421676494295024E-005 5.558925496618942E-005 5.699648902631400E-005 5.843934663622529E-005 + 5.991872957192388E-005 6.143556243600703E-005 6.299079323542539E-005 6.458539397386074E-005 + 6.622036125909481E-005 6.789671692574696E-005 6.961550867377165E-005 7.137781072311245E-005 + 7.318472448492242E-005 7.503737924976941E-005 7.693693289325610E-005 7.888457259949480E-005 + 8.088151560288942E-005 8.292900994868676E-005 8.502833527277338E-005 8.718080360120175E-005 + 8.938776016994811E-005 9.165058426541176E-005 9.397069008618047E-005 9.634952762660072E-005 + 9.878858358270224E-005 1.012893822810448E-004 1.038534866310646E-004 1.064824991015153E-004 + 1.091780627216144E-004 1.119418621075153E-004 1.147756245147512E-004 1.176811209173031E-004 + 1.206601671139663E-004 1.237146248627069E-004 1.268464030437129E-004 1.300574588518683E-004 + 1.333497990193929E-004 1.367254810694086E-004 1.401866146012187E-004 1.437353626080936E-004 + 1.473739428283945E-004 1.511046291308688E-004 1.549297529349867E-004 1.588517046672029E-004 + 1.628729352540475E-004 1.669959576529839E-004 1.712233484219819E-004 1.755577493287875E-004 + 1.800018690008903E-004 1.845584846172186E-004 1.892304436426148E-004 1.940206656061731E-004 + 1.989321439245462E-004 2.039679477713592E-004 2.091312239938903E-004 2.144251990782190E-004 + 2.198531811640601E-004 2.254185621105404E-004 2.311248196142063E-004 2.369755193805766E-004 + 2.429743173505964E-004 2.491249619833773E-004 2.554312965966435E-004 2.618972617663431E-004 + 2.685268977869120E-004 2.753243471937315E-004 2.822938573493387E-004 2.894397830950035E-004 + 2.967665894693258E-004 3.042788544955319E-004 3.119812720392154E-004 3.198786547382966E-004 + 3.279759370070144E-004 3.362781781158327E-004 3.447905653491575E-004 3.535184172428453E-004 + 3.624671869035009E-004 3.716424654116348E-004 3.810499853107923E-004 3.906956241848144E-004 + 4.005854083254682E-004 4.107255164927052E-004 4.211222837698955E-004 4.317822055164287E-004 + 4.427119414201219E-004 4.539183196519701E-004 4.654083411257994E-004 4.771891838654729E-004 + 4.892682074823569E-004 5.016529577658165E-004 5.143511713895993E-004 5.273707807370119E-004 + 5.407199188478817E-004 5.544069244903784E-004 5.684403473608129E-004 5.828289534146649E-004 + 5.975817303321092E-004 6.127078931214439E-004 6.282168898638790E-004 6.441184076032361E-004 + 6.604223783842066E-004 6.771389854429043E-004 6.942786695535251E-004 7.118521355350561E-004 + 7.298703589220272E-004 7.483445928034483E-004 7.672863748341420E-004 7.867075344227965E-004 + 8.066202001011875E-004 8.270368070790869E-004 8.479701049895459E-004 8.694331658293101E-004 + 8.914393920992535E-004 9.140025251498652E-004 9.371366537368928E-004 9.608562227924456E-004 + 9.851760424169262E-004 1.010111297097323E-003 1.035677555157548E-003 1.061890778446593E-003 + 1.088767332270483E-003 1.116323995574107E-003 1.144577971379181E-003 1.173546897484740E-003 + 1.203248857436703E-003 1.233702391773267E-003 1.264926509552980E-003 1.296940700172562E-003 + 1.329764945481710E-003 1.363419732202268E-003 1.397926064659376E-003 1.433305477832363E-003 + 1.469580050733335E-003 1.506772420121641E-003 1.544905794562536E-003 1.584003968838654E-003 + 1.624091338723027E-003 1.665192916122636E-003 1.707334344601728E-003 1.750541915294274E-003 + 1.794842583215289E-003 1.840263983980852E-003 1.886834450946992E-003 1.934583032777809E-003 + 1.983539511453424E-003 2.033734420728712E-003 2.085199065053908E-003 2.137965538968518E-003 + 2.192066746980249E-003 2.247536423940889E-003 2.304409155931440E-003 2.362720401669028E-003 + 2.422506514448460E-003 2.483804764631600E-003 2.546653362697992E-003 2.611091482870591E-003 + 2.677159287330697E-003 2.744897951036533E-003 2.814349687160330E-003 2.885557773158989E-003 + 2.958566577493912E-003 3.033421587015848E-003 3.110169435030974E-003 3.188857930064930E-003 + 3.269536085341703E-003 3.352254148994910E-003 3.437063635029239E-003 3.524017355050273E-003 + 3.613169450781457E-003 3.704575427387140E-003 3.798292187621438E-003 3.894378066822723E-003 + 3.992892868774301E-003 4.093897902452188E-003 4.197456019681266E-003 4.303631653721877E-003 + 4.412490858809100E-003 4.524101350667651E-003 4.638532548025846E-003 4.755855615152402E-003 + 4.876143505440794E-003 4.999471006065940E-003 5.125914783738899E-003 5.255553431585778E-003 + 5.388467517177351E-003 5.524739631736936E-003 5.664454440554262E-003 5.807698734633875E-003 + 5.954561483607307E-003 6.105133889938505E-003 6.259509444453217E-003 6.417783983223189E-003 + 6.580055745836889E-003 6.746425435089244E-003 6.916996278123238E-003 7.091874089057339E-003 + 7.271167333133038E-003 7.454987192417737E-003 7.643447633098844E-003 7.836665474405586E-003 + 8.034760459196075E-003 8.237855326247557E-003 8.446075884288725E-003 8.659551087813846E-003 + 8.878413114718825E-003 9.102797445800665E-003 9.332842946162163E-003 9.568691948564528E-003 + 9.810490338771710E-003 1.005838764293050E-002 1.031253711703199E-002 1.057309583850004E-002 + 1.084022479995389E-002 1.111408900519241E-002 1.139485756744857E-002 1.168270380996344E-002 + 1.197780536893011E-002 1.228034429885804E-002 1.259050718041053E-002 1.290848523076704E-002 + 1.323447441656465E-002 1.356867556947274E-002 1.391129450445593E-002 1.426254214078173E-002 + 1.462263462582894E-002 1.499179346175536E-002 1.537024563508243E-002 1.575822374925631E-002 + 1.615596616024552E-002 1.656371711523508E-002 1.698172689447943E-002 1.741025195637562E-002 + 1.784955508581971E-002 1.829990554590983E-002 1.876157923305946E-002 1.923485883558654E-002 + 1.972003399584238E-002 2.021740147594629E-002 2.072726532719307E-002 2.124993706319793E-002 + 2.178573583684761E-002 2.233498862112359E-002 2.289803039386477E-002 2.347520432653866E-002 + 2.406686197708620E-002 2.467336348691065E-002 2.529507778207592E-002 2.593238277878279E-002 + 2.658566559319085E-002 2.725532275565119E-002 2.794176042941855E-002 2.864539463390684E-002 + 2.936665147255381E-002 3.010596736536032E-002 3.086378928616500E-002 3.164057500471965E-002 + 3.243679333362345E-002 3.325292438017682E-002 3.408945980321362E-002 3.494690307496490E-002 + 3.582576974801163E-002 3.672658772737523E-002 3.764989754779593E-002 3.859625265624710E-002 + 3.956621969972543E-002 4.056037881836112E-002 4.157932394388166E-002 4.262366310346242E-002 + 4.369401872899486E-002 4.479102797179228E-002 4.591534302275621E-002 4.706763143801389E-002 + 4.824857647003622E-002 4.945887740423889E-002 5.069924990105910E-002 5.197042634349956E-002 + 5.327315619011712E-002 5.460820633342942E-002 5.597636146370534E-002 5.737842443808890E-002 + 5.881521665500700E-002 6.028757843378952E-002 6.179636939942706E-002 6.334246887237818E-002 + 6.492677626332005E-002 6.655021147273163E-002 6.821371529517535E-002 6.991824982813349E-002 + 7.166479888523969E-002 7.345436841372192E-002 7.528798691586606E-002 7.716670587427898E-002 + 7.909160018071561E-002 8.106376856821541E-002 8.308433404626001E-002 8.515444433865549E-002 + 8.727527232380101E-002 8.944801647699001E-002 9.167390131435997E-002 9.395417783806853E-002 + 9.629012398225693E-002 9.868304505931309E-002 1.011342742059216E-001 1.036451728283512E-001 + 1.062171310463813E-001 1.088515681352449E-001 1.115499329649047E-001 1.143137044359460E-001 + 1.171443919113247E-001 1.200435356431405E-001 1.230127071935826E-001 1.260535098491106E-001 + 1.291675790268965E-001 1.323565826724892E-001 1.356222216475879E-001 1.389662301067678E-001 + 1.423903758619073E-001 1.458964607330110E-001 1.494863208840461E-001 1.531618271423154E-001 + 1.569248852998328E-001 1.607774363950564E-001 1.647214569732576E-001 1.687589593237176E-001 + 1.728919916918183E-001 1.771226384640303E-001 1.814530203236583E-001 1.858852943751156E-001 + 1.904216542343863E-001 1.950643300831889E-001 1.998155886842691E-001 2.046777333550840E-001 + 2.096531038970246E-001 2.147440764771935E-001 2.199530634595777E-001 2.252825131823501E-001 + 2.307349096778405E-001 2.363127723315772E-001 2.420186554766423E-001 2.478551479193804E-001 + 2.538248723923720E-001 2.599304849303529E-001 2.661746741646074E-001 2.725601605311672E-001 + 2.790896953879215E-001 2.857660600355915E-001 2.925920646372605E-001 2.995705470309745E-001 + 3.067043714297060E-001 3.139964270027240E-001 3.214496263322323E-001 3.290669037388576E-001 + 3.368512134693694E-001 3.448055277397741E-001 3.529328346266465E-001 3.612361357993817E-001 + 3.697184440857413E-001 3.783827808628598E-001 3.872321732656344E-001 3.962696512041277E-001 + 4.054982441814386E-001 4.149209779031758E-001 4.245408706694997E-001 4.343609295404068E-001 + 4.443841462647227E-001 4.546134929630730E-001 4.650519175548154E-001 4.757023389188040E-001 + 4.865676417775853E-001 4.976506712944830E-001 5.089542273728921E-001 5.204810586468863E-001 + 5.322338561522146E-001 5.442152466665773E-001 5.564277857080570E-001 5.688739501805404E-001 + 5.815561306548959E-001 5.944766232747986E-001 6.076376212760702E-001 6.210412061085728E-001 + 6.346893381498582E-001 6.485838469999425E-001 6.627264213469273E-001 6.771185983934528E-001 + 6.917617528344255E-001 7.066570853769563E-001 7.218056107939333E-001 7.372081455034332E-001 + 7.528652946667874E-001 7.687774387990565E-001 7.849447198866240E-001 8.013670270076074E-001 + 8.180439814521125E-001 8.349749213405594E-001 8.521588857398648E-001 8.695945982788726E-001 + 8.872804502661428E-001 9.052144833152624E-001 9.233943714848508E-001 9.418174029428230E-001 + 9.604804611669715E-001 9.793800056965680E-001 9.985120524527369E-001 1.017872153648372E+000 + 1.037455377311840E+000 1.057256286452341E+000 1.077268917898582E+000 1.097486760846717E+000 + 1.117902735157734E+000 1.138509169449278E+000 1.159297779031833E+000 1.180259643744332E+000 + 1.201385185749961E+000 1.222664147358580E+000 1.244085568948369E+000 1.265637767065752E+000 + 1.287308312789185E+000 1.309084010449540E+000 1.330950876806884E+000 1.352894120791040E+000 + 1.374898123921038E+000 1.396946421526446E+000 1.419021684901859E+000 1.441105704534008E+000 + 1.463179374549544E+000 1.485222678540098E+000 1.507214676929798E+000 1.529133496059211E+000 + 1.550956319168163E+000 1.572659379468488E+000 1.594217955506106E+000 1.615606369019859E+000 + 1.636797985512396E+000 1.657765217755648E+000 1.678479532460320E+000 1.698911460345012E+000 + 1.719030609845918E+000 1.738805684712740E+000 1.758204505739858E+000 1.777194036884202E+000 + 1.795740416022366E+000 1.813808990598919E+000 1.831364358415912E+000 1.848370413809521E+000 + 1.864790399453823E+000 1.880586964023545E+000 1.895722225936921E+000 1.910157843386653E+000 + 1.923855090850810E+000 1.936774942256481E+000 1.948878160946656E+000 1.960125396575005E+000 + 1.970477289023981E+000 1.979894579408395E+000 1.988338228189603E+000 1.995769540384243E+000 + 2.002150297805990E+000 2.007442898229233E+000 2.011610501309338E+000 2.014617181035911E+000 + 2.016428084432562E+000 2.017009596149669E+000 2.016329508525437E+000 2.014357196615418E+000 + 2.011063797611822E+000 2.006422393991840E+000 2.000408199649113E+000 1.992998748175056E+000 + 1.984174082367510E+000 1.973916943953860E+000 1.962212962425176E+000 1.949050841788012E+000 + 1.934422543952151E+000 1.918323467387173E+000 1.900752619599211E+000 1.881712781903217E+000 + 1.861210664896841E+000 1.839257052981073E+000 1.815866936221988E+000 1.791059627808630E+000 + 1.764858865336188E+000 1.737292894133103E+000 1.708394530856755E+000 1.678201205607584E+000 + 1.646754980856669E+000 1.614102545549194E+000 1.580295182837186E+000 1.545388710010429E+000 + 1.509443389336317E+000 1.472523808687758E+000 1.434698731034039E+000 1.396040912093214E+000 + 1.356626885695051E+000 1.316536716681443E+000 1.275853721474054E+000 1.234664156766017E+000 + 1.193056877143280E+000 1.151122962808287E+000 1.108955318961568E+000 1.066648248790411E+000 + 1.024297002413833E+000 9.819973045343617E-001 9.398448639428637E-001 8.979348684075695E-001 + 8.563614688443835E-001 8.152172570059215E-001 7.745927412339710E-001 7.345758250857214E-001 + 6.952512938616978E-001 6.567003142241352E-001 6.189999521922662E-001 5.822227148290221E-001 + 5.464361208855938E-001 5.117023055425201E-001 4.780776641737670E-001 4.456125397623303E-001 + 4.143509582115172E-001 3.843304153260649E-001 3.555817186856037E-001 3.281288870040213E-001 + 3.019891088697514E-001 2.771727620032458E-001 2.536834933596232E-001 2.315183595607564E-001 + 2.106680262759576E-001 1.911170243007216E-001 1.728440592261345E-001 1.558223707653159E-001 + 1.400201370266871E-001 1.254009183145841E-001 1.119241344136704E-001 9.954556879092692E-002 + 8.821789274181452E-002 7.789120222809803E-002 6.851356001251328E-002 6.003153569627623E-002 + 5.239073641169634E-002 4.553632121227617E-002 3.941349263155252E-002 3.396795943998737E-002 + 2.914636530353197E-002 2.489667882147275E-002 2.116854127512846E-002 1.791356933099741E-002 + 1.508561088803476E-002 1.264095321410853E-002 1.053848345626688E-002 8.739802508825559E-003 + 7.209294059711668E-003 5.914151388386728E-003 4.824365140642183E-003 3.912675842817561E-003 + 3.154495330853158E-003 2.527801552821239E-003 2.013011356364627E-003 1.592835898438598E-003 + 1.252123221603972E-003 9.776923402022510E-004 7.581628854620074E-004 5.837839876312157E-004 + 4.462656438310305E-004 3.386153513845580E-004 2.549822966469450E-004 1.905108967076193E-004 + 1.412050120051540E-004 1.038036960041857E-004 7.566893517974318E-005 5.468546737125903E-005 + 3.917245493436051E-005 2.780653401298026E-005 1.955556301271644E-005 1.362224997950753E-005 + 9.396746141531545E-006 6.417245938686317E-006 4.337626011228777E-006 2.901179863746378E-006 + 1.919554151569413E-006 1.256059882947495E-006 8.126109564192909E-007 5.196277752516071E-007 + 3.283305042975481E-007 2.049311125681105E-007 1.263128740402529E-007 7.685856076255539E-008 + 4.615302273642566E-008 2.734173674718589E-008 1.597427615924437E-008 9.200951679580847E-009 + 5.222810230176141E-009 2.920620822342786E-009 1.608351544527935E-009 8.718723953154686E-010 + 4.650696710352114E-010 2.440050832003609E-010 1.258675050972938E-010 6.380809732281623E-011 + 3.177563161443023E-011 1.553720088698210E-011 7.456080093492354E-012 3.509954262835238E-012 + 1.620071405373075E-012 7.328110525669190E-013 3.246780162311091E-013 1.408280012970089E-013 + 5.976774643977752E-014 2.480544615040051E-014 1.006199279955313E-014 3.986814657073095E-015 + 1.542109061853703E-015 5.819511251050604E-016 2.141257993576005E-016 7.676873037814722E-017 + 2.680077584112275E-017 9.104698579176224E-018 3.007731915824930E-018 9.655184519749447E-019 + 3.009641088725910E-019 9.102869279643854E-020 2.669438906335037E-020 7.584028722820172E-021 + 2.085786618234786E-021 5.548460655235621E-022 1.426400985119696E-022 3.540802658723797E-023 + 8.479451688702625E-024 1.957244166599647E-024 4.350394845363444E-025 9.302587632854161E-026 + 1.911810220211373E-026 3.772379880169113E-027 7.139509326294135E-028 1.294627903770307E-028 + 2.246854510856385E-029 3.728002227521247E-030 5.906826632418103E-031 8.926932414437654E-032 + 1.285288169341907E-032 1.760824761974532E-033 2.292465246257422E-034 2.832697389155093E-035 + 3.317676391821547E-036 3.678030789851306E-037 3.854254318254732E-038 3.812325103336088E-039 + 3.554096832664375E-040 3.118225307047433E-041 2.570734949433569E-042 1.988357438040418E-043 + 1.440513762437608E-044 9.759034507295847E-046 6.171990733480976E-047 3.637612706392067E-048 + 1.994367096646123E-049 1.015304317187715E-050 4.790433011299292E-052 2.090763927273554E-053 + 8.424226591290745E-055 3.127312851441544E-056 1.067402119240529E-057 3.342540070696620E-059 + 9.582305704380751E-061 2.509211644617394E-062 5.988015191981152E-064 1.299230094085959E-065 + 2.556820502707134E-067 4.552524759233741E-069 7.315466943164469E-071 1.058135649659055E-072 + 1.374021537348980E-074 1.597396370920000E-076 1.657993577612694E-078 1.531994645089275E-080 + 1.256485836671341E-082 9.119546209091978E-085 5.839293348626219E-087 3.288069036124927E-089 + 1.622939698240901E-091 6.998357943817070E-094 2.627465678334079E-096 8.558591676525006E-099 + 2.410075185138796E-101 5.845491756567543E-104 1.216556584314636E-106 2.164120533517194E-109 + 3.277501629296190E-112 4.208695549127712E-115 4.563323173040021E-118 4.159911961364626E-121 + 3.174309299601033E-124 2.018465114302005E-127 1.064621851205171E-130 4.635708203376680E-134 + 1.658348583830961E-137 4.849686340823023E-141 1.153490292615406E-144 2.219754712872944E-148 + 3.437617518965678E-152 4.260724522716044E-156 4.202754724402140E-160 3.280187631457491E-164 + 2.013739035477555E-168 9.665140980356784E-173 3.604188747605877E-177 1.037591744402923E-181 + 2.290974285635130E-186 3.853645008720351E-191 4.904448702409194E-196 4.689312660525972E-201 + 3.344140859455553E-206 1.765601108513657E-211 6.849012427977138E-217 1.936875223817307E-222 + 3.961310321687329E-228 5.811347678745867E-234 6.064048578372867E-240 4.462218952289936E-246 + 2.295097975844827E-252 8.176666276500257E-259 1.999120019124410E-265 3.322382870099439E-272 + 3.716760524103789E-279 2.770971156732539E-286 1.362668538517085E-293 4.373856959224201E-301 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + + 5.008315916298245E-019 5.265097764275357E-019 5.535045099123908E-019 5.818832929789790E-019 + 6.117170873667675E-019 6.430804931013974E-019 6.760519350336126E-019 7.107138589422356E-019 + 7.471529376915551E-019 7.854602879586419E-019 8.257316980724876E-019 8.680678675347297E-019 + 9.125746588208530E-019 9.593633620915218E-019 1.008550973475955E-018 1.060260487623175E-018 + 1.114621205252702E-018 1.171769056473708E-018 1.231846940681080E-018 1.295005083878354E-018 + 1.361401414320951E-018 1.431201957419102E-018 1.504581250887826E-018 1.581722781182141E-018 + 1.662819442308789E-018 1.748074018161692E-018 1.837699689587337E-018 1.931920567447928E-018 + 2.030972253015252E-018 2.135102427096619E-018 2.244571469365854E-018 2.359653109448101E-018 + 2.480635111386502E-018 2.607819993202138E-018 2.741525783346718E-018 2.882086815939301E-018 + 3.029854566775768E-018 3.185198532201367E-018 3.348507153044048E-018 3.520188785918884E-018 + 3.700672724332242E-018 3.890410272139205E-018 4.089875872038267E-018 4.299568291925176E-018 + 4.520011872072541E-018 4.751757836253521E-018 4.995385670088433E-018 5.251504570060628E-018 + 5.520754966824976E-018 5.803810126618178E-018 6.101377834774904E-018 6.414202165559870E-018 + 6.743065342741058E-018 7.088789695556515E-018 7.452239714965884E-018 7.834324215327937E-018 + 8.235998606909960E-018 8.658267284910927E-018 9.102186140972798E-018 9.568865203459557E-018 + 1.005947141310618E-017 1.057523154097841E-017 1.111743525603934E-017 1.168743834999354E-017 + 1.228666612747262E-017 1.291661697003901E-017 1.357886608292043E-017 1.427506943384334E-017 + 1.500696789381481E-017 1.577639159020694E-017 1.658526448302819E-017 1.743560917582578E-017 + 1.832955197324795E-017 1.926932819791292E-017 2.025728777988018E-017 2.129590113269906E-017 + 2.238776533072957E-017 2.353561060318105E-017 2.474230716110702E-017 2.601087237442820E-017 + 2.734447831692835E-017 2.874645969809127E-017 3.022032220161124E-017 3.176975125142815E-017 + 3.339862122720731E-017 3.511100515230588E-017 3.691118487845313E-017 3.880366179260991E-017 + 4.079316807278021E-017 4.288467852092186E-017 4.508342300254105E-017 4.739489952408127E-017 + 4.982488798080246E-017 5.237946460952937E-017 5.506501718240924E-017 5.788826097966796E-017 + 6.085625558130911E-017 6.397642251974042E-017 6.725656383747003E-017 7.070488159627714E-017 + 7.432999838663748E-017 7.814097888869072E-017 8.214735253866202E-017 8.635913735741544E-017 + 9.078686500072503E-017 9.544160709389752E-017 1.003350029166034E-016 1.054792885071375E-016 + 1.108873272588872E-016 1.165726420855175E-016 1.225494492352948E-016 1.288326938391144E-016 + 1.354380872811101E-016 1.423821464852971E-016 1.496822352164865E-016 1.573566074987372E-016 + 1.654244532599253E-016 1.739059463165571E-016 1.828222948188171E-016 1.921957942819902E-016 + 2.020498833368593E-016 2.124092023384899E-016 2.232996549799516E-016 2.347484730650383E-016 + 2.467842846019660E-016 2.594371853882948E-016 2.727388142661026E-016 2.867224322355638E-016 + 3.014230056247730E-016 3.168772935237774E-016 3.331239397014405E-016 3.502035692349935E-016 + 3.681588900938833E-016 3.870347999319343E-016 4.068784983548736E-016 4.277396049439157E-016 + 4.496702833305596E-016 4.727253716328327E-016 4.969625195791432E-016 5.224423326626256E-016 + 5.492285236864275E-016 5.773880720789025E-016 6.069913913770568E-016 6.381125052970579E-016 + 6.708292328320850E-016 7.052233828403145E-016 7.413809586096824E-016 7.793923729108854E-016 + 8.193526740763786E-016 8.613617836707219E-016 9.055247463464991E-016 9.519519925106611E-016 + 1.000759614458046E-015 1.052069656662556E-015 1.106010420951914E-015 1.162716787329012E-015 + 1.222330551242165E-015 1.285000778147567E-015 1.350884176250531E-015 1.420145488357630E-015 + 1.492957903819449E-015 1.569503491594171E-015 1.649973655514744E-015 1.734569612898144E-015 + 1.823502897693429E-015 1.916995889426705E-015 2.015282369265799E-015 2.118608104594829E-015 + 2.227231463560633E-015 2.341424061127697E-015 2.461471438256877E-015 2.587673775906578E-015 + 2.720346645641330E-015 2.859821798725015E-015 3.006447995671789E-015 3.160591878328810E-015 + 3.322638886671861E-015 3.492994222605830E-015 3.672083863180441E-015 3.860355625754688E-015 + 4.058280287773185E-015 4.266352763955022E-015 4.485093343838064E-015 4.715048992773625E-015 + 4.956794719624643E-015 5.210935014586957E-015 5.478105360729640E-015 5.758973823033268E-015 + 6.054242718900137E-015 6.364650374313393E-015 6.690972970036035E-015 7.034026482467031E-015 + 7.394668724006815E-015 7.773801488034731E-015 8.172372803861933E-015 8.591379307297698E-015 + 9.031868732758000E-015 9.494942533146409E-015 9.981758634059664E-015 1.049353432920429E-014 + 1.103154932426391E-014 1.159714893682981E-014 1.219174746039449E-014 1.281683170082134E-014 + 1.347396469413317E-014 1.416478961491478E-014 1.489103388510506E-014 1.565451349344992E-014 + 1.645713753641910E-014 1.730091299194062E-014 1.818794973788897E-014 1.912046582787817E-014 + 2.010079303754879E-014 2.113138269522012E-014 2.221481181148623E-014 2.335378952308197E-014 + 2.455116386713469E-014 2.580992890273744E-014 2.713323219765395E-014 2.852438269887518E-014 + 2.998685900670636E-014 3.152431807307785E-014 3.314060434582530E-014 3.483975938180830E-014 + 3.662603195290447E-014 3.850388867014607E-014 4.047802515257196E-014 4.255337776871407E-014 + 4.473513598008533E-014 4.702875531753132E-014 4.943997102289113E-014 5.197481239008463E-014 + 5.463961784147909E-014 5.744105077723901E-014 6.038611623729004E-014 6.348217841755609E-014 + 6.673697908427811E-014 7.015865693244951E-014 7.375576793678185E-014 7.753730674608751E-014 + 8.151272917457047E-014 8.569197584627675E-014 9.008549705181372E-014 9.470427887950505E-014 + 9.955987068631601E-014 1.046644139772414E-013 1.100306727653729E-013 1.156720654885569E-013 + 1.216026985624543E-013 1.278374016539028E-013 1.343917647627782E-013 1.412821772050866E-013 + 1.485258685947572E-013 1.561409519266163E-013 1.641464688682733E-013 1.725624373741648E-013 + 1.814099017408256E-013 1.907109852285430E-013 2.004889453809798E-013 2.107682321810943E-013 + 2.215745491887725E-013 2.329349178130528E-013 2.448777448796538E-013 2.574328936627617E-013 + 2.706317585586912E-013 2.845073435881405E-013 2.990943449233443E-013 3.144292376464734E-013 + 3.305503669562326E-013 3.474980440507160E-013 3.653146469262688E-013 3.840447263444226E-013 + 4.037351172318552E-013 4.244350557919441E-013 4.461963026207578E-013 4.690732721353151E-013 + 4.931231686377832E-013 5.184061293558102E-013 5.449853748166934E-013 5.729273669313820E-013 + 6.023019751836003E-013 6.331826513396761E-013 6.656466131158947E-013 6.997750372626835E-013 + 7.356532625484175E-013 7.733710031503911E-013 8.130225729865909E-013 8.547071215491540E-013 + 8.985288818292653E-013 9.445974309534070E-013 9.930279641826816E-013 1.043941582960374E-012 + 1.097465597727972E-012 1.153733846266878E-012 1.212887028361833E-012 1.275073057622825E-012 + 1.340447431345299E-012 1.409173619333420E-012 1.481423472658710E-012 1.557377653376152E-012 + 1.637226086272216E-012 1.721168433774487E-012 1.809414595210339E-012 1.902185231663093E-012 + 1.999712317738073E-012 2.102239721618183E-012 2.210023814859563E-012 2.323334113451975E-012 + 2.442453951746992E-012 2.567681190939145E-012 2.699328963871503E-012 2.837726458028209E-012 + 2.983219738671683E-012 3.136172614182904E-012 3.296967545768465E-012 3.466006603809109E-012 + 3.643712473241187E-012 3.830529510484879E-012 4.026924854562121E-012 4.233389595182530E-012 + 4.450440000718121E-012 4.678618809137429E-012 4.918496585126906E-012 5.170673146793131E-012 + 5.435779065513321E-012 5.714477242684527E-012 6.007464567313906E-012 6.315473658595321E-012 + 6.639274697829157E-012 6.979677354266270E-012 7.337532809691598E-012 7.713735886809702E-012 + 8.109227286754605E-012 8.524995941318399E-012 8.962081485780552E-012 9.421576858521371E-012 + 9.904631033919277E-012 1.041245189536629E-011 1.094630925558499E-011 1.150753803179958E-011 + 1.209754158370050E-011 1.271779522254857E-011 1.336984990019398E-011 1.405533608723381E-011 + 1.477596785000543E-011 1.553354713661055E-011 1.632996828268635E-011 1.716722274819085E-011 + 1.804740409704676E-011 1.897271323209445E-011 1.994546389844525E-011 2.096808846899444E-011 + 2.204314402656175E-011 2.317331875786701E-011 2.436143867532865E-011 2.561047468349336E-011 + 2.692355000776520E-011 2.830394800401045E-011 2.975512036856525E-011 3.128069576917481E-011 + 3.288448891844616E-011 3.457051011250026E-011 3.634297525867721E-011 3.820631641736626E-011 + 4.016519288432041E-011 4.222450284116736E-011 4.438939560324585E-011 4.666528449539569E-011 + 4.905786038789403E-011 5.157310592638450E-011 5.421731049138143E-011 5.699708592475134E-011 + 5.991938306249857E-011 6.299150911519186E-011 6.622114593948978E-011 6.961636924645482E-011 + 7.318566879467998E-011 7.693796961872513E-011 8.088265434593781E-011 8.502958665746334E-011 + 8.938913595210605E-011 9.397220327470793E-011 9.879024857388169E-011 1.038553193572499E-010 + 1.091800808158404E-010 1.147778474929617E-010 1.206626165767450E-010 1.268491028995901E-010 + 1.333527757320378E-010 1.401898974630597E-010 1.473775642634837E-010 1.549337488342321E-010 + 1.628773453462509E-010 1.712282166845065E-010 1.800072441141711E-010 1.892363794931825E-010 + 1.989387001617299E-010 2.091384666459019E-010 2.198611833197879E-010 2.311336621777005E-010 + 2.429840898759719E-010 2.554420982119598E-010 2.685388382164694E-010 2.823070580448626E-010 + 2.967811848615968E-010 3.119974109229357E-010 3.279937840730678E-010 3.448103028798901E-010 + 3.624890166483443E-010 3.810741305613499E-010 4.006121162112283E-010 4.211518277979829E-010 + 4.427446242849422E-010 4.654444978172165E-010 4.893082087240308E-010 5.143954274424794E-010 + 5.407688837175561E-010 5.684945234514802E-010 5.976416735944996E-010 6.282832154894258E-010 + 6.604957671033009E-010 6.943598746018294E-010 7.299602137455312E-010 7.673858016111655E-010 + 8.067302191677647E-010 8.480918452637589E-010 8.915741026102221E-010 9.372857163751896E-010 + 9.853409860356380E-010 1.035860071166762E-009 1.088969291883073E-009 1.144801444682473E-009 + 1.203496134482919E-009 1.265200123681872E-009 1.330067699111150E-009 1.398261057804653E-009 + 1.469950712543417E-009 1.545315918191816E-009 1.624545119890899E-009 1.707836424229275E-009 + 1.795398094569518E-009 1.887449071768474E-009 1.984219521593165E-009 2.085951410200954E-009 + 2.192899109122616E-009 2.305330031260713E-009 2.423525299493367E-009 2.547780449554731E-009 + 2.678406168949511E-009 2.815729073748603E-009 2.960092525207848E-009 3.111857488251405E-009 + 3.271403433965631E-009 3.439129288359876E-009 3.615454429765689E-009 3.800819737367933E-009 + 3.995688693488807E-009 4.200548542380301E-009 4.415911508421832E-009 4.642316076768212E-009 + 4.880328339649192E-009 5.130543411686102E-009 5.393586917763092E-009 5.670116557172634E-009 + 5.960823747944695E-009 6.266435355469961E-009 6.587715509738085E-009 6.925467515732999E-009 + 7.280535861760682E-009 7.653808330729246E-009 8.046218219658313E-009 8.458746672965612E-009 + 8.892425135362242E-009 9.348337930488106E-009 9.827624971731994E-009 1.033148461201177E-008 + 1.086117663963777E-008 1.141802542774594E-008 1.200342324517314E-008 1.261883373704880E-008 + 1.326579558380144E-008 1.394592634772538E-008 1.466092651671971E-008 1.541258375530634E-008 + 1.620277737355007E-008 1.703348302504918E-008 1.790677764573650E-008 1.882484464583268E-008 + 1.978997936792699E-008 2.080459482482354E-008 2.187122773149164E-008 2.299254484619326E-008 + 2.417134963663121E-008 2.541058928777662E-008 2.671336206888484E-008 2.808292507810739E-008 + 2.952270238405101E-008 3.103629358462434E-008 3.262748280455832E-008 3.430024815407837E-008 + 3.605877167235987E-008 3.790744978061032E-008 3.985090427088965E-008 4.189399385812492E-008 + 4.404182632417460E-008 4.629977128428154E-008 4.867347360780487E-008 5.116886752675468E-008 + 5.379219146737190E-008 5.655000364180089E-008 5.944919843879634E-008 6.249702365440779E-008 + 6.570109860567203E-008 6.906943317255816E-008 7.261044781571955E-008 7.633299462004465E-008 + 8.024637941656167E-008 8.436038503793588E-008 8.868529576563745E-008 9.323192302982336E-008 + 9.801163242610398E-008 1.030363721166572E-007 1.083187026865938E-007 1.138718285301264E-007 + 1.197096308448930E-007 1.258467023168086E-007 1.322983835820351E-007 1.390808015570821E-007 + 1.462109097327274E-007 1.537065305323266E-007 1.615863998402409E-007 1.698702138115211E-007 + 1.785786780796634E-007 1.877335594852557E-007 1.973577404545907E-007 2.074752761639444E-007 + 2.181114546321611E-007 2.292928598914752E-007 2.410474383941875E-007 2.534045688208619E-007 + 2.663951354641959E-007 2.800516053716223E-007 2.944081094390606E-007 3.095005276580917E-007 + 3.253665787291664E-007 3.420459142643252E-007 3.595802178143632E-007 3.780133089673481E-007 + 3.973912527780713E-007 4.177624748012480E-007 4.391778820152509E-007 4.616909899378234E-007 + 4.853580562506107E-007 5.102382212655831E-007 5.363936555834058E-007 5.638897153117310E-007 + 5.927951052301905E-007 6.231820503086125E-007 6.551264760057960E-007 6.887081977979748E-007 + 7.240111204090703E-007 7.611234472389549E-007 8.001379005112529E-007 8.411519526889148E-007 + 8.842680697337458E-007 9.295939668154896E-007 9.772428771070547E-007 1.027333834334866E-006 + 1.079991969787594E-006 1.135348824522336E-006 1.193542677545038E-006 1.254718890781673E-006 + 1.319030271698218E-006 1.386637454471409E-006 1.457709300658146E-006 1.532423320359796E-006 + 1.610966114928543E-006 1.693533842316119E-006 1.780332706221661E-006 1.871579470254101E-006 + 1.967501998386660E-006 2.068339823046069E-006 2.174344742247436E-006 2.285781447257840E-006 + 2.402928182346977E-006 2.526077438262742E-006 2.655536681153040E-006 2.791629118742542E-006 + 2.934694505665595E-006 3.085089989952765E-006 3.243191002770502E-006 3.409392193620190E-006 + 3.584108413314741E-006 3.767775747169341E-006 3.960852600966346E-006 4.163820842384732E-006 + 4.377187000721294E-006 4.601483527874026E-006 4.837270123709687E-006 5.085135129095577E-006 + 5.345696990042235E-006 5.619605796578996E-006 5.907544900167638E-006 6.210232613653108E-006 + 6.528423997952520E-006 6.862912739897086E-006 7.214533125865298E-006 7.584162116080574E-006 + 7.972721524694020E-006 8.381180311031722E-006 8.810556987658670E-006 9.261922151197724E-006 + 9.736401142141793E-006 1.023517684021400E-005 1.075949260216128E-005 1.131065534921489E-005 + 1.189003881181781E-005 1.249908693960106E-005 1.313931748499636E-005 1.381232576929366E-005 + 1.451978864039784E-005 1.526346863200545E-005 1.604521833441121E-005 1.686698498767052E-005 + 1.773081530838238E-005 1.863886056192505E-005 1.959338189257322E-005 2.059675592454739E-005 + 2.165148064770637E-005 2.276018160227916E-005 2.392561837775697E-005 2.515069144182535E-005 + 2.643844931601061E-005 2.779209611555454E-005 2.921499947190464E-005 3.071069885713048E-005 + 3.228291433054276E-005 3.393555572880325E-005 3.567273232188153E-005 3.749876295832766E-005 + 3.941818672450254E-005 4.143577414363631E-005 4.355653894187308E-005 4.578575040981738E-005 + 4.812894638950890E-005 5.059194691824465E-005 5.318086856223292E-005 5.590213947468643E-005 + 5.876251521469684E-005 6.176909536501735E-005 6.492934098877429E-005 6.825109296711540E-005 + 7.174259126185625E-005 7.541249514939073E-005 7.926990447438424E-005 8.332438197417612E-005 + 8.758597672732296E-005 9.206524878232371E-005 9.677329502534528E-005 1.017217763486262E-004 + 1.069229461842683E-004 1.123896804713019E-004 1.181355091271946E-004 1.241746490984899E-004 + 1.305220390688560E-004 1.371933759066638E-004 1.442051529382016E-004 1.515747001367789E-004 + 1.593202263223974E-004 1.674608634711890E-004 1.760167132386454E-004 1.850088958056827E-004 + 1.944596011617861E-004 2.043921429450331E-004 2.148310149644769E-004 2.258019505364038E-004 + 2.373319847722814E-004 2.494495199627186E-004 2.621843942087062E-004 2.755679534585084E-004 + 2.896331271161268E-004 3.044145073950950E-004 3.199484325995032E-004 3.362730745227929E-004 + 3.534285301637065E-004 3.714569179681622E-004 3.904024788155824E-004 4.103116819782762E-004 + 4.312333362932331E-004 4.532187067966010E-004 4.763216370827698E-004 5.005986776620214E-004 + 5.261092206031584E-004 5.529156407607704E-004 5.810834439002581E-004 6.106814220480619E-004 + 6.417818164093116E-004 6.744604882104131E-004 7.087970978402917E-004 7.448752926805096E-004 + 7.827829040318998E-004 8.226121535634690E-004 8.644598697278267E-004 9.084277146072027E-004 + 9.546224216739941E-004 1.003156044971012E-003 1.054146220238346E-003 1.107716438536169E-003 + 1.163996332936566E-003 1.223121978881363E-003 1.285236208828320E-003 1.350488941834069E-003 + 1.419037528748802E-003 1.491047113726017E-003 1.566691012778853E-003 1.646151110144589E-003 + 1.729618273249502E-003 1.817292787097459E-003 1.909384808938814E-003 2.006114844108944E-003 + 2.107714243960733E-003 2.214425726850597E-003 2.326503923173575E-003 2.444215945481044E-003 + 2.567841984751856E-003 2.697675933927480E-003 2.834026039861378E-003 2.977215584873183E-003 + 3.127583599140562E-003 3.285485605202879E-003 3.451294395894232E-003 3.625400847067020E-003 + 3.808214766510162E-003 4.000165780511942E-003 4.201704259560560E-003 4.413302284721287E-003 + 4.635454656274073E-003 4.868679946239191E-003 5.113521596464584E-003 5.370549063991273E-003 + 5.640359015457200E-003 5.923576572343072E-003 6.220856608903423E-003 6.532885104668426E-003 + 6.860380553438146E-003 7.204095430728382E-003 7.564817721661404E-003 7.943372511324171E-003 + 8.340623639646981E-003 8.757475422877088E-003 9.194874443743204E-003 9.653811412422294E-003 + 1.013532310042728E-002 1.064049434954186E-002 1.117046015792169E-002 1.172640784547281E-002 + 1.230957930059997E-002 1.292127331038604E-002 1.356284797623036E-002 1.423572321691934E-002 + 1.494138336104430E-002 1.568137983060635E-002 1.645733391755430E-002 1.727093965490178E-002 + 1.812396678393995E-002 1.901826381892352E-002 1.995576121044461E-002 2.093847460851888E-002 + 2.196850822620564E-002 2.304805830433870E-002 2.417941667768898E-002 2.536497444257716E-002 + 2.660722572563047E-002 2.790877155301638E-002 2.927232381907707E-002 3.070070935285723E-002 + 3.219687408052254E-002 3.376388728113925E-002 3.540494593270611E-002 3.712337914468684E-002 + 3.892265267261197E-002 4.080637350955739E-002 4.277829454849955E-002 4.484231930866684E-002 + 4.700250671804385E-002 4.926307594317304E-002 5.162841125627445E-002 5.410306692852331E-002 + 5.669177213704663E-002 5.939943587181759E-002 6.223115182717459E-002 6.519220326110733E-002 + 6.828806780378587E-002 7.152442219502893E-002 7.490714692849067E-002 7.844233077835765E-002 + 8.213627518218027E-002 8.599549845121734E-002 9.002673977728337E-002 9.423696300254097E-002 + 9.863336011605567E-002 1.032233544381039E-001 1.080146034503143E-001 1.130150012266502E-001 + 1.182326804170155E-001 1.236760137319526E-001 1.293536148733891E-001 1.352743388528034E-001 + 1.414472816344443E-001 1.478817790373593E-001 1.545874048260647E-001 1.615739679155797E-001 + 1.688515086124224E-001 1.764302938089396E-001 1.843208110440258E-001 1.925337613390242E-001 + 2.010800507132115E-001 2.099707802789956E-001 2.192172348126802E-001 2.288308696924200E-001 + 2.388232960909884E-001 2.492062643069942E-001 2.599916451145313E-001 2.711914090078146E-001 + 2.828176032141829E-001 2.948823263462098E-001 3.073977005613135E-001 3.203758410955743E-001 + 3.338288230373573E-001 3.477686452058841E-001 3.622071910003886E-001 3.771561860867225E-001 + 3.926271527906821E-001 4.086313610708214E-001 4.251797759482109E-001 4.422830012768860E-001 + 4.599512197463271E-001 4.781941290167957E-001 4.970208738996256E-001 5.164399745077288E-001 + 5.364592503171495E-001 5.570857400981223E-001 5.783256176944365E-001 6.001841036528482E-001 + 6.226653727299376E-001 6.457724573327256E-001 6.695071469811211E-001 6.938698839155756E-001 + 7.188596550119815E-001 7.444738802079386E-001 7.707082976905615E-001 7.975568461454220E-001 + 8.250115444197194E-001 8.530623690099884E-001 8.816971298454968E-001 9.109013449033834E-001 + 9.406581142596883E-001 9.709479942522908E-001 1.001748872506673E+000 1.033035844653100E+000 + 1.064781093644329E+000 1.096953772664984E+000 1.129519892707709E+000 1.162442215975687E+000 + 1.195680156355491E+000 1.229189688288168E+000 1.262923265447873E+000 1.296829750716276E+000 + 1.330854359015316E+000 1.364938614629413E+000 1.399020324709911E+000 1.433033570706805E+000 + 1.466908719514820E+000 1.500572456150135E+000 1.533947839788479E+000 1.566954384993473E+000 + 1.599508169942758E+000 1.631521973417353E+000 1.662905442253912E+000 1.693565290867923E+000 + 1.723405534336550E+000 1.752327756379873E+000 1.780231413397448E+000 1.807014175501069E+000 + 1.832572305232651E+000 1.856801074367594E+000 1.879595218876977E+000 1.900849431756871E+000 + 1.920458893029399E+000 1.938319835778711E+000 1.954330146607518E+000 1.968389998387577E+000 + 1.980402512634438E+000 1.990274448266044E+000 1.997916912911658E+000 2.003246092328032E+000 + 2.006183992860606E+000 2.006659191267194E+000 2.004607585609155E+000 1.999973140321113E+000 + 1.992708618005981E+000 1.982776289980132E+000 1.970148617127045E+000 1.954808892220773E+000 + 1.936751834567565E+000 1.915984127599689E+000 1.892524889954737E+000 1.866406070600859E+000 + 1.837672758737109E+000 1.806383399521275E+000 1.772609907165854E+000 1.736437667605806E+000 + 1.697965423785566E+000 1.657305037641206E+000 1.614581124067186E+000 1.569930553551169E+000 + 1.523501821728048E+000 1.475454285831682E+000 1.425957269892940E+000 1.375189042522657E+000 + 1.323335673199246E+000 1.270589775121141E+000 1.217149144844743E+000 1.163215311067718E+000 + 1.108992006988998E+000 1.054683582631138E+000 1.000493375297684E+000 9.466220579052151E-001 + 8.932659862259755E-001 8.406155670539580E-001 7.888536699183200E-001 7.381541051750753E-001 + 6.886801910768835E-001 6.405834317285116E-001 5.940023266689267E-001 5.490613311773963E-001 + 5.058699842931262E-001 4.645222189893752E-001 4.250958659935009E-001 3.876523594468748E-001 + 3.522366490183211E-001 3.188773193015143E-001 2.875869134279040E-001 2.583624539101976E-001 + 2.311861498994688E-001 2.060262763957686E-001 1.828382076020942E-001 1.615655836524374E-001 + 1.421415874667925E-001 1.244903065669333E-001 1.085281533878397E-001 9.416531698459338E-002 + 8.130721908483171E-002 6.985594817238075E-002 5.971164668477326E-002 5.077382841918492E-002 + 4.294260580024494E-002 3.611980968144968E-002 3.020998772655291E-002 2.512127103306558E-002 + 2.076610239437860E-002 1.706182332568338E-002 1.393112058019032E-002 1.130233624304641E-002 + 9.109648510523328E-003 7.293132858170241E-003 5.798715410710441E-003 4.578031907677513E-003 + 3.588206694728585E-003 2.791566666839676E-003 2.155305073390859E-003 1.651109612931227E-003 + 1.254768359314959E-003 9.457658448726469E-004 7.068801615529957E-004 5.237903115430784E-004 + 3.847013271631729E-004 2.799929626835968E-004 2.018961061492669E-004 1.441995239998850E-004 + 1.019881789842286E-004 7.141318271832546E-005 4.949247493453478E-005 3.394056626225519E-005 + 2.302513364372873E-005 1.544790174101857E-005 1.024705787409052E-005 6.718405835370064E-006 + 4.352537016143430E-006 2.785457262440712E-006 1.760327933364716E-006 1.098235741212317E-006 + 6.761776902806185E-007 4.107183884428097E-007 2.460348342264345E-007 1.452999697229842E-007 + 8.456572607309516E-008 4.848670536279618E-008 2.737699902305556E-008 1.521651328741142E-008 + 8.322189536264580E-009 4.476883777183461E-009 2.367815897288140E-009 1.230743256748061E-009 + 6.284101979308644E-010 3.150497760899608E-010 1.550152128528866E-010 7.482083933577801E-011 + 3.540891645650060E-011 1.642206827774928E-011 7.460124723431174E-012 3.317718864869248E-012 + 1.443692863351737E-012 6.143450075968282E-013 2.555092663558023E-013 1.038020811937941E-013 + 4.116730775333581E-014 1.592873367715671E-014 6.009261430243808E-015 2.208990362928899E-015 + 7.907044653952412E-016 2.754163761624001E-016 9.328690258805940E-017 3.070432039227239E-017 + 9.813207467357251E-018 3.043210133828348E-018 9.150208353994408E-019 2.665436426000309E-019 + 7.516152760873965E-020 2.050008181144504E-020 5.403586097393783E-021 1.375306609889940E-021 + 3.376936854179563E-022 7.992037979011926E-023 1.821371637294917E-023 3.993291609626137E-024 + 8.414520963816899E-025 1.702383493869662E-025 3.303449766598303E-026 6.141884813504965E-027 + 1.092921621391614E-027 1.859291959669392E-028 3.020529032755793E-029 4.680458500520860E-030 + 6.909458683454063E-031 9.705479870641095E-032 1.295570345397802E-032 1.641405115611345E-033 + 1.971092406231465E-034 2.240503800640783E-035 2.407288017714653E-036 2.441377722735216E-037 + 2.333628213327792E-038 2.099264997380454E-039 1.774493596794059E-040 1.407242539613642E-041 + 1.045320025992506E-042 7.260993942696930E-044 4.708383707258716E-045 2.845249810754821E-046 + 1.599434308104034E-047 8.348623997081747E-049 4.038785631114670E-050 1.807333886919985E-051 + 7.466564050379821E-053 2.841969722348820E-054 9.945658431528110E-056 3.193298107622425E-057 + 9.386209110025558E-059 2.520083087155024E-060 6.166203038843883E-062 1.371760714542264E-063 + 2.767896788104455E-065 5.053116720449064E-067 8.325425287616557E-069 1.234704651109716E-070 + 1.643889569725804E-072 1.959517539658403E-074 2.085339010932528E-076 1.975642832124000E-078 + 1.661369163940114E-080 1.236343466751490E-082 8.116776086444107E-085 4.686208003741807E-087 + 2.371594200406647E-089 1.048555710175540E-091 4.036358867961462E-094 1.348069830147027E-096 + 3.892225874569460E-099 9.679342527990702E-102 2.065449029060814E-104 3.767219939720049E-107 + 5.849783709619173E-110 7.701968980650255E-113 8.562347371449396E-116 8.003005550924868E-119 + 6.261459590277862E-122 4.082300315079252E-125 2.207681612748994E-128 9.856313714738139E-132 + 3.615194046275377E-135 1.083993809213209E-138 2.643531300245736E-142 5.215943299952200E-146 + 8.282144262887267E-150 1.052509573668774E-153 1.064471421519032E-157 8.518360387559446E-162 + 5.361889677592873E-166 2.638640600072075E-170 1.008874013817592E-174 2.977921731344393E-179 + 6.741621222103882E-184 1.162714801624636E-188 1.517221729379788E-193 1.487391892580337E-198 + 1.087572315149008E-203 5.887399904706502E-209 2.341619143752064E-214 6.789648814119251E-220 + 1.423776745609551E-225 2.141594539565296E-231 2.291291930629856E-237 1.728725317649023E-243 + 9.116616957956272E-250 3.330167766206960E-256 8.348069774189998E-263 1.422506446075788E-269 + 1.631648124197606E-276 1.247243626785654E-283 6.288786909728799E-291 2.069658008392129E-298 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + + 2.530424991801067E-013 2.627117584127290E-013 2.727504993504401E-013 2.831728406270438E-013 + 2.939934403775384E-013 3.052275168535293E-013 3.168908698264063E-013 3.289999028083749E-013 + 3.415716461225977E-013 3.546237808548962E-013 3.681746637206860E-013 3.822433528821366E-013 + 3.968496347518503E-013 4.120140518207673E-013 4.277579315494286E-013 4.441034163632305E-013 + 4.610734947938580E-013 4.786920338106994E-013 4.969838123877005E-013 5.159745563528854E-013 + 5.356909745695342E-013 5.561607964999299E-013 5.774128112044785E-013 5.994769078310711E-013 + 6.223841176516291E-013 6.461666577049317E-013 6.708579761071455E-013 6.964927990937453E-013 + 7.231071798590025E-013 7.507385492617385E-013 7.794257684686300E-013 8.092091836091271E-013 + 8.401306825188537E-013 8.722337536512679E-013 9.055635472404794E-013 9.401669388011915E-013 + 9.760925950551258E-013 1.013391042376613E-012 1.052114737853637E-012 1.092318143064263E-012 + 1.134057800672190E-012 1.177392413949197E-012 1.222382929336297E-012 1.269092622159697E-012 + 1.317587185622172E-012 1.367934823194932E-012 1.420206344540007E-012 1.474475265097992E-012 + 1.530817909481251E-012 1.589313518817990E-012 1.650044362198126E-012 1.713095852377764E-012 + 1.778556665904959E-012 1.846518867835709E-012 1.917078041215631E-012 1.990333421509339E-012 + 2.066388036166691E-012 2.145348849522083E-012 2.227326913230700E-012 2.312437522453194E-012 + 2.400800378008474E-012 2.492539754722730E-012 2.587784676211367E-012 2.686669096339719E-012 + 2.789332087617762E-012 2.895918036793708E-012 3.006576847921680E-012 3.121464153188965E-012 + 3.240741531799429E-012 3.364576737220900E-012 3.493143933116087E-012 3.626623938288936E-012 + 3.765204480990866E-012 3.909080462944515E-012 4.058454233456462E-012 4.213535874004192E-012 + 4.374543493697803E-012 4.541703536031900E-012 4.715251097359003E-012 4.895430257532602E-012 + 5.082494423184541E-012 5.276706684119921E-012 5.478340183330426E-012 5.687678501146647E-012 + 5.905016054069679E-012 6.130658508842736E-012 6.364923212345390E-012 6.608139637914902E-012 + 6.860649848722300E-012 7.122808978855181E-012 7.394985732783320E-012 7.677562903910199E-012 + 7.970937912939208E-012 8.275523366811929E-012 8.591747639004702E-012 8.920055471999214E-012 + 9.260908602774958E-012 9.614786412202853E-012 9.982186599253493E-012 1.036362588096838E-011 + 1.075964071917823E-011 1.117078807499078E-011 1.159764619210908E-011 1.204081541008184E-011 + 1.250091900862986E-011 1.297860408423564E-011 1.347454246022937E-011 1.398943163165112E-011 + 1.452399574621797E-011 1.507898662277617E-011 1.565518480866980E-011 1.625340067751424E-011 + 1.687447556891729E-011 1.751928297175152E-011 1.818872975264191E-011 1.888375743139598E-011 + 1.960534350517128E-011 2.035450282324137E-011 2.113228901429482E-011 2.193979596827394E-011 + 2.277815937483735E-011 2.364855832061053E-011 2.455221694747040E-011 2.549040617419617E-011 + 2.646444548390825E-011 2.747570477980800E-011 2.852560631182990E-011 2.961562667691420E-011 + 3.074729889571438E-011 3.192221456865974E-011 3.314202611440499E-011 3.440844909381604E-011 + 3.572326462275948E-011 3.708832187708946E-011 3.850554069335604E-011 3.997691426889027E-011 + 4.150451196506596E-011 4.309048221767941E-011 4.473705555854038E-011 4.644654775252439E-011 + 4.822136305449734E-011 5.006399759069447E-011 5.197704286930798E-011 5.396318942522123E-011 + 5.602523060401642E-011 5.816606649057453E-011 6.038870798779727E-011 6.269628105118371E-011 + 6.509203108521830E-011 6.757932750775536E-011 7.016166848881498E-011 7.284268587045994E-011 + 7.562615027467033E-011 7.851597640639914E-011 8.151622855927031E-011 8.463112633165758E-011 + 8.786505056118807E-011 9.122254948601479E-011 9.470834514152233E-011 9.832734000146552E-011 + 1.020846238728759E-010 1.059854810544398E-010 1.100353977684093E-010 1.142400698765029E-010 + 1.186054108906463E-010 1.231375602898158E-010 1.278428921546913E-010 1.327280241322499E-010 + 1.377998267429171E-010 1.430654330433651E-010 1.485322486585388E-010 1.542079621970346E-010 + 1.601005560644623E-010 1.662183176900123E-010 1.725698511820127E-010 1.791640894288616E-010 + 1.860103066623696E-010 1.931181315011633E-010 2.004975604925078E-010 2.081589721715903E-010 + 2.161131416580280E-010 2.243712558101505E-010 2.329449289583451E-010 2.418462192396094E-010 + 2.510876455562823E-010 2.606822051827907E-010 2.706433920451997E-010 2.809852156992459E-010 + 2.917222210335665E-010 3.028695087258294E-010 3.144427564805193E-010 3.264582410782798E-010 + 3.389328612677877E-010 3.518841615323780E-010 3.653303567648421E-010 3.792903578850814E-010 + 3.937837984366885E-010 4.088310621998069E-010 4.244533118591509E-010 4.406725187674833E-010 + 4.575114938463997E-010 4.749939196679184E-010 4.931443837619412E-010 5.119884131964742E-010 + 5.315525104792298E-010 5.518641908310716E-010 5.729520208837921E-010 5.948456588565656E-010 + 6.175758962676469E-010 6.411747012399522E-010 6.656752634614062E-010 6.911120408633548E-010 + 7.175208080826029E-010 7.449387067753095E-010 7.734042978534723E-010 8.029576157174408E-010 + 8.336402245608049E-010 8.654952768267544E-010 8.985675738981938E-010 9.329036291069502E-010 + 9.685517331506402E-010 1.005562022009306E-009 1.043986547457211E-009 1.083879350269067E-009 + 1.125296536223607E-009 1.168296355011351E-009 1.212939282157681E-009 1.259288104076252E-009 + 1.307408006372513E-009 1.357366665521473E-009 1.409234344048597E-009 1.463083989347821E-009 + 1.518991336275518E-009 1.577035013664802E-009 1.637296654909970E-009 1.699861012776502E-009 + 1.764816078598278E-009 1.832253206029441E-009 1.902267239525096E-009 1.974956647731523E-009 + 2.050423661973380E-009 2.128774420032896E-009 2.210119115423001E-009 2.294572152364545E-009 + 2.382252306685450E-009 2.473282892868092E-009 2.567791937479928E-009 2.665912359231161E-009 + 2.767782155912772E-009 2.873544598477796E-009 2.983348432538766E-009 3.097348087564783E-009 + 3.215703894072338E-009 3.338582309115401E-009 3.466156150391931E-009 3.598604839295942E-009 + 3.736114653257085E-009 3.878878987722536E-009 4.027098628149678E-009 4.180982032392150E-009 + 4.340745623876298E-009 4.506614095980456E-009 4.678820728045067E-009 4.857607713458131E-009 + 5.043226500277348E-009 5.235938144868000E-009 5.436013679054012E-009 5.643734491298399E-009 + 5.859392722449333E-009 6.083291676608345E-009 6.315746247698407E-009 6.557083362332043E-009 + 6.807642439602039E-009 7.067775868441582E-009 7.337849503225186E-009 7.618243178307174E-009 + 7.909351242221756E-009 8.211583112295532E-009 8.525363850452821E-009 8.851134761023358E-009 + 9.189354011393148E-009 9.540497276371532E-009 9.905058407180335E-009 1.028355012600630E-008 + 1.067650474709344E-008 1.108447492538933E-008 1.150803443379852E-008 1.194777897013583E-008 + 1.240432699491459E-008 1.287832060114819E-008 1.337042641738772E-008 1.388133654526647E-008 + 1.441176953286892E-008 1.496247138529384E-008 1.553421661383258E-008 1.612780932523752E-008 + 1.674408435261358E-008 1.738390842952219E-008 1.804818140894960E-008 1.873783752885385E-008 + 1.945384672606954E-008 2.019721600041908E-008 2.096899083094819E-008 2.177025664627767E-008 + 2.260214035113936E-008 2.346581191124256E-008 2.436248599870083E-008 2.529342370033186E-008 + 2.625993429123399E-008 2.726337707613325E-008 2.830516330108999E-008 2.938675813825471E-008 + 3.050968274646282E-008 3.167551641056772E-008 3.288589876251985E-008 3.414253208731530E-008 + 3.544718371705764E-008 3.680168851649870E-008 3.820795146355474E-008 3.966795032842658E-008 + 4.118373845509103E-008 4.275744764907632E-008 4.439129117558143E-008 4.608756687215611E-008 + 4.784866038031937E-008 4.967704850066090E-008 5.157530267614217E-008 5.354609260849860E-008 + 5.559219001282613E-008 5.771647251563318E-008 5.992192770184016E-008 6.221165731641611E-008 + 6.458888162656377E-008 6.705694395058485E-008 6.961931535979563E-008 7.227959956010649E-008 + 7.504153796012564E-008 7.790901493291988E-008 8.088606327882716E-008 8.397686989700576E-008 + 8.718578167369520E-008 9.051731159546660E-008 9.397614509606402E-008 9.756714664575777E-008 + 1.012953665924776E-007 1.051660482643467E-007 1.091846353436014E-007 1.133567795222691E-007 + 1.176883484503687E-007 1.221854339878092E-007 1.268543607715932E-007 1.317016951103681E-007 + 1.367342542188367E-007 1.419591158050107E-007 1.473836280237874E-007 1.530154198108494E-007 + 1.588624116114131E-007 1.649328265189179E-007 1.712352018393157E-007 1.777784010972224E-007 + 1.845716265008158E-007 1.916244318830005E-007 1.989467361370460E-007 2.065488371655847E-007 + 2.144414263625830E-007 2.226356036486530E-007 2.311428930808386E-007 2.399752590588337E-007 + 2.491451231504141E-007 2.586653815597399E-007 2.685494232630974E-007 2.788111488375664E-007 + 2.894649900091038E-007 3.005259299475177E-007 3.120095243368669E-007 3.239319232509213E-007 + 3.363098938644235E-007 3.491608440321043E-007 3.625028467685821E-007 3.763546656635828E-007 + 3.907357812682048E-007 4.056664184893199E-007 4.211675750306410E-007 4.372610509204308E-007 + 4.539694791673674E-007 4.713163575876665E-007 4.893260818482143E-007 5.080239797721401E-007 + 5.274363469550933E-007 5.475904837422649E-007 5.685147336181554E-007 5.902385230630548E-007 + 6.127924029322534E-007 6.362080914161712E-007 6.605185186417868E-007 6.857578729780710E-007 + 7.119616491105175E-007 7.391666979523334E-007 7.674112784624835E-007 7.967351114434025E-007 + 8.271794353939966E-007 8.587870644964704E-007 8.916024488184448E-007 9.256717368150310E-007 + 9.610428402186808E-007 9.977655014080366E-007 1.035891363350473E-006 1.075474042216610E-006 + 1.116569202768908E-006 1.159234636630244E-006 1.203530343542512E-006 1.249518615729456E-006 + 1.297264125482247E-006 1.346834016090961E-006 1.398297996249711E-006 1.451728438068109E-006 + 1.507200478826809E-006 1.564792126620097E-006 1.624584370034007E-006 1.686661292014084E-006 + 1.751110188082778E-006 1.818021689072611E-006 1.887489888547547E-006 1.959612475091613E-006 + 2.034490869650656E-006 2.112230368120178E-006 2.192940289379648E-006 2.276734128981137E-006 + 2.363729718708352E-006 2.454049392230146E-006 2.547820157081206E-006 2.645173873211600E-006 + 2.746247438355868E-006 2.851182980482201E-006 2.960128057591918E-006 3.073235865149940E-006 + 3.190665451437635E-006 3.312581941130385E-006 3.439156767414075E-006 3.570567912966343E-006 + 3.707000160141067E-006 3.848645350707515E-006 3.995702655508718E-006 4.148378854417944E-006 + 4.306888626986239E-006 4.471454854189182E-006 4.642308931696564E-006 4.819691095104703E-006 + 5.003850757588166E-006 5.195046860444778E-006 5.393548237026105E-006 5.599633990564301E-006 + 5.813593886425461E-006 6.035728759340372E-006 6.266350936183967E-006 6.505784674896981E-006 + 6.754366620165729E-006 7.012446276499432E-006 7.280386499369049E-006 7.558564005096672E-006 + 7.847369900210867E-006 8.147210231010851E-006 8.458506554110050E-006 8.781696528759980E-006 + 9.117234531784846E-006 9.465592295989590E-006 9.827259572936864E-006 1.020274482102215E-005 + 1.059257591981218E-005 1.099730091164830E-005 1.141748877155443E-005 1.185373020652943E-005 + 1.230663848534365E-005 1.277685030000389E-005 1.326502666009342E-005 1.377185382124080E-005 + 1.429804424901905E-005 1.484433761962512E-005 1.541150185874248E-005 1.600033422004214E-005 + 1.661166240483256E-005 1.724634572442769E-005 1.790527630686007E-005 1.858938034962996E-005 + 1.929961942024413E-005 2.003699180636571E-005 2.080253391746501E-005 2.159732173993326E-005 + 2.242247234769679E-005 2.327914547044479E-005 2.416854512166559E-005 2.509192128876989E-005 + 2.605057168766380E-005 2.704584358422783E-005 2.807913568524824E-005 2.915190010144513E-005 + 3.026564438534247E-005 3.142193364682800E-005 3.262239274936135E-005 3.386870858989873E-005 + 3.516263246571999E-005 3.650598253146612E-005 3.790064634981654E-005 3.934858353937186E-005 + 4.085182852343688E-005 4.241249338354272E-005 4.403277082169135E-005 4.571493723545528E-005 + 4.746135591022449E-005 4.927448033305375E-005 5.115685763273086E-005 5.311113215086542E-005 + 5.514004914897335E-005 5.724645865672730E-005 5.943331946673394E-005 6.170370328140336E-005 + 6.406079901768839E-005 6.650791727568475E-005 6.904849497731684E-005 7.168610018156314E-005 + 7.442443708292059E-005 7.726735120006377E-005 8.021883476191012E-005 8.328303229858386E-005 + 8.646424644504592E-005 8.976694396545395E-005 9.319576200662259E-005 9.675551458926227E-005 + 1.004511993460125E-004 1.042880045156154E-004 1.082713162029331E-004 1.124067259148770E-004 + 1.167000383826898E-004 1.211572796814279E-004 1.257847056578820E-004 1.305888106786091E-004 + 1.355763367101841E-004 1.407542827442282E-004 1.461299145802532E-004 1.517107749798405E-004 + 1.575046942061854E-004 1.635198009635625E-004 1.697645337518094E-004 1.762476526514987E-004 + 1.829782515560493E-004 1.899657708676332E-004 1.972200106743740E-004 2.047511444269726E-004 + 2.125697331335883E-004 2.206867400924947E-004 2.291135461827596E-004 2.378619657339605E-004 + 2.469442629967121E-004 2.563731692366198E-004 2.661619004750847E-004 2.763241759012767E-004 + 2.868742369804890E-004 2.978268672850159E-004 3.091974130746807E-004 3.210018046551286E-004 + 3.332565785430519E-004 3.459789004685916E-004 3.591865892462642E-004 3.728981415469467E-004 + 3.871327576046274E-004 4.019103678928787E-004 4.172516608073126E-004 4.331781113915790E-004 + 4.497120111458839E-004 4.668764989584114E-004 4.846955932015181E-004 5.031942250361133E-004 + 5.223982729692017E-004 5.423345987112454E-004 5.630310843816693E-004 5.845166711126098E-004 + 6.068213991028482E-004 6.299764491757059E-004 6.540141858967080E-004 6.789682023087673E-004 + 7.048733663447869E-004 7.317658689797239E-004 7.596832741863718E-004 7.886645707614995E-004 + 8.187502260913079E-004 8.499822419276895E-004 8.824042122493365E-004 9.160613832843438E-004 + 9.510007157737852E-004 9.872709495584724E-004 1.024922670574096E-003 1.064008380342983E-003 + 1.104582568053738E-003 1.146701785323417E-003 1.190424723740071E-003 1.235812295287032E-003 + 1.282927715753885E-003 1.331836591242621E-003 1.382607007881453E-003 1.435309624862539E-003 + 1.490017770923956E-003 1.546807544400475E-003 1.605757916971901E-003 1.666950841242306E-003 + 1.730471362287954E-003 1.796407733316500E-003 1.864851535584912E-003 1.935897802728516E-003 + 2.009645149658876E-003 2.086195906193385E-003 2.165656255585040E-003 2.248136378126511E-003 + 2.333750600008340E-003 2.422617547617243E-003 2.514860307466523E-003 2.610606591956967E-003 + 2.709988911173168E-003 2.813144750926771E-003 2.920216757265248E-003 3.031352927671601E-003 + 3.146706809187847E-003 3.266437703702550E-003 3.390710880650144E-003 3.519697797377925E-003 + 3.653576327444325E-003 3.792530997120449E-003 3.936753230375386E-003 4.086441602634097E-003 + 4.241802103605943E-003 4.403048409490622E-003 4.570402164877588E-003 4.744093274664581E-003 + 4.924360206330168E-003 5.111450302905505E-003 5.305620107000018E-003 5.507135696246200E-003 + 5.716273030539014E-003 5.933318311455670E-003 6.158568354252715E-003 6.392330972847786E-003 + 6.634925378204569E-003 6.886682590550678E-003 7.147945865869102E-003 7.419071137116062E-003 + 7.700427470628414E-003 7.992397538196087E-003 8.295378105286997E-003 8.609780535922028E-003 + 8.936031314711370E-003 9.274572586573483E-003 9.625862714670202E-003 9.990376857104102E-003 + 1.036860756293315E-002 1.076106538807247E-002 1.116827953166093E-002 1.159079849348340E-002 + 1.202919075305001E-002 1.248404547094261E-002 1.295597321305115E-002 1.344560669833019E-002 + 1.395360157071568E-002 1.448063719585237E-002 1.502741748328635E-002 1.559467173478971E-002 + 1.618315551948589E-002 1.679365157645330E-002 1.742697074548909E-002 1.808395292671593E-002 + 1.876546806972199E-002 1.947241719292027E-002 2.020573343381670E-002 2.096638313087459E-002 + 2.175536693765602E-002 2.257372096992097E-002 2.342251798635231E-002 2.430286860356788E-002 + 2.521592254607041E-002 2.616286993176641E-002 2.714494259367455E-002 2.816341543841719E-002 + 2.921960784206965E-002 3.031488508391378E-002 3.145065981860806E-002 3.262839358725797E-002 + 3.384959836782371E-002 3.511583816526306E-002 3.642873064175858E-002 3.778994878731729E-002 + 3.920122263098115E-002 4.066434099280916E-002 4.218115327672605E-002 4.375357130425205E-002 + 4.538357118903420E-002 4.707319525201385E-002 4.882455397695073E-002 5.063982800591745E-002 + 5.252127017425498E-002 5.447120758433949E-002 5.649204371737841E-002 5.858626058228628E-002 + 6.075642090052956E-002 6.300517032565105E-002 6.533523969597858E-002 6.774944731883116E-002 + 7.025070128429263E-002 7.284200180639552E-002 7.552644358929873E-002 7.830721821575587E-002 + 8.118761655489638E-002 8.417103118600643E-002 8.726095883467511E-002 9.046100281731397E-002 + 9.377487548966468E-002 9.720640069452725E-002 1.007595162034884E-001 1.044382761469900E-001 + 1.082468534265944E-001 1.121895421027728E-001 1.162707597510324E-001 1.204950497785906E-001 + 1.248670836932247E-001 1.293916633152811E-001 1.340737229231367E-001 1.389183313217308E-001 + 1.439306938229971E-001 1.491161541262748E-001 1.544801960859408E-001 1.600284453526255E-001 + 1.657666708735049E-001 1.717007862361694E-001 1.778368508396088E-001 1.841810708748172E-001 + 1.907398000964092E-001 1.975195403655658E-001 2.045269419434065E-001 2.117688035126999E-001 + 2.192520719045702E-001 2.269838415055114E-001 2.349713533187312E-001 2.432219936523994E-001 + 2.517432924059691E-001 2.605429209242814E-001 2.696286893875978E-001 2.790085437042287E-001 + 2.886905618707832E-001 2.986829497634912E-001 3.089940363224287E-001 3.196322680887702E-001 + 3.306062030536049E-001 3.419245037751057E-001 3.535959297192114E-001 3.656293287773306E-001 + 3.780336279128568E-001 3.908178228867766E-001 4.039909670109637E-001 4.175621588762905E-001 + 4.315405290012361E-001 4.459352253452150E-001 4.607553976296851E-001 4.760101804088130E-001 + 4.917086748305298E-001 5.078599290279425E-001 5.244729170803000E-001 5.415565164823736E-001 + 5.591194840607446E-001 5.771704302755984E-001 5.957177918469647E-001 6.147698026449097E-001 + 6.343344627843653E-001 6.544195058665595E-001 6.750323643110543E-001 6.961801327246638E-001 + 7.178695292564967E-001 7.401068548919310E-001 7.628979506423349E-001 7.862481525923801E-001 + 8.101622447722060E-001 8.346444098281789E-001 8.596981774732708E-001 8.853263707061247E-001 + 9.115310497972082E-001 9.383134540504909E-001 9.656739413604961E-001 9.936119255970683E-001 + 1.022125811863769E+000 1.051212929691026E+000 1.080869464241315E+000 1.111090385621513E+000 + 1.141869376416813E+000 1.173198757581148E+000 1.205069412841539E+000 1.237470711797438E+000 + 1.270390431921658E+000 1.303814679696613E+000 1.337727811148010E+000 1.372112352068782E+000 + 1.406948918257520E+000 1.442216136129332E+000 1.477890564091842E+000 1.513946615115140E+000 + 1.550356480962272E+000 1.587090058585229E+000 1.624114879231162E+000 1.661396040843921E+000 + 1.698896144386737E+000 1.736575234753269E+000 1.774390746975033E+000 1.812297458474098E+000 + 1.850247448149718E+000 1.888190063125994E+000 1.926071894024686E+000 1.963836759661548E+000 + 2.001425702096169E+000 2.038776992993378E+000 2.075826152277676E+000 2.112505980081095E+000 + 2.148746602997335E+000 2.184475535661260E+000 2.219617758671233E+000 2.254095813861389E+000 + 2.287829917911568E+000 2.320738095252016E+000 2.352736331178307E+000 2.383738746037487E+000 + 2.413657791278179E+000 2.442404468074922E+000 2.469888569138504E+000 2.496018944209408E+000 + 2.520703789599378E+000 2.543850961995941E+000 2.565368316576093E+000 2.585164069287510E+000 + 2.603147182948601E+000 2.619227776592395E+000 2.633317557233650E+000 2.645330272974646E+000 + 2.655182186083137E+000 2.662792564377622E+000 2.668084188941579E+000 2.670983875861821E+000 + 2.671423009349041E+000 2.669338083253769E+000 2.664671247641866E+000 2.657370856744113E+000 + 2.647392014248979E+000 2.634697111571064E+000 2.619256354405595E+000 2.601048272577583E+000 + 2.580060207919111E+000 2.556288774666781E+000 2.529740286670247E+000 2.500431145549986E+000 + 2.468388183844867E+000 2.433648957155676E+000 2.396261979326946E+000 2.356286894822893E+000 + 2.313794582651679E+000 2.268867186480533E+000 2.221598065968717E+000 2.172091664829743E+000 + 2.120463291721221E+000 2.066838810752694E+000 2.011354239197160E+000 1.954155250889586E+000 + 1.895396584790812E+000 1.835241359280438E+000 1.773860293909876E+000 1.711430841583172E+000 + 1.648136235425231E+000 1.584164455927536E+000 1.519707125309541E+000 1.454958337379428E+000 + 1.390113432494554E+000 1.325367728484799E+000 1.260915219583351E+000 1.196947256479508E+000 + 1.133651221539476E+000 1.071209214003567E+000 1.009796760534710E+000 9.495815668382390E-001 + 8.907223261719891E-001 8.333676004010679E-001 7.776547888064637E-001 7.237091991220098E-001 + 6.716432342465183E-001 6.215557067589736E-001 5.735312917664500E-001 5.276401267532911E-001 + 4.839375650026067E-001 4.424640868608627E-001 4.032453706531171E-001 3.662925224794379E-001 + 3.316024614842047E-001 2.991584545486721E-001 2.689307917746301E-001 2.408775916659710E-001 + 2.149457226392307E-001 1.910718254636931E-001 1.691834195032617E-001 1.492000742562304E-001 + 1.310346267065471E-001 1.145944244436252E-001 9.978257439652881E-002 8.649917737019173E-002 + 7.464252935987283E-002 6.411027183499651E-002 5.480047479175810E-002 4.661263832877219E-002 + 3.944860074430486E-002 3.321334362027601E-002 2.781568697303756E-002 2.316887023569668E-002 + 1.919101751123852E-002 1.580548812170194E-002 1.294111590226242E-002 1.053234288384877E-002 + 8.519254917497786E-003 6.847528373494930E-003 5.468298267644910E-003 4.337959009271181E-003 + 3.417909428891719E-003 2.674253840300821E-003 2.077470647217241E-003 1.602059455300399E-003 + 1.226176841734173E-003 9.312699187726387E-004 7.017156604368532E-004 5.244726996754965E-004 + 3.887510018243229E-004 2.857035301054797E-004 2.081427851301367E-004 1.502839602859206E-004 + 1.075154373452662E-004 7.619647152291323E-005 5.348119360078317E-005 3.716749143179270E-005 + 2.556891965450442E-005 1.740751429285020E-005 1.172524298197721E-005 7.811783653192687E-006 + 5.146374779992688E-006 3.351598558278819E-006 2.157125288569201E-006 1.371645048338557E-006 + 8.614260930661337E-007 5.341555772959840E-007 3.269272107584563E-007 1.974351534057416E-007 + 1.176090999050091E-007 6.907956624450687E-008 3.999409646652116E-008 2.281504116393274E-008 + 1.281926591024606E-008 7.091774653319668E-009 3.861230153303038E-009 2.068236679169222E-009 + 1.089428985546792E-009 5.640759328623301E-010 2.869639335429330E-010 1.433753637271664E-010 + 7.032029490107652E-011 3.384092366736018E-011 1.597167240792011E-011 7.389094871909891E-012 + 3.349232833817912E-012 1.486578053373512E-012 6.457846367063600E-013 2.744156099804972E-013 + 1.140009673626650E-013 4.627412892374642E-014 1.834184570616247E-014 7.095148839423492E-015 + 2.676860148631361E-015 9.843754488613641E-016 3.526022263037693E-016 1.229446530826422E-016 + 4.170022342955144E-017 1.374888823990134E-017 4.403377115388515E-018 1.368907280652900E-018 + 4.127667542968403E-019 1.206263807885867E-019 3.413836240263732E-020 9.348739291169773E-021 + 2.475207640940782E-021 6.330638837296885E-022 1.562717407098599E-022 3.719807319193833E-023 + 8.530367128281651E-024 1.882835435692861E-024 3.996079031596240E-025 8.147078511108688E-026 + 1.593947505913718E-026 2.989491861957743E-027 5.369174064126150E-028 9.224186584328355E-029 + 1.514156780559036E-029 2.372111533761479E-030 3.542480796702909E-031 5.036881062071670E-032 + 6.810170820795555E-033 8.744663434674949E-034 1.065000063010350E-034 1.228558678280248E-035 + 1.340557601899240E-036 1.381677963271496E-037 1.343176074026394E-038 1.229761647898012E-039 + 1.058794473407371E-040 8.559122957445290E-042 6.486057428805286E-043 4.599977873447671E-044 + 3.048074951016347E-045 1.883838045278053E-046 1.084035924764666E-047 5.797499989198551E-049 + 2.876270392592310E-050 1.321250178968203E-051 5.608676944893479E-053 2.195775872626330E-054 + 7.911849868313481E-056 2.618292837327091E-057 7.940962748745951E-059 2.202337083101416E-060 + 5.572714163085252E-062 1.283553115847436E-063 2.684672156664658E-065 5.086734520682092E-067 + 8.709044664301302E-069 1.343913498232657E-070 1.864227795092628E-072 2.318366520347024E-074 + 2.577624223700210E-076 2.554936044452256E-078 2.251130844936808E-080 1.757871448997990E-082 + 1.212863071564989E-084 7.370784883568084E-087 3.932761093467393E-089 1.836252899694842E-091 + 7.477415994592394E-094 2.646370146318890E-096 8.111243430415136E-099 2.145264494124838E-101 + 4.877637823178177E-104 9.497542376711206E-107 1.577544156283163E-109 2.226244523021696E-112 + 2.658235673396834E-115 2.674276089281938E-118 2.256978896613744E-121 1.590837882829889E-124 + 9.322261881785943E-128 4.520466679384141E-131 1.805219832058062E-134 5.907820911444358E-138 + 1.576472747555737E-141 3.412429201375686E-145 5.960163595162540E-149 8.354320450990786E-153 + 9.345528167579182E-157 8.295765530232012E-161 5.809333784117251E-165 3.190115552641305E-169 + 1.365286208678839E-173 4.525197214572680E-178 1.154084933824380E-182 2.249796727379224E-187 + 3.329660062756129E-192 3.715170027767275E-197 3.102944937236045E-202 1.925758388218834E-207 + 8.814487186005974E-213 2.952652553692471E-218 7.181504868704273E-224 1.258019236880010E-229 + 1.574053963572505E-235 1.394803170593195E-241 8.677088262127708E-248 3.755896936583686E-254 + 1.120841509052141E-260 2.284425562952246E-267 3.149342945415919E-274 2.907868665243676E-281 + 1.780059201450065E-288 7.149576293790972E-296 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + + 1.462175882900220E-022 1.556478125265433E-022 1.656862339722604E-022 1.763720779770565E-022 + 1.877470997085312E-022 1.998557473112194E-022 2.127453355886837E-022 2.264662308871371E-022 + 2.410720479030334E-022 2.566198591836620E-022 2.731704181393598E-022 2.907883964387858E-022 + 3.095426367148681E-022 3.295064215688895E-022 3.507577599238438E-022 3.733796918459937E-022 + 3.974606130257317E-022 4.230946201856660E-022 4.503818787656003E-022 4.794290143211726E-022 + 5.103495291655184E-022 5.432642458820351E-022 5.783017794412403E-022 6.155990397665651E-022 + 6.553017667128614E-022 6.975650995480308E-022 7.425541831630959E-022 7.904448133794441E-022 + 8.414241238748081E-022 8.956913174121917E-022 9.534584442289749E-022 1.014951230627818E-021 + 1.080409961007106E-021 1.150090416777425E-021 1.224264875833012E-021 1.303223176483499E-021 + 1.387273850003421E-021 1.476745326224857E-021 1.571987216884129E-021 1.673371681737271E-021 + 1.781294882782308E-021 1.896178532270893E-021 2.018471540558074E-021 2.148651770229230E-021 + 2.287227903358543E-021 2.434741429195173E-021 2.591768760044288E-021 2.758923483610645E-021 + 2.936858760605835E-021 3.126269876988004E-021 3.327896960806716E-021 3.542527874269431E-021 + 3.771001292330155E-021 4.014209979829981E-021 4.273104279995151E-021 4.548695827923721E-021 + 4.842061503571720E-021 5.154347639684858E-021 5.486774501118669E-021 5.840641053049889E-021 + 6.217330036710947E-021 6.618313372481420E-021 7.045157911448758E-021 7.499531557912875E-021 + 7.983209786758474E-021 8.498082581161460E-021 9.046161817739281E-021 9.629589128002355E-021 + 1.025064426682562E-020 1.091175402064023E-020 1.161550169015390E-020 1.236463718465452E-020 + 1.316208776734027E-020 1.401096949366386E-020 1.491459938738704E-020 1.587650840192237E-020 + 1.690045521761033E-020 1.799044092884426E-020 1.915072467843305E-020 2.038584030029442E-020 + 2.170061403550839E-020 2.310018339095933E-020 2.459001721425504E-020 2.617593706336713E-020 + 2.786413995449521E-020 2.966122257704113E-020 3.157420707031591E-020 3.361056846270105E-020 + 3.577826388048320E-020 3.808576364049831E-020 4.054208434807624E-020 4.315682412962239E-020 + 4.594020013750362E-020 4.890308847379164E-020 5.205706668886818E-020 5.541445902095166E-020 + 5.898838455332563E-020 6.279280847743956E-020 6.684259666219589E-020 7.115357374265490E-020 + 7.574258495513696E-020 8.062756196034733E-020 8.582759291172784E-020 9.136299704282784E-020 + 9.725540406514945E-020 1.035278386867097E-019 1.102048105815855E-019 1.173124101619931E-019 + 1.248784105271360E-019 1.329323759871916E-019 1.415057775864863E-019 1.506321160772830E-019 + 1.603470528246906E-019 1.706885491542166E-019 1.816970146864669E-019 1.934154652386040E-019 + 2.058896909095820E-019 2.191684350059422E-019 2.333035845073327E-019 2.483503728159996E-019 + 2.643675955824917E-019 2.814178404509292E-019 2.995677316215712E-019 3.188881901863047E-019 + 3.394547112543453E-019 3.613476589509848E-019 3.846525804421462E-019 4.094605402117661E-019 + 4.358684758982204E-019 4.639795770802305E-019 4.939036884923465E-019 5.257577392456101E-019 + 5.596661997305585E-019 5.957615679879358E-019 6.341848874476424E-019 6.750862980589379E-019 + 7.186256229655132E-019 7.649729930178433E-019 8.143095115631220E-019 8.668279621104687E-019 + 9.227335616365948E-019 9.822447624755351E-019 1.045594105925799E-018 1.113029130910451E-018 + 1.184813341240760E-018 1.261227235262914E-018 1.342569401911315E-018 1.429157687451194E-018 + 1.521330437469636E-018 1.619447818968202E-018 1.723893227723095E-018 1.835074786412329E-018 + 1.953426939363763E-018 2.079412150155504E-018 2.213522708702200E-018 2.356282654888262E-018 + 2.508249826264828E-018 2.670018037811827E-018 2.842219402282534E-018 3.025526800197588E-018 + 3.220656509139739E-018 3.428371002623716E-018 3.649481929477497E-018 3.884853285377269E-018 + 4.135404788928743E-018 4.402115475486815E-018 4.686027522757042E-018 4.988250323126727E-018 + 5.309964818638990E-018 5.652428115548723E-018 6.016978396491333E-018 6.405040149459736E-018 + 6.818129734020721E-018 7.257861306521708E-018 7.725953127440539E-018 8.224234275523740E-018 + 8.754651794950274E-018 9.319278303446830E-018 9.920320091084753E-018 1.056012574140452E-017 + 1.124119530855409E-017 1.196619008630288E-017 1.273794300710181E-017 1.355946971182538E-017 + 1.443398033345093E-017 1.536489204071874E-017 1.635584239078993E-017 1.741070354307522E-017 + 1.853359738977739E-017 1.972891166226988E-017 2.100131707624598E-017 2.235578558263676E-017 + 2.379760979560995E-017 2.533242367356769E-017 2.696622453395395E-017 2.870539648789278E-017 + 3.055673538623343E-017 3.252747537447341E-017 3.462531716032848E-017 3.685845810440357E-017 + 3.923562425154234E-017 4.176610442802450E-017 4.445978653783848E-017 4.732719619986409E-017 + 5.037953787693906E-017 5.362873865751736E-017 5.708749486100716E-017 6.076932164888719E-017 + 6.468860583546783E-017 6.886066210465187E-017 7.330179285235926E-017 7.802935188846239E-017 + 8.306181224713296E-017 8.841883837058396E-017 9.412136294826017E-017 1.001916687117230E-016 + 1.066534755048586E-016 1.135320329696198E-016 1.208542192094862E-016 1.286486458161693E-016 + 1.369457696699451E-016 1.457780119504983E-016 1.551798848232880E-016 1.651881262964848E-016 + 1.758418437754304E-016 1.871826668755423E-016 1.992549100908238E-016 2.121057459535577E-016 + 2.257853893618484E-016 2.403472937952612E-016 2.558483601852576E-016 2.723491592566324E-016 + 2.899141682087043E-016 3.086120226611337E-016 3.285157848488399E-016 3.497032291139678E-016 + 3.722571458105245E-016 3.962656648091288E-016 4.218225998660214E-016 4.490278152019592E-016 + 4.779876157233570E-016 5.088151624105593E-016 5.416309144962758E-016 5.765631001620793E-016 + 6.137482175921781E-016 6.533315683423364E-016 6.954678251081156E-016 7.403216361109617E-016 + 7.880682684638058E-016 8.388942930301445E-016 8.929983134526572E-016 9.505917422000980E-016 + 1.011899626664824E-015 1.077161528538975E-015 1.146632459905485E-015 1.220583879701657E-015 + 1.299304754449061E-015 1.383102687394509E-015 1.472305120474264E-015 1.567260613798177E-015 + 1.668340207653307E-015 1.775938872349101E-015 1.890477051569386E-015 2.012402305261869E-015 + 2.142191058484707E-015 2.280350463043769E-015 2.427420379195017E-015 2.583975485155418E-015 + 2.750627522665385E-015 2.928027687377292E-015 3.116869173410415E-015 3.317889882015334E-015 + 3.531875304931717E-015 3.759661593706322E-015 4.002138826964646E-015 4.260254488402833E-015 + 4.535017169090476E-015 4.827500508550669E-015 5.138847390017384E-015 5.470274406262985E-015 + 5.823076613446049E-015 6.198632591555406E-015 6.598409831223634E-015 7.023970467959402E-015 + 7.476977386204962E-015 7.959200717070157E-015 8.472524755133346E-015 9.018955321335937E-015 + 9.600627600741575E-015 1.021981448578563E-014 1.087893545761616E-014 1.158056604023050E-014 + 1.232744786434872E-014 1.312249938034911E-014 1.396882726212623E-014 1.486973854643129E-014 + 1.582875355513049E-014 1.684961965087331E-014 1.793632587992206E-014 1.909311855935898E-014 + 2.032451786957696E-014 2.163533551688994E-014 2.303069353527813E-014 2.451604430073643E-014 + 2.609719183643132E-014 2.778031449191506E-014 2.957198908501749E-014 3.147921660074677E-014 + 3.350944954761892E-014 3.567062107830994E-014 3.797117598841721E-014 4.042010371445948E-014 + 4.302697346005100E-014 4.580197158750739E-014 4.875594142098772E-014 5.190042561670216E-014 + 5.524771126574692E-014 5.881087790580217E-014 6.260384862929833E-014 6.664144448775297E-014 + 7.093944240486102E-014 7.551463682463230E-014 8.038490533546185E-014 8.556927852655719E-014 + 9.108801434968362E-014 9.696267727679273E-014 1.032162225628335E-013 1.098730859430073E-013 + 1.169592791149455E-013 1.245024913789057E-013 1.325321978331391E-013 1.410797745471906E-013 + 1.501786211631740E-013 1.598642914040682E-013 1.701746319989920E-013 1.811499305683032E-013 + 1.928330730463559E-013 2.052697112570544E-013 2.185084412969767E-013 2.326009934230920E-013 + 2.476024341870462E-013 2.635713816058220E-013 2.805702342095576E-013 2.986654148614879E-013 + 3.179276303027211E-013 3.384321474360001E-013 3.602590874279833E-013 3.834937387792400E-013 + 4.082268905852410E-013 4.345551872905111E-013 4.625815063221393E-013 4.924153600781599E-013 + 5.241733238415688E-013 5.579794912919739E-013 5.939659593947349E-013 6.322733445622496E-013 + 6.730513321041874E-013 7.164592611136024E-013 7.626667470742725E-013 8.118543446220037E-013 + 8.642142530495712E-013 9.199510673118820E-013 9.792825774658776E-013 1.042440619668800E-012 + 1.109671982059964E-012 1.181239369065638E-012 1.257422427894819E-012 1.338518841236839E-012 + 1.424845490430236E-012 1.516739693647765E-012 1.614560523935568E-012 1.718690212256338E-012 + 1.829535641018736E-012 1.947529933928598E-012 2.073134148373918E-012 2.206839076956329E-012 + 2.349167165207935E-012 2.500674552986773E-012 2.661953247526891E-012 2.833633436633890E-012 + 3.016385951064042E-012 3.210924885707994E-012 3.418010389820790E-012 3.638451637200094E-012 + 3.873109987917780E-012 4.122902353958360E-012 4.388804781914621E-012 4.671856266738330E-012 + 4.973162811447523E-012 5.293901748651866E-012 5.635326340781270E-012 5.998770676991454E-012 + 6.385654885879173E-012 6.797490684374143E-012 7.235887284487681E-012 7.702557680996409E-012 + 8.199325344627715E-012 8.728131346897424E-012 9.291041944437677E-012 9.890256652446894E-012 + 1.052811683880536E-011 1.120711487243436E-011 1.192990386164110E-011 1.269930802049803E-011 + 1.351833370375750E-011 1.439018115341549E-011 1.531825700281776E-011 1.630618758716129E-011 + 1.735783311239522E-011 1.847730273787741E-011 1.966897063171390E-011 2.093749306150828E-011 + 2.228782658729131E-011 2.372524742771011E-011 2.525537207513648E-011 2.688417924023491E-011 + 2.861803321172413E-011 3.046370872259301E-011 3.242841741991961E-011 3.451983604170357E-011 + 3.674613641079211E-011 3.911601736307833E-011 4.163873873470499E-011 4.432415754105204E-011 + 4.718276648884755E-011 5.022573497185391E-011 5.346495271028723E-011 5.691307620444641E-011 + 6.058357818403263E-011 6.449080024633234E-011 6.865000888889693E-011 7.307745515561304E-011 + 7.779043812916541E-011 8.280737251792874E-011 8.814786060130629E-011 9.383276881456623E-011 + 9.988430927234409E-011 1.063261265492653E-010 1.131833900566892E-010 1.204828923764151E-010 + 1.282531539354716E-010 1.365245344308726E-010 1.453293514395792E-010 1.547020066769837E-010 + 1.646791203970934E-010 1.752996744593888E-010 1.866051646211904E-010 1.986397626503752E-010 + 2.114504888916673E-010 2.250873959605198E-010 2.396037642820847E-010 2.550563102390180E-010 + 2.715054077410889E-010 2.890153240820158E-010 3.076544710046995E-010 3.274956719554445E-010 + 3.486164465709548E-010 3.710993135091937E-010 3.950321128068241E-010 4.205083490221888E-010 + 4.476275565039420E-010 4.764956882118666E-010 5.072255296083004E-010 5.399371392365840E-010 + 5.747583177070350E-010 6.118251069219224E-010 6.512823214889744E-010 6.932841143985700E-010 + 7.379945791735854E-010 7.855883908432332E-010 8.362514882437633E-010 8.901818003102890E-010 + 9.475900191956162E-010 1.008700423234904E-009 1.073751752969387E-009 1.142998143649582E-009 + 1.216710117858908E-009 1.295175642133110E-009 1.378701251700901E-009 1.467613247736926E-009 + 1.562258971801162E-009 1.663008162440263E-009 1.770254399246700E-009 1.884416640013162E-009 + 2.005940856982732E-009 2.135301778582143E-009 2.273004743436990E-009 2.419587673905775E-009 + 2.575623176836281E-009 2.741720779743731E-009 2.918529311138827E-009 3.106739434296095E-009 + 3.307086344351222E-009 3.520352639253748E-009 3.747371375779188E-009 3.989029322526642E-009 + 4.246270422596398E-009 4.520099479459489E-009 4.811586080402148E-009 5.121868772854075E-009 + 5.452159509895816E-009 5.803748382290505E-009 6.178008655501534E-009 6.576402131348225E-009 + 7.000484855215882E-009 7.451913191084826E-009 7.932450288076382E-009 8.443972963739964E-009 + 8.988479030930103E-009 9.568095096851184E-009 1.018508486468731E-008 1.084185797019456E-008 + 1.154097938771588E-008 1.228517944229951E-008 1.307736446696220E-008 1.392062814665207E-008 + 1.481826359314232E-008 1.577377619793202E-008 1.679089731326358E-008 1.787359881458975E-008 + 1.902610860125605E-008 2.025292709581972E-008 2.155884480631202E-008 2.294896101989271E-008 + 2.442870370074722E-008 2.600385066976617E-008 2.768055214853747E-008 2.946535475548708E-008 + 3.136522704766151E-008 3.338758670765437E-008 3.554032948158321E-008 3.783185998083529E-008 + 4.027112446754694E-008 4.286764575150466E-008 4.563156033435916E-008 4.857365794578749E-008 + 5.170542362553872E-008 5.503908251519117E-008 5.858764753399019E-008 6.236497012433660E-008 + 6.638579426443064E-008 7.066581395826847E-008 7.522173442669570E-008 8.007133723760470E-008 + 8.523354962865644E-008 9.072851829218672E-008 9.657768790929005E-008 1.028038847384968E-007 + 1.094314055840938E-007 1.164861124900020E-007 1.239955335273454E-007 1.319889700674868E-007 + 1.404976109574511E-007 1.495546540414374E-007 1.591954355005886E-007 1.694575675134998E-007 + 1.803810847721960E-007 1.920086004226122E-007 2.043854720351321E-007 2.175599782495753E-007 + 2.315835067803625E-007 2.465107545115692E-007 2.623999404583510E-007 2.793130324210402E-007 + 2.973159882111554E-007 3.164790123849250E-007 3.368768294799044E-007 3.585889748140175E-007 + 3.817001039742639E-007 4.063003221945030E-007 4.324855348985426E-007 4.603578207665000E-007 + 4.900258287692866E-007 5.216052007086176E-007 5.552190208982626E-007 5.909982947269406E-007 + 6.290824579546126E-007 6.696199187122684E-007 7.127686343014010E-007 7.586967250232312E-007 + 8.075831274103631E-007 8.596182893851294E-007 9.150049100300789E-007 9.739587268277006E-007 + 1.036709353408756E-006 1.103501171042689E-006 1.174594277309933E-006 1.250265495615283E-006 + 1.330809449435084E-006 1.416539705438968E-006 1.507789989890977E-006 1.604915483015601E-006 + 1.708294196312554E-006 1.818328438121834E-006 1.935446373077811E-006 2.060103681450113E-006 + 2.192785324750722E-006 2.334007424392081E-006 2.484319260612856E-006 2.644305399346190E-006 + 2.814587955193006E-006 2.995828999181387E-006 3.188733120543723E-006 3.394050152329574E-006 + 3.612578071294455E-006 3.845166083166800E-006 4.092717905098956E-006 4.356195257855460E-006 + 4.636621581087202E-006 4.935085985884071E-006 5.252747459696730E-006 5.590839339672090E-006 + 5.950674071460365E-006 6.333648271629374E-006 6.741248112965842E-006 7.175055053159552E-006 + 7.636751928658787E-006 8.128129436857141E-006 8.651093031231494E-006 9.207670255598505E-006 + 9.800018545303618E-006 1.043043352490405E-005 1.110135783376290E-005 1.181539051294468E-005 + 1.257529698889445E-005 1.338401969160741E-005 1.424468934735676E-005 1.516063698855274E-005 + 1.613540672596984E-005 1.717276933140255E-005 1.827673668180987E-005 1.945157711919391E-005 + 2.070183178383424E-005 2.203233198209007E-005 2.344821765378488E-005 2.495495700822838E-005 + 2.655836740221700E-005 2.826463753789720E-005 3.008035106320368E-005 3.201251166269728E-005 + 3.406856973205540E-005 3.625645073522327E-005 3.858458534933505E-005 4.106194150899152E-005 + 4.369805846833325E-005 4.650308300662669E-005 4.948780791079586E-005 5.266371287648757E-005 + 5.604300797793834E-005 5.963867986606893E-005 6.346454086396085E-005 6.753528113917610E-005 + 7.186652414326371E-005 7.647488552038228E-005 8.137803569916554E-005 8.659476639492913E-005 + 9.214506126302419E-005 9.805017095863079E-005 1.043326928736710E-004 1.110166558377329E-004 + 1.181276100870957E-004 1.256927228241368E-004 1.337408797085733E-004 1.423027926423773E-004 + 1.514111142316153E-004 1.611005593312072E-004 1.714080341025851E-004 1.823727730395193E-004 + 1.940364844442227E-004 2.064435048640113E-004 2.196409630286831E-004 2.336789538602598E-004 + 2.486107231598863E-004 2.644928636118101E-004 2.813855227812216E-004 2.993526238217208E-004 + 3.184620996492564E-004 3.387861413825279E-004 3.604014618955182E-004 3.833895753756533E-004 + 4.078370938316406E-004 4.338360415481347E-004 4.614841885401505E-004 4.908854041189982E-004 + 5.221500317430680E-004 5.553952863917020E-004 5.907456757684783E-004 6.283334467114815E-004 + 6.682990582633304E-004 7.107916829319952E-004 7.559697377559499E-004 8.040014468734117E-004 + 8.550654373854686E-004 9.093513703976090E-004 9.670606092225261E-004 1.028406926830408E-003 + 1.093617254740549E-003 1.162932475660193E-003 1.236608262293965E-003 1.314915964868805E-003 + 1.398143550046414E-003 1.486596594027280E-003 1.580599332786975E-003 1.680495772528293E-003 + 1.786650863579524E-003 1.899451741122313E-003 2.019309036290321E-003 2.146658261342516E-003 + 2.281961272783811E-003 2.425707816478072E-003 2.578417158977024E-003 2.740639809471345E-003 + 2.912959336956619E-003 3.095994287399269E-003 3.290400205881416E-003 3.496871768902960E-003 + 3.716145032220630E-003 3.948999799806425E-003 4.196262119715107E-003 4.458806912854797E-003 + 4.737560740862682E-003 5.033504719492994E-003 5.347677584126955E-003 5.681178914216669E-003 + 6.035172523668077E-003 6.410890024359302E-003 6.809634570171559E-003 7.232784789079922E-003 + 7.681798911013037E-003 8.158219099332812E-003 8.663675993914441E-003 9.199893473915253E-003 + 9.768693648402256E-003 1.037200208307042E-002 1.101185327130599E-002 1.169039635784466E-002 + 1.240990112322742E-002 1.317276423716240E-002 1.398151578876529E-002 1.483882610144985E-002 + 1.574751283998394E-002 1.671054841690222E-002 1.773106770505781E-002 1.881237606261691E-002 + 1.995795767621407E-002 2.117148422731020E-002 2.245682388600493E-002 2.381805063563600E-002 + 2.525945393046230E-002 2.678554868752806E-002 2.840108561246492E-002 3.011106185747297E-002 + 3.192073200801236E-002 3.383561939285157E-002 3.586152770999089E-002 3.800455295864334E-002 + 4.027109566486695E-002 4.266787338557344E-002 4.520193347251790E-002 4.788066607441397E-002 + 5.071181735156992E-002 5.370350287333811E-002 5.686422116419063E-002 6.020286735941305E-002 + 6.372874692613441E-002 6.745158939975777E-002 7.138156207974257E-002 7.552928362209592E-002 + 7.990583745890409E-002 8.452278496764272E-002 8.939217830496822E-002 9.452657281106094E-002 + 9.993903888145644E-002 1.056431731936143E-001 1.116531091651785E-001 1.179835265101051E-001 + 1.246496597474055E-001 1.316673055053312E-001 1.390528284513479E-001 1.468231656651965E-001 + 1.549958292588748E-001 1.635889070333443E-001 1.726210609473993E-001 1.821115231593685E-001 + 1.920800893872083E-001 2.025471093173291E-001 2.135334737770052E-001 2.250605983698303E-001 + 2.371504032583598E-001 2.498252887629602E-001 2.631081064313052E-001 2.770221252188470E-001 + 2.915909924073989E-001 3.068386888768058E-001 3.227894783337297E-001 3.394678500924371E-001 + 3.568984549949860E-001 3.751060340532015E-001 3.941153393923790E-001 4.139510470771309E-001 + 4.346376614040113E-001 4.561994102534087E-001 4.786601311057484E-001 5.020431473444731E-001 + 5.263711344911360E-001 5.516659760471599E-001 5.779486086524321E-001 6.052388563141302E-001 + 6.335552535102419E-001 6.629148570318009E-001 6.933330464969677E-001 7.248233135486665E-001 + 7.573970398368570E-001 7.910632639868369E-001 8.258284378666703E-001 8.616961725910062E-001 + 8.986669748345998E-001 9.367379741781203E-001 9.759026423707284E-001 1.016150505568641E+000 + 1.057466850796858E+000 1.099832428081098E+000 1.143223149909257E+000 1.187609789905012E+000 + 1.232957682829337E+000 1.279226428268111E+000 1.326369600612852E+000 1.374334468195942E+000 + 1.423061724698310E+000 1.472485236203694E+000 1.522531807526494E+000 1.573120971685070E+000 + 1.624164806626030E+000 1.675567783522015E+000 1.727226651160640E+000 1.779030361110541E+000 + 1.830860038484603E+000 1.882589003215017E+000 1.934082846802281E+000 1.985199569493109E+000 + 2.035789782774051E+000 2.085696981929492E+000 2.134757893198216E+000 2.182802899763846E+000 + 2.229656550423883E+000 2.275138154294110E+000 2.319062464312506E+000 2.361240451605938E+000 + 2.401480171969081E+000 2.439587724776090E+000 2.475368303601603E+000 2.508627336669046E+000 + 2.539171713975869E+000 2.566811096572935E+000 2.591359302008281E+000 2.612635758396620E+000 + 2.630467017960602E+000 2.644688319227629E+000 2.655145185379825E+000 2.661695044571110E+000 + 2.664208856374622E+000 2.662572726939668E+000 2.656689493956715E+000 2.646480261191736E+000 + 2.631885861199013E+000 2.612868223898281E+000 2.589411628051954E+000 2.561523812345059E+000 + 2.529236922797276E+000 2.492608273663159E+000 2.451720899838569E+000 2.406683880119918E+000 + 2.357632412479976E+000 2.304727624845178E+000 2.248156107688476E+000 2.188129158080822E+000 + 2.124881728653536E+000 2.058671079177526E+000 1.989775133113844E+000 1.918490546468831E+000 + 1.845130501513588E+000 1.770022243307802E+000 1.693504382390406E+000 1.615923992342635E+000 + 1.537633536060789E+000 1.458987659355202E+000 1.380339894777292E+000 1.302039322223461E+000 + 1.224427235735746E+000 1.147833867887119E+000 1.072575224089134E+000 9.989500790013043E-001 + 9.272371858846695E-001 8.576927471908504E-001 7.905481909080992E-001 7.260082922295722E-001 + 6.642496740398568E-001 6.054197126435782E-001 5.496358672354267E-001 4.969854430206963E-001 + 4.475257888559421E-001 4.012849210366148E-001 3.582625556731000E-001 3.184315232420894E-001 + 2.817395306486830E-001 2.481112287470092E-001 2.174505369850455E-001 1.896431718701827E-001 + 1.645593224636376E-001 1.420564142214117E-001 1.219819022677456E-001 1.041760366155532E-001 + 8.847454487524190E-002 7.471118249784067E-002 6.272010640261065E-002 5.233803471662338E-002 + 4.340616303870681E-002 3.577181583893254E-002 2.928982001028183E-002 2.382359589361474E-002 + 1.924596900698393E-002 1.543971295980491E-002 1.229784039421193E-002 9.723664091975582E-003 + 7.630654492625093E-003 5.942122722783499E-003 4.590759833247844E-003 3.518063329846719E-003 + 2.673681367426922E-003 2.014703295509832E-003 1.504922772131303E-003 1.114096591430873E-003 + 8.172189004459156E-004 5.938268073038953E-004 4.273496886827002E-004 3.045109488997117E-004 + 2.147876978483442E-004 1.499308997187032E-004 1.035460651945428E-004 7.073255042299658E-005 + 4.777799085482913E-005 3.190331631493706E-005 2.105312490945167E-005 1.372588320222525E-005 + 8.838405924864462E-006 5.619284885869909E-006 3.526319951758341E-006 2.183496442689293E-006 + 1.333602176015995E-006 8.031419916135984E-007 4.767557977489251E-007 2.788551772597717E-007 + 1.606489804388688E-007 9.112281057614542E-008 5.086923781751735E-008 2.793747420169008E-008 + 1.508840009558973E-008 8.010123239712556E-009 4.178171924702596E-009 2.140380001070246E-009 + 1.076352185998487E-009 5.310963102366524E-010 2.570033780822850E-010 1.219093575685115E-010 + 5.665633823261475E-011 2.578387820248734E-011 1.148432819159572E-011 5.003617012682046E-012 + 2.131283127276864E-012 8.870094045313735E-013 3.604876328381785E-013 1.429770086939624E-013 + 5.530797280652690E-014 2.085355942544802E-014 7.658819468038774E-015 2.738065230402991E-015 + 9.522037522069473E-016 3.218966450998394E-016 1.057041678733889E-016 3.369284050031725E-017 + 1.041659226965588E-017 3.121192929892236E-018 9.056874780809798E-019 2.542998416011246E-019 + 6.903384132411377E-020 1.810319805415209E-020 4.581899687245910E-021 1.118260368701923E-021 + 2.629344997398454E-022 5.950446796702401E-023 1.294877379190858E-023 2.706785484108373E-024 + 5.429793506951806E-025 1.044152750653216E-025 1.922788460558208E-026 3.386955297246758E-027 + 5.700455939544087E-028 9.156536158368851E-029 1.402041847017240E-029 2.043960644814604E-030 + 2.833519470614864E-031 3.730513850316225E-032 4.658354694003840E-033 5.509804455514299E-034 + 6.164290875435697E-035 6.514211230389104E-036 6.492998688031802E-037 6.095238093559400E-038 + 5.380699741504701E-039 4.459782915440939E-040 3.465154521630941E-041 2.519735303923272E-042 + 1.711914940619850E-043 1.084819456652902E-044 6.400515288204457E-046 3.509695048035252E-047 + 1.785318475300949E-048 8.408691313938483E-050 3.659831900515888E-051 1.469082154827533E-052 + 5.427420545778296E-054 1.841581808990035E-055 5.726685321477010E-057 1.628438323026124E-058 + 4.224853485391792E-060 9.977370329670242E-062 2.139690052411261E-063 4.156770460662340E-065 + 7.297008478780961E-067 1.154524121567496E-068 1.642056272224545E-070 2.093767796033592E-072 + 2.386840430398162E-074 2.425722835174629E-076 2.191387822937403E-078 1.754538812826825E-080 + 1.241209247467679E-082 7.734002853499109E-085 4.231024287225358E-087 2.025525943784736E-089 + 8.456958905438088E-092 3.068814434837445E-094 9.644169554741296E-097 2.615264439719548E-099 + 6.096796166296277E-102 1.217196592371734E-104 2.072947838606954E-107 2.999418570211072E-110 + 3.672104704191629E-113 3.787783757161365E-116 3.277659209937039E-119 2.368751948141446E-122 + 1.423220927719694E-125 7.076062441628261E-129 2.897315850222321E-132 9.721883892923087E-136 + 2.659909973561709E-139 5.903390093193702E-143 1.057190799575857E-146 1.519370487102783E-150 + 1.742664440367682E-154 1.586075108153494E-158 1.138809215531599E-162 6.411924783252220E-167 + 2.813604630304094E-171 9.561680766929973E-176 2.500298511625383E-180 4.997522218299885E-185 + 7.583482903269672E-190 8.675706900000598E-195 7.429466144607513E-200 4.727621503169011E-205 + 2.218683297132794E-210 7.620228084505850E-216 1.900327470780521E-221 3.413167733930210E-227 + 4.378721550254014E-233 3.978304301010715E-239 2.537560763394368E-245 1.126194660676221E-251 + 3.445889650393310E-258 7.200978809090875E-265 1.017868885685147E-271 9.636160683156376E-279 + 6.048129117908457E-286 2.490716367432586E-293 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + + 6.448036425000000E-001 -1.932837535000000E-001 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 -1.932837535000000E-001 4.990565055000000E-001 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 1.507061325000000E-001 -1.566946650000000E-001 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 +-1.566946650000000E-001 3.708072555000000E-001 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 +-1.404853854500000E+000 1.503877312500000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 1.503877312500000E+000 -3.410473175500000E+000 + + + + + + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + diff --git a/glue/qe/example/INPUT/W.GTH_LDA.UPF b/glue/qe/example/INPUT/W.GTH_LDA.UPF new file mode 100644 index 0000000..6908600 --- /dev/null +++ b/glue/qe/example/INPUT/W.GTH_LDA.UPF @@ -0,0 +1,3285 @@ + + + Generated in analytical, separable form + Author: Goedecker/Hartwigsen/Hutter/Teter + Generation date: Phys.Rev.B58, 3641 (1998); B54, 1703 (1996) + Pseudopotential type: NC + Element: W + Functional: PZ + + Suggested minimum cutoff for wavefunctions: 0. Ry + Suggested minimum cutoff for charge density: 0. Ry + The Pseudo was generated with a Non-Relativistic Calculation + Local Potential: unknown format, L component and cutoff radius: -3 0.0000 + + Valence configuration: + nl pn l occ Rcut Rcut US E pseu + + Generation configuration: not available. + Comment: + Info: automatically converted from CPMD format + + + + + + + + 1.232272926425022E-005 1.247773011714895E-005 1.263468064076463E-005 1.279360535893586E-005 + 1.295452910397324E-005 1.311747702053931E-005 1.328247456957755E-005 1.344954753229069E-005 + 1.361872201416906E-005 1.379002444906966E-005 1.396348160334645E-005 1.413912058003268E-005 + 1.431696882307581E-005 1.449705412162563E-005 1.467940461437645E-005 1.486404879396376E-005 + 1.505101551141626E-005 1.524033398066394E-005 1.543203378310280E-005 1.562614487221700E-005 + 1.582269757825911E-005 1.602172261298936E-005 1.622325107447434E-005 1.642731445194615E-005 + 1.663394463072272E-005 1.684317389718986E-005 1.705503494384614E-005 1.726956087441114E-005 + 1.748678520899795E-005 1.770674188935081E-005 1.792946528414853E-005 1.815499019437468E-005 + 1.838335185875532E-005 1.861458595926510E-005 1.884872862670269E-005 1.908581644633624E-005 + 1.932588646361993E-005 1.956897618998237E-005 1.981512360868788E-005 2.006436718077145E-005 + 2.031674585104828E-005 2.057229905419907E-005 2.083106672093176E-005 2.109308928422071E-005 + 2.135840768562456E-005 2.162706338168330E-005 2.189909835039604E-005 2.217455509778008E-005 + 2.245347666451262E-005 2.273590663265597E-005 2.302188913246722E-005 2.331146884929381E-005 + 2.360469103055567E-005 2.390160149281515E-005 2.420224662893608E-005 2.450667341533263E-005 + 2.481492941930956E-005 2.512706280649461E-005 2.544312234836456E-005 2.576315742986590E-005 + 2.608721805713120E-005 2.641535486529280E-005 2.674761912639455E-005 2.708406275740323E-005 + 2.742473832832073E-005 2.776969907039809E-005 2.811899888445311E-005 2.847269234929235E-005 + 2.883083473023930E-005 2.919348198776966E-005 2.956069078625521E-005 2.993251850281780E-005 + 3.030902323629464E-005 3.069026381631631E-005 3.107629981249913E-005 3.146719154375289E-005 + 3.186300008770585E-005 3.226378729024829E-005 3.266961577519599E-005 3.308054895407544E-005 + 3.349665103603187E-005 3.391798703786214E-005 3.434462279417376E-005 3.477662496767162E-005 + 3.521406105957429E-005 3.565699942016110E-005 3.610550925945203E-005 3.655966065802198E-005 + 3.701952457795092E-005 3.748517287391201E-005 3.795667830439882E-005 3.843411454309416E-005 + 3.891755619038166E-005 3.940707878500227E-005 3.990275881585738E-005 4.040467373396027E-005 + 4.091290196453804E-005 4.142752291928571E-005 4.194861700877445E-005 4.247626565501595E-005 + 4.301055130418469E-005 4.355155743950035E-005 4.409936859427227E-005 4.465407036510786E-005 + 4.521574942528746E-005 4.578449353830692E-005 4.636039157159100E-005 4.694353351037911E-005 + 4.753401047178552E-005 4.813191471903689E-005 4.873733967588825E-005 4.935037994122086E-005 + 4.997113130382341E-005 5.059969075735919E-005 5.123615651552172E-005 5.188062802738058E-005 + 5.253320599292067E-005 5.319399237877680E-005 5.386309043416609E-005 5.454060470702105E-005 + 5.522664106032522E-005 5.592130668865454E-005 5.662471013492676E-005 5.733696130736136E-005 + 5.805817149665324E-005 5.878845339336173E-005 5.952792110551899E-005 6.027669017645948E-005 + 6.103487760287388E-005 6.180260185309019E-005 6.257998288558440E-005 6.336714216772446E-005 + 6.416420269474972E-005 6.497128900898901E-005 6.578852721932113E-005 6.661604502087907E-005 + 6.745397171500293E-005 6.830243822944343E-005 6.916157713881962E-005 7.003152268533412E-005 + 7.091241079974843E-005 7.180437912262264E-005 7.270756702582191E-005 7.362211563429358E-005 + 7.454816784811855E-005 7.548586836483918E-005 7.643536370206903E-005 7.739680222038630E-005 + 7.837033414651543E-005 7.935611159680071E-005 8.035428860097425E-005 8.136502112622375E-005 + 8.238846710156267E-005 8.342478644250676E-005 8.447414107606163E-005 8.553669496602360E-005 + 8.661261413859977E-005 8.770206670834983E-005 8.880522290445421E-005 8.992225509731316E-005 + 9.105333782547927E-005 9.219864782293011E-005 9.335836404668285E-005 9.453266770475690E-005 + 9.572174228448818E-005 9.692577358119864E-005 9.814494972722824E-005 9.937946122133022E-005 + 1.006295009584370E-004 1.018952642598010E-004 1.031769489035130E-004 1.044747551554064E-004 + 1.057888858003483E-004 1.071195461739256E-004 1.084669441945292E-004 1.098312903958407E-004 + 1.112127979597301E-004 1.126116827495650E-004 1.140281633439396E-004 1.154624610708290E-004 + 1.169148000421707E-004 1.183854071888841E-004 1.198745122963278E-004 1.213823480402043E-004 + 1.229091500229165E-004 1.244551568103803E-004 1.260206099693017E-004 1.276057541049218E-004 + 1.292108368992365E-004 1.308361091496985E-004 1.324818248084031E-004 1.341482410217704E-004 + 1.358356181707241E-004 1.375442199113766E-004 1.392743132162264E-004 1.410261684158717E-004 + 1.428000592412521E-004 1.445962628664179E-004 1.464150599518399E-004 1.482567346882633E-004 + 1.501215748411122E-004 1.520098717954549E-004 1.539219206015321E-004 1.558580200208597E-004 + 1.578184725729115E-004 1.598035845823868E-004 1.618136662270760E-004 1.638490315863256E-004 + 1.659099986901140E-004 1.679968895687445E-004 1.701100303031621E-004 1.722497510759064E-004 + 1.744163862227010E-004 1.766102742846957E-004 1.788317580613641E-004 1.810811846640652E-004 + 1.833589055702829E-004 1.856652766785425E-004 1.880006583640219E-004 1.903654155348613E-004 + 1.927599176891791E-004 1.951845389728092E-004 1.976396582377598E-004 2.001256591014108E-004 + 2.026429300064557E-004 2.051918642815939E-004 2.077728602029923E-004 2.103863210565147E-004 + 2.130326552007363E-004 2.157122761307517E-004 2.184256025427821E-004 2.211730583996004E-004 + 2.239550729967737E-004 2.267720810297427E-004 2.296245226617444E-004 2.325128435925863E-004 + 2.354374951282907E-004 2.383989342516103E-004 2.413976236934329E-004 2.444340320050853E-004 + 2.475086336315430E-004 2.506219089855660E-004 2.537743445227622E-004 2.569664328175980E-004 + 2.601986726403639E-004 2.634715690351081E-004 2.667856333985511E-004 2.701413835599923E-004 + 2.735393438622215E-004 2.769800452434494E-004 2.804640253202668E-004 2.839918284716490E-004 + 2.875640059240159E-004 2.911811158373618E-004 2.948437233924699E-004 2.985524008792222E-004 + 3.023077277860216E-004 3.061102908903374E-004 3.099606843503910E-004 3.138595097979942E-004 + 3.178073764325555E-004 3.218049011162687E-004 3.258527084704983E-004 3.299514309733789E-004 + 3.341017090586405E-004 3.383041912156777E-004 3.425595340908776E-004 3.468684025902221E-004 + 3.512314699831803E-004 3.556494180079096E-004 3.601229369777768E-004 3.646527258892228E-004 + 3.692394925309807E-004 3.738839535946699E-004 3.785868347867814E-004 3.833488709420690E-004 + 3.881708061383707E-004 3.930533938128712E-004 3.979973968798282E-004 4.030035878497799E-004 + 4.080727489502500E-004 4.132056722479743E-004 4.184031597726607E-004 4.236660236423093E-004 + 4.289950861901075E-004 4.343911800929199E-004 4.398551485013977E-004 4.453878451717212E-004 + 4.509901345990012E-004 4.566628921523590E-004 4.624070042117031E-004 4.682233683062301E-004 + 4.741128932546627E-004 4.800764993072563E-004 4.861151182895901E-004 4.922296937481652E-004 + 4.984211810978380E-004 5.046905477711031E-004 5.110387733692580E-004 5.174668498154684E-004 + 5.239757815097568E-004 5.305665854859435E-004 5.372402915705583E-004 5.439979425437547E-004 + 5.508405943022463E-004 5.577693160242912E-004 5.647851903367555E-004 5.718893134842746E-004 + 5.790827955005431E-004 5.863667603817620E-004 5.937423462622624E-004 6.012107055923450E-004 + 6.087730053183489E-004 6.164304270649919E-004 6.241841673200016E-004 6.320354376210674E-004 + 6.399854647451478E-004 6.480354909001550E-004 6.561867739190537E-004 6.644405874563998E-004 + 6.727982211873506E-004 6.812609810091807E-004 6.898301892453300E-004 6.985071848520191E-004 + 7.072933236274646E-004 7.161899784237271E-004 7.251985393612180E-004 7.343204140459120E-004 + 7.435570277892872E-004 7.529098238310324E-004 7.623802635645589E-004 7.719698267653417E-004 + 7.816800118221416E-004 7.915123359711292E-004 8.014683355329556E-004 8.115495661528100E-004 + 8.217576030434860E-004 8.320940412315167E-004 8.425604958063981E-004 8.531586021729511E-004 + 8.638900163068590E-004 8.747564150134129E-004 8.857594961895184E-004 8.969009790889952E-004 + 9.081826045912129E-004 9.196061354731107E-004 9.311733566846295E-004 9.428860756276169E-004 + 9.547461224382382E-004 9.667553502729354E-004 9.789156355979925E-004 9.912288784827315E-004 + 1.003697002896404E-003 1.016321957008817E-003 1.029105713494734E-003 1.042050269842117E-003 + 1.055157648664232E-003 1.068429898015685E-003 1.081869091712440E-003 1.095477329655854E-003 + 1.109256738160795E-003 1.123209470287872E-003 1.137337706179870E-003 1.151643653402390E-003 + 1.166129547288790E-003 1.180797651289465E-003 1.195650257325504E-003 1.210689686146820E-003 + 1.225918287694764E-003 1.241338441469309E-003 1.256952556900858E-003 1.272763073726712E-003 + 1.288772462372292E-003 1.304983224337147E-003 1.321397892585811E-003 1.338019031943599E-003 + 1.354849239497348E-003 1.371891145001231E-003 1.389147411287655E-003 1.406620734683333E-003 + 1.424313845430599E-003 1.442229508114003E-003 1.460370522092288E-003 1.478739721935797E-003 + 1.497339977869378E-003 1.516174196220861E-003 1.535245319875186E-003 1.554556328734222E-003 + 1.574110240182392E-003 1.593910109558143E-003 1.613959030631346E-003 1.634260136086712E-003 + 1.654816598013270E-003 1.675631628400017E-003 1.696708479637802E-003 1.718050445027508E-003 + 1.739660859294652E-003 1.761543099110428E-003 1.783700583619328E-003 1.806136774973385E-003 + 1.828855178873145E-003 1.851859345115439E-003 1.875152868148044E-003 1.898739387631327E-003 + 1.922622589006941E-003 1.946806204073693E-003 1.971294011570641E-003 1.996089837767525E-003 + 2.021197557062637E-003 2.046621092588198E-003 2.072364416823358E-003 2.098431552214906E-003 + 2.124826571805779E-003 2.151553599871491E-003 2.178616812564552E-003 2.206020438567006E-003 + 2.233768759751170E-003 2.261866111848683E-003 2.290316885127976E-003 2.319125525080255E-003 + 2.348296533114124E-003 2.377834467258940E-003 2.407743942877006E-003 2.438029633384741E-003 + 2.468696270982903E-003 2.499748647396004E-003 2.531191614621041E-003 2.563030085685612E-003 + 2.595269035415597E-003 2.627913501212482E-003 2.660968583840460E-003 2.694439448223449E-003 + 2.728331324252101E-003 2.762649507601002E-003 2.797399360556118E-003 2.832586312852673E-003 + 2.868215862523556E-003 2.904293576758387E-003 2.940825092773419E-003 2.977816118692351E-003 + 3.015272434438241E-003 3.053199892636633E-003 3.091604419530034E-003 3.130492015903904E-003 + 3.169868758024295E-003 3.209740798587272E-003 3.250114367680300E-003 3.290995773755686E-003 + 3.332391404616305E-003 3.374307728413699E-003 3.416751294658736E-003 3.459728735245001E-003 + 3.503246765485022E-003 3.547312185159560E-003 3.591931879580092E-003 3.637112820664647E-003 + 3.682862068027198E-003 3.729186770080719E-003 3.776094165154155E-003 3.823591582623419E-003 + 3.871686444056623E-003 3.920386264373721E-003 3.969698653020715E-003 4.019631315158658E-003 + 4.070192052867599E-003 4.121388766365666E-003 4.173229455243512E-003 4.225722219714242E-003 + 4.278875261879100E-003 4.332696887009066E-003 4.387195504842564E-003 4.442379630899516E-003 + 4.498257887811888E-003 4.554839006671006E-003 4.612131828391810E-003 4.670145305094251E-003 + 4.728888501502101E-003 4.788370596359309E-003 4.848600883864213E-003 4.909588775121778E-003 + 4.971343799614085E-003 5.033875606689365E-003 5.097193967069690E-003 5.161308774377691E-003 + 5.226230046682451E-003 5.291967928064851E-003 5.358532690202608E-003 5.425934733975226E-003 + 5.494184591089181E-003 5.563292925723498E-003 5.633270536196058E-003 5.704128356650886E-003 + 5.775877458766579E-003 5.848529053486318E-003 5.922094492769588E-003 5.996585271365944E-003 + 6.072013028611103E-003 6.148389550245590E-003 6.225726770256297E-003 6.304036772741198E-003 + 6.383331793797496E-003 6.463624223433570E-003 6.544926607504900E-003 6.627251649674410E-003 + 6.710612213397430E-003 6.795021323931635E-003 6.880492170372286E-003 6.967038107713031E-003 + 7.054672658932652E-003 7.143409517108077E-003 7.233262547553923E-003 7.324245789989015E-003 + 7.416373460730089E-003 7.509659954913131E-003 7.604119848742649E-003 7.699767901769228E-003 + 7.796619059195766E-003 7.894688454212649E-003 7.993991410362370E-003 8.094543443933861E-003 + 8.196360266386938E-003 8.299457786807268E-003 8.403852114392167E-003 8.509559560967706E-003 + 8.616596643537483E-003 8.724980086863406E-003 8.834726826079019E-003 8.945854009335598E-003 + 9.058379000481617E-003 9.172319381775876E-003 9.287692956634758E-003 9.404517752414084E-003 + 9.522812023225862E-003 9.642594252790579E-003 9.763883157325307E-003 9.886697688468133E-003 + 1.001105703623943E-002 1.013698063204030E-002 1.026448815168877E-002 1.039359951849420E-002 + 1.052433490637034E-002 1.065671474298752E-002 1.079075971296456E-002 1.092649076110071E-002 + 1.106392909564841E-002 1.120309619162703E-002 1.134401379417848E-002 1.148670392196484E-002 + 1.163118887060889E-002 1.177749121617781E-002 1.192563381871075E-002 1.207563982579075E-002 + 1.222753267616162E-002 1.238133610339024E-002 1.253707413957505E-002 1.269477111910103E-002 + 1.285445168244208E-002 1.301614078001111E-002 1.317986367605856E-002 1.334564595262003E-002 + 1.351351351351351E-002 1.368349258838695E-002 1.385560973681661E-002 1.402989185245710E-002 + 1.420636616724358E-002 1.438506025564675E-002 1.456600203898151E-002 1.474921978976962E-002 + 1.493474213615741E-002 1.512259806638893E-002 1.531281693333549E-002 1.550542845908206E-002 + 1.570046273957140E-002 1.589795024930664E-002 1.609792184611296E-002 1.630040877595920E-002 + 1.650544267784014E-002 1.671305558872007E-002 1.692327994853872E-002 1.713614860528000E-002 + 1.735169482010461E-002 1.756995227254718E-002 1.779095506577867E-002 1.801473773193518E-002 + 1.824133523751357E-002 1.847078298883508E-002 1.870311683757773E-002 1.893837308637802E-002 + 1.917658849450349E-002 1.941780028359629E-002 1.966204614348921E-002 1.990936423809481E-002 + 2.015979321136853E-002 2.041337219334694E-002 2.067014080626189E-002 2.093013917073153E-002 + 2.119340791202931E-002 2.145998816643168E-002 2.172992158764572E-002 2.200325035331771E-002 + 2.228001717162335E-002 2.256026528794112E-002 2.284403849160935E-002 2.313138112276845E-002 + 2.342233807928914E-002 2.371695482378782E-002 2.401527739073025E-002 2.431735239362445E-002 + 2.462322703230418E-002 2.493294910030407E-002 2.524656699232733E-002 2.556412971180770E-002 + 2.588568687856618E-002 2.621128873656425E-002 2.654098616175471E-002 2.687483067003097E-002 + 2.721287442527672E-002 2.755517024751643E-002 2.790177162116875E-002 2.825273270340347E-002 + 2.860810833260371E-002 2.896795403693459E-002 2.933232604301951E-002 2.970128128472571E-002 + 3.007487741206040E-002 3.045317280017849E-002 3.083622655850410E-002 3.122409853996628E-002 + 3.161684935035124E-002 3.201454035777218E-002 3.241723370225807E-002 3.282499230546336E-002 + 3.323787988049933E-002 3.365596094188963E-002 3.407930081565068E-002 3.450796564949901E-002 + 3.494202242318711E-002 3.538153895896894E-002 3.582658393219741E-002 3.627722688205502E-002 + 3.673353822241953E-002 3.719558925286631E-002 3.766345216980881E-002 3.813720007777972E-002 + 3.861690700085359E-002 3.910264789421299E-002 3.959449865586087E-002 4.009253613847931E-002 + 4.059683816143827E-002 4.110748352295494E-002 4.162455201240582E-002 4.214812442279453E-002 + 4.267828256337525E-002 4.321510927243614E-002 4.375868843024275E-002 4.430910497214424E-002 + 4.486644490184528E-002 4.543079530484365E-002 4.600224436203807E-002 4.658088136350644E-002 + 4.716679672245731E-002 4.776008198935775E-002 4.836082986623758E-002 4.896913422117487E-002 + 4.958509010296279E-002 5.020879375596086E-002 5.084034263513398E-002 5.147983542127922E-002 + 5.212737203644557E-002 5.278305365954668E-002 5.344698274216996E-002 5.411926302458551E-002 + 5.479999955195509E-002 5.548929869074608E-002 5.618726814535149E-002 5.689401697491839E-002 + 5.760965561038948E-002 5.833429587175737E-002 5.906805098553727E-002 5.981103560245861E-002 + 6.056336581537925E-002 6.132515917742578E-002 6.209653472036068E-002 6.287761297318201E-002 + 6.366851598095601E-002 6.446936732388653E-002 6.528029213662546E-002 6.610141712782441E-002 + 6.693287059993396E-002 6.777478246925085E-002 6.862728428621731E-002 6.949050925597691E-002 + 7.036459225918716E-002 7.124966987309581E-002 7.214588039288081E-002 7.305336385325902E-002 + 7.397226205036764E-002 7.490271856391927E-002 7.584487877963723E-002 7.679888991197227E-002 + 7.776490102710445E-002 7.874306306623623E-002 7.973352886917592E-002 8.073645319822058E-002 + 8.175199276233718E-002 8.278030624164845E-002 8.382155431222800E-002 8.487589967120494E-002 + 8.594350706218690E-002 8.702454330100086E-002 8.811917730175828E-002 8.922758010324912E-002 + 9.034992489566583E-002 9.148638704766586E-002 9.263714413377275E-002 9.380237596212210E-002 + 9.498226460255813E-002 9.617699441508103E-002 9.738675207865494E-002 9.861172662037616E-002 + 9.985210944500877E-002 1.011080943648931E-001 1.023798776302277E-001 1.036676579597355E-001 + 1.049716365717132E-001 1.062920172154715E-001 1.076290062031727E-001 1.089828124420659E-001 + 1.103536474671304E-001 1.117417254741280E-001 1.131472633530711E-001 1.145704807221133E-001 + 1.160115999618635E-001 1.174708462501351E-001 1.189484475971299E-001 1.204446348810640E-001 + 1.219596418842450E-001 1.234937053295990E-001 1.250470649176607E-001 1.266199633640261E-001 + 1.282126464372774E-001 1.298253629973853E-001 1.314583650345931E-001 1.331119077087916E-001 + 1.347862493893882E-001 1.364816516956764E-001 1.381983795377164E-001 1.399367011577256E-001 + 1.416968881719942E-001 1.434792156133245E-001 1.452839619740048E-001 1.471114092493263E-001 + 1.489618429816433E-001 1.508355523049914E-001 1.527328299902647E-001 1.546539724909611E-001 + 1.565992799895055E-001 1.585690564441515E-001 1.605636096364783E-001 1.625832512194803E-001 + 1.646282967662631E-001 1.666990658193550E-001 1.687958819406326E-001 1.709190727618814E-001 + 1.730689700359870E-001 1.752459096887721E-001 1.774502318714869E-001 1.796822810139566E-001 + 1.819424058784015E-001 1.842309596139293E-001 1.865482998117175E-001 1.888947885608871E-001 + 1.912707925050784E-001 1.936766828997425E-001 1.961128356701477E-001 1.985796314701208E-001 + 2.010774557415250E-001 2.036066987744837E-001 2.061677557683673E-001 2.087610268935409E-001 + 2.113869173538942E-001 2.140458374501545E-001 2.167382026439956E-001 2.194644336229575E-001 + 2.222249563661765E-001 2.250202022109479E-001 2.278506079201223E-001 2.307166157503495E-001 + 2.336186735211846E-001 2.365572346850580E-001 2.395327583981303E-001 2.425457095920359E-001 + 2.455965590465279E-001 2.486857834630415E-001 2.518138655391759E-001 2.549812940441200E-001 + 2.581885638950225E-001 2.614361762343219E-001 2.647246385080543E-001 2.680544645451396E-001 + 2.714261746376712E-001 2.748402956222112E-001 2.782973609621086E-001 2.817979108308572E-001 + 2.853424921964949E-001 2.889316589070722E-001 2.925659717771902E-001 2.962459986756280E-001 + 2.999723146140765E-001 3.037455018369815E-001 3.075661499125234E-001 3.114348558247378E-001 + 3.153522240667935E-001 3.193188667354493E-001 3.233354036266912E-001 3.274024623325809E-001 + 3.315206783393159E-001 3.356906951265249E-001 3.399131642678162E-001 3.441887455325824E-001 + 3.485181069890954E-001 3.529019251088918E-001 3.573408848724703E-001 3.618356798763264E-001 + 3.663870124413231E-001 3.709955937224338E-001 3.756621438198607E-001 3.803873918915494E-001 + 3.851720762671259E-001 3.900169445632573E-001 3.949227538004721E-001 3.998902705214457E-001 + 4.049202709107706E-001 4.100135409162428E-001 4.151708763716613E-001 4.203930831211846E-001 + 4.256809771452428E-001 4.310353846880338E-001 4.364571423866314E-001 4.419470974017051E-001 + 4.475061075498961E-001 4.531350414378509E-001 4.588347785979400E-001 4.646062096256924E-001 + 4.704502363189466E-001 4.763677718187641E-001 4.823597407521069E-001 4.884270793763099E-001 + 4.945707357253789E-001 5.007916697581162E-001 5.070908535081216E-001 5.134692712356729E-001 + 5.199279195815154E-001 5.264678077225948E-001 5.330899575297372E-001 5.397954037273235E-001 + 5.465851940549653E-001 5.534603894312136E-001 5.604220641193354E-001 5.674713058951621E-001 + 5.746092162170646E-001 5.818369103980534E-001 5.891555177800474E-001 5.965661819103418E-001 + 6.040700607202819E-001 6.116683267061996E-001 6.193621671126149E-001 6.271527841177428E-001 + 6.350413950213426E-001 6.430292324349149E-001 6.511175444743084E-001 6.593075949547359E-001 + 6.676006635882459E-001 6.759980461836865E-001 6.845010548491711E-001 6.931110181971041E-001 + 7.018292815517768E-001 7.106572071595737E-001 7.195961744018337E-001 7.286475800103726E-001 + 7.378128382857330E-001 7.470933813181688E-001 7.564906592114075E-001 7.660061403092415E-001 + 7.756413114249492E-001 7.853976780736215E-001 7.952767647073981E-001 8.052801149536618E-001 + 8.154092918562440E-001 8.256658781196402E-001 8.360514763563227E-001 8.465677093371474E-001 + 8.572162202449102E-001 8.679986729311072E-001 8.789167521759058E-001 8.899721639514013E-001 + 9.011666356881786E-001 9.125019165452183E-001 9.239797776832195E-001 9.356020125413330E-001 + 9.473704371174034E-001 9.592868902517153E-001 9.713532339143118E-001 9.835713534959423E-001 + 9.959431581026468E-001 1.008470580854066E+000 1.021155579185496E+000 1.034000135153728E+000 + 1.047006255746770E+000 1.060175973197421E+000 1.073511345300829E+000 1.087014455736018E+000 + 1.100687414391462E+000 1.114532357694772E+000 1.128551448946504E+000 1.142746878658189E+000 + 1.157120864894604E+000 1.171675653620336E+000 1.186413519050742E+000 1.201336764007275E+000 + 1.216447720277322E+000 1.231748748978547E+000 1.247242240927809E+000 1.262930617014753E+000 + 1.278816328580056E+000 1.294901857798471E+000 1.311189718066668E+000 1.327682454395947E+000 + 1.344382643809918E+000 1.361292895747150E+000 1.378415852468915E+000 1.395754189472039E+000 + 1.413310615906949E+000 1.431087875001000E+000 1.449088744487089E+000 1.467316037037697E+000 + 1.485772600704373E+000 1.504461319362734E+000 1.523385113163099E+000 1.542546938986744E+000 + 1.561949790907941E+000 1.581596700661782E+000 1.601490738117883E+000 1.621635011760075E+000 + 1.642032669172094E+000 1.662686897529413E+000 1.683600924097236E+000 1.704778016734759E+000 + 1.726221484405798E+000 1.747934677695797E+000 1.769920989335386E+000 1.792183854730495E+000 + 1.814726752499129E+000 1.837553205014934E+000 1.860666778957550E+000 1.884071085869935E+000 + 1.907769782722662E+000 1.931766572485324E+000 1.956065204705150E+000 1.980669476092854E+000 + 2.005583231115900E+000 2.030810362599202E+000 2.056354812333373E+000 2.082220571690661E+000 + 2.108411682248582E+000 2.134932236421452E+000 2.161786378099820E+000 2.188978303297950E+000 + 2.216512260809486E+000 2.244392552871298E+000 2.272623535835749E+000 2.301209620851367E+000 + 2.330155274552086E+000 2.359465019755195E+000 2.389143436168006E+000 2.419195161103469E+000 + 2.449624890204749E+000 2.480437378178919E+000 2.511637439539923E+000 2.543229949360817E+000 + 2.575219844035540E+000 2.607612122050225E+000 2.640411844764202E+000 2.673624137200888E+000 + 2.707254188848538E+000 2.741307254471147E+000 2.775788654929505E+000 2.810703778012576E+000 + 2.846058079279389E+000 2.881857082911433E+000 2.918106382575866E+000 2.954811642299516E+000 + 2.991978597353881E+000 3.029613055151315E+000 3.067720896152407E+000 3.106308074784849E+000 + 3.145380620373815E+000 3.184944638084035E+000 3.225006309873782E+000 3.265571895460767E+000 + 3.306647733300276E+000 3.348240241575545E+000 3.390355919200602E+000 3.433001346835774E+000 + 3.476183187915878E+000 3.519908189691443E+000 3.564183184282963E+000 3.609015089748407E+000 + 3.654410911164230E+000 3.700377741719872E+000 3.746922763826135E+000 3.794053250237425E+000 + 3.841776565188121E+000 3.890100165543289E+000 3.939031601963785E+000 3.988578520086111E+000 + 4.038748661717035E+000 4.089549866043241E+000 4.140990070856279E+000 4.193077313792790E+000 + 4.245819733590462E+000 4.299225571359703E+000 4.353303171871304E+000 4.408060984860382E+000 + 4.463507566346606E+000 4.519651579971149E+000 4.576501798350373E+000 4.634067104446546E+000 + 4.692356492955879E+000 4.751379071713902E+000 4.811144063118637E+000 4.871660805571591E+000 + 4.932938754936877E+000 4.994987486018774E+000 5.057816694057732E+000 5.121436196245345E+000 + 5.185855933258274E+000 5.251085970811471E+000 5.317136501231032E+000 5.384017845046702E+000 + 5.451740452604528E+000 5.520314905699737E+000 5.589751919230119E+000 5.660062342870330E+000 + 5.731257162767089E+000 5.803347503255864E+000 5.876344628599036E+000 5.950259944745932E+000 + 6.025105001115103E+000 6.100891492398857E+000 6.177631260390661E+000 6.255336295835400E+000 + 6.334018740302932E+000 6.413690888085309E+000 6.494365188117695E+000 6.576054245923610E+000 + 6.658770825584551E+000 6.742527851734351E+000 6.827338411578777E+000 6.913215756940328E+000 + 7.000173306328946E+000 7.088224647038655E+000 7.177383537270556E+000 7.267663908282668E+000 + 7.359079866566614E+000 7.451645696051875E+000 7.545375860337648E+000 7.640285004952773E+000 + 7.736387959644214E+000 7.833699740694141E+000 7.932235553266335E+000 8.032010793782003E+000 + 8.133041052325435E+000 8.235342115080112E+000 8.338929966795185E+000 8.443820793283257E+000 + 8.550030983949380E+000 8.657577134351904E+000 8.766476048795662E+000 8.876744742957561E+000 + 8.988400446545432E+000 9.101460605990129E+000 9.215942887171561E+000 9.331865178179111E+000 + 9.449245592106564E+000 9.568102469882424E+000 9.688454383135676E+000 9.810320137097586E+000 + 9.933718773540189E+000 1.005866957375145E+001 1.018519206154813E+001 1.031330600632637E+001 + 1.044303142615068E+001 1.057438859088185E+001 1.070739802534408E+001 1.084208051253215E+001 + 1.097845709685870E+001 1.111654908744246E+001 1.125637806143795E+001 1.139796586740681E+001 + 1.154133462873178E+001 1.168650674707354E+001 1.183350490587089E+001 1.198235207388526E+001 + 1.213307150878944E+001 1.228568676080179E+001 1.244022167636596E+001 1.259670040187687E+001 + 1.275514738745378E+001 1.291558739076051E+001 1.307804548087401E+001 1.324254704220141E+001 + 1.340911777844630E+001 1.357778371662516E+001 1.374857121113393E+001 1.392150694786613E+001 + 1.409661794838249E+001 1.427393157413304E+001 1.445347553073262E+001 1.463527787228968E+001 + 1.481936700578998E+001 1.500577169553520E+001 1.519452106763730E+001 1.538564461456974E+001 + 1.557917219977552E+001 1.577513406233358E+001 1.597356082168367E+001 1.617448348241059E+001 + 1.637793343908890E+001 1.658394248118820E+001 1.679254279804048E+001 1.700376698386968E+001 + 1.721764804288451E+001 1.743421939443565E+001 1.765351487823734E+001 1.787556875965510E+001 + 1.810041573505972E+001 1.832809093724849E+001 1.855862994093503E+001 1.879206876830764E+001 + 1.902844389465804E+001 1.926779225408071E+001 1.951015124524366E+001 1.975555873723242E+001 + 2.000405307546685E+001 2.025567308769286E+001 2.051045809004937E+001 2.076844789321125E+001 + 2.102968280861022E+001 2.129420365473322E+001 2.156205176350067E+001 2.183326898672453E+001 + 2.210789770264766E+001 2.238598082256575E+001 2.266756179753195E+001 2.295268462514651E+001 + 2.324139385643141E+001 2.353373460279132E+001 2.382975254306270E+001 2.412949393065091E+001 + 2.443300560075761E+001 2.474033497769882E+001 2.505153008231484E+001 2.536663953947401E+001 + 2.568571258567000E+001 2.600879907671550E+001 2.633594949553209E+001 2.666721496003822E+001 + 2.700264723113677E+001 2.734229872080244E+001 2.768622250027159E+001 2.803447230833450E+001 + 2.838710255973212E+001 2.874416835365877E+001 2.910572548237108E+001 2.947183043990607E+001 + 2.984254043090825E+001 3.021791337956783E+001 3.059800793867185E+001 3.098288349876835E+001 + 3.137260019744671E+001 3.176721892873402E+001 3.216680135260980E+001 3.257140990464085E+001 + 3.298110780573650E+001 3.339595907202737E+001 3.381602852486791E+001 3.424138180096464E+001 + 3.467208536263248E+001 3.510820650817907E+001 3.554981338242076E+001 3.599697498733016E+001 + 3.644976119281770E+001 3.690824274764929E+001 3.737249129050054E+001 3.784257936115085E+001 + 3.831858041181775E+001 3.880056881863367E+001 3.928861989326795E+001 3.978280989469379E+001 + 4.028321604110444E+001 4.078991652197842E+001 4.130299051029662E+001 4.182251817491371E+001 + 4.234858069308414E+001 4.288126026314670E+001 4.342064011736807E+001 4.396680453494768E+001 + 4.451983885518710E+001 4.507982949082390E+001 4.564686394153426E+001 4.622103080760483E+001 + 4.680241980377641E+001 4.739112177326270E+001 4.798722870194395E+001 4.859083373274066E+001 + 4.920203118016701E+001 4.982091654506748E+001 5.044758652953967E+001 5.108213905204340E+001 + 5.172467326270144E+001 5.237528955879153E+001 5.303408960043344E+001 5.370117632647421E+001 + 5.437665397057179E+001 5.506062807748243E+001 5.575320551955200E+001 5.645449451341467E+001 + 5.716460463690274E+001 5.788364684616749E+001 5.861173349301716E+001 5.934897834247173E+001 + 6.009549659053862E+001 6.085140488221312E+001 6.161682132970353E+001 6.239186553088710E+001 + 6.317665858799718E+001 6.397132312654546E+001 6.477598331448306E+001 6.559076488160117E+001 + 6.641579513917749E+001 6.725120299986841E+001 6.809711899785157E+001 6.895367530922293E+001 + 6.982100577264859E+001 7.069924591027814E+001 7.158853294892005E+001 7.248900584148309E+001 + 7.340080528868903E+001 7.432407376105628E+001 7.525895552116222E+001 7.620559664618399E+001 + 7.716414505072311E+001 7.813475050991818E+001 7.911756468284669E+001 8.011274113622284E+001 + 8.112043536839229E+001 8.214080483362871E+001 8.317400896673730E+001 8.422020920796562E+001 + 8.527956902823004E+001 8.635225395465791E+001 8.743843159645107E+001 8.853827167107620E+001 + 8.965194603078230E+001 9.077962868945400E+001 9.192149584980116E+001 9.307772593089044E+001 + 9.424849959602471E+001 9.543399978097074E+001 9.663441172254451E+001 9.784992298755436E+001 + 9.908072350210804E+001 + + + 1.540341158031277E-007 1.559716264643619E-007 1.579335080095578E-007 1.599200669866983E-007 + 1.619316137996655E-007 1.639684627567414E-007 1.660309321197194E-007 1.681193441536337E-007 + 1.702340251771133E-007 1.723753056133707E-007 1.745435200418306E-007 1.767390072504085E-007 + 1.789621102884476E-007 1.812131765203204E-007 1.834925576797057E-007 1.858006099245470E-007 + 1.881376938927032E-007 1.905041747582993E-007 1.929004222887850E-007 1.953268109027125E-007 + 1.977837197282389E-007 2.002715326623670E-007 2.027906384309292E-007 2.053414306493269E-007 + 2.079243078840340E-007 2.105396737148733E-007 2.131879367980768E-007 2.158695109301393E-007 + 2.185848151124743E-007 2.213342736168851E-007 2.241183160518567E-007 2.269373774296835E-007 + 2.297918982344416E-007 2.326823244908137E-007 2.356091078337836E-007 2.385727055792030E-007 + 2.415735807952491E-007 2.446122023747796E-007 2.476890451085985E-007 2.508045897596431E-007 + 2.539593231381035E-007 2.571537381774885E-007 2.603883340116470E-007 2.636636160527589E-007 + 2.669800960703070E-007 2.703382922710413E-007 2.737387293799505E-007 2.771819387222511E-007 + 2.806684583064078E-007 2.841988329081996E-007 2.877736141558402E-007 2.913933606161727E-007 + 2.950586378819459E-007 2.987700186601894E-007 3.025280828617010E-007 3.063334176916580E-007 + 3.101866177413695E-007 3.140882850811826E-007 3.180390293545570E-007 3.220394678733238E-007 + 3.260902257141400E-007 3.301919358161600E-007 3.343452390799319E-007 3.385507844675404E-007 + 3.428092291040091E-007 3.471212383799762E-007 3.514874860556638E-007 3.559086543661545E-007 + 3.603854341279913E-007 3.649185248471207E-007 3.695086348281901E-007 3.741564812852225E-007 + 3.788627904536830E-007 3.836282977039539E-007 3.884537476562392E-007 3.933398942969111E-007 + 3.982875010963231E-007 4.032973411281037E-007 4.083701971899499E-007 4.135068619259431E-007 + 4.187081379503984E-007 4.239748379732768E-007 4.293077849271720E-007 4.347078120958952E-007 + 4.401757632446787E-007 4.457124927520138E-007 4.513188657431503E-007 4.569957582252748E-007 + 4.627440572243865E-007 4.685646609239002E-007 4.744584788049853E-007 4.804264317886770E-007 + 4.864694523797708E-007 4.925884848125284E-007 4.987844851982173E-007 5.050584216745034E-007 + 5.114112745567255E-007 5.178440364910715E-007 5.243577126096807E-007 5.309533206876993E-007 + 5.376318913023086E-007 5.443944679937544E-007 5.512421074284034E-007 5.581758795638483E-007 + 5.651968678160932E-007 5.723061692288365E-007 5.795048946448876E-007 5.867941688797389E-007 + 5.941751308973190E-007 6.016489339879613E-007 6.092167459486032E-007 6.168797492652607E-007 + 6.246391412977927E-007 6.324961344669899E-007 6.404519564440216E-007 6.485078503422573E-007 + 6.566650749115084E-007 6.649249047347100E-007 6.732886304270762E-007 6.817575588377631E-007 + 6.903330132540653E-007 6.990163336081818E-007 7.078088766865845E-007 7.167120163420170E-007 + 7.257271437081656E-007 7.348556674170217E-007 7.440990138189874E-007 7.534586272057436E-007 + 7.629359700359235E-007 7.725325231636274E-007 7.822497860698051E-007 7.920892770965558E-007 + 8.020525336843715E-007 8.121411126123627E-007 8.223565902415141E-007 8.327005627609885E-007 + 8.431746464375366E-007 8.537804778680429E-007 8.645197142352453E-007 8.753940335666766E-007 + 8.864051349968554E-007 8.975547390327831E-007 9.088445878227739E-007 9.202764454286698E-007 + 9.318520981014819E-007 9.435733545604898E-007 9.554420462758628E-007 9.674600277548288E-007 + 9.796291768314430E-007 9.919513949600088E-007 1.004428607512178E-006 1.017062764077797E-006 + 1.029855838769533E-006 1.042809830531335E-006 1.055926763450771E-006 1.069208687075295E-006 + 1.082657676732497E-006 1.096275833854373E-006 1.110065286305678E-006 1.124028188716414E-006 + 1.138166722818491E-006 1.152483097786626E-006 1.166979550583536E-006 1.181658346309461E-006 + 1.196521778556102E-006 1.211572169764983E-006 1.226811871590353E-006 1.242243265266628E-006 + 1.257868761980463E-006 1.273690803247513E-006 1.289711861293912E-006 1.305934439442580E-006 + 1.322361072504354E-006 1.338994327174070E-006 1.355836802431615E-006 1.372891129948009E-006 + 1.390159974496627E-006 1.407646034369562E-006 1.425352041799245E-006 1.443280763385363E-006 + 1.461435000527134E-006 1.479817589861052E-006 1.498431403704098E-006 1.517279350502553E-006 + 1.536364375286457E-006 1.555689460129753E-006 1.575257624616271E-006 1.595071926311522E-006 + 1.615135461240457E-006 1.635451364371232E-006 1.656022810105039E-006 1.676853012772130E-006 + 1.697945227134052E-006 1.719302748892208E-006 1.740928915202830E-006 1.762827105198396E-006 + 1.785000740515651E-006 1.807453285830224E-006 1.830188249397999E-006 1.853209183603292E-006 + 1.876519685513903E-006 1.900123397443187E-006 1.924024007519152E-006 1.948225250260747E-006 + 1.972730907161394E-006 1.997544807279835E-006 2.022670827838450E-006 2.048112894829071E-006 + 2.073874983626425E-006 2.099961119609306E-006 2.126375378789527E-006 2.153121888448830E-006 + 2.180204827783763E-006 2.207628428558696E-006 2.235396975767051E-006 2.263514808300816E-006 + 2.291986319628536E-006 2.320815958481781E-006 2.350008229550274E-006 2.379567694185766E-006 + 2.409498971114739E-006 2.439806737160115E-006 2.470495727971997E-006 2.501570738767635E-006 + 2.533036625080696E-006 2.564898303519923E-006 2.597160752537405E-006 2.629829013206434E-006 + 2.662908190009204E-006 2.696403451634396E-006 2.730320031784777E-006 2.764663229995005E-006 + 2.799438412459671E-006 2.834651012871784E-006 2.870306533271805E-006 2.906410544907329E-006 + 2.942968689103633E-006 2.979986678145129E-006 3.017470296167911E-006 3.055425400063566E-006 + 3.093857920394287E-006 3.132773862319575E-006 3.172179306534528E-006 3.212080410219975E-006 + 3.252483408004549E-006 3.293394612938851E-006 3.334820417481889E-006 3.376767294499904E-006 + 3.419241798277769E-006 3.462250565543118E-006 3.505800316503335E-006 3.549897855895613E-006 + 3.594550074050199E-006 3.639763947967022E-006 3.685546542405874E-006 3.731905010990278E-006 + 3.778846597325270E-006 3.826378636129218E-006 3.874508554379888E-006 3.923243872474928E-006 + 3.972592205406944E-006 4.022561263953358E-006 4.073158855881228E-006 4.124392887167236E-006 + 4.176271363233006E-006 4.228802390195971E-006 4.281994176135971E-006 4.335855032377776E-006 + 4.390393374789754E-006 4.445617725098871E-006 4.501536712222211E-006 4.558159073615285E-006 + 4.615493656637258E-006 4.673549419933374E-006 4.732335434834768E-006 4.791860886775863E-006 + 4.852135076729634E-006 4.913167422660891E-006 4.974967460997853E-006 5.037544848122249E-006 + 5.100909361878125E-006 5.165070903099679E-006 5.230039497158259E-006 5.295825295528866E-006 + 5.362438577376344E-006 5.429889751161499E-006 5.498189356267472E-006 5.567348064646515E-006 + 5.637376682487515E-006 5.708286151904488E-006 5.780087552646289E-006 5.852792103827876E-006 + 5.926411165683284E-006 6.000956241340704E-006 6.076438978619877E-006 6.152871171852066E-006 + 6.230264763722975E-006 6.308631847138790E-006 6.387984667115725E-006 6.468335622693355E-006 + 6.549697268871961E-006 6.632082318574293E-006 6.715503644631979E-006 6.799974281796934E-006 + 6.885507428778079E-006 6.972116450303641E-006 7.059814879209444E-006 7.148616418553432E-006 + 7.238534943756790E-006 7.329584504772025E-006 7.421779328278281E-006 7.515133819904313E-006 + 7.609662566479361E-006 7.705380338312399E-006 7.802302091500020E-006 7.900442970263342E-006 + 7.999818309314347E-006 8.100443636251938E-006 8.202334673988172E-006 8.305507343204998E-006 + 8.409977764841882E-006 8.515762262614759E-006 8.622877365566625E-006 8.731339810650240E-006 + 8.841166545343308E-006 8.952374730296589E-006 9.064981742015226E-006 9.179005175573901E-006 + 9.294462847366090E-006 9.411372797887905E-006 9.529753294556986E-006 9.649622834566772E-006 + 9.771000147776770E-006 9.893904199639116E-006 1.001835419416195E-005 1.014436957691013E-005 + 1.027197003804358E-005 1.040117551539396E-005 1.053200619757998E-005 1.066448252716189E-005 + 1.079862520383574E-005 1.093445518766766E-005 1.107199370236898E-005 1.121126223861244E-005 + 1.135228255739016E-005 1.149507669341389E-005 1.163966695855787E-005 1.178607594534521E-005 + 1.193432653047798E-005 1.208444187841169E-005 1.223644544497491E-005 1.239036098103414E-005 + 1.254621253620505E-005 1.270402446261021E-005 1.286382141868418E-005 1.302562837302647E-005 + 1.318947060830290E-005 1.335537372519606E-005 1.352336364640550E-005 1.369346662069818E-005 + 1.386570922700993E-005 1.404011837859841E-005 1.421672132724838E-005 1.439554566752988E-005 + 1.457661934110988E-005 1.475997064111831E-005 1.494562821656881E-005 1.513362107683526E-005 + 1.532397859618455E-005 1.551673051836637E-005 1.571190696126072E-005 1.590953842158390E-005 + 1.610965577965366E-005 1.631229030421433E-005 1.651747365732264E-005 1.672523789929499E-005 + 1.693561549371685E-005 1.714863931251539E-005 1.736434264109569E-005 1.758275918354166E-005 + 1.780392306788249E-005 1.802786885142504E-005 1.825463152615360E-005 1.848424652419746E-005 + 1.871674972336723E-005 1.895217745276077E-005 1.919056649843982E-005 1.943195410917777E-005 + 1.967637800227990E-005 1.992387636947679E-005 2.017448788289183E-005 2.042825170108390E-005 + 2.068520747516587E-005 2.094539535500022E-005 2.120885599547252E-005 2.147563056284385E-005 + 2.174576074118315E-005 2.201928873888036E-005 2.229625729524160E-005 2.257670968716732E-005 + 2.286068973591431E-005 2.314824181394299E-005 2.343941085185056E-005 2.373424234539158E-005 + 2.403278236258677E-005 2.433507755092116E-005 2.464117514463301E-005 2.495112297209406E-005 + 2.526496946328296E-005 2.558276365735248E-005 2.590455521029197E-005 2.623039440268632E-005 + 2.656033214757224E-005 2.689441999839364E-005 2.723271015705690E-005 2.757525548208757E-005 + 2.792210949688962E-005 2.827332639810854E-005 2.862896106409970E-005 2.898906906350319E-005 + 2.935370666392655E-005 2.972293084073675E-005 3.009679928596258E-005 3.047537041730927E-005 + 3.085870338728628E-005 3.124685809245005E-005 3.163989518276301E-005 3.203787607107015E-005 + 3.244086294269497E-005 3.284891876515602E-005 3.326210729800575E-005 3.368049310279311E-005 + 3.410414155315126E-005 3.453311884501252E-005 3.496749200695148E-005 3.540732891065842E-005 + 3.585269828154445E-005 3.630366970947984E-005 3.676031365966774E-005 3.722270148365440E-005 + 3.769090543047802E-005 3.816499865795792E-005 3.864505524412543E-005 3.913115019879880E-005 + 3.962335947530369E-005 4.012175998234090E-005 4.062642959600375E-005 4.113744717194607E-005 + 4.165489255770382E-005 4.217884660517124E-005 4.270939118323420E-005 4.324660919056252E-005 + 4.379058456856278E-005 4.434140231449450E-005 4.489914849475115E-005 4.546391025830810E-005 + 4.603577585033998E-005 4.661483462600899E-005 4.720117706442694E-005 4.779489478279274E-005 + 4.839608055070779E-005 4.900482830467152E-005 4.962123316275893E-005 5.024539143948323E-005 + 5.087740066084498E-005 5.151735957957083E-005 5.216536819054390E-005 5.282152774642803E-005 + 5.348594077348875E-005 5.415871108761332E-005 5.483994381053206E-005 5.552974538624396E-005 + 5.622822359764860E-005 5.693548758338757E-005 5.765164785489763E-005 5.837681631367814E-005 + 5.911110626877626E-005 5.985463245449137E-005 6.060751104830267E-005 6.136985968902223E-005 + 6.214179749517607E-005 6.292344508361706E-005 6.371492458837112E-005 6.451635967972114E-005 + 6.532787558353064E-005 6.614959910081063E-005 6.698165862753260E-005 6.782418417469033E-005 + 6.867730738861477E-005 6.954116157154373E-005 7.041588170245072E-005 7.130160445813608E-005 + 7.219846823458224E-005 7.310661316857897E-005 7.402618115961986E-005 7.495731589207431E-005 + 7.590016285763879E-005 7.685486937806988E-005 7.782158462820372E-005 7.880045965926499E-005 + 7.979164742246870E-005 8.079530279291963E-005 8.181158259381125E-005 8.284064562093013E-005 + 8.388265266746789E-005 8.493776654914544E-005 8.600615212965358E-005 8.708797634641290E-005 + 8.818340823665816E-005 8.929261896385097E-005 9.041578184442405E-005 9.155307237486269E-005 + 9.270466825912612E-005 9.387074943641415E-005 9.505149810928312E-005 9.624709877211537E-005 + 9.745773823994708E-005 9.868360567765811E-005 9.992489262952963E-005 1.011817930491733E-004 + 1.024545033298367E-004 1.037432223350909E-004 1.050481514299021E-004 1.063694945120963E-004 + 1.077074580442185E-004 1.090622510857926E-004 1.104340853259877E-004 1.118231751166950E-004 + 1.132297375060202E-004 1.146539922721985E-004 1.160961619579345E-004 1.175564719051761E-004 + 1.190351502903233E-004 1.205324281598822E-004 1.220485394665663E-004 1.235837211058517E-004 + 1.251382129529929E-004 1.267122579005037E-004 1.283061018961096E-004 1.299199939811775E-004 + 1.315541863296292E-004 1.332089342873441E-004 1.348844964120570E-004 1.365811345137589E-004 + 1.382991136956051E-004 1.400387023953379E-004 1.418001724272310E-004 1.435837990245605E-004 + 1.453898608826112E-004 1.472186402022227E-004 1.490704227338843E-004 1.509454978223844E-004 + 1.528441584520203E-004 1.547667012923781E-004 1.567134267446881E-004 1.586846389887628E-004 + 1.606806460305260E-004 1.627017597501389E-004 1.647482959507320E-004 1.668205744077503E-004 + 1.689189189189189E-004 1.710436573548369E-004 1.731951217102077E-004 1.753736481557138E-004 + 1.775795770905447E-004 1.798132531955844E-004 1.820750254872689E-004 1.843652473721203E-004 + 1.866842767019676E-004 1.890324758298617E-004 1.914102116666936E-004 1.938178557385257E-004 + 1.962557842446425E-004 1.987243781163330E-004 2.012240230764120E-004 2.037551096994900E-004 + 2.063180334730017E-004 2.089131948590008E-004 2.115409993567339E-004 2.142018575660001E-004 + 2.168961852513077E-004 2.196244034068397E-004 2.223869383222335E-004 2.251842216491897E-004 + 2.280166904689196E-004 2.308847873604386E-004 2.337889604697216E-004 2.367296635797253E-004 + 2.397073561812936E-004 2.427225035449537E-004 2.457755767936151E-004 2.488670529761851E-004 + 2.519974151421066E-004 2.551671524168367E-004 2.583767600782737E-004 2.616267396341441E-004 + 2.649175989003664E-004 2.682498520803960E-004 2.716240198455716E-004 2.750406294164714E-004 + 2.785002146452919E-004 2.820033160992640E-004 2.855504811451169E-004 2.891422640346056E-004 + 2.927792259911142E-004 2.964619352973477E-004 3.001909673841281E-004 3.039669049203056E-004 + 3.077903379038023E-004 3.116618637538009E-004 3.155820874040917E-004 3.195516213975963E-004 + 3.235710859820772E-004 3.276411092070532E-004 3.317623270219338E-004 3.359353833753871E-004 + 3.401609303159590E-004 3.444396280939554E-004 3.487721452646094E-004 3.531591587925434E-004 + 3.576013541575464E-004 3.620994254616824E-004 3.666540755377439E-004 3.712660160590714E-004 + 3.759359676507550E-004 3.806646600022311E-004 3.854528319813013E-004 3.903012317495785E-004 + 3.952106168793906E-004 4.001817544721523E-004 4.052154212782260E-004 4.103124038182920E-004 + 4.154734985062417E-004 4.206995117736204E-004 4.259912601956335E-004 4.313495706187377E-004 + 4.367752802898390E-004 4.422692369871118E-004 4.478322991524677E-004 4.534653360256878E-004 + 4.591692277802442E-004 4.649448656608288E-004 4.707931521226102E-004 4.767150009722465E-004 + 4.827113375106699E-004 4.887830986776623E-004 4.949312331982609E-004 5.011567017309913E-004 + 5.074604770179783E-004 5.138435440369369E-004 5.203069001550728E-004 5.268515552849317E-004 + 5.334785320421906E-004 5.401888659054519E-004 5.469836053780344E-004 5.538638121518031E-004 + 5.608305612730661E-004 5.678849413105457E-004 5.750280545254759E-004 5.822610170438306E-004 + 5.895849590307165E-004 5.970010248669720E-004 6.045103733279697E-004 6.121141777646860E-004 + 6.198136262870349E-004 6.276099219495108E-004 6.355042829391748E-004 6.434979427659903E-004 + 6.515921504555698E-004 6.597881707443336E-004 6.680872842771246E-004 6.764907878073190E-004 + 6.849999943994386E-004 6.936162336343261E-004 7.023408518168936E-004 7.111752121864798E-004 + 7.201206951298686E-004 7.291786983969671E-004 7.383506373192159E-004 7.476379450307327E-004 + 7.570420726922407E-004 7.665644897178222E-004 7.762066840045085E-004 7.859701621647751E-004 + 7.958564497619501E-004 8.058670915485817E-004 8.160036517078184E-004 8.262677140978052E-004 + 8.366608824991745E-004 8.471847808656357E-004 8.578410535777164E-004 8.686313656997114E-004 + 8.795574032398395E-004 8.906208734136977E-004 9.018235049110101E-004 9.131670481657378E-004 + 9.246532756295955E-004 9.362839820489908E-004 9.480609847454654E-004 9.599861238996535E-004 + 9.720612628388057E-004 9.842882883279529E-004 9.966691108646991E-004 1.009205664977757E-003 + 1.021899909529215E-003 1.034753828020606E-003 1.047769428902850E-003 1.060948745890062E-003 + 1.074293838277336E-003 1.087806791262511E-003 1.101489716271979E-003 1.115344751290614E-003 + 1.129374061195823E-003 1.143579838095823E-003 1.157964301672159E-003 1.172529699526526E-003 + 1.187278307531977E-003 1.202212430188513E-003 1.217334400983187E-003 1.232646582754702E-003 + 1.248151368062610E-003 1.263851179561164E-003 1.279748470377846E-003 1.295845724496694E-003 + 1.312145457146415E-003 1.328650215193394E-003 1.345362577539659E-003 1.362285155525824E-003 + 1.379420593339130E-003 1.396771568426600E-003 1.414340791913389E-003 1.432131009026416E-003 + 1.450144999523294E-003 1.468385578126689E-003 1.486855594964124E-003 1.505557936013300E-003 + 1.524495523553063E-003 1.543671316619988E-003 1.563088311470758E-003 1.582749542050327E-003 + 1.602658080465968E-003 1.622817037467316E-003 1.643229562932414E-003 1.663898846359896E-003 + 1.684828117367353E-003 1.706020646195955E-003 1.727479744221455E-003 1.749208764471570E-003 + 1.771211102149928E-003 1.793490195166556E-003 1.816049524675060E-003 1.838892615616579E-003 + 1.862023037270542E-003 1.885444403812392E-003 1.909160374878309E-003 1.933174656137014E-003 + 1.957490999868818E-003 1.982113205551894E-003 2.007045120455979E-003 2.032290640243504E-003 + 2.057853709578289E-003 2.083738322741937E-003 2.109948524257908E-003 2.136488409523517E-003 + 2.163362125449838E-003 2.190573871109651E-003 2.218127898393586E-003 2.246028512674457E-003 + 2.274280073480019E-003 2.302886995174116E-003 2.331853747646469E-003 2.361184857011089E-003 + 2.390884906313481E-003 2.420958536246782E-003 2.451410445876846E-003 2.482245393376510E-003 + 2.513468196769062E-003 2.545083734681047E-003 2.577096947104591E-003 2.609512836169261E-003 + 2.642336466923678E-003 2.675572968126931E-003 2.709227533049946E-003 2.743305420286969E-003 + 2.777811954577207E-003 2.812752527636849E-003 2.848132599001529E-003 2.883957696879369E-003 + 2.920233419014808E-003 2.956965433563225E-003 2.994159479976628E-003 3.031821369900449E-003 + 3.069956988081599E-003 3.108572293288019E-003 3.147673319239699E-003 3.187266175551500E-003 + 3.227357048687782E-003 3.267952202929024E-003 3.309057981350679E-003 3.350680806814246E-003 + 3.392827182970890E-003 3.435503695277640E-003 3.478717012026358E-003 3.522473885385715E-003 + 3.566781152456187E-003 3.611645736338402E-003 3.657074647214877E-003 3.703074983445350E-003 + 3.749653932675957E-003 3.796818772962268E-003 3.844576873906543E-003 3.892935697809223E-003 + 3.941902800834919E-003 3.991485834193117E-003 4.041692545333641E-003 4.092530779157261E-003 + 4.144008479241449E-003 4.196133689081562E-003 4.248914553347703E-003 4.302359319157280E-003 + 4.356476337363693E-003 4.411274063861148E-003 4.466761060905879E-003 4.522945998454080E-003 + 4.579837655516539E-003 4.637444921530422E-003 4.695776797748259E-003 4.754842398644368E-003 + 4.814650953339075E-003 4.875211807040716E-003 4.936534422505902E-003 4.998628381518071E-003 + 5.061503386384633E-003 5.125169261453035E-003 5.189635954645767E-003 5.254913539014808E-003 + 5.321012214315535E-003 5.387942308600423E-003 5.455714279832893E-003 5.524338717521313E-003 + 5.593826344373702E-003 5.664188017973137E-003 5.735434732474250E-003 5.807577620321155E-003 + 5.880627953986833E-003 5.954597147734551E-003 6.029496759401336E-003 6.105338492203873E-003 + 6.182134196567237E-003 6.259895871976453E-003 6.338635668851520E-003 6.418365890445911E-003 + 6.499098994768943E-003 6.580847596532435E-003 6.663624469121715E-003 6.747442546591544E-003 + 6.832314925687067E-003 6.918254867890170E-003 7.005275801491693E-003 7.093391323689528E-003 + 7.182615202713308E-003 7.272961379975668E-003 7.364443972250593E-003 7.457077273879273E-003 + 7.550875759003524E-003 7.645854083827496E-003 7.742027088907687E-003 7.839409801471785E-003 + 7.938017437766783E-003 8.037865405436438E-003 8.138969305928855E-003 8.241344936934200E-003 + 8.345008294853073E-003 8.449975577296083E-003 8.556263185614640E-003 8.663887727463801E-003 + 8.772866019397210E-003 8.883215089494672E-003 8.994952180022921E-003 9.108094750129657E-003 + 9.222660478571662E-003 9.338667266477111E-003 9.456133240142594E-003 9.575076753865520E-003 + 9.695516392811866E-003 9.817470975920270E-003 9.940959558842477E-003 1.006600143692077E-002 + 1.019261614820305E-002 1.032082347649550E-002 1.045064345445403E-002 1.058209636671434E-002 + 1.071520275306138E-002 1.084998341163884E-002 1.098645940219882E-002 1.112465204939252E-002 + 1.126458294610223E-002 1.140627395681523E-002 1.154974722104024E-002 1.169502515676666E-002 + 1.184213046396754E-002 1.199108612814644E-002 1.214191542392890E-002 1.229464191869928E-002 + 1.244928947628308E-002 1.260588226067583E-002 1.276444473981870E-002 1.292500168942160E-002 + 1.308757819683463E-002 1.325219966496776E-002 1.341889181626036E-002 1.358768069670022E-002 + 1.375859267989327E-002 1.393165447118465E-002 1.410689311183130E-002 1.428433598322736E-002 + 1.446401081118255E-002 1.464594567025421E-002 1.483016898813428E-002 1.501670955009093E-002 + 1.520559650346653E-002 1.539685936223183E-002 1.559052801159762E-002 1.578663271268442E-002 + 1.598520410725070E-002 1.618627322248089E-002 1.638987147583336E-002 1.659603067994934E-002 + 1.680478304762397E-002 1.701616119683938E-002 1.723019815586143E-002 1.744692736840048E-002 + 1.766638269883686E-002 1.788859843751250E-002 1.811360930608861E-002 1.834145046297121E-002 + 1.857215750880467E-002 1.880576649203418E-002 1.904231391453874E-002 1.928183673733430E-002 + 1.952437238634927E-002 1.976995875827228E-002 2.001863422647353E-002 2.027043764700094E-002 + 2.052540836465118E-002 2.078358621911766E-002 2.104501155121545E-002 2.130972520918449E-002 + 2.157776855507247E-002 2.184918347119746E-002 2.212401236669233E-002 2.240229818413119E-002 + 2.268408440623911E-002 2.296941506268668E-002 2.325833473696938E-002 2.355088857337418E-002 + 2.384712228403327E-002 2.414708215606655E-002 2.445081505881438E-002 2.475836845116067E-002 + 2.506979038894875E-002 2.538512953249003E-002 2.570443515416717E-002 2.602775714613326E-002 + 2.635514602810728E-002 2.668665295526815E-002 2.702232972624775E-002 2.736222879122438E-002 + 2.770640326011857E-002 2.805490691089123E-002 2.840779419794687E-002 2.876512026064209E-002 + 2.912694093190107E-002 2.949331274693994E-002 2.986429295210008E-002 3.023993951379336E-002 + 3.062031112755936E-002 3.100546722723649E-002 3.139546799424905E-002 3.179037436701022E-002 + 3.219024805044425E-002 3.259515152562781E-002 3.300514805955253E-002 3.342030171501110E-002 + 3.384067736060672E-002 3.426634068088934E-002 3.469735818661881E-002 3.513379722515721E-002 + 3.557572599099236E-002 3.602321353639291E-002 3.647632978219833E-002 3.693514552874395E-002 + 3.739973246692351E-002 3.787016318939143E-002 3.834651120190508E-002 3.882885093481062E-002 + 3.931725775467269E-002 3.981180797605044E-002 4.031257887342228E-002 4.081964869325959E-002 + 4.133309666625345E-002 4.185300301969432E-002 4.237944899000753E-002 4.291251683544717E-002 + 4.345228984894847E-002 4.399885237114304E-002 4.455228980353704E-002 4.511268862185509E-002 + 4.568013638955288E-002 4.625472177149841E-002 4.683653454782669E-002 4.742566562796782E-002 + 4.802220706485151E-002 4.862625206929111E-002 4.923789502454732E-002 4.985723150107640E-002 + 5.048435827146294E-002 5.111937332554052E-002 5.176237588570348E-002 5.241346642240988E-002 + 5.307274666988078E-002 5.374031964199628E-002 5.441628964839131E-002 5.510076231075478E-002 + 5.579384457933258E-002 5.649564474963936E-002 5.720627247937966E-002 5.792583880558182E-002 + 5.865445616194849E-002 5.939223839642377E-002 6.013930078898297E-002 6.089576006964489E-002 + 6.166173443671096E-002 6.243734357523467E-002 6.322270867572165E-002 6.401795245306682E-002 + 6.482319916572843E-002 6.563857463514339E-002 6.646420626538790E-002 6.730022306308378E-002 + 6.814675565755661E-002 6.900393632124673E-002 6.987189899037649E-002 7.075077928587913E-002 + 7.164071453458862E-002 7.254184379069831E-002 7.345430785748795E-002 7.437824930932416E-002 + 7.531381251393879E-002 7.626114365498571E-002 7.722039075488327E-002 7.819170369794251E-002 + 7.917523425378666E-002 8.017113610106637E-002 8.117956485147119E-002 8.220067807404513E-002 + 8.323463531980690E-002 8.428159814667940E-002 8.534173014473471E-002 8.641519696175411E-002 + 8.750216632911183E-002 8.860280808798320E-002 8.971729421588195E-002 9.084579885353335E-002 + 9.198849833208268E-002 9.314557120064844E-002 9.431719825422061E-002 9.550356256190967E-002 + 9.670484949555269E-002 9.792124675867676E-002 9.915294441582920E-002 1.004001349222750E-001 + 1.016630131540679E-001 1.029417764385014E-001 1.042366245849398E-001 1.055477599160407E-001 + 1.068753872993673E-001 1.082197141793988E-001 1.095809506099458E-001 1.109593092869695E-001 + 1.123550055818179E-001 1.137682575748766E-001 1.151992860896445E-001 1.166483147272389E-001 + 1.181155699013321E-001 1.196012808735303E-001 1.211056797891960E-001 1.226290017137198E-001 + 1.241714846692524E-001 1.257333696718931E-001 1.273149007693516E-001 1.289163250790797E-001 + 1.305378928268834E-001 1.321798573860231E-001 1.338424753168010E-001 1.355260064066519E-001 + 1.372307137107338E-001 1.389568635930308E-001 1.407047257679744E-001 1.424745733425851E-001 + 1.442666828591472E-001 1.460813343384192E-001 1.479188113233861E-001 1.497794009235658E-001 + 1.516633938598680E-001 1.535710845100224E-001 1.555027709545745E-001 1.574587550234609E-001 + 1.594393423431723E-001 1.614448423845064E-001 1.634755685109251E-001 1.655318380275176E-001 + 1.676139722305788E-001 1.697222964578145E-001 1.718571401391742E-001 1.740188368483267E-001 + 1.762077243547811E-001 1.784241446766630E-001 1.806684441341578E-001 1.829409734036210E-001 + 1.852420875723748E-001 1.875721461941900E-001 1.899315133454663E-001 1.923205576821218E-001 + 1.947396524971940E-001 1.971891757791698E-001 1.996695102710459E-001 2.021810435301323E-001 + 2.047241679886112E-001 2.072992810148525E-001 2.099067849755060E-001 2.125470872983711E-001 + 2.152206005360564E-001 2.179277424304457E-001 2.206689359779667E-001 2.234446094956888E-001 + 2.262551966882465E-001 2.291011367156062E-001 2.319828742616879E-001 2.349008596038455E-001 + 2.378555486832256E-001 2.408474031760088E-001 2.438768905655457E-001 2.469444842154053E-001 + 2.500506634433356E-001 2.531959135961608E-001 2.563807261256171E-001 2.596055986651406E-001 + 2.628710351076277E-001 2.661775456841652E-001 2.695256470437583E-001 2.729158623340566E-001 + 2.763487212830958E-001 2.798247602820718E-001 2.833445224691493E-001 2.869085578143314E-001 + 2.905174232053926E-001 2.941716825348915E-001 2.978719067882837E-001 3.016186741331364E-001 + 3.054125700094701E-001 3.092541872212352E-001 3.131441260289356E-001 3.170829942434252E-001 + 3.210714073208751E-001 3.251099884589438E-001 3.291993686941511E-001 3.333401870004777E-001 + 3.375330903892096E-001 3.417787340100306E-001 3.460777812533948E-001 3.504309038541813E-001 + 3.548387819966516E-001 3.593021044207346E-001 3.638215685296385E-001 3.683978804988259E-001 + 3.730317553863532E-001 3.777239172445979E-001 3.824750992333981E-001 3.872860437346044E-001 + 3.921575024680839E-001 3.970902366091753E-001 4.020850169076225E-001 4.071426238080107E-001 + 4.122638475717063E-001 4.174494884003421E-001 4.227003565608489E-001 4.280172725120580E-001 + 4.334010670329060E-001 4.388525813522384E-001 4.443726672802595E-001 4.499621873416271E-001 + 4.556220149102213E-001 4.613530343456161E-001 4.671561411312568E-001 4.730322420143857E-001 + 4.789822551477219E-001 4.850071102329209E-001 4.911077486658494E-001 4.972851236836724E-001 + 5.035402005138055E-001 5.098739565247302E-001 5.162873813787078E-001 5.227814771864214E-001 + 5.293572586635518E-001 5.360157532893338E-001 5.427580014671008E-001 5.495850566868460E-001 + 5.564979856898388E-001 5.634978686352988E-001 5.705857992691782E-001 5.777628850950604E-001 + 5.850302475472051E-001 5.923890221657837E-001 5.998403587742994E-001 6.073854216592582E-001 + 6.150253897520876E-001 6.227614568133435E-001 6.305948316192459E-001 6.385267381505425E-001 + 6.465584157837680E-001 6.546911194848941E-001 6.629261200054181E-001 6.712647040809276E-001 + 6.797081746321475E-001 6.882578509685304E-001 6.969150689944000E-001 7.056811814176834E-001 + 7.145575579612843E-001 7.235455855770936E-001 7.326466686627144E-001 7.418622292808967E-001 + 7.511937073817327E-001 7.606425610276640E-001 7.702102666212941E-001 7.798983191360888E-001 + 7.897082323499648E-001 7.996415390818183E-001 8.096997914310382E-001 8.198845610200147E-001 + 8.301974392397187E-001 8.406400374983551E-001 8.512139874731446E-001 8.619209413652866E-001 + 8.727625721581074E-001 8.837405738784767E-001 8.948566618615006E-001 9.061125730185386E-001 + 9.175100661086129E-001 9.290509220132036E-001 9.407369440145278E-001 9.525699580772999E-001 + 9.645518131340389E-001 9.766843813739773E-001 9.889695585355837E-001 1.001409264202785E+000 + 1.014005442104904E+000 1.026760060420359E+000 1.039675112084216E+000 1.052752615099570E+000 + 1.065994612852876E+000 1.079403174433224E+000 1.092980394955638E+000 1.106728395888453E+000 + 1.120649325384779E+000 1.134745358618175E+000 1.149018698122515E+000 1.163471574136131E+000 + 1.178106244950309E+000 1.192924997262134E+000 1.207930146531806E+000 1.223124037344430E+000 + 1.238509043776351E+000 + + + +-5.199671431770236E+000 -5.199671431783910E+000 -5.199671431797931E+000 -5.199671431812307E+000 +-5.199671431827047E+000 -5.199671431842162E+000 -5.199671431857659E+000 -5.199671431873547E+000 +-5.199671431889834E+000 -5.199671431906538E+000 -5.199671431923662E+000 -5.199671431941221E+000 +-5.199671431959228E+000 -5.199671431977688E+000 -5.199671431996613E+000 -5.199671432016018E+000 +-5.199671432035913E+000 -5.199671432056315E+000 -5.199671432077231E+000 -5.199671432098677E+000 +-5.199671432120669E+000 -5.199671432143212E+000 -5.199671432166328E+000 -5.199671432190028E+000 +-5.199671432214332E+000 -5.199671432239249E+000 -5.199671432264800E+000 -5.199671432290993E+000 +-5.199671432317855E+000 -5.199671432345385E+000 -5.199671432373624E+000 -5.199671432402575E+000 +-5.199671432432254E+000 -5.199671432462690E+000 -5.199671432493897E+000 -5.199671432525889E+000 +-5.199671432558693E+000 -5.199671432592327E+000 -5.199671432626811E+000 -5.199671432662171E+000 +-5.199671432698430E+000 -5.199671432735597E+000 -5.199671432773711E+000 -5.199671432812792E+000 +-5.199671432852856E+000 -5.199671432893942E+000 -5.199671432936062E+000 -5.199671432979247E+000 +-5.199671433023529E+000 -5.199671433068934E+000 -5.199671433115485E+000 -5.199671433163214E+000 +-5.199671433212153E+000 -5.199671433262330E+000 -5.199671433313776E+000 -5.199671433366523E+000 +-5.199671433420612E+000 -5.199671433476063E+000 -5.199671433532924E+000 -5.199671433591220E+000 +-5.199671433650995E+000 -5.199671433712281E+000 -5.199671433775118E+000 -5.199671433839544E+000 +-5.199671433905605E+000 -5.199671433973341E+000 -5.199671434042784E+000 -5.199671434113986E+000 +-5.199671434186998E+000 -5.199671434261854E+000 -5.199671434338601E+000 -5.199671434417297E+000 +-5.199671434497983E+000 -5.199671434580711E+000 -5.199671434665532E+000 -5.199671434752505E+000 +-5.199671434841674E+000 -5.199671434933105E+000 -5.199671435026842E+000 -5.199671435122966E+000 +-5.199671435221511E+000 -5.199671435322557E+000 -5.199671435426158E+000 -5.199671435532382E+000 +-5.199671435641296E+000 -5.199671435752970E+000 -5.199671435867463E+000 -5.199671435984863E+000 +-5.199671436105232E+000 -5.199671436228646E+000 -5.199671436355189E+000 -5.199671436484929E+000 +-5.199671436617958E+000 -5.199671436754352E+000 -5.199671436894203E+000 -5.199671437037590E+000 +-5.199671437184607E+000 -5.199671437335352E+000 -5.199671437489904E+000 -5.199671437648375E+000 +-5.199671437810853E+000 -5.199671437977450E+000 -5.199671438148263E+000 -5.199671438323399E+000 +-5.199671438502964E+000 -5.199671438687082E+000 -5.199671438875852E+000 -5.199671439069411E+000 +-5.199671439267867E+000 -5.199671439471341E+000 -5.199671439679971E+000 -5.199671439893882E+000 +-5.199671440113208E+000 -5.199671440338085E+000 -5.199671440568659E+000 -5.199671440805064E+000 +-5.199671441047458E+000 -5.199671441295989E+000 -5.199671441550807E+000 -5.199671441812079E+000 +-5.199671442079964E+000 -5.199671442354633E+000 -5.199671442636250E+000 -5.199671442925002E+000 +-5.199671443221060E+000 -5.199671443524613E+000 -5.199671443835850E+000 -5.199671444154969E+000 +-5.199671444482165E+000 -5.199671444817641E+000 -5.199671445161615E+000 -5.199671445514293E+000 +-5.199671445875902E+000 -5.199671446246661E+000 -5.199671446626807E+000 -5.199671447016579E+000 +-5.199671447416220E+000 -5.199671447825972E+000 -5.199671448246098E+000 -5.199671448676865E+000 +-5.199671449118531E+000 -5.199671449571383E+000 -5.199671450035693E+000 -5.199671450511762E+000 +-5.199671450999883E+000 -5.199671451500356E+000 -5.199671452013501E+000 -5.199671452539638E+000 +-5.199671453079093E+000 -5.199671453632204E+000 -5.199671454199315E+000 -5.199671454780788E+000 +-5.199671455376976E+000 -5.199671455988257E+000 -5.199671456615013E+000 -5.199671457257635E+000 +-5.199671457916528E+000 -5.199671458592100E+000 -5.199671459284772E+000 -5.199671459994981E+000 +-5.199671460723174E+000 -5.199671461469794E+000 -5.199671462235317E+000 -5.199671463020220E+000 +-5.199671463824991E+000 -5.199671464650134E+000 -5.199671465496166E+000 -5.199671466363622E+000 +-5.199671467253030E+000 -5.199671468164956E+000 -5.199671469099968E+000 -5.199671470058650E+000 +-5.199671471041599E+000 -5.199671472049435E+000 -5.199671473082779E+000 -5.199671474142292E+000 +-5.199671475228616E+000 -5.199671476342447E+000 -5.199671477484472E+000 -5.199671478655409E+000 +-5.199671479855988E+000 -5.199671481086957E+000 -5.199671482349091E+000 -5.199671483643177E+000 +-5.199671484970022E+000 -5.199671486330455E+000 -5.199671487725329E+000 -5.199671489155511E+000 +-5.199671490621901E+000 -5.199671492125418E+000 -5.199671493666989E+000 -5.199671495247589E+000 +-5.199671496868200E+000 -5.199671498529836E+000 -5.199671500233542E+000 -5.199671501980372E+000 +-5.199671503771421E+000 -5.199671505607817E+000 -5.199671507490701E+000 -5.199671509421249E+000 +-5.199671511400666E+000 -5.199671513430193E+000 -5.199671515511101E+000 -5.199671517644685E+000 +-5.199671519832282E+000 -5.199671522075256E+000 -5.199671524375015E+000 -5.199671526732990E+000 +-5.199671529150658E+000 -5.199671531629534E+000 -5.199671534171157E+000 -5.199671536777124E+000 +-5.199671539449056E+000 -5.199671542188637E+000 -5.199671544997566E+000 -5.199671547877603E+000 +-5.199671550830551E+000 -5.199671553858252E+000 -5.199671556962601E+000 -5.199671560145537E+000 +-5.199671563409046E+000 -5.199671566755176E+000 -5.199671570186013E+000 -5.199671573703691E+000 +-5.199671577310433E+000 -5.199671581008474E+000 -5.199671584800132E+000 -5.199671588687782E+000 +-5.199671592673839E+000 -5.199671596760808E+000 -5.199671600951239E+000 -5.199671605247755E+000 +-5.199671609653032E+000 -5.199671614169828E+000 -5.199671618800972E+000 -5.199671623549353E+000 +-5.199671628417939E+000 -5.199671633409771E+000 -5.199671638527983E+000 -5.199671643775748E+000 +-5.199671649156368E+000 -5.199671654673200E+000 -5.199671660329688E+000 -5.199671666129372E+000 +-5.199671672075882E+000 -5.199671678172919E+000 -5.199671684424310E+000 -5.199671690833949E+000 +-5.199671697405851E+000 -5.199671704144126E+000 -5.199671711052977E+000 -5.199671718136729E+000 +-5.199671725399808E+000 -5.199671732846747E+000 -5.199671740482211E+000 -5.199671748310962E+000 +-5.199671756337908E+000 -5.199671764568052E+000 -5.199671773006544E+000 -5.199671781658655E+000 +-5.199671790529797E+000 -5.199671799625509E+000 -5.199671808951489E+000 -5.199671818513549E+000 +-5.199671828317678E+000 -5.199671838369996E+000 -5.199671848676793E+000 -5.199671859244507E+000 +-5.199671870079740E+000 -5.199671881189273E+000 -5.199671892580049E+000 -5.199671904259178E+000 +-5.199671916233964E+000 -5.199671928511894E+000 -5.199671941100643E+000 -5.199671954008076E+000 +-5.199671967242269E+000 -5.199671980811479E+000 -5.199671994724198E+000 -5.199672008989118E+000 +-5.199672023615156E+000 -5.199672038611457E+000 -5.199672053987387E+000 -5.199672069752561E+000 +-5.199672085916832E+000 -5.199672102490304E+000 -5.199672119483337E+000 -5.199672136906552E+000 +-5.199672154770834E+000 -5.199672173087350E+000 -5.199672191867556E+000 -5.199672211123186E+000 +-5.199672230866270E+000 -5.199672251109153E+000 -5.199672271864490E+000 -5.199672293145245E+000 +-5.199672314964726E+000 -5.199672337336576E+000 -5.199672360274766E+000 -5.199672383793644E+000 +-5.199672407907897E+000 -5.199672432632610E+000 -5.199672457983230E+000 -5.199672483975608E+000 +-5.199672510625984E+000 -5.199672537951018E+000 -5.199672565967781E+000 -5.199672594693800E+000 +-5.199672624147016E+000 -5.199672654345845E+000 -5.199672685309158E+000 -5.199672717056318E+000 +-5.199672749607155E+000 -5.199672782982022E+000 -5.199672817201774E+000 -5.199672852287806E+000 +-5.199672888262043E+000 -5.199672925146974E+000 -5.199672962965650E+000 -5.199673001741711E+000 +-5.199673041499389E+000 -5.199673082263537E+000 -5.199673124059633E+000 -5.199673166913803E+000 +-5.199673210852831E+000 -5.199673255904180E+000 -5.199673302096008E+000 -5.199673349457187E+000 +-5.199673398017319E+000 -5.199673447806754E+000 -5.199673498856617E+000 -5.199673551198810E+000 +-5.199673604866051E+000 -5.199673659891882E+000 -5.199673716310700E+000 -5.199673774157766E+000 +-5.199673833469229E+000 -5.199673894282180E+000 -5.199673956634605E+000 -5.199674020565492E+000 +-5.199674086114797E+000 -5.199674153323491E+000 -5.199674222233574E+000 -5.199674292888119E+000 +-5.199674365331298E+000 -5.199674439608380E+000 -5.199674515765793E+000 -5.199674593851135E+000 +-5.199674673913217E+000 -5.199674756002079E+000 -5.199674840169026E+000 -5.199674926466667E+000 +-5.199675014948937E+000 -5.199675105671151E+000 -5.199675198689995E+000 -5.199675294063624E+000 +-5.199675391851642E+000 -5.199675492115174E+000 -5.199675594916883E+000 -5.199675700321025E+000 +-5.199675808393486E+000 -5.199675919201802E+000 -5.199676032815244E+000 -5.199676149304816E+000 +-5.199676268743332E+000 -5.199676391205445E+000 -5.199676516767687E+000 -5.199676645508553E+000 +-5.199676777508495E+000 -5.199676912850036E+000 -5.199677051617744E+000 -5.199677193898376E+000 +-5.199677339780841E+000 -5.199677489356334E+000 -5.199677642718342E+000 -5.199677799962712E+000 +-5.199677961187733E+000 -5.199678126494174E+000 -5.199678295985363E+000 -5.199678469767223E+000 +-5.199678647948378E+000 -5.199678830640201E+000 -5.199679017956875E+000 -5.199679210015473E+000 +-5.199679406936051E+000 -5.199679608841675E+000 -5.199679815858550E+000 -5.199680028116065E+000 +-5.199680245746885E+000 -5.199680468887033E+000 -5.199680697675980E+000 -5.199680932256728E+000 +-5.199681172775890E+000 -5.199681419383802E+000 -5.199681672234597E+000 -5.199681931486312E+000 +-5.199682197300989E+000 -5.199682469844763E+000 -5.199682749287987E+000 -5.199683035805320E+000 +-5.199683329575835E+000 -5.199683630783156E+000 -5.199683939615532E+000 -5.199684256265998E+000 +-5.199684580932468E+000 -5.199684913817865E+000 -5.199685255130248E+000 -5.199685605082948E+000 +-5.199685963894693E+000 -5.199686331789747E+000 -5.199686708998051E+000 -5.199687095755365E+000 +-5.199687492303427E+000 -5.199687898890089E+000 -5.199688315769468E+000 -5.199688743202126E+000 +-5.199689181455215E+000 -5.199689630802657E+000 -5.199690091525300E+000 -5.199690563911098E+000 +-5.199691048255310E+000 -5.199691544860656E+000 -5.199692054037522E+000 -5.199692576104157E+000 +-5.199693111386848E+000 -5.199693660220177E+000 -5.199694222947151E+000 -5.199694799919500E+000 +-5.199695391497833E+000 -5.199695998051897E+000 -5.199696619960799E+000 -5.199697257613233E+000 +-5.199697911407746E+000 -5.199698581752967E+000 -5.199699269067866E+000 -5.199699973782034E+000 +-5.199700696335915E+000 -5.199701437181112E+000 -5.199702196780676E+000 -5.199702975609343E+000 +-5.199703774153900E+000 -5.199704592913445E+000 -5.199705432399702E+000 -5.199706293137361E+000 +-5.199707175664390E+000 -5.199708080532366E+000 -5.199709008306845E+000 -5.199709959567684E+000 +-5.199710934909428E+000 -5.199711934941668E+000 -5.199712960289425E+000 -5.199714011593549E+000 +-5.199715089511093E+000 -5.199716194715771E+000 -5.199717327898322E+000 -5.199718489766989E+000 +-5.199719681047936E+000 -5.199720902485714E+000 -5.199722154843707E+000 -5.199723438904641E+000 +-5.199724755471038E+000 -5.199726105365748E+000 -5.199727489432446E+000 -5.199728908536155E+000 +-5.199730363563802E+000 -5.199731855424760E+000 -5.199733385051429E+000 -5.199734953399805E+000 +-5.199736561450075E+000 -5.199738210207254E+000 -5.199739900701781E+000 -5.199741633990175E+000 +-5.199743411155728E+000 -5.199745233309114E+000 -5.199747101589143E+000 -5.199749017163448E+000 +-5.199750981229210E+000 -5.199752995013919E+000 -5.199755059776127E+000 -5.199757176806264E+000 +-5.199759347427390E+000 -5.199761572996085E+000 -5.199763854903241E+000 -5.199766194574979E+000 +-5.199768593473488E+000 -5.199771053097999E+000 -5.199773574985667E+000 -5.199776160712567E+000 +-5.199778811894655E+000 -5.199781530188789E+000 -5.199784317293783E+000 -5.199787174951419E+000 +-5.199790104947585E+000 -5.199793109113365E+000 -5.199796189326182E+000 -5.199799347510989E+000 +-5.199802585641448E+000 -5.199805905741179E+000 -5.199809309885026E+000 -5.199812800200332E+000 +-5.199816378868292E+000 -5.199820048125298E+000 -5.199823810264354E+000 -5.199827667636489E+000 +-5.199831622652235E+000 -5.199835677783133E+000 -5.199839835563278E+000 -5.199844098590891E+000 +-5.199848469529950E+000 -5.199852951111865E+000 -5.199857546137158E+000 -5.199862257477232E+000 +-5.199867088076155E+000 -5.199872040952503E+000 -5.199877119201247E+000 -5.199882325995674E+000 +-5.199887664589374E+000 -5.199893138318295E+000 -5.199898750602774E+000 -5.199904504949728E+000 +-5.199910404954808E+000 -5.199916454304656E+000 -5.199922656779206E+000 -5.199929016254041E+000 +-5.199935536702814E+000 -5.199942222199741E+000 -5.199949076922115E+000 -5.199956105152944E+000 +-5.199963311283602E+000 -5.199970699816589E+000 -5.199978275368322E+000 -5.199986042672043E+000 +-5.199994006580729E+000 -5.200002172070176E+000 -5.200010544242055E+000 -5.200019128327138E+000 +-5.200027929688519E+000 -5.200036953824991E+000 -5.200046206374475E+000 -5.200055693117527E+000 +-5.200065419980939E+000 -5.200075393041468E+000 -5.200085618529581E+000 -5.200096102833388E+000 +-5.200106852502584E+000 -5.200117874252577E+000 -5.200129174968641E+000 -5.200140761710227E+000 +-5.200152641715366E+000 -5.200164822405181E+000 -5.200177311388503E+000 -5.200190116466649E+000 +-5.200203245638235E+000 -5.200216707104211E+000 -5.200230509272954E+000 -5.200244660765506E+000 +-5.200259170420944E+000 -5.200274047301916E+000 -5.200289300700252E+000 -5.200304940142791E+000 +-5.200320975397291E+000 -5.200337416478529E+000 -5.200354273654545E+000 -5.200371557453019E+000 +-5.200389278667854E+000 -5.200407448365878E+000 -5.200426077893766E+000 -5.200445178885079E+000 +-5.200464763267513E+000 -5.200484843270347E+000 -5.200505431432035E+000 -5.200526540608026E+000 +-5.200548183978759E+000 -5.200570375057870E+000 -5.200593127700616E+000 -5.200616456112469E+000 +-5.200640374857981E+000 -5.200664898869842E+000 -5.200690043458158E+000 -5.200715824319987E+000 +-5.200742257549084E+000 -5.200769359645959E+000 -5.200797147528064E+000 -5.200825638540373E+000 +-5.200854850466127E+000 -5.200884801537919E+000 -5.200915510448999E+000 -5.200946996364895E+000 +-5.200979278935325E+000 -5.201012378306428E+000 -5.201046315133233E+000 -5.201081110592499E+000 +-5.201116786395888E+000 -5.201153364803426E+000 -5.201190868637314E+000 -5.201229321296109E+000 +-5.201268746769221E+000 -5.201309169651822E+000 -5.201350615160074E+000 -5.201393109146785E+000 +-5.201436678117430E+000 -5.201481349246579E+000 -5.201527150394746E+000 -5.201574110125655E+000 +-5.201622257723919E+000 -5.201671623213189E+000 -5.201722237374737E+000 -5.201774131766520E+000 +-5.201827338742717E+000 -5.201881891473711E+000 -5.201937823966666E+000 -5.201995171086500E+000 +-5.202053968577479E+000 -5.202114253085284E+000 -5.202176062179687E+000 -5.202239434377724E+000 +-5.202304409167494E+000 -5.202371027032545E+000 -5.202439329476839E+000 -5.202509359050390E+000 +-5.202581159375468E+000 -5.202654775173521E+000 -5.202730252292721E+000 -5.202807637736230E+000 +-5.202886979691126E+000 -5.202968327558080E+000 -5.203051731981764E+000 -5.203137244881990E+000 +-5.203224919485642E+000 -5.203314810359398E+000 -5.203406973443249E+000 -5.203501466084848E+000 +-5.203598347074729E+000 -5.203697676682356E+000 -5.203799516693092E+000 -5.203903930446083E+000 +-5.204010982873045E+000 -5.204120740538043E+000 -5.204233271678207E+000 -5.204348646245496E+000 +-5.204466935949437E+000 -5.204588214300969E+000 -5.204712556657306E+000 -5.204840040267948E+000 +-5.204970744321765E+000 -5.205104749995311E+000 -5.205242140502225E+000 -5.205383001143911E+000 +-5.205527419361413E+000 -5.205675484788593E+000 -5.205827289306550E+000 -5.205982927099404E+000 +-5.206142494711431E+000 -5.206306091105567E+000 -5.206473817723326E+000 -5.206645778546219E+000 +-5.206822080158579E+000 -5.207002831811968E+000 -5.207188145491115E+000 -5.207378135981427E+000 +-5.207572920938158E+000 -5.207772620957197E+000 -5.207977359647602E+000 -5.208187263705831E+000 +-5.208402462991772E+000 -5.208623090606569E+000 -5.208849282972336E+000 -5.209081179913730E+000 +-5.209318924741492E+000 -5.209562664337954E+000 -5.209812549244576E+000 -5.210068733751541E+000 +-5.210331375989513E+000 -5.210600638023465E+000 -5.210876685948804E+000 -5.211159689989683E+000 +-5.211449824599672E+000 -5.211747268564718E+000 -5.212052205108558E+000 -5.212364822000540E+000 +-5.212685311665981E+000 -5.213013871299045E+000 -5.213350702978264E+000 -5.213696013784652E+000 +-5.214050015922613E+000 -5.214412926843551E+000 -5.214784969372324E+000 -5.215166371836595E+000 +-5.215557368199061E+000 -5.215958198192743E+000 -5.216369107459265E+000 -5.216790347690273E+000 +-5.217222176771987E+000 -5.217664858933038E+000 -5.218118664895512E+000 -5.218583872029376E+000 +-5.219060764510328E+000 -5.219549633481062E+000 -5.220050777216093E+000 -5.220564501290175E+000 +-5.221091118750307E+000 -5.221630950291543E+000 -5.222184324436478E+000 -5.222751577718633E+000 +-5.223333054869695E+000 -5.223929109010712E+000 -5.224540101847337E+000 -5.225166403869082E+000 +-5.225808394552770E+000 -5.226466462570144E+000 -5.227141005999719E+000 -5.227832432542975E+000 +-5.228541159744857E+000 -5.229267615218772E+000 -5.230012236875979E+000 -5.230775473159534E+000 +-5.231557783282835E+000 -5.232359637472735E+000 -5.233181517217378E+000 -5.234023915518682E+000 +-5.234887337149651E+000 -5.235772298916414E+000 -5.236679329925121E+000 -5.237608971853707E+000 +-5.238561779228512E+000 -5.239538319705842E+000 -5.240539174358451E+000 -5.241564937966983E+000 +-5.242616219316352E+000 -5.243693641497106E+000 -5.244797842211758E+000 -5.245929474086076E+000 +-5.247089204985283E+000 -5.248277718335267E+000 -5.249495713448615E+000 -5.250743905855543E+000 +-5.252023027639648E+000 -5.253333827778425E+000 -5.254677072488522E+000 -5.256053545575551E+000 +-5.257464048788562E+000 -5.258909402178862E+000 -5.260390444463262E+000 -5.261908033391508E+000 +-5.263463046117823E+000 -5.265056379576378E+000 -5.266688950860551E+000 -5.268361697605765E+000 +-5.270075578375740E+000 -5.271831573051889E+000 -5.273630683225672E+000 -5.275473932593649E+000 +-5.277362367354852E+000 -5.279297056610338E+000 -5.281279092764430E+000 -5.283309591927410E+000 +-5.285389694319222E+000 -5.287520564673755E+000 -5.289703392643344E+000 -5.291939393202936E+000 +-5.294229807053443E+000 -5.296575901023750E+000 -5.298978968470778E+000 -5.301440329676999E+000 +-5.303961332244728E+000 -5.306543351486503E+000 -5.309187790810792E+000 -5.311896082102233E+000 +-5.314669686095554E+000 -5.317510092742322E+000 -5.320418821569478E+000 -5.323397422028742E+000 +-5.326447473835738E+000 -5.329570587297765E+000 -5.332768403629006E+000 -5.336042595251828E+000 +-5.339394866083001E+000 -5.342826951803215E+000 -5.346340620108587E+000 -5.349937670942449E+000 +-5.353619936705849E+000 -5.357389282444954E+000 -5.361247606013569E+000 -5.365196838208771E+000 +-5.369238942877686E+000 -5.373375916993237E+000 -5.377609790696586E+000 -5.381942627303971E+000 +-5.386376523275429E+000 -5.390913608142744E+000 -5.395556044394040E+000 -5.400306027312007E+000 +-5.405165784762840E+000 -5.410137576932832E+000 -5.415223696009159E+000 -5.420426465801658E+000 +-5.425748241301829E+000 -5.431191408175468E+000 -5.436758382184922E+000 -5.442451608536993E+000 +-5.448273561152179E+000 -5.454226741850885E+000 -5.460313679451955E+000 -5.466536928778804E+000 +-5.472899069568115E+000 -5.479402705275958E+000 -5.486050461775954E+000 -5.492844985943916E+000 +-5.499788944123162E+000 -5.506885020464565E+000 -5.514135915135063E+000 -5.521544342388287E+000 +-5.529113028490591E+000 -5.536844709495745E+000 -5.544742128861099E+000 -5.552808034897992E+000 +-5.561045178048896E+000 -5.569456307983574E+000 -5.578044170506256E+000 -5.586811504265738E+000 +-5.595761037260027E+000 -5.604895483126949E+000 -5.614217537211976E+000 -5.623729872404289E+000 +-5.633435134732030E+000 -5.643335938707347E+000 -5.653434862411832E+000 -5.663734442312787E+000 +-5.674237167800544E+000 -5.684945475437083E+000 -5.695861742905965E+000 -5.706988282653753E+000 +-5.718327335212784E+000 -5.729881062195378E+000 -5.741651538949536E+000 -5.753640746866144E+000 +-5.765850565328006E+000 -5.778282763290924E+000 -5.790938990487497E+000 -5.803820768244334E+000 +-5.816929479903880E+000 -5.830266360842164E+000 -5.843832488074530E+000 -5.857628769441551E+000 +-5.871655932368219E+000 -5.885914512189906E+000 -5.900404840039509E+000 -5.915127030290886E+000 +-5.930080967554749E+000 -5.945266293224047E+000 -5.960682391567202E+000 -5.976328375368705E+000 +-5.992203071117981E+000 -6.008305003748984E+000 -6.024632380934646E+000 -6.041183076942045E+000 +-6.057954616056195E+000 -6.074944155582422E+000 -6.092148468439630E+000 -6.109563925359137E+000 +-6.127186476706506E+000 -6.145011633946509E+000 -6.163034450774523E+000 -6.181249503940707E+000 +-6.199650873796879E+000 -6.218232124599598E+000 -6.236986284606703E+000 -6.255905826008776E+000 +-6.274982644741162E+000 -6.294208040226688E+000 -6.313572695103930E+000 -6.333066655000788E+000 +-6.352679308418272E+000 -6.372399366794676E+000 -6.392214844825890E+000 -6.412113041123283E+000 +-6.432080519296413E+000 -6.452103089553884E+000 -6.472165790921928E+000 -6.492252874186260E+000 +-6.512347785669504E+000 -6.532433151962566E+000 -6.552490765734958E+000 -6.572501572755455E+000 +-6.592445660260685E+000 -6.612302246815858E+000 -6.632049673817463E+000 -6.651665398794058E+000 +-6.671125990666663E+000 -6.690407127135578E+000 -6.709483594365272E+000 -6.728329289143374E+000 +-6.746917223693443E+000 -6.765219533324430E+000 -6.783207487101861E+000 -6.800851501727317E+000 +-6.818121158813231E+000 -6.834985225739244E+000 -6.851411680274720E+000 -6.867367739148572E+000 +-6.882819890743169E+000 -6.897733932082671E+000 -6.912075010278357E+000 -6.925807668583763E+000 +-6.938895897200704E+000 -6.951303188963643E+000 -6.962992600013788E+000 -6.973926815556320E+000 +-6.984068220773369E+000 -6.993378976942491E+000 -7.001821102784744E+000 -7.009356561038320E+000 +-7.015947350222926E+000 -7.021555601526716E+000 -7.026143680711461E+000 -7.029674294893142E+000 +-7.032110604013976E+000 -7.033416336778370E+000 -7.033555910779613E+000 -7.032494556496298E+000 +-7.030198444787845E+000 -7.026634817467376E+000 -7.021772120477975E+000 -7.015580139145039E+000 +-7.008030134924150E+000 -6.999094983010454E+000 -6.988749310122850E+000 -6.976969631724933E+000 +-6.963734487895223E+000 -6.949024577012375E+000 -6.932822886377658E+000 -6.915114818857850E+000 +-6.895888314597391E+000 -6.875133966820389E+000 -6.852845130721395E+000 -6.829018024429807E+000 +-6.803651821027250E+000 -6.776748730600969E+000 -6.748314071329875E+000 -6.718356328624843E+000 +-6.686887201380503E+000 -6.653921634444330E+000 -6.619477836469175E+000 -6.583577282389032E+000 +-6.546244699844348E+000 -6.507508038982538E+000 -6.467398425171798E+000 -6.425950094290875E+000 +-6.383200310393751E+000 -6.339189265695667E+000 -6.293959962983442E+000 -6.247558080718679E+000 +-6.200031821274086E+000 -6.151431742919820E+000 -6.101810576356349E+000 -6.051223026769527E+000 +-5.999725562561292E+000 -5.947376192081612E+000 -5.894234229851710E+000 -5.840360053922836E+000 +-5.785814856154473E+000 -5.730660387319850E+000 -5.674958699050561E+000 -5.618771884714018E+000 +-5.562161821375403E+000 -5.505189915026223E+000 -5.447916851264573E+000 -5.390402353584831E+000 +-5.332704951376843E+000 -5.274881759646702E+000 -5.216988272351879E+000 -5.159078171095905E+000 +-5.101203150751425E+000 -5.043412763379083E+000 -4.985754281585740E+000 -4.928272582221908E+000 +-4.871010051060278E+000 -4.814006508827958E+000 -4.757299158690228E+000 -4.700922555008464E+000 +-4.644908592923589E+000 -4.589286518055895E+000 -4.534082955365859E+000 -4.479321955994392E+000 +-4.425025060699552E+000 -4.371211378332643E+000 -4.317897677654891E+000 -4.265098490687336E+000 +-4.212826225713853E+000 -4.161091288020812E+000 -4.109902206456061E+000 -4.059265763924510E+000 +-4.009187130004650E+000 -3.959669993967486E+000 -3.910716696603393E+000 -3.862328359408099E+000 +-3.814505009843229E+000 -3.767245701563446E+000 -3.720548628686801E+000 -3.674411233372838E+000 +-3.628830306158250E+000 -3.583802078679899E+000 -3.539322308583932E+000 -3.495386356575618E+000 +-3.451989255704214E+000 -3.409125773098258E+000 -3.366790464468951E+000 -3.324977721781108E+000 +-3.283681814553400E+000 -3.242896925293123E+000 -3.202617179595848E+000 -3.162836671450229E+000 +-3.123549484283521E+000 -3.084749708267089E+000 -3.046431454375631E+000 -3.008588865660546E+000 +-2.971216126160150E+000 -2.934307467828207E+000 -2.897857175819908E+000 -2.861859592432596E+000 +-2.826309119957609E+000 -2.791200222661764E+000 -2.756527428081749E+000 -2.722285327783117E+000 +-2.688468577707867E+000 -2.655071898210223E+000 -2.622090073859911E+000 -2.589517953074871E+000 +-2.557350447631232E+000 -2.525582532087049E+000 -2.494209243146983E+000 -2.463225678988196E+000 +-2.432626998562076E+000 -2.402408420882264E+000 -2.372565224306489E+000 -2.343092745817175E+000 +-2.313986380304448E+000 -2.285241579853759E+000 -2.256853853039613E+000 -2.228818764226429E+000 +-2.201131932876990E+000 -2.173789032868883E+000 -2.146785791819053E+000 -2.120117990416500E+000 +-2.093781461763192E+000 -2.067772090723031E+000 -2.042085813278915E+000 -2.016718615897766E+000 +-1.991666534903385E+000 -1.966925655857160E+000 -1.942492112946401E+000 -1.918362088380318E+000 +-1.894531811793484E+000 -1.870997559656696E+000 -1.847755654695180E+000 -1.824802465314000E+000 +-1.802134405030610E+000 -1.779747931914481E+000 -1.757639548033636E+000 -1.735805798908119E+000 +-1.714243272970206E+000 -1.692948601031346E+000 -1.671918455755732E+000 -1.651149551140371E+000 +-1.630638642001668E+000 -1.610382523468338E+000 -1.590378030480646E+000 -1.570622037295869E+000 +-1.551111456999871E+000 -1.531843241024794E+000 -1.512814378672686E+000 -1.494021896645087E+000 +-1.475462858578453E+000 -1.457134364585322E+000 -1.439033550801223E+000 -1.421157588937173E+000 +-1.403503685837759E+000 -1.386069083044711E+000 -1.368851056365866E+000 -1.351846915449529E+000 +-1.335054003364084E+000 -1.318469696182852E+000 -1.302091402574098E+000 -1.285916563396120E+000 +-1.269942651297391E+000 -1.254167170321647E+000 -1.238587655517886E+000 -1.223201672555228E+000 +-1.208006817342528E+000 -1.193000715652748E+000 -1.178181022751968E+000 -1.163545423033020E+000 +-1.149091629653673E+000 -1.134817384179303E+000 -1.120720456230017E+000 -1.106798643132140E+000 +-1.093049769574050E+000 -1.079471687266285E+000 -1.066062274605856E+000 -1.052819436344756E+000 +-1.039741103262563E+000 -1.026825231843122E+000 -1.014069803955251E+000 -1.001472826537388E+000 +-9.890323312861845E-001 -9.767463743489466E-001 -9.646130360199050E-001 -9.526304204402636E-001 +-9.407966553019561E-001 -9.291098915551067E-001 -9.175683031191018E-001 -9.061700865972645E-001 +-8.949134609950773E-001 -8.837966674418843E-001 -8.728179689160793E-001 -8.619756499736791E-001 +-8.512680164802889E-001 -8.406933953463935E-001 -8.302501342659236E-001 -8.199366014580911E-001 +-8.097511854124104E-001 -7.996922946369005E-001 -7.897583574094159E-001 -7.799478215320508E-001 +-7.702591540886177E-001 -7.606908412051151E-001 -7.512413878131874E-001 -7.419093174165190E-001 +-7.326931718601221E-001 -7.235915111025053E-001 -7.146029129906566E-001 -7.057259730378322E-001 +-6.969593042041073E-001 -6.883015366796374E-001 -6.797513176706356E-001 -6.713073111879845E-001 +-6.629681978384906E-001 -6.547326746187293E-001 -6.465994547114403E-001 -6.385672672844677E-001 +-6.306348572921837E-001 -6.228009852793868E-001 -6.150644271876394E-001 -6.074239741639975E-001 +-5.998784323721331E-001 -5.924266228057894E-001 -5.850673811045591E-001 -5.777995573719564E-001 +-5.706220159957344E-001 -5.635336354704522E-001 -5.565333082222302E-001 -5.496199404356931E-001 +-5.427924518830602E-001 -5.360497757553530E-001 -5.293908584957102E-001 -5.228146596347616E-001 +-5.163201516280546E-001 -5.099063196955017E-001 -5.035721616628130E-001 -4.973166878049105E-001 +-4.911389206912762E-001 -4.850378950332289E-001 -4.790126575330987E-001 -4.730622667352660E-001 +-4.671857928790643E-001 -4.613823177534965E-001 -4.556509345537668E-001 -4.499907477395909E-001 +-4.444008728952616E-001 -4.388804365914639E-001 -4.334285762487926E-001 -4.280444400029767E-001 +-4.227271865717752E-001 -4.174759851235199E-001 -4.122900151473025E-001 -4.071684663247623E-001 +-4.021105384034754E-001 -3.971154410719149E-001 -3.921823938359589E-001 -3.873106258969418E-001 +-3.824993760312106E-001 -3.777478924711846E-001 -3.730554327878920E-001 -3.684212637749590E-001 +-3.638446613340503E-001 -3.593249103617229E-001 -3.548613046376910E-001 -3.504531467144804E-001 +-3.460997478084456E-001 -3.418004276921520E-001 -3.375545145880837E-001 -3.333613450636792E-001 +-3.292202639276703E-001 -3.251306241277035E-001 -3.210917866492405E-001 -3.171031204157079E-001 +-3.131640021898908E-001 -3.092738164765537E-001 -3.054319554262628E-001 -3.016378187404141E-001 +-2.978908135774305E-001 -2.941903544601314E-001 -2.905358631842521E-001 -2.869267687280946E-001 +-2.833625071633085E-001 -2.798425215667721E-001 -2.763662619335741E-001 -2.729331850910752E-001 +-2.695427546140333E-001 -2.661944407407891E-001 -2.628877202904876E-001 -2.596220765813301E-001 +-2.563969993498443E-001 -2.532119846711501E-001 -2.500665348802250E-001 -2.469601584941392E-001 +-2.438923701352621E-001 -2.408626904554220E-001 -2.378706460610039E-001 -2.349157694389850E-001 +-2.319975988838807E-001 -2.291156784256045E-001 -2.262695577582221E-001 -2.234587921695880E-001 +-2.206829424718612E-001 -2.179415749328787E-001 -2.152342612083845E-001 -2.125605782751021E-001 +-2.099201083646326E-001 -2.073124388981813E-001 -2.047371624220882E-001 -2.021938765441641E-001 +-1.996821838708172E-001 -1.972016919449563E-001 -1.947520131846720E-001 -1.923327648226739E-001 +-1.899435688464831E-001 -1.875840519393680E-001 -1.852538454220109E-001 -1.829525851949032E-001 +-1.806799116814520E-001 -1.784354697717969E-001 -1.762189087673238E-001 -1.740298823258654E-001 +-1.718680484075873E-001 -1.697330692215412E-001 -1.676246111728852E-001 -1.655423448107601E-001 +-1.634859447768100E-001 -1.614550897543463E-001 -1.594494624181396E-001 -1.574687493848380E-001 +-1.555126411640007E-001 -1.535808321097379E-001 -1.516730203729551E-001 -1.497889078541868E-001 +-1.479282001570183E-001 -1.460906065420869E-001 -1.442758398816510E-001 -1.424836166147285E-001 +-1.407136567027871E-001 -1.389656835859895E-001 -1.372394241399803E-001 -1.355346086332085E-001 +-1.338509706847831E-001 -1.321882472228492E-001 -1.305461784434827E-001 -1.289245077700965E-001 +-1.273229818133481E-001 -1.257413503315489E-001 -1.241793661915617E-001 -1.226367853301866E-001 +-1.211133667160261E-001 + + + + 8.328696459581192E-005 8.433458564346909E-005 8.539538414168892E-005 8.646952584239395E-005 + 8.755717858240947E-005 8.865851230968789E-005 8.977369910986375E-005 9.090291323314234E-005 + 9.204633112152662E-005 9.320413143638700E-005 9.437649508637693E-005 9.556360525570071E-005 + 9.676564743273611E-005 9.798280943901752E-005 9.921528145858345E-005 1.004632560676930E-004 + 1.017269282649163E-004 1.030064955016036E-004 1.043021577127371E-004 1.056141173481721E-004 + 1.069425794042687E-004 1.082877514559243E-004 1.096498436890068E-004 1.110290689331968E-004 + 1.124256426952429E-004 1.138397831926345E-004 1.152717113876993E-004 1.167216510221288E-004 + 1.181898286519383E-004 1.196764736828673E-004 1.211818184062237E-004 1.227060980351807E-004 + 1.242495507415287E-004 1.258124176928902E-004 1.273949430904034E-004 1.289973742068780E-004 + 1.306199614254332E-004 1.322629582786195E-004 1.339266214880345E-004 1.356112110044361E-004 + 1.373169900483597E-004 1.390442251512475E-004 1.407931861970945E-004 1.425641464646180E-004 + 1.443573826699588E-004 1.461731750099179E-004 1.480118072057380E-004 1.498735665474355E-004 + 1.517587439386903E-004 1.536676339423003E-004 1.556005348262066E-004 1.575577486100993E-004 + 1.595395811126083E-004 1.615463419990881E-004 1.635783448300038E-004 1.656359071099254E-004 + 1.677193503371387E-004 1.698290000538793E-004 1.719651858972006E-004 1.741282416504792E-004 + 1.763185052955694E-004 1.785363190656137E-004 1.807820294985175E-004 1.830559874910959E-004 + 1.853585483539027E-004 1.876900718667479E-004 1.900509223349141E-004 1.924414686460798E-004 + 1.948620843279590E-004 1.973131476066663E-004 1.997950414658139E-004 2.023081537063551E-004 + 2.048528770071781E-004 2.074296089864630E-004 2.100387522638109E-004 2.126807145231536E-004 + 2.153559085764548E-004 2.180647524282133E-004 2.208076693407762E-004 2.235850879004765E-004 + 2.263974420845978E-004 2.292451713291860E-004 2.321287205977113E-004 2.350485404505949E-004 + 2.380050871156103E-004 2.409988225591689E-004 2.440302145585037E-004 2.470997367747605E-004 + 2.502078688270079E-004 2.533550963671799E-004 2.565419111559582E-004 2.597688111396123E-004 + 2.630363005278037E-004 2.663448898723698E-004 2.696950961470994E-004 2.730874428285099E-004 + 2.765224599776416E-004 2.800006843228813E-004 2.835226593438267E-004 2.870889353562068E-004 + 2.907000695978690E-004 2.943566263158489E-004 2.980591768545352E-004 3.018082997449429E-004 + 3.056045807951110E-004 3.094486131816345E-004 3.133409975423505E-004 3.172823420701889E-004 + 3.212732626082032E-004 3.253143827457984E-004 3.294063339161662E-004 3.335497554949492E-004 + 3.377452949001439E-004 3.419936076932606E-004 3.462953576817578E-004 3.506512170227612E-004 + 3.550618663280909E-004 3.595279947706080E-004 3.640503001918987E-004 3.686294892113146E-004 + 3.732662773363821E-004 3.779613890746020E-004 3.827155580466555E-004 3.875295271010333E-004 + 3.924040484301087E-004 3.973398836876664E-004 4.023378041079144E-004 4.073985906259902E-004 + 4.125230339999826E-004 4.177119349344910E-004 4.229661042057347E-004 4.282863627882399E-004 + 4.336735419831180E-004 4.391284835479561E-004 4.446520398283475E-004 4.502450738910680E-004 + 4.559084596589332E-004 4.616430820473511E-004 4.674498371025907E-004 4.733296321417923E-004 + 4.792833858947355E-004 4.853120286473939E-004 4.914165023872932E-004 4.975977609506983E-004 + 5.038567701716538E-004 5.101945080328936E-004 5.166119648186562E-004 5.231101432694160E-004 + 5.296900587385635E-004 5.363527393510578E-004 5.430992261640710E-004 5.499305733296551E-004 + 5.568478482594567E-004 5.638521317914999E-004 5.709445183590718E-004 5.781261161617264E-004 + 5.853980473384446E-004 5.927614481429697E-004 6.002174691213486E-004 6.077672752917092E-004 + 6.154120463262912E-004 6.231529767357770E-004 6.309912760559320E-004 6.389281690365996E-004 + 6.469648958330694E-004 6.551027121998504E-004 6.633428896868905E-004 6.716867158382535E-004 + 6.801354943933001E-004 6.886905454904037E-004 6.973532058732162E-004 7.061248290995457E-004 + 7.150067857528435E-004 7.240004636563639E-004 7.331072680900157E-004 7.423286220099321E-004 + 7.516659662708190E-004 7.611207598510828E-004 7.706944800808013E-004 7.803886228725608E-004 + 7.902047029551871E-004 8.001442541104334E-004 8.102088294126292E-004 8.204000014713511E-004 + 8.307193626771506E-004 8.411685254503568E-004 8.517491224930305E-004 8.624628070440683E-004 + 8.733112531375249E-004 8.842961558641877E-004 8.954192316364271E-004 9.066822184563987E-004 + 9.180868761876010E-004 9.296349868298578E-004 9.413283547977617E-004 9.531688072026062E-004 + 9.651581941378865E-004 9.772983889683681E-004 9.895912886228062E-004 1.002038813890346E-003 + 1.014642909720638E-003 1.027405545527751E-003 1.040328715497885E-003 1.053414438900967E-003 + 1.066664760406171E-003 1.080081750401384E-003 1.093667505316721E-003 1.107424147952087E-003 + 1.121353827808864E-003 1.135458721425780E-003 1.149741032718981E-003 1.164202993326412E-003 + 1.178846862956497E-003 1.193674929741227E-003 1.208689510593682E-003 1.223892951570043E-003 + 1.239287628236176E-003 1.254875946038804E-003 1.270660340681363E-003 1.286643278504588E-003 + 1.302827256871865E-003 1.319214804559462E-003 1.335808482151635E-003 1.352610882440729E-003 + 1.369624630832305E-003 1.386852385755343E-003 1.404296839077645E-003 1.421960716526421E-003 + 1.439846778114191E-003 1.457957818570040E-003 1.476296667776281E-003 1.494866191210640E-003 + 1.513669290393974E-003 1.532708903343635E-003 1.551988005032543E-003 1.571509607854006E-003 + 1.591276762092422E-003 1.611292556399878E-003 1.631560118278743E-003 1.652082614570354E-003 + 1.672863251949808E-003 1.693905277427031E-003 1.715211978854097E-003 1.736786685438961E-003 + 1.758632768265646E-003 1.780753640820964E-003 1.803152759527875E-003 1.825833624285546E-003 + 1.848799779016202E-003 1.872054812218866E-003 1.895602357530048E-003 1.919446094291500E-003 + 1.943589748125105E-003 1.968037091514993E-003 1.992791944396994E-003 2.017858174755486E-003 + 2.043239699227764E-003 2.068940483716003E-003 2.094964544006920E-003 2.121315946399234E-003 + 2.147998808339010E-003 2.175017299063002E-003 2.202375640250079E-003 2.230078106680855E-003 + 2.258129026905608E-003 2.286532783920598E-003 2.315293815852903E-003 2.344416616653851E-003 + 2.373905736801189E-003 2.403765784010079E-003 2.434001423953028E-003 2.464617380988887E-003 + 2.495618438901008E-003 2.527009441644686E-003 2.558795294104014E-003 2.590980962858235E-003 + 2.623571476957753E-003 2.656571928709898E-003 2.689987474474560E-003 2.723823335469859E-003 + 2.758084798587911E-003 2.792777217220892E-003 2.827906012097458E-003 2.863476672129707E-003 + 2.899494755270786E-003 2.935965889383276E-003 2.972895773118517E-003 3.010290176806973E-003 + 3.048154943359803E-003 3.086495989181777E-003 3.125319305095658E-003 3.164630957278234E-003 + 3.204437088208085E-003 3.244743917625311E-003 3.285557743503302E-003 3.326884943032734E-003 + 3.368731973617957E-003 3.411105373885886E-003 3.454011764707598E-003 3.497457850232788E-003 + 3.541450418937198E-003 3.585996344683260E-003 3.631102587794045E-003 3.676776196140737E-003 + 3.723024306243780E-003 3.769854144387861E-003 3.817273027750937E-003 3.865288365547435E-003 + 3.913907660185844E-003 3.963138508440866E-003 4.012988602640296E-003 4.063465731866845E-003 + 4.114577783175041E-003 4.166332742823488E-003 4.218738697522569E-003 4.271803835697864E-003 + 4.325536448769456E-003 4.379944932447316E-003 4.435037788042979E-003 4.490823623797722E-003 + 4.547311156227431E-003 4.604509211484390E-003 4.662426726736185E-003 4.721072751561950E-003 + 4.780456449366171E-003 4.840587098810283E-003 4.901474095262220E-003 4.963126952264251E-003 + 5.025555303019230E-003 5.088768901895551E-003 5.152777625951037E-003 5.217591476475948E-003 + 5.283220580555440E-003 5.349675192651638E-003 5.416965696205599E-003 5.485102605259458E-003 + 5.554096566098895E-003 5.623958358916323E-003 5.694698899494944E-003 5.766329240913992E-003 + 5.838860575275436E-003 5.912304235452327E-003 5.986671696859201E-003 6.061974579244688E-003 + 6.138224648506673E-003 6.215433818530299E-003 6.293614153049022E-003 6.372777867529101E-003 + 6.452937331077789E-003 6.534105068375457E-003 6.616293761632082E-003 6.699516252568242E-003 + 6.783785544421087E-003 6.869114803975477E-003 6.955517363620674E-003 7.043006723432881E-003 + 7.131596553283956E-003 7.221300694976607E-003 7.312133164406467E-003 7.404108153751308E-003 + 7.497240033687806E-003 7.591543355636096E-003 7.687032854032618E-003 7.783723448631476E-003 + 7.881630246834727E-003 7.980768546051986E-003 8.081153836089608E-003 8.182801801569982E-003 + 8.285728324381160E-003 8.389949486157299E-003 8.495481570790277E-003 8.602341066972816E-003 + 8.710544670773616E-003 8.820109288244822E-003 8.931052038062237E-003 9.043390254198744E-003 + 9.157141488631247E-003 9.272323514081691E-003 9.388954326792468E-003 9.507052149336698E-003 + 9.626635433463853E-003 9.747722862981031E-003 9.870333356670502E-003 9.994486071243884E-003 + 1.012020040433339E-002 1.024749599752068E-002 1.037639273940373E-002 1.050691076870220E-002 + 1.063907047740185E-002 1.077289251393837E-002 1.090839778642127E-002 1.104560746589817E-002 + 1.118454298966013E-002 1.132522606458843E-002 1.146767867054343E-002 1.161192306379588E-002 + 1.175798178050145E-002 1.190587764021870E-002 1.205563374947129E-002 1.220727350535496E-002 + 1.236082059918965E-002 1.251629902021759E-002 1.267373305934763E-002 1.283314731294675E-002 + 1.299456668667895E-002 1.315801639939248E-002 1.332352198705572E-002 1.349110930674244E-002 + 1.366080454066714E-002 1.383263420027090E-002 1.400662513035856E-002 1.418280451328773E-002 + 1.436119987321035E-002 1.454183908036747E-002 1.472475035543778E-002 1.490996227394079E-002 + 1.509750377069516E-002 1.528740414433283E-002 1.547969306186988E-002 1.567440056333454E-002 + 1.587155706645331E-002 1.607119337139576E-002 1.627334066557872E-002 1.647803052853076E-002 + 1.668529493681750E-002 1.689516626902874E-002 1.710767731082796E-002 1.732286126006507E-002 + 1.754075173195316E-002 1.776138276431015E-002 1.798478882286596E-002 1.821100480663620E-002 + 1.844006605336299E-002 1.867200834502401E-002 1.890686791341040E-002 1.914468144577443E-002 + 1.938548609054794E-002 1.962931946313206E-002 1.987621965175962E-002 2.012622522343067E-002 + 2.037937522992220E-002 2.063570921387321E-002 2.089526721494546E-002 2.115808977606151E-002 + 2.142421794972059E-002 2.169369330439329E-002 2.196655793099633E-002 2.224285444944787E-002 + 2.252262601530494E-002 2.280591632648358E-002 2.309276963006284E-002 2.338323072917382E-002 + 2.367734498997441E-002 2.397515834871123E-002 2.427671731886952E-002 2.458206899841224E-002 + 2.489126107710931E-002 2.520434184395824E-002 2.552136019469717E-002 2.584236563941154E-002 + 2.616740831023538E-002 2.649653896914863E-002 2.682980901587127E-002 2.716727049585591E-002 + 2.750897610837960E-002 2.785497921473635E-002 2.820533384653157E-002 2.856009471407939E-002 + 2.891931721490446E-002 2.928305744234929E-002 2.965137219428847E-002 3.002431898195105E-002 + 3.040195603885229E-002 3.078434232983636E-002 3.117153756023101E-002 3.156360218511567E-002 + 3.196059741870468E-002 3.236258524384621E-002 3.276962842163925E-002 3.318179050116932E-002 + 3.359913582936468E-002 3.402172956097455E-002 3.444963766867023E-002 3.488292695327147E-002 + 3.532166505409880E-002 3.576592045945373E-002 3.621576251722827E-002 3.667126144564497E-002 + 3.713248834412972E-002 3.759951520431814E-002 3.807241492119746E-002 3.855126130438589E-002 + 3.903612908954986E-002 3.952709394996232E-002 4.002423250820262E-002 4.052762234799998E-002 + 4.103734202622240E-002 4.155347108501222E-002 4.207609006407054E-002 4.260528051309204E-002 + 4.314112500435160E-002 4.368370714544527E-002 4.423311159218615E-002 4.478942406165835E-002 + 4.535273134542960E-002 4.592312132292522E-002 4.650068297496469E-002 4.708550639746296E-002 + 4.767768281529809E-002 4.827730459634774E-002 4.888446526569531E-002 4.949925952000887E-002 + 5.012178324209368E-002 5.075213351562097E-002 5.139040864003473E-002 5.203670814563827E-002 + 5.269113280886296E-002 5.335378466772037E-002 5.402476703744081E-002 5.470418452629951E-002 + 5.539214305163279E-002 5.608874985604630E-002 5.679411352381700E-002 5.750834399749150E-002 + 5.823155259468267E-002 5.896385202506596E-002 5.970535640757892E-002 6.045618128782419E-002 + 6.121644365567995E-002 6.198626196311856E-002 6.276575614223613E-002 6.355504762349549E-002 + 6.435425935418342E-002 6.516351581708607E-002 6.598294304938351E-002 6.681266866176572E-002 + 6.765282185777276E-002 6.850353345336062E-002 6.936493589669541E-002 7.023716328817796E-002 + 7.112035140070076E-002 7.201463770014006E-002 7.292016136608430E-002 7.383706331280201E-002 + 7.476548621045125E-002 7.570557450653181E-002 7.665747444758403E-002 7.762133410113427E-002 + 7.859730337789141E-002 7.958553405419483E-002 8.058617979471691E-002 8.159939617542201E-002 + 8.262534070678348E-002 8.366417285726174E-002 8.471605407704499E-002 8.578114782205429E-002 + 8.685961957821602E-002 8.795163688600234E-002 8.905736936524317E-002 9.017698874021035E-002 + 9.131066886497678E-002 9.245858574905226E-002 9.362091758329709E-002 9.479784476611657E-002 + 9.598954992993740E-002 9.719621796796742E-002 9.841803606124165E-002 9.965519370595438E-002 + 1.009078827410807E-001 1.021762973762881E-001 1.034606342201395E-001 1.047610923085899E-001 + 1.060778731337764E-001 1.074111806731055E-001 1.087612214186357E-001 1.101282044067591E-001 + 1.115123412481821E-001 1.129138461582046E-001 1.143329359873021E-001 1.157698302520075E-001 + 1.172247511660962E-001 1.186979236720732E-001 1.201895754729635E-001 1.216999370644057E-001 + 1.232292417670492E-001 1.247777257592547E-001 1.263456281100983E-001 1.279331908126782E-001 + 1.295406588177240E-001 1.311682800675085E-001 1.328163055300600E-001 1.344849892336753E-001 + 1.361745883017313E-001 1.378853629877938E-001 1.396175767110238E-001 1.413714960918763E-001 + 1.431473909880925E-001 1.449455345309814E-001 1.467662031619881E-001 1.486096766695482E-001 + 1.504762382262221E-001 1.523661744261087E-001 1.542797753225318E-001 1.562173344659986E-001 + 1.581791489424237E-001 1.601655194116134E-001 1.621767501460088E-001 1.642131490696768E-001 + 1.662750277975486E-001 1.683627016748958E-001 1.704764898170396E-001 1.726167151492843E-001 + 1.747837044470693E-001 1.769777883763294E-001 1.791993015340572E-001 1.814485824890569E-001 + 1.837259738228807E-001 1.860318221709357E-001 1.883664782637547E-001 1.907302969684139E-001 + 1.931236373300899E-001 1.955468626137421E-001 1.980003403459039E-001 2.004844423565743E-001 + 2.029995448211896E-001 2.055460283026618E-001 2.081242777934683E-001 2.107346827577718E-001 + 2.133776371735557E-001 2.160535395747540E-001 2.187627930933554E-001 2.215058055014610E-001 + 2.242829892532721E-001 2.270947615269862E-001 2.299415442665758E-001 2.328237642234238E-001 + 2.357418529977907E-001 2.386962470800809E-001 2.416873878918843E-001 2.447157218267578E-001 + 2.477817002907163E-001 2.508857797423991E-001 2.540284217328750E-001 2.572100929450520E-001 + 2.604312652326501E-001 2.636924156586958E-001 2.669940265335031E-001 2.703365854520853E-001 + 2.737205853309640E-001 2.771465244443179E-001 2.806149064594234E-001 2.841262404713417E-001 + 2.876810410367841E-001 2.912798282071138E-001 2.949231275604131E-001 2.986114702325578E-001 + 3.023453929472407E-001 3.061254380448631E-001 3.099521535102403E-001 3.138260929990357E-001 + 3.177478158628504E-001 3.217178871728982E-001 3.257368777421667E-001 3.298053641459966E-001 + 3.339239287409767E-001 3.380931596820656E-001 3.423136509378506E-001 3.465860023038277E-001 + 3.509108194136165E-001 3.552887137479859E-001 3.597203026415827E-001 3.642062092872531E-001 + 3.687470627378185E-001 3.733434979051954E-001 3.779961555567157E-001 3.827056823085114E-001 + 3.874727306158312E-001 3.922979587601226E-001 3.971820308327458E-001 4.021256167151416E-001 + 4.071293920552971E-001 4.121940382403383E-001 4.173202423650583E-001 4.225086971962132E-001 + 4.277601011323763E-001 4.330751581591559E-001 4.384545777995779E-001 4.438990750593985E-001 + 4.494093703671455E-001 4.549861895086367E-001 4.606302635557442E-001 4.663423287891603E-001 + 4.721231266148891E-001 4.779734034742176E-001 4.838939107468694E-001 4.898854046470595E-001 + 4.959486461121616E-001 5.020844006836565E-001 5.082934383800655E-001 5.145765335615199E-001 + 5.209344647856239E-001 5.273680146542716E-001 5.338779696510204E-001 5.404651199686726E-001 + 5.471302593266416E-001 5.538741847777072E-001 5.606976965037459E-001 5.676015975999720E-001 + 5.745866938472713E-001 5.816537934721294E-001 5.888037068936857E-001 5.960372464574180E-001 + 6.033552261549207E-001 6.107584613292696E-001 6.182477683653951E-001 6.258239643649079E-001 + 6.334878668047952E-001 6.412402931793538E-001 6.490820606247674E-001 6.570139855256483E-001 + 6.650368831028916E-001 6.731515669821592E-001 6.813588487422562E-001 6.896595374427024E-001 + 6.980544391297091E-001 7.065443563198016E-001 7.151300874602893E-001 7.238124263657302E-001 + 7.325921616295775E-001 7.414700760100970E-001 7.504469457896684E-001 7.595235401065569E-001 + 7.687006202581650E-001 7.779789389748306E-001 7.873592396631224E-001 7.968422556176155E-001 + 8.064287092000988E-001 8.161193109850861E-001 8.259147588705529E-001 8.358157371527219E-001 + 8.458229155637245E-001 8.559369482709549E-001 8.661584728368453E-001 8.764881091378348E-001 + 8.869264582412127E-001 8.974741012385200E-001 9.081315980341785E-001 9.188994860879272E-001 + 9.297782791097063E-001 9.407684657055124E-001 9.518705079727792E-001 9.630848400438077E-001 + 9.744118665756909E-001 9.858519611852404E-001 9.974054648273106E-001 1.009072684114943E+000 + 1.020853889579742E+000 1.032749313870815E+000 1.044759149890660E+000 1.056883548866318E+000 + 1.069122618354101E+000 1.081476420176249E+000 1.093944968287735E+000 1.106528226571593E+000 + 1.119226106560995E+000 1.132038465086377E+000 1.144965101845931E+000 1.158005756897709E+000 + 1.171160108071695E+000 1.184427768300116E+000 1.197808282864393E+000 1.211301126557053E+000 + 1.224905700757010E+000 1.238621330416706E+000 1.252447260959511E+000 1.266382655086012E+000 + 1.280426589487721E+000 1.294578051466904E+000 1.308835935461289E+000 1.323199039472449E+000 + 1.337666061396844E+000 1.352235595258529E+000 1.366906127342706E+000 1.381676032229441E+000 + 1.396543568726950E+000 1.411506875704123E+000 1.426563967822015E+000 1.441712731164323E+000 + 1.456950918767040E+000 1.472276146047671E+000 1.487685886134734E+000 1.503177465098421E+000 + 1.518748057083677E+000 1.534394679347242E+000 1.550114187200473E+000 1.565903268860236E+000 + 1.581758440210442E+000 1.597676039477243E+000 1.613652221821411E+000 1.629682953851756E+000 + 1.645764008064101E+000 1.661890957210729E+000 1.678059168605864E+000 1.694263798373360E+000 + 1.710499785643320E+000 1.726761846705191E+000 1.743044469125440E+000 1.759341905838804E+000 + 1.775648169222853E+000 1.791957025166425E+000 1.808261987143443E+000 1.824556310304510E+000 + 1.840832985599666E+000 1.857084733946771E+000 1.873304000460957E+000 1.889482948761843E+000 + 1.905613455376271E+000 1.921687104255624E+000 1.937695181428055E+000 1.953628669807235E+000 + 1.969478244180706E+000 1.985234266402236E+000 2.000886780814156E+000 2.016425509927146E+000 + 2.031839850386476E+000 2.047118869255408E+000 2.062251300648050E+000 2.077225542745667E+000 + 2.092029655232264E+000 2.106651357186885E+000 2.121078025472000E+000 2.135296693659075E+000 + 2.149294051534287E+000 2.163056445229186E+000 2.176569878022907E+000 2.189820011864417E+000 + 2.202792169665015E+000 2.215471338413160E+000 2.227842173165379E+000 2.239889001968701E+000 + 2.251595831771693E+000 2.262946355382667E+000 2.273923959535048E+000 2.284511734121240E+000 + 2.294692482657393E+000 2.304448734042552E+000 2.313762755676421E+000 2.322616568000564E+000 + 2.330991960528274E+000 2.338870509428316E+000 2.346233596727669E+000 2.353062431197744E+000 + 2.359338070987673E+000 2.365041448067025E+000 2.370153394538460E+000 2.374654670878720E+000 + 2.378525996163578E+000 2.381748080329104E+000 2.384301658517779E+000 2.386167527553418E+000 + 2.387326584583767E+000 2.387759867923674E+000 2.387448600125113E+000 2.386374233292845E+000 + 2.384518496656217E+000 2.381863446398364E+000 2.378391517733970E+000 2.374085579215651E+000 + 2.368928989236944E+000 2.362905654686780E+000 2.356000091696157E+000 2.348197488402562E+000 + 2.339483769641362E+000 2.329845663456030E+000 2.319270769300701E+000 2.307747627788972E+000 + 2.295265791822437E+000 2.281815898910903E+000 2.267389744473760E+000 2.251980355888774E+000 + 2.235582067030325E+000 2.218190593014481E+000 2.199803104842847E+000 2.180418303611378E+000 + 2.160036493924376E+000 2.138659656127648E+000 2.116291516948947E+000 2.092937618108123E+000 + 2.068605382434352E+000 2.043304177003856E+000 2.017045372788383E+000 1.989842400283595E+000 + 1.961710800566854E+000 1.932668271216733E+000 1.902734706512158E+000 1.871932231317491E+000 + 1.840285228052136E+000 1.807820356139315E+000 1.774566563329142E+000 1.740555088296847E+000 + 1.705819453927651E+000 1.670395450716811E+000 1.634321109736320E+000 1.597636664649561E+000 + 1.560384502292420E+000 1.522609101383618E+000 1.484356958979608E+000 1.445676504349676E+000 + 1.406618000015609E+000 1.367233429777467E+000 1.327576373632215E+000 1.287701869585939E+000 + 1.247666262461917E+000 1.207527039916245E+000 1.167342655989540E+000 1.127172342646052E+000 + 1.087075909880735E+000 1.047113535108194E+000 1.007345542684638E+000 9.678321745536121E-001 + 9.286333531460993E-001 8.898084378051976E-001 8.514159761417663E-001 8.135134518591411E-001 + 7.761570307099527E-001 7.394013063633605E-001 7.032990480654455E-001 6.679009520655078E-001 + 6.332553988549672E-001 5.994082183210232E-001 5.664024649512598E-001 5.342782052367605E-001 + 5.030723194071595E-001 4.728183195900679E-001 4.435461864181138E-001 4.152822260077033E-001 + 3.880489491047451E-001 3.618649740328542E-001 3.367449548898250E-001 3.126995362193384E-001 + 2.897353351378004E-001 2.678549516239700E-001 2.470570073834587E-001 2.273362133852960E-001 + 2.086834658374764E-001 1.910859700270593E-001 1.745273911037706E-001 1.589880305392024E-001 + 1.444450266530947E-001 1.308725772700335E-001 1.182421822604447E-001 1.065229034358637E-001 + 9.568163901597287E-002 8.568340967008604E-002 7.649165296398845E-002 6.806852291895503E-002 + 6.037519131759368E-002 5.337214737354493E-002 4.701949242103025E-002 4.127722637633545E-002 + 3.610552287567106E-002 3.146499020056652E-002 2.731691535935769E-002 2.362348899671476E-002 + 2.034800914643701E-002 1.745506221865801E-002 1.491068001308923E-002 1.268247196599282E-002 + 1.073973226085861E-002 9.053521851617828E-003 7.596725853034498E-003 6.344087136503721E-003 + 5.272217322205374E-003 4.359586672787207E-003 3.586494662974552E-003 2.935023218596358E-003 + 2.388974783933072E-003 1.933797486077721E-003 1.556499718942192E-003 1.245556469062981E-003 + 9.908096534773599E-004 7.833646411142206E-004 6.154849890464619E-004 4.804872502604658E-004 + 3.726375076819994E-004 2.870510678265423E-004 2.195965144857812E-004 1.668050859747321E-004 + 1.257861058246446E-004 9.414897286639528E-005 6.993200793960899E-005 5.153826545628276E-005 + 3.767825206676801E-005 2.731935387211593E-005 1.964165900560509E-005 1.399977390888441E-005 + 9.890168252814576E-006 6.923543407938916E-006 4.801700248831197E-006 3.298381044246674E-006 + 2.243574157765551E-006 1.510796102528029E-006 1.006900075502101E-006 6.640005604096200E-007 + 4.331473513233725E-007 2.794271927915579E-007 1.782153390808552E-007 1.123412952796197E-007 + 6.997180088060556E-008 4.304909691323625E-008 2.615333992141464E-008 1.568460977448803E-008 + 9.282426957035915E-009 5.419320578618694E-009 3.120140495712741E-009 1.770908841666930E-009 + 9.904986167126812E-010 5.457403136723553E-010 2.960925640100405E-010 1.581280412545176E-010 + 8.309148950443531E-011 4.294300183814978E-011 2.181895214902113E-011 1.089416191671809E-011 + 5.342939781437524E-012 2.572743348875821E-012 1.215739735717611E-012 5.635154733662419E-013 + 2.560825897863245E-013 1.140369914998182E-013 4.973704182957104E-014 2.123508581217265E-014 + 8.870202538652219E-015 3.623081839151621E-015 1.446243442900323E-015 5.638591519890977E-016 + 2.145886567531353E-016 7.966804333445908E-017 2.883569638577500E-017 1.016872230271008E-017 + 3.491448638892389E-018 1.166419265085809E-018 3.788894069236619E-019 1.195832556133078E-019 + 3.664476800763137E-020 1.089463860511130E-020 3.140076789651475E-021 8.767044608249545E-022 + 2.369201264038177E-022 6.191956806574163E-023 1.563736084331577E-023 3.812691113259448E-024 + 8.966974100054631E-025 2.032404079277933E-025 4.435246259949128E-026 9.310057415559021E-027 + 1.877961900840698E-027 3.636495341117194E-028 6.752927550739153E-029 1.201305680380777E-029 + 2.045009310834982E-030 3.327617123348890E-031 5.169772629973334E-032 7.659505530920918E-033 + 1.080934826644271E-033 1.451218639662490E-034 1.851195499668894E-035 2.240760683988578E-036 + 2.570311944486752E-037 2.790179746598794E-038 2.862387144666025E-039 2.771104583992027E-040 + 2.527950645029952E-041 2.169811665675237E-042 1.749618530564430E-043 1.323261654486358E-044 + 9.371840159972418E-046 6.205242194758781E-047 3.834484370810135E-048 2.207549690537895E-049 + 1.181927885089140E-050 5.874223085311381E-052 2.705021038265555E-053 1.151894459791464E-054 + 4.527061570298201E-056 1.638701478976700E-057 5.452036569020269E-059 1.663665421985730E-060 + 4.645911262381910E-062 1.184673926649460E-063 2.752012388025538E-065 5.810331474978593E-067 + 1.112243306662962E-068 1.925616770839985E-070 3.007506789938360E-072 4.226468557106011E-074 + 5.329934117668454E-076 6.015181304823522E-078 6.058117031072279E-080 5.429216041555220E-082 + 4.316819664906281E-084 3.036003811115688E-086 1.882796316432024E-088 1.026322469890942E-090 + 4.901461975852580E-093 2.043970738601065E-095 7.417201351735094E-098 2.333958891995918E-100 + 6.345513305794519E-103 1.485093322393515E-105 2.980619145950343E-108 5.110172942528607E-111 + 7.454335354309462E-114 9.214048009686565E-117 9.610351410308617E-120 8.421864691024368E-123 + 6.173665859210709E-126 3.768608855485853E-129 1.906819645913301E-132 7.959125645814590E-136 + 2.727298271256064E-139 7.633825591043297E-143 1.736480943815762E-146 3.193269479548280E-150 + 4.721725303748947E-154 5.583006220129235E-158 5.249037935300314E-162 3.901353019409022E-166 + 2.278718399289323E-170 1.039576503980113E-174 3.681256531352124E-179 1.005366050203621E-183 + 2.103705863983517E-188 3.350042802594590E-193 4.031976316231156E-198 3.641745614839001E-203 + 2.450581039719315E-208 1.219439545753083E-213 4.453128369814293E-219 1.184082285747035E-224 + 2.274165967481372E-230 3.129029099291110E-236 3.058280072846505E-242 2.105064069328438E-248 + 1.011390375249624E-254 3.361129018812757E-261 7.654411295012500E-268 1.183159872502837E-274 + 1.229191895509126E-281 8.497130786711345E-289 3.868320354149276E-296 1.147566475240009E-303 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + + 1.925035252872701E-014 1.998594694326561E-014 2.074964988941868E-014 2.154253545031368E-014 + 2.236571875193961E-014 2.322035753147627E-014 2.410765376555323E-014 2.502885536072748E-014 + 2.598525790855758E-014 2.697820650774318E-014 2.800909765589124E-014 2.907938121357120E-014 + 3.019056244342027E-014 3.134420412716715E-014 3.254192876355141E-014 3.378542085022962E-014 + 3.507642925287770E-014 3.641676966482172E-014 3.780832716065569E-014 3.925305884743863E-014 + 4.075299661719841E-014 4.231025000461525E-014 4.392700915390225E-014 4.560554789905655E-014 + 4.734822696181366E-014 4.915749727180064E-014 5.103590341356032E-014 5.298608720529266E-014 + 5.501079141434636E-014 5.711286361468870E-014 5.929526019177431E-014 6.156105050045011E-014 + 6.391342118174152E-014 6.635568064459089E-014 6.889126371885395E-014 7.152373648609402E-014 + 7.425680129497277E-014 7.709430196828763E-014 8.004022920898148E-014 8.309872621272645E-014 + 8.627409449497474E-014 8.957079994067443E-014 9.299347908515596E-014 9.654694563502341E-014 + 1.002361972382242E-013 1.040664225128134E-013 1.080430083443036E-013 1.121715474618608E-013 + 1.164578463040005E-013 1.209079331848506E-013 1.255280667724586E-013 1.303247448910779E-013 + 1.353047136598023E-013 1.404749769804074E-013 1.458428063877436E-013 1.514157512765283E-013 + 1.572016495189272E-013 1.632086384878529E-013 1.694451665014876E-013 1.759200047051231E-013 + 1.826422594070271E-013 1.896213848856920E-013 1.968671966864708E-013 2.043898854263053E-013 + 2.122000311259624E-013 2.203086180899289E-013 2.287270503549017E-013 2.374671677285926E-013 + 2.465412624414094E-013 2.559620964344322E-013 2.657429193079929E-013 2.758974869561109E-013 + 2.864400809129860E-013 2.973855284387578E-013 3.087492233727869E-013 3.205471477837743E-013 + 3.327958944471809E-013 3.455126901815529E-013 3.587154200765715E-013 3.724226526469136E-013 + 3.866536659472768E-013 4.014284746853270E-013 4.167678583706760E-013 4.326933905394919E-013 + 4.492274690958421E-013 4.663933478124313E-013 4.842151690350536E-013 5.027179976367467E-013 + 5.219278562693946E-013 5.418717619623785E-013 5.625777641197158E-013 5.840749839691636E-013 + 6.063936555187407E-013 6.295651680782839E-013 6.536221104058408E-013 6.785983165409734E-013 + 7.045289133894574E-013 7.314503701262777E-013 7.594005494864168E-013 7.884187610155662E-013 + 8.185458163556501E-013 8.498240866429196E-013 8.822975620993478E-013 9.160119139011243E-013 + 9.510145584112824E-013 9.873547238667556E-013 1.025083519613709E-012 1.064254007988476E-012 + 1.104921278945206E-012 1.147142527535205E-012 1.190977134346877E-012 1.236486749019483E-012 + 1.283735376948086E-012 1.332789469301689E-012 1.383718016481155E-012 1.436592645148301E-012 + 1.491487718962703E-012 1.548480443167849E-012 1.607650973173720E-012 1.669082527288562E-012 + 1.732861503758322E-012 1.799077602278423E-012 1.867823950148742E-012 1.939197233249206E-012 + 2.013297832020269E-012 2.090229962639406E-012 2.170101823592308E-012 2.253025747844817E-012 + 2.339118360829659E-012 2.428500744470201E-012 2.521298607471811E-012 2.617642462120465E-012 + 2.717667807837146E-012 2.821515321746188E-012 2.929331056525734E-012 3.041266645818299E-012 + 3.157479517490590E-012 3.278133115042377E-012 3.403397127475827E-012 3.533447727948646E-012 + 3.668467821546548E-012 3.808647302523713E-012 3.954183321372825E-012 4.105280562100433E-012 + 4.262151530097587E-012 4.425016851010480E-012 4.594105581031656E-012 4.769655529047984E-012 + 4.951913591098558E-012 5.141136097612986E-012 5.337589173918177E-012 5.541549114520978E-012 + 5.753302771692806E-012 5.973147958902886E-012 6.201393869667550E-012 6.438361512404437E-012 + 6.684384161903525E-012 6.939807828049651E-012 7.204991742455891E-012 7.480308863692248E-012 + 7.766146401819908E-012 8.062906362969284E-012 8.371006114727243E-012 8.690878973129052E-012 + 9.022974812080440E-012 9.367760696066656E-012 9.725721537039096E-012 1.009736077640234E-011 + 1.048320109306155E-011 1.088378513852592E-011 1.129967630010134E-011 1.173145949324699E-011 + 1.217974198420859E-011 1.264515424408672E-011 1.312835083554071E-011 1.363001133337473E-011 + 1.415084128030224E-011 1.469157317923112E-011 1.525296752346665E-011 1.583581386628052E-011 + 1.644093193134961E-011 1.706917276562790E-011 1.772141993627091E-011 1.839859077329748E-011 + 1.910163765973634E-011 1.983154937107088E-011 2.058935246586810E-011 2.137611272954494E-011 + 2.219293667330458E-011 2.304097309035010E-011 2.392141467156333E-011 2.483549968292329E-011 + 2.578451370702104E-011 2.676979145112162E-011 2.779271862431619E-011 2.885473388640245E-011 + 2.995733087123772E-011 3.110206028740631E-011 3.229053209915883E-011 3.352441779068952E-011 + 3.480545271693480E-011 3.613543854420278E-011 3.751624578406163E-011 3.894981642405449E-011 + 4.043816665893915E-011 4.198338972629205E-011 4.358765885046938E-011 4.525323029905986E-011 + 4.698244655613224E-011 4.877773961673896E-011 5.064163440730759E-011 5.257675233673529E-011 + 5.458581498317434E-011 5.667164792169915E-011 5.883718469823601E-011 6.108547095534225E-011 + 6.341966871564358E-011 6.584306082894612E-011 6.835905558928347E-011 7.097119152839097E-011 + 7.368314239234476E-011 7.649872230837312E-011 7.942189114909694E-011 8.245676010175129E-011 + 8.560759745021862E-011 8.887883457800028E-011 9.227507220058090E-011 9.580108683593631E-011 + 9.946183752229672E-011 1.032624727926090E-010 1.072083379155025E-010 1.113049824129539E-010 + 1.155581678652094E-010 1.199738760139527E-010 1.245583171751114E-010 1.293179389731284E-010 + 1.342594354089950E-010 1.393897562747837E-010 1.447161169279326E-010 1.502460084390265E-010 + 1.559872081273372E-010 1.619477904989584E-010 1.681361386028978E-010 1.745609558211144E-010 + 1.812312781090742E-010 1.881564867040408E-010 1.953463213189769E-010 2.028108938406087E-010 + 2.105607025509199E-010 2.186066468920806E-010 2.269600427955675E-010 2.356326385970450E-010 + 2.446366315593816E-010 2.539846850270440E-010 2.636899462359961E-010 2.737660648041464E-010 + 2.842272119283528E-010 2.950881003149822E-010 3.063640048720561E-010 3.180707841920834E-010 + 3.302249028557938E-010 3.428434545881408E-010 3.559441862991386E-010 3.695455230433512E-010 + 3.836665939331261E-010 3.983272590420279E-010 4.135481373363014E-010 4.293506356736510E-010 + 4.457569789101193E-010 4.627902411574123E-010 4.804743782346171E-010 4.988342613599768E-010 + 5.178957121300796E-010 5.376855388356782E-010 5.582315741652098E-010 5.795627143490263E-010 + 6.017089597994201E-010 6.247014573035679E-010 6.485725438287549E-010 6.733557920014831E-010 + 6.990860573244147E-010 7.257995271975795E-010 7.535337718127609E-010 7.823277969926641E-010 + 8.122220990491723E-010 8.432587217378271E-010 8.754813153886686E-010 9.089351982965580E-010 + 9.436674204573546E-010 9.797268297395711E-010 1.017164140584565E-009 1.056032005331913E-009 + 1.096385088270236E-009 1.138280142517669E-009 1.181776089840080E-009 1.226934103519265E-009 + 1.273817694387736E-009 1.322492800151020E-009 1.373027878123147E-009 1.425494001505754E-009 + 1.479964959346155E-009 1.536517360315031E-009 1.595230740449630E-009 1.656187675014058E-009 + 1.719473894633959E-009 1.785178405868885E-009 1.853393616392008E-009 1.924215464953145E-009 + 1.997743556307909E-009 2.074081301302786E-009 2.153336062313070E-009 2.235619304238302E-009 + 2.321046751267463E-009 2.409738549634502E-009 2.501819436593027E-009 2.597418915847808E-009 + 2.696671439689874E-009 2.799716598091285E-009 2.906699315025583E-009 3.017770052289982E-009 + 3.133085021115969E-009 3.252806401865944E-009 3.377102572124835E-009 3.506148343507499E-009 + 3.640125207514973E-009 3.779221590785348E-009 3.923633120098115E-009 4.073562897504941E-009 + 4.229221785973573E-009 4.390828705946708E-009 4.558610943232953E-009 4.732804468662709E-009 + 4.913654269958782E-009 5.101414696288262E-009 5.296349815980305E-009 5.498733787913052E-009 + 5.708851247091633E-009 5.926997704959987E-009 6.153479965009109E-009 6.388616554266468E-009 + 6.632738171273365E-009 6.886188151180099E-009 7.149322948613354E-009 7.422512638994647E-009 + 7.706141439014973E-009 8.000608246997695E-009 8.306327203909413E-009 8.623728275808093E-009 + 8.953257858547434E-009 9.295379405587820E-009 9.650574079797185E-009 1.001934143015782E-008 + 1.040220009433146E-008 1.079968852807041E-008 1.121236576250050E-008 1.164081219034103E-008 + 1.208563038216732E-008 1.254744593386378E-008 1.302690834645959E-008 1.352469193958396E-008 + 1.404149679982609E-008 1.457804976533295E-008 1.513510544803023E-008 1.571344729490371E-008 + 1.631388868983350E-008 1.693727409753120E-008 1.758448025118790E-008 1.825641738550436E-008 + 1.895403051683653E-008 1.967830077225715E-008 2.043024676940275E-008 2.121092604904576E-008 + 2.202143656240761E-008 2.286291821530349E-008 2.373655447129083E-008 2.464357401607616E-008 + 2.558525248552042E-008 2.656291425967383E-008 2.757793432536252E-008 2.863174020994669E-008 + 2.972581398897011E-008 3.086169437052314E-008 3.204097885925228E-008 3.326532600305828E-008 + 3.453645772564281E-008 3.585616174818381E-008 3.722629410354597E-008 3.864878174656017E-008 + 4.012562526404518E-008 4.165890168838098E-008 4.325076741859087E-008 4.490346125304123E-008 + 4.661930753802157E-008 4.840071943663534E-008 5.025020232259683E-008 5.217035730370699E-008 + 5.416388487996445E-008 5.623358874145324E-008 5.838237971135161E-008 6.061327983960463E-008 + 6.292942665301747E-008 6.533407756774755E-008 6.783061447039859E-008 7.042254847416085E-008 + 7.311352485668426E-008 7.590732818662958E-008 7.880788764610616E-008 8.181928255647987E-008 + 8.494574811532495E-008 8.819168135258314E-008 9.156164731430911E-008 9.506038548269733E-008 + 9.869281644141528E-008 1.024640487956210E-007 1.063793863563919E-007 1.104443355996688E-007 + 1.146646134102055E-007 1.190461551214104E-007 1.235951228623881E-007 1.283179142239173E-007 + 1.332211712555517E-007 1.383117898064953E-007 1.435969292233843E-007 1.490840224186164E-007 + 1.547807863233825E-007 1.606952327400990E-007 1.668356796095042E-007 1.732107627082542E-007 + 1.798294477934757E-007 1.867010432113469E-007 1.938352129874351E-007 2.012419904172027E-007 + 2.089317921757812E-007 2.169154329668659E-007 2.252041407313148E-007 2.338095724368487E-007 + 2.427438304710452E-007 2.520194796606763E-007 2.616495649413266E-007 2.716476297021274E-007 + 2.820277348314049E-007 2.928044784900226E-007 3.039930166402086E-007 3.156090843587460E-007 + 3.276690179644830E-007 3.401897779912711E-007 3.531889730386442E-007 3.666848845337478E-007 + 3.806964924393586E-007 3.952435019441163E-007 4.103463711725045E-007 4.260263399535359E-007 + 4.423054596885765E-007 4.592066243603156E-007 4.767536027264656E-007 4.949710717434514E-007 + 5.138846512670823E-007 5.335209400789781E-007 5.539075532894100E-007 5.750731611691255E-007 + 5.970475294647482E-007 6.198615612544341E-007 6.435473404025977E-007 6.681381766748301E-007 + 6.936686525763920E-007 7.201746719801401E-007 7.476935106122451E-007 7.762638684666413E-007 + 8.059259242219097E-007 8.367213917370766E-007 8.686935787057182E-007 9.018874475508465E-007 + 9.363496786461243E-007 9.721287359523106E-007 1.009274935161160E-006 1.047840514442549E-006 + 1.087879707894293E-006 1.129448821797827E-006 1.172606313786972E-006 1.217412875041021E-006 + 1.263931515617648E-006 1.312227653045600E-006 1.362369204301601E-006 1.414426681300785E-006 + 1.468473290034808E-006 1.524585033496971E-006 1.582840818538951E-006 1.643322566809299E-006 + 1.706115329929618E-006 1.771307409070196E-006 1.838990479093136E-006 1.909259717437438E-006 + 1.982213937926981E-006 2.057955729689584E-006 2.136591601382161E-006 2.218232130924643E-006 + 2.302992120953042E-006 2.390990760209949E-006 2.482351791099273E-006 2.577203683640525E-006 + 2.675679816066991E-006 2.777918662321519E-006 2.884063986713149E-006 2.994265046008131E-006 + 3.108676799239052E-006 3.227460125526752E-006 3.350782050220991E-006 3.478815979677315E-006 + 3.611741944999917E-006 3.749746855092745E-006 3.893024759374070E-006 4.041777120523571E-006 + 4.196213097644663E-006 4.356549840239806E-006 4.523012793411398E-006 4.695836014716744E-006 + 4.875262503121925E-006 5.061544540516173E-006 5.254944046266339E-006 5.455732945308922E-006 + 5.664193550296334E-006 5.880618958333756E-006 6.105313462863197E-006 6.338592981272914E-006 + 6.580785498832158E-006 6.832231529573997E-006 7.093284594773132E-006 7.364311719689568E-006 + 7.645693949275438E-006 7.937826883568094E-006 8.241121233520494E-006 8.556003398048680E-006 + 8.882916063105162E-006 9.222318823618963E-006 9.574688829173963E-006 9.940521454331034E-006 + 1.032033099453398E-005 1.071465138857451E-005 1.112403696862941E-005 1.154906323892106E-005 + 1.199032768409267E-005 1.244845060843129E-005 1.292407600711429E-005 1.341787247070056E-005 + 1.393053412413354E-005 1.446278160157131E-005 1.501536305840987E-005 1.558905522191636E-005 + 1.618466448194449E-005 1.680302802325897E-005 1.744501500105475E-005 1.811152776131689E-005 + 1.880350310772910E-005 1.952191361690489E-005 2.026776900378160E-005 2.104211753908823E-005 + 2.184604752087061E-005 2.268068880213206E-005 2.354721437672723E-005 2.444684202572672E-005 + 2.538083602655509E-005 2.635050892729217E-005 2.735722338861778E-005 2.840239409597521E-005 + 2.948748974462582E-005 3.061403510036814E-005 3.178361313880180E-005 3.299786726612312E-005 + 3.425850362455577E-005 3.556729348563500E-005 3.692607573468703E-005 3.833675944997238E-005 + 3.980132658009166E-005 4.132183472339130E-005 4.290042001324583E-005 4.453930011324148E-005 + 4.624077732643872E-005 4.800724182304696E-005 4.984117499101333E-005 5.174515291419235E-005 + 5.372184998294432E-005 5.577404264219183E-005 5.790461328215200E-005 6.011655427716460E-005 + 6.241297217823520E-005 6.479709206512841E-005 6.727226206406662E-005 6.984195803731450E-005 + 7.250978845117367E-005 7.527949942915040E-005 7.815497999731978E-005 8.114026752917346E-005 + 8.423955339750918E-005 8.745718884121236E-005 9.079769105506879E-005 9.426574951105704E-005 + 9.786623251988986E-005 1.016041940418957E-004 1.054848807566844E-004 1.095137394013884E-004 + 1.136964243876392E-004 1.180388057078272E-004 1.225469771415787E-004 1.272272647738043E-004 + 1.320862358360937E-004 1.371307078836731E-004 1.423677583206025E-004 1.478047342863610E-004 + 1.534492629174656E-004 1.593092619982756E-004 1.653929510156647E-004 1.717088626327956E-004 + 1.782658545977927E-004 1.850731221037094E-004 1.921402106167905E-004 1.994770291906645E-004 + 2.070938642847647E-004 2.150013941059475E-004 2.232107034929995E-004 2.317332993644373E-004 + 2.405811267507808E-004 2.497665854332561E-004 2.593025472116991E-004 2.692023738252860E-004 + 2.794799355505808E-004 2.901496305022961E-004 3.012264046631245E-004 3.127257726699302E-004 + 3.246638393846490E-004 3.370573222792515E-004 3.499235746652219E-004 3.632806097991343E-004 + 3.771471258970414E-004 3.915425320916397E-004 4.064869753673721E-004 4.220013685099529E-004 + 4.381074191081309E-004 4.548276596468629E-004 4.721854787325537E-004 4.902051534924507E-004 + 5.089118831918499E-004 5.283318241143455E-004 5.484921257519915E-004 5.694209683539906E-004 + 5.911476018842196E-004 6.137023864397661E-004 6.371168341845732E-004 6.614236528541225E-004 + 6.866567908892666E-004 7.128514842592653E-004 7.400443050363060E-004 7.682732117860825E-004 + 7.975776018411376E-004 8.279983655263095E-004 8.595779424078465E-004 8.923603796404765E-004 + 9.263913924893282E-004 9.617184271061996E-004 9.983907256427196E-004 1.036459393785610E-003 + 1.075977470802416E-003 1.117000002189215E-003 1.159584115014785E-003 1.203789096059370E-003 + 1.249676472849264E-003 1.297310097692179E-003 1.346756234821985E-003 1.398083650764974E-003 + 1.451363708044013E-003 1.506670462340599E-003 1.564080763239144E-003 1.623674358682153E-003 + 1.685534003269001E-003 1.749745570535971E-003 1.816398169359491E-003 1.885584264629450E-003 + 1.957399802344586E-003 2.031944339286544E-003 2.109321177435033E-003 2.189637503291337E-003 + 2.273004532283315E-003 2.359537658430695E-003 2.449356609454991E-003 2.542585607524945E-003 + 2.639353535833956E-003 2.739794111212723E-003 2.844046062986823E-003 2.952253318295189E-003 + 3.064565194093042E-003 3.181136596069065E-003 3.302128224714321E-003 3.427706788787833E-003 + 3.558045226430676E-003 3.693322934189100E-003 3.833726004214144E-003 3.979447469913933E-003 + 4.130687560343019E-003 4.287653963620995E-003 4.450562099682152E-003 4.619635402665760E-003 + 4.795105613265950E-003 4.977213081369604E-003 5.166207079318692E-003 5.362346126144639E-003 + 5.565898323129968E-003 5.777141701063489E-003 5.996364579564760E-003 6.223865938862599E-003 + 6.459955804424071E-003 6.704955644838659E-003 6.959198783373761E-003 7.223030823627703E-003 + 7.496810089715754E-003 7.780908081436722E-003 8.075709944875976E-003 8.381614958912523E-003 + 8.699037038107820E-003 9.028405252462858E-003 9.370164364542429E-003 9.724775384472932E-003 + 1.009271614333158E-002 1.047448188545427E-002 1.087058588019696E-002 1.128156005369747E-002 + 1.170795564118993E-002 1.215034386043471E-002 1.260931660683410E-002 1.308548717080952E-002 + 1.357949097802597E-002 1.409198635305199E-002 1.462365530705085E-002 1.517520435010356E-002 + 1.574736532876499E-002 1.634089628946137E-002 1.695658236833422E-002 1.759523670813934E-002 + 1.825770140280816E-002 1.894484847027310E-002 1.965758085415953E-002 2.039683345493627E-002 + 2.116357419111128E-002 2.195880509105051E-002 2.278356341598173E-002 2.363892281473630E-002 + 2.452599451075976E-002 2.544592852190501E-002 2.639991491350032E-002 2.738918508515302E-002 + 2.841501309172785E-002 2.947871699889776E-002 3.058166027363287E-002 3.172525320995103E-002 + 3.291095439020225E-002 3.414027218211622E-002 3.541476627177691E-002 3.673604923263053E-002 + 3.810578813056653E-002 3.952570616502855E-002 4.099758434604106E-002 4.252326320693779E-002 + 4.410464455248746E-002 4.574369324200794E-002 4.744243900693641E-002 4.920297830221352E-002 + 5.102747619069212E-002 5.291816825964528E-002 5.487736256829312E-002 5.690744162509219E-002 + 5.901086439336466E-002 6.119016832363637E-002 6.344797141086077E-002 6.578697427447139E-002 + 6.820996225897373E-002 7.071980755253897E-002 7.331947132077532E-002 7.601200585258425E-002 + 7.880055671468300E-002 8.168836491105397E-002 8.467876904323986E-002 8.777520746701414E-002 + 9.098122044058489E-002 9.430045225905265E-002 9.773665336941206E-002 1.012936824599202E-001 + 1.049755085171427E-001 1.087862128434899E-001 1.127299910274759E-001 1.168111548583698E-001 + 1.210341341762873E-001 1.254034786481154E-001 1.299238594590006E-001 1.346000709083955E-001 + 1.394370318989220E-001 1.444397873055264E-001 1.496135092115540E-001 1.549634979975472E-001 + 1.604951832676338E-001 1.662141245974534E-001 1.721260120866010E-001 1.782366666975123E-001 + 1.845520403617052E-001 1.910782158331508E-001 1.978214062674347E-001 2.047879545041969E-001 + 2.119843320290912E-001 2.194171375903012E-001 2.270930954433151E-001 2.350190531963665E-001 + 2.432019792276008E-001 2.516489596436038E-001 2.603671947475745E-001 2.693639949839398E-001 + 2.786467763247838E-001 2.882230550620125E-001 2.981004419676456E-001 3.082866357832325E-001 + 3.187894159978317E-001 3.296166348725960E-001 3.407762086685567E-001 3.522761080327471E-001 + 3.641243474965254E-001 3.763289740385599E-001 3.888980546637434E-001 4.018396629481619E-001 + 4.151618644990933E-001 4.288727012781810E-001 4.429801747350002E-001 4.574922276976360E-001 + 4.724167249664176E-001 4.877614325565901E-001 5.035339955357547E-001 5.197419144020017E-001 + 5.363925199491919E-001 5.534929465666508E-001 5.710501039215909E-001 5.890706469742346E-001 + 6.075609442774139E-001 6.265270445149257E-001 6.459746412358290E-001 6.659090357452290E-001 + 6.863350981163011E-001 7.072572262928413E-001 7.286793032571085E-001 7.506046522438563E-001 + 7.730359899882618E-001 7.959753780033854E-001 8.194241718913076E-001 8.433829687018116E-001 + 8.678515523631293E-001 8.928288372208538E-001 9.183128097341318E-001 9.443004683920679E-001 + 9.707877619286022E-001 9.977695259306268E-001 1.025239417951793E+000 1.053189851263777E+000 + 1.081611927397160E+000 1.110495367646099E+000 1.139828443734357E+000 1.169597907864917E+000 + 1.199788922401819E+000 1.230384989460263E+000 1.261367880710148E+000 1.292717567728539E+000 + 1.324412153267905E+000 1.356427803839992E+000 1.388738684048652E+000 1.421316893139774E+000 + 1.454132404271887E+000 1.487153007046744E+000 1.520344253875734E+000 1.553669410793974E+000 + 1.587089413370165E+000 1.620562828395707E+000 1.654045822070921E+000 1.687492135439479E+000 + 1.720853067853135E+000 1.754077469277786E+000 1.787111742277742E+000 1.819899854537251E+000 + 1.852383362796589E+000 1.884501449093036E+000 1.916190970204631E+000 1.947386521195732E+000 + 1.978020513957009E+000 2.008023271618464E+000 2.037323139690459E+000 2.065846614754752E+000 + 2.093518491483439E+000 2.120262028707931E+000 2.145999135191941E+000 2.170650575680509E+000 + 2.194136197701184E+000 2.216375179482427E+000 2.237286299227446E+000 2.256788225838812E+000 + 2.274799831029433E+000 2.291240522578807E+000 2.306030598299863E+000 2.319091620070893E+000 + 2.330346807059982E+000 2.339721447025981E+000 2.347143324321932E+000 2.352543162954761E+000 + 2.355855082770808E+000 2.357017066542478E+000 2.355971435429062E+000 2.352665329977803E+000 + 2.347051193522582E+000 2.339087254531004E+000 2.328738004150457E+000 2.315974664914425E+000 + 2.300775646297091E+000 2.283126982552532E+000 2.263022748050679E+000 2.240465445131289E+000 + 2.215466359346743E+000 2.188045876860246E+000 2.158233758715258E+000 2.126069366701152E+000 + 2.091601835615284E+000 2.054890186869690E+000 2.016003378616254E+000 1.975020287872905E+000 + 1.932029620529364E+000 1.887129745596366E+000 1.840428450640227E+000 1.792042616014023E+000 + 1.742097806257016E+000 1.690727777882191E+000 1.638073903701675E+000 1.584284514845478E+000 + 1.529514162699562E+000 1.473922804113487E+000 1.417674914391603E+000 1.360938533767575E+000 + 1.303884254252545E+000 1.246684154920232E+000 1.189510694825955E+000 1.132535573827422E+000 + 1.075928572556341E+000 1.019856383658373E+000 9.644814471468011E-001 9.099608032791325E-001 + 8.564449767419369E-001 8.040769060952748E-001 7.529909323672127E-001 7.033118603846258E-001 + 6.551541058694699E-001 6.086209405145440E-001 5.638038461790970E-001 5.207819880205705E-001 + 4.796218148163213E-001 4.403767929494962E-001 4.030872785633163E-001 3.677805302609898E-001 + 3.344708624854396E-001 3.031599373983128E-001 2.738371907421476E-001 2.464803848664870E-001 + 2.210562798829592E-001 1.975214118426405E-001 1.758229649549849E-001 1.558997232431159E-001 + 1.376830857016483E-001 1.210981280297894E-001 1.060646933860010E-001 9.249849437199843E-002 + 8.031220861409638E-002 6.941655086761327E-002 5.972130551159240E-002 5.113630460143286E-002 + 4.357233826881932E-002 3.694198615446537E-002 3.116036067321369E-002 2.614575517949386E-002 + 2.182019245606955E-002 1.810987131982510E-002 1.494551145521764E-002 1.226259878204488E-002 + 1.000153567814094E-002 8.107702156449532E-003 6.531435596409422E-003 5.227937820184303E-003 + 4.157119165880731E-003 3.283389736325646E-003 2.575408199785608E-003 2.005798406551213E-003 + 1.550843691525846E-003 1.190168095458325E-003 9.064129004053948E-004 6.849158867486323E-004 + 5.133996296472988E-004 3.816740115532275E-004 2.813569808166450E-004 2.056164761810673E-004 + 1.489353985613911E-004 1.069005730959266E-004 7.601582642324292E-005 5.353861893562783E-005 + 3.733912437195446E-005 2.578023774218040E-005 1.761670969708699E-005 1.191143903449390E-005 + 7.966889827807842E-006 5.269618537149295E-006 3.445981596539187E-006 2.227227916369134E-006 + 1.422347285241847E-006 8.972304494217372E-007 5.588876065623151E-007 3.436595371710375E-007 + 2.085324209820049E-007 1.248286429493473E-007 7.368870410082284E-008 4.288252378649494E-008 + 2.459208585384338E-008 1.389264349336127E-008 7.728295471157277E-009 4.231774043923776E-009 + 2.279961352695600E-009 1.208149567590079E-009 6.293895894566121E-010 3.222083961105896E-010 + 1.620244921113904E-010 7.999341092378541E-011 3.875749726249864E-011 1.841952053367138E-011 + 8.582422507148849E-012 3.918618197166669E-012 1.752364768910644E-012 7.671069968909515E-013 + 3.285434567146103E-013 1.375925095704790E-013 5.631387503299426E-014 2.251137412463851E-014 + 8.784064077238287E-015 3.343722648694418E-015 1.240891764205285E-015 4.486701815340632E-016 + 1.579515310070724E-016 5.410410636247424E-017 1.801960926474580E-017 5.831236303602315E-018 + 1.832144009353653E-018 5.584931114728020E-019 1.650450954376896E-019 4.724685803512643E-020 + 1.309118722981920E-020 3.508022407073566E-021 9.083542667826864E-022 2.270809941041182E-022 + 5.475861335785503E-023 1.272547337557963E-023 2.847337770283011E-024 6.128172366190788E-025 + 1.267426408975931E-025 2.516380855511187E-026 4.791183333559605E-027 8.738997028223457E-028 + 1.525319114822904E-028 2.544814528679282E-029 4.053699861565620E-030 6.157979564080496E-031 + 8.910342148833597E-032 1.226549504035126E-032 1.604212445109782E-033 1.990959534398083E-034 + 2.341586221254931E-035 2.606236744196408E-036 2.741368488264933E-037 2.721130200314777E-038 + 2.545202600485301E-039 2.239923414001603E-040 1.851875821535601E-041 1.436056679884223E-042 + 1.042816967222327E-043 7.079446675107756E-045 4.485438556193441E-046 2.647681799342302E-047 + 1.453461870126909E-048 7.406626791312387E-050 3.497019349179765E-051 1.526853748510280E-052 + 6.152597623062636E-054 2.283491082464224E-055 7.789607882378255E-057 2.437138377643620E-058 + 6.978184870202933E-060 1.824432300944735E-061 4.345469129497152E-063 9.406857297538605E-065 + 1.846293792309309E-066 3.277390800544372E-068 5.248344680126765E-070 7.562244889933229E-072 + 9.778050988613335E-074 1.131453058809201E-075 1.168376571077241E-077 1.073592988576734E-079 + 8.752332565754718E-082 6.311310973154009E-084 4.013081401149335E-086 2.242930560707690E-088 + 1.098284845275882E-090 4.695927566122328E-093 1.747206135272123E-095 5.637085757776896E-098 + 1.571395700229723E-100 3.770768832328720E-103 7.759612111887161E-106 1.364038051352347E-108 + 2.040126872301179E-111 2.585568704104383E-114 2.765045243581565E-117 2.484440471479690E-120 + 1.867328896831833E-123 1.168735199308603E-126 6.063202032324779E-130 2.594867248517072E-133 + 9.116744487570850E-137 2.616415669545050E-140 6.102276636007033E-144 1.150574652604525E-147 + 1.744364788965168E-151 2.114764774924181E-155 2.038595351948417E-159 1.553545331028084E-163 + 9.303721493251811E-168 4.351909541516030E-172 1.580071897852570E-176 4.424481097952115E-181 + 9.492497862499113E-186 1.549898323418985E-190 1.912617772351878E-195 1.771239067035367E-200 + 1.222064160465943E-205 6.235087830974667E-211 2.334559125570656E-216 6.364714227239076E-222 + 1.253362056412440E-227 1.768159142425902E-233 1.771929203636828E-239 1.250523310046561E-245 + 6.160311193431481E-252 2.099067384303058E-258 4.901289480845903E-265 7.767823573619236E-272 + 8.274332548986329E-279 5.864661471636195E-286 2.737476756004784E-293 8.326514099115839E-301 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + + 7.846594622983369E-010 8.045232111542466E-010 8.248898132063673E-010 8.457719982439569E-010 + 8.671828183124297E-010 8.891356558712955E-010 9.116442321586415E-010 9.347226157673502E-010 + 9.583852314384260E-010 9.826468690769359E-010 1.007522692996171E-009 1.033028251395840E-009 + 1.059179486080201E-009 1.085992742422210E-009 1.113484779579907E-009 1.141672780971439E-009 + 1.170574365015250E-009 1.200207596142173E-009 1.230590996086280E-009 1.261743555461579E-009 + 1.293684745631754E-009 1.326434530880410E-009 1.360013380889393E-009 1.394442283533011E-009 + 1.429742757996147E-009 1.465936868224432E-009 1.503047236714942E-009 1.541097058655995E-009 + 1.580110116424886E-009 1.620110794452671E-009 1.661124094465206E-009 1.703175651110049E-009 + 1.746291747978951E-009 1.790499334035952E-009 1.835826040461370E-009 1.882300197922174E-009 + 1.929950854279582E-009 1.978807792744917E-009 2.028901550495083E-009 2.080263437759305E-009 + 2.132925557389020E-009 2.186920824923222E-009 2.242282989161739E-009 2.299046653259325E-009 + 2.357247296353779E-009 2.416921295741533E-009 2.478105949614663E-009 2.540839500373473E-009 + 2.605161158529227E-009 2.671111127212023E-009 2.738730627299018E-009 2.808061923178850E-009 + 2.879148349168243E-009 2.952034336597360E-009 3.026765441580854E-009 3.103388373491894E-009 + 3.181951024157057E-009 3.262502497790273E-009 3.345093141684565E-009 3.429774577680749E-009 + 3.516599734432743E-009 3.605622880489718E-009 3.696899658215700E-009 3.790487118567851E-009 + 3.886443756755203E-009 3.984829548800030E-009 4.085705989024835E-009 4.189136128488295E-009 + 4.295184614394222E-009 4.403917730498197E-009 4.515403438537029E-009 4.629711420707083E-009 + 4.746913123217914E-009 4.867081800948456E-009 4.990292563233750E-009 5.116622420810667E-009 + 5.246150333952159E-009 5.378957261819988E-009 5.515126213066826E-009 5.654742297719415E-009 + 5.797892780375021E-009 5.944667134744716E-009 6.095157099577315E-009 6.249456735999101E-009 + 6.407662486305109E-009 6.569873234238646E-009 6.736190366796880E-009 6.906717837601021E-009 + 7.081562231870674E-009 7.260832833043152E-009 7.444641691079074E-009 7.633103692497318E-009 + 7.826336632182783E-009 8.024461287012051E-009 8.227601491342878E-009 8.435884214414651E-009 + 8.649439639708322E-009 8.868401246315319E-009 9.092905892366301E-009 9.323093900571981E-009 + 9.559109145929352E-009 9.801099145648236E-009 1.004921515135436E-008 1.030361224362650E-008 + 1.056444942892699E-008 1.083188973898581E-008 1.110610033270077E-008 1.138725260061729E-008 + 1.167552227205299E-008 1.197108952493434E-008 1.227413909841359E-008 1.258486040833686E-008 + 1.290344766563514E-008 1.323009999771243E-008 1.356502157290696E-008 1.390842172810287E-008 + 1.426051509957267E-008 1.462152175713187E-008 1.499166734168976E-008 1.537118320628237E-008 + 1.576030656067557E-008 1.615928061962888E-008 1.656835475491267E-008 1.698778465117354E-008 + 1.741783246574569E-008 1.785876699250754E-008 1.831086382988687E-008 1.877440555311864E-008 + 1.924968189086373E-008 1.973698990629891E-008 2.023663418279074E-008 2.074892701427028E-008 + 2.127418860042685E-008 2.181274724684314E-008 2.236493957019721E-008 2.293111070865847E-008 + 2.351161453761044E-008 2.410681389083434E-008 2.471708078729194E-008 2.534279666364966E-008 + 2.598435261268865E-008 2.664214962775064E-008 2.731659885337176E-008 2.800812184226116E-008 + 2.871715081878537E-008 2.944412894912227E-008 3.018951061825457E-008 3.095376171397506E-008 + 3.173735991808157E-008 3.254079500494392E-008 3.336456914762837E-008 3.420919723177230E-008 + 3.507520717740452E-008 3.596314026891222E-008 3.687355149336165E-008 3.780700988738255E-008 + 3.876409889283490E-008 3.974541672147883E-008 4.075157672887641E-008 4.178320779775906E-008 + 4.284095473109910E-008 4.392547865513303E-008 4.503745743258656E-008 4.617758608636100E-008 + 4.734657723394521E-008 4.854516153282403E-008 4.977408813716386E-008 5.103412516605753E-008 + 5.232606018362381E-008 5.365070069126103E-008 5.500887463236062E-008 5.640143090979972E-008 + 5.782923991653209E-008 5.929319407961225E-008 6.079420841799168E-008 6.233322111443430E-008 + 6.391119410191237E-008 6.552911366484477E-008 6.718799105555696E-008 6.888886312634703E-008 + 7.063279297755062E-008 7.242087062201461E-008 7.425421366638941E-008 7.613396800966933E-008 + 7.806130855941749E-008 8.003743996611933E-008 8.206359737613003E-008 8.414104720367956E-008 + 8.627108792242305E-008 8.845505087702930E-008 9.069430111531271E-008 9.299023824143424E-008 + 9.534429729069787E-008 9.775794962649423E-008 1.002327038599513E-007 1.027701067928630E-007 + 1.053717443844928E-007 1.080392427428475E-007 1.107742691410476E-007 1.135785330594283E-007 + 1.164537872540170E-007 1.194018288520657E-007 1.224245004753109E-007 1.255236913916723E-007 + 1.287013386961075E-007 1.319594285213562E-007 1.352999972793396E-007 1.387251329339822E-007 + 1.422369763062564E-007 1.458377224122658E-007 1.495296218351983E-007 1.533149821320163E-007 + 1.571961692757515E-007 1.611756091343149E-007 1.652557889867434E-007 1.694392590778261E-007 + 1.737286342120932E-007 1.781265953881495E-007 1.826358914743859E-007 1.872593409271115E-007 + 1.919998335521757E-007 1.968603323111944E-007 2.018438751734916E-007 2.069535770149295E-007 + 2.121926315648075E-007 2.175643134020395E-007 2.230719800018784E-007 2.287190738344389E-007 + 2.345091245163542E-007 2.404457510169006E-007 2.465326639199641E-007 2.527736677432801E-007 + 2.591726633163732E-007 2.657336502187025E-007 2.724607292795271E-007 2.793581051410508E-007 + 2.864300888864634E-007 2.936811007345006E-007 3.011156728022216E-007 3.087384519377300E-007 + 3.165542026245949E-007 3.245678099598115E-007 3.327842827071371E-007 3.412087564277286E-007 + 3.498464966900316E-007 3.587029023609259E-007 3.677835089801901E-007 3.770939922203874E-007 + 3.866401714343401E-007 3.964280132924111E-007 4.064636355118582E-007 4.167533106806022E-007 + 4.273034701777916E-007 4.381207081936154E-007 4.492117858508817E-007 4.605836354309302E-007 + 4.722433647065265E-007 4.841982613844418E-007 4.964557976604985E-007 5.090236348899276E-007 + 5.219096283759532E-007 5.351218322796040E-007 5.486685046538132E-007 5.625581126049614E-007 + 5.767993375850798E-007 5.914010808180284E-007 6.063724688630369E-007 6.217228593190878E-007 + 6.374618466737042E-007 6.535992682998043E-007 6.701452106043594E-007 6.871100153327136E-007 + 7.045042860324893E-007 7.223388946811326E-007 7.406249884812355E-007 7.593739968278736E-007 + 7.785976384523344E-007 7.983079287466785E-007 8.185171872737271E-007 8.392380454671667E-007 + 8.604834545265746E-007 8.822666935123187E-007 9.046013776453658E-007 9.275014668172102E-007 + 9.509812743152293E-007 9.750554757689142E-007 9.997391183225859E-007 1.025047630040306E-006 + 1.050996829548883E-006 1.077602935924987E-006 1.104882578832550E-006 1.132852808916813E-006 + 1.161531108461472E-006 1.190935402315627E-006 1.221084069097349E-006 1.251995952680847E-006 + 1.283690373974454E-006 1.316187142996750E-006 1.349506571258404E-006 1.383669484457471E-006 + 1.418697235496043E-006 1.454611717826444E-006 1.491435379135258E-006 1.529191235373784E-006 + 1.567902885143673E-006 1.607594524446711E-006 1.648290961808028E-006 1.690017633782116E-006 + 1.732800620851399E-006 1.776666663727274E-006 1.821643180063794E-006 1.867758281594483E-006 + 1.915040791702935E-006 1.963520263438237E-006 2.013226997986441E-006 2.064192063609626E-006 + 2.116447315064423E-006 2.170025413512093E-006 2.224959846932644E-006 2.281284951055717E-006 + 2.339035930821332E-006 2.398248882383922E-006 2.458960815673374E-006 2.521209677527212E-006 + 2.585034375408364E-006 2.650474801723352E-006 2.717571858756044E-006 2.786367484232659E-006 + 2.856904677533900E-006 2.929227526570661E-006 3.003381235340085E-006 3.079412152179168E-006 + 3.157367798733638E-006 3.237296899660141E-006 3.319249413080324E-006 3.403276561805905E-006 + 3.489430865354107E-006 3.577766172773637E-006 3.668337696301581E-006 3.761202045872346E-006 + 3.856417264500192E-006 3.954042864557398E-006 4.054139864970853E-006 4.156770829360252E-006 + 4.261999905141713E-006 4.369892863621347E-006 4.480517141103688E-006 4.593941881040833E-006 + 4.710237977248552E-006 4.829478118216360E-006 4.951736832539339E-006 5.077090535499953E-006 + 5.205617576829122E-006 5.337398289676327E-006 5.472515040819336E-006 5.611052282145006E-006 + 5.753096603433238E-006 5.898736786477126E-006 6.048063860573182E-006 6.201171159416167E-006 + 6.358154379434285E-006 6.519111639600928E-006 6.684143542760679E-006 6.853353238507631E-006 + 7.026846487655436E-006 7.204731728339422E-006 7.387120143791889E-006 7.574125731833237E-006 + 7.765865376122084E-006 7.962458919209061E-006 8.164029237439926E-006 8.370702317754657E-006 + 8.582607336430764E-006 8.799876739819850E-006 9.022646327127914E-006 9.251055335291210E-006 + 9.485246526000526E-006 9.725366274928511E-006 9.971564663215584E-006 1.022399557127173E-005 + 1.048281677495288E-005 1.074819004417155E-005 1.102028124400409E-005 1.129926043835699E-005 + 1.158530199625755E-005 1.187858470083500E-005 1.217929186106051E-005 1.248761142631545E-005 + 1.280373610386000E-005 1.312786347927517E-005 1.346019613995363E-005 1.380094180171657E-005 + 1.415031343863548E-005 1.450852941614026E-005 1.487581362749670E-005 1.525239563373857E-005 + 1.563851080714196E-005 1.603440047833109E-005 1.644031208710809E-005 1.685649933710065E-005 + 1.728322235432405E-005 1.772074784975715E-005 1.816934928603328E-005 1.862930704835078E-005 + 1.910090861970954E-005 1.958444876058334E-005 2.008022969314015E-005 2.058856129012524E-005 + 2.110976126852573E-005 2.164415538813692E-005 2.219207765515480E-005 2.275387053092227E-005 + 2.332988514595845E-005 2.392048151940621E-005 2.452602878403381E-005 2.514690541693195E-005 + 2.578349947605027E-005 2.643620884272054E-005 2.710544147031895E-005 2.779161563922203E-005 + 2.849516021821612E-005 2.921651493252330E-005 2.995613063861126E-005 3.071446960595899E-005 + 3.149200580595432E-005 3.228922520810342E-005 3.310662608373798E-005 3.394471931740884E-005 + 3.480402872616163E-005 3.568509138689314E-005 3.658845797199316E-005 3.751469309348173E-005 + 3.846437565585594E-005 3.943809921786784E-005 4.043647236345829E-005 4.146011908207952E-005 + 4.250967915864319E-005 4.358580857333741E-005 4.468917991156349E-005 4.582048278424724E-005 + 4.698042425878800E-005 4.816972930091480E-005 4.938914122772434E-005 5.063942217218556E-005 + 5.192135355939958E-005 5.323573659491249E-005 5.458339276538729E-005 5.596516435194520E-005 + 5.738191495649971E-005 5.883453004140972E-005 6.032391748279020E-005 6.185100813782561E-005 + 6.341675642643930E-005 6.502214092768353E-005 6.666816499122190E-005 6.835585736428556E-005 + 7.008627283449545E-005 7.186049288895088E-005 7.367962638999707E-005 7.554481026809286E-005 + 7.745721023221106E-005 7.941802149821581E-005 8.142846953566955E-005 8.348981083353891E-005 + 8.560333368527440E-005 8.777035899375587E-005 8.999224109660603E-005 9.227036861238539E-005 + 9.460616530819909E-005 9.700109098925598E-005 9.945664241093459E-005 1.019743542139266E-004 + 1.045557998830390E-004 1.072025927302568E-004 1.099163869026758E-004 1.126988784159364E-004 + 1.155518062138051E-004 1.184769532545587E-004 1.214761476248563E-004 1.245512636817890E-004 + 1.277042232238209E-004 1.309369966913543E-004 1.342516043976618E-004 1.376501177909609E-004 + 1.411346607484122E-004 1.447074109028508E-004 1.483706010030784E-004 1.521265203085616E-004 + 1.559775160194108E-004 1.599259947425264E-004 1.639744239948294E-004 1.681253337445142E-004 + 1.723813179912787E-004 1.767450363865248E-004 1.812192158945339E-004 1.858066524956528E-004 + 1.905102129325550E-004 1.953328365006600E-004 2.002775368838320E-004 2.053474040364980E-004 + 2.105456061133583E-004 2.158753914478948E-004 2.213400905809022E-004 2.269431183403147E-004 + 2.326879759736167E-004 2.385782533341674E-004 2.446176311228032E-004 2.508098831861081E-004 + 2.571588788727874E-004 2.636685854496122E-004 2.703430705784322E-004 2.771865048558072E-004 + 2.842031644168286E-004 2.913974336047584E-004 2.987738077081427E-004 3.063368957671028E-004 + 3.140914234505528E-004 3.220422360061245E-004 3.301943012846448E-004 3.385527128410397E-004 + 3.471226931135927E-004 3.559095966835374E-004 3.649189136170040E-004 3.741562728914034E-004 + 3.836274459083749E-004 3.933383500954759E-004 4.032950525988601E-004 4.135037740692251E-004 + 4.239708925433916E-004 4.347029474239182E-004 4.457066435592210E-004 4.569888554267380E-004 + 4.685566314217178E-004 4.804171982543144E-004 4.925779654576996E-004 5.050465300099923E-004 + 5.178306810728783E-004 5.309384048498427E-004 5.443778895670416E-004 5.581575305798912E-004 + 5.722859356085362E-004 5.867719301054503E-004 6.016245627584742E-004 6.168531111327173E-004 + 6.324670874548070E-004 6.484762445430562E-004 6.648905818872372E-004 6.817203518816954E-004 + 6.989760662156841E-004 7.166685024248497E-004 7.348087106079265E-004 7.534080203127875E-004 + 7.724780475960955E-004 7.920307022609305E-004 8.120781952768455E-004 8.326330463869293E-004 + 8.537080919065823E-004 8.753164927187903E-004 8.974717424708454E-004 9.201876759775538E-004 + 9.434784778361067E-004 9.673586912579245E-004 9.918432271228924E-004 1.016947373261580E-003 + 1.042686803971140E-003 1.069077589770732E-003 1.096136207402479E-003 1.123879550084077E-003 + 1.152324938019375E-003 1.181490129173359E-003 1.211393330318150E-003 1.242053208356800E-003 + 1.273488901931796E-003 1.305720033325407E-003 1.338766720659155E-003 1.372649590399849E-003 + 1.407389790179867E-003 1.443009001939469E-003 1.479529455399216E-003 1.516973941870689E-003 + 1.555365828413929E-003 1.594729072350264E-003 1.635088236139291E-003 1.676468502629156E-003 + 1.718895690689345E-003 1.762396271235513E-003 1.806997383656102E-003 1.852726852650660E-003 + 1.899613205490161E-003 1.947685689709715E-003 1.996974291244408E-003 2.047509753019271E-003 + 2.099323594004554E-003 2.152448128747890E-003 2.206916487395088E-003 2.262762636211634E-003 + 2.320021398617305E-003 2.378728476746467E-003 2.438920473547112E-003 2.500634915431876E-003 + 2.563910275494589E-003 2.628785997306353E-003 2.695302519305299E-003 2.763501299794699E-003 + 2.833424842564317E-003 2.905116723150288E-003 2.978621615749205E-003 3.053985320802377E-003 + 3.131254793266719E-003 3.210478171589018E-003 3.291704807400755E-003 3.374985295951089E-003 + 3.460371507295940E-003 3.547916618261649E-003 3.637675145202008E-003 3.729702977567946E-003 + 3.824057412309631E-003 3.920797189131078E-003 4.019982526618043E-003 4.121675159260186E-003 + 4.225938375389205E-003 4.332837056055020E-003 4.442437714862530E-003 4.554808538792192E-003 + 4.670019430027983E-003 4.788142048816870E-003 4.909249857384693E-003 5.033418164933446E-003 + 5.160724173746092E-003 5.291247026425119E-003 5.425067854291922E-003 5.562269826974637E-003 + 5.702938203212464E-003 5.847160382905558E-003 5.995025960439717E-003 6.146626779316057E-003 + 6.302056988116449E-003 6.461413097835955E-003 6.624794040614547E-003 6.792301229900728E-003 + 6.964038622080552E-003 7.140112779606203E-003 7.320632935658876E-003 7.505711060381859E-003 + 7.695461928719810E-003 7.890003189901372E-003 8.089455438603307E-003 8.293942287834085E-003 + 8.503590443577048E-003 8.718529781232727E-003 8.938893423901391E-003 9.164817822548037E-003 + 9.396442838091497E-003 9.633911825462088E-003 9.877371719671115E-003 1.012697312393771E-002 + 1.038287039991913E-002 1.064522176009046E-002 1.091418936232228E-002 1.118993940670402E-002 + 1.147264223466241E-002 1.176247243042582E-002 1.205960892488442E-002 1.236423510189932E-002 + 1.267653890711249E-002 1.299671295931133E-002 1.332495466440320E-002 1.366146633205375E-002 + 1.400645529504711E-002 1.436013403142351E-002 1.472272028945299E-002 1.509443721550434E-002 + 1.547551348486788E-002 1.586618343559364E-002 1.626668720540551E-002 1.667727087175323E-002 + 1.709818659506621E-002 1.752969276527092E-002 1.797205415163818E-002 1.842554205602357E-002 + 1.889043446956762E-002 1.936701623292227E-002 1.985557920006946E-002 2.035642240580081E-002 + 2.086985223692515E-002 2.139618260727288E-002 2.193573513656685E-002 2.248883933322742E-002 + 2.305583278118341E-002 2.363706133075720E-002 2.423287929369450E-002 2.484364964241036E-002 + 2.546974421351914E-002 2.611154391572163E-002 2.676943894211690E-002 2.744382898701007E-002 + 2.813512346728598E-002 2.884374174841600E-002 2.957011337516903E-002 3.031467830709235E-002 + 3.107788715883012E-002 3.186020144534685E-002 3.266209383211760E-002 3.348404839035279E-002 + 3.432656085731568E-002 3.519013890179525E-002 3.607530239479360E-002 3.698258368548183E-002 + 3.791252788248209E-002 3.886569314052452E-002 3.984265095252938E-002 4.084398644716140E-002 + 4.187029869189563E-002 4.292220100163810E-002 4.400032125293225E-002 4.510530220378368E-002 + 4.623780181913061E-002 4.739849360197714E-002 4.858806693020996E-002 4.980722739910363E-002 + 5.105669716952047E-002 5.233721532180253E-002 5.364953821534128E-002 5.499443985381262E-002 + 5.637271225604459E-002 5.778516583248603E-002 5.923262976723163E-002 6.071595240554424E-002 + 6.223600164681430E-002 6.379366534287402E-002 6.538985170157838E-002 6.702548969555280E-002 + 6.870152947598503E-002 7.041894279133722E-002 7.217872341082497E-002 7.398188755250217E-002 + 7.582947431577336E-002 7.772254611812728E-002 7.966218913587950E-002 8.164951374867802E-002 + 8.368565498751072E-002 8.577177298593229E-002 8.790905343419331E-002 9.009870803594192E-002 + 9.234197496712832E-002 9.464011933671994E-002 9.699443364880779E-002 9.940623826563842E-002 + 1.018768818710922E-001 1.044077419340717E-001 1.070002251712411E-001 1.096557680085147E-001 + 1.123758370406412E-001 1.151619294882043E-001 1.180155736512953E-001 1.209383293590758E-001 + 1.239317884143999E-001 1.269975750325981E-001 1.301373462734880E-001 1.333527924655993E-001 + 1.366456376215507E-001 1.400176398434546E-001 1.434705917171380E-001 1.470063206939279E-001 + 1.506266894586432E-001 1.543335962823804E-001 1.581289753585942E-001 1.620147971208765E-001 + 1.659930685407723E-001 1.700658334038512E-001 1.742351725621862E-001 1.785032041612624E-001 + 1.828720838392520E-001 1.873440048964844E-001 1.919211984328043E-001 1.966059334504250E-001 + 2.014005169197330E-001 2.063072938053815E-001 2.113286470498933E-001 2.164669975118218E-001 + 2.217248038554145E-001 2.271045623885407E-001 2.326088068455131E-001 2.382401081112751E-001 + 2.440010738832331E-001 2.498943482668889E-001 2.559226113012026E-001 2.620885784094699E-001 + 2.683949997713029E-001 2.748446596110912E-001 2.814403753981560E-001 2.881849969535733E-001 + 2.950814054584492E-001 3.021325123582282E-001 3.093412581573520E-001 3.167106110984241E-001 + 3.242435657197440E-001 3.319431412848760E-001 3.398123800776858E-001 3.478543455559900E-001 + 3.560721203567792E-001 3.644688041456677E-001 3.730475113030077E-001 3.818113684388489E-001 + 3.907635117286332E-001 3.999070840613192E-001 4.092452319913081E-001 4.187811024853313E-001 + 4.285178394552066E-001 4.384585800670738E-001 4.486064508175444E-001 4.589645633668912E-001 + 4.695360101192096E-001 4.803238595392647E-001 4.913311511954676E-001 5.025608905183090E-001 + 5.140160432632960E-001 5.256995296673324E-001 5.376142182873208E-001 5.497629195095763E-001 + 5.621483787186327E-001 5.747732691138371E-001 5.876401841621451E-001 6.007516296755135E-001 + 6.141100155012376E-001 6.277176468137489E-001 6.415767149963938E-001 6.556892881019308E-001 + 6.700573008807004E-001 6.846825443656276E-001 6.995666550036517E-001 7.147111033234873E-001 + 7.301171821301625E-001 7.457859942173550E-001 7.617184395891250E-001 7.779152021835144E-001 + 7.943767360912113E-001 8.111032512635303E-001 8.280946987050384E-001 8.453507551472846E-001 + 8.628708072015798E-001 8.806539349901102E-001 8.986988952564212E-001 9.170041039580971E-001 + 9.355676183463627E-001 9.543871185396248E-001 9.734598886001868E-001 9.927827971260068E-001 + 1.012352277372140E+000 1.032164306919384E+000 1.052214386911034E+000 1.072497520881918E+000 + 1.093008193207729E+000 1.113740347206599E+000 1.134687362929017E+000 1.155842034676838E+000 + 1.177196548296764E+000 1.198742458298873E+000 1.220470664856103E+000 1.242371390746222E+000 + 1.264434158303890E+000 1.286647766456558E+000 1.309000267924618E+000 1.331478946673081E+000 + 1.354070295709111E+000 1.376759995327373E+000 1.399532891912656E+000 1.422372977417349E+000 + 1.445263369639550E+000 1.468186293435862E+000 1.491123063011798E+000 1.514054065441199E+000 + 1.536958745575197E+000 1.559815592510099E+000 1.582602127792557E+000 1.605294895549437E+000 + 1.627869454738596E+000 1.650300373725523E+000 1.672561227399336E+000 1.694624597049665E+000 + 1.716462073233850E+000 1.738044261870972E+000 1.759340793805901E+000 1.780320338092429E+000 + 1.800950619249367E+000 1.821198438747632E+000 1.841029700988908E+000 1.860409444038048E+000 + 1.879301875371256E+000 1.897670412900299E+000 1.915477731529490E+000 1.932685815496412E+000 + 1.949256016739461E+000 1.965149119524962E+000 1.980325411553403E+000 1.994744761748573E+000 + 2.008366704914195E+000 2.021150533420396E+000 2.033055396056519E+000 2.044040404157124E+000 + 2.054064745074760E+000 2.063087803035383E+000 2.071069287370746E+000 2.077969368075930E+000 + 2.083748818589672E+000 2.088369165640184E+000 2.091792845939509E+000 2.093983369445401E+000 + 2.094905488841164E+000 2.094525374810949E+000 2.092810796610975E+000 2.089731307356210E+000 + 2.085258433357499E+000 2.079365866756558E+000 2.072029660615910E+000 2.063228425528601E+000 + 2.052943526718920E+000 2.041159280511231E+000 2.027863148950351E+000 2.013045931264687E+000 + 1.996701950773695E+000 1.978829235755532E+000 1.959429692710162E+000 1.938509270379429E+000 + 1.916078112820094E+000 1.892150699770147E+000 1.866745972504926E+000 1.839887443349051E+000 + 1.811603286994992E+000 1.781926411781238E+000 1.750894509103781E+000 1.718550079176531E+000 + 1.684940431420363E+000 1.650117657848646E+000 1.614138577931016E+000 1.577064653557239E+000 + 1.538961872891333E+000 1.499900602102332E+000 1.459955404183011E+000 1.419204824321666E+000 + 1.377731141573189E+000 1.335620086884420E+000 1.292960527862244E+000 1.249844121029722E+000 + 1.206364932692795E+000 1.162619029933667E+000 1.118704043653824E+000 1.074718706003867E+000 + 1.030762364954177E+000 9.869344791739225E-001 9.433340967885885E-001 9.000593219722826E-001 + 8.572067736916668E-001 8.148710412465605E-001 7.731441415400095E-001 7.321149832491032E-001 + 6.918688432505594E-001 6.524868607732212E-001 6.140455547970340E-001 5.766163701885516E-001 + 5.402652579506255E-001 5.050522947658487E-001 4.710313467257599E-001 4.382497817606242E-001 + 4.067482348184189E-001 3.765604292888755E-001 3.477130575346188E-001 3.202257226828562E-001 + 2.941109430572739E-001 2.693742198020973E-001 2.460141673813019E-001 2.240227057416547E-001 + 2.033853120244161E-001 1.840813288154533E-001 1.660843250559550E-001 1.493625049146072E-001 + 1.338791591666466E-001 1.195931529534855E-001 1.064594432262358E-001 9.442961872284115E-002 + 8.345245500462237E-002 7.347447689462484E-002 6.444052062389544E-002 5.629428810640363E-002 + 4.897888602826758E-002 4.243734284745550E-002 3.661309734785576E-002 3.145045306361741E-002 + 2.689499366977707E-002 2.289395530374255E-002 1.939655271677396E-002 1.635425713093318E-002 + 1.372102466927227E-002 1.145347520934845E-002 9.511022456882323E-003 7.855956923298843E-003 + 6.453484296110105E-003 5.271722395585791E-003 4.281660499662372E-003 3.457085280423711E-003 + 2.774477923113025E-003 2.212887190580555E-003 1.753783254940481E-003 1.380897051022293E-003 + 1.080049723859152E-003 8.389764591866846E-004 6.471486185759652E-004 4.955976679963163E-004 + 3.767439098448877E-004 2.842325233879673E-004 2.127789059747235E-004 1.580248046669481E-004 + 1.164062503251398E-004 8.503386638817428E-005 6.158573238741006E-005 4.421264444319615E-005 + 3.145533541439534E-005 2.217299700795355E-005 1.548228349268381E-005 1.070586806681629E-005 + 7.329563109816508E-006 4.966998039921243E-006 3.330866144684317E-006 2.209797161647801E-006 + 1.449978330428208E-006 9.407263744686099E-007 6.033003923280948E-007 3.823358315667676E-007 + 2.393684467761038E-007 1.480012577049954E-007 9.034481227964475E-008 5.443015532639066E-008 + 3.235416040628806E-008 1.896823470874211E-008 1.096423112964474E-008 6.246379429134070E-009 + 3.506048667161465E-009 1.938132068667987E-009 1.054768016196810E-009 5.648937345732831E-010 + 2.976024455118777E-010 1.541648674611082E-010 7.849250424055126E-011 3.926221440618897E-011 + 1.928547767465223E-011 9.298122277401566E-012 4.398094238496371E-012 2.039990897376610E-012 + 9.274084096698271E-013 4.130210255017879E-013 1.800964959292008E-013 7.684900465705690E-014 + 3.207252463035603E-014 1.308416387746185E-014 5.214666803828349E-015 2.029169918728629E-015 + 7.704749750851743E-016 2.852839111876426E-016 1.029433191793290E-016 3.617743096952994E-017 + 1.237386285496569E-017 4.116260788817399E-018 1.330837168402436E-018 4.178862953117461E-019 + 1.273448199275096E-019 3.763267030852752E-020 1.077635020057210E-020 2.987824114118611E-021 + 8.014197276793622E-022 2.077890747815678E-022 5.203192169708647E-023 1.257241903727354E-023 + 2.928716377636281E-024 6.571174504913233E-025 1.418742072595707E-025 2.944664107556981E-026 + 5.869570785910969E-027 1.122459333762675E-027 2.057182135709836E-028 3.609485978783519E-029 + 6.056326178616445E-030 9.706733460161231E-031 1.484339103400089E-031 2.163081110167297E-032 + 3.000285142946002E-033 3.956027489544902E-034 4.952293304648711E-035 5.878044308351160E-036 + 6.606226995767313E-037 7.020501756662578E-038 7.044684158274446E-039 6.665039537868659E-040 + 5.936697305438559E-041 4.970783216914325E-042 3.906271818311815E-043 2.876474850263013E-044 + 1.981546640646447E-045 1.274854524171356E-046 7.646770094127017E-048 4.268604760085957E-049 + 2.213575256039197E-050 1.064370922646831E-051 4.736434052790294E-053 1.946785778252827E-054 + 7.375981985153713E-056 2.570758456339247E-057 8.224784152610432E-059 2.410284932546453E-060 + 6.455470582705747E-062 1.576571406821617E-063 3.502766047782641E-065 7.062853681986488E-067 + 1.289301219657723E-068 2.125397670482507E-070 3.155850807972982E-072 4.209530265275627E-074 + 5.030522184721246E-076 5.370890201105292E-078 5.108509119886430E-080 4.316048522187883E-082 + 3.229387067953457E-084 2.133339323436619E-086 1.240327675882221E-088 6.326238016875953E-091 + 2.821289246055189E-093 1.096393981299890E-095 3.699893305428654E-098 1.080347717538639E-100 + 2.719560395681039E-103 5.879810939711659E-106 1.087639415765189E-108 1.714543514349058E-111 + 2.294012319507678E-114 2.594321470625264E-117 2.469358552177205E-120 1.969615960058405E-123 + 1.310607737360448E-126 7.242111635176323E-130 3.307623892283516E-133 1.242598515059946E-136 + 3.820865114547458E-140 9.567682220916168E-144 1.940922470036073E-147 3.172861665213195E-151 + 4.156828276685708E-155 4.340176918660992E-159 3.590806359076927E-163 2.340223710674154E-167 + 1.194209358443858E-171 4.742111204226952E-176 1.456040799705891E-180 3.434460053235799E-185 + 6.181978638030876E-190 8.433507565532107E-195 8.658706958548025E-200 6.642584890613278E-205 + 3.779693233001878E-210 1.583165633907612E-215 4.843712396335236E-221 1.073888280130408E-226 + 1.711306343122054E-232 1.943810061836348E-238 1.560324396778448E-244 8.773933647220702E-251 + 3.425144619656335E-257 9.197213859403966E-264 1.682722770228782E-270 2.077445981454408E-277 + 1.713495535928644E-284 9.346262785542042E-292 3.336170366790975E-299 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + + 7.310101561594429E-020 7.684898483250657E-020 8.078911653996480E-020 8.493126311990744E-020 + 8.928578209633002E-020 9.386356203483789E-020 9.867604976973301E-020 1.037352790270621E-019 + 1.090539005151988E-019 1.146452135582065E-019 1.205231993510728E-019 1.267025559199811E-019 + 1.331987348750312E-019 1.400279800473138E-019 1.472073681069489E-019 1.547548512636554E-019 + 1.626893021566258E-019 1.710305610459563E-019 1.797994854236293E-019 1.890180021681100E-019 + 1.987091623729602E-019 2.088971989865820E-019 2.196075874072098E-019 2.308671091846747E-019 + 2.427039189882318E-019 2.551476150078947E-019 2.682293129653291E-019 2.819817239193656E-019 + 2.964392360606809E-019 3.116380007001940E-019 3.276160226661661E-019 3.444132553360693E-019 + 3.620717005408444E-019 3.806355135913490E-019 4.001511136896437E-019 4.206673000011659E-019 + 4.422353736780677E-019 4.649092661388139E-019 4.887456739248233E-019 5.138042004713542E-019 + 5.401475051471320E-019 5.678414599354155E-019 5.969553141482637E-019 6.275618675858816E-019 + 6.597376525740525E-019 6.935631253348015E-019 7.291228671688650E-019 7.665057959529994E-019 + 8.058053884809824E-019 8.471199142043011E-019 8.905526809569442E-019 9.362122932788166E-019 + 9.842129239836481E-019 1.034674599650497E-018 1.087723500752727E-018 1.143492277174901E-018 + 1.202120379906592E-018 1.263754409742490E-018 1.328548483860750E-018 1.396664621196227E-018 + 1.468273147572177E-018 1.543553121603550E-018 1.622692782436790E-018 1.705890020445745E-018 + 1.793352872060699E-018 1.885300039967771E-018 1.981961439979574E-018 2.083578775944488E-018 + 2.190406144132179E-018 2.302710668606648E-018 2.420773169175487E-018 2.544888863585695E-018 + 2.675368105721808E-018 2.812537161652254E-018 2.956739025464502E-018 3.108334276928893E-018 + 3.267701983135888E-018 3.435240646361263E-018 3.611369200529318E-018 3.796528058765985E-018 + 3.991180214660928E-018 4.195812399992750E-018 4.410936301811930E-018 4.637089841924974E-018 + 4.874838521979163E-018 5.124776837511141E-018 5.387529764495441E-018 5.663754322109991E-018 + 5.954141215626183E-018 6.259416563531970E-018 6.580343713206102E-018 6.917725149684321E-018 + 7.272404502289863E-018 7.645268654146188E-018 8.037249959846808E-018 8.449328576827277E-018 + 8.882534916269382E-018 9.337952219665783E-018 9.816719267487949E-018 1.032003322673053E-017 + 1.084915264445237E-017 1.140540059479962E-017 1.199016798738035E-017 1.260491704526290E-017 + 1.325118496129542E-017 1.393058774188830E-017 1.464482424787213E-017 1.539568044253463E-017 + 1.618503385745893E-017 1.701485828733082E-017 1.788722872545306E-017 1.880432655230972E-017 + 1.976844499015349E-017 2.078199483725562E-017 2.184751049615766E-017 2.296765631099738E-017 + 2.414523322975705E-017 2.538318580809237E-017 2.668460957225506E-017 2.805275875952115E-017 + 2.949105445547878E-017 3.100309314852409E-017 3.259265572295569E-017 3.426371691315415E-017 + 3.602045524248911E-017 3.786726347180298E-017 3.980875958360168E-017 4.184979832941598E-017 + 4.399548336920864E-017 4.625118003318330E-017 4.862252873790333E-017 5.111545909027199E-017 + 5.373620471463767E-017 5.649131884010085E-017 5.938769068700168E-017 6.243256269355733E-017 + 6.563354862573028E-017 6.899865261560892E-017 7.253628917590606E-017 7.625530424062435E-017 + 8.016499728449701E-017 8.427514457651946E-017 8.859602362571267E-017 9.313843888024864E-017 + 9.791374874419932E-017 1.029338939794604E-016 1.082114275638768E-016 1.137595460802244E-016 + 1.195921227145397E-016 1.257237419463123E-016 1.321697360172767E-016 1.389462232700036E-016 + 1.460701484521510E-016 1.535593250871572E-016 1.614324800173297E-016 1.697093002307003E-016 + 1.784104820887511E-016 1.875577830780958E-016 1.971740762155277E-016 2.072834072424766E-016 + 2.179110547518804E-016 2.290835933978372E-016 2.408289603460774E-016 2.531765251314293E-016 + 2.661571630969542E-016 2.798033325983744E-016 2.941491561668796E-016 3.092305058332156E-016 + 3.250850928264442E-016 3.417525618716629E-016 3.592745903224495E-016 3.776949923759679E-016 + 3.970598286312638E-016 4.174175212647555E-016 4.388189751108977E-016 4.613177049507607E-016 + 4.849699693268731E-016 5.098349112188581E-016 5.359747059316876E-016 5.634547165663318E-016 + 5.923436574615282E-016 6.227137660154362E-016 6.546409833167342E-016 6.882051440368878E-016 + 7.234901760584169E-016 7.605843103382769E-016 7.995803015312309E-016 8.405756599247601E-016 + 8.836728952655670E-016 9.289797730873359E-016 9.766095841806476E-016 1.026681427878989E-015 + 1.079320509869075E-015 1.134658455270266E-015 1.192833637765925E-015 1.253991525609629E-015 + 1.318285045371609E-015 1.385874964334752E-015 1.456930292496537E-015 1.531628705182045E-015 + 1.610156987324734E-015 1.692711500526094E-015 1.779498674061826E-015 1.870735521062537E-015 + 1.966650181159589E-015 2.067482490952865E-015 2.173484583727245E-015 2.284921519917020E-015 + 2.402071949894986E-015 2.525228810743489E-015 2.654700058749547E-015 2.790809439456012E-015 + 2.933897297193874E-015 3.084321426120304E-015 3.242457964890357E-015 3.408702337199295E-015 + 3.583470240547834E-015 3.767198685702170E-015 3.960347089448418E-015 4.163398423373799E-015 + 4.376860421546848E-015 4.601266850117095E-015 4.837178842008091E-015 5.085186300041872E-015 + 5.345909372003148E-015 5.620000001331298E-015 5.908143557318636E-015 6.211060548890090E-015 + 6.529508426250611E-015 6.864283474905001E-015 7.216222806785854E-015 7.586206453469357E-015 + 7.975159566711987E-015 8.384054731811444E-015 8.813914399576137E-015 9.265813442983974E-015 + 9.740881844924548E-015 1.024030752374408E-014 1.076533930365944E-014 1.131729003746878E-014 + 1.189753988936610E-014 1.250753978607048E-014 1.314881504489732E-014 1.382296918784543E-014 + 1.453168795123627E-014 1.527674350093166E-014 1.605999886367055E-014 1.688341258560495E-014 + 1.774904362968406E-014 1.865905652413290E-014 1.961572677489863E-014 2.062144655559909E-014 + 2.167873068920111E-014 2.279022293638575E-014 2.395870260632531E-014 2.518709150640146E-014 + 2.647846124824333E-014 2.783604092835377E-014 2.926322520252995E-014 3.076358277426797E-014 + 3.234086531837717E-014 3.399901686211796E-014 3.574218364732025E-014 3.757472449814400E-014 + 3.950122172040544E-014 4.152649255972375E-014 4.365560124713930E-014 4.589387166232343E-014 + 4.824690064604483E-014 5.072057199518072E-014 5.332107117526620E-014 5.605490078737343E-014 + 5.892889682799255E-014 6.195024578257537E-014 6.512650259548348E-014 6.846560956127322E-014 + 7.197591618455951E-014 7.566620005811399E-014 7.954568881140668E-014 8.362408318447304E-014 + 8.791158128480147E-014 9.241890408789967E-014 9.715732224529946E-014 1.021386842670387E-013 + 1.073754461490888E-013 1.128807025198102E-013 1.186682193833230E-013 1.247524685416613E-013 + 1.311486637817906E-013 1.378727989179716E-013 1.449416877845948E-013 1.523730062794931E-013 + 1.601853365628550E-013 1.683982135222670E-013 1.770321736200675E-013 1.861088062451516E-013 + 1.956508076976446E-013 2.056820379414182E-013 2.162275802663741E-013 2.273138040096749E-013 + 2.389684304927546E-013 2.512206023389934E-013 2.641009563453778E-013 2.776417000903713E-013 + 2.918766924695500E-013 3.068415283603782E-013 3.225736276278464E-013 3.391123286935114E-013 + 3.564989869019205E-013 3.747770779303909E-013 3.939923065007042E-013 4.141927206645763E-013 + 4.354288319486452E-013 4.577537416594308E-013 4.812232736640743E-013 5.058961139788782E-013 + 5.318339575147043E-013 5.591016623461477E-013 5.877674118902601E-013 6.179028854003345E-013 + 6.495834372010809E-013 6.828882851133770E-013 7.179007085397417E-013 7.547082567058519E-013 + 7.934029675788165E-013 8.340815980096200E-013 8.768458656751690E-013 9.218027034249907E-013 + 9.690645266685171E-013 1.018749514471587E-012 1.070981905065063E-012 1.125892306504431E-012 + 1.183618023257274E-012 1.244303399535175E-012 1.308100180228587E-012 1.375167890347235E-012 + 1.445674233914721E-012 1.519795513314919E-012 1.597717070138625E-012 1.679633748632864E-012 + 1.765750382911710E-012 1.856282309146817E-012 1.951455904018510E-012 2.051509150773766E-012 + 2.156692234306509E-012 2.267268166748287E-012 2.383513445133506E-012 2.505718742783845E-012 + 2.634189636140588E-012 2.769247368862291E-012 2.911229655098550E-012 3.060491523948225E-012 + 3.217406207213933E-012 3.382366072672484E-012 3.555783605194958E-012 3.738092438169720E-012 + 3.929748437807400E-012 4.131230843039166E-012 4.343043463858673E-012 4.565715941103981E-012 + 4.799805070829745E-012 5.045896196580931E-012 5.304604673049839E-012 5.576577404776000E-012 + 5.862494463736532E-012 6.163070789871873E-012 6.479057978798687E-012 6.811246161180592E-012 + 7.160465978455651E-012 7.527590659861089E-012 7.913538205948919E-012 8.319273684051947E-012 + 8.745811641440443E-012 9.194218642203244E-012 9.665615934196688E-012 1.016118225273035E-011 + 1.068215676799963E-011 1.122984218363589E-011 1.180560799412132E-011 1.241089390921412E-011 + 1.304721345394671E-011 1.371615775319801E-011 1.441939951030409E-011 1.515869718965484E-011 + 1.593589941373536E-011 1.675294958560681E-011 1.761189074838530E-011 1.851487069386913E-011 + 1.946414733308931E-011 2.046209434221153E-011 2.151120709790731E-011 2.261410891703571E-011 + 2.377355761623685E-011 2.499245240784058E-011 2.627384114933221E-011 2.762092796450279E-011 + 2.903708125534063E-011 3.052584212469611E-011 3.209093323078223E-011 3.373626809564997E-011 + 3.546596089091378E-011 3.728433672519707E-011 3.919594245901925E-011 4.120555807416815E-011 + 4.331820862598502E-011 4.553917680844912E-011 4.787401616347973E-011 5.032856496748379E-011 + 5.290896082987416E-011 5.562165604005801E-011 5.847343370127198E-011 6.147142469160525E-011 + 6.462312549461817E-011 6.793641694414448E-011 7.141958393014379E-011 7.508133611487885E-011 + 7.893082971121763E-011 8.297769037751199E-011 8.723203728630358E-011 9.170450842703581E-011 + 9.640628720604090E-011 1.013491304103123E-010 1.065453976049812E-010 1.120080820380073E-010 + 1.177508431293530E-010 1.237880406258800E-010 1.301347705073698E-010 1.368069027334412E-010 + 1.438211209257552E-010 1.511949640847219E-010 1.589468704450190E-010 1.670962235795796E-010 + 1.756634008673198E-010 1.846698244458024E-010 1.941380147762286E-010 2.040916469546964E-010 + 2.145556099105209E-010 2.255560686396287E-010 2.371205296286427E-010 2.492779096332299E-010 + 2.620586079826857E-010 2.754945825915447E-010 2.896194298682586E-010 3.044684687207564E-010 + 3.200788288689185E-010 3.364895436847686E-010 3.537416477925333E-010 3.718782796725664E-010 + 3.909447895257157E-010 4.109888526677949E-010 4.320605887376992E-010 4.542126870172123E-010 + 4.775005381758296E-010 5.019823727700131E-010 5.277194068431522E-010 5.547759949902700E-010 + 5.832197912701782E-010 6.131219183673892E-010 6.445571454267515E-010 6.776040750054171E-010 + 7.123453396095705E-010 7.488678083073157E-010 7.872628039342555E-010 8.276263314348856E-010 + 8.700593179106377E-010 9.146678649747758E-010 9.615635140450743E-010 1.010863525237523E-009 + 1.062691170558373E-009 1.117176042127546E-009 1.174454376203974E-009 1.234669393823024E-009 + 1.297971658897590E-009 1.364519454678196E-009 1.434479179513268E-009 1.508025762898995E-009 + 1.585343102859018E-009 1.666624525747285E-009 1.752073269623753E-009 1.841902992411311E-009 + 1.936338306104331E-009 2.035615338364466E-009 2.139982322907535E-009 2.249700220157616E-009 + 2.365043369719885E-009 2.486300176303376E-009 2.613773830808464E-009 2.747783068381653E-009 + 2.888662965332929E-009 3.036765776907682E-009 3.192461818007709E-009 3.356140389062969E-009 + 3.528210749368441E-009 3.709103140319613E-009 3.899269861104262E-009 4.099186399539604E-009 + 4.309352620881787E-009 4.530294017579250E-009 4.762563023094289E-009 5.006740393076880E-009 + 5.263436657343260E-009 5.533293646289042E-009 5.816986095551904E-009 6.115223332935531E-009 + 6.428751051811067E-009 6.758353175429053E-009 7.104853816801950E-009 7.469119339055805E-009 + 7.852060521401261E-009 8.254634836137803E-009 8.677848842382211E-009 9.122760702504842E-009 + 9.590482827562727E-009 1.008218465834209E-008 1.059909558896084E-008 1.114250804033819E-008 + 1.171378069121320E-008 1.231434187478697E-008 1.294569314947819E-008 1.360941305271588E-008 + 1.430716104715062E-008 1.504068166914695E-008 1.581180888992381E-008 1.662247070024270E-008 + 1.747469393010058E-008 1.837060931547161E-008 1.931245682476053E-008 2.030259125827652E-008 + 2.134348813472173E-008 2.243774987940294E-008 2.358811232962975E-008 2.479745157355541E-008 + 2.606879113954729E-008 2.740530955405277E-008 2.881034828684365E-008 3.028742010349115E-008 + 3.184021784594131E-008 3.347262366312746E-008 3.518871871468351E-008 3.699279337200070E-008 + 3.888935794211356E-008 4.088315394120716E-008 4.297916594590722E-008 4.518263405196218E-008 + 4.749906697143896E-008 4.993425580114887E-008 5.249428849669948E-008 5.518556508832355E-008 + 5.801481367649625E-008 6.098910724729042E-008 6.411588134947212E-008 6.740295267748707E-008 + 7.085853860674793E-008 7.449127773001590E-008 7.831025144616091E-008 8.232500665521569E-008 + 8.654557961640106E-008 9.098252102869598E-008 9.564692239658511E-008 1.005504437468162E-007 + 1.057053427653752E-007 1.111245054274287E-007 1.168214781967060E-007 1.228105018747146E-007 + 1.291065471842928E-007 1.357253521763298E-007 1.426834615530369E-007 1.499982680059234E-007 + 1.576880556716670E-007 1.657720458143430E-007 1.742704448480267E-007 1.832044948196292E-007 + 1.925965264779438E-007 2.024700150613493E-007 2.128496389433759E-007 2.237613412824703E-007 + 2.352323948297910E-007 2.472914700567153E-007 2.599687067720454E-007 2.732957894075615E-007 + 2.873060261597361E-007 3.020344321850243E-007 3.175178170562244E-007 3.337948766980599E-007 + 3.509062900312423E-007 3.688948205660358E-007 3.878054231986583E-007 4.076853564767928E-007 + 4.285843006141420E-007 4.505544815482177E-007 4.736508013506416E-007 4.979309753150300E-007 + 5.234556760641335E-007 5.502886850354120E-007 5.784970517225436E-007 6.081512610696719E-007 + 6.393254094355006E-007 6.720973895655919E-007 7.065490850337118E-007 7.427665746365506E-007 + 7.808403472508865E-007 8.208655276883234E-007 8.629421141099779E-007 9.071752275923084E-007 + 9.536753744653962E-007 1.002558722076752E-006 1.053947388667058E-006 1.107969748079276E-006 + 1.164760750059423E-006 1.224462256945991E-006 1.287223397585639E-006 1.353200939355607E-006 + 1.422559679218092E-006 1.495472854779193E-006 1.572122576374507E-006 1.652700281255651E-006 + 1.737407211006777E-006 1.826454913377645E-006 1.920065769780450E-006 2.018473549761001E-006 + 2.121923993821801E-006 2.230675426044700E-006 2.344999398034497E-006 2.465181365782561E-006 + 2.591521401130783E-006 2.724334939601797E-006 2.863953566451536E-006 3.010725842894193E-006 + 3.165018174549540E-006 3.327215724266371E-006 3.497723371585628E-006 3.676966721222017E-006 + 3.865393163063520E-006 4.063472986315941E-006 4.271700550552467E-006 4.490595516569060E-006 + 4.720704140093688E-006 4.962600631552050E-006 5.216888585255662E-006 5.484202481548522E-006 + 5.765209265628465E-006 6.060610006947771E-006 6.371141643295575E-006 6.697578813873408E-006 + 7.040735785892832E-006 7.401468479454266E-006 7.780676595708157E-006 8.179305853550776E-006 + 8.598350340376042E-006 9.038854982681501E-006 9.501918142621677E-006 9.988694346911002E-006 + 1.050039715479952E-005 1.103830217218885E-005 1.160375021930885E-005 1.219815065975323E-005 + 1.282298489906631E-005 1.347981006148385E-005 1.417026285386986E-005 1.489606362634273E-005 + 1.565902063956577E-005 1.646103454918065E-005 1.730410311838607E-005 1.819032617022470E-005 + 1.912191079171679E-005 2.010117680259427E-005 2.113056250203046E-005 2.221263070742927E-005 + 2.335007510005232E-005 2.454572689299626E-005 2.580256183781637E-005 2.712370758691091E-005 + 2.851245142963186E-005 2.997224842099754E-005 3.150672992281958E-005 3.311971257805140E-005 + 3.481520774021004E-005 3.659743138080503E-005 3.847081449886693E-005 4.044001405785763E-005 + 4.250992447651454E-005 4.468568970150263E-005 4.697271589112961E-005 4.937668474084882E-005 + 5.190356748278686E-005 5.455963959314526E-005 5.735149624300648E-005 6.028606852982431E-005 + 6.337064052874643E-005 6.661286720483427E-005 7.002079322928981E-005 7.360287274493195E-005 + 7.736799012837951E-005 8.132548179876795E-005 8.548515912525135E-005 8.985733248813421E-005 + 9.445283655117070E-005 9.928305680537746E-005 1.043599574476956E-004 1.096961106609106E-004 + 1.153047273645037E-004 1.211996895095220E-004 1.273955839940874E-004 1.339077382799493E-004 + 1.407522577943446E-004 1.479460652055642E-004 1.555069416649072E-004 1.634535701121632E-004 + 1.718055807465227E-004 1.805835987696700E-004 1.898092945130093E-004 1.995054360663548E-004 + 2.096959445310187E-004 2.204059520261932E-004 2.316618625836190E-004 2.434914160720366E-004 + 2.559237552996618E-004 2.689894964499233E-004 2.827208030131743E-004 2.971514633846861E-004 + 3.123169723073688E-004 3.282546163460627E-004 3.450035635889739E-004 3.626049577811303E-004 + 3.811020171041803E-004 4.005401378269791E-004 4.209670030618241E-004 4.424326968720427E-004 + 4.649898239881457E-004 4.886936354014825E-004 5.136021601168008E-004 5.397763433580401E-004 + 5.672801915350014E-004 5.961809242927701E-004 6.265491339801423E-004 6.584589528886648E-004 + 6.919882286297450E-004 7.272187080335940E-004 7.642362299711827E-004 8.031309275179756E-004 + 8.439974398968976E-004 8.869351346573121E-004 9.320483405666197E-004 9.794465917121664E-004 + 1.029244883332517E-003 1.081563939919672E-003 1.136530496157166E-003 1.194277591282791E-003 + 1.254944877490092E-003 1.318678943008255E-003 1.385633650527058E-003 1.455970491661296E-003 + 1.529858958177414E-003 1.607476930735265E-003 1.689011085927913E-003 1.774657322434310E-003 + 1.864621207132311E-003 1.959118442052558E-003 2.058375353088977E-003 2.162629401416493E-003 + 2.272129718603493E-003 2.387137666444171E-003 2.507927422573648E-003 2.634786592969229E-003 + 2.768016852480444E-003 2.907934614572356E-003 3.054871731508778E-003 3.209176226244172E-003 + 3.371213057337808E-003 3.541364918246793E-003 3.720033072400878E-003 3.907638225506307E-003 + 4.104621436572550E-003 4.311445069202350E-003 4.528593784730911E-003 4.756575578848269E-003 + 4.995922863383998E-003 5.247193594980431E-003 5.510972452426959E-003 5.787872064471823E-003 + 6.078534289974134E-003 6.383631552300391E-003 6.703868229912848E-003 7.039982105137461E-003 + 7.392745873135800E-003 7.762968713143570E-003 8.151497924068904E-003 8.559220626574906E-003 + 8.987065533797002E-003 9.436004792865891E-003 9.907055899426037E-003 1.040128368734925E-002 + 1.091980239584916E-002 1.146377781620214E-002 1.203442952026784E-002 1.263303317299021E-002 + 1.326092293102783E-002 1.391949392962875E-002 1.461020485981669E-002 1.533458063789125E-002 + 1.609421516917519E-002 1.689077420784752E-002 1.772599831459817E-002 1.860170591371678E-002 + 1.951979645108115E-002 2.048225365435272E-002 2.149114889649350E-002 2.254864466351078E-002 + 2.365699812709804E-002 2.481856482256827E-002 2.603580243218458E-002 2.731127467365410E-002 + 2.864765529318677E-002 3.004773216211539E-002 3.151441147561798E-002 3.305072205160157E-002 + 3.465981972725458E-002 3.634499185019254E-002 3.810966186047542E-002 3.995739395906517E-002 + 4.189189785754109E-002 4.391703360304774E-002 4.603681647156058E-002 4.825542192158572E-002 + 5.057719059934940E-002 5.300663338542143E-002 5.554843647148420E-002 5.820746645466327E-002 + 6.098877543543683E-002 6.389760610362893E-002 6.693939679540650E-002 7.011978650247064E-002 + 7.344461981281747E-002 7.691995176050620E-002 8.055205255979039E-002 8.434741219680604E-002 + 8.831274484966438E-002 9.245499310536344E-002 9.678133193934674E-002 1.012991724207884E-001 + 1.060161651038526E-001 1.109402030621282E-001 1.160794245203111E-001 1.214422150339085E-001 + 1.270372091642787E-001 1.328732915927773E-001 1.389595976140272E-001 1.453055129445056E-001 + 1.519206727786722E-001 1.588149600207384E-001 1.659985026160304E-001 1.734816699015557E-001 + 1.812750678910389E-001 1.893895334052623E-001 1.978361269540319E-001 2.066261242716435E-001 + 2.157710064031864E-001 2.252824482345990E-001 2.351723053550241E-001 2.454525991356987E-001 + 2.561354999055813E-001 2.672333080999351E-001 2.787584332545075E-001 2.907233707146061E-001 + 3.031406759253938E-001 3.160229361673291E-001 3.293827395986378E-001 3.432326414654479E-001 + 3.575851273396026E-001 3.724525732443148E-001 3.878472025290562E-001 4.037810393571219E-001 + 4.202658586727120E-001 4.373131325189763E-001 4.549339725844335E-001 4.731390688628894E-001 + 4.919386243212002E-001 5.113422854804923E-001 5.313590688297094E-001 5.519972830057212E-001 + 5.732644466921990E-001 5.951672022097154E-001 6.177112247927193E-001 6.409011275750779E-001 + 6.647403623348318E-001 6.892311160813248E-001 7.143742036033920E-001 7.401689561366590E-001 + 7.666131063509224E-001 7.937026699051420E-001 8.214318238683437E-001 8.497927823589972E-001 + 8.787756698139950E-001 9.083683923607427E-001 9.385565078319884E-001 9.693230950332365E-001 + 1.000648622946078E+000 1.032510820627843E+000 1.064884548648171E+000 1.097741672985670E+000 + 1.131050942393141E+000 1.164777870326236E+000 1.198884622618282E+000 1.233329912171852E+000 + 1.268068902024719E+000 1.303053118233535E+000 1.338230374100988E+000 1.373544707350818E+000 + 1.408936331928017E+000 1.444341606167165E+000 1.479693019129176E+000 1.514919196952765E+000 + 1.549944931100959E+000 1.584691230402062E+000 1.619075398786632E+000 1.653011140605432E+000 + 1.686408695374855E+000 1.719175003734410E+000 1.751213906312644E+000 1.782426377080908E+000 + 1.812710792627117E+000 1.841963238600778E+000 1.870077854365276E+000 1.896947216641126E+000 + 1.922462762633426E+000 1.946515252807345E+000 1.968995273105776E+000 1.989793775994061E+000 + 2.008802659267789E+000 2.025915381072544E+000 2.041027609061385E+000 2.054037901059074E+000 + 2.064848414016101E+000 2.073365637424692E+000 2.079501146739427E+000 2.083172371703798E+000 + 2.084303373839161E+000 2.082825626713482E+000 2.078678791984539E+000 2.071811483617425E+000 + 2.062182012121973E+000 2.049759100155710E+000 2.034522560406394E+000 2.016463926320156E+000 + 1.995587025992025E+000 1.971908489400376E+000 1.945458179160992E+000 1.916279535114172E+000 + 1.884429823353097E+000 1.849980280765870E+000 1.813016146806379E+000 1.773636575039047E+000 + 1.731954418023130E+000 1.688095880315242E+000 1.642200035771473E+000 1.594418206914689E+000 + 1.544913205887776E+000 1.493858438421137E+000 1.441436874281275E+000 1.387839889808930E+000 + 1.333265990366041E+000 1.277919422754090E+000 1.222008689897688E+000 1.165744982260717E+000 + 1.109340542527347E+000 1.053006981983735E+000 9.969535687254210E-001 9.413855092359528E-001 + 8.865022459829547E-001 8.324957944110052E-001 7.795491430319539E-001 7.278347401887437E-001 + 6.775130904695565E-001 6.287314826593202E-001 5.816228695307184E-001 5.363049177040563E-001 + 4.928792432685002E-001 4.514308458917288E-001 4.120277508032590E-001 3.747208643839091E-001 + 3.395440452077264E-001 3.065143883542265E-001 2.756327167355736E-001 2.468842691714240E-001 + 2.202395711021379E-001 1.956554702663027E-001 1.730763164861349E-001 1.524352619992858E-001 + 1.336556566324928E-001 1.166525105997622E-001 1.013339968748545E-001 8.760296496377459E-002 + 7.535843849261852E-002 6.449707031125192E-002 5.491453075120630E-002 4.650680720135462E-002 + 3.917139619162882E-002 3.280837259941739E-002 2.732132429855339E-002 2.261814443114716E-002 + 1.861167736855772E-002 1.522021821228077E-002 1.236786924811644E-002 9.984759999902483E-003 + 8.007140341135236E-003 6.377358442965244E-003 5.043737117252221E-003 3.960363329385881E-003 + 3.086806307484727E-003 2.387779785308013E-003 1.832763529314472E-003 1.395598476719082E-003 + 1.054068625287664E-003 7.894813499369310E-004 5.862561629385572E-004 4.315301700590595E-004 + 3.147866859059152E-004 2.275117312704899E-004 1.628815053314717E-004 1.154824550572763E-004 + 8.106428781869722E-005 5.632521182421245E-005 3.872784999119718E-005 2.634365199119182E-005 + 1.772321243395990E-005 1.178966903194451E-005 7.752276656259718E-006 5.037302342035474E-006 + 3.233532877868274E-006 2.049902227905671E-006 1.283004924529140E-006 7.925415486443343E-007 + 4.830253922907663E-007 2.903515203800256E-007 1.720809257227121E-007 1.005171751699698E-007 + 5.784784914377350E-008 3.278762847469283E-008 1.829535968273231E-008 1.004634573202325E-008 + 5.426692579270066E-009 2.882315384976180E-009 1.504671285540082E-009 7.716948473544253E-010 + 3.886499107914968E-010 1.921236316550417E-010 9.317672185947532E-011 4.431272807876700E-011 + 2.065516411801803E-011 9.431638423750771E-012 4.216747609775289E-012 1.844879280469451E-012 + 7.894419777980194E-013 3.302101401668233E-013 1.349361630200977E-013 5.383659325351248E-014 + 2.095921700256319E-014 7.957032991342374E-015 2.943943073119094E-015 1.060782450956662E-015 + 3.720071294510634E-016 1.268838094267995E-016 4.206158272322672E-017 1.354179327272772E-017 + 4.231133192116461E-018 1.282028886846654E-018 3.764105900205757E-019 1.070046195624007E-019 + 2.942828071276463E-020 7.823208998238751E-021 2.008581467981825E-021 4.976176718343914E-022 + 1.188534041999459E-022 2.734227657782792E-023 6.052746446874368E-024 1.288077987316028E-024 + 2.632510439887305E-025 5.161687827008549E-026 9.699541958817515E-027 1.744942831196463E-027 + 3.001943147001583E-028 4.933142630634477E-029 7.734656987525704E-030 1.155681328381766E-030 + 1.643558570856784E-031 2.221975760133933E-032 2.851962012118391E-033 3.470784071135337E-034 + 3.999499018918921E-035 4.357903575247582E-036 4.483615408850549E-037 4.349375646870142E-038 + 3.972157464892629E-039 3.410073468836826E-040 2.747633070820680E-041 2.074503719347316E-042 + 1.465262036513806E-043 9.665603823430938E-045 5.944341557503335E-046 3.402271984988536E-047 + 1.808984052702434E-048 8.918479337859693E-050 4.069177793103471E-051 1.714868006174902E-052 + 6.661771655120665E-054 2.380611515899988E-055 7.809246443047942E-057 2.346444935569433E-058 + 6.443580367110278E-060 1.613505131844795E-061 3.675574236570598E-063 7.598915909658084E-065 + 1.422273718119077E-066 2.403955110078492E-068 3.659822133867967E-070 5.005350724278081E-072 + 6.132976606986156E-074 6.713699144408180E-076 6.547373807669378E-078 5.671744312389656E-080 + 4.351187413845878E-082 2.947168647980887E-084 1.756866841689789E-086 9.187668173052266E-089 + 4.201116736102730E-091 1.673944831595190E-093 5.791900073501919E-096 1.734014723822701E-098 + 4.475538445829188E-101 9.921270898421806E-104 1.881682067800563E-106 3.041355464010983E-109 + 4.172263976795099E-112 4.837903309340324E-115 4.721444736511893E-118 3.861265576043911E-121 + 2.634378710897821E-124 1.492547143563921E-127 6.989342534828731E-131 2.692206676556550E-134 + 8.487829265689777E-138 2.179209748804696E-141 4.532709025591263E-145 7.597280343761393E-149 + 1.020531608731769E-152 1.092519436333395E-156 9.267681212533228E-161 6.192896734220456E-165 + 3.240218485243340E-169 1.319237297729455E-173 4.153192811973483E-178 1.004440881769056E-182 + 1.853748332175538E-187 2.592918546887013E-192 2.729549906127170E-197 2.147002117300251E-202 + 1.252590964417767E-207 5.379432191066545E-213 1.687507819152724E-218 3.836046918393520E-224 + 6.267724949136879E-230 7.299504112232359E-236 6.007749179660468E-242 3.463766451680559E-248 + 1.386406325733838E-254 3.817027290237983E-261 7.160426868035963E-268 9.063865323962115E-275 + 7.665209750515724E-282 4.286831525390195E-289 1.568931601245358E-296 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + + 2.592723736240702E-014 2.691796888065832E-014 2.794655822878228E-014 2.901445203006264E-014 + 3.012315218614808E-014 3.127421798934844E-014 3.246926831564669E-014 3.370998390151017E-014 + 3.499810970770295E-014 3.633545737342503E-014 3.772390776422786E-014 3.916541361729186E-014 + 4.066200228778474E-014 4.221577860016394E-014 4.382892780843295E-014 4.550371866951470E-014 + 4.724250663406472E-014 4.904773715921229E-014 5.092194914788703E-014 5.286777851957014E-014 + 5.488796191748974E-014 5.698534055747723E-014 5.916286422389470E-014 6.142359541825544E-014 + 6.377071366637193E-014 6.620751999008702E-014 6.873744154988060E-014 7.136403646487876E-014 + 7.409099881704444E-014 7.692216384659051E-014 7.986151334591673E-014 8.291318125966216E-014 + 8.608145949874638E-014 8.937080397657571E-014 9.278584087590702E-014 9.633137315517820E-014 + 1.000123873034609E-013 1.038340603535318E-013 1.078017671629289E-013 1.119210879732308E-013 + 1.161978162581896E-013 1.206379668717596E-013 1.252477845074762E-013 1.300337524810850E-013 + 1.350026018487744E-013 1.401613208738307E-013 1.455171648550359E-013 1.510776663306276E-013 + 1.568506456721709E-013 1.628442220832473E-013 1.690668250184191E-013 1.755272060385417E-013 + 1.822344511190874E-013 1.891979934287951E-013 1.964276265966202E-013 2.039335184856368E-013 + 2.117262254932725E-013 2.198167073979803E-013 2.282163427732349E-013 2.369369449905268E-013 + 2.459907788338599E-013 2.553905777491283E-013 2.651495617526208E-013 2.752814560238478E-013 + 2.858005102088391E-013 2.967215184610529E-013 3.080598402480944E-013 3.198314219534974E-013 + 3.320528193039536E-013 3.447412206535340E-013 3.579144711576404E-013 3.715910978706976E-013 + 3.857903358028773E-013 4.005321549724985E-013 4.158372884921613E-013 4.317272617280974E-013 + 4.482244225737659E-013 4.653519728802618E-013 4.831340010877388E-013 5.015955161037561E-013 + 5.207624824761641E-013 5.406618569100366E-013 5.613216261799756E-013 5.827708464911253E-013 + 6.050396843442528E-013 6.281594589623527E-013 6.521626863384691E-013 6.770831249666717E-013 + 7.029558233204929E-013 7.298171691456313E-013 7.577049406362002E-013 7.866583595665486E-013 + 8.167181464533390E-013 8.479265778254848E-013 8.803275456824896E-013 9.139666192247951E-013 + 9.488911089429835E-013 9.851501331559487E-013 1.022794687091624E-012 1.061877714607429E-012 + 1.102454182651289E-012 1.144581158567957E-012 1.188317890359379E-012 1.233725890011949E-012 + 1.280869020007896E-012 1.329813583142391E-012 1.380628415772795E-012 1.433384984631132E-012 + 1.488157487335938E-012 1.545022956744915E-012 1.604061369295044E-012 1.665355757482656E-012 + 1.728992326641540E-012 1.795060576183404E-012 1.863653425471182E-012 1.934867344502167E-012 + 2.008802489584861E-012 2.085562844200276E-012 2.165256365245831E-012 2.247995134867546E-012 + 2.333895518093999E-012 2.423078326493824E-012 2.515668988086892E-012 2.611797723748109E-012 + 2.711599730352011E-012 2.815215370915591E-012 2.922790372006951E-012 3.034476028697278E-012 + 3.150429417344456E-012 3.270813616507605E-012 3.395797936303113E-012 3.525558156524923E-012 + 3.660276773863810E-012 3.800143258573373E-012 3.945354320943886E-012 4.096114187958443E-012 + 4.252634890520844E-012 4.415136561658975E-012 4.583847746123112E-012 4.759005721814675E-012 + 4.940856833497280E-012 5.129656839259712E-012 5.325671270217807E-012 5.529175803961327E-012 + 5.740456652271029E-012 5.959810963651027E-012 6.187547241242885E-012 6.423985776708943E-012 + 6.669459100695177E-012 6.924312450507294E-012 7.188904255657410E-012 7.463606641964656E-012 + 7.748805954918382E-012 8.044903303040078E-012 8.352315122008395E-012 8.671473760340226E-012 + 9.002828087452125E-012 9.346844124956773E-012 9.704005702082606E-012 1.007481513613844E-011 + 1.045979393897967E-011 1.085948355047038E-011 1.127444609997218E-011 1.170526519693120E-011 + 1.215254675167505E-011 1.261691982757368E-011 1.309903752576369E-011 1.359957790367901E-011 + 1.411924492868085E-011 1.465876946812787E-011 1.521891031727831E-011 1.580045526647122E-011 + 1.640422220908582E-011 1.703106029183892E-011 1.768185110903735E-011 1.835750994246459E-011 + 1.905898704864703E-011 1.978726899530806E-011 2.054338004889149E-011 2.132838361510494E-011 + 2.214338373450860E-011 2.298952663525455E-011 2.386800234515822E-011 2.478004636537091E-011 + 2.572694140800684E-011 2.671001920016738E-011 2.773066235690224E-011 2.879030632573859E-011 + 2.989044140551557E-011 3.103261484236239E-011 3.221843300576691E-011 3.344956364779781E-011 + 3.472773824865470E-011 3.605475445184676E-011 3.743247859242528E-011 3.886284832182284E-011 + 4.034787533299589E-011 4.188964818969725E-011 4.349033526386295E-011 4.515218778524200E-011 + 4.687754300755707E-011 4.866882749565334E-011 5.052856053825270E-011 5.245935769111815E-011 + 5.446393445560954E-011 5.654511009780167E-011 5.870581161354271E-011 6.094907784502151E-011 + 6.327806375463893E-011 6.569604486219271E-011 6.820642185161348E-011 7.081272535373737E-011 + 7.351862091183348E-011 7.632791413687687E-011 7.924455605981451E-011 8.227264868834899E-011 + 8.541645077606331E-011 8.868038381198976E-011 9.206903823905523E-011 9.558717991014626E-011 + 9.923975679086874E-011 1.030319059184401E-010 1.069689606264878E-010 1.110564580459252E-010 + 1.153001468924527E-010 1.197059955516265E-010 1.242802004728859E-010 1.290291948843219E-010 + 1.339596578404600E-010 1.390785236157769E-010 1.443929914571571E-010 1.499105357090182E-010 + 1.556389163253282E-010 1.615861897833143E-010 1.677607204142042E-010 1.741711921669330E-010 + 1.808266208213738E-010 1.877363666682507E-010 1.949101476735792E-010 2.023580531461511E-010 + 2.100905579272685E-010 2.181185371227111E-010 2.264532813976271E-010 2.351065128558798E-010 + 2.440904015261731E-010 2.534175824781422E-010 2.631011735924881E-010 2.731547940101393E-010 + 2.835925832863928E-010 2.944292212769767E-010 3.056799487839909E-010 3.173605889907765E-010 + 3.294875697158485E-010 3.420779465171953E-010 3.551494266794432E-010 3.687203941176109E-010 + 3.828099352324886E-010 3.974378657540002E-010 4.126247586103032E-010 4.283919728618215E-010 + 4.447616837409025E-010 4.617569138393490E-010 4.794015654876846E-010 4.977204543716989E-010 + 5.167393444335405E-010 5.364849841064514E-010 5.569851439340996E-010 5.782686556274188E-010 + 6.003654526138849E-010 6.233066121362651E-010 6.471243989600255E-010 6.718523107509047E-010 + 6.975251251864306E-010 7.241789488676717E-010 7.518512681000019E-010 7.805810016142804E-010 + 8.104085553026286E-010 8.413758790457523E-010 8.735265257117472E-010 9.069057124093670E-010 + 9.415603840818851E-010 9.775392795310147E-010 1.014892999963708E-009 1.053674080158277E-009 + 1.093937062349900E-009 1.135738572939426E-009 1.179137402133386E-009 1.224194586627175E-009 + 1.270973495447737E-009 1.319539919076450E-009 1.369962161977560E-009 1.422311138662318E-009 + 1.476660473423880E-009 1.533086603883286E-009 1.591668888492130E-009 1.652489718143072E-009 + 1.715634632045248E-009 1.781192438027440E-009 1.849255337438290E-009 1.919919054819181E-009 + 1.993282972532137E-009 2.069450270532126E-009 2.148528071480296E-009 2.230627591402282E-009 + 2.315864296103430E-009 2.404358063560912E-009 2.496233352521190E-009 2.591619377539848E-009 + 2.690650290710022E-009 2.793465370335044E-009 2.900209216810536E-009 3.011031955991602E-009 + 3.126089450330942E-009 3.245543518085023E-009 3.369562160896469E-009 3.498319800072759E-009 + 3.631997521893607E-009 3.770783332291913E-009 3.914872421266577E-009 4.064467437398946E-009 + 4.219778772859039E-009 4.381024859302366E-009 4.548432475073446E-009 4.722237064148126E-009 + 4.902683067263239E-009 5.090024265699334E-009 5.284524138199795E-009 5.486456231528624E-009 + 5.696104545187752E-009 5.913763930835076E-009 6.139740506964991E-009 6.374352089434408E-009 + 6.617928638440074E-009 6.870812722575510E-009 7.133360000620332E-009 7.405939721739702E-009 + 7.688935244796905E-009 7.982744577510009E-009 8.287780936210373E-009 8.604473326990507E-009 + 8.933267149058594E-009 9.274624821147890E-009 9.629026431862486E-009 9.996970414873669E-009 + 1.037897424991655E-008 1.077557519057303E-008 1.118733101986418E-008 1.161482083471519E-008 + 1.205864586039584E-008 1.251943029608183E-008 1.299782219272659E-008 1.349449436447736E-008 + 1.401014533491827E-008 1.454550031947043E-008 1.510131224533108E-008 1.567836281038604E-008 + 1.627746358258457E-008 1.689945714132293E-008 1.754521826244183E-008 1.821565514850408E-008 + 1.891171070608308E-008 1.963436387185765E-008 2.038463098937920E-008 2.116356723844671E-008 + 2.197226811909981E-008 2.281187099231753E-008 2.368355667958825E-008 2.458855112360196E-008 + 2.552812711239906E-008 2.650360606940097E-008 2.751635991184014E-008 2.856781298020213E-008 + 2.965944404139442E-008 3.079278836845822E-008 3.196943989974802E-008 3.319105348061625E-008 + 3.445934719075403E-008 3.577610476046277E-008 3.714317807925322E-008 3.856248980030068E-008 + 4.003603604441911E-008 4.156588920735536E-008 4.315420087435369E-008 4.480320484608756E-008 + 4.651522028021470E-008 4.829265495297334E-008 5.013800864540698E-008 5.205387665897781E-008 + 5.404295346551532E-008 5.610803649663125E-008 5.825203007792994E-008 6.047794951354812E-008 + 6.278892532676543E-008 6.518820766265208E-008 6.767917085894300E-008 7.026531819156689E-008 + 7.295028680150460E-008 7.573785280990216E-008 7.863193662863590E-008 8.163660847379458E-008 + 8.475609408983227E-008 8.799478069244332E-008 9.135722313851314E-008 9.484815033182482E-008 + 9.847247187352669E-008 1.022352849667146E-007 1.061418815848375E-007 1.101977559140056E-007 + 1.144086120796690E-007 1.187803721685297E-007 1.233191845569680E-007 1.280314325576971E-007 + 1.329237433967982E-007 1.380029975337680E-007 1.432763383376773E-007 1.487511821330495E-007 + 1.544352286295876E-007 1.603364717504086E-007 1.664632108740200E-007 1.728240625058384E-007 + 1.794279723956684E-007 1.862842281181759E-007 1.934024721340455E-007 2.007927153501918E-007 + 2.084653511980867E-007 2.164311702499996E-007 2.247013753937067E-007 2.332875975869956E-007 + 2.422019122141286E-007 2.514568560672570E-007 2.610654449766622E-007 2.710411921146184E-007 + 2.813981269986022E-007 2.921508152205809E-007 3.033143789301071E-007 3.149045181000293E-007 + 3.269375326047113E-007 3.394303451417992E-007 3.524005250297753E-007 3.658663129147434E-007 + 3.798466464211915E-007 3.943611867827936E-007 4.094303464906825E-007 4.250753179980785E-007 + 4.413181035216228E-007 4.581815459813068E-007 4.756893611225135E-007 4.938661708653002E-007 + 5.127375379278403E-007 5.323300017726710E-007 5.526711159262974E-007 5.737894867246140E-007 + 5.957148135385979E-007 6.184779305368413E-007 6.421108500436212E-007 6.666468075534533E-007 + 6.921203084654174E-007 7.185671766029325E-007 7.460246045872046E-007 7.745312061351421E-007 + 8.041270703552526E-007 8.348538181178541E-007 8.667546605787970E-007 8.998744599390154E-007 + 9.342597925252535E-007 9.699590142806587E-007 1.007022328757296E-006 1.045501857706111E-006 + 1.085451714363593E-006 1.126928079538125E-006 1.169989280602938E-006 1.214695873506721E-006 + 1.261110727917090E-006 1.309299115616640E-006 1.359328802275739E-006 1.411270142731068E-006 + 1.465196179903815E-006 1.521182747496452E-006 1.579308576612500E-006 1.639655406449038E-006 + 1.702308099217503E-006 1.767354759454303E-006 1.834886857888792E-006 1.904999360042745E-006 + 1.977790859741961E-006 2.053363717727582E-006 2.131824205561890E-006 2.213282655030690E-006 + 2.297853613252285E-006 2.385656003710806E-006 2.476813293440219E-006 2.571453666593854E-006 + 2.669710204643121E-006 2.771721073458767E-006 2.877629717537269E-006 2.987585061645210E-006 + 3.101741720164925E-006 3.220260214435287E-006 3.343307198393027E-006 3.471055692831384E-006 + 3.603685328605053E-006 3.741382599123037E-006 3.884341122483800E-006 4.032761913620984E-006 + 4.186853666841678E-006 4.346833049153960E-006 4.512925004795613E-006 4.685363071391391E-006 + 4.864389708182808E-006 5.050256636791227E-006 5.243225194992405E-006 5.443566703999340E-006 + 5.651562849768642E-006 5.867506078865817E-006 6.091700009444942E-006 6.324459857919479E-006 + 6.566112881923047E-006 6.816998840181506E-006 7.077470469941899E-006 7.347893982627906E-006 + 7.628649578417218E-006 7.920131980462824E-006 8.222750989507374E-006 8.536932059668809E-006 + 8.863116896204786E-006 9.201764076094057E-006 9.553349692305513E-006 9.918368022657761E-006 + 1.029733222420772E-005 1.069077505414143E-005 1.109924961817770E-005 1.152333014753429E-005 + 1.196361280554472E-005 1.242071652505746E-005 1.289528387779026E-005 1.338798197685816E-005 + 1.389950341374012E-005 1.443056723099651E-005 1.498191993210073E-005 1.555433652979939E-005 + 1.614862163446936E-005 1.676561058399636E-005 1.740617061675677E-005 1.807120208934579E-005 + 1.876163974075662E-005 1.947845400478022E-005 2.022265237246326E-005 2.099528080653036E-005 + 2.179742520975095E-005 2.263021294930463E-005 2.349481443927813E-005 2.439244478350764E-005 + 2.532436548106376E-005 2.629188619676518E-005 2.729636659919603E-005 2.833921826879686E-005 + 2.942190667869685E-005 3.054595325105510E-005 3.171293749178540E-005 3.292449920664672E-005 + 3.418234080179539E-005 3.548822967201255E-005 3.684400067994115E-005 3.825155872979526E-005 + 3.971288143913413E-005 4.123002191242957E-005 4.280511162029838E-005 4.444036338841481E-005 + 4.613807450027464E-005 4.790062991813636E-005 4.973050562663097E-005 5.163027210370179E-005 + 5.360259792371045E-005 5.565025349773111E-005 5.777611495624222E-005 5.998316817962309E-005 + 6.227451298206852E-005 6.465336745474261E-005 6.712307247421943E-005 6.968709638247965E-005 + 7.234903984497422E-005 7.511264089351032E-005 7.798178016096666E-005 8.096048631511657E-005 + 8.405294169910476E-005 8.726348818641182E-005 9.059663325843645E-005 9.405705631312686E-005 + 9.764961521341890E-005 1.013793530845587E-004 1.052515053697356E-004 1.092715071538056E-004 + 1.134450007652469E-004 1.177778436668799E-004 1.222761166462730E-004 1.269461323171664E-004 + 1.317944439436770E-004 1.368278545994776E-004 1.420534266746151E-004 1.474784917430974E-004 + 1.531106608048709E-004 1.589578349163288E-004 1.650282162240063E-004 1.713303194166822E-004 + 1.778729836116639E-004 1.846653846916271E-004 1.917170481089936E-004 1.990378621754597E-004 + 2.066380918549530E-004 2.145283930789688E-004 2.227198276039454E-004 2.312238784310764E-004 + 2.400524658097001E-004 2.492179638462144E-004 2.587332177412641E-004 2.686115616787946E-004 + 2.788668373914520E-004 2.895134134276972E-004 3.005662051469654E-004 3.120406954701541E-004 + 3.239529564137455E-004 3.363196714369136E-004 3.491581586320348E-004 3.624863947901700E-004 + 3.763230403742241E-004 3.906874654336949E-004 4.055997764961995E-004 4.210808444722015E-004 + 4.371523336107651E-004 4.538367315454989E-004 4.711573804713029E-004 4.891385094940286E-004 + 5.078052681966646E-004 5.271837614673058E-004 5.473010856357550E-004 5.681853659673481E-004 + 5.898657955643547E-004 6.123726757270997E-004 6.357374578289003E-004 6.599927867608123E-004 + 6.851725460042382E-004 7.113119043915248E-004 7.384473646168404E-004 7.666168135619036E-004 + 7.958595745033820E-004 8.262164612712075E-004 8.577298344295988E-004 8.904436595549677E-004 + 9.244035676877645E-004 9.596569180378349E-004 9.962528630258075E-004 1.034242415745999E-003 + 1.073678519939129E-003 1.114616122566564E-003 1.157112249080718E-003 1.201226081489771E-003 + 1.247019039318293E-003 1.294554863568688E-003 1.343899703792399E-003 1.395122208383212E-003 + 1.448293618209128E-003 1.503487863703317E-003 1.560781665538529E-003 1.620254639014057E-003 + 1.681989402288288E-003 1.746071688594759E-003 1.812590462584250E-003 1.881638040940041E-003 + 1.953310217418864E-003 2.027706392474731E-003 2.104929707628383E-003 2.185087184750582E-003 + 2.268289870432650E-003 2.354652985623979E-003 2.444296080721613E-003 2.537343196303323E-003 + 2.633923029702014E-003 2.734169107625156E-003 2.838219965030235E-003 2.946219330473314E-003 + 3.058316318155141E-003 3.174665626896354E-003 3.295427746280185E-003 3.420769170209302E-003 + 3.550862618130248E-003 3.685887264187348E-003 3.826028974575989E-003 3.971480553372750E-003 + 4.122441997129273E-003 4.279120758524301E-003 4.441732019377680E-003 4.610498973339181E-003 + 4.785653118573230E-003 4.967434560771220E-003 5.156092326831155E-003 5.351884689554966E-003 + 5.555079503723406E-003 5.765954553917658E-003 5.984797914468066E-003 6.211908321919348E-003 + 6.447595560412627E-003 6.692180860395357E-003 6.945997311079339E-003 7.209390287079783E-003 + 7.482717889676682E-003 7.766351403152187E-003 8.060675766668121E-003 8.366090062157237E-003 + 8.683008018714921E-003 9.011858533986150E-003 9.353086213055009E-003 9.707151925354205E-003 + 1.007453338012121E-002 1.045572572094019E-002 1.085124213991631E-002 1.126161451204052E-002 + 1.168739405031246E-002 1.212915198219621E-002 1.258748024799545E-002 1.306299222173970E-002 + 1.355632345518304E-002 1.406813244552383E-002 1.459910142745811E-002 1.514993719018901E-002 + 1.572137192001488E-002 1.631416406912616E-002 1.692909925124311E-002 1.756699116472606E-002 + 1.822868254379477E-002 1.891504613848777E-002 1.962698572399342E-002 2.036543713998064E-002 + 2.113136936054776E-002 2.192578559540648E-002 2.274972442290136E-002 2.360426095545793E-002 + 2.449050803803777E-002 2.540961748015712E-002 2.636278132201287E-002 2.735123313522943E-002 + 2.837624935871746E-002 2.943915067010628E-002 3.054130339317231E-002 3.168412094165528E-002 + 3.286906529980411E-002 3.409764853995122E-002 3.537143437736221E-002 3.669203976254368E-002 + 3.806113651113759E-002 3.948045297145041E-002 4.095177572959518E-002 4.247695135214016E-002 + 4.405788816605975E-002 4.569655807569461E-002 4.739499841630823E-002 4.915531384371655E-002 + 5.097967825934203E-002 5.287033676989577E-002 5.482960768075802E-002 5.685988452195249E-002 + 5.896363810544736E-002 6.114341861233191E-002 6.340185770820633E-002 6.574167068492842E-002 + 6.816565862661354E-002 7.067671059755135E-002 7.327780584944180E-002 7.597201604506150E-002 + 7.876250749519316E-002 8.165254340531104E-002 8.464548612819907E-002 8.774479941830036E-002 + 9.095405068322296E-002 9.427691322742633E-002 9.771716848266314E-002 1.012787082193196E-001 + 1.049655367322916E-001 1.087817729945317E-001 1.127316527708700E-001 1.168195306841184E-001 + 1.210498822248906E-001 1.254273056959149E-001 1.299565240809580E-001 1.346423868277816E-001 + 1.394898715337896E-001 1.445040855222854E-001 1.496902672964062E-001 1.550537878569785E-001 + 1.606001518696396E-001 1.663349986656258E-001 1.722641030596804E-001 1.783933759674996E-001 + 1.847288648040871E-001 1.912767536433111E-001 1.980433631177747E-001 2.050351500369917E-001 + 2.122587067005838E-001 2.197207598819869E-001 2.274281694568627E-001 2.353879266490315E-001 + 2.436071518654304E-001 2.520930920901349E-001 2.608531178060824E-001 2.698947194116688E-001 + 2.792255030978592E-001 2.888531861500067E-001 2.987855916369795E-001 3.090306424487042E-001 + 3.195963546416902E-001 3.304908300505221E-001 3.417222481218471E-001 3.532988569258130E-001 + 3.652289632984769E-001 3.775209220672817E-001 3.901831243102541E-001 4.032239845983646E-001 + 4.166519271691545E-001 4.304753709786794E-001 4.447027135777881E-001 4.593423137578207E-001 + 4.744024729101912E-001 4.898914150436605E-001 5.058172654028403E-001 5.221880276313644E-001 + 5.390115594232227E-001 5.562955466063263E-001 5.740474756030043E-001 5.922746042133181E-001 + 6.109839306686035E-001 6.301821609045010E-001 6.498756740052761E-001 6.700704857740439E-001 + 6.907722103870660E-001 7.119860200944244E-001 7.337166029340100E-001 7.559681184314213E-001 + 7.787441512644147E-001 8.020476628777263E-001 8.258809410420144E-001 8.502455473593987E-001 + 8.751422627281220E-001 9.005710307895506E-001 9.265308993928499E-001 9.530199601258259E-001 + 9.800352859746611E-001 1.007572867191106E+000 1.035627545462434E+000 1.064192946497910E+000 + 1.093261411165212E+000 1.122823925331302E+000 1.152870048585008E+000 1.183387842042499E+000 + 1.214363795462525E+000 1.245782753925377E+000 1.277627844357902E+000 1.309880402217114E+000 + 1.342519898676066E+000 1.375523868688481E+000 1.408867840342526E+000 1.442525265949016E+000 + 1.476467455345537E+000 1.510663511934547E+000 1.545080272011092E+000 1.579682247973516E+000 + 1.614431576048320E+000 1.649287969198229E+000 1.684208675919393E+000 1.719148445670061E+000 + 1.754059501707808E+000 1.788891522145281E+000 1.823591630065200E+000 1.858104393562754E+000 + 1.892371836607716E+000 1.926333461638372E+000 1.959926284814011E+000 1.993084884861977E+000 + 2.025741466457571E+000 2.057825939070258E+000 2.089266012196462E+000 2.119987307876608E+000 + 2.149913491361731E+000 2.178966420751119E+000 2.207066316366846E+000 2.234131950562443E+000 + 2.260080858580265E+000 2.284829570975073E+000 2.308293868008390E+000 2.330389056289221E+000 + 2.351030267790928E+000 2.370132781210651E+000 2.387612365456991E+000 2.403385644852819E+000 + 2.417370485423791E+000 2.429486401409276E+000 2.439654980881820E+000 2.447800329094706E+000 + 2.453849527896027E+000 2.457733109253379E+000 2.459385540628053E+000 2.458745719623628E+000 + 2.455757475014277E+000 2.450370070935992E+000 2.442538710703337E+000 2.432225036399360E+000 + 2.419397620081869E+000 2.404032442160416E+000 2.386113352230948E+000 2.365632507414987E+000 + 2.342590783043863E+000 2.316998150362812E+000 2.288874015810935E+000 2.258247516369005E+000 + 2.225157765463667E+000 2.189654043981403E+000 2.151795931084838E+000 2.111653369743083E+000 + 2.069306662193108E+000 2.024846390944015E+000 1.978373261424499E+000 1.929997862958038E+000 + 1.879840345430152E+000 1.828030009787738E+000 1.774704811377596E+000 1.720010776085970E+000 + 1.664101330275565E+000 1.607136546621214E+000 1.549282309108984E+000 1.490709401670768E+000 + 1.431592526160924E+000 1.372109256624549E+000 1.312438938035885E+000 1.252761538878780E+000 + 1.193256468072668E+000 1.134101367791908E+000 1.075470894657498E+000 1.017535502569813E+000 + 9.604602410750828E-001 9.044035835900163E-001 8.495163000266905E-001 7.959403883436189E-001 + 7.438080792813069E-001 6.932409280116594E-001 6.443490056319312E-001 5.972302023658362E-001 + 5.519696530026228E-001 5.086392935211906E-001 4.672975560316402E-001 4.279892071467061E-001 + 3.907453327050357E-001 3.555834694476551E-001 3.225078818440681E-001 2.915099798275904E-001 + 2.625688707849917E-001 2.356520368113991E-001 2.107161260460493E-001 1.877078449044828E-001 + 1.665649362735013E-001 1.472172272852439E-001 1.295877291795895E-001 1.135937710340653E-001 + 9.914814881171941E-002 8.616027126378574E-002 7.453728472601306E-002 6.418515975409232E-002 + 5.500972383047788E-002 4.691762600562471E-002 3.981722126406567E-002 3.361936457244999E-002 + 2.823810690792893E-002 2.359128801074342E-002 1.960102308122879E-002 1.619408307556090E-002 + 1.330217057565001E-002 1.086209535156457E-002 8.815855642454046E-003 7.110632806920729E-003 + 5.698708300832972E-003 4.537312907106439E-003 3.588418759004464E-003 2.818484970285961E-003 + 2.198167628929151E-003 1.702004554390503E-003 1.308084599046496E-003 9.977104375849381E-004 + 7.550627834442418E-004 5.668728510072149E-004 4.221086979804768E-004 3.116798834651941E-004 + 2.281637082768680E-004 1.655552034614729E-004 1.190420316162627E-004 8.480458640640047E-005 + 5.984083316859953E-005 4.181483436787465E-005 2.892744734394212E-005 1.980736146269933E-005 + 1.342044572421102E-005 8.995290710173124E-006 5.962832880617959E-006 3.908026102091767E-006 + 2.531656550526689E-006 1.620565555121851E-006 1.024735143967585E-006 6.398899277620725E-007 + 3.944659591456832E-007 2.399843417034529E-007 1.440390740545245E-007 8.526151097305102E-008 + 4.975634856785027E-008 2.861609534058115E-008 1.621355713353024E-008 9.046652390905894E-009 + 4.969018441620662E-009 2.685675878221742E-009 1.427774675198157E-009 7.462891920313007E-010 + 3.833626050053672E-010 1.934534419070485E-010 9.585426867030291E-011 4.661373963871042E-011 + 2.223709491235150E-011 1.040142116450449E-011 4.768056700857157E-012 2.140929313135670E-012 + 9.411262905540638E-013 4.048040561836376E-013 1.702762138239962E-013 7.000515883615682E-014 + 2.811393135452061E-014 1.102226292971336E-014 4.216122838416051E-015 1.572454204070268E-015 + 5.714616813014688E-016 2.022346853597859E-016 6.964524044018085E-017 2.332356660025368E-017 + 7.590302347101069E-018 2.398661009329612E-018 7.355318542764562E-019 2.186884545547297E-019 + 6.299448843103762E-020 1.756643187238340E-020 4.738185158799467E-021 1.235156826492972E-021 + 3.109128350786586E-022 7.550523192926826E-023 1.767432860252090E-023 3.984115704703459E-024 + 8.640313802995474E-025 1.800986955606446E-025 3.604452103833278E-026 6.919404491520161E-027 + 1.272743136108499E-027 2.240709776444240E-028 3.771564851093186E-029 6.062542638344415E-030 + 9.295631868891568E-031 1.357921671461231E-031 1.887599621285668E-032 2.493667771101963E-033 + 3.126808071920076E-034 3.716413107998998E-035 4.181369513523143E-036 4.447149267244411E-037 + 4.464727669028647E-038 4.224975635017154E-039 3.762870023907097E-040 3.149295011296887E-041 + 2.472993996328839E-042 1.819062133604248E-043 1.251319417118230E-044 8.036153911399444E-046 + 4.809858521182351E-047 2.678217297069582E-048 1.384824129633281E-049 6.636887924033981E-051 + 2.942527493432871E-052 1.204499871241959E-053 4.543028893488042E-055 1.575566954469887E-056 + 5.013698128053387E-058 1.460708063463862E-059 3.887609387351574E-061 9.430207242031073E-063 + 2.079981938241149E-064 4.161520902470911E-066 7.534020500816102E-068 1.231075217609531E-069 + 1.810916819345313E-071 2.391734996122860E-073 2.828417560372138E-075 2.986587062575937E-077 + 2.807776585159926E-079 2.343303964935234E-081 1.730868550085939E-083 1.128045065147996E-085 + 6.466052927516411E-088 3.249310363753451E-090 1.426708463214490E-092 5.454911566879839E-095 + 1.809786736965350E-097 5.191520373560658E-100 1.282891651276793E-102 2.720657955320501E-105 + 4.932479031003096E-108 7.614477582298048E-111 9.968530176335440E-114 1.102113038435032E-116 + 1.024630126487073E-119 7.975336297107609E-123 5.173905601719996E-126 2.784664435779280E-129 + 1.237538356776099E-132 4.519292793906164E-136 1.349427569470519E-139 3.277801108937466E-143 + 6.443178083117055E-147 1.019472085534617E-150 1.291286031412976E-154 1.301953058518524E-158 + 1.038929030438009E-162 6.522627110920105E-167 3.202349042326292E-171 1.221858210454030E-175 + 3.600038401818814E-180 8.137398966423014E-185 1.401658678890381E-189 1.827213856751537E-194 + 1.790043425521030E-199 1.308349912999648E-204 7.081903020942668E-210 2.817343517926999E-215 + 8.173495840956411E-221 1.715468894867054E-226 2.583483423204172E-232 2.768388974107211E-238 + 2.092693051758359E-244 1.106126034120398E-250 4.051267401775343E-257 1.018665026890900E-263 + 1.741770597495918E-270 2.005532879977480E-277 1.539574678128985E-284 7.799139618530883E-292 + 2.579868560672377E-299 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + + 3.466482385192015E-024 3.690051290948483E-024 3.928039152310313E-024 4.181375912017192E-024 + 4.451051488962693E-024 4.738119646323711E-024 5.043702109163058E-024 5.368992947594510E-024 + 5.715263242637671E-024 6.083866052994812E-024 6.476241702156985E-024 6.893923406499436E-024 + 7.338543266357891E-024 7.811838643496103E-024 8.315658949884708E-024 8.851972874318630E-024 + 9.422876075111296E-024 1.003059936892515E-023 1.067751744773608E-023 1.136615815799412E-023 + 1.209921237823810E-023 1.287954453376223E-023 1.371020378942006E-023 1.459443596430236E-023 + 1.553569621484597E-023 1.653766253593232E-023 1.760425013273254E-023 1.873962671945674E-023 + 1.994822880478754E-023 2.123477902763478E-023 2.260430461094898E-023 2.406215700570448E-023 + 2.561403280181062E-023 2.726599598766006E-023 2.902450164529592E-023 3.089642117378434E-023 + 3.288906913935603E-023 3.501023185723249E-023 3.726819781682217E-023 3.967179006917300E-023 + 4.223040070323528E-023 4.495402754565414E-023 4.785331322749400E-023 5.093958677055022E-023 + 5.422490785574918E-023 5.772211394661194E-023 6.144487045192260E-023 6.540772412361002E-023 + 6.962615989849638E-023 7.411666140602572E-023 7.889677537840170E-023 8.398518021482692E-023 + 8.940175896775238E-023 9.516767703633693E-023 1.013054648707053E-022 1.078391060101699E-022 + 1.147941307994325E-022 1.221977161489597E-022 1.300787917293522E-022 1.384681530146612E-022 + 1.473985816163700E-022 1.569049733782552E-022 1.670244747326525E-022 1.777966278509479E-022 + 1.892635251554744E-022 2.014699737965615E-022 2.144636707374516E-022 2.282953891312178E-022 + 2.430191767179632E-022 2.586925670175416E-022 2.753768041430300E-022 2.931370821134348E-022 + 3.120427996007359E-022 3.321678311067020E-022 3.535908156291174E-022 3.763954639453652E-022 + 4.006708857141110E-022 4.265119376732308E-022 4.540195942945683E-022 4.833013423438884E-022 + 5.144716008877319E-022 5.476521683884139E-022 5.829726986341540E-022 6.205712073640703E-022 + 6.605946115676831E-022 7.031993035662284E-022 7.485517621190536E-022 7.968292029429904E-022 + 8.482202711866003E-022 9.029257785652122E-022 9.611594880370283E-022 1.023148949086548E-021 + 1.089136386879104E-021 1.159379648760955E-021 1.234153211803404E-021 1.313749255327886E-021 + 1.398478802603021E-021 1.488672936174788E-021 1.584684091578749E-021 1.686887434489569E-021 + 1.795682326689017E-021 1.911493886580791E-021 2.034774650349918E-021 2.166006340257695E-021 + 2.305701746981925E-021 2.454406733357551E-021 2.612702367347564E-021 2.781207192578674E-021 + 2.960579645313921E-021 3.151520627306729E-021 3.354776244589604E-021 3.571140722899723E-021 + 3.801459511133190E-021 4.046632584954928E-021 4.307617963473175E-021 4.585435452719827E-021 + 4.881170630564675E-021 5.195979088634472E-021 5.531090947812225E-021 5.887815664961321E-021 + 6.267547149656502E-021 6.671769210915763E-021 7.102061355216317E-021 7.560104958450269E-021 + 8.047689835937580E-021 8.566721236167957E-021 9.119227285600789E-021 9.707366913613176E-021 + 1.033343828856320E-020 1.099988779793280E-020 1.170931960763951E-020 1.246450583787149E-020 + 1.326839739520712E-020 1.412413550334616E-020 1.503506397750990E-020 1.600474229047103E-020 + 1.703695948127081E-020 1.813574896097116E-020 1.930540427329561E-020 2.055049587174465E-020 + 2.187588897874123E-020 2.328676259659313E-020 2.478862974455629E-020 2.638735900107682E-020 + 2.808919743538874E-020 2.990079501807141E-020 3.182923060595408E-020 3.388203960290170E-020 + 3.606724340456835E-020 3.839338074217513E-020 4.086954104778577E-020 4.350539997145969E-020 + 4.631125718906371E-020 4.929807664847767E-020 5.247752941145876E-020 5.586203925856605E-020 + 5.946483123535249E-020 6.329998332951572E-020 6.738248148093883E-020 7.172827813957540E-020 + 7.635435459998981E-020 8.127878735613443E-020 8.652081873563848E-020 9.210093208961922E-020 + 9.804093183181944E-020 1.043640286398208E-019 1.110949301512723E-019 1.182599375095134E-019 + 1.258870481358588E-019 1.340060651301298E-019 1.426487137269018E-019 1.518487652625506E-019 + 1.616421691374696E-019 1.720671932891291E-019 1.831645737248688E-019 1.949776736987151E-019 + 2.075526531542406E-019 2.209386490955276E-019 2.351879675910715E-019 2.503562881608734E-019 + 2.665028813453498E-019 2.836908403062570E-019 3.019873273645672E-019 3.214638364386816E-019 + 3.421964724084601E-019 3.642662484966563E-019 3.877594028298446E-019 4.127677354157348E-019 + 4.393889668536755E-019 4.677271201800012E-019 4.978929273402533E-019 5.300042618766571E-019 + 5.641865995214950E-019 6.005735084962180E-019 6.393071714321477E-019 6.805389409521142E-019 + 7.244299310841120E-019 7.711516468177709E-019 8.208866542637834E-019 8.738292940348937E-019 + 9.301864406359552E-019 9.901783108305211E-019 1.054039324142504E-018 1.122019018855478E-018 + 1.194383027088868E-018 1.271414112761042E-018 1.353413276495430E-018 1.440700931786799E-018 + 1.533618157023822E-018 1.632528028260151E-018 1.737817037941743E-018 1.849896605134390E-018 + 1.969204683152372E-018 2.096207470870344E-018 2.231401234405358E-018 2.375314246287117E-018 + 2.528508849694210E-018 2.691583655821856E-018 2.865175882967834E-018 3.049963846476510E-018 + 3.246669609270199E-018 3.456061803325459E-018 3.678958633118573E-018 3.916231072776825E-018 + 4.168806269428313E-018 4.437671166048594E-018 4.723876357961421E-018 5.028540198061744E-018 + 5.352853166803189E-018 5.698082524025462E-018 6.065577260798428E-018 6.456773370633243E-018 + 6.873199460656736E-018 7.316482724675741E-018 7.788355301470897E-018 8.290661043164688E-018 + 8.825362720112379E-018 9.394549690467638E-018 1.000044606439288E-017 1.064541939481611E-017 + 1.133198992869243E-017 1.206284045492176E-017 1.284082678740135E-017 1.366898892417768E-017 + 1.455056292630136E-017 1.548899356280215E-017 1.648794777119481E-017 1.755132898611248E-017 + 1.868329239205729E-017 1.988826115986904E-017 2.117094373035514E-017 2.253635221261923E-017 + 2.398982196897926E-017 2.553703246300393E-017 2.718402945213204E-017 2.893724861159157E-017 + 3.080354068193079E-017 3.279019823842474E-017 3.490498418695992E-017 3.715616209774480E-017 + 3.955252849537581E-017 4.210344723143306E-017 4.481888607391675E-017 4.770945565649929E-017 + 5.078645093978675E-017 5.406189534660096E-017 5.754858774374179E-017 6.126015245381100E-017 + 6.521109249252046E-017 6.941684623951090E-017 7.389384776412064E-017 7.865959104183321E-017 + 8.373269831232519E-017 8.913299284622868E-017 9.488157640494515E-017 1.010009116961820E-016 + 1.075149101474162E-016 1.144490253402528E-016 1.218303524707801E-016 1.296877342245640E-016 + 1.380518734799852E-016 1.469554532803179E-016 1.564332645433318E-016 1.665223420074556E-016 + 1.772621089457076E-016 1.886945312128633E-016 2.008642812278105E-016 2.138189125318450E-016 + 2.276090456050033E-016 2.422885656665114E-016 2.579148332322522E-016 2.745489082520199E-016 + 2.922557887023625E-016 3.111046645673376E-016 3.311691881996048E-016 3.525277621182851E-016 + 3.752638453681887E-016 3.994662796374769E-016 4.252296364081006E-016 4.526545864954979E-016 + 4.818482934215174E-016 5.129248321577054E-016 5.460056348751728E-016 5.812199654428388E-016 + 6.187054245281487E-016 6.586084872739344E-016 7.010850756524452E-016 7.463011677329693E-016 + 7.944334462438032E-016 8.456699889628362E-016 9.002110036344180E-016 9.582696102842656E-016 + 1.020072673989239E-015 1.085861691356112E-015 1.155893734173225E-015 1.230442453922333E-015 + 1.309799151075837E-015 1.394273913357627E-015 1.484196827415354E-015 1.579919268638713E-015 + 1.681815274163717E-015 1.790283004428008E-015 1.905746298988211E-015 2.028656332678704E-015 + 2.159493378583278E-015 2.298768684708519E-015 2.447026471691879E-015 2.604846059350743E-015 + 2.772844130381768E-015 2.951677140055994E-015 3.142043881325680E-015 3.344688215365828E-015 + 3.560401978220271E-015 3.790028074909801E-015 4.034463773092664E-015 4.294664209147560E-015 + 4.571646120378732E-015 4.866491817927286E-015 5.180353415912429E-015 5.514457333328273E-015 + 5.870109086287296E-015 6.248698389335885E-015 6.651704585775777E-015 7.080702428210022E-015 + 7.537368231900976E-015 8.023486424984798E-015 8.540956521136806E-015 9.091800541933963E-015 + 9.678170917917020E-015 1.030235889922543E-014 1.096680350867021E-014 1.167410107222778E-014 + 1.242701536419598E-014 1.322848840665394E-014 1.408165196542460E-014 1.498983978746024E-014 + 1.595660062746830E-014 1.698571211467892E-014 1.808119551393868E-014 1.924733143880850E-014 + 2.048867657806553E-014 2.181008150096570E-014 2.321670961084280E-014 2.471405732110335E-014 + 2.630797553245481E-014 2.800469249528976E-014 2.981083814655835E-014 3.173347001622720E-014 + 3.378010080455152E-014 3.595872773791869E-014 3.827786381797114E-014 4.074657108611095E-014 + 4.337449603336973E-014 4.617190729400404E-014 4.914973577010328E-014 5.231961734399696E-014 + 5.569393834535540E-014 5.928588395064878E-014 6.310948970407973E-014 6.717969636130769E-014 + 7.151240827026506E-014 7.612455551718047E-014 8.103416008064962E-014 8.626040625224147E-014 + 9.182371559880676E-014 9.774582675939982E-014 1.040498803886187E-013 1.107605095782669E-013 + 1.179039361106645E-013 1.255080729197054E-013 1.336026331600229E-013 1.422192463104464E-013 + 1.513915817654104E-013 1.611554803972469E-013 1.715490946034279E-013 1.826130373859820E-013 + 1.943905410456076E-013 2.069276261105520E-013 2.202732811603537E-013 2.344796542470780E-013 + 2.496022566620116E-013 2.657001798440245E-013 2.828363262771323E-013 3.010776552794862E-013 + 3.204954446441775E-013 3.411655691541934E-013 3.631687970597971E-013 3.865911056767708E-013 + 4.115240173387129E-013 4.380649570160559E-013 4.663176329991793E-013 4.963924421330927E-013 + 5.284069011870629E-013 5.624861060447540E-013 5.987632205090640E-013 6.373799966316161E-013 + 6.784873286000276E-013 7.222458423471595E-013 7.688265231861951E-013 8.184113839239090E-013 + 8.711941760626933E-013 9.273811468702413E-013 9.871918452749901E-013 1.050859979736270E-012 + 1.118634331441096E-012 1.190779726395758E-012 1.267578070210529E-012 1.349329449620609E-012 + 1.436353305047395E-012 1.528989678781554E-012 1.627600543664939E-012 1.732571217462911E-012 + 1.844311868453329E-012 1.963259118115099E-012 2.089877747178273E-012 2.224662511701805E-012 + 2.368140076274768E-012 2.520871071894504E-012 2.683452286562471E-012 2.856518997156794E-012 + 3.040747451692788E-012 3.236857511670201E-012 3.445615464831216E-012 3.667837019319487E-012 + 3.904390490938835E-012 4.156200195964746E-012 4.424250062765295E-012 4.709587476342240E-012 + 5.013327370814072E-012 5.336656585830533E-012 5.680838503940031E-012 6.047217987028696E-012 + 6.437226631118159E-012 6.852388360053490E-012 7.294325379936199E-012 7.764764517566881E-012 + 8.265543967662384E-012 8.798620475209127E-012 9.366076981014857E-012 9.970130760330042E-012 + 1.061314208633692E-011 1.129762345235489E-011 1.202624938879279E-011 1.280186691320401E-011 + 1.362750665427156E-011 1.450639469318487E-011 1.544196516867207E-011 1.643787369493427E-011 + 1.749801164490557E-011 1.862652135464197E-011 1.982781230824090E-011 2.110657836652457E-011 + 2.246781610679645E-011 2.391684434532267E-011 2.545932491880857E-011 2.710128480605974E-011 + 2.884913967625395E-011 3.070971895581906E-011 3.269029251185011E-011 3.479859905630936E-011 + 3.704287638197615E-011 3.943189354827163E-011 4.197498514269449E-011 4.468208775171932E-011 + 4.756377878363373E-011 5.063131779498109E-011 5.389669048205475E-011 5.737265550929730E-011 + 6.107279435754669E-011 6.501156438685712E-011 6.920435532118832E-011 7.366754937561882E-011 + 7.841858526096087E-011 8.347602631581533E-011 8.885963303220885E-011 9.459044025812730E-011 + 1.006908393785260E-010 1.071846657958344E-010 1.140972920516848E-010 1.214557269536162E-010 + 1.292887210939614E-010 1.376268791730994E-010 1.465027795658093E-010 1.559511015977802E-010 + 1.660087610294152E-010 1.767150542761386E-010 1.881118119285302E-010 2.002435621719234E-010 + 2.131577047437739E-010 2.269046961082590E-010 2.415382465713531E-010 2.571155301062888E-010 + 2.736974077089071E-010 2.913486651552712E-010 3.101382660901346E-010 3.301396214347287E-010 + 3.514308761660615E-010 3.740952145877287E-010 3.982211852844826E-010 4.239030470296220E-010 + 4.512411369960923E-010 4.803422627092795E-010 5.113201192721458E-010 5.442957334920671E-010 + 5.793979366437386E-010 6.167638677142912E-010 6.565395090958361E-010 6.988802568172180E-010 + 7.439515275417210E-010 7.919294047008897E-010 8.430013262874530E-010 8.973668169929786E-010 + 9.552382675488778E-010 1.016841764313813E-009 1.082417972346501E-009 1.152223075411767E-009 + 1.226529776589927E-009 1.305628363396009E-009 1.389827841567237E-009 1.479457141945058E-009 + 1.574866405163325E-009 1.676428349157895E-009 1.784539724835972E-009 1.899622865587738E-009 + 2.022127336688852E-009 2.152531691032135E-009 2.291345338041823E-009 2.439110533065046E-009 + 2.596404495005629E-009 2.763841660465239E-009 2.942076083189715E-009 3.131803988185137E-009 + 3.333766490471431E-009 3.548752489083819E-009 3.777601747615612E-009 4.021208173323592E-009 + 4.280523307591761E-009 4.556560041373137E-009 4.850396570107154E-009 5.163180603543634E-009 + 5.496133846898485E-009 5.850556770824272E-009 6.227833688804559E-009 6.629438161779983E-009 + 7.056938751089404E-009 7.512005142167139E-009 7.996414662883144E-009 8.512059221950236E-009 + 9.060952694460854E-009 9.645238783357501E-009 1.026719938749613E-008 1.092926350893597E-008 + 1.163401673418969E-008 1.238421132640522E-008 1.318277696782951E-008 1.403283219443838E-008 + 1.493769656731316E-008 1.590090362821287E-008 1.692621468984777E-008 1.801763351460730E-008 + 1.917942193895801E-008 2.041611650440796E-008 2.173254615985186E-008 2.313385110428529E-008 + 2.462550284331178E-008 2.621332553759332E-008 2.790351872642226E-008 2.970268151494245E-008 + 3.161783831924586E-008 3.365646626962827E-008 3.582652437874048E-008 3.813648458823707E-008 + 4.059536481482720E-008 4.321276412441280E-008 4.599890017126961E-008 4.896464904803450E-008 + 5.212158770163671E-008 5.548203908027719E-008 5.905912018718346E-008 6.286679322815625E-008 + 6.691992005194406E-008 7.123432009527995E-008 7.582683205801730E-008 8.071537954829854E-008 + 8.591904095309742E-008 9.145812380588413E-008 9.735424394061805E-008 1.036304097398460E-007 + 1.103111118044574E-007 1.174224183936743E-007 1.249920770062414E-007 1.330496224975985E-007 + 1.416264921531542E-007 1.507561481647580E-007 1.604742079861534E-007 1.708185830737262E-007 + 1.818296265513603E-007 1.935502903727610E-007 2.060262925914132E-007 2.193062953874437E-007 + 2.334420945423246E-007 2.484888210966396E-007 2.645051559732633E-007 2.815535583984840E-007 + 2.997005090069214E-007 3.190167685728690E-007 3.395776533711106E-007 3.614633282344500E-007 + 3.847591184436296E-007 4.095558416579696E-007 4.359501611724526E-007 4.640449618692911E-007 + 4.939497503195166E-007 5.257810805833564E-007 5.596630073571459E-007 5.957275682199849E-007 + 6.341152968454471E-007 6.749757691628534E-007 7.184681845795689E-007 7.647619845106236E-007 + 8.140375106055163E-007 8.664867052147074E-007 9.223138568006201E-007 9.817363931707790E-007 + 1.044985725594199E-006 1.112308147057551E-006 1.183965788125511E-006 1.260237634090236E-006 + 1.341420607330379E-006 1.427830719049403E-006 1.519804294828926E-006 1.617699278715474E-006 + 1.721896620858931E-006 1.832801754041196E-006 1.950846164772455E-006 2.076489064994155E-006 + 2.210219170811750E-006 2.352556595088030E-006 2.504054861162785E-006 2.665303045425082E-006 + 2.836928056955568E-006 3.019597062977899E-006 3.214020069411780E-006 3.420952666410872E-006 + 3.641198949393690E-006 3.875614626742378E-006 4.125110326051876E-006 4.390655111563021E-006 + 4.673280226214154E-006 4.974083072593417E-006 5.294231447977706E-006 5.634968049603722E-006 + 5.997615267334159E-006 6.383580281967413E-006 6.794360488587719E-006 7.231549265576072E-006 + 7.696842111201893E-006 8.192043171092586E-006 8.719072181347068E-006 9.279971853612907E-006 + 9.876915730102283E-006 1.051221653827813E-005 1.118833507680468E-005 1.190788966634109E-005 + 1.267366620085585E-005 1.348862883737566E-005 1.435593136445383E-005 1.527892929215712E-005 + 1.626119270904783E-005 1.730651995446920E-005 1.841895215745646E-005 1.960278869679312E-005 + 2.086260364011762E-005 2.220326322359385E-005 2.362994443746848E-005 2.514815478689724E-005 + 2.676375330171981E-005 2.848297287341839E-005 3.031244400234127E-005 3.225922004339432E-005 + 3.433080404384819E-005 3.653517727268318E-005 3.888082954699750E-005 4.137679146750952E-005 + 4.403266868203935E-005 4.685867830315590E-005 4.986568761389722E-005 5.306525520364194E-005 + 5.646967468490434E-005 6.009202115098513E-005 6.394620054415930E-005 6.804700211438416E-005 + 7.241015415941048E-005 7.705238324876022E-005 8.199147714623772E-005 8.724635165860905E-005 + 9.283712165178927E-005 9.878517649035041E-005 1.051132601715459E-004 1.118455564412278E-004 + 1.190077791962251E-004 1.266272684958949E-004 1.347330925247073E-004 1.433561558680581E-004 + 1.525293144848635E-004 1.622874977831756E-004 1.726678382289564E-004 1.837098089433626E-004 + 1.954553697706204E-004 2.079491223266303E-004 2.212384745681818E-004 2.353738154539943E-004 + 2.504087003017621E-004 2.664000474803337E-004 2.834083471127474E-004 3.014978825046191E-004 + 3.207369650531390E-004 3.411981834347609E-004 3.629586679149961E-004 3.861003706711289E-004 + 4.107103630687675E-004 4.368811508857642E-004 4.647110085322051E-004 4.943043333734150E-004 + 5.257720213237871E-004 5.592318649433484E-004 5.948089753362365E-004 6.326362292205294E-004 + 6.728547426130261E-004 7.156143726496722E-004 7.610742491435509E-004 8.094033375671411E-004 + 8.607810352340290E-004 9.153978025482699E-004 9.734558312860488E-004 1.035169751975502E-003 + 1.100767382546005E-003 1.170490520527665E-003 1.244595781196572E-003 1.323355484179762E-003 + 1.407058591157786E-003 1.496011697431117E-003 1.590540080249275E-003 1.690988806940186E-003 + 1.797723906019217E-003 1.911133604605291E-003 2.031629635623740E-003 2.159648618431864E-003 + 2.295653516665476E-003 2.440135177269526E-003 2.593613954846994E-003 2.756641425633354E-003 + 2.929802195582085E-003 3.113715807228084E-003 3.309038750178791E-003 3.516466580270731E-003 + 3.736736152616240E-003 3.970627973955334E-003 4.218968679918314E-003 4.482633642993064E-003 + 4.762549717181326E-003 5.059698125512697E-003 5.375117496768679E-003 5.709907057946937E-003 + 6.065229989165565E-003 6.442316947872501E-003 6.842469769375888E-003 7.267065350853482E-003 + 7.717559726125752E-003 8.195492338585237E-003 8.702490519766744E-003 9.240274181107814E-003 + 9.810660726490616E-003 1.041557019316845E-002 1.105703062865370E-002 1.173718371108813E-002 + 1.245829062050710E-002 1.322273816826055E-002 1.403304519164823E-002 1.489186922055742E-002 + 1.580201342256571E-002 1.676643383256107E-002 1.778824687244994E-002 1.887073716595033E-002 + 2.001736565279106E-002 2.123177800586808E-002 2.251781335400664E-002 2.387951331196188E-002 + 2.532113131813209E-002 2.684714227914337E-002 2.846225251900283E-002 3.017141002886150E-002 + 3.197981501159730E-002 3.389293071339036E-002 3.591649453219482E-002 3.805652939053230E-002 + 4.031935535727089E-002 4.271160150005229E-002 4.524021794672836E-002 4.791248813055545E-002 + 5.073604118998773E-002 5.371886448962435E-002 5.686931622425156E-002 6.019613806291787E-002 + 6.370846778456152E-002 6.741585185091535E-002 7.132825785613986E-002 7.545608678594416E-002 + 7.981018501179085E-002 8.440185593810834E-002 8.924287121231976E-002 9.434548139881929E-002 + 9.972242600887982E-002 1.053869427688028E-001 1.113527759983921E-001 1.176341839611625E-001 + 1.242459450364246E-001 1.312033625516996E-001 1.385222681017283E-001 1.462190231676620E-001 + 1.543105188370303E-001 1.628141734116045E-001 1.717479276765849E-001 1.811302375905679E-001 + 1.909800641415645E-001 2.013168601001998E-001 2.121605533869712E-001 2.235315267564675E-001 + 2.354505934877396E-001 2.479389687566934E-001 2.610182363538519E-001 2.747103103989764E-001 + 2.890373916933894E-001 3.040219183414825E-001 3.196865102650489E-001 3.360539072283071E-001 + 3.531468999877527E-001 3.709882541799843E-001 3.896006265625936E-001 4.090064732284565E-001 + 4.292279494230580E-001 4.502868006078130E-001 4.722042444307409E-001 4.950008432894359E-001 + 5.186963672006861E-001 5.433096467271622E-001 5.688584157543589E-001 5.953591439616217E-001 + 6.228268588897888E-001 6.512749575753507E-001 6.807150077980427E-001 7.111565390752618E-001 + 7.426068236339527E-001 7.750706476985368E-001 8.085500735525396E-001 8.430441929625501E-001 + 8.785488726955315E-001 9.150564930150910E-001 9.525556802087015E-001 9.910310343757108E-001 + 1.030462853895548E+000 1.070826858195315E+000 1.112093910645940E+000 1.154229743634825E+000 + 1.197194688088656E+000 1.240943409952109E+000 1.285424656363177E+000 1.330581014502470E+000 + 1.376348686328714E+000 1.422657282642323E+000 1.469429640140662E+000 1.516581665336812E+000 + 1.564022209405335E+000 1.611652978187566E+000 1.659368481730217E+000 1.707056027839185E+000 + 1.754595764198395E+000 1.801860773625422E+000 1.848717227004689E+000 1.895024598347591E+000 + 1.940635946271346E+000 1.985398265956062E+000 2.029152915327346E+000 2.071736118812311E+000 + 2.112979551524429E+000 2.152711006142931E+000 2.190755144060172E+000 2.226934331573619E+000 + 2.261069560996071E+000 2.292981455548342E+000 2.322491355786140E+000 2.349422484100641E+000 + 2.373601182528447E+000 2.394858217720338E+000 2.413030145462592E+000 2.427960725635761E+000 + 2.439502376952598E+000 2.447517659262438E+000 2.451880769669429E+000 2.452479037215963E+000 + 2.449214399463215E+000 2.442004842992540E+000 2.430785788692620E+000 2.415511401726882E+000 + 2.396155805334369E+000 2.372714177145830E+000 2.345203706535214E+000 2.313664391713575E+000 + 2.278159655842519E+000 2.238776762429330E+000 2.195627011689807E+000 2.148845701446939E+000 + 2.098591838481839E+000 2.045047589067476E+000 1.988417460683912E+000 1.928927210609835E+000 + 1.866822481172647E+000 1.802367165864316E+000 1.735841515226783E+000 1.667539996298577E+000 + 1.597768924397459E+000 1.526843890988035E+000 1.455087016229368E+000 1.382824059391228E+000 + 1.310381424538607E+000 1.238083102578880E+000 1.166247593816232E+000 1.095184857438552E+000 + 1.025193335761677E+000 9.565571014784611E-001 8.895431755291925E-001 8.243990614766209E-001 + 7.613505394108517E-001 7.005997584389158E-001 6.423236617776934E-001 5.866727724483171E-001 + 5.337703606861213E-001 4.837120065841066E-001 4.365655633662585E-001 3.923715182518885E-001 + 3.511437393559645E-001 3.128705887212893E-001 2.775163736469489E-001 2.450231012119587E-001 + 2.153124945266294E-001 1.882882239855815E-001 1.638383028221182E-001 1.418375937070407E-001 + 1.221503720816757E-001 1.046328923963259E-001 8.913590541619061E-002 7.550707817596458E-002 + 6.359327287539981E-002 5.324264682663079E-002 4.430654226379246E-002 3.664114214861308E-002 + 3.010887577504200E-002 2.457956570653300E-002 1.993131509270441E-002 1.605114144742497E-002 + 1.283536929795264E-002 1.018979954512678E-002 8.029677765928311E-003 6.279486953204128E-003 + 4.872592288721550E-003 3.750766504133284E-003 2.863624268434405E-003 2.167992961092030E-003 + 1.627245292164054E-003 1.210616682987427E-003 8.925273048648209E-004 6.519253722134617E-004 + 4.716648765516708E-004 3.379275877212923E-004 2.396959748268200E-004 1.682808195576184E-004 + 1.169047865926182E-004 8.034112688071437E-005 5.460503818554739E-005 3.669398637217420E-005 + 2.437247253884290E-005 1.599627152959691E-005 1.037101247349365E-005 6.640062419505410E-006 + 4.196949862471754E-006 2.617969110675972E-006 1.611088118399929E-006 9.777984866059371E-007 + 5.850624151654457E-007 3.450018581427567E-007 2.004226168998847E-007 1.146604620242784E-007 + 6.457341497633370E-008 3.578443023896965E-008 1.950552054263362E-008 1.045351590689243E-008 + 5.505824219454298E-009 2.848698044751986E-009 1.447234065440022E-009 7.216034927127198E-010 + 3.529556125948274E-010 1.692747131022737E-010 7.956062350849333E-011 3.662827424452647E-011 + 1.650894788107077E-011 7.280709588608260E-012 3.140076290596393E-012 1.323651396663313E-012 + 5.450326496520745E-013 2.190932853079904E-013 8.592685544919104E-014 3.285874946470836E-014 + 1.224383594183627E-014 4.442663224760488E-015 1.568687924043092E-015 5.386385545650469E-016 + 1.797293116429228E-016 5.823526727553732E-017 1.830948147525088E-017 5.581588008967329E-018 + 1.648510952826887E-018 4.713355544341503E-019 1.303515007783068E-019 3.484042729125549E-020 + 8.992022452753706E-021 2.238995082255866E-021 5.373736672017508E-022 1.242003330316143E-022 + 2.761707603190758E-023 5.902229728342454E-024 1.211161795076649E-024 2.383905223247443E-025 + 4.495918103870908E-026 8.115599359217447E-027 1.400599386873715E-027 2.308365209878574E-028 + 3.628991846906906E-029 5.435495715439134E-030 7.746966570662489E-031 1.049343688737685E-031 + 1.349080139642129E-032 1.644060782252384E-033 1.896574019600073E-034 2.068189444558573E-035 + 2.128927865281597E-036 2.065606271373964E-037 1.886252872081426E-038 1.618644232164377E-039 + 1.303222240364998E-040 9.828795890639495E-042 6.932315640148376E-043 4.564736920859501E-044 + 2.801284196054242E-045 1.599293019530987E-046 8.478796568422778E-048 4.166404571230441E-049 + 1.893977636126846E-050 7.949108726006052E-052 3.074075574967510E-053 1.093108488559670E-054 + 3.566497691228526E-056 1.065380035558609E-057 2.907241514969888E-059 7.230645815294558E-061 + 1.635207149741456E-062 3.354460297270915E-064 6.226654023531249E-066 1.043205549079413E-067 + 1.573407312271578E-069 2.130654747445666E-071 2.583455057432227E-073 2.796983648405703E-075 + 2.696091691264028E-077 2.307055803349516E-079 1.747233391589146E-081 1.167536982741911E-083 + 6.861843573027658E-086 3.535494093140399E-088 1.591664462453902E-090 6.239666222967593E-093 + 2.122552336246782E-095 6.242850446713174E-098 1.581742228544267E-100 3.439355260927232E-103 + 6.393309103948504E-106 1.011947377005016E-108 1.358333171314477E-111 1.539780023682919E-114 + 1.467766677511909E-117 1.171375860396365E-120 7.791536824512468E-124 4.299667351323255E-127 + 1.959196604660254E-130 7.335795096638115E-134 2.245865034890748E-137 5.593376261604107E-141 + 1.127324470307600E-144 1.828864373667887E-148 2.375122294607010E-152 2.455365851227738E-156 + 2.008926876915417E-160 1.293177562293889E-164 6.509709942254864E-169 2.546661043779977E-173 + 7.693338279233160E-178 1.782997223974199E-182 3.148942207333938E-187 4.208905372376294E-192 + 4.227666402372424E-197 3.168242501198755E-202 1.758335899525969E-207 7.172144542993358E-213 + 2.133410547420433E-218 4.590994809157408E-224 7.089032954832735E-230 7.788714573807150E-236 + 6.036727504978615E-242 3.271583553399876E-248 1.228574999973428E-254 3.167375275713037E-261 + 5.552856410284002E-268 6.555602871776776E-275 5.159896280032911E-282 2.680058473022289E-289 + 9.089762092782503E-297 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + + 1.080582782000000E+000 -5.308891750000000E-001 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 -5.308891750000000E-001 1.370749955500000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 3.004866930000000E-001 -2.746630545000000E-001 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 +-2.746630545000000E-001 6.499714180000000E-001 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 +-1.258531735500000E+000 1.739882680000000E-001 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 1.739882680000000E-001 -3.945683040000000E-001 + + + + + + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 0.000000000000000E+000 + 0.000000000000000E+000 + + diff --git a/glue/qe/example/INPUT/lat.in b/glue/qe/example/INPUT/lat.in new file mode 100644 index 0000000..17ee178 --- /dev/null +++ b/glue/qe/example/INPUT/lat.in @@ -0,0 +1,5 @@ +3.155 3.155 3.155 90 90 90 + 0.5 0.5 0.5 +-0.5 0.5 0.5 +-0.5 -0.5 0.5 +0.0 0.0 0.0 Mo,W diff --git a/glue/qe/example/INPUT/qe.param b/glue/qe/example/INPUT/qe.param new file mode 100644 index 0000000..401e95a --- /dev/null +++ b/glue/qe/example/INPUT/qe.param @@ -0,0 +1,7 @@ +# The rule for make atomic_species card: +# set the ppXXX as the name of certain line +# then, write down the elemental symbol, mass +# and pseudo-potential name info. + +ppW W 183.80 W.GTH_LDA.UPF +ppMo Mo 12.011 Mo.GTH_LDA.UPF diff --git a/glue/qe/example/README b/glue/qe/example/README new file mode 100644 index 0000000..ad31e9b --- /dev/null +++ b/glue/qe/example/README @@ -0,0 +1,5 @@ +This example is for the test of the interface between ATAT and Quantum-ESPRESSO code using Mo-W binary alloy in BCC structure. + +LDA-PZ is used as xc-functional and pseudo-potentials are generated in Goedecker/Hartwigsen/Hutter/Teter scheme. (ref.: Phys.Rev.B58, 3641 (1998); B54, 1703 (1996)) + +The data and figures shown in "Result" directory are not the final converged results of calculation. diff --git a/glue/qe/example/Result/Result.ps b/glue/qe/example/Result/Result.ps new file mode 100644 index 0000000..cf51c0a --- /dev/null +++ b/glue/qe/example/Result/Result.ps @@ -0,0 +1,2044 @@ +%!PS-Adobe-2.0 +%%Title: Result.ps +%%Creator: gnuplot 4.2 patchlevel 6 +%%CreationDate: Thu Jun 7 19:35:00 2012 +%%DocumentFonts: (atend) +%%BoundingBox: 50 50 554 770 +%%Orientation: Landscape +%%Pages: (atend) +%%EndComments +%%BeginProlog +/gnudict 256 dict def +gnudict begin +% +% The following 6 true/false flags may be edited by hand if required +% The unit line width may also be changed +% +/Color true def +/Blacktext false def +/Solid false def +/Dashlength 1 def +/Landscape true def +/Level1 false def +/Rounded false def +/TransparentPatterns false def +/gnulinewidth 5.000 def +/userlinewidth gnulinewidth def +% +/vshift -60 def +/dl1 { + 10.0 Dashlength mul mul + Rounded { currentlinewidth 0.75 mul sub dup 0 le { pop 0.01 } if } if +} def +/dl2 { + 10.0 Dashlength mul mul + Rounded { currentlinewidth 0.75 mul add } if +} def +/hpt_ 31.5 def +/vpt_ 31.5 def +/hpt hpt_ def +/vpt vpt_ def +Level1 {} { +/SDict 10 dict def +systemdict /pdfmark known not { + userdict /pdfmark systemdict /cleartomark get put +} if +SDict begin [ + /Title (Result.ps) + /Subject (gnuplot plot) + /Creator (gnuplot 4.2 patchlevel 6 ) + /Author (ZrGe) +% /Producer (gnuplot) +% /Keywords () + /CreationDate (Thu Jun 7 19:35:00 2012) + /DOCINFO pdfmark +end +} ifelse +% +% Gnuplot Prolog Version 4.2 (August 2006) +% +/M {moveto} bind def +/L {lineto} bind def +/R {rmoveto} bind def +/V {rlineto} bind def +/N {newpath moveto} bind def +/Z {closepath} bind def +/C {setrgbcolor} bind def +/f {rlineto fill} bind def +/vpt2 vpt 2 mul def +/hpt2 hpt 2 mul def +/Lshow {currentpoint stroke M 0 vshift R + Blacktext {gsave 0 setgray show grestore} {show} ifelse} def +/Rshow {currentpoint stroke M dup stringwidth pop neg vshift R + Blacktext {gsave 0 setgray show grestore} {show} ifelse} def +/Cshow {currentpoint stroke M dup stringwidth pop -2 div vshift R + Blacktext {gsave 0 setgray show grestore} {show} ifelse} def +/UP {dup vpt_ mul /vpt exch def hpt_ mul /hpt exch def + /hpt2 hpt 2 mul def /vpt2 vpt 2 mul def} def +/DL {Color {setrgbcolor Solid {pop []} if 0 setdash} + {pop pop pop 0 setgray Solid {pop []} if 0 setdash} ifelse} def +/BL {stroke userlinewidth 2 mul setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +/AL {stroke userlinewidth 2 div setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +/UL {dup gnulinewidth mul /userlinewidth exch def + dup 1 lt {pop 1} if 10 mul /udl exch def} def +/PL {stroke userlinewidth setlinewidth + Rounded {1 setlinejoin 1 setlinecap} if} def +% Default Line colors +/LCw {1 1 1} def +/LCb {0 0 0} def +/LCa {0 0 0} def +/LC0 {1 0 0} def +/LC1 {0 1 0} def +/LC2 {0 0 1} def +/LC3 {1 0 1} def +/LC4 {0 1 1} def +/LC5 {1 1 0} def +/LC6 {0 0 0} def +/LC7 {1 0.3 0} def +/LC8 {0.5 0.5 0.5} def +% Default Line Types +/LTw {PL [] 1 setgray} def +/LTb {BL [] LCb DL} def +/LTa {AL [1 udl mul 2 udl mul] 0 setdash LCa setrgbcolor} def +/LT0 {PL [] LC0 DL} def +/LT1 {PL [4 dl1 2 dl2] LC1 DL} def +/LT2 {PL [2 dl1 3 dl2] LC2 DL} def +/LT3 {PL [1 dl1 1.5 dl2] LC3 DL} def +/LT4 {PL [6 dl1 2 dl2 1 dl1 2 dl2] LC4 DL} def +/LT5 {PL [3 dl1 3 dl2 1 dl1 3 dl2] LC5 DL} def +/LT6 {PL [2 dl1 2 dl2 2 dl1 6 dl2] LC6 DL} def +/LT7 {PL [1 dl1 2 dl2 6 dl1 2 dl2 1 dl1 2 dl2] LC7 DL} def +/LT8 {PL [2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 2 dl2 2 dl1 4 dl2] LC8 DL} def +/Pnt {stroke [] 0 setdash gsave 1 setlinecap M 0 0 V stroke grestore} def +/Dia {stroke [] 0 setdash 2 copy vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke + Pnt} def +/Pls {stroke [] 0 setdash vpt sub M 0 vpt2 V + currentpoint stroke M + hpt neg vpt neg R hpt2 0 V stroke + } def +/Box {stroke [] 0 setdash 2 copy exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke + Pnt} def +/Crs {stroke [] 0 setdash exch hpt sub exch vpt add M + hpt2 vpt2 neg V currentpoint stroke M + hpt2 neg 0 R hpt2 vpt2 V stroke} def +/TriU {stroke [] 0 setdash 2 copy vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke + Pnt} def +/Star {2 copy Pls Crs} def +/BoxF {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath fill} def +/TriUF {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath fill} def +/TriD {stroke [] 0 setdash 2 copy vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke + Pnt} def +/TriDF {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath fill} def +/DiaF {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath fill} def +/Pent {stroke [] 0 setdash 2 copy gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore Pnt} def +/PentF {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath fill grestore} def +/Circle {stroke [] 0 setdash 2 copy + hpt 0 360 arc stroke Pnt} def +/CircleF {stroke [] 0 setdash hpt 0 360 arc fill} def +/C0 {BL [] 0 setdash 2 copy moveto vpt 90 450 arc} bind def +/C1 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + vpt 0 360 arc closepath} bind def +/C2 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C3 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C4 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C5 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc + 2 copy moveto + 2 copy vpt 180 270 arc closepath fill + vpt 0 360 arc} bind def +/C6 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C7 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 270 arc closepath fill + vpt 0 360 arc closepath} bind def +/C8 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C9 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 270 450 arc closepath fill + vpt 0 360 arc closepath} bind def +/C10 {BL [] 0 setdash 2 copy 2 copy moveto vpt 270 360 arc closepath fill + 2 copy moveto + 2 copy vpt 90 180 arc closepath fill + vpt 0 360 arc closepath} bind def +/C11 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 180 arc closepath fill + 2 copy moveto + 2 copy vpt 270 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C12 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C13 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 0 90 arc closepath fill + 2 copy moveto + 2 copy vpt 180 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/C14 {BL [] 0 setdash 2 copy moveto + 2 copy vpt 90 360 arc closepath fill + vpt 0 360 arc} bind def +/C15 {BL [] 0 setdash 2 copy vpt 0 360 arc closepath fill + vpt 0 360 arc closepath} bind def +/Rec {newpath 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto + neg 0 rlineto closepath} bind def +/Square {dup Rec} bind def +/Bsquare {vpt sub exch vpt sub exch vpt2 Square} bind def +/S0 {BL [] 0 setdash 2 copy moveto 0 vpt rlineto BL Bsquare} bind def +/S1 {BL [] 0 setdash 2 copy vpt Square fill Bsquare} bind def +/S2 {BL [] 0 setdash 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def +/S3 {BL [] 0 setdash 2 copy exch vpt sub exch vpt2 vpt Rec fill Bsquare} bind def +/S4 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def +/S5 {BL [] 0 setdash 2 copy 2 copy vpt Square fill + exch vpt sub exch vpt sub vpt Square fill Bsquare} bind def +/S6 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill Bsquare} bind def +/S7 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt vpt2 Rec fill + 2 copy vpt Square fill Bsquare} bind def +/S8 {BL [] 0 setdash 2 copy vpt sub vpt Square fill Bsquare} bind def +/S9 {BL [] 0 setdash 2 copy vpt sub vpt vpt2 Rec fill Bsquare} bind def +/S10 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt Square fill + Bsquare} bind def +/S11 {BL [] 0 setdash 2 copy vpt sub vpt Square fill 2 copy exch vpt sub exch vpt2 vpt Rec fill + Bsquare} bind def +/S12 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill Bsquare} bind def +/S13 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy vpt Square fill Bsquare} bind def +/S14 {BL [] 0 setdash 2 copy exch vpt sub exch vpt sub vpt2 vpt Rec fill + 2 copy exch vpt sub exch vpt Square fill Bsquare} bind def +/S15 {BL [] 0 setdash 2 copy Bsquare fill Bsquare} bind def +/D0 {gsave translate 45 rotate 0 0 S0 stroke grestore} bind def +/D1 {gsave translate 45 rotate 0 0 S1 stroke grestore} bind def +/D2 {gsave translate 45 rotate 0 0 S2 stroke grestore} bind def +/D3 {gsave translate 45 rotate 0 0 S3 stroke grestore} bind def +/D4 {gsave translate 45 rotate 0 0 S4 stroke grestore} bind def +/D5 {gsave translate 45 rotate 0 0 S5 stroke grestore} bind def +/D6 {gsave translate 45 rotate 0 0 S6 stroke grestore} bind def +/D7 {gsave translate 45 rotate 0 0 S7 stroke grestore} bind def +/D8 {gsave translate 45 rotate 0 0 S8 stroke grestore} bind def +/D9 {gsave translate 45 rotate 0 0 S9 stroke grestore} bind def +/D10 {gsave translate 45 rotate 0 0 S10 stroke grestore} bind def +/D11 {gsave translate 45 rotate 0 0 S11 stroke grestore} bind def +/D12 {gsave translate 45 rotate 0 0 S12 stroke grestore} bind def +/D13 {gsave translate 45 rotate 0 0 S13 stroke grestore} bind def +/D14 {gsave translate 45 rotate 0 0 S14 stroke grestore} bind def +/D15 {gsave translate 45 rotate 0 0 S15 stroke grestore} bind def +/DiaE {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V closepath stroke} def +/BoxE {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V closepath stroke} def +/TriUE {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V closepath stroke} def +/TriDE {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V closepath stroke} def +/PentE {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + closepath stroke grestore} def +/CircE {stroke [] 0 setdash + hpt 0 360 arc stroke} def +/Opaque {gsave closepath 1 setgray fill grestore 0 setgray closepath} def +/DiaW {stroke [] 0 setdash vpt add M + hpt neg vpt neg V hpt vpt neg V + hpt vpt V hpt neg vpt V Opaque stroke} def +/BoxW {stroke [] 0 setdash exch hpt sub exch vpt add M + 0 vpt2 neg V hpt2 0 V 0 vpt2 V + hpt2 neg 0 V Opaque stroke} def +/TriUW {stroke [] 0 setdash vpt 1.12 mul add M + hpt neg vpt -1.62 mul V + hpt 2 mul 0 V + hpt neg vpt 1.62 mul V Opaque stroke} def +/TriDW {stroke [] 0 setdash vpt 1.12 mul sub M + hpt neg vpt 1.62 mul V + hpt 2 mul 0 V + hpt neg vpt -1.62 mul V Opaque stroke} def +/PentW {stroke [] 0 setdash gsave + translate 0 hpt M 4 {72 rotate 0 hpt L} repeat + Opaque stroke grestore} def +/CircW {stroke [] 0 setdash + hpt 0 360 arc Opaque stroke} def +/BoxFill {gsave Rec 1 setgray fill grestore} def +/Density { + /Fillden exch def + currentrgbcolor + /ColB exch def /ColG exch def /ColR exch def + /ColR ColR Fillden mul Fillden sub 1 add def + /ColG ColG Fillden mul Fillden sub 1 add def + /ColB ColB Fillden mul Fillden sub 1 add def + ColR ColG ColB setrgbcolor} def +/BoxColFill {gsave Rec PolyFill} def +/PolyFill {gsave Density fill grestore grestore} def +/h {rlineto rlineto rlineto gsave closepath fill grestore} bind def +% +% PostScript Level 1 Pattern Fill routine for rectangles +% Usage: x y w h s a XX PatternFill +% x,y = lower left corner of box to be filled +% w,h = width and height of box +% a = angle in degrees between lines and x-axis +% XX = 0/1 for no/yes cross-hatch +% +/PatternFill {gsave /PFa [ 9 2 roll ] def + PFa 0 get PFa 2 get 2 div add PFa 1 get PFa 3 get 2 div add translate + PFa 2 get -2 div PFa 3 get -2 div PFa 2 get PFa 3 get Rec + gsave 1 setgray fill grestore clip + currentlinewidth 0.5 mul setlinewidth + /PFs PFa 2 get dup mul PFa 3 get dup mul add sqrt def + 0 0 M PFa 5 get rotate PFs -2 div dup translate + 0 1 PFs PFa 4 get div 1 add floor cvi + {PFa 4 get mul 0 M 0 PFs V} for + 0 PFa 6 get ne { + 0 1 PFs PFa 4 get div 1 add floor cvi + {PFa 4 get mul 0 2 1 roll M PFs 0 V} for + } if + stroke grestore} def +% +/languagelevel where + {pop languagelevel} {1} ifelse + 2 lt + {/InterpretLevel1 true def} + {/InterpretLevel1 Level1 def} + ifelse +% +% PostScript level 2 pattern fill definitions +% +/Level2PatternFill { +/Tile8x8 {/PaintType 2 /PatternType 1 /TilingType 1 /BBox [0 0 8 8] /XStep 8 /YStep 8} + bind def +/KeepColor {currentrgbcolor [/Pattern /DeviceRGB] setcolorspace} bind def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke} +>> matrix makepattern +/Pat1 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 8 8 L 0 8 M 8 0 L stroke + 0 4 M 4 8 L 8 4 L 4 0 L 0 4 L stroke} +>> matrix makepattern +/Pat2 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 0 M 0 8 L + 8 8 L 8 0 L 0 0 L fill} +>> matrix makepattern +/Pat3 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -4 8 M 8 -4 L + 0 12 M 12 0 L stroke} +>> matrix makepattern +/Pat4 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -4 0 M 8 12 L + 0 -4 M 12 8 L stroke} +>> matrix makepattern +/Pat5 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -2 8 M 4 -4 L + 0 12 M 8 -4 L 4 12 M 10 0 L stroke} +>> matrix makepattern +/Pat6 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop -2 0 M 4 12 L + 0 -4 M 8 12 L 4 -4 M 10 8 L stroke} +>> matrix makepattern +/Pat7 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 8 -2 M -4 4 L + 12 0 M -4 8 L 12 4 M 0 10 L stroke} +>> matrix makepattern +/Pat8 exch def +<< Tile8x8 + /PaintProc {0.5 setlinewidth pop 0 -2 M 12 4 L + -4 0 M 12 8 L -4 4 M 8 10 L stroke} +>> matrix makepattern +/Pat9 exch def +/Pattern1 {PatternBgnd KeepColor Pat1 setpattern} bind def +/Pattern2 {PatternBgnd KeepColor Pat2 setpattern} bind def +/Pattern3 {PatternBgnd KeepColor Pat3 setpattern} bind def +/Pattern4 {PatternBgnd KeepColor Landscape {Pat5} {Pat4} ifelse setpattern} bind def +/Pattern5 {PatternBgnd KeepColor Landscape {Pat4} {Pat5} ifelse setpattern} bind def +/Pattern6 {PatternBgnd KeepColor Landscape {Pat9} {Pat6} ifelse setpattern} bind def +/Pattern7 {PatternBgnd KeepColor Landscape {Pat8} {Pat7} ifelse setpattern} bind def +} def +% +% +%End of PostScript Level 2 code +% +/PatternBgnd { + TransparentPatterns {} {gsave 1 setgray fill grestore} ifelse +} def +% +% Substitute for Level 2 pattern fill codes with +% grayscale if Level 2 support is not selected. +% +/Level1PatternFill { +/Pattern1 {0.250 Density} bind def +/Pattern2 {0.500 Density} bind def +/Pattern3 {0.750 Density} bind def +/Pattern4 {0.125 Density} bind def +/Pattern5 {0.375 Density} bind def +/Pattern6 {0.625 Density} bind def +/Pattern7 {0.875 Density} bind def +} def +% +% Now test for support of Level 2 code +% +Level1 {Level1PatternFill} {Level2PatternFill} ifelse +% +/Symbol-Oblique /Symbol findfont [1 0 .167 1 0 0] makefont +dup length dict begin {1 index /FID eq {pop pop} {def} ifelse} forall +currentdict end definefont pop +/MFshow { + { dup 5 get 3 ge + { 5 get 3 eq {gsave} {grestore} ifelse } + {dup dup 0 get findfont exch 1 get scalefont setfont + [ currentpoint ] exch dup 2 get 0 exch R dup 5 get 2 ne {dup dup 6 + get exch 4 get {show} {stringwidth pop 0 R} ifelse }if dup 5 get 0 eq + {dup 3 get {2 get neg 0 exch R pop} {pop aload pop M} ifelse} {dup 5 + get 1 eq {dup 2 get exch dup 3 get exch 6 get stringwidth pop -2 div + dup 0 R} {dup 6 get stringwidth pop -2 div 0 R 6 get + show 2 index {aload pop M neg 3 -1 roll neg R pop pop} {pop pop pop + pop aload pop M} ifelse }ifelse }ifelse } + ifelse } + forall} bind def +/MFwidth {0 exch { dup 5 get 3 ge { 5 get 3 eq { 0 } { pop } ifelse } + {dup 3 get{dup dup 0 get findfont exch 1 get scalefont setfont + 6 get stringwidth pop add} {pop} ifelse} ifelse} forall} bind def +/MLshow { currentpoint stroke M + 0 exch R + Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def +/MRshow { currentpoint stroke M + exch dup MFwidth neg 3 -1 roll R + Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def +/MCshow { currentpoint stroke M + exch dup MFwidth -2 div 3 -1 roll R + Blacktext {gsave 0 setgray MFshow grestore} {MFshow} ifelse } bind def +/XYsave { [( ) 1 2 true false 3 ()] } bind def +/XYrestore { [( ) 1 2 true false 4 ()] } bind def +end +%%EndProlog +%%Page: 1 1 +gnudict begin +gsave +50 50 translate +0.100 0.100 scale +90 rotate +0 -5040 translate +0 setgray +newpath +(TimesNewRoman) findfont 180 scalefont setfont +1.000 UL +LTb +1314 576 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 576 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.015)] +] -60.0 MRshow +1.000 UL +LTb +1314 1230 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 1230 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.01)] +] -60.0 MRshow +1.000 UL +LTb +1314 1884 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 1884 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.005)] +] -60.0 MRshow +1.000 UL +LTb +1314 2538 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 2538 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0)] +] -60.0 MRshow +1.000 UL +LTb +1314 3192 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 3192 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.005)] +] -60.0 MRshow +1.000 UL +LTb +1314 3846 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 3846 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.01)] +] -60.0 MRshow +1.000 UL +LTb +1314 4500 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 4500 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.015)] +] -60.0 MRshow +1.000 UL +LTb +1314 576 M +0 63 V +0 3861 R +0 -63 V +stroke +1314 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0)] +] -60.0 MCshow +1.000 UL +LTb +2437 576 M +0 63 V +0 3861 R +0 -63 V +stroke +2437 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.2)] +] -60.0 MCshow +1.000 UL +LTb +3560 576 M +0 63 V +0 3861 R +0 -63 V +stroke +3560 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.4)] +] -60.0 MCshow +1.000 UL +LTb +4684 576 M +0 63 V +0 3861 R +0 -63 V +stroke +4684 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.6)] +] -60.0 MCshow +1.000 UL +LTb +5807 576 M +0 63 V +0 3861 R +0 -63 V +stroke +5807 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.8)] +] -60.0 MCshow +1.000 UL +LTb +6930 576 M +0 63 V +0 3861 R +0 -63 V +stroke +6930 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 1)] +] -60.0 MCshow +1.000 UL +LTb +1.000 UL +LTb +1314 4500 N +0 -3924 V +5616 0 V +0 3924 V +-5616 0 V +Z stroke +LCb setrgbcolor +360 2538 M +currentpoint gsave translate 90 rotate 0 0 moveto +[ [(TimesNewRoman) 180.0 0.0 true true 0 (energy)] +] -60.0 MCshow +grestore +LTb +LCb setrgbcolor +4122 126 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (concentration)] +] -60.0 MCshow +LTb +4122 4770 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (Fitted Energies)] +] -60.0 MCshow +1.000 UP +1.000 UL +LTb +1.000 UP +1.000 UL +LT1 +LTb +6111 4347 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (predicted)] +] -60.0 MRshow +LT1 +3186 3922 Crs +5058 1863 Crs +2718 3566 Crs +4122 4302 Crs +5526 3659 Crs +2718 2157 Crs +4122 1483 Crs +5526 2250 Crs +2718 2398 Crs +5526 2492 Crs +2718 2819 Crs +4122 2808 Crs +5526 2912 Crs +2718 2440 Crs +4122 3341 Crs +5526 2534 Crs +2718 3043 Crs +5526 3136 Crs +2437 3352 Crs +3560 3656 Crs +3560 3941 Crs +4684 3693 Crs +4684 3979 Crs +5807 3464 Crs +2437 1926 Crs +3560 1368 Crs +3560 1949 Crs +4684 1405 Crs +4684 1987 Crs +5807 2038 Crs +2437 2452 Crs +3560 1351 Crs +3560 3544 Crs +4684 1389 Crs +4684 3582 Crs +5807 2564 Crs +2437 2848 Crs +3560 2514 Crs +3560 3570 Crs +4684 2551 Crs +4684 3607 Crs +5807 2960 Crs +2437 2404 Crs +3560 2376 Crs +4684 2413 Crs +5807 2516 Crs +6466 4347 Crs +1.000 UP +1.000 UL +LT0 +LTb +6111 4167 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (known str)] +] -60.0 MRshow +LT0 +1314 2497 Pls +6930 2684 Pls +4122 3256 Pls +4122 677 Pls +5058 3985 Pls +3186 1864 Pls +5058 1926 Pls +3186 1801 Pls +2718 1460 Pls +4122 1380 Pls +5526 1553 Pls +6466 4167 Pls +1.000 UP +1.000 UL +LT2 +LTb +6111 3987 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (known gs)] +] -60.0 MRshow +LT2 +6219 3987 M +495 0 V +1314 2497 M +2718 1460 L +4122 677 L +1404 876 V +6930 2684 L +1314 2497 Star +2718 1460 Star +4122 677 Star +5526 1553 Star +6930 2684 Star +6466 3987 Star +1.000 UP +1.000 UL +LT3 +LTb +6111 3807 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (predicted gs)] +] -60.0 MRshow +LT3 +2718 1306 Box +6466 3807 Box +1.000 UL +LTb +1314 4500 N +0 -3924 V +5616 0 V +0 3924 V +-5616 0 V +Z stroke +1.000 UP +1.000 UL +LTb +stroke +grestore +end +showpage +%%Page: 2 2 +gnudict begin +gsave +50 50 translate +0.100 0.100 scale +90 rotate +0 -5040 translate +0 setgray +newpath +(TimesNewRoman) findfont 180 scalefont setfont +1.000 UL +LTb +1314 576 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 576 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.015)] +] -60.0 MRshow +1.000 UL +LTb +1314 1137 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 1137 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.01)] +] -60.0 MRshow +1.000 UL +LTb +1314 1697 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 1697 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.005)] +] -60.0 MRshow +1.000 UL +LTb +1314 2258 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 2258 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0)] +] -60.0 MRshow +1.000 UL +LTb +1314 2818 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 2818 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.005)] +] -60.0 MRshow +1.000 UL +LTb +1314 3379 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 3379 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.01)] +] -60.0 MRshow +1.000 UL +LTb +1314 3939 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 3939 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.015)] +] -60.0 MRshow +1.000 UL +LTb +1314 4500 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 4500 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.02)] +] -60.0 MRshow +1.000 UL +LTb +1314 576 M +0 63 V +0 3861 R +0 -63 V +stroke +1314 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0)] +] -60.0 MCshow +1.000 UL +LTb +2437 576 M +0 63 V +0 3861 R +0 -63 V +stroke +2437 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.2)] +] -60.0 MCshow +1.000 UL +LTb +3560 576 M +0 63 V +0 3861 R +0 -63 V +stroke +3560 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.4)] +] -60.0 MCshow +1.000 UL +LTb +4684 576 M +0 63 V +0 3861 R +0 -63 V +stroke +4684 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.6)] +] -60.0 MCshow +1.000 UL +LTb +5807 576 M +0 63 V +0 3861 R +0 -63 V +stroke +5807 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.8)] +] -60.0 MCshow +1.000 UL +LTb +6930 576 M +0 63 V +0 3861 R +0 -63 V +stroke +6930 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 1)] +] -60.0 MCshow +1.000 UL +LTb +1.000 UL +LTb +1314 4500 N +0 -3924 V +5616 0 V +0 3924 V +-5616 0 V +Z stroke +LCb setrgbcolor +360 2538 M +currentpoint gsave translate 90 rotate 0 0 moveto +[ [(TimesNewRoman) 180.0 0.0 true true 0 (energy)] +] -60.0 MCshow +grestore +LTb +LCb setrgbcolor +4122 126 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (concentration)] +] -60.0 MCshow +LTb +4122 4770 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (Calculated Energies)] +] -60.0 MCshow +1.000 UP +1.000 UL +LTb +1.000 UP +1.000 UL +LT4 +LTb +6111 4347 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (known str)] +] -60.0 MRshow +LT4 +1314 2258 BoxF +6930 2258 BoxF +4122 2201 BoxF +4122 624 BoxF +5058 3945 BoxF +3186 1635 BoxF +5058 1986 BoxF +3186 1917 BoxF +2718 1132 BoxF +4122 1503 BoxF +5526 1230 BoxF +6466 4347 BoxF +1.000 UP +1.000 UL +LT5 +LTb +6111 4167 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (known gs)] +] -60.0 MRshow +LT5 +6219 4167 M +495 0 V +1314 2258 M +2718 1132 L +4122 624 L +1404 606 V +6930 2258 L +1314 2258 Circle +2718 1132 Circle +4122 624 Circle +5526 1230 Circle +6930 2258 Circle +6466 4167 Circle +1.000 UL +LTb +1314 4500 N +0 -3924 V +5616 0 V +0 3924 V +-5616 0 V +Z stroke +1.000 UP +1.000 UL +LTb +stroke +grestore +end +showpage +%%Page: 3 3 +gnudict begin +gsave +50 50 translate +0.100 0.100 scale +90 rotate +0 -5040 translate +0 setgray +newpath +(TimesNewRoman) findfont 180 scalefont setfont +1.000 UL +LTb +1314 576 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 576 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.015)] +] -60.0 MRshow +1.000 UL +LTb +1314 1137 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 1137 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.01)] +] -60.0 MRshow +1.000 UL +LTb +1314 1697 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 1697 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.005)] +] -60.0 MRshow +1.000 UL +LTb +1314 2258 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 2258 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0)] +] -60.0 MRshow +1.000 UL +LTb +1314 2818 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 2818 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.005)] +] -60.0 MRshow +1.000 UL +LTb +1314 3379 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 3379 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.01)] +] -60.0 MRshow +1.000 UL +LTb +1314 3939 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 3939 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.015)] +] -60.0 MRshow +1.000 UL +LTb +1314 4500 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 4500 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.02)] +] -60.0 MRshow +1.000 UL +LTb +1314 576 M +0 63 V +0 3861 R +0 -63 V +stroke +1314 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0)] +] -60.0 MCshow +1.000 UL +LTb +2437 576 M +0 63 V +0 3861 R +0 -63 V +stroke +2437 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.2)] +] -60.0 MCshow +1.000 UL +LTb +3560 576 M +0 63 V +0 3861 R +0 -63 V +stroke +3560 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.4)] +] -60.0 MCshow +1.000 UL +LTb +4684 576 M +0 63 V +0 3861 R +0 -63 V +stroke +4684 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.6)] +] -60.0 MCshow +1.000 UL +LTb +5807 576 M +0 63 V +0 3861 R +0 -63 V +stroke +5807 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.8)] +] -60.0 MCshow +1.000 UL +LTb +6930 576 M +0 63 V +0 3861 R +0 -63 V +stroke +6930 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 1)] +] -60.0 MCshow +1.000 UL +LTb +1.000 UL +LTb +1314 4500 N +0 -3924 V +5616 0 V +0 3924 V +-5616 0 V +Z stroke +LCb setrgbcolor +360 2538 M +currentpoint gsave translate 90 rotate 0 0 moveto +[ [(TimesNewRoman) 180.0 0.0 true true 0 (energy)] +] -60.0 MCshow +grestore +LTb +LCb setrgbcolor +4122 126 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (concentration)] +] -60.0 MCshow +LTb +4122 4770 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (Calculated and Fitted Energies)] +] -60.0 MCshow +1.000 UP +1.000 UL +LTb +1.000 UP +1.000 UL +LT4 +LTb +6111 4347 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (calculated)] +] -60.0 MRshow +LT4 +1314 2258 BoxF +6930 2258 BoxF +4122 2201 BoxF +4122 624 BoxF +5058 3945 BoxF +3186 1635 BoxF +5058 1986 BoxF +3186 1917 BoxF +2718 1132 BoxF +4122 1503 BoxF +5526 1230 BoxF +6466 4347 BoxF +1.000 UP +1.000 UL +LT0 +LTb +6111 4167 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (fitted)] +] -60.0 MRshow +LT0 +1314 2223 Pls +6930 2383 Pls +4122 2873 Pls +4122 662 Pls +5058 3498 Pls +3186 1680 Pls +5058 1733 Pls +3186 1626 Pls +2718 1334 Pls +4122 1265 Pls +5526 1414 Pls +6466 4167 Pls +1.000 UL +LTb +1314 4500 N +0 -3924 V +5616 0 V +0 3924 V +-5616 0 V +Z stroke +1.000 UP +1.000 UL +LTb +stroke +grestore +end +showpage +%%Page: 4 4 +gnudict begin +gsave +50 50 translate +0.100 0.100 scale +90 rotate +0 -5040 translate +0 setgray +newpath +(TimesNewRoman) findfont 180 scalefont setfont +1.000 UL +LTb +1422 576 M +63 0 V +5445 0 R +-63 0 V +stroke +1314 576 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.001)] +] -60.0 MRshow +1.000 UL +LTb +1422 1230 M +63 0 V +5445 0 R +-63 0 V +stroke +1314 1230 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.0005)] +] -60.0 MRshow +1.000 UL +LTb +1422 1884 M +63 0 V +5445 0 R +-63 0 V +stroke +1314 1884 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0)] +] -60.0 MRshow +1.000 UL +LTb +1422 2538 M +63 0 V +5445 0 R +-63 0 V +stroke +1314 2538 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.0005)] +] -60.0 MRshow +1.000 UL +LTb +1422 3192 M +63 0 V +5445 0 R +-63 0 V +stroke +1314 3192 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.001)] +] -60.0 MRshow +1.000 UL +LTb +1422 3846 M +63 0 V +5445 0 R +-63 0 V +stroke +1314 3846 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.0015)] +] -60.0 MRshow +1.000 UL +LTb +1422 4500 M +63 0 V +5445 0 R +-63 0 V +stroke +1314 4500 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.002)] +] -60.0 MRshow +1.000 UL +LTb +1846 576 M +0 63 V +0 3861 R +0 -63 V +stroke +1846 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (pair)] +] -60.0 MCshow +1.000 UL +LTb +2269 576 M +0 63 V +0 3861 R +0 -63 V +stroke +2269 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (5)] +] -60.0 MCshow +1.000 UL +LTb +2693 576 M +0 63 V +0 3861 R +0 -63 V +stroke +2693 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (10)] +] -60.0 MCshow +1.000 UL +LTb +3117 576 M +0 63 V +0 3861 R +0 -63 V +stroke +3117 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (15)] +] -60.0 MCshow +1.000 UL +LTb +3540 576 M +0 63 V +0 3861 R +0 -63 V +stroke +3540 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (trip)] +] -60.0 MCshow +1.000 UL +LTb +3964 576 M +0 63 V +0 3861 R +0 -63 V +stroke +3964 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (5)] +] -60.0 MCshow +1.000 UL +LTb +4388 576 M +0 63 V +0 3861 R +0 -63 V +stroke +4388 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (10)] +] -60.0 MCshow +1.000 UL +LTb +4812 576 M +0 63 V +0 3861 R +0 -63 V +stroke +4812 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (15)] +] -60.0 MCshow +1.000 UL +LTb +5235 576 M +0 63 V +0 3861 R +0 -63 V +stroke +5235 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (quad)] +] -60.0 MCshow +1.000 UL +LTb +5659 576 M +0 63 V +0 3861 R +0 -63 V +stroke +5659 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (5)] +] -60.0 MCshow +1.000 UL +LTb +6083 576 M +0 63 V +0 3861 R +0 -63 V +stroke +6083 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (10)] +] -60.0 MCshow +1.000 UL +LTb +6506 576 M +0 63 V +0 3861 R +0 -63 V +stroke +6506 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (15)] +] -60.0 MCshow +1.000 UL +LTb +1.000 UL +LTa +1422 1884 M +5508 0 V +stroke +LTb +1422 4500 N +0 -3924 V +5508 0 V +0 3924 V +-5508 0 V +Z stroke +LCb setrgbcolor +360 2538 M +currentpoint gsave translate 90 rotate 0 0 moveto +[ [(TimesNewRoman) 180.0 0.0 true true 0 (energy)] +] -60.0 MCshow +grestore +LTb +LCb setrgbcolor +4176 126 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (diameter)] +] -60.0 MCshow +LTb +4176 4770 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (ECI vs cluster diameter)] +] -60.0 MCshow +1.000 UP +1.000 UL +LTb +1.000 UP +1.000 UL +LT0 +/TimesNewRoman findfont 180 scalefont setfont +2077 4268 Pls +2113 1783 Pls +2224 848 Pls +3808 1628 Pls +1.000 UL +LTb +1422 4500 N +0 -3924 V +5508 0 V +0 3924 V +-5508 0 V +Z stroke +1.000 UP +1.000 UL +LTb +stroke +grestore +end +showpage +%%Page: 5 5 +gnudict begin +gsave +50 50 translate +0.100 0.100 scale +90 rotate +0 -5040 translate +0 setgray +newpath +(TimesNewRoman) findfont 180 scalefont setfont +1.000 UL +LTb +1314 576 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 576 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.006)] +] -60.0 MRshow +1.000 UL +LTb +1314 968 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 968 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.005)] +] -60.0 MRshow +1.000 UL +LTb +1314 1361 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 1361 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.004)] +] -60.0 MRshow +1.000 UL +LTb +1314 1753 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 1753 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.003)] +] -60.0 MRshow +1.000 UL +LTb +1314 2146 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 2146 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.002)] +] -60.0 MRshow +1.000 UL +LTb +1314 2538 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 2538 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.001)] +] -60.0 MRshow +1.000 UL +LTb +1314 2930 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 2930 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0)] +] -60.0 MRshow +1.000 UL +LTb +1314 3323 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 3323 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.001)] +] -60.0 MRshow +1.000 UL +LTb +1314 3715 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 3715 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.002)] +] -60.0 MRshow +1.000 UL +LTb +1314 4108 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 4108 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.003)] +] -60.0 MRshow +1.000 UL +LTb +1314 4500 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 4500 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.004)] +] -60.0 MRshow +1.000 UL +LTb +1314 576 M +0 63 V +0 3861 R +0 -63 V +stroke +1314 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0)] +] -60.0 MCshow +1.000 UL +LTb +2437 576 M +0 63 V +0 3861 R +0 -63 V +stroke +2437 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 2)] +] -60.0 MCshow +1.000 UL +LTb +3560 576 M +0 63 V +0 3861 R +0 -63 V +stroke +3560 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 4)] +] -60.0 MCshow +1.000 UL +LTb +4684 576 M +0 63 V +0 3861 R +0 -63 V +stroke +4684 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 6)] +] -60.0 MCshow +1.000 UL +LTb +5807 576 M +0 63 V +0 3861 R +0 -63 V +stroke +5807 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 8)] +] -60.0 MCshow +1.000 UL +LTb +6930 576 M +0 63 V +0 3861 R +0 -63 V +stroke +6930 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 10)] +] -60.0 MCshow +1.000 UL +LTb +1.000 UL +LTa +1314 2930 M +5616 0 V +stroke +LTb +1314 4500 N +0 -3924 V +5616 0 V +0 3924 V +-5616 0 V +Z stroke +LCb setrgbcolor +360 2538 M +currentpoint gsave translate 90 rotate 0 0 moveto +[ [(TimesNewRoman) 180.0 0.0 true true 0 (energy)] +] -60.0 MCshow +grestore +LTb +LCb setrgbcolor +4122 126 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (line number in fit.out)] +] -60.0 MCshow +LTb +4122 4770 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (Residuals of the fit \(same order as in fit.out\))] +] -60.0 MCshow +1.000 UP +1.000 UL +LTb +1.000 UP +1.000 UL +LT0 +/TimesNewRoman findfont 180 scalefont setfont +1314 3053 Pls +1876 2492 Pls +2437 579 Pls +2999 2798 Pls +3560 4498 Pls +4122 2775 Pls +4684 3817 Pls +5245 3949 Pls +5807 2224 Pls +6368 3763 Pls +6930 2285 Pls +1.000 UL +LTb +1314 4500 N +0 -3924 V +5616 0 V +0 3924 V +-5616 0 V +Z stroke +1.000 UP +1.000 UL +LTb +stroke +grestore +end +showpage +%%Page: 6 6 +gnudict begin +gsave +50 50 translate +0.100 0.100 scale +90 rotate +0 -5040 translate +0 setgray +newpath +(TimesNewRoman) findfont 180 scalefont setfont +1.000 UL +LTb +1314 576 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 576 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.015)] +] -60.0 MRshow +1.000 UL +LTb +1314 1137 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 1137 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.01)] +] -60.0 MRshow +1.000 UL +LTb +1314 1697 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 1697 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.005)] +] -60.0 MRshow +1.000 UL +LTb +1314 2258 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 2258 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0)] +] -60.0 MRshow +1.000 UL +LTb +1314 2818 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 2818 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.005)] +] -60.0 MRshow +1.000 UL +LTb +1314 3379 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 3379 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.01)] +] -60.0 MRshow +1.000 UL +LTb +1314 3939 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 3939 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.015)] +] -60.0 MRshow +1.000 UL +LTb +1314 4500 M +63 0 V +5553 0 R +-63 0 V +stroke +1206 4500 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.02)] +] -60.0 MRshow +1.000 UL +LTb +1314 576 M +0 63 V +0 3861 R +0 -63 V +stroke +1314 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.015)] +] -60.0 MCshow +1.000 UL +LTb +2116 576 M +0 63 V +0 3861 R +0 -63 V +stroke +2116 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.01)] +] -60.0 MCshow +1.000 UL +LTb +2919 576 M +0 63 V +0 3861 R +0 -63 V +stroke +2919 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (-0.005)] +] -60.0 MCshow +1.000 UL +LTb +3721 576 M +0 63 V +0 3861 R +0 -63 V +stroke +3721 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0)] +] -60.0 MCshow +1.000 UL +LTb +4523 576 M +0 63 V +0 3861 R +0 -63 V +stroke +4523 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.005)] +] -60.0 MCshow +1.000 UL +LTb +5325 576 M +0 63 V +0 3861 R +0 -63 V +stroke +5325 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.01)] +] -60.0 MCshow +1.000 UL +LTb +6128 576 M +0 63 V +0 3861 R +0 -63 V +stroke +6128 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.015)] +] -60.0 MCshow +1.000 UL +LTb +6930 576 M +0 63 V +0 3861 R +0 -63 V +stroke +6930 396 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 ( 0.02)] +] -60.0 MCshow +1.000 UL +LTb +1.000 UL +LTa +1314 2258 M +5616 0 V +stroke +LTb +1314 4500 N +0 -3924 V +5616 0 V +0 3924 V +-5616 0 V +Z stroke +LCb setrgbcolor +360 2538 M +currentpoint gsave translate 90 rotate 0 0 moveto +[ [(TimesNewRoman) 180.0 0.0 true true 0 (predicted energy)] +] -60.0 MCshow +grestore +LTb +LCb setrgbcolor +4122 126 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (actual energy)] +] -60.0 MCshow +LTb +4122 4770 M +[ [(TimesNewRoman) 180.0 0.0 true true 0 (Fitted vs Calculated Energies)] +] -60.0 MCshow +1.000 UP +1.000 UL +LTb +1.000 UP +1.000 UL +LT0 +/TimesNewRoman findfont 180 scalefont setfont +3721 2223 Pls +3721 2383 Pls +3640 2873 Pls +1383 662 Pls +6136 3498 Pls +2830 1680 Pls +3333 1733 Pls +3234 1626 Pls +2109 1334 Pls +2640 1265 Pls +2249 1414 Pls +1.000 UL +LT1 +/TimesNewRoman findfont 180 scalefont setfont +1383 624 M +48 34 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +49 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +48 34 V +48 33 V +stroke +LTb +1314 4500 N +0 -3924 V +5616 0 V +0 3924 V +-5616 0 V +Z stroke +1.000 UP +1.000 UL +LTb +stroke +grestore +end +showpage +%%Trailer +%%DocumentFonts: TimesNewRoman +%%Pages: 6 diff --git a/glue/qe/example/Result/clusinfo.out b/glue/qe/example/Result/clusinfo.out new file mode 100644 index 0000000..d79c9d4 --- /dev/null +++ b/glue/qe/example/Result/clusinfo.out @@ -0,0 +1,4 @@ +2 2.732310 4 0.001823 +2 3.155000 3 -0.000077 +2 4.461844 6 -0.000792 +3 3.155000 12 -0.000196 diff --git a/glue/qe/example/Result/clusters.out b/glue/qe/example/Result/clusters.out new file mode 100644 index 0000000..e932497 --- /dev/null +++ b/glue/qe/example/Result/clusters.out @@ -0,0 +1,33 @@ +1 +0.000000 +0 + +1 +0.000000 +1 +-0.500000 0.500000 1.500000 + +4 +2.732310 +2 +-0.500000 0.500000 1.500000 +-1.000000 1.000000 1.000000 + +3 +3.155000 +2 +-0.500000 0.500000 1.500000 +-0.500000 0.500000 2.500000 + +6 +4.461844 +2 +-0.500000 0.500000 1.500000 +-0.500000 1.500000 0.500000 + +12 +5.231976 +2 +-0.500000 0.500000 1.500000 +-0.000000 1.000000 0.000000 + diff --git a/glue/qe/example/Result/eci.out b/glue/qe/example/Result/eci.out new file mode 100644 index 0000000..4f735bc --- /dev/null +++ b/glue/qe/example/Result/eci.out @@ -0,0 +1,6 @@ +0.002389 +0.000715 +0.004498 +0.000323 +-0.001712 +-0.000890 diff --git a/glue/qe/example/Result/fit.out b/glue/qe/example/Result/fit.out new file mode 100644 index 0000000..855c40d --- /dev/null +++ b/glue/qe/example/Result/fit.out @@ -0,0 +1,11 @@ +0.000000 0.000000 -0.000313 0.000313 1.000000 0 +1.000000 0.000000 0.001116 -0.001116 1.000000 1 +0.500000 -0.000502 0.005490 -0.005992 1.000000 2 +0.500000 -0.014568 -0.014230 -0.000338 1.000000 3 +0.666667 0.015054 0.011059 0.003995 1.000000 5 +0.333333 -0.005551 -0.005155 -0.000396 1.000000 6 +0.666667 -0.002420 -0.004679 0.002259 1.000000 7 +0.333333 -0.003037 -0.005634 0.002597 1.000000 8 +0.250000 -0.010043 -0.008242 -0.001801 1.000000 13 +0.500000 -0.006733 -0.008855 0.002122 1.000000 14 +0.750000 -0.009171 -0.007528 -0.001644 1.000000 15 diff --git a/glue/qe/example/Result/gs.out b/glue/qe/example/Result/gs.out new file mode 100644 index 0000000..e7c1771 --- /dev/null +++ b/glue/qe/example/Result/gs.out @@ -0,0 +1,5 @@ +0.000000 0.000000 -0.000313 0 +0.250000 -0.010043 -0.008242 13 +0.500000 -0.014568 -0.014230 3 +0.750000 -0.009171 -0.007528 15 +1.000000 0.000000 0.001116 1 diff --git a/glue/qe/example/Result/gs_str.out b/glue/qe/example/Result/gs_str.out new file mode 100644 index 0000000..f74506b --- /dev/null +++ b/glue/qe/example/Result/gs_str.out @@ -0,0 +1,52 @@ +3.155000 0.000000 0.000000 +0.000000 3.155000 0.000000 +0.000000 0.000000 3.155000 +0.500000 0.500000 0.500000 +-0.500000 -0.500000 0.500000 +0.500000 -0.500000 -0.500000 +0.500000 -0.500000 0.500000 Mo +end + +3.155000 0.000000 0.000000 +0.000000 3.155000 0.000000 +0.000000 0.000000 3.155000 +1.000000 -1.000000 0.000000 +1.000000 -0.000000 1.000000 +0.000000 -1.000000 1.000000 +1.500000 -1.500000 1.500000 W +2.000000 -2.000000 2.000000 Mo +0.500000 -0.500000 0.500000 Mo +1.000000 -1.000000 1.000000 Mo +end + +3.155000 0.000000 0.000000 +0.000000 3.155000 0.000000 +0.000000 0.000000 3.155000 +-0.000000 1.000000 0.000000 +-0.000000 -0.000000 1.000000 +1.000000 0.000000 0.000000 +0.500000 0.500000 0.500000 W +1.000000 1.000000 1.000000 Mo +end + +3.155000 0.000000 0.000000 +0.000000 3.155000 0.000000 +0.000000 0.000000 3.155000 +1.000000 -1.000000 0.000000 +1.000000 -0.000000 1.000000 +0.000000 -1.000000 1.000000 +1.500000 -1.500000 1.500000 W +2.000000 -2.000000 2.000000 W +0.500000 -0.500000 0.500000 W +1.000000 -1.000000 1.000000 Mo +end + +3.155000 0.000000 0.000000 +0.000000 3.155000 0.000000 +0.000000 0.000000 3.155000 +0.500000 0.500000 0.500000 +-0.500000 -0.500000 0.500000 +0.500000 -0.500000 -0.500000 +0.500000 -0.500000 0.500000 W +end + diff --git a/glue/qe/example/Result/mapsrep.gnu b/glue/qe/example/Result/mapsrep.gnu new file mode 100644 index 0000000..054e504 --- /dev/null +++ b/glue/qe/example/Result/mapsrep.gnu @@ -0,0 +1,40 @@ +set xlabel "concentration" +set ylabel "energy" +set title "Fitted Energies" +plot [0:1] \ +'predstr.out' u 1:3 t "predicted" w p 2, \ +'fit.out' u 1:3 t "known str" w p 1, \ +'gs.out' u 1:3 t "known gs" w linesp 3, \ +'newgs.out' u 1:3 t "predicted gs" w p 4 +pause -1 +set title "Calculated Energies" +plot [0:1] \ +'fit.out' u 1:2 t "known str" w p 5, \ +'gs.out' u 1:2 t "known gs" w linesp 6 +pause -1 +set title "Calculated and Fitted Energies" +plot [0:1] \ +'fit.out' u 1:2 t "calculated" w p 5, \ +'fit.out' u 1:3 t "fitted" w p 1 +pause -1 +set xlabel "diameter" +set ylabel "energy" +set title "ECI vs cluster diameter" +set nokey +set xzeroaxis +set xtics ("pair" 0,"5" 5,"10" 10,"15" 15, "trip" 20,"5" 25,"10" 30,"15" 35, "quad" 40,"5" 45,"10" 50,"15" 55) +plot [-5:60] 'clusinfo.out' u (($1-2)*20.+$2):($4) +pause -1 +set title "Residuals of the fit (same order as in fit.out)" +set xtics autofreq +set ylabel "energy" +set xlabel "line number in fit.out" +plot 'fit.out' u 4 +pause -1 +set title "Fitted vs Calculated Energies" +set ylabel "predicted energy" +set xlabel "actual energy" +set nokey +plot \ +'fit.out' u 2:3 w p 1,x +pause -1 diff --git a/glue/qe/example/Result/newgs.out b/glue/qe/example/Result/newgs.out new file mode 100644 index 0000000..0d3e099 --- /dev/null +++ b/glue/qe/example/Result/newgs.out @@ -0,0 +1 @@ +0.250000 0.000000 -0.009420 ? ug diff --git a/glue/qe/example/Result/predstr.out b/glue/qe/example/Result/predstr.out new file mode 100644 index 0000000..6e43996 --- /dev/null +++ b/glue/qe/example/Result/predstr.out @@ -0,0 +1,46 @@ +0.333333 0.000000 0.010583 ? u +0.666667 0.000000 -0.005158 ? u +0.250000 0.000000 0.007859 ? u +0.500000 0.000000 0.013487 ? u +0.750000 0.000000 0.008574 ? u +0.250000 0.000000 -0.002915 ? u +0.500000 0.000000 -0.008062 ? u +0.750000 0.000000 -0.002201 ? u +0.250000 0.000000 -0.001069 ? u +0.750000 0.000000 -0.000355 ? u +0.250000 0.000000 0.002148 ? u +0.500000 0.000000 0.002066 ? u +0.750000 0.000000 0.002863 ? u +0.250000 0.000000 -0.000746 ? u +0.500000 0.000000 0.006137 ? u +0.750000 0.000000 -0.000031 ? u +0.250000 0.000000 0.003861 ? u +0.750000 0.000000 0.004575 ? u +0.200000 0.000000 0.006225 ? u +0.400000 0.000000 0.008546 ? u +0.400000 0.000000 0.010727 ? u +0.600000 0.000000 0.008832 ? u +0.600000 0.000000 0.011013 ? u +0.800000 0.000000 0.007082 ? u +0.200000 0.000000 -0.004682 ? u +0.400000 0.000000 -0.008946 ? u +0.400000 0.000000 -0.004501 ? u +0.600000 0.000000 -0.008660 ? u +0.600000 0.000000 -0.004215 ? u +0.800000 0.000000 -0.003824 ? u +0.200000 0.000000 -0.000659 ? u +0.400000 0.000000 -0.009073 ? u +0.400000 0.000000 0.007694 ? u +0.600000 0.000000 -0.008787 ? u +0.600000 0.000000 0.007979 ? u +0.800000 0.000000 0.000198 ? u +0.200000 0.000000 0.002368 ? u +0.400000 0.000000 -0.000186 ? u +0.400000 0.000000 0.007888 ? u +0.600000 0.000000 0.000100 ? u +0.600000 0.000000 0.008174 ? u +0.800000 0.000000 0.003225 ? u +0.200000 0.000000 -0.001025 ? u +0.400000 0.000000 -0.001238 ? u +0.600000 0.000000 -0.000952 ? u +0.800000 0.000000 -0.000167 ? u diff --git a/glue/qe/runstruct_qe b/glue/qe/runstruct_qe new file mode 100755 index 0000000..c5e38bc --- /dev/null +++ b/glue/qe/runstruct_qe @@ -0,0 +1,134 @@ +#!/bin/bash +# This bash scrpit is for the interface between ATAT and Quantum-ESPRESSO v5.0 +# The final result will be in eV unit +# Produced by GAO Zhe, Mater. Sci & Eng, Seoul Nat'l Univ., S. Korea +# email to gaozhe1983(a)snu.ac.kr + +# Set the k-points density in reciprocal space +KPPRA=1000 + +# Set the command to run pw.x, for example, +# if you wanna run it with 4 cores/cpus, set it +# as "$MPI_PATH/mpirun -n 4 $QE_PATH/pw.x" +PWCOMMAND="pw.x" + +# Set some calculation parameters here, which contents: +# cut-off energy for wave-functions and charge density; +# gaussian broadening parameter for smearing; +# especially, the directory where restore your pseudo-potential files. +# Definitely, you can directly set these and some other parameters +# in the input file-creating part. +######################################################################## +# Recommand from the official manual of Quantum-ESPRESSO: # +# for Norm-Conserving pseudo-potential, the cut-off for charge density # +# does not need to be setted (or, 4 times of ecutwfc). # +# But for ultrasoft pseudo-potential, set the cut-off for charge # +# density to 8~10 times of cut-off for wavefunctions. # +######################################################################## +PseudoDIR=/usr/local/pseudo +CUT_WFC= +CUT_CHG= +DEGAUSS= + +# Try to find the parameter setting file, which contents the +# information for species of elements +# If this file does not exist, the script will stop +ParamFile=qe.param +if [ ! -e $ParamFile ]; then + ParamFile="../qe.param" + if [ ! -e $ParamFile ]; then + ParamFile="../../qe.param" + if [ ! -e $ParamFile ]; then + echo " Cannot find the param file qe.param, stop the code!" + exit 1 + fi + fi +fi + +# Create the fist part of input file for QE v5.0 +cat > pwscf.in <> pwscf.in +echo " ntyp = $NTYPE , " >> pwscf.in + +# Create the temp input file, which corresponds to +# the second big part. After creating, it will be +# attached follow the former one and deleted. +cat > pwscf.tmp <> pwscf.in +rm -f pwscf.tmp + +# Find and write the lattice vector information +cat str.out | cellcvrt -c -sig=9 | tail -n +4 | head -3 >> pwscf.in + +# Find and write the information for element type, mass +# and pseudo-potential files' name +echo "ATOMIC_SPECIES" >> pwscf.in +INT=1 +while [ "$INT" -le "$NTYPE" ]; do + KIND=pp`cellcvrt -f < str.out | tail -n +7 | awk '{print $4}' | sort -u | head -${INT} | tail -1` + grep "$KIND" $ParamFile | awk '{print " " $2, $3, $4}' >> pwscf.in + let "$((INT++))" +done + +# Find and write the atoms' position to input file +echo "ATOMIC_POSITIONS angstrom" >> pwscf.in +cat str.out | cellcvrt -c -sig=9 | tail -n +7 | awk '{print " " $4, $1, $2, $3 }' >> pwscf.in + +# Find the k-points mesh, the mesh will be created +# by Monkhorst-Pack method +echo "K_POINTS automatic" >> pwscf.in +nbat=`cellcvrt -pn < str.out` +echo " " `( echo $KPPRA $nbat | awk '{print $1/$2}' ; cat str.out | cellcvrt -f | head -3 ) | kmesh -q -r` 0 0 0 >> pwscf.in + +# Run pw.x for calculation +$PWCOMMAND < pwscf.in > pwscf.out + +# Abstract the final total energy to "energy" file +# in the unit of eV +FERy=`grep '!' pwscf.out | tail -1 | cut -c 35-50` +FEeV=`echo "scale=15; $FERy*13.605698066" | bc -l` +echo "$FEeV" > energy + diff --git a/glue/siesta/runstruct_siesta b/glue/siesta/runstruct_siesta new file mode 100755 index 0000000..37d5e2d --- /dev/null +++ b/glue/siesta/runstruct_siesta @@ -0,0 +1,415 @@ +#!/usr/bin/perl -w +use strict; +#use List::MoreUtils qw / pairwise/; +use File::Temp qw/ tempfile tempdir /; +use File::Copy; +use Getopt::Long; + +my $conf = {"cleanup" => 0, "oute"=> "energy", "name" => "XYZ"}; +my $RUN_PREFIX = ""; #"mpirun --host node10,node11 -np 8"; +my $siesta = "siesta"; +my $PSEUDODIR = "/home/gkolesov/run/Pseudo/GGA"; +$PSEUDODIR = $ENV{PSEUDODIR} if $ENV{PSEUDODIR}; +$PSEUDODIR = $ENV{SIESTA_PSEUDO} if $ENV{SIESTA_PSEUDO}; + +my @argv_orig = @ARGV; +GetOptions( + "c|cleanup!" => \$conf->{cleanup}, + "v|verbose!" => \$conf->{verbose}, + "n|dry!" => \$conf->{dry}, + "o|oute=s" => \$conf->{oute}, + "x|name=s" => \$conf->{name}, + "e|cmd=s" => \$siesta, + "p|ppdir=s" => \$PSEUDODIR, + "r|runprefix=s" => \$RUN_PREFIX, + "h|help!" => \&print_usage_and_die, + ); + + +if(@ARGV>0){ + my $remotecmd = pop @argv_orig; + print STDERR "ARGV: @ARGV\n"; + $remotecmd = "@ARGV" if @ARGV>1; + #$remotecmd = "node" unless defined $remotecmd; + + exit( mysystem("$remotecmd runstruct_siesta @argv_orig") ); + +} + + +my $anumber = atom_number_table(); + +my ($lvec,$atoms) = parse_strout("str.out"); +my $ddd =1; + +# make_fdf("/tmp/y", $lvec, $atoms); +my $E=run_siesta($lvec,$atoms); +if($E==99999.){ + open(my $fw, '>', 'error') || die "Can not open file for writing: $!"; + close $fw; +} + +print "E = $E\n" if $conf->{verbose}; +unless($conf->{dry}){ + open(my $fw, '>', $conf->{oute}) || die "Can not open file: $!"; + print $fw $E; + close $fw; +} + +sub make_fdf{ + my ($fname,$lvec,$atoms) = @_; + + my %h=(); + my $k = 1; + foreach my $a (@$atoms){ + $h{$a->{type}} = $k++ unless defined $h{$a->{type}}; + } + + my $acnt = scalar keys %h; + + open(my $fw, '>', $fname) || die "Can not open file for writing: $!"; + print $fw siesta_head(); + print $fw "SystemLabel $conf->{name}\n"; + print $fw "LatticeConstant 1.0 Ang\n"; + print $fw "Number_of_species $acnt\n"; + print $fw "NumberOfAtoms ",scalar @$atoms,"\n\n"; + print $fw "%block Chemical_Species_label\n"; + foreach my $t (sort {$h{$a} <=> $h{$b}} keys %h){ + printf $fw " %-2d %-3d %s\n", $h{$t}, $anumber->{$t}, $t; + } + print $fw "%endblock Chemical_Species_label\n\n"; + print $fw "%block LatticeVectors\n"; + foreach my $v (@$lvec){ + printf $fw " % -3.8f % -3.8f % -3.8f\n", @$v; + } + print $fw "%endblock LatticeVectors\n\n"; + + print $fw "%block AtomicCoordinatesAndAtomicSpecies\n"; + foreach my $a (@$atoms){ + printf $fw " % -3.8f % -3.8f % -3.8f %d\n", @{$a->{coord}}, + $h{$a->{type}}; + } + print $fw "%endblock AtomicCoordinatesAndAtomicSpecies\n"; + + close $fw; +} + + + + +sub get_energy{ + my ($siestaout) = @_; + + open(my $fh, $siestaout) || die "Can not open file: $!"; + my $readtot = 0; + my $energy = 99999.; + while(<$fh>){ + if($readtot){ + if(/^siesta.*?Total\s*=\s*(\S+)/i){ + $energy = $1; + last; + } + next; + } + $readtot=1 if /^siesta:\s*Final\s+energy/; + + } + close $fh; + return $energy; +} + +sub run_siesta{ + my ($lvec,$atoms) = @_; + my $tdir = "siesta.$conf->{name}"; #tempdir(DIR => "./", CLEANUP => $conf->{cleanup}); + mkdir $tdir || die "Can not mkdir $tdir : $!"; + chdir $tdir || die "Can not chdir into dir : $!"; + + my $fname = "$conf->{name}.fdf"; + my $siestaout = "siesta.out"; + make_fdf($fname, $lvec, $atoms); + + my %atype = map {$_->{type} => 1} @$atoms; + foreach my $a (keys %atype){ + if(-e "$PSEUDODIR/$a.psf"){ + copy("$PSEUDODIR/$a.psf", "$a.psf"); + } + else{ + die "No pseudopotential for element $a is found.\n"; + } + } + + my $cmd = "$RUN_PREFIX $siesta < $fname > $siestaout"; + + mysystem($cmd); + + my $E = get_energy($siestaout); + + + chdir "../" || die "Can not chdir ../ : $!"; + if($conf->{cleanup}){ + system("/bin/rm -rf $tdir"); + } + + return $E; + +} + + +sub mysystem{ + if($conf->{dry} || $conf->{verbose}){ + print STDOUT "@_\n"; + return system("/bin/true",3) if $conf->{dry} && $conf->{verbose}; + return 0 if $conf->{dry}; + } + + return system(@_); +} + + +sub parse_strout{ + my ($file) = @_; + + open(my $fh, $file) || die "Can not open file: $!"; + my @cvec = map {$_=<$fh>; [split] } (0..2); + my @lvec = map {$_=<$fh>; [split] } (0..2); + + my @clvec = map {cvec2cart($_,\@cvec)} @lvec; + + my @atoms = (); + while(<$fh>){ + my @t = split /[\s,]+/; + my $a = pop @t; + my $v = cvec2cart(\@t,\@cvec); + push @atoms, {type => $a, coord => $v}; + + } + close $fh; + + return (\@clvec,\@atoms); +} + +sub cvec2cart{ + my ($v,$cvec) = @_; + local $^W = 0; + + #my @t=pairwise { [map {$a *$_} @$b] } @$v,@$cvec; + my @t = (); + for(my $i=0; $i<@$v; $i++){ + my $a = $v->[$i]; + my $b = $cvec->[$i]; + push @t, [map {$a * $_} @$b]; + } + + my @l = (); + for(my $i=0; $i<3; $i++){ + do { $l[$i]+=$_->[$i] } foreach @t; + } + + return \@l; + +} + +sub atom_number_table{ + my %t = ( + "H" => 1 , + "He" => 2 , + "Li" => 3 , + "Be" => 4 , + "B" => 5 , + "C" => 6 , + "N" => 7 , + "O" => 8 , + "F" => 9 , + "Ne" => 10 , + "Na" => 11 , + "Mg" => 12 , + "Al" => 13 , + "Si" => 14 , + "P" => 15 , + "S" => 16 , + "Cl" => 17 , + "Ar" => 18 , + "K" => 19 , + "Ca" => 20 , + "Sc" => 21 , + "Ti" => 22 , + "V" => 23 , + "Cr" => 24 , + "Mn" => 25 , + "Fe" => 26 , + "Co" => 27 , + "Ni" => 28 , + "Cu" => 29 , + "Zn" => 30 , + "Ga" => 31 , + "Ge" => 32 , + "As" => 33 , + "Se" => 34 , + "Br" => 35 , + "Kr" => 36 , + "Rb" => 37 , + "Sr" => 38 , + "Y" => 39 , + "Zr" => 40 , + "Nb" => 41 , + "Mo" => 42 , + "Tc" => 43 , + "Ru" => 44 , + "Rh" => 45 , + "Pd" => 46 , + "Ag" => 47 , + "Cd" => 48 , + "In" => 49 , + "Sn" => 50 , + "Sb" => 51 , + "Te" => 52 , + "I" => 53 , + "Xe" => 54 , + "Cs" => 55 , + "Ba" => 56 , + "La" => 57 , + "Ce" => 58 , + "Pr" => 59 , + "Nd" => 60 , + "Pm" => 61 , + "Sm" => 62 , + "Eu" => 63 , + "Gd" => 64 , + "Tb" => 65 , + "Dy" => 66 , + "Ho" => 67 , + "Er" => 68 , + "Tm" => 69 , + "Yb" => 70 , + "Lu" => 71 , + "Hf" => 72 , + "Ta" => 73 , + "W" => 74 , + "Re" => 75 , + "Os" => 76 , + "Ir" => 77 , + "Pt" => 78 , + "Au" => 79 , + "Hg" => 80 , + "Tl" => 81 , + "Pb" => 82 , + "Bi" => 83 , + "Po" => 84 , + "At" => 85 , + "Rn" => 86 , + "Fr" => 87 , + "Ra" => 88 , + "Ac" => 89 , + "Th" => 90 , + "Pa" => 91 , + "U" => 92 , + "Np" => 93 , + "Pu" => 94 , + "Am" => 95 , + "Cm" => 96 , + "Bk" => 97 , + "Cf" => 98 , + "Es" => 99 , + "Fm" => 100, + "Md" => 101, + "No" => 102, + "Lr" => 103, + "Rf" => 104, + "Db" => 105, + "Sg" => 106, + "Bh" => 107, + "Hs" => 108, + "Mt" => 109, + "Ds" => 110, + "Rg" => 111, + "Cn" => 112, + "Uut" => 113, + "Fl" => 114, + "Uup" => 115, + "Lv" => 116, + "Uus" => 117, + "Uuo" => 118 + ); + return \%t; +} + +sub siesta_head{ + foreach my $head ("siesta.wrap", "../siesta.wrap","../../siesta.wrap"){ + if(-f $head){ + open(my $fh, $head) || die "Can not open $head: $!"; + local $/ = undef; + my $t = <$fh>; + close $fh; + return $t; + } + } + + return <! ${prefix}_ref.in + echo ${prefix}_ref.in file created with 0 as reference energies. + echo Type emc2tc -h for more help +endif + +if ( ! -e ${prefix}_head.in ) then + cat - >! ${prefix}_head.in <! ${prefix}_tc.out + +if ( "$energy" == "GMR" ) then + awk '{print ((1+$4)/2), ($5+$2*$4)}' ${prefix}_mc.in | \ + awk 'BEGIN {getline < "'${prefix}_ref.in'"; a=$1; b=$2} {print ($1), (($2-(1-$1)*a-($1*b))*96325)}' >> ${prefix}_tc.out +else + awk '{print ((1+$4)/2), ($3+$2*$4)}' ${prefix}_mc.in | \ + awk 'BEGIN {getline < "'${prefix}_ref.in'"; a=$1; b=$2} {print ($1), (($2-(1-$1)*a-($1*b))*96325)}' >> ${prefix}_tc.out +endif + +echo TABLE-END >> ${prefix}_tc.out diff --git a/glue/vasp/checkerr_vasp b/glue/vasp/checkerr_vasp new file mode 100755 index 0000000..5d07edc --- /dev/null +++ b/glue/vasp/checkerr_vasp @@ -0,0 +1,30 @@ +#!/bin/csh +set thereiserr=0 + +if (-e vasp.out.static) then + foreach errmsg ( "segmen" "SIGDEV" "cnorm" ) + grep -i -q $errmsg vasp.out.static + if ( $status == 0 ) then + set thereiserr=1 + endif + end +endif + +if (-e vasp.out.relax) then + foreach errmsg ( "non-integer" ) + grep -i -q $errmsg vasp.out.relax + if ( $status == 0 ) then + set thereiserr=1 + endif + end +endif + +if ( $thereiserr == 1 && x$1 == "x-e" ) then + echo "An error occured during this vasp run. Check vasp.out.static and vasp.out.relax for more information." >! error +endif + +if ( $thereiserr == 1 && x$1 == "x-p" ) then + echo Error in `pwd` +endif + +exit $thereiserr diff --git a/glue/vasp/cleanvasp b/glue/vasp/cleanvasp new file mode 100755 index 0000000..f3a4efb --- /dev/null +++ b/glue/vasp/cleanvasp @@ -0,0 +1,17 @@ +#!/bin/csh +rm -f CHG CHGCAR WAVECAR POTCAR +rm -f EIGENVAL IBZKPT PCDAT XDATCAR +rm -f INCAR POSCAR KPOINTS +if ( -e TMPBROYD ) rm -f TMPBROYD +if ( "x"$1 == "x-s" ) then + cat OUTCAR | awk 'BEGIN {v=1;} /FEWALD/ {v=0;} /EDIFF/ {v=1;} {if (v==1) print $0;}' | \ + awk 'BEGIN {v=1;} /non-local-force/ {v=0;} /TOTAL-FORCE/ {v=1;} {if (v==1) print $0;}'>! OUTCAR.short + rm -f OUTCAR +endif +if ( "x"$1 == "x-v") then + rm -f CONTCAR OSZICAR OUTCAR vasp.out DOSCAR +endif +if ( "x"$1 == "x-f") then + rm -f CONTCAR + mv OSZICAR OSZICAR.done +endif diff --git a/glue/vasp/doberryvasp b/glue/vasp/doberryvasp new file mode 100755 index 0000000..b30fe15 --- /dev/null +++ b/glue/vasp/doberryvasp @@ -0,0 +1,28 @@ +#!/bin/csh + +if ( ! -e berry ) then + mkdir berry +endif + +cd berry + +if ( x$1 != "x-ex" ) then + +source ~/.ezvasp.rc +cp -f ../str_relax.out str_hint.out +runstruct_vasp -nr -w vasp_berry.wrap +cp -f INCAR INCAR.berry +grep -i -v -e LBERRY -e NPPSTR -e DIPOL INCAR.berry > INCAR +$* $VASPCMD >& vaspc.out + +foreach axis ( 1 2 3 ) + runstruct_vasp -nr -w vasp_berry.wrap + echo IGPAR = $axis >> INCAR + $* $VASPCMD >& vasp${axis}.out + cp -f OUTCAR OUTCAR_berry_$axis +end + +endif + +set volume=`getvalue "volume of cell" < OUTCAR | tail -n -1` +grep '' OUTCAR_berry_? | getlines -bt 'Berry-Phase' 'ionic' | grep electron | sed 's/,//g' | awk '{x+=$4; y+=$5; z+=$6}; END {s=1.602176e-19*1e20/'$volume'; printf "%7.4f %7.4f %7.4f\n",s*x,s*y,s*z;}' >! ../dipol.out diff --git a/glue/vasp/extract_vasp b/glue/vasp/extract_vasp new file mode 100755 index 0000000..8a02e09 --- /dev/null +++ b/glue/vasp/extract_vasp @@ -0,0 +1,94 @@ +#!/bin/csh + +set oszicar=OSZICAR.static +if ( ! -e $oszicar ) then + set oszicar=OSZICAR +endif + +if ( ! -e $oszicar ) then + echo unable to open OSZICAR or OSZICAR.static + exit 1 +endif + +foreach tryposcar (CONTCAR.static CONTCAR POSCAR.static POSCAR ) + set poscar=$tryposcar + if ( -e $poscar ) then + break + endif +end + +if ( ! -e $poscar ) then + echo Cannot open CONTCAR.static or CONTCAR or POSCAR.static or POSCAR + exit 1 +endif + +set outcar=OUTCAR.static + +if ( ! -e $outcar ) then + if ( -e OUTCAR.static.gz ) then + gunzip OUTCAR.static.gz + else + set outcar=OUTCAR + endif +endif + +if ( ! -e $outcar ) then + if ( -e OUTCAR.gz ) then + gunzip OUTCAR.gz + else + echo unable to open OUTCAR.static or OUTCAR + exit 1 + endif +endif + +getvalue F < $oszicar | tail -n -1 >! energy +#getvalue E0 < $oszicar | tail -n -1 >! energy + +if ( -e atomlabel.tmp ) then + cat atomlabel.tmp | grep -v Va >! atoms_rep.tmp +# cat atomlabel.tmp | grep -v Vac >! atoms_rep.tmp +else + grep TITEL $outcar | sed 's/.*=//g' | awk '{print $2}' | sed 's/_.*//g' >! atoms.tmp + + tail -n +6 $poscar | head -1 | blanktonl >! rep.tmp + grep -q -e '[a-z]' -e '[A-Z]' rep.tmp + if ( $status == 0 ) then + tail -n +7 $poscar | head -1 | blanktonl >! rep.tmp + endif + paste atoms.tmp rep.tmp | awk '{for (i=1; i<=$2+0; i++) {print $1;}}' >! atoms_rep.tmp + rm -f atoms.tmp rep.tmp +endif + +tail -n +2 $poscar | getlines -jaf '^[DdCc]' | awk '{print $1,$2,$3}' | getlines -jbf '^ *$' | getlines -jbf 'Lattice' >! pos.tmp + +tail -n +2 $poscar | grep -q "^[cC]" +if ( $status == 1 ) then + tail -n +2 $poscar | head -4 | awk 'BEGIN {getline; s=$1} {print s*$1,s*$2,s*$3}' >! str_relax.out + ( echo 1 0 0 ; echo 0 1 0 ; echo 0 0 1 ) >> str_relax.out +else + ( echo 1 0 0 ; echo 0 1 0 ; echo 0 0 1 ) >! str_relax.out + tail -n +2 $poscar | head -4 | awk 'BEGIN {getline; s=$1} {print s*$1,s*$2,s*$3}' >> str_relax.out +endif +paste pos.tmp atoms_rep.tmp >> str_relax.out + +rm -f atoms_rep.tmp pos.tmp + +grep -q "TOTAL-FORCE" $outcar +if ( $status == 0 ) then + tail -n +`cat $outcar | grep -n 'TOTAL-FORCE' | sed 's/:.*//g' | tail -n -1` $outcar | tail -n +3 | getlines -jbf '----' | awk '{print $4,$5,$6}' >! force.out +else + echo Unable to find force output in $outcar - vasp run probably crashed. + touch error +endif + + +cat $outcar | grep "in kB" | tail -n -1 | sed 's/in kB//g' | awk '{print $1,$4,$6; print $4,$2,$5; print $6,$5,$3}' >! stress.out + +cat $outcar | getlines -bt "Following reciprocal coordinates:" "Following cartesian coordinates:" | tail -n +2 | awk '{if ($4!="") print $4;}' >! kweights.tmp +cat $outcar | getlines -jbt "band No." '^$' >! eigen.tmp +echo 501 `sort -n -k 2 eigen.tmp | head -1 | awk '{print $2}' ; sort -n -k 2 eigen.tmp | tail -n -1 | awk '{print $2}' ; getvalue NELECT < $outcar ; getvalue ISPIN < $outcar` >! dat.tmp + +awk 'BEGIN {getline < "dat.tmp"; Emin=$2; dE=0.05; m=int(($3-$2)/dE)+1; nelec=$4; if (NF==5) {s=$5} else {s=$6}; n=0; tw=0; while (getline < "kweights.tmp") {n++; w[n]=$1; tw+=$1;} maxn=n; n=0; for (i=0; i<=m; i++) dos[i]=0;} {if ($1==1) {n++;if (n>maxn) {n=1;}} dos[int(($2-Emin)/dE)]+=(3-s)*w[n]/tw/dE; } END {print nelec,dE,1.; for (i=0; i<=m; i++) {print dos[i];}}' eigen.tmp >! dos.out +rm -f kweights.tmp eigen.tmp dat.tmp + +cat $outcar | getlines -jbt 'SECOND DERIVATIVES' 'eigenvalues' | sed 's/[0-9]*[XYZ]//g' | grep -v -e '\-\-\-\-' -e '^ *$' >! hessian.out diff --git a/glue/vasp/ezvasp b/glue/vasp/ezvasp new file mode 100755 index 0000000..ad9fc2b --- /dev/null +++ b/glue/vasp/ezvasp @@ -0,0 +1,351 @@ +#!/bin/csh + +if ( ! -e ~/.ezvasp.rc ) then +cat - >! ~/.ezvasp.rc <! vaspin.tmp + +getlines -jaf "\[[Ii][Nn][Cc]" < vaspin.tmp | getlines -jbf "\\[" | grep -v '^[ ]*$' | \ + grep -v -i -e subatom -e magatom -e kppra -e kscheme -e dostat -e dogga -e usepot -e 'istart[ ]*=[ ]*2' >! INCAR + +grep -i subatom vaspin.tmp | sed 's/.*=//g' >! sed.tmp + +(getlines -jaf "\[[Pp][Oo][Ss]" < vaspin.tmp | getlines -jbf "\\[") | grep -v '^[ ]*$' >! preposcar.tmp +cat preposcar.tmp | sed -f sed.tmp >! poscar.tmp + +cat preposcar.tmp | tail -n +7 | awk '{print $4}' >! atomlabel.tmp1 +cat preposcar.tmp | tail -n +7 | awk '{print $4}' | sed -f sed.tmp >! atomlabel.tmp2 +paste atomlabel.tmp2 atomlabel.tmp1 | sort -k 1,1 -s | awk '{n=split($0,a); print a[n]}' >! atomlabel.tmp + +tail -n +3 poscar.tmp | head -3 >! oldcell.tmp + +set posmode=`head -6 poscar.tmp | tail -n -1` + +tail -n +7 poscar.tmp | awk '{print $5,$6,$7}' | grep -q '[TF]' +if ( $status == 0 ) then + set seldyn +endif + +if ($?latvectpatch) then + cat oldcell.tmp | fixcell -c >! newcell.tmp + cp -f newcell.tmp cell.tmp +else + cp -f oldcell.tmp newcell.tmp + cp -f oldcell.tmp cell.tmp +endif + +tail -n +6 poscar.tmp | head -1 | grep -q -i '^d' +if ($status == 0 && $?latvectpatch) then + tail -n +7 poscar.tmp | \ + awk 'BEGIN {for (i=1; i<=3; i++) {getline < "oldcell.tmp"; a[1,i]=$1; a[2,i]=$2; a[3,i]=$3; }} \ + {c[1]=0; c[2]=0; c[3]=0; b[1]=$1; b[2]=$2; b[3]=$3; \ + for (i=1; i<=3; i++) { \ + for (j=1; j<=3; j++) {c[i]=c[i]+a[i,j]*b[j]} \ + } \ + print $4,c[1],c[2],c[3],$5,$6,$7}' | sort -k 1,1 -s >! vacpos.tmp + set posmode=Cartesian +else + tail -n +7 poscar.tmp | awk '{print $4,$1,$2,$3,$5,$6,$7}' | sort -k 1,1 -s >! vacpos.tmp +endif + +grep -v Va vacpos.tmp >! pos.tmp +#grep -v Vac vacpos.tmp >! pos.tmp + +awk '{nb_atom[$1]++} END {for (atom in nb_atom) {print atom,nb_atom[atom]}}' pos.tmp | sort -k 1,1 -s >! atom.tmp +( head -2 poscar.tmp ; \ + cat cell.tmp ; \ + echo `awk '{print $2}' atom.tmp` ; \ + if ($?seldyn) echo Selective Dynamics ; \ + echo $posmode ; \ + awk '{print $2,$3,$4,$5,$6,$7,$1}' pos.tmp \ +) >! POSCAR + +grep -q -i dostat vaspin.tmp +if ($status == 0) then + set dostatic +endif + +grep -q -i kppra vaspin.tmp +if ($status == 0) then + grep -q -i 'kppra *= *updir' vaspin.tmp + if ($status == 0) then + cp -f ../KPOINTS . + else + grep -q -i kscheme vaspin.tmp + if ($status == 0) then + set kscheme=`grep -i kscheme vaspin.tmp | sed 's/^.*=[ ]*//g'` + else + set kscheme="Gamma" + endif + ( echo KPOINTS file ; echo 0 ; echo $kscheme ) >! KPOINTS + echo $kscheme | grep -q "^[Mm]" + if ( $status == 0 ) then + ( echo `grep -i kppra vaspin.tmp | sed 's/^.*=//g'` `cat vacpos.tmp | wc -l` | awk '{print $1/$2}' ; cat cell.tmp ) | kmesh -q -e >>! KPOINTS + else + ( echo `grep -i kppra vaspin.tmp | sed 's/^.*=//g'` `cat vacpos.tmp | wc -l` | awk '{print $1/$2}' ; cat cell.tmp ) | kmesh -q -r >>! KPOINTS + endif + echo 0 0 0 >>! KPOINTS + endif +else + (getlines -jaf "\[[Kk][Pp][Oo]" < vaspin.tmp | getlines -jbf "\\[") | grep -v '^[ ]*$' >! KPOINTS +endif + +grep -q -i dogga vaspin.tmp +if ($status == 0) then + set POTPATH="$POTGGA" +else + set POTPATH="$POTLDA" +endif + +grep -q -i usepot vaspin.tmp +if ($status == 0) then + echo set POTPATH=\$POT`grep -i usepot vaspin.tmp | tail -n -1 | sed -e 's/ *[^ =]*[ =]//g' -e 's/ *$//g'` > tmpez.sh + source tmpez.sh + rm -f tmpez.sh +endif + +echo -n >! POTCAR +foreach element ( `sed 's/[+-].*$//g' atom.tmp | awk '{print $1}'` ) + if ( -e $POTPATH/$element/POTCAR ) then + cat $POTPATH/$element/POTCAR >>! POTCAR + else + zcat $POTPATH/$element/POTCAR.Z >>! POTCAR + endif + if ( $status == 1 ) then + echo Cannot read $POTPATH/$element/POTCAR\* + exit 1 + endif +end + +awk '{print $1}' pos.tmp | sed 's/^[^-+]*//g' | awk '{print $1+0}' >! moment.tmp +grep -q -i '[1-9]' moment.tmp +if ( $status == 0 ) then + echo "ISPIN= 2" >>! INCAR + echo "MAGMOM= " `cat moment.tmp` >>! INCAR +endif + +grep -q -i 'ISTART[ ]*=[ ]*2' vaspin.tmp +if ($status == 0) then + if ( ( -e OUTCAR || -e CHGCAR ) && -e WAVECAR ) then + echo ISTART=1 >>! INCAR + if ( -e OUTCAR ) then + grep "dimension x,y,z NGX =" OUTCAR | head -n -1 | sed -e 's/ dimension x,y,z //g' -e 's/ NG/\nNG/g' >>! INCAR + else + getlines -jaf '^ *$' < CHGCAR | head -n 1 | awk '{print "NGX = " $1; print "NGY = " $2; print "NGZ = " $3}' >>! INCAR + endif + else + echo ISTART=0 >>! INCAR + endif +endif + +if (! $?debug ) then + rm -f sed.tmp cell.tmp oldcell.tmp newcell.tmp pos.tmp vacpos.tmp atom.tmp poscar.tmp moment.tmp cell.log atomlabel.tmp1 atomlabel.tmp2 preposcar.tmp vaspin.tmp >& /dev/null +endif + +if (! $?norun ) then + echo | $VASPCMD >&! vasp.out + + grep -q 'VERY BAD NEWS! internal error in subroutine IBZKPT' vasp.out + if ( $status == 0 ) then + cp INCAR INCAR.tmp + ( grep -v SYMPREC INCAR.tmp ; echo SYMPREC = 1e-7 ) >! INCAR + echo | $VASPCMD >&! vasp.out + rm -f INCAR.tmp + endif + + if ($?dostatic) then + foreach file (INCAR POSCAR OSZICAR OUTCAR CONTCAR KPOINTS vasp.out) + cp -f $file ${file}.relax + end + cp -f CONTCAR POSCAR + cat INCAR.relax | \ + grep -v -i ismear | \ + grep -v -i isigma | \ + grep -v -i nsw | \ + grep -v -i ibrion | \ + grep -v -i isif >! INCAR + echo ISMEAR=-5 >>! INCAR + echo IBRION=-1 >>! INCAR + echo ISIF=2 >>! INCAR + + echo | $VASPCMD >&! vasp.out + endif + foreach file (INCAR POSCAR OSZICAR OUTCAR CONTCAR KPOINTS vasp.out DOSCAR) + cp -f $file ${file}.static + end +endif + + diff --git a/glue/vasp/makefile b/glue/vasp/makefile new file mode 100644 index 0000000..384b908 --- /dev/null +++ b/glue/vasp/makefile @@ -0,0 +1,5 @@ +BINDIR=$(HOME)/bin/ + +install: + ../../safecp ezvasp runstruct_vasp $(BINDIR) + ../../safecp cleanvasp extract_vasp checkerr_vasp robustrelax_vasp $(BINDIR) diff --git a/glue/vasp/readme b/glue/vasp/readme new file mode 100644 index 0000000..3444f8c --- /dev/null +++ b/glue/vasp/readme @@ -0,0 +1,12 @@ +This directory contains what is needed to glue maps and vasp together. + +Here are the functions of each file + +runstruct_vasp: main script that does everything needed to get the energy of + a structure. It needs the files below. +cleanvasp: cleanup the results of a vasp run +ezvasp: user-friendly front-end to vasp (ezvasp -h for help) +ezvasp.txt: help file printed by ezvasp -h must reside where ezvasp is. +vasp.wrap: A file called vasp.wrap residing in the directory where maps is + started is needed to specify the parameters of the all runs. + This is an example of such file. diff --git a/glue/vasp/robustrelax_vasp b/glue/vasp/robustrelax_vasp new file mode 100755 index 0000000..2d2439d --- /dev/null +++ b/glue/vasp/robustrelax_vasp @@ -0,0 +1,524 @@ +#!/bin/bash +dohelp=0 +cutoff="0" +cmdsuffix="" +volrelaxcommand="runstruct_vasp -w vaspvol.wrap" +relaxcommand="runstruct_vasp -w vasp.wrap" +chaincommand="runstruct_vasp -w vaspneb.wrap" +staticcommand="runstruct_vasp -w vaspstatic.wrap" +infdetcommand="runstruct_vasp -p -w vaspid.wrap" +doid=0 +idopt="-d" +idf="0.5" +idja="0.0" +idjc="0.0" +doneb=0 +doextract=0 +nimage=6 +dovib=0 +makevaspfiles=0 +contif=0 + +if [[ $1 == "" || $1 == "-h" ]] +then + cat - < str_hint.out . + Sometimes a supercell is needed (a phonon analysis will tell you that - or symbrklib for bcc,fcc,hcp). +EOF + exit +fi + +if [[ $makevaspfiles == 1 ]] +then + if [[ ! -e vasp.wrap ]] + then + echo Please provide a vasp.wrap file. + exit + fi + grep -v -i -e ISIF -e DOSTATIC vasp.wrap > vaspvol.wrap + echo ISIF = 7 >> vaspvol.wrap + grep -v -i -e ISMEAR -e SIGMA -e NSW -e IBRION -e ISIF -e DOSTATIC vasp.wrap > vaspstatic.wrap + cat - >> vaspstatic.wrap < vaspneb.wrap + echo IMAGES = $(( nimage -2 )) >> vaspneb.wrap + cat - >>vaspneb.wrap < vaspf.wrap + cat - >> vaspf.wrap < vaspid.wrap + cat - >> vaspid.wrap < /dev/null + if [[ $? == 0 ]] + then + staticcommand=""; + echo Skipping static run step... + fi + fi + fi + fi +fi + +if [[ $dovib == 1 ]] +then + for subdir in vol_0 smsqs/vol_0 + do + if [[ -e ${subdir}/svib_ht ]] + then + if [[ ! -e confmult.in ]] + then + echo using scaled ${subdir}/svib_ht + echo `cat ${subdir}/svib_ht` `cellcvrt -pn < str.out` `cellcvrt -pn < ${subdir}/str_relax.out` | awk '{print $1*$2/$3}' > svib_ht + else + echo using scaled ${subdir}/svib_ht and confmult.in + echo `cat ${subdir}/svib_ht` `cellcvrt -pn < str.out` `cellcvrt -pn < ${subdir}/str_relax.out` `cat confmult.in` | awk '{print $1*$2/$3+$2*log($4)}' > svib_ht + fi + exit + fi + done + echo No svib_ht file in `pwd`/vol_0 or `pwd`/smsqs/vol_0 + exit +fi + + +if [[ $doextract == 0 ]] +then + if [[ $relaxcommand != "" ]] + then + echo $relaxcommand $cmdsuffix + $relaxcommand $cmdsuffix + fi + if [[ -e error ]] + then + echo Error during relaxation run. + exit 1 + fi + + relmag=`checkrelax -1` + +# if [[ ! (( $relmag > $cutoff || -e str_sup.out )) ]] + if [[ ! (( $relmag > $cutoff )) ]] + then + if [[ $relaxcommand != "" ]] + then + mv energy energy_sup + echo `cat energy_sup` `cellcvrt -pn < str.out` `cellcvrt -pn < str_relax.out` | awk '{print $1*$2/$3}' > energy + fi + else + if [[ $relaxcommand != "" ]] + then + mv energy energy_end + if [[ ! -e str_end.out ]] + then + cp str_relax.out str_end.out + fi + fi + mkdir 00 + if [[ $volrelaxcommand != "" ]] + then + if [[ -e str_sup.out ]] + then + cp str_sup.out 00/str.out + else + cp str.out 00/ + fi + cd 00 + echo "Now working in" `pwd` + echo $volrelaxcommand $cmdsuffix + $volrelaxcommand $cmdsuffix + if [[ -e error ]] + then + echo Error during static run in 00/ + touch ../error + exit 1 + fi + cd .. + fi + if [[ ! -e str_beg.out ]] + then + cp 00/str_relax.out str_beg.out + fi + if [[ $doid == 1 ]] + then + if [[ ! -e KPOINTS ]] + then + cp KPOINTS.static KPOINTS + fi + + mkdir 01 + if [[ -e 01/str_hint.in ]] + then + cp 01/str_hint.in 01/str.in + else + strpath -s1=str_beg.out -s2=str_end.out -f=${idf} | cellcvrt -ja=$idja -jc=$idjc > 01/str.in + fi + if [[ $infdetcommand != "" ]] + then + pushd 01 > /dev/null + echo "Now working in" `pwd` + if [[ -e str_hint.in ]] + then + cp str_hint.in str.in + fi + if [[ -e busy ]] + then + rm busy + fi + echo Running infdet $idopt + rm -f error stop busy + if [[ -e infdet.log ]] + then + for (( baknum=1 ; ; baknum++ )) + do + if [[ ! -e infdet.save${baknum} ]] + then + cp infdet.log infdet.save${baknum} + break; + fi + done + fi + ( infdet $idopt > infdet.log ; if [[ $? == 1 ]] ; then touch error ; fi ; touch stop ) & + while [[ 1 ]] + do + while [[ ! -e busy && ! -e stop && ! -e error ]] + do + sleep 2 + done + if [[ -e stop || -e error ]] + then + break + fi + echo vasp + rm stress.out force.out > /dev/null + $infdetcommand $cmdsuffix + cat stress.out force.out + rm busy + echo waiting + done + rm -f stop busy + if [[ -e error ]] + then + echo Error during inflection detection run in 01/ + touch ../error + exit 1 + fi + if [[ ! -e cstr_relax.out ]] + then + cp str_current.out cstr_relax.out + fi + popd + fi + if [[ $staticcommand != "" ]] + then + pushd 01 + cp cstr_relax.out str.out + echo "$staticcommand $cmdsuffix" + $staticcommand $cmdsuffix + popd + fi + if [[ -e error ]] + then + echo Error during static run in 01/ + exit 1 + fi + echo `cat 01/energy` `cellcvrt -pn < str.out` `cellcvrt -pn < 01/str_relax.out` | awk '{print $1*$2/$3}' > energy + ( echo `cellcvrt -pn < str.out` `cellcvrt -pn < 01/str_relax.out` ; cat 01/dos.out )| awk 'BEGIN {getline; sc=$1/$2; getline; print $1*sc,$2,$3} {print $1*sc;}' > dos.out + cp 01/cstr_relax.out str_relax.out + exit 0 + elif [[ $doneb == 1 ]] + then + strpath -s1=str_beg.out -s2=str_end.out -ni=$nimage + if [[ $chaincommand != "" ]] + then + lastdir=`ls -d -1 ?? | sort -n | tail -n -1` + cp ${lastdir}/str.out ${lastdir}/str_relax.out + + echo "$chaincommand -nr" + foreachfile str.out "$chaincommand -nr" + for file in POTCAR KPOINTS INCAR vasp.in + do + rm ??/${file} + done + echo $chaincommand "$cmdsuffix" + $chaincommand "$cmdsuffix" + foreachfile str.out "$chaincommand -ex" + foreachfile str_relax.out cp str_relax.out str_hint.out + foreachfile str_relax.out cp OSZICAR OSZICAR.neb + cp OUTCAR OUTCAR.neb \; gzip OUTCAR.neb + if [[ $staticcommand != "" ]] + then + echo "$staticcommand $cmdsuffix" + foreachfile str_relax.out "$staticcommand $cmdsuffix" + fi + fi + else + strpath -s1=str_beg.out -s2=str_end.out -ni=$nimage + if [[ $volrelaxcommand != "" ]] + then + echo "$volrelaxcommand $cmdsuffix" + foreachfile str.out "$volrelaxcommand $cmdsuffix" + fi + if [[ $staticcommand != "" ]] + then + echo "$staticcommand $cmdsuffix" + foreachfile str_relax.out "$staticcommand $cmdsuffix" + fi + fi + fi +fi +if [[ $doextract == 1 || (( $relmag > $cutoff || -e str_sup.out )) ]] +then + if [[ ! -e 00 ]] + then + runstruct_vasp -ex + cp energy energy_end + echo `cat energy_end` `cellcvrt -pn < str.out` `cellcvrt -pn < str_relax.out` | awk '{print $1*$2/$3}' > energy + else + if [[ ! -e energy_end ]] + then + cp energy energy_end + fi + lastenergy=`ls -d -1 ?? | sort -n | tail -n -1` +#echo $lastenergy + if [[ ! -e ${lastenergy}/energy ]] + then + cp energy_end ${lastenergy}/energy + fi + ((curnimage=lastenergy+0)) +#echo $curnimage + cat `ls -1 ??/energy | sort -n` > epath.out +# cat epath.out | strpath -ci > energy + echo `cat epath.out | strpath -ci` `cellcvrt -pn < str.out` `cellcvrt -pn < str_beg.out` | awk '{print $1*$2/$3}' > energy + iploc=$(cat epath.out | strpath -cil | awk '{print $1*('$curnimage')}') +#echo $iploc + dirb=$(echo $iploc | awk '{n=int($1); printf("%02i",n)}') +#echo $dirb + if [[ $iploc == $curnimage ]] + then +#echo cp only + cp ${dirb}/str_relax.out . + else + dire=$(echo $iploc | awk '{n=int($1)+1; printf("%02i",n)}') +#echo $dire + frac=$(echo $iploc | awk '{print $1-int($1);}') +#echo $frac + strpath -f=${frac} -s1=${dirb}/str_relax.out -s2=${dire}/str_relax.out > str_relax.out + echo strpath -f=${frac} -s1=${dirb}/str_relax.out -s2=${dire}/str_relax.out + fi + fi + +fi diff --git a/glue/vasp/runstruct_vasp b/glue/vasp/runstruct_vasp new file mode 100755 index 0000000..bfa1aee --- /dev/null +++ b/glue/vasp/runstruct_vasp @@ -0,0 +1,142 @@ +#!/bin/csh + +set wrapfilename="vasp.wrap" +set maxdepth=5 + +while ( $#argv != 0 ) + switch ("$1") + case "-h": + cat - < 0) + set wrapfile="../$wrapfile" + @ maxdepth--; + end + if (! -e $wrapfile) then + echo You need a $wrapfilename file in one of the directories ., .. , ../.. , etc. + echo NOTE: runstruct_vasp needs to be run within the numbered subdirectory. + exit 1 + endif + + cat $wrapfile >! vasp.in + echo "" >>! vasp.in + echo "[POSCAR]" >>! vasp.in + echo "title" >>! vasp.in + echo 1. >>! vasp.in + cat $strout | cellcvrt -c -sig=9 | tail -n +4 | head -3 >>! vasp.in + echo Cartesian >>! vasp.in + cat $strout | cellcvrt -c -sig=9 | tail -n +7 >>! vasp.in + endif + + if ( $?lookup ) then + foreach file ( ../WAVECAR ../CHGCAR ) + if ( -e $file ) then + cp -f $file . + endif + end + endif + + set notrunvaspswitch="" + + if ( $?notrunvasp ) then + set notrunvaspswitch="-n" + endif + + if ( $#argv == 0 ) then + #single machine mode if no argument + ezvasp $notrunvaspswitch vasp.in + else + #multiple machine mode if argument is remote command + ezvasp $notrunvaspswitch -p "$* $VASPCMD" vasp.in + endif + +endif + +if ( ! $?notrunvasp ) then + extract_vasp + if ( $?lookup ) then + foreach file ( WAVECAR CHGCAR ) + if ( ! -e ../$file ) then + cp -f $file ../$file + endif + end + endif + if ( ! $?extractonly ) then + if ( ( ! $?preservefiles ) && -e OUTCAR.static ) then + cleanvasp -v + endif + if ( -e OUTCAR.static || -e OUTCAR.relax ) then + gzip -f `ls -1 OUTCAR.* | grep -v '.gz$'` >& /dev/null + endif + + checkerr_vasp -e + endif +endif diff --git a/glue/vasp/set_default_pp b/glue/vasp/set_default_pp new file mode 100755 index 0000000..283cc38 --- /dev/null +++ b/glue/vasp/set_default_pp @@ -0,0 +1,18 @@ +#!/bin/bash +for elem in `ls -1 | grep -v -e ZZ -e data -e set | sed 's/_.*//g' | sort -u` +do + if [ ! -e $elem ] + then + echo == $elem + for suff in pv sv 3 + do + if [ -e ${elem}_${suff} ] + then + ln -s ${elem}_${suff} ${elem} + echo ln -s ${elem}_${suff} ${elem} + break + fi + done + fi +done + diff --git a/glue/vasp/vasp.wrap b/glue/vasp/vasp.wrap new file mode 100644 index 0000000..f7f19a8 --- /dev/null +++ b/glue/vasp/vasp.wrap @@ -0,0 +1,10 @@ +[INCAR] +PREC = high +ISMEAR = 1 +SIGMA = 0.1 +NSW=41 +IBRION = 2 +ISIF = 3 +KPPRA = 1000 +USEPOT = PAWPBE +DOSTATIC diff --git a/glue/vasp/xdat2str b/glue/vasp/xdat2str new file mode 100755 index 0000000..6f836b1 --- /dev/null +++ b/glue/vasp/xdat2str @@ -0,0 +1,35 @@ +#!/bin/csh +awk '\ +BEGIN {\ + while (1) {getline; if ($0==" ") break;}\ + nbsp=0;\ + while (1) {\ + getline < "header.in";\ + if ($1=="end") break;\ + for (i=0; i<$2; i++) {\ + sp[nbsp]=$1;\ + nbsp++;\ + }\ + }\ + nbh=0;\ + while (1) {\ + getline < "header.in";\ + if ($1=="end") break;\ + h[nbh]=$0;\ + nbh++;\ + }\ + at=0;\ +}\ +{\ + if (at==0) {\ + for (i=0; i $(HOME)/.atat.rc + ${MAKE} -C src BINDIR=${BINDIR} install + ${MAKE} -C glue/jobctrl BINDIR=${BINDIR} install + ${MAKE} -C glue/vasp BINDIR=${BINDIR} install + +uninstall: + rm -f `cat src/safecpdir/touninstall.txt glue/jobctrl/safecpdir/touninstall.txt glue/vasp/safecpdir/touninstall.txt` + rm -i ${HOME}/.atat.rc ${HOME}/.ezvasp ${HOME}/.machines.rc diff --git a/patchtail b/patchtail new file mode 100755 index 0000000..bc2a67d --- /dev/null +++ b/patchtail @@ -0,0 +1,2 @@ +#!/bin/csh +perl -pi.bak -e 's/tail ([+-][0-9]*)/tail -n \1/g;' src/* glue/*/* >& /dev/null diff --git a/readme b/readme new file mode 100644 index 0000000..d89c980 --- /dev/null +++ b/readme @@ -0,0 +1,9 @@ +The Alloy-Theoretic Automated Toolkit (ATAT) +by Axel van de Walle + +Further information about this toolkit can be found in the file +doc/manual.pdf in this distribution or at the following url +https://alum.mit.edu/www/avdw/atat/ +or at the forum: +http://alum.mit.edu/www/avdw/forum + diff --git a/safecp b/safecp new file mode 100755 index 0000000..71438b7 --- /dev/null +++ b/safecp @@ -0,0 +1,27 @@ +#!/bin/csh +if ( "x$1" == "x" ) then + echo "Syntax: safecp file1 ... filen destdir" + exit 1 +endif + +if ( ! -d safecpdir ) then + mkdir safecpdir +endif + +set dest=$argv[$#argv] + +if ( ! -d $dest ) then + echo $dest does not exist + exit 1 +endif + +echo -n "" >! safecpdir/touninstall.txt +foreach src ( $* ) + if ( "x$src" != "x$dest" ) then + if ( -e $dest/$src ) then + cp -f $dest/$src safecpdir/ + endif + cp -f $src $dest + echo $dest/`echo $src | sed 's+.*/++g'` >> safecpdir/touninstall.txt + endif +end diff --git a/src/Permutor.pm b/src/Permutor.pm new file mode 100644 index 0000000..7a88c92 --- /dev/null +++ b/src/Permutor.pm @@ -0,0 +1,112 @@ +package List::Permutor; + +use strict; +use vars qw($VERSION @ISA @EXPORT @EXPORT_OK); + +require Exporter; + +@ISA = qw(Exporter); +@EXPORT = qw(); +$VERSION = '0.022'; + +sub new { + my $class = shift; + my $items = [ @_ ]; + bless [ $items, [ 0..$#$items ] ], $class; +} + +sub reset { + my $self = shift; + my $items = $self->[0]; + $self->[1] = [ 0..$#$items ]; + 1; # No useful return value +} + +sub peek { + my $self = shift; + my $items = $self->[0]; + my $rv = $self->[1]; + @$items[ @$rv ]; +} + +sub next { + my $self = shift; + my $items = $self->[0]; + my $rv = $self->[1]; # return value array + return unless @$rv; + my @next = @$rv; + # The last N items in @next (for 1 <= N <= @next) are each + # smaller than the one before. Move those into @tail. + my @tail = pop @next; + while (@next and $next[-1] > $tail[-1]) { + push @tail, pop @next; + } + # Then there's one more. Right? + if (defined(my $extra = pop @next)) { + # The extra one exchanges with the next larger one in @tail + my($place) = grep $extra < $tail[$_], 0..$#tail; + ($extra, $tail[$place]) = ($tail[$place], $extra); + # And the next order is what you get by assembling the three + $self->[1] = [ @next, $extra, @tail ]; + } else { + # Guess that's all.... + $self->[1] = []; + } + return @$items[ @$rv ]; +} + +1; +__END__ + +=head1 NAME + +List::Permutor - Process all possible permutations of a list + +=head1 SYNOPSIS + + use List::Permutor; + my $perm = new List::Permutor qw/ fred barney betty /; + while (my @set = $perm->next) { + print "One order is @set.\n"; + } + +=head1 DESCRIPTION + +Make the object by passing a list of the objects to be +permuted. Each time that next() is called, another permutation +will be returned. When there are no more, it returns the empty +list. + +=head1 METHODS + +=over 4 + +=item new LIST + +Returns a permutor for the given items. + +=item next + +Returns a list of the items in the next permutation. Permutations are +returned "in order". That is, the permutations of (1..5) will be +sorted numerically: The first is (1, 2, 3, 4, 5) and the last is (5, +4, 3, 2, 1). + +=item peek + +Returns the list of items which would be returned by next(), but +doesn't advance the sequence. Could be useful if you wished to skip +over just a few unwanted permutations. + +=item reset + +Resets the iterator to the start. May be used at any time, whether the +entire set has been produced or not. Has no useful return value. + +=back + +=head1 AUTHOR + +Tom Phoenix + +=cut diff --git a/src/PowerSet.pm b/src/PowerSet.pm new file mode 100644 index 0000000..141761f --- /dev/null +++ b/src/PowerSet.pm @@ -0,0 +1,379 @@ +# Data::PowerSet.pm +# +# Copyright (c) 2005-2008 David Landgren +# All rights reserved + +package Data::PowerSet; + +use strict; +use Exporter; + +use vars qw/$VERSION @ISA @EXPORT_OK/; +$VERSION = '0.05'; +@ISA = ('Exporter'); + +=head1 NAME + +Data::PowerSet - Generate all subsets of a list of elements + +=head1 VERSION + +This document describes version 0.05 of Data::PowerSet, released +2008-05-13. + +=head1 SYNOPSIS + + use Data::PowerSet 'powerset'; + + my $powerset = powerset( 3, 1, 4 ); + for my $p (@$powerset) { + print "@$p\n"; + } + + # prints + 3 1 4 + 1 4 + 3 4 + 4 + 3 1 + 1 + 3 + +An object-oriented interface is also available; + + my $d = Data::PowerSet->new( 3, 1, 4 ); + while (my $r = $d->next) { + print "@$r\n"; + } + # produces the same output as above + +=head1 DESCRIPTION + +C takes a list and returns all possible +combinations of the elements appearing in the list without replacement. + +=head1 EXPORTABLE FUNCTIONS + +=over 8 + +=item powerset + +The C function takes an array (or a reference to an array) on +input and returns a reference to an array of arrays containing all the +possible unique combinations of elements. + +It is also possible to supply a reference to hash as the first +parameter to tweak the behaviour. See the C method for a +description of what keys can be specified. + + powerset( 2, 5, 10, 17 ); + + powerset( {min => 1}, qw(a b c d) ); + + powerset( [qw[ bodine mondaugen gadrulfi fleische eigenvalue ]] ); + +=cut + +push @EXPORT_OK, 'powerset'; +sub powerset { + my %args; + if (ref($_[0]) eq 'HASH') { + %args = %{shift @_}; + } + my @list = ref($_[0]) eq 'ARRAY' ? @{shift @_} : @_; + + $args{min} = exists $args{min} ? $args{min} < 0 ? 0 : $args{min} : 0; + $args{max} = exists $args{max} ? $args{max} > @list ? @list : $args{max} : @list; + + ($args{min}, $args{max}) = ($args{max}, $args{min}) + if $args{max} < $args{min}; + + my $lim = 2 ** @list - 1; + my @powerset; + while( $lim >= 0 ) { + my @set; + my $mask = $lim--; + my $offset = 0; + while( $mask ) { + push @set, $list[$offset] if $mask & 1; + $mask >>= 1; + ++$offset; + } + if( @set >= $args{min} and @set <= $args{max} ) { + push @powerset, exists $args{join} + ? join( $args{join}, @set) + : [@set]; + } + } + return \@powerset; +} + +=back + +=head1 METHODS + +The object-oriented interface provided by the module is implemented +with the following methods. + +=over 8 + +=item new + +Creates a new C object. + + my $ps = Data::PowerSet->new( qw( foo bar grault waldo )); + +A reference to a hash may +be supplied, to change the way the object behaves. + +=over 8 + +=item B + +Minimum number of elements present in the selection. + +Note that the empty set (no elements) is quite valid, according to +the mathematical definition of a power set. If this is not what you +expect, setting C to 1 will effectively cause the empty set to +be excluded from the result. + + my $ps = Data::PowerSet->new( {min=>2}, 2, 3, 5, 8, 11 ); + +In the above object, no returned list will contain fewer +than 2 elements. + +=item B + +Maximum number of elements present in the selection. + + my $ps = Data::PowerSet->new( {max=>3}, 2, 3, 5, 8, 11 ); + +In the above object, no returned list will contain more +than 3 elements. + +=item B + +Perform a C on each returned list using the +specified value. + + my $ps = Data::Powerset->new( {join=>'-'}, 'a', 'b' ); + +When this attribute is used, the C method will +return a scalar rather than a reference to an array. + +=back + +=cut + +sub new { + my $class = shift; + my %args; + if( ref($_[0]) eq 'HASH' ) { + %args = %{shift(@_)}; + } + if( ref($_[0]) eq 'ARRAY' ) { + $args{data} = shift @_; + } + else { + $args{data} = [@_], + } + $args{current} = 2**@{$args{data}}-1; + + $args{min} = + exists $args{min} + ? $args{min} < 0 + ? 0 : $args{min} + : 0 + ; + + $args{max} = + exists $args{max} + ? $args{max} > @{$args{data}} + ? @{$args{data}} : $args{max} + : @{$args{data}} + ; + + ($args{min}, $args{max}) = ($args{max}, $args{min}) + if $args{max} < $args{min}; + + return bless \%args, $class; +} + +=item peek + +Returns a reference to an array containing the current combination of +elements from the original list; + +=cut + +sub peek { + my $self = shift; + my $ok = 0; + my @set; + until( $ok ) { + return undef unless $self->{current} >= 0; + my $mask = $self->{current}; + my $offset = 0; + @set = (); + while( $mask ) { + push @set, $self->{data}[$offset] if $mask & 1; + $mask >>= 1; + ++$offset; + } + $ok = 1 if @set >= $self->{min} and @set <= $self->{max}; + if (! $ok) {$self->{current}--;} + } + return exists $self->{join} ? join($self->{join}, @set) : \@set; +} + + +=item next + +Returns a reference to an array containing the next combination of +elements from the original list; + + my $ps = Data::PowerSet->new(qw(e t a i s o n)); + my $first = $ps->next; + my $next = $ps->next; + +=cut + +sub next { + my $self = shift; + my $ok = 0; + my @set; + until( $ok ) { + return undef unless $self->{current} >= 0; + my $mask = $self->{current}--; + my $offset = 0; + @set = (); + while( $mask ) { + push @set, $self->{data}[$offset] if $mask & 1; + $mask >>= 1; + ++$offset; + } + $ok = 1 if @set >= $self->{min} and @set <= $self->{max}; + } + return exists $self->{join} ? join($self->{join}, @set) : \@set; +} + +=item reset + +Restart from the first combination of the list. + +=cut + +sub reset { + my $self = shift; + $self->{current} = 2**@{$self->{data}}-1; +} + +=item data + +Accept a new list of elements from which to draw combinations. + + $ps->data( qw(all new elements to use) ); + +=cut + +sub data { + my $self = shift; + $self->{data} = [@_], + $self->{current} = 2**@{$self->{data}}-1; + + $self->{min} = @{$self->{data}} if $self->{min} > @{$self->{data}}; + $self->{max} = @{$self->{data}} if $self->{max} > @{$self->{data}}; +} + +=item count + +Returns the number of elements in the set. This can be used +to set C to the number of elements minus one, in order to +exclude the set of all elements, when the number of elements +is difficult to determine beforehand. + +=cut + +sub count { + my $self = shift; + return scalar(@{$self->{data}}); +} + +=back + +=head1 DIAGNOSTICS + +None. + +=head1 NOTES + +Power sets grow exponentially. A power set of 10 elements returns +a more than one thousand results. A power set of 20 elements contains +more than one million results. The module is not expected to be put +to use in larger sets. + +A power set, by definition, includes the set of no elements and +the set of all elements. If these results are not desired, the +C and C methods or properties can be used to exclude +them from the results. + +This module works with perl version 5.005_04 and above. + +=head1 SEE ALSO + +=over 8 + +=item L + +Another module that generates power sets. If I had managed to find +it in a search beforehand, I probably would have used it instead. +Nonetheless, C has a couple of features not +present in C, but otherwise both can be used +pretty much interchangeably. + +=item L + +A fast (no stacks, no recursion) method for generating permutations +and combinations of a set. A power set is merely the union of all +combinations (of differing lengths). + +=item L + +The wikipedia definition of a power set. + +=back + +=head1 BUGS + +None known. Please report all bugs at +L + +Make sure you include the output from the following two commands: + + perl -MData::PowerSet -le 'print Data::PowerSet::VERSION' + perl -V + +=head1 ACKNOWLEDGEMENTS + +This module is dedicated to Estelle Souche, who pointed out the very +elegant and obvious algorithm. Smylers suggested the name. + +=head1 AUTHOR + +David Landgren, copyright (C) 2005-2008. All rights reserved. + +http://www.landgren.net/perl/ + +If you (find a) use this module, I'd love to hear about it. +If you want to be informed of updates, send me a note. You +know my first name, you know my domain. Can you guess my +e-mail address? + +=head1 LICENSE + +This library is free software; you can redistribute it and/or modify +it under the same terms as Perl itself. + +=cut + +'The Lusty Decadent Delights of Imperial Pompeii'; diff --git a/src/analrelax.c++ b/src/analrelax.c++ new file mode 100644 index 0000000..2fe9b8c --- /dev/null +++ b/src/analrelax.c++ @@ -0,0 +1,67 @@ +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include "linalg.h" +#include "linsolve.h" +#include + +/* +void mat_sqrt(rMatrix3d *pS, const rMatrix3d &S2) { + Array2d a2; + convert_matrix(&a2,S2); + Array lambda; + Array2d vect; + diagonalize_symmetric_matrix(&lambda,&vect, a2); + for (int i=0; i<3; i++) { + lambda(i)=sqrt(lambda(i)); + } + Array2d tmp,ivect,a; + invert_matrix(&ivect,vect); + product_diag(&tmp,lambda,ivect); + product(&a,vect,tmp); + convert_matrix(pS,a); +} +*/ + +int main(int argc, char *argv[]) { + char *strfilename="str.out"; + char *strfilename_rel="str_relax.out"; + int dummy=0; + AskStruct options[]={ + {"","check cell distortion " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-d","default",BOOLVAL,&dummy}, + {"-su","unrelaxed structure file name",STRINGVAL,&strfilename}, + {"-sr","relaxed structure file name",STRINGVAL,&strfilename_rel} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + Array site_type_list; + Array label; + rMatrix3d axes; + + Structure str; + { + ifstream strfile(strfilename); + if (!strfile) {ERRORQUIT("Unable to open unrelaxed structure");} + parse_lattice_file(&str.cell, &str.atom_pos, &str.atom_type, &site_type_list, &label, strfile, &axes); + fix_atom_type(&str,site_type_list); + } + Structure str_rel; + { + ifstream strfile(strfilename_rel); + if (!strfile) {ERRORQUIT("Unable to open relaxed structure");} + parse_lattice_file(&str_rel.cell, &str_rel.atom_pos, &str_rel.atom_type, &site_type_list, &label, strfile); + fix_atom_type(&str_rel,site_type_list); + } + + rMatrix3d T=str_rel.cell*(!str.cell); + rMatrix3d S2=(~T)*T; + rMatrix3d S; + pow(&S,S2,0.5); + rMatrix3d Id; + Id.identity(); + S=S-Id; + cout << S; +} diff --git a/src/anyfft.c++ b/src/anyfft.c++ new file mode 100644 index 0000000..472ddf4 --- /dev/null +++ b/src/anyfft.c++ @@ -0,0 +1,7 @@ +#include "anyfft.h" +#include "fftn.h" + +void fftnd(Complex *data, int ndim, int *dims, int isign ) { + fftn(ndim,dims,(Real *)data,((Real *)data)+1,isign*2,(isign==1 ? 1.0 : -1.0)); + fft_free(); +} diff --git a/src/anyfft.hh b/src/anyfft.hh new file mode 100644 index 0000000..c5a9632 --- /dev/null +++ b/src/anyfft.hh @@ -0,0 +1,4 @@ +#include +#include "misc.h" + +void fftnd(Complex *data, int ndim, int *dims, int isign); diff --git a/src/apb.c++ b/src/apb.c++ new file mode 100644 index 0000000..cf15979 --- /dev/null +++ b/src/apb.c++ @@ -0,0 +1,303 @@ +/* + * ===================================================================================== + * + * Filename: apb.cc + * + * Description: This code creates an APB for a given structure and slip vector. + * The APB energy is calculated by calling memc2 with clusters and + * ECIs from a prior cluster expansion. + * + * Author: Ruoshi Sun and Axel van de Walle + * Organization: School of Engineering, Brown University + * + * ===================================================================================== + */ + + +#include +#include +#include "apb.h" +#include "getvalue.h" +#include "parse.h" +#include "version.h" + +#define MAXMULTIPLET 6 + +extern const char *helpstring; + +const double eV_mJ=16021.77; + + int +main ( int argc, char *argv[] ) +{ + char *latfilename="lat.in"; + char *strfilename="str.out"; + char *ecifilename="eci.out"; + char *apbfilename="str_apb.out"; + char *gammafilename="gamma_apb.out"; + char *clusterfilename="clusters.out"; + char *gsfilename="gs_str.out"; + rVector3d slipvec(0, 0, 0); // APB slip vector + int dohelp=0; + int dofileonly=0; + int domc=0; + int neq=-1; + int nav=-1; + Real T=0; + int dummy=0; + AskStruct options[]={ + {"", "\033[1;4mA\033[0mnti\033[1;4mP\033[0mhase \033[1;4mB\033[0moundary " MAPS_VERSION ", by Ruoshi Sun and Axel van de Walle\nAutomating impurity-enhanced antiphase boundary energy calculations from ab initio Monte Carlo,\n Calphad 53, 20 (2016)\n\n\033[1mFile options:\033[0m", TITLEVAL, NULL}, + {"-l", "Input file: lattice (Default: lat.in)", STRINGVAL, &latfilename}, + {"-s", " : structure (Default: str.out)", STRINGVAL, &strfilename}, + {"-o", "Output file: APB structure (Default: str_apb.out)", STRINGVAL, &apbfilename}, + {"-og", " : energies (Default: gamma_apb.out)\n\n\033[1mAPB options:\033[0m", STRINGVAL, &gammafilename}, + {"-f", "Generate APB structure file and exit; do not compute APB energy", BOOLVAL, &dofileonly}, + {"-sx", "APB slip vector: x-component", REALVAL, &slipvec(0)}, + {"-sy", " : y-component", REALVAL, &slipvec(1)}, + {"-sz", " : z-component (Default: 0)\n\n\033[1mMonte Carlo options:\033[0m", REALVAL, &slipvec(2)}, + {"-mc", "Run Monte Carlo", BOOLVAL, &domc}, + {"-eq", "Number of: equilibration passes (Default: -1)", INTVAL, &neq}, + {"-n", " : averaging passes (Default: -1)", INTVAL, &nav}, + {"-T", "Temperature (Default: 0)\n\n\033[1mOther options:\033[0m", REALVAL, &T}, + {"-d", "Use all default values", BOOLVAL, &dummy}, + {"-h", "Display more help", BOOLVAL, &dohelp} + }; + if ( !get_values(argc, argv, countof(options), options) ) { + display_help(countof(options), options); + return 1; + } + if (dohelp) { + cout << helpstring; + exit(1); + } + + /* ---------- begin parsing ---------- */ + Structure lat; + Array labellookup; + Array label; + rMatrix3d axes; + ifstream latfile(latfilename); + if (!latfile) ERRORQUIT("Unable to open lattice file"); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &labellookup, &label, latfile, &axes); + wrap_inside_cell(&lat.atom_pos,lat.atom_pos,lat.cell); + + Structure str; + ifstream strfile(strfilename); + if (!strfile) ERRORQUIT("Unable to open structure file"); + parse_structure_file(&str.cell, &str.atom_pos, &str.atom_type, label, strfile, NULL); + wrap_inside_cell(&str.atom_pos,str.atom_pos,str.cell); + /* ---------- end of parsing ---------- */ + + // write APB structure file + ofstream apbfile(apbfilename); + write_apb_structure ( str, label, axes, apbfile, slipvec ); + + if (dofileonly) exit(1); + + // check if clusters.out, eci.out, gs_str.out exist + ifstream clusterfile(clusterfilename); + if (!clusterfile) ERRORQUIT("Unable to open clusters.out"); + ifstream ecifile(ecifilename); + if (!ecifile) ERRORQUIT("Unable to open eci.out"); + ifstream gsfile(gsfilename); + if (!gsfile) ERRORQUIT("Unable to open gs_str.out"); + + // number of atoms + int n_atom = str.atom_pos.get_size(); + // field number of "E_mc" + int nf=0; + + // get cross-sectional area + Real area = get_area(str); + + // get APB enegy using clusters and ECIs + apb_energy(strfilename, apbfilename, gammafilename, area, n_atom, nf, false, 0); + + if (domc) { + // fix concentration in conccons.in + char *concfilename="conccons.in"; + ofstream concfile(concfilename); + int type, n_type; + n_type=label.get_size(); + Array n_atom_type(n_type); + for ( int i=0; i!=n_type; ++i ) { + n_atom_type[i]=0.; + } + for ( int i=0; i!=n_atom; ++i ) { + type=str.atom_type[i]; + ++n_atom_type[type]; + } + for ( int i=0; i!=n_type; ++i ) { + concfile << "1.0*" << label[i] << " = " << n_atom_type[i]/n_atom << endl; + } + + // write control.in + write_control(T, nav); + + // run MC + char memc2_command[200]; + snprintf(memc2_command, 200, "memc2 -is=%s -n=%d -eq=%d -opss=str0000.out -keV -q", + strfilename, nav, neq); + system(memc2_command); + + // calculate APB energy + for ( int i=0; i!=nav; ++i ) { + char strf[30], apbf[30]; + sprintf(strf, "str%04d.out", i); + sprintf(apbf, "str%04d_apb.out", i); + cout << strf << apbf << endl; + ifstream strfile(strf); + ofstream apbfile(apbf); + parse_structure_file(&str.cell, &str.atom_pos, &str.atom_type, label, strfile, NULL); + wrap_inside_cell(&str.atom_pos,str.atom_pos,str.cell); + write_apb_structure(str, label, axes, apbfile, slipvec); + apb_energy(strf, apbf, gammafilename, area, n_atom, nf, domc, i); + } + } + + return 0; +} /* ---------- end of function main ---------- */ + +/* + * === FUNCTION ====================================================================== + * Name: write_apb_structure + * Description: Write APB structure file. Duplicate atoms along T3 and shift them by + * APB slip vector. + * ===================================================================================== + */ + void +write_apb_structure ( const Structure &str, const Array &atom_label, + const rMatrix3d &axes, ostream &file, const rVector3d &slipvec ) +{ + file.setf(ios::fixed); + file.precision(6); + + // write axes + write_axes(axes, file, 0); + + // write translation vectors + rMatrix3d iaxes = !axes; + rMatrix3d frac_cell = iaxes*str.cell; + rVector3d T3 = frac_cell.get_column(2); // copy T3 to write atoms later + for ( int i=0; i!=3; ++i ) { + frac_cell(i, 2) *= 2; // double T3 + } + for ( int i=0; i!=3; ++i ) { + file << frac_cell.get_column(i) << endl; // T1, T2 remain the same + } + + // write atoms + for ( int i=0; i!=str.atom_pos.get_size(); ++i ) { + file << iaxes*str.atom_pos(i) << " " << atom_label(str.atom_type(i)) << endl; + // copy atom to r+T3, apply slip vector + file << iaxes*str.atom_pos(i) + T3 + slipvec << " " + << atom_label(str.atom_type(i)) << endl; + } +} /* ----- end of function write_apb_structure ----- */ + +/* + * === FUNCTION ====================================================================== + * Name: get_area + * Description: The cross-sectional area of the supercell is given by ||T1 x T2||. + * ===================================================================================== + */ + Real +get_area ( const Structure &str ) +{ + rVector3d T1 = str.cell.get_column(0); + rVector3d T2 = str.cell.get_column(1); + return norm(T1^T2); +} /* ----- end of function get_area ----- */ + + +/* + * === FUNCTION ====================================================================== + * Name: write_control + * Description: Write control.in + * ===================================================================================== + */ + void +write_control ( const Real &T, const int &n ) +{ + Real T1=T+1; + char *controlfilename="control.in"; + ofstream controlfile(controlfilename); + controlfile << T << " 0 0 0" << endl + << T1 << " 0 0 0 " << n << endl; +} /* ----- end of function write_control ----- */ + +/* + * === FUNCTION ====================================================================== + * Name: get_energy + * Description: Obtain the total energy (eV/atom) of a structure using ECIs via memc2. + * ===================================================================================== + */ + Real +get_energy ( const char *strfilename, int &nf ) +{ + // write control.in + write_control(0,1); + + char memc2_command[200]; + snprintf(memc2_command, 200, "memc2 -is=%s -n=0 -eq=0 -g2c -q", strfilename); + system(memc2_command); + + char *mcfilename="mc.out"; + ifstream mcfile(mcfilename); + if (!mcfile) ERRORQUIT("Unable to open mc.out"); + + // find field number of "E_mc" + if (nf==0) { + char *mcheaderfilename="mcheader.out"; + ifstream mcheaderfile(mcheaderfilename); + if (!mcheaderfile) ERRORQUIT("Unable to open mcheader.out"); + + bool found=false; + string line; + while(getline(mcheaderfile, line)) { + nf++; + if (line.find("E_mc") != string::npos) { + found=true; + break; + } + } + if (!found) ERRORQUIT("Cannot find E_mc in mcheader.out"); + } + + // read energy + Real energy; + string line; + for (int i=0; i!=nf; ++i) { + mcfile >> energy; + } + return energy; +} /* ----- end of function get_energy ----- */ + +/* + * === FUNCTION ====================================================================== + * Name: apb_energy + * Description: Compute APB energy, defined as + * 2N*e1 - 2N*e0 (e1-e0)*N + * ------------- = --------- + * 2*A A + * where e0 and e1 are total energies in eV/atom. + * ===================================================================================== + */ + void +apb_energy ( const char *strfilename, const char *apbfilename, const char *gammafilename, + const Real &area, const int &n_atom, int &nf, bool domc, const int &i ) +{ + ofstream gammafile; + if (domc && i!=0) { + gammafile.open(gammafilename, ofstream::out | ofstream::app); + } else { + gammafile.open(gammafilename); + } + Real e0 = get_energy(strfilename, nf); + Real e1 = get_energy(apbfilename, nf); + Real gamma = (e1-e0)/area * n_atom * eV_mJ; // convert to mJ/m^2 + if (domc) { + gammafile << setw(4) << setfill('0') << i << " "; + } + gammafile << e0 << " " << e1 << " " << gamma << endl; +} /* ----- end of function apb_energy ----- */ diff --git a/src/apb.hh b/src/apb.hh new file mode 100644 index 0000000..ce5dbdd --- /dev/null +++ b/src/apb.hh @@ -0,0 +1,20 @@ +#ifndef __APB_H__ +#define __APB_H__ + +#include "stringo.h" +#include "xtalutil.h" +#include "vectmac.h" + +void write_apb_structure ( const Structure &str, const Array &atom_label, const rMatrix3d &axes, + ostream &file, const rVector3d &slipvec ); + +Real get_area ( const Structure &str ); + +void write_control ( const Real &T, const int &n); + +Real get_energy ( const char *strfilename, int &nf ); + +void apb_energy ( const char *strfilename, const char *apbfilename, const char *gammafilename, + const Real &area, const int &n_atom, int &nf, bool append, const int &i ); + +#endif diff --git a/src/apbhelp.hlp b/src/apbhelp.hlp new file mode 100644 index 0000000..3861d24 --- /dev/null +++ b/src/apbhelp.hlp @@ -0,0 +1,38 @@ +This code creates an APB from a given structure file and computes its APB +energy using ECIs. + +Reference: +R. Sun and A. van de Walle. +Automating impurity-enhanced antiphase boundary energy calculations from +ab initio Monte Carlo. +Calphad 53, 20 (2016). + +* The structure file is assumed to have the following form. + Orient the cell such that the APB plane is defined by T1 x T2: + + a 0 0 + 0 b 0 + 0 0 c + T1x T1y T1z + T2x T2y T2z + T3x T3y T3z + +* The APB structure is generated by duplicating atoms along T3 and shifting + them by the slip vector. + +* To obtain the APB energy, the user should first perform a cluster expansion + on the system and provide clusters.out and eci.out as input. + +* In Monte Carlo mode, the concentration of the initial structure is fixed in + conccons.in. The temperature and number of averaging steps are used to write + control.in. The file name of the perfect and defective structures MC snapshot + is str????.out and str????_apb.out, respectively. After MC, the APBs are + generated and their energies are computed. + +* The output format is: + [id] e0 e1 gamma + where + [id] = structure ID (only shown in Monte Carlo mode) + e0 = total energy (eV/atom) of perfect cell + e1 = total energy (eV/atom) of defective cell + gamma = APB energy (mJ/m^2) diff --git a/src/array.hh b/src/array.hh new file mode 100644 index 0000000..d42092c --- /dev/null +++ b/src/array.hh @@ -0,0 +1,590 @@ +#ifndef __ARRAY_H__ +#define __ARRAY_H__ + +#include +#include "vectmac.h" +#include "misc.h" + +template +class Array { + protected: + int size; + T *buf; + protected: + void init(int new_size) { + size=new_size; + if (new_size!=0) + buf=new T[size]; + else + buf=NULL; + } + T& access(int i) const { +#ifdef DEBUG + if (i<0 || i>=size) { + cerr << "Array out of range: " << i << "/" << size << endl; + COREDUMP + return buf[0]; + } + else +#endif + return buf[i]; + } + public: + Array(int new_size=0) { + init(new_size); + } + Array(const Array &a) { + init(a.size); + for (int i=0; i &a) { + resize(a.size); + for (int i=0; i &a) { + resize(a.size); + for (int i=0; i +void zero_array(Array *a) { + for (int i=0; igetSize(); i++) { + (*a)(i)=(T)0; + } +} + +template +void one_array(Array *a) { + for (int i=0; igetSize(); i++) { + (*a)(i)=(T)1; + } +} + +template +void fill_array(Array *a, const T &val) { + for (int i=0; igetSize(); i++) { + (*a)(i)=val; + } +} + +template +int operator==(const Array &a, const Array &b) { + if (a.get_size()!=b.get_size()) return 0; + for (int i=0; i +int operator!=(const Array &a, const Array &b) { + if (a.get_size()!=b.get_size()) return 1; + for (int i=0; i +T& robust_access(Array *pa, int i) { + if (i>=pa->get_size()) { + Array tmp(*pa); + int s=pa->get_size(); + while (s<=i) {s*=2;} + pa->resize(s); + zero_array(pa); + for (int j=0; j +void tracev(const Array &v) { + for (int i=0; i +void tracevl(const Array &v) { + for (int i=0; i +class Array2d { + protected: + iVector2d size; + T *buf; + protected: + void init(const iVector2d& new_size) { + size=new_size; + int surface=size(0)*size(1); + if (surface>0) { + buf=new T[surface]; + } + else + buf=NULL; + } + T& access(int x, int y) const { +#ifdef DEBUG + if (x<0 || x>=size(0) || y<0 || y>=size(1)) { + cerr << "Array2d out of range: " << x << " " << y << " / " << size(0) << " " << size(1) << endl; + COREDUMP + return buf[0]; + } + else +#endif + return buf[y*size(0)+x]; + } + public: + Array2d(void) { + init(iVector2d(0,0)); + } + Array2d(const iVector2d& new_size) { + init(new_size); + } + Array2d(int new_size_x, int new_size_y) { + init(iVector2d(new_size_x,new_size_y)); + } + Array2d(const Array2d &a) { + init(a.get_size()); + for (int i=0; i &a) { + init(a.get_size()); + for (int i=0; i &a) { + resize(a.getSize()); + Array2dIterator i(a.getSize()); + while (i) { + THIS(i)=a(i); + i++; + } + } */ + void resize(iVector2d new_size) { + if (new_size!=size) { + delete[] buf; + init(new_size); + } + } + void resize(int new_size_x, int new_size_y) { + resize(iVector2d(new_size_x,new_size_y)); + } + T* get_buf(void) { + return buf; + } + const T* get_buf_c(void) const { + return buf; + } + /* + operator T* () { + return buf; + } + operator const T* () const { + return buf; + } + */ +}; + +class Array2dIterator { + iVector2d i; + iVector2d size; +public: + Array2dIterator(iVector2d _size) { + init(_size); + } + void init(iVector2d _size) { + i=iVector2d(0,0); + size=_size; + } + void init(void) { + i=iVector2d(0,0); + } + int operator++(int) { + i(0)++; + if (i(0)==size(0)) { + i(0)=0; + i(1)++; + if (i(1)==size(1)) { + //i(1)=0; + return 0; + } + } + return 1; + } + int operator+=(iVector2d step) { + i(0)+=step(0); + if (i(0)>=size(0)) { + i(0)=0; + i(1)+=step(1); + if (i(1)>=size(1)) { + //i(1)=0; + return 0; + } + } + return 1; + } + operator iVector2d(void) const { + return i; + } + operator int(void) const { + if (i(1)>=size(1) || i(0)>=size(0)) + return 0; + else + return 1; + } + int eol(void) {return (i(0)==(size(0)-1));} +}; + +template +void zero_array(Array2d *a) { + Array2dIterator i(a->getSize()); + while (i) { + (*a)(i)=(T)0; + i++; + } +} + +template +ostream& operator << (ostream &s, const Array &a) { + s << a.get_size() << endl; + for (int i=0; i +istream& operator >> (istream &s, Array &a) { + int size; + s >> size; + a.resize(size); + for (int i=0; i> a(i); + } + return s; +} + +template +ostream& operator << (ostream &s, const Array2d &a) { + iVector2d size=a.get_size(); + s << size << endl; + for (int i=0; i +istream& operator >> (istream &s, Array2d &a) { + iVector2d size; + s >> size; + a.resize(size); + for (int i=0; i> a(i,j); + } + } + return s; +} + +template +int find_value(const Array &a, const T &x) { + int minj=-1; + Real mind=MAXFLOAT; + for (int j=0; j +inline T max(const Array &a) { + T m=a(0); + for (int i=1; im) m=a(i); + } + return m; +} + +template +inline T min(const Array &a) { + T m=a(0); + for (int i=1; i +inline int index_max(const Array &a) { + T m=a(0); + int idx=0; + for (int i=1; im) {m=a(i); idx=i;} + } + return idx; +} + +template +inline int index_min(const Array &a) { + T m=a(0); + int idx=0; + for (int i=1; i +int is_in_array(const Array &a, const T &x) { + for (int i=0; i +int index_in_array(const Array &a, const T &x) { + for (int i=0; i +void sort_array(Array *a) { + for (int i=0; iget_size()-1; i++) { + for (int j=i; jget_size()-1; j++) { + if ((*a)(j)>(*a)(j+1)) {swap(&(*a)(j),&(*a)(j+1));} + } + } +} + +template +void resize(Array > *a, int n1, int n2){ + a->resize(n1); + for (int i1=0; i1 +void ArrayArray_to_Array2d(Array2d *pa2d, const Array > &a, int permute) { + if (permute) { + pa2d->resize(a(0).get_size(),a.get_size()); + for (int i=0; iget_size()(0); i++) { + for (int j=0; jget_size()(1); j++) { + (*pa2d)(j,i)=a(i)(j); + } + } + } + else { + pa2d->resize(a.get_size(),a(0).get_size()); + for (int i=0; iget_size()(0); i++) { + for (int j=0; jget_size()(1); j++) { + (*pa2d)(i,j)=a(i)(j); + } + } + } +} + +typedef Array ArrayReal; +typedef Array Arrayint; +typedef Array ArrayArrayint; +typedef Array ArrayArrayReal; + +template +class ArrayFunctionArray { + public: + virtual void eval(Array *py, const Array &x) {} + virtual int read(istream &file) {return 0;} +}; + +template +void convert_matrix(FixedMatrix *pf, const Array2d &a) { + for (int i=0; i +void convert_matrix(Array2d *pa, const FixedMatrix &m) { + pa->resize(D,D); + for (int i=0; i +void extract_columns(Array2d *pa, const Array2d &b, const Array &cols, int nb_cols=-1) { + if (nb_cols==-1) {nb_cols=cols.get_size();} + pa->resize(iVector2d(b.get_size()(0),nb_cols)); + for (int i=0; i=0) { + for (int j=0; j +void extract_column(Array *pa, const Array2d &b, int col) { + pa->resize(b.get_size()(0)); + for (int i=0; i +void set_column(Array2d *pa, const Array &b, int col) { + for (int i=0; i +void extract_row(Array *pa, const Array2d &b, int row) { + pa->resize(b.get_size()(1)); + for (int i=0; i +void set_row(Array2d *pa, const Array &b, int row) { + for (int i=0; i +void extract_elements(Array *pa, const Array &b, const Array &cols, int nb_cols=-1) { + if (nb_cols==-1) {nb_cols=cols.get_size();} + pa->resize(nb_cols); + for (int i=0; i=0) { + (*pa)(i)=b(cols(i)); + } + } +} + +template +void extract_elements(Array *pa, const Array &b, int first, int lastp1) { + pa->resize(lastp1-first); + int i=0; + for (int j=first; j +void extract_elements(Array *pa, int first_dest, const Array &b, int first, int lastp1) { + int i=first_dest; + for (int j=first; j +inline LinkedList& operator <<(LinkedList& list, const Array &a) { + for (int i=0; i +void LinkedList_to_Array(Array *a, const LinkedList &l) { + if (a) { + int size=l.get_size(); + a->resize(size); + LinkedListIterator it(l); + for (int i=0; i +void ArrayArray_to_Array2d(Array2d *pmat, const Array > &a) { + if (a.get_size()==0) { + pmat->resize(0,0); + } + else { + int h=a(0).get_size(); + pmat->resize(a.get_size(),h); + for (int i=0; i +void LinkedListArray_to_Array2d(Array2d *a, const LinkedList > &l) { + if (a) { + LinkedListIterator it(l); + iVector2d size(l.get_size(),it->get_size()); + a->resize(size); + for (int i=0; i +void Array_to_FixedVector(FixedVector *pv, const Array &a) { + for (int i=0; i +void FixedVector_to_Array(Array *pa, const FixedVector &v) { + pa->resize(D); + for (int i=0; i +void ArrayArray_to_ArrayFixedVector(Array > *paf, const Array > &aa) { + paf->resize(aa.get_size()); + for (int i=0; i +void LinkedListFixedVector_to_LinkedListArray(LinkedList > *pla, const LinkedList > &lf) { + LinkedListIterator > it(lf); + for (;it; it++) { + Array *pa=new Array(); + FixedVector_to_Array(pa,*it); + (*pla) << pa; + } +} + +template +void LinkedListFixedVector_to_LinkedListArray(LinkedList > *pla, const LinkedList > &lf) { + LinkedListIterator > it(lf); + for (;it; it++) { + Array *pa=new Array(); + FixedVector_to_Array(pa,*it); + (*pla) << pa; + } +} +*/ + +template +class TrivEqual { + public: + int operator () (const T& a, const T& b) const { + return (a==b); + } +}; + +template +inline int add_unique(LinkedList *l, T *pobject, const C &isequal) { + LinkedListIterator i(*l); + for ( ; i; i++) { + if (isequal(*i,*pobject)) break; + } + if (!i) { + (*l) << pobject; + return 1; + } + else { + return 0; + } +} + +template +inline int add_unique(LinkedList *l, const T &object, const C &isequal) { + T *pobject=new T(object); + if (add_unique(l,pobject,isequal)) { + return 1; + } + else { + delete pobject; + return 0; + } +} + +template +inline void add_sorted(LinkedList *l, T *pobject, const C &less_equal) { + LinkedListIterator i(*l); + for ( ; i; i++) { + if (!less_equal(*i,pobject)) break; + } + l->add(pobject,i); +} + +template +inline void add_sorted(LinkedList *l, const T &object, const C &comparator) { + add_unique_sorted(l,new T(object),comparator); +} + +template +class TrivLessThan { + public: + int operator () (const T& a, const T& b) const { + return (a +inline void sort_array(Array *pa, const C &comparator) { + for (int i=1; iget_size(); i++) { + for (int j=0; jget_size()-i; j++) { + if (comparator((*pa)(j+1),(*pa)(j))) { + swap(&((*pa)(j+1)),&((*pa)(j))); + } + } + } +} + +template +class MultiDimIterator { + T current; + T max; + T min; + int valid; + public: + MultiDimIterator(): current(), min(), max() {valid=0;} + ~MultiDimIterator() {} + MultiDimIterator(const T &_min, const T &_max): current(), min(), max() { + init(_min,_max); + } + MultiDimIterator(const T &_max): current(), min(), max() { + init(_max); + } + void init(const T &_min, const T &_max) { + min=_min; + max=_max; + valid=1; + current=_min; + } + void init(const T &_max) { + min=_max; + max=_max; + for (int i=0; i +inline const T& MultiDimIterator::operator++(int) { + int i=0; + while (i +inline void MultiDimIterator::bump_up(int level) { + current(level)=min(level); + int i=level+1; + while (i=max(i)) { + current(i)=min(i); + i++; + } + if (i==max.get_size()) { + valid=0; + } + else { + current(i)++; + } +} + +class MultipletIterator { + public: + enum Style {all,nopermute,norepeat}; + private: + Array current; + int min; + int max; + int valid; + Style style; + public: + MultipletIterator(): current() {} + MultipletIterator(int dim, int _min, int _max, Style _style=all): current() { + init(dim,_min,_max,_style); + } + void init(int dim, int _min, int _max, Style _style=all) { + min=_min; + max=_max; + valid=1; + style=_style; + current.resize(dim); + for (int i=0; i& (void) {return current;} + operator int () {return valid;} + const Array& operator++(int); +}; + +inline const Array& MultipletIterator::operator++(int) { + int i; + switch (style) { + case MultipletIterator::all: + i=0; + while (current(i)>=max && i=0; j--) {current(j)=current(i);} } + break; + case MultipletIterator::norepeat: + current(i)=min; + i=0; + while (current(i)==max && i=0; j--) { + current(j)=current(i)+(i-j); + if (current(j)>max) {valid=0; return current;} + } + break; + } + return current; +} + +template +void extract_columns(Array2d *pa, const Array2d &b, const LinkedList &cols_list, int nb_cols) { + Array cols; + LinkedList_to_Array(&cols,cols_list); + extract_columns(pa,b,cols,nb_cols); +} + +#endif diff --git a/src/bgsdqmc.c++ b/src/bgsdqmc.c++ new file mode 100644 index 0000000..6425ae8 --- /dev/null +++ b/src/bgsdqmc.c++ @@ -0,0 +1,106 @@ +#include "normal.h" +#include "array.h" +#include + +class FuncofVector { +public: + virtual Real operator ()(const Array &) const {return 0;}; +}; + +int find_in_sorted_array(Real w, const Array &cumw) { + int l=0; + int h=cumw.get_size()-1; + while (lw) { + h=t; + } + else { + l=t+1; + } + } + return l; +} + +Real iterate_QMC(Array > *pnew_walker, const Array > &walker, const FuncofVector &pot, Real spread, Real mult) { + int n=walker.get_size(); + int d=walker(0).get_size(); + Array cumw(n); + Real neww=0.; + Real E=0.; + // cerr << n << endl; + for (int i=0; iresize(n); + for (int i=0; i &x) const { + Real V=(2.)*(0.5*ipow(x(0),3) -1.5*x(0)*ipow(x(1),2))+(6./16.)*ipow(ipow(x(0),2)+ipow(x(1),2),2); + Real r=0.; + for (int i=2; i > *pwalker=new Array >(nwalker); + Array > *pnew_walker=new Array >(nwalker); + for (int i=0; iget_size(); i++) { + (*pwalker)(i).resize(dim); + (*pnew_walker)(i).resize(dim); + for (int j=0; j +#include +#include "misc.h" +#include "vectmac.h" +#include "array.h" + +#define MAKE_GENERIC_BIN_OSTREAM(T) ostream & bin_ostream(ostream &file, const T &x) { return file.write((char *)&x,sizeof(T)); } + +MAKE_GENERIC_BIN_OSTREAM(int) +MAKE_GENERIC_BIN_OSTREAM(Real) + +template +ostream & bin_ostream(ostream &file, FixedVector &x) { + for (int i=0; i +ostream & bin_ostream(ostream &file, const Array &x) { + bin_ostream(file,x.get_size()); + for (int i=0; i +istream & bin_istream(istream &file, FixedVector &x) { + for (int i=0; i +istream & bin_istream(istream &file, Array &x) { + int n; + bin_istream(file, n); + x.resize(n); + for (int i=0; i > z(2); + z(0).resize(3); + z(0)(0)=1.1; z(0)(1)=1.2; z(0)(2)=1.3; + z(1).resize(2); + z(1)(0)=2.1; z(1)(1)=2.2; + ostrstream line; + bin_ostream(line,x); + bin_ostream(line,y); + bin_ostream(line,z); + strstream buf; + buf.write(line.str(),line.tellp()); + Real xx; + rVector3d yy; + Array > zz; + bin_istream(buf,xx); + bin_istream(buf,yy); + bin_istream(buf,zz); + cout << x << " " << xx << endl << y << " " << " " << yy << endl << z << " " << zz << endl; + return 0; +} diff --git a/src/binstream.hh b/src/binstream.hh new file mode 100644 index 0000000..37e5f20 --- /dev/null +++ b/src/binstream.hh @@ -0,0 +1,101 @@ +#ifndef __BINSTREAM_H__ +#define __BINSTREAM_H__ + +#include +#include +#include "misc.h" +#include "vectmac.h" +#include "arraylist.h" + +#define MAKE_GENERIC_BIN_OSTREAM(T) inline ostream & bin_ostream(ostream &file, const T &x) { return file.write((char *)&x,sizeof(T)); } + +MAKE_GENERIC_BIN_OSTREAM(char) +MAKE_GENERIC_BIN_OSTREAM(int) +MAKE_GENERIC_BIN_OSTREAM(Real) + +template +inline ostream & bin_ostream(ostream &file, const FixedVector &x) { + for (int i=0; i +inline ostream & bin_ostream(ostream &file, const FixedMatrix &x) { + for (int i=0; i +inline ostream & bin_ostream(ostream &file, const Array &x) { + bin_ostream(file,x.get_size()); + for (int i=0; i +inline ostream & bin_ostream(ostream &file, const LinkedList &x) { + bin_ostream(file,x.get_size()); + LinkedListIterator i(x); + for (; i; i++) { + bin_ostream(file, (T &)(*i)); + } + return file; +} + +#define MAKE_GENERIC_BIN_ISTREAM(T) inline istream & bin_istream(istream &file, T &x) { return file.read((char *)&x,sizeof(T)); } + +MAKE_GENERIC_BIN_ISTREAM(char) +MAKE_GENERIC_BIN_ISTREAM(int) +MAKE_GENERIC_BIN_ISTREAM(Real) + +template +inline istream & bin_istream(istream &file, FixedVector &x) { + for (int i=0; i +inline istream & bin_istream(istream &file, FixedMatrix &x) { + for (int i=0; i +inline istream & bin_istream(istream &file, Array &x) { + int n; + bin_istream(file, n); + x.resize(n); + for (int i=0; i +inline istream & bin_istream(istream &file, LinkedList &x) { + x.delete_all(); + int n; + bin_istream(file, n); + for (int i=0; i x.tmp +echo -n > y.tmp +foreach strain ( $strains ) + if ( ! -e s_$strain/energy ) then + mkdir s_$strain + cellcvrt -sc=`calc 1+$strain` < str_relax.out > s_$strain/str.out + pushd s_$strain >& /dev/null + $runcommand + if ( -e error ) then + popd >& /dev/null + touch error + break + endif + popd >& /dev/null + cellcvrt -sc=`calc "1/(1+$strain)"` < s_$strain/str_relax.out > str_relax.out + endif + echo $strain >> x.tmp + cat s_$strain/energy >> y.tmp +end +if ( ! -e error ) then + lsfit -x=x.tmp -y=y.tmp -1 -pw=2 > eos.tmp + echo `cat eos.tmp` `cellcvrt -pv < str.out` |\ + awk '{s=-$2/(2*$3); print s > "strain.out"; print (2./9.)*$3/($4*(1+s)^3) > "bulkmod"; print $1-($2^2)/(4*$3) > "energy"}' + set ropts=`paste y.tmp x.tmp | awk '{print $1+0,$2}' | sort -n | head -1 | awk '{print $2}'` + set opts=`cat strain.out` + cat s_$ropts/str_relax.out | cellcvrt -sc=`calc "(1+$opts)/(1+$ropts)"` > str_relax.out + cp s_$ropts/dos.out . +endif diff --git a/src/calccorr.c++ b/src/calccorr.c++ new file mode 100644 index 0000000..e78ea37 --- /dev/null +++ b/src/calccorr.c++ @@ -0,0 +1,683 @@ +#include "calccorr.h" +#include "clus_str.h" +#include "lstsqr.h" +#include "plugin.h" + +//#include "parse.h" + +void find_equivalent_clusters(Array *pclusters, const Array &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans) { + rMatrix3d inv_cell=!cell; + LinkedList list; + for (int op=0; op *ptransfo_cluster=new Array(cluster.get_size()); + apply_symmetry(ptransfo_cluster,point_op(op),trans(op),cluster); + LinkedListIterator i(list); + for ( ; i; i++) { + if (equivalent_mod_cell(*i,*ptransfo_cluster,inv_cell)) break; + } + if (!i) { + list << ptransfo_cluster; + } + else { + delete ptransfo_cluster; + } + } + LinkedList_to_Array(pclusters,list); +} + +int calc_multiplicity(const Array &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans) { + Array equiv; + find_equivalent_clusters(&equiv, cluster,cell,point_op,trans); + return equiv.get_size(); +} + +Real calc_correlation(const Structure &str, const Array &clusters, const rMatrix3d &cell) { + Real accum=0.; + int count=0; + rMatrix3d inv_strcell=!str.cell; + LatticePointInCellIterator t(cell,str.cell); + for ( ;t; t++) { + for (int c=0; c &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans) { + Array clusters; + find_equivalent_clusters(&clusters, cluster, cell, point_op, trans); + return calc_correlation(str,clusters,cell); +} + +void find_clusters_overlapping_site(Array *o_cluster, Array *o_eci, + const rVector3d &site, + const Structure &lattice, const SpaceGroup &space_group, + const LinkedList &cluster_list, const LinkedList &eci_list, int skipzeros) { + rMatrix3d inv_cell=!lattice.cell; + LinkedList long_cluster_list; + LinkedList long_eci_list; + LinkedListIterator c(cluster_list); + LinkedListIterator e(eci_list); + for ( ; c; c++,e++) { + if (c->get_size()>0) { + if (!(skipzeros && (*e)==0)) { + Array clusters; + find_equivalent_clusters(&clusters, *c,space_group.cell,space_group.point_op,space_group.trans); + for (int ec=0; ec *correlation, int components, const Structure &str, const Array &clusters, const rMatrix3d &cell) { + Real accum=0.; + int count=0; + LatticePointInCellIterator t(cell,str.cell); + for ( ;t; t++) { + for (int c=0; c &cluster_list, const LinkedList &eci_list) { + Real E_ref=0.; + LinkedListIterator ic(cluster_list); + LinkedListIterator ie(eci_list); + for (;ic; ic++, ie++) { + if (ic->get_size()==0) E_ref=*ie; + } + return E_ref; +} + +void CorrFuncTable::init_from_site_type_list(const Array > &site_type_list) { + int c=0; + for (int i=0; i *psm, const Array > &rm) { + int comp=rm(0).get_size(); + psm->resize(iVector2d(comp,comp)); + for (int i=0; i > > &table=*this; + table.resize(comp-1); + for (int m=2; m<=comp; m++) { + table(m-2).resize(m-1); + for (int t=0; t *GenericPlugIn::list=NULL; +SpecificPlugIn TrigoCorrFuncPlugIn("trigo"); + +void find_equivalent_clusters(Array *pclusters, const MultiCluster &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans) { + rMatrix3d inv_cell=!cell; + LinkedList list; + for (int op=0; op i(list); + for ( ; i; i++) { + if (equivalent_mod_cell(*i,*ptransfo_cluster,inv_cell)) break; + } + if (!i) { + list << ptransfo_cluster; + } + else { + delete ptransfo_cluster; + } + } + LinkedList_to_Array(pclusters,list); +} + +int calc_multiplicity(const MultiCluster &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans) { + Array equiv; + find_equivalent_clusters(&equiv, cluster,cell,point_op,trans); + return equiv.get_size(); +} + +Real calc_correlation(const Structure &str, const Array &clusters, const rMatrix3d &cell, const Array > > &corrfunc) { + Real accum=0.; + int count=0; + rMatrix3d inv_strcell=!str.cell; + LatticePointInCellIterator t(cell,str.cell); + for ( ;t; t++) { + for (int c=0; c &point_op, const Array &trans, const Array > > &corrfunc) { + Array clusters; + find_equivalent_clusters(&clusters, cluster, cell, point_op, trans); + return calc_correlation(str,clusters,cell,corrfunc); +} + +int neg_mod(int x, int m) { + if (x<0) {x+=(-x/m+1)*m;} + return (x % m); +} + +Real calc_correlation_fast(Tensor *ptab_str, const Structure &str, const Array &clusters, const Structure &lat, const Array > > &corrfunc) { + rMatrix3d inv_cell=!lat.cell; + if (ptab_str->get_size().get_size()==0) { + Array supcel(4); + rMatrix3d supscale=(!lat.cell)*str.cell; + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + if (i!=j) { + if (!near_zero(supscale(i,j))) {ERRORQUIT("Fast algorithm needs a simple supercell");} + } + else {supcel(i)=iround(supscale(i,j));} + } + } + supcel(3)=lat.atom_pos.get_size(); + ptab_str->resize(supcel); + for (int at=0; at cellat(4); + for (int i=0; i<3; i++) {cellat(i)=neg_mod(t(i),supcel(i));} + cellat(3)=atl; + (*ptab_str)(cellat)=str.atom_type(at); + } + } + Array > > clus_int(clusters.get_size()); + for (int c=0; c supcel=ptab_str->get_size(); + iVector3d supcelt(supcel(0),supcel(1),supcel(2)); + MultiDimIterator cell(supcelt); + for (; cell; cell++) { + for (int c=0; c cellat(4); + for (int i=0; i<3; i++) {cellat(i)=neg_mod(((iVector3d &)cell)(i)+clus_int(c)(at)(i),supcel(i));} + cellat(3)=clus_int(c)(at)(3); + Real spin=corrfunc(clusters(c).site_type(at))(clusters(c).func(at))((*ptab_str)(cellat)); + sigma=sigma*spin; + } + accum+=sigma; + count++; + } + } + return accum/(Real)count; +} + +void find_clusters_overlapping_site(Array *o_cluster, Array *o_which, + const rVector3d &site, + const SpaceGroup &space_group, + const LinkedList &cluster_list) { + rMatrix3d inv_cell=!space_group.cell; + LinkedList long_cluster_list; + LinkedList long_which_list; + LinkedListIterator c(cluster_list); + int e=0; + for ( ; c; c++,e++) { + if (c->clus.get_size()>0) { + Array clusters; + find_equivalent_clusters(&clusters, *c,space_group.cell,space_group.point_op,space_group.trans); + for (int ec=0; ecclus(j)=site; + to_add->site_type(j)=clusters(ec).site_type(center_atom); + to_add->func(j)=clusters(ec).func(center_atom); + j++; + for (int i=0; iclus(j)=clusters(ec).clus(i)+lat_shift; + to_add->site_type(j)=clusters(ec).site_type(i); + to_add->func(j)=clusters(ec).func(i); + j=j+1; + } + } + long_cluster_list << to_add; + long_which_list << new int(e); + } + } + } + } + } + LinkedList_to_Array(o_cluster,long_cluster_list); + LinkedList_to_Array(o_which,long_which_list); +} + +void calc_corr_to_conc(Array2d *pmat, const Structure &lat, const Array > &site_type_list, const SpaceGroup &spacegroup, const Array > > &corrfunc, Array *p_pt_mult) { + int total_species=0; + for (int i=0; i max_conc_vector(total_species); + zero_array(&max_conc_vector); + for (int i=0; i c(point.get_cluster_list()); + Array nb_species(point.get_cluster_list().get_size()); + Array > equiv_site(nb_species.get_size()); + for (int i=0; iclus(0),invcell))).get_size(); + Array eq_clusters; + find_equivalent_clusters(&eq_clusters, *c, lat.cell, spacegroup.point_op, spacegroup.trans); + equiv_site(i).resize(eq_clusters.get_size()); + for (int j=0; j > endpt(nb_species); + Array > corr_basis; + LinkedList > conc_basis_list; + Structure str; + str=lat; + zero_array(&(str.atom_type)); + + if (p_pt_mult) { + p_pt_mult->resize(point.get_cluster_list().get_size()); + LinkedListIterator c(point.get_cluster_list()); + int i=0; + for (; c; c++, i++) { + (*p_pt_mult)(i)=calc_multiplicity(*c,spacegroup.cell,spacegroup.point_op,spacegroup.trans)/(Real)(lat.atom_type.get_size()); + } + } + + int nb_in_basis=0; + for ( ; endpt; endpt++) { + for (int i=0; i &)endpt)(i); + } + } + /* cout << (Array &)endpt << endl; + { + Array atom_label(5); + atom_label(0)=AutoString("A"); + atom_label(1)=AutoString("B"); + atom_label(2)=AutoString("C"); + atom_label(3)=AutoString("D"); + atom_label(4)=AutoString("E"); + write_structure(str, lat, site_type_list, atom_label, lat.cell, cout); + cout << "end" << endl << endl; + } + */ + LinkedList corr_list; + LinkedListIterator c(point.get_cluster_list()); + corr_list << new Real(1.); + for ( ; c; c++) { + Real corr=calc_correlation(str,*c,spacegroup.cell,spacegroup.point_op,spacegroup.trans,corrfunc); + if (p_pt_mult) {corr*=calc_multiplicity(*c,spacegroup.cell,spacegroup.point_op,spacegroup.trans)/(Real)(lat.atom_type.get_size());} + corr_list << new Real(corr); + } + Array cur_corr; + LinkedList_to_Array(&cur_corr,corr_list); + if (build_basis(&corr_basis,&nb_in_basis,cur_corr)) { + Array conc_vector(total_species); + zero_array(&conc_vector); + for (int i=0; i(conc_vector); + } + } + + /* + MultiDimIterator > endpt(str.atom_type); + Array > corr_basis; + LinkedList > conc_basis_list; + + int nb_in_basis=0; + for ( ; endpt; endpt++) { + + for (int i=0; i &)endpt)(lat.atom_type(i)); + } + + str.atom_type=(Array &)endpt; + LinkedList corr_list; + LinkedListIterator c(point.get_cluster_list()); + corr_list << new Real(1.); + for ( ; c; c++) { + Real corr=calc_correlation(str,*c,spacegroup.cell,spacegroup.point_op,spacegroup.trans,corrfunc); + if (usemultcorr) {corr*=calc_multiplicity(*c,spacegroup.cell,spacegroup.point_op,spacegroup.trans)/(Real)(lat.atom_type.get_size());} + corr_list << new Real(corr); + } + Array cur_corr; + LinkedList_to_Array(&cur_corr,corr_list); + if (build_basis(&corr_basis,&nb_in_basis,cur_corr)) { + Array conc_vector(total_species); + zero_array(&conc_vector); + for (int i=0; i(conc_vector); + } + } + */ + + Array2d corrmat(nb_in_basis,nb_in_basis); + for (int i=0; i icorrmat; + invert_matrix(&icorrmat,corrmat); + LinkedListIterator > ic(conc_basis_list); + Array2d concmat(ic->get_size(),nb_in_basis); + for (int i=0; iget_size(); j++) { + concmat(j,i)=(*ic)(j); + } + } + // cerr << corrmat << endl; + // cerr << concmat << endl; + product(pmat,concmat,icorrmat); +} + +void extract_nonredundant(Array2d *pnored, Array2d *pnoredtored, Array *pconst, const Array2d &mat) { + int dim=mat.get_size()(1); + Array > basis(dim); + int nb_in_basis=1; + basis(0).resize(dim); + zero_array(&basis(0)); + basis(0)(0)=1.; + for (int i=0; i v; + extract_row(&v,mat,i); + v(0)=0.; + build_basis(&basis,&nb_in_basis,v); + } + pnored->resize(nb_in_basis-1,dim-1); + for (int i=0; i bignored(nb_in_basis,dim); + for (int i=0; i bignoredt,mat_bignoredt,bignored_bignoredt,inv,bignoredtored; + transpose_matrix(&bignoredt,bignored); + product(&mat_bignoredt,mat,bignoredt); + product(&bignored_bignoredt,bignored,bignoredt); + invert_matrix(&inv,bignored_bignoredt); + product(&bignoredtored,mat_bignoredt,inv); + extract_column(pconst,bignoredtored,0); + Array cols(bignoredtored.get_size()(1)-1); + for (int i=0; iresize(dim-1,dim-1); + for (int i=0; i inv,tmp; + ArrayArray_to_Array2d(&tmp,basis,0); + invert_matrix(&inv,tmp); + product(&tmp,mat,inv); + extract_column(pconst,tmp,0); + Array cols(dim-1); + for (int i=0; i *pconc, const Array &atom_type, int nbatomtype) { + Real dc=1./(Real)atom_type.get_size(); + pconc->resize(nbatomtype); + zero_array(pconc); + for (int i=0; i *pconc, const Structure &lattice, const Array > &site_type_list, const Structure &str) { + int comp=0; + for (int i=0; iresize(comp); + zero_array(pconc); + rMatrix3d invcell=!lattice.cell; + Real tot=0.; + for (int i=0; i *pmat, Array *pvec, const Structure &lat, const Array > &site_type_list) { + int total_species=0; + for (int i=0; i nb_species(site_type_list.get_size()); + for (int i=0; i > endpt(nb_species); + Array > conc_basis; + + int nb_in_basis=0; + Array ref(0); + for ( ; endpt; endpt++) { + for (int i=0; i &)endpt)(lat.atom_type(i)); + } + Array cur_conc; + calc_concentration(&cur_conc,lat,site_type_list,str); + if (ref.get_size()==0) { + ref=cur_conc; + } + else { + diff(&cur_conc,cur_conc,ref); + build_basis(&conc_basis,&nb_in_basis,cur_conc); + } + } + *pvec=ref; + pmat->resize(ref.get_size(),nb_in_basis); + for (int i=0; i *pmat, const Array2d &noredtored, const Array &noredtored_c, int keepconst) { + int dropconst=1-keepconst; + Array2d x(noredtored.get_size()(0),1+noredtored.get_size()(1)); + for (int i=0; i xx,ixx; + inner_product(&xx,x,x); + invert_matrix(&ixx,xx); + Array2d mat; + product(&mat,x,ixx); + pmat->resize(mat.get_size()(1)-dropconst,mat.get_size()(0)); + for (int i=0; iget_size()(0); i++) { + for (int j=0; jget_size()(1); j++) { + (*pmat)(i,j)=mat(j,dropconst+i); + } + } +} + +void find_clusters_symmetry(SpaceGroup *psubgroup, const MultiCluster &cluster, const SpaceGroup &space_group) { + rMatrix3d inv_cell=!(space_group.cell); + LinkedList point_list; + LinkedList trans_list; + for (int op=0; opcell=space_group.cell; + LinkedList_to_Array(&(psubgroup->point_op),point_list); + LinkedList_to_Array(&(psubgroup->trans),trans_list); +} + +Real calc_correlation_atomcluster(const Array &atom_pos, const Array &atom_type, const Array &clusters, const rMatrix3d &cell, const Array > > &corrfunc, int *pmult) { + if (clusters(0).clus.get_size()==0) { + if (pmult) {*pmult=1;} + return 1.; + } + Real accum=0.; + int count=0; + rMatrix3d icell=!cell; + + for (int c=0; c *pclusters, const Array &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans); + +int calc_multiplicity(const Array &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans); + +Real calc_correlation(const Structure &str, const Array &clusters, const rMatrix3d &cell); + +Real calc_correlation(const Structure &str, const Array &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans); + +void find_clusters_overlapping_site(Array *o_cluster, Array *o_eci, + const rVector3d &site, + const Structure &lattice, const SpaceGroup &space_group, + const LinkedList &cluster_list, const LinkedList &eci_list, int skipzeros=0); + + +Real find_empty_eci(const LinkedList &c, const LinkedList &e); + +class CorrFuncTable: public Array > > { + public: + CorrFuncTable(): Array > >() {} + virtual void init(int comp) {} + void init_from_site_type_list(const Array > &site_type_list); +}; + +void make_square_corr_matrix(Array2d *psm, const Array > &rm); + +class TrigoCorrFuncTable: public CorrFuncTable { + public: + TrigoCorrFuncTable(): CorrFuncTable() {} + void init(int comp); +}; + +void find_equivalent_clusters(Array *pclusters, const MultiCluster &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans); +int calc_multiplicity(const MultiCluster &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans); +Real calc_correlation(const Structure &str, const Array &clusters, const rMatrix3d &cell, const Array > > &corrfunc); +Real calc_correlation(const Structure &str, const MultiCluster &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans, const Array > > &corrfunc); +Real calc_correlation_fast(Tensor *ptab_str, const Structure &str, const Array &clusters, const Structure &lat, const Array > > &corrfunc); + +void find_clusters_overlapping_site(Array *o_cluster, Array *o_which, + const rVector3d &site, + const SpaceGroup &space_group, + const LinkedList &cluster_list); + +void calc_corr_to_conc(Array2d *pmat, const Structure &lat, const Array > &site_type_list, const SpaceGroup &spacegroup, const Array > > &corrfunc, Array *p_pt_mult=NULL); +void extract_nonredundant(Array2d *pnored, Array2d *pnoredtored, Array *pconst, const Array2d &mat); + +void calc_concentration(Array *pconc, const Array &atom_type, int nbatomtype); +int calc_concentration(Array *pconc, const Structure &lattice, const Array > &site_type_list, const Structure &str); +void calc_noredtored(Array2d *pmat, Array *pvec, const Structure &lat, const Array > &site_type_list); +void calc_redtonored(Array2d *pmat, const Array2d &noredtored, const Array &noredtored_c, int keepconst=0); + +void find_clusters_symmetry(SpaceGroup *psubgroup, const MultiCluster &cluster, const SpaceGroup &space_group); + +Real calc_correlation_atomcluster(const Array &atom_pos, const Array &atom_type, const Array &clusters, const rMatrix3d &cell, const Array > > &corrfunc, int *pmult=NULL); + +#endif diff --git a/src/calcdE b/src/calcdE new file mode 100755 index 0000000..fa0d6c2 --- /dev/null +++ b/src/calcdE @@ -0,0 +1,5 @@ +#!/bin/csh +cellcvrt -c < str.out | tail -n +7 > strc.out +cellcvrt -c < str_unpert.out | tail -n +7 > strc_unpert.out +#paste strc.out strc_unpert.out force.out | awk '{print $1-$5,$2-$6,$3-$7,$9,$10,$11}' +paste strc.out strc_unpert.out force.out | awk '{s+=($1-$5)*$9+($2-$6)*$10+($3-$7)*$11} END {print -s;}' diff --git a/src/calcdisp.c++ b/src/calcdisp.c++ new file mode 100644 index 0000000..fe51210 --- /dev/null +++ b/src/calcdisp.c++ @@ -0,0 +1,47 @@ +#include "getvalue.h" +#include "parse.h" +#include "phonlib.h" +#include "version.h" +#include + +rVector3d cylindrize(const rVector3d &d, const rMatrix3d &cell) { + rVector3d half(0.5,0.5,0.5); + rVector3d wd=cell*(mod1((!cell)*d+half)-half); + return wd; +} + +int main(int argc, char *argv[]) { + char *unrelfilename="str.out"; + char *relfilename="str_relax.out"; + int defval=0; + AskStruct options[]={ + {"","CALCulate DISPlacements " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-u","Unrelaxed structure (default: str.out)",STRINGVAL,&unrelfilename}, + {"-r","Relaxed structure (default: str_relax.out)",STRINGVAL,&relfilename}, + {"-d","Use all defaults",BOOLVAL,&defval} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + Structure ustr,rstr; + Array site_type_list; + Array atom_label; + rMatrix3d axes; + { + ifstream file(unrelfilename); + if (!file) ERRORQUIT("Unable to open unrelaxed file."); + parse_lattice_file(&ustr.cell, &ustr.atom_pos, &ustr.atom_type, &site_type_list, &atom_label, file, &axes); + } + { + ifstream file(relfilename); + if (!file) ERRORQUIT("Unable to open relaxed file."); + parse_lattice_file(&rstr.cell, &rstr.atom_pos, &rstr.atom_type, &site_type_list, &atom_label, file, &axes); + } + reorder_atoms(&rstr, ustr); + for (int i=0; i +#include +#include "getvalue.h" +#include "parse.h" +#include "version.h" +#include "findsym.h" +#include "arraylist.h" +#include "tensorsym.h" +#include "lstsqr.h" + +//extern char *helpstring; +char *helpstring=""; + +void convert(rMatrix3d *mat, const rTensor &ten) { + Array i(2); + for (i(0)=0; i(0)<3; i(0)++) { + for (i(1)=0; i(1)<3; i(1)++) { + (*mat)(i(0),i(1))=ten(i); + } + } +} + +int main(int argc, char *argv[]) { + rMatrix3d Id; + Id.identity(); + char *strfilename="str_relax.out"; + Real max_strain=0.01; + int nb_strain=1; + int dohelp=0; + int sigdig=5; + int fit=0; + int dummy=0; + AskStruct options[]={ + {"","CALCulate ELAStic constants " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-f","Fit elastic constant (instead of the default, generate perturbations)",BOOLVAL,&fit}, + {"-s","Input file defining the relaxed structure (default: str_relax.out)",STRINGVAL,&strfilename}, + {"-ms","Maximum strain magnitude imposed (default: 0.01)",REALVAL,&max_strain}, + {"-ns","Number of strain values (default: 1)",INTVAL,&nb_strain}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-z","Tolerance for finding symmetry operations (default: 1e-3)",REALVAL,&zero_tolerance}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + Structure str; + Array atom_label; + rMatrix3d axes; + { + Array site_type_list; + ifstream file(strfilename); + if (!file) ERRORQUIT("Unable to open relaxed structure file."); + parse_lattice_file(&str.cell, &str.atom_pos, &str.atom_type, &site_type_list, &atom_label, file, &axes); + if (fabs(det(str.cell)) > symflip(1); + symflip(0).resize(2); symflip(0)(0)=0; symflip(0)(1)=1; + Array pert_strain_t; + find_symmetry_breaking_basis(&pert_strain_t, 2,pointgroup, symflip); + + for (int pert=0; pert=-1; m-=2) { + rMatrix3d strain; + convert(&strain,pert_strain_t(pert)); + strain=max_strain*((Real)m)*strain; + Structure sstr; + strain_str(&sstr,str,strain); + // check if negative pert equivalent; + if (m==-1) { + rMatrix3d ipluscell=!((Id-strain)*str.cell); + int op=0; + for ( ; op /dev/null | sed 's+/str_relax.out++g' > pertlist.out"); + LinkedList stress_list; + LinkedList strain_list; + { + ifstream volfile("pertlist.out"); + while (skip_delim(volfile)) { + AutoString volname; + get_string(&volname,volfile); + cerr << volname; + chdir_robust(volname); + + Structure sstr; + ifstream file("str_relax.out"); + parse_structure_file(&(sstr.cell), &(sstr.atom_pos), &(sstr.atom_type), atom_label, file); + if (file_exists("stress.out")) { + rMatrix3d strain=sstr.cell*(!str.cell)-Id; + strain_list << new rMatrix3d(strain); + ifstream stressfile("stress.out"); + rMatrix3d stress; + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + stressfile >> stress(i,j); + } + } + stress_list << new rMatrix3d(stress); + cerr << endl; + } + else { + cerr << " cannot read stress.out file" << endl; + } + + chdir_robust(".."); + } + } + unlink("pertlist.out"); + + Array > symflip(3); + symflip(0).resize(2); symflip(0)(0)=0; symflip(0)(1)=1; + symflip(1).resize(2); symflip(1)(0)=2; symflip(1)(1)=3; + symflip(2).resize(4); symflip(2)(0)=0; symflip(2)(1)=2; symflip(2)(2)=1; symflip(2)(3)=3; + Array elas_basis; + find_symmetric_basis(&elas_basis, 4,pointgroup, symflip); + + int block=9; + if (stress_list.get_size()==0) {ERRORQUIT("No stress data found in p[-+]*/stress.out");} + Array big_stress(stress_list.get_size()*block); + Array2d big_eqnmat(stress_list.get_size()*block,elas_basis.get_size()); + zero_array(&big_stress); + zero_array(&big_eqnmat); + + Array size33(2); + size33(0)=3; size33(1)=3; + Array size3333(4); + size3333(0)=3; size3333(1)=3; size3333(2)=3; size3333(3)=3; + LinkedListIterator istress(stress_list); + LinkedListIterator istrain(strain_list); + for (int p=0; istress; p++,istress++,istrain++) { + MultiDimIterator i(iVector2d(3,3)); + iVector2d &ai=(iVector2d &)i; + for (; i; i++) { + big_stress(p*block+ai(0)+ai(1)*3)=(*istress)(ai(0),ai(1)); + } + for (int b=0; b > i(size3333); + Array &ai=(Array &)i; + for (; i; i++) { + big_eqnmat(p*block+ai(0)+ai(1)*3,b)+=elas_basis(b)(ai)*(*istrain)(ai(2),ai(3)); + } + } + } + Array beta; + calc_ols(&beta,big_eqnmat,big_stress); + + Array stress_hat; + product(&stress_hat,big_eqnmat,beta); + + { + ofstream logfile("calcelas.log"); + logfile << "system of equations:"; + logfile << big_eqnmat << endl; + + logfile << "actual stress predicted stress difference" << endl; + for (int i=0; i > i(size3333); + for (; i; i++) { + elas(i)+=-elas_basis(b)(i)*beta(b); + } + } + + MultiDimIterator > i(size3333); + for (; i; i++) { + cout << elas(i) << endl; + } + } +} diff --git a/src/calces.c++ b/src/calces.c++ new file mode 100644 index 0000000..0341431 --- /dev/null +++ b/src/calces.c++ @@ -0,0 +1,122 @@ +#include "getvalue.h" +#include "parse.h" +#include "phonlib.h" +#include "version.h" +#include + +Real calc_ewald(const Structure &str, const Array &charges, Real eta=-1.0, Real prec=1e-25) { + rMatrix3d rcell=2.*M_PI*!(~str.cell); + LatticePointIterator lat(str.cell,1); + Real rmin=norm((rVector3d)lat); + LatticePointIterator rlat(rcell,1); + Real kmin=norm((rVector3d)rlat); + Real omega=fabs(det(str.cell)); + if (eta<0) { + eta=sqrt(0.5*(kmin/rmin)*sqrt(log(prec)/log((prec*omega)/(4*M_PI)))); + //cerr << eta << endl; + } + Real E=0.; + for (int i=0; imaxr) break; + E+=qq*doublecount*erfc(eta*r)/r; + lat++; + nt++; + } + //cerr << "nReal=" << nt << endl; + rlat.init(rcell,1); + Real maxk2=4.*sqr(eta)*(-log(omega*prec/(4.*M_PI))); + nt=0; + while (1) { + rVector3d k=(rVector3d)rlat; + Real k2=norm2(k); + if (k2>maxk2) break; + E+=qq*cos(k*dr)*doublecount*exp(-k2/(4.*sqr(eta)))*4.*M_PI/omega/k2; + rlat++; + nt++; + } + //cerr << "nReciprocal=" << nt << endl; + E-=doublecount*qq*M_PI/sqr(eta)/omega; + if (i==j) { + E-=qq*eta/sqrt(M_PI); + } + } + } + return E*14.39964886; // Coulomb constant in eV*A/e^2; +} + +int main(int argc, char *argv[]) { + char *unrelfilename="str.out"; + char *chargefilename="charges.in"; + Real eta=-1.0; + Real prec=1e-25; + int defval=0; + AskStruct options[]={ + {"-s","structure file (default: str.out)",STRINGVAL,&unrelfilename}, + {"-c","Charge file (default: charges.in)",STRINGVAL,&chargefilename}, + {"-e","eta",REALVAL,&eta}, + {"-p","prec",REALVAL,&prec}, + {"-d","Use all defaults",BOOLVAL,&defval} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + + Array species_name; + Array species_charge; + { + ifstream chargefile(chargefilename); + if (!chargefile) ERRORQUIT("Unable to open charges.in file."); + LinkedList specieslist; + LinkedList chargelist; + while (! chargefile.eof()) { + AutoString specie; + Real charge; + skip_delim(chargefile," \t=\n"); + get_string(&specie,chargefile," \t="); + skip_delim(chargefile," \t="); + if (chargefile.eof()) break; + chargefile >> charge; + specieslist << new AutoString(specie); + chargelist << new Real(charge); + } + LinkedList_to_Array(&species_name,specieslist); + LinkedList_to_Array(&species_charge,chargelist); + } + //cerr << species_name << endl; + //cerr << species_charge << endl; + + ifstream file(unrelfilename); + if (!file) ERRORQUIT("Unable to open unrelaxed file."); + + while (1) { + if (file.eof()) break; + Structure ustr; + Array site_type_list; + Array atom_label; + rMatrix3d axes; + parse_lattice_file(&ustr.cell, &ustr.atom_pos, &ustr.atom_type, &site_type_list, &atom_label, file, &axes); + skip_to_next_structure(file); + Array charges(ustr.atom_pos.get_size()); + for (int i=0; i +#include "chull.h" +#include "version.h" +#include "getvalue.h" +#include "integer.h" +#include "arraylist.h" + +int main(int argc, char *argv[]) { + char *xfilename=""; + int dummy; + AskStruct options[]={ + {"","CALculate Convex HULL " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-f","input file",STRINGVAL,&xfilename}, + {"-z","Tolerance for detecting co-planar points (default: 1e-3)",REALVAL,&zero_tolerance}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + + { + ostrstream cmd; + cmd << "echo `cat " << xfilename << " | wc -l` " + << "`head -1 " << xfilename << " | wc -w` > tmp.tmp" << '\0'; + system(cmd.str()); + } + int nb_param,nb_eqn; + { + ifstream size("tmp.tmp"); + size >> nb_eqn >> nb_param; + } + unlink("tmp.tmp"); + + Array > x(nb_eqn); + ifstream xfile(xfilename); + if (!xfile) {ERRORQUIT("Unable to open input file");} + for (int eqn=0; eqn> x(eqn)(param); + } + } + + Array ground(nb_param); + zero_array(&ground); + ground(nb_param-1)=-1.; + LinkedList hull; + calc_convex_hull(&hull, x, ground); + { + ofstream gs_connect("connect.out"); + LinkedListIterator i(hull); + for (; i; i++) { + for (int j=0; jpts.get_size(); j++) { + gs_connect << i->pts(j) << " "; + } + gs_connect << endl; + } + } +} diff --git a/src/calcmf.c++ b/src/calcmf.c++ new file mode 100644 index 0000000..6ce3929 --- /dev/null +++ b/src/calcmf.c++ @@ -0,0 +1,159 @@ +#include "calcmf.h" + +CalcMeanField::CalcMeanField(const Structure &_lat, const Array > &_site_type_list, const Structure &_str, + const SpaceGroup &space_group, const LinkedList &cluster_list, + const Array > > &_corrfunc): ref_prob(), clusters(), eci(), corrfunc(_corrfunc), which_is_empty(-1), empty_mult(1.), do_LTE(0) { + LinkedListIterator ic(cluster_list); + for ( int i=0; ic; ic++, i++ ) { + if (ic->clus.get_size()==0) {which_is_empty=i;} + } + empty_mult=(Real)_str.atom_pos.get_size()/(Real)_lat.atom_pos.get_size(); + ref_prob.resize(_str.atom_pos.get_size()); + clusters.resize(_str.atom_pos.get_size()); + rMatrix3d istrcell=!_str.cell; + rMatrix3d ilatcell=!_lat.cell; + for (int i=0; i o_cluster; + Array o_which; + find_clusters_overlapping_site(&o_cluster, &o_which, _str.atom_pos(i), space_group, cluster_list); + clusters(i).resize(o_cluster.get_size()); + for (int c=0; c &siteprob, int site_type, int func) { + Real sigma=0.; + for (int t=0; t &_mu) { + Array ecimu(eci); + for (int i=0; i<_mu.get_size(); i++) {ecimu(1+i)-=_mu(i);} + + Array > prob; + prob=ref_prob; + + Real F_old=MAXFLOAT; + Real F=0.; + Real F_tol=1e-6; + int step=0; + int maxstep=100; + + while (fabs(F-F_old)>F_tol && step > dE(prob.get_size()); + for (int i=0; i dprobi(prob(i).get_size()); + for (int t=0; t *pconc, GCThermoData *ptd, Real T, const Array &mu, Real dmu) { + Array nmu(mu.get_size()); + pconc->resize(mu.get_size()); + for (int i=0; iset_get_phi(T,nmu); + nmu(i)=mu(i)-dmu; + phi_m=ptd->set_get_phi(T,nmu); + (*pconc)(i)=-(phi_p-phi_m)/(2.*dmu); + } +} + +Real calc_E_from_phi(GCThermoData *ptd, Real T, const Array &mu, Real dT) { + Real phi,phi_p,phi_m; + phi=ptd->set_get_phi(T,mu); + phi_p=ptd->set_get_phi(T+dT,mu); + phi_m=ptd->set_get_phi(T-dT,mu); + return (phi-T*(phi_p-phi_m)/(2.*dT)); +} + +Real calc_E_from_phi(CalcMeanField *ptd, const PolyInterpolatorBig > &teci, Real T, const Array &mu, Real dT) { + Real phi,phi_p,phi_m; + Array eci; + teci.interpol(&eci,T); + ptd->set_eci(eci); + phi=ptd->set_get_phi(T,mu); + teci.interpol(&eci,T+dT); + ptd->set_eci(eci); + phi_p=ptd->set_get_phi(T+dT,mu); + teci.interpol(&eci,T-dT); + ptd->set_eci(eci); + phi_m=ptd->set_get_phi(T-dT,mu); + return (phi-T*(phi_p-phi_m)/(2.*dT)); +} diff --git a/src/calcmf.hh b/src/calcmf.hh new file mode 100644 index 0000000..cdca9ff --- /dev/null +++ b/src/calcmf.hh @@ -0,0 +1,50 @@ +#include "calccorr.h" +#include "linalg.h" + +class GCThermoData { + public: + virtual void set_T_mu(Real _T, const Array &_mu) {} + virtual Real get_phi(void) {return 0.;} + virtual Real set_get_phi(Real _T, const Array &_mu) { + set_T_mu(_T,_mu); + return get_phi(); + } + virtual Real get_lro(void) {return 1.;} +}; + + +class iMultiCluster { + public: + int which_eci; + Array site; + Array site_type; + Array func; + iMultiCluster(void): site(), site_type(), func() {} +}; + +class CalcMeanField: public GCThermoData { + Array > ref_prob; + Array > clusters; + const Array > > &corrfunc; + Array eci; + Real phi; + Real lro; + int which_is_empty; + Real empty_mult; + int do_LTE; + Real calc_point_corr(const Array &siteprob, int site_type, int func); + public: + CalcMeanField(const Structure &_lattice, const Array > &_site_type_list, const Structure &_str, + const SpaceGroup &space_group, const LinkedList &cluster_list, + const Array > > &_corrfunc); + void set_eci(const Array &_eci) {eci=_eci;} + void set_ref_prob(const Array > &_ref_prob) {ref_prob=_ref_prob;} + void set_LTE(int _do_LTE) {do_LTE=_do_LTE;} + void set_T_mu(Real _T, const Array &_mu); + Real get_phi(void) {return phi;} + Real get_lro(void) {return lro;} +}; + +void calc_conc_from_phi(Array *pconc, GCThermoData *ptd, Real T, const Array &mu, Real dmu); +Real calc_E_from_phi(GCThermoData *ptd, Real T, const Array &mu, Real dT); +Real calc_E_from_phi(CalcMeanField *ptd, const PolyInterpolatorBig > &teci, Real T, const Array &mu, Real dT); diff --git a/src/cellcvrt.c++ b/src/cellcvrt.c++ new file mode 100644 index 0000000..0662887 --- /dev/null +++ b/src/cellcvrt.c++ @@ -0,0 +1,507 @@ +#include +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include "stringo.h" +#include "findsym.h" + +void find_all_atom_in_subcell(Array *psub_atom_pos, + Array *psub_atom_type, + const Array &atom_pos, + const Array &atom_type, + const rMatrix3d &cell, const rMatrix3d &subcell) { + int nb_atom_subcell=iround((Real)atom_pos.get_size()*fabs(det(subcell)/det(cell))); + rMatrix3d isubcell=(!subcell); + psub_atom_pos->resize(nb_atom_subcell); + psub_atom_type->resize(nb_atom_subcell); + int redun=atom_pos.get_size()/nb_atom_subcell; + Array done(atom_pos.get_size()); + zero_array(&done); + int j=0; + for (int i=0; i *psuper_atom_pos, + Array *psuper_atom_type, + const Array &atom_pos, + const Array &atom_type, + const rMatrix3d &cell, const rMatrix3d &subcell) { + int nb_atom_subcell=iround(atom_pos.get_size()*fabs(det(subcell)/det(cell))); + rMatrix3d isubcell=(!subcell); + psuper_atom_pos->resize(nb_atom_subcell); + psuper_atom_type->resize(nb_atom_subcell); + LatticePointInCellIterator l(cell,subcell); + int index=0; + for ( ; l; l++) { + for (int s=0; s> v; + pcell->set_column(i,axes*v); + } +} + +void add_redundant_atom_in_cell(Array *patom_pos, + Array *patom_type, + const Array &atom_pos, + const Array &atom_type, + const rMatrix3d &cell) { + rMatrix3d icell=!cell; + Array fatom_pos(atom_pos.get_size()); + for (int s=0; s atom_pos_list; + LinkedList atom_type_list; + MultiDimIterator l(iVector3d(-1,-1,-1),iVector3d(1,1,1)); + for (; l; l++) { + for (int s=0; s1.); + return v; +} + +int main(int argc, char *argv[]) { + char *axesfilename=""; + char *cellfilename=""; + int simplesupercell=0; + int docart=0; + int dofrac=0; + int doconv=0; + int doabc=0; + int donoabc=0; + int readocc=0; + int sigdig=6; + int fixcell=0; + int find_t=0; + char *orig_setting=""; + char *final_setting=""; + int dorecip=0; + int nbskip=1; + int nbprint=MAXINT; + int printnb=0; + int printvol=0; + int dosym=0; + int dosymname=0; + int printbravaistype=0; + char *shift_str=""; + rVector3d shift(0.,0.,0.); + int wrapinside=0; + int wrapinsideunshift=0; + char *spcgrpfile=""; + char *strtokeep=""; + int genspcgrp=0; + int remred=0; + int remredavg=0; + int addred=0; + Real scale=1.; + int seed=0; + Real jitteratom=0.; + Real jittercell=0.; + AskStruct options[]={ + {"","cellcvrt " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"","Performs various conversions/changes on structure (or lattices).",TITLEVAL,NULL}, + {"","Reads from stdin, writes to stdout.",TITLEVAL,NULL}, + {"-c","Use cartesian coordinates",BOOLVAL,&docart}, + {"-f","Use fractional coordinates",BOOLVAL,&dofrac}, + {"-cc","Find conventional cell and use it as coordinate system",BOOLVAL,&doconv}, + {"-abc","Use a b c alpha beta gamma format to specify axes",BOOLVAL,&doabc}, + {"-noabc","Use cartesian format to specify the axes (the default)",BOOLVAL,&donoabc}, + {"-ro","Read fractional Occupation",BOOLVAL,&readocc}, + {"-u","User-specified coordinate system input file (optional)",STRINGVAL,&axesfilename}, + {"-uss","User-specified supercell",STRINGVAL,&cellfilename}, + {"-ss","Simple supercell (multiple of axes in all directions)",INTVAL,&simplesupercell}, + {"-fc","Fix cell (to make it as symmetric as possible)",BOOLVAL,&fixcell}, + {"-s","Look for smaller unit cell",BOOLVAL,&find_t}, + {"-sh","Shift all atoms (default 0,0,0).",STRINGVAL,&shift_str}, + {"-ja","Jitter all atoms positions by a random amount less than specified",REALVAL,&jitteratom}, + {"-jc","Jitter all cell parameters by a random amount less than the fraction specified",REALVAL,&jittercell}, + {"-sd","Seed for random number generation (default: use clock)",INTVAL,&seed}, + {"-sg","Space group file",STRINGVAL,&spcgrpfile}, + {"-gsg","Generate Space Group",BOOLVAL,&genspcgrp}, + {"-wi","Wrap all atoms inside unit cell",BOOLVAL,&wrapinside}, + {"-wiu","Wrap all atoms inside unit cell and undo shift",BOOLVAL,&wrapinsideunshift}, + {"-rr","Remove redundant atoms",BOOLVAL,&remred}, + {"-rra","Remove redundant atoms and average",BOOLVAL,&remredavg}, + {"-ar","Add redundant atoms",BOOLVAL,&addred}, + {"-osf","Original setting file (optional)",STRINGVAL,&orig_setting}, + {"-fsf","Final setting file (optional)",STRINGVAL,&final_setting}, + {"-r","Print reciprocal unit cell",BOOLVAL,&dorecip}, + {"-fs","Index of first structure to process (default: 1)",INTVAL,&nbskip}, + {"-ns","Number of structures to process",INTVAL,&nbprint}, + {"-slf","Structure list file",STRINGVAL,&strtokeep}, + {"-pn","Print the number of atoms in the structure only",BOOLVAL,&printnb}, + {"-pv","Print volume of cell only",BOOLVAL,&printvol}, + {"-sym","Print spacegroup",BOOLVAL,&dosym}, + {"-ppg","Print point group name",BOOLVAL,&dosymname}, + {"-pbv","Print Bravais Lattice name",BOOLVAL,&printbravaistype}, + {"-sc","Scale factor (default: 1)",REALVAL,&scale}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-z","Tolerance for checking overlap (Default 1e-3)",REALVAL,&zero_tolerance}, + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (docart+dofrac+doconv+(strlen(axesfilename)>0)>1) { + ERRORQUIT("Must specify no more than one of -c, -f, -cc or -u=filename."); + } + rMatrix3d transfo; + transfo.identity(); + if (strlen(orig_setting)>0 || strlen(final_setting)>0) { + rMatrix3d orig; + orig.identity(); + if (strlen(orig_setting)>0) { + ifstream origfile(orig_setting); + if (!origfile) {ERRORQUIT("Unable to open original setting file");} + read_axes_cell(&orig,origfile); + } + rMatrix3d final; + final.identity(); + if (strlen(final_setting)>0) { + ifstream finalfile(final_setting); + if (!finalfile) {ERRORQUIT("Unable to open final setting file");} + read_axes_cell(&final,finalfile); + } + transfo=final*(!orig); + } + + // read in structure list if any; + LinkedList strlist; + if (strlen(strtokeep)>0) { + nbskip=1; + ifstream file(strtokeep); + if (!file) ERRORQUIT("Unable to open structure list file."); + while (1) { + int s=-1; + file >> s; + if (s==-1) break; + strlist << new int(s); + } + } + LinkedListIterator istr(strlist); + + // read in lattice (see parse.h); + Structure lat; + Array site_type_list; + Array atom_label; + Array > occ; + rMatrix3d axes; + for (int s=1; s0) { + if (!istr) break; + if ((s+1)!=*istr) continue; + istr++; + } + + if (printend) { + cout << "end" << endl << endl; + } + else { + printend=1; + } + + rndseed(seed); + if (jitteratom>0.) { + for (int at=0; at0.) { + for (int i=0; i<3; i++) { + rVector3d v=rnd_ball()*jittercell; + for (int j=0; j<3; j++) { + transfo(j,i)+=v(j); + } + } + } + lat.cell=transfo*lat.cell; + axes=transfo*axes; + for (int i=0; i0 || simplesupercell>0) { + Structure supercell; + if (simplesupercell>0) { + supercell.cell.identity(); + } + else { + ifstream cellfile(cellfilename); + if (!cellfile) ERRORQUIT("Unable to open cell file."); + read_cell(&supercell.cell,cellfile); + } + supercell.cell=(axes*supercell.cell)*(simplesupercell>1 ? (Real)simplesupercell : 1.); + if (!is_int((!lat.cell)*supercell.cell)) { + ERRORQUIT("Supercell is incomensurate with unit cell"); + } + find_all_atom_in_supercell(&supercell.atom_pos,&supercell.atom_type,lat.atom_pos,lat.atom_type,lat.cell,supercell.cell); + lat=supercell; + } + for (int at=0; at0) { + ifstream file(axesfilename); + if (!file) { + ERRORQUIT("Unable to open user-defined axes input file."); + } + read_cell(&axes,file); + } + if (strlen(shift_str)>0) { + istrstream s(shift_str); + for (int i=0; i<3; i++) { + skip_delim(s,",;:"); + s >> shift(i); + } + shift=axes*shift; + for (int i=0; i0) { + ifstream file(spcgrpfile); + if (!file) ERRORQUIT("Unable to open space group file."); + int nop=0; + file >> nop; + SpaceGroup spacegroup; + spacegroup.point_op.resize(nop); + spacegroup.trans.resize(nop); + spacegroup.cell=lat.cell; + for (int op=0; op> m; + spacegroup.point_op(op)=axes*(m*(!axes)); + rVector3d v; + file >> v; + spacegroup.trans(op)=axes*v; + } + if (genspcgrp) { + generate_space_group(&spacegroup, spacegroup); + + ofstream symfile("fullsym.out"); + symfile.setf(ios::fixed); + symfile.precision(sigdig); + symfile << spacegroup.point_op.get_size() << endl; + for (int i=0; i newpos; + LinkedList newtype; + for (int i=0; i avgpos(lat.atom_pos.get_size()); + Array weight(lat.atom_pos.get_size()); + zero_array(&weight); + for (int i=0; i newpos; + LinkedList newtype; + for (int i=0; i0) { + newpos << new rVector3d(avgpos(i)/weight(i)); + newtype << new int(lat.atom_type(i)); + } + } + LinkedList_to_Array(&lat.atom_pos,newpos); + LinkedList_to_Array(&lat.atom_type,newtype); + } + if (wrapinside || wrapinsideunshift) { + wrap_inside_cell(&lat.atom_pos,lat.atom_pos,lat.cell); + } + if (wrapinsideunshift) { + for (int i=0; i! tmpcheckrelax.out + foreachfile str_relax.out echo \`pwd\` \`checkrelax -1\` >>! tmpcheckrelax.out + cat tmpcheckrelax.out | sed 's+.*/++g' | awk '{print $2,$1}' | sort -n + rm -f tmpcheckrelax.out +endif + diff --git a/src/chull.c++ b/src/chull.c++ new file mode 100644 index 0000000..25e75f8 --- /dev/null +++ b/src/chull.c++ @@ -0,0 +1,561 @@ +#include "chull.h" +#include "lstsqr.h" +#include "getvalue.h" + +class EdgeFlag { +public: + int done; + Array edge; + EdgeFlag(void): done(0),edge(0) {} + //EdgeFlag(const EdgeFlag& e): done(e.done),edge(e.edge) {} + EdgeFlag(int d, const Array& e): done(d),edge(e) {} +}; + +void recurse_convex_hull(LinkedList *hull, LinkedList *edges, const Array > &x, Array edge, Array fwrd, Array up, const Array &ground) { + int dim=x(0).get_size(); + + // cerr << "RECURSE" << endl; + // cerr << up << endl; + // cerr << fwrd << endl; + // cerr << edge << endl; + // LinkedListIterator ii(*edges); + // for (; ii; ii++) { + // cerr << ii->done << endl; + // cerr << ii->edge << endl; + // } + + // look for the point that requires the least tilting to be touched by the plane perpendicular to "up"; + Array midedge(x(edge(0)).get_size()); + zero_array(&midedge); + for (int j=0; j dx; + diff(&dx,x(i),midedge); + Real f=inner_product(fwrd,dx); + Real u=inner_product(up,dx); + Real theta=atan2(f,-u); + Real distp=sqrt(u*u+f*f); + Real dist=sqrt(inner_product(dx,dx)); + // cerr << i << " " << theta << " " << dist << endl; + if (distp > zero_tolerance && (theta>best_theta+zero_tolerance || (fabs(theta-best_theta)best_dist))) { + best_theta=theta; + best_dist=dist; + best_i=i; + } + } + // cerr << best_i << endl; + if (best_i==-1) return; + // the initial edge and this new point make up a new face; + PolytopeFace *pface=new PolytopeFace(); + pface->pts.resize(dim); + for (int j=0; jpts(j)=edge(j); + } + pface->pts(dim-1)=best_i; + // cerr << pface->pts << endl; + + // which way is up on this new face; + Array2d eqs(dim,dim); + Array rhs(dim); + one_array(&rhs); + for (int j=0; jpts(j)) << endl; + for (int k=0; kpts(j))(k); + } + } + solve_linsys(&(pface->up),eqs,rhs); + normalize(&(pface->up)); + + //cerr << pface->up << endl << ground << endl << inner_product(pface->up,ground) << endl; + + if (max_norm(ground)>zero_tolerance && inner_product(pface->up,ground) > newedge(dim); + for (int d=0; dpts(k); + l++; + } + } + sort_array(&(newedge(d))); + // check for overlapping plane; + LinkedListIterator i(*edges); + for ( ; i; i++) { + if (i->edge == newedge(d)) break; + } + if (i) { + if (i->done==2) {return;} + } + } + + // now we keep track of the new edges created so not to do them again later; + for (int d=0; d i(*edges); + for ( ; i; i++) { + if (i->edge == newedge(d)) break; + } + if (i) { + i->done++; + } + else { + (*edges) << new EdgeFlag(1,newedge(d)); + } + } + + // now recurse for each new edges; + for (int d=0; dpts(d); + LinkedListIterator i(*edges); + for ( ; i; i++) { + if (i->edge == newedge(d)) break; + } + if (i->done<=1) { + // creates the new forward vector for the current new edge; + Array2d proj_onto(dim,dim-2); + for (int j=0; j dx; + diff(&dx,x(newedge(d)(0)),x(newpt)); + Array newfwrd; + predict_ols(&newfwrd,proj_onto,dx); + // cerr << proj_onto << endl; + diff(&newfwrd,dx,newfwrd); + product(&newfwrd,newfwrd,1./sqrt(inner_product(newfwrd,newfwrd))); + // cerr << "newfwrd " << newfwrd << endl; + // now lookup for the face that touches this new edge; + recurse_convex_hull(hull,edges,x, newedge(d), newfwrd, pface->up, ground); + } + } +} + +void de_mean(Array > *px, const Array > &org_x) { + int dim=org_x(0).get_size(); + Array meanx(dim); + zero_array(&meanx); + for (int i=0; iresize(org_x.get_size()); + for (int i=0; i *hull, const Array > &org_x, const Array &ground) { + int dim=org_x(0).get_size(); + // calculate mean of x and substract it out, so that origin is in convex hull; + if (org_x.get_size()==0) return; + Array > x; + de_mean(&x,org_x); + + // find arbitrary starting point, the i one with largest x(i) * ground; + Array tmpground(ground); + if (max_norm(ground) < zero_tolerance) {tmpground(0)=1.;} + int ixmax; + Real xmax=-MAXFLOAT; + for (int i=0; ixmax) { + ixmax=i; + xmax=p; + } + } + + // find starting edge by tilting starting plane until it touches dim-1 points; + Array fwrd; + Array edge(dim-1); + edge(0)=ixmax; + Array2d proj_onto; + for (int d=1; d dx,pdx; + diff(&dx,x(i),x(ixmax)); + if (d>1) { + predict_ols(&pdx,proj_onto,dx); + diff(&dx,dx,pdx); + } + Real ldx=norm(dx); + Real dx0=inner_product(dx,tmpground)/sqrt(inner_product(tmpground,tmpground)); + Array tmpv; + product(&tmpv,tmpground,dx0); + diff(&tmpv,dx,tmpv); + Real dx1=norm(tmpv); + if (ldx>zero_tolerance) { + Real theta=fabs(atan2(dx1,dx0)); + if (theta up(tmpground); + if (dim>2) { + Array pup; + predict_ols(&pup,proj_onto,up); + diff(&up,up,pup); + normalize(&up); + normalize(&fwrd); + } + LinkedList edges; + recurse_convex_hull(hull, &edges, x, edge, fwrd, up, ground); + LinkedListIterator i(*hull); + for (; i; i++) { + i->c=inner_product(i->up,org_x(i->pts(0))); + } + /* + if (inner_product(ground,ground)>sqr(zero_tolerance)) { + LinkedListIterator i(*hull); + while (i) { + if (inner_product(ground,i->up)>zero_tolerance) { + i++; + } + else { + delete hull->detach(i); + } + } + } + */ +} + +void calc_convex_hull_degenerate(LinkedList *hull, const Array > &org_x, const Array &ground) { + if (org_x.get_size()==0) return; + Array > demean_x; + de_mean(&demean_x,org_x); + int dmax=demean_x(0).get_size(); + Array > basis; + int d=0; + build_basis(&basis,&d,ground); + for (int i=0; i xe(demean_x(i)); + xe(dmax-1)=0.; + build_basis(&basis,&d,xe); + } + Array2d bb(d,d),ibb; + for (int i=0; i b(d,dmax); + for (int i=0; i proj(d,dmax); + product(&proj,ibb,b); + Array > x(demean_x.get_size()); + for (int i=0; i tground; + product(&tground,proj,ground); + calc_convex_hull(hull, x, tground); + update_normals(hull, org_x); +} + +void update_normals(LinkedList *hull, const Array > &org_x) { + int dim=org_x(0).get_size(); + Array > x; + de_mean(&x,org_x); + LinkedListIterator i(*hull); + for (; i; i++) { + Array2d eqs(i->pts.get_size(),dim); + Array rhs(i->pts.get_size()); + one_array(&rhs); + for (int j=0; jpts.get_size(); j++) { + for (int k=0; kpts(j))(k); + } + } +#ifdef DEGE_GS + Array2d ieqs; + invert_matrix_wide(&ieqs,eqs); + product(&(i->up),ieqs,rhs); +#else + solve_linsys(&(i->up),eqs,rhs); +#endif + normalize(&(i->up)); + i->c=inner_product(i->up,org_x(i->pts(0))); + } +} + +int flag_outside_hull(Array *poutside, LinkedList *hull, const Array > &x, int flag_plane_too) { + int oneoutside=0; + poutside->resize(x.get_size()); + zero_array(poutside); + LinkedListIterator i(*hull); + for (; i; i++) { + int badplane=0; + for (int j=0; jup,x(j))>i->c+zero_tolerance) { + (*poutside)(j)=1; + oneoutside=1; + badplane=1; + } + } + if (flag_plane_too && badplane) { + for (int j=0; jpts.get_size(); j++) { + (*poutside)(i->pts(j))=1; + } + } + } + return oneoutside; +} + +void clip_hull(LinkedList *hull, const Array > &x, const LinkedList &ineq) { + LinkedListIterator i(*hull); + while (i) { + int donotcut=0; + for (int k=0; kpts.get_size(); k++) { + int cutit=0; + LinkedListIterator j(ineq); + for (; j; j++) { + if (inner_product(x(i->pts(k)),j->v)>j->c+zero_tolerance) { + cutit=1; + break; + } + } + if (!cutit) { + donotcut=1; + break; + } + } + if (donotcut) { + i++; + } + else { + delete hull->detach(i); + } + } +} + +void calc_formation(Array *pfe, Array *ppure, const Array > &x, const Array &e) { + if (ppure->get_size()==0) { + LinkedList > pts; + LinkedList es; + for (int i=0; i > insertp(pts); + LinkedListIterator inserte(es); + Real l2=inner_product(x(i),x(i)); + while (insertp) { + Real lcurp=inner_product(*insertp,*insertp); + if (l2>lcurp) break; + if (fabs(l2-lcurp)(x(i)),insertp); + es.add(new Real(e(i)),inserte); + } + + Array > basis; + int nb_in_basis=0; + { + LinkedListIterator > ip(pts); + LinkedListIterator ie(es); + while (ip) { + if (!build_basis(&basis,&nb_in_basis,*ip)) { + delete pts.detach(ip); + delete es.detach(ie); + } + else { + ip++; + ie++; + } + } + } + if (nb_in_basis==0) { + *pfe=e; + return; + } + int dim=basis(0).get_size(); + Array2d X(nb_in_basis,dim); + LinkedListIterator > ip(pts); + for (int j=0; j r; + LinkedList_to_Array(&r,es); + // cerr << r << endl; + Array2d inv,M; + outer_product(&inv,X,X); + invert_matrix(&inv,inv); + inner_product(&M,X,inv); + product(ppure,M,r); + } + pfe->resize(e.get_size()); + for (int i=0; i &x, const LinkedList &ineq_list) { + LinkedListIterator i(ineq_list); + for (; i; i++) { + Real a=0.; + for (int j=0; jv(j)); + } + if (a > i->c+zero_tolerance) break; + } + return (!i); +} + +void read_inequalities(LinkedList *ineq_list, const Array &label, istream &s) { + skip_delim(s," \t\n"); + while (!s.eof()) { + LinearInequality ineq(label.get_size()); + char dir; + zero_array(&(ineq.v)); + while (1) { + skip_delim(s," \t+"); + Real a=MAXFLOAT; + s >> a; + if (a==MAXFLOAT || !s) { + ERRORQUIT("Error parsing inequality"); + } + skip_delim(s,"* \t\n"); + AutoString w; + get_string(&w,s,"\t\n +-<>"); + if (!is_in_array(label,w)) { + cerr << "unknown atom label " << w << endl; + ERRORQUIT("Aborting."); + } + ineq.v(index_in_array(label,w))+=a; + skip_delim(s," \t\n"); + dir=s.get(); + if (strchr("<>",dir)) {break;} + if (s.eof()) {ERRORQUIT("Unexpected end of file in read_inequalities");} + s.putback(dir); + } + skip_delim(s,"="); + s >> ineq.c; + if (dir=='>') { + product(&(ineq.v),ineq.v,-1.); + ineq.c=-ineq.c; + } + (*ineq_list) << new LinearInequality(ineq); + skip_delim(s,", \t\n"); + } +} + +void read_equalities(LinkedList *ineq_list, const Array &label, istream &s) { + skip_delim(s," \t\n"); + while (!s.eof()) { + LinearInequality ineq(label.get_size()); + char dir; + zero_array(&(ineq.v)); + while (1) { + skip_delim(s," \t+"); + Real a=MAXFLOAT; + s >> a; + if (a==MAXFLOAT || !s) { + ERRORQUIT("Error parsing equality"); + } + skip_delim(s,"* \t\n"); + AutoString w; + get_string(&w,s,"\t\n +-="); + if (!is_in_array(label,w)) { + cerr << "unknown atom label " << w << endl; + ERRORQUIT("Aborting."); + } + ineq.v(index_in_array(label,w))+=a; + skip_delim(s," \t\n"); + dir=s.get(); + if (dir=='=') {break;} + if (s.eof()) {ERRORQUIT("Unexpected end of file in read_equalities");} + s.putback(dir); + } + skip_delim(s,"="); + s >> ineq.c; + (*ineq_list) << new LinearInequality(ineq); + skip_delim(s,", \t\n"); + } +} + +void ineq_list_to_Array(Array2d *a, Array *c, const LinkedList &l) { + LinkedListIterator it(l); + iVector2d size(l.get_size(),it->v.get_size()); + if (a) { + a->resize(size); + for (int i=0; iv(j)); + } + it++; + } + } + it.init(l); + if (c) { + c->resize(size(0)); + for (int i=0; ic; + } + } +} + +void calc_convex_hull_p1(LinkedList *hull, const Array > &x, const Array &e) { + Array > allx; + paste_col_vector(&allx,x,e); + Array ground(allx(0).get_size()); + zero_array(&ground); + ground(ground.get_size()-1)=-1.; + calc_convex_hull(hull,allx,ground); +} + +void update_normals_p1(LinkedList *hull, const Array > &x, const Array &e) { + Array > allx; + paste_col_vector(&allx,x,e); + update_normals(hull,allx); +} + +int flag_outside_hull_p1(Array *poutside, LinkedList *hull, const Array > &x, const Array &e, int flag_plane_too) { + Array > allx; + paste_col_vector(&allx,x,e); + return flag_outside_hull(poutside,hull,allx,flag_plane_too); +} diff --git a/src/chull.hh b/src/chull.hh new file mode 100644 index 0000000..c9ee400 --- /dev/null +++ b/src/chull.hh @@ -0,0 +1,91 @@ +#ifndef __CHULL_H__ +#define __CHULL_H__ + +#include +#include "arraylist.h" +#include "stringo.h" + +class PolytopeFace { +public: + Array pts; + Array up; + Real c; +}; + +class LinearInequality { + public: + Array v; + Real c; + LinearInequality(int size=0): v(size) {c=0;} + LinearInequality(const LinearInequality &a): v(a.v) {c=a.c;} + LinearInequality(const Array &_v, Real _c): v(_v) {c=_c;} +}; + +void de_mean(Array > *px, const Array > &org_x); + +void calc_convex_hull(LinkedList *hull, const Array > &org_x, const Array &ground); + +void calc_convex_hull_degenerate(LinkedList *hull, const Array > &org_x, const Array &ground); + +void update_normals(LinkedList *hull, const Array > &org_x); + +int flag_outside_hull(Array *poutside, LinkedList *hull, const Array > &x, int flag_plane_too); + +int is_point_in_hull(const Array &x, const LinkedList &ineq_list); + +void clip_hull(LinkedList *hull, const Array > &x, const LinkedList &ineq); + +void calc_formation(Array *pfe, Array *ppure, const Array > &x, const Array &e); + +void read_inequalities(LinkedList *ineq_list, const Array &label, istream &s); +void read_equalities(LinkedList *ineq_list, const Array &label, istream &s); +void ineq_list_to_Array(Array2d *a, Array *c, const LinkedList &l); + +// dim n+1 versions; + +void calc_convex_hull_p1(LinkedList *hull, const Array > &x, const Array &e); + +void update_normals_p1(LinkedList *hull, const Array > &x, const Array &e); + +int flag_outside_hull_p1(Array *poutside, LinkedList *hull, const Array > &x, const Array &e, int flag_plane_too); + +template +void paste_row_vector(Array > *pout, const Array > &x, const Array > &y) { + int total_dim=x(0).get_size()+y(0).get_size(); + pout->resize(x.get_size(),total_dim); + for (int i=0; igetsize(); i++) { + int j=0; + for (int k=0; k +void paste_col_vector(Array > *pout, const Array > &x, const Array &y) { + if (pout->get_size()>0) { + if ((*pout)(0).get_size()==x(0).get_size()) { + int j=x(0).get_size()-1; + for (int i=0; iget_size(); i++) { + (*pout)(i)(j)=y(i); + } + return; + } + } + pout->resize(x.get_size()); + for (int i=0; iget_size(); i++) { + (*pout)(i).resize(x(0).get_size()+1); + int j=0; + for (j=0; j &atom_pos, + int ntuple, + const SpaceGroup &_equivalent_by_symmetry): + cluster_list(), current_cluster(), + current_index(0), previous_length(0.), multiplet(cell,atom_pos,ntuple), + equivalent_by_symmetry(_equivalent_by_symmetry) { + if (ntuple>1) { + cluster_list << new Cluster(multiplet); + } + else { + for (int at=0; at save=current_cluster; + current_cluster++; + current_index++; + if (!current_cluster && save->get_size()>1) { + do {multiplet++;} while (!add_unique(&cluster_list,Cluster(multiplet),equivalent_by_symmetry)); + current_cluster=save; + current_cluster++; + } +} + +MultiClusterBank::MultiClusterBank(const Structure &_lat, + int ntuple, + const SpaceGroup &_equivalent_by_symmetry): + lat(_lat), cluster_bank(_lat.cell,_lat.atom_pos,ntuple,_equivalent_by_symmetry), + cluster_list(), current_cluster(), + current_index(0), previous_length(0.), + equivalent_by_symmetry(_equivalent_by_symmetry) { + if (ntuple>1) { + make_new_clusters(); + } + else { + for (int at=0; at minconfig(new_clus.clus.get_size()); + zero_array(&minconfig); + rMatrix3d inv_cell=!(lat.cell); + for (int at=0; at new_clus_list; + MultiDimIterator > config(minconfig,new_clus.site_type); + for (; config; config++) { + new_clus.func=config; + add_unique(&new_clus_list,new_clus,equivalent_by_symmetry); + } + transfer_list(&cluster_list,&new_clus_list); +} + +void MultiClusterBank::operator++(int) { + previous_length=get_length_quick(current_cluster->clus); + current_cluster++; + current_index++; + if (!current_cluster && previous_length!=0) { + cluster_bank++; + make_new_clusters(); + } +} + + diff --git a/src/clus_str.hh b/src/clus_str.hh new file mode 100644 index 0000000..ac566b1 --- /dev/null +++ b/src/clus_str.hh @@ -0,0 +1,584 @@ +#ifndef _CLUS_STR_H_ +#define _CLUS_STR_H_ + +#include "calccorr.h" +#include "stringo.h" +#include "lattype.h" +//#include +#include "mpiinterf.h" + +extern Real complexity_exp; + +typedef Array Cluster; +typedef Array ArrayCluster; +typedef Array Arrayint; + +inline Real get_length_quick(const Array &c) { + if (c.get_size()==0) return 0; + return norm(c(c.get_size()-1)-c(0)); +} + +class ClusterBank { + LinkedList cluster_list; + LinkedListIterator current_cluster; + int current_index; + Real previous_length; + AtomMultipletIterator multiplet; + const SpaceGroup &equivalent_by_symmetry; + public: + ClusterBank(const rMatrix3d &cell, + const Array &atom_pos, + int ntuple, + const SpaceGroup &_equivalent_by_symmetry); + ClusterBank(const ClusterBank &clusterbank,int ntuple); + void reset(void); + void operator++(int); + int get_current_index(void) { + return current_index; + } + Real get_previous_length(void) { + return previous_length; + } + Real get_current_length(void) { + return get_length_quick(*current_cluster); + } + operator Cluster& (void) { + return *current_cluster; + } + LinkedList& get_cluster_list(void) { + return cluster_list; + } +}; + +class MultiClusterBank { + Structure lat; + ClusterBank cluster_bank; + LinkedList cluster_list; + LinkedListIterator current_cluster; + int current_index; + Real previous_length; + const SpaceGroup &equivalent_by_symmetry; + + void make_new_clusters(void); + public: + MultiClusterBank(const Structure &_lat, + int ntuple, + const SpaceGroup &_equivalent_by_symmetry); + MultiClusterBank(const MultiClusterBank &clusterbank,int ntuple); + void reset(void); + void operator++(int); + int get_current_index(void) { + return current_index; + } + Real get_previous_length(void) { + return previous_length; + } + Real get_current_length(void) { + return get_length_quick(current_cluster->clus); + } + operator MultiCluster& (void) { + return *current_cluster; + } + MultiCluster* operator -> () { + return current_cluster; + } + LinkedList& get_cluster_list(void) { + return cluster_list; + } +}; + + +// The best algorithm is invoked by not specifying any -D... in the makefile; +// If you want to use MPI, use -DSLOWENUMALGO ; +// For debugging, you can use the slowest algorithm with -DSLOWENUMALGO -DOLD_STR_ALGO ; + +#ifndef SLOWENUMALGO +// This is the best algorithm; +template +class StructureBank { + int current_index; + const SpaceGroup &equivalent_by_symmetry; + Structure basic_structure; + int current_volume; + LinkedList structure_list; + LinkedListIterator current_structure; + int do2D; + + MultiDimIterator curnew_config; + Array supercells; + int curnew_supercell; + LinkedListIterator beginning_of_cell; + Structure blank_superstructure; + SpaceGroup subgroup; + int useradded; + + void init(void) { + current_volume=0; + current_index=0; + curnew_supercell=0; + useradded=0; + + // special case to put pure structures first; + LinkedListIterator insert_at(structure_list); + blank_superstructure.cell=find_symmetric_cell(basic_structure.cell); + find_all_atom_in_supercell(&blank_superstructure.atom_pos, + &blank_superstructure.atom_type,basic_structure.atom_pos, + basic_structure.atom_type, + basic_structure.cell, blank_superstructure.cell); + Array savetype=blank_superstructure.atom_type; + for (int t=0; t i(structure_list); + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,blank_superstructure)) break; + } + if (!i) { + structure_list.add(new T(blank_superstructure),insert_at); + insert_at++; + } + } + reset(); + } + int find_new_structure(void); + public: + StructureBank(const Structure &_basic_structure, const SpaceGroup &_equivalent_by_symmetry, int _do2D=0): + structure_list(), current_structure(), + equivalent_by_symmetry(_equivalent_by_symmetry), + basic_structure(_basic_structure), do2D(_do2D), supercells(), curnew_config(), beginning_of_cell(), subgroup() {init();} + StructureBank(const Structure &_basic_structure, + const Array &site_type_list, + const SpaceGroup &_equivalent_by_symmetry, int _do2D=0): + structure_list(), current_structure(), + equivalent_by_symmetry(_equivalent_by_symmetry), + basic_structure(_basic_structure), do2D(_do2D), supercells(), curnew_config(), beginning_of_cell(), subgroup() { + for (int i=0; i& get_structure_list(void) { + return structure_list; + } + int get_current_index(void) { + return current_index; + } + int get_max_volume(void) { + return current_volume; + } + /* + int end_of_this_volume(void) { // caution: this routine only works if add_structure is not called. + if (supercells.get_size()==0) {return 0;} + if (curnew_config) {return 0;} else {return 1;} + } + */ + int find_new_structures(int new_volume) { + while (1) { + if (current_volume>new_volume) break; + (*this)++; + } + } + int add_structure(const Structure &str, T **pp_str=NULL) { + LinkedListIterator i(structure_list); + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,str)) break; + } + if (!i) { + LinkedListIterator insert_at(structure_list); + while (insert_at && insert_at->atom_pos.get_size() < str.atom_pos.get_size()+1) insert_at++; + T *p_str=new T(str); + structure_list.add(p_str,insert_at); + useradded=1; + if (pp_str) *pp_str=p_str; + return 1; + } + else { + if (pp_str) *pp_str=i; + return 0; + } + } +}; + +#define ENUMFLIPTRICK + +template +int StructureBank::find_new_structure(void) { + while (1) { + if (!curnew_config) { + curnew_supercell++; + if (curnew_supercell>=supercells.get_size()) { + current_volume=current_volume+1; + //cerr << "volume= " << current_volume << endl; + Array pointgroup; + pointgroup_from_spacegroup(&pointgroup,equivalent_by_symmetry.point_op); + if (do2D) { + find_supercells_2D(&supercells, current_volume, current_volume, basic_structure.cell, pointgroup); + } + else { + find_supercells(&supercells, current_volume, current_volume, basic_structure.cell, pointgroup); + } + curnew_supercell=0; + int target_nbatom=basic_structure.atom_pos.get_size()*current_volume; + beginning_of_cell.init(structure_list); + //cerr << "begincell [\n"; + while (1) { + if (!beginning_of_cell) break; + if (beginning_of_cell->atom_pos.get_size()>=target_nbatom) break; + beginning_of_cell++; + } + //cerr << "begincell ]\n"; + } + if (!useradded && current_volume>1) {beginning_of_cell=current_structure;} + //cerr << "findsymcell [\n"; + supercells(curnew_supercell)=find_symmetric_cell(supercells(curnew_supercell)); + //cerr << "findsymcell ]\n"; + blank_superstructure.cell=supercells(curnew_supercell); + find_all_atom_in_supercell(&blank_superstructure.atom_pos, + &blank_superstructure.atom_type,basic_structure.atom_pos, + basic_structure.atom_type, + basic_structure.cell, blank_superstructure.cell); + curnew_config.init(blank_superstructure.atom_type); + subfactorgroup_from_supercell_and_spacegroup(&subgroup.point_op,&subgroup.trans, blank_superstructure.cell,equivalent_by_symmetry.point_op,equivalent_by_symmetry.trans); + // cerr << "point = " << subgroup.point_op << endl; + // cerr << "trans = " << subgroup.trans << endl; + + } + + int need_to_gen=0; + if (!current_structure) { + need_to_gen=1; + } + else if (current_structure->atom_pos.get_size()/basic_structure.atom_pos.get_size() > MAX(1,current_volume)) { + need_to_gen=1; + } + if (!need_to_gen) return 0; + + for (int s=0; s<((Arrayint)curnew_config).get_size(); s++) { + blank_superstructure.atom_type(s)=((Arrayint)curnew_config)(s); + } + curnew_config++; +#ifdef ENUMFLIPTRICK + if (!contains_pure_translations(blank_superstructure,basic_structure.cell)) { + if (!equiv_to_lexico_successor(blank_superstructure,basic_structure.cell,subgroup.point_op,subgroup.trans)) { + if (!useradded && current_volume>1) { + structure_list.add(new T(blank_superstructure),current_structure); + break; // exit routine; + } + else { + LinkedListIterator i=beginning_of_cell; + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,blank_superstructure)) break; + } + if (!i) { + structure_list.add(new T(blank_superstructure),current_structure); + break; // exit routine; + } + } + } + } +#else + if (!contains_pure_translations_or_lexico_successor(blank_superstructure,basic_structure.cell)) { + LinkedListIterator i=beginning_of_cell; + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,blank_superstructure)) break; + } + if (!i) { + structure_list.add(new T(blank_superstructure),current_structure); + break; // exit routine; + } + } +#endif + // curnew_config++; + } + return 0; +} +#else +template +class StructureBank { + int current_index; + const SpaceGroup &equivalent_by_symmetry; + Structure basic_structure; + int current_volume; + LinkedList structure_list; + LinkedListIterator current_structure; + int do2D; + void init(void) { + current_volume=0; + current_index=0; + + // special case to put pure structures first; + LinkedListIterator insert_at(structure_list); + Structure blank_superstructure; + blank_superstructure.cell=find_symmetric_cell(basic_structure.cell); + find_all_atom_in_supercell(&blank_superstructure.atom_pos, + &blank_superstructure.atom_type,basic_structure.atom_pos, + basic_structure.atom_type, + basic_structure.cell, blank_superstructure.cell); + Array savetype=blank_superstructure.atom_type; + for (int t=0; t i(structure_list); + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,blank_superstructure)) break; + } + if (!i) { + structure_list.add(new T(blank_superstructure),insert_at); + insert_at++; + } + } + // find_new_structures(current_volume+1); + reset(); + } + public: + StructureBank(const Structure &_basic_structure, const SpaceGroup &_equivalent_by_symmetry, int _do2D=0): + structure_list(), current_structure(), + equivalent_by_symmetry(_equivalent_by_symmetry), + basic_structure(_basic_structure), do2D(_do2D) {init();} + StructureBank(const Structure &_basic_structure, + const Array &site_type_list, + const SpaceGroup &_equivalent_by_symmetry, int _do2D=0): + structure_list(), current_structure(), + equivalent_by_symmetry(_equivalent_by_symmetry), + basic_structure(_basic_structure), do2D(_do2D) { + for (int i=0; iatom_pos.get_size()/basic_structure.atom_pos.get_size() > MAX(1,current_volume)) { + find_new_structures(current_volume+1); + } + } + operator T& (void) { + return *current_structure; + } + T& get_current_structure(void) { + return *current_structure; + } + LinkedList& get_structure_list(void) { + return structure_list; + } + int get_current_index(void) { + return current_index; + } + int get_max_volume(void) { + return current_volume; + } + int end_of_this_volume(void) { + if (current_volume==0) { + find_new_structures(current_volume+1); + } + LinkedListIterator tmp_structure=current_structure; + tmp_structure++; + if (!tmp_structure) return 1; + if (tmp_structure->atom_pos.get_size()/basic_structure.atom_pos.get_size() > current_volume) return 1; + return 0; + } + void find_new_structures(int new_max_volume); + int add_structure(const Structure &str, T **pp_str=NULL) { + LinkedListIterator i(structure_list); + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,str)) break; + } + if (!i) { + LinkedListIterator insert_at(structure_list); + while (insert_at && insert_at->atom_pos.get_size() < str.atom_pos.get_size()+1) insert_at++; + T *p_str=new T(str); + structure_list.add(p_str,insert_at); + if (pp_str) *pp_str=p_str; + return 1; + } + else { + if (pp_str) *pp_str=i; + return 0; + } + } +}; + +//#define OLD_STR_ALGO +#ifdef OLD_STR_ALGO +template +void StructureBank::find_new_structures(int new_max_volume) { + LinkedListIterator insert_at(structure_list); + int nb_atom=(current_volume+1)*basic_structure.atom_pos.get_size(); + while (insert_at && insert_at->atom_pos.get_size() <= nb_atom) insert_at++; + + Array pointgroup; + pointgroup_from_spacegroup(&pointgroup,equivalent_by_symmetry.point_op); + Array supercell; + if (do2D) { + find_supercells_2D(&supercell, current_volume+1, new_max_volume, basic_structure.cell, pointgroup); + } + else { + find_supercells(&supercell, current_volume+1, new_max_volume, basic_structure.cell, pointgroup); + } + current_volume=MAX(current_volume,new_max_volume); + for (int c=0; c config(blank_superstructure.atom_type); + for (; config; config++) { + for (int s=0; s<((Arrayint)config).get_size(); s++) { + blank_superstructure.atom_type(s)=((Arrayint)config)(s); + } + LinkedListIterator i(structure_list); + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,blank_superstructure)) break; + } + if (!i) { + structure_list.add(new T(blank_superstructure),insert_at); + insert_at++; + } + } + } +/* + { + ofstream file("strdebug.out"); + LinkedListIterator ii(structure_list); + for (; ii; ii++) { + file << ii->cell << endl; + file << ii->atom_pos << endl; + file << ii->atom_type << endl; + file << "end" << endl << endl; + } + } +*/ +} +#else +template +void StructureBank::find_new_structures(int new_max_volume) { + Array pointgroup; + pointgroup_from_spacegroup(&pointgroup,equivalent_by_symmetry.point_op); + Array supercell; + if (do2D) { + find_supercells_2D(&supercell, current_volume+1, new_max_volume, basic_structure.cell, pointgroup); + } + else { + find_supercells(&supercell, current_volume+1, new_max_volume, basic_structure.cell, pointgroup); + } + current_volume=MAX(current_volume,new_max_volume); + LinkedListIterator insert_at(structure_list); + int nb_atom=current_volume*basic_structure.atom_pos.get_size(); + while (insert_at && insert_at->atom_pos.get_size() < nb_atom) insert_at++; + + Array > partial_str_list(supercell.get_size()); + { + MPISynchronizer > sync; + for (int c=0; c config(blank_superstructure.atom_type); + for (; config; config++) { + for (int s=0; s<((Arrayint)config).get_size(); s++) { + blank_superstructure.atom_type(s)=((Arrayint)config)(s); + } + if (!contains_pure_translations_or_lexico_successor(blank_superstructure,basic_structure.cell)) { + LinkedListIterator i(partial_str_list(c)); + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,blank_superstructure)) break; + } + if (!i) { + partial_str_list(c) << new T(blank_superstructure); + } + } + } + + LinkedListIterator i(partial_str_list(c)); + while (i) { + LinkedListIterator j(insert_at); + int found=0; + while (j) { + if (j->atom_pos.get_size()!=i->atom_pos.get_size()) break; + if (equivalent_by_symmetry(*i,*j)) { + found=1; + break; + } + j++; + } + if (found) { + delete partial_str_list(c).detach(i); + } + else { + i++; + } + } + + } + sync.sync(&(partial_str_list(c))); + } + } + + while (insert_at && insert_at->atom_pos.get_size() == nb_atom) insert_at++; + for (int c=0; c i(partial_str_list(c)); + for ( ; i; insert_at++) { + structure_list.add(partial_str_list(c).detach(i),insert_at); + } + } +/* + { + ofstream file("strdebug.out"); + LinkedListIterator ii(structure_list); + for (; ii; ii++) { + file << ii->cell << endl; + file << ii->atom_pos << endl; + file << ii->atom_type << endl; + file << "end" << endl << endl; + } + } +*/ +} +#endif + +#endif + + +#endif diff --git a/src/clus_str_fast.c++ b/src/clus_str_fast.c++ new file mode 100644 index 0000000..ee39dc7 --- /dev/null +++ b/src/clus_str_fast.c++ @@ -0,0 +1,119 @@ +#include "clus_str.h" +#include "arraylist.h" + +ClusterBank::ClusterBank(const rMatrix3d &cell, + const Array &atom_pos, + int ntuple, + const SpaceGroup &_equivalent_by_symmetry): + cluster_list(), current_cluster(), + current_index(0), previous_length(0.), multiplet(cell,atom_pos,ntuple), + equivalent_by_symmetry(_equivalent_by_symmetry) { + if (ntuple>1) { + cluster_list << new Cluster(multiplet); + } + else { + for (int at=0; at save=current_cluster; + current_cluster++; + current_index++; + if (!current_cluster && save->get_size()>1) { + do {multiplet++;} while (!add_unique(&cluster_list,Cluster(multiplet),equivalent_by_symmetry)); + current_cluster=save; + current_cluster++; + } +} + +MultiClusterBank::MultiClusterBank(const Structure &_lat, + int ntuple, + const SpaceGroup &_equivalent_by_symmetry): + lat(_lat), cluster_bank(_lat.cell,_lat.atom_pos,ntuple,_equivalent_by_symmetry), + cluster_list(), current_cluster(), + current_index(0), previous_length(0.), + equivalent_by_symmetry(_equivalent_by_symmetry) { + if (ntuple>1) { + make_new_clusters(); + } + else { + for (int at=0; at minconfig(new_clus.clus.get_size()); + zero_array(&minconfig); + rMatrix3d inv_cell=!(lat.cell); + for (int at=0; at new_clus_list; + MultiDimIterator > config(minconfig,new_clus.site_type); + for (; config; config++) { + new_clus.func=config; + add_unique(&new_clus_list,new_clus,equivalent_by_symmetry); + } + transfer_list(&cluster_list,&new_clus_list); +} + +void MultiClusterBank::operator++(int) { + previous_length=get_length_quick(current_cluster->clus); + current_cluster++; + current_index++; + if (!current_cluster && previous_length!=0) { + cluster_bank++; + make_new_clusters(); + } +} + + diff --git a/src/clus_str_fast.hh b/src/clus_str_fast.hh new file mode 100644 index 0000000..115248a --- /dev/null +++ b/src/clus_str_fast.hh @@ -0,0 +1,268 @@ +#ifndef _CLUS_STR_H_ +#define _CLUS_STR_H_ + +#include "calccorr.h" +#include "stringo.h" +#include "lattype.h" +//#include +#include "mpiinterf.h" + +extern Real complexity_exp; + +typedef Array Cluster; +typedef Array ArrayCluster; +typedef Array Arrayint; + +inline Real get_length_quick(const Array &c) { + if (c.get_size()==0) return 0; + return norm(c(c.get_size()-1)-c(0)); +} + +class ClusterBank { + LinkedList cluster_list; + LinkedListIterator current_cluster; + int current_index; + Real previous_length; + AtomMultipletIterator multiplet; + const SpaceGroup &equivalent_by_symmetry; + public: + ClusterBank(const rMatrix3d &cell, + const Array &atom_pos, + int ntuple, + const SpaceGroup &_equivalent_by_symmetry); + ClusterBank(const ClusterBank &clusterbank,int ntuple); + void reset(void); + void operator++(int); + int get_current_index(void) { + return current_index; + } + Real get_previous_length(void) { + return previous_length; + } + Real get_current_length(void) { + return get_length_quick(*current_cluster); + } + operator Cluster& (void) { + return *current_cluster; + } + LinkedList& get_cluster_list(void) { + return cluster_list; + } +}; + +class MultiClusterBank { + Structure lat; + ClusterBank cluster_bank; + LinkedList cluster_list; + LinkedListIterator current_cluster; + int current_index; + Real previous_length; + const SpaceGroup &equivalent_by_symmetry; + + void make_new_clusters(void); + public: + MultiClusterBank(const Structure &_lat, + int ntuple, + const SpaceGroup &_equivalent_by_symmetry); + MultiClusterBank(const MultiClusterBank &clusterbank,int ntuple); + void reset(void); + void operator++(int); + int get_current_index(void) { + return current_index; + } + Real get_previous_length(void) { + return previous_length; + } + Real get_current_length(void) { + return get_length_quick(current_cluster->clus); + } + operator MultiCluster& (void) { + return *current_cluster; + } + MultiCluster* operator -> () { + return current_cluster; + } + LinkedList& get_cluster_list(void) { + return cluster_list; + } +}; + +template +class StructureBank { + int current_index; + const SpaceGroup &equivalent_by_symmetry; + Structure basic_structure; + int current_volume; + LinkedList structure_list; + LinkedListIterator current_structure; + int do2D; + + MultiDimIterator curnew_config; + Array supercells; + int curnew_supercell; + LinkedListIterator beginning_of_cell; + + void init(void) { + current_volume=0; + current_index=0; + curnew_supercell=0; + + // special case to put pure structures first; + LinkedListIterator insert_at(structure_list); + Structure blank_superstructure; + blank_superstructure.cell=find_symmetric_cell(basic_structure.cell); + find_all_atom_in_supercell(&blank_superstructure.atom_pos, + &blank_superstructure.atom_type,basic_structure.atom_pos, + basic_structure.atom_type, + basic_structure.cell, blank_superstructure.cell); + Array savetype=blank_superstructure.atom_type; + for (int t=0; t i(structure_list); + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,blank_superstructure)) break; + } + if (!i) { + structure_list.add(new T(blank_superstructure),insert_at); + insert_at++; + } + } + reset(); + } + int find_new_structure(void); + public: + StructureBank(const Structure &_basic_structure, const SpaceGroup &_equivalent_by_symmetry, int _do2D=0): + structure_list(), current_structure(), + equivalent_by_symmetry(_equivalent_by_symmetry), + basic_structure(_basic_structure), do2D(_do2D), supercells(), curnew_config(), beginning_of_cell() {init();} + StructureBank(const Structure &_basic_structure, + const Array &site_type_list, + const SpaceGroup &_equivalent_by_symmetry, int _do2D=0): + structure_list(), current_structure(), + equivalent_by_symmetry(_equivalent_by_symmetry), + basic_structure(_basic_structure), do2D(_do2D), supercells(), curnew_config(), beginning_of_cell() { + for (int i=0; i& get_structure_list(void) { + return structure_list; + } + int get_current_index(void) { + return current_index; + } + int get_max_volume(void) { + return current_volume; + } + int end_of_this_volume(void) { // caution: this routine only works if add_structure is not called. + if (supercells.get_size()==0) {return 0;} + if (curnew_config) {return 0;} else {return 1;} + } + int find_new_structures(int new_volume) { + while (1) { + if (end_of_this_volume()) { + if (current_volume==new_volume) break; + } + (*this)++; + } + } + int add_structure(const Structure &str, T **pp_str=NULL) { + LinkedListIterator i(structure_list); + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,str)) break; + } + if (!i) { + LinkedListIterator insert_at(structure_list); + while (insert_at && insert_at->atom_pos.get_size() < str.atom_pos.get_size()+1) insert_at++; + T *p_str=new T(str); + structure_list.add(p_str,insert_at); + if (pp_str) *pp_str=p_str; + return 1; + } + else { + if (pp_str) *pp_str=i; + return 0; + } + } +}; + +template +int StructureBank::find_new_structure(void) { + int need_to_gen=0; + if (!current_structure) { + need_to_gen=1; + } + else if (current_structure->atom_pos.get_size()/basic_structure.atom_pos.get_size() > MAX(1,current_volume)) { + need_to_gen=1; + } + if (!need_to_gen) return 0; + + while (1) { + if (curnew_config) { + for (int s=0; s<((Arrayint)curnew_config).get_size(); s++) { + blank_superstructure.atom_type(s)=((Arrayint)curnew_config)(s); + } + if (!contains_pure_translations_or_lexico_successor(blank_superstructure,basic_structure.cell)) { + LinkedListIterator i=beginning_of_cell; + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,blank_superstructure)) break; + } + if (!i) { + structure_list.add(current_structure,new T(blank_superstructure)); + break; // exit routine; + } + } + } + else { + curnew_supercell++; + if (curnew_supercell>=supercells.get_size()) { + current_volume=current_volume+1; + Array pointgroup; + pointgroup_from_spacegroup(&pointgroup,equivalent_by_symmetry.point_op); + if (do2D) { + find_supercells_2D(&supercells, current_volume, current_volume, basic_structure.cell, pointgroup); + } + else { + find_supercells(&supercells, current_volume, current_volume, basic_structure.cell, pointgroup); + } + curnew_supercell=0; + } + beginning_of_cell=current_structure; + supercells(curnew_supercell)=find_symmetric_cell(supercells(curnew_supercell)); + Structure blank_superstructure; + blank_superstructure.cell=supercells(curnew_supercell); + find_all_atom_in_supercell(&blank_superstructure.atom_pos, + &blank_superstructure.atom_type,basic_structure.atom_pos, + basic_structure.atom_type, + basic_structure.cell, blank_superstructure.cell); + curnew_config.init(blank_superstructure.atom_type); + } + curnew_config++; + } + return 1; +} + +#endif diff --git a/src/clus_str_org.c++ b/src/clus_str_org.c++ new file mode 100644 index 0000000..ee39dc7 --- /dev/null +++ b/src/clus_str_org.c++ @@ -0,0 +1,119 @@ +#include "clus_str.h" +#include "arraylist.h" + +ClusterBank::ClusterBank(const rMatrix3d &cell, + const Array &atom_pos, + int ntuple, + const SpaceGroup &_equivalent_by_symmetry): + cluster_list(), current_cluster(), + current_index(0), previous_length(0.), multiplet(cell,atom_pos,ntuple), + equivalent_by_symmetry(_equivalent_by_symmetry) { + if (ntuple>1) { + cluster_list << new Cluster(multiplet); + } + else { + for (int at=0; at save=current_cluster; + current_cluster++; + current_index++; + if (!current_cluster && save->get_size()>1) { + do {multiplet++;} while (!add_unique(&cluster_list,Cluster(multiplet),equivalent_by_symmetry)); + current_cluster=save; + current_cluster++; + } +} + +MultiClusterBank::MultiClusterBank(const Structure &_lat, + int ntuple, + const SpaceGroup &_equivalent_by_symmetry): + lat(_lat), cluster_bank(_lat.cell,_lat.atom_pos,ntuple,_equivalent_by_symmetry), + cluster_list(), current_cluster(), + current_index(0), previous_length(0.), + equivalent_by_symmetry(_equivalent_by_symmetry) { + if (ntuple>1) { + make_new_clusters(); + } + else { + for (int at=0; at minconfig(new_clus.clus.get_size()); + zero_array(&minconfig); + rMatrix3d inv_cell=!(lat.cell); + for (int at=0; at new_clus_list; + MultiDimIterator > config(minconfig,new_clus.site_type); + for (; config; config++) { + new_clus.func=config; + add_unique(&new_clus_list,new_clus,equivalent_by_symmetry); + } + transfer_list(&cluster_list,&new_clus_list); +} + +void MultiClusterBank::operator++(int) { + previous_length=get_length_quick(current_cluster->clus); + current_cluster++; + current_index++; + if (!current_cluster && previous_length!=0) { + cluster_bank++; + make_new_clusters(); + } +} + + diff --git a/src/clus_str_org.hh b/src/clus_str_org.hh new file mode 100644 index 0000000..d6c364b --- /dev/null +++ b/src/clus_str_org.hh @@ -0,0 +1,353 @@ +#ifndef _CLUS_STR_H_ +#define _CLUS_STR_H_ + +#include "calccorr.h" +#include "stringo.h" +#include "lattype.h" +//#include +#include "mpiinterf.h" + +extern Real complexity_exp; + +typedef Array Cluster; +typedef Array ArrayCluster; +typedef Array Arrayint; + +inline Real get_length_quick(const Array &c) { + if (c.get_size()==0) return 0; + return norm(c(c.get_size()-1)-c(0)); +} + +class ClusterBank { + LinkedList cluster_list; + LinkedListIterator current_cluster; + int current_index; + Real previous_length; + AtomMultipletIterator multiplet; + const SpaceGroup &equivalent_by_symmetry; + public: + ClusterBank(const rMatrix3d &cell, + const Array &atom_pos, + int ntuple, + const SpaceGroup &_equivalent_by_symmetry); + ClusterBank(const ClusterBank &clusterbank,int ntuple); + void reset(void); + void operator++(int); + int get_current_index(void) { + return current_index; + } + Real get_previous_length(void) { + return previous_length; + } + Real get_current_length(void) { + return get_length_quick(*current_cluster); + } + operator Cluster& (void) { + return *current_cluster; + } + LinkedList& get_cluster_list(void) { + return cluster_list; + } +}; + +class MultiClusterBank { + Structure lat; + ClusterBank cluster_bank; + LinkedList cluster_list; + LinkedListIterator current_cluster; + int current_index; + Real previous_length; + const SpaceGroup &equivalent_by_symmetry; + + void make_new_clusters(void); + public: + MultiClusterBank(const Structure &_lat, + int ntuple, + const SpaceGroup &_equivalent_by_symmetry); + MultiClusterBank(const MultiClusterBank &clusterbank,int ntuple); + void reset(void); + void operator++(int); + int get_current_index(void) { + return current_index; + } + Real get_previous_length(void) { + return previous_length; + } + Real get_current_length(void) { + return get_length_quick(current_cluster->clus); + } + operator MultiCluster& (void) { + return *current_cluster; + } + MultiCluster* operator -> () { + return current_cluster; + } + LinkedList& get_cluster_list(void) { + return cluster_list; + } +}; + +template +class StructureBank { + int current_index; + const SpaceGroup &equivalent_by_symmetry; + Structure basic_structure; + int current_volume; + LinkedList structure_list; + LinkedListIterator current_structure; + int do2D; + void init(void) { + current_volume=0; + current_index=0; + + // special case to put pure structures first; + LinkedListIterator insert_at(structure_list); + Structure blank_superstructure; + blank_superstructure.cell=find_symmetric_cell(basic_structure.cell); + find_all_atom_in_supercell(&blank_superstructure.atom_pos, + &blank_superstructure.atom_type,basic_structure.atom_pos, + basic_structure.atom_type, + basic_structure.cell, blank_superstructure.cell); + Array savetype=blank_superstructure.atom_type; + for (int t=0; t i(structure_list); + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,blank_superstructure)) break; + } + if (!i) { + structure_list.add(new T(blank_superstructure),insert_at); + insert_at++; + } + } + // find_new_structures(current_volume+1); + reset(); + } + public: + StructureBank(const Structure &_basic_structure, const SpaceGroup &_equivalent_by_symmetry, int _do2D=0): + structure_list(), current_structure(), + equivalent_by_symmetry(_equivalent_by_symmetry), + basic_structure(_basic_structure), do2D(_do2D) {init();} + StructureBank(const Structure &_basic_structure, + const Array &site_type_list, + const SpaceGroup &_equivalent_by_symmetry, int _do2D=0): + structure_list(), current_structure(), + equivalent_by_symmetry(_equivalent_by_symmetry), + basic_structure(_basic_structure), do2D(_do2D) { + for (int i=0; iatom_pos.get_size()/basic_structure.atom_pos.get_size() > MAX(1,current_volume)) { + find_new_structures(current_volume+1); + } + } + operator T& (void) { + return *current_structure; + } + T& get_current_structure(void) { + return *current_structure; + } + LinkedList& get_structure_list(void) { + return structure_list; + } + int get_current_index(void) { + return current_index; + } + int get_max_volume(void) { + return current_volume; + } + int end_of_this_volume(void) { + if (current_volume==0) { + find_new_structures(current_volume+1); + } + LinkedListIterator tmp_structure=current_structure; + tmp_structure++; + if (!tmp_structure) return 1; + if (tmp_structure->atom_pos.get_size()/basic_structure.atom_pos.get_size() > current_volume) return 1; + return 0; + } + void find_new_structures(int new_max_volume); + int add_structure(const Structure &str, T **pp_str=NULL) { + LinkedListIterator i(structure_list); + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,str)) break; + } + if (!i) { + LinkedListIterator insert_at(structure_list); + while (insert_at && insert_at->atom_pos.get_size() < str.atom_pos.get_size()+1) insert_at++; + T *p_str=new T(str); + structure_list.add(p_str,insert_at); + if (pp_str) *pp_str=p_str; + return 1; + } + else { + if (pp_str) *pp_str=i; + return 0; + } + } +}; + +//#define OLD_STR_ALGO +#ifdef OLD_STR_ALGO +template +void StructureBank::find_new_structures(int new_max_volume) { + LinkedListIterator insert_at(structure_list); + int nb_atom=(current_volume+1)*basic_structure.atom_pos.get_size(); + while (insert_at && insert_at->atom_pos.get_size() <= nb_atom) insert_at++; + + Array pointgroup; + pointgroup_from_spacegroup(&pointgroup,equivalent_by_symmetry.point_op); + Array supercell; + if (do2D) { + find_supercells_2D(&supercell, current_volume+1, new_max_volume, basic_structure.cell, pointgroup); + } + else { + find_supercells(&supercell, current_volume+1, new_max_volume, basic_structure.cell, pointgroup); + } + current_volume=MAX(current_volume,new_max_volume); + for (int c=0; c config(blank_superstructure.atom_type); + for (; config; config++) { + for (int s=0; s<((Arrayint)config).get_size(); s++) { + blank_superstructure.atom_type(s)=((Arrayint)config)(s); + } + LinkedListIterator i(structure_list); + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,blank_superstructure)) break; + } + if (!i) { + structure_list.add(new T(blank_superstructure),insert_at); + insert_at++; + } + } + } +/* + { + ofstream file("strdebug.out"); + LinkedListIterator ii(structure_list); + for (; ii; ii++) { + file << ii->cell << endl; + file << ii->atom_pos << endl; + file << ii->atom_type << endl; + file << "end" << endl << endl; + } + } +*/ +} +#else +template +void StructureBank::find_new_structures(int new_max_volume) { + Array pointgroup; + pointgroup_from_spacegroup(&pointgroup,equivalent_by_symmetry.point_op); + Array supercell; + if (do2D) { + find_supercells_2D(&supercell, current_volume+1, new_max_volume, basic_structure.cell, pointgroup); + } + else { + find_supercells(&supercell, current_volume+1, new_max_volume, basic_structure.cell, pointgroup); + } + current_volume=MAX(current_volume,new_max_volume); + LinkedListIterator insert_at(structure_list); + int nb_atom=current_volume*basic_structure.atom_pos.get_size(); + while (insert_at && insert_at->atom_pos.get_size() < nb_atom) insert_at++; + + Array > partial_str_list(supercell.get_size()); + { + MPISynchronizer > sync; + for (int c=0; c config(blank_superstructure.atom_type); + for (; config; config++) { + for (int s=0; s<((Arrayint)config).get_size(); s++) { + blank_superstructure.atom_type(s)=((Arrayint)config)(s); + } + if (!contains_pure_translations_or_lexico_successor(blank_superstructure,basic_structure.cell)) { + LinkedListIterator i(partial_str_list(c)); + for ( ; i ; i++) { + if (equivalent_by_symmetry(*i,blank_superstructure)) break; + } + if (!i) { + partial_str_list(c) << new T(blank_superstructure); + } + } + } + + LinkedListIterator i(partial_str_list(c)); + while (i) { + LinkedListIterator j(insert_at); + int found=0; + while (j) { + if (j->atom_pos.get_size()!=i->atom_pos.get_size()) break; + if (equivalent_by_symmetry(*i,*j)) { + found=1; + break; + } + j++; + } + if (found) { + delete partial_str_list(c).detach(i); + } + else { + i++; + } + } + + } + sync.sync(&(partial_str_list(c))); + } + } + + while (insert_at && insert_at->atom_pos.get_size() == nb_atom) insert_at++; + for (int c=0; c i(partial_str_list(c)); + for ( ; i; insert_at++) { + structure_list.add(partial_str_list(c).detach(i),insert_at); + } + } +/* + { + ofstream file("strdebug.out"); + LinkedListIterator ii(structure_list); + for (; ii; ii++) { + file << ii->cell << endl; + file << ii->atom_pos << endl; + file << ii->atom_type << endl; + file << "end" << endl << endl; + } + } +*/ +} +#endif + +#endif diff --git a/src/clusover.c++ b/src/clusover.c++ new file mode 100644 index 0000000..43da1e4 --- /dev/null +++ b/src/clusover.c++ @@ -0,0 +1,239 @@ +#include "vectmac.h" +#include "arraylist.h" +#include "integer.h" +#include "linalg.h" +#include + +class AtomCluster { +public: + AtomCluster(void): atom_pos(0), atom_type(0) {} + Array atom_pos; + Array atom_type; +}; + +int which_atom(const Array &atom_pos, const rVector3d &pos, Real cutoff=MAXFLOAT, Real *pdist=NULL) { + int besti=-1; + Real bestd=MAXFLOAT; + for (int i=0; icutoff) {besti=-1;} + if (pdist) {*pdist=bestd;} + return besti; +} + +void enum_triplets(LinkedList > *trip_list, LinkedList > *dist_list, const Array &atom_pos, Real cutoff=MAXFLOAT) { + iVector3d i; + for (i(0)=0; i(0) dist(3); + int j; + for (j=0; j<3; j++) { + dist(j)=norm(atom_pos(i((j+1)%3))-atom_pos(i(j))); + if (dist(j)>cutoff) break; + } + rVector3d v1=atom_pos(i(1))-atom_pos(i(0)); + v1.normalize(); + rVector3d v2=atom_pos(i(2))-atom_pos(i(0)); + v2.normalize(); + if (j==3 && norm(v1^v2)>zero_tolerance) { + int rot=index_max(dist); + int flip=(dist((rot+1)%3)>dist((rot+2)%3) ? 1 : -1); + Array *ptrip=new Array(3); + Array *pdist=new Array(3); + for (int k=0; k<3; k++) { + (*ptrip)(k)=atom_pos(i( (3+rot+flip*k)%3 )); + (*pdist)(k)=dist( (3+rot+flip*k)%3 ); + } + (*dist_list) << pdist; + (*trip_list) << ptrip; + } + } + } + } +} + + + +void find_overlapping_clusters(LinkedList > *cluslist, const Array &seed, const Array &clus, Real cutoff) { + LinkedList > sitelist; + LinkedList > tripclus; + LinkedList > distclus; + enum_triplets(&tripclus,&distclus, clus); + Real maxdistclus=0.; + LinkedListIterator > i(distclus); + for (; i; i++) { + Real m=max(*i); + maxdistclus=MAX(maxdistclus,m); + } + LinkedList > tripseed; + LinkedList > distseed; + enum_triplets(&tripseed,&distseed, seed, maxdistclus); + + LinkedListIterator > iseed(tripseed); + LinkedListIterator > dseed(distseed); + for (; iseed; iseed++, dseed++) { + LinkedListIterator > iclus(tripclus); + LinkedListIterator > dclus(distclus); + for (; iclus; iclus++, dclus++) { + for (int flip=-1; flip<=1; flip+=2) { + for (int rot=0; rot<3; rot++) { + int side=0; + for (; side<3; side++) { + if (fabs((*dseed)(side)-(*dclus)((3+flip*side+rot)%3))>cutoff*2) break; + } + if (side==3) { + rMatrix3d matseed; + rVector3d v1=(*iseed)(1)-(*iseed)(0); + v1.normalize(); + rVector3d v2=(*iseed)(2)-(*iseed)(0); + v2.normalize(); + rVector3d v3=v1^v2; + v3.normalize(); + matseed.set_column(0,v1); + matseed.set_column(1,v2); + matseed.set_column(2,v3); + rMatrix3d matclus; + v1=(*iclus)((3+flip*1+rot)%3)-(*iclus)((3+flip*0+rot)%3); + v1.normalize(); + v2=(*iclus)((3+flip*2+rot)%3)-(*iclus)((3+flip*0+rot)%3); + v2.normalize(); + for (int mirror=-1; mirror<=1; mirror+=2) { + rVector3d v3=mirror*v1^v2; + v3.normalize(); + matclus.set_column(0,v1); + matclus.set_column(1,v2); + matclus.set_column(2,v3); + rMatrix3d m=matseed*(!matclus); + rMatrix3d mmt=m*(~m); + rMatrix3d invstrain; + pow(&invstrain,mmt,-0.5); + rMatrix3d matrot=invstrain*m; + rVector3d cmassseed=((*iseed)(0)+(*iseed)(1)+(*iseed)(2))/3; + rVector3d cmassclus=((*iclus)(0)+(*iclus)(1)+(*iclus)(2))/3; + rVector3d trans=cmassseed-matrot*cmassclus; + Array newclus(clus.get_size()); + Array newsite(clus.get_size()); + int i; + for (i=0; i > jsite(sitelist); + for (; jsite; jsite++) { + if (newsite==(*jsite)) break; + } + if (!jsite) { + (*cluslist) << new Array(newclus); + sitelist << new Array(newsite); + } + } + } + } + } + } + } + } +} + +void find_periodicity(Array *p_period,const AtomCluster &clus, Real cutoff) { + int invoidcutoff=clus.atom_pos.get_size() +????; + for (int i=0; i newsite(clus.atom_pos.get_size()); + int invoid=0; + int k; + for (k=0; k *pclus, istream &file) { + LinkedList clus_list; + while (!file.eof()) { + rVector3d v(MAXFLOAT,MAXFLOAT,MAXFLOAT); + file >> v; + if (v(2)==MAXFLOAT) break; + clus_list << new rVector3d(v); + } + LinkedList_to_Array(pclus,clus_list); +} + +int main(void) { + Real cutoff=0.2; + Array seed; + ifstream seedfile("seed.in"); + read_clus(&seed,seedfile); + Array clusorg; + ifstream clusfile("clus.in"); + read_clus(&clusorg,clusfile); + LinkedList > cluslist; + find_overlapping_clusters(&cluslist, seed,clusorg,cutoff); + LinkedListIterator > i(cluslist); + cout.setf(ios::fixed); + cout.precision(3); + int cnt=0; + cout << cluslist.get_size() << endl; + for ( ;i ;i++) { + Array &clus=(*i); + int overlap=0; + for (int j=0; j! allstr.out +echo -n "" >! allstrname.out +echo -n "" >! all${1}.tmp +echo -n "" >! allnbatom.out +foreachfile $skiperror $1 pwd >! allstrname.out +if ( `cat allstrname.out | wc -l` == 0 ) then + echo No files called $1 found in subdirectories. + exit 1 +endif +foreachfile $skiperror $1 'cat str.out; echo end; echo ""' >! allstr.out +if ($?usegce) then + foreachfile $skiperror $1 "blanktonl < $1" | grep -v '^ *$' >! all${1}.tmp + set nbrep=`wc -w */$1 | head -1 | awk '{print $1}'` +else + foreachfile $skiperror $1 "nltoblank < $1 ; echo ''" >! all${1}.tmp + set nbrep=1 +endif + +foreachfile $skiperror $1 'cat str.out | cellcvrt -pn' | awk '{for (i=1; i<='$nbrep'; i++) {print $1} }' >! allnbatom.out + +if ( $?nodivideperatom ) then + cp -f all${1}.tmp all${1}.out +else + paste allnbatom.out all${1}.tmp | awk '{n=split($0,a); for (i=2; i<=n; i++) {printf a[i]/a[1] " ";} print "";}' >! all${1}.out +endif +rm -f all${1}.tmp + +if ($?usegce) then + gce -c -s=allstr.out >! allcorr.out +else + corrdump -c -s=allstr.out >! allcorr.out +endif +if ( $?selectcol ) then + lsfit "$selectcol" -colin -x=allcorr.out -y=all${1}.out >! ${1}.ecimult + if ( $?printcv ) then + echo Crossvalidation score: + lsfit "$selectcol" -colin -x=allcorr.out -y=all${1}.out -cv + endif +else + lsfit -colin -x=allcorr.out -y=all${1}.out >! ${1}.ecimult + if ( $?printcv ) then + echo Crossvalidation score: + lsfit -colin -x=allcorr.out -y=all${1}.out -cv + endif +endif +cat lat.in | cellcvrt -f | tail -n +7 | wc -l >! nbinlat.out +getclus | awk 'BEGIN {getline < "nbinlat.out"; l=$1} {print $3/l}' >! clusmult.out +awk 'BEGIN {while (getline < "clusmult.out") {c++; m[c]=$1;} maxc=c; c=0;} {if ($1 != "") {c++; print $1/m[c]} else {c=0; print ""}}' ${1}.ecimult >! ${1}.eci diff --git a/src/clusterpredict b/src/clusterpredict new file mode 100755 index 0000000..607a196 --- /dev/null +++ b/src/clusterpredict @@ -0,0 +1,35 @@ +#!/bin/csh +if ( $#argv == 0 || x$1 == "x-h" ) then + cat - < tmpcorr.tmp +#paste tmpcorr.tmp ../$1.ecimult | awk 'BEGIN {s=0.;} {s+=$1*$2;} END {print s;}' > pred.tmp +awk 'BEGIN {c=0; while (getline < "tmpcorr.tmp") {if ($1!="") {c++; corr[c]=$1;}}; i=0; s=0; } \ +{if ($1!="") {\ + i++; s+=corr[i]*$1;\ + if (i==c) {print s; s=0; i=0;}\ +}}' ../$1.ecimult > pred.tmp +if ( $?peratom ) then + cp -f pred.tmp $1 +else + awk '{print '`cat str.out | cellcvrt -pn`'*$1}' pred.tmp >! $1 +endif +rm -f clusters.out tmpcorr.tmp pred.tmp diff --git a/src/cmpstr.c++ b/src/cmpstr.c++ new file mode 100644 index 0000000..d32c694 --- /dev/null +++ b/src/cmpstr.c++ @@ -0,0 +1,174 @@ +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include "xtalutil.h" + +char *helpstring="Insert more help here"; + +int equivalent_mod_cell(const rVector3d &a, const rVector3d &b, const rMatrix3d &inv_cell, Real tol) { + rVector3d frac_a=inv_cell*a; + rVector3d frac_b=inv_cell*b; + rVector3d delta=frac_a-frac_b; + for (int i=0; i<3; i++) { + delta(i)=cylinder_norm(delta(i)); + } + return (norm(delta) &atom_pos, const rVector3d &pos, const rMatrix3d &inv_cell, Real tol) { + for (int i=0; i *pmatches, const Structure &str1, const Structure &str2_, Real ftol, Real vtol, Real ltol) { + Structure str2; + + Real ratio=fabs(det(str1.cell)/det(str2_.cell)); + int lonratio=max((int)round(ratio*(1-vtol)),1); + int hinratio=max((int)round(ratio*(1+vtol)),1); + for (int nratio=lonratio; nratio<=hinratio; nratio++) { + Real scale=pow(ratio/nratio,1./3.); + str2.cell=str2_.cell*scale; + str2.atom_pos.resize(str2_.atom_pos.get_size()); + str2.atom_type=str2_.atom_type; + for (int at=0; atresize(str2.atom_pos.get_size()); + zero_array(pmatches); + + rVector3d len1; + for (int i=0; i<3; i++) {len1(i)=norm(str1.cell.get_column(i));} + LatticePointIterator lp0(str2.cell); + for (; norm(lp0)<=len1(0)*(1.+2.*ltol); lp0++) { + // cout << "0:" << (rVector3d)lp0 << endl; + if (fabs(norm(lp0)-len1(0))0. ) { + Structure rstr1; + rstr1.cell.set_column(0,lp0); + rstr1.cell.set_column(1,lp1); + rstr1.cell.set_column(2,lp2); + rstr1.atom_pos.resize(str1.atom_pos.get_size()); + rstr1.atom_type.resize(str1.atom_pos.get_size()); + rMatrix3d rot=rstr1.cell*(!str1.cell); + for (int at=0; atget_size(); at++) { + if ((*pmatches)(at)==nratio) break; + } + if (atget_size()) { + return 1; + } + } + } + } + } + } + } + } + } + } + } + } + } + return 0; +} + +int main(int argc, char *argv[]) { + // parsing command line. See getvalue.hh for details; + char *str1filename="str1.out"; + char *str2filename="str2.out"; + Real ftol=1e-2; + Real vtol=0.25; + Real ltol=0.25; + + int sigdig=5; + int dohelp=0; + int dummy=0; + AskStruct options[]={ + {"","CoMPare STRuctures " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-s1","Input file defining the lattice (defaults: str1.out)",STRINGVAL,&str1filename}, + {"-s2","Input file defining the structure (default: str2.out)",STRINGVAL,&str2filename}, + {"-ft","Fractional Tolerance",REALVAL,&ftol}, + {"-vt","Volume Tolerance",REALVAL,&vtol}, + {"-lt","Length Tolerance",REALVAL,<ol}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + cout.setf(ios::fixed); + cout.precision(sigdig); + + Array label; + Structure str1; + { + Array labellookup; + rMatrix3d axes; + ifstream latfile(str1filename); + if (!latfile) ERRORQUIT("Unable to open lattice file"); + parse_lattice_file(&str1.cell, &str1.atom_pos, &str1.atom_type, &labellookup, &label, latfile, &axes); + wrap_inside_cell(&str1.atom_pos,str1.atom_pos,str1.cell); + for (int at=0; at matches; + if (struct_compare(&matches,str1,str2,ftol,vtol,ltol)) { + cout << matches << endl << str1.atom_type.get_size() << endl << str2.atom_type.get_size() << endl; + } + else { + cout << "No_match" << endl; + } +} diff --git a/src/cna.c++ b/src/cna.c++ new file mode 100644 index 0000000..dc13ef0 --- /dev/null +++ b/src/cna.c++ @@ -0,0 +1,267 @@ +#include +#include "xtalutil.h" +#include "parse.h" +#include "getvalue.h" + +int find_shell(const Array &cutoff, Real r) { + for (int s=0; sr) return s; + } + return cutoff.get_size(); +} + +class FindSpan { + rVector3d threshold; + rMatrix3d icell; +public: + FindSpan(const rMatrix3d &cell, Real rmax): threshold(), icell() { + icell=!cell; + rMatrix3d rcell=~icell; + for (int i=0; i<3; i++) { + threshold(i)=rmax*norm(rcell.get_column(i))+zero_tolerance; + } + } + void get_span(iVector3d *pminc, iVector3d *pmaxc, const rVector3d pos) { + rVector3d f=icell*pos; + for (int i=0; i<3; i++) { + (*pminc)(i)=min((int)(floor(f(i)-threshold(i))),0); + (*pmaxc)(i)=max((int)(floor(f(i)+threshold(i))),0); + } + } +}; + +class AtomAndType { +public: + rVector3d pos; + int type; + int index; + AtomAndType(void): pos() {} + AtomAndType(const AtomAndType &a): pos(a.pos), type(a.type), index(a.index) {} + AtomAndType(const rVector3d &_pos, int _type, int _index): pos(_pos), type(_type), index(_index) {} +}; + +void calc_pair_corr(Array *pcorr, const Structure &str, Real rmax) { + Real nb=(Real)(pcorr->get_size()-1)-zero_tolerance; + FindSpan find_span(str.cell,rmax); + for (int i=0; i c(minc,maxc); + for (; c; c++) { + for (int j=0; jzero_tolerance && r<=rmax) { + int b=(int)(r*nb/rmax); + (*pcorr)(b)+=1./sqr(r); + } + } + } + } +} + +void smooth_pair_corr(Array *psmocorr, const Array &corr, Real width) { + Real h=2.*width; + Real k=1./sqrt(2.*M_PI)/width; + psmocorr->resize(corr.get_size()); + zero_array(psmocorr); + for (int i=0; i *pcutoff, const Array &corr) { + LinkedList cutofflist; + for (int i=1; icorr(i) && corr(i+1)>corr(i)) { + cutofflist << new Real((Real)i); + } + } + LinkedList_to_Array(pcutoff,cutofflist); +} + +int array_order(const Array &a, const Array &b, int start) { + for (int i=start; ib(i)) return 1; + } + return 0; +} + +void common_neighbor_analysis(LinkedList > *pall_common_neighbor, const Structure &str, const Array &cutoff, int shell, int cshell) { + Array > neighbor_list(str.atom_pos.get_size()); + Real rmax=cutoff(shell); + FindSpan find_span(str.cell,rmax); + for (int i=0; i c(minc,maxc); + for (; c; c++) { + for (int j=0; jzero_tolerance && r<=rmax) { + neighbor_list(i) << new AtomAndType(x,str.atom_type(j),j); + //cerr << " " << x << endl; + } + } + } + } + Array done(str.atom_pos.get_size()); + zero_array(&done); + for (int i=0; i rj(neighbor_list(i)); + for (; rj; rj++) { + if (!done(rj->index)) { + LinkedList common_neighbor; + common_neighbor << new AtomAndType(str.atom_pos(i),str.atom_type(i),i); + //cerr << str.atom_pos(i) << endl; + common_neighbor << new AtomAndType(*rj); + //cerr << rj->pos << endl; + Real crmax=cutoff(cshell); + LinkedListIterator rk(neighbor_list(i)); + for (; rk; rk++) { + if (norm(rk->pos - str.atom_pos(i))<=crmax) { + Real d=norm(rk->pos - rj->pos); + if ( d>zero_tolerance && d<=crmax) { + common_neighbor << new AtomAndType(*rk); + //cerr << " " << rk->pos << endl; + } + } + } + Array cn; + LinkedList_to_Array(&cn,common_neighbor); + Array cn_code(1+2+2+cutoff.get_size()+1); + zero_array(&cn_code); + cn_code(0)=1; + cn_code(1)=find_shell(cutoff,norm(cn(0).pos-cn(1).pos))+1; + cn_code(2)=cn.get_size()-2; + for (int a=2; atype; + if (cn_code(k) > icn(*pall_common_neighbor); + for (; icn; icn++) { + if (array_order(*icn,cn_code,1)!=-1) break; + } + if (!icn) { + pall_common_neighbor->add(new Array(cn_code),icn); + } else { + if (array_order(*icn,cn_code,1)==0) { + (*icn)(0)++; + } + else { + pall_common_neighbor->add(new Array(cn_code),icn); + } + } + } + } + } +} + +int main(int argc, char *argv[]) { + Real rmax=0.; + int n_bin=500; + Real width=0.5; + int shell=1; + int cshell=1; + AskStruct options[]={ + {"","Common Neighbor Analysis code, by Axel van de Walle",TITLEVAL,NULL}, + {""," First run with -r option, copy shells.out to shells.in and then run with -s",TITLEVAL,NULL}, + {"-r","Maximum radius for calculating pair correlations",REALVAL,&rmax}, + {"-w","Width for smoothing pair correlation",REALVAL,&width}, + {"-s","Maximum shell for neighbor",INTVAL,&shell}, + {"-cs","Maximum shell for Common Neighbor Analysis",INTVAL,&cshell} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (shell=cs"); + if (rmax>0.) { + Array > site_type_list; + Array atom_label; + istream &infile=cin; + Array corr(n_bin); + zero_array(&corr); + while (!infile.eof()) { + Structure str; + parse_lattice_file(&(str.cell), &(str.atom_pos), &(str.atom_type), &site_type_list, &atom_label, infile); + wrap_inside_cell(&(str.atom_pos), str.atom_pos, str.cell); + fix_atom_type(&str, site_type_list); + calc_pair_corr(&corr, str, rmax); + skip_to_next_structure(infile); + } + Array smocorr; + Real dr=rmax/((Real)n_bin-1.); + smooth_pair_corr(&smocorr, corr, width/dr); + { + ofstream file("pc.out"); + for (int i=0; i cutoff; + find_valleys(&cutoff, smocorr); + { + ofstream file("shells.out"); + for (int i=0; i cutoff; + { + ifstream file("shells.in"); + if (!file) ERRORQUIT("Unable to open shells.in"); + LinkedList cutofflist; + while (!file.eof()) { + Real c; + file >> c; + cutofflist << new Real(c); + skip_delim(file); + } + LinkedList_to_Array(&cutoff,cutofflist); + } + Array > site_type_list; + Array atom_label; + LinkedList > all_common_neighbor; + istream &infile=cin; + while (!infile.eof()) { + Structure str; + parse_lattice_file(&(str.cell), &(str.atom_pos), &(str.atom_type), &site_type_list, &atom_label, infile); + wrap_inside_cell(&(str.atom_pos), str.atom_pos, str.cell); + fix_atom_type(&str, site_type_list); + common_neighbor_analysis(&all_common_neighbor, str, cutoff, shell, cshell); + skip_to_next_structure(infile); + } + Real total=0; + LinkedListIterator > icn(all_common_neighbor); + for (; icn; icn++) { + total+=(Real)(*icn)(0); + } + icn.init(all_common_neighbor); + for (; icn; icn++) { + int i; + for (i=1; iget_size()-2; i++) { + cout << resetiosflags(ios::fixed) << fabs((*icn)(i)) << " "; + } + cout << atom_label((*icn)(i)) << " " << atom_label((*icn)(i+1)) << " "; + cout << setiosflags(ios::fixed) << setprecision(6) << (Real)((*icn)(0))/total << endl; + } + } +} diff --git a/src/corrHALF.c++ b/src/corrHALF.c++ new file mode 100644 index 0000000..3f73af1 --- /dev/null +++ b/src/corrHALF.c++ @@ -0,0 +1,34 @@ +#include "calccorr.h" + +// This is a skeleton to show how to include user-defined cluster functions; +// look for XXXX and replace it by the (internal) name of this cluster function type; +// look for xxxx abd replace it by the user-visible name of this cluster function type (it will be invoked by the -crf=xxxx option); +// look for myexpression and replace it by your own definition of the cluster functions; +// save this file under a new name, say corrXXXX.c++ ; +// add corrXXXX.o to the makefile on the line PLUGINCORR ; +// type "make"; + +class HALFCorrFuncTable: public CorrFuncTable { + public: + HALFCorrFuncTable(): CorrFuncTable() {} + void init(int comp) { + Array > > &table=*this; + table.resize(comp-1); + for (int m=2; m<=comp; m++) { + table(m-2).resize(m-1); + for (int t=0; t HALFCorrFuncPlugIn("half"); diff --git a/src/corrdump.c++ b/src/corrdump.c++ new file mode 100644 index 0000000..f8a1ee7 --- /dev/null +++ b/src/corrdump.c++ @@ -0,0 +1,486 @@ +#include +#include "parse.h" +#include "clus_str.h" +#include "getvalue.h" +#include "ctype.h" +#include "version.h" +#include "plugin.h" + +#define MAXMULTIPLET 6 + +extern char *helpstring; + +int main(int argc, char *argv[]) { + char *delim="\t"; + int dohelp=0; + Array maxd(MAXMULTIPLET+1); + zero_array(&maxd); + char *latticefilename="lat.in"; + int readocc=0; + char *strfilename="str.out"; + char *clusterfilename="clusters.out"; + char *dilutefilename=""; + int doconc=0; + int doconcmat=0; + int fastalgo=0; + int skiprel=0; + int dosym=0; + int doclus=0; + int doclusatom=0; + int readclusters=0; + int sigdig=5; + int noempty=0; + int nopoint=0; + int noclus=0; + int rndcorr=0; + char *writeunrel=""; + char *ecifile=""; + int multincl=0; + char *corrfunc_label="trigo"; + int printnum=0; + AskStruct options[]={ + {"","CORRelation DUMPer " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-2","Maximum distance between two points within a pair",REALVAL,&maxd(2)}, + {"-3","Maximum distance between two points within a triplet",REALVAL,&maxd(3)}, + {"-4","Maximum distance between two points within a quadruplet",REALVAL,&maxd(4)}, + {"-5","Maximum distance between two points within a quintuplet",REALVAL,&maxd(5)}, + {"-6","Maximum distance between two points within a sextuplet",REALVAL,&maxd(6)}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latticefilename}, + {"-s","Input file defining the structure (default: str.out)",STRINGVAL,&strfilename}, + {"-pc","Print composition only",BOOLVAL,&doconc}, + {"-pcm","Print composition matrix only",BOOLVAL,&doconcmat}, + {"-fast","Use fast algo to calculate correlations of 'simple' supercells",BOOLVAL,&fastalgo}, + {"-skipr","Skip algorithm robust to relaxations",BOOLVAL,&skiprel}, + {"-sym","Just find space group",BOOLVAL,&dosym}, + {"-clus","Just find clusters",BOOLVAL,&doclus}, + {"-c","Read cluster file instead of writing it",BOOLVAL,&readclusters}, + {"-cf","File name of the cluster file (default: clusters.out)",STRINGVAL,&clusterfilename}, + {"-z","Tolerance for finding symmetry operations (default: 1e-3)",REALVAL,&zero_tolerance}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-noe","Do not include empty cluster",BOOLVAL,&noempty}, + {"-nop","Do not include point cluster(s)",BOOLVAL,&nopoint}, + {"-noc","Do not include any cluster(s)",BOOLVAL,&noclus}, + {"-eca","Calculate Energy of Clusters of Atoms",BOOLVAL,&doclusatom}, + {"-wu","Write Unrelaxed structure into specified file",STRINGVAL,&writeunrel}, + {"-rnd","Print correlation of the random state of the same composition as the input structure",BOOLVAL,&rndcorr}, + {"-eci","Predict quantity using ECI in specified file",STRINGVAL,&ecifile}, + {"-mi","Multiplicities are already included in ECI file",BOOLVAL,&multincl}, +// {"-dil","Input file defining the dilute sites",STRINGVAL,&dilutefilename}, + {"-crf","Select correlation functions (default: trigo)",STRINGVAL,&corrfunc_label}, + {"-nb","Print structure number",BOOLVAL,&printnum}, + {"-ro","Read lattice file containing occupation variables (this code does not make use of them)",BOOLVAL,&readocc} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + Structure lattice; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream latticefile(latticefilename); + if (!latticefile) ERRORQUIT("Unable to open lattice file"); + if (readocc) { + Array > occ; + parse_rndstr_file(&lattice.cell, &lattice.atom_pos, &lattice.atom_type, &occ, &labellookup, &label, latticefile, &axes); + } + else { + parse_lattice_file(&lattice.cell, &lattice.atom_pos, &lattice.atom_type, &labellookup, &label, latticefile, &axes); + } + wrap_inside_cell(&lattice.atom_pos,lattice.atom_pos,lattice.cell); + } + SpaceGroup spacegroup; + spacegroup.cell=lattice.cell; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,lattice.cell,lattice.atom_pos,lattice.atom_type); + if (contains_pure_translations(spacegroup.point_op,spacegroup.trans)) { + cerr << "Warning: unit cell is not primitive." << endl; + } + { + ofstream symfile("sym.out"); + symfile.setf(ios::fixed); + symfile.precision(sigdig); + symfile << spacegroup.point_op.get_size() << endl; + for (int i=0; i0) { + LinkedList > dil_list; + rMatrix3d icell=!lat_func.cell; + Array done(lat_func.atom_pos.get_size()); + zero_array(&done); + ifstream dilfile(dilutefilename); + if (!dilfile) ERRORQUIT("Unable to open dilute sites file."); + while (!dilfile.eof()) { + AutoString tmp; + get_string(&tmp,dilfile,"\n"); + if (dilfile.eof()) break; + ifstream line(tmp); + rVector3d pos; + line >> pos; + for (int op=0; op clusterlist; + if (doconc || doconcmat) { + ofstream file("atoms.out"); + for (int i=0; i0) { + if (!readclusters && !noclus) { + int maxp=MAXMULTIPLET; + while (maxd(maxp)==0 && maxp>0) maxp--; + if (maxp==0) ERRORQUIT("Specify -2=range -3=range etc."); + Array pclusterbanks(maxp+1); + Array nbcluster(maxp+1); + pclusterbanks(1)=new MultiClusterBank(lat_func,1,spacegroup); + nbcluster(1)=pclusterbanks(1)->get_cluster_list().get_size(); + for (int m=2; m<=maxp; m++) { + pclusterbanks(m)=new MultiClusterBank(lat_func,m,spacegroup); + if (maxd(m)>0) { + while (get_length_quick((*pclusterbanks(m))->clus)get_current_index(); + } + if (! noempty) clusterlist << new MultiCluster(0); + for (int m=(nopoint ? 2 : 1); m<=maxp; m++) { + pclusterbanks(m)->reset(); + for (int c=0; c icluster(clusterlist); + for ( ; icluster; icluster++) { + int mult=calc_multiplicity(*icluster, spacegroup.cell, spacegroup.point_op, spacegroup.trans); + clusterfile << mult << endl; + clusterfile << get_length_quick(icluster->clus) << endl; + clusterfile << icluster->clus.get_size() << endl; + for (int i=0; iclus.get_size(); i++) { + clusterfile << ((!axes)*(icluster->clus(i))) << " " << icluster->site_type(i) << " " << icluster->func(i) << endl; + } + clusterfile << endl; + } + } + } + else { + ifstream clusterfile(clusterfilename); + if (!clusterfile) ERRORQUIT("Unable to open cluster file"); + read_clusters_and_eci(&clusterlist,NULL,clusterfile,clusterfile,axes); + } + if (doclus) return 0; + } + if (strlen(dilutefilename)>0) return 0; + + LinkedList > eq_clusterlist; + LinkedListIterator icluster(clusterlist); + for ( ; icluster; icluster++) { + Array *pmulticlus=new Array; + find_equivalent_clusters(pmulticlus, *icluster, spacegroup.cell, spacegroup.point_op, spacegroup.trans); + eq_clusterlist << pmulticlus; + } + + // initialize a table of correlation functions; + if (!check_plug_in(CorrFuncTable(),corrfunc_label)) { + ERRORQUIT("Aborting"); + } + CorrFuncTable *pcorrfunc=GenericPlugIn::create(corrfunc_label); + // pcorrfunc->init(max(lat_func.atom_type)); + pcorrfunc->init_from_site_type_list(labellookup); + + if (doconcmat) { + Array2d corr_to_fullconc; // converts correlation to redundant concentration; + Array2d corr_to_conc; // converts correlation to non redundant concentration; + Array2d conc_to_fullconc; // converts nonredundant concentration to full redundant concentration; + Array conc_to_fullconc_c; // constant terms of previous matrix; + calc_corr_to_conc(&corr_to_fullconc,lattice,labellookup,spacegroup,*pcorrfunc); + extract_nonredundant(&corr_to_conc,&conc_to_fullconc,&conc_to_fullconc_c, corr_to_fullconc); + cout.setf(ios::fixed); + cout.precision(sigdig); + cout << "corr_to_fullconc" << endl; + cout << corr_to_fullconc << endl; + cout << "corr_to_conc" << endl; + cout << corr_to_conc << endl; + cout << "conc_to_fullconc" << endl; + cout << conc_to_fullconc << endl; + cout << "conc_to_fullconc_c" << endl; + cout << conc_to_fullconc_c << endl; + return 0; + } + + Array eci; + if (strlen(ecifile)>0) { + ifstream file(ecifile); + if (!file) ERRORQUIT("Unable to open ECI file."); + LinkedList ecilist; + while (skip_delim(file)) { + Real e; + file >> e; + ecilist << new Real(e); + } + LinkedList_to_Array(&eci,ecilist); + if (clusterlist.get_size()!=eci.get_size()) ERRORQUIT("Number of ECI does not match number of clusters."); + } + + if (doclusatom) { + rMatrix3d icell=!lattice_only.cell; + if (strlen(ecifile)==0) {ERRORQUIT("Please specify -eci=[ecifile].");} + Cluster lastclus; + LinkedListIterator icluster(clusterlist); + for (; icluster; icluster++) { + if (icluster->clus.get_size()>0 && !spacegroup(icluster->clus,lastclus)) { + Array nb_species(icluster->clus.get_size()); + for (int j=0; jsite_type(j)+2; + } + MultiDimIterator > occ(nb_species); + for (; occ; occ++) { + Real energy=0.; + LinkedListIterator > ipcluster(eq_clusterlist); + for (int ieci=0; ipcluster; ieci++, ipcluster++) { + Real corr=calc_correlation_atomcluster(icluster->clus,occ,*ipcluster,spacegroup.cell,*pcorrfunc); + if ((*ipcluster)(0).clus.get_size()==0) { + corr*=(Real)(icluster->clus.get_size())/(Real)(lattice_only.atom_pos.get_size()); + } + energy+=corr*eci(ieci); + } + // cout << icluster->clus << endl << (Array &)occ << endl << energy << endl; + Array &aocc=(Array &)occ; + for (int i=0; iclus(i),icell))(aocc(i))); + } + cout << " " << get_length_quick(icluster->clus) << " " << energy << endl; + } + } + lastclus=icluster->clus; + } + exit(0); + } + + + Structure str; + ifstream strfile(strfilename); + if (!strfile) ERRORQUIT("Unable to open structure file"); + int strnum=1; + while (!strfile.eof()) { + parse_structure_file(&str.cell,&str.atom_pos,&str.atom_type,label,strfile); + skip_to_next_structure(strfile); + wrap_inside_cell(&str.atom_pos,str.atom_pos,str.cell); + + ofstream logfile("corrdump.log"); + logfile.setf(ios::fixed); + logfile.precision(sigdig); + rMatrix3d supercell=(!lattice.cell)*str.cell; + rMatrix3d rounded_supercell=to_real(to_int(supercell)); + rMatrix3d transfo=lattice.cell*rounded_supercell*(!str.cell); + logfile << "strain=" << endl << (FixedMatrix &)transfo << endl; + str.cell=transfo*str.cell; + for (int i=0; i spin(ideal_str.atom_type.get_size()); + zero_array(&spin); + + for (int i=0; i0) { + ofstream file(writeunrel); + if (!file) {ERRORQUIT("Unable to write unrelaxed structure");} + Structure full_ideal_str; + full_ideal_str.cell=ideal_str.cell; + find_all_atom_in_supercell(&full_ideal_str.atom_pos,&full_ideal_str.atom_type, lattice.atom_pos,lattice.atom_type,lattice.cell, full_ideal_str.cell); + int at0=0; + for (int at=0; at1) { + if (norm(full_ideal_str.atom_pos(at)-ideal_str.atom_pos(at0))>zero_tolerance) {ERRORQUIT("Position mismatch in write unrelaxed feature");} + full_ideal_str.atom_type(at)=ideal_str.atom_type(at0); + at0++; + } + else { + full_ideal_str.atom_type(at)=0; + } + } + file.setf(ios::fixed); + file.precision(sigdig); + write_structure(full_ideal_str, lattice, labellookup, label, axes, file); + } + + cout.setf(ios::fixed); + // cout.setf(ios::showpos); + cout.precision(sigdig); + if (printnum) cout << strnum << delim; + strnum++; + Real pred=0.; + if (doconc) { + Array conc; + Structure cstr(ideal_str); + calc_concentration(&conc,lattice,labellookup,cstr); + for (int i=0; i pointcorr; + LinkedListIterator > ipcluster(eq_clusterlist); + for ( ; ipcluster; ipcluster++) { + if ((*ipcluster)(0).clus.get_size() > 1) break; + if ((*ipcluster)(0).clus.get_size()==1) { + pointcorr << new Real(calc_correlation(ideal_str, *ipcluster, spacegroup.cell, *pcorrfunc)); + } + } + int ieci=0; + LinkedListIterator icluster(clusterlist); + LinkedListIterator > ieqcluster(eq_clusterlist); + for ( ; icluster; icluster++, ieqcluster++, ieci++) { + Real rho=1.; + for (int s=0; sclus.get_size(); s++) { + LinkedListIterator ipcluster(clusterlist); + while (ipcluster->clus.get_size()==0) {ipcluster++;} + LinkedListIterator ipcorr(pointcorr); + while (1) { + if (ipcluster->site_type(0)==icluster->site_type(s) && ipcluster->func(0)==icluster->func(s)) { + if (equivalent_by_symmetry(ipcluster->clus(0),icluster->clus(s),spacegroup.cell,spacegroup.point_op,spacegroup.trans)) { + break; + } + } + ipcluster++; + ipcorr++; + } + rho*=(*ipcorr); + } + if (strlen(ecifile)>0) { + pred+=eci(ieci)*(multincl ? 1 : ieqcluster->get_size())*rho; + } + else { + if (!doconc) {cout << rho << delim;} + } + } + } + else { + int ieci=0; + LinkedListIterator > icluster(eq_clusterlist); + Tensor tab_str; + for ( ; icluster; icluster++, ieci++) { + Real rho; + if (fastalgo) { + rho=calc_correlation_fast(&tab_str, ideal_str,*icluster,lattice,*pcorrfunc); + } + else { + rho=calc_correlation(ideal_str, *icluster, spacegroup.cell, *pcorrfunc); + } + if (strlen(ecifile)>0) { + pred+=eci(ieci)*(multincl ? 1 : icluster->get_size())*rho; + } + else { + if (!doconc) {cout << rho << delim;} + } + } + } + if (strlen(ecifile)>0) { + cout << pred; + } + cout << endl; + } +} + diff --git a/src/corrdumphelp.c++ b/src/corrdumphelp.c++ new file mode 100644 index 0000000..a892725 --- /dev/null +++ b/src/corrdumphelp.c++ @@ -0,0 +1,169 @@ +char *helpstring="" +"->What does this program do?\n" +"\n" +"1) It reads the lattice file (specified by the -l option).\n" +"\n" +"2) It determines the space group of this lattice and\n" +" writes it to the sym.out file.\n" +"\n" +"3) It finds all symmetrically distinct clusters that satisfy the\n" +" conditions specified by the options -2 through -6.\n" +" For instance, if -2=2.1 -3=1.1 is specified,\n" +" only pairs shorter than 2.1 units and triplets containing\n" +" no pairs longer than 1.1 will be selected.\n" +"\n" +"4) It writes all clusters found to clusters.out.\n" +" If the -c option is specified, clusters are read from clusters.out instead.\n" +"\n" +"5) It reads the structure file (specified by the -s option).\n" +"\n" +"6) It determines, for that structure, the correlations associated with all\n" +" the clusters chosen earlier.\n" +" This information is then output on one line, in the same order as in the\n" +" clusters.out file. See below for conventions used to calculate correlations.\n" +"\n" +"7) It writes the files corrdump.log containting the list of all adjustements\n" +" needed to map the (possibly relaxed) structure onto the ideal lattice.\n" +"\n" +"->File formats\n" +"\n" +"Lattice and structure files\n" +"\n" +"Both the lattice and the structure files have a similar structure.\n" +"First, the coordinate system a,b,c is specified, either as\n" +"[a] [b] [c] [alpha] [beta] [gamma]\n" +"or as:\n" +"[ax] [ay] [az]\n" +"[bx] [by] [bz]\n" +"[cx] [cy] [cz]\n" +"Then the lattice vectors u,v,w are listed, expressed in the coordinate system\n" +"just defined:\n" +"[ua] [ub] [uc]\n" +"[va] [vb] [vc]\n" +"[wa] [wb] [wc]\n" +"Finally, atom positions and types are given, expressed in the same coordinate system\n" +"as the lattice vectors:\n" +"[atom1a] [atom1b] [atom1c] [atom1type]\n" +"[atom2a] [atom2b] [atom2c] [atom1type]\n" +"etc.\n" +"\n" +"In the lattice file:\n" +"-The atom type is a comma-separated list of the atomic\n" +" symbols of the atoms that can sit the lattice site.\n" +"-The first symbol listed is assigned a spin of -1.\n" +"-When only one symbol is listed, this site is ignored for the purpose\n" +" of calculating correlations, but not for determining symmetry.\n" +"-The atomic symbol 'Vac' is used to indicate a vacancy.\n" +"\n" +"In the structure file:\n" +"-The atom type is just a single atomic symbol\n" +" (which, of course, has to be among the atomic symbols given in the\n" +" lattice file).\n" +"-Vacancies do not need to be specified.\n" +"\n" +"Examples\n" +"\n" +"The fcc lattice of the Cu-Au system:\n" +"1 1 1 90 90 90\n" +"0 0.5 0.5\n" +"0.5 0 0.5\n" +"0.5 0.5 0\n" +"0 0 0 Cu,Au\n" +"\n" +"The Cu3Au L1_2 structure:\n" +"1 1 1 90 90 90\n" +"1 0 0\n" +"0 1 0\n" +"0 0 1\n" +"0 0 0 Au\n" +"0.5 0.5 0 Cu\n" +"0.5 0 0.5 Cu\n" +"0 0.5 0.5 Cu\n" +"\n" +"A lattice for the Li_x Co_y Al_(1-y) O_2 system:\n" +"0.707 0.707 6.928 90 90 120\n" +" 0.3333 0.6667 0.3333\n" +"-0.6667 -0.3333 0.3333\n" +" 0.3333 -0.3333 0.3333\n" +" 0 0 0 Li,Vac\n" +" 0.3333 0.6667 0.0833 O\n" +" 0.6667 0.3333 0.1667 Co,Al\n" +" 0 0 0.25 O\n" +"\n" +"Symmetry file format (sym.out)\n" +"\n" +"[number of symmetry operations]\n" +"\n" +"3x3 matrix: point operation\n" +"\n" +"1x3 matrix: translation\n" +"\n" +"repeat, etc.\n" +"\n" +"Note that if you enter more than one unit cell of the lattice,\n" +"sym.out will contain some pure translations as symmetry elements.\n" +"\n" +"Cluster file format (clusters.out)\n" +"\n" +"for each cluster:\n" +"[multiplicity]\n" +"[length of the longest pair within the cluster]\n" +"[number of points in cluster]\n" +"[coordinates of 1st point] [number of possible species-2] [cluster function]\n" +"[coordinates of 2nd point] [number of possible species-2] [cluster function]\n" +"etc.\n" +"\n" +"repeat, etc.\n" +"\n" +"(Multiplicity and length are ignored when reading in the clusters.out file.)\n" +"For each 'point' the following convention apply\n" +"-The coordinates are expressed in the coordinate system given in\n" +" the first line (or the first 3 lines) of the lat.in file.\n" +"-The 'number of possible species' distinguishes between binaries, ternaries, etc...\n" +" Since each site can accomodate any number of atom types,\n" +" this is specified for each point of the cluster.\n" +"-In multicomponent system, the cluster function are numbered from 0 to number of possible species-2.\n" +"In the simple of a binary system [number of possible species-2] [cluster function] are just 0 0.\n" +"For a ternary, the possible values are 1 0 and 1 1.\n" +"All the utilities that are not yet multicomponent-ready just ignore the entries [number of possible species-2] [cluster function].\n" +"\n" +"Convention used to calculate the correlations:\n" +" The cluster functions in a m-component system are defined as\n" +" function '0' : -cos(2*PI* 1 *s/m)\n" +" function '1' : -sin(2*PI* 1 *s/m)\n" +" .\n" +" .\n" +" .\n" +" -cos(2*PI*[m/2]*s/m)\n" +" -sin(2*PI*[m/2]*s/m) <--- the last sin( ) is omitted if m is even\n" +" where the occupation variable s can take any values in {0,...,m-1}\n" +" and [...] denotes the 'round down' operation.\n" +" Note that, these functions reduce to the single function (-1)^s in the binary case.\n" +"\n" +"Special options:\n" +"\n" +"-sym: Just find the space group and then abort.\n" +"-clus: Just find space group and clusters and then abort.\n" +"-z: To find symmetry operations, atoms are considered to lie on\n" +" top of one another when they are less than this much apart.\n" +"-sig: Number of significant digits printed.\n" +"\n" +"\n" +"->Cautions\n" +"\n" +"When vacancies are specified, the program may not be able to warn\n" +"you that the structure and the lattice just don't fit.\n" +"Carefully inspect the corrdump.log file!\n" +"\n" +"If the structure has significant cell shape relaxations, the program\n" +"will be unable to find how it relates to the ideal lattice.\n" +"The problem gets worse as the supercell size of the structure gets\n" +"bigger.\n" +"\n" +"There is no limit on how far an atom in a structure can be from\n" +"the ideal lattice site. The program first finds the atom that can\n" +"be the most unambiguously assigned to a lattice site. It then\n" +"finds the next best assignement and so on. This is actually a\n" +"pretty robust way to do this. But keep in mind that the -z option\n" +"does NOT control this process.\n" +; diff --git a/src/corrdumphelp.hlp b/src/corrdumphelp.hlp new file mode 100644 index 0000000..fe3883b --- /dev/null +++ b/src/corrdumphelp.hlp @@ -0,0 +1,169 @@ +->What does this program do? + +1) It reads the lattice file (specified by the -l option). + +2) It determines the space group of this lattice and + writes it to the sym.out file. + +3) It finds all symmetrically distinct clusters that satisfy the + conditions specified by the options -2 through -6. + For instance, if -2=2.1 -3=1.1 is specified, + only pairs shorter than 2.1 units and triplets containing + no pairs longer than 1.1 will be selected. + +4) It writes all clusters found to clusters.out. + If the -c option is specified, clusters are read from clusters.out instead. + +5) It reads the structure file (specified by the -s option). + +6) It determines, for that structure, the correlations associated with all + the clusters chosen earlier. + This information is then output on one line, in the same order as in the + clusters.out file. See below for conventions used to calculate correlations. + +7) It writes the files corrdump.log containting the list of all adjustements + needed to map the (possibly relaxed) structure onto the ideal lattice. + +->File formats + +Lattice and structure files + +Both the lattice and the structure files have a similar structure. +First, the coordinate system a,b,c is specified, either as +[a] [b] [c] [alpha] [beta] [gamma] +or as: +[ax] [ay] [az] +[bx] [by] [bz] +[cx] [cy] [cz] +Then the lattice vectors u,v,w are listed, expressed in the coordinate system +just defined: +[ua] [ub] [uc] +[va] [vb] [vc] +[wa] [wb] [wc] +Finally, atom positions and types are given, expressed in the same coordinate system +as the lattice vectors: +[atom1a] [atom1b] [atom1c] [atom1type] +[atom2a] [atom2b] [atom2c] [atom1type] +etc. + +In the lattice file: +-The atom type is a comma-separated list of the atomic + symbols of the atoms that can sit the lattice site. +-In a binary, the first symbol listed is assigned a spin of -1. + In general, ordering of the atom symbol corresponds to value of s=0,1,... in the table + 'Convention used to calculate the correlations' below. +-When only one symbol is listed, this site is ignored for the purpose + of calculating correlations, but not for determining symmetry. +-The atomic symbol 'Vac' or 'Va' is used to indicate a vacancy. + +In the structure file: +-The atom type is just a single atomic symbol + (which, of course, has to be among the atomic symbols given in the + lattice file). +-Vacancies do not need to be specified. + +Examples + +The fcc lattice of the Cu-Au system: +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 Cu,Au + +The Cu3Au L1_2 structure: +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 +0 0 0 Au +0.5 0.5 0 Cu +0.5 0 0.5 Cu +0 0.5 0.5 Cu + +A lattice for the Li_x Co_y Al_(1-y) O_2 system: +0.707 0.707 6.928 90 90 120 + 0.3333 0.6667 0.3333 +-0.6667 -0.3333 0.3333 + 0.3333 -0.3333 0.3333 + 0 0 0 Li,Vac + 0.3333 0.6667 0.0833 O + 0.6667 0.3333 0.1667 Co,Al + 0 0 0.25 O + +Symmetry file format (sym.out) + +[number of symmetry operations] + +3x3 matrix: point operation + +1x3 matrix: translation + +repeat, etc. + +Note that if you enter more than one unit cell of the lattice, +sym.out will contain some pure translations as symmetry elements. + +Cluster file format (clusters.out) + +for each cluster: +[multiplicity] +[length of the longest pair within the cluster] +[number of points in cluster] +[coordinates of 1st point] [number of possible species-2] [cluster function] +[coordinates of 2nd point] [number of possible species-2] [cluster function] +etc. + +repeat, etc. + +(Multiplicity and length are ignored when reading in the clusters.out file.) +For each 'point' the following convention apply +-The coordinates are expressed in the coordinate system given in + the first line (or the first 3 lines) of the lat.in file. +-The 'number of possible species' distinguishes between binaries, ternaries, etc... + Since each site can accomodate any number of atom types, + this is specified for each point of the cluster. +-In multicomponent system, the cluster function are numbered from 0 to number of possible species-2. +In the simple of a binary system [number of possible species-2] [cluster function] are just 0 0. +For a ternary, the possible values are 1 0 and 1 1. +All the utilities that are not yet multicomponent-ready just ignore the entries [number of possible species-2] [cluster function]. + +Convention used to calculate the correlations: + The cluster functions in a m-component system are defined as + function '0' : -cos(2*PI* 1 *s/m) + function '1' : -sin(2*PI* 1 *s/m) + . + . + . + -cos(2*PI*[m/2]*s/m) + -sin(2*PI*[m/2]*s/m) <--- the last sin( ) is omitted if m is even + where the occupation variable s can take any values in {0,...,m-1} + and [...] denotes the 'round down' operation. + Note that, these functions reduce to the single function (-1)^s in the binary case. + +Special options: + +-sym: Just find the space group and then abort. +-clus: Just find space group and clusters and then abort. +-z: To find symmetry operations, atoms are considered to lie on + top of one another when they are less than this much apart. +-sig: Number of significant digits printed. + + +->Cautions + +When vacancies are specified, the program may not be able to warn +you that the structure and the lattice just don't fit. +Carefully inspect the corrdump.log file! + +If the structure has significant cell shape relaxations, the program +will be unable to find how it relates to the ideal lattice. +The problem gets worse as the supercell size of the structure gets +bigger. + +There is no limit on how far an atom in a structure can be from +the ideal lattice site. The program first finds the atom that can +be the most unambiguously assigned to a lattice site. It then +finds the next best assignement and so on. This is actually a +pretty robust way to do this. But keep in mind that the -z option +does NOT control this process. diff --git a/src/corrdumpvac.c++ b/src/corrdumpvac.c++ new file mode 100644 index 0000000..0a1e3a1 --- /dev/null +++ b/src/corrdumpvac.c++ @@ -0,0 +1,416 @@ +#include +#include "parse.h" +#include "clus_str.h" +#include "getvalue.h" +#include "ctype.h" +#include "version.h" +#include "plugin.h" + +#define MAXMULTIPLET 6 + +extern char *helpstring; + +int main(int argc, char *argv[]) { + char *delim="\t"; + int dohelp=0; + Array maxd(MAXMULTIPLET+1); + zero_array(&maxd); + char *latticefilename="lat.in"; + char *strfilename="str.out"; + char *dilutefilename=""; + int doconc=0; + int doconcmat=0; + int dosym=0; + int doclus=0; + int readclusters=0; + int sigdig=5; + int noempty=0; + int nopoint=0; + int noclus=0; + int rndcorr=0; + char *writeunrel=""; + char *ecifile=""; + int multincl=0; + char *corrfunc_label="trigo"; + int printnum=0; + AskStruct options[]={ + {"","CORRelation DUMPer " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-2","Maximum distance between two points within a pair",REALVAL,&maxd(2)}, + {"-3","Maximum distance between two points within a triplet",REALVAL,&maxd(3)}, + {"-4","Maximum distance between two points within a quadruplet",REALVAL,&maxd(4)}, + {"-5","Maximum distance between two points within a quintuplet",REALVAL,&maxd(5)}, + {"-6","Maximum distance between two points within a sextuplet",REALVAL,&maxd(6)}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latticefilename}, + {"-s","Input file defining the structure (default: str.out)",STRINGVAL,&strfilename}, + {"-pc","Print composition only",BOOLVAL,&doconc}, + {"-pcm","Print composition matrix only",BOOLVAL,&doconcmat}, + {"-sym","Just find space group",BOOLVAL,&dosym}, + {"-clus","Just find clusters",BOOLVAL,&doclus}, + {"-c","Read clusters.out file instead of writing it",BOOLVAL,&readclusters}, + {"-z","Tolerance for finding symmetry operations (default: 1e-3)",REALVAL,&zero_tolerance}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-noe","Do not include empty cluster",BOOLVAL,&noempty}, + {"-nop","Do not include point cluster(s)",BOOLVAL,&nopoint}, + {"-noc","Do not include any cluster(s)",BOOLVAL,&noclus}, + {"-wu","Write Unrelaxed structure into specified file",STRINGVAL,&writeunrel}, + {"-rnd","Print correlation of the random state of the same composition as the input structure",BOOLVAL,&rndcorr}, + {"-eci","Predict quantity using ECI in specified file",STRINGVAL,&ecifile}, + {"-mi","Multiplicities are already included in ECI file",BOOLVAL,&multincl}, +// {"-dil","Input file defining the dilute sites",STRINGVAL,&dilutefilename}, + {"-crf","Select correlation functions (default: trigo)",STRINGVAL,&corrfunc_label}, + {"-nb","Print structure number",BOOLVAL,&printnum} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + Structure lattice; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream latticefile(latticefilename); + if (!latticefile) ERRORQUIT("Unable to open lattice file"); + parse_lattice_file(&lattice.cell, &lattice.atom_pos, &lattice.atom_type, &labellookup, &label, latticefile, &axes); + wrap_inside_cell(&lattice.atom_pos,lattice.atom_pos,lattice.cell); + } + SpaceGroup spacegroup; + spacegroup.cell=lattice.cell; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,lattice.cell,lattice.atom_pos,lattice.atom_type); + if (contains_pure_translations(spacegroup.point_op,spacegroup.trans)) { + cerr << "Warning: unit cell is not primitive." << endl; + } + { + ofstream symfile("sym.out"); + symfile.setf(ios::fixed); + symfile.precision(sigdig); + symfile << spacegroup.point_op.get_size() << endl; + for (int i=0; i0) { + LinkedList > dil_list; + rMatrix3d icell=!lat_func.cell; + Array done(lat_func.atom_pos.get_size()); + zero_array(&done); + ifstream dilfile(dilutefilename); + if (!dilfile) ERRORQUIT("Unable to open dilute sites file."); + while (!dilfile.eof()) { + AutoString tmp; + get_string(&tmp,dilfile,"\n"); + if (dilfile.eof()) break; + ifstream line(tmp); + rVector3d pos; + line >> pos; + for (int op=0; op clusterlist; + if (doconc || doconcmat) { + ofstream file("atoms.out"); + for (int i=0; i0) { + if (!readclusters) { + int maxp=MAXMULTIPLET; + while (maxd(maxp)==0 && maxp>0) maxp--; + if (maxp==0) ERRORQUIT("Specify -2=range -3=range etc."); + Array pclusterbanks(maxp+1); + Array nbcluster(maxp+1); + pclusterbanks(1)=new MultiClusterBank(lat_func,1,spacegroup); + nbcluster(1)=pclusterbanks(1)->get_cluster_list().get_size(); + for (int m=2; m<=maxp; m++) { + pclusterbanks(m)=new MultiClusterBank(lat_func,m,spacegroup); + if (maxd(m)>0) { + while (get_length_quick((*pclusterbanks(m))->clus)get_current_index(); + } + if (! noempty) clusterlist << new MultiCluster(0); + for (int m=(nopoint ? 2 : 1); m<=maxp; m++) { + pclusterbanks(m)->reset(); + for (int c=0; c icluster(clusterlist); + for ( ; icluster; icluster++) { + int mult=calc_multiplicity(*icluster, spacegroup.cell, spacegroup.point_op, spacegroup.trans); + clusterfile << mult << endl; + clusterfile << get_length_quick(icluster->clus) << endl; + clusterfile << icluster->clus.get_size() << endl; + for (int i=0; iclus.get_size(); i++) { + clusterfile << ((!axes)*(icluster->clus(i))) << " " << icluster->site_type(i) << " " << icluster->func(i) << endl; + } + clusterfile << endl; + } + } + } + else { + ifstream clusterfile("clusters.out"); + if (!clusterfile) ERRORQUIT("Unable to open clusters.out file"); + read_clusters_and_eci(&clusterlist,NULL,clusterfile,clusterfile,axes); + } + if (doclus) return 0; + } + if (strlen(dilutefilename)>0) return 0; + + LinkedList > eq_clusterlist; + LinkedListIterator icluster(clusterlist); + for ( ; icluster; icluster++) { + Array *pmulticlus=new Array; + find_equivalent_clusters(pmulticlus, *icluster, spacegroup.cell, spacegroup.point_op, spacegroup.trans); + eq_clusterlist << pmulticlus; + } + + // initialize a table of correlation functions; + if (!check_plug_in(CorrFuncTable(),corrfunc_label)) { + ERRORQUIT("Aborting"); + } + CorrFuncTable *pcorrfunc=GenericPlugIn::create(corrfunc_label); + // pcorrfunc->init(max(lat_func.atom_type)); + pcorrfunc->init_from_site_type_list(labellookup); + + if (doconcmat) { + Array2d corr_to_fullconc; // converts correlation to redundant concentration; + Array2d corr_to_conc; // converts correlation to non redundant concentration; + Array2d conc_to_fullconc; // converts nonredundant concentration to full redundant concentration; + Array conc_to_fullconc_c; // constant terms of previous matrix; + calc_corr_to_conc(&corr_to_fullconc,lattice,labellookup,spacegroup,*pcorrfunc); + extract_nonredundant(&corr_to_conc,&conc_to_fullconc,&conc_to_fullconc_c, corr_to_fullconc); + cout.setf(ios::fixed); + cout.precision(sigdig); + cout << "corr_to_fullconc" << endl; + cout << corr_to_fullconc << endl; + cout << "corr_to_conc" << endl; + cout << corr_to_conc << endl; + cout << "conc_to_fullconc" << endl; + cout << conc_to_fullconc << endl; + cout << "conc_to_fullconc_c" << endl; + cout << conc_to_fullconc_c << endl; + return 0; + } + + Array eci; + if (strlen(ecifile)>0) { + ifstream file(ecifile); + if (!file) ERRORQUIT("Unable to open ECI file."); + LinkedList ecilist; + while (skip_delim(file)) { + Real e; + file >> e; + ecilist << new Real(e); + } + LinkedList_to_Array(&eci,ecilist); + if (clusterlist.get_size()!=eci.get_size()) ERRORQUIT("Number of ECI does not match number of clusters."); + } + + Structure str; + ifstream strfile(strfilename); + if (!strfile) ERRORQUIT("Unable to open structure file"); + int strnum=1; + while (!strfile.eof()) { + parse_structure_file(&str.cell,&str.atom_pos,&str.atom_type,label,strfile); + strfile.clear(); + char c; + while (!isnumber(c=strfile.get()) && !strfile.eof()); + strfile.putback(c); + wrap_inside_cell(&str.atom_pos,str.atom_pos,str.cell); + + ofstream logfile("corrdump.log"); + logfile.setf(ios::fixed); + logfile.precision(sigdig); + rMatrix3d supercell=(!lattice.cell)*str.cell; + rMatrix3d rounded_supercell=to_real(to_int(supercell)); + rMatrix3d transfo=lattice.cell*rounded_supercell*(!str.cell); + rMatrix3d id3; + id3.identity(); + rMatrix3d strain=transfo-id3; + logfile << "strain=" << endl << (FixedMatrix &)strain << endl; + str.cell=transfo*str.cell; + for (int i=0; i spin(ideal_str.atom_type.get_size()); + zero_array(&spin); + + for (int i=0; i0) { + ofstream file(writeunrel); + if (!file) {ERRORQUIT("Unable to write unrelaxed structure");} + file.setf(ios::fixed); + file.precision(sigdig); + write_structure(ideal_str, lattice, labellookup, label, axes, file); + } + + cout.setf(ios::fixed); + // cout.setf(ios::showpos); + cout.precision(sigdig); + if (printnum) cout << strnum << delim; + strnum++; + Real pred=0.; + if (doconc) { + Array conc; + Structure cstr(ideal_str); + calc_concentration(&conc,lattice,labellookup,cstr); + for (int i=0; i pointcorr; + LinkedListIterator > ipcluster(eq_clusterlist); + for ( ; ipcluster; ipcluster++) { + if ((*ipcluster)(0).clus.get_size() > 1) break; + if ((*ipcluster)(0).clus.get_size()==1) { + pointcorr << new Real(calc_correlation(ideal_str, *ipcluster, spacegroup.cell, *pcorrfunc)); + } + } + int ieci=0; + LinkedListIterator icluster(clusterlist); + LinkedListIterator > ieqcluster(eq_clusterlist); + for ( ; icluster; icluster++, ieqcluster++, ieci++) { + Real rho=1.; + for (int s=0; sclus.get_size(); s++) { + LinkedListIterator ipcluster(clusterlist); + while (ipcluster->clus.get_size()==0) {ipcluster++;} + LinkedListIterator ipcorr(pointcorr); + while (1) { + if (ipcluster->site_type(0)==icluster->site_type(s) && ipcluster->func(0)==icluster->func(s)) { + if (equivalent_by_symmetry(ipcluster->clus(0),icluster->clus(s),spacegroup.cell,spacegroup.point_op,spacegroup.trans)) { + break; + } + } + ipcluster++; + ipcorr++; + } + rho*=(*ipcorr); + } + if (strlen(ecifile)>0) { + pred+=eci(ieci)*(multincl ? 1 : ieqcluster->get_size())*rho; + } + else { + if (!doconc) {cout << rho << delim;} + } + } + } + else { + int ieci=0; + LinkedListIterator > icluster(eq_clusterlist); + for ( ; icluster; icluster++, ieci++) { + Real rho=calc_correlation(ideal_str, *icluster, spacegroup.cell, *pcorrfunc); + if (strlen(ecifile)>0) { + pred+=eci(ieci)*(multincl ? 1 : icluster->get_size())*rho; + } + else { + if (!doconc) {cout << rho << delim;} + } + } + } + if (strlen(ecifile)>0) { + cout << pred; + } + cout << endl; + } +} + diff --git a/src/corrskel.c++ b/src/corrskel.c++ new file mode 100644 index 0000000..783a261 --- /dev/null +++ b/src/corrskel.c++ @@ -0,0 +1,33 @@ +#include "calccorr.h" + +// This is a skeleton to show how to include user-defined cluster functions; +// look for XXXX and replace it by the (internal) name of this cluster function type; +// look for xxxx abd replace it by the user-visible name of this cluster function type (it will be invoked by the -crf=xxxx option); +// look for myexpression and replace it by your own definition of the cluster functions; +// save this file under a new name, say corrXXXX.c++ ; +// add corrXXXX.o to the makefile on the line PLUGINCORR ; +// type "make"; + +class XXXXCorrFuncTable: public CorrFuncTable { + public: + XXXXCorrFuncTable(): CorrFuncTable() {} + void init(int comp) { + Array > > &table=*this; + table.resize(comp-1); + for (int m=2; m<=comp; m++) { + table(m-2).resize(m-1); + for (int t=0; t XXXXCorrFuncPlugIn("xxxx"); diff --git a/src/csfit.c++ b/src/csfit.c++ new file mode 100644 index 0000000..5db5bf2 --- /dev/null +++ b/src/csfit.c++ @@ -0,0 +1,282 @@ +#include +#include +#include "arraylist.h" +#include "vectmac.h" +#include "getvalue.h" +#include "lstsqr.h" +#include "version.h" +#include "stringo.h" +#include "parse.h" + +#define NO_OBJECTS_IN_KSPACE_CS +#include "kspacecs.cc" + +void distord_cell(rMatrix3d *pcell, const rVector3d &dir, Real e_paral, Real e_perp) { + rMatrix3d strain,basis; + strain.zero(); + strain(0,0)=e_paral; + strain(1,1)=e_perp; + strain(2,2)=e_perp; + basis.set_column(0,dir/norm(dir)); + basis.set_column(1,find_perpendicular(dir)); + basis.set_column(2,basis.get_column(0)^basis.get_column(1)); + (*pcell)=basis*strain*(!basis)*(*pcell); +} + +extern char *helpstring; + +int main(int argc, char *argv[]) { + // parse command line; + int dohelp=0; + int conc_mesh=50; + int search_mesh=100; + int perp_stretch_mesh=5; + int paral_stretch_mesh=3; + Real max_paral_stretch=0.05; + char *puredir[2]={"0","1"}; + char *dirfilename="dir.in"; + char *latticefilename="lat.in"; + int dummy=0; + int sigdig=6; + int polltime=10; + AskStruct options[]={ + {"","Constituent Strain FITter " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-nc","Number of points in concentration mesh (default 50)",INTVAL,&conc_mesh}, + {"-ns","Number of points in mesh used to look for energy minimum (default 100)",INTVAL,&search_mesh}, + {"-np","Number of points in stretching mesh in the direction perpendicular to the k-vector(default 5)",INTVAL,&perp_stretch_mesh}, + {"-nl","Number of points in stretching mesh in the direction parallel to the k-vector (default 3)",INTVAL,¶l_stretch_mesh}, + {"-ml","Maximum parallel stretching (default 0.05)",REALVAL,&max_paral_stretch}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latticefilename}, + {"-pa","Directory containing the pure A calculations (default 0/)",STRINGVAL,&puredir[0]}, + {"-pb","Directory containing the pure B calculations (default 1/)",STRINGVAL,&puredir[1]}, + {"-ds","File containing a list of stretching directions (default: dir.in)",STRINGVAL,&dirfilename}, + {"-t","Time between disk reads in sec (default: 10 sec)",INTVAL,&polltime}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + if ( perp_stretch_mesh<3) ERRORQUIT("-np must be greater than 2"); + if (paral_stretch_mesh<3) ERRORQUIT("-nl must be greater than 2"); + + // read in the lattice file (so that we know the conventional cell and associated reciprocal cell); + Structure lat; + Array site_type_list; + Array atom_label; + rMatrix3d axes; + ifstream file(latticefilename); + if (!file) ERRORQUIT("Unable to open lattice file."); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &site_type_list, &atom_label, file, &axes); + rMatrix3d rec_axes=~(!axes); + + // read in specified direction in k space; + LinkedList dirlist; + { + ifstream dirfile(dirfilename); + if (!dirfile) ERRORQUIT("Unable to open direction file"); + while (1) { + rVector3d dir(MAXFLOAT,MAXFLOAT,MAXFLOAT); + dirfile >> dir; + if (dir(0)==MAXFLOAT || !dirfile ) break; + dirlist << new rVector3d(dir); + } + } + + // read in the relaxed geometry of the pure end members; + Real scale[2]; + Structure str[2]; + for (int elem=0; elem<2; elem++) { + if (chdir(puredir[elem])!=0) {cerr << "Directory " << puredir[elem]; ERRORQUIT(" does not exist.");} + { + ifstream file("str_relax.out"); + if (!file) {cerr << "Unable to open file" << puredir[elem] << "/str-relax.out" ; ERRORQUIT("");} + parse_structure_file(&str[elem].cell,&str[elem].atom_pos,&str[elem].atom_type, atom_label,file); + } + scale[elem]=pow(det(str[elem].cell)/det(lat.cell),1./3.); // for cubic only!; + chdir(".."); + } + + // generate distorted structures; + { + LinkedListIterator i_dir(dirlist); + for (; i_dir; i_dir++) { + for (int elem=0; elem<2; elem++) { + chdir(puredir[elem]); + for (int perp=0; perp i_dir(dirlist); + for (; nomissing && i_dir; i_dir++) { + for (int elem=0; nomissing && elem<2; elem++) { + chdir(puredir[elem]); + for (int perp=0; nomissing && perp> e; + if (e==MAXFLOAT || file.fail()) { + cerr << "Error reading energy file in " << cur_dir.str() << endl; + nomissing=0; + } + } + chdir(".."); + } + } + chdir(".."); + } + } + if (nomissing) break; + sleep(polltime); + } + + cerr << "Calculations done, fitting the data" << endl; + LinkedList > > perp_e_list; + { + ofstream debugfile("csdebug.out"); + LinkedListIterator i_dir(dirlist); + for (; i_dir; i_dir++) { + Array > perp_e(2); + for (int elem=0; elem<2; elem++) { + perp_e(elem).resize(perp_stretch_mesh); + chdir(puredir[elem]); + for (int perp=0; perp paral_e(paral_stretch_mesh); + for (int paral=0; paral> paral_e(paral); + debugfile << paral_e(paral) << " "; + } + chdir(".."); + } + perp_e(elem)(perp)=find_minimum(paral_e,search_mesh); + debugfile << perp_e(elem)(perp) << endl; + } + chdir(".."); + } + perp_e_list << new Array >(perp_e); + } + } + + Array pure_e[2]; + for (int elem=0; elem<2; elem++) { + pure_e[elem].resize(perp_e_list.get_size()); + LinkedListIterator > > i_perp_e(perp_e_list); + for (int index_dir=0; i_perp_e; i_perp_e++,index_dir++) { + pure_e[elem](index_dir)=find_minimum((*i_perp_e)(elem),search_mesh); + } + } + + if (dirlist.get_size()<3) { + ERRORQUIT("Not enough directions specified - need at least 3."); + } + Array > best_kubic_coef; + Real best_cv=MAXFLOAT; + for (int n_kubic=2; n_kubic<=MIN(4,dirlist.get_size()-1); n_kubic++) { + ofstream file("cs.log"); + Array > kubic_coef(conc_mesh); + Real cv=0.; + for (int ic=0; ic cs_e(dirlist.get_size()); + Array2d kubic_val(dirlist.get_size(),n_kubic); + LinkedListIterator i_dir(dirlist); + LinkedListIterator > > i_perp_e(perp_e_list); + file << c << " "; + for (int index_dir=0; i_dir; i_dir++,i_perp_e++,index_dir++) { + Array perp_e((*i_perp_e)(0).get_size()); + for (int i=0; i +#include "array.h" +#include "getvalue.h" +#include "xtalutil.h" +#include "parse.h" +#include "version.h" + +Real angle(const rVector3d &a, const rVector3d &b) { + return (acos(a*b/(norm(a)*norm(b)))); +} + +int add_if_nonequiv(LinkedList > *pclist, const Array &cells, const Array &point_op1, const Array &point_op2) { + LinkedListIterator > i(*pclist); + for ( ; i; i++) { + int same1=0; + for (int op1=0; op1(cells); + return 1; + } + else { + return 0; + } +} + +Real get_2d_strain(const rMatrix2d s) { + Real d=det(s); + Real t=trace(s); + return (fabs(t)+sqrt(t*t-4*d))/2.; +} + +int main(int argc, char *argv[]) { + char *cellfilename1=""; + char *cellfilename2=""; + char *planefilename=""; + Real rmax=0; + Real eps=zero_tolerance; + AskStruct options[]={ + {"","Coincidence Site Lattice " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-l1","Input file defining the first lattice",STRINGVAL,&cellfilename1}, + {"-l2","Input file defining the second lattice",STRINGVAL,&cellfilename2}, + {"-p","Input file defining the planes",STRINGVAL,&planefilename}, + {"-ma","maximum lattice parameter",REALVAL,&rmax}, + {"-e","maximum strain",REALVAL,&eps} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + rMatrix3d cell1,cell2; + rMatrix3d axes1,axes2; + { + ifstream cellfile(cellfilename1); + if (!cellfile) ERRORQUIT("Unable to open cell file 1"); + read_cell(&axes1,cellfile); + read_cell(&cell1,cellfile); + cell1=axes1*cell1; + } + { + ifstream cellfile(cellfilename2); + if (!cellfile) ERRORQUIT("Unable to open cell file 2"); + read_cell(&axes2,cellfile); + read_cell(&cell2,cellfile); + cell2=axes2*cell2; + } + rVector3d plane1,plane2; + { + ifstream planefile(planefilename); + if (!planefile) ERRORQUIT("Unable to open plane file"); + planefile >> plane1; + planefile >> plane2; + plane1=(!~axes1)*plane1; + plane2=(!~axes2)*plane2; + } + Array point_op1,point_op2; + find_pointgroup(&point_op1, cell1); + find_pointgroup(&point_op2, cell2); + + LinkedList > vlist; + LatticePointIterator a1(cell1,1); + for (; norm(a1)<=rmax; a1++) { + if (near_zero(plane1*a1)) { + Real r1=norm(a1); + Real rmax1=r1*(1+eps); + LatticePointIterator a2(cell2,1); + for (; norm(a2)<=rmax1; a2++) { + if (near_zero(plane2*a2)) { + if (fabs(norm(a2)-r1)/r1 <= 2.*eps) { + Array *pv=new Array(2); + (*pv)(0)=a1; + (*pv)(1)=a2; + vlist << pv; + } + } + } + } + } + cout.setf(ios::fixed); + cout.precision(6); + rMatrix2d id; + id.identity(); + rMatrix3d iaxes1=!axes1; + rMatrix3d iaxes2=!axes2; + LinkedList > clist; + LinkedListIterator > i(vlist); + for ( ; i; i++) { + Real r1=norm((*i)(0)); + LinkedListIterator > j(vlist); + for ( ; j && norm((*j)(0))<=r1+zero_tolerance; j++) { + Real p=((*j)(0)*(*i)(0))/((*i)(0)*(*i)(0)); + if (fabs(p)<=0.5) { + Real ang1=angle((*j)(0),(*i)(0)); + if (!near_zero(ang1) && !near_zero(ang1-M_PI)) { + rMatrix2d supcell1,supcell2; + supcell1.set_column(0,norm((*i)(0))*rVector2d(cos(ang1/2), sin(ang1/2))); + supcell1.set_column(1,norm((*j)(0))*rVector2d(cos(ang1/2),-sin(ang1/2))); + Real ang2=angle((*j)(1),(*i)(1)); + supcell2.set_column(0,norm((*i)(1))*rVector2d(cos(ang2/2), sin(ang2/2))); + supcell2.set_column(1,norm((*j)(1))*rVector2d(cos(ang2/2),-sin(ang2/2))); + Real strain=get_2d_strain((!supcell2)*supcell1-id); + if (strain<=eps) { + Array lats(4); + lats(0)=(*i)(0); + lats(1)=(*j)(0); + lats(2)=(*i)(1); + lats(3)=(*j)(1); + if (add_if_nonequiv(&clist,lats,point_op1,point_op2)) { + // cout << supcell1 << endl; + // cout << supcell2 << endl; + cout << strain << endl; + cout << norm((iaxes1*(*i)(0))^(iaxes1*(*j)(0))) << " " << norm((iaxes2*(*i)(1))^(iaxes2*(*j)(1))) << endl; + cout << iaxes1*(*i)(0) << " " << iaxes2*(*i)(1) << endl; + cout << iaxes1*(*j)(0) << " " << iaxes2*(*j)(1) << endl; + cout << endl; + } + } + } + } + } + } +} diff --git a/src/cv.c++ b/src/cv.c++ new file mode 100644 index 0000000..73038d1 --- /dev/null +++ b/src/cv.c++ @@ -0,0 +1,577 @@ +#include +#include +#include "lstsqr.h" +#include "getvalue.h" +#include "version.h" + +#define MAXLINELEN 512 + +Real ground_state_badness(const Array &ground_state, const Array &concentration, const Array &fitted_energy) { + Real badness=0; + for (int gs=1; gs=c0 && c<=c1) { + Real hull_e=a+b*c; + if (fitted_energy(str) *hull_energy, const Array &ground_state, const Array &concentration, const Array &energy) { + hull_energy->resize(energy.get_size()); + for (int gs=1; gs=c0 && c<=c1) { + (*hull_energy)(str)=a+b*c; + } + } + } +} + +void ground_state_problem(Array *p_problem, const Array &ground_state, const Array &concentration, const Array &fitted_energy) { + p_problem->resize(fitted_energy.get_size()); + zero_array(p_problem); + for (int gs=1; gs=c0 && c<=c1) { + Real hull_e=a+b*c; + if (fitted_energy(str) *p_problem, const Array &gs_concentration, const Array &gs_energy, const Array &concentration, const Array &energy) { + p_problem->resize(energy.get_size()); + zero_array(p_problem); + for (int gs=1; gs=c0 && c<=c1) { + Real hull_e=a+b*c; + if (energy(str) *selected_eci, int nb_eci, + const Array2d &all_rho, const Array &energy, + const Array &weight, + const Array &concentration, + const Array &ground_state) { + Array included(all_rho.get_size()(1)); + zero_array(&included); + for (int eci=0; eci rho; + (*selected_eci)(nb_eci)=-1; + extract_columns(&rho, all_rho, *selected_eci, nb_eci+1); + int best_eci=-1; + Real best_cv=MAXFLOAT; + for (int new_eci=0; new_eci fitted_energy; + predict_ols(&fitted_energy, rho,energy,weight); + Real gs_badness=ground_state_badness(ground_state,concentration,fitted_energy); + cv+=gs_badness_mult*gs_badness; + if (gs_badness>0.) cv+=gs_penalty; + if (cv<=best_cv) { + best_eci=new_eci; + best_cv=cv; + } + } + } + (*selected_eci)(nb_eci)=best_eci; + return best_cv; +} + +Real remove_worse_eci(Array *selected_eci, int nb_eci, + const Array2d &all_rho, const Array &energy, const Array &weight, + const Array &concentration, const Array &ground_state, int min_nb_eci=0) { + int worse_eci=-1; + Real best_cv=MAXFLOAT; + Array cur_eci(selected_eci->get_size()); + for (int bad_eci=min_nb_eci; bad_eci rho; + extract_columns(&rho, all_rho, cur_eci, nb_eci-1); + Real cv=calc_cv(rho,energy,weight); + Array fitted_energy; + predict_ols(&fitted_energy, rho,energy,weight); + Real gs_badness=ground_state_badness(ground_state,concentration,fitted_energy); + cv+=gs_badness_mult*gs_badness; + if (gs_badness>0.) cv+=gs_penalty; + if (cv<=best_cv) { + worse_eci=bad_eci; + best_cv=cv; + } + } + for (int i=worse_eci+1; i *p_form_value, const Array &concentration, const Array &value, Real *e_c0=NULL, Real *e_c1=NULL) { + Real pure_A=MAXFLOAT; + Real pure_B=MAXFLOAT; + if (e_c0 && e_c1 && (*e_c0)!=MAXFLOAT && (*e_c1)!=MAXFLOAT) { + pure_A=*e_c0; + pure_B=*e_c1; + } + else { + for (int i=0; iresize(value.get_size()); + Real a=(pure_B+pure_A)/2.; + Real b=(pure_B-pure_A)/2.; + for (int i=0; i *p_gs_str, + const Array &concentration, const Array &energy) { + Array gs_str(concentration.get_size()); + int nb_in_hull=0; + + Real cur_concentration=MAXFLOAT; + Real cur_energy=MAXFLOAT; + int cur_gs; + for (int i=0; icur_concentration) { + Real slope=(energy(i)-cur_energy)/(concentration(i)-cur_concentration); + if (sloperesize(nb_in_hull); + for (int i=0; i *p_gs_concentration, Array *p_gs_energy, + const Array &concentration, const Array &energy) { + Array gs_str; + + calc_convex_hull(&gs_str, concentration,energy); + p_gs_concentration->resize(gs_str.get_size()); + p_gs_energy->resize(gs_str.get_size()); + for (int i=0; i mult_list; + LinkedList nbpt_list; + { + ifstream clusterfile("clusters.out"); + if (!clusterfile) ERRORQUIT("Unable to open clusters.out"); + while (1) { + Real mult; + clusterfile >> mult; + if (clusterfile.eof()) break; + mult_list << new Real(mult); + Real len; + clusterfile >> len; + int nbpt; + clusterfile >> nbpt; + nbpt_list << new int(nbpt); + for (int j=0; j> tmp; + } + } + } + Array mults; + Array nbpts; + LinkedList_to_Array(&mults,mult_list); + LinkedList_to_Array(&nbpts,nbpt_list); + + int nb_str,nb_eci; + system("grep -v '^[ ]*$' corr.in | wc -l > size.out"); + system("grep -v '^[ ]*$' corr.in | head -1 | wc -w >> size.out"); + { + ifstream file("size.out"); + file >> nb_str >> nb_eci; + } + Array point_mult(nb_eci); + zero_array(&point_mult); + Real sum_mult=0.; + for (int i=0; i known(nb_str); + zero_array(&known); + int nb_known=0; + { + ifstream file("energy.in"); + if (!file) ERRORQUIT("Unable to open file energy.in"); + for (int str=0; str> s; + istrstream num(s); + Real tmp=MAXFLOAT; + num >> tmp; + if (tmp!=MAXFLOAT) { + known(str)=1; + nb_known++; + } + else { + known(str)=0; + } + } + } + Array energy(nb_known); + { + ifstream file("energy.in"); + if (!file) ERRORQUIT("Unable to open file energy.in"); + int known_i=0; + for (int str=0; str> energy(known_i); + known_i++; + } + else { + char tmp; + file >> tmp; + } + } + } + { + Real maxenergy=0.; + for (int i=0; imaxenergy) maxenergy=fabs(energy(i)); + } + gs_penalty=(force_gs_ok!=0)*maxenergy*10; + } + + Array2d all_rho(nb_known,nb_eci); + Array2d all_rho_unknown(nb_str-nb_known,nb_eci); + { + ifstream file("corr.in"); + if (!file) ERRORQUIT("Unable to open file corr.in"); + int known_i=0; + int unknown_i=0; + for (int str=0; str> all_rho(known_i,eci); + } + known_i++; + } + else { + for (int eci=0; eci> all_rho_unknown(unknown_i,eci); + } + unknown_i++; + } + } + } + + Array concentration; + product(&concentration, all_rho,point_mult); + Array concentration_unknown; + product(&concentration_unknown, all_rho_unknown,point_mult); + + int max_nb_eci=MIN(nb_eci,nb_known-1); + Array selected_eci(max_nb_eci); + int min_nb_eci=0; + { + for (int i=0; i0) { + selected_eci(min_nb_eci)=i; + min_nb_eci++; + } + } + } + { + ifstream file("include.in"); + if (file) { + while (!file.eof()) { + int tmp=-1; + file >> tmp; + if (tmp==-1) break; + selected_eci(min_nb_eci)=tmp-1; + min_nb_eci++; + } + } + } + Array in_weight(nb_known); + { + ifstream file("weight.in"); + if (file) { + int known_i=0; + for (int str=0; str> in_weight(known_i); + known_i++; + } + else { + Real tmp; + file >> tmp; + } + } + } + else { + for (int str=0; str ground_state; + calc_convex_hull(&ground_state, concentration,energy); + + Array hull_energy; + calc_hull_energy(&hull_energy, ground_state,concentration,energy); + + Array weight(nb_known); + for (int str=0; str cur_selected_eci(max_nb_eci); + cur_selected_eci.copy(selected_eci); + done=1; + for (int eci=nb_eci_incl; eci>min_nb_eci; eci--) { + Real cv=remove_worse_eci(&cur_selected_eci,eci,all_rho,energy,weight,concentration,ground_state,min_nb_eci); + if (cv=2) { + selected_eci.copy(cur_selected_eci); + nb_eci_incl=eci-1; + best_cv=cv; +cerr << cv << endl; + done=0; + } + } + } while (!done); + + Array2d rho; + extract_columns(&rho,all_rho,selected_eci,nb_eci_incl); + Array eci; + calc_ols(&eci,rho,energy,weight); + Array2d var_eci; + calc_gls_var(&var_eci,rho,energy,weight); + + Array fitted_energy; + predict_ols(&fitted_energy,rho,energy,weight); + + Array all_eci(all_rho.get_size()(1)); + zero_array(&all_eci); + for (int i=0; i form_energy; + calc_formation(&form_energy, concentration,energy); + Array form_fitted_energy; + Real e_c0=MAXFLOAT,e_c1=MAXFLOAT; + calc_formation(&form_fitted_energy, concentration,fitted_energy,&e_c0,&e_c1); + Array gs_concentration,gs_energy; + calc_convex_hull(&gs_concentration,&gs_energy, concentration,form_energy); + + Array gs_fitted_concentration,gs_fitted_energy; + calc_convex_hull(&gs_fitted_concentration,&gs_fitted_energy, concentration,form_fitted_energy); + + Array2d rho_unknown; + extract_columns(&rho_unknown,all_rho_unknown,selected_eci,nb_eci_incl); + Array fitted_energy_unknown; + product(&fitted_energy_unknown, rho_unknown,eci); + Array form_fitted_energy_unknown; + calc_formation(&form_fitted_energy_unknown, concentration_unknown,fitted_energy_unknown,&e_c0,&e_c1); + + Array gs_problem_unknown; + ground_state_problem(&gs_problem_unknown, gs_fitted_concentration,gs_fitted_energy, concentration_unknown, form_fitted_energy_unknown); + { + ofstream file("fit.out"); + for (int i=0; i0 ? "g" : "") << endl; + } + } + { + ofstream file("gs.out"); + for (int i=0; i gs_problem; + ground_state_problem(&gs_problem,ground_state,concentration,fitted_energy); + { + ofstream file("weight_sug.out"); + int j=0; + for (int i=0; i +#include +#include "lstsqr.h" + +#define MAXLINELEN 512 + +Real ground_state_badness(const Array &ground_state, const Array &concentration, const Array &fitted_energy) { + Real badness=0; + for (int gs=1; gs=c0 && c<=c1) { + Real hull_e=a+b*c; + if (fitted_energy(str) *hull_energy, const Array &ground_state, const Array &concentration, const Array &energy) { + hull_energy->resize(energy.get_size()); + for (int gs=1; gs=c0 && c<=c1) { + (*hull_energy)(str)=a+b*c; + } + } + } +} + +Real ground_state_problem(Array *p_problem, const Array &ground_state, const Array &concentration, const Array &fitted_energy) { + p_problem->resize(fitted_energy.get_size()); + zero_array(p_problem); + for (int gs=1; gs=c0 && c<=c1) { + Real hull_e=a+b*c; + if (fitted_energy(str) *p_problem, const Array &gs_concentration, const Array &gs_energy, const Array &concentration, const Array &energy) { + p_problem->resize(energy.get_size()); + zero_array(p_problem); + for (int gs=1; gs=c0 && c<=c1) { + Real hull_e=a+b*c; + if (energy(str) *selected_eci, int nb_eci, + const Array2d &all_rho, const Array &energy, + const Array &weight, + const Array &concentration, + const Array &ground_state) { + Array included(all_rho.get_size()(1)); + zero_array(&included); + for (int eci=0; eci rho; + (*selected_eci)(nb_eci)=-1; + extract_columns(&rho, all_rho, *selected_eci, nb_eci+1); + int best_eci=-1; + Real best_cv=MAXFLOAT; + for (int new_eci=0; new_eci fitted_energy; + predict_gls(&fitted_energy, rho,energy,weight); + Real gs_badness=ground_state_badness(ground_state,concentration,fitted_energy); + cv+=gs_badness_mult*gs_badness; + if (gs_badness>0.) cv+=gs_penalty; + if (cv<=best_cv) { + best_eci=new_eci; + best_cv=cv; + } + } + } + (*selected_eci)(nb_eci)=best_eci; + return best_cv; +} + +Real remove_worse_eci(Array *selected_eci, int nb_eci, + const Array2d &all_rho, const Array &energy, const Array &weight, + const Array &concentration, const Array &ground_state, int min_nb_eci=0) { + int worse_eci=-1; + Real best_cv=MAXFLOAT; + Array cur_eci(selected_eci->get_size()); + for (int bad_eci=min_nb_eci; bad_eci rho; + extract_columns(&rho, all_rho, cur_eci, nb_eci-1); + Real cv=calc_cv(rho,energy,weight); + Array fitted_energy; + predict_gls(&fitted_energy, rho,energy,weight); + Real gs_badness=ground_state_badness(ground_state,concentration,fitted_energy); + cv+=gs_badness_mult*gs_badness; + if (gs_badness>0.) cv+=gs_penalty; + if (cv<=best_cv) { + worse_eci=bad_eci; + best_cv=cv; + } + } + for (int i=worse_eci+1; i *p_form_value, const Array &concentration, const Array &value, Real *e_c0=NULL, Real *e_c1=NULL) { + Real pure_A=MAXFLOAT; + Real pure_B=MAXFLOAT; + if (e_c0 && e_c1 && (*e_c0)!=MAXFLOAT && (*e_c1)!=MAXFLOAT) { + pure_A=*e_c0; + pure_B=*e_c1; + } + else { + for (int i=0; iresize(value.get_size()); + Real a=(pure_B+pure_A)/2.; + Real b=(pure_B-pure_A)/2.; + for (int i=0; i *p_gs_str, + const Array &concentration, const Array &energy) { + Array gs_str(concentration.get_size()); + int nb_in_hull=0; + + Real cur_concentration=MAXFLOAT; + Real cur_energy=MAXFLOAT; + int cur_gs; + for (int i=0; icur_concentration) { + Real slope=(energy(i)-cur_energy)/(concentration(i)-cur_concentration); + if (sloperesize(nb_in_hull); + for (int i=0; i *p_gs_concentration, Array *p_gs_energy, + const Array &concentration, const Array &energy) { + Array gs_str; + + calc_convex_hull(&gs_str, concentration,energy); + p_gs_concentration->resize(gs_str.get_size()); + p_gs_energy->resize(gs_str.get_size()); + for (int i=0; i1) { + cout << helpstring; + exit(1); + } + int nb_str,nb_eci; + system("grep -v '^[ ]*$' corr.in | wc -l > size.out"); + system("grep -v '^[ ]*$' corr.in | head -1 | wc -w >> size.out"); + { + ifstream file("size.out"); + file >> nb_str >> nb_eci; + } + int add_empty=0; + Array point_mult; + Real gs_prec=0.; + { + ifstream file("info.in"); + if (!file) ERRORQUIT("Unable to open file info.in"); + file >> gs_penalty; + file >> gs_badness_mult; + file >> add_empty; + file >> gs_prec; + add_empty=(add_empty!=0); + nb_eci+=add_empty; + point_mult.resize(nb_eci); + zero_array(&point_mult); + while (!file.eof()) { + int which_col; + file >> which_col; + if (file.eof()) break; + file >> point_mult(which_col-1+add_empty); + } + } + + Array known(nb_str); + zero_array(&known); + int nb_known=0; + { + ifstream file("energy.in"); + if (!file) ERRORQUIT("Unable to open file energy.in"); + for (int str=0; str> s; + istrstream num(s); + Real tmp=MAXFLOAT; + num >> tmp; + if (tmp!=MAXFLOAT) { + known(str)=1; + nb_known++; + } + else { + known(str)=0; + } + } + } + Array energy(nb_known); + { + ifstream file("energy.in"); + if (!file) ERRORQUIT("Unable to open file energy.in"); + int known_i=0; + for (int str=0; str> energy(known_i); + known_i++; + } + else { + char tmp; + file >> tmp; + } + } + } + { + Real maxenergy=0.; + for (int i=0; imaxenergy) maxenergy=fabs(energy(i)); + } + gs_penalty=(gs_penalty!=0)*maxenergy*10; + } + + Array2d all_rho(nb_known,nb_eci); + Array2d all_rho_unknown(nb_str-nb_known,nb_eci); + { + ifstream file("corr.in"); + if (!file) ERRORQUIT("Unable to open file corr.in"); + int known_i=0; + int unknown_i=0; + for (int str=0; str> all_rho(known_i,eci); + } + known_i++; + } + else { + if (add_empty) all_rho_unknown(unknown_i,0)=1.; + for (int eci=add_empty; eci> all_rho_unknown(unknown_i,eci); + } + unknown_i++; + } + } + } + + Array concentration; + product(&concentration, all_rho,point_mult); + Array concentration_unknown; + product(&concentration_unknown, all_rho_unknown,point_mult); + + int max_nb_eci=MIN(nb_eci,nb_known-1); + Array selected_eci(max_nb_eci); + int min_nb_eci=0; + { + if (add_empty) { + selected_eci(0)=0; + min_nb_eci++; + } + for (int i=0; i0) { + selected_eci(min_nb_eci)=i; + min_nb_eci++; + } + } + } + { + ifstream file("include.in"); + if (file) { + while (!file.eof()) { + int tmp=-1; + file >> tmp; + if (tmp==-1) break; + selected_eci(min_nb_eci)=tmp-1+add_empty; + min_nb_eci++; + } + } + } + Array in_weight(nb_known); + { + ifstream file("weight.in"); + if (file) { + int known_i=0; + for (int str=0; str> in_weight(known_i); + known_i++; + } + else { + Real tmp; + file >> tmp; + } + } + } + else { + for (int str=0; str ground_state; + calc_convex_hull(&ground_state, concentration,energy); + + Array hull_energy; + calc_hull_energy(&hull_energy, ground_state,concentration,energy); + + Array weight(nb_known); + { + ofstream file("weight_used.out"); + for (int str=0; str cur_selected_eci(max_nb_eci); + cur_selected_eci.copy(selected_eci); + done=1; + for (int eci=nb_eci_incl; eci>min_nb_eci; eci--) { + Real cv=remove_worse_eci(&cur_selected_eci,eci,all_rho,energy,weight,concentration,ground_state,min_nb_eci); + if (cv=2) { + selected_eci.copy(cur_selected_eci); + nb_eci_incl=eci-1; + best_cv=cv; +cerr << cv << endl; + done=0; + } + } + } while (!done); + + Array2d rho; + extract_columns(&rho,all_rho,selected_eci,nb_eci_incl); + Array eci; + calc_gls(&eci,rho,energy,weight); + Array2d var_eci; + calc_gls_var(&var_eci,rho,energy,weight); + + Array fitted_energy; + predict_gls(&fitted_energy,rho,energy,weight); + + Array all_eci(all_rho.get_size()(1)); + zero_array(&all_eci); + for (int i=0; i outlier_test(energy.get_size()); + { + Array2d tmp; + product(&tmp, rho,var_eci); + Array prediction_var; + outer_product_diag(&prediction_var, rho,tmp); + for (int i=0; i form_energy; + calc_formation(&form_energy, concentration,energy); + Array form_fitted_energy; + Real e_c0=MAXFLOAT,e_c1=MAXFLOAT; + calc_formation(&form_fitted_energy, concentration,fitted_energy,&e_c0,&e_c1); + Array gs_concentration,gs_energy; + calc_convex_hull(&gs_concentration,&gs_energy, concentration,form_energy); + + Array gs_fitted_concentration,gs_fitted_energy; + calc_convex_hull(&gs_fitted_concentration,&gs_fitted_energy, concentration,form_fitted_energy); + + Array2d rho_unknown; + extract_columns(&rho_unknown,all_rho_unknown,selected_eci,nb_eci_incl); + Array fitted_energy_unknown; + product(&fitted_energy_unknown, rho_unknown,eci); + Array form_fitted_energy_unknown; + calc_formation(&form_fitted_energy_unknown, concentration_unknown,fitted_energy_unknown,&e_c0,&e_c1); + + Array gs_problem_unknown; + { + ground_state_problem(&gs_problem_unknown, gs_fitted_concentration,gs_fitted_energy, concentration_unknown, form_fitted_energy_unknown); + Array2d tmp; + product(&tmp, rho_unknown,var_eci); + Array prediction_var_unknown; + outer_product_diag(&prediction_var_unknown, rho_unknown,tmp); + for (int i=0; i gs_problem; + ground_state_problem(&gs_problem,ground_state,concentration,fitted_energy); + { + ofstream file("weight_sug.out"); + int j=0; + for (int i=0; i corr.in + +table of correlations, one structure per line +(exactly the output of corrdump) + +-> energy.in +column of energy values, one per line, in the same order as in the corr.in file. +If energy is unknown, put 'x'. + +-> include.in + +This file can be omitted. +It gives a list of clusters than must be part of the cluster expansion. +(Each number in this file indicates a column in the corr.in file.) + +-> weight.in + +This file can be omitted. +It indicates the weight that must be given to each structure. +Usually this file is copied from the weight_sug.out file obtained from a previous run. +Each weight in this file is multiplied by + gs_prec/(structure_energy-ground_state_energy+gs_prec) +(see above). + +-> clusters.out + +A list of the clusters (in the same format as generated by either maps +or corrdump) + +OUTPUT FILES + +-> fit.out + +Contains the results of the fit, one structure per line and each line +has the following information: + concentration energy fitted_energy weight index +'concentration' lies between 0 and 1. +'energy' is the true formation energy. +'fitted_energy' is the predicted formation energy. +'weight' is the weight of this structure in the fit. +'index' is the structure number (not counting structure of unknown energies) + +-> predstr.out +Contains the predicted energy of all structures whose true energy is unknown. +Format: one structure per line, and each line has the following information: + concentration predicted_energy -1 status +the '-1' is for compatibility with maps. +status is 'u' (for compatibility with maps) and a 'g' is appended to status if + that structure is predicted to be a ground state. + To list all predicted ground states, type + grep 'g' predstr.out + +-> gs.out + +The ground states, as determined by energies given in energy.in. +Each line is a concentration, energy pair. + +-> gs_fitted.out + +The ground states, as determined by energies predicted from +the cluster expansion. (Structures for which the true energy is +unknown are omitted.) +Each line is a concentration, energy pair. + +-> weight_sug.out + +If the ground states are incorrectly predicted by the cluster expansion, +this file contains suggested weight that should correct the problem. +just type +cp weight_sug.out weight.in +and rerun the program. + +-> weight_used.out + +Weights actually used to do the fit. + +-> fit.gnu + +A gnuplot script that display all the relevant information. +Just type: +gnuplot fit.gnu + +-> eci.out + +The values of the fitted eci, in the same order as in the corr.in file. diff --git a/src/dispatch.c++ b/src/dispatch.c++ new file mode 100644 index 0000000..e1152c3 --- /dev/null +++ b/src/dispatch.c++ @@ -0,0 +1,51 @@ +#include +#include +#include +#include +#include "misc.h" +#include "array.h" +#include "stringo.h" +#include "mpiinterf.h" + +main(int argc, char **argv) +{ + MyMPIobj.init(argc,argv); + MyMPIobj.barrier(); + + if (MyMPIobj.is_root()) { + ifstream file(argv[1]); + Array done(MyMPIobj.numproc-1); + zero_array(&done); + int numdone=0; + while (numdone ../../conf/tms2013/vcbcc${num}.out +done +sspp < bccaug.sspp | cellcvrt.exe -ss=1 -c | tail -n +7 > bccaugsup.out diff --git a/src/dqmc.c++ b/src/dqmc.c++ new file mode 100644 index 0000000..9c39835 --- /dev/null +++ b/src/dqmc.c++ @@ -0,0 +1,70 @@ +#include "normal.h" + +class FuncofVector { +public: + Real operator ()(const Array &) {return 0}; +}; + +void iterate_QMC(Array > *pnew_walker, const Array > &walker, int *pnegbeg, Real *pweight, const FuncofVector &pot, Real spread, Real mult, Real tol2, int nequil) { + int negbeg=*pnegbeg; + Real weight=*pweight; + int n=walker.get_size(); + int d=walker(0).get_size(); + Array anihi(n); + zero_array(&anihi); + for (int i=0; iresize(n); + int ipos=0; + int ineg=n-1; + int equil=nequil; + int i=random(n); + while (ipos0) { + equil--; + } + else { + int j=(i &x) const { + return (ipow(x(0),2)+ipow(x(1),2)); + } +}; + +int main (int argc char *argv[]) { + Real spread=0.1; + int nwalker=1000; + Real tol2=0.1; + int nequil=100; + Array > *pwalkers=new Array >(nwalker); + Array > *pnew_walkers=new Array >(nwalker); + int negbeg;?? + MyPotential mypotential; + iterate_QMC(pnew_walker, *pwalker,negbeg,&mypotential,spread,tol2,nequil); + swap(&pwalker,&pnew_walker); +} diff --git a/src/drawpd.c++ b/src/drawpd.c++ new file mode 100644 index 0000000..cce37a8 --- /dev/null +++ b/src/drawpd.c++ @@ -0,0 +1,686 @@ +#include "drawpd.h" + +MF_ThermoData::MF_ThermoData(void): PhaseThermoData() {} + +MF_ThermoData::MF_ThermoData( const Structure &lattice, const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, const LinkedList &eci_list): PhaseThermoData() { + init(lattice,space_group,str,cluster_list,eci_list); + } + +void MF_ThermoData::init(const Structure &lattice, const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, const LinkedList &eci_list) { + cur_phase=this; + + volume=str.atom_pos.get_size(); + max_flip=2.0; + + E_ref=find_empty_eci(cluster_list,eci_list)/(Real)(lattice.atom_pos.get_size()); + ideal_spin.resize(str.atom_type.get_size()); + for (int i=0; i o_cluster; + Array o_eci; + find_clusters_overlapping_site(&o_cluster,&o_eci, + str.atom_pos(s),lattice,space_group,cluster_list,eci_list,1); + clusters(s).resize(o_cluster.get_size()); + eci(s).resize(o_eci.get_size()); + for (int c=0; c spin=ideal_spin; + Array dE(spin.get_size()); + Real max_diff=MAXFLOAT; + int iter=0; + while (max_diff>spin_precision && iter<10000) { + iter++; + for (int s=0; s 1e2*T) { + new_spin=spin(s); + } + else { + new_spin=(-1.+1.*exp(-2.*dE(s)/T))/(1.+exp(-2.*dE(s)/T)); + } + new_spin=(new_spin+spin(s))/2.; + max_diff=MAX(max_diff,fabs(new_spin-spin(s))); + spin(s)=new_spin; + } + } + Real flip=0.; + for (int i=0; imax_flip) { + cur_x=0; + for (int s=0; s0) { + for (int s=0; s> volume; + file >> ideal_spin; + file >> clusters; + file >> eci; + file >> max_flip; + file >> E_ref; + } + + void MF_ThermoData::write(ostream &file) { + file << object_label() << endl; + file << volume << endl; + file << ideal_spin << endl; + file << clusters << endl; + file << eci << endl; + file << max_flip << endl; + file << E_ref << endl; + } + +Real MF_ThermoData::spin_precision=1e-3; + +LTE_ThermoData::LTE_ThermoData(void): PhaseThermoData() {} + +LTE_ThermoData::LTE_ThermoData(const Structure &lattice, + const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list): PhaseThermoData() { + init(lattice,space_group,str,cluster_list,eci_list); +} + +void LTE_ThermoData::init(const Structure &lattice, + const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list) { + cur_phase=this; + + x0=0.; + volume=str.atom_pos.get_size(); + E0=volume*find_empty_eci(cluster_list,eci_list)/(Real)(lattice.atom_pos.get_size()); + + dE.resize(str.atom_pos.get_size()); + dx.resize(str.atom_pos.get_size()); + zero_array(&(dE)); + zero_array(&(dx)); + + rMatrix3d inv_cell=!str.cell; + for (int s=0; s o_cluster; + Array o_eci; + find_clusters_overlapping_site(&o_cluster,&o_eci, + str.atom_pos(s),lattice,space_group,cluster_list,eci_list,1); + for (int c=0; cdF) return; + if (dF/T < 20) { + Real b=exp(-dF/T); + num+=dx(i)*b; + numE+=dF*b; + den+=b; + } + } + cur_phi=(E0-mu*x0-T*den)/volume; + cur_x=num/volume; + cur_E=(E0-mu*x0+numE)/volume; + } + } + + Real LTE_ThermoData::E(Real T, Real mu) { + set_T_mu(T,mu); + return cur_E; + } + + void LTE_ThermoData::read(istream &file) { + file >> E0; + file >> x0; + file >> volume; + file >> dE; + file >> dx; + } + + void LTE_ThermoData::write(ostream &file) { + file << object_label() << endl; + file << E0 << endl; + file << x0 << endl; + file << volume << endl; + file << dE << endl; + file << dx << endl; + } + + Real HTE_ThermoData::F_of_x(Real T, Real x) { + Real e=0; + for (int i=0; i1.-zero_tolerance) { + return e; + } + return e+T*((1+x)*log(1+x)+(1-x)*log(1-x)-2.*log(2.))/2.; + } + + Real HTE_ThermoData::mu_of_x(Real T, Real x) { + if ((1.-fabs(x))mu ? -1 : 1); + while ( side*(mu-mu_of_x(T,x)) > 0. ) { + oldx=x; + x=(side+x)/2.; + } + Real min_x=MIN(x,oldx); + Real max_x=MAX(x,oldx); + while ((max_x-min_x)>dx) { + Real x=(max_x+min_x)/2.; + if (mu_of_x(T,x)>mu) { + max_x=x; + } + else { + min_x=x; + } + } + return (max_x+min_x)/2.; + } + +HTE_ThermoData::HTE_ThermoData(void): PhaseThermoData() {cur_phase=this;} + +HTE_ThermoData::HTE_ThermoData(const Structure &lattice, + const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list): PhaseThermoData() { + init(lattice,space_group,str,cluster_list,eci_list); +} + +void HTE_ThermoData::init(const Structure &lattice, + const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list) { + simple_init(lattice.atom_pos.get_size(),space_group,cluster_list,eci_list); +} + +void HTE_ThermoData::simple_init(int atom_per_unit_cell, + const SpaceGroup &space_group, + const LinkedList &cluster_list, + const LinkedList &eci_list) { + cur_phase=this; + int max_size=0; + LinkedListIterator c(cluster_list); + for (; c; c++) { + max_size=MAX(max_size,c->get_size()); + } + LinkedListIterator e(eci_list); + poly_x.resize(max_size+1); + zero_array(&poly_x); + c.init(cluster_list); + for (; c; c++,e++) { + poly_x(c->get_size())+=(*e)*(Real)calc_multiplicity(*c,space_group.cell,space_group.point_op,space_group.trans)/(Real)atom_per_unit_cell; + } + } + + void HTE_ThermoData::set_T_mu(Real T, Real mu) { + cur_x=x_of_mu(T,mu); + cur_phi=F_of_x(T,cur_x)-mu*cur_x; + } + + void HTE_ThermoData::read(istream &file) { + file >> poly_x; + } + + void HTE_ThermoData::write(ostream &file) { + file << object_label() << endl; + file << poly_x; + } + +Real HTE_ThermoData::dx=1e-3; + + SampledThermoData::SampledThermoData(void): PhaseThermoData() {} + + SampledThermoData::SampledThermoData(Real _T0, Real _dT, const Array &_mu0, + Real _dmu, const Array &_xs, + const Array &_phis): + PhaseThermoData(), T0(_T0), dT(_dT), mu0(_mu0), dmu(_dmu), xs(_xs), phis(_phis) { + cur_phase=this; + } + + void SampledThermoData::set_T_mu(Real T, Real mu) { + cur_phi=MAXFLOAT; + cur_x=0.; + int iT=(int)floor((T-T0)/dT); + if (iT<0 || iT>=mu0.get_size()-1) return; + Real fT=(T-T0-(Real)iT*dT)/dT; + int imu[2]; + for (int l=0; l<2; l++) { + imu[l]=(int)floor((mu-mu0(iT+l))/dmu); + if (imu[l]<0) { + cur_x=xs(iT+l)(0); + return; + } + if (imu[l]>=xs(iT+l).get_size()-1) { + cur_x=xs(iT+l)(xs(iT+l).get_size()-1); + return; + } + } + Real fmu=(mu-(mu0(iT)+imu[0]*dmu))/dmu; + cur_x =(1-fT)*((1-fmu)*xs(iT )(imu[0])+fmu*xs(iT )(imu[0]+1)) + + fT *((1-fmu)*xs(iT+1)(imu[1])+fmu*xs(iT+1)(imu[1]+1)); + cur_phi=(1-fT)*((1-fmu)*phis(iT )(imu[0])+fmu*phis(iT )(imu[0]+1)) + + fT *((1-fmu)*phis(iT+1)(imu[1])+fmu*phis(iT+1)(imu[1]+1)); + } + + void SampledThermoData::read(istream &file) { + file >> T0; + file >> dT; + file >> mu0; + file >> dmu; + file >> xs; + file >> phis; + } + + void SampledThermoData::write(ostream &file) { + file << object_label() << endl; + file << T0 << endl; + file << dT << endl; + file << mu0 << endl; + file << dmu << endl; + file << xs << endl; + file << phis << endl; + } + + PhaseThermoData* PhaseListT::find_phase(Real T) { + LinkedListIterator i(list); + LinkedListIterator j(T_limit); + while (j && (*j)set_T_mu(T,mu); + cur_phi=phase->phi(); + cur_x=phase->x(); + } + + void PhaseListT::read(istream &file) { + int size; + file >> size; + for (int i=0; i> T; + T_limit << new Real(T); + } + for (int i=0; i iT(T_limit); + for ( ; iT; iT++) { + file << *iT << endl; + } + LinkedListIterator il(list); + for ( ; il; il++) { + il->write(file); + } + } + + PhaseThermoData* PhaseList::find_phase(Real T, Real mu) { + LinkedListIterator i(list); + Real min_phi=MAXFLOAT; + PhaseThermoData *phase=NULL; + for (; i; i++) { + if (i->phi(T,mu)phi(); + phase=i; + } + } + return phase; + } + + PhaseList::PhaseList(void): PhaseThermoData(), list() {cur_phase=this;} + + PhaseThermoData *PhaseList::add_phase(PhaseThermoData *phase) { + list << phase; + return phase; + } + + void PhaseList::set_T_mu(Real T, Real mu) { + PhaseThermoData *phase=find_phase(T,mu); + phase->set_T_mu(T,mu); + cur_phi=phase->phi(); + cur_x=phase->x(); + } + + void PhaseList::read(istream &file) { + int size; + file >> size; + for (int i=0; i il(list); + for ( ; il; il++) { + il->write(file); + } + } + + MiscibilityGap::MiscibilityGap(void): PhaseThermoData() {hi=NULL; lo[0]=NULL; lo[1]=NULL;} + + MiscibilityGap::MiscibilityGap(PhaseThermoData *_hi, PhaseThermoData *_lo0, PhaseThermoData *_lo1): PhaseThermoData() { + hi=_hi; + lo[0]=_lo0; + lo[1]=_lo1; + } + + MiscibilityGap::~MiscibilityGap() {delete hi; delete lo[0]; delete lo[1];} + + void MiscibilityGap::set_T_mu(Real T, Real mu) { + if (lo[0]->phi(T,mu) < lo[1]->phi(T,mu)) { + if (hi->phi(T,mu) < lo[0]->phi(T,mu)) + cur_phase=hi; + else + cur_phase=lo[0]; + } + else { + if (hi->phi(T,mu) < lo[1]->phi(T,mu)) + cur_phase=hi; + else + cur_phase=lo[1]; + } + cur_phi=cur_phase->phi(); + cur_x=cur_phase->x(); + } + + void MiscibilityGap::read(istream &file) { + hi=read_phase(file); + lo[0]=read_phase(file); + lo[1]=read_phase(file); + } + + void MiscibilityGap::write(ostream &file) { + file << object_label() << endl; + hi->write(file); + lo[0]->write(file); + lo[1]->write(file); + } + + PhaseObjectList::PhaseObjectList(void): list() { + list << new MF_ThermoData() << new LTE_ThermoData() + << new HTE_ThermoData() << new SampledThermoData() + << new PhaseListT() << new PhaseList() + << new MiscibilityGap(); + } + +PhaseObjectList phaseobjectlist; + +PhaseThermoData *read_phase(istream &file) { + char buf[MAX_LINE_LEN]; + buf[0]=0; + do { + file.get(buf,MAX_LINE_LEN-1); + file.get(); + } while (strlen(buf)==0); + if (file.eof()) return NULL; + LinkedListIterator i(phaseobjectlist.list); + for ( ;i; i++) { + if (strcmp(buf,i->object_label())==0) { + PhaseThermoData *phase=i->new_object(); + phase->read(file); + return phase; + } + } + return NULL; +} + +Real tiny_phi=1e-4; + +void recurse_phase_boundaries(LinkedList *pb_list, const LinkedList &phases, Real T, Real mu0, Real mu1, Real dx) { + LinkedListIterator a(phases); + PhaseThermoData *phase[2]={NULL,NULL}; + Real phi[2]={MAXFLOAT,MAXFLOAT}; + for ( ; a; a++) { + if (a->phi(T,mu0)phi(T,mu0); + } + if (a->phi(T,mu1)phi(T,mu1); + } + } + if (phase[0]!=phase[1] || + (phase[0]==phase[1] && phase[0]->get_sub_phase(T,mu0)!=phase[1]->get_sub_phase(T,mu1)) + ) { + Real mu; + Real phi0=phase[0]->phi(T,mu0); + Real phi1=phase[1]->phi(T,mu1); + Real x0=phase[0]->x(T,mu0); + Real x1=phase[1]->x(T,mu1); + // cout << phi0 << " " << x0 << " " << phi1 << " " << x1 << endl; + mu=((phi1+x1*mu1)-(phi0+x0*mu0))/(x1-x0); + // cout << mu0 << " " << mu << " " << mu1 << endl; + if (mumu1-0.1*(mu1-mu0)) { + mu=(mu0+mu1)/2.; + } + if (fabs(phase[0]->x(T,mu0) - phase[0]->x(T,mu0-(mu-mu0))) < dx && fabs(phase[1]->x(T,mu1) - phase[1]->x(T,mu1+(mu1-mu))) < dx ) { + PhaseBoundary *pb=new PhaseBoundary; + pb->x[0]=phase[0]->x(T,mu0); + pb->x[1]=phase[1]->x(T,mu1); + pb->phase[0]=phase[0]; + pb->phase[1]=phase[1]; + (*pb_list) << pb; + } + else { + recurse_phase_boundaries(pb_list, phases,T,mu0,mu,dx); + recurse_phase_boundaries(pb_list, phases,T,mu,mu1,dx); + } + } +} + +void calc_phase_boundaries(LinkedList *pb_list, const LinkedList &phases, + Real T, Real dx, const Array &mu_hints) { + for (int i=1; i &pb_list1, const LinkedList &pb_list2) { + LinkedListIterator i1(pb_list1); + LinkedListIterator i2(pb_list2); + for (; i1 && i2; i1++, i2++) { + if (i1->phase[0]!=i2->phase[0] || i1->phase[1]!=i2->phase[1]) break; + } + if (i1 || i2) { + return 0; + } + else { + return 1; + } +} + +void add_one_T(LinkedList *two_phase_list, Real T, const LinkedList &pb_list) { + LinkedListIterator i(pb_list); + for (; i; i++) { + LinkedListIterator j(*two_phase_list); + for (; j; j++) { + if (i->phase[0]==j->phase[0] && i->phase[1]==j->phase[1]) { + break; + } + } + if (!j) { + TwoPhaseRegion *tpr=new TwoPhaseRegion; + tpr->phase[0]=i->phase[0]; + tpr->phase[1]=i->phase[1]; + two_phase_list->add(tpr,j); + } + Array *conc=new Array(2); + (*conc)(0)=i->x[0]; + (*conc)(1)=i->x[1]; + j->x_list << conc; + j->T_list << new Real(T); + } +} + +void calc_phase_boundaries(LinkedList *two_phase_list, const LinkedList &phases, + Real dT, Real dx, const Array &mu_hints) { + LinkedList old_pb_list; + LinkedList pb_list; + calc_phase_boundaries(&old_pb_list, phases,dT,dx,mu_hints); + Real T=2*dT; + while (1) { + calc_phase_boundaries(&pb_list, phases,T,dx,mu_hints); + if (!same_phases(pb_list,old_pb_list)) { + LinkedListIterator i(old_pb_list); + LinkedListIterator j(old_pb_list); + j++; + while (j) { + LinkedListIterator k(pb_list); + for ( ; k; k++) { + if (k->phase[0]==i->phase[1] || k->phase[1]==i->phase[1]) break; + } + if (!k) { + Real mean=(i->x[1] + j->x[0])/2.; + i->x[1]=mean; + j->x[0]=mean; + } + i++; + j++; + } + add_one_T(two_phase_list, T,old_pb_list); + } + add_one_T(two_phase_list, T,pb_list); + if (pb_list.get_size()==0) break; + T+=dT; + old_pb_list.delete_all(); + transfer_list(&old_pb_list,&pb_list); + } +} + +void write_phase_diagram(const LinkedList &two_phase_list, ostream &file) { + LinkedListIterator i(two_phase_list); + for (; i; i++) { + Array x; + Array T; + LinkedList_to_Array(&x,i->x_list); + LinkedList_to_Array(&T,i->T_list); + for (int j=0; j=0; j--) { + file << x(j)(1) << " " << T(j) << endl; + } + file << endl; + } +} + +Real E_from_phi(Real T, Real mu, PhaseThermoData *p) { + Real dT=MIN(T,1e-3); + return p->phi(T,mu)-T*(p->phi(T+dT,mu)-p->phi(T-dT,mu))/(2*dT); +} diff --git a/src/drawpd.hh b/src/drawpd.hh new file mode 100644 index 0000000..64f1e66 --- /dev/null +++ b/src/drawpd.hh @@ -0,0 +1,218 @@ +#ifndef _DRAWPD_H_ +#define _DRAWPD_H_ + +#include +#include "arraylist.h" +#include "calccorr.h" + +class PhaseThermoData { +protected: + Real cur_phi; + Real cur_x; + PhaseThermoData *cur_phase; +public: + PhaseThermoData(void) {} + virtual void set_T_mu(Real T, Real mu) {} + virtual void read(istream &file) {} + virtual void write(ostream &file) {} + virtual char *object_label(void) {return "";} + virtual PhaseThermoData *new_object(void) {return this;} + virtual void init( const Structure &lattice, const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list) {} + Real phi(void) {return cur_phi;} + Real x(void) {return cur_x;} + PhaseThermoData* get_sub_phase(void) {return cur_phase;} + Real phi(Real T, Real mu) {set_T_mu(T,mu); return cur_phi;} + Real x(Real T, Real mu) {set_T_mu(T,mu); return cur_x;} + PhaseThermoData* get_sub_phase(Real T, Real mu) {set_T_mu(T,mu); return cur_phase;} +}; + +class MF_ThermoData: public PhaseThermoData { + protected: + static Real spin_precision; + Real volume; + Real max_flip; + Array ideal_spin; + Array clusters; + Array eci; + Real E_ref; + public: + MF_ThermoData(void); + MF_ThermoData( const Structure &lattice, const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list); + void init( const Structure &lattice, const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list); + void set_T_mu(Real T, Real mu); + void read(istream &file); + void write(ostream &file); + char *object_label(void) {return "MF";} + PhaseThermoData *new_object(void) {return new MF_ThermoData();} +}; + +class LTE_ThermoData: public PhaseThermoData { + public: + Real E0; + Real x0; + Real volume; + Array dE; + Array dx; + Real cur_E; + public: + LTE_ThermoData(void); + LTE_ThermoData( const Structure &lattice, const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, const LinkedList &eci_list); + void init( const Structure &lattice, const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list); + void set_T_mu(Real T, Real mu); + Real E(Real T, Real mu); + Real E(void) {return cur_E;} + void read(istream &file); + void write(ostream &file); + char *object_label(void) {return "LTE";} + PhaseThermoData *new_object(void) {return new LTE_ThermoData();} +}; + +class HTE_ThermoData: public PhaseThermoData { + protected: + Array poly_x; + static Real dx; + // protected: + public: + Real F_of_x(Real T, Real x); + Real mu_of_x(Real T, Real x); + Real x_of_mu(Real T, Real mu); + public: + HTE_ThermoData(void); + HTE_ThermoData(const Structure &lattice, + const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list); + void init( const Structure &lattice, const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list); + void simple_init(int atom_per_unit_cell, const SpaceGroup &space_group, + const LinkedList &cluster_list, const LinkedList &eci_list); + void set_T_mu(Real T, Real mu); + void read(istream &file); + void write(ostream &file); + char *object_label(void) {return "HTE";} + PhaseThermoData *new_object(void) {return new HTE_ThermoData();} +}; + +class SampledThermoData: public PhaseThermoData { + Real T0; + Real dT; + Array mu0; + Real dmu; + Array xs; + Array phis; + public: + SampledThermoData(void); + SampledThermoData(Real _T0, Real _dT, const Array &_mu0, + Real _dmu, const Array &_xs, + const Array &_phis); + void set_T_mu(Real T, Real mu); + void read(istream &file); + void write(ostream &file); + char *object_label(void) {return "TAB";} + PhaseThermoData *new_object(void) {return new SampledThermoData();} + const Array & get_mu_data(void) {return mu0;} + const Array & get_x_data(void) {return xs;} + const Array & get_phi_data(void) {return phis;} +}; + +class PhaseListT: public PhaseThermoData { + protected: + LinkedList list; + LinkedList T_limit; + protected: + PhaseThermoData* find_phase(Real T); + public: + PhaseListT(void); + PhaseThermoData *add_phase(PhaseThermoData *phase, Real Tmax=MAXFLOAT); + void set_T_mu(Real T, Real mu); + void read(istream &file); + void write(ostream &file); + char *object_label(void) {return "lstT";} + PhaseThermoData *new_object(void) {return new PhaseListT();} +}; + +class PhaseList: public PhaseThermoData { + protected: + LinkedList list; + protected: + PhaseThermoData* find_phase(Real T, Real mu); + public: + PhaseList(void); + PhaseThermoData *add_phase(PhaseThermoData *phase); + void set_T_mu(Real T, Real mu); + void read(istream &file); + void write(ostream &file); + char *object_label(void) {return "lst";} + PhaseThermoData *new_object(void) {return new PhaseList();} +}; + +class MiscibilityGap: public PhaseThermoData { + public: + PhaseThermoData *lo[2]; + PhaseThermoData *hi; + public: + MiscibilityGap(void); + MiscibilityGap(PhaseThermoData *_hi, PhaseThermoData *_lo0, PhaseThermoData *_lo1); + ~MiscibilityGap(); + void set_T_mu(Real T, Real mu); + void read(istream &file); + void write(ostream &file); + char *object_label(void) {return "MG";} + PhaseThermoData *new_object(void) {return new MiscibilityGap();} +}; + +class PhaseObjectList { + public: + LinkedList list; + PhaseObjectList(void); +}; + +extern PhaseObjectList phaseobjectlist; + +PhaseThermoData *read_phase(istream &file); + +class PhaseBoundary { + public: + Real x[2]; + PhaseThermoData *phase[2]; +}; + +extern Real tiny_phi; + +class TwoPhaseRegion { + public: + LinkedList x_list; + LinkedList T_list; + PhaseThermoData *phase[2]; +}; + +void recurse_phase_boundaries(LinkedList *pb_list, const LinkedList &phases, Real T, Real mu0, Real mu1, Real dx); +void calc_phase_boundaries(LinkedList *pb_list, const LinkedList &phases, + Real T, Real dx, const Array &mu_hints); +int same_phases(const LinkedList &pb_list1, const LinkedList &pb_list2); +void add_one_T(LinkedList *two_phase_list, Real T, const LinkedList &pb_list); + +void calc_phase_boundaries(LinkedList *two_phase_list, const LinkedList &phases, + Real dT, Real dx, const Array &mu_hints); +void write_phase_diagram(const LinkedList &two_phase_list, ostream &file); + +Real E_from_phi(Real T, Real mu, PhaseThermoData *p); + +#endif diff --git a/src/ehmass.c++ b/src/ehmass.c++ new file mode 100644 index 0000000..7295061 --- /dev/null +++ b/src/ehmass.c++ @@ -0,0 +1,151 @@ +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include "lstsqr.h" +#include "xtalutil.h" + +int unroll_tri(int s,int t) { + int i=MAX(s,t); + int j=MIN(s,t); + return (i*(i+1)/2+j); +} + +int main(int argc, char *argv[]) { + char *delim="\t"; + int dohelp=0; + char *strfilename="str.out"; + int sigdig=5; + Real kr=0.5; + int nosym=0; + AskStruct options[]={ + {"","Electron and Hole Masses " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-s","Input file defining the structure (default: str.out)",STRINGVAL,&strfilename}, + {"-ns","Turn off symmetry",BOOLVAL,&nosym}, + {"-z","Tolerance for finding symmetry operations (default: 1e-3)",REALVAL,&zero_tolerance}, + {"-kr","K-space radius",REALVAL,&kr}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + ofstream logfile("ehmass.log"); + logfile.setf(ios::fixed); + logfile.precision(sigdig); + cout.setf(ios::fixed); + cout.precision(sigdig); + + Structure str; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream strfile(strfilename); + if (!strfile) ERRORQUIT("Unable to open structure file"); + parse_lattice_file(&str.cell, &str.atom_pos, &str.atom_type, &labellookup, &label, strfile, &axes); + } + SpaceGroup spacegroup; + spacegroup.cell=str.cell; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,str.cell,str.atom_pos,str.atom_type); +//cerr << spacegroup.point_op.get_size() << endl; + rMatrix3d rec_lat=!(~str.cell); + rMatrix3d inv_rec_lat=!rec_lat; + LinkedList kpoint_list; + LinkedList E_list; + while (1) { + rVector3d kp; + rVector2d E; + cin >> kp; +//cerr << kp << endl; + if (cin.eof()) break; + cin >> E; + kp=flip_into_brillouin_1(rec_lat*kp,rec_lat); + if (norm(kp) i(kpoint_list); + for (; i; i++) { + if (cylinder_norm(inv_rec_lat*(tkp-(*i))) mat(kpoint_list.get_size(),7); + logfile << "nb of k points: " << kpoint_list.get_size() << endl << endl;; + LinkedListIterator ik(kpoint_list); + for (int j=0; ik; ik++,j++) { + int i=0; + for (int t=0; t<3; t++) { + for (int s=0; s<=t; s++) { + mat(j,i)=(*ik)(t)*(*ik)(s); + i++; + } + } + mat(j,6)=1.; + } + char carrier[2]={'h','e'}; + for (int b=0; b<2; b++) { + Array vec(E_list.get_size()); + LinkedListIterator iE(E_list); + for (int j=0; iE; iE++,j++) { + vec(j)=(*iE)(b); + } +// cerr << mat << endl; +// cerr << vec << endl; + Array imass; + calc_ols(&imass,mat,vec); + Array pvec,dvec; + product(&pvec,mat,imass); + diff(&dvec,vec,pvec); + + Real n=(Real)(vec.get_size()); + Real e2=inner_product(dvec,dvec)/n; + logfile << "Carrier: " << carrier[b] << " rms= " << sqrt(e2); + Real R2=1.-e2/(inner_product(vec,vec)/n-sqr(mean(vec))); + logfile << " R^2= " << R2 << endl; + logfile << "k_x k_y k_z predicted_E actual_E diff_e" << endl; + LinkedListIterator ik(kpoint_list); + for (int j=0; ik; ik++,j++) { + logfile << (rVector3d)(*ik) << " " << pvec(j) << " " << vec(j) << " " << dvec(j) << endl; + } + logfile << endl << "end" << endl; + + rMatrix3d mass; + for (int t=0; t<3; t++) { + for (int s=0; s<3; s++) { + mass(s,t)=imass(unroll_tri(s,t)); + } + } + mass=!mass; + { + ostrstream filename; + filename << carrier[b] << "mass" << '\0'; + ofstream file(filename.str()); + file.setf(ios::fixed); + file.precision(sigdig); + for (int t=0; t<3; t++) { + for (int s=0; s<3; s++) { + file << mass(t,s) << delim; + } + file << endl; + } + } + } +} diff --git a/src/embpar.c++ b/src/embpar.c++ new file mode 100644 index 0000000..fa38d7d --- /dev/null +++ b/src/embpar.c++ @@ -0,0 +1,63 @@ +#include +#include +#include +#include +#include "misc.h" +#include "array.h" + +main(int argc, char **argv) +{ + int numproc, my_id; + MPI_Status status; + + MPI_Init(&argc, &argv); + MPI_Comm_size(MPI_COMM_WORLD, &numproc); + MPI_Comm_rank(MPI_COMM_WORLD, &my_id); + + Array done(numproc); + zero_array(&done); + + for (int i=0; i +#include +#include "mclib.h" +#include "drawpd.h" +#include "parse.h" +#include "getvalue.h" +#include "lstsqr.h" +#include "version.h" +#include "teci.h" +#include "keci.h" +#include "plugin.h" + +extern char *helpstring; + +GenericPlugIn *GenericPlugIn::list=NULL; + +int main(int argc, char *argv[]) { + char *delim="\t"; + int help=0; + Real mu_l[]={MAXFLOAT,MAXFLOAT}; + Real T_l[]={MAXFLOAT,MAXFLOAT}; + Real dmu=MAXFLOAT; + Real dT=MAXFLOAT; + Real db=MAXFLOAT; + int do_abs=0; + Real enclosed_radius=0.; + Real phi0=MAXFLOAT; + int n_equil=-1; + int n_step=-1; + Real x_prec=0.; + int which_col=1; + int can_mode=0; + Real init_conc=MAXFLOAT; + int init_gs=-2; + int innerT=0; + Real threshold=3.; + int sigdig=6; + int quiet=0; + int dodb=0; + char *outfile="mc.out"; + char *snapshotfile="mcsnapshot.out"; + char *snapshotnumfile=""; + Real kboltzman=1.; + int keV=0; + int seed=0; + int droplast=0; + int addmux=0; + char *my_init_str=""; + char *kspace_labels=""; + AskStruct options[]={ + {"","Eazy Monte Carlo Code " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Help",BOOLVAL,&help}, + {"-mu0","initial chemical potential",REALVAL,&mu_l[0]}, + {"-T0","initial temperature",REALVAL,&T_l[0]}, + {"-mu1","final chemical potential",REALVAL,&mu_l[1]}, + {"-T1","final temperature",REALVAL,&T_l[1]}, + {"-dmu","chemical potential step",REALVAL,&dmu}, + {"-dT","temperature step",REALVAL,&dT}, + {"-db","inverse temperature step",REALVAL,&db}, + {"-cm","Set Canonical mode",BOOLVAL,&can_mode}, + {"-x","Set concentration",REALVAL,&init_conc}, + {"-abs","take chemical potentials as absolute quantities (as in mc.out)",BOOLVAL,&do_abs}, + {"-phi0","initial (grand) canonical potential",REALVAL,&phi0}, + {"-er","set the system size so that a sphere of that radius must fit inside the simulation cell",REALVAL,&enclosed_radius}, + {"-eq","number of equilibration passes",INTVAL,&n_equil}, + {"-n","number of averaging passes",INTVAL,&n_step}, + {"-dx","Target precision for the average concentration (optional, replaces -n and -eq)",REALVAL,&x_prec}, + {"-aq","Alternative quantity that must meet the tolerance specified by -dx. " + "0: energy, 1: concentration (default), 2: long-range order, 3- correlations",INTVAL,&which_col}, + {"-gs","which ground state to use as initial config (-gs=-1 to use random state, c=1/2)",INTVAL,&init_gs}, + {"-innerT","inner loop over T",BOOLVAL,&innerT}, + {"-tstat","Critical value of the test for discontinuity",REALVAL,&threshold}, + {"-sigdig","Number of significant digits printed",INTVAL,&sigdig}, + {"-q","Quiet (do not write to stdout)",BOOLVAL,&quiet}, + {"-o","Output file (default: mc.out)",STRINGVAL,&outfile}, + {"-oss","Output snapshot file (default: mcsnapshot.out)",STRINGVAL,&snapshotfile}, + {"-opss","Output periodic snapshot files (default: do not write)",STRINGVAL,&snapshotnumfile}, + {"-k","Boltzman's constant (conversion factor from T to energy)",REALVAL,&kboltzman}, + {"-keV","Set Boltzman's constant to 8.617e-5 so that temperature is in K when energy is in eV",BOOLVAL,&keV}, + {"-sd","Seed for random number generation (default: use clock)",INTVAL,&seed}, + {"-dl","Drop the last data point of each inner loop (after the phase transition occured)",BOOLVAL,&droplast}, + {"-g2c","Convert output to canonical rather than grand-canonical quantities",BOOLVAL,&addmux}, + {"-is","File name containing a user-specified initial configuration (replaces -gs)",STRINGVAL,&my_init_str}, + {"-ks","Specify how k space ECI are calculated (e.g. -ks=cs).",STRINGVAL,&kspace_labels} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (help) { + cout << helpstring; + exit(1); + } + if (init_conc!=MAXFLOAT) { + if (!is_between(init_conc,-1.,1.)) ERRORQUIT("Initial composition out of ]-1,1[ range."); + // can_mode=1; + } + if (can_mode) { + mu_l[0]=0.; + mu_l[1]=0.; + do_abs=1; + cerr << "Running in canonical mode: limited features available" << endl; + } + if (strlen(my_init_str)>0) { + init_gs=-1; + } + + if (keV) {kboltzman=8.617e-5;} + if (T_l[0]!=MAXFLOAT && T_l[1]==MAXFLOAT && mu_l[0]!=MAXFLOAT && mu_l[1]==MAXFLOAT) {mu_l[1]=mu_l[0]; T_l[1]=T_l[0];} + if (T_l[0]!=MAXFLOAT && T_l[1]!=MAXFLOAT && mu_l[0]!=MAXFLOAT && mu_l[1]==MAXFLOAT) mu_l[1]=mu_l[0]; + if (mu_l[0]!=MAXFLOAT && mu_l[1]!=MAXFLOAT && T_l[0]!=MAXFLOAT && T_l[1]==MAXFLOAT) T_l[1]=T_l[0]; + if (mu_l[0]==mu_l[1]) {dmu=1.; innerT=1;} + if (T_l[0]==T_l[1]) {dT=1.; db=MAXFLOAT;} + if (mu_l[0]==MAXFLOAT) ERRORQUIT("Specify -mu0"); + if (mu_l[1]==MAXFLOAT) ERRORQUIT("Specify -mu1"); + if ( T_l[0]==MAXFLOAT) ERRORQUIT("Specify -T0"); + if ( T_l[1]==MAXFLOAT) ERRORQUIT("Specify -T1"); + if ( dmu==MAXFLOAT) ERRORQUIT("Specify -dmu"); + if (! ((n_equil!=-1 && n_step!=-1) || (x_prec>0.))) ERRORQUIT("Specify either (-eq and -n) or -dx"); + if ( ((n_equil!=-1 || n_step!=-1) && (x_prec>0.))) ERRORQUIT("Specify either (-eq and -n) or -dx"); + if (init_gs==-2) ERRORQUIT("Specify -gs (use -gs=-1 for disordered state)"); + if ( ! ((dT==MAXFLOAT) ^ (db==MAXFLOAT)) ) ERRORQUIT("Specify either -dT or -db"); + if ( x_prec<0 ) ERRORQUIT("-dx value must be positive"); + + T_l[0]*=kboltzman; + T_l[1]*=kboltzman; + if (dT!=MAXFLOAT) { + dT*=kboltzman; + } + else { + db/=kboltzman; + dodb=1; + } + + rndseed(seed); + int snapshotnum=0; + + Structure lattice; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream latticefile("lat.in"); + if (!latticefile) ERRORQUIT("Unable to open lat.in"); + parse_lattice_file(&lattice.cell, &lattice.atom_pos, &lattice.atom_type, &labellookup, &label, latticefile, &axes); + wrap_inside_cell(&lattice.atom_pos,lattice.atom_pos,lattice.cell); + } + for (int i=0; i2) + ERRORQUIT ("For multicomponent systems, use memc2."); + } + SpaceGroup spacegroup; + spacegroup.cell=lattice.cell; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,lattice.cell,lattice.atom_pos,lattice.atom_type); + if (contains_pure_translations(spacegroup.point_op,spacegroup.trans)) { + cerr << "Warning: unit cell is not primitive." << endl; + } + + int nbsite=0; + for (nbsite=0; nbsite clusterlist; + { + ifstream clusterfile("clusters.out"); + if (!clusterfile) ERRORQUIT("Unable to open clusters.out"); + Real maxlen=read_clusters_and_eci(&clusterlist,NULL,clusterfile,clusterfile,axes); + if (enclosed_radius==0) enclosed_radius=maxlen; + } + + PolyInterpolatorBig > teci; + PolyInterpolatorBig > teeci; + read_t_dep_eci_file(&teci,&teeci,clusterlist.get_size(),kboltzman); + + Array gs_list; + { + ifstream strfile("gs_str.out"); + if (!strfile) ERRORQUIT("Unable to open gs_str.out"); + LinkedList gs_llist; + while (!strfile.eof()) { + Structure str; + parse_structure_file(&str.cell,&str.atom_pos,&str.atom_type,label,strfile); + if (!fix_atom_type(&str, lattice, labellookup,1)) ERRORQUIT("Error reading gs_str.out"); + skip_to_next_structure(strfile); + wrap_inside_cell(&str.atom_pos,str.atom_pos,str.cell); + for (int s=0; s=nb_gs || init_gs<-1) ERRORQUIT("-gs option is out of range."); + + Array gs_concentration(nb_gs),gs_energy(nb_gs); + + for (int gs=0; gs ecilist; + make_eci_list(&ecilist,teci,0.); + LTE_ThermoData gs_lte(lattice_only,spacegroup,gs_list(gs),clusterlist,ecilist); + gs_concentration(gs)=gs_lte.x(0,0); + gs_energy(gs)=gs_lte.phi(0,0); + } + for (int gs=0; gsgs_concentration(gs+1)) ERRORQUIT("Ground states must be in increasing order of concentration in gs_str.out."); + } + Array mu_flat(nb_gs-1); + for (int gs=0; gs2) { + mu_l[0]-=1.; + mu_l[1]-=1.; + for (int s=0; s<2; s++) { + if (init_gs!=-1 && fabs(mu_l[s]-((Real)init_gs-0.5))>0.5 && mu_l[s]>-0.5 && mu_l[s]<(Real)nb_gs-1.5) { + cerr << "Warning: Chemical potential " << mu_l[s]+1. << " may not stabilize ground state " << init_gs << endl; + } + int gs=(int)floor(mu_l[s]); + if (gs<0) gs=0; + if (gs>nb_gs-3) gs=nb_gs-3; + Real frac_gs=mu_l[s]-(Real)gs; + mu_l[s]=(1-frac_gs)*mu_flat(gs)+frac_gs*mu_flat(gs+1); + } + dmu=dmu*(mu_flat(nb_gs-2)-mu_flat(0))/(nb_gs-2); + } + } + if (dodb) { + if (!is_between(1./(1./T_l[0]+db),T_l[0],T_l[1])) {db=-db;} + } + else { + if (!is_between(T_l[0]+dT,T_l[0],T_l[1])) {dT=-dT;} + } + if (!is_between(mu_l[0]+dmu,mu_l[0],mu_l[1])) {dmu=-dmu;} + + Structure *p_init_str,*my_p_init_str; + p_init_str=(init_gs==-1 ? &disordered : &gs_list(init_gs)); + Structure mystr; + if (strlen(my_init_str)>0) { + ifstream strfile(my_init_str); + if (!strfile) ERRORQUIT("Unable to open initial structure file"); + parse_structure_file(&mystr.cell,&mystr.atom_pos,&mystr.atom_type,label,strfile); + if (!fix_atom_type(&mystr, lattice, labellookup,1)) ERRORQUIT("Error reading initial structure file"); + wrap_inside_cell(&mystr.atom_pos,mystr.atom_pos,mystr.cell); + for (int s=0; s> simple_supercell; + } + else { + find_common_simple_supercell(&simple_supercell,lattice_only.cell,my_p_init_str->cell); + rMatrix3d mat_simple_supercell; + mat_simple_supercell.diag(to_real(simple_supercell)); + iVector3d fit_sphere; + fit_sphere=find_sphere_bounding_box(lattice_only.cell*mat_simple_supercell,2.*enclosed_radius); + for (int i=0; i<3; i++) { + simple_supercell(i)*=fit_sphere(i); + } + } + if (!quiet) cout << "Supercell size: " << simple_supercell << endl; + MonteCarlo *pmc; + MultiKSpaceECI multi_kspace_eci; + if (strlen(kspace_labels)>0) { + if (!check_plug_in(KSpaceECI(),kspace_labels)) { + ERRORQUIT("Aborting"); + } + make_plug_in_list(&multi_kspace_eci, kspace_labels); + multi_kspace_eci.check_only_one(); + LinkedListIterator i(multi_kspace_eci); + for (; i; i++) { + i->static_init(lattice_only); + } + pmc=new KSpaceMonteCarlo(lattice_only,simple_supercell,spacegroup,clusterlist,&multi_kspace_eci); + } + else { + pmc=new MonteCarlo(lattice_only,simple_supercell,spacegroup,clusterlist); + } + + ofstream mcfile(outfile); + mcfile.setf(ios::fixed); + mcfile.precision(sigdig); + cout.setf(ios::fixed); + cout.precision(sigdig); + + if (can_mode) { + Real T=T_l[0]; + Real phi=(phi0==MAXFLOAT ? (init_gs==-1 ? 0 : gs_energy(init_gs)) : phi0); + Real old_E; + int new_scan=1; + LinkedList order_list; + + pmc->init_structure(*my_p_init_str); + if (init_conc!=MAXFLOAT) pmc->set_concentration(init_conc); + + while (1) { + Array eci; + teci.interpol(&eci,T); + pmc->set_eci(eci); + pmc->init_run(T,0.); + if (new_scan) { + if (x_prec==0.) pmc->run(n_equil,2); + } + + MCOutputData mcdata; + run_mc(&mcdata,pmc,2,n_step,x_prec,which_col); + + if (strlen(snapshotnumfile)>0) { + AutoString snapshotnumfilec(snapshotnumfile); + char *pdot=strchr(snapshotnumfilec,'.'); + if (pdot) { + ostrstream num; + num << snapshotnum << '\0'; + const char *pnum=num.str(); + strcpy(pdot-strlen(pnum),pnum); + *pdot='.'; + ofstream file(snapshotnumfilec); + file.setf(ios::fixed); + file.precision(sigdig); + pmc->view(labellookup,label,file,axes); + snapshotnum++; + } + } + + if (init_gs==-1) mcdata.lro=0.; + + //fix_energy(&mcdata,teci,T); + fix_energy(&(mcdata.E),mcdata.mult,mcdata.corr,teci,T); + + Array order_array; + LinkedList_to_Array(&order_array,order_list); + int discont=(threshold==0 ? 0 : detect_discontinuity(order_array,mcdata.lro)>threshold); + order_list << new Real(mcdata.lro); + + if (!new_scan) { + if (dodb) { + Real b0=(1./T)-db; + Real b1=(1./T); + phi=(phi*b0+(mcdata.E+old_E)*db/2)/b1; + } + else { + Real b0=1./(T-dT); + Real b1=1./T; + phi=(phi*b0+(mcdata.E+old_E)*(b1-b0)/2)/b1; + } + } + + ostrstream line; + line.setf(ios::fixed); + line.precision(sigdig); + + if (!discont || !droplast) { + line << T/kboltzman << delim + << 0 << delim + << mcdata.E << delim + << mcdata.x << delim + << phi << delim + << mcdata.heatcap << delim + << 0 << delim + << 0 << delim + << 0 << delim + << 0 << delim + << 0 << delim + << 0 << delim + << 0 << delim + << 0 << delim + << 0 << delim + << 0 << delim + << mcdata.lro << delim; + for (int i=0; i order_list; + LinkedList outer_order_list; + while (1) { + if (new_scan) { + pmc->init_structure(*my_p_init_str); + if (init_conc!=MAXFLOAT) pmc->set_concentration(init_conc); + pmc->init_run(T,mu); + order_list.delete_all(); + } + + Array eci; + teci.interpol(&eci,T); + pmc->set_eci(eci); + pmc->init_run(T,mu); + + if (new_scan) { + if (x_prec==0.) pmc->run(n_equil,1); + } + + MCOutputData mcdata; + run_mc(&mcdata,pmc,1,n_step,x_prec,which_col); + + if (strlen(snapshotnumfile)>0) { + AutoString snapshotnumfilec(snapshotnumfile); + char *pdot=strchr(snapshotnumfilec,'.'); + if (pdot) { + ostrstream num; + num << snapshotnum << '\0'; + const char *pnum=num.str(); + strcpy(pdot-strlen(pnum),pnum); + *pdot='.'; + ofstream file(snapshotnumfilec); + file.setf(ios::fixed); + file.precision(sigdig); + pmc->view(labellookup,label,file,axes); + snapshotnum++; + } + } + + if (init_gs==-1) mcdata.lro=0.; + + //fix_energy(&mcdata,teci,T); + fix_energy(&(mcdata.E),mcdata.mult,mcdata.corr,teci,T); + + Array order_array; + LinkedList_to_Array(&order_array,order_list); + int discont=(threshold==0 ? 0 : detect_discontinuity(order_array,mcdata.lro)>threshold); + order_list << new Real(mcdata.lro); + + if (new_scan) { + if (!very_new_scan) { + if (innerT) { + phi=very_old_phi-(very_old_x+mcdata.x)/2*dmu; + } + else { + if (dodb) { + Real b0=(1./T)-db; + Real b1=(1./T); + phi=(very_old_phi*b0+(mcdata.E+very_old_E)*db/2)/b1; + } + else { + Real b0=1./(T-dT); + Real b1=1./T; + phi=(very_old_phi*b0+(mcdata.E+very_old_E)*(b1-b0)/2)/b1; + } + } + } + very_new_scan=0; + very_old_E=mcdata.E; + very_old_x=mcdata.x; + very_old_phi=phi; + LinkedList_to_Array(&order_array,outer_order_list); + if (threshold!=0 && detect_discontinuity(order_array,mcdata.lro)>threshold) break; + outer_order_list << new Real(mcdata.lro); + } + else { /* !new_scan */ + if (innerT) { + if (dodb) { + Real b0=(1./T)-db; + Real b1=(1./T); + phi=(phi*b0+(mcdata.E+old_E)*db/2)/b1; + } + else { + Real b0=1./(T-dT); + Real b1=1./T; + phi=(phi*b0+(mcdata.E+old_E)*(b1-b0)/2)/b1; + } + } + else { + phi+=-(old_x+mcdata.x)/2*dmu; + } + } + + Real E_lte=E_from_phi(T,mu,<e); + Real E_mf=E_from_phi(T,mu,&mf); + Real E_hte=E_from_phi(T,mu,&hte); + + ostrstream line; + line.setf(ios::fixed); + line.precision(sigdig); + if (!discont || !droplast) { + Real lte_x=lte.x(T,mu); + Real mf_x=mf.x(T,mu); + Real hte_x=hte.x(T,mu); + { + ofstream ltefile("ltedat.out"); + ofstream mffile("mfdat.out"); + ofstream htefile("htedat.out"); + lte.write(ltefile); + mf.write(mffile); + hte.write(htefile); + } + line << T/kboltzman << delim + << mu << delim + << mcdata.E+(addmux ? mcdata.x*mu : 0.) << delim + << mcdata.x << delim + << phi+(addmux ? mcdata.x*mu : 0.) << delim + << mcdata.heatcap << delim + << mcdata.suscept << delim + << E_lte+(addmux ? lte_x*mu : 0.) << delim + << lte_x << delim + << lte.phi(T,mu)+(addmux ? lte_x*mu : 0.) << delim + << E_mf+(addmux ? mf_x*mu : 0.) << delim + << mf_x << delim + << mf.phi(T,mu)+(addmux ? mf_x*mu : 0.) << delim + << E_hte+(addmux ? hte_x*mu : 0.) << delim + << hte_x << delim + << hte.phi(T,mu)+(addmux ? hte_x*mu : 0.) << delim + << mcdata.lro << delim; + for (int i=0; iview(labellookup,label,file,axes); + } + delete pmc; +} + diff --git a/src/emc2help.c++ b/src/emc2help.c++ new file mode 100644 index 0000000..7eabcee --- /dev/null +++ b/src/emc2help.c++ @@ -0,0 +1,152 @@ +char *helpstring="" +"Easy Monte Carlo Code (emc2)\n" +"by Axel van de Walle\n" +"\n" +"Command line parameters:\n" +"\n" +"-T0 : initial temperature\n" +"-T1 : final temperature\n" +"-dT : temperature step\n" +"-db : inverse temperature step\n" +"\n" +"Temperatures are given in units of energy unless the -k option is set.\n" +"-dT and -db are mutually exclusive. Which option you use determines\n" +"whether T or 1/T are unformly spaced. The output file always shows T.\n" +"\n" +"-k : Sets boltman'z constant (default k=1). This only affects how\n" +" temperatures are converted in energies. -k=8.617e-5 lets you enter\n" +" temperatures in kelvins when energies are in eV.\n" +" (You can also select this value by using the -keV option.)\n" +"\n" +"-mu0 : initial chemical potential\n" +"-mu1 : final chemical potential\n" +"\n" +" By default, these are input as dimensionless values defined as\n" +" follows: If x is integer, x is the chemical potential that\n" +" stabilizes a two phase equilibrium between ground state x-1 and\n" +" x. (Ground states are numbered starting at 0.) Fractional values\n" +" interpolate linearly between these integer values. Negative values\n" +" or values larger than the number of ground states - 1 are allowed.\n" +" The values of mu are found by linear extrapolation. If the -abs\n" +" option is specified, the value of mu are in units of energy per spin\n" +" value (as in the output file). (The ground states are read in from\n" +" the file gs_str.out .)\n" +"\n" +" If there are only two ground states, the only correction performed is\n" +" to shift mu so that mu=0 stabilizes a two-phase equilibrium between\n" +" the two ground states.\n" +" If there are less than 2 ground states (!), no correction is made.\n" +"\n" +"-dmu : chemical potential step (expressed in the same units as mu0 and mu1).\n" +"\n" +"NOTE: If mu1 is omitted, only a scan through T is performed keeping mu=mu0.\n" +" If T1 is omitted, only scan through mu is performed keeping T=T0.\n" +"\n" +"-gs : Gives the index of the ground state to use as an initial spin\n" +" configuration (the leftmost pure element is numbered 0). If the\n" +" index is -1, the disordered state with an average spin of zero\n" +" is used as the starting configuration.\n" +"\n" +"-phi0 : value of the grand canonical potential at the initial point of\n" +" the run. If left unspecified, it is set to the grand canonical\n" +" potential of given by either the 1-spin Low Temperature Expansion\n" +" or the High Temperature Expansion, depending whether the initial\n" +" state is an ordered or a disordered phase.\n" +"\n" +"-er : enclosed radius. The Monte Carlo cell will the smallest possible\n" +" supercell of unit cell of the initial configuration such that a\n" +" sphere of that radius fits inside it. This allows you to specify\n" +" the system size in a structure-independent fashion.\n" +"\n" +"-innerT : by default, the inner loop is over values mu while the outer\n" +" loop is over values of T. This flag permutes that order.\n" +"\n" +"-eq : number of equilibration passes. (Equilibration is performed at\n" +" the beginning of each step of the outer loop.)\n" +"\n" +"-n : number of Monte Carlo passes performed to evaluate thermodynamic\n" +" quanties at each step of the inner loop.\n" +"\n" +"-dx: instead of specifying -eq and -n, you can ask the code to equilibrate\n" +" and run for a time such that the average concentration is accurate\n" +" within the target precision specifified by -dx=.\n" +"\n" +"-tstat : Critical value of the test for discontinuity. The code is\n" +" able to catch phase transformations (most of the time) when\n" +" going from an ordered phase to another or to the disordered\n" +" state. This involves a statistical test which a\n" +" user-specified confidence level. The default, 3, corresponds\n" +" to a 0.4% chance of finding a transition where there is\n" +" none. (Refer to a standard normal table.) -tstat=0 turns off\n" +" this option. Suggestion: if a phase transition is\n" +" undetected, first try to reduce dT or dmu or increase n or decrease dx\n" +" before toying around with this parameter. Also: beware of\n" +" hysteresis.\n" +"\n" +"-sigdig : Number of significant digits printed. Default is 6.\n" +"\n" +"-o: Name of the output file (default: mc.out).\n" +"\n" +"Tricks:\n" +"\n" +" To read parameters from a file, use:\n" +" emc2 `cat inputfile`\n" +" where inputfile contains the commands line options.\n" +"\n" +" To selectively display a few of the output quantities, use:\n" +" emc2 [options] | cut -f n1,n2,n3,...\n" +" where n1,n2,n3,... are the column number desired (see below).\n" +"\n" +"Input files:\n" +"\n" +"lat.in : description of the lattice.\n" +"clusters.out : describes the clusters. \n" +"eci.out : provides the ECI. \n" +"gs_str.out : a list of ground states, in increasing order of concentration.\n" +"\n" +" These 4 files can be created by maps.\n" +" See maps documentation (maps -h) for a description of the formats.\n" +"\n" +"Optional input file:\n" +"\n" +"teci.out : if present, provides temperature-dependent eci (overrides eci.out)\n" +" (Note that, even when the teci.out file is used, column 6 of the output file\n" +" reflects only the configurational contribution to the heat capacity.)\n" +"\n" +"The format this file is:\n" +"[maximum temperature: Tm]\n" +"[number of temperatures where eci are provided: nT]\n" +"[ECIs for temperature 0]\n" +"[ECIs for temperature Tm/(nT-1)]\n" +"[ECIs for temperature 2*Tm/(nT-1)]\n" +"...\n" +"[ECIs for temperature Tm]\n" +"\n" +"Note that these numbers can be seperated by blanks or newlines, as desired.\n" +"\n" +"Format of the output file:\n" +"\n" +"Each line contains, in order:\n" +"\n" +" 1) T: Temperature\n" +" 2) mu: chemical potential (derivative of the free energy wrt to average spin)\n" +" 3) E-mu*x: Average energy (per spin)\n" +" 4) x: Average Concentration [ranges from -1 to 1]\n" +" 5) phi: grand canonical potential\n" +" 6) E2: Variance of the energy (proportional to heat capacity)\n" +" 7) x2: Variance of the concentration (proportional to susceptibility)\n" +" 8) E_lte-mu*x_lte: calculated with a one spin Low Temperature Expansion\n" +" 9) x_lte\n" +"10) phi_lte\n" +"11) E_mf-mu*x_mf: calculated with the Mean Field approximation\n" +"12) x_mf\n" +"13) phi_mf\n" +"14) E_hte-mu*x_hte: calculated with a High Temperature Expansion (ideal solution + polynomial in x)\n" +"15) x_hte\n" +"16) phi_hte\n" +"17) lro: Long Range Order parameter of the initial ordered phase (=0 if initial phase is disordered).\n" +"18-) corr: the average correlations associated with each cluster.\n" +"\n" +"NOTE: to obtain 'canonical' rather than grand canonical quantities,\n" +"use the -g2c option. This has the effect of adding mu*x to columns\n" +"3,5,8,10,11,13,14,16.\n"; diff --git a/src/emc2help.hlp b/src/emc2help.hlp new file mode 100644 index 0000000..997bc6a --- /dev/null +++ b/src/emc2help.hlp @@ -0,0 +1,153 @@ +Easy Monte Carlo Code (emc2) +by Axel van de Walle + +Command line parameters: + +-T0 : initial temperature +-T1 : final temperature +-dT : temperature step +-db : inverse temperature step + +Temperatures are given in units of energy unless the -k option is set. +-dT and -db are mutually exclusive. Which option you use determines +whether T or 1/T are unformly spaced. The output file always shows T. +Avoid setting -T0 or -T1 to 0: The output will be nonsensical. + +-k : Sets boltman'z constant (default k=1). This only affects how + temperatures are converted in energies. -k=8.617e-5 lets you enter + temperatures in kelvins when energies are in eV. + (You can also select this value by using the -keV option.) + +-mu0 : initial chemical potential +-mu1 : final chemical potential + + By default, these are input as dimensionless values defined as + follows: If x is integer, x is the chemical potential that + stabilizes a two phase equilibrium between ground state x-1 and + x. (Ground states are numbered starting at 0.) Fractional values + interpolate linearly between these integer values. Negative values + or values larger than the number of ground states - 1 are allowed. + The values of mu are found by linear extrapolation. If the -abs + option is specified, the value of mu are in units of energy per spin + value (as in the output file). (The ground states are read in from + the file gs_str.out .) + + If there are only two ground states, the only correction performed is + to shift mu so that mu=0 stabilizes a two-phase equilibrium between + the two ground states. + If there are less than 2 ground states (!), no correction is made. + +-dmu : chemical potential step (expressed in the same units as mu0 and mu1). + +NOTE: If mu1 is omitted, only a scan through T is performed keeping mu=mu0. + If T1 is omitted, only scan through mu is performed keeping T=T0. + +-gs : Gives the index of the ground state to use as an initial spin + configuration (the leftmost pure element is numbered 0). If the + index is -1, the disordered state with an average spin of zero + is used as the starting configuration. + +-phi0 : value of the grand canonical potential at the initial point of + the run. If left unspecified, it is set to the grand canonical + potential of given by either the 1-spin Low Temperature Expansion + or the High Temperature Expansion, depending whether the initial + state is an ordered or a disordered phase. + +-er : enclosed radius. The Monte Carlo cell will the smallest possible + supercell of unit cell of the initial configuration such that a + sphere of that radius fits inside it. This allows you to specify + the system size in a structure-independent fashion. + +-innerT : by default, the inner loop is over values mu while the outer + loop is over values of T. This flag permutes that order. + +-eq : number of equilibration passes. (Equilibration is performed at + the beginning of each step of the outer loop.) + +-n : number of Monte Carlo passes performed to evaluate thermodynamic + quanties at each step of the inner loop. + +-dx: instead of specifying -eq and -n, you can ask the code to equilibrate + and run for a time such that the average concentration is accurate + within the target precision specifified by -dx=. + +-tstat : Critical value of the test for discontinuity. The code is + able to catch phase transformations (most of the time) when + going from an ordered phase to another or to the disordered + state. This involves a statistical test which a + user-specified confidence level. The default, 3, corresponds + to a 0.4% chance of finding a transition where there is + none. (Refer to a standard normal table.) -tstat=0 turns off + this option. Suggestion: if a phase transition is + undetected, first try to reduce dT or dmu or increase n or decrease dx + before toying around with this parameter. Also: beware of + hysteresis. + +-sigdig : Number of significant digits printed. Default is 6. + +-o: Name of the output file (default: mc.out). + +Tricks: + + To read parameters from a file, use: + emc2 `cat inputfile` + where inputfile contains the commands line options. + + To selectively display a few of the output quantities, use: + emc2 [options] | cut -f n1,n2,n3,... + where n1,n2,n3,... are the column number desired (see below). + +Input files: + +lat.in : description of the lattice. +clusters.out : describes the clusters. +eci.out : provides the ECI. +gs_str.out : a list of ground states, in increasing order of concentration. + + These 4 files can be created by maps. + See maps documentation (maps -h) for a description of the formats. + +Optional input file: + +teci.out : if present, provides temperature-dependent eci (overrides eci.out) + (Note that, even when the teci.out file is used, column 6 of the output file + reflects only the configurational contribution to the heat capacity.) + +The format this file is: +[maximum temperature: Tm] +[number of temperatures where eci are provided: nT] +[ECIs for temperature 0] +[ECIs for temperature Tm/(nT-1)] +[ECIs for temperature 2*Tm/(nT-1)] +... +[ECIs for temperature Tm] + +Note that these numbers can be seperated by blanks or newlines, as desired. + +Format of the output file: + +Each line contains, in order: + + 1) T: Temperature + 2) mu: chemical potential (derivative of the free energy wrt to average spin) + 3) E-mu*x: Average energy (per spin) + 4) x: Average Concentration [ranges from -1 to 1] + 5) phi: grand canonical potential per spin (F-mu*x, where F is the Helmholtz free energy) + 6) E2: Variance of the energy (proportional to heat capacity) + 7) x2: Variance of the concentration (proportional to susceptibility) + 8) E_lte-mu*x_lte: calculated with a one spin Low Temperature Expansion + 9) x_lte +10) phi_lte +11) E_mf-mu*x_mf: calculated with the Mean Field approximation +12) x_mf +13) phi_mf +14) E_hte-mu*x_hte: calculated with a High Temperature Expansion (ideal solution + polynomial in x) +15) x_hte +16) phi_hte +17) lro: Long Range Order parameter of the initial ordered phase (=0 if initial phase is disordered). +18-) corr: the average correlations associated with each cluster. + +NOTE: to obtain 'canonical' rather than grand canonical quantities, +use the -g2c option. This has the effect of adding mu*x to columns +3,5,8,10,11,13,14,16. +Then, for instance, column 5 gives F, the Helmholtz free energy while column 3 gives E, the energy. diff --git a/src/epic.c++ b/src/epic.c++ new file mode 100644 index 0000000..8d4f19f --- /dev/null +++ b/src/epic.c++ @@ -0,0 +1,318 @@ +#include "version.h" +#include +#include "linalg.h" +#include "stringo.h" +#include "xtalutil.h" +#include "parse.h" +#include "opti.h" +#include "strinterf.h" + +class SaddleEpicycle: public FunctionWithGrad { + FunctionWithGrad *pfunc; + OptimizerParam sparam; + OptimizerParam sparam_save; + Real slen; + Array s0; + Real energy; + Array gradenergy; +public: + SaddleEpicycle(FunctionWithGrad *_pfunc): FunctionWithGrad(), sparam(), s0(), gradenergy() {pfunc=_pfunc;} + void init(const OptimizerParam &_sparam, Real _slen) { + sparam=_sparam; + sparam_save=_sparam; + slen=_slen; + } + void set_arg(const Array &c) { + cout << "Ion Motion" << endl; + SmallEpicycle sepi(pfunc); + sepi.init(c); + energy=pfunc->get_val(); // assumes set_arg was called in sepi; + cout << "energy= " << energy << endl; + Array f0,f1; + pfunc->get_grad(&f0); + + system("cp str.out str_current.out"); + + cout << "grad(c)= "; tracev(f0); + if (s0.get_size()==0) { + ifstream file("epidir.out"); + if (file) { + file >> s0; + } + else { + product(&s0,f0,-slen/norm(f0)); + // for (int i=0; i ds0(s0); + conjugate_gradient_on_sphere(&s0,sparam,&sepi); + diff(&ds0,ds0,s0); + if (norm(ds0)!=0.0) {sparam.trialstep=max(min(1.5*norm(ds0),sparam_save.trialstep),sparam.trialstep/10.);} + cout << "epi_trial_step= " << sparam.trialstep << endl; + cout << "epidir= " << s0.get_size() << " "; tracev(s0); + { + ofstream file("epidir.out"); + file << s0; + } + + { + ofstream file("epipos.out"); + file << c; + } + cout << "epipos= " << c.get_size() << " "; tracev(c); + + Real b=inner_product(s0,f0)/inner_product(s0,s0); + Array fpar,fpar2,fperp; + product(&fpar,s0,b); + product(&fpar2,s0,2.*b); + diff(&gradenergy,f0,fpar2); + + diff(&fperp,f0,fpar); + pfunc->get_grad(&f1); // assume set_arg was called in sepi; + Real curv=(inner_product(f1,s0)-inner_product(f0,s0))/inner_product(s0,s0); + + cout << "grad_par= "; tracev(fpar); + cout << "grad_perp= "; tracev(fperp); + cout << "grad_tot= "; tracev(gradenergy); + + cout << "mincurv= " << curv << " energy= " << energy << " grad_norm total= " << norm(gradenergy) << " par= " << norm(fpar) << " perp= " << norm(fperp) << endl; + } + Real get_val(void) const {return energy;} + void get_grad(Array *df) const {*df=gradenergy;} +}; + +Real find_saddle(Array *pc, const OptimizerParam &sparam, Real slen, const OptimizerParam &steepparam, const OptimizerParam &ionparam, FunctionWithGrad *pfunc) { + SaddleEpicycle mepi(pfunc); + mepi.init(sparam,slen); + if (steepest_descent(pc,steepparam,&mepi)) {return mepi.get_val();} + cout << "STARTCG" << endl; + conjugate_gradient(pc,ionparam,&mepi); + return mepi.get_val(); +} + +//these are dummy functions for debugging; + +Real myfr(Real r) { + return -1./(1.+ipow(r,2)); +} + +Real mylen(Real x, Real y) { + return sqrt(sqr(x)+sqr(y)); +} + +Real myf(Real x, Real y) { + return myfr(mylen(x,y))+myfr(mylen(x-3,y)); +} + +class MyFunc: public FunctionWithGrad { + Array x; + Array df; +public: + MyFunc(void): FunctionWithGrad(), x() {} + void set_arg(const Array &_x) { + x=_x; + df.resize(x.get_size()); + Real dx=0.01; + df(0)=(myf(x(0)+dx,x(1))-myf(x(0)-dx,x(1)))/(2.*dx); + df(1)=(myf(x(0),x(1)+dx)-myf(x(0),x(1)-dx))/(2.*dx); +} + Real get_val(void) const {return myf(x(0),x(1));} + void get_grad(Array *pdf) const { + *pdf=df; + } +}; + +//end dummy functions; + +extern char *helpstring; + +int main(int argc, char *argv[]) { + // parse command line arguments or display help (see getvalue.h); + int dohelp=0; + + int sigdig=5; + OptimizerParam sparam,steepparam,ionparam; + sparam.gradtol=0.04; + sparam.trialstep=0.1; + sparam.maxstep=5.; + sparam.multline=2.0; + sparam.maxbrakline=5; + sparam.maxitline=3; + sparam.maxitcg=20; + sparam.badstrike=2; + sparam.itreset=5; + Real slen=0.1; + + steepparam.trialstep=3e-3; + steepparam.maxitcg=0; + + ionparam.gradtol=0.1; + ionparam.trialstep=0.005; + ionparam.maxstep=5.; + ionparam.multline=2.0; + ionparam.maxbrakline=5; + ionparam.maxitline=3; + ionparam.maxitcg=40; + ionparam.badstrike=2; + ionparam.itreset=5; + Real forcefact=3.; + int dimstrain=0; + int noscale=0; + int sleeptime=5; + + int outputstr=0; + int relax=0; + int debug=0; + int analex=0; + int defaults=0; + Array tmpparam(2); + tmpparam(0)=0.3; + tmpparam(1)=0.2; + + AskStruct options[]={ + {"","INFlection DETection method " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-egt","Epicycle Gradient Tolerance",REALVAL,&sparam.gradtol}, + {"-ets","Epicycle Trial Step",REALVAL,&sparam.trialstep}, + {"-ems","Epicycle Maximum Step multiplier",REALVAL,&sparam.maxstep}, + {"-eml","Epicycle Multiplier in Line minimization",REALVAL,&sparam.multline}, + {"-ebl","Epicycle maximum number of Bracketing steps in Line minimizations",INTVAL,&sparam.maxbrakline}, + {"-eil","Epicycle maximum number of Iterations in Line minimizations",INTVAL,&sparam.maxitline}, + {"-eic","Epicycle maximum number of Iterations in Conjugate gradient",INTVAL,&sparam.maxitcg}, + {"-ebf","Epicycle motion Bad step Forgiveness",INTVAL,&sparam.badstrike}, + {"-eir","Epicycle iterations between conjugate gradient reset",INTVAL,&sparam.itreset}, + {"-el","Epicycle Length",REALVAL,&slen}, + + {"-ism","Ion motion Steepest descent Multiplier",REALVAL,&steepparam.trialstep}, + {"-isi","Ion motion Steepest maximum number of Iterations",INTVAL,&steepparam.maxitcg}, + {"-igt","Ion motion Gradient Tolerance",REALVAL,&ionparam.gradtol}, + {"-its","Ion motion Trial Step",REALVAL,&ionparam.trialstep}, + {"-ims","Ion motion Maximum Step multiplier",REALVAL,&ionparam.maxstep}, + {"-iml","Ion motion Multiplier in Line minimization",REALVAL,&ionparam.multline}, + {"-ibl","Ion motion maximum number of Bracketing steps in Line minimizations",INTVAL,&ionparam.maxbrakline}, + {"-iil","Ion motion maximum number of Iterations in Line minimizations",INTVAL,&ionparam.maxitline}, + {"-iic","Ion motion maximum number of Iterations in Conjugate gradient",INTVAL,&ionparam.maxitcg}, + {"-ibf","Ion motion Bad step Forgiveness",INTVAL,&ionparam.badstrike}, + {"-iir","Ion motion iterations between conjugate gradient reset",INTVAL,&ionparam.itreset}, + + {"-ff","Force scale Factor",REALVAL,&forcefact}, + {"-ds","Dimension of the strain relaxation allowed (0: none (default), 1: along x, 2: along y,z 3: along x,y,z) ",INTVAL,&dimstrain}, + {"-ns","Do Not Scale tolerance with number of atoms",BOOLVAL,&noscale}, + {"-st","Sleep Time between read access",INTVAL,&sleeptime}, + {"-d","Use all default values",BOOLVAL,&defaults}, + {"-os","Output Structure defined by epipos.out into str.out",BOOLVAL,&outputstr}, + {"-r","Relax to minimum (instead of finding saddle point)",BOOLVAL,&relax}, + {"","For debugging only:",TITLEVAL,NULL}, + {"-db","debug",BOOLVAL,&debug}, + {"-aex","Analytical Example (for debugging)",BOOLVAL,&analex}, + {"-t1","Temp param 1",REALVAL,&tmpparam(0)}, + {"-t2","Temp param 2",REALVAL,&tmpparam(1)} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + steepparam.gradtol=ionparam.gradtol; + + + if (analex) { + { + Real dx=0.01; + ofstream file("ftmp.out"); + Array x(2); + for (x(0)=-2.; x(0)<=6.; x(0)+=0.05) { + for (x(1)=-2.; x(1)<=2.; x(1)+=0.05) { + file << x(0) << " " << x(1) << " " << myf(x(0),x(1)) << endl; + } + file << endl; + } + } + + MyFunc f; + Array x(2); + x=tmpparam; + + if (relax) { + Real e=conjugate_gradient(&x,ionparam,&f); + } + else { + Real e=find_saddle(&x,sparam,slen,steepparam,ionparam,&f); + } + exit(0); + } + + + rMatrix3d axes; + Structure str; + Array atom_label; + { + Array > site_type_list; + ifstream file("str.in"); + if (!file) {ERRORQUIT("Unable to open str.in");} + parse_lattice_file(&str.cell,&str.atom_pos,&str.atom_type,&site_type_list,&atom_label,file,&axes); + fix_atom_type(&str,site_type_list); + } + + if (!noscale) { + Real scaletol=(Real)str.atom_pos.get_size(); + sparam.gradtol*=scaletol; + ionparam.gradtol*=scaletol; + steepparam.gradtol*=scaletol; + } + + OptimizedStructure optstr; + Array x; + optstr.init(&x,axes,str,atom_label,forcefact,dimstrain); + optstr.sleeptime=sleeptime; + + Real e; + if (outputstr) { + ifstream file("epipos.out"); + if (file) { + file >> x; + } + Structure curstr; + optstr.vect_to_str(&curstr,x); + { + ofstream file("str.out"); + file.setf(ios::fixed); + file.precision(5); + write_structure(curstr,atom_label,axes,file,0); + } + } + else if (relax) { + e=conjugate_gradient(&x,ionparam,&optstr); + } + else { + ifstream file("epipos.out"); + if (file) { + file >> x; + } + e=find_saddle(&x, sparam,slen,steepparam,ionparam,&optstr); + } + + { + ofstream ofile("cenergy.out"); + ofile.setf(ios::fixed); + ofile.precision(sigdig); + ofile << e << endl; + } + + Structure relstr; + optstr.vect_to_str(&relstr,x); + { + ofstream ofile("cstr_relax.out"); + ofile.setf(ios::fixed); + ofile.precision(sigdig); + write_structure(relstr,atom_label,axes,ofile,0); + } + cout << "epic terminated normally" << endl; +} diff --git a/src/epichelp.hlp b/src/epichelp.hlp new file mode 100644 index 0000000..725171b --- /dev/null +++ b/src/epichelp.hlp @@ -0,0 +1,99 @@ +Summary + +This code find a saddle using a modification of the dimer method called the epicycle method. +An epicycle differs from a dimer in that one of the system images lies in the center and the other one is rotating around it while in a dimer +the two images lie symmetrically about the center. +The algorithm is described in: +A. van de Walle, S. Kadkhodaei, R. Sun, and Q.-J. Hong., 'Epicycle method for elasticity limit calculations.', +Phys. Rev. B, 95:144113, 2017. http://dx.doi.org/10.1103/PhysRevB.95.144113 + +It is implemented as two nested optimization problems: +an inner optimization problem to find the softest phonon mode using a modification of the dimer method (called the epicycle method) and +an outer optimization problem to find the actual atomic geometry. + +All options that pertain to the inner 'epicycle' optimization start with '-e' while +those that control ionic (and cell parameter) movement start with '-i'. +Both optimization are implemented via a conjugate gradient algorithm. + +Parameters controlling the optimization + +-el (Epicycle Length, in Angstrom) specifies the distance between the two images of the epicycle. +-egt (Epicycle Gradient Tolerance, in eV/Ang^2) is the stopping criterion for the soft mode search algorithm. +-ets (Epicycle Trial Step, in radiant) trial step for the line minimizations. + If this trial step fails to bracket the minimum, the step is size multiplied by the... +-eml (Epicycle Multiplier in Line minimization) until the minimum is bracketed. + But the step size will never exceed the... +-ems (Epicycle Maximum Step multiplier). + The actual maximum step is equal to trial step times the multiplier. + Bracketing stops when a bracket is found or the +-ebl (Epicycle maximum number of Bracketing steps in Line minimizations) is reached. + Once the bracketing step is done, the algorithm does a sequant search, finding the point most likely to have zero derivative + based on the derivatives at the end points of the bracket. If the predicted point falls too close to the endpoints + (not in the middle half of the bracket) a bisection step is taken instead, except the first 't' times this occurs, + where 't' is the... +-ebf (Epicycle motion Bad step Forgiveness). + This is repeated until either the gradiant tolerance is met (-egt divided by sqrt(number of degrees of freedom ) or the... +-eil (Epicycle maximum number of Iterations in Line minimizations) is reached. + The line minimizations are embedded in a conjugate gradient proceedure which is repeated until the gradient tolerance (-egt) is met or the ... +-eic (Epicycle maximum number of Iterations in Conjugate gradient) is reached. + As in any conjugate gradient method, the conjugate direction reset to steepest descent every... +-eir (Epicycle iterations between conjugate gradient reset) steps. + +For the outer optimization problem (ion motion), the same parameters are available: with the initial '-e' replaced by '-i': +-igt,-its,-iml,-ims,-ibl,-ibf,-iil,-iic,iir. + One difference is that -igt is in eV/Ang and -its and -ims are in Angstrom. + In addition, the outer optimization start with a few steps of steepest descent, indicated by the +-isi (Ion motion Steepest maximum number of Iterations) parameter. + This helps because the outer optimization problem can be far from quadratic in behavior initially. + The step size is equal to the force times the +-ism (Ion motion Steepest descent Multiplier, in Angstrom^2/eV). + The outer optimization problem also optimizes cell shape in addition to ionic coordinates. + To make cell degress of freedom comparable to atomic coordinates, the following scaling is used: + The 'force' on the cell is Omega^(2/3) * (stress tensor) * f where Omega is the average atomic volume for the initial configuration + and f is a constant set with: + -ff (Force scale Factor, dimensionless). + The cell shape is parametrized by n*Omega^(1/3)*strain/f where n is the number of atoms. + This convention ensures that stress and cell parameters scale approriately with cell size and have units and magnitudes + comparable to the atomic coordinates. Note that the atomic coordinates are stored internally as the coordinates for the + initial cell shape (and are distorded according the strain acting on the cell). +-ds indicates whether and how to relax the cell shape. 0 (the default) means no cell relaxations, + 3 means fully general 3d strains are allowed, 2 means means fully general 2d strains, etc. + The unique axis is x be default but can be changed by adding 4 (for y axis) or 8 (for z axis). +-st (Sleep Time between read access) is the time between each attempt to check if the calculation lauched has completed. + +Input files + str.in The initial structure geometry in standard ATAT format (see mmaps -h) + Optionally the following files can be read to continue a previous run (see below for a description): + epidir.out + epipos.out + +Final output files + cstr_relax.out The optimized inflection point geometry at the end of the calculations. + cenergy.out The corresponding final energy. + stdout Log file (written to infdet.log if called by robustrelax_xxxx) + +A few notes about the log file (assuming it is redirected to infdet.log): + -The inner optimization problem output is bracketted by the phrases 'begin on_sphere' and 'end on_sphere'. + -For a quick overview of the progress, use: grep curv infdet.log + -For a more detailed view (each c.g. step), use: grep norm infdet.log + The inner optimization steps are indicated by s_gnorm while the outer by l_gnorm. + -To see each function evaluation, use: grep dfx infdet.log + -To see the whole history of epicycle positions and directions: + grep -e epipos -e epidir infdet.log + +Intermediate input/output files + The infdet code relies on an external program to obtain its energy and force data. At each optimization step, it writes: + busy A semaphore file indicating that the external program should run now. + str.out The current geometry to be run by the external code + When done, the external program deletes the busy file and infdet knows it has to read: + force.out the forces acting on each atom (one 3d vector per line) + stress.out the stress tensor acting on the cell + energy the total energy + str_relax.out the atomic coordinate (same as str.out but perhaps re-ordered - forces will be re-ordered accordingly) + + As the optimization progresses, the current status is written to various files: + str_current.out the current best approximation to the inflection point (in standard ATAT format) + epipos.out the current best approximation to the inflection point (as a vector, in internal format) + epidir.out the current direction of the epicycle (softest phonon mode) + Note that the whole history of these values are available in the log file, prefixed by + epipos= and epidir= , which can be used to restart an aborted or misbehaving run. diff --git a/src/equil.c++ b/src/equil.c++ new file mode 100644 index 0000000..e0901a5 --- /dev/null +++ b/src/equil.c++ @@ -0,0 +1,162 @@ +#include "equil.h" + +Array equildummyarray; + +Equilibrator::Equilibrator(void): cur_sum(), cur_sum2(), bin_sum(), bin_sum2(), good_val(), buf_val() {} + +Equilibrator::Equilibrator(Real _prec, int _which_elem, int init_granularity, int nb_bin): + cur_sum(), cur_sum2(), bin_sum(), bin_sum2(), good_val(), buf_val() { + init(_prec,_which_elem,init_granularity,nb_bin); +} + +void Equilibrator::init(Real _prec, int _which_elem, int init_granularity, int nb_bin) { + prec=_prec; + which_elem=_which_elem; + if (nb_bin%2==1) ERRORQUIT("nb_bin must be even"); + granularity=init_granularity; + cur_corr_len=granularity/2; + cur_bin=1; + cur_cnt=0; + cur_sum.resize(0); // init in new_data; + bin_sum.resize(nb_bin+1); + bin_sum2.resize(nb_bin+1); + buf_corr.resize(nb_bin+1); + buf_val.resize(granularity); +} + +int Equilibrator::new_data(const Array &data) { + if (cur_sum.get_size()==0) { + int data_size=data.get_size(); + cur_sum.resize(data_size); + cur_sum2.resize(data_size); + zero_array(&cur_sum); + zero_array(&cur_sum2); + for (int i=0; i data2; + product_diag(&data2,data,data); + sum(&cur_sum2,cur_sum2,data2); + cur_cnt++; + if (cur_cnt==granularity) { + bin_sum(cur_bin)=cur_sum; + bin_sum2(cur_bin)=cur_sum2; + + Real corr; + Real last_corr=0.5; + int done=0; + while (!done) { + corr=0.; + for (int i=0; i0) { + corr/=var; + } + else { + corr=1.; + } + done=1; + if (corr<0.) corr=0.; + if (corr<0.25 && last_corr<=0.75 && cur_corr_len>=2) {cur_corr_len/=2; done=0;} + if (corr>0.75 && last_corr>=0.25 && cur_corr_len=1; b--) { + Real block1=(bin_sum(cur_bin )(which_elem)-bin_sum(cur_bin- b)(which_elem))/(Real)(granularity*b); + Real block2=(bin_sum(cur_bin-b)(which_elem)-bin_sum(cur_bin-2*b)(which_elem))/(Real)(granularity*b); + if (fabs(block1-block2)0) { + diff(&good_val,bin_sum(cur_bin),bin_sum(bin1)); + product(&good_val,good_val,1./n); + diff(&good_val2,bin_sum2(cur_bin),bin_sum2(bin1)); + product(&good_val2,good_val2,1./n); + Array tmp; + product_diag(&tmp,good_val,good_val); + diff(&good_val2,good_val2,tmp); + equil=bin1*granularity; + step=(cur_bin-bin1)*granularity; + break; + } + } + } + } + + cur_cnt=0; + cur_bin++; + if (cur_bin==bin_sum.get_size()) { + int i,j; + for (i=1,j=2; j &data) { + if (cur_sum.get_size()==0) { + cur_sum.resize(data.get_size()); + zero_array(&cur_sum); + cur_sum2.resize(data.get_size()); + zero_array(&cur_sum2); + cur_n=0; + } + sum(&cur_sum,cur_sum,data); + Array data2; + product_diag(&data2,data,data); + sum(&cur_sum2,cur_sum2,data2); + cur_n++; + return (cur_n tmp; + product_diag(&tmp,good_val,good_val); + diff(&good_val2,good_val2,tmp); +} + +GenericAccumulator *create_accum(int n_step, Real prec, int which_elem) { + if (prec==0) { + return new Accumulator(n_step); + } + else { + return new Equilibrator(prec,which_elem); + } +} diff --git a/src/equil.hh b/src/equil.hh new file mode 100644 index 0000000..5aede38 --- /dev/null +++ b/src/equil.hh @@ -0,0 +1,60 @@ +#ifndef _EQUIL_H_ +#define _EQUIL_H_ + +#include "arraylist.h" +#include "linalg.h" + +extern Array equildummyarray; + +class GenericAccumulator { + public: + virtual int new_data(const Array &data) {return 0;} + virtual const Array & get_mean(void) {return equildummyarray;} + virtual const Array & get_var(void) {return equildummyarray;} + virtual void get_step(int *pequil,int *pstep) { } +}; + +class Equilibrator: public GenericAccumulator { + int granularity; + int cur_bin; + int cur_cnt; + Array cur_sum; + Array cur_sum2; + Array bin_sum; + Array bin_sum2; + Array buf_corr; + int cur_corr_len; + Real prec; + int which_elem; + Array good_val; + Array good_val2; + Array buf_val; + int equil,step; + public: + Equilibrator(void); + Equilibrator(Real _prec, int _which_elem=0, int init_granularity=200, int nb_bin=16); + void init(Real _prec, int _which_elem=0, int init_granularity=200, int nb_bin=16); + int new_data(const Array &data); + const Array & get_mean(void) {return good_val;} + const Array & get_var(void) {return good_val2;} + void get_step(int *pequil,int *pstep) {if (pequil) *pequil=equil; if (pstep) *pstep=step;} +}; + +class Accumulator: public GenericAccumulator { + int max_n; + int cur_n; + Array cur_sum; + Array cur_sum2; + Array good_val; + Array good_val2; + void accum(void); +public: + Accumulator(int _max_n=0): cur_sum(), cur_sum2(), good_val() {max_n=_max_n; cur_n=0;} + int new_data(const Array &data); + const Array & get_mean(void) {accum(); return good_val; } + const Array & get_var(void) {accum(); return good_val2; } + void get_step(int *pequil,int *pstep) {if (pstep) *pstep=cur_n;} +}; + +GenericAccumulator *create_accum(int n_step, Real prec, int which_elem=0); +#endif diff --git a/src/extractgaps b/src/extractgaps new file mode 100755 index 0000000..c254766 --- /dev/null +++ b/src/extractgaps @@ -0,0 +1,31 @@ +#!/bin/csh + +foreach file ( OUTCAR.static OUTCAR OUTCAR.relax ) + if ( -e $file ) then + set mycatfile="cat $file" + endif + if ( -e ${file}.gz ) then + set mycatfile="zcat ${file}.gz" + endif +end + + +$mycatfile | getlines -bt 'absolut eigen' '-----' | grep -v '\-\-\-' | tail -n +3 |\ +awk '{x=$4; y=$5; z=$6; getline;\ +if ($1!="") {\ + cb=""; vb="";\ + while (1) {\ + getline;\ + if ($1=="") break;\ + if ($3>0.5) {vb=$2;}\ + if ($3<0.5 && cb=="") {cb=$2;}\ + }\ + print x,y,z,vb,cb;\ +}\ +}' >! allk.tmp + +if ( x$1 == "x-k" ) then + cat allk.tmp +else + grep -v '^ *$' allk.tmp | awk 'BEGIN {vb=-10000; cb=10000} {vb=($4>vb ? $4 : vb); cb=($5 +#include "getvalue.h" +#include "integer.h" +#include "version.h" +#include "arraylist.h" +#include "parse.h" + +Real calc_nelec(const Array &dos, Real mu, Real w) { + Real ne=0.; + for (int i=0; i &dos, Real mu, Real w) { + Real S=0.; + for (int i=0; i1e-5 && (1-f)>1e-5) { + S+=-dos(i)*(f*log(f)+(1.-f)*log(1.-f)); + } + } + return(S); +} + +Real calc_Eelec(const Array &dos, Real mu, Real w, Real dE) { + Real E=0.; + for (int i=0; i 30.*w) { + f=0.; + } + else { + f=1./(exp((e-mu)/w)+1.); + } + E+=dos(i)*e*f; + } + return(E); +} + +int file_exists(char *filename) { + ifstream file(filename); + if (file) {return 1;} else {return 0;} +} + +extern char *helpstring; + +int main(int argc, char *argv[]) { + Real T0=0.; + Real T1=2000.; + Real dT=100.; + if (file_exists("../Trange.in")) { + ifstream tfile("../Trange.in"); + cerr << "Reading Trange.in file." << endl; + T0=0; + int nT=0; + tfile >> T1 >> nT; + dT=(T1-T0)/MAX(1,nT-1); + } + + char *dosfilename="dos.out"; + Real kboltzman=1.380658e-23/1.60217733e-19; // k_B in eV/K; + int peratom=0; + Real perfewer=1.; + Real smooth=0.; + int sigdig=5; + int nofreee=0; + int dohelp=0; + int dummy=0; + AskStruct options[]={ + {"","Electronic free energy calculator " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-dos","DOS input file name (default: dos.out)",STRINGVAL,&dosfilename}, + {"-T0","Minimum temperature (default: 0)",REALVAL,&T0}, + {"-T1","Maximum temperature (default: 2000)",REALVAL,&T1}, + {"-dT","Temperature step (default: 100)",REALVAL,&dT}, + {"-kb","Boltzman's constant (default: in eV/K)",REALVAL,&kboltzman}, + {"-pa","Output free energy per atom instead of per unit cell",BOOLVAL,&peratom}, + {"-sc","Correction factor if spectator ion are present",REALVAL,&perfewer}, + {"-sd","Smooth DOS with a Gaussian this width",REALVAL,&smooth}, + {"-nf","Do not calculate free energy",BOOLVAL,&nofreee}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + Real denom_atom=1.; + if (peratom) { + ifstream file("str.out"); + if (!file) ERRORQUIT("Unable to open str.out, needed for -pa option"); + Structure str; + Array labellookup; + Array label; + parse_lattice_file(&str.cell, &str.atom_pos, &str.atom_type, &labellookup, &label, file); + denom_atom=(Real)(str.atom_pos.get_size()); + } + + Real nelec=0; + Real dE=0.; + Real scale=0.; + Array dos; + { + ifstream dosfile(dosfilename); + if (!dosfile) {ERRORQUIT("Unable to open DOS input file.");} + dosfile >> nelec >> dE >> scale; + LinkedList list; + while (skip_delim(dosfile)) { + Real dens; + dosfile >> dens; + list << new Real(dens*dE); + } + LinkedList_to_Array(&dos,list); + } + + Real ne=0.; + Real oldne=0.; + int iEf=0; + while (ne sdos(dos.get_size()); + if (smooth>0.) { + zero_array(&sdos); + Real se=smooth/dE; + Real c=1./sqrt(2*M_PI)/se; + for (int i=0; inelec) El-=kboltzman*T; + while (calc_nelec(dos,Eh/dE,kboltzman*T/dE)ne_tol); + Real f=-kboltzman*T*calc_Selec(dos,mu/dE,kboltzman*T/dE); + if (T>0.) { + if (E0==MAXFLOAT) { + E0=calc_Eelec(dos,mu,kboltzman*dT,dE); + } + f+=calc_Eelec(dos,mu,kboltzman*T,dE)-E0; + } + f*=scale*perfewer/denom_atom; + logfile << T << '\t' << f << endl; + outfile << f << endl; + } + } + } +} diff --git a/src/felechelp.hlp b/src/felechelp.hlp new file mode 100644 index 0000000..9c2cf94 --- /dev/null +++ b/src/felechelp.hlp @@ -0,0 +1,43 @@ +This code calculates the electronic free energy within the one-electron +and temperature-independent bands approximations. + +It needs an dos.out input file (whose name can be changed with -dos option) that +has the following format: + [number of electron in unitcell] + [energy width of each bins used to calculate the dos] + [a multiplicative scale factor to adjust units] + [the density in each bin, in states/unit cell/energy] <- repeated + +The code calculates the electronic free energy from temperature T0 to T1 in steps of dT. + a) The defaults are T0=0 T1=2000 dT=100. + b) If a file Trange.in exists in the upper directory, it is used to set T0,T1,dT: + Trange.in must contain two numbers on one line separated by a space: T1 (T1/dT+1). + Note that T0=0 always. + For phase diagram calculations, you must use this method to specify the temperature range. + c) These defaults can be overridden by the -T0, -T1 and -dT options. + +The output files contain the free energy per unit cell. + felec.log contain temperature and corresponding free energy on each line. + felec contains the free energies only. + plotdos.out contains the dos (col 1: energy normalized so that Ef=0 , col 2: DOS) + +-> For including electronic entropy in phase diagram calculations + + You are likely to use this code as follow: + + #first create the Trange.in file for up to 2000K in intervals of 100K: + echo 2000 21 > Trange.in + + #This executes the svsl code in each subdirectory containing dos.out but no error file. + foreachfile -e dos.out pwd \\; felec [options if desired] + + #constructs a cluster expansion of the electronic free energy (eci are in felec.eci) + clusterexpand felec + + #add the energetic eci from eci.out to the electronic eci from felec.eci and create the teci.out + #file that will be read by the Monte Carlo code. + mkteci felec.eci + + #you can even combine vibrational and electronic eci: + mkteci fvib.eci felec.eci + diff --git a/src/fempmag.c++ b/src/fempmag.c++ new file mode 100644 index 0000000..6f1ce0c --- /dev/null +++ b/src/fempmag.c++ @@ -0,0 +1,102 @@ +#include "xtalutil.h" +#include "getvalue.h" +#include "parse.h" +#include "version.h" +#include + +Real calc_empirical_mag_free_energy(Real spin, Real T, Real Tc, Real kB, Real p) { + Real tau=T/Tc; + Real A=518./1125. + (11692./15975.)*((1./p)-1.); + Real tauf; + if (tau<1.) { + tauf=tau-(1./A)*(79./(140.*p) + tau*(474./497.)*((1./p)-1)*(pow(tau,3.)/6. + pow(tau,9.)/135. + pow(tau,15.)/600.) ); + } + else { + tauf=(-tau/A)*(pow(tau,-5.)/10. + pow(tau,-15.)/315. + pow(tau,-25.)/1500.); + } + return (kB*Tc*tauf*log(spin+1)); +} + +extern char *helpstring; + +int main(int argc, char *argv[]) { + char *strfilename="str.out"; + char *Tcurriefilename="tcurrie"; + char *magmomfilename="magmom"; + int sigdig=5; + int dohelp=0; + Real kboltzman=1.380658e-23/1.60217733e-19; // k_B in eV/K; + int peratom=0; + Real perfewer=1.; + int refgs=0; + Real p=0.28; + int dummy=0; + Real T0=0.; + Real T1=2000.; + Real dT=100.; + if (file_exists("../Trange.in")) { + ifstream tfile("../Trange.in"); + cerr << "Reading Trange.in file." << endl; + T0=0; + int nT=0; + tfile >> T1 >> nT; + dT=(T1-T0)/MAX(1,nT-1); + } + + AskStruct options[]={ + {"","Empirical magnetic free energy calculator, version " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-s","Input file defining the structure (default: str.out)",STRINGVAL,&strfilename}, + {"-tc","Input file containing the Currie Temperature (default: tcurrie)",STRINGVAL,&Tcurriefilename}, + {"-mm","Input file containing the TOTAL magnetic moment (default: magmom)",STRINGVAL,&magmomfilename}, + {"-p","Ratio of magnetic enthalpy due to SRO to total enthalpy (for fcc or hcp, use 0.28 (default), for bcc, use 0.4)",REALVAL,&p}, + {"-T0","Minimum temperature (default: 0)",REALVAL,&T0}, + {"-T1","Maximum temperature (default: 2000)",REALVAL,&T1}, + {"-dT","Temperature step (default: 100)",REALVAL,&dT}, + {"-kb","Boltzman's constant (default: in eV/K)",REALVAL,&kboltzman}, + {"-pa","Give free energy per atom",BOOLVAL,&peratom}, + {"-sc","Correction factor if spectator ion are present",REALVAL,&perfewer}, + {"-rh","Use high-temperature enthalpy as reference",BOOLVAL,&refgs}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-d","Use all default values",BOOLVAL,&dummy}, + {"-h","Display more help",BOOLVAL,&dohelp} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + Structure str; + Array labellookup; + Array label; + { + ifstream strfile(strfilename); + if (!strfile) ERRORQUIT("Unable to open structure file"); + parse_lattice_file(&str.cell, &str.atom_pos, &str.atom_type, &labellookup, &label, strfile); + } + Real Tcurrie=0.; + { + ifstream file(Tcurriefilename); + if (!file) {ERRORQUIT("Unable to open currie temperature file");} + file >> Tcurrie; + } + Real magmom=0.; + Real denom=(Real)(str.atom_pos.get_size()); + { + ifstream file(magmomfilename); + if (!file) {ERRORQUIT("Unable to open magnetic moment file");} + file >> magmom; + magmom=fabs(magmom)/denom; + } + { + ofstream file("fmag"); + file.setf(ios::fixed); + file.precision(sigdig); + for (Real T=T0; T<=T1+zero_tolerance; T+=dT) { + Real F=calc_empirical_mag_free_energy(magmom,T,Tcurrie,kboltzman,p)*(peratom ? 1. : denom )*perfewer; + file << F+(refgs ? -kboltzman*T*log(magmom+1) : 0) << endl; + } + } +} diff --git a/src/fempmaghelp.hlp b/src/fempmaghelp.hlp new file mode 100644 index 0000000..78e19b6 --- /dev/null +++ b/src/fempmaghelp.hlp @@ -0,0 +1 @@ +I. Ohnuma et al., Phase equilibria in the Fe-Co binary system, Acta Materialia 50 (2002) 379. diff --git a/src/fftn.c++ b/src/fftn.c++ new file mode 100644 index 0000000..c29471a --- /dev/null +++ b/src/fftn.c++ @@ -0,0 +1,1195 @@ +/*--------------------------------*-C-*---------------------------------* + * File: + * fftn.c + * + * multivariate complex Fourier transform, computed in place + * using mixed-radix Fast Fourier Transform algorithm. + * + * Fortran code by: + * RC Singleton, Stanford Research Institute, Sept. 1968 + * NIST Guide to Available Math Software. + * Source for module FFT from package GO. + * Retrieved from NETLIB on Wed Jul 5 11:50:07 1995. + * translated by f2c (version 19950721) and with lots of cleanup + * to make it resemble C by: + * MJ Olesen, Queen's University at Kingston, 1995-97 + */ +/*{{{ Copyright: */ +/* + * Copyright(c)1995,97 Mark Olesen + * Queen's Univ at Kingston (Canada) + * + * Permission to use, copy, modify, and distribute this software for + * any purpose without fee is hereby granted, provided that this + * entire notice is included in all copies of any software which is + * or includes a copy or modification of this software and in all + * copies of the supporting documentation for such software. + * + * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR + * IMPLIED WARRANTY. IN PARTICULAR, NEITHER THE AUTHOR NOR QUEEN'S + * UNIVERSITY AT KINGSTON MAKES ANY REPRESENTATION OR WARRANTY OF ANY + * KIND CONCERNING THE MERCHANTABILITY OF THIS SOFTWARE OR ITS + * FITNESS FOR ANY PARTICULAR PURPOSE. + * + * All of which is to say that you can do what you like with this + * source code provided you don't try to sell it as your own and you + * include an unaltered copy of this message (including the + * copyright). + * + * It is also implicitly understood that bug fixes and improvements + * should make their way back to the general Internet community so + * that everyone benefits. + *----------------------------------------------------------------------*/ +/*}}}*/ +/*{{{ notes: */ +/* + * Public: + * fft_free + * fftn / fftnf + * (these are documented in the header file) + * + * Private: + * fftradix / fftradixf + * + * ----------------------------------------------------------------------* + * int fftradix (REAL Re[], REAL Im[], size_t nTotal, size_t nPass, + * size_t nSpan, int iSign, size_t maxFactors, + * size_t maxPerm); + * + * RE and IM hold the real and imaginary components of the data, and + * return the resulting real and imaginary Fourier coefficients. + * Multidimensional data *must* be allocated contiguously. There is + * no limit on the number of dimensions. + * + * + * Although there is no limit on the number of dimensions, fftradix() + * must be called once for each dimension, but the calls may be in + * any order. + * + * NTOTAL = the total number of complex data values + * NPASS = the dimension of the current variable + * NSPAN/NPASS = the spacing of consecutive data values while indexing + * the current variable + * ISIGN - see above documentation + * + * example: + * tri-variate transform with Re[n1][n2][n3], Im[n1][n2][n3] + * + * fftradix (Re, Im, n1*n2*n3, n1, n1, 1, maxf, maxp); + * fftradix (Re, Im, n1*n2*n3, n2, n1*n2, 1, maxf, maxp); + * fftradix (Re, Im, n1*n2*n3, n3, n1*n2*n3, 1, maxf, maxp); + * + * single-variate transform, + * NTOTAL = N = NSPAN = (number of complex data values), + * + * fftradix (Re, Im, n, n, n, 1, maxf, maxp); + * + * The data can also be stored in a single array with alternating + * real and imaginary parts, the magnitude of ISIGN is changed to 2 + * to give correct indexing increment, and data [0] and data [1] used + * to pass the initial addresses for the sequences of real and + * imaginary values, + * + * example: + * REAL data [2*NTOTAL]; + * fftradix (&data[0], &data[1], NTOTAL, nPass, nSpan, 2, maxf, maxp); + * + * for temporary allocation: + * + * MAXFACTORS >= the maximum prime factor of NPASS + * MAXPERM >= the number of prime factors of NPASS. In addition, + * if the square-free portion K of NPASS has two or more prime + * factors, then MAXPERM >= (K-1) + * + * storage in FACTOR for a maximum of 15 prime factors of NPASS. if + * NPASS has more than one square-free factor, the product of the + * square-free factors must be <= 210 array storage for maximum prime + * factor of 23 the following two constants should agree with the + * array dimensions. + * ----------------------------------------------------------------------*/ +/*}}}*/ +/*{{{ Revisions: */ +/* + * 26 July 95 John Beale + * - added maxf and maxp as parameters to fftradix() + * + * 28 July 95 Mark Olesen + * - cleaned-up the Fortran 66 goto spaghetti, only 3 labels remain. + * + * - added fft_free() to provide some measure of control over + * allocation/deallocation. + * + * - added fftn() wrapper for multidimensional FFTs + * + * - use -DFFT_NOFLOAT or -DFFT_NODOUBLE to avoid compiling that + * precision. Note suffix `f' on the function names indicates + * float precision. + * + * - revised documentation + * + * 31 July 95 Mark Olesen + * - added GNU Public License + * - more cleanup + * - define SUN_BROKEN_REALLOC to use malloc() instead of realloc() + * on the first pass through, apparently needed for old libc + * - removed #error directive in favour of some code that simply + * won't compile (generate an error that way) + * + * 1 Aug 95 Mark Olesen + * - define FFT_RADIX4 to only have radix 2, radix 4 transforms + * - made fftradix /fftradixf () static scope, just use fftn() + * instead. If you have good ideas about fixing the factors + * in fftn() please do so. + * + * 8 Jan 95 mj olesen + * - fixed typo's, including one that broke scaling for scaling by + * total number of matrix elements or the square root of same + * - removed unnecessary casts from allocations + * + * 10 Dec 96 mj olesen + * - changes defines to compile *without* float support by default, + * use -DFFT_FLOAT to enable. + * - shifted some variables to local scope (better hints for optimizer) + * - added Michael Steffens + * Fortran 90 module + * - made it simpler to pass dimensions for 1D FFT. + * + * 23 Feb 97 Mark Olesen + * - removed the GNU Public License (see 21 July 1995 entry), + * which should make it clear why I have the right to do so. + * - Added copyright notice and submitted to netlib + * - Moved documentation for the public functions to the header + * files where is will always be available. + * ----------------------------------------------------------------------*/ +/*}}}*/ +#ifndef _FFTN_C +#define _FFTN_C +/* we use CPP to re-include this same file for double/float cases */ +#if !defined (lint) && !defined (__FILE__) +Error: your compiler is sick! define __FILE__ yourself (a string) +#endif +#include +#include +#include +#include "fftn.h" + +/*{{{ defines/constants */ +#ifndef M_PI +# define M_PI 3.14159265358979323846264338327950288 +#endif + +#ifndef SIN60 +# define SIN60 0.86602540378443865 /* sin(60 deg) */ +# define COS72 0.30901699437494742 /* cos(72 deg) */ +# define SIN72 0.95105651629515357 /* sin(72 deg) */ +#endif +/*}}}*/ + +/*{{{ static parameters - for memory management */ +static size_t SpaceAlloced = 0; +static size_t MaxPermAlloced = 0; + +/* temp space, (void *) since both float and double routines use it */ +static void * Tmp0 = NULL; /* temp space for real part */ +static void * Tmp1 = NULL; /* temp space for imaginary part */ +static void * Tmp2 = NULL; /* temp space for Cosine values */ +static void * Tmp3 = NULL; /* temp space for Sine values */ +static int * Perm = NULL; /* Permutation vector */ + +#define NFACTOR 11 +static int factor [NFACTOR]; +/*}}}*/ + +/*{{{ fft_free() */ +void +fft_free (void) +{ + SpaceAlloced = MaxPermAlloced = 0; + if (Tmp0) { free (Tmp0); Tmp0 = NULL; } + if (Tmp1) { free (Tmp1); Tmp1 = NULL; } + if (Tmp2) { free (Tmp2); Tmp2 = NULL; } + if (Tmp3) { free (Tmp3); Tmp3 = NULL; } + if (Perm) { free (Perm); Perm = NULL; } +} +/*}}}*/ + +/* return the number of factors */ +static int +factorize (int nPass, int * kt) +{ + int nFactor = 0; + int j, jj; + + *kt = 0; + /* determine the factors of n */ + while ((nPass % 16) == 0) /* factors of 4 */ + { + factor [nFactor++] = 4; + nPass /= 16; + } + j = 3; jj = 9; /* factors of 3, 5, 7, ... */ + do { + while ((nPass % jj) == 0) + { + factor [nFactor++] = j; + nPass /= jj; + } + j += 2; + jj = j * j; + } while (jj <= nPass); + if (nPass <= 4) + { + *kt = nFactor; + factor [nFactor] = nPass; + if (nPass != 1) + nFactor++; + } + else + { + if (nPass - (nPass / 4 << 2) == 0) + { + factor [nFactor++] = 2; + nPass /= 4; + } + *kt = nFactor; + j = 2; + do { + if ((nPass % j) == 0) + { + factor [nFactor++] = j; + nPass /= j; + } + j = ((j + 1) / 2 << 1) + 1; + } while (j <= nPass); + } + if (*kt) + { + j = *kt; + do + factor [nFactor++] = factor [--j]; + while (j); + } + + return nFactor; +} + +/* re-include this source file on the second pass through */ +/*{{{ defines for re-including double precision */ +#ifdef FFT_NODOUBLE +# ifndef FFT_FLOAT +# define FFT_FLOAT +# endif +#else +# undef REAL +# undef FFTN +# undef FFTNS +# undef FFTRADIX +# undef FFTRADIXS +/* defines for double */ +# define REAL double +# define FFTN fftn +# define FFTNS "fftn" +# define FFTRADIX fftradix +# define FFTRADIXS "fftradix" +/* double precision routine */ +static int +fftradix (double Re[], double Im[], + size_t nTotal, size_t nPass, size_t nSpan, int isign, + int maxFactors, int maxPerm); +# include __FILE__ /* include this file again */ +#endif +/*}}}*/ + +/*{{{ defines for re-including float precision */ +#ifdef FFT_FLOAT +# undef REAL +# undef FFTN +# undef FFTNS +# undef FFTRADIX +# undef FFTRADIXS +/* defines for float */ +# define REAL float +# define FFTN fftnf /* trailing 'f' for float */ +# define FFTNS "fftnf" /* name for error message */ +# define FFTRADIX fftradixf /* trailing 'f' for float */ +# define FFTRADIXS "fftradixf" /* name for error message */ +/* float precision routine */ +static int +fftradixf (float Re[], float Im[], + size_t nTotal, size_t nPass, size_t nSpan, int isign, + int maxFactors, int maxPerm); +# include __FILE__ /* include this file again */ +#endif +/*}}}*/ +#else /* _FFTN_C */ + +/* + * use macros to access the Real/Imaginary parts so that it's possible + * to substitute different macros if a complex struct is used + */ + +#ifndef Re_Data +# define Re_Data(i) Re[i] +# define Im_Data(i) Im[i] +#endif + +/* + * + */ +int +FFTN (int ndim, + const int dims [], + REAL Re [], + REAL Im [], + int iSign, + double scaling) +{ + size_t nTotal; + int maxFactors, maxPerm; + + /* + * tally the number of elements in the data array + * and determine the number of dimensions + */ + nTotal = 1; + if (ndim) + { + if (dims != NULL) + { + int i; + /* number of dimensions was specified */ + for (i = 0; i < ndim; i++) + { + if (dims [i] <= 0) goto Dimension_Error; + nTotal *= dims [i]; + } + } + else + nTotal *= ndim; + } + else + { + int i; + /* determine # of dimensions from zero-terminated list */ + if (dims == NULL) goto Dimension_Error; + for (ndim = i = 0; dims [i]; i++) + { + if (dims [i] <= 0) + goto Dimension_Error; + nTotal *= dims [i]; + ndim++; + } + } + + /* determine maximum number of factors and permuations */ +#if 1 + /* + * follow John Beale's example, just use the largest dimension and don't + * worry about excess allocation. May be someone else will do it? + */ + if (dims != NULL) + { + int i; + for (maxFactors = maxPerm = 1, i = 0; i < ndim; i++) + { + if (dims [i] > maxFactors) maxFactors = dims [i]; + if (dims [i] > maxPerm) maxPerm = dims [i]; + } + } + else + { + maxFactors = maxPerm = nTotal; + } +#else + /* use the constants used in the original Fortran code */ + maxFactors = 23; + maxPerm = 209; +#endif + /* loop over the dimensions: */ + if (dims != NULL) + { + size_t nSpan = 1; + int i; + + for (i = 0; i < ndim; i++) + { + int ret; + nSpan *= dims [i]; + ret = FFTRADIX (Re, Im, nTotal, dims [i], nSpan, iSign, + maxFactors, maxPerm); + /* exit, clean-up already done */ + if (ret) + return ret; + } + } + else + { + int ret; + ret = FFTRADIX (Re, Im, nTotal, nTotal, nTotal, iSign, + maxFactors, maxPerm); + /* exit, clean-up already done */ + if (ret) + return ret; + } + + /* Divide through by the normalizing constant: */ + if (scaling && scaling != 1.0) + { + int i; + + if (iSign < 0) iSign = -iSign; + if (scaling < 0.0) + scaling = (scaling < -1.0) ? sqrt (nTotal) : nTotal; + scaling = 1.0 / scaling; /* multiply is often faster */ + for (i = 0; i < nTotal*iSign; i += iSign) /* fix by Axel van de Walle: *iSign */ + { + Re_Data (i) *= scaling; + Im_Data (i) *= scaling; + } + } + return 0; + + Dimension_Error: + fprintf (stderr, "Error: " FFTNS "() - dimension error\n"); + fft_free (); /* free-up memory */ + return -1; +} + +/*----------------------------------------------------------------------*/ +/* + * singleton's mixed radix routine + * + * could move allocation out to fftn(), but leave it here so that it's + * possible to make this a standalone function + */ +static int +FFTRADIX (REAL Re [], + REAL Im [], + size_t nTotal, + size_t nPass, + size_t nSpan, + int iSign, + int maxFactors, + int maxPerm) +{ + int ii, nFactor, kspan, ispan, inc; + int j, jc, jf, jj, k, k1, k3, kk, kt, nn, ns, nt; + + REAL radf; + REAL c1, c2, c3, cd; + REAL s1, s2, s3, sd; + + REAL * Rtmp = NULL; /* temp space for real part*/ + REAL * Itmp = NULL; /* temp space for imaginary part */ + REAL * Cos = NULL; /* Cosine values */ + REAL * Sin = NULL; /* Sine values */ + +#ifndef FFT_RADIX4 + REAL s60 = SIN60; /* sin(60 deg) */ + REAL s72 = SIN72; /* sin(72 deg) */ + REAL c72 = COS72; /* cos(72 deg) */ +#endif + REAL pi2 = M_PI; /* use PI first, 2 PI later */ + + /* gcc complains about k3 being uninitialized, but I can't find out where + * or why ... it looks okay to me. + * + * initialize to make gcc happy + */ + k3 = 0; + + /* gcc complains about c2, c3, s2,s3 being uninitialized, but they're + * only used for the radix 4 case and only AFTER the (s1 == 0.0) pass + * through the loop at which point they will have been calculated. + * + * initialize to make gcc happy + */ + c2 = c3 = s2 = s3 = 0.0; + + /* Parameter adjustments, was fortran so fix zero-offset */ + Re--; + Im--; + + if (nPass < 2) + return 0; + + /* allocate storage */ + if (SpaceAlloced < maxFactors * sizeof (REAL)) + { +#ifdef SUN_BROKEN_REALLOC + if (!SpaceAlloced) /* first time */ + { + SpaceAlloced = maxFactors * sizeof (REAL); + Tmp0 = malloc (SpaceAlloced); + Tmp1 = malloc (SpaceAlloced); + Tmp2 = malloc (SpaceAlloced); + Tmp3 = malloc (SpaceAlloced); + } + else + { +#endif + SpaceAlloced = maxFactors * sizeof (REAL); + Tmp0 = realloc (Tmp0, SpaceAlloced); + Tmp1 = realloc (Tmp1, SpaceAlloced); + Tmp2 = realloc (Tmp2, SpaceAlloced); + Tmp3 = realloc (Tmp3, SpaceAlloced); +#ifdef SUN_BROKEN_REALLOC + } +#endif + } + else + { + /* allow full use of alloc'd space */ + maxFactors = SpaceAlloced / sizeof (REAL); + } + if (MaxPermAlloced < maxPerm) + { +#ifdef SUN_BROKEN_REALLOC + if (!MaxPermAlloced) /* first time */ + Perm = malloc (maxPerm * sizeof(int)); + else +#endif + Perm = (int *) realloc (Perm, maxPerm * sizeof(int)); /* fix by Axel van de Walle: (int *) */ + MaxPermAlloced = maxPerm; + } + else + { + /* allow full use of alloc'd space */ + maxPerm = MaxPermAlloced; + } + if (!Tmp0 || !Tmp1 || !Tmp2 || !Tmp3 || !Perm) goto Memory_Error; + + /* assign pointers */ + Rtmp = (REAL *) Tmp0; + Itmp = (REAL *) Tmp1; + Cos = (REAL *) Tmp2; + Sin = (REAL *) Tmp3; + + /* + * Function Body + */ + inc = iSign; + if (iSign < 0) + { +#ifndef FFT_RADIX4 + s60 = -s60; + s72 = -s72; +#endif + pi2 = -pi2; + inc = -inc; /* absolute value */ + } + + /* adjust for strange increments */ + nt = inc * nTotal; + ns = inc * nSpan; + kspan = ns; + + nn = nt - inc; + jc = ns / nPass; + radf = pi2 * (double) jc; + pi2 *= 2.0; /* use 2 PI from here on */ + + ii = 0; + jf = 0; + /* determine the factors of n */ + + nFactor = factorize (nPass, &kt); + /* test that nFactors is in range */ + if (nFactor > NFACTOR) + { + fprintf (stderr, "Error: " FFTRADIXS "() - exceeded number of factors\n"); + goto Memory_Error; + } + + /* compute fourier transform */ + for (;;) { + sd = radf / (double) kspan; + cd = sin (sd); + cd = 2.0 * cd * cd; + sd = sin (sd + sd); + kk = 1; + ii++; + + switch (factor [ii - 1]) { + case 2: + /* transform for factor of 2 (including rotation factor) */ + kspan /= 2; + k1 = kspan + 2; + do { + do { + REAL tmpr; + REAL tmpi; + int k2; + + k2 = kk + kspan; + tmpr = Re_Data (k2); + tmpi = Im_Data (k2); + Re_Data (k2) = Re_Data (kk) - tmpr; + Im_Data (k2) = Im_Data (kk) - tmpi; + Re_Data (kk) += tmpr; + Im_Data (kk) += tmpi; + kk = k2 + kspan; + } while (kk <= nn); + kk -= nn; + } while (kk <= jc); + if (kk > kspan) + goto Permute_Results; /* exit infinite loop */ + do { + int k2; + + c1 = 1.0 - cd; + s1 = sd; + do { + REAL tmp; + do { + do { + REAL tmpr; + REAL tmpi; + + k2 = kk + kspan; + tmpr = Re_Data (kk) - Re_Data (k2); + tmpi = Im_Data (kk) - Im_Data (k2); + Re_Data (kk) += Re_Data (k2); + Im_Data (kk) += Im_Data (k2); + Re_Data (k2) = c1 * tmpr - s1 * tmpi; + Im_Data (k2) = s1 * tmpr + c1 * tmpi; + kk = k2 + kspan; + } while (kk < nt); + k2 = kk - nt; + c1 = -c1; + kk = k1 - k2; + } while (kk > k2); + tmp = c1 - (cd * c1 + sd * s1); + s1 = sd * c1 - cd * s1 + s1; + c1 = 2.0 - (tmp * tmp + s1 * s1); + s1 *= c1; + c1 *= tmp; + kk += jc; + } while (kk < k2); + k1 += (inc + inc); + kk = (k1 - kspan) / 2 + jc; + } while (kk <= jc + jc); + break; + + case 4: /* transform for factor of 4 */ + ispan = kspan; + kspan /= 4; + + do { + c1 = 1.0; + s1 = 0.0; + do { + do { + REAL ajm, ajp, akm, akp; + REAL bjm, bjp, bkm, bkp; + int k2; + + k1 = kk + kspan; + k2 = k1 + kspan; + k3 = k2 + kspan; + akp = Re_Data (kk) + Re_Data (k2); + akm = Re_Data (kk) - Re_Data (k2); + + ajp = Re_Data (k1) + Re_Data (k3); + ajm = Re_Data (k1) - Re_Data (k3); + + bkp = Im_Data (kk) + Im_Data (k2); + bkm = Im_Data (kk) - Im_Data (k2); + + bjp = Im_Data (k1) + Im_Data (k3); + bjm = Im_Data (k1) - Im_Data (k3); + + Re_Data (kk) = akp + ajp; + Im_Data (kk) = bkp + bjp; + ajp = akp - ajp; + bjp = bkp - bjp; + if (iSign < 0) + { + akp = akm + bjm; + bkp = bkm - ajm; + akm -= bjm; + bkm += ajm; + } + else + { + akp = akm - bjm; + bkp = bkm + ajm; + akm += bjm; + bkm -= ajm; + } + /* avoid useless multiplies */ + if (s1 == 0.0) + { + Re_Data (k1) = akp; + Re_Data (k2) = ajp; + Re_Data (k3) = akm; + Im_Data (k1) = bkp; + Im_Data (k2) = bjp; + Im_Data (k3) = bkm; + } + else + { + Re_Data (k1) = akp * c1 - bkp * s1; + Re_Data (k2) = ajp * c2 - bjp * s2; + Re_Data (k3) = akm * c3 - bkm * s3; + Im_Data (k1) = akp * s1 + bkp * c1; + Im_Data (k2) = ajp * s2 + bjp * c2; + Im_Data (k3) = akm * s3 + bkm * c3; + } + kk = k3 + kspan; + } while (kk <= nt); + + c2 = c1 - (cd * c1 + sd * s1); + s1 = sd * c1 - cd * s1 + s1; + c1 = 2.0 - (c2 * c2 + s1 * s1); + s1 *= c1; + c1 *= c2; + /* values of c2, c3, s2, s3 that will get used next time */ + c2 = c1 * c1 - s1 * s1; + s2 = 2.0 * c1 * s1; + c3 = c2 * c1 - s2 * s1; + s3 = c2 * s1 + s2 * c1; + kk = kk - nt + jc; + } while (kk <= kspan); + kk = kk - kspan + inc; + } while (kk <= jc); + if (kspan == jc) + goto Permute_Results; /* exit infinite loop */ + break; + + default: + /* transform for odd factors */ +#ifdef FFT_RADIX4 + fprintf (stderr, "Error: " FFTRADIXS "(): compiled for radix 2/4 only\n"); + fft_free (); /* free-up memory */ + return -1; + break; +#else /* FFT_RADIX4 */ + ispan = kspan; + k = factor [ii - 1]; + kspan /= factor [ii - 1]; + + switch (factor [ii - 1]) { + case 3: /* transform for factor of 3 (optional code) */ + do { + do { + REAL aj, tmpr; + REAL bj, tmpi; + int k2; + + k1 = kk + kspan; + k2 = k1 + kspan; + tmpr = Re_Data (kk); + tmpi = Im_Data (kk); + aj = Re_Data (k1) + Re_Data (k2); + bj = Im_Data (k1) + Im_Data (k2); + Re_Data (kk) = tmpr + aj; + Im_Data (kk) = tmpi + bj; + tmpr -= 0.5 * aj; + tmpi -= 0.5 * bj; + aj = (Re_Data (k1) - Re_Data (k2)) * s60; + bj = (Im_Data (k1) - Im_Data (k2)) * s60; + Re_Data (k1) = tmpr - bj; + Re_Data (k2) = tmpr + bj; + Im_Data (k1) = tmpi + aj; + Im_Data (k2) = tmpi - aj; + kk = k2 + kspan; + } while (kk < nn); + kk -= nn; + } while (kk <= kspan); + break; + + case 5: /* transform for factor of 5 (optional code) */ + c2 = c72 * c72 - s72 * s72; + s2 = 2.0 * c72 * s72; + do { + do { + REAL aa, aj, ak, ajm, ajp, akm, akp; + REAL bb, bj, bk, bjm, bjp, bkm, bkp; + int k2, k4; + + k1 = kk + kspan; + k2 = k1 + kspan; + k3 = k2 + kspan; + k4 = k3 + kspan; + akp = Re_Data (k1) + Re_Data (k4); + akm = Re_Data (k1) - Re_Data (k4); + bkp = Im_Data (k1) + Im_Data (k4); + bkm = Im_Data (k1) - Im_Data (k4); + ajp = Re_Data (k2) + Re_Data (k3); + ajm = Re_Data (k2) - Re_Data (k3); + bjp = Im_Data (k2) + Im_Data (k3); + bjm = Im_Data (k2) - Im_Data (k3); + aa = Re_Data (kk); + bb = Im_Data (kk); + Re_Data (kk) = aa + akp + ajp; + Im_Data (kk) = bb + bkp + bjp; + ak = akp * c72 + ajp * c2 + aa; + bk = bkp * c72 + bjp * c2 + bb; + aj = akm * s72 + ajm * s2; + bj = bkm * s72 + bjm * s2; + Re_Data (k1) = ak - bj; + Re_Data (k4) = ak + bj; + Im_Data (k1) = bk + aj; + Im_Data (k4) = bk - aj; + ak = akp * c2 + ajp * c72 + aa; + bk = bkp * c2 + bjp * c72 + bb; + aj = akm * s2 - ajm * s72; + bj = bkm * s2 - bjm * s72; + Re_Data (k2) = ak - bj; + Re_Data (k3) = ak + bj; + Im_Data (k2) = bk + aj; + Im_Data (k3) = bk - aj; + kk = k4 + kspan; + } while (kk < nn); + kk -= nn; + } while (kk <= kspan); + break; + + default: + k = factor [ii - 1]; + if (jf != k) + { + jf = k; + s1 = pi2 / (double) jf; + c1 = cos (s1); + s1 = sin (s1); + if (jf > maxFactors) + goto Memory_Error; + Cos [jf - 1] = 1.0; + Sin [jf - 1] = 0.0; + j = 1; + do { + Cos [j - 1] = Cos [k - 1] * c1 + Sin [k - 1] * s1; + Sin [j - 1] = Cos [k - 1] * s1 - Sin [k - 1] * c1; + k--; + Cos [k - 1] = Cos [j - 1]; + Sin [k - 1] = -Sin [j - 1]; + j++; + } while (j < k); + } + do { + do { + REAL aa, ak; + REAL bb, bk; + int k2; + + aa = ak = Re_Data (kk); + bb = bk = Im_Data (kk); + + k1 = kk; + k2 = kk + ispan; + j = 1; + k1 += kspan; + do { + k2 -= kspan; + Rtmp [j] = Re_Data (k1) + Re_Data (k2); + ak += Rtmp [j]; + Itmp [j] = Im_Data (k1) + Im_Data (k2); + bk += Itmp [j]; + j++; + Rtmp [j] = Re_Data (k1) - Re_Data (k2); + Itmp [j] = Im_Data (k1) - Im_Data (k2); + j++; + k1 += kspan; + } while (k1 < k2); + Re_Data (kk) = ak; + Im_Data (kk) = bk; + + k1 = kk; + k2 = kk + ispan; + j = 1; + do { + REAL aj = 0.0; + REAL bj = 0.0; + + k1 += kspan; + k2 -= kspan; + jj = j; + ak = aa; + bk = bb; + k = 1; + do { + ak += Rtmp [k] * Cos [jj - 1]; + bk += Itmp [k] * Cos [jj - 1]; + k++; + aj += Rtmp [k] * Sin [jj - 1]; + bj += Itmp [k] * Sin [jj - 1]; + k++; + jj += j; + if (jj > jf) + jj -= jf; + } while (k < jf); + k = jf - j; + Re_Data (k1) = ak - bj; + Im_Data (k1) = bk + aj; + Re_Data (k2) = ak + bj; + Im_Data (k2) = bk - aj; + j++; + } while (j < k); + kk += ispan; + } while (kk <= nn); + kk -= nn; + } while (kk <= kspan); + break; + } + /* multiply by rotation factor (except for factors of 2 and 4) */ + if (ii == nFactor) + goto Permute_Results; /* exit infinite loop */ + kk = jc + 1; + do { + c2 = 1.0 - cd; + s1 = sd; + do { + c1 = c2; + s2 = s1; + kk += kspan; + do { + REAL tmp; + do { + REAL ak; + ak = Re_Data (kk); + Re_Data (kk) = c2 * ak - s2 * Im_Data (kk); + Im_Data (kk) = s2 * ak + c2 * Im_Data (kk); + kk += ispan; + } while (kk <= nt); + tmp = s1 * s2; + s2 = s1 * c2 + c1 * s2; + c2 = c1 * c2 - tmp; + kk = kk - nt + kspan; + } while (kk <= ispan); + c2 = c1 - (cd * c1 + sd * s1); + s1 += sd * c1 - cd * s1; + c1 = 2.0 - (c2 * c2 + s1 * s1); + s1 *= c1; + c2 *= c1; + kk = kk - ispan + jc; + } while (kk <= kspan); + kk = kk - kspan + jc + inc; + } while (kk <= jc + jc); + break; +#endif /* FFT_RADIX4 */ + } + } + +/* permute the results to normal order -- done in two stages */ +/* permutation for square factors of n */ +Permute_Results: + Perm [0] = ns; + if (kt) + { + int k2; + + k = kt + kt + 1; + if (k > nFactor) + k--; + Perm [k] = jc; + j = 1; + do { + Perm [j] = Perm [j - 1] / factor [j - 1]; + Perm [k - 1] = Perm [k] * factor [j - 1]; + j++; + k--; + } while (j < k); + k3 = Perm [k]; + kspan = Perm [1]; + kk = jc + 1; + k2 = kspan + 1; + j = 1; + if (nPass != nTotal) + { + /* permutation for multivariate transform */ + Permute_Multi: + do { + do { + k = kk + jc; + do { + /* swap + * Re_Data (kk) <> Re_Data (k2) + * Im_Data (kk) <> Im_Data (k2) + */ + REAL tmp; + tmp = Re_Data (kk); Re_Data (kk) = Re_Data (k2); Re_Data (k2) = tmp; + tmp = Im_Data (kk); Im_Data (kk) = Im_Data (k2); Im_Data (k2) = tmp; + kk += inc; + k2 += inc; + } while (kk < k); + kk += (ns - jc); + k2 += (ns - jc); + } while (kk < nt); + k2 = k2 - nt + kspan; + kk = kk - nt + jc; + } while (k2 < ns); + do { + do { + k2 -= Perm [j - 1]; + j++; + k2 = Perm [j] + k2; + } while (k2 > Perm [j - 1]); + j = 1; + do { + if (kk < k2) + goto Permute_Multi; + kk += jc; + k2 += kspan; + } while (k2 < ns); + } while (kk < ns); + } + else + { + /* permutation for single-variate transform (optional code) */ +Permute_Single: + do { + /* swap + * Re_Data (kk) <> Re_Data (k2) + * Im_Data (kk) <> Im_Data (k2) + */ + REAL t; + t = Re_Data (kk); Re_Data (kk) = Re_Data (k2); Re_Data (k2) = t; + t = Im_Data (kk); Im_Data (kk) = Im_Data (k2); Im_Data (k2) = t; + kk += inc; + k2 += kspan; + } while (k2 < ns); + do { + do { + k2 -= Perm [j - 1]; + j++; + k2 = Perm [j] + k2; + } while (k2 > Perm [j - 1]); + j = 1; + do { + if (kk < k2) + goto Permute_Single; + kk += inc; + k2 += kspan; + } while (k2 < ns); + } while (kk < ns); + } + jc = k3; + } + + if ((kt << 1) + 1 >= nFactor) + return 0; + ispan = Perm [kt]; + + /* permutation for square-free factors of n */ + j = nFactor - kt; + factor [j] = 1; + do { + factor [j - 1] *= factor [j]; + j--; + } while (j != kt); + nn = factor [kt] - 1; + kt++; + if (nn > maxPerm) + goto Memory_Error; + + j = jj = 0; + for (;;) { + int k2; + + k = kt + 1; + k2 = factor [kt - 1]; + kk = factor [k - 1]; + j++; + if (j > nn) + break; /* exit infinite loop */ + jj += kk; + while (jj >= k2) + { + jj -= k2; + k2 = kk; + kk = factor [k++]; + jj += kk; + } + Perm [j - 1] = jj; + } + /* determine the permutation cycles of length greater than 1 */ + j = 0; + for (;;) { + do { + kk = Perm [j++]; + } while (kk < 0); + if (kk != j) + { + do { + k = kk; + kk = Perm [k - 1]; + Perm [k - 1] = -kk; + } while (kk != j); + k3 = kk; + } + else + { + Perm [j - 1] = -j; + if (j == nn) + break; /* exit infinite loop */ + } + } + + maxFactors *= inc; + + /* reorder a and b, following the permutation cycles */ + for (;;) { + j = k3 + 1; + nt -= ispan; + ii = nt - inc + 1; + if (nt < 0) + break; /* exit infinite loop */ + do { + do { + j--; + } while (Perm [j - 1] < 0); + jj = jc; + do { + int k2; + + if (jj < maxFactors) kspan = jj; else kspan = maxFactors; + + jj -= kspan; + k = Perm [j - 1]; + kk = jc * k + ii + jj; + + k1 = kk + kspan; + k2 = 0; + do { + Rtmp [k2] = Re_Data (k1); + Itmp [k2] = Im_Data (k1); + k2++; + k1 -= inc; + } while (k1 != kk); + + do { + k1 = kk + kspan; + k2 = k1 - jc * (k + Perm [k - 1]); + k = -Perm [k - 1]; + do { + Re_Data (k1) = Re_Data (k2); + Im_Data (k1) = Im_Data (k2); + k1 -= inc; + k2 -= inc; + } while (k1 != kk); + kk = k2; + } while (k != j); + + k1 = kk + kspan; + k2 = 0; + do { + Re_Data (k1) = Rtmp [k2]; + Im_Data (k1) = Itmp [k2]; + k2++; + k1 -= inc; + } while (k1 != kk); + } while (jj); + } while (j != 1); + } + return 0; /* exit point here */ + + /* alloc or other problem, do some clean-up */ +Memory_Error: + fprintf (stderr, "Error: " FFTRADIXS "() - insufficient memory.\n"); + fft_free (); /* free-up memory */ + return -1; +} +#endif /* _FFTN_C */ +/*----------------------- end-of-file (C source) -----------------------*/ diff --git a/src/fftn.hh b/src/fftn.hh new file mode 100644 index 0000000..2c5990e --- /dev/null +++ b/src/fftn.hh @@ -0,0 +1,115 @@ +/*--------------------------------*-C-*---------------------------------* + * File: + * fftn.h + * + * Singleton's multivariate complex Fourier transform, computed in + * place using mixed-radix Fast Fourier Transform algorithm. + * + * Called here `fftn' since it does a radix-n FFT on n-dimensional data + * + * Copyright(c)1995,97 Mark Olesen + * Queen's Univ at Kingston (Canada) + * + * Permission to use, copy, modify, and distribute this software for + * any purpose without fee is hereby granted, provided that this + * entire notice is included in all copies of any software which is + * or includes a copy or modification of this software and in all + * copies of the supporting documentation for such software. + * + * THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR + * IMPLIED WARRANTY. IN PARTICULAR, NEITHER THE AUTHOR NOR QUEEN'S + * UNIVERSITY AT KINGSTON MAKES ANY REPRESENTATION OR WARRANTY OF ANY + * KIND CONCERNING THE MERCHANTABILITY OF THIS SOFTWARE OR ITS + * FITNESS FOR ANY PARTICULAR PURPOSE. + * + * All of which is to say that you can do what you like with this + * source code provided you don't try to sell it as your own and you + * include an unaltered copy of this message (including the + * copyright). + * + * It is also implicitly understood that bug fixes and improvements + * should make their way back to the general Internet community so + * that everyone benefits. + * + * Brief overview of parameters: + * ---------------------------------------------------------------------* + * Re[]: real value array + * Im[]: imaginary value array + * nTotal: total number of complex values + * nPass: number of elements involved in this pass of transform + * nSpan: nspan/nPass = number of bytes to increment pointer + * in Re[] and Im[] + * isign: exponent: +1 = forward -1 = reverse + * scaling: normalizing constant by which the final result is DIVIDED + * scaling == -1, normalize by total dimension of the transform + * scaling < -1, normalize by the square-root of the total dimension + * + * + * Slightly more detailed information: + * ----------------------------------------------------------------------* + * void fft_free (void); + * + * free-up allocated temporary storage after finished all the Fourier + * transforms. + * + * ----------------------------------------------------------------------* + * + * int fftn (int ndim, const int dims[], REAL Re[], REAL Im[], + * int iSign, double scaling); + * + * NDIM = the total number dimensions + * DIMS = a vector of array sizes + * if NDIM is zero then DIMS must be zero-terminated + * + * RE and IM hold the real and imaginary components of the data, and + * return the resulting real and imaginary Fourier coefficients. + * Multidimensional data *must* be allocated contiguously. There is + * no limit on the number of dimensions. + * + * ISIGN = the sign of the complex exponential + * (ie, forward or inverse FFT) + * the magnitude of ISIGN (normally 1) is used to determine + * the correct indexing increment (see below). + * + * SCALING = normalizing constant by which the final result is DIVIDED + * if SCALING == -1, normalize by total dimension of the transform + * if SCALING < -1, normalize by the square-root of the total dimension + * + * example: + * tri-variate transform with Re[n3][n2][n1], Im[n3][n2][n1] + * + * int dims[3] = {n1,n2,n3} + * fftn (3, dims, Re, Im, 1, scaling); + * + * or, using a null terminated dimension list + * int dims[4] = {n1,n2,n3,0} + * fftn (0, dims, Re, Im, 1, scaling); + * ----------------------------------------------------------------------*/ +#ifndef _FFTN_H +#define _FFTN_H +#ifdef __cplusplus +extern "C" { +#endif + extern void fft_free (void); + + /* double precision routine */ + extern int fftn (int /* ndim */, + const int /* dims */[], + double /* Re */[], + double /* Im */[], + int /* isign */, + double /* scaling */); + + /* float precision routine */ + extern int fftnf (int /* ndim */, + const int /* dims */[], + float /* Re */[], + float /* Im */[], + int /* isign */, + double /* scaling */); + +#ifdef __cplusplus +} +#endif +#endif /* _FFTN_H */ +/*----------------------- end-of-file (C header) -----------------------*/ diff --git a/src/findsym.c++ b/src/findsym.c++ new file mode 100644 index 0000000..ef3f4bc --- /dev/null +++ b/src/findsym.c++ @@ -0,0 +1,987 @@ +#include "findsym.h" + +#define HARTFORCADE + +int equivalent_by_symmetry(const rVector3d &a, const rVector3d &b, + const rMatrix3d &cell, + const Array &point_op, const Array &trans) { + rMatrix3d inv_cell=!cell; + for (int op=0; op &a, const Array &b, + const rMatrix3d &cell, + const Array &point_op, const Array &trans) { + rMatrix3d inv_cell=!cell; + for (int op=0; op t_b; + apply_symmetry(&t_b,point_op(op),trans(op),b); + if (equivalent_mod_cell(a,t_b,inv_cell)) return 1; + } + return 0; +} + +int equivalent_by_symmetry(const MultiCluster &a, const MultiCluster &b, + const rMatrix3d &cell, + const Array &point_op, const Array &trans) { + rMatrix3d inv_cell=!cell; + for (int op=0; op *pconc, const Array &atom_type) { + Real dc=1./(Real)atom_type.get_size(); + *pmin_type=min(atom_type); + *pmax_type=max(atom_type); + pconc->resize((*pmax_type)-(*pmin_type)+1); + zero_array(pconc); + for (int i=0; i &atom_type) { + int sum=0; + for (int i=0; i &point_op, const Array &trans) { + if (a.atom_pos.get_size() > b.atom_pos.get_size()) return equivalent_by_symmetry(b,a,cell,point_op,trans); + if ((b.atom_pos.get_size() % a.atom_pos.get_size())!=0) return 0; + // if (!near_zero(check_sum_structure(a.atom_type)-check_sum_structure(b.atom_type))) return 0; + + Array conca,concb; + int min_typea,max_typea,min_typeb,max_typeb; + calc_concentration(&min_typea,&max_typea,&conca,a.atom_type); + calc_concentration(&min_typeb,&max_typeb,&concb,b.atom_type); + if (min_typea!=min_typeb || max_typea!=max_typeb) return 0; + for (int i=0; izero_tolerance) return 0; + } + + rMatrix3d inv_acell=!a.cell; + for (int op=0; op *point_op, const rMatrix3d &cell) { + LinkedList point_op_list; + rVector3d u1=cell.get_column(0); + rVector3d u2=cell.get_column(1); + rVector3d u3=cell.get_column(2); + rMatrix3d inv_cell=!cell; + rMatrix3d id; + id.identity(); + + LatticePointIterator p1(cell); + while (norm(p1) *pointgroup, const Array &point_op) { + LinkedList list; + for (int op=0; op i(list); + while (i) { + if (max_norm((*i)-point_op(op)) *pointgroup, const rMatrix3d &cell, const Array &point_op, const Array &trans) { + LinkedList list; + rMatrix3d inv_cell=!str.cell; + for (int op=0; op transfo_pos; + apply_symmetry(&transfo_pos,point_op(op),trans(op)+shift,str.atom_pos); + int at; + for (at=0; at i(list); + while (i) { + if (max_norm((*i)-point_op(op)) *ppoint_op, Array *ptrans, const rMatrix3d &supercell, const Array &point_op, const Array &trans) { + LinkedList pt_list; + LinkedList tr_list; + rMatrix3d inv_cell=!supercell; + for (int op=0; op point_ops(1); + Array trans(1); + point_ops(0)=point_op; + trans(0)=rVector3d(0.,0.,0.); + AtomPairIterator p(lat.cell,lat.atom_pos(0),lat.atom_pos); + for (; ; p++) { + rVector3d t=p(1)-p(0); + apply_symmetry(&t_lat.atom_pos,point_op,t,lat.atom_pos); + if (equivalent_by_symmetry(t_lat,lat,lat.cell,point_ops,trans)) { + a[0]=t; + break; + } + } + Real l0=norm(a[0]); + for (; ; p++) { + rVector3d t=p(1)-p(0); + apply_symmetry(&t_lat.atom_pos,point_op,t,lat.atom_pos); + if (equivalent_by_symmetry(t_lat,lat,lat.cell,point_ops,trans)) { + if (!near_zero( norm(a[0]^t)/( l0*norm(t) ) )) { + a[1]=t; + break; + } + } + } + Real l1=norm(a[1]); + for (; ; p++) { + rVector3d t=p(1)-p(0); + apply_symmetry(&t_lat.atom_pos,point_op,t,lat.atom_pos); + if (equivalent_by_symmetry(t_lat,lat,lat.cell,point_ops,trans)) { + if ( (a[0]^a[1])*t / ( l0*l1*norm(t) ) >zero_tolerance) { + a[2]=t; + break; + } + } + } + for (int i=0; i<3; i++) {pcell->set_column(i,a[i]);} + Real r=((Real)lat.atom_pos.get_size())*fabs(det(*pcell)/det(lat.cell)); + if ((! is_int(r)) || iround(fabs(r))==0) { + *pcell=lat.cell; + } +} + +void find_spacegroup(Array *point_op, Array *trans, + const rMatrix3d &cell, + const Array &atom_pos, const Array +&atom_type) { + rMatrix3d inv_cell=!cell; + int max_type,min_type; + Array atom_type_conc; + calc_concentration(&min_type,&max_type,&atom_type_conc,atom_type); + int rare_type=-1; + int min_conc=MAXINT; + for (int i=0; i pointgroup; + { + rMatrix3d prim_cell; + Structure tmplat; + tmplat.cell=cell; + tmplat.atom_pos=atom_pos; + tmplat.atom_type=atom_type; + find_primitive_unit_cell(&prim_cell,tmplat); + find_pointgroup(&pointgroup,prim_cell); + } + // find_pointgroup(&pointgroup,cell); + LinkedList point_op_list; + LinkedList trans_list; + for (int i=ref_atom; i0),(c*a>0),(a*b>0)); + int sign_to_flip=(l1_norm(signs) % 2); + for (int i=0; i<3; i++) { + if (signs(i)==sign_to_flip) { + rcell.set_column(i,-rcell.get_column(i)); + } + } + if (det(rcell)<0) rcell=-rcell; + return rcell; +} + +void find_all_equivalent_cell(Array *psupercell, const rMatrix3d &cell, Real radius) { + LinkedList cell_list; + Real d=fabs(det(cell)); + LatticePointIterator lp[3]; + rMatrix3d curcell; + Real radius2=radius*radius+zero_tolerance; + lp[2].init(cell,1); + while (norm2(lp[2])<=radius2) { + lp[1].init(cell,1); + while (norm2(lp[1])<=radius2) { + lp[0].init(cell,1); + while (norm2(lp[0])<=radius2) { + for (int i=0; i<3; i++) { + curcell.set_column(i,lp[i]); + } + if (near_zero(fabs(det(curcell))-d)) { + cell_list << new rMatrix3d(curcell); + } + lp[0]++; + } + lp[1]++; + } + lp[2]++; + } + LinkedList_to_Array(psupercell,cell_list); +} + + + +void find_supercells(Array *supercell, int min_volume, int max_volume, const rMatrix3d &unitcell, const Array &pointgroup) { + Array A(pointgroup.get_size()); + for (int op=0; op list_abc; + + for (int volume=min_volume; volume<=max_volume; volume++) { + Real maxa=pow((Real)volume*sqrt(2.),1./3.); + int imaxa=(int)ceil(maxa); + LinkedList list_a; + MultiDimIterator a(iVector3d(0,-imaxa,-imaxa),iVector3d(imaxa,imaxa,imaxa)); + for ( ; a; a++) { + if (norm((iVector3d &)a)<=maxa+zero_tolerance) { + LinkedListIterator cur_a(list_a); + while (cur_a) { + int sym; + for (sym=0; sym cur_a(list_a); + for ( ; cur_a; cur_a++) { + iVector3d a=*cur_a; + Real len_a=norm(a); + Real maxb=sqrt(sqr(len_a)/6.+sqrt(sqr(sqr(len_a)/6.) + 4./3.*sqr((Real)volume/len_a))); + int imaxb=(int)ceil(maxb); + MultiDimIterator b(iVector3d(0,-imaxb,-imaxb),iVector3d(imaxb,imaxb,imaxb)); + for ( ; b; b++) { + if (norm((iVector3d &)b)<=maxb+zero_tolerance && norm((iVector3d &)a)>=len_a-zero_tolerance) { + Real proj=(Real)((iVector3d &)b*(iVector3d &)a)/(Real)((iVector3d &)a*(iVector3d &)a); + iVector3d axb=(iVector3d &)a^(iVector3d &)b; + int axb2=norm2(axb); + if (proj>=(-0.5+ zero_tolerance) && + proj<=( 0.5+2.*zero_tolerance) && + axb2!=0) { + int minw=-axb2/2; + int maxw=-axb2/2+axb2; + for (int wa=minw; wa cur_abc(list_abc); + while (cur_abc) { + int sym; + for (sym=0; symresize(list_abc.get_size()); + LinkedListIterator cur_abc(list_abc); + for (int i=0; iget_size(); i++,cur_abc++) { + (*supercell)(i)=unitcell*to_real(*cur_abc); + } +} + +void find_supercells_2D(Array *supercell, int min_volume, int max_volume, const rMatrix3d &unitcell, const Array &pointgroup) { + rVector3d rec=unitcell.get_column(0)^unitcell.get_column(1); + rVector3d rc=unitcell.get_column(2); + if (!near_zero(rec*rc-norm(rec)*norm(rc))) { + ERRORQUIT("c axis is not perpendicular to a,b plane."); + } + Array A(pointgroup.get_size()); + for (int op=0; op list_abc; + + for (int volume=min_volume; volume<=max_volume; volume++) { + Real maxa=pow((Real)volume*2./sqrt(3.),1./2.); + int imaxa=(int)ceil(maxa); + LinkedList list_a; + MultiDimIterator a(iVector3d(0,-imaxa,0),iVector3d(imaxa,imaxa,0)); + for ( ; a; a++) { + if (norm((iVector3d &)a)<=maxa+zero_tolerance) { + LinkedListIterator cur_a(list_a); + while (cur_a) { + int sym; + for (sym=0; sym cur_a(list_a); + for ( ; cur_a; cur_a++) { + iVector3d a=*cur_a; + iVector3d cxa=c^a; + int cxa2=norm2(cxa); + int minw=-cxa2/2; + int maxw=-cxa2/2+cxa2; + for (int wa=minw; wa cur_abc(list_abc); + while (cur_abc) { + int sym; + for (sym=0; symresize(list_abc.get_size()); + LinkedListIterator cur_abc(list_abc); + for (int i=0; iget_size(); i++,cur_abc++) { + (*supercell)(i)=unitcell*to_real(*cur_abc); + } +} + +void sort_supercells(Array *p_supercell, const Array &pointgroup) { + Array nb_sym_op(p_supercell->get_size()); + zero_array(&nb_sym_op); + for (int i=0; i=i; j--) { + if (nb_sym_op(j)>nb_sym_op(j-1)) { + swap(&nb_sym_op(j),&nb_sym_op(j-1)); + swap(&(*p_supercell)(j),&(*p_supercell)(j-1)); + } + } + } +} + +int find_point_op_type(rVector3d *pspecial_dir, const rMatrix3d &point_op) { + rVector3d &special_dir=*pspecial_dir; + Real rdet=det(point_op); + int det=iround(rdet); + Real rtrace=trace(point_op); + int trace=iround(rtrace); + if (fabs(rdet-(Real)det)>zero_tolerance || fabs(rtrace-(Real)trace)>zero_tolerance || + abs(trace)>3 || abs(det)>1) { + ERRORQUIT("get_point_op_type: Not a crystallographic symmetry"); + } + int sym_type; + switch (abs(trace)) { + case 3: + if (det==1) {sym_type=1;} else {sym_type=-1;} + break; + case 2: + if (det==1) {sym_type=6;} else {sym_type=-6;} + break; + case 0: + if (det==1) {sym_type=3;} else {sym_type=-3;} + break; + case 1: + if (trace==1) { + if (det==1) {sym_type=4;} else {sym_type=-2;} + } + else { + if (det==1) {sym_type=2;} else {sym_type=-4;} + } + } + if (sym_type==-2) { + for (int axis=0; axis<3; axis++) { + rVector3d v(0.,0.,0.); + v(axis)=1.; + special_dir=v-point_op*v; + if (norm(special_dir)>zero_tolerance) { + special_dir.normalize(); + break; + } + } + } + else { + int step=1,period=0; + switch (sym_type) { + case 1: + case -1: + break; + case 2: + period=2; + break; + case 4: + case -4: + step=2; + period=4; + break; + case 3: + period=3; + break; + case 6: + step=3; + period=6; + break; + case -3: + case -6: + step=2; + period=6; + break; + } + for (int axis=0; axis<3; axis++) { + special_dir=rVector3d(0.,0.,0.); + rVector3d v(0.,0.,0.); + v(axis)=1.; + for (int i=0; izero_tolerance) { + special_dir.normalize(); + break; + } + } + } + return sym_type; +} + +int number_of_point_op(int point_op_type, const Array &point_op) { + int nb=0; + rVector3d dir; + for (int op=0; op &point_op) { + PointGroupType point_group; + rVector3d dir; + switch (point_op.get_size()) { + case 1: + point_group=pt_grp_1; + break; + case 2: + if (number_of_point_op(-1,point_op)>0) { + point_group=pt_grp_1_; + } + else if (number_of_point_op(2,point_op)>0) { + point_group=pt_grp_2; + } + else { + point_group=pt_grp_m; + } + break; + case 3: + point_group=pt_grp_3; + break; + case 4: + if (number_of_point_op(4,point_op)>0) { + point_group=pt_grp_4; + } + else if (number_of_point_op(-4,point_op)>0) { + point_group=pt_grp_4_; + } + else if (number_of_point_op(2,point_op)==3) { + point_group=pt_grp_222; + } + else if (number_of_point_op(-2,point_op)==1) { + point_group=pt_grp_2om; + } + else { + point_group=pt_grp_2mm; + } + break; + case 6: + if (number_of_point_op(6,point_op)>0) { + point_group=pt_grp_6; + } + else if (number_of_point_op(-6,point_op)>0) { + point_group=pt_grp_6_; + } + else if (number_of_point_op(-1,point_op)==1) { + point_group=pt_grp_3_; + } + else if (number_of_point_op(2,point_op)>0) { + point_group=pt_grp_32; + } + else { + point_group=pt_grp_3m; + } + break; + case 8: + if (number_of_point_op(-2,point_op)==0) { + point_group=pt_grp_422; + } + else if (number_of_point_op(-2,point_op)==1) { + point_group=pt_grp_4om; + } + else if (number_of_point_op(-2,point_op)==3) { + point_group=pt_grp_mmm; + } + else if (number_of_point_op(4,point_op)>0) { + point_group=pt_grp_4mm; + } + else { + point_group=pt_grp_4_2m; + } + break; + case 12: + if (number_of_point_op(-2,point_op)==0) { + if (number_of_point_op(6,point_op)>0) { + point_group=pt_grp_622; + } + else { + point_group=pt_grp_23; + } + } + else if (number_of_point_op(6,point_op)>0) { + if (number_of_point_op(-2,point_op)==1) { + point_group=pt_grp_6om; + } + else { + point_group=pt_grp_6mm; + } + } + else { + if (number_of_point_op(-6,point_op)>0) { + point_group=pt_grp_6_m2; + } + else { + point_group=pt_grp_3_m; + } + } + break; + case 16: + point_group=pt_grp_4ommm; + break; + case 24: + if (number_of_point_op(6,point_op)>0) { + point_group=pt_grp_6ommm; + } + else if (number_of_point_op(-2,point_op)==0) { + point_group=pt_grp_432; + } + else if (number_of_point_op(-4,point_op)>0) { + point_group=pt_grp_4_3m; + } + else { + point_group=pt_grp_m3_; + } + break; + case 48: + point_group=pt_grp_m3_m; + break; + default: + ERRORQUIT("Error determining point group. Adjust tolerance."); + } + return point_group; +} + +const char *point_group_names[]={"none", + "1", + "1_", + "2", + "m", + "2om", + "222", + "2mm", + "mmm", + "4", + "4_", + "4om", + "422", + "4mm", + "4_2m", + "4ommm", + "3", + "3_", + "32", + "3m", + "3_m", + "6", + "6_", + "6om", + "622", + "6mm", + "6_m2", + "6ommm", + "23", + "m3_", + "432", + "4_3m", + "m3_m"}; + +const char *point_group_name(PointGroupType pt_grp) { + return point_group_names[pt_grp]; +} + +void find_atom_point_group(Array *patom_point_group, + const rVector3d &atom_pos, + const rMatrix3d &cell, const Array &point_op, const Array &trans) { + rMatrix3d inv_cell=!cell; + int nb_op=0; + Array op_index(point_op.get_size()); + for (int op=0; op &atom_point_group=*patom_point_group; + atom_point_group.resize(nb_op); + for (int op=0; op &point_op, const Array &trans) { + rMatrix3d id; + id.identity(); + int nb_id=0; + for (int op=0; op1); +} + +/* BAD +int contains_pure_translations(const Structure &str) { + Array point_ops(1); + Array trans(1); + point_ops(0).identity(); + trans(0)=rVector3d(0.,0.,0.); + Structure t_str; + t_str.cell=str.cell; + t_str.atom_type=str.atom_type; + for (int p=1; p=0; i--) { + int j=which_atom(str.atom_pos,str.atom_pos(i)+(rVector3d)l,isupcel); + if (str.atom_type(i)!=str.atom_type(j)) break; + } + if (i<0) return 1; + } + } + return 0; +} + +int equiv_to_lexico_successor(const Structure &str, const rMatrix3d &unitcell, const Array &point_op, const Array &trans) { + rMatrix3d isupcel=!(str.cell); + LatticePointInCellIterator l(unitcell,str.cell); + for (; l; l++) { + for (int op=0; op=0; i--) { + int j=which_atom(str.atom_pos,point_op(op)*str.atom_pos(i)+trans(op)+(rVector3d)l,isupcel); + if (str.atom_type(i)>str.atom_type(j)) return 1; + if (str.atom_type(i)!=str.atom_type(j)) break; + } + } + } + return 0; +} + +int contains_pure_translations_or_lexico_successor(const Structure &str, const rMatrix3d &unitcell) { + rMatrix3d isupcel=!(str.cell); + LatticePointInCellIterator l(unitcell,str.cell); + for (; l; l++) { + if (!near_zero(norm(l))) { + int i; + for (i=str.atom_pos.get_size()-1; i>=0; i--) { + int j=which_atom(str.atom_pos,str.atom_pos(i)+(rVector3d)l,isupcel); +#ifdef HARTFORCADE + if (str.atom_type(i)>str.atom_type(j)) return 1; +#endif + if (str.atom_type(i)!=str.atom_type(j)) break; + } + if (i<0) return 1; + } + } + return 0; +} + + +class SymmetryOp { +public: + SymmetryOp(const rMatrix3d &_point_op, const rVector3d &_trans):point_op(_point_op),trans(_trans) {} + rMatrix3d point_op; + rVector3d trans; +}; + +void generate_space_group(SpaceGroup *p_fullgroup, const SpaceGroup &generator) { + rMatrix3d invcell=!generator.cell; + LinkedList sym_list; + for (int i=0; i i(sym_list); + for (; i; i++) { + LinkedListIterator j(sym_list); + for (; j; j++) { + MultiDimIterator t(iVector3d(-2,-2,-2),iVector3d(2,2,2)); + for (; t; t++) { + // cerr << to_real(t) << endl; + SymmetryOp op(j->point_op * i->point_op,wrap_inside_cell(j->point_op * (i->trans + generator.cell*to_real(t)) + j->trans,generator.cell)); + LinkedListIterator k(sym_list); + for (; k; k++) { + // cerr << norm(op.point_op - k->point_op)/9 << " " << equivalent_mod_cell(op.trans,k->trans,invcell) << endl; + if (norm(op.point_op - k->point_op)/9trans,invcell)) break; + } + if (!k) { + sym_list << new SymmetryOp(op.point_op,op.trans); + done=0; + } + } + } + } + } + p_fullgroup->cell=generator.cell; + p_fullgroup->point_op.resize(sym_list.get_size()); + p_fullgroup->trans.resize(sym_list.get_size()); + LinkedListIterator i(sym_list); + for (int j=0; i; i++,j++) { + p_fullgroup->point_op(j)=i->point_op; + p_fullgroup->trans(j)=i->trans; + } +} + +void generate_point_group(Array *p_fullgroup, const Array &generator) { + LinkedList grpa,grpb; + grpa << generator; + rMatrix3d id; + id.identity(); + { + LinkedListIterator i(grpa); + for (; i; i++) { + if (near_zero(norm(*i-id))) break; + } + if (!i) { + grpa << new rMatrix3d(id); + } + } + while (1) { + LinkedListIterator i(grpa); + for (; i; i++) { + LinkedListIterator j(grpa); + for (; j; j++) { + rMatrix3d s=(*i)*(*j); + LinkedListIterator k(grpb); + for (; k; k++) { + if (near_zero(norm((*k)-s))) break; + } + if (!k) { + grpb << new rMatrix3d(s); + } + } + } + cerr << grpb.get_size() << endl; + if (grpa.get_size()==grpb.get_size()) break; + grpa.delete_all(); + transfer_list(&grpa,&grpb); + } + LinkedList_to_Array(p_fullgroup,grpb); + cerr << "Done." << endl; +} diff --git a/src/findsym.hh b/src/findsym.hh new file mode 100644 index 0000000..60d83b9 --- /dev/null +++ b/src/findsym.hh @@ -0,0 +1,127 @@ +#ifndef _FINDSYM_H_ +#define _FINDSYM_H_ + +#include "xtalutil.h" + +int equivalent_by_symmetry(const rVector3d &a, const rVector3d &b, + const rMatrix3d &cell, + const Array &point_op, const Array &trans); +int equivalent_by_symmetry(const Array &a, const Array &b, + const rMatrix3d &cell, + const Array &point_op, const Array &trans); +int equivalent_by_symmetry(const MultiCluster &a, const MultiCluster &b, + const rMatrix3d &cell, + const Array &point_op, const Array &trans); + +void calc_concentration(int *pmin_type, int *pmax_type, Array *pconc, const Array &atom_type); + +// assumes that the structure with smaller cell is given with the smallest; +// possible cell; +int equivalent_by_symmetry(const Structure &a, const Structure &b, + const rMatrix3d &cell, + const Array &point_op, const Array &trans); + +class SpaceGroup { + public: + rMatrix3d cell; + Array point_op; + Array trans; + SpaceGroup(void): cell(), point_op(), trans() {} + SpaceGroup(const SpaceGroup &a): cell(a.cell), point_op(a.point_op), trans(a.trans) {} + SpaceGroup(const rMatrix3d &_cell, + const Array &_point_op, + const Array &_trans): + cell(_cell), point_op(_point_op), trans(_trans) {} + int operator() (const rVector3d &a, const rVector3d &b) const { + return equivalent_by_symmetry(a,b,cell,point_op,trans); + } + int operator() (const Array &a, const Array &b) const { + return equivalent_by_symmetry(a,b,cell,point_op,trans); + } + int operator() (const MultiCluster &a, const MultiCluster &b) const { + return equivalent_by_symmetry(a,b,cell,point_op,trans); + } + int operator() (const Structure &a, const Structure &b) const { + return equivalent_by_symmetry(a,b,cell,point_op,trans); + } +}; + +void find_pointgroup(Array *point_op, const rMatrix3d &cell); + +void pointgroup_from_spacegroup(Array *pointgroup, const Array &point_op); + +void pointgroup_from_spacegroup(const Structure &str, Array *pointgroup, const rMatrix3d &cell, const Array &point_op, const Array &trans); + +void subfactorgroup_from_supercell_and_spacegroup(Array *ppoint_op, Array *ptrans, const rMatrix3d &supercell, const Array &point_op, const Array &trans); + +void find_primitive_unit_cell(rMatrix3d *pcell, const Structure &lat); + +void find_spacegroup(Array *point_op, Array *trans, + const rMatrix3d &cell, + const Array &atom_pos, const Array &atom_type); + +rMatrix3d find_almost_reduced_cell(const rMatrix3d &cell); + +void find_all_equivalent_cell(Array *psupercell, const rMatrix3d &cell, Real radius); + +void find_supercells(Array *supercell, int min_volume, int max_volume, const rMatrix3d &unitcell, const Array &pointgroup); + +void find_supercells_2D(Array *supercell, int min_volume, int max_volume, const rMatrix3d &unitcell, const Array &pointgroup); + +void sort_supercells(Array *p_supercell, const Array &pointgroup); + +int find_point_op_type(rVector3d *pspecial_dir, const rMatrix3d &point_op); + +void find_atom_point_group(Array *patom_point_group, + const rVector3d &atom_pos, + const rMatrix3d &cell, const Array &point_op, const Array &trans); + +enum PointGroupType { + pt_grp_none, + pt_grp_1, + pt_grp_1_, + pt_grp_2, + pt_grp_m, + pt_grp_2om, + pt_grp_222, + pt_grp_2mm, + pt_grp_mmm, + pt_grp_4, + pt_grp_4_, + pt_grp_4om, + pt_grp_422, + pt_grp_4mm, + pt_grp_4_2m, + pt_grp_4ommm, + pt_grp_3, + pt_grp_3_, + pt_grp_32, + pt_grp_3m, + pt_grp_3_m, + pt_grp_6, + pt_grp_6_, + pt_grp_6om, + pt_grp_622, + pt_grp_6mm, + pt_grp_6_m2, + pt_grp_6ommm, + pt_grp_23, + pt_grp_m3_, + pt_grp_432, + pt_grp_4_3m, + pt_grp_m3_m +}; + +PointGroupType find_point_group_type(const Array &point_op); +const char *point_group_name(PointGroupType pt_grp); + +int contains_pure_translations(const Array &point_op, const Array &trans); +//int contains_pure_translations(const Structure &str); +int contains_pure_translations(const Structure &str, const rMatrix3d &unitcell); +int contains_pure_translations_or_lexico_successor(const Structure &str, const rMatrix3d &unitcell); +int equiv_to_lexico_successor(const Structure &str, const rMatrix3d &unitcell, const Array &point_op, const Array &trans); + +void generate_space_group(SpaceGroup *p_fullgroup, const SpaceGroup &generator); +void generate_point_group(Array *p_fullgroup, const Array &generator); + +#endif diff --git a/src/fitfc.c++ b/src/fitfc.c++ new file mode 100644 index 0000000..edeab3b --- /dev/null +++ b/src/fitfc.c++ @@ -0,0 +1,1435 @@ +#include +#include +#include "phonlib.h" +#include "getvalue.h" +#include "parse.h" +#include "version.h" +#include "lattype.h" +#include "arraylist.h" + +template +class NormEpsilon { + Real epsilon; + public: + NormEpsilon(Real _epsilon) {epsilon=_epsilon;} + int operator () (const T& a, const T& b) const { + return (norm(a-b) +class NormArrayEpsilon { + Real epsilon; + public: + NormArrayEpsilon(Real _epsilon) {epsilon=_epsilon;} + int operator () (const Array& a, const Array& b) const { + Real max=0.; + for (int i=0; i +class NormPairEpsilon { + Real epsilon; + public: + NormPairEpsilon(Real _epsilon) {epsilon=_epsilon;} + int operator () (const Array& a, const Array& b) const { + if (norm(a(0)-b(0)) *pfc_list, const Array &pair, const SpaceGroup &spacegroup) { + rMatrix3d inv_cell=!spacegroup.cell; + Array > basis; + int nb=0; + for (int ifc=0; ifc<3; ifc++) { + for (int jfc=0; jfc<3; jfc++) { + rMatrix3d fc,acc; + fc.zero(); + fc(ifc,jfc)=1.; + acc.zero(); + for (int op=0; op< spacegroup.point_op.get_size(); op++) { + Array tpair; + apply_symmetry(&tpair,spacegroup.point_op(op),spacegroup.trans(op),pair); + if (equivalent_mod_cell(tpair,pair,inv_cell)) { + rMatrix3d tfc=spacegroup.point_op(op)*fc*(~spacegroup.point_op(op)); + if ((tpair(1)-tpair(0))*(pair(1)-pair(0))<0) { + acc=acc+(~tfc); + } + else { + acc=acc+(tfc); + } + } + } + Real l=max_norm(acc); + if (l>zero_tolerance) { + acc=acc/l; + Array new_comp(9); + int k=0; + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + new_comp(k)=acc(i,j); + k++; + } + } + if (build_basis(&basis,&nb,new_comp)) { + (*pfc_list) << new rMatrix3d(acc); + } + } + } + } +} + +class SpringGeneral { + public: + Array pair; + LinkedList fc_list; + public: + SpringGeneral(void): pair(2), fc_list() {}; +}; + +class EquivalentSpringGeneral { + const SpaceGroup &spacegroup; + public: + EquivalentSpringGeneral(const SpaceGroup &_spacegroup): spacegroup(_spacegroup) {} + int operator () (const SpringGeneral& a, const SpringGeneral& b) const { + return spacegroup(a.pair,b.pair); + } +}; + +void find_distinct_forcek(LinkedList *pfc_list, Real radius, const Structure &str_ideal, const Structure &str, const SpaceGroup &spacegroup) { + EquivalentSpringGeneral equiv(spacegroup); + rMatrix3d inv_cell_ideal=!str_ideal.cell; + AtomPairIterator pair(str_ideal.cell,str_ideal.atom_pos); + while (get_length_quick(pair)<=radius+zero_tolerance) { + Array tmp=pair; + int whichatom[2]; + whichatom[0]=which_atom(str_ideal.atom_pos, pair(0), inv_cell_ideal); + whichatom[1]=which_atom(str_ideal.atom_pos, pair(1), inv_cell_ideal); + rVector3d offset=str.cell*inv_cell_ideal*((pair(1)-pair(0))-(str_ideal.atom_pos(whichatom[1])-str_ideal.atom_pos(whichatom[0]))); + SpringGeneral spr; + spr.pair(0)=str.atom_pos(whichatom[0]); + spr.pair(1)=str.atom_pos(whichatom[1])+offset; + add_unique(pfc_list,spr,equiv); + pair++; + } + LinkedListIterator s(*pfc_list); + for ( ; s; s++) { + // cerr << (s->pair(0))/3.57635 << " " << ((s->pair)(1)-(s->pair)(0))/3.57635 << endl; + find_allowed_forcek(&(s->fc_list),s->pair,spacegroup); + } +} + +void calc_force_vector(Array *forces, const Structure &unpert_str, const Structure &pert_str, const SpringGeneral &spring, int which_fc, SpaceGroup spacegroup) { + forces->resize(unpert_str.atom_pos.get_size()*3); + zero_array(forces); + LinkedListIterator fi(spring.fc_list); + for (int i=0; i identical(zero_tolerance); + rMatrix3d fc=*fi; + rMatrix3d inv_cell=!spacegroup.cell; + rMatrix3d inv_bigcell=!unpert_str.cell; + // cerr << "begin" << endl; + for (int at=0; at > pair_done; + rVector3d d=pert_str.atom_pos(at)-unpert_str.atom_pos(at); + if (norm(d)>zero_tolerance) { + // cerr << pert_str.atom_pos(at) << unpert_str.atom_pos(at) << endl; + for (int op=0; op tpair; + apply_symmetry(&tpair,spacegroup.point_op(op),spacegroup.trans(op),spring.pair); + for (int e=0; e<2; e++) { + int ontop=equivalent_mod_cell(unpert_str.atom_pos(at),tpair(0),inv_cell); + if (ontop) { + tpair(1)+=unpert_str.atom_pos(at)-tpair(0); + tpair(0)=unpert_str.atom_pos(at); + if (add_unique(&pair_done,tpair,identical)) { + // cerr << tpair(0)/5.1631 << " " << (tpair(1)-tpair(0))/5.1631 << " " << which_fc << endl; + force=(spacegroup.point_op(op))*((~fc)*((~spacegroup.point_op(op))*d)); + // here; + // cerr << spacegroup.point_op(op)*(fc*(~spacegroup.point_op(op))) << endl; + add_rVector3d_to_ArrayReal(forces,which_atom(unpert_str.atom_pos, tpair(0), inv_bigcell),-force); + add_rVector3d_to_ArrayReal(forces,which_atom(unpert_str.atom_pos, tpair(1), inv_bigcell),force); + } + } + fc=~fc; + swap(&(tpair(0)),&(tpair(1))); + } + } + } + } +} + +Real calc_diff_energy(const Structure &unpert_str, const Structure &pert_str, const Array &force3) { + Real sum=0.; + for (int i=0; i > *peqn_mat, const Structure &unpert_str, const Structure &pert_str, const LinkedList &spring_list, const SpaceGroup &spacegroup) { + int nbcol=0; + LinkedListIterator i_s(spring_list); + for (;i_s; i_s++) { + nbcol+=i_s->fc_list.get_size(); + } + int nbrow=pert_str.atom_pos.get_size()*3; + resize(peqn_mat,nbrow,nbcol); + int c=0; + i_s.init(spring_list); + for (;i_s; i_s++) { + for (int ifc=0; ifcfc_list.get_size(); ifc++) { + Array force; + calc_force_vector(&force, unpert_str,pert_str,*i_s,ifc,spacegroup); + for (int i=0; i &spring_data, const Array &beta, const Structure &str, const Array &label, const rMatrix3d &axes) { + LinkedListIterator i_sg(spring_data); + int c=0; + for (; i_sg; i_sg++) { + rMatrix3d fc; + fc.zero(); + LinkedListIterator i_m(i_sg->fc_list); + int bc=c; + for ( ; i_m; i_m++, c++) { + fc=fc+(*i_m)*beta(c); + } + file << "svsl "; + file << label(str.atom_type(which_atom(str.atom_pos,i_sg->pair(0),!str.cell))) << " "; + file << label(str.atom_type(which_atom(str.atom_pos,i_sg->pair(1),!str.cell))) << " "; + rVector3d u=i_sg->pair(1)-i_sg->pair(0); + file << norm(u) << " ";; + u.normalize(); + file << u*(fc*u) << " "; + rVector3d a=find_perpendicular(u); + rVector3d b=a^u; + file << (a*(fc*a)+b*(fc*b))/2. << endl; + file << (!axes)*(i_sg->pair(0)) << " " << (!axes)*(i_sg->pair(1)-i_sg->pair(0)) << endl << endl; + file << i_sg->fc_list.get_size() << endl; + c=bc; + for ( i_m.init(i_sg->fc_list); i_m; i_m++,c++) { + file << beta(c) << endl << (*i_m) << endl; + } + file << fc << endl; + file << "---------------" << endl << endl; + } +} + +void make_forcek(LinkedList *p_pair, const Structure &str_relax, const LinkedList &spring_data, const Array &beta, const SpaceGroup &spacegroup, int simplify=0) { + rMatrix3d inv_cell=!str_relax.cell; + // NormPairEpsilon identical(zero_tolerance); + LinkedList > pair_done; + LinkedListIterator i_sg(spring_data); + int c=0; + SpaceGroup idmodcell; + idmodcell.cell=str_relax.cell; + idmodcell.point_op.resize(1); + idmodcell.point_op(0).identity(); + idmodcell.trans.resize(1); + idmodcell.trans(0)=rVector3d(0.,0.,0.); + // cerr << "mkforcek" << endl; + for (; i_sg; i_sg++) { + rMatrix3d fc; + fc.zero(); + LinkedListIterator i_m(i_sg->fc_list); + for ( ; i_m; i_m++, c++) { + fc=fc+(*i_m)*beta(c); + } + // cerr << i_sg->pair(0)/3.57636 << " " << (i_sg->pair(1)-i_sg->pair(0))/3.57636 << endl; + // cerr << fc << endl; + for (int op=0; op tpair; + apply_symmetry(&tpair,spacegroup.point_op(op),spacegroup.trans(op),i_sg->pair); + if (add_unique(&pair_done,tpair,idmodcell)) { + PairSpring *ps=new PairSpring; + ps->whichatom[0]=which_atom(str_relax.atom_pos, tpair(0), inv_cell); + ps->whichatom[1]=which_atom(str_relax.atom_pos, tpair(1), inv_cell); + ps->dr=tpair(1)-tpair(0); + rVector3d ideal_offset=(tpair(1)-tpair(0))-(str_relax.atom_pos(ps->whichatom[1])-str_relax.atom_pos(ps->whichatom[0])); + ps->cell_shift=inv_cell*ideal_offset; + ps->forcek=spacegroup.point_op(op)*(fc*(~spacegroup.point_op(op))); + // test; + if (simplify!=0) { + rVector3d u[3]; + u[0]=ps->dr/norm(ps->dr); + u[1]=find_perpendicular(u[0]); + u[2]=u[0]^u[1]; + rMatrix3d T; + for (int ii=0; ii<3; ii++) { + for (int jj=0; jj<3; jj++) { + T(ii,jj)=u[jj](ii); + } + } + rMatrix3d Tf=(~T)*ps->forcek*T; + if (simplify==1) { + for (int ii=0; ii<3; ii++) { + for (int jj=0; jj<3; jj++) { + if (ii!=jj) { + Tf(ii,jj)=0; + } + } + } + Tf(1,1)=(Tf(1,1)+Tf(2,2))/2.; + Tf(2,2)=Tf(1,1); + } + else if (simplify==2) { + for (int ii=0; ii<3; ii++) { + for (int jj=0; jjforcek=T*Tf*(~T); + } + (*p_pair) << ps; + } + } + } + // cerr << p_pair->get_size() << endl; +} + +void read_mass_file(Array *masses, istream &file, const Array &label) { + masses->resize(label.get_size()); + for (int i=0; iget_size(); i++) {(*masses)(i)=-1.;} + while (skip_delim(file)) { + AutoString curlab; + get_string(&curlab,file); + Real m; + file >> m; + int i=index_in_array(label,curlab); + if (i!=-1) {(*masses)(i)=m;} + } + for (int i=0; iget_size(); i++) { + if ((*masses)(i)==-1.) { + cerr << "Mass of " << label(i) << " is not known"; + ERRORQUIT("Aborting"); + } + } +} + +void read_mass_file(Array *pmasses, const char *massfilename, const Structure &rel_str, const Array &label) { + pmasses->resize(rel_str.atom_type.get_size()); + { + ifstream massfile; + Array atomic_masses; + if (strlen(massfilename)>0) { + massfile.open(massfilename); + if (!massfile) { + ERRORQUIT("Unable to open atomic masses file"); + } + } + else { + AutoString configfilename(getenv("HOME")); + configfilename+="/.atat.rc"; + ifstream configfile(configfilename); + if (!configfile) { + ERRORQUIT("$HOME/.atat.rc was not found."); + } + while (configfile.get()!='=') {}; + skip_delim(configfile," \t"); + AutoString massfilename2; + get_string(&massfilename2,configfile); + massfilename2+="/data/masses.in"; + massfile.open(massfilename2); + if (!massfile) { + ERRORQUIT("Unable to open atomic masses file"); + } + } + read_mass_file(&atomic_masses,massfile,label); + for (int at=0; at *ppow, const Array &x, int p) { + ppow->resize(x.get_size(),p+1); + for (int i=0; i *pbeta, const Array &x, const Array &y, int *pbest_p, int maxp) { + Real best_cv=MAXFLOAT; + if (*pbest_p==-1) { + for (int p=0; p px; + make_pow_mat(&px,x,p); + Real cv=calc_cv(px,y); + if (cv px; + make_pow_mat(&px,x,*pbest_p); + calc_ols(pbeta,px,y); +} + +void fit_eos(Array *pb, const Array &s, const Array &e, int maxp) { + if (s.get_size()!=e.get_size()) { + ERRORQUIT("Error in fit_eos."); + } + if (s.get_size()==0) { + pb->resize(1); + (*pb)(0)=0.; + } + else if (s.get_size()==1) { + pb->resize(1); + (*pb)(0)=e(0); + } + else if (s.get_size()==2) { + pb->resize(3); + (*pb)(0)=MIN(e(0),e(1)); + (*pb)(1)=0.; + (*pb)(2)=fabs(e(1)-e(0))/sqr(fabs(s(1)-s(0))); + } + else { + int best_p=-1; + fit_best_poly(pb,s,e,&best_p,maxp); + if (best_p<2) {best_p=2;} + fit_best_poly(pb,s,e,&best_p,maxp); + } +} + +Real find_local_minimum_poly(Real *ppos, const Array &b, Real xmin, Real xmax, int n) { + Real dx=(xmax-xmin)/(Real)(n-1); + Real miny=MAXFLOAT; + for (Real x=xmin; x<=xmax; x+=dx) { + Real s=0; + for (int i=0; i *pc, const Array &a, const Array &b) { + pc->resize(MAX(a.get_size(), b.get_size())); + for (int i=0; iget_size(); i++) { + (*pc)(i)=(i &a, Real x) { + Real y=0.; + for (int i=0; imaxa) {return 0;} + if (near_zero(a*k)) break; + latvect++; + } + Real maxb=sqrt(sqr(maxvol/norm(a)/cspc)+sqr(norm(a)/2.))+zero_tolerance; + while (1) { + latvect++; + b=(rVector3d)latvect; + if (norm(b)>maxb) {return 0;} + if (!near_zero(norm(a^b))) { + if (near_zero(b*k)) break; + } + } + Real maxc=sqrt(sqr(cspc)+sqr(norm(a)/2.+norm(b)/2.))+zero_tolerance; + latvect.init(cell); + while (1) { + c=(rVector3d)latvect; + if (norm(c)>maxc) {return 0;} + if (near_zero(c*k-1.)) break; + latvect++; + } + psupercell->set_column(0,a); + psupercell->set_column(1,b); + if ((a^b)*c>0) { + psupercell->set_column(2,c); + } + else { + psupercell->set_column(2,-c); + } + *psupercell=find_symmetric_cell(*psupercell); + return 1; +} + +int generate_mode(Array *pmodestr, const Structure &str, const rVector3d &k, const Array &eigvect, Real maxvol, Real disp_mag) { + rMatrix3d supercell; + if (!find_mode_supercell(&supercell, str.cell,k,maxvol)) { + pmodestr->resize(0); + return 0; + } + pmodestr->resize(2); + find_all_atom_in_supercell(&((*pmodestr)(0).atom_pos), &((*pmodestr)(0).atom_type),str.atom_pos,str.atom_type,str.cell,supercell); + (*pmodestr)(0).cell=supercell; + Array > disp(2); + disp(0).resize((*pmodestr)(0).atom_pos.get_size()*3); + disp(1).resize((*pmodestr)(0).atom_pos.get_size()*3); + rMatrix3d invcell=!(str.cell); + for (int at=0; at<(*pmodestr)(0).atom_pos.get_size(); at++) { + Real phase=2.*M_PI*k*((*pmodestr)(0).atom_pos(at)); + int atincell=which_atom(str.atom_pos,(*pmodestr)(0).atom_pos(at),invcell); + for (int i=0; i<3; i++) { + int j=3*atincell+i; + Complex d=eigvect(j)*Complex(cos(phase),sin(phase)); + disp(0)(j)=real(d); + disp(1)(j)=imag(d); + } + } + (*pmodestr)(1)=(*pmodestr)(0); + for (int c=0; c<2; c++) { + Real m=MAX(max(disp(c)),-min(disp(c))); + if (m>0) { + product(&disp(c),disp(c),disp_mag/m); + } + for (int at=0; at<(*pmodestr)(c).atom_pos.get_size(); at++) { + for (int i=0; i<3; i++) { + (*pmodestr)(c).atom_pos(at)(i)+=disp(c)(3*at+i); + } + } + } + return 1; +} + +extern char *helpstring; + +int main(int argc, char *argv[]) { + char *stridealfilename="str.out"; + char *strrelaxfilename="str_relax.out"; + Real enclosed_radius=0.; + Real enclosed_radius_1nn=0.; + Real radius=0.; + Real radius_1nn=0.; + Real displ_mag=0.2; + Real max_strain=0.01; + int do_volume_expansion=0; + int norerelax=0; + int redun=0; + int noredun=0; + int nb_vol=2; + int donullpert=0; + int fitfc=0; + char *strainfilename=""; + char *massfilename=""; + Real T0=0.; + Real T1=2000.; + Real dT=100.; + Real kppra=1000; + iVector3d kpts(0,0,0); + rVector3d kshift(0.5,0.5,0.5); + int kshift0=0; + char *kdispfile=""; + Real hplanck=6.6260755e-34/1.60217733e-19; // h in eV s (not h bar); + Real kboltzman=1.380658e-23/1.60217733e-19; // k_B in eV/K; + Real convfk=1.60217733e-19*1e20; // converts eV/A^2 into J/m^2; + Real mass_unit=1.6605402e-27; // convert a.u. mass into kg; + Real press_ang3_to_eV=1e9*1e-30/1.60217733e-19; // convert GPa*Ang^3 to eV; + Real robust_len=0.; + Real s_robust_len=0.; + Real perfewer=1.; + Real pressure=0; + int freepow=-1; + int peratom=0; + int projdos=0; + int subE0=0; + int writematrices=0; + int stopafternum=0; + int flagfirst=0; + int flagneg=0; + int forceneg=0; + int find_unstable=0; + int gen_unstable=0; + int gen_negun=0; + int max_unstable_vol=64; + int simplify_fc=0; + int printenergy=0; + int dohelp=0; + int sigdig=5; + int optbin=1000; + + if (file_exists("../Trange.in")) { + ifstream tfile("../Trange.in"); + T0=0; + int nT=0; + tfile >> T1 >> nT; + dT=(T1-T0)/MAX(1,nT-1); + } + + AskStruct options[]={ + {"","FIT Force Constants " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-f","Fit force constants (otherwise, generate pertubations)",BOOLVAL,&fitfc}, + {"-si","Input file defining the ideal structure (default: str.out)",STRINGVAL,&stridealfilename}, + {"-sr","Input file defining the relaxed structure (default: str_relax.out)",STRINGVAL,&strrelaxfilename}, + {"-er","Minimum distance between displaced atoms",REALVAL,&enclosed_radius}, + {"-ernn","Minimum distance between displaced atoms in multiple of nearest neighbor distance",REALVAL,&enclosed_radius_1nn}, + {"-fr","Force constant range",REALVAL,&radius}, + {"-frnn","Force constant range (in multiple of nearest neighbor distance)",REALVAL,&radius_1nn}, + {"-dr","Displacement of the perturbed atom (default: 0.2)",REALVAL,&displ_mag}, + {"-ms","Strain of the maximum volume sampled (default: 0.01)",REALVAL,&max_strain}, + {"-dv","Specified strain above is volumetric",BOOLVAL,&do_volume_expansion}, + {"-ns","Number of volume sample (default: 2)",INTVAL,&nb_vol}, + {"-iu","Include Unperturbed structure in generated structures",BOOLVAL,&donullpert}, + {"-nrr","Do not rerelax structures at each new volume",BOOLVAL,&norerelax}, + {"-cs","Check for Singular matrix in fit",BOOLVAL,&noredun}, + {"-ncs","No check for singular matrix in fit (this is the default, option included for backward compatibility)",BOOLVAL,&redun}, + {"-wm","Write fitting Matrices",BOOLVAL,&writematrices}, + {"-sf","Extra strain file",STRINGVAL,&strainfilename}, + {"-m","Input file defining the atomic masses (default: ${atatdir}/data/masses.in)",STRINGVAL,&massfilename}, + {"-T0","Minimum temperature (default: 0) ",REALVAL,&T0}, + {"-T1","Maximum temperature (default: 2000)",REALVAL,&T1}, + {"-dT","Temperature step (default: 100)",REALVAL,&dT}, + {"-P","Pressure (in GPa, default: 0)",REALVAL,&pressure}, + {"-kp","Number of k-points per reciprocal atom (default: 1000)",REALVAL,&kppra}, + {"-kx","k-point mesh (along 1st recip lat. vect.) if <>0 then overrides -kp=...",INTVAL,&kpts(0)}, + {"-ky","k-point mesh (along 2nd recip lat. vect.)",INTVAL,&kpts(1)}, + {"-kz","k-point mesh (along 3rd recip lat. vect.)",INTVAL,&kpts(2)}, + {"-fp","Power of polynomial to fit free energy",INTVAL,&freepow}, + {"-s0","Use a gamma-centered k-point mesh (default shift: 1/2 1/2 1/2)",BOOLVAL,&kshift0}, + {"-sx","k-point shift (along 1st recip lat. vect.)",REALVAL,&kshift(0)}, + {"-sy","k-point shift (along 2nd recip lat. vect.)",REALVAL,&kshift(1)}, + {"-sz","k-point shift (along 3rd recip lat. vect.)",REALVAL,&kshift(2)}, + {"-df","Phonon dispersion curve calculation input file.",STRINGVAL,&kdispfile}, + {"-hp","Planck's constant (default in (eV s))",REALVAL,&hplanck}, + {"-kb","Boltzman's constant (default in eV/K)",REALVAL,&kboltzman}, + {"-cfk","Conversion factor for force constants into energy/dist^2 (default: converts eV/A^2 into J/m^2)",REALVAL,&convfk}, + {"-mu","Mass units (default: converts a.u. mass into kg)",REALVAL,&mass_unit}, + {"-rl","Robust Length algorithm parameter for soft modes (beta)",REALVAL,&robust_len}, + {"-rls","Quadratic strain-dependence of robust length for positive strain (beta)",REALVAL,&s_robust_len}, + {"-cP","Conversion factor from pressure*volume into eV",REALVAL,&press_ang3_to_eV}, + {"-pa","Output free energy per atom instead of per unit cell",BOOLVAL,&peratom}, + {"-pe","Print energy in 3rd column of fitfc.out",BOOLVAL,&printenergy}, + {"-sc","Correction factor if spectator ion are present (default: 1)",REALVAL,&perfewer}, + {"-me0","Subtract energy at 0K",BOOLVAL,&subE0}, + {"-no","Print number of atom in supercell only",BOOLVAL,&stopafternum}, + {"-w1","Flag first perturbation wait1 instead of wait file",BOOLVAL,&flagfirst}, + {"-w2","Flag negative perturbation directions with wait2 instead of wait file",BOOLVAL,&flagneg}, + {"-fn","Force continuation of calculations even if unstable",BOOLVAL,&forceneg}, + {"-fu","Find unstable modes",BOOLVAL,&find_unstable}, + {"-gu","Generate unstable modes number n",INTVAL,&gen_unstable}, + {"-gn","Also Generate Negative displacements for mode specified by -gu=...",BOOLVAL,&gen_negun}, + {"-mau","Maximum number of atom per supercell for unstable mode generation",INTVAL,&max_unstable_vol}, + {"-sfc","Simplify force constants: 1=streching+bending, 2=symmetric",INTVAL,&simplify_fc}, + {"-apd","Atom-Projected DOS",BOOLVAL,&projdos}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-z","Tolerance for finding symmetry operations (default: 1e-3)",REALVAL,&zero_tolerance}, + {"-h","Display more help",BOOLVAL,&dohelp} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + cerr.setf(ios::fixed); + cerr.precision(5); + + if (fitfc && file_exists("../Trange.in")) { + cerr << "Read Trange.in file." << endl; + } + + if ((enclosed_radius==0 && enclosed_radius_1nn==0) && !fitfc) { + ERRORQUIT("You need to specify at least the -er (or -ernn) parameter to generate perturbations or the -f option to fit the force constants."); + } + if (radius==0 && radius_1nn==0 && fitfc) { + ERRORQUIT("You need to specify at least the -fr (or -frnn) parameter with the -f option."); + } + int nT=(int)((T1-T0)/dT)+1; + + if (kshift0) { + kshift=rVector3d(0.,0.,0.); + } + + rMatrix3d extrastrain; + extrastrain.zero(); + if (strlen(strainfilename)>0) { + ifstream strainfile(strainfilename); + strainfile >> extrastrain; + } + Structure str; + Array atom_label; + rMatrix3d axes; + Real r1nn=0.; + { + Array site_type_list; + ifstream file(stridealfilename); + if (!file) ERRORQUIT("Unable to open ideal structure file."); + parse_lattice_file(&str.cell, &str.atom_pos, &str.atom_type, &site_type_list, &atom_label, file, &axes); + if (fabs(det(str.cell))0 || radius_1nn>0) { + r1nn=find_1nn_radius(str); + } + if (enclosed_radius_1nn>0) { + enclosed_radius=enclosed_radius_1nn*r1nn; + } + } + + Structure str_relax; + rMatrix3d axes_relax; + { + ifstream file(strrelaxfilename); + if (!file) ERRORQUIT("Unable to open relaxed structure file."); + parse_structure_file(&(str_relax.cell), &(str_relax.atom_pos), &(str_relax.atom_type), atom_label, file, &axes_relax); + if (fabs(det(str_relax.cell)) /dev/null | sed 's+/str_relax.out++g' > vollist.out"); + { + cerr << "Writing perturbations..." << endl; + ifstream volfile("vollist.out"); + int atleastone=0; + while (skip_delim(volfile)) { + atleastone=1; + AutoString dirname; + get_string(&dirname,volfile); + chdir_robust(dirname); + cerr << dirname << endl; + Structure s_str_relax; + ifstream file("str_relax.out"); + rMatrix3d rel_axes; + parse_structure_file(&(s_str_relax.cell), &(s_str_relax.atom_pos), &(s_str_relax.atom_type), atom_label, file, &rel_axes); + wrap_inside_cell(&s_str_relax.atom_pos,s_str_relax.atom_pos,s_str_relax.cell); + reorder_atoms(&s_str_relax,str_relax); + SpaceGroup spacegroup; + spacegroup.cell=s_str_relax.cell; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,s_str_relax.cell,s_str_relax.atom_pos,s_str_relax.atom_type); + Array pert_atom; + Array pert_direction; + Array do_minus; + find_pertubations(&pert_atom, &pert_direction, &do_minus,s_str_relax,spacegroup); + int firstpert=1; + for (int p=0; p=maxm; m-=2) { + ostrstream pertname; + if (p masses; + read_mass_file(&masses,massfilename,str_relax,atom_label); + + LinkedList s_elist; + LinkedList s_flist; + LinkedList energy_list; + LinkedList > fvib_list; + cerr << "Reading..." << endl; + system("ls vol_*/str_relax.out 2> /dev/null | sed 's+/str_relax.out++g' > vollist.out"); + { + ifstream volfile("vollist.out"); + while (skip_delim(volfile)) { + AutoString volname; + get_string(&volname,volfile); + cerr << volname << endl; + chdir_robust(volname); + ofstream logfile("fitfc.log"); + // logfile.setf(ios::fixed | ios::showpos); + logfile.setf(ios::fixed); + logfile.precision(sigdig); + Structure s_str_relax; + ifstream file("str_relax.out"); + rMatrix3d rel_axes; + parse_structure_file(&(s_str_relax.cell), &(s_str_relax.atom_pos), &(s_str_relax.atom_type), atom_label, file, &rel_axes); + wrap_inside_cell(&s_str_relax.atom_pos,s_str_relax.atom_pos,s_str_relax.cell); + reorder_atoms(&s_str_relax,str_relax); + + Real strain=pow(det(s_str_relax.cell)/det(str_relax.cell),1./3.)-1.; + if (file_exists("energy")) { + s_elist << new Real(strain); + ifstream energyfile("energy"); + Real e=MAXFLOAT; + energyfile >> e; + if (e==MAXFLOAT) {ERRORQUIT("Unable to read energy file.");} + e=e/(Real)(str.atom_pos.get_size())*(Real)(peratom ? 1:str_relax.atom_type.get_size())*perfewer; + energy_list << new Real(e); + } + SpaceGroup spacegroup; + spacegroup.cell=s_str_relax.cell; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,s_str_relax.cell,s_str_relax.atom_pos,s_str_relax.atom_type); + LinkedList fc_list; + if (radius_1nn>0) { + radius=radius_1nn*r1nn; + } + find_distinct_forcek(&fc_list,radius,str,s_str_relax,spacegroup); + + LinkedList pert_str_list; + LinkedList unpert_str_list; + LinkedList > forcevector_list; + int nb_row=0; + system("ls p*/force.out 2> /dev/null | sed 's+/force.out++g' > pertlist.out"); + ifstream pertfile("pertlist.out"); + while (skip_delim(pertfile)) { + AutoString dirname; + get_string(&dirname,pertfile); + cerr << " " << dirname << endl; + chdir_robust(dirname); + Structure *punpert_str=new Structure; + { + ifstream file("str_unpert.out"); + if (!file) { + cerr << "Unable to open str_unpert.out in directory " << volname << "/" << dirname << endl; + ERRORQUIT("Aborting"); + } + parse_structure_file(&(punpert_str->cell),&(punpert_str->atom_pos),&(punpert_str->atom_type),atom_label,file); + if (punpert_str->atom_pos.get_size()==0) {ERRORQUIT("Unable to read str_unpert.out");} + unpert_str_list << punpert_str; + } + Array copyfrom; + Array cellshift; + Structure *ppert_str=new Structure; + { + ifstream file("str_relax.out"); + if (!file) { + cerr << "Unable to open str_relax.out in directory " << volname << "/" << dirname << endl; + ERRORQUIT("Aborting"); + } + parse_structure_file(&(ppert_str->cell),&(ppert_str->atom_pos),&(ppert_str->atom_type),atom_label,file); + if (ppert_str->atom_pos.get_size()==0) {ERRORQUIT("Unable to read str_relax.out");} + reorder_atoms(ppert_str,*punpert_str,©from,&cellshift); + // write_structure(*ppert_str,atom_label, axes, cerr, 0); + pert_str_list << ppert_str; + } + { + ifstream forcefile("force.out"); + if (!forcefile) { + cerr << "Unable to open force.out in directory " << volname << "/" << dirname << endl; + ERRORQUIT("Aborting"); + } + Array *pforce=new Array; + read_force_vector(pforce,forcefile,copyfrom); + forcevector_list << pforce; + nb_row+=pforce->get_size(); + Real dE=calc_diff_energy(*punpert_str,*ppert_str,*pforce); + if (dE<0) { + cerr << "Warning: " << dirname << " is an unstable mode." << endl; + } + logfile << dirname << " dE= " << dE << endl; + } + chdir_robust(".."); + } + unlink("pertlist.out"); + if (nb_row>0) { + s_flist << new Real(strain); + int nb_col=0; + LinkedListIterator i_s(fc_list); + for (;i_s; i_s++) { + nb_col+=i_s->fc_list.get_size(); + } + + Array2d big_eqnmat(nb_row,nb_col); + Array big_force(nb_row); + LinkedListIterator i_pert_str(pert_str_list); + LinkedListIterator i_unpert_str(unpert_str_list); + LinkedListIterator > i_forcevector(forcevector_list); + cerr << "Generating Fitting matrices" << endl; + for (int r=0; i_pert_str; i_pert_str++, i_unpert_str++, i_forcevector++) { + cerr << " " << (r+1) << "/" << nb_row << endl; + Array > eqn; + calc_equation_matrix(&eqn,*i_unpert_str,*i_pert_str,fc_list,spacegroup); + for (int i=0; iget_size(); i++) { + big_force(r)=(*i_forcevector)(i); + for (int j=0; j beta; + Array w; + cerr << "Performing least square fit..." << endl; + cerr << "Problem size= " << nb_row << " x " << nb_col << endl; + calc_ols(&beta,big_eqnmat,big_force,w,noredun); + cerr << "Done" << endl; + + Array force_hat; + product(&force_hat,big_eqnmat,beta); + + logfile << "actual force predicted force difference" << endl; + for (int i=0; i pairspring; + make_forcek(&pairspring,s_str_relax,fc_list,beta,spacegroup,simplify_fc); + cerr << "Done" << endl; + + cerr << "Performing normal modes calculations" << endl; + if (strlen(kdispfile)>0) { + chdir_robust(".."); + ifstream infile(kdispfile); + if (!infile) { + ERRORQUIT("Unable to open dispersion curve calculation input file."); + } + chdir_robust(volname); + // rMatrix3d recip=(!(~((s_str_relax.cell)*(!str.cell)*rel_axes))); + rMatrix3d recip=(!(~((s_str_relax.cell)*(!str.cell)*axes))); + // rMatrix3d recip=!(~(rel_axes)); + ofstream outffile("eigenfreq.out"); + ofstream outvfile("eigenvect.out"); + while (skip_delim(infile)) { + int nbpts; + rVector3d k1,k2; + infile >> nbpts >> k1 >> k2; + k1=recip*k1; + k2=recip*k2; + LinkedList > freq; + LinkedList > eigvect; + calc_dispersion_curve(&freq,&eigvect, k1,k2,nbpts,pairspring,masses,convfk/mass_unit); + LinkedListIterator > i_freq(freq); + LinkedListIterator > i_eigvect(eigvect); + for (; i_freq; i_freq++, i_eigvect++) { + for (int i=0; iget_size(); i++) { + outffile << (*i_freq)(i) << '\t'; + } + outffile << endl; + outvfile << (*i_eigvect); + } + } + } + + iVector3d kmesh; + if (kpts(0)==0) { + calc_k_mesh(&kmesh,str.cell,kppra/(Real)(str.atom_pos.get_size())); + } + else { + kmesh=kpts; + } + cerr << "kmesh= " << kmesh << endl; + rMatrix3d rec_lat=!(~(s_str_relax.cell)); + rMatrix3d kcell; + for (int i=0; i<3; i++) { + kcell.set_column(i,rec_lat.get_column(i)/(Real)kmesh(i)); + } + + + + if (find_unstable) { + ofstream modefile("unstable.out"); + int line=0; + MultiDimIterator ik(kmesh); + for (; ik; ik++) { + rVector3d k=kcell*(kshift+to_real(ik)); + k=flip_into_brillouin_1(k,rec_lat); + Array freq; + Array2d eigvects; + calc_normal_modes(&freq,&eigvects, k,pairspring,masses,convfk/mass_unit); + for (int i=0; i eigvect; + extract_column(&eigvect,eigvects,i); + Real maxvol=fabs(det(s_str_relax.cell))*(Real)max_unstable_vol/(Real)(s_str_relax.atom_pos.get_size()); + rMatrix3d supercell; + if (find_mode_supercell(&supercell, s_str_relax.cell,k,maxvol)) { + int nb_atom=iround((Real)(s_str_relax.atom_pos.get_size())*fabs(det(supercell)/det(s_str_relax.cell))); + modefile << "u " << line << " " << nb_atom << " " << (iVector3d &)ik << " " << i << " " << freq(i) << " " << eigvect << endl; + } + else { + modefile << "u " << line << " " << "too_large" << " " << (iVector3d &)ik << " " << i << " " << freq(i) << " " << eigvect << endl; + } + } + } + } + } + else if (gen_unstable) { + int line=0; + int nbbr=str.atom_pos.get_size()*3; + MultiDimIterator ik(kmesh); + for (; ik; ik++) { + if (line freq; + Array2d eigvects; + calc_normal_modes(&freq,&eigvects, k,pairspring,masses,convfk/mass_unit); + for (int i=0; i=(gen_negun ? -1 : (donullpert ? 0 : 1)); disp_sgn-=(2-donullpert)) { + Real cur_displ=displ_mag*(Real)disp_sgn; + Array eigvect; + extract_column(&eigvect,eigvects,i); + Real maxvol=fabs(det(s_str_relax.cell))*(Real)max_unstable_vol/(Real)(s_str_relax.atom_pos.get_size()); + ostrstream dirname; + if (kpts(0)==0) { + dirname << "p_uns_" << cur_displ << "_" << kppra << "_" << gen_unstable << '\0'; + } + else { + dirname << "p_uns_" << cur_displ << "_" << kpts(0) << "_" << kpts(1) << "_" << kpts(2) << "_" << gen_unstable << '\0'; + } + mkdir(dirname.str(),S_IRWXU | S_IRWXG | S_IRWXO); + chdir_robust(dirname.str()); + + Array pertstr(2); + generate_mode(&pertstr, s_str_relax,k,eigvect,maxvol,cur_displ); + if (pertstr.get_size()==0) {ERRORQUIT("Unit cell for this mode is too large. Increase -mau=...");} + { + ofstream pertstrfile("str.out"); + pertstrfile.setf(ios::fixed); + pertstrfile.precision(sigdig); + write_structure(pertstr((gen_unstable>0 ? 0 : 1)), atom_label, rel_axes, pertstrfile); + } + Array unpertstr(2); + generate_mode(&unpertstr, s_str_relax,k,eigvect,maxvol,0.); + { + ofstream unpertstrfile("str_unpert.out"); + unpertstrfile.setf(ios::fixed); + unpertstrfile.precision(sigdig); + write_structure(unpertstr(0), atom_label, rel_axes, unpertstrfile); + } + + ofstream waitfile("wait"); + chdir_robust(".."); + } + } + } + } + else { + line+=nbbr; + } + } + } + else if (projdos) { + LinkedList freqs; + LinkedList > weights; + MultiDimIterator ik(kmesh); + logfile << "Phonon frequencies/modes/weights:" << endl; + for (; ik; ik++) { + rVector3d k=kcell*(kshift+to_real(ik)); + Array freq; + Array2d eigvects; + calc_normal_modes(&freq,&eigvects, k,pairspring,masses,convfk/mass_unit); + logfile << freq << endl; + logfile << eigvects << endl; + for (int m=0; m eigvect; + extract_column(&eigvect,eigvects,m); + Array weight(str.atom_type.get_size()); + Real s=0; + for (int at=0; at(weight); + } + } + logfile << "end" << endl << endl; + Real xmin,xmax; + Array > pvdos(str.atom_type.get_size()); + for (int at=0; at freqa; + LinkedList_to_Array(&freqa,freqs); + Array weighta(freqa.get_size()); + LinkedListIterator > it(weights); + for (int i=0; it; i++,it++) { + weighta(i)=(*it)(at); + } + smooth_density(&xmin,&xmax,&(pvdos(at)),freqa,weighta); + } + Real df=(xmax-xmin)/(Real)(pvdos(0).get_size()-1); + Real w=(1./(kmesh(0)*kmesh(1)*kmesh(2)))*(Real)(peratom ? 1:str_relax.atom_type.get_size())*perfewer; + { + ofstream vdosfile("pvdos.out"); + for (int i=0; i freq,weight; + if (!list_phonon_freq(&freq, &weight, kmesh, kshift, pairspring, s_str_relax.cell,masses,convfk/mass_unit)) { + cerr << "Unstable modes found." << endl; + if (!forceneg && robust_len==0.) { + ERRORQUIT("Aborting."); + } + } + + LinkedListIterator ifreq(freq); + logfile << "Phonon frequencies:" << endl; + for ( ; ifreq; ifreq++) { + logfile << *ifreq << endl; + } + logfile << "end" << endl << endl; + { + ofstream vdosfile("vdos.out"); + Array freqa; + LinkedList_to_Array(&freqa,freq); + Real xmin,xmax; + Array vdos; + smooth_density(&xmin,&xmax,&vdos,freqa); + Real df=(xmax-xmin)/(Real)(vdos.get_size()-1); + LinkedListIterator iw(weight); + Real w=(*iw)*(Real)(peratom ? 1:str_relax.atom_type.get_size())*perfewer; + for (int i=0; i fvib(nT); + { + Real energy=MAXFLOAT; + if (file_exists("energy")) { + ifstream energyfile("energy"); + energyfile >> energy; + } + if (energy==MAXFLOAT) { + cerr << "Warning: Unable to read energy file. Assuming static energy is 0." << endl; + energy=0.; + } + energy=energy/(Real)(str_relax.atom_pos.get_size()) *(Real)(peratom ? 1:str_relax.atom_type.get_size())*perfewer; + ofstream file("fvib"); + for (int it=0; it0) { + Real geomass=1.; + for (int at=0; at0. ? s*s*s_robust_len : 0.))*L); + // fvib(it)=calc_vib_free_energy_robust(freq,weight,kboltzman*T,hplanck,(robust_len+s*s_robust_len)*L); + } + else { + fvib(it)=calc_vib_free_energy(freq,weight,kboltzman*T,hplanck); + } + fvib(it)+=pressure*det(s_str_relax.cell)/(Real)(str_relax.atom_type.get_size())*press_ang3_to_eV; + fvib(it)*=(Real)(peratom ? 1:str_relax.atom_type.get_size())*perfewer; + file << (subE0 ? 0 : energy)+fvib(it) << endl;; + } + } + fvib_list << new Array(fvib); + } + } + chdir_robust(".."); + } + } + unlink("vollist.out"); + if (strlen(kdispfile)==0 && gen_unstable==0 && find_unstable==0 && !projdos) { + ofstream outfile("fitfc.out"); + ofstream fvibfile("fvib"); + Array energy_a; + Array > fvib_a; + Array s_e_a; + Array s_f_a; + LinkedList_to_Array(&energy_a,energy_list); + LinkedList_to_Array(&fvib_a,fvib_list); + LinkedList_to_Array(&s_e_a,s_elist); + LinkedList_to_Array(&s_f_a,s_flist); + if (fvib_a.get_size()==0) { + ERRORQUIT("No vol_*/p*/force.out files found or no vol_*/str_relax.out files found."); + } + if (s_e_a.get_size()==0) { + cerr << "Warning: no vol_*/energy file found. Consequently, T=0 static energy will not be added to output free energies." << endl; + s_e_a.resize(1); + energy_a.resize(1); + s_e_a(0)=0.; + energy_a(0)=0.; + } + Real smin=MIN(min(s_e_a),min(s_f_a)); + Real smax=MAX(max(s_e_a),max(s_f_a)); + Array eos; + if (!file_exists("user_eos.in")) { + fit_eos(&eos,s_e_a,energy_a,4); + } + else { + ifstream eosfile("user_eos.in"); + LinkedList epoly; + smin=0; + eosfile >> smax; + while (skip_delim(eosfile)) { + Real c; + eosfile >> c; + // c=c/(Real)(str.atom_pos.get_size())*(Real)(peratom ? 1:str_relax.atom_type.get_size())*perfewer; + epoly << new Real(c); + } + LinkedList_to_Array(&eos,epoly); + } + + { + ofstream eosfile("eos0.out"); + for (int j=0; j f_vs_T(nT); + ofstream tfvibfile("tfvib.gnu"); + ofstream tfvibdatafile("tfvib.out"); + ofstream teosfile("teos.gnu"); + + int bestp; + if (freepow!=-1) {bestp=freepow;} + else { + Array count_p(s_f_a.get_size()); + zero_array(&count_p); + for (int it=0; it f_vs_s(s_f_a.get_size()); + for (int iv=0; iv eos_vib; + int best_p=-1; + if (s_f_a.get_size()<=2) {best_p=s_f_a.get_size()-1;} + fit_best_poly(&eos_vib, s_f_a, f_vs_s, &best_p, s_f_a.get_size()-1); + count_p(best_p)++; + } + bestp=index_max(count_p); + } + + for (int it=0; it f_vs_s(s_f_a.get_size()); + for (int iv=0; iv ps; + make_pow_mat(&ps,s_f_a,s_f_a.get_size()-1); + Array eos_vib; + calc_ols(&eos_vib,ps,f_vs_s); +*/ + Array eos_vib; + // int bestp=-1; + // if (s_f_a.get_size()<=2) {bestp=s_f_a.get_size()-1;} + fit_best_poly(&eos_vib, s_f_a, f_vs_s, &bestp, s_f_a.get_size()-1); + + tfvibfile << "plot [" << smin << ":" << smax << "] 'tfvib.out' u ($2):(($1==" << T << " ? $3 : 1./0.)), "; + for (int j=0; j poly; + add_poly(&poly,eos,eos_vib); + teosfile << "plot [" << smin << ":" << smax << "]"; + for (int j=0; j__, where + is the number given by the -dr option, + by the -er option and is a number used to distinguish + between different pertubations. Two perturbations that differ only + by their signs are sometimes generated and are distinguished + by a + or - prefix. + If you want to ensure that the third-order force constants + cancel out exactly in the fit, you need to consider both + perturbations. + Otherwise, only the 'positive' perturbation will be sufficient. + Note that whenever the third-order terms cancel out by + symmetry, only the 'positive' perturbation will be generated. + + You then need to use the ab initio code to calculate reaction + forces for each perturbation. + This will typically be accomplished by typing + pollmach runstruct_vasp & + (make sure that the vasp.wrap file indicates that no degrees of + freedom are allowed to relax and the smearing is used + for Brillouin zone integration. Do not use the DOSTATIC option.) + For added efficiently, use the 'lookup up' option: + pollmach -lu runstruct_vasp & + This will reuse the WAVECAR and CHGCAR from prior runs to speed up + convergence of later ones. This works better if -dr is small (e.g. -dr=0.05). + Make sure to set ICHARG=1 in the vasp.wrap file. + +4) Fitting the force constants and phonon calculations. + This mode is invoked with the -f option. + In addition, you need to specify the range of the springs included + in the fit using the -fr=... option. + Usually, the range specified with -fr should be not more than + half the distance specified with the -er option ealier. + Distances are measured according to the atomic positions given + in str.out and in the same units. + It is a good idea to try different values of -fr (starting with + the nearest neighbor bond length) and check that + the vibrational properties converge as -fr is increased. + +5) Sometimes you will get the message 'Unstable modes found. Aborting.' + This indicates that the structure considered may be mechanically unstable. + If, in addition, you see the warning 'Warning: p... is an unstable mode.', + then the structure is certainly unstable. Otherwise, it may be a artifact + of the fitting procedure. + To find out, you can tell the code to generate perturbations along the unstable + directions and let your ab initio code calculate the reaction forces + which can then be included in the fit to settle this issue. + First, to view the unstable modes, use the -fu option: the output is in + vol_*/unstable.out and has the form: + u [index] [nb_atom] [kpoint] [branch] [frequency] + [displacements...] + where [index] is a reference number, nb_atom is the size of the supercell + needed to represent this mode (the other entries are self-explanatory). + (If this file contains only entries with nb_atom=too_large, + you need to increase the -mau option beyond its default of 64.) + You can pick one of these modes to written out to disk with the option + -gu=[index] where [index] is the one reported in the unstable.out file. + Using a negative index gives the sine instead of cosine phase of the mode. + You can run your ab initio code in the subdirectory generated (named vol_*/p_uns___) + and rerun fitfc -f -fr=... + If you see 'Warning: p... is an unstable mode.' then you have found a true + instability. If you only see 'Unstable modes found. Aborting.' you may repeat the + process until the message disappear or a truly unstable mode is found. + + Note: If you want to generate a phonon DOS even if there are unstable modes, + use the -fn option. The unstable modes will be shown as negative frequencies. + +-> Phonon Dispersion curves +The -df=inputfile option invokes the phonon dispersion curve module. +The syntax of the input file is: +[nb of points] [kx1] [ky1] [kz1] [kx2] [ky2] [kz2] +repeat... + +Each line of input defines one segment (kx1,ky1,kz1)-(kx2,ky2,kz2) +along which the dispersion curve is to be calculated. +[nb of points] specifies the number of points sampled along the segment. +The coordinates are in multiple of the reciprocal cell defined by the axes in the +file specified by the -si option (or, by default, in the str.out file). +(The k-point coordinates are appropriately strained +by the amount needed for the str.out file to be identical to the str_relax.out file.) +The phonon frequencies are output in the eigenfreq.out file, +in the vol_* subdirectories. + +Output files: + fitfc.log : A general log file. + vol_*/vdos.out : the phonon density of states for each volume considered + vol_*/fc.out : The force constants. + For each force constant a summary line gives: + (i) the atomic species involved + (ii) the 'bond length' + (iii) the stretching and bending terms + Then, each separate component of the force constant is + given and, finally, their sum. + vol_*/svib_ht : gives the high-temperature limit of the vibrational + entropy (in units of kB/atom) in the harmonic approximation, + excluding the configuration-independent contribution at each + unit cell volume considered (so, this just -3 times the + average log phonon frequency). + vol_*/fvib : gives the harmonic vibrational free energy (in eV) at that volume + as a function of temperature. + +The following 3 files give the output of the quasiharmonic approximation if ns>1 and +the harmonic approximation if ns=1: + + fitfc.out : gives along each row, the temperature, the free energy, + and the linear thermal expansion + (e.g. 0.01 means that the lattice has expanded by 1% + at that temperature). + fvib : gives only the free energy + svib : gives only the entropy (in energy/temperature, by default, eV/K) + + eos0.out : equation of state at 0K (one strain,energy pair per line) + eos0.gnu : gnuplot script to plot polynomial & data + +Caution: + When using fitfc as part of a cluster expansion, make sure you use the -me0 option to + ensure that the static energy (included in eci.out) is not double-counted. diff --git a/src/fitsvsl.c++ b/src/fitsvsl.c++ new file mode 100644 index 0000000..5e0df14 --- /dev/null +++ b/src/fitsvsl.c++ @@ -0,0 +1,908 @@ +#include +#include +#include "phonlib.h" +#include "getvalue.h" +#include "parse.h" +#include "version.h" +#include "lattype.h" +#include "arraylist.h" + +void calc_force_vector(Array *forces, const Structure &unpert_str, const Structure &pert_str, const LinkedList &springlist) { + forces->resize(unpert_str.atom_pos.get_size()*3); + zero_array(forces); + LinkedListIterator ip(springlist); + for (; ip; ip++) { + rMatrix3d fk=ip->forcek; + for (int wend=0; wend<2; wend++) { + rVector3d dr=(pert_str.atom_pos(ip->whichatom[wend])-unpert_str.atom_pos(ip->whichatom[wend])); +//if (norm(dr)>zero_tolerance) { +// cerr << dr << endl; +// cerr << fk << endl; +//} + rVector3d f=fk*dr; + add_rVector3d_to_ArrayReal(forces,ip->whichatom[1-wend],f); + add_rVector3d_to_ArrayReal(forces,ip->whichatom[ wend],-f); + fk=~fk; + } + } +} + +class SameEndAtom { + public: + int operator () (const SpringSvsL &a, const SpringSvsL &b) const { + if ((a.atom_type[0]==b.atom_type[0] && a.atom_type[1]==b.atom_type[1]) + || (a.atom_type[0]==b.atom_type[1] && a.atom_type[1]==b.atom_type[0])) return 1; + return 0; + } +}; + +void find_pertubations(Array *pwhich_atom, Array *pdirection, + const Structure &str, + const SpaceGroup &spacegroup) { + LinkedList which_atom_list; + LinkedList dir_list; + LinkedList > pointlist; + for (int at=0; at p(1); + p(0)=str.atom_pos(at); + if (add_unique(&pointlist,p,spacegroup)) { + Array atom_point_group; + find_atom_point_group(&atom_point_group,str.atom_pos(at),str.cell,spacegroup.point_op,spacegroup.trans); + Array special_dir; + find_special_direction(&special_dir, NULL, atom_point_group); + for (int i=0; i > *peqn_mat, const Structure &ideal_str, const Structure &unpert_str, const Structure &pert_str, LinkedList *pspring_list, const LinkedList &dirdep_mat, const Array &conc, const MultiDimPoly &multipoly, Real maxfklen=MAXFLOAT) { + int nbcol=0; + LinkedListIterator i_s(*pspring_list); + for (;i_s; i_s++) { + for (int sb=0; sbforcek.get_size(); sb++) { + nbcol+=i_s->forcek(sb).get_size(); + zero_array(&(i_s->forcek(sb))); + } + } + int nbrow=pert_str.atom_pos.get_size()*3; + resize(peqn_mat,nbrow,nbcol); + int c=0; + LinkedList > pairbuf; + + i_s.init(*pspring_list); + for (;i_s; i_s++) { + for (int sb=0; sbforcek.get_size(); sb++) { + for (int np=0; npforcek(sb).get_size(); np++) { + i_s->forcek(sb)(np)=1.; + LinkedList pair_list; +// make_nn_forcek(&pair_list, ideal_str, unpert_str, *pspring_list, dirdep_mat, conc, multipoly); + make_nn_forcek(&pair_list, ideal_str, unpert_str, *pspring_list, dirdep_mat, conc, multipoly, &pairbuf); + { + LinkedListIterator ifk(pair_list); + while (ifk) { + if (norm(ifk->dr)>maxfklen) { + delete pair_list.detach(ifk); + } + else { + ifk++; + } + } + } + Array force; + calc_force_vector(&force, unpert_str, pert_str, pair_list); + for (int i=0; iforcek(sb)(np)=0.; + } + } + } +} + +void write_spring_file(ostream &file, const LinkedList &springlist, const Array &label, int maxlpow, int dirdep, int concpow) { + if (dirdep!=0 || concpow!=0) { + file << "maxlpow " << maxlpow << endl; + file << "dirdep " << dirdep << endl; + file << "concpow " << concpow << endl; + } + LinkedListIterator i_s(springlist); + for (;i_s; i_s++) { + file << label(i_s->atom_type[0]) << " " << label(i_s->atom_type[1]) << endl; + for (int sb=0; sbforcek.get_size(); sb++) { + file << i_s->forcek(sb); + } + } +} + +class BondLengthData { +public: + int atom_type[2]; + Real minl,maxl; + BondLengthData(void) {atom_type[0]=0; atom_type[1]=0; minl=MAXFLOAT; maxl=-MAXFLOAT;} + BondLengthData(const BondLengthData &bld) { + atom_type[0]=bld.atom_type[0]; + atom_type[1]=bld.atom_type[1]; + minl=bld.minl; + maxl=bld.maxl; + } +}; + +void find_nn_range(LinkedList *bnd_len_data, const Structure &str_ideal, const Structure &str_relax) { + rMatrix3d inv_cell=!str_ideal.cell; + for (int at=0; at bi(*bnd_len_data); + for ( ; bi; bi++) { + if (bld.atom_type[0]==bi->atom_type[0] && bld.atom_type[1]==bi->atom_type[1]) break; + if (bld.atom_type[1]==bi->atom_type[0] && bld.atom_type[0]==bi->atom_type[1]) break; + } + if (!bi) { + (*bnd_len_data) << new BondLengthData(bld); + } + else { + bi->minl=MIN(bi->minl,l); + bi->maxl=MAX(bi->maxl,l); + } + pair++; + } + } +} + +class BondForcekData { +public: + int atom_type[2]; + Real len; + Array forcek; + + BondForcekData(void): forcek(0) {} + BondForcekData(const BondForcekData &bfd) { + atom_type[0]=bfd.atom_type[0]; + atom_type[1]=bfd.atom_type[1]; + len=bfd.len; + forcek=bfd.forcek; + } +}; + +void list_nn_forcek(LinkedList *p_forcek_data, const Structure &str_ideal, const Structure &str_unpert, const Structure &str_pert, const Array &forces) { + rMatrix3d inv_cell=!str_ideal.cell; + int pert_at; + Real maxmove=0.; + for (int at=0; atmaxmove) { + maxmove=r; + pert_at=at; + } + } + rVector3d d=str_pert.atom_pos(pert_at)-str_unpert.atom_pos(pert_at); + // cerr << pert_at << endl; + // cerr << d << endl; + Real r=find_1nn_radius(str_ideal,pert_at)+zero_tolerance; + AtomPairIterator pair(str_ideal.cell,str_ideal.atom_pos(pert_at),str_ideal.atom_pos); + while (get_length_quick(pair)<=r) { + int whichatom[2]; + BondForcekData bfd; + whichatom[0]=which_atom(str_ideal.atom_pos, pair(0), inv_cell); + whichatom[1]=which_atom(str_ideal.atom_pos, pair(1), inv_cell); + bfd.atom_type[0]=str_ideal.atom_type(whichatom[0]); + bfd.atom_type[1]=str_ideal.atom_type(whichatom[1]); + if (bfd.atom_type[0]>bfd.atom_type[1]) { + swap(&(bfd.atom_type[0]),&(bfd.atom_type[1])); + } + rVector3d ideal_offset=(pair(1)-pair(0))-(str_ideal.atom_pos(whichatom[1])-str_ideal.atom_pos(whichatom[0])); + rVector3d cell_shift=inv_cell*ideal_offset; + // cerr << cell_shift << endl; + rVector3d dr=str_unpert.atom_pos(whichatom[1])+str_unpert.cell*cell_shift-str_unpert.atom_pos(whichatom[0]); + Real l=norm(dr); + bfd.len=l; + bfd.forcek.resize(4); + zero_array(&(bfd.forcek)); + LinkedListIterator i_bnd(*p_forcek_data); + for (; i_bnd; i_bnd++) { + if (i_bnd->atom_type[0]==bfd.atom_type[0] && i_bnd->atom_type[1]==bfd.atom_type[1] && near_zero(i_bnd->len-bfd.len)) break; + } + if (!i_bnd) { + (*p_forcek_data) << new BondForcekData(bfd); + } + Real perp_tresh=0.1; + rVector3d u=dr/l; + rVector3d f; + for (int i=0; i<3; i++) {f(i)=forces(3*whichatom[1]+i);} + Real x=(u*d); + Real y=(u*f); + if (2.*fabs(x)>perp_tresh*norm(d)) { + //cerr << bfd.atom_type[0] << " " << bfd.atom_type[1] << " " << x << " " << y << endl; + i_bnd->forcek(0)+=x*x; + i_bnd->forcek(1)+=x*y; + } + rVector3d v=d-u*(u*d); + x=norm(v); + v.normalize(); + y=v*f; //(v*(f-u*(u*f))); + if (2.*fabs(d*v)>perp_tresh*norm(d)) { + i_bnd->forcek(2)+=x*x; + i_bnd->forcek(3)+=x*y; + } + pair++; + } +} + +void finish_list_nn_forcek(LinkedList *p_forcek_data) { + LinkedListIterator i_bnd(*p_forcek_data); + for (; i_bnd; i_bnd++) { + Array fk(2); + for (int j=0; j<2; j++) { + //cerr << j << " " << i_bnd->atom_type[0] << " " << i_bnd->atom_type[1] << " " << i_bnd->forcek(2*j+1) << " " << i_bnd->forcek(2*j) << endl; + fk(j)=i_bnd->forcek(2*j+1)/i_bnd->forcek(2*j); + } + i_bnd->forcek=fk; + } +} + +void list_nn_forcek_new(LinkedList *p_forcek_data, const Structure &str_ideal, const Structure &str_unpert, const Structure &str_pert) { + rMatrix3d inv_cell=!str_ideal.cell; + int pert_at; + Real maxmove=0.; + for (int at=0; atmaxmove) { + maxmove=r; + pert_at=at; + } + } + rVector3d d=str_pert.atom_pos(pert_at)-str_unpert.atom_pos(pert_at); + Real r=find_1nn_radius(str_ideal,pert_at)+zero_tolerance; + AtomPairIterator pair(str_ideal.cell,str_ideal.atom_pos(pert_at),str_ideal.atom_pos); + while (get_length_quick(pair)<=r) { + int whichatom[2]; + BondForcekData bfd; + whichatom[0]=which_atom(str_ideal.atom_pos, pair(0), inv_cell); + whichatom[1]=which_atom(str_ideal.atom_pos, pair(1), inv_cell); + bfd.atom_type[0]=str_ideal.atom_type(whichatom[0]); + bfd.atom_type[1]=str_ideal.atom_type(whichatom[1]); + if (bfd.atom_type[0]>bfd.atom_type[1]) { + swap(&(bfd.atom_type[0]),&(bfd.atom_type[1])); + } + rVector3d ideal_offset=(pair(1)-pair(0))-(str_ideal.atom_pos(whichatom[1])-str_ideal.atom_pos(whichatom[0])); + rVector3d cell_shift=inv_cell*ideal_offset; + rVector3d dr=str_unpert.atom_pos(whichatom[1])+str_unpert.cell*cell_shift-str_unpert.atom_pos(whichatom[0]); + bfd.len=norm(dr); + bfd.forcek.resize(2); + zero_array(&(bfd.forcek)); + LinkedListIterator i_bnd(*p_forcek_data); + for (; i_bnd; i_bnd++) { + if (i_bnd->atom_type[0]==bfd.atom_type[0] && i_bnd->atom_type[1]==bfd.atom_type[1] && near_zero(i_bnd->len-bfd.len)) break; + } + if (!i_bnd) { + (*p_forcek_data) << new BondForcekData(bfd); + } + pair++; + } +} + +void calc_equation_forcek(Array2d *eqn, LinkedList *p_forcek_data, const Structure &str_ideal, const Structure &str_unpert, const Structure &str_pert, Real tol) { + eqn->resize(iVector2d(3*str_ideal.atom_pos.get_size(),p_forcek_data->get_size()*2)); + zero_array(eqn); + + rMatrix3d inv_cell=!str_ideal.cell; + int pert_at; + Real maxmove=0.; + for (int at=0; atmaxmove) { + maxmove=r; + pert_at=at; + } + } + rVector3d d=str_pert.atom_pos(pert_at)-str_unpert.atom_pos(pert_at); + Real r=find_1nn_radius(str_ideal,pert_at)+zero_tolerance; + AtomPairIterator pair(str_ideal.cell,str_ideal.atom_pos(pert_at),str_ideal.atom_pos); + while (get_length_quick(pair)<=r) { + int whichatom[2]; + BondForcekData bfd; + whichatom[0]=which_atom(str_ideal.atom_pos, pair(0), inv_cell); + whichatom[1]=which_atom(str_ideal.atom_pos, pair(1), inv_cell); + bfd.atom_type[0]=str_ideal.atom_type(whichatom[0]); + bfd.atom_type[1]=str_ideal.atom_type(whichatom[1]); + if (bfd.atom_type[0]>bfd.atom_type[1]) { + swap(&(bfd.atom_type[0]),&(bfd.atom_type[1])); + } + rVector3d ideal_offset=(pair(1)-pair(0))-(str_ideal.atom_pos(whichatom[1])-str_ideal.atom_pos(whichatom[0])); + rVector3d cell_shift=inv_cell*ideal_offset; + rVector3d dr=str_unpert.atom_pos(whichatom[1])+str_unpert.cell*cell_shift-str_unpert.atom_pos(whichatom[0]); + bfd.len=norm(dr); + LinkedListIterator i_bnd(*p_forcek_data); + int idx=0; + for (; i_bnd; i_bnd++, idx++) { + if (i_bnd->atom_type[0]==bfd.atom_type[0] && i_bnd->atom_type[1]==bfd.atom_type[1] && near_zero(i_bnd->len-bfd.len)) break; + } + + rVector3d u=dr; + u.normalize(); + u=u*(u*d); + rVector3d v=d-u; + + if (norm(u)>tol) { + for (int i=0; i<3; i++) { + (*eqn)(whichatom[0]*3+i,idx*2) +=-u(i); + (*eqn)(whichatom[1]*3+i,idx*2) += u(i); + } + } + if (norm(v)>tol) { + for (int i=0; i<3; i++) { + (*eqn)(whichatom[0]*3+i,idx*2+1)+=-v(i); + (*eqn)(whichatom[1]*3+i,idx*2+1)+= v(i); + } + } + pair++; + } +} + +void finish_list_nn_forcek(LinkedList *p_forcek_data, const LinkedList &ideal_str_list, + const LinkedList &unpert_str_list, + const LinkedList &pert_str_list, const Array &forces, Real tol) { + Array2d big_eqn(iVector2d(forces.get_size(),p_forcek_data->get_size()*2)); + zero_array(&big_eqn); + LinkedListIterator i_ideal_str(ideal_str_list); + LinkedListIterator i_unpert_str(unpert_str_list); + LinkedListIterator i_pert_str(pert_str_list); + int r=0; + for (; i_ideal_str; i_ideal_str++, i_unpert_str++, i_pert_str++) { + Array2d eqn; + calc_equation_forcek(&eqn,p_forcek_data,*i_ideal_str,*i_unpert_str,*i_pert_str,zero_tolerance); + for (int j=0; j beta; + Array w; + calc_ols(&beta,big_eqn,forces,w,0); + Array2d varbeta; + inner_product(&varbeta,big_eqn,big_eqn); + //invert_matrix(&varbeta,varbeta); + calc_ols_var(&varbeta,big_eqn,forces); + LinkedListIterator ibnd(*p_forcek_data); + for (int i=0; ibnd; ibnd++, i+=2) { + if (varbeta(i,i)>tol) { + ibnd->forcek(0)=0; + } + else { + ibnd->forcek(0)=beta(i); + } + if (varbeta(i+1,i+1)>tol) { + ibnd->forcek(1)=0; + } + else { + ibnd->forcek(1)=beta(i+1); + } + } + // cerr << big_eqn << endl; + // cerr << forces << endl; +} + +extern char *helpstring; + +int main(int argc, char *argv[]) { + // cerr.setf(ios::fixed | ios::showpos); + cerr.precision(5); + char *latfilename="lat.in"; + char *strnamefilename="strname.in"; + Real enclosed_radius=0.; + Real displ_mag=0.2; + Real max_strain=0.01; + int nb_vol=2; + int fitfc=0; + int redun=0; + int maxlpow=1; + int dirdep=0; + int concpow=0; + Real maxfklen=MAXFLOAT; + char *strainfilename=""; + Real fkeqntol=2.0; + int dohelp=0; + int sigdig=5; + int olddirstruct=0; + AskStruct options[]={ + {"","Fit Stiffness VS Length transferable force constants " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-f","Fit force constants (otherwise, generate pertubations)",BOOLVAL,&fitfc}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latfilename}, + {"-dn","Input file listing the directories containing the structures used to calculate force constants (default: strname.in)",STRINGVAL,&strnamefilename}, + {"-er","Minimum distance between displaced atoms",REALVAL,&enclosed_radius}, + {"-dr","Displacement of the perturbed atom (default: 0.2)",REALVAL,&displ_mag}, + {"-ms","Strain of the maximum volume sampled (default: 0.01)",REALVAL,&max_strain}, + {"-ns","Number of volume sample (default: 2)",INTVAL,&nb_vol}, + {"-op","Order of the polynomial used to fit stiffness vs length",INTVAL,&maxlpow}, + {"-dd","Use direction-dependent force constants",BOOLVAL,&dirdep}, + {"-pc","Maximum power of composition used in fit (default: no composition dependence)",INTVAL,&concpow}, + {"-msl","Maximum spring length",REALVAL,&maxfklen}, + {"-sf","Extra strain file",STRINGVAL,&strainfilename}, + {"-eqt","Tolerance for excluding force constants in plots.",REALVAL,&fkeqntol}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-z","Tolerance for finding symmetry operations (default: 1e-3)",REALVAL,&zero_tolerance}, + {"-ncs","No check for singular matrix in fit",BOOLVAL,&redun}, + {"-od","Use older 1-level only directory tree",BOOLVAL,&olddirstruct}, + {"-h","Display more help",BOOLVAL,&dohelp} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + if (enclosed_radius==0 && !fitfc) { + ERRORQUIT("You need to specify at least the -er parameter to generator perturbations or the -f option to fit the force constants."); + } + + rMatrix3d extrastrain; + extrastrain.identity(); + if (strlen(strainfilename)>0) { + ifstream strainfile(strainfilename); + strainfile >> extrastrain; + } + Structure lat; + Array site_type_list; + Array atom_label; + rMatrix3d axes; + { + ifstream file(latfilename); + if (!file) ERRORQUIT("Unable to open lattice file."); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &site_type_list, &atom_label, file, &axes); + if (fabs(det(lat.cell)) springsvsl_list; + rMatrix3d ilatcell=!(lat.cell); + for (int at=0; at< lat.atom_type.get_size(); at++) { + Real r1nn=find_1nn_radius(lat, at)+zero_tolerance; + AtomPairIterator pair(lat.cell,lat.atom_pos(at),lat.atom_pos); + for (; norm(pair(1)-pair(0))<=r1nn; pair++) { + Array nb_atom_type(2); + Array index_site_type_list(2); + for (int endpt=0; endpt<2; endpt++) { + index_site_type_list(endpt)=lat.atom_type(which_atom(lat.atom_pos,pair(endpt),ilatcell)); + nb_atom_type(endpt)=site_type_list(index_site_type_list(endpt)).get_size(); + } + MultiDimIterator > pairtype(nb_atom_type); + for (; pairtype; pairtype++) { + SpringSvsL spr; + for (int endpt=0; endpt<2; endpt++) { + spr.atom_type[endpt]=site_type_list(index_site_type_list(endpt))(((Array &)pairtype)(endpt)); + } + if (spr.atom_type[0]>spr.atom_type[1]) { + swap(&(spr.atom_type[0]),&(spr.atom_type[1])); + } + if ((strcmp(atom_label(spr.atom_type[0]),"Vac")!=0 && strcmp(atom_label(spr.atom_type[1]),"Vac")!=0) && + (strcmp(atom_label(spr.atom_type[0]),"Va")!=0 && strcmp(atom_label(spr.atom_type[1]),"Va")!=0) ) { + add_unique(&springsvsl_list,spr,SameEndAtom()); + } + } + } + } + + LinkedList dirdep_mat; + if (!dirdep) { + rMatrix3d *pid=new rMatrix3d; + pid->identity(); + dirdep_mat << pid; + } + else { + SpaceGroup spacegroup; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,lat.cell,lat.atom_pos,lat.atom_type); + Array pointgroup; + pointgroup_from_spacegroup(&pointgroup, spacegroup.point_op); + find_sym_const_tensor(&dirdep_mat, pointgroup,1); + } + + Array2d redtonored; + { + Array2d m; + Array v; + calc_noredtored(&m,&v,lat,site_type_list); + calc_redtonored(&redtonored, m,v); + } + + int ddms=dirdep_mat.get_size(); + Array maxpows(1+ddms+redtonored.get_size()(0)); + Array dlineq(maxpows.get_size()),duineq(maxpows.get_size()); + Array cineq(maxpows.get_size()); + zero_array(&dlineq); + zero_array(&duineq); + zero_array(&cineq); + maxpows(0)=maxlpow; + for (int i=0; i linineq; + linineq << new LinearInequality(dlineq,-1) << new LinearInequality(duineq,1) << new LinearInequality(cineq,concpow); + MultiDimPoly multipoly(maxpows,linineq); + + if (!fitfc) { + LinkedList str_list; + LinkedList rel_str_list; + LinkedList dir_list; + { + ifstream strnamefile(strnamefilename); + if (!strnamefile) {ERRORQUIT("Unable to open structure name file");} + while (skip_delim(strnamefile)) { + AutoString dirname; + get_string(&dirname,strnamefile); + dir_list << new AutoString(dirname); + Structure str; + { + ostrstream ostrfilename; + ostrfilename << dirname << '/' << "str.out" << '\0'; + ifstream strfile(ostrfilename.str()); + if (!strfile) { + cerr << "Unable to open " << ostrfilename.str() << endl; + ERRORQUIT("Aborting"); + } + if (!parse_structure_file(&str.cell,&str.atom_pos,&str.atom_type,atom_label,strfile)) { + cerr << "Error in file " << dirname << '/' << "str.out" << endl; + ERRORQUIT("Aborting"); + } + wrap_inside_cell(&str.atom_pos,str.atom_pos,str.cell); + str_list << new Structure(str); + remove_vacancies(&str,atom_label,"Vac"); + remove_vacancies(&str,atom_label,"Va"); + } + Structure rel_str; + { + ostrstream rel_strfilename; + rel_strfilename << dirname << '/' << "str_relax.out" << '\0'; + ifstream rel_strfile(rel_strfilename.str()); + if (!rel_strfile) { + cerr << "Unable to open " << rel_strfilename.str() << endl; + ERRORQUIT("Aborting"); + } + if (!parse_structure_file(&rel_str.cell,&rel_str.atom_pos,&rel_str.atom_type,atom_label,rel_strfile)) { + cerr << "Error in file " << dirname << '/' << "str_relax.out" << endl; + ERRORQUIT("Aborting"); + } + wrap_inside_cell(&rel_str.atom_pos,rel_str.atom_pos,rel_str.cell); + reorder_atoms(&rel_str,str); + rel_str_list << new Structure(rel_str); + } + } + } + + LinkedListIterator i_dir(dir_list); + LinkedListIterator i_str(str_list); + LinkedListIterator i_rel_str(rel_str_list); + cerr << "Generating perturbations..." << endl; + for ( ; i_str; i_dir++, i_str++, i_rel_str++) { + char thecwd[MAX_LINE_LEN]; + if (!getcwd(thecwd,MAX_LINE_LEN)) {ERRORQUIT("Pathname too long, Increase MAX_LINE_LEN.");} + chdir_robust(*i_dir); + cerr << *i_dir << endl; + SpaceGroup str_spacegroup; + str_spacegroup.cell=i_rel_str->cell; + find_spacegroup(&str_spacegroup.point_op,&str_spacegroup.trans,i_rel_str->cell,i_rel_str->atom_pos,i_rel_str->atom_type); + Array pert_atom; + Array pert_direction; + find_pertubations(&pert_atom, &pert_direction,*i_rel_str,str_spacegroup); + for (int iv=0; ivcell)*(!i_str->cell)*axes; + { + ofstream file("str_relax.out"); + write_structure(s_str_relax, atom_label, newaxes, file); + } + } + for (int p=0; pcell,enclosed_radius); + rVector3d zerovect(0.,0.,0.); + Structure ideal_str; + calc_pert_str(&ideal_str,ideal_supercell,*i_str,zerovect,zerovect,0.); + { + ofstream idealstrfile("str_ideal.out"); + idealstrfile.setf(ios::fixed); + idealstrfile.precision(sigdig); + write_structure(ideal_str, atom_label, axes, idealstrfile); + } + Structure unpert_str; + rMatrix3d supercell=(i_rel_str->cell)*((!i_str->cell)*ideal_supercell); + calc_pert_str(&unpert_str,supercell,*i_rel_str,zerovect,zerovect,strain); + rMatrix3d newaxes=(1.+strain)*(i_rel_str->cell)*(!i_str->cell)*axes; + { + ofstream unpertstrfile("str_unpert.out"); + unpertstrfile.setf(ios::fixed); + unpertstrfile.precision(sigdig); + write_structure(unpert_str, atom_label, newaxes, unpertstrfile); + } + Structure pert_str; + calc_pert_str(&pert_str,supercell,*i_rel_str,i_rel_str->atom_pos(pert_atom(p)),displ_mag*pert_direction(p),strain); + { + ofstream pertstrfile("str.out"); + pertstrfile.setf(ios::fixed); + pertstrfile.precision(sigdig); + write_structure(pert_str, atom_label, newaxes, pertstrfile); + } + if (!file_exists("force.out")) { + ofstream waitfile("wait"); + } + chdir(".."); + } + if (!olddirstruct) { + chdir(".."); + } + } + chdir(thecwd); + } + } + else { // fit forcek instead of generate pert; + LinkedList ideal_str_list; + LinkedList pert_str_list; + LinkedList unpert_str_list; + LinkedList > forcevector_list; + int nb_row=0; + system("ls */force.out */*/force.out */*/*/force.out 2> /dev/null | sed 's+/force.out++g' > pertlist.out"); + ifstream pertfile("pertlist.out"); + if (!pertfile) {ERRORQUIT("Unable to open pertlist.out.");} + int strcnt=0; + while (skip_delim(pertfile)) { + AutoString dirname; + get_string(&dirname,pertfile); + char thecwd[MAX_LINE_LEN]; + if (!getcwd(thecwd,MAX_LINE_LEN)) {ERRORQUIT("Pathname too long, Increase MAX_LINE_LEN.");} + chdir_robust(dirname); + if (file_exists("str_unpert.out")) { + cerr << strcnt << ") Reading " << dirname << endl; + strcnt++; + Array copyfrom; + Array cellshift; + Structure *pideal_str=new Structure; + { + ifstream file("str_ideal.out"); + if (!file) { + cerr << "Unable to open str_ideal.out in directory " << dirname << endl; + ERRORQUIT("Aborting"); + } + parse_structure_file(&(pideal_str->cell),&(pideal_str->atom_pos),&(pideal_str->atom_type),atom_label,file); + if (pideal_str->atom_pos.get_size()==0) {ERRORQUIT("Unable to read str_ideal.out");} + pideal_str->cell=extrastrain*(pideal_str->cell); + for (int at=0; atatom_pos(); at++) { + pideal_str->atom_pos(at)=extrastrain*(pideal_str->atom_pos(at)); + } + ideal_str_list << pideal_str; + } + Structure *punpert_str=new Structure; + { + ifstream file("str_unpert.out"); + if (!file) { + cerr << "Unable to open str_unpert.out in directory " << dirname << endl; + ERRORQUIT("Aborting"); + } + parse_structure_file(&(punpert_str->cell),&(punpert_str->atom_pos),&(punpert_str->atom_type),atom_label,file); + if (punpert_str->atom_pos.get_size()==0) {ERRORQUIT("Unable to read str_unpert.out");} + Structure ideal_str_novac=*pideal_str; + remove_vacancies(&ideal_str_novac,atom_label,"Vac"); + remove_vacancies(&ideal_str_novac,atom_label,"Va"); + reorder_atoms(punpert_str,ideal_str_novac); + unpert_str_list << punpert_str; + } + Structure *ppert_str=new Structure; + { + ifstream file("str_relax.out"); + if (!file) { + cerr << "Unable to open str_relax.out in directory " << dirname << endl; + ERRORQUIT("Aborting"); + } + parse_structure_file(&(ppert_str->cell),&(ppert_str->atom_pos),&(ppert_str->atom_type),atom_label,file); + if (ppert_str->atom_pos.get_size()==0) {ERRORQUIT("Unable to read str_relax.out");} + reorder_atoms(ppert_str,*punpert_str,©from,&cellshift); + pert_str_list << ppert_str; + } + { + ifstream forcefile("force.out"); + if (!forcefile) { + cerr << "Unable to open force.out in directory " << dirname << endl; + ERRORQUIT("Aborting"); + } + Array *pforce=new Array; + read_force_vector(pforce,forcefile,copyfrom); + { + ofstream tmpf("tmp3.out"); + for (int i=0; iget_size()/3; i++) { + tmpf << (*pforce)(3*i+0) << " " << (*pforce)(3*i+1) << " "<< (*pforce)(3*i+2) << endl; + } + } + forcevector_list << pforce; + nb_row+=pforce->get_size(); + } + } + chdir(thecwd); + } + + int nb_col=0; + { + LinkedListIterator i_s(springsvsl_list); + for (;i_s; i_s++) { + i_s->forcek.resize(2); + i_s->forcek(0).resize(multipoly.get_dim_param()); + i_s->forcek(1).resize(multipoly.get_dim_param()); + nb_col+=i_s->forcek(0).get_size() + i_s->forcek(1).get_size(); + } + } + + Array2d big_eqnmat(nb_row,nb_col); + Array big_force(nb_row); + LinkedListIterator i_ideal_str(ideal_str_list); + LinkedListIterator i_pert_str(pert_str_list); + LinkedListIterator i_unpert_str(unpert_str_list); + LinkedListIterator > i_forcevector(forcevector_list); + LinkedList raw_forcek_data; + strcnt=0; + for (int r=0; i_ideal_str; i_ideal_str++, i_pert_str++, i_unpert_str++, i_forcevector++, strcnt++) { + //cerr << "r= " << r << endl; + Array conc,red_conc; + // if (!calc_concentration(&red_conc, lat,site_type_list,*i_ideal_str)) { + // cerr << "Structure " << strcnt << endl; + // ERRORQUIT("Problem calculating concentration"); + // } + calc_concentration(&red_conc, i_ideal_str->atom_type,atom_label.get_size()); + product(&conc,redtonored,red_conc); + remove_vacancies(&(*i_ideal_str),atom_label,"Vac"); + remove_vacancies(&(*i_ideal_str),atom_label,"Va"); + Array > eqn; + calc_equation_matrix(&eqn,*i_ideal_str,*i_unpert_str,*i_pert_str,&springsvsl_list,dirdep_mat,conc,multipoly,maxfklen); + list_nn_forcek_new(&raw_forcek_data, *i_ideal_str, *i_unpert_str, *i_pert_str); + // cerr << raw_forcek_data.get_size() << endl; + for (int i=0; iget_size(); i++) { + big_force(r)=(*i_forcevector)(i); + for (int j=0; j beta; + Array w; + //cerr << "ols" << endl; + calc_ols(&beta,big_eqnmat,big_force,w,!redun); + + Array force_hat; + //cerr << "prod" << endl; + product(&force_hat,big_eqnmat,beta); + //cerr << "write" << endl; + { + ofstream logfile("fitsvsl.log"); + // logfile.setf(ios::fixed | ios::showpos); + logfile.setf(ios::fixed); + logfile.precision(sigdig); + logfile << "Equation Matrix" << endl; + logfile << big_eqnmat << endl; + logfile << endl; + logfile << "actual force predicted force difference" << endl; + for (int i=0; i i_s(springsvsl_list); + for (int c=0;i_s; i_s++) { + for (int sb=0; sbforcek.get_size(); sb++) { + for (int p=0; pforcek(sb).get_size(); p++) { + i_s->forcek(sb)(p)=beta(c); + c++; + } + } + } + { + ofstream spr_file("slspring.out"); + spr_file.setf(ios::fixed); + spr_file.precision(sigdig); + write_spring_file(spr_file, springsvsl_list, atom_label, maxlpow, dirdep, concpow); + } + + { + ofstream file("fitsvsl.gnu"); + LinkedList bld; + LinkedListIterator i_ideal_str(ideal_str_list); + LinkedListIterator i_unpert_str(unpert_str_list); + for ( ; i_ideal_str; i_ideal_str++, i_unpert_str++) { + find_nn_range(&bld, *i_ideal_str, *i_unpert_str); + } + LinkedListIterator i_s(springsvsl_list); + for (;i_s; i_s++) { + LinkedListIterator i_bld(bld); + for (;i_bld; i_bld++) { + if (i_s->atom_type[0]==i_bld->atom_type[0] && i_s->atom_type[1]==i_bld->atom_type[1] ) break; + if (i_s->atom_type[1]==i_bld->atom_type[0] && i_s->atom_type[0]==i_bld->atom_type[1] ) break; + } + if (i_bld) { + ostrstream line; + line << "f_" << atom_label(i_s->atom_type[0]) << "-" << atom_label(i_s->atom_type[1]) << ".dat" << '\0'; + unlink(line.str()); + file << "set title '" << atom_label(i_s->atom_type[0]) << "-" << atom_label(i_s->atom_type[1]) << "'" << endl; + file << "plot [" << i_bld->minl << ":" << i_bld->maxl << "] "; + for (int sb=0; sbforcek.get_size(); sb++) { + if (dirdep==0 && concpow==0) { + for (int p=0; pforcek(sb).get_size(); p++) { + file << "(" << i_s->forcek(sb)(p) << ")"; + switch(p) { + case 0: + break; + case 1: + file << "*x"; + break; + default: + file << "*x**" << p; + } + if (pforcek(sb).get_size()-1) file << "+"; + } + file << " t '" << (sb==0 ? 's' : 'b') << "', "; + } + file << "'" << line.str() << "' u 1:" << (sb==0 ? '2' : '3'); + if (sbforcek.get_size()-1) file << ","; + } + } + file << endl; + file << "pause -1" << endl; + } + } + { + LinkedListIterator i_bfd(raw_forcek_data); + for (; i_bfd; i_bfd++) { + ostrstream line; + line << "f_" << atom_label(i_bfd->atom_type[0]) << "-" << atom_label(i_bfd->atom_type[1]) << ".dat" << '\0'; + { + ofstream datfile(line.str(),ios::app); + datfile << i_bfd->len << " " << i_bfd->forcek(0) << " " << i_bfd->forcek(1) << endl; + } + } + } + } +} diff --git a/src/fitsvslhelp.hlp b/src/fitsvslhelp.hlp new file mode 100644 index 0000000..cbf8935 --- /dev/null +++ b/src/fitsvslhelp.hlp @@ -0,0 +1,75 @@ +This code determines bond stiffness vs bond length relationship for the purpose +of calculating vibrational properties (with the svsl code). + +It requires the following files as an input. +1) A lattice file (by default, lat.in, but this can be overridden with the -l option) which + allows the code to determine what chemical bonds are present in the system. + The format is as described in the maps documentation (see maps -h). +2) A list of directories containing structures that will be used to calculate force constants + (by default strname.in, but this can be overridden with the -dn option). + Each of the listed directory must contain + a) a str.out file containing an ideal unrelaxed structure that will be used to automatically + determine the nearest neighbor shell, + b) a str_relax.out file containing the relaxed structure that will be used to calculate + bond lengths and that the code will perturb in various ways to determine the force constants. + +The code can operate in two modes: a structure generation mode and a fitting mode (indicated by the +-f option). + +In structure generation mode: + + All the above input files are needed and the option + -er must be specified in order to indicate the size of the supercells generated. + The -er option indicates how far from each other a displaced atom must be from + its periodic images, the code will infer the smallest supercell satisfying this constraint. + Typically, -er should be 3 or 4 times the nearest neighbor distance. All of these distances + are measured using the ideal structures (*/str.out). + + The following parameters have reasonable default values which can be overridden: + -dr specifies the displacement of the perturbed atom, which is 0.2 Angstrom by default. + -ms specifies the maximum (linear) expansion of the structures for the purpose of + lengthing the bond lenght. For instance -ms=0.01 (the default) indicates that the + supercells will be stretched by up to 1% isotropically. + -ns indicates the number of intermediate lattice parameters sampled (by default 2, which is + the minimum in order to be able to determine the length dependence of bond stiffness). + +After the structure generation step: + + Each of the directory specified in strname.in will contain multiple subdirectories, + each of which contains + a) the ideal unrelaxed supercell in a str_ideal.out file. + b) the relaxed but unperturbed supercell in a str_unpert.out file. + c) the actual geometry of perturbed supercell calculation in a str.out file. + The appropriate first-principles calculations can be performed using the other utilities in the atat + package, such as runstruct_vasp. Of course a corresponding vasp.wrap file must given + in order to provide the input parameters for the first-principles calculations. + Make sure that these parameters indicate a static run (no relaxations!). + After all (or some) of these calculations are done, each subdirectory will contain + a force.out file containing the forces acting on each atoms + a str_relax.out file containing the atomic positions (in the same order as in force.out) + +The fitting mode (-f option) of ftsvsl then needs to be used. + The lattice file (e.g. lat.in) must be present and the code will look for all files of the form + */force.out and */*/force.out and the corresponding files */str*.out and */*/str*.out . + The code will then use that information to create the length-dependent force constants + (this may take a few minutes) and ouputs them in + slspring.out + Here is an example of the format of this file: + Al Al (gives the type of bond) + 2 (2 parameters: linear fit is used) + 50.28971 \\ polynomial coeficients of the stiffness vs length relationship for stretching term + 7.88973 / (typically, stiffness is in eV/Angstrom^2 and length is in Angstrom) + 2 \\ + 6.12722 | idem for bending term + -1.01641 / + Ti Al (repeat for each type of chemical bond) + 3 + etc. + The only option controling this process is -op, which specifies the order of the polynomial + used to fit the length dependence (by default -op=1 and a linear fit is used). + (Contact the author for information about the -sf option.) + +Diagnostic files are also output: + fitsvsl.log (a log file) + fitsvsl.gnu and f_*.dat (to plot the s vs l relationship) + diff --git a/src/fixagg.hh b/src/fixagg.hh new file mode 100644 index 0000000..4167797 --- /dev/null +++ b/src/fixagg.hh @@ -0,0 +1,13 @@ +#ifndef __FIXAGG_H__ +#define __FIXAGG_H__ + +template +class Aggregate { +public: + T x; + Aggregate(void) {} + Aggregate(const T &r) {x=r;} + operator T & () {return x;} +}; + +#endif diff --git a/src/fixcell.c++ b/src/fixcell.c++ new file mode 100644 index 0000000..8f53093 --- /dev/null +++ b/src/fixcell.c++ @@ -0,0 +1,75 @@ +#include "lattype.h" +#include "parse.h" +#include "getvalue.h" +#include "version.h" + +int main(int argc, char *argv[]) { + int dohelp=0; + int sigdig=6; + int noaxes=0; + int bravaistype=0; + int dummy=0; + AskStruct options[]={ + {"","fixcell " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + // {"-h","Display more help",BOOLVAL,&dohelp}, + {"-d","Use all default values",BOOLVAL,&dummy}, + {"-c","read and print cell in cartesian only (no axes specified)",BOOLVAL,&noaxes}, + {"-z","Tolerance for finding symmetry operations (default: 1e-3)",REALVAL,&zero_tolerance}, + {"-b","print bravais lattice type only and conventional (potentially not primitive) cell",BOOLVAL,&bravaistype}, + + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << "Reads a cell from stdin writes a 'symmetrized' version of it to stdout" << endl; + return 1; + } + + // read cell; + rMatrix3d axes,cell; + axes.identity(); + if (!noaxes) { + read_cell(&axes,cin); + } + for (int i=0; i<3; i++) { + rVector3d v; + cin >> v; + cell.set_column(i,axes*v); + } + + if (fabs(det(cell)) +#include "xtalutil.h" +#include "getvalue.h" +#include "parse.h" +#include "version.h" + +Real calc_avg_spin(Real maxspin, Real x) { + if (x>=MAXFLOAT) { + return(maxspin); + } + Real num=0.; + Real den=0.; + for (Real spin=-maxspin; spin<=maxspin+zero_tolerance; spin+=1.) { + num+=spin*exp(spin*x); + den+=exp(spin*x); + } + return (num/den); +} + +Real find_avg_spin(Real maxspin, Real x) { + if (x>=MAXFLOAT) { + return(maxspin); + } + Real below=0.; + Real above=maxspin; + while ((above-below)>1e-5) { + Real avg=(above+below)/2.; + if (calc_avg_spin(maxspin,avg*x)> T1 >> nT; + dT=(T1-T0)/MAX(1,nT-1); + } + + AskStruct options[]={ + {"","Free energy - MAGnetic contribution " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-s","Input file defining the structure (default: str.out)",STRINGVAL,&strfilename}, + {"-ma","Magnetic atom",STRINGVAL,&magatom}, + {"-cc","Coupling constant",REALVAL,&coupling}, + {"-sp","Spin",REALVAL,&maxspin}, + {"-T0","Minimum temperature (default: 0)",REALVAL,&T0}, + {"-T1","Maximum temperature (default: 2000)",REALVAL,&T1}, + {"-dT","Temperature step (default: 100)",REALVAL,&dT}, + {"-kb","Boltzman's constant (default: in eV/K)",REALVAL,&kboltzman}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + Structure str; + Array labellookup; + Array label; + { + ifstream strfile(strfilename); + if (!strfile) ERRORQUIT("Unable to open structure file"); + parse_lattice_file(&str.cell, &str.atom_pos, &str.atom_type, &labellookup, &label, strfile); + wrap_inside_cell(&str.atom_pos,str.atom_pos,str.cell); + } + int magindex=-1; + for (int at=0; at +#include "misc.h" + +#define RESULT_FORALLi(body) \ + FixedVector result;\ + for (int i=0; i + class FixedVector { + public: + T x[D]; + public: +/* + FixedVector(void) { +// FORALLi {x[i]=(T)0;} + } + FixedVector(const FixedVector& a) { + FORALLi {x[i]=a.x[i];} + } + void operator=(const FixedVector& a) { + FORALLi {x[i]=a.x[i];} + } +*/ + void set(T *a) { + for (int i=0; i& a, const FixedVector& b) { + FORALLi {if (a.x[i]!=b.x[i]) return 0;} + return 1; + } + friend int operator!=(const FixedVector& a, const FixedVector& b) { + FORALLi {if (a.x[i]!=b.x[i]) return 1;} + return 0; + } + FixedVector operator-(void) const { + RESULT_FORALLi( result.x[i]=-x[i] ); + } + friend FixedVector operator-(const FixedVector& a,const FixedVector& b) { + RESULT_FORALLi( result.x[i]=a.x[i]-b.x[i] ); + } + friend FixedVector operator+(const FixedVector& a,const FixedVector& b) { + RESULT_FORALLi( result.x[i]=a.x[i]+b.x[i] ); + } + friend FixedVector operator*(T a,const FixedVector& b) { + RESULT_FORALLi( result.x[i]=a*b.x[i] ); + } + friend FixedVector operator*(const FixedVector& b,T a) { + RESULT_FORALLi( result.x[i]=b.x[i]*a ); + } + friend FixedVector operator/(const FixedVector& b,T a) { + RESULT_FORALLi( result.x[i]=b.x[i]/a ); + } + friend T operator*(const FixedVector& a,const FixedVector& b) { + T result=(T)0; + FORALLi { result+=a.x[i]*b.x[i]; } + return result; + } + friend T norm2(const FixedVector& a) { + T result=(T)0; + FORALLi { result+=a.x[i]*a.x[i]; } + return result; + } + friend Real norm(const FixedVector& a) { + Real result=0.; + FORALLi { result+=(Real)(a.x[i]*a.x[i]); } + return sqrt(result); + } + Real normalize(void) { + Real norm=0.; + { FORALLi { norm+=(Real)(x[i]*x[i]); } } + norm=sqrt(norm); + { FORALLi {x[i]=(T)((Real)x[i]/norm);} } + return norm; + } + friend T max_norm(const FixedVector& a) { + T result=0; + FORALLi { if (ABS(a.x[i])>result) result=ABS(a.x[i]); } + return result; + } + friend T l1_norm(const FixedVector& a) { + T result=0; + FORALLi { result+=ABS(a.x[i]); } + return result; + } + void operator+=(const FixedVector& a) { + FORALLi { x[i]+=a.x[i]; } + } + void operator-=(const FixedVector& a) { + FORALLi { x[i]-=a.x[i]; } + } + }; + +template + class Vector2d: public FixedVector { + public: + using FixedVector::x; + Vector2d(void) {} + Vector2d(T _x, T _y) {x[0]=_x; x[1]=_y;} + Vector2d(const FixedVector& a) { + x[0]=a.x[0]; + x[1]=a.x[1]; + } + void operator=(const FixedVector& a) { + x[0]=a.x[0]; + x[1]=a.x[1]; + } + //cross product; + friend T operator^(const FixedVector& a,const FixedVector& b) { + return a.x[0]*b.x[1]-a.x[1]*b.x[0]; + } + }; + +template + class Vector3d: public FixedVector { + public: + using FixedVector::x; + Vector3d(void) {} + Vector3d(T _x, T _y, T _z) {x[0]=_x; x[1]=_y; x[2]=_z;} + Vector3d(const FixedVector& a) { + x[0]=a.x[0]; + x[1]=a.x[1]; + x[2]=a.x[2]; + } + void operator=(const FixedVector& a) { + x[0]=a.x[0]; + x[1]=a.x[1]; + x[2]=a.x[2]; + } + //cross product; + friend Vector3d operator^(const FixedVector& a,const FixedVector& b) { + return Vector3d( + a.x[1]*b.x[2]-a.x[2]*b.x[1], + a.x[2]*b.x[0]-a.x[0]*b.x[2], + a.x[0]*b.x[1]-a.x[1]*b.x[0] + ); + } + }; + +#ifdef STREAM_VECTOR + +#include + +template +istream& operator>>(istream& s, Vector2d &v) { + s >> v.x[0] >> v.x[1]; + return s; +} + +template +istream& operator>>(istream& s, Vector3d &v) { + s >> v.x[0] >> v.x[1] >> v.x[2]; + return s; +} + +template +ostream& operator<<(ostream& s, const FixedVector &v) { + s << v.x[0] << " " << v.x[1]; + return s; +} + +template +ostream& operator<<(ostream& s, const FixedVector &v) { + s << v.x[0] << " " << v.x[1] << " " << v.x[2]; + return s; +} + +#endif + +#define RESULT_FORALLij(body) \ + FixedMatrix result;\ + for (int i=0; i + class FixedMatrix { + public: + T x[D][D]; + public: +/* + FixedMatrix(void) {} + FixedMatrix(const FixedMatrix& a) { + FORALLij {x[i][j]=a.x[i][j];} + } + void operator=(const FixedMatrix& a) { + FORALLij {x[i][j]=a.x[i][j];} + } +*/ + void set(T *a) { + int k=0; + for (int i=0; i operator-(void) const { + RESULT_FORALLij( result.x[i][j]=-x[i][j] ); + } + void set_column(int column, const FixedVector &vector) { + FORALLi {x[i][column]=vector.x[i];} + } + void set_row(int row, const FixedVector &vector) { + FORALLi {x[row][i]=vector.x[i];} + } + FixedVector get_column(int column) const { + FixedVector result; + FORALLi {result.x[i]=x[i][column];} + return result; + } + FixedVector get_row(int row) const { + FixedVector result; + FORALLi {result.x[i]=x[row][i];} + return result; + } + void diag(const FixedVector &v) { + zero(); + FORALLi {(*this)(i,i)=v(i);} + } + friend T max_norm(const FixedMatrix& a) { + T result=0; + FORALLij { if (ABS(a.x[i][j])>result) result=ABS(a.x[i][j]); } + return result; + } + friend Real norm(const FixedMatrix& a) { + Real result=0; + FORALLij { result+=(Real)(a.x[i][j]*a.x[i][j]); } + return sqrt(result); + } + friend FixedMatrix operator-(const FixedMatrix& a,const FixedMatrix& b) { + RESULT_FORALLij( result.x[i][j]=a.x[i][j]-b.x[i][j] ); + } + friend FixedMatrix operator+(const FixedMatrix& a,const FixedMatrix& b) { + RESULT_FORALLij( result.x[i][j]=a.x[i][j]+b.x[i][j] ); + } + friend FixedMatrix operator*(T k,const FixedMatrix& b) { + RESULT_FORALLij( result.x[i][j]=k*b.x[i][j] ); + } + friend FixedMatrix operator*(const FixedMatrix& b,T k) { + RESULT_FORALLij( result.x[i][j]=b.x[i][j]*k ); + } + friend FixedMatrix operator/(const FixedMatrix& b,T k) { + RESULT_FORALLij( result.x[i][j]=b.x[i][j]/k ); + } + friend FixedMatrix operator*(const FixedMatrix& a,const FixedMatrix& b) { + RESULT_FORALLij( + result.x[i][j]=(T)0; + for (int k=0; k operator*(const FixedMatrix& m, const FixedVector& v) { + FixedVector result; + for (int i=0; i operator~(const FixedMatrix& a) { + RESULT_FORALLij( result.x[i][j]=a.x[j][i] ); + } + void identity(void) { + FORALLij {x[i][j]=(i==j ? 1 : 0);} + } + void zero(void) { + FORALLij {x[i][j]=(T)0.;} + } + friend T trace(const FixedMatrix& a) { + T sum=(T)0; + for (int i=0; i& a, const FixedMatrix& b) { + FORALLij {if (a.x[i][j]!=b.x[i][j]) return 0;} + return 1; + } + }; + +template + class Matrix2d: public FixedMatrix { + public: + using FixedMatrix::x; + Matrix2d(void) {} + Matrix2d(const FixedMatrix& a) { + x[0][0]=a.x[0][0]; + x[0][1]=a.x[0][1]; + x[1][0]=a.x[1][0]; + x[1][1]=a.x[1][1]; + } + Matrix2d(T a, T b, T c, T d) { + x[0][0]=a; + x[0][1]=b; + x[1][0]=c; + x[1][1]=d; + } + void set_diagonal(T a, T b) { + FixedMatrix::zero(); + x[0][0]=a; + x[1][1]=b; + } + void operator=(const FixedMatrix& a) { + x[0][0]=a.x[0][0]; + x[0][1]=a.x[0][1]; + x[1][0]=a.x[1][0]; + x[1][1]=a.x[1][1]; + } + friend T det(const FixedMatrix& a) { + return a.x[0][0]*a.x[1][1]-a.x[1][0]*a.x[0][1]; + } + //inverse; + friend Matrix2d operator!(const FixedMatrix& a) { + T d=det(a); + Matrix2d result; + result.x[0][0]= a.x[1][1]/d; + result.x[0][1]=-a.x[0][1]/d; + result.x[1][0]=-a.x[1][0]/d; + result.x[1][1]= a.x[0][0]/d; + return result; + } + }; + +template + class Matrix3d: public FixedMatrix { + public: + using FixedMatrix::x; + Matrix3d(void) {} + Matrix3d(const FixedMatrix& a) { + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + x[i][j]=a.x[i][j]; + } + } + } + void set_diagonal(T a, T b, T c) { + FixedMatrix::zero(); + x[0][0]=a; + x[1][1]=b; + x[2][2]=c; + } + void operator=(const FixedMatrix& a) { + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + x[i][j]=a.x[i][j]; + } + } + } + friend T det(const FixedMatrix& a) { + return + a.x[0][0] * (a.x[1][1]*a.x[2][2] -a.x[1][2]*a.x[2][1])+ + a.x[0][1] * (a.x[1][2]*a.x[2][0] -a.x[1][0]*a.x[2][2])+ + a.x[0][2] * (a.x[1][0]*a.x[2][1] -a.x[1][1]*a.x[2][0]); + } + //inverse; + friend FixedMatrix operator!(const FixedMatrix& a) { + T d=det(a); + Matrix3d result; + result.x[0][0]=(+a.x[1][1]*a.x[2][2]-a.x[1][2]*a.x[2][1])/d; + result.x[0][1]=(-a.x[0][1]*a.x[2][2]+a.x[0][2]*a.x[2][1])/d; + result.x[0][2]=(+a.x[0][1]*a.x[1][2]-a.x[0][2]*a.x[1][1])/d; + result.x[1][0]=(-a.x[1][0]*a.x[2][2]+a.x[1][2]*a.x[2][0])/d; + result.x[1][1]=(+a.x[0][0]*a.x[2][2]-a.x[0][2]*a.x[2][0])/d; + result.x[1][2]=(-a.x[0][0]*a.x[1][2]+a.x[0][2]*a.x[1][0])/d; + result.x[2][0]=(+a.x[1][0]*a.x[2][1]-a.x[1][1]*a.x[2][0])/d; + result.x[2][1]=(-a.x[0][0]*a.x[2][1]+a.x[0][1]*a.x[2][0])/d; + result.x[2][2]=(+a.x[0][0]*a.x[1][1]-a.x[0][1]*a.x[1][0])/d; + return result; + } + }; + +#ifdef STREAM_VECTOR + +template +ostream& operator<<(ostream& s, const FixedMatrix &a) { + for (int i=0; i<2; i++) { + for (int j=0; j<2; j++) { + s << a.x[i][j] << " "; + } + s << endl; + } + return s; +} + +template +ostream& operator<<(ostream& s, const FixedMatrix &a) { + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + s << a.x[i][j] << " "; + } + s << endl; + } + return s; +} + +template +istream& operator>>(istream& s, Matrix2d &a) { + for (int i=0; i<2; i++) { + for (int j=0; j<2; j++) { + s >> a.x[i][j]; + } + } + return s; +} + +template +istream& operator>>(istream& s, Matrix3d &a) { + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + s >> a.x[i][j]; + } + } + return s; +} + +#endif + +template + class BoundingBox { + public: + FixedVector min,max; + public: + BoundingBox(void) {} + BoundingBox(const FixedVector &_min,const FixedVector &_max): min(_min), max(_max) {} + inline void before_update(void); + void update(const FixedVector& v) { + FORALLi { + if (v.x[i]max.x[i]) max.x[i]=v.x[i]; + } + } + int is_in(const FixedVector &v) const { + FORALLi { + if (v.x[i]max.x[i]) return 0; + } + return 1; + } + }; + +inline void BoundingBox::before_update(void) { + for (int i=0; i<3; i++) { + min.x[i]= MAXINT; + max.x[i]=-MAXINT; + } +} + +inline void BoundingBox::before_update(void) { + for (int i=0; i<3; i++) { + min.x[i]= MAXFLOAT; + max.x[i]=-MAXFLOAT; + } +} + +inline void BoundingBox::before_update(void) { + for (int i=0; i<2; i++) { + min.x[i]= MAXINT; + max.x[i]=-MAXINT; + } +} + +inline void BoundingBox::before_update(void) { + for (int i=0; i<2; i++) { + min.x[i]= MAXFLOAT; + max.x[i]=-MAXFLOAT; + } +} + +#endif diff --git a/src/gce.c++ b/src/gce.c++ new file mode 100644 index 0000000..e4dc1d8 --- /dev/null +++ b/src/gce.c++ @@ -0,0 +1,395 @@ +#include +#include "parse.h" +#include "clus_str.h" +#include "getvalue.h" +#include "ctype.h" +#include "version.h" +#include "plugin.h" +#include "gceutil.h" + +#define MAXMULTIPLET 6 + +extern char *helpstring; + +int main(int argc, char *argv[]) { + char *delim="\t"; + int dohelp=0; + Array maxd(MAXMULTIPLET+1); + zero_array(&maxd); + char *latticefilename="lat.in"; + char *strfilename="str.out"; + int doconc=0; + int dosym=0; + int doclus=0; + int readclusters=0; + int sigdig=5; + int noempty=0; + int nopoint=0; + int rndcorr=0; + char *ecifile=""; + int multincl=0; + char *corrfunc_label="trigo"; + char *gce_label="tensor"; + int printnum=0; + AskStruct options[]={ + {"","Generalized Cluster Expansion " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-2","Maximum distance between two points within a pair",REALVAL,&maxd(2)}, + {"-3","Maximum distance between two points within a triplet",REALVAL,&maxd(3)}, + {"-4","Maximum distance between two points within a quadruplet",REALVAL,&maxd(4)}, + {"-5","Maximum distance between two points within a quintuplet",REALVAL,&maxd(5)}, + {"-6","Maximum distance between two points within a sextuplet",REALVAL,&maxd(6)}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latticefilename}, + {"-s","Input file defining the structure (default: str.out)",STRINGVAL,&strfilename}, + {"-pc","Print composition only",BOOLVAL,&doconc}, + {"-sym","Just find space group",BOOLVAL,&dosym}, + {"-clus","Just find clusters",BOOLVAL,&doclus}, + {"-c","Read clusters.out file instead of writing it",BOOLVAL,&readclusters}, + {"-z","Tolerance for finding symmetry operations (default: 1e-3)",REALVAL,&zero_tolerance}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-noe","Do not include empty cluster",BOOLVAL,&noempty}, + {"-nop","Do not include point cluster(s)",BOOLVAL,&nopoint}, + {"-rnd","Print correlation of the random state of the same composition as the input structure",BOOLVAL,&rndcorr}, + {"-eci","Predict quantity using ECI in specified file",STRINGVAL,&ecifile}, + {"-mi","Multiplicities are already included in ECI file",BOOLVAL,&multincl}, + {"-crf","Select correlation functions (default: trigo)",STRINGVAL,&corrfunc_label}, + {"-gce","Select type of Generalized Cluster Expansion (default: tensor)",STRINGVAL,&gce_label}, + {"-nb","Print structure number",BOOLVAL,&printnum} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + Structure lattice; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream latticefile(latticefilename); + if (!latticefile) ERRORQUIT("Unable to open lattice file"); + parse_lattice_file(&lattice.cell, &lattice.atom_pos, &lattice.atom_type, &labellookup, &label, latticefile, &axes); + wrap_inside_cell(&lattice.atom_pos,lattice.atom_pos,lattice.cell); + } + SpaceGroup spacegroup; + spacegroup.cell=lattice.cell; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,lattice.cell,lattice.atom_pos,lattice.atom_type); + if (contains_pure_translations(spacegroup.point_op,spacegroup.trans)) { + cerr << "Warning: unit cell is not primitive." << endl; + } + { + ofstream symfile("sym.out"); + symfile.setf(ios::fixed); + symfile.precision(sigdig); + symfile << spacegroup.point_op.get_size() << endl; + for (int i=0; i clusterlist; + if (doconc) { + ofstream file("atoms.out"); + for (int i=0; i0) maxp--; + if (maxp==0) ERRORQUIT("Specify -2=range -3=range etc."); + Array pclusterbanks(maxp+1); + Array nbcluster(maxp+1); + pclusterbanks(1)=new MultiClusterBank(lat_func,1,spacegroup); + nbcluster(1)=pclusterbanks(1)->get_cluster_list().get_size(); + for (int m=2; m<=maxp; m++) { + pclusterbanks(m)=new MultiClusterBank(lat_func,m,spacegroup); + if (maxd(m)>0) { + while (get_length_quick((*pclusterbanks(m))->clus)get_current_index(); + } + if (!check_plug_in(SymmetryObeyingObject(),gce_label)) { + ERRORQUIT("Wrong GCE label. Aborting"); + } + SymmetryObeyingObject *pdummysymobj=GenericPlugIn::create(gce_label); + + if (! noempty) { + LinkedList listobj; + pdummysymobj->find_basis(&listobj, spacegroup); + LinkedListIterator i(listobj); + for( ; i; i++) { + clusterlist << new GeneralizedCluster(MultiCluster(0),i); + } + listobj.detach_all(); + } + for (int m=(nopoint ? 2 : 1); m<=maxp; m++) { + pclusterbanks(m)->reset(); + for (int c=0; c listobj; + pdummysymobj->find_basis(&listobj, subgroup); + LinkedListIterator i(listobj); + for( ; i; i++) { + clusterlist << new GeneralizedCluster(*pclusterbanks(m),i); + } + listobj.detach_all(); + (*pclusterbanks(m))++; + } + delete pclusterbanks(m); + } + delete pdummysymobj; + { + ofstream clusterfile("clusters.out"); + clusterfile.setf(ios::fixed); + clusterfile.precision(sigdig); + LinkedListIterator icluster(clusterlist); + for ( ; icluster; icluster++) { + int mult=calc_multiplicity(icluster->clus, spacegroup.cell, spacegroup.point_op, spacegroup.trans); + clusterfile << mult << endl; + clusterfile << get_length_quick(icluster->clus.clus) << endl; + clusterfile << icluster->clus.clus.get_size() << endl; + for (int i=0; iclus.clus.get_size(); i++) { + clusterfile << ((!axes)*(icluster->clus.clus(i))) << " " << icluster->clus.site_type(i) << " " << icluster->clus.func(i) << endl; + } + clusterfile << gce_label << endl; + icluster->psymobj->write(clusterfile); + clusterfile << endl; + } + } + } + else { + ifstream clusterfile("clusters.out"); + if (!clusterfile) ERRORQUIT("Unable to open clusters.out file"); + read_clusters_and_eci(&clusterlist,NULL,clusterfile,clusterfile,axes); + } + if (doclus) return 0; + } + + // calccorr; + + LinkedList > eq_clusterlist; + LinkedListIterator icluster(clusterlist); + for ( ; icluster; icluster++) { + Array *pmulticlus=new Array; + find_equivalent_clusters(pmulticlus, *icluster, spacegroup.cell, spacegroup.point_op, spacegroup.trans); + eq_clusterlist << pmulticlus; + } + + // initialize a table of correlation functions; + if (!check_plug_in(CorrFuncTable(),corrfunc_label)) { + ERRORQUIT("Aborting: invalid correlation function label"); + } + CorrFuncTable *pcorrfunc=GenericPlugIn::create(corrfunc_label); + pcorrfunc->init_from_site_type_list(labellookup); + + Array eci; + if (strlen(ecifile)>0) { + ifstream file(ecifile); + if (!file) ERRORQUIT("Unable to open ECI file."); + LinkedList ecilist; + while (skip_delim(file)) { + Real e; + file >> e; + ecilist << new Real(e); + } + LinkedList_to_Array(&eci,ecilist); + if (clusterlist.get_size()!=eci.get_size()) ERRORQUIT("Number of ECI does not match number of clusters."); + } + + Structure str; + ifstream strfile(strfilename); + if (!strfile) ERRORQUIT("Unable to open structure file"); + int strnum=1; + while (!strfile.eof()) { + parse_structure_file(&str.cell,&str.atom_pos,&str.atom_type,label,strfile); + skip_to_next_structure(strfile); + wrap_inside_cell(&str.atom_pos,str.atom_pos,str.cell); + + ofstream logfile("corrdump.log"); + logfile.setf(ios::fixed); + logfile.precision(sigdig); + rMatrix3d supercell=(!lattice.cell)*str.cell; + rMatrix3d rounded_supercell=to_real(to_int(supercell)); + rMatrix3d transfo=lattice.cell*rounded_supercell*(!str.cell); + logfile << "strain=" << endl << (FixedMatrix &)transfo << endl; + str.cell=transfo*str.cell; + for (int i=0; i spin(ideal_str.atom_type.get_size()); + zero_array(&spin); + + for (int i=0; i conc; + Structure cstr(ideal_str); + fix_atom_type(&cstr,lattice,labellookup,0); + calc_concentration(&conc,lattice,labellookup,cstr); + for (int i=0; i pointcorr; + LinkedListIterator > ipcluster(eq_clusterlist); + for ( ; ipcluster; ipcluster++) { + if ((*ipcluster)(0).clus.get_size() > 1) break; + if ((*ipcluster)(0).clus.get_size()==1) { + pointcorr << new Real(calc_correlation(ideal_str, *ipcluster, spacegroup.cell, *pcorrfunc)); + } + } + int ieci=0; + LinkedListIterator icluster(clusterlist); + LinkedListIterator > ieqcluster(eq_clusterlist); + for ( ; icluster; icluster++, ieqcluster++, ieci++) { + Real rho=1.; + for (int s=0; sclus.get_size(); s++) { + LinkedListIterator ipcluster(clusterlist); + while (ipcluster->clus.get_size()==0) {ipcluster++;} + LinkedListIterator ipcorr(pointcorr); + while (1) { + if (ipcluster->site_type(0)==icluster->site_type(s) && ipcluster->func(0)==icluster->func(s)) { + if (equivalent_by_symmetry(ipcluster->clus(0),icluster->clus(s),spacegroup.cell,spacegroup.point_op,spacegroup.trans)) { + break; + } + } + ipcluster++; + ipcorr++; + } + rho*=(*ipcorr); + } + if (strlen(ecifile)>0) { + pred+=eci(ieci)*(multincl ? 1 : ieqcluster->get_size())*rho; + } + else { + cout << rho << delim; + } + } + */ + } + else { + SymmetryObeyingObject *pdummysymobj=GenericPlugIn::create(gce_label); + LinkedList rholist; + SymmetryObeyingObject *ppred=pdummysymobj->clone(); + ppred->zero(); + int ieci=0; + LinkedListIterator > icluster(eq_clusterlist); + for ( ; icluster; icluster++, ieci++) { + SymmetryObeyingObject *prho=pdummysymobj->clone(); + calc_correlation(prho, ideal_str, *icluster, spacegroup.cell, *pcorrfunc); + rholist << prho; + if (strlen(ecifile)>0) { + ppred->add(prho,eci(ieci)*(multincl ? 1 : icluster->get_size())); + } + } + Array dummydata; + ppred->get_data(&dummydata); + int dimsymobj=dummydata.get_size(); + + if (strlen(ecifile)>0) { + ppred->write(cout); + } + else { + for (int i=0; i > icluster(eq_clusterlist); + LinkedListIterator irholist(rholist); + for (; icluster; icluster++, irholist++) { + Array data; + irholist->get_data(&data); + cout << data(i) << delim; + } + if (iWhat does this program do? + +1) It reads the lattice file (specified by the -l option). (See format below.) + +2) It determines the space group of this lattice and + writes it to the sym.out file. + +3) It finds all symmetrically distinct clusters-'object' pairs that satisfy the + conditions specified by the options -2 through -6. + For instance, if -2=2.1 -3=1.1 is specified, + only pair clusters shorter than 2.1 units and triplet clusters containing + no pairs longer than 1.1 will be selected. + This produces a generalized cluster expansion (GCE) representating a relationship + between a property of type 'object' and a crystal structure. + The 'object' can be anything obeying well-defined symmetry rules. + By default the 'object' is a tensor of rank defined in the file gcetensor.in (see below for format). + +4) It writes all clusters found to clusters.out. + If the -c option is specified, clusters are read from clusters.out instead. + +5) It reads the structure file (specified by the -s option). + +6) It determines, for that structure, the correlations associated with all + the clusters chosen earlier. + This information is then output on one line, in the same order as in the + clusters.out file. See below for conventions used to calculate correlations. + +7) It writes the files corrdump.log containting the list of all adjustements + needed to map the (possibly relaxed) structure onto the ideal lattice. + +->File formats + +Lattice and structure files + +Both the lattice and the structure files have a similar structure. +First, the coordinate system a,b,c is specified, either as +[a] [b] [c] [alpha] [beta] [gamma] +or as: +[ax] [ay] [az] +[bx] [by] [bz] +[cx] [cy] [cz] +Then the lattice vectors u,v,w are listed, expressed in the coordinate system +just defined: +[ua] [ub] [uc] +[va] [vb] [vc] +[wa] [wb] [wc] +Finally, atom positions and types are given, expressed in the same coordinate system +as the lattice vectors: +[atom1a] [atom1b] [atom1c] [atom1type] +[atom2a] [atom2b] [atom2c] [atom1type] +etc. + +In the lattice file: +-The atom type is a comma-separated list of the atomic + symbols of the atoms that can sit the lattice site. +-The first symbol listed is assigned a spin of -1. +-When only one symbol is listed, this site is ignored for the purpose + of calculating correlations, but not for determining symmetry. +-The atomic symbol 'Vac' is used to indicate a vacancy. + +In the structure file: +-The atom type is just a single atomic symbol + (which, of course, has to be among the atomic symbols given in the + lattice file). +-Vacancies do not need to be specified. + +Examples + +The fcc lattice of the Cu-Au system: +1 1 1 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 Cu,Au + +The Cu3Au L1_2 structure: +1 1 1 90 90 90 +1 0 0 +0 1 0 +0 0 1 +0 0 0 Au +0.5 0.5 0 Cu +0.5 0 0.5 Cu +0 0.5 0.5 Cu + +A lattice for the Li_x Co_y Al_(1-y) O_2 system: +0.707 0.707 6.928 90 90 120 + 0.3333 0.6667 0.3333 +-0.6667 -0.3333 0.3333 + 0.3333 -0.3333 0.3333 + 0 0 0 Li,Vac + 0.3333 0.6667 0.0833 O + 0.6667 0.3333 0.1667 Co,Al + 0 0 0.25 O + +File format of gcetensor.in + +[rank] +[list of pairs of indices indicating which simultaneous index permutations leave the tensor invariant] +[next list, etc...] + +Examples + for strain or stress: + 2 + 0 1 + + for elastic constants: + 4 + 0 1 + 2 3 + 0 2 1 3 + +Symmetry file format (sym.out) + +[number of symmetry operations] + +3x3 matrix: point operation + +1x3 matrix: translation + +repeat, etc. + +Note that if you enter more than one unit cell of the lattice, +sym.out will contain some pure translations as symmetry elements. + +Cluster file format (clusters.out) + +for each cluster: +[multiplicity] +[length of the longest pair within the cluster] +[number of points in cluster] +[coordinates of 1st point] [number of possible species-2] [cluster function] +[coordinates of 2nd point] [number of possible species-2] [cluster function] +etc. +[keyword describing type 'object' in the GCE, for instance: tensor] +['object' data] + +repeat, etc. + + +When the 'object' is a tensor the 'object' data is: +[rank] +[3's repeated 'rank' times] +[3^rank] +[elements of the tensor] + + +(Multiplicity and length are ignored when reading in the clusters.out file.) +For each 'point' the following convention apply +-The coordinates are expressed in the coordinate system given in + the first line (or the first 3 lines) of the lat.in file. +-The 'number of possible species' distinguishes between binaries, ternaries, etc... + Since each site can accomodate any number of atom types, + this is specified for each point of the cluster. +-In multicomponent system, the cluster function are numbered from 0 to number of possible species-2. +In the simple of a binary system [number of possible species-2] [cluster function] are just 0 0. +For a ternary, the possible values are 1 0 and 1 1. +All the utilities that are not yet multicomponent-ready just ignore the entries [number of possible species-2] [cluster function]. + +Convention used to calculate the correlations: + The cluster functions in a m-component system are defined as + function '0' : -cos(2*PI* 1 *s/m) + function '1' : -sin(2*PI* 1 *s/m) + . + . + . + -cos(2*PI*[m/2]*s/m) + -sin(2*PI*[m/2]*s/m) <--- the last sin( ) is omitted if m is even + where the occupation variable s can take any values in {0,...,m-1} + and [...] denotes the 'round down' operation. + Note that, these functions reduce to the single function (-1)^s in the binary case. + +Special options: + +-sym: Just find the space group and then abort. +-clus: Just find space group and clusters and then abort. +-z: To find symmetry operations, atoms are considered to lie on + top of one another when they are less than this much apart. +-sig: Number of significant digits printed. + + +->Cautions + +When vacancies are specified, the program may not be able to warn +you that the structure and the lattice just don't fit. +Carefully inspect the corrdump.log file! + +If the structure has significant cell shape relaxations, the program +will be unable to find how it relates to the ideal lattice. +The problem gets worse as the supercell size of the structure gets +bigger. + +There is no limit on how far an atom in a structure can be from +the ideal lattice site. The program first finds the atom that can +be the most unambiguously assigned to a lattice site. It then +finds the next best assignement and so on. This is actually a +pretty robust way to do this. But keep in mind that the -z option +does NOT control this process. diff --git a/src/gceutil.c++ b/src/gceutil.c++ new file mode 100644 index 0000000..c45593b --- /dev/null +++ b/src/gceutil.c++ @@ -0,0 +1,193 @@ +#include "gceutil.h" +#include +#include "tensorsym.h" +#include "parse.h" + +GenericPlugIn *GenericPlugIn::list=NULL; +SpecificPlugIn TensorSymmetryObeyingObjectPlugIn("tensor"); + +int TensorSymmetryObeyingObject::rank=-1; +Array > TensorSymmetryObeyingObject::flip(0); + +TensorSymmetryObeyingObject::TensorSymmetryObeyingObject(void): SymmetryObeyingObject(), tensor() { + if (rank==-1) { + ifstream file("gcetensor.in"); + if (!file) {ERRORQUIT("Cannot open gcetensor.in to read rank of tensor");} + file >> rank; + skip_delim(file); + LinkedList > list; + while (!file.eof()) { + skip_delim(file); + LinkedList rowcollist; + while (!is_eol(file)) { + int row=-1,col=-1; + file >> row >> col; + if (row==-1 || col==-1) {ERRORQUIT("Error reading gcetensor.in");} + rowcollist << new int(row) << new int(col); + } + Array rowcol; + LinkedList_to_Array(&rowcol,rowcollist); + if (rowcol.get_size()==0) break; + list << new Array(rowcol); + } + LinkedList_to_Array(&flip,list); + } + Array size(rank); + fill_array(&size,3); + tensor.resize(size); + tensor.zero(); +} + +TensorSymmetryObeyingObject::TensorSymmetryObeyingObject(const rTensor &t): SymmetryObeyingObject(), tensor() { + tensor=t; +} + +void TensorSymmetryObeyingObject::find_basis(LinkedList *plistobj, const SpaceGroup &space_group) { + Array basis; + find_symmetric_basis(&basis,rank,space_group,flip); + for (int i=0; itensor; + t*=mult; + tensor+=t; +} + +void TensorSymmetryObeyingObject::get_data(Array *pdata) { + *pdata=tensor.vectorize(); +} + +void TensorSymmetryObeyingObject::write(ostream &file) { + file << tensor.get_size(); + file << tensor.vectorize(); +} + +void TensorSymmetryObeyingObject::read(istream &file) { + Array size; + file >> size; + tensor.resize(size); + file >> tensor.vectorize(); +} + +// gce begin + +void find_equivalent_clusters(Array *pclusters, const GeneralizedCluster &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans) { + rMatrix3d inv_cell=!cell; + LinkedList list; + for (int op=0; opclus),point_op(op),trans(op),cluster.clus); + ptransfo_cluster->psymobj=cluster.psymobj->clone(); + ptransfo_cluster->psymobj->apply_symmetry(point_op(op),trans(op)); + LinkedListIterator i(list); + for ( ; i; i++) { + if (equivalent_mod_cell(i->clus,ptransfo_cluster->clus,inv_cell)) break; + } + if (!i) { + list << ptransfo_cluster; + } + else { + delete ptransfo_cluster; + } + } + LinkedList_to_Array(pclusters,list); +} + +int calc_multiplicity(const GeneralizedCluster &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans) { + Array equiv; + find_equivalent_clusters(&equiv, cluster,cell,point_op,trans); + return equiv.get_size(); +} + +void calc_correlation(SymmetryObeyingObject *gencorr, const Structure &str, const Array &clusters, const rMatrix3d &cell, const Array > > &corrfunc) { + SymmetryObeyingObject *accum=gencorr->clone(); + accum->zero(); + int count=0; + rMatrix3d inv_strcell=!str.cell; + LatticePointInCellIterator t(cell,str.cell); + for ( ;t; t++) { + for (int c=0; cadd(clusters(c).psymobj,sigma); + count++; + } + } + gencorr->zero(); + gencorr->add(accum,1./(Real)count); +} + +void calc_correlation(SymmetryObeyingObject *gencorr, const Structure &str, const GeneralizedCluster &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans, const Array > > &corrfunc) { + Array clusters; + find_equivalent_clusters(&clusters, cluster, cell, point_op, trans); + calc_correlation(gencorr,str,clusters,cell,corrfunc); +} + +// gce end + +Real read_clusters_and_eci(LinkedList *clusterlist, LinkedList *ecilist, + istream &clusterfile, istream &ecifile, const rMatrix3d &axes) { + Real maxlen=0.; + while (1) { + Real mult; + clusterfile >> mult; + if (clusterfile.eof()) break; + Real len; + clusterfile >> len; + int nbpt; + clusterfile >> nbpt; + clusterfile.get(); + MultiCluster cluster(nbpt); + for (int j=0; j> cluster.clus(j); + cluster.clus(j)=axes*(cluster.clus(j)); + line >> cluster.site_type(j) >> cluster.func(j); + if (!line) { + cluster.site_type(j)=0; + cluster.func(j)=0; + } + } + AutoString gce_label; + get_string(&gce_label,clusterfile,"\n"); + SymmetryObeyingObject *psymobj=GenericPlugIn::create(gce_label); + psymobj->read(clusterfile); + GeneralizedCluster *pcluster=new GeneralizedCluster(cluster,psymobj); + (*clusterlist) << pcluster; + maxlen=MAX(maxlen,get_cluster_length(cluster.clus)); + if (ecilist) { + Real cur_eci; + ecifile >> cur_eci; + (*ecilist) << new Real(cur_eci); + } + } + return maxlen; +} diff --git a/src/gceutil.hh b/src/gceutil.hh new file mode 100644 index 0000000..7655cf8 --- /dev/null +++ b/src/gceutil.hh @@ -0,0 +1,62 @@ +#ifndef __GCEUTIL_H__ +#define __GCEUTIL_H__ + +#include "plugin.h" +#include "findsym.h" +#include "tensor.h" + +class SymmetryObeyingObject { +public: + SymmetryObeyingObject(void) {} + virtual void find_basis(LinkedList *plistobj, const SpaceGroup &space_group) {} + virtual void zero(void) {} + virtual SymmetryObeyingObject* clone(void) {return NULL;} + virtual void apply_symmetry(const rMatrix3d &point_op, const rVector3d &trans) {} + virtual void add(SymmetryObeyingObject *pobj, Real mult) {} + virtual void get_data(Array *pdata) {} + virtual void write(ostream &file) {} + virtual void read(istream &file) {} +}; + +class GeneralizedCluster { +public: + MultiCluster clus; + SymmetryObeyingObject *psymobj; +public: + GeneralizedCluster(void): clus() {psymobj=NULL;} + GeneralizedCluster(const GeneralizedCluster &gc): clus(gc.clus) {if (!gc.psymobj) {psymobj=NULL;} else {psymobj=gc.psymobj->clone();}} + void operator=(const GeneralizedCluster &gc) {clus=gc.clus; if (!gc.psymobj) {psymobj=NULL;} else {psymobj=gc.psymobj->clone();}} + ~GeneralizedCluster() {delete psymobj;} + GeneralizedCluster(const MultiCluster &_clus, SymmetryObeyingObject *_psymobj): clus(_clus) {psymobj=_psymobj;} +}; + +class TensorSymmetryObeyingObject: public SymmetryObeyingObject { +public: + static int rank; + static Array > flip; + rTensor tensor; +public: + TensorSymmetryObeyingObject(void); + TensorSymmetryObeyingObject(const rTensor &t); + void find_basis(LinkedList *plistobj, const SpaceGroup &space_group); + void zero(void); + SymmetryObeyingObject* clone(void); + void apply_symmetry(const rMatrix3d &point_op, const rVector3d &trans); + void add(SymmetryObeyingObject *pobj, Real mult=1); + void get_data(Array *pdata); + void write(ostream &file); + void read(istream &file); +}; + +void find_equivalent_clusters(Array *pclusters, const GeneralizedCluster &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans); +int calc_multiplicity(const GeneralizedCluster &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans); +void calc_correlation(SymmetryObeyingObject *gencorr, const Structure &str, const Array &clusters, const rMatrix3d &cell, const Array > > &corrfunc); +void calc_correlation(SymmetryObeyingObject *gencorr, const Structure &str, const GeneralizedCluster &cluster, + const rMatrix3d &cell, const Array &point_op, const Array &trans, const Array > > &corrfunc); + +Real read_clusters_and_eci(LinkedList *clusterlist, LinkedList *ecilist, + istream &clusterfile, istream &ecifile, const rMatrix3d &axes); + +#endif diff --git a/src/gencs.c++ b/src/gencs.c++ new file mode 100644 index 0000000..530d3b3 --- /dev/null +++ b/src/gencs.c++ @@ -0,0 +1,128 @@ +#include +#include "parse.h" +#include "clus_str.h" +#include "getvalue.h" +#include "ctype.h" +#include "version.h" +#include "plugin.h" +#include "tensorsym.h" + +//extern char *helpstring; +char *helpstring=""; + +int main(int argc, char *argv[]) { + char *delim="\t"; + int dohelp=0; + char *latticefilename="lat.in"; + int usesym=0; + int minrank=1; + int maxrank=1; + int sigdig=5; + zero_tolerance=2e-4; + AskStruct options[]={ + {"","Generalized Constituent Strain " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latticefilename}, + {"-s","Specify point group directly via generator (in sym.in)",BOOLVAL,&usesym}, + {"-z","Tolerance for finding symmetry operations (default: 2e-4)",REALVAL,&zero_tolerance}, + {"-r","Maximum Rank of the harmonic",INTVAL,&maxrank}, + {"-mr","Minimum Rank of the harmonic (default 1)",INTVAL,&maxrank}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + rMatrix3d axes; + axes.identity(); + SpaceGroup spacegroup; + { + if (usesym) { + ifstream sfile("sym.in"); + int nsym=0; + sfile >> nsym; + Array gen(nsym); + for (int i=0; i> gen(i); + sfile >> tmp; + } + spacegroup.cell.identity(); + generate_point_group(&spacegroup.point_op,gen); + spacegroup.trans.resize(spacegroup.point_op.get_size()); + for (int i=0; i labellookup; + Array label; + { + ifstream latticefile(latticefilename); + if (!latticefile) ERRORQUIT("Unable to open lattice file"); + parse_lattice_file(&lattice.cell, &lattice.atom_pos, &lattice.atom_type, &labellookup, &label, latticefile, &axes); + wrap_inside_cell(&lattice.atom_pos,lattice.atom_pos,lattice.cell); + } + + spacegroup.cell=lattice.cell; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,lattice.cell,lattice.atom_pos,lattice.atom_type); + if (contains_pure_translations(spacegroup.point_op,spacegroup.trans)) { + cerr << "Warning: unit cell is not primitive." << endl; + } + } + } + + { + ofstream symfile("sym.out"); + symfile.setf(ios::fixed); + symfile.precision(sigdig); + symfile << spacegroup.point_op.get_size() << endl; + for (int i=0; i basis; + calc_sym_harmonics(&basis,rank,spacegroup); + for (int i=0; i > j(basis(i).get_size()); + for (; j; j++) { + Array &aj=(Array &)j; + if (fabs(basis(i)(aj))>zero_tolerance) { + Array p(3); + zero_array(&p); + int s=1; + for (int k=0; kaj(k+1)) {s=0;}} + char c[]="xyz"; + if (s) { + cerr << " + " << basis(i)(aj)*factorial(rank)/(factorial(p(0))*factorial(p(1))*factorial(p(2))); + for (int k=0; k<3; k++) {if (p(k)>0) {cerr << "*" << c[k] << "^" << p(k);}} + } + } + } + cerr << endl; + + } + } +} diff --git a/src/gensqs.c++ b/src/gensqs.c++ new file mode 100644 index 0000000..43a9638 --- /dev/null +++ b/src/gensqs.c++ @@ -0,0 +1,210 @@ +#include +#include "clus_str.h" +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include "calccorr.h" + +extern char *helpstring; + +#define USEFLIPTRICK + +int main(int argc, char *argv[]) { + int maxvol=0; + char *latticefilename="lat.in"; + char *clusterfilename="clusters.out"; + char *corrfilename="tcorr.out"; + int readcell=0; + int printcell=0; + int tp=1; + int ip=0; + Real mysqstol=zero_tolerance; + int sigdig=6; + char *corrfunc_label="trigo"; + int dohelp=0; + AskStruct options[]={ + {"","GENerate Special Quasirandom Structures " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-n","nb of atom/unit cell",INTVAL,&maxvol}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-cf","Input file defining the clusters (default: clusters.out)",STRINGVAL,&clusterfilename}, + {"-tc","Input file defining the target correlations (default: tcorr.out)",STRINGVAL,&corrfilename}, + {"-tol","Tolerance for matching correlations (default: 1e-3)",REALVAL,&mysqstol}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latticefilename}, + {"-rc","Read unit cells from file",BOOLVAL,&readcell}, + {"-pc","Print number of supercells only, and quit",BOOLVAL,&printcell}, + {"-tp","Total number of processes (for parallel operation)",INTVAL,&tp}, + {"-ip","Index of current process (0,...,tp-1) (for parallel operation)",INTVAL,&ip}, + {"-crf","Select correlation functions (default: trigo)",STRINGVAL,&corrfunc_label}, + {"-h","Display more help",BOOLVAL,&dohelp} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + // read in lattice (see parse.h); + Structure lat; + Array site_type_list; + Array atom_label; + rMatrix3d axes; + ifstream file(latticefilename); + if (!file) ERRORQUIT("Unable to open lattice file."); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &site_type_list, &atom_label, file, &axes); + + Array comp(lat.atom_type.get_size()); + for (int at=0; at::create(corrfunc_label); + pcorrfunc->init(max(comp)); + + LinkedList clusterlist; + LinkedList corrlist; + { + ifstream clusterfile(clusterfilename); + if (!clusterfile) ERRORQUIT("Unable to open cluster file."); + ifstream corrfile(corrfilename); + if (!corrfile) ERRORQUIT("Unable to open target correlation file."); + read_clusters_and_eci(&clusterlist, &corrlist, clusterfile, corrfile, axes); + } + Array corrarray; + LinkedList_to_Array(&corrarray,corrlist); + + cout.setf(ios::fixed); + cout.precision(sigdig); + + Array pointgroup; + find_pointgroup(&pointgroup,lat.cell); + SpaceGroup spacegroup; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,lat.cell,lat.atom_pos,lat.atom_type); + spacegroup.cell=lat.cell; + + Array supercell; + int v=(int)(maxvol/MAX(1,lat.atom_pos.get_size())); + if (readcell) { + ifstream cellfile("sqscell.out"); + int nc=0; + cellfile >> nc; + supercell.resize(nc); + if (printcell) { + cout << supercell.get_size() << endl; + exit(0); + } + for (int i=0; i1) { + ostrstream filename; + filename << "gensqs_" << ip << "_" << tp << ".out" << '\0'; + outfile.open(filename.str()); + } + + LinkedList strlist; + int totcell=supercell.get_size(); + int bcell=ip*totcell/tp; + int ecell=(ip+1)*totcell/tp; + for (int c=bcell; c > eqclus(clusterlist.get_size()); + LinkedListIterator ic(clusterlist); + for (int t=0; ic; t++, ic++) { + find_equivalent_clusters(&eqclus(t),*ic,lat.cell,spacegroup.point_op,spacegroup.trans); + } + MultiDimIterator config(blank_superstructure.atom_type); + for (; config; config++) { + blank_superstructure.atom_type=config; + int t; + for (t=0; t mysqstol ) break; + } + if (t==corrarray.get_size()) { +#ifdef USEFLIPTRICK + if (!contains_pure_translations(blank_superstructure,lat.cell)) { + if (!equiv_to_lexico_successor(blank_superstructure,lat.cell,subgroup.point_op,subgroup.trans)) { + if (tp>1) { + write_structure(blank_superstructure,lat,site_type_list,atom_label,axes,outfile); + outfile << "end" << endl << endl << flush; + } + else { + write_structure(blank_superstructure,lat,site_type_list,atom_label,axes,cout); + cout << "end" << endl << endl << flush; + } + } + } +#else + if (!contains_pure_translations_or_lexico_successor(blank_superstructure,lat.cell)) { + LinkedListIterator is(strlist); + for (; is; is++) { + if (spacegroup(*is,blank_superstructure)) break; + } + if (!is) { + strlist << new Structure(blank_superstructure); + if (tp>1) { + write_structure(blank_superstructure,lat,site_type_list,atom_label,axes,outfile); + outfile << "end" << endl << endl << flush; + } + else { + write_structure(blank_superstructure,lat,site_type_list,atom_label,axes,cout); + cout << "end" << endl << endl << flush; + } + } + } +#endif + } + } + } + if (tp>1) { + outfile.close(); + } +} diff --git a/src/gensqshelp.c++ b/src/gensqshelp.c++ new file mode 100644 index 0000000..5386d8f --- /dev/null +++ b/src/gensqshelp.c++ @@ -0,0 +1,38 @@ +char *helpstring="" +"This code requires 3 input files:\n" +"1) A lattice file (by default lat.in) in the same format as for\n" +" maps or corrdump.\n" +"2) A cluster file (by default clusters.out), as generated with\n" +" the corrdump utility.\n" +"3) A target correlation file (by default tcorr.out) which\n" +" contains the value of desired correlations for each of\n" +" the clusters listed in the cluster file.\n" +"\n" +"A typical caling sequence would be:\n" +"\n" +"# the following command can be used to generate the target correlation file tcorr.out\n" +"\n" +"corrdump -noe -2=maxradius -rnd -s=conc.in > tcorr.out\n" +"\n" +"# where maxradius is the length of the longest pair desired\n" +"# and where conc.in contains an (ordered) structure having the\n" +"# desired concentration.\n" +"# The geometry of the structure in the conc.in file is basically ignored\n" +"# only its concentration will be used.\n" +"\n" +"#this looks for possible sqs of 8 atoms/ cell\n" +"gensqs -n=8 > sqs8.out\n" +"\n" +"corrdump -2=anotherradius -3=anotherradius -noe -s=sqs8.out\n" +"# this helps you decide which sqs is best based on other correlations\n" +"# associated with clusters (pairs and triplets) of diamter less than\n" +"# anotherradius.\n" +"\n" +"Caution:\n" +" If you give too many correlations to match, the code may not\n" +" output anything.\n" +" Finding an 8-atom sqs takes a few minutes, an 16-atom sqs, a few hours\n" +" and a 32-atom sqs, a few days!\n" +" The exact speed depends on the symmetry of the lattice and on your\n" +" computer.\n" +; diff --git a/src/gensqshelp.hlp b/src/gensqshelp.hlp new file mode 100644 index 0000000..2eb6156 --- /dev/null +++ b/src/gensqshelp.hlp @@ -0,0 +1,45 @@ +IMPORTANT NOTE: Please see mcsqs command for a better, easier-to-use SQS generator. + +This code requires 3 input files: +1) A lattice file (by default lat.in) in the same format as for + maps or corrdump. +2) A cluster file (by default clusters.out), as generated with + the corrdump utility. +3) A target correlation file (by default tcorr.out) which + contains the value of desired correlations for each of + the clusters listed in the cluster file. + +A typical caling sequence would be: + +# the following command can be used to generate the target correlation file tcorr.out + +corrdump -noe -2=maxradius -rnd -s=conc.in > tcorr.out + +# where maxradius is the length of the longest pair desired +# and where conc.in contains an (ordered) structure having the +# desired concentration. +# The geometry of the structure in the conc.in file is not crucial - +# only the average concentration on each sublattice will be used. +# CAUTION: Here, a 'sublattice' is a set of symmetrically equivalent point clusters. +# If your system contains multiple sublattices (as evidenced by multiple +# point clusters in clusters.out, make sure that your conc.in file sets +# the composition of each sublattice correctly! This can be verified +# by looking at the point correlations output. + +#this looks for possible sqs of 8 atoms/ cell +gensqs -n=8 > sqs8.out + +corrdump -2=anotherradius -3=anotherradius -noe -s=sqs8.out +# this helps you decide which sqs is best based on other correlations +# associated with clusters (pairs and triplets) of diamter less than +# anotherradius. + +Caution: + gensqs only generates structures containing exactly the number of atoms per unit cell specified by the -n option. + (If an SQS with a smaller unit cell exists, it will not be listed.) + If you give too many correlations to match, the code may not + output anything. + Finding an 8-atom sqs takes a few minutes, an 16-atom sqs, a few hours + and a 32-atom sqs, a few days! + The exact speed depends on the symmetry of the lattice and on your + computer. diff --git a/src/genstr.c++ b/src/genstr.c++ new file mode 100644 index 0000000..dbb768c --- /dev/null +++ b/src/genstr.c++ @@ -0,0 +1,92 @@ +#include +#include "clus_str.h" +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include "mpiinterf.h" + +int main(int argc, char *argv[]) { + MyMPIobj.init(argc,argv); + int maxvol=0; + char *latticefilename="lat.in"; + int sigdig=6; + int do2D=0; + AskStruct options[]={ + {"","GENerate STRuctures " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-n","maximum nb of atom/unit cell",INTVAL,&maxvol}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-2d","Find supercells along a and b axes only",BOOLVAL,&do2D}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latticefilename} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + // read in lattice (see parse.h); + Structure lat; + Array site_type_list; + Array atom_label; + rMatrix3d axes; + ifstream file(latticefilename); + if (!file) ERRORQUIT("Unable to open lattice file."); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &site_type_list, &atom_label, file, &axes); + + int noconfig=1; + for (int i=0; i1) noconfig=0; + } + + cout.setf(ios::fixed); + cout.precision(sigdig); + if (noconfig) { + Array config(lat.atom_type.get_size()); + zero_array(&config); + Array pointgroup; + if (lat.atom_pos.get_size()>0) { + SpaceGroup spacegroup; + spacegroup.cell=lat.cell; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,lat.cell,lat.atom_pos,lat.atom_type); + pointgroup_from_spacegroup(&pointgroup,spacegroup.point_op); + } + else { + find_pointgroup(&pointgroup,lat.cell); + } + Array supercell; + if (do2D) { + find_supercells_2D(&supercell, 1, maxvol/MAX(1,lat.atom_pos.get_size()), lat.cell, pointgroup); + } + else { + find_supercells(&supercell, 1, maxvol/MAX(1,lat.atom_pos.get_size()), lat.cell, pointgroup); + } + for (int c=0; c str_bank(lat, site_type_list, spacegroup,do2D); + while (1) { +#ifndef SLOWENUMALGO + if (str_bank.get_current_structure().atom_pos.get_size()>maxvol) break; +#endif + if (MyMPIobj.is_root()) { + write_structure(str_bank.get_current_structure(),lat,site_type_list,atom_label,axes,cout); + cout << "end" << endl << endl; + } +#ifdef SLOWENUMALGO + if (str_bank.get_current_structure().atom_pos.get_size()>=maxvol && str_bank.end_of_this_volume()) break; +#endif + str_bank++; + } + } +} diff --git a/src/getclus b/src/getclus new file mode 100755 index 0000000..267beb5 --- /dev/null +++ b/src/getclus @@ -0,0 +1,43 @@ +#!/bin/csh +if ( x$1 == "x-h" ) then + echo Syntax: getclus \[-e\] \[ecifile\] + echo extracts, from clusters.out, the cluster sizes, lengths and multiplicities + echo if ecifile is given, it also prints the eci therein + echo if -e is specified, it prints eci from eci.out + exit +endif +if ( x$1 == "x" ) then + set ecifile="" +else if ( x$1 == "x-e" ) then + set ecifile="eci.out" +else + set ecifile=$1 +endif + +cat clusters.out | awk '{ \ + m=$1; \ + getline; \ + l=$1; \ + getline; \ + n=$1; \ + $1=0; \ + if ('\"$ecifile\"'!="") { \ + getline < '\"$ecifile\"'; \ + e=$1; \ + print n,l,m,e; \ + } \ + else { \ + print n,l,m; \ + } \ + for (i=1; i<=n; i++) { \ + getline; \ + } \ + getline; \ + if ($1=="tensor") { \ + getline; rank=$1; \ + for (i=1; i<=rank; i++) {getline;} \ + getline; ndata=$1; \ + for (i=1; i<=ndata; i++) {getline;} \ + getline; \ + } \ +}' diff --git a/src/getproto b/src/getproto new file mode 100755 index 0000000..8047680 --- /dev/null +++ b/src/getproto @@ -0,0 +1,30 @@ +#!/bin/bash +atatdir=$(sed 's/.*=\(.*\)/\1/g' ~/.atat.rc) + +if [[ ! -e ${atatdir}/data/prototypes.in ]] +then + echo Prototype database not found. + echo Either your ~/.atat.rc file in not properly configured or you were not given access to the prototype database. + echo Contact Axel van de Walle at avdw@alum.mit.edu to check if you can have access to the database. + exit +fi + +if [[ $# -eq 0 || "x$1" == "x-h" ]] +then + cat - <<-EOF +GET PROTOtypes from database, by Axel van de Walle +Syntax: + getproto [string] +Returns all structure prototypes matching [string] in ATAT's prototype database. +[string] can be a regular expression, e.g. ^A3 +The last 2 columns of the output can be used as arguments to the wycked code +to generate the structure (up to some adjustable parameters not constrained by symmetry). + +ACKNOWLEDGEMENTS +EOF +grep "^#" ${atatdir}/data/prototypes.in | sed 's/#//g' +exit + +fi + +grep -v "^#" ${atatdir}/data/prototypes.in | grep "$*" diff --git a/src/getvalue.c++ b/src/getvalue.c++ new file mode 100644 index 0000000..6aecbaa --- /dev/null +++ b/src/getvalue.c++ @@ -0,0 +1,266 @@ +#include +#include +#include "getvalue.h" +#include "linklist.h" + +const char *equal_delim=":= \t\n"; +const char *blanks_delim=" \t\n"; + +LinkedList getvalue_string_buffer; + +int get_values(istream &s, int nb, AskStruct *label) { + char c; + while (1) { + while (1) { + c=s.get(); + if (!strchr(blanks_delim,c) || s.eof()) break; + } + if (s.eof()) return 1; + s.putback(c); + ostrstream cur_label; + while (1) { + c=s.get(); + if (strchr(equal_delim,c) || s.eof()) break; + cur_label << c; + } + cur_label << '\0'; + while (1) { + c=s.get(); + if (!strchr(equal_delim,c) || s.eof()) break; + } + if (!s.eof()) {s.putback(c);} + int i; + for (i=0; i> (*(int *)(label[i].outvar)); + break; + case REALVAL: + value >> (*(Real *)(label[i].outvar)); + break; + case BOOLVAL: + (*(int *)(label[i].outvar))=1; + break; + case STRINGVAL: + { + AutoString *pstr=new AutoString(value_str.str()); + getvalue_string_buffer << pstr; + *((const char **)(label[i].outvar))=(const char *)(*pstr); + } + break; + case CHOICEVAL: + value >> (*(char *)(label[i].outvar)); + break; + case ARRAYRVAL: + { + LinkedList list; + while (1) { + skip_delim(value,",;:"); + Real tmp=MAXFLOAT; + value >> tmp; + if (tmp==MAXFLOAT) break; + list << new Real(tmp); + } + LinkedList_to_Array((Array *)(label[i].outvar),list); + } + break; + } + break; + } + } + if (i==nb) return 0; + } +} + +int get_values(int argc, char* argv[], int nb, AskStruct *label) { + if (argc==1) return 0; + ostrstream os; + for (int i=1; i *)(label[i].outvar))->get_size(); j++) { + if (j>0) {cerr << ",";} + cerr << (*(Array *)(label[i].outvar))(j); + } + cerr << ")"; + } + cerr << endl; + } + } + } +} + +void chdir_robust(const char *dir) { + if (chdir(dir)!=0) { + cerr << "Cannot cd into " << dir << endl; + ERRORQUIT("Aborting"); + } +} + +int get_string(AutoString *ps, istream &file, const char *delim) { + AutoString accum; + char c; + while (1) { + file.get(c); + if (strchr(delim,c)!=NULL || file.eof()) break; + accum+=c; + } + *ps=accum; + if (file.eof()) return 0; + file.putback(c); + return 1; +} + +int skip_delim(istream &file, const char *delim) { + char c; + do { + file.get(c); + } while (strchr(delim,c)!=NULL && !file.eof()); + if (file.eof()) return 0; + file.putback(c); + return 1; +} + +int get_row_numbers(Array *pa, istream &file) { + if (file.eof()) {return 0;} + char buf[MAX_LINE_LEN]; + buf[0]=0; + file.get(buf,MAX_LINE_LEN-1); + file.get(); + istrstream line(buf); + LinkedList list; + while (!line.eof()) { + Real r=MAXFLOAT; + line >> r; + if (r==MAXFLOAT) break; + list << new Real(r); + } + LinkedList_to_Array(pa,list); + return 1; +} + +void read_table(Array > *pa, istream &file, int keepempty) { + LinkedList > alist; + while (1) { + char buf[MAX_LINE_LEN]; + buf[0]=0; + file.clear(); + file.get(buf,MAX_LINE_LEN-1); + if (file.eof()) break; + istrstream line(buf); + { + LinkedList rlist; + while (1) { + Real r=MAXFLOAT; + line >> r; + if (r==MAXFLOAT) break; + rlist << new Real(r); + } + if (rlist.get_size()>0 || keepempty) { + Array *prs=new Array(); + LinkedList_to_Array(prs,rlist); + alist << prs; + } + } + file.clear(); + file.get(); + if (file.eof()) break; + } + LinkedList_to_Array(pa,alist); +} + +int get_atat_root(AutoString *patatroot) { + AutoString configfilename(getenv("HOME")); + configfilename+="/.atat.rc"; + ifstream configfile(configfilename); + if (!configfile) { + ERRORQUIT("$HOME/.atat.rc was not found."); + } + while (configfile.get()!='=') {}; + skip_delim(configfile," \t"); + get_string(patatroot,configfile); +} diff --git a/src/getvalue.hh b/src/getvalue.hh new file mode 100644 index 0000000..b3fea93 --- /dev/null +++ b/src/getvalue.hh @@ -0,0 +1,34 @@ +#ifndef __GETVALUE_H__ +#define __GETVALUE_H__ + +#include +#include "stringo.h" + +enum VarType {TITLEVAL,INTVAL,REALVAL,BOOLVAL,STRINGVAL,CHOICEVAL,ARRAYRVAL,LISTVAL}; + +struct AskStruct { // contains the caracteristics of a command-line option; + char *shortname; // command line option name; + char *longname; // description string; + VarType vartype; // type of the variable to initialize (see VarType); + void *outvar; // pointer to the variable to initialize; +}; + +// use the stream s to initialize the variables pointed to in the array questions of lenght nb; +int get_values(istream &s, int nb, AskStruct *label); +// use argc and argv to initialize the variables pointed to in the array questions of lenght nb; +int get_values(int argc, char* argv[], int nb, AskStruct *label); + +// Displays the description strings; +void display_help(int nb, AskStruct *label); + +#define CMDLINEPARAM(VAR,TYP) {"-"#VAR,#VAR,TYP,&VAR} + +void chdir_robust(const char *dir); + +int get_string(AutoString *ps, istream &file, const char *delim=" \t\n"); +int skip_delim(istream &file, const char *delim=" \t\n"); +int get_row_numbers(Array *pa, istream &file); +void read_table(Array > *pa, istream &file, int keepempty); +int get_atat_root(AutoString *patatroot); + +#endif diff --git a/src/ghost.c++ b/src/ghost.c++ new file mode 100644 index 0000000..c5c7cd5 --- /dev/null +++ b/src/ghost.c++ @@ -0,0 +1,92 @@ +#include +#include "xtalutil.h" +#include "parse.h" +#include "getvalue.h" + +int main(int argc, char *argv[]) { + + AskStruct options[]={ + {"","Chemical potential via the GHOST particle method, by Axel van de Walle",TITLEVAL,NULL}, + {"-r","Maximum radius for calculating pair correlations",REALVAL,&rmax}, + {"-w","Width for smoothing pair correlation",REALVAL,&width}, + {"-s","Maximum shell for neighbor",INTVAL,&shell}, + {"-cs","Maximum shell for Common Neighbor Analysis",INTVAL,&cshell} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + LinkedList md_str; + while (!infile.eof()) { + Structure str; + parse_lattice_file(&(str.cell), &(str.atom_pos), &(str.atom_type), &site_type_list, &atom_label, infile); + wrap_inside_cell(&(str.atom_pos), str.atom_pos, str.cell); + fix_atom_type(&str, site_type_list); + calc_pair_corr(&corr, str, rmax); + md_str << new Structure(str); + skip_to_next_structure(infile); + } + + Array smocorr; + Real dr=rmax/((Real)n_bin-1.); + smooth_pair_corr(&smocorr, corr, width/dr); + { + ofstream file("pc.out"); + for (int i=0; i cutoff; + find_valleys(&cutoff, smocorr); + { + ofstream file("shells.out"); + for (int i=0; i cutoff; + { + ifstream file("shells.in"); + if (!file) ERRORQUIT("Unable to open shells.in"); + LinkedList cutofflist; + while (!file.eof()) { + Real c; + file >> c; + cutofflist << new Real(c); + skip_delim(file); + } + LinkedList_to_Array(&cutoff,cutofflist); + } + Array > site_type_list; + Array atom_label; + LinkedList > all_common_neighbor; + istream &infile=cin; + while (!infile.eof()) { + Structure str; + parse_lattice_file(&(str.cell), &(str.atom_pos), &(str.atom_type), &site_type_list, &atom_label, infile); + wrap_inside_cell(&(str.atom_pos), str.atom_pos, str.cell); + fix_atom_type(&str, site_type_list); + common_neighbor_analysis(&all_common_neighbor, str, cutoff, shell, cshell); + skip_to_next_structure(infile); + } + Real total=0; + LinkedListIterator > icn(all_common_neighbor); + for (; icn; icn++) { + total+=(Real)(*icn)(0); + } + icn.init(all_common_neighbor); + for (; icn; icn++) { + int i; + for (i=1; iget_size()-2; i++) { + cout << resetiosflags(ios::fixed) << fabs((*icn)(i)) << " "; + } + cout << atom_label((*icn)(i)) << " " << atom_label((*icn)(i+1)) << " "; + cout << setiosflags(ios::fixed) << setprecision(6) << (Real)((*icn)(0))/total << endl; + } + } +} diff --git a/src/greadyneb.c++ b/src/greadyneb.c++ new file mode 100644 index 0000000..d95203a --- /dev/null +++ b/src/greadyneb.c++ @@ -0,0 +1,101 @@ +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include "linalg.h" + +Real pot(const Array &x) { + return pow(abs(1.+cos(x(0))*cos(1.2*x(1))+0.4*x(1)),1.7); +} + +void pot_der(Array *pf,const Array &x) { + Real dx=1e-4; + pf->resize(x.get_size()); + zero_array(pf); + for (int i=0; i y; + Array dy(x.get_size()); + zero_array(&dy); + dy(i)=dx; + sum(&y,x,dy); + (*pf)(i)=pot(y); + diff(&y,x,dy); + (*pf)(i)-=pot(y); + (*pf)(i)/=(2.*dx); + } +} + +int main(int argc, char *argv[]) { + + int dim=2; + int n=20; + Real lfact=50.; + Real dlfact=4e-1; + Real dfact=1e-2; + Real totall=M_PI*0.5; + Real told=1e-4; + + // for (totall=M_PI/8.; totall > band(n+1); + for (int i=0; i<=n; i++) { + band(i).resize(dim); + } + band(0)(0)=M_PI/4; band(0)(1)=M_PI/10.; + band(n)(0)=M_PI; band(n)(1)=0.0; + for (int i=1; i acc1,acc2; + product(&acc1,band(0),1.-r); + product(&acc2,band(n),r); + sum(&band(i),acc1,acc2); + } + Real sumfm; + while (1) { + sumfm=0.; + Real onel=totall/(Real)(n+1); + Array > dband(n+1); + zero_array(&dband); + Array l(n); + Array > dx(n); + for (int i=0; i fl,fl2; + product(&fl,dx(i-1),(onel-l(i-1))/l(i-1)); + product(&fl2,dx(i),(l(i)-onel)/l(i)); + sum(&fl,fl,fl2); + product(&fl,fl,lfact); + Array u(dim); + diff(&u,band(i+1),band(i-1)); + normalize(&u); + Array f,fu; + pot_der(&f,band(i)); + product(&fu,u,inner_product(u,f)); + diff(&f,f,fu); + dtotall=(inner_product(f,dx(i-1))-inner_product(f,dx(i)))*dlfact; + sumfm+=norm(f); + diff(&dband(i),fl,f); + product(&dband(i),dband(i),dfact); + } + Real tol=0.; + for (int i=1; i *p_gs_str, + const Array &concentration, const Array &energy) { + Array gs_str(concentration.get_size()); + int nb_in_hull=0; + + Real cur_concentration=MAXFLOAT; + Real cur_energy=MAXFLOAT; + int cur_gs; + for (int i=0; icur_concentration) { + Real slope=(energy(i)-cur_energy)/(concentration(i)-cur_concentration); + if (sloperesize(nb_in_hull); + for (int i=0; i *p_gs_concentration, Array *p_gs_energy, + const Array &concentration, const Array &energy) { + Array gs_str; + + calc_convex_hull(&gs_str, concentration,energy); + p_gs_concentration->resize(gs_str.get_size()); + p_gs_energy->resize(gs_str.get_size()); + for (int i=0; i *p_gs_concentration, Array *p_gs_energy, const Array &gs_str, + const Array &concentration, const Array &energy) { + p_gs_concentration->resize(gs_str.get_size()); + p_gs_energy->resize(gs_str.get_size()); + for (int i=0; i *p_problem, const Array &ground_state, + const Array &concentration, const Array &fitted_energy, + Real minc, Real maxc) { + Real minminc=min(concentration); + Real maxmaxc=max(concentration); + if (mincmaxmaxc) maxc=maxmaxc; + int a_problem=0; + p_problem->resize(fitted_energy.get_size()); + zero_array(p_problem); + + if (near_zero(maxc-minc)) { + int index_min=-1; + Real min_energy=MAXFLOAT; + for (int str=0; str minc-zero_tolerance) break; + } + if (!near_zero(concentration(ground_state(gs))-minc)) { + (*p_problem)(ground_state(gs))=1; + (*p_problem)(ground_state(gs-1))=1; + (*p_problem)(index_min)=1; + a_problem=1; + } + else if (index_min!=ground_state(gs)) { + (*p_problem)(ground_state(gs))=1; + (*p_problem)(index_min)=1; + a_problem=1; + } + } + } + else { + int min_gs; + for (min_gs=1; min_gs minc) break; + } + int max_gs; + for (max_gs=ground_state.get_size()-1; max_gs>1; max_gs--) { + if (concentration(ground_state(max_gs-1))+zero_tolerance < maxc) break; + } + + for (int gs=min_gs; gs<=max_gs; gs++) { + Real c0=concentration(ground_state(gs-1)); + Real c1=concentration(ground_state(gs)); + Real e0=fitted_energy(ground_state(gs-1)); + Real e1=fitted_energy(ground_state(gs)); + Real slope=(e1-e0)/(c1-c0); + if (gs==min_gs) { + e0=e0+slope*(minminc-c0); + c0=minminc; + } + if (gs==max_gs) { + e1=e1+slope*(maxmaxc-c1); + c1=maxmaxc; + } + if (gs>=min_gs+1) { + Real c_1=concentration(ground_state(gs-2)); + Real e_1=fitted_energy(ground_state(gs-2)); + if ( (e1-e0)/(c1-c0) < (e0-e_1)/(c0-c_1) ) { + (*p_problem)(ground_state(gs-2))=1; + (*p_problem)(ground_state(gs-1))=1; + (*p_problem)(ground_state(gs))=1; + a_problem=1; + } + } + Real a=(c1*e0-c0*e1)/(c1-c0); + Real b=(e1-e0)/(c1-c0); + for (int str=0; str=c0 && c<=c1) { + Real hull_e=a+b*c; + if (str!=ground_state(gs-1) && str!=ground_state(gs) && fitted_energy(str)<=hull_e) { + (*p_problem)(str)=1; + (*p_problem)(ground_state(gs-1))=1; + (*p_problem)(ground_state(gs ))=1; + a_problem=1; + } + } + } + } + } + return a_problem; +} + +int ground_state_problem(Array *p_problem, const Array &gs_concentration, const Array &gs_energy, + const Array &concentration, const Array &energy, + Real minc, Real maxc) { + if (concentration.get_size()==0) { + p_problem->resize(0); + return 0; + } + Real minminc=MIN(min(concentration),min(gs_concentration)); + Real maxmaxc=MAX(max(concentration),max(gs_concentration)); + if (mincmaxmaxc) maxc=maxmaxc; + int a_problem=0; + p_problem->resize(energy.get_size()); + zero_array(p_problem); + if (near_zero(maxc-minc)) { + minc-=2*zero_tolerance; + maxc+=2*zero_tolerance; + } + int min_gs; + for (min_gs=1; min_gs minc) break; + } + int max_gs; + for (max_gs=gs_concentration.get_size()-1; max_gs>1; max_gs--) { + if (gs_concentration(max_gs-1)+zero_tolerance < maxc) break; + } + for (int gs=min_gs; gs<=max_gs; gs++) { + Real c0=gs_concentration(gs-1); + Real c1=gs_concentration(gs); + Real e0=gs_energy(gs-1); + Real e1=gs_energy(gs); + Real slope=(e1-e0)/(c1-c0); + if (gs==min_gs) { + e0=e0+slope*(minminc-c0); + c0=minminc; + } + if (gs==max_gs) { + e1=e1+slope*(maxmaxc-c1); + c1=maxmaxc; + } + Real a=(c1*e0-c0*e1)/(c1-c0); + Real b=(e1-e0)/(c1-c0); + for (int str=0; strc0 && c *p_form_value, const Array &concentration, const Array &value, Real *e_c0, Real *e_c1) { + Real pure_A=MAXFLOAT; + Real pure_B=MAXFLOAT; + if (e_c0 && e_c1 && (*e_c0)!=MAXFLOAT && (*e_c1)!=MAXFLOAT) { + pure_A=*e_c0; + pure_B=*e_c1; + } + else { + Real minc=min(concentration); + Real maxc=max(concentration); + Real mince,maxce; + for (int i=0; iresize(value.get_size()); + Real a=(pure_B+pure_A)/2.; + Real b=(pure_B-pure_A)/2.; + for (int i=0; i *hull_energy, const Array &ground_state, const Array &concentration, const Array &energy) { + hull_energy->resize(energy.get_size()); + for (int gs=1; gs=c0 && c<=c1) { + (*hull_energy)(str)=a+b*c; + } + } + } +} diff --git a/src/gstate.hh b/src/gstate.hh new file mode 100644 index 0000000..e756fb3 --- /dev/null +++ b/src/gstate.hh @@ -0,0 +1,17 @@ +#ifndef _GSTATE_H_ +#define _GSTATE_H_ + +#include "arraylist.h" +#include "integer.h" + +void calc_convex_hull(Array *p_gs_str, const Array &concentration, const Array &energy); +void calc_convex_hull(Array *p_gs_concentration, Array *p_gs_energy, + const Array &concentration, const Array &energy); +void convex_hull_from_gs(Array *p_gs_concentration, Array *p_gs_energy, const Array &gs_str, + const Array &concentration, const Array &energy); +int ground_state_problem(Array *p_problem, const Array &ground_state, const Array &concentration, const Array &fitted_energy, Real minc=-MAXFLOAT, Real maxc=MAXFLOAT); +int ground_state_problem(Array *p_problem, const Array &gs_concentration, const Array &gs_energy, const Array &concentration, const Array &energy, Real minc=-MAXFLOAT, Real maxc=MAXFLOAT); +void calc_formation(Array *p_form_value, const Array &concentration, const Array &value, Real *e_c0=NULL, Real *e_c1=NULL); +void calc_hull_energy(Array *hull_energy, const Array &ground_state, const Array &concentration, const Array &energy); + +#endif diff --git a/src/guesslatparam b/src/guesslatparam new file mode 100755 index 0000000..0871873 --- /dev/null +++ b/src/guesslatparam @@ -0,0 +1,4 @@ +#!/bin/csh +source ~/.atat.rc +nntouch -l=str.out -r ${atatdir}/data/radii.in > str_hint.out +$* diff --git a/src/headers.c++ b/src/headers.c++ new file mode 100644 index 0000000..30e6503 --- /dev/null +++ b/src/headers.c++ @@ -0,0 +1,2 @@ +void dummy(void) { +} diff --git a/src/hessian.c++ b/src/hessian.c++ new file mode 100644 index 0000000..20f5354 --- /dev/null +++ b/src/hessian.c++ @@ -0,0 +1,309 @@ +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include "linalg.h" + +template +void project(Array *pv, const Array2d &proj, const Array &v, int paral) { + Array2d A,iA; + Array b,c; + if (proj.get_size()(0)==0) { + if (paral) { + pv->resize(v.get_size()); + zero_array(pv); + } + else { + *pv=v; + } + } + inner_product(&A,proj,proj); + invert_matrix(&iA,A); + inner_product(&b,proj,v); + product(&c,iA,b); + if (paral) { + product(pv,proj,c); + } + else { + Array dv; + product(&dv,proj,c); + diff(pv,v,dv); + } +} + +class FuncofVector { +public: + virtual Real operator () (const Array &) const {return 0;}; +}; + +class PolyForm { +public: + Array center; + Real coef0; + Array coef; + Real operator () (const Array &x) const { + Array dx; + diff(&dx,x,center); + Real a=coef0; + for (int n=0; n size=coef(n).get_size(); + MultiDimIterator > i(size); + for ( ; i; i++) { + Real p=coef(n)(i); + for (int j=0; j &)i)(j)); + } + a+=p; + } + } + return a; + } +}; + +class InterpolPolyForm: public FuncofVector { + Array polyform; + Array > connect; + Array > border; + Array > > plane_n; + Array > plane_c; + Array > maxdist; +public: + InterpolPolyForm (const Array &_polyform, const Array > &_connect) { + polyform=_polyform; + connect=_connect; + border.resize(connect.get_size()); + Array > > plane_o; + plane_o.resize(connect.get_size()); + plane_n.resize(connect.get_size()); + for (int s=0; s u; + diff(&u,polyform(connect(s)(x)).center,polyform(connect(s)((x+1)%nv)).center); + Array2d proj(iVector2d(u.get_size(),nv-2)); + for (int j=0; j spanv; + diff(&spanv,polyform(connect(s)((x+2+j)%nv)).center,polyform(connect(s)((x+1)%nv)).center); + set_column(&proj, spanv,j); + } + project(&plane_n(s)(x),proj,u,0); + normalize(&plane_n(s)(x)); + } + } + + iVector2d s(-1,-1); + for (s(0)=0; s(0) n; + diff(&n,plane_n(s(0))(x(0)),plane_n(s(1))(x(1))); + normalize(&n); + plane_n(s(0))(x(0))=n; + product(&n,n,-1.); + plane_n(s(1))(x(1))=n; + break; + } + } + } + } + plane_c.resize(connect.get_size()); + maxdist.resize(connect.get_size()); + for (int s=0; s &x) const { + for (int s=0; s p(plane_n(s).get_size()); + int i; + for (i=0; i=0) { + Real w=smooth_func(p(j)/maxdist(s)(j)); + num+=w*polyform(connect(s)(j))(x); + den+=w; + } + } + return num/den; + } + } + } +}; + +int read_vector(Array *pa, istream &file) { + LinkedList l; + while (1) { + Real r; + file >> r; + if (file.eof()) break; + l << new Real(r); + } + LinkedList_to_Array(pa,l); +} + +int read_vector(Array *pa, const char *filename) { + ifstream file(filename); + return read_vector(pa,file); +} + +int read_square_matrix(Array2d *pa, istream &file) { + LinkedList l; + while (1) { + Real r; + file >> r; + if (file.eof()) break; + l << new Real(r); + } + int n=(int)sqrt((Real)l.get_size()); + iVector2d size(n,n); + pa->resize(size); + MultiDimIterator j(size); + LinkedListIterator i(l); + for (; i; i++,j++) { + (*pa)(j)=*i; + } +} + +int read_square_matrix(Array2d *pa, const char *filename) { + ifstream file(filename); + return read_square_matrix(pa,file); +} + +int read_equi_tensor(Tensor *pa, int dim, istream &file) { + LinkedList l; + while (1) { + Real r; + file >> r; + if (file.eof()) break; + l << new Real(r); + } + int n=(int)pow((Real)l.get_size(),1./(Real)dim); + Array size(dim); + for (int d=0; dresize(size); + MultiDimIterator > j(size); + LinkedListIterator i(l); + for (; i; i++,j++) { + (*pa)(j)=*i; + } +} + +int read_equi_tensor(Tensor *pa, int dim, const char *filename) { + ifstream file(filename); + return read_equi_tensor(pa,dim,file); +} + +char *helpstring="Insert more help here"; + +int main(int argc, char *argv[]) { + char *hesfilename="hessian.out"; + int n=0; + int sigdig=5; + int dohelp=0; + int dummy=0; + AskStruct options[]={ + {"","Skeleton for atat-like codes" MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Input file defining the lattice (defaults: lat.in)",STRINGVAL,&hesfilename}, + {"-n","An integer parameter",INTVAL,&n}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + Array node(3); + read_vector(&node(0).center,"pos0.in"); + {ifstream file("e0.in"); file >> node(0).coef0;} + node(0).coef.resize(2); + read_equi_tensor(&node(0).coef(0),1,"der0.in"); + read_equi_tensor(&node(0).coef(1),2,"hes0.in"); + + read_vector(&node(1).center,"pos1.in"); + {ifstream file("e1.in"); file >> node(1).coef0;} + node(1).coef.resize(2); + read_equi_tensor(&node(1).coef(0),1,"der1.in"); + read_equi_tensor(&node(1).coef(1),2,"hes1.in"); + + read_vector(&node(2).center,"pos2.in"); + {ifstream file("e2.in"); file >> node(2).coef0;} + node(2).coef.resize(2); + read_equi_tensor(&node(2).coef(0),1,"der2.in"); + read_equi_tensor(&node(2).coef(1),2,"hes2.in"); + /* + read_vector(&node(3).center,"pos3.in"); + {ifstream file("e3.in"); file >> node(3).coef0;} + node(3).coef.resize(2); + read_equi_tensor(&node(3).coef(0),1,"der3.in"); + read_equi_tensor(&node(3).coef(1),2,"hes3.in"); + */ + Array > connect; + { + ifstream cfile("con.in"); + cfile >> connect; + } + InterpolPolyForm pot(node, connect); + Array x(3); + for (x(0)=-1; x(0)<=1; x(0)+=0.05) { + for (x(1)=-1; x(1)<=1; x(1)+=0.05) { + for (x(2)=0; x(2)<=0; x(2)+=0.05) { + cout << x(0) << " " << x(1) << " " << pot(x) << endl; + } + } + cout << endl; + } +} + +/* + ifstream hesfile(hesfilename); + Array2d hes(iVector2d(n,n)); + MultiDimIterator i(iVector2d(n,n)); + for (; i; i++) { + hesfile >> hes(i); + } + // cout << hes << endl; + Array lambda; + Array2d vect; + diagonalize_symmetric_matrix(&lambda,&vect,hes); + for (int j=0; j +#include "linalg.h" +#include "stringo.h" +#include "xtalutil.h" +#include "parse.h" +#include "opti.h" +#include "strinterf.h" + +class MotionEpicycle: public FunctionWithGrad { + FunctionWithGrad *pfunc; + OptimizerParam sparam; + OptimizerParam sparam_save; + Real slen; + Real constif; + Array s0; + Real energy; + Array gradenergy; +public: + MotionEpicycle(FunctionWithGrad *_pfunc): FunctionWithGrad(), sparam(), s0(), gradenergy() {pfunc=_pfunc;} + void init(const OptimizerParam &_sparam, Real _slen, Real _constif) { + sparam=_sparam; + sparam_save=_sparam; + slen=_slen; + constif=_constif; + } + void set_arg(const Array &c) { + cout << "Ion Motion" << endl; + SmallEpicycle sepi(pfunc); + sepi.init(c); + energy=pfunc->get_val(); // assumes set_arg was called in sepi; + Array f0; + pfunc->get_grad(&f0); + + system("cp str.out str_current.out"); + + cout << "grad(c)= "; tracev(f0); + if (s0.get_size()==0) { + ifstream file("epidir.out"); + if (file) { + file >> s0; + } + else { + product(&s0,f0,-slen/norm(f0)); + // for (int i=0; i ds0(s0); + conjugate_gradient_on_sphere(&s0,sparam,&sepi); + diff(&ds0,ds0,s0); + if (norm(ds0)!=0.0) {sparam.trialstep=max(min(1.5*norm(ds0),sparam_save.trialstep),sparam.trialstep/10.);} + cout << "epi_trial_step= " << sparam.trialstep << endl; + cout << "epidir= " << s0.get_size() << " "; tracev(s0); + { + ofstream file("epidir.out"); + file << s0; + } + + { + ofstream file("epipos.out"); + file << c; + } + cout << "epipos= " << c.get_size() << " "; tracev(c); + + Array f1,f2; + Real e1,e2; + Array cs; + + sum(&cs,c,s0); + //pfunc->set_arg(cs); + pfunc->get_grad(&f1); + e1=pfunc->get_val(); + cout << "plotend1= "; tracevl(cs); + cout << e1 << endl; + + diff(&cs,c,s0); + pfunc->set_arg(cs); + pfunc->get_grad(&f2); + e2=pfunc->get_val(); + cout << "plotend2= "; tracevl(cs); + cout << e2 << endl << endl << endl; + + cout << "grad(c+s)= "; tracev(f1); + cout << "grad(c-s)= "; tracev(f2); + Real s2=inner_product(s0,s0); + Real mcurv=-(e1+e2-2.*energy)/s2; + Array gradmcurv; + product(&gradmcurv,f0,-2.); + sum(&gradmcurv,gradmcurv,f1); + sum(&gradmcurv,gradmcurv,f2); + product(&gradmcurv,gradmcurv,-1./s2); + + { + Array tmp; + cout << "plotend3= "; tracevl(c); + cout << energy << endl; + product(&tmp,gradmcurv,-slen/norm(gradmcurv)); + sum(&tmp,c,tmp); + cout << "plotend4= "; tracevl(tmp); + cout << energy << endl << endl << endl; + } + + Array fperp; + ortho_project(&fperp,gradmcurv,f0); + + //Real zerocurv=-mcurv/norm(gradmcurv); + if (constif==0.) { + // constif=norm(fperp)/max(fabs(zerocurv),1e-2); + constif=norm(fperp)/fabs(mcurv); + cout << "constraint_stiffness= " << constif << endl; + } + Array fpar; + + product(&fpar,gradmcurv,mcurv*constif/norm(gradmcurv)); + + sum(&gradenergy,fpar,fperp); + //cout << "constraint_closeness= " << zerocurv << endl; + cout << "grad_par= "; tracev(fpar); + cout << "grad_perp= "; tracev(fperp); + cout << "grad_tot= "; tracev(gradenergy); + cout << "grad_norm par= " << norm(fpar) << " perp= " << norm(fperp) << endl; + cout << "mincurv= " << -mcurv << " energy= " << energy << " grad_norm= " << norm(gradenergy) << endl; + } + Real get_val(void) const {return energy;} + void get_grad(Array *df) const {*df=gradenergy;} +}; + +Real find_min_in_unstable(Array *pc, const OptimizerParam &sparam, Real slen, const OptimizerParam &steepparam, const OptimizerParam &ionparam, Real constif, FunctionWithGrad *pfunc) { + MotionEpicycle mepi(pfunc); + mepi.init(sparam,slen,constif); + if (steepest_descent(pc,steepparam,&mepi)) {return mepi.get_val();} + cout << "STARTCG" << endl; + conjugate_gradient(pc,ionparam,&mepi); + return mepi.get_val(); +} + +//these are dummy functions for debugging; + +Real myfr(Real r) { + return ipow(r,2)/2.-ipow(r,3)/6.; +} + +Real myf(Real x, Real y) { + // return pow(1+cos(x),1.5)+pow(1+cos(y),1.5)+sqr(z); + // return myfr(sqrt(sqr(x)+sqr(y)))+1.0*sqr(y)+x/8.+3.*exp(-sqr(x-2.3)-sqr(y-0.5))+sqr(x)+0.2*y; + return myfr(sqrt(sqr(x)+sqr(y)))+1.0*sqr(y)+x/8.+3.*exp(-sqr(x-2.3)-sqr(0.75*(y-0.5)))+sqr(x)+0.2*y; +} + +class MyFunc: public FunctionWithGrad { + Array x; + Array df; +public: + MyFunc(void): FunctionWithGrad(), x() {} + void set_arg(const Array &_x) { + x=_x; + df.resize(x.get_size()); + Real dx=0.01; + df(0)=(myf(x(0)+dx,x(1))-myf(x(0)-dx,x(1)))/(2.*dx); + df(1)=(myf(x(0),x(1)+dx)-myf(x(0),x(1)-dx))/(2.*dx); + //cout << "gnorm= " << norm(df) << endl; +} + Real get_val(void) const {return myf(x(0),x(1));} + void get_grad(Array *pdf) const { + *pdf=df; + } +}; + +class MyHiDFunc: public FunctionWithGrad { + Array lambda; + Array slope; + Real f; + Array df; +public: + int dim; + MyHiDFunc(void): FunctionWithGrad(), f(0), df(), lambda(), slope() { + dim=100; + lambda.resize(dim); + slope.resize(dim); + for (int i=0; i tmpparam(2); + tmpparam(0)=1.9; + tmpparam(1)=-2.0; + + AskStruct options[]={ + {"","INFlection DETection method " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-egt","Epicycle Gradient Tolerance",REALVAL,&sparam.gradtol}, + {"-ets","Epicycle Trial Step",REALVAL,&sparam.trialstep}, + {"-ems","Epicycle Maximum Step multiplier",REALVAL,&sparam.maxstep}, + {"-eml","Epicycle Multiplier in Line minimization",REALVAL,&sparam.multline}, + {"-ebl","Epicycle maximum number of Bracketing steps in Line minimizations",INTVAL,&sparam.maxbrakline}, + {"-eil","Epicycle maximum number of Iterations in Line minimizations",INTVAL,&sparam.maxitline}, + {"-eic","Epicycle maximum number of Iterations in Conjugate gradient",INTVAL,&sparam.maxitcg}, + {"-ebf","Epicycle motion Bad step Forgiveness",INTVAL,&sparam.badstrike}, + {"-eir","Epicycle iterations between conjugate gradient reset",INTVAL,&sparam.itreset}, + {"-el","Epicycle Length",REALVAL,&slen}, + + {"-ism","Ion motion Steepest descent Multiplier",REALVAL,&steepparam.trialstep}, + {"-isi","Ion motion Steepest maximum number of Iterations",INTVAL,&steepparam.maxitcg}, + {"-igt","Ion motion Gradient Tolerance",REALVAL,&ionparam.gradtol}, + {"-its","Ion motion Trial Step",REALVAL,&ionparam.trialstep}, + {"-ims","Ion motion Maximum Step multiplier",REALVAL,&ionparam.maxstep}, + {"-iml","Ion motion Multiplier in Line minimization",REALVAL,&ionparam.multline}, + {"-ibl","Ion motion maximum number of Bracketing steps in Line minimizations",INTVAL,&ionparam.maxbrakline}, + {"-iil","Ion motion maximum number of Iterations in Line minimizations",INTVAL,&ionparam.maxitline}, + {"-iic","Ion motion maximum number of Iterations in Conjugate gradient",INTVAL,&ionparam.maxitcg}, + {"-ibf","Ion motion Bad step Forgiveness",INTVAL,&ionparam.badstrike}, + {"-iir","Ion motion iterations between conjugate gradient reset",INTVAL,&ionparam.itreset}, + {"-ics","Ion motion Curvature constraint Stiffness (0=automatic)",REALVAL,&constif}, + + {"-ff","Force scale Factor",REALVAL,&forcefact}, + {"-ds","Dimension of the strain relaxation allowed (0: none, 1: along x, 2: along y,z, 3: along x,y,z (default)) ",INTVAL,&dimstrain}, + {"-ns","Do Not Scale tolerance with number of atoms",BOOLVAL,&noscale}, + {"-st","Sleep Time between read access",INTVAL,&sleeptime}, + {"-d","Use all default values",BOOLVAL,&defaults}, + {"-os","Output Structure defined by epipos.out into str.out",BOOLVAL,&outputstr}, + {"-r","Relax to minimum",BOOLVAL,&relax}, + {"","For debugging only:",TITLEVAL,NULL}, + {"-db","debug",BOOLVAL,&debug}, + {"-aex","Analytical Example (for debugging)",BOOLVAL,&analex}, + {"-t1","Temp param 1",REALVAL,&tmpparam(0)}, + {"-t2","Temp param 2",REALVAL,&tmpparam(1)} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + steepparam.gradtol=ionparam.gradtol; + + + if (analex) { + + { + MyHiDFunc f; + Array s0(f.dim); + for (int i=0; i x(2); + for (x(0)=-2.; x(0)<=2.; x(0)+=0.05) { + for (x(1)=-2.; x(1)<=2.; x(1)+=0.05) { + Real gxx=(myf(x(0)+dx,x(1))+myf(x(0)-dx,x(1))-2.*myf(x(0),x(1)))/sqr(dx); + Real gyy=(myf(x(0),x(1)+dx)+myf(x(0),x(1)-dx)-2.*myf(x(0),x(1)))/sqr(dx); + Real gxy=(myf(x(0)+dx,x(1)+dx)-myf(x(0)+dx,x(1)-dx) - ( myf(x(0)-dx,x(1)+dx)-myf(x(0)-dx,x(1)-dx) ) )/sqr(dx)/4.0; + Real t=(gxx+gyy)/2.; + Real d=gxx*gyy-gxy*gxy; // 1*x^2-2*t*x+d; + Real mincurv=t-sqrt(sqr(t)-d); + file << x(0) << " " << x(1) << " " << myf(x(0),x(1)) << " " << mincurv << endl; + } + file << endl; + } + } + + MyFunc f; + Array x(2); + // x(0)=1.2; x(1)=0.5; + // x(0)=1.9; x(1)=-0.2; + x=tmpparam; + + if (relax) { + Real e=conjugate_gradient(&x,ionparam,&f); + } + else { + Real e=find_min_in_unstable(&x,sparam,slen,steepparam,ionparam,constif,&f); + } + exit(0); + } + + + rMatrix3d axes; + Structure str; + Array atom_label; + { + Array > site_type_list; + ifstream file("str.in"); + if (!file) {ERRORQUIT("Unable to open str.in");} + parse_lattice_file(&str.cell,&str.atom_pos,&str.atom_type,&site_type_list,&atom_label,file,&axes); + fix_atom_type(&str,site_type_list); + } + + if (!noscale) { + Real scaletol=(Real)str.atom_pos.get_size(); + sparam.gradtol*=scaletol; + ionparam.gradtol*=scaletol; + steepparam.gradtol*=scaletol; + } + + OptimizedStructure optstr; + Array x; + optstr.init(&x,axes,str,atom_label,forcefact,dimstrain); + optstr.sleeptime=sleeptime; + + Real e; + if (outputstr) { + ifstream file("epipos.out"); + if (file) { + file >> x; + } + Structure curstr; + optstr.vect_to_str(&curstr,x); + { + ofstream file("str.out"); + file.setf(ios::fixed); + file.precision(5); + write_structure(curstr,atom_label,axes,file,0); + } + } + else if (relax) { + e=conjugate_gradient(&x,ionparam,&optstr); + } + else if (debug) { + for (int j=0; j<6; j++) { + x(j)=(uniform01()-0.5)*0.1; + } + for (int i=0; i g; + optstr.get_grad(&g); + cout << "pred: " << optstr.get_val()+g(ionparam.maxitcg)*ionparam.trialstep << endl; + x(ionparam.maxitcg)+=ionparam.trialstep; + } + /* + MotionEpicycle epi(&optstr); + epi.init(sparam, slen, constif); + for (int i=0; i g; + epi.get_grad(&g); + cout << "pred: " << epi.get_val()+g(ionparam.maxitcg)*ionparam.trialstep << endl; + x(ionparam.maxitcg)+=ionparam.trialstep; + } + */ + } + else { + ifstream file("epipos.out"); + if (file) { + file >> x; + } + e=find_min_in_unstable(&x, sparam,slen,steepparam,ionparam,constif,&optstr); + } + + { + ofstream ofile("cenergy.out"); + ofile.setf(ios::fixed); + ofile.precision(sigdig); + ofile << e << endl; + } + + Structure relstr; + optstr.vect_to_str(&relstr,x); + { + ofstream ofile("cstr_relax.out"); + ofile.setf(ios::fixed); + ofile.precision(sigdig); + write_structure(relstr,atom_label,axes,ofile,0); + } + cout << "infdet terminated normally" << endl; + + /* + MyFunc f; + + OptimizerParam ionparam; + ionparam.gradtol=1e-4; + ionparam.trialstep=0.02; + ionparam.maxstep=1.0; + ionparam.multline=2.0; + ionparam.maxitline=20; + ionparam.maxitcg=40; + + Array x(2); + x(0)=1.8; x(1)=-0.3; + + conjugate_gradient(&x,ionparam,&f); + */ + +/* + OptimizerParam param; + param.gradtol=1e-3; + param.trialstep=0.02; + param.maxstep=0.3; + param.multline=2.0; + param.maxitline=20; + MyFunk func; + Real x=0; + func.set_arg(x); + min_func1d(&x,param,&func); + cout << "Min= " << x << endl; +*/ + + /* + { + rMatrix3d s; + Array x(7); + for (int i=0; i<7; i++) {x(i)=i;} + for (int d=3; d>=0; d--) { + Array6_to_Matrix3d(&s,x,d); + cout << d << endl; + cout << s << endl; + } + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + s(i,j)=i*3+j; + } + } + for (int d=3; d>=0; d--) { + cout << num_strain_dim(d) << endl; + for (int i=0; i0 ? 1. : 0.)); +} + +int integer_ratio(int *pp, int *pq, Real x, Real epsilon) { + int &p=*pp; + int &q=*pq; + int maxit=20; + int p1,q1,p2,q2,n,g; + Real r; + + n=(int)rint(x); + r=x-n; + g=(int)sign(r); + p=n; + p1=p; + q1=1; + q=1; + p2=1; + q2=0; + + int counter=0; + while (fabs((Real)p/(Real)q-x) > epsilon) { + n=(int)rint(g/r); + r=g/r-n; + p=n*p1+g*p2; + q=n*q1+g*q2; + g= + p2=p1; + q2=q1; + p1=p; + q1=q; + counter++; + if (counter>maxit) return 0; + } + return 1; +} + +int factorial(int n) { + int f=1; + for (int i=2; i<=n; i++) {f*=i;} + return f; +} diff --git a/src/integer.hh b/src/integer.hh new file mode 100644 index 0000000..0be48c0 --- /dev/null +++ b/src/integer.hh @@ -0,0 +1,21 @@ +#ifndef _INTEGER__H_ +#define _INTEGER__H_ + +#include +#include "misc.h" + +extern Real zero_tolerance; + +inline int near_zero(Real x) { + return (fabs(x) +#include "parse.h" +#include "getvalue.h" +#include "version.h" + +char *helpstring="Insert more help here"; + +int main(int argc, char *argv[]) { + // parsing command line. See getvalue.hh for details; + char *strfilename="str.out"; + char *procfilename=""; + Real r=10; + int nbneigh=0; + int sigdig=5; + int nbu=40; + int nbv=20; + Real slab=5; + Real bufwid=0.; + int dohelp=0; + int dummy=0; + AskStruct options[]={ + {"","Inverse WULFF construction " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-s","Input file defining the structure (default: str.out)",STRINGVAL,&strfilename}, + {"-r","radius",REALVAL,&r}, + {"-nn","max number of neighbor for solute removal",INTVAL,&nbneigh}, + {"-nu","number of horizontal subdivisions",INTVAL,&nbu}, + {"-nv","number of vertical subdivisions",INTVAL,&nbv}, + {"-pf","Output file containing the processed structure (default: no output)",STRINGVAL,&procfilename}, + {"-st","Slab Thickness",REALVAL,&slab}, + {"-bw","Buffer width",REALVAL,&bufwid}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + cout.setf(ios::fixed); + cout.precision(sigdig); + + // parsing lattice and structure files. See parse.hh for detail; + Structure str; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream strfile(strfilename); + if (!strfile) ERRORQUIT("Unable to open structure file"); + parse_lattice_file(&str.cell, &str.atom_pos, &str.atom_type, &labellookup, &label, strfile, &axes); + } + + int nbcut=0; + for (int at=0; at0) { + ofstream file(procfilename); + rMatrix3d iaxes=!axes; + write_axes(axes,file,0); + rMatrix3d frac_cell=iaxes*str.cell; + for (int i=0; i<3; i++) { + file << frac_cell.get_column(i) << endl; + } + for (int i=0; i=0) { + nbat++; + org+=str.atom_pos(at); + } + } + org=org/(Real)nbat; + + Real du=2.*M_PI/(Real)nbu; + Real dv=M_PI/(Real)nbv; + for (Real u=0; u<2.*M_PI+du/2.; u+=du) { + for (Real v=0; v=0) { + maxp=max(maxp,(str.atom_pos(at)-org)*dir); + } + } + int nbslab=0; + for (int at=0; at=0) { + Real p=(str.atom_pos(at)-org)*dir; + if (maxp-p<=slab) {nbslab++;} + } + } + cout << u << "\t" << v << "\t" << maxp << "\t" << nbslab << endl; + } + cout << endl; + } + +} diff --git a/src/keci.c++ b/src/keci.c++ new file mode 100644 index 0000000..993f0aa --- /dev/null +++ b/src/keci.c++ @@ -0,0 +1,25 @@ +#include "keci.h" +#include "linalg.h" + +void MultiKSpaceECI::get_k_space_eci(Array2d *pft_eci, const rVector3d &k, Real x) { + if (theonlyone) { + theonlyone->get_k_space_eci(pft_eci,k,x); + return; + } + zero_array(pft_eci); + iVector2d size=pft_eci->get_size(); + Array2d mat; + LinkedListIterator i(*this); + for ( ; i; i++) { + i->get_k_space_eci(&mat,k,x); + sum(pft_eci,*pft_eci,mat); + } +} + +void MultiKSpaceECI::check_only_one(void) { + if (LinkedList::get_size()==1) { + LinkedListIterator i(*this); + theonlyone=i; + } +} + diff --git a/src/keci.hh b/src/keci.hh new file mode 100644 index 0000000..497f3c5 --- /dev/null +++ b/src/keci.hh @@ -0,0 +1,22 @@ +#ifndef __KECI_H__ +#define __KECI_H__ + +#include +#include "xtalutil.h" +#include "linklist.h" + +class KSpaceECI { + public: + virtual void static_init(const Structure &lattice) {} + virtual void get_k_space_eci(Array2d *p_keci, const rVector3d &k, Real x) {} +}; + +class MultiKSpaceECI: public KSpaceECI, public LinkedList { + KSpaceECI *theonlyone; + public: + MultiKSpaceECI(void): KSpaceECI(), LinkedList() {theonlyone=NULL;} + void get_k_space_eci(Array2d *pft_eci, const rVector3d &k, Real x); + void check_only_one(void); +}; + +#endif diff --git a/src/kmeci.c++ b/src/kmeci.c++ new file mode 100644 index 0000000..1bce4ef --- /dev/null +++ b/src/kmeci.c++ @@ -0,0 +1,9 @@ +#include "kmeci.h" +#include "linalg.h" + +void MultiKSpaceECI::get_k_space_eci(Array > > > > *p_ft_eci, const Array &x) { + LinkedListIterator i(*this); + for ( ; i; i++) { + i->get_k_space_eci(p_ft_eci,x); + } +} diff --git a/src/kmeci.hh b/src/kmeci.hh new file mode 100644 index 0000000..ad03d89 --- /dev/null +++ b/src/kmeci.hh @@ -0,0 +1,21 @@ +#ifndef __KMECI_H__ +#define __KMECI_H__ + +#include +#include "xtalutil.h" +#include "linklist.h" +#include "getvalue.h" + +class KSpaceECI { + public: + virtual void init(const Structure &_lattice, const Array > &_site_type_list, const Array &atom_label, const iVector3d &_supercell, const Array > > &_corrfunc) {} + virtual void get_k_space_eci(Array > > > > *p_ft_eci, const Array &x) {} +}; + +class MultiKSpaceECI: public KSpaceECI, public LinkedList { + public: + MultiKSpaceECI(void): KSpaceECI(), LinkedList() {} + void get_k_space_eci(Array > > > > *p_ft_eci, const Array &x); +}; + +#endif diff --git a/src/kmesh.c++ b/src/kmesh.c++ new file mode 100644 index 0000000..5c505b0 --- /dev/null +++ b/src/kmesh.c++ @@ -0,0 +1,111 @@ +#include +#include "vectmac.h" +#include "array.h" +#include "findsym.h" +#include "getvalue.h" + +void read_matrix(rMatrix3d *m, istream &infile) { + for (int i=0; i<3; i++) { + rVector3d tmp; + infile >> tmp; + m->set_column(i,tmp); + } +} + +void write_matrix(const rMatrix3d &m, ostream &outfile) { + for (int i=0; i<3; i++) { + outfile << m.get_column(i) << endl; + } +} + +int main(int argc, char *argv[]) { + int alldefault=0,quiet=0,round=0, even=0; + AskStruct options[]={ + {"-d","Use all default options",BOOLVAL,&alldefault}, + {"-q","Quiet!",BOOLVAL,&quiet}, + {"-r","Round output to next largest integer",BOOLVAL,&round}, + {"-e","Force nb of kpoints to be an even number",BOOLVAL,&even} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (even) {round=1;} + + if (!quiet) {cout << "Number of k-points desired:" << endl;} + Real nb_kpts; + cin >> nb_kpts; + rMatrix3d cell; + if (!quiet) {cout << "Cell: (in cartesian, one lattice vector per line with coordinates separated by spaces)" << endl;} + read_matrix(&cell,cin); + rMatrix3d reciprocal=~(!cell); + rVector3d proj; + for (int i=0; i<3; i++) { + rVector3d a=reciprocal.get_column( i ); + rVector3d b=reciprocal.get_column((i+1)%3); + rVector3d c=reciprocal.get_column((i+2)%3); + proj(i)=fabs(a*((b^c)/norm(b^c))); + } + { + iVector3d equals(0,0,0); + rMatrix3d ireciprocal=!reciprocal; + Array point_op; + find_pointgroup(&point_op,reciprocal); + for (int op=0; op1) { + for (int i=0; i<3; i++) { + proj(i)=1.; + } + } else { + for (int i=0; i<3; i++) { + if (equals(i)==1) { + Real avg=sqrt(proj(i)*proj((i+1)%3)); + proj(i)=avg; + proj((i+1)%3)=avg; + } + } + } + + } + Real normalizer=pow(nb_kpts/(proj(0)*proj(1)*proj(2)),1./3.); + if (!quiet) {cout << "Suggested division in k point mesh for each axis:" << endl;} + rVector3d mesh=proj*normalizer; + if (round) { + iVector3d imesh=to_int(mesh); + rVector3d fmesh=mesh-to_real(imesh); + if (even) { + for (int j=0; j<3; j++) { + if (imesh(j)%2) { + imesh(j)++; + fmesh(j)=0.; + } + } + } + while (imesh(0)*imesh(1)*imesh(2)bestf) { + bestf=fmesh(i); + } + } + for (int i=0; i<3; i++) { + if (fabs(fmesh(i)-bestf) +#include "xtalutil.h" +#include "keci.h" +#include "linalg.h" +#include "plugin.h" + +// Kubic Harmonics +// l=0,1,2,3 gives K_0,K_4,K_6,K_8; +Real kubic_harm(const rVector3d &k, int l) { + Real r2=norm2(k); + Real A=sqrt(1./(4.*M_PI)); + switch (l) { + case 0: return(A); + case 1: return(A*sqrt(21./4.)*(1.-5.*(ipow(k(0),2)*ipow(k(1),2) + ipow(k(0),2)*ipow(k(2),2) + ipow(k(1),2)*ipow(k(2),2)) / ipow(r2,2))); + case 2: return(A*sqrt(13./2.)*(1./4.)*(7*(ipow(k(0),6)+ipow(k(1),6)+ipow(k(2),6)+30*ipow(k(0),2)*ipow(k(1),2)*ipow(k(2),2))/ipow(r2,3) - 5)); + case 3: return(A*sqrt(561.)*(1./8.)*(ipow(k(0),8) + ipow(k(1),8) + ipow(k(2),8) - 14*(ipow(k(0),6)*ipow(k(1),2) + ipow(k(0),6)*ipow(k(2),2) + ipow(k(1),6)*ipow(k(2),2) + ipow(k(0),2)*ipow(k(1),6) + ipow(k(0),2)*ipow(k(2),6) + ipow(k(1),2)*ipow(k(2),6)) + 35.*(ipow(k(0),4)*ipow(k(1),4) + ipow(k(0),4)*ipow(k(2),4) + ipow(k(1),4)*ipow(k(2),4))) / ipow(r2,4)); + default: ERRORQUIT("Kubic harmonics l > 8 not implemented yet."); + } + return 0.; +} + +#ifndef NO_OBJECTS_IN_KSPACE_CS + +#ifdef STATICCSCOEF +#define STATICCSCOEFP static +#else +#define STATICCSCOEFP +#endif + +class CS_KSpaceECI: public KSpaceECI { + STATICCSCOEFP Array > kubic_coef; // kubic_coef(l)(conc), l=0,1,2,3,... conc in [0,1]; + STATICCSCOEFP Real ikc; // inverse k-vector cutoff for attenuation; + STATICCSCOEFP int nb_atom_in_cell; // nb atom per unit cell of lattice; + + public: + // Constructor: don't touch; +#ifdef STATICCSCOEF + CS_KSpaceECI(void): KSpaceECI() {} +#else + CS_KSpaceECI(void): KSpaceECI(), kubic_coef() {} +#endif + // read in parameters from the file cs.in; + void static_init(const Structure &lattice) { + nb_atom_in_cell=lattice.atom_pos.get_size(); + // open file and error checking; + ifstream file("cs.in"); + if (!file) { + cerr << "Unable to open cs.in. Will ignore constituent strain." << endl; + kubic_coef.resize(0); + } + else { + // if ok, read file in; + file >> ikc; + int n_term=0; + int n_conc=0; + file >> n_term; + file >> n_conc; + kubic_coef.resize(n_term); + for (int i=0; i tmp(n_conc); + for (int j=0; j> tmp(j); + } + // initialize and LinearInterpolator object, see linalg.h; + // (to interpolate between concentration grid points); + kubic_coef(i).init(0.,1.,tmp); + } + } + } + + // calculate K space ECI associated with constituent strain energy for structure str; + void get_k_space_eci(Array2d *p_keci, const rVector3d &k, Real x) { + p_keci->resize(iVector2d(nb_atom_in_cell,nb_atom_in_cell)); + Real e=0.; + if (norm2(k)>sqr(zero_tolerance)) { + for (int l=0; l CS_KSpaceECIRegister("cs"); // register plug-in under name "cs"; + +#ifdef STATICCSCOEF +// static storage space of parameters; +Array > CS_KSpaceECI::kubic_coef; +Real CS_KSpaceECI::ikc; +int CS_KSpaceECI::nb_atom_in_cell; +#endif + +#endif diff --git a/src/kspacees.c++ b/src/kspacees.c++ new file mode 100644 index 0000000..1cd2f46 --- /dev/null +++ b/src/kspacees.c++ @@ -0,0 +1,135 @@ +#include +#include "xtalutil.h" +#include "kmeci.h" +#include "linalg.h" +#include "plugin.h" +#include "calccorr.h" + +class ES_KSpaceECI: public KSpaceECI { + Structure lattice; + iVector3d supercell; + Real scrn; + Array > site_type_list; + Array species_charges; + Array > > corrfunc; + public: + // Constructor: don't touch; + ES_KSpaceECI(void): KSpaceECI(), lattice(), supercell(), site_type_list(), species_charges() {} + // read in parameters from the file es.in; + void init(const Structure &_lattice, const Array > &_site_type_list, const Array &atom_label, const iVector3d &_supercell, const Array > > &_corrfunc) { + lattice=_lattice; + site_type_list=_site_type_list; + supercell=_supercell; + corrfunc=_corrfunc; + + species_charges.resize(atom_label.get_size()); + zero_array(&species_charges); + // open file and error checking; + { + ifstream file("es.in"); + if (!file) ERRORQUIT("Unable to open es.in file."); + while (!file.eof()) { + AutoString specie; + skip_delim(file," \t=\n"); + get_string(&specie,file," \t="); + skip_delim(file," \t="); + if (file.eof()) break; + if (specie==AutoString("scrn")) { + file >> scrn; + } else { + int wspecie=index_in_array(atom_label,specie); + if (wspecie==-1) ERRORQUIT("Unknown specie in electrostatic predictor."); + file >> species_charges(wspecie); + } + } + } + } + Real FT_trunc_coulomb(Real k, Real c) { + if (k==0.) {return 0.;} + Real kc=k*c; + Real k2=k*k; + Real coskc=cos(kc); + Real sinkc=sin(kc); + return (-15.*coskc*pow(kc,-2.) + 75.*sinkc*pow(kc,-3.) +180.*coskc*pow(kc,-4.) -180.*sinkc*pow(kc,-5.))*4.*M_PI/k2; + } + void get_k_space_eci(Array > > > > *p_ft_eci, const Array &x) { + Real kelec=14.39964886; // Coulomb constant in eV*A/e^2; + Array > corr_to_chg(lattice.atom_pos.get_size()); + for (int s=0; s corrmat,icorrmat; + int t=lattice.atom_type(s); + int comp=site_type_list(t).get_size(); + make_square_corr_matrix(&corrmat,corrfunc(comp-2)); + invert_matrix(&icorrmat,corrmat); + Array chg(comp); + for (int ss=0; ss cell(supercell); + iVector3d &vcell=(iVector3d &)cell; + for ( ; cell; cell++) { + //int offset=((vcell(0)*supercell(1) + vcell(1))*supercell(2) + vcell(2)) //permbug; + int offset=((vcell(2)*supercell(1) + vcell(1))*supercell(0) + vcell(0)); + //rVector3d k0=flip_into_brillouin_1(k_mesh*to_real(cell),recip_lat); + rVector3d k0=k_mesh*to_real(cell); + Complex sum=0; + if (readdump) { + indumpfile >> sum; + if (!indumpfile) { + readdump=0; + cerr << "Stopped reading esdump.in and started writing esdump.out" << endl; + outdumpfile.open("esdump.out", ios::app); + } + } + if (!readdump) { + MultiDimIterator h(-maxh,maxh); + for ( ; h; h++) { + rVector3d k=2.*M_PI*(k0+k_big_mesh*to_real(h)); + Real phase=(k*(lattice.atom_pos(t)-lattice.atom_pos(s))); + Complex exp_phase(cos(phase),sin(phase)); + Complex deci=kelec*scrn*exp_phase*FT_trunc_coulomb(norm(k),c)*corr_to_chg(s)(ss)*corr_to_chg(t)(tt)/omega; +//cerr << ((iVector3d &)h) << " " << deci << endl; + sum+=deci/2.; + } + outdumpfile << sum << endl; + } + (*p_ft_eci)(s)(t)(ss)(tt)(offset)=sum; +//cerr << "end" << endl; + } + } + } + } + } + } +}; + +SpecificPlugIn ES_KSpaceECIRegister("es"); // register plug-in under name "es"; diff --git a/src/kubic.maple b/src/kubic.maple new file mode 100644 index 0000000..787aa13 --- /dev/null +++ b/src/kubic.maple @@ -0,0 +1,12 @@ +#maple script to plot kubic harmonic coeficients (change line a:=[?,?,?,?] below) +ipow:=proc(x,a) x^a end; +A:=sqrt(1./(4.*Pi)); +K_0:=proc(k) A end; +K_4:=proc(k) A*sqrt(21./4.)*(1.-5.*(ipow(k[1],2)*ipow(k[2],2) + ipow(k[1],2)*ipow(k[3],2) + ipow(k[2],2)*ipow(k[3],2)) ) end; +K_6:=proc(k) A*sqrt(13./2.)*(1./4.)*(7*(ipow(k[1],6)+ipow(k[2],6)+ipow(k[3],6)+30*ipow(k[1],2)*ipow(k[2],2)*ipow(k[3],2)) - 5) end; +K_8:=proc(k) A*sqrt(561.)*(1./8.)*(ipow(k[1],8) + ipow(k[2],8) + ipow(k[3],8) - 14*(ipow(k[1],6)*ipow(k[2],2) + ipow(k[1],6)*ipow(k[3],2) + ipow(k[2],6)*ipow(k[3],2) + ipow(k[1],2)*ipow(k[2],6) + ipow(k[1],2)*ipow(k[3],6) + ipow(k[2],2)*ipow(k[3],6)) + 35*(ipow(k[1],4)*ipow(k[2],4) + ipow(k[1],4)*ipow(k[3],4) + ipow(k[2],4)*ipow(k[3],4))) end; +kofpt:=proc(phi,theta) [cos(theta)*sin(phi),sin(theta)*sin(phi),cos(phi)] end; +kubic:=proc(a,phi,theta) local kp: kp:=kofpt(phi,theta): a[1]*K_0(kp)+a[2]*K_4(kp)+a[3]*K_6(kp)+a[4]*K_8(kp) end; +#plotsetup(ps,plotoptions=`colour=cmyk,width=4in,height=3in,portrait`); +a:=[?,?,?,?]; +plot3d([kubic(a,phi,theta)*cos(theta)*sin(phi),kubic(a,phi,theta)*sin(theta)*sin(phi),kubic(a,phi,theta)*cos(phi)],phi=0..Pi,theta=0..2*Pi,axes=box); diff --git a/src/lattype.c++ b/src/lattype.c++ new file mode 100644 index 0000000..73fc146 --- /dev/null +++ b/src/lattype.c++ @@ -0,0 +1,434 @@ +#include "lattype.h" +#include "findsym.h" + +rMatrix3d find_reduced_cell(const rMatrix3d &cell) { + if (is_reduced_cell(cell)) {return cell;} + Real d=fabs(det(cell)); + LatticePointIterator lp[3]; + rMatrix3d curcell; + int done=0; + lp[2].init(cell,1); + + rVector3d a=(rVector3d)lp[2]; + while (near_zero(norm(a^(rVector3d)lp[2]))) {lp[2]++;} + rVector3d b=(rVector3d)lp[2]; + while (near_zero((b^a)*(rVector3d)lp[2])) {lp[2]++;} + Real lc=norm((rVector3d)lp[2]); + lp[2].init(cell,1); + while (norm((rVector3d)lp[2])tiny && ac>tiny && ab>tiny) { // Type I cell; + if (near_zero(aa-bb)) { + if (! (bc <= ac+tiny)) return 0; + } + if (near_zero(bb-cc)) { + if (! (ac<=ab+tiny)) return 0; + } + if (near_zero(bc-bb/2.)) { + if (! (ab<=2.*ac+tiny)) return 0; + } + if (near_zero(ac-aa/2.)) { + if (! (ab<=2.*bc+tiny)) return 0; + } + if (near_zero(ab-aa/2.)) { + if (! (ac<=2.*bc+tiny)) return 0; + } + return 1; + } + else if ((bc<=tiny && ac<=tiny && ab<=tiny)) { // Type II cell; + if (! (fabs(bc)+fabs(ac)+fabs(ab)<=(aa+bb)/2.+tiny)) return 0; + if (near_zero(aa-bb)) { + if (! (fabs(bc) <= fabs(ac)+tiny)) return 0; + } + if (near_zero(bb-cc)) { + if (! (fabs(ac)<=fabs(ab)+tiny)) return 0; + } + if (near_zero(fabs(bc)-bb/2.)) { + if (! (near_zero(ab))) return 0; + } + if (near_zero(fabs(ac)-aa/2.)) { + if (! (near_zero(ab))) return 0; + } + if (near_zero(fabs(ab)-aa/2.)) { + if (! (near_zero(ac))) return 0; + } + if (near_zero(fabs(bc)+fabs(ac)+fabs(ab)-(aa+bb)/2.)) { + if (! (aa <= 2.*fabs(ac)+fabs(ab)+tiny) ) return 0; + } + return 2; + } + else return 0; +} + +int tconv[][9]={ + { 1,-1, 1, 1, 1,-1, -1, 1, 1}, // 1; + { 1,-1, 0, -1, 0, 1, -1,-1,-1}, // 2; + { 1, 0, 0, 0, 1, 0, 0, 0, 1}, // 3; + { 1, 0, 1, 1, 1, 0, 0, 1, 1}, // 5; + { 1,-1, 0, -1, 0, 1, -1,-1,-1}, // 4; + { 0, 1, 1, 1, 0, 1, 1, 1, 0}, // 6; + { 1, 0, 1, 1, 1, 0, 0, 1, 1}, // 7; + {-1,-1, 0, -1, 0,-1, 0,-1,-1}, // 8; + { 1, 0, 0, -1, 1, 0, -1,-1, 3}, // 9; + { 1, 1, 0, 1,-1, 0, 0, 0,-1}, // 10; + { 1, 0, 0, 0, 1, 0, 0, 0, 1}, // 11; + { 1, 0, 0, 0, 1, 0, 0, 0, 1}, // 12; + { 1, 1, 0, -1, 1, 0, 0, 0, 1}, // 13; + { 1, 0, 0, 0, 1, 0, 1, 1, 2}, // 15; + {-1,-1, 0, 1,-1, 0, 1, 1, 2}, // 16; + { 1, 1, 0, -1, 1, 0, 0, 0, 1}, // 14; + { 1, 1, 0, 1,-1, 0, -1, 0,-1}, // 17; { 1,-1, 0, 1, 1, 0, -1, 0,-1}, // 17; + { 0,-1, 1, 1,-1,-1, 1, 0, 0}, // 18; + {-1, 0, 0, 0,-1, 1, -1, 1, 1}, // 19; + { 0, 1, 1, 0, 1,-1, -1, 0, 0}, // 20; + { 0, 1, 0, 0, 0, 1, 1, 0, 0}, // 21; + { 0, 1, 0, 0, 0, 1, 1, 0, 0}, // 22; + { 0, 1, 1, 0,-1, 1, 1, 0, 0}, // 23; + { 1, 2, 1, 0,-1, 1, 1, 0, 0}, // 24; + { 0, 1, 1, 0,-1, 1, 1, 0, 0}, // 25; + { 1, 0, 0, -1, 2, 0, -1, 0, 2}, // 26; + {-1, 2, 0, -1, 0, 0, 0,-1, 1}, // 27; + {-1, 0, 0, -1, 0, 2, 0, 1, 0}, // 28; + { 1, 0, 0, 1,-2, 0, 0, 0,-1}, // 29; + { 0, 1, 0, 0, 1,-2, -1, 0, 0}, // 30; + { 1, 0, 0, 0, 1, 0, 0, 0, 1}, // 31; + { 1, 0, 0, 0, 1, 0, 0, 0, 1}, // 32; + { 0,-1, 0, 0, 1, 2, -1, 0, 0}, // 40; + { 0,-1, 0, -1, 0, 0, 0, 0,-1}, // 35; + { 1, 0, 0, -1, 0,-2, 0, 1, 0}, // 36; + { 1, 0, 0, 0, 1, 0, 0, 0, 1}, // 33; + {-1, 0, 0, 1, 2, 0, 0, 0,-1}, // 38; + {-1, 0, 0, 0, 0,-1, 0,-1, 0}, // 34; + {-1, 0, 0, 0,-1, 0, 1, 1, 2}, // 42; + { 0,-1,-2, 0,-1, 0, -1, 0, 0}, // 41; + { 1, 0, 2, 1, 0, 0, 0, 1, 0}, // 37; + {-1,-2, 0, -1, 0, 0, 0, 0,-1}, // 39; + {-1, 0, 0, -1,-1,-2, 0,-1, 0}, // 43; + { 1, 0, 0, 0, 1, 0, 0, 0, 1} // 44; +}; + +BravaisType bt_table[]={ + BT_cF, // 1; + BT_hR, // 2; + BT_cP, // 3; + BT_cI, // 5; + BT_hR, // 4; + BT_tI, // 6; + BT_tI, // 7; + BT_oI, // 8; + BT_hR, // 9; + BT_mC, // 10; + BT_tP, // 11; + BT_hP, // 12; + BT_oC, // 13; + BT_tI, // 15; + BT_oF, // 16; + BT_mC, // 14; + BT_mC, // 17; + BT_tI, // 18; + BT_oI, // 19; + BT_mC, // 20; + BT_tP, // 21; + BT_hP, // 22; + BT_oC, // 23; + BT_hR, // 24; + BT_mC, // 25; + BT_oF, // 26; + BT_mC, // 27; + BT_mC, // 28; + BT_mC, // 29; + BT_mC, // 30; + BT_aP, // 31; + BT_oP, // 32; + BT_oC, // 40; + BT_mP, // 35; + BT_oC, // 36; + BT_mP, // 33; + BT_oC, // 38; + BT_mP, // 34; + BT_oI, // 42; + BT_mC, // 41; + BT_mC, // 37; + BT_mC, // 39; + BT_mI, // 43; // oddity in the International tables of xtallography; + BT_aP // 44; +}; + +int ct_table[]={ + 1, // 1; + 1, // 2; + 2, // 3; + 2, // 5; + 2, // 4; + 2, // 6; + 2, // 7; + 2, // 8; + 1, // 9; + 1, // 10; + 2, // 11; + 2, // 12; + 2, // 13; + 2, // 15; + 2, // 16; + 2, // 14; + 2, // 17; + 1, // 18; + 1, // 19; + 1, // 20; + 2, // 21; + 2, // 22; + 2, // 23; + 2, // 24; + 2, // 25; + 1, // 26; + 1, // 27; + 1, // 28; + 1, // 29; + 1, // 30; + 1, // 31; + 2, // 32; + 2, // 40; + 2, // 35; + 2, // 36; + 2, // 33; + 2, // 38; + 2, // 34; + 2, // 42; + 2, // 41; + 2, // 37; + 2, // 39; + 2, // 43; + 2 // 44; +}; + +BravaisType find_bravais_type(rMatrix3d *p_conventional, const rMatrix3d &cell) { + rVector3d a=cell.get_column(0); + rVector3d b=cell.get_column(1); + rVector3d c=cell.get_column(2); + Real A=a*a; + Real B=b*b; + Real C=c*c; + Real D=b*c; + Real E=a*c; + Real F=a*b; + int celltype=(D>zero_tolerance ? 1 : 2); + rVector3d v[44]; + BravaisType bt; + int i_min; + int i_max; + rVector3d DEF(D,E,F); + + v[ 0]=rVector3d( A/2., A/2., A/2.); + v[ 1]=rVector3d( D , D , D ); + v[ 2]=rVector3d( 0 , 0 , 0 ); + v[ 3]=rVector3d(-A/3.,-A/3.,-A/3.); + v[ 4]=rVector3d( D , D , D ); + v[ 5]=rVector3d( D , D , F ); + v[ 6]=rVector3d( D , E , E ); + v[ 7]=rVector3d( D , E , F ); + + v[ 8]=rVector3d( A/2., A/2., A/2.); + v[ 9]=rVector3d( D , D , F ); + v[10]=rVector3d( 0 , 0 , 0 ); + v[11]=rVector3d( 0 , 0 ,-A/2.); + v[12]=rVector3d( 0 , 0 , F ); + v[13]=rVector3d(-A/2.,-A/2., 0. ); + v[14]=rVector3d( D , D , F ); + v[15]=rVector3d( D , D , F ); + v[16]=rVector3d( D , E , F ); + + v[17]=rVector3d( A/4., A/2., A/2.); + v[18]=rVector3d( D , A/2., A/2.); + v[19]=rVector3d( D , E , E ); + v[20]=rVector3d( 0 , 0 , 0 ); + v[21]=rVector3d(-B/2., 0 , 0 ); + v[22]=rVector3d( D , 0 , 0 ); + v[23]=rVector3d( D ,-A/3.,-A/3.); + v[24]=rVector3d( D , E , E ); + + v[25]=rVector3d( A/4., A/2., A/2.); + v[26]=rVector3d( D , A/2., A/2.); + v[27]=rVector3d( D , A/2., D*2.); + v[28]=rVector3d( D , D*2., A/2.); + v[29]=rVector3d( B/2., E , E*2.); + v[30]=rVector3d( D , E , F ); + v[31]=rVector3d( 0 , 0 , 0 ); + v[32]=rVector3d(-B/2., 0 , 0 ); + v[33]=rVector3d( D , 0 , 0 ); + v[34]=rVector3d( 0 ,-A/2., 0. ); + v[35]=rVector3d( 0 , E , 0. ); + v[36]=rVector3d( 0 , 0. ,-A/2.); + v[37]=rVector3d( 0 , 0. , F ); + v[38]=rVector3d(-B/2.,-A/2., 0. ); + v[39]=rVector3d(-B/2., E , 0. ); + v[40]=rVector3d( D ,-A/2., 0. ); + v[41]=rVector3d( D , 0. ,-A/2.); + v[42]=rVector3d( D , E , F ); + v[43]=rVector3d( D , E , F ); + + int i; + for (i=0; i<44; i++) { + if (i>=0 && i<=7 && !(near_zero(A-B) && near_zero(B-C))) continue; + if (i>=8 && i<=16 && !near_zero(A-B)) continue; + if (i>=17 && i<=24 && !near_zero(B-C)) continue; + if (near_zero(norm(v[i]-DEF)) && celltype==ct_table[i]) { + if (i==5 || i==6 || i==7 || i==14 || i==16 || i==23 || i==42) { + if (near_zero(2*fabs(D+E+F)-(A+B))) { + if (i==42) { + if (near_zero(fabs(2*D+F)-B)) break; + } + else { + break; + } + } + } + else { + break; + } + } + } + iMatrix3d T; + T.set(tconv[i]); + (*p_conventional)=rMatrix3d(cell)*(~to_real(T)); + return bt_table[i]; +} + +rMatrix3d find_symmetric_cell(const rMatrix3d &cell) { + Real transfo[][9]={ + { 1. , 0. , 0. , 0. , 1. , 0. , 0. , 0. , 1. }, + { 0. , 0.5, 0.5, 0.5, 0. , 0.5, 0.5, 0.5, 0. }, + {-0.5, 0.5, 0.5, 0.5,-0.5, 0.5, 0.5, 0.5,-0.5 }, + { 0.5,-0.5, 0. , 0.5, 0.5, 0. , 0. , 0. , 1. }, + { 2. , 1. , 1. , -1. , 1. , 1. , -1. ,-2. , 1. } + }; + rMatrix3d reduced_cell=find_reduced_cell(cell); + rMatrix3d conv_cell; + BravaisType bt=find_bravais_type(&conv_cell, reduced_cell); + int t; + if (bt & BT_P) { + t=0; + } + else if (bt & BT_F) { + t=1; + } + else if (bt & BT_I) { + t=2; + } + else if (bt & BT_C) { + t=3; + } + else if (bt & BT_R) { + t=4; + } + rMatrix3d T; + T.set(transfo[t]); + if (t==4) T=T*(1./3.); + return conv_cell*(~T); +} + +void print_bravais_type(AutoString *s, BravaisType bt) { + char codes[]="PFICRctomah"; + for (int i=strlen(codes)-1; i>=0; i--) { + if (bt & (1<(0.5+zero_tolerance) ) l++; + v[1]=l; + while (1) { + while ( (v[0]^v[1])*l p(iVector2d(-1,-1),iVector2d(1,1)); + for (; p; p++) { + rVector2d r=to_real(p); + rVector3d u=r(0)*v[0]+r(1)*v[1]; + if (fabs(l*u/norm2(u))>0.5+zero_tolerance) break; + } + if (!p) break; + l++; + } + v[2]=l; + for (int i=0; i<3; i++) {psupercell->set_column(i,v[i]);} + *psupercell=find_symmetric_cell(*psupercell); +} +*/ + +void find_smallest_supercell_enclosing_sphere(rMatrix3d *psupercell, const rMatrix3d cell, Real r) { + rVector3d v[3]; + LatticePointIterator l(cell); + while (norm(l)zero_tolerance) { + Real proj=(ll*v[0])/norm2(v[0]); + if (fabs(proj)<(0.5+zero_tolerance)) { + if (curlen==0.) {curlen=norm(ll);} + else if (norm(ll)>curlen+zero_tolerance) {break;} + if (proj>bestproj) { + bestproj=proj; + v[1]=ll; + } + } + } + ll++; + } + l++; + while (1) { + while ( (v[0]^v[1])*l p(iVector2d(-1,-1),iVector2d(1,1)); + for (; p; p++) { + rVector2d r=to_real(p); + rVector3d u=r(0)*v[0]+r(1)*v[1]; + if (fabs(l*u/norm2(u))>0.5+zero_tolerance) break; + } + if (!p) break; + l++; + } + v[2]=l; + for (int i=0; i<3; i++) {psupercell->set_column(i,v[i]);} + *psupercell=find_symmetric_cell(*psupercell); +} diff --git a/src/lattype.hh b/src/lattype.hh new file mode 100644 index 0000000..56df7ec --- /dev/null +++ b/src/lattype.hh @@ -0,0 +1,32 @@ +#ifndef __LATTYPE_H__ +#define __LATTYPE_H__ + +#include "vectmac.h" +#include "stringo.h" + +enum BravaisType {BT_P=1, BT_F=2, BT_I=4, BT_C=8, BT_R=16, BT_c=32, BT_t=64, BT_o=128, BT_m=256, BT_a=512, BT_h=1024, + BT_cP=BT_c|BT_P, + BT_cF=BT_c|BT_F, + BT_cI=BT_c|BT_I, + BT_tP=BT_t|BT_P, + BT_tI=BT_t|BT_I, + BT_oP=BT_o|BT_P, + BT_oF=BT_o|BT_F, + BT_oI=BT_o|BT_I, + BT_oC=BT_o|BT_C, + BT_mP=BT_m|BT_P, + BT_mC=BT_m|BT_C, + BT_mI=BT_m|BT_I, // oddity in the int'l tables of xtal; + BT_aP=BT_a|BT_P, + BT_hP=BT_h|BT_P, + BT_hR=BT_h|BT_R +}; + +rMatrix3d find_reduced_cell(const rMatrix3d &cell); +int is_reduced_cell(const rMatrix3d &cell); +BravaisType find_bravais_type(rMatrix3d *p_conventional, const rMatrix3d &cell); +void print_bravais_type(AutoString *s, BravaisType bt); +rMatrix3d find_symmetric_cell(const rMatrix3d &cell); +void find_smallest_supercell_enclosing_sphere(rMatrix3d *psupercell, const rMatrix3d cell, Real r); + +#endif diff --git a/src/linalg.c++ b/src/linalg.c++ new file mode 100644 index 0000000..9615c64 --- /dev/null +++ b/src/linalg.c++ @@ -0,0 +1,364 @@ +#include "linalg.h" + +void transpose_matrix(Array2d *trans,const Array2d &a) { + int maxi=a.get_size()(1); + int maxj=a.get_size()(0); + trans->resize(maxi,maxj); + for (int i=0; i *result, const Array &a, const Array &b) { +#ifdef DEBUG + if (a.get_size()!=b.get_size()) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(a.get_size()); + for (int i=0; i *result, const Array2d &a, const Array2d &b) { +#ifdef DEBUG + if (a.get_size()!=b.get_size()) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(a.get_size()); + for (int i=0; i *result, const Array &a, const Array &b) { +#ifdef DEBUG + if (a.get_size()!=b.get_size()) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(a.get_size()); + for (int i=0; i &a) { + Real m=0.; + for (int i=0; i *result, const Array2d &a, const Array2d &b) { +#ifdef DEBUG + if (a.get_size()!=b.get_size()) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(a.get_size()); + for (int i=0; i *result, const Array2d &a, const Array2d &b) { +#ifdef DEBUG + if (a.get_size()!=b.get_size()) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(a.get_size()); + for (int i=0; i *result, const Array2d &a, const Array2d &b) { +#ifdef DEBUG + if (a.get_size()(1)!=b.get_size()(0)) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(iVector2d(a.get_size()(0),b.get_size()(1))); + zero_array(result); + for (int i=0; i *result, const Array &diag, const Array2d &b) { +#ifdef DEBUG + if (diag.get_size()!=b.get_size()(0)) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(b.get_size()); + for (int i=0; i *result, const Array2d &b, const Array &diag) { +#ifdef DEBUG + if (diag.get_size()!=b.get_size()(1)) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(b.get_size()); + for (int i=0; i *result, const Array &diag, const Array &b) { +#ifdef DEBUG + if (diag.get_size()!=b.get_size()) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(b.get_size()); + for (int i=0; i *result, const Array2d &a, const Array &b) { +#ifdef DEBUG + if (a.get_size()(1)!=b.get_size()) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(a.get_size()(0)); + zero_array(result); + for (int i=0; i *result, const Array &a, const Array2d &b) { +#ifdef DEBUG + if (a.get_size()!=b.get_size()(0)) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(b.get_size()(1)); + zero_array(result); + for (int i=0; i *result, const Array2d &a, Real b) { + result->resize(a.get_size()); + for (int i=0; i *result, const Array &a, Real b) { + result->resize(a.get_size()); + for (int i=0; i &a, const Array &b) { + Real sum=0; +#ifdef DEBUG + if (a.get_size()!=b.get_size()) ERRORQUITDUMP("Matrices not conformable"); +#endif + for (int i=0; i *result, const Array2d &a, const Array2d &b) { +#ifdef DEBUG + if (a.get_size()(0)!=b.get_size()(0)) ERRORQUITDUMP("Matrices not conformable"); +#endif + int m=a.get_size()(1); + int n=b.get_size()(1); + int k=a.get_size()(0); + result->resize(iVector2d(m,n)); + cblas_dgemm(CblasColMajor,CblasTrans,CblasNoTrans,m,n,k,1.,a.get_buf_c(),k,b.get_buf_c(),k,0.,result->get_buf(),m); +} + +#else + +void inner_product(Array2d *result, const Array2d &a, const Array2d &b) { +#ifdef DEBUG + if (a.get_size()(0)!=b.get_size()(0)) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(iVector2d(a.get_size()(1),b.get_size()(1))); + zero_array(result); + int nk=a.get_size()(0); + for (int i=0; i *result, const Array2d &a, const Array &b) { +#ifdef DEBUG + if (a.get_size()(0)!=b.get_size()) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(a.get_size()(1)); + zero_array(result); + for (int i=0; i *a) { + Real l=sqrt(inner_product(*a,*a)); + product(a,*a,1./l); + return l; +} + +void outer_product(Array2d *result, const Array2d &a, const Array2d &b) { +#ifdef DEBUG + if (a.get_size()(1)!=b.get_size()(1)) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(iVector2d(a.get_size()(0),b.get_size()(0))); + zero_array(result); + for (int i=0; i *result, const Array &a, const Array &b) { + result->resize(iVector2d(a.get_size(),b.get_size())); + for (int i=0; i *result, const Array2d &a, const Array2d &b) { +#ifdef DEBUG + if (a.get_size()(1)!=b.get_size()(1)) ERRORQUITDUMP("Matrices not conformable"); + if (a.get_size()(0)!=b.get_size()(0)) ERRORQUITDUMP("Matrix is not square"); +#endif + result->resize(a.get_size()(0)); + zero_array(result); + for (int i=0; i &a, const Array &x) { +#ifdef DEBUG + if (a.get_size()(0)!=a.get_size()(1)) ERRORQUITDUMP("Matrix is not square"); + if (a.get_size()(0)!=x.get_size()) ERRORQUITDUMP("Matrices not conformable"); +#endif + Real result=0.; + for (int i=0; i &a, const Array &x) { +#ifdef DEBUG + if (a.get_size()(0)!=a.get_size()(1)) ERRORQUITDUMP("Matrix is not square"); + if (a.get_size()(0)!=x.get_size()) ERRORQUITDUMP("Matrices not conformable"); +#endif + Real result=0.; + for (int i=0; i &a) { +#ifdef DEBUG + if (a.get_size()(0)!=a.get_size()(1)) ERRORQUITDUMP("Cannot take trace of nonsquare matrix"); +#endif + Real tr=0; + for (int i=0; i *result, int n) { + result->resize(iVector2d(n,n)); + zero_array(result); + for (int i=0; i &v) { + Real m=0.; + for (int i=0; i &v) { + return sqrt(inner_product(v,v)); +} + +Real norm2(const Array &v) { + return inner_product(v,v); +} + +void invert_matrix_tall(Array2d *inv, const Array2d &a) { + Array2d ata,iata; + inner_product(&ata,a,a); + invert_matrix(&iata,ata); + outer_product(inv,iata,a); +} + +void invert_matrix_wide(Array2d *inv, const Array2d &a) { + Array2d aat,iaat; + outer_product(&aat,a,a); + invert_matrix(&iaat,aat); + inner_product(inv,a,iaat); +} + +void pow(rMatrix3d *pMr, const rMatrix3d &M, Real r) { + Array2d m; + convert_matrix(&m,M); + Array lambda; + Array2d vect; + diagonalize_symmetric_matrix(&lambda,&vect, m); + for (int i=0; i<3; i++) { + lambda(i)=pow(lambda(i),r); + } + Array2d tmp,ivect,a; + invert_matrix(&ivect,vect); + product_diag(&tmp,lambda,ivect); + product(&a,vect,tmp); + convert_matrix(pMr,a); +} diff --git a/src/linalg.hh b/src/linalg.hh new file mode 100644 index 0000000..a5094a8 --- /dev/null +++ b/src/linalg.hh @@ -0,0 +1,178 @@ +#ifndef _LINALG_H_ +#define _LINALG_H_ + +#include +#include "linsolve.h" +#include "arraylist.h" + +void transpose_matrix(Array2d *trans,const Array2d &a); +void diff(Array *result, const Array &a, const Array &b); +void diff(Array2d *result, const Array2d &a, const Array2d &b); +void sum(Array *result, const Array &a, const Array &b); +void sum(Array2d *result, const Array2d &a, const Array2d &b); +void sum(Array2d *result, const Array2d &a, const Array2d &b); +Real mean(const Array &a); +void product(Array2d *result, const Array2d &a, const Array2d &b); +void product_diag(Array2d *result, const Array &diag, const Array2d &b); +void product_diag(Array2d *result, const Array2d &b, const Array &diag); +void product_diag(Array *result, const Array &diag, const Array &b); +void product(Array *result, const Array2d &a, const Array &b); +void product(Array *result, const Array &a, const Array2d &b); +void product(Array2d *result, const Array2d &a, Real b); +void product(Array *result, const Array &a, Real b); +Real inner_product(const Array &a, const Array &b); +void inner_product(Array2d *result, const Array2d &a, const Array2d &b); +void inner_product(Array *result, const Array2d &a, const Array &b); +Real normalize(Array *a); +void outer_product(Array2d *result, const Array2d &a, const Array2d &b); +void outer_product(Array2d *result, const Array &a, const Array &b); +void outer_product_diag(Array *result, const Array2d &a, const Array2d &b); +Real quadratic_form(const Array2d &a, const Array &x); +Real quadratic_form(const Array2d &a, const Array &x); +Real trace(const Array2d &a); +void set_identity(Array2d *result, int n); +void to_real(Array *p_r, const Array &i); +Real max_norm(const Array &v); +Real norm(const Array &v); +Real norm2(const Array &v); +void invert_matrix_tall(Array2d *inv, const Array2d &a); +void invert_matrix_wide(Array2d *inv, const Array2d &a); +void pow(rMatrix3d *pMr, const rMatrix3d &M, Real r); + +template +class LinearInterpolator { + Array a; + Real x0; + Real x1; + public: + LinearInterpolator(void): a() { + x0=0.; x1=0.; + } + LinearInterpolator(Real _x0, Real _x1, const Array &_a) { + init(_x0,_x1,_a); + } + LinearInterpolator(const LinearInterpolator &li) { + init(li.x0,li.x1,li.a); + } + + void init(Real _x0, Real _x1, const Array &_a) { +#ifdef DEBUG + if (_a.get_size()<2) ERRORQUIT("array size<2 in LinearInterpolator"); +#endif + a=_a; + x0=_x0; + x1=_x1; + } + T operator ()(Real x) { + int n=a.get_size(); + Real y=(Real)(n-1)*(x-x0)/(x1-x0); + int iy=(int)floor(y); + if (iy>n-2) iy=n-2; + if (iy<0) iy=0; + Real fy=y-(Real)iy; + return (a(iy)*(1.-fy)+a(iy+1)*fy); + } +}; + +template +class LinearInterpolatorBig { + Array a; + Real x0; + Real x1; + public: + LinearInterpolatorBig(void): a() { + x0=0.; x1=0.; + } + LinearInterpolatorBig(Real _x0, Real _x1, const Array &_a) { + init(_x0,_x1,_a); + } + LinearInterpolatorBig(const LinearInterpolatorBig &li) { + init(li.x0,li.x1,li.a); + } + void init(Real _x0, Real _x1, const Array &_a) { +#ifdef DEBUG + if (_a.get_size()<2) ERRORQUIT("array size<2 in LinearInterpolator"); +#endif + a=_a; + x0=_x0; + x1=_x1; + } + void interpol(T *py, Real x) const { + int n=a.get_size(); + Real y=(Real)(n-1)*(x-x0)/(x1-x0); + int iy=(int)floor(y); + if (iy>n-2) iy=n-2; + if (iy<0) iy=0; + Real fy=y-(Real)iy; + T tmp1,tmp2; + product(&tmp1,a(iy),1.-fy); + product(&tmp2,a(iy+1),fy); + sum(py,tmp1,tmp2); + } +}; + +template +class PolyInterpolatorBig { + Array a; + Real x0; + Real x1; + public: + PolyInterpolatorBig(void): a() { + x0=0.; x1=0.; + } + PolyInterpolatorBig(Real _x0, Real _x1, const Array &_a): a() { + init(_x0,_x1,_a); + } + PolyInterpolatorBig(const PolyInterpolatorBig &li): a(li.a) { + x0=li.x0; x1=li.x1; + } + void init(Real _x0, Real _x1, const Array &_a) { +#ifdef DEBUG + if (_a.get_size()<3 && _a.get_size()!=1) ERRORQUIT("array size too small in PolyInterpolator"); +#endif + x0=_x0; + x1=_x1; + if (_a.get_size()==1) { + a=_a; + } + else { + a.resize(_a.get_size()+2); + for (int i=0; i<_a.get_size(); i++) { + a(1+i)=_a(i); + } + diff(&a(0),a(1),a(2)); + sum(&a(0),a(0),a(1)); + int n=a.get_size(); + diff(&a(n-1),a(n-2),a(n-3)); + sum(&a(n-1),a(n-1),a(n-2)); + } + } + void interpol(T *py, Real x) const { + int n=a.get_size(); + if (n==1) { + *py=a(0); + } + else { + Real y=1+(Real)(n-3)*(x-x0)/(x1-x0); + int iy=(int)floor(y)-1; + if (iy<0) {iy=0;} + if (iy>n-4) {iy=n-4;} + Real fy=y-(Real)iy; + Real c[4]; + c[0]= 2.0+(-4.0+( 2.5-0.5*fy)*fy)*fy; + c[1]=-3.0+( 9.5+(-7.0+1.5*fy)*fy)*fy; + c[2]= 3.0+(-8.0+( 6.5-1.5*fy)*fy)*fy; + c[3]=-1.0+(+2.5+(-2.0+0.5*fy)*fy)*fy; + T tmp; + product(py,a(iy),c[0]); + for (int i=1; i<4; i++) { + product(&tmp,a(iy+i),c[i]); + sum(py,*py,tmp); + } + } + } + Real min(void) const {return x0;} + Real max(void) const {return x1;} +}; + +#endif diff --git a/src/linklist.hh b/src/linklist.hh new file mode 100644 index 0000000..74eeb09 --- /dev/null +++ b/src/linklist.hh @@ -0,0 +1,197 @@ +#ifndef __LINKEDLIST_H__ +#define __LINKEDLIST_H__ + +#include "misc.h" + +template +class LinkedList; + +template +class LinkedListIterator; + +template +class LinkedListNode { + protected: + friend class LinkedList; + friend class LinkedListIterator; + + LinkedListNode *next; + T *obj; + public: + LinkedListNode(T *newobj=NULL,LinkedListNode *newnext=NULL) { + obj=newobj; + next=newnext; + } +}; + +template +class LinkedList { + protected: + friend class LinkedListIterator; + + LinkedListNode *head; + LinkedListNode *tail; +public: + LinkedList(void) { + head=new LinkedListNode(NULL,NULL); + tail=head; + } + LinkedList(const LinkedList &ll) { + head=new LinkedListNode(NULL,NULL); + tail=head; + LinkedListIterator i(ll); + for ( ;i; i++) { + (*this) << new T(*i); + } + } + ~LinkedList() { + LinkedListIterator i(THIS); + while (i) + delete detach(i); + delete head; + } + T *push_back(T *newobj) { + tail->next=new LinkedListNode(newobj,tail->next); + tail=tail->next; + return newobj; + } + LinkedList& operator<< (T *newobj) { + push_back(newobj); + return *this; + } + T *add(T *newobj, LinkedListIterator &insertat) { + if (insertat.previous) { + insertat.previous->next=new LinkedListNode(newobj,insertat.previous->next); + if(insertat.previous==tail) + tail=insertat.previous->next; + return newobj; + } + else + return NULL; + } + T *push_front(T *newobj) { + LinkedListIterator i(*this); + return add(newobj,i); + } + T *detach(LinkedListIterator &deleteat) { + LinkedListNode *previous=deleteat.previous; + if (previous && previous->next) { + T *detachedobj=previous->next->obj; + LinkedListNode *detachednode=previous->next; + if( deleteat.get_current() == tail ) + tail = previous; + previous->next=previous->next->next; + delete detachednode; + return detachedobj; + } + else + return NULL; + } + int getSize(void) const { + int nb=0; + LinkedListIterator i(*this); + while (i) { + nb++; + i++; + } + return nb; + } + int get_size(void) const { + return getSize(); + } + void delete_all(void) { + LinkedListIterator i(*this); + while (i) delete detach(i); + } + void detach_all(void) { + LinkedListIterator i(*this); + while (i) detach(i); + } +}; + +template +class LinkedListIterator { + protected: + friend class LinkedList; + + LinkedListNode *previous; + + LinkedListNode *get_current(void) {return (previous ? previous->next : NULL);} + + public: + LinkedListIterator(void) { + previous=NULL; + } + LinkedListIterator(const LinkedList &linkedlist) { + init(linkedlist); + } + void init(const LinkedList &linkedlist) { + previous=linkedlist.head; + } + LinkedListIterator(const LinkedListIterator &iter) { + previous=iter.previous; + } + void operator=(const LinkedListIterator &iter) { + previous=iter.previous; + } + LinkedListIterator& operator++(int) { + if (get_current()){ + previous=get_current(); + } + return *this; + } + LinkedListIterator operator+(int i) { + LinkedListIterator iter=*this; + while (i--) iter++; + return iter; + } + T& operator *(void) { + return *(get_current()->obj); + } + operator T * () { + if (get_current()) + return get_current()->obj; + else + return NULL; + } + T* operator -> () { + if (get_current()) + return get_current()->obj; + else + return NULL; + } + T* setObject(T *newvalue) { + if (get_current()) { + get_current()->obj=newvalue; + return newvalue; + } else + return NULL; + } +}; + +// utilitary functions + +template +void add_copy(LinkedList *dest, const LinkedList &src) { + LinkedListIterator i(src); + while (i) { + (*dest) << new T(*i); + i++; + } +} + +template +void transfer_list(LinkedList *dest, LinkedList *src) { + LinkedListIterator i(*src); + while (i) { + (*dest) << src->detach(i); + } +} + +template +inline void add_at_beginning(LinkedList *ll,T *obj) { + LinkedListIterator beginning(*ll); + ll->add(obj,beginning); +} + +#endif diff --git a/src/linsolve.c++ b/src/linsolve.c++ new file mode 100644 index 0000000..d68e27c --- /dev/null +++ b/src/linsolve.c++ @@ -0,0 +1,335 @@ +#include "linsolve.h" + +void lu_decomposition(Array2d *pa, Array *ppivot) { + const Real tiny=1.0e-16; + Array2d &a=*pa; + int n=a.get_size()(0); + if (ppivot->get_size()==0) {ppivot->resize(n);} + + Array w(n); + for (int i=0; i=maxel) { + maxel=dummy; + imax=i; + } + } + if (j!=imax) { + for (int k=0; k *pa, Array *ppivot, Array *pb) { + Array2d &a=*pa; + int n=a.get_size()(0); + Array &b=*pb; + + int ii=n; + for (int i=0; i0.) {ii=i;} + b(i)=acc; + } + for (int i=n-1; i>=0; i--) { + Real acc=b(i); + for (int j=i+1; j *pa, Array *pb) { + char TRANS='N'; + lapack_int N=pb->get_size(); + lapack_int NRHS=1; + Real *pA=pa->get_buf(); + lapack_int LDA=N; + Array IPIV(N); + lapack_int *pIPIV=IPIV.get_buf(); + Real *pB=pb->get_buf(); + lapack_int LDB=N; + LAPACKE_dgetrf(LAPACK_COL_MAJOR,N,N,pA,LDA,pIPIV); + lapack_int INFO=LAPACKE_dgetrs(LAPACK_COL_MAJOR,TRANS,N,NRHS,pA,LDA,pIPIV,pB,LDB); + if (INFO) ERRORQUIT("Singular Matrix in solve_linsys."); +} + +#else +void solve_linsys(Array2d *pa, Array *pb) { + Array pivot; + lu_decomposition(pa,&pivot); + lu_backsub(pa,&pivot,pb); +} +#endif + +void solve_linsys(Array *psoln, const Array2d &mat, const Array &vect) { + int n=vect.get_size(); + Array2d a(mat); + Array b(vect); + solve_linsys(&a,&b); + (*psoln)=b; +} + +void invert_matrix(Array2d *inv, const Array2d &a) { + iVector2d size=a.get_size(); +#ifdef DEBUG + if (size(0)!=size(1)) ERRORQUIT("Cannot invert non square matrix!"); +#endif + inv->resize(size); + int n=size(0); + Array2d linear_sys(a); + Array pivot; + lu_decomposition(&linear_sys,&pivot); + Array rhs(n); + for (int col=0; col *pa, Array *pd, Array *pe, int do_vect) { + Array2d &a=*pa; + int n=a.get_size()(0); + Array &d=*pd; + d.resize(n); + Array &e=*pe; + e.resize(n); + + for (int i=n-1; i>0; i--) { + int l=i-1; + Real h=0.; + if (l==0) { + e(i)=a(i,l); + } else { + Real nrm=0.; + for (int k=0; k<=l; k++) { + nrm+=fabs(a(i,k)); + } + if (nrm==0.) { + e(i)=a(i,l); + } else { + for (int k=0; k<=l; k++) { + a(i,k)/=nrm; + h+=a(i,k)*a(i,k); + } + Real f=a(i,l); + Real g=(f>0. ? -sqrt(h) : sqrt(h)); + e(i)=nrm*g; + h-=f*g; + a(i,l)=f-g; + f=0.; + for (int j=0; j<=l; j++) { + a(j,i)=a(i,j)/h; + g=0.; + for (int k=0; k<=j; k++) { + g+=a(j,k)*a(i,k); + } + for (int k=j+1; k<=l; k++) { + g+=a(k,j)*a(i,k); + } + e(j)=g/h; + f+=e(j)*a(i,j); + } + Real fhh=f/(h+h); + for (int j=0; j<=l; j++) { + f=a(i,j); + g=e(j)-fhh*f; + e(j)=g; + for (int k=0; k<=j; k++) { + a(j,k)-=(f*e(k)+g*a(i,k)); + } + } + } + } + d(i)=h; + } + d(0)=0.; + e(0)=0.; + if (do_vect) { + for (int i=0; i *pd, Array *pe, Array2d *pa, int do_vect) { + Array &d=*pd; + int n=d.get_size(); + Array &e=*pe; + Array2d &a=*pa; + + for (int i=1; i=j; i--) { + Real f=s*e(i); + Real b=c*e(i); + if (fabs(f)>=fabs(g)) { + c=g/f; + r=sqrt((c*c)+1.); + e(i+1)=f*r; + s=1./r; + c*=s; + } else { + s=f/g; + r=sqrt((s*s)+1.); + e(i+1)=g*r; + c=1./r; + s*=c; + } + g=d(i+1)-p; + r=(d(i)-g)*s+2.*c*b; + p=s*r; + d(i+1)=g+p; + g=c*r-b; + if (do_vect) { + for (int k=0; k *p_lambda, Array2d *p_vect, const Array2d &mat) { +#ifdef DEBUG + if (mat.get_size()(0)!=mat.get_size()(1)) ERRORQUIT("Matrix not square in diagonalize_symmetric_matrix"); +#endif + int n=mat.get_size()(0); + int do_vect=(p_vect!=NULL); + Array2d a(mat); + Array d,e; + to_tridiag(&a,&d,&e,do_vect); + tridiag_to_diag(&d,&e,&a,do_vect); + (*p_lambda)=d; + if (do_vect) { + (*p_vect)=a; + } +} + +void diagonalize_symmetric_matrix(Array *p_lambda, Array2d *p_vect, const Array2d &mat) { +#ifdef DEBUG + if (mat.get_size()(0)!=mat.get_size()(1)) ERRORQUIT("Matrix not square in diagonalize_symmetric_matrix"); +#endif + int n=mat.get_size()(0); + int do_vect=(p_vect!=NULL); + Array2d a(2*n,2*n); + for (int i=0; i d,e; + to_tridiag(&a,&d,&e,do_vect); + tridiag_to_diag(&d,&e,&a,do_vect); + p_lambda->resize(n); + if (do_vect) { + p_vect->resize(n,n); + } + Array to_omit(2*n); + zero_array(&to_omit); + int j=0; + for (int i=0; i +#include +#include "misc.h" +#include "array.h" + +void lu_decomposition(Array2d *pa, Array *ppivot); +void lu_backsub(Array2d *pa, Array *ppivot, Array *pb); +void solve_linsys(Array2d *pa, Array *pb); +void solve_linsys(Array *psoln, const Array2d &mat, const Array &vect); +void invert_matrix(Array2d *inv, const Array2d &a); + +/* eigenvalue problems */ +void to_tridiag(Array2d *pa, Array *pd, Array *pe, int do_vect); +void tridiag_to_diag(Array *pd, Array *pe, Array2d *pz, int do_vect); +void diagonalize_symmetric_matrix(Array *p_lambda, Array2d *p_vect, const Array2d &mat); +void diagonalize_symmetric_matrix(Array *p_lambda, Array2d *p_vect, const Array2d &mat); + +#endif diff --git a/src/loctst.c++ b/src/loctst.c++ new file mode 100644 index 0000000..24c7ea4 --- /dev/null +++ b/src/loctst.c++ @@ -0,0 +1,89 @@ +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" + +// write extra help as plain text in *.hlp +//extern char *helpstring; +char *helpstring=""; + +int main(int argc, char *argv[]) { + // parsing command line. See getvalue.hh for details; + char *wellstrfilename="wel_str.out"; + char *saddlestrfilename="sad_str.out"; + Real r=0; + rVector3d center(0.,0.,0.); + Array centera; + FixedVector_to_Array(¢era,center); + int sigdig=5; + int dohelp=0; + int dummy=0; + AskStruct options[]={ + {"","Skeleton for atat-like codes " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-ws","Input file defining the well structure",STRINGVAL,&wellstrfilename}, + {"-ss","Input file defining the saddle structure",STRINGVAL,&saddlestrfilename}, + {"-c","Center",ARRAYRVAL,¢era}, + {"-r","Radius",REALVAL,&r}, + {"-sig","Number of significant digits printed (Default: 5)",INTVAL,&sigdig}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + cout.setf(ios::fixed); + cout.precision(sigdig); + + // parsing structure files. See parse.hh for detail; + Structure str[2]; + Array label; + rMatrix3d axes; + { + ifstream wellfile(wellstrfilename); + if (!wellfile) ERRORQUIT("Unable to open well structure file"); + Array labellookup; + parse_lattice_file(&(str[0].cell), &(str[0].atom_pos), &(str[0].atom_type), &labellookup, &label, wellfile, &axes); + wrap_inside_cell(&(str[0].atom_pos),str[0].atom_pos,str[0].cell); + fix_atom_type(&str[0],labellookup); + } + + { + rMatrix3d axes1; + ifstream saddlefile(saddlestrfilename); + if (!saddlefile) ERRORQUIT("Unable to open saddle structure file."); + parse_structure_file(&(str[1].cell), &(str[1].atom_pos), &(str[1].atom_type), label, saddlefile, &axes1); + wrap_inside_cell(&(str[1].atom_pos),str[1].atom_pos,str[1].cell); + reorder_atoms(&str[1],str[0]); + } + + Array_to_FixedVector(¢er,centera); + center=axes*center; + + + int fixsh=label.get_size(); + Array label_f(fixsh*2); + for (int i=0; i +#include +#include "lstsqr.h" +#include "getvalue.h" +#include "version.h" +#include "ridge.h" + +int main(int argc, char *argv[]) { + char *xfilename=""; + char *yfilename=""; + char *wfilename=""; + char *rfilename=""; + char *powers=""; + char *select=""; + int addone=0; + int del_colin=0; + int perfit=0; + int docv=0; + int dostd=0; + int docopyy=0; + int dopred=0; + int doresid=0; + int sigdig=5; + AskStruct options[]={ + {"","Least-Square FIT " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-x","x file",STRINGVAL,&xfilename}, + {"-y","y file",STRINGVAL,&yfilename}, + {"-w","weight file",STRINGVAL,&wfilename}, + {"-r","regularization parameters file",STRINGVAL,&rfilename}, + {"-pf","Perfect Fit algorithm",BOOLVAL,&perfit}, + {"-pw","number of powers of each column to regress on",STRINGVAL,&powers}, + {"-s","select columns to regress on (one number by column, 0: ignore, 1: use)",STRINGVAL,&select}, + {"-1","add a column of ones as regressor",BOOLVAL,&addone}, + {"-colin","Ignore colinear columns in x file",BOOLVAL,&del_colin}, + {"-cv","Print crossvalidation score",BOOLVAL,&docv}, + {"-se","Print standard errors",BOOLVAL,&dostd}, + {"-ty","Print trues values of y",BOOLVAL,&docopyy}, + {"-p","Print predicted values of y",BOOLVAL,&dopred}, + {"-e","Print prediction error",BOOLVAL,&doresid}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + cout.setf(ios::fixed); + cout.precision(5); + + + { + ostrstream cmd; + cmd << "echo `cat " << xfilename << " | wc -l` " + << "`head -1 " << xfilename << " | wc -w` " + << "`head -1 " << yfilename << " | wc -w` > tmp.tmp" + << '\0'; + system(cmd.str()); + } + int nb_param,nb_eqn,nb_ycol; + { + ifstream size("tmp.tmp"); + size >> nb_eqn >> nb_param >> nb_ycol; + } + unlink("tmp.tmp"); + Array2d x(nb_eqn,nb_param); + ifstream xfile(xfilename); + if (!xfile) {ERRORQUIT("Unable to open x file");} + for (int eqn=0; eqn> x(eqn,param); + } + } + if (strlen(powers)>0) { + Array powint(nb_param); + istrstream powline(powers); + int totpow=0; + for (int i=0; i> powint(i); + if (!powline) powint(i)=1; + totpow+=powint(i); + } + Array2d tmpx(nb_eqn,totpow); + int col=0; + for (int i=0; i tmpx(nb_eqn,nb_param+1); + for (int j=0; j selectcol(nb_param); + one_array(&selectcol); + if (strlen(select)>0) { + zero_array(&selectcol); + istrstream selectline(select); + int nb_col=0; + for (int i=0; i> selectcol(i); + skip_delim(selectline,",; "); + nb_col+=(selectcol(i)>0 ? 1 : 0); + } + Array2d tmpx(nb_eqn,nb_col); + int i=0; + for (int j=0; j y_mat(nb_eqn,nb_ycol); + for (int eqn=0; eqn> y_mat(eqn,col); + } + } + + Array w(nb_eqn); + one_array(&w); + if (strlen(wfilename)>0) { + ifstream wfile(wfilename); + if (!wfile) {ERRORQUIT("Unable to open weight file");} + for (int eqn=0; eqn> w(eqn); + } + } + + if (perfit && strlen(rfilename)==0) {ERRORQUIT("Specify -r=filename option in addition to -pf");} + Array r(nb_param); + if (strlen(rfilename)>0) { + ifstream rfile(rfilename); + if (!rfile) {ERRORQUIT("Unable to open regularization parameters file");} + for (int param=0; param> r(param); + } + } + + for (int col=0; col y; + extract_column(&y,y_mat,col); + if (perfit) { + Array b; + calc_perfect_fit(&b, x,y,r); + int j=0; + for (int i=0; i tmp; + product(&tmp,x,b); + cout << endl << tmp << endl; + */ + } + else if (strlen(rfilename)>0) { + if (docv) { + cout << calc_cv_regul(x,y,w,del_colin,r) << endl; + } + else if (docopyy || dopred || doresid) { + Array yhat; + predict_ols_regul(&yhat,x,y,w,del_colin,r); + for (int i=0; i b; + calc_ols_regul(&b,x,y,w,del_colin,r); + int j=0; + for (int i=0; i yhat; + predict_ols(&yhat,x,y,w,del_colin); + for (int i=0; i0) { + ERRORQUIT("-w with -se not implemented"); + } + Array b; + calc_ols(&b,x,y,w,del_colin); + Array2d var; + calc_ols_var(&var,x,y); + int j=0; + for (int i=0; i b; + calc_ols(&b,x,y,w,del_colin); + int j=0; + for (int i=0; i1 && !docv) {cout << endl;} + } +} diff --git a/src/lstsqr.c++ b/src/lstsqr.c++ new file mode 100644 index 0000000..451ab3b --- /dev/null +++ b/src/lstsqr.c++ @@ -0,0 +1,398 @@ +#include "lstsqr.h" + +void calc_least_square_matrix(Array2d *answer, const Array2d &lhs) { + iVector2d size=lhs.get_size(); + answer->resize(iVector2d(size(1),size(0))); + Array2d to_invert; + to_invert.resize(iVector2d(size(1),size(1))); + iVector2d dst; + for (dst(1)=0; dst(1) *which_col, const Array2d &x) { + int nb_in_basis=0; + Array basis; + LinkedList cols; + for (int i=0; i cur_col; + extract_column(&cur_col,x,i); + if (build_basis(&basis, &nb_in_basis, cur_col)) { + cols << new int(i); + /* + int j; + for (j=0; jzero_tolerance) nb_diff++; + } + if (nb_diff<=1) break; + } + if (j==i) { + cols << new int(i); + } + */ + } + } + LinkedList_to_Array(which_col,cols); + return (which_col->get_size()==x.get_size()(1)); +} + +void calc_ols(Array *pb, const Array2d &x, const Array &y) { + /* + Array2d xx_i; + inner_product(&xx_i, x,x); + invert_matrix(&xx_i,xx_i); + Array xy; + inner_product(&xy, x,y); + product(pb,xx_i,xy); + */ + Array2d xx; + inner_product(&xx, x,x); + inner_product(pb, x,y); + solve_linsys(&xx,pb); +} + +Array empty_rArray; + +void calc_ols(Array *pb, const Array2d &x, const Array &y, const Array &weight, int nonredundant) { + const Array2d *px=&x; + const Array *py=&y; + Array2d wx,nr_x; + Array wy; + if (weight.get_size()!=0) { + product_diag(&wx,weight,*px); + product_diag(&wy,weight,*py); + px=&wx; + py=&wy; + } + if (nonredundant) { + Array cols; + list_nonredundant_columns(&cols,*px); + extract_columns(&nr_x,*px,cols); + px=&nr_x; + Array b; + calc_ols(&b,*px,*py); + pb->resize(x.get_size()(1)); + zero_array(pb); + for (int i=0; i &x, const Array &y) { +#ifdef SLOWCV + Real cv2=0.; + int n=y.get_size(); + int r=x.get_size()(1); + for (int i=0; i b; + Array ry(n-1); + Array2d rx(n,r); + for (int j=0; j=i); + ry(j)=y(jj); + ry(j)=y(jj); + for (int k=0; k xi; + extract_row(&xi,x,i); + Real dy=y(i)-inner_product(xi,b); + cv2+=dy*dy; + } + return sqrt(cv2/(Real)(n)); +#else + int n=x.get_size()(0); + int r=x.get_size()(1); + Array2d xx_i; + inner_product(&xx_i, x,x); + invert_matrix(&xx_i,xx_i); + Array xy; + inner_product(&xy, x,y); + Array b; + product(&b,xx_i,xy); + Array y_hat; + product(&y_hat,x,b); + Real cv=0.; + for (int i=0; i &x, const Array &y, const Array &weight, int nonredundant) { + const Array2d *px=&x; + const Array *py=&y; + Array2d wx,nr_x; + Array wy; + if (weight.get_size()!=0) { + product_diag(&wx,weight,*px); + product_diag(&wy,weight,*py); + px=&wx; + py=&wy; + } + if (nonredundant) { + Array cols; + list_nonredundant_columns(&cols,*px); + extract_columns(&nr_x,*px,cols); + px=&nr_x; + } + return calc_cv(*px,*py); +} + +void predict_ols(Array *p_yhat, const Array2d &x, const Array &y, const Array &weight, int nonredundant) { + Array b; + calc_ols(&b,x,y,weight,nonredundant); + product(p_yhat, x,b); +} + +void calc_ols_var(Array2d *pvar, const Array2d &x, const Array &y) { + Array y_hat; + predict_ols(&y_hat,x,y); + Real sigma2=0.; + for (int i=0; i *pvar, const Array2d &x, const Array &y, const Array &weight) { + Array y_hat; + predict_ols(&y_hat,x,y,weight); + Real sigma2=0.; + for (int i=0; i w_x; + product_diag(&w_x, weight,x); + inner_product(pvar, w_x,w_x); + invert_matrix(pvar, *pvar); + product(pvar, *pvar,sigma2); +} + +void calc_gls_homo_var(Array2d *pvar, const Array2d &x, const Array &y, const Array &weight) { + Array y_hat; + predict_ols(&y_hat,x,y,weight); + Real sigma2=0.; + for (int i=0; i w_x,ww_x; + product_diag(&w_x, weight,x); + product_diag(&ww_x, weight,w_x); + Array2d xw2x,xw2xi,xw4x; + inner_product(&xw2x, w_x,w_x); + inner_product(&xw4x, ww_x,ww_x); + invert_matrix(&xw2xi, xw2x); + Array2d tmp; + product(&tmp, xw4x,xw2xi); + product(pvar, xw2xi, tmp); + product(pvar, *pvar, sigma2); +} + +int build_basis(Array *pbasis, int *pnb_in_basis, const Array &new_vector) { + Array &basis=*pbasis; + int &nb_in_basis=*pnb_in_basis; + if (nb_in_basis==0) basis.resize(new_vector.get_size()); + Array2d linear_sys(nb_in_basis,nb_in_basis); + for (int i=0; i rhs(nb_in_basis); + for (int i=0; i0) {solve_linsys(&linear_sys,&rhs);} + Array projection(new_vector.get_size()); + for (int k=0; k &y, Real new_y, Real small_value) { + if (y.get_size()<3) return 0.; + int maxsize=20; + if (y.get_size()>maxsize) { + Array short_y(maxsize); + int org=y.get_size()-maxsize; + for (int i=0; i x(y.get_size(),p); + for (int i=0; i x(y.get_size(),best_p); + for (int i=0; i b; + Array2d var; + calc_ols(&b,x,y); + calc_ols_var(&var, x,y); + Array new_x(best_p); + for (int j=0; j tmp; + product(&tmp,var,new_x); + Real v=inner_product(new_x,tmp); + Array py,resid; + product(&py,x,b); + diff(&resid,y,py); + Real sigma2=inner_product(resid,resid)/(Real)(y.get_size()-1); + // cerr << "v=" << v << " sigma2=" << sigma2 << endl; + Real t=fabs(new_y-predicted_new_y)/sqrt(v+sigma2+sqr(small_value)); + return t; +} + +Real find_minimum(const Array &y, int mesh, Real *pos) { + Real best_cv=MAXFLOAT; + int best_p=0; + for (int p=1; p x(y.get_size(),p); + for (int i=0; i x(y.get_size(),best_p); + for (int i=0; i b; + calc_ols(&b,x,y); + Real best_t; + Real min_v=MAXFLOAT; + if (best_p==3) { + if (b(2)>0.) { + best_t=-b(1)/(2.*b(2)); + min_v=b(0)+b(1)*best_t+b(2)*sqr(best_t); + } + else { + cerr << "Warning: instability detected." << endl; + } + } + if (min_v==MAXFLOAT) { + for (int i=0; i > *portho_basis, const Array > &basis) { + portho_basis->resize(basis.get_size()); + for (int i=0; i v; + product(&v, (*portho_basis)(j),p); + diff(&((*portho_basis)(i)), ((*portho_basis)(i)), v); + } + product(&((*portho_basis)(i)), basis(i),1./sqrt(inner_product((*portho_basis)(i),(*portho_basis)(i)))); + } +} + +void calc_perfect_fit(Array *pb, const Array2d &x, const Array &y, const Array &w) { + Array2d xw,xwxt; + product_diag(&xw, x,w); + outer_product(&xwxt, x,xw); + invert_matrix(&xwxt,xwxt); + Array xwxtiy; + product(&xwxtiy,xwxt,y); + inner_product(pb,xw,xwxtiy); +} diff --git a/src/lstsqr.hh b/src/lstsqr.hh new file mode 100644 index 0000000..d75c403 --- /dev/null +++ b/src/lstsqr.hh @@ -0,0 +1,30 @@ +#ifndef _LSTSQR_H_ +#define _LSTSQR_H_ + +#include "linalg.h" +#include "integer.h" +#include "arraylist.h" + +void calc_least_square_matrix(Array2d *answer, const Array2d &lhs); +int list_nonredundant_columns(Array *which_col, const Array2d &x); + +extern Array empty_rArray; + +void calc_ols(Array *pb, const Array2d &x, const Array &y); +void calc_ols(Array *pb, const Array2d &x, const Array &y, const Array &weight, int nonredundant=0); +Real calc_cv(const Array2d &x, const Array &y); +Real calc_cv(const Array2d &x, const Array &y, const Array &weight, int nonredundant=0); +void predict_ols(Array *p_yhat, const Array2d &x, const Array &y, const Array &weight=empty_rArray, int nonredundant=0); + +void calc_ols_var(Array2d *pvar, const Array2d &x, const Array &y); +void calc_gls_var(Array2d *pvar, const Array2d &x, const Array &y, const Array &weight); +void calc_gls_homo_var(Array2d *pvar, const Array2d &x, const Array &y, const Array &weight); +int build_basis(Array *pbasis, int *pnb_in_basis, const Array &new_vector); +void gram_schmidt(Array > *portho_basis, const Array > &basis); +Real detect_discontinuity(const Array &y, Real new_y, Real small_value=0.001); + +Real find_minimum(const Array &y, int mesh=100, Real *pos=NULL); + +void calc_perfect_fit(Array *pb, const Array2d &x, const Array &y, const Array &w); + +#endif diff --git a/src/machdep.hh b/src/machdep.hh new file mode 100644 index 0000000..0874661 --- /dev/null +++ b/src/machdep.hh @@ -0,0 +1,27 @@ +#ifndef __MACHDEP_H__ +#define __MACHDEP_H__ + +//#include +#include +#include +#define MAXINT INT_MAX + +#ifndef MAXFLOAT +#define MAXFLOAT FLT_MAX +#endif + +#define Real double +#ifdef OLD_COMPLEX + #define Complex complex +#else + #define Complex complex +#endif +#define PATHSEP '/' +#include +#include + +#include "fixagg.h" + +using namespace std; + +#endif diff --git a/src/makefile b/src/makefile new file mode 100644 index 0000000..4442411 --- /dev/null +++ b/src/makefile @@ -0,0 +1,146 @@ +.SUFFIXES: .hlp .c++ .hh +BINDIR=$(HOME)/bin/ + +#for g++ compiler on all platforms +CXX=g++ + +#for MPI: limited implementation at this point +#CXX=mpiCC -DATAT_MPI + +#note that BINDIR and CXX are overridden if called by ../makefile + +LDLIBS=-lm +#if you want to use blas/lapack +#LDLIBS=-lm -lgomp -lmkl_intel_lp64 -lmkl_gnu_thread -lmkl_core +#note that -O can cause problems... +include makefileflags +#CXXFLAGS=$(PATCHCXXFLAGS) +#CXXFLAGS=$(PATCHCXXFLAGS) -O3 -DATATUSELAPACK +#CXXFLAGS=$(PATCHCXXFLAGS) -DDEGE_GS +#CXXFLAGS=$(PATCHCXXFLAGS) -DSLOWENUMALGO +#CXXFLAGS=$(PATCHCXXFLAGS) -DDEGE_GS -DSLOWENUMALGO +#CXXFLAGS=$(PATCHCXXFLAGS) -DDEBUG -g -DSLOWENUMALGO #-DDEGE_GS +#CXXFLAGS=$(PATCHCXXFLAGS) -DDEBUG -g #-DDEGE_GS +CXXFLAGS=$(PATCHCXXFLAGS) -O3 +#CXXFLAGS=$(PATCHCXXFLAGS) -O3 -DQUICKNEIGHBORALGO + +#for native compiler on SGI +#need to include ./patchstrstr in ./patchlang +#CXX=CC +#LDLIBS=-lm +#CXXFLAGS=-LANG: ansi-for-init-scope=ON + +#for native compiler on IBM SP +#need to include ./patchagg and ./patchfor in ./patchlang +#CXX=xlC +#LDLIBS=-lm -lcomplex +#CXXFLAGS=-DOLD_COMPLEX -DSTRING_FIX + +CC=${CXX} +CFLAGS=$(CXXFLAGS) + +ALLSCRIPT=getclus mapsrep mmapsrep str2xyz makelat clusterexpand mkteci clusterpredict checkrelax calcbulk mcdroplast str2cif wycked getproto sqs2tdb symbrklib +ALLPRG=maps mmaps emc2 phb checkcell corrdump kmesh genstr gensqs mcsqs nntouch fixcell csfit cv cellcvrt lsfit fitsvsl svsl felec pdef fitfc nnshell memc2 gce gencs triph strpath infdet apb +ALLH=anyfft.h drawpd.h gstate.h lstsqr.h multipoly.h stringo.h array.h equil.h integer.h machdep.h parse.h teci.h arraylist.h fftn.h keci.h kmeci.h mclib.h phonlib.h vectmac.h calccorr.h findsym.h lattype.h misc.h plugin.h version.h calcmf.h fixagg.h linalg.h mmclib.h predrs.h xtalutil.h chull.h fxvector.h linklist.h mrefine.h refine.h clus_str.h getvalue.h linsolve.h mteci.h ridge.h kspacecs.cc tensor.h gceutil.h tensorsym.h binstream.h mpiinterf.h normal.h apb.h opti.h strinterf.h meshutil.h + +PLUGINMAPS=predrs.o predcs.o tlambda.o ridge.o +PLUGINMMAPS=predes.o +PLUGINEMC2=kspacecs.o +PLUGINMEMC2=kspacees.o +PLUGINSVSL=morsepot.o morsepotc3.o +PLUGINCORR= + +all: $(ALLPRG) + +#make sure to include -DSLOWENUMALGO if compiling mpi version +mpi: mpigenstr mpimmaps splitjob dispatch + +headers.o: ${ALLH} + +maps: headers.o stringo.o parse.o xtalutil.o integer.o findsym.o lattype.o calccorr.o refine.o clus_str.o linalg.o lstsqr.o gstate.o linsolve.o getvalue.o mapshelp.o $(PLUGINMAPS) +mmaps: headers.o stringo.o parse.o xtalutil.o integer.o findsym.o lattype.o calccorr.o mrefine.o clus_str.o linalg.o lstsqr.o linsolve.o getvalue.o mmapshelp.o chull.o mpiinterf.o $(PLUGINMMAPS) $(PLUGINCORR) +emc2: headers.o teci.o stringo.o parse.o xtalutil.o integer.o findsym.o clus_str.o calccorr.o getvalue.o lstsqr.o linalg.o linsolve.o drawpd.o mclib.o keci.o emc2help.o anyfft.o fftn.o $(PLUGINEMC2) +phb: headers.o teci.o stringo.o parse.o xtalutil.o integer.o findsym.o clus_str.o calccorr.o getvalue.o lstsqr.o linalg.o linsolve.o drawpd.o mclib.o keci.o phbhelp.o anyfft.o fftn.o $(PLUGINEMC2) +checkcell: headers.o parse.o xtalutil.o integer.o stringo.o getvalue.o +analrelax: headers.o parse.o xtalutil.o integer.o stringo.o getvalue.o linsolve.o linalg.o +corrdump: headers.o stringo.o parse.o xtalutil.o integer.o findsym.o calccorr.o clus_str.o getvalue.o corrdumphelp.o linalg.o linsolve.o lstsqr.o $(PLUGINCORR) +skelread: headers.o stringo.o parse.o xtalutil.o integer.o findsym.o calccorr.o clus_str.o getvalue.o linalg.o linsolve.o lstsqr.o +gce: headers.o stringo.o parse.o xtalutil.o integer.o findsym.o calccorr.o clus_str.o getvalue.o gcehelp.o linalg.o linsolve.o lstsqr.o gceutil.o tensorsym.o phonlib.o multipoly.o $(PLUGINCORR) +viewgce: headers.o headers.o stringo.o parse.o xtalutil.o integer.o findsym.o calccorr.o clus_str.o getvalue.o corrdumphelp.o linalg.o linsolve.o lstsqr.o gceutil.o tensorsym.o phonlib.o multipoly.o +gencs: headers.o stringo.o parse.o xtalutil.o integer.o findsym.o getvalue.o linalg.o linsolve.o lstsqr.o tensorsym.o phonlib.o multipoly.o + +kmesh: headers.o findsym.o integer.o xtalutil.o getvalue.o stringo.o +genstr: headers.o stringo.o parse.o xtalutil.o integer.o findsym.o clus_str.o getvalue.o lattype.o mpiinterf.o +gensqs: headers.o stringo.o parse.o xtalutil.o integer.o findsym.o clus_str.o getvalue.o lattype.o calccorr.o gensqshelp.o linalg.o linsolve.o lstsqr.o $(PLUGINCORR) +mcsqs: headers.o stringo.o parse.o xtalutil.o integer.o findsym.o clus_str.o getvalue.o lattype.o calccorr.o mcsqshelp.o linalg.o linsolve.o lstsqr.o $(PLUGINCORR) +nntouch: headers.o stringo.o parse.o xtalutil.o integer.o getvalue.o +cellcvrt: headers.o stringo.o parse.o xtalutil.o integer.o getvalue.o findsym.o lattype.o +calces: headers.o stringo.o parse.o xtalutil.o integer.o getvalue.o +fixcell: headers.o lattype.o parse.o integer.o xtalutil.o stringo.o getvalue.o +csfit: headers.o xtalutil.o parse.o getvalue.o lstsqr.o stringo.o integer.o linalg.o linsolve.o predcshelp.o +cv: headers.o linalg.o lstsqr.o linsolve.o integer.o getvalue.o cvhelp.o stringo.o +lsfit: headers.o lstsqr.o linsolve.o getvalue.o linalg.o integer.o ridge.o stringo.o +svsl: headers.o xtalutil.o linalg.o integer.o lstsqr.o getvalue.o findsym.o linsolve.o parse.o stringo.o phonlib.o svslhelp.o calccorr.o clus_str.o multipoly.o $(PLUGINSVSL) +fitsvsl: headers.o xtalutil.o linalg.o integer.o lstsqr.o getvalue.o findsym.o linsolve.o parse.o stringo.o phonlib.o lattype.o fitsvslhelp.o multipoly.o calccorr.o clus_str.o +pdef: headers.o xtalutil.o linalg.o integer.o lstsqr.o getvalue.o findsym.o linsolve.o parse.o stringo.o lattype.o +nnshell: headers.o xtalutil.o parse.o integer.o stringo.o getvalue.o +felec: headers.o getvalue.o integer.o stringo.o felechelp.o parse.o xtalutil.o +fempmag: headers.o getvalue.o integer.o stringo.o fempmaghelp.o parse.o xtalutil.o +fmag: headers.o getvalue.o integer.o stringo.o xtalutil.o parse.o +fitfc: headers.o xtalutil.o linalg.o integer.o lstsqr.o getvalue.o findsym.o linsolve.o parse.o stringo.o phonlib.o lattype.o fitfchelp.o multipoly.o +memc2: headers.o mteci.o stringo.o parse.o xtalutil.o integer.o findsym.o clus_str.o calccorr.o getvalue.o lstsqr.o linalg.o linsolve.o mmclib.o equil.o calcmf.o memc2help.o multipoly.o chull.o anyfft.o fftn.o kmeci.o $(PLUGINMEMC2) $(PLUGINCORR) +calcelas: headers.o xtalutil.o linalg.o integer.o lstsqr.o getvalue.o findsym.o linsolve.o parse.o stringo.o tensorsym.o phonlib.o multipoly.o +strainder: headers.o xtalutil.o linalg.o integer.o lstsqr.o getvalue.o findsym.o linsolve.o parse.o stringo.o tensorsym.o phonlib.o multipoly.o +calchull: headers.o linalg.o integer.o lstsqr.o getvalue.o linsolve.o chull.o stringo.o +strpath: headers.o normal.o xtalutil.o integer.o parse.o stringo.o getvalue.o +apb: headers.o xtalutil.o integer.o parse.o stringo.o getvalue.o apbhelp.o +infdet: headers.o opti.o strinterf.o integer.o linalg.o linsolve.o parse.o stringo.o xtalutil.o getvalue.o infdethelp.o +#experimental +epic: headers.o opti.o strinterf.o integer.o linalg.o linsolve.o parse.o stringo.o xtalutil.o getvalue.o epichelp.o +loctst: headers.o integer.o parse.o stringo.o xtalutil.o getvalue.o +iwulff: headers.o stringo.o parse.o xtalutil.o integer.o getvalue.o +clusover: headers.o linalg.o integer.o linsolve.o +tryclus: headers.o xtalutil.o parse.o integer.o stringo.o getvalue.o +csl: headers.o stringo.o xtalutil.o findsym.o parse.o getvalue.o integer.o +test: headers.o test.o linsolve.o linalg.o chull.o integer.o getvalue.o lstsqr.o stringo.o +stm: headers.o stringo.o xtalutil.o findsym.o parse.o getvalue.o integer.o +cna: headers.o stringo.o xtalutil.o parse.o integer.o getvalue.o +cmpstr: headers.o stringo.o parse.o xtalutil.o integer.o getvalue.o +ehmass: headers.o parse.o xtalutil.o integer.o getvalue.o lstsqr.o linalg.o linsolve.o stringo.o findsym.o +seebeck: headers.o parse.o xtalutil.o integer.o getvalue.o lstsqr.o linalg.o linsolve.o stringo.o findsym.o +bgsdqmc: headers.o normal.o +vctriv: headers.o normal.o xtalutil.o integer.o parse.o stringo.o getvalue.o +hessian: headers.o linalg.o linsolve.o integer.o stringo.o getvalue.o +triph: headers.o stringo.o integer.o getvalue.o +simplexize: headers.o stringo.o integer.o getvalue.o linalg.o linsolve.o meshutil.o +mkaxes: headers.o stringo.o integer.o getvalue.o meshutil.o linalg.o linsolve.o +pathint: headers.o linsolve.o integer.o getvalue.o stringo.o linalg.o +greadyneb: headers.o linsolve.o linalg.o integer.o getvalue.o stringo.o +plotcurv: headers.o linsolve.o linalg.o +mpitest: headers.o mpiinterf.o xtalutil.o parse.o stringo.o integer.o +#end + +splitjob: splitjob.o +dispatch: headers.o mpiinterf.o +mpigenstr: genstr + cp -f genstr mpigenstr +mpimmaps: mmaps + cp -f mmaps mpimmaps + +.hlp.cc: + ./makehelp.bash < $*.hlp > $*.cc + +.c++.cc: + ./patchlang < $*.c++ > $*.cc + +.PRECIOUS : %.cc + +.hh.h: + ./patchlang < $*.hh > $*.h + +install: + ../safecp $(ALLPRG) $(ALLSCRIPT) $(BINDIR) + +clean: + rm -f *.o *.cc *.c *.h *.exe + rm -f $(ALLPRG) diff --git a/src/makefileflags b/src/makefileflags new file mode 100644 index 0000000..078eb4a --- /dev/null +++ b/src/makefileflags @@ -0,0 +1 @@ +PATCHCXXFLAGS= \ No newline at end of file diff --git a/src/makehelp.bash b/src/makehelp.bash new file mode 100755 index 0000000..bd6a981 --- /dev/null +++ b/src/makehelp.bash @@ -0,0 +1,5 @@ +#!/bin/bash + +echo const char \*helpstring=\"\" +sed 's/^/\"/g' | sed 's/$/\\n\"/g' +echo \; diff --git a/src/makehelp.csh b/src/makehelp.csh new file mode 100755 index 0000000..1e40080 --- /dev/null +++ b/src/makehelp.csh @@ -0,0 +1,5 @@ +#!/bin/csh + +echo const char \*helpstring=\"\" +sed 's/^/\"/g' | sed 's/$/\\n\"/g' +echo \; diff --git a/src/makelat b/src/makelat new file mode 100755 index 0000000..df757a3 --- /dev/null +++ b/src/makelat @@ -0,0 +1,69 @@ +#!/bin/csh +source ~/.atat.rc + +if ( $#argv == 0 || x$1 == "x-h" ) then + cat - < lat.tmp + if ( $tostdout == 0 ) then + mkdir -p $dirname + nntouch -s=$scale -l=lat.tmp -r=$atatdir/data/radii.in > $dirname/lat.in + else + nntouch -s=$scale -l=lat.tmp -r=$atatdir/data/radii.in + endif + rm -f lat.tmp +end diff --git a/src/maps.c++ b/src/maps.c++ new file mode 100644 index 0000000..e7624c7 --- /dev/null +++ b/src/maps.c++ @@ -0,0 +1,391 @@ +#include +#include +#include +#include +#include +#include "parse.h" +#include "refine.h" +#include "getvalue.h" + +#include "version.h" + +extern char *helpstring; + +int sigdig=6; + +// Creates a directory containing a file describing a new structure.; +// ARG: +// str: (IN) structure to write out; +// lat: (IN) \ ; +// site_type_list: (IN) | describes the lattice (see parse.h); +// atom_label: (IN) / ; +// axes: (IN) coordinate system in which to express coordinates; +void write_structure_file(const StructureInfo &str, const Structure &lat, + const Array &site_type_list, const Array &atom_label, const rMatrix3d &axes) { + mkdir(str.label,S_IRWXU | S_IRWXG | S_IRWXO); + if (chdir(str.label)==0) { + ofstream file("str.out"); + file.setf(ios::fixed); + file.precision(sigdig); + write_structure(str,lat,site_type_list,atom_label, axes, file); + ofstream waitfile("wait"); + chdir(".."); + } +} + +// Writes all the output files describing the current state; +// of the cluster expansion (see class CEFitInfo in raffine.h). +void write_fit_info(const CEFitInfo &fitinfo, const Structure &lattice, + const Array &site_type_list, const Array &atom_label, const rMatrix3d &axes) { + ofstream log("maps.log"); + log << "Maps version " MAPS_VERSION << endl; + if (fitinfo.status & CEFitInfo::fit_impossible) { + log << "Not enough known energies to fit CE" << endl; + } + else { +#ifdef SLOWENUMALGO + log << "The internal database of structures extends up to " << fitinfo.max_volume*lattice.atom_type.get_size() << " atoms/unit cell, see predstr.out" << endl; +#else + log << "The internal database of structures extends at least up to " << MAX(0,fitinfo.max_volume-1)*lattice.atom_type.get_size() << " atoms/unit cell, see predstr.out" << endl; +#endif + if (fitinfo.status & CEFitInfo::gs_problem) { + log << "Among structures of known energy, true ground states differ from fitted ground states" << endl; + } + else { + log << "Among structures of known energy, true and predicted ground states agree" << endl; + } + if (fitinfo.status & CEFitInfo::new_gs) { + log << "New ground states with at most " << fitinfo.max_volume*lattice.atom_type.get_size() << " atoms/unit cell predicted , see predstr.out" << endl; + } + if (fitinfo.status==CEFitInfo::fit_ok) { + log << "No other ground states of " << fitinfo.max_volume*lattice.atom_type.get_size() << " atoms/unit cell or less exist." << endl; + } + log << "Concentration range used for ground state checking: [" << (1.+fitinfo.minc_gs_ok)/2. << "," << (1.+fitinfo.maxc_gs_ok)/2. << "]." << endl; + log << "Crossvalidation score: " << fitinfo.cv << endl; + ofstream fit_file("fit.out"); + fit_file.setf(ios::fixed); + fit_file.precision(sigdig); + for (int i=0; ilabel << endl; + } + ofstream gs_file("gs.out"); + gs_file.setf(ios::fixed); + gs_file.precision(sigdig); + for (int i=0; ilabel << endl; + } + ofstream eci_file("eci.out"); + eci_file.setf(ios::fixed); + eci_file.precision(sigdig); + ofstream cluster_file("clusters.out"); + cluster_file.setf(ios::fixed); + cluster_file.precision(sigdig); + rMatrix3d iaxes=!axes; + for (int i=0; i> new_energy; + } + if (new_energy!=MAXFLOAT) { + // if the file energy contains a valid number use it as energy; + new_energy*=atom_factor/(Real)(pstr->atom_pos.get_size()); + new_status=StructureInfo::calculated; + } + else { + // if anythings goes wrong: error; + new_energy=0.; + new_status=StructureInfo::error; + } + } else { + // if no energy file => is being calculated; + new_energy=0.; + new_status=StructureInfo::busy; + } + if (file_exists("error")) { + new_status=StructureInfo::error; + } + + // a structure has changed if its status or energy has changed; + if (new_status!=pstr->status) changed=1; + if (new_status==StructureInfo::calculated && pstr->status==StructureInfo::calculated) { + if (new_energy!=pstr->energy) changed=1; + } + // update values in memory; + pstr->status=new_status; + pstr->energy=new_energy; + // indicates if the structure has changed; + return changed; +} + +int update_all_structures(StructureBank *pstr_bank, const Structure &lattice, const Array &site_type_list, const Array &atom_label) { + int changed=0; + // list structures on disk; + system("ls */str.out 2> /dev/null | sed 's+/str.out++g' > strlist.out"); + ifstream strfile("strlist.out"); + LinkedList label_on_disk; + while (strfile && !strfile.eof()) { + char buf[MAX_LINE_LEN]; + buf[0]=0; + strfile.get(buf,MAX_LINE_LEN-1); + char tmp; + strfile.get(tmp); + if (strlen(buf)==0) break; + label_on_disk << new AutoString(buf); + } + + LinkedListIterator i(pstr_bank->get_structure_list()); + for (; i; i++) { + if (!(i->status & StructureInfo::unknown)) { + LinkedListIterator i_disk(label_on_disk); + for ( ; i_disk; i_disk++) { + if (i->label==*i_disk) break; + } + if (!i_disk) { + i->status=StructureInfo::unknown; + changed=1; + } + else { + if (chdir(i->label)==0) { + if (update_structure(&(*i),lattice.atom_pos.get_size())) changed=1; + delete label_on_disk.detach(i_disk); + chdir(".."); + } + } + } + } + + LinkedListIterator i_disk(label_on_disk); + for (; i_disk; i_disk++) { + if (chdir(*i_disk)==0) { + StructureInfo str; + ifstream strfile("str.out"); + if (strfile) { + if (parse_structure_file(&str.cell,&str.atom_pos,&str.atom_type,atom_label,strfile)) { + if (str.atom_pos.get_size()==0) { + cerr << "Problem reading structure " << *i_disk << endl; + ERRORQUIT("Aborting."); + } + if (fix_atom_type(&str,lattice,site_type_list,0)) { + StructureInfo *pstr; + if (pstr_bank->add_structure(str,&pstr)) { + pstr->label.set(*i_disk); + if (update_structure(pstr,lattice.atom_pos.get_size())) changed=1; + } + else { + if (pstr->status & StructureInfo::unknown) { + pstr->label.set(*i_disk); + if (update_structure(pstr,lattice.atom_pos.get_size())) changed=1; + } + else { + cerr << "Structure " << *i_disk <<" not loaded since it is the same as structure " << pstr->label << endl; + } + } + } + else { + cerr << "Error while reading structure " << *i_disk << endl; + } + } + else { + cerr << "Error while reading structure " << *i_disk << endl; + } + } + chdir(".."); + } + else { + cerr << "Unable to cd to " << *i_disk << endl; + } + } + unlink("strlist.out"); // cleanup structure list file; + return changed; +} + +#define MAPS_IS_RUNNING "maps_is_running" + +int main(int argc, char *argv[]) { + // parse command line arguments or display help (see getvalue.h); + int dohelp=0; + char *latticefilename="lat.in"; + int polltime=10; + int max_multiplet=4; + int dummy=0; + int quiet=0; + int gsnbatom=0; + Real minc_gs_ok=0.; + Real maxc_gs_ok=1.; + int do2D=0; + Real complexity_exp=3.; + int user_max_vol=32000; + char *predictor_labels=""; + char *algo_label="std"; + AskStruct options[]={ + {"","MIT Ab initio Phase Stability (MAPS) code " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latticefilename}, + {"-z","Tolerance for finding symmetry operations (default: 1e-3)",REALVAL,&zero_tolerance}, + {"-c","Exponent of the order of complexity (default: 3)",REALVAL,&complexity_exp}, + {"-t","Time between disk reads in sec (default: 10 sec)",INTVAL,&polltime}, + {"-m","Maximum number of points in cluster (default 4)",INTVAL,&max_multiplet}, + {"-g","Extend ground state search up to structures having at least that many atoms.",INTVAL,&gsnbatom}, + {"-c0","[c0,c1] is the concentration range where ground states must be correct.",REALVAL,&minc_gs_ok}, + {"-c1","",REALVAL,&maxc_gs_ok}, + {"-mv","Maximum volume (number of atom per unit cell) allowed when generating structures (default: no limit)",INTVAL,&user_max_vol}, + {"-2d","Find supercells along a and b axes only",BOOLVAL,&do2D}, + {"-p","Predictor plugins to use (examples: -p=cs or -p=cs_es)",STRINGVAL,&predictor_labels}, + {"-ks","same as -p",STRINGVAL,&predictor_labels}, + {"-fa","Select fitting algorithm (default: built-in)",STRINGVAL,&algo_label}, + {"-q","Quiet mode (do not print status to stderr)",BOOLVAL,&quiet}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + if (file_exists(MAPS_IS_RUNNING)) { + ERRORQUIT("Maps is already running in this directory. To override this error, type rm " MAPS_IS_RUNNING); + } + { + ofstream tmp(MAPS_IS_RUNNING); + } + + // read in lattice (see parse.h); + Structure lat; + Array site_type_list; + Array atom_label; + rMatrix3d axes; + ifstream file(latticefilename); + if (!file) ERRORQUIT("Unable to open lattice file."); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &site_type_list, &atom_label, file, &axes); + if (fabs(det(lat.cell))2) + ERRORQUIT("For multicomponent systems use mmaps instead."); + if (site_type_list(i).get_size()==2) nb_of_binary_site++; + } + if (nb_of_binary_site>1) + ERRORQUIT("For coupled cluster expansions use mmaps instead."); + if (nb_of_binary_site==0) + ERRORQUIT("Nothing to cluster expand!"); + + // find space group (see findsym.h); + SpaceGroup spacegroup; + spacegroup.cell=lat.cell; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,lat.cell,lat.atom_pos,lat.atom_type); + if (contains_pure_translations(spacegroup.point_op,spacegroup.trans)) { + cerr << "Warning: unit cell is not primitive." << endl; + } + + // initialize a cluster expansion object (with user-specified algorithm, if requested); + if (!check_plug_in(ClusterExpansionCreator(),algo_label)) { + ERRORQUIT("Aborting"); + } + ClusterExpansionCreator *pcec=GenericPlugIn::create(algo_label); + ClusterExpansion *pce=pcec->create(lat,site_type_list,atom_label,spacegroup); + delete pcec; + + // initialize cluster expansion object parameters; + pce->max_multiplet=max_multiplet; // sets the maximum number of point per cluster; + pce->complexity_exp=complexity_exp; + pce->set_concentration_range_gs_ok(2.*minc_gs_ok-1.,2.*maxc_gs_ok-1.); + if (!check_plug_in(EnergyPredictor(),predictor_labels)) { + ERRORQUIT("Aborting"); + } + pce->set_maximum_volume_allowed(user_max_vol); + pce->set_predictor_labels(predictor_labels); + pce->access_structure_bank().set_2D_mode(do2D); + + if (gsnbatom) { + if (!quiet) cerr << "Generating structures for ground state search." << endl; + int maxvol=(gsnbatom+lat.atom_pos.get_size()-1)/lat.atom_pos.get_size(); + for (int i=1; i<=maxvol; i++) { + if (!quiet) cerr << "Volume= " << i*lat.atom_pos.get_size() << "/" << gsnbatom << endl; + pce->access_structure_bank().find_new_structures(i); + } + if (!quiet) cerr << "done!" << endl; + } + + // clear up fit status file; + CEFitInfo fitinfo; + fitinfo.status=CEFitInfo::fit_impossible; + write_fit_info(fitinfo,lat,site_type_list,atom_label,axes); + + // main loop: wait for "events"; + while (1) { + // look for updated structure status/energy; + while (update_all_structures(&(pce->access_structure_bank()),lat,site_type_list,atom_label) || file_exists("refresh")) { + while (file_exists("refresh")) unlink("refresh"); + // if there are changes, fit a new CE; + CEFitInfo fitinfo; + if (!quiet) cerr << "Finding best cluster expansion..." << endl; + pce->find_best_cluster_choice(&fitinfo); //fit; + write_fit_info(fitinfo,lat,site_type_list,atom_label,axes); //print results; + if (!quiet) cerr << "done!" << endl; + } + // check if user wants to abort; + if (file_exists("stop")) break; + // check if user wants a new structure; + if (file_exists("ready")) { + StructureInfo *pstr; + if (!quiet) cerr << "Finding best structure..." << endl; + // first try to find the best structure; + pstr=pce->find_best_structure(); + // if we don't have enough info yet, find the next structure needed to fit a minimal CE; + if (!pstr) pstr=pce->find_initial_structures(); + // if we don't have enough info yet, just find the cheapest structure to compute; + if (!pstr) pstr=pce->find_first_unknown_structure(); + write_structure_file(*pstr,lat,site_type_list,atom_label,axes); // write structure; + while (file_exists("ready")) unlink("ready"); // tell user we're done; + pstr->status=StructureInfo::busy; // mark structure as busy; + if (!quiet) cerr << "done!" << endl; + } + for (int t=0; t! cv/energy.in +echo -n "" >! cv/str.in +echo -n "" >! cv/strname.in +foreach dir (`ls -1 */energy | sed 's+/energy++g' | sort -n`) + if ( ! -e $dir/error ) then + echo $dir + echo $dir >>! cv/strname.in + if ( -e $dir/energy ) then + echo `cat $dir/energy` `tail -n +2 $dir/str.out | awk '{print $4}' | wc -w` | awk '{printf("%.10g\n",$1/$2)}' >>! cv/energy.in + else + echo x >! cv/energy.in + endif + cat $dir/str.out >>! cv/str.in + (echo "end"; echo "") >>! cv/str.in + endif +end diff --git a/src/mapshelp.c++ b/src/mapshelp.c++ new file mode 100644 index 0000000..2f7801e --- /dev/null +++ b/src/mapshelp.c++ @@ -0,0 +1,240 @@ +char *helpstring="" +"-> What does this program do?\n" +"\n" +"It gradually constructs a increasingly more accurate cluster expansion.\n" +"A user-provided script running concurrently is responsible for notifying\n" +"maps when computer time is available. maps creates files describing\n" +"structures whose energy should be calculated. The user-provided script\n" +"sets up the runs needed to calculate the energy of these structures.\n" +"As maps becomes aware of more and more structural energies, it gradually\n" +"improves the precision of the cluster expansion, which is continously\n" +"written to an output file.\n" +"The code terminates when a stop file is created by typing, for instance,\n" +"touch stop\n" +"\n" +"NOTE: Fully functional scripts are included with the package:\n" +"pollmach and runstruct_vasp.\n" +"For for more information type\n" +" pollmach\n" +" runstruct_vasp -h\n" +"\n" +"-> Format of the input file defining the lattice (specified by the -l option)\n" +"\n" +"First, the coordinate system a,b,c is specified, either as\n" +"[a] [b] [c] [alpha] [beta] [gamma]\n" +"or as:\n" +"[ax] [ay] [az]\n" +"[bx] [by] [bz]\n" +"[cx] [cy] [cz]\n" +"Then the lattice vectors u,v,w are listed, expressed in the coordinate system just defined:\n" +"[ua] [ub] [uc]\n" +"[va] [vb] [vc]\n" +"[wa] [wb] [wc]\n" +"Finally, atom positions and types are given, expressed in the same coordinate system\n" +"as the lattice vectors:\n" +"[atom1a] [atom1b] [atom1c] [atom1types]\n" +"[atom2a] [atom2b] [atom2c] [atom2types]\n" +"etc.\n" +"\n" +"-The atom type is a comma-separated list of the atomic\n" +" symbols of the atoms that can sit the lattice site.\n" +"-The first symbol listed is assigned a spin of -1 and the second, a spin of 1.\n" +"-When only one symbol is listed, this site is ignored for the purpose\n" +" of calculating correlations, but not for determining symmetry.\n" +"\n" +"Examples:\n" +"\n" +"The fcc lattice of the Cu-Au system:\n" +"3.8 3.8 3.8 90 90 90\n" +"0 0.5 0.5\n" +"0.5 0 0.5\n" +"0.5 0.5 0\n" +"0 0 0 Cu,Au\n" +"\n" +"A lattice for the Li_x Co_y Al_(1-y) O_2 system:\n" +" 0.707 0.707 6.928 90 90 120\n" +" 0.3333 0.6667 0.3333\n" +"-0.6667 -0.3333 0.3333\n" +" 0.3333 -0.3333 0.3333\n" +" 0 0 0 Li,Vac\n" +" 0.3333 0.6667 0.0833 O\n" +" 0.6667 0.3333 0.1667 Co,Al\n" +" 0 0 0.25 O\n" +"Running the above example requires the multicomponent version of maps,\n" +"called mmaps.\n" +"\n" +"Optional input file: ref_energy.in\n" +"\n" +" Contains the reference energy (per site) to be subtracted to get formation energies.\n" +" The first line is the c=0 energy, the second line is the c=1 energy.\n" +" If this file is omitted, the energies of leftmost and rightmost structures\n" +" (on the concentration axis) are taken.\n" +"\n" +"Optional input file: nbclusters.in\n" +" Allows the user to manually select which clusters to include in the fit.\n" +" This file should contains:\n" +" number of pairs to include\n" +" number of triplets to include\n" +" etc.\n" +" This file can be changed while maps is running. However, you must type\n" +" touch refresh\n" +" to tell maps to reread it.\n" +"\n" +"-> Output files\n" +"\n" +"maps.log\n" +"Contains possible warnings:\n" +" 'Not enough known energies to fit CE'\n" +" 'True ground states not = fitted ground states'\n" +" 'New ground states predicted, see predstr.out'\n" +"\n" +"These warning should disappear as more structural energies become available\n" +"and the following messages should be displayed:\n" +" 'Among structures of known energy, true and predicted ground states agree.'\n" +" 'No other ground states of xx atoms/unit cell or less exist.'\n" +"\n" +"This file also gives the crossvalidation score of the current fit\n" +"(before the weighting is turned on in order to get the correct ground states).\n" +"\n" +"fit.out\n" +"Contains the results of the fit, one structure per line and each line\n" +"has the following information:\n" +" concentration energy fitted_energy (energy-fitted_energy) weight index\n" +"'concentration' lies between 0 and 1.\n" +"'energy' is per site (a site is a place where more than one atom type can lie)\n" +"'weight' is the weight of this structure in the fit.\n" +"'index' is the name of the directory associated with this structure.\n" +"\n" +"predstr.out\n" +"Contains the predicted energy (per site) of all structures maps has in memory but\n" +"whose true energy is unknown or has been flagged with error.\n" +"Format: one structure per line, and each line has the following information:\n" +" concentration energy predicted_energy index status\n" +"index is the structure number (or -1 if not written to disk yet).\n" +"energy is the calculated energy (or 0 if unknown).\n" +"status is either b for busy (being calculated), e for error or u for unknown\n" +"(not yet calculated). A g is appended to status if that structure is predicted to be\n" +"a ground state. To list all predicted ground states, type\n" +"grep 'g' predstr.out\n" +"\n" +"gs.out\n" +"Lists the ground state energies, one structure per line and each line\n" +"has the following information:\n" +" concentration energy fitted_energy index\n" +"\n" +"gs_str.out\n" +"Lists the ground state structures, in the same format as the n/str.out files\n" +"(see below). Each structure is terminated by the word 'end' on a line by itself,\n" +"followed by a blank line.\n" +"\n" +"eci.out\n" +"Lists the eci. (They have already been divided by multiplicity.)\n" +"The corresponding clusters are in clusters.out\n" +"\n" +"clusters.out\n" +"For each cluster, the first line is the multiplicity, the second line is the\n" +"cluster diameter, and the third line is the number of points in the cluster.\n" +"The remaining lines are the coordinates of the points in the cluster\n" +"(in the coordinate system specified in the input file defining the lattice).\n" +"A blank line separates each cluster.\n" +"\n" +"n/str.out\n" +"Same format as the lattice file, except that\n" +"-The coordinate system is always written as 3x3 matrix\n" +"-Only one atom is listed for each site.\n" +"\n" +"ref_energy.out\n" +"Reference energies used to calculate formation energies.\n" +"(Usually: energy of the pure end members OR values given in\n" +"ref_energy.in if provided.)\n" +"\n" +"-> Communication protocol between maps and the script driving the\n" +" energy method code (e.g. ab initio code)\n" +" (Only those who want to customize the code need to read this section.\n" +" The scripts described in this section are provided with the atat\n" +" distribution in the glue/ subdirectory.)\n" +"\n" +"Unless otherwise specified all files mentioned reside in the directory where\n" +"maps was started. All paths are relative to the startup directory.\n" +"\n" +"+The script should first wait for computer time to be available before creating\n" +" a file called 'ready'.\n" +"-Upon detecting that the 'ready' file has been created,\n" +" maps responds by creating a subdirectory 'n' (where 'n' is a number) and a file\n" +" 'n/str.out' containing a description of a structure whose energy needs to be\n" +" calculated.\n" +"-maps creates a file called 'n/wait' to distinguish this directory\n" +" from other ones created earlier.\n" +"-maps deletes the 'ready' file.\n" +"+Upon detecting that the 'ready' file has disappeared,\n" +" the script should now look for the 'n/wait' file, start the calculations\n" +" in the directory 'n' and delete file 'n/wait'.\n" +"+If anything goes wrong in the calculations, the script should create a file\n" +" 'n/error'.\n" +"+When the calculations terminate successfully, the energy per unit cell of the structure\n" +" should be copied to the file 'n/energy'.\n" +" (NOTE: use energy per unit cell of the structure NOT per unit cell of the lattice).\n" +"-maps continuously scans all the subdirectories 'n' for 'n/energy' or 'n/error'\n" +" files and updates the cluster expansion accordingly.\n" +"-maps updates the cluster expansion whenever a file called 'refresh' is created\n" +" (maps then deletes it).\n" +"-maps terminates when a 'stop' file is created.\n" +"\n" +"Note that the script can ask maps to create new structure directories even before\n" +"the energy of the current structure has been found.\n" +"Note that human intervention is allowed: an 'n/error' file can be\n" +"manually created if an error is later found in a run.\n" +"Users can also manually step up all runs if they wish so, as long\n" +"as they follow the protocol.\n" +"\n" +"Example of script\n" +"(portions in /* */ have to be filled in with the appropriate code):\n" +"\n" +"#!/bin/csh\n" +"\n" +"while (! -e stop)\n" +" /* check machine load here */\n" +" if ( /* load low enough */ ) then\n" +" touch ready\n" +" while (-e ready)\n" +" sleep 30\n" +" end\n" +" cd `ls */wait | sed 's+/.*++g' | head -1`\n" +" rm -f wait\n" +" /* convert str.out to the native format of ab initio code */\n" +" /* in background: run code and create either energy file or error file */\n" +" cd ..\n" +" endif\n" +" sleep 180\n" +"end\n" +"\n" +"-> Using maps with vasp\n" +"\n" +"The script runstruct_vasp, when run from within directory 'n',\n" +"1) converts 'vasp.wrap' and 'n/str.out' into all the necessary files to run vasp,\n" +"2) runs vasp\n" +"3) extract all the information from the output files and writes in a format\n" +" readable by maps.\n" +"\n" +"An example of vasp.wrap is:\n" +"[INCAR]\n" +"PREC = high\n" +"ISMEAR = -1\n" +"SIGMA = 0.1\n" +"NSW=41\n" +"IBRION = 2\n" +"ISIF = 3\n" +"KPPRA = 1000\n" +"DOSTATIC\n" +"\n" +"See ezvasp documentation for more information.\n" +"\n" +"-> Importing structures into maps\n" +"\n" +"MAPS continuously scans all the first-level subdirectories containing\n" +"a file called str.out and tries to map them onto superstructures of the\n" +"lattice provided. This lets you 'import' structures from another source\n" +"into MAPS. A word of caution: the imported structures must be\n" +"unrelaxed and no effort is made to rotate or scale them in order to\n" +"match the lattice (aside from space group symmetry operations).\n" +; diff --git a/src/mapshelp.hlp b/src/mapshelp.hlp new file mode 100755 index 0000000..d0cfd83 --- /dev/null +++ b/src/mapshelp.hlp @@ -0,0 +1,247 @@ +-> What does this program do? + +It gradually constructs a increasingly more accurate cluster expansion. +A user-provided script running concurrently is responsible for notifying +maps when computer time is available. maps creates files describing +structures whose energy should be calculated. The user-provided script +sets up the runs needed to calculate the energy of these structures. +As maps becomes aware of more and more structural energies, it gradually +improves the precision of the cluster expansion, which is continously +written to an output file. +The code terminates when a stop file is created by typing, for instance, +touch stop + +NOTE: Fully functional scripts are included with the package: +pollmach and runstruct_vasp. +For for more information type + pollmach + runstruct_vasp -h + +-> Format of the input file defining the lattice (specified by the -l option) + +First, the coordinate system a,b,c is specified, either as +[a] [b] [c] [alpha] [beta] [gamma] +or as: +[ax] [ay] [az] +[bx] [by] [bz] +[cx] [cy] [cz] +Then the lattice vectors u,v,w are listed, expressed in the coordinate system just defined: +[ua] [ub] [uc] +[va] [vb] [vc] +[wa] [wb] [wc] +Finally, atom positions and types are given, expressed in the same coordinate system +as the lattice vectors: +[atom1a] [atom1b] [atom1c] [atom1types] +[atom2a] [atom2b] [atom2c] [atom2types] +etc. + +-The atom type is a comma-separated list of the atomic + symbols of the atoms that can sit the lattice site. +-The first symbol listed is assigned a spin of -1 and the second, a spin of 1. +-When only one symbol is listed, this site is ignored for the purpose + of calculating correlations, but not for determining symmetry. + +Examples: + +The fcc lattice of the Cu-Au system: +3.8 3.8 3.8 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 Cu,Au + +A lattice for the Li_x Co_y Al_(1-y) O_2 system: + 0.707 0.707 6.928 90 90 120 + 0.3333 0.6667 0.3333 +-0.6667 -0.3333 0.3333 + 0.3333 -0.3333 0.3333 + 0 0 0 Li,Vac + 0.3333 0.6667 0.0833 O + 0.6667 0.3333 0.1667 Co,Al + 0 0 0.25 O +Running the above example requires the multicomponent version of maps, +called mmaps. + +Optional input file: ref_energy.in + + Contains the reference energy (per site) to be subtracted to get formation energies. + The first line is the c=0 energy, the second line is the c=1 energy. + If this file is omitted, the energies of leftmost and rightmost structures + (on the concentration axis) are taken. + +Optional input file: nbclusters.in + Allows the user to manually select which clusters to include in the fit. + This file should contains: + number of pairs to include + number of triplets to include + etc. + This file can be changed while maps is running. However, you must type + touch refresh + to tell maps to reread it. + +-> Output files + +maps.log +Contains possible warnings: + 'Not enough known energies to fit CE' + 'True ground states not = fitted ground states' + 'New ground states predicted, see predstr.out' + +These warning should disappear as more structural energies become available +and the following messages should be displayed: + 'Among structures of known energy, true and predicted ground states agree.' + 'No other ground states of xx atoms/unit cell or less exist.' + +This file also gives the crossvalidation score of the current fit +(before the weighting is turned on in order to get the correct ground states). + +fit.out +Contains the results of the fit, one structure per line and each line +has the following information: + concentration energy fitted_energy (energy-fitted_energy) weight index +'concentration' lies between 0 and 1. +'energy' is per site (a site is a place where more than one atom type can lie) +'weight' is the weight of this structure in the fit. +'index' is the name of the directory associated with this structure. + +predstr.out +Contains the predicted energy (per site) of all structures maps has in memory but +whose true energy is unknown or has been flagged with error. +Format: one structure per line, and each line has the following information: + concentration energy predicted_energy index status +index is the structure number (or -1 if not written to disk yet). +energy is the calculated energy (or 0 if unknown). +status is either + b for busy (being calculated), + e for error, + u for unknown (not yet calculated) or + g if that structure is predicted to be a ground state (g can be combined with the above). +To list all predicted ground states, type +grep 'g' predstr.out + +gs.out +Lists the ground state energies, one structure per line and each line +has the following information: + concentration energy fitted_energy index + +gs_str.out +Lists the ground state structures, in the same format as the n/str.out files +(see below). Each structure is terminated by the word 'end' on a line by itself, +followed by a blank line. + +eci.out +Lists the eci. (They have already been divided by multiplicity.) +The corresponding clusters are in clusters.out + +clusters.out +For each cluster, the first line is the multiplicity, the second line is the +cluster diameter, and the third line is the number of points in the cluster. +The remaining lines are the coordinates of the points in the cluster +(in the coordinate system specified in the input file defining the lattice). +A blank line separates each cluster. + +n/str.out +Same format as the lattice file, except that +-The coordinate system is always written as 3x3 matrix +-Only one atom is listed for each site. + +ref_energy.out +Reference energies used to calculate formation energies. +(Usually: energy of the pure end members OR values given in +ref_energy.in if provided.) + +The standard output reports the current progress of the calculations. +During the fit of the cluster expansion, each line of numbers displayed has the following meaning: +1) The current number of point, pair, triplet, etc. clusters +2) An indicator of whether the predicted ground states agree with the true ones (1) or not (0) +3) The CV score. + +-> Communication protocol between maps and the script driving the + energy method code (e.g. ab initio code) + (Only those who want to customize the code need to read this section. + The scripts described in this section are provided with the atat + distribution in the glue/ subdirectory.) + +Unless otherwise specified all files mentioned reside in the directory where +maps was started. All paths are relative to the startup directory. + ++The script should first wait for computer time to be available before creating + a file called 'ready'. +-Upon detecting that the 'ready' file has been created, + maps responds by creating a subdirectory 'n' (where 'n' is a number) and a file + 'n/str.out' containing a description of a structure whose energy needs to be + calculated. +-maps creates a file called 'n/wait' to distinguish this directory + from other ones created earlier. +-maps deletes the 'ready' file. ++Upon detecting that the 'ready' file has disappeared, + the script should now look for the 'n/wait' file, start the calculations + in the directory 'n' and delete file 'n/wait'. ++If anything goes wrong in the calculations, the script should create a file + 'n/error'. ++When the calculations terminate successfully, the energy per unit cell of the structure + should be copied to the file 'n/energy'. + (NOTE: use energy per unit cell of the structure NOT per unit cell of the lattice). +-maps continuously scans all the subdirectories 'n' for 'n/energy' or 'n/error' + files and updates the cluster expansion accordingly. +-maps updates the cluster expansion whenever a file called 'refresh' is created + (maps then deletes it). +-maps terminates when a 'stop' file is created. + +Note that the script can ask maps to create new structure directories even before +the energy of the current structure has been found. +Note that human intervention is allowed: an 'n/error' file can be +manually created if an error is later found in a run. +Users can also manually step up all runs if they wish so, as long +as they follow the protocol. + +Example of script +(portions in /* */ have to be filled in with the appropriate code): + +#!/bin/csh + +while (! -e stop) + /* check machine load here */ + if ( /* load low enough */ ) then + touch ready + while (-e ready) + sleep 30 + end + cd `ls */wait | sed 's+/.*++g' | head -1` + rm -f wait + /* convert str.out to the native format of ab initio code */ + /* in background: run code and create either energy file or error file */ + cd .. + endif + sleep 180 +end + +-> Using maps with vasp + +The script runstruct_vasp, when run from within directory 'n', +1) converts 'vasp.wrap' and 'n/str.out' into all the necessary files to run vasp, +2) runs vasp +3) extract all the information from the output files and writes in a format + readable by maps. + +An example of vasp.wrap is: +[INCAR] +PREC = high +ISMEAR = -1 +SIGMA = 0.1 +NSW=41 +IBRION = 2 +ISIF = 3 +KPPRA = 1000 +DOSTATIC + +See ezvasp documentation for more information. + +-> Importing structures into maps + +MAPS continuously scans all the first-level subdirectories containing +a file called str.out and tries to map them onto superstructures of the +lattice provided. This lets you 'import' structures from another source +into MAPS. A word of caution: the imported structures must be +unrelaxed and no effort is made to rotate or scale them in order to +match the lattice (aside from space group symmetry operations). diff --git a/src/mapsrep b/src/mapsrep new file mode 100755 index 0000000..0bf6562 --- /dev/null +++ b/src/mapsrep @@ -0,0 +1,94 @@ +#!/bin/csh +if ( "x$1" == "x-h" ) then + echo Display the output of maps in graphical form. + echo "Syntax: mapsrep [-e]" + echo the optional switch -e tells the code to plot structures flagged with error too. + echo Thanks to Ruoshi Sun and Mike Widom for updating the script for recent versions of gnuplot. + exit +endif +if ( "x$1" == "x-e" ) then + grep e predstr.out | grep -v b >! error.out +else + echo -n "" >! error.out +endif +cat maps.log +getclus -e | grep -v '^0' | grep -v '^1' >! clusinfo.out +#grep "^2" clusinfo.out >! eci2.out +#grep "^3" clusinfo.out >! eci3.out +#grep "^4" clusinfo.out >! eci4.out +grep g predstr.out >! newgs.out +cat - >! mapsrep.gnu << END +set xlabel "concentration" +set ylabel "energy" +set title "Fitted Energies" +END +if ( `cat newgs.out | wc -l` == 0 ) then + cat - >> mapsrep.gnu <> mapsrep.gnu <> mapsrep.gnu <> mapsrep.gnu <> mapsrep.gnu <> mapsrep.gnu <! error.out +else + echo -n "" >! error.out +endif +cat maps.log +getclus -e | grep -v '^0' | grep -v '^1' >! clusinfo.out +#grep "^2" clusinfo.out >! eci2.out +#grep "^3" clusinfo.out >! eci3.out +#grep "^4" clusinfo.out >! eci4.out +grep g predstr.out >! newgs.out +cat - >! mapsrep.gnu << END +set xlabel "concentration" +set ylabel "energy" +set title "Fitted Energies" +END +if ( `cat newgs.out | wc -l` == 0 ) then + cat - >> mapsrep.gnu <> mapsrep.gnu <> mapsrep.gnu <> mapsrep.gnu <> mapsrep.gnu <> mapsrep.gnu < &cluster_list): + lattice(_lattice), supercell(_supercell), cur_rho() { + Real max_clus_len=0.; + { + LinkedListIterator c(cluster_list); + for ( ; c; c++) { + Real l=get_cluster_length(*c); + if (l>max_clus_len) max_clus_len=l; + } + } + margin=find_sphere_bounding_box(lattice.cell,max_clus_len); + iVector3d supercell_orig=supercell; + for (int mult=1; 1 ; mult++) { + supercell=mult*supercell_orig; + int i; + for (i=0; i<3; i++) { + if (supercell(i) < margin(i)) break; + } + if (i==3) break; + } + total_box=supercell+2*margin; + int spin_total_size=total_box(0)*total_box(1)*total_box(2)*lattice.atom_pos.get_size(); + spin=new SPIN_TYPE[spin_total_size]; + for (int i=0; i c(cluster_list); + for (int i=0; c; c++,i++) { + rcluster_mult_per_atom[i]=calc_multiplicity(*c,lattice.cell,space_group.point_op,space_group.trans)/(Real)lattice.atom_pos.get_size(); + } + } + + E_ref=0.; + which_is_empty=-1; + rMatrix3d inv_cell=!lattice.cell; + for (int s=0; s long_cluster_list; + LinkedList long_cluster_i_list; + LinkedListIterator c(cluster_list); + int cluster_index=0; + + for ( ; c; c++,cluster_index++) { + if (c->get_size()==0) {which_is_empty=cluster_index;} + else { + Array clusters; + find_equivalent_clusters(&clusters, *c,space_group.cell,space_group.point_op,space_group.trans); + for (int ec=0; ec c_i(long_cluster_i_list); + for (int ic=0; icget_size(); + nb_clusters[s]=ic+1; + eci[s][ic]=0.; + which_cluster[s][ic]=*c_i; + site_offset[s][ic]=new int[c->get_size()]; + for (int j=0; jget_size(); j++) { + int offset_in_cell=which_atom(lattice.atom_pos,(*c)(j),inv_cell); + iVector3d offset_cell=to_int(inv_cell*((*c)(j)-lattice.atom_pos(offset_in_cell))); + site_offset[s][ic][j]=((offset_cell(0)*total_box(1) + offset_cell(1))*total_box(2) + offset_cell(2))*site_in_cell + offset_in_cell - s; + } + } + } + mu=0.; + } + +MonteCarlo::~MonteCarlo(void) { + //to write: delete all dynamically allocated arrays; +} + +void MonteCarlo::set_eci(const Array &new_eci) { + if (which_is_empty>=0) { + E_ref=new_eci(which_is_empty)/lattice.atom_pos.get_size(); + } else { + E_ref=0.; + } + for (int s=0; s bb(iVector3d(0,0,0),total_box-iVector3d(1,1,1)); + MultiDimIterator cell(supercell); + for ( ; cell; cell++) { + for (int offset_in_cell=0; offset_in_cell image(iVector3d(-1,-1,-1),iVector3d(1,1,1)); + for ( ; image; image++) { + iVector3d image_offset_cell=(iVector3d &)cell+msupercell*(iVector3d &)image+margin; + if (bb.is_in(image_offset_cell)) { + int offset=((image_offset_cell(0)*total_box(1) + image_offset_cell(1))*total_box(2) + image_offset_cell(2))*site_in_cell + offset_in_cell; + spin[offset]=the_spin; + } + } + } + } + int spin_size=supercell(0)*supercell(1)*supercell(2)*site_in_cell; + for (int i=0; i bb(iVector3d(0,0,0),total_box-iVector3d(1,1,1)); + for (int i=0; i image(iVector3d(-1,-1,-1),iVector3d(1,1,1)); + for ( ; image; image++) { + iVector3d image_offset_cell=offset_cell+msupercell*(iVector3d &)image+margin; + if (bb.is_in(image_offset_cell)) { + int offset=((image_offset_cell(0)*total_box(1) + image_offset_cell(1))*total_box(2) + image_offset_cell(2))*site_in_cell + offset_in_cell; + spin[offset]=(SPIN_TYPE)(super.atom_type(i)); + } + } + } + int spin_size=supercell(0)*supercell(1)*supercell(2)*site_in_cell; + for (int i=0; i0 ? -1 : 1); + nbspin=abs(nbspin); + int cell[3],mcell[3],mcellscan[3],incell,offset; + + for (int s=0; s=supercell(i)) {mcell[i]-=supercell(i);} + } + for (mcellscan[0]=mcell[0]; mcellscan[0] cur_cell(supercell); + for ( ; cur_cell; cur_cell++) { + iVector3d m_cur_cell=(iVector3d &)cur_cell+margin; + for (int s=0; s=0) {cur_rho(which_is_empty)=1.;} + cur_energy-=mu*cur_conc; + } + +void MonteCarlo::init_run(Real _T, Real _mu) { + T=_T; + cur_energy-=(_mu-mu)*cur_conc; + mu=_mu; +} + +void MonteCarlo::spin_flip(void) { + int i; + int cell[3],mcell[3],mcellscan[3],incell,offset; + Real denergy,d_recip_energy,dconc; + int cluster_count,site_count; + int **pcluster; + int *pwhich_cluster; + int *poffset,*psize; + Real *peci; + int rho; + int accept; + for (i=0; i<3; i++) { + cell[i]=random(supercell(i)); + mcell[i]=cell[i]+margin(i); + } + incell=random(site_in_cell); + offset=((mcell[0]*total_box(1) + mcell[1])*total_box(2) + mcell[2])*site_in_cell + incell; + denergy=0.; + for (cluster_count=nb_clusters[incell], pcluster=site_offset[incell], psize=cluster_size[incell], peci=eci[incell]; cluster_count>0; cluster_count--, pcluster++, psize++, peci++) { + rho=spin[offset]; + for (site_count=*psize, poffset=*pcluster; site_count>0; site_count--, poffset++) { + rho*=spin[offset+(*poffset)]; + } + denergy+=-2.*(*peci)*(Real)rho; + } + dconc=-(Real)(2*spin[offset]); + denergy+=-mu*dconc; + d_recip_energy=extension_spin_flip_energy(cell,incell,-spin[offset]); + accept=0; + if (denergy+d_recip_energy<0) { + accept=1; + } + else { + if (uniform01()0; cluster_count--, pcluster++, psize++, pwhich_cluster++) { + rho=spin[offset]; + for (site_count=*psize, poffset=*pcluster; site_count>0; site_count--, poffset++) { + rho*=spin[offset+(*poffset)]; + } + pcur_rho[*pwhich_cluster]+=-2.*(Real)rho/rcluster_mult_per_atom[*pwhich_cluster]/rspin_size; + } + + for (i=0; i<3; i++) { + if (mcell[i]>=supercell(i)) {mcell[i]-=supercell(i);} + } + for (mcellscan[0]=mcell[0]; mcellscan[0]=supercell(i)) {bmcell[f][i]-=supercell(i);} + } + } + + denergy=0.; + for (f=0; f<2; f++) { + for (cluster_count=nb_clusters[incell[f]], pcluster=site_offset[incell[f]], psize=cluster_size[incell[f]], peci=eci[incell[f]]; cluster_count>0; cluster_count--, pcluster++, psize++, peci++) { + rho=spin[offset[f]]; + for (site_count=*psize, poffset=*pcluster; site_count>0; site_count--, poffset++) { + rho*=spin[offset[f]+(*poffset)]; + } + denergy+=-2.*(*peci)*(Real)rho; + } + d_recip_energy[f]=extension_spin_flip_energy(cell[f],incell[f],-spin[offset[f]]); + if (f==0) { + for (mcellscan[0]=bmcell[0][0]; mcellscan[0]0; cluster_count--, pcluster++, psize++, pwhich_cluster++) { + rho=-spin[offset[f]]; + for (site_count=*psize, poffset=*pcluster; site_count>0; site_count--, poffset++) { + rho*=spin[offset[f]+(*poffset)]; + } + pcur_rho[*pwhich_cluster]+=-2.*(Real)rho/rcluster_mult_per_atom[*pwhich_cluster]/rspin_size; + } + nomoffset=((cell[f][0]*supercell(1) + cell[f][1])*supercell(2) + cell[f][2])*site_in_cell + incell[f]; + cur_disorder_param+=(Real)(1-2*spin_changed[nomoffset])/rspin_size; + spin_changed[nomoffset]^=1; + } + cur_energy+=denergy/rspin_size; + extension_update_spin_flip(cell[1],incell[1],spin[offset[1]],d_recip_energy[1]); + } + else { + for (mcellscan[0]=bmcell[0][0]; mcellscan[0] &labellookup, const Array &atom_label, ofstream &file, const rMatrix3d &axes) { + for (int i=0; i<3; i++) { + file << axes.get_column(i) << endl; + } + for (int i=0; i<3; i++) { + file << (!axes)*((Real)(supercell(i))*lattice.cell.get_column(i)) << endl; + } + rMatrix3d iaxes=!axes; + MultiDimIterator cur_cell(supercell); + for ( ; cur_cell; cur_cell++) { + iVector3d m_cur_cell=(iVector3d &)cur_cell+margin; + for (int s=0; sinit(prec,nb_value_accum+pmc->get_total_clusters(),which_elem); + Array data(nb_value_accum+pmc->get_total_clusters()); + do { + pmc->run(1,mode); + data(0)=pmc->get_cur_energy(); + data(1)=pmc->get_cur_concentration(); + data(2)=1.-pmc->get_cur_disorder_param(); + const Array &cur_corr=pmc->get_cur_corr(); + for (int i=0; inew_data(data)); +} + +void run_mc(MonteCarlo *pmc, int mode, int n_step, Accumulator *eq) { + Array data(nb_value_accum+pmc->get_total_clusters()); + if (n_step==0) { + data(0)=pmc->get_cur_energy(); + data(1)=pmc->get_cur_concentration(); + data(2)=1.-pmc->get_cur_disorder_param(); + const Array &cur_corr=pmc->get_cur_corr(); + for (int i=0; inew_data(data); + } + else { + for (int n=0; nrun(1,mode); + data(0)=pmc->get_cur_energy(); + data(1)=pmc->get_cur_concentration(); + data(2)=1.-pmc->get_cur_disorder_param(); + const Array &cur_corr=pmc->get_cur_corr(); + for (int i=0; inew_data(data); + } + } +} + +void run_mc(MCOutputData *pmcdata, MonteCarlo *pmc, int mode, int n_step, Real prec, int which_elem ) { + pmcdata->T=pmc->get_T(); + pmcdata->mu=pmc->get_mu(); + GenericAccumulator *pgacc; + Accumulator acc; + Equilibrator eq; + if (prec==0.) { + run_mc(pmc,mode,n_step,&acc); + pgacc=&acc; + pmcdata->n_equil=0; + pmcdata->n_step=n_step; + } + else { + run_mc_until_converged(pmc,mode,&eq,prec,which_elem); + pgacc=&eq; + eq.get_step(&(pmcdata->n_equil),&(pmcdata->n_step)); + } + const Array &mean=pgacc->get_mean(); + const Array &var=pgacc->get_var(); + pmcdata->E=mean(0); + pmcdata->x=mean(1); + pmcdata->lro=mean(2); + pmcdata->heatcap=var(0); + pmcdata->suscept=var(1); + pmcdata->corr.resize(pmc->get_total_clusters()); + for (int i=0; icorr.get_size(); i++) { + (pmcdata->corr)(i)=mean(nb_value_accum+i); + } + pmc->get_cluster_mult(&(pmcdata->mult)); +} + +Equilibrator::Equilibrator(void): cur_sum(), cur_sum2(), bin_sum(), bin_sum2(), good_val(), buf_val() {} + +Equilibrator::Equilibrator(Real _prec, int data_size, int _which_elem, int init_granularity, int nb_bin): + cur_sum(), cur_sum2(), bin_sum(), bin_sum2(), good_val(), buf_val() { + init(_prec,data_size,_which_elem,init_granularity,nb_bin); +} + +void Equilibrator::init(Real _prec, int data_size, int _which_elem, int init_granularity, int nb_bin) { + prec=_prec; + which_elem=_which_elem; + if (nb_bin%2==1) ERRORQUIT("nb_bin must be even"); + granularity=init_granularity; + cur_corr_len=granularity/2; + cur_bin=1; + cur_cnt=0; + cur_sum.resize(data_size); + cur_sum2.resize(data_size); + zero_array(&cur_sum); + zero_array(&cur_sum2); + bin_sum.resize(nb_bin+1); + bin_sum2.resize(nb_bin+1); + for (int i=0; i &data) { + buf_val(cur_cnt)=data(which_elem); + sum(&cur_sum,cur_sum,data); + Array data2; + product_diag(&data2,data,data); + sum(&cur_sum2,cur_sum2,data2); + cur_cnt++; + if (cur_cnt==granularity) { + bin_sum(cur_bin)=cur_sum; + bin_sum2(cur_bin)=cur_sum2; + + Real corr; + Real last_corr=0.5; + int done=0; + while (!done) { + corr=0.; + for (int i=0; i0) { + corr/=var; + } + else { + corr=1.; + } + done=1; + if (corr<0.) corr=0.; + if (corr<0.25 && last_corr<=0.75 && cur_corr_len>=2) {cur_corr_len/=2; done=0;} + if (corr>0.75 && last_corr>=0.25 && cur_corr_len=1; b--) { + Real block1=(bin_sum(cur_bin )(which_elem)-bin_sum(cur_bin- b)(which_elem))/(Real)(granularity*b); + Real block2=(bin_sum(cur_bin-b)(which_elem)-bin_sum(cur_bin-2*b)(which_elem))/(Real)(granularity*b); + if (fabs(block1-block2)0) { + diff(&good_val,bin_sum(cur_bin),bin_sum(bin1)); + product(&good_val,good_val,1./n); + diff(&good_val2,bin_sum2(cur_bin),bin_sum2(bin1)); + product(&good_val2,good_val2,1./n); + Array tmp; + product_diag(&tmp,good_val,good_val); + diff(&good_val2,good_val2,tmp); + equil=bin1*granularity; + step=(cur_bin-bin1)*granularity; + break; + } + } + } + } + + cur_cnt=0; + cur_bin++; + if (cur_bin==bin_sum.get_size()) { + int i,j; + for (i=1,j=2; j &data) { + if (cur_sum.get_size()==0) { + cur_sum.resize(data.get_size()); + zero_array(&cur_sum); + cur_sum2.resize(data.get_size()); + zero_array(&cur_sum2); + cur_n=0; + } + sum(&cur_sum,cur_sum,data); + Array data2; + product_diag(&data2,data,data); + sum(&cur_sum2,cur_sum2,data2); + cur_n++; + return 0; +} + +void Accumulator::accum(void) { + product(&good_val,cur_sum,1./(Real)cur_n); + product(&good_val2,cur_sum2,1./(Real)cur_n); + Array tmp; + product_diag(&tmp,good_val,good_val); + diff(&good_val2,good_val2,tmp); +} + +#include "anyfft.h" + +KSpaceMonteCarlo::KSpaceMonteCarlo(const Structure &_lattice, const iVector3d &_supercell, const SpaceGroup &space_group, + const LinkedList &cluster_list, KSpaceECI *_p_kspace_eci): + MonteCarlo(_lattice,_supercell,space_group,cluster_list),flipped_spins() { + p_kspace_eci=_p_kspace_eci; + nsite=_lattice.atom_pos.get_size(); + size=supercell(0)*supercell(1)*supercell(2); + rsize=(Real)size; + ft_spin=new pComplex[nsite]; + convol=new pComplex[nsite]; + ft_eci=new pComplex[nsite*(nsite+1)/2]; + dir_eci=new pComplex[nsite*(nsite+1)/2]; + for (int s=0; s 2*fft_time/flip_time && (nbflip % 2)==0) { + extension_calc_from_scratch(); + } + } + } +} + +void KSpaceMonteCarlo::extension_undo_spin_flip(void) { + LinkedListIterator last_flip(flipped_spins); + cur_recip_E-=(last_flip->d_recip_energy)/rspin_size; + delete flipped_spins.detach(last_flip); +} + +Real KSpaceMonteCarlo::extension_spin_flip_energy(int *cell, int incell, int newspin) { +// cerr << "f_total=" << E_ref+cur_energy+cur_recip_E+mu*cur_conc << endl; + flip_time=clock(); + int dr[3]; + int *psupercell=supercell.get_buf(); + Real rspinchange=2.*(Real)newspin; + //int offset=((cell[0]*psupercell[1] + cell[1])*psupercell[2] + cell[2]); //permbug + int offset=((cell[2]*psupercell[1] + cell[1])*psupercell[0] + cell[0]); + Real dE=4.*real(dir_eci[unrollsym(incell,incell)][0]); + dE+=2.*real(convol[incell][offset]*rspinchange); + LinkedListIterator i(flipped_spins); + for (; i; i++) { + for (int j=0; j<3; j++) { + dr[j]=(i->cell[j]-cell[j]+psupercell[j]) % psupercell[j]; + } + //int offsetdr=((dr[0]*psupercell[1] + dr[1])*psupercell[2] + dr[2]); //permbug + int offsetdr=((dr[2]*psupercell[1] + dr[1])*psupercell[0] + dr[0]); + dE+=2.*real(dir_eci[unrollsym(i->incell,incell)][offsetdr])*2.*(i->newspin)*rspinchange; + } + flip_time=clock()-flip_time; + return dE; +} + +KSpaceMonteCarlo::~KSpaceMonteCarlo() { + // free all dynamically allocated memory; +} + +Array mclibdummyarray; diff --git a/src/mclib.hh b/src/mclib.hh new file mode 100644 index 0000000..b1af0ac --- /dev/null +++ b/src/mclib.hh @@ -0,0 +1,202 @@ +#ifndef _MCLIB_H_ +#define _MCLIB_H_ + +#include +#include +#include "clus_str.h" +#include "linalg.h" +#include "keci.h" + +#define SPIN_TYPE signed char + +class MonteCarlo { + protected: + Structure lattice; + iVector3d supercell; + iVector3d margin; + iVector3d total_box; + SPIN_TYPE *spin; + SPIN_TYPE *spin_changed; + Real rspin_size; + int site_in_cell; + int total_clusters; + int *nb_clusters; + int *nb_x_clusters; + int **cluster_size; + Real *rcluster_mult_per_atom; + int ***site_offset; + Real **eci; + int **which_cluster; + Real E_ref; + int which_is_empty; + Real cur_energy; + Array cur_rho; + Real *pcur_rho; + Real cur_conc; + Real cur_disorder_param; + + Real T; + Real mu; + public: + void calc_from_scratch(void); + void spin_flip(void); + void spin_double_flip(void); + MonteCarlo(const Structure &_lattice, const iVector3d &_supercell, const SpaceGroup &space_group, + const LinkedList &cluster_list); + ~MonteCarlo(void); + void set_eci(const Array &eci); + void init_random(Real concentration=0.); + void init_structure(const Structure &str); + void set_concentration(Real concentration); + void init_run(Real _T, Real _mu); + void run(int mc_passes, int mode=1); // 1: grand-canonical, 2: canonical; + void view(const Array &labellookup, const Array &atom_label, ofstream &file, const rMatrix3d &axes); + + const Array & get_cur_corr(void) const { + return cur_rho; + } + Real get_cur_energy(void) { + return E_ref+cur_energy+extension_get_energy(); + } + Real get_cur_concentration(void) const { + return cur_conc; + } + Real get_cur_disorder_param(void) const { + return cur_disorder_param; + } + int get_total_clusters(void) const { + return total_clusters; + } + void get_cluster_mult(Array *mult) const { + mult->resize(total_clusters); + for (int i=0; i corr; + Array mult; + int n_equil,n_step; + MCOutputData(void): corr(),mult() {} +}; + +class Equilibrator; +class Accumulator; + +const int nb_value_accum=3; + +void run_mc_until_converged(MonteCarlo *pmc, int mode, Equilibrator *eq, Real prec, int which_elem=1 ); +void run_mc(MonteCarlo *pmc, int mode, int n_step, Accumulator *eq); +void run_mc(MCOutputData *pmcdata, MonteCarlo *pmc, int mode, int n_step, Real prec, int which_elem=1 ); + +extern Array mclibdummyarray; + +class GenericAccumulator { + public: + virtual int new_data(const Array &data) {return 0;} + virtual const Array & get_mean(void) {return mclibdummyarray;} + virtual const Array & get_var(void) {return mclibdummyarray;} +}; + +class Equilibrator: public GenericAccumulator { + int granularity; + int cur_bin; + int cur_cnt; + Array cur_sum; + Array cur_sum2; + Array bin_sum; + Array bin_sum2; + Array buf_corr; + int cur_corr_len; + Real prec; + int which_elem; + Array good_val; + Array good_val2; + Array buf_val; + int equil,step; + public: + Equilibrator(void); + Equilibrator(Real _prec, int data_size=1, int _which_elem=0, int init_granularity=500, int nb_bin=16); + void init(Real _prec, int data_size=1, int _which_elem=0, int init_granularity=500, int nb_bin=16); + int new_data(const Array &data); + const Array & get_mean(void) {return good_val;} + const Array & get_var(void) {return good_val2;} + void get_step(int *pequil,int *pstep) {if (pequil) *pequil=equil; if (pstep) *pstep=step;} +}; + +class Accumulator: public GenericAccumulator { + int cur_n; + Array cur_sum; + Array cur_sum2; + Array good_val; + Array good_val2; + void accum(void); +public: + Accumulator(void): cur_sum(), cur_sum2(), good_val() {cur_n=0;} + int new_data(const Array &data); + const Array & get_mean(void) {accum(); return good_val; } + const Array & get_var(void) {accum(); return good_val2; } +}; + +class FlippedSpin { + public: + FlippedSpin(int *_cell, int _incell, SPIN_TYPE _newspin, Real _d_recip_energy) { + for (int i=0; i<3; i++) {cell[i]=_cell[i];} + incell=_incell; newspin=_newspin; + d_recip_energy=_d_recip_energy; + } + int cell[3]; + int incell; + SPIN_TYPE newspin; + Real d_recip_energy; +}; + +inline int unrollsym(int i, int j) { + int mx=MAX(i,j); + return mx*(mx+1)/2+MIN(i,j); +} + +class KSpaceMonteCarlo: public MonteCarlo { + protected: + int nsite; + int size; + Real rsize; + Complex **ft_spin; + Complex **ft_eci; + Complex **dir_eci; + Complex **convol; + LinkedList flipped_spins; + KSpaceECI *p_kspace_eci; + Real cur_recip_E; + clock_t fft_time; + clock_t flip_time; + Real ref_x; + Real threshold_dx; + + public: + KSpaceMonteCarlo(const Structure &_lattice, const iVector3d &_supercell, const SpaceGroup &space_group, + const LinkedList &cluster_list, KSpaceECI *_p_kspace_eci); + ~KSpaceMonteCarlo(); + protected: + void set_k_space_eci(void); + void extension_calc_from_scratch(void); + void extension_update_spin_flip(int *cell, int incell, int newspin, Real d_recip_energy); + void extension_undo_spin_flip(void); + Real extension_spin_flip_energy(int *cell, int incell, int newspin); + Real extension_get_energy(void) {return cur_recip_E;} +}; + +#endif diff --git a/src/mcsqs.c++ b/src/mcsqs.c++ new file mode 100644 index 0000000..7fdf3e7 --- /dev/null +++ b/src/mcsqs.c++ @@ -0,0 +1,634 @@ +#include +#include "clus_str.h" +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include "calccorr.h" + +extern char *helpstring; + +void generate_permutation(Array *pperm, int n) { + pperm->resize(n); + for (int i=0; i *pcorr, const Structure &str, const Array > &eqclus, const rMatrix3d unitcell, const Array > > &corrfunc) { + pcorr->resize(eqclus.get_size()); + for (int t=0; t &corr, const Array &tcorr, Real mysqstol, Real weightdist, const Array &diam, const Array &nbpt) { + Array dcorr(tcorr.get_size()); + for (int t=0; tmysqstol) { + objdist=min(diam(t),objdist); + objdev+=dcorr(t); + } + } + if (objdist==MAXFLOAT) {return -MAXFLOAT;} + return -objdist*weightdist+objdev; +} +*/ + +Real calc_objective_func(const Array &corr, const Array &tcorr, Real mysqstol, Real weightdist, Real weightnbpt, Real weightdecay, const Array &diam, const Array &nbpt) { + Array dcorr(tcorr.get_size()); + Array maxdist(max(nbpt)-1); + zero_array(&maxdist); + for (int t=0; tmysqstol) { + maxdist(nbpt(t)-2)=min(diam(t),maxdist(nbpt(t)-2)); + } + } + Real d1=maxdist(0); + for (int p=1; p=d1-zero_tolerance) { + Real w=exp(-weightdecay*diam(t)/d0)*pow(weightnbpt,nbpt(t)-2); + objdev+=dcorr(t)*w; + den+=w; + } + } + if (near_zero(objdev)) {return -MAXFLOAT;} + objdev/=den; + + Real obj=objdev; + for (int p=0; p-1) { + filename << prefix << num << suffix << '\0'; + } + else { + filename << prefix << suffix << '\0'; + } + file.open(filename.str()); + if (!file) { + cerr << "Unable to open " << filename.str() << endl; + ERRORQUIT("Aborting"); + } +} + +class SupercellData { +public: + SupercellData(void): str(), nbcomp(), corr(), obj() {}; + Structure str; + Array nbcomp; + Array typebeg; + Array typeend; + int nbactive; + Array corr; + Real obj; +public: + void operator=(const SupercellData &mc) { + str=mc.str; + nbcomp=mc.nbcomp; + typebeg=mc.typebeg; + typeend=mc.typeend; + nbactive=mc.nbactive; + corr=mc.corr; + obj=mc.obj; + } +}; + +#define MAXMULTIPLET 6 + +int main(int argc, char *argv[]) { + int maxvol=0; + Array maxd(MAXMULTIPLET+1); + zero_array(&maxd); + char *rndstrfilename="rndstr.in"; + char *clusterfilename="clusters.out"; + char *tcorrfilename=""; + char *paramfilename="sqsparam.in"; + int readcell=0; + int ip=-1; + int findbest=0; + Real mysqstol=zero_tolerance; + Real weightdist=1.; + Real weightnbpt=1.; + Real weightdecay=0.; + Real T=1.; + int seed=0; + int maxtic=10000; + int do2d=0; + int sigdig=6; + char *corrfunc_label="trigo"; + int dohelp=0; + AskStruct options[]={ + {"","Monte Carlo generator of Special Quasirandom Structures " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-n","nb of atom/unit cell",INTVAL,&maxvol}, + {"","If -n is not specified, generate clusters of the following sizes:",TITLEVAL,NULL}, + {"-2"," Maximum distance between two points within a pair",REALVAL,&maxd(2)}, + {"-3"," Maximum distance between two points within a triplet",REALVAL,&maxd(3)}, + {"-4"," Maximum distance between two points within a quadruplet",REALVAL,&maxd(4)}, + {"-5"," Maximum distance between two points within a quintuplet",REALVAL,&maxd(5)}, + {"-6"," Maximum distance between two points within a sextuplet",REALVAL,&maxd(6)}, + {"-l","Input file defining the random structure (default: rndstr.in)",STRINGVAL,&rndstrfilename}, + {"-cf","Input file defining the clusters (default: clusters.out)",STRINGVAL,&clusterfilename}, + {"-tcf","Input file defining the target multibody correlations (default: internally calculated values for fully disordered state)",STRINGVAL,&tcorrfilename}, + {"-tol","Tolerance for matching correlations (default: 1e-3)",REALVAL,&mysqstol}, + {"-wr","Weight assigned to range of perfect correlation match in objective function (default 1)",REALVAL,&weightdist}, + {"-wn","Multiplicative decrease in weight per additional point in cluster (default 1)",REALVAL,&weightnbpt}, + {"-wd","Exponent of decay in weight as function of cluster diameter (default 0)",REALVAL,&weightdecay}, + {"-T","Temperature (default 1)",REALVAL,&T}, + {"-pf","Input file defining the optimization parameters (default: sqsparam.in)",STRINGVAL,¶mfilename}, + {"-rc","Read supercells from file sqscell.out (default: generate internally and write to sqscell.out)",BOOLVAL,&readcell}, + {"-ip","Index of current process (for parallel operation)",INTVAL,&ip}, + {"-best","Collect best SQS among the outputs of prior parallel runs",BOOLVAL,&findbest}, + {"-crf","Select correlation functions (default: trigo)",STRINGVAL,&corrfunc_label}, + {"-sd","Seed for random number generation (default: use clock)",INTVAL,&seed}, + {"-rt","Read parameter file every (rt) step (default:10000)",INTVAL,&maxtic}, + {"-2d","Generate only supercells in the plane of a,b axes",BOOLVAL,&do2d}, + {"-sig","Number of significant digits to print in output files (default: 6)",INTVAL,&sigdig}, + {"-h","Display more help",BOOLVAL,&dohelp} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + if (argc==1) {cerr << endl << "Perhaps missing -n=[nb of atom/cell] option?" << endl;} + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + if (findbest) { + { + ofstream script("findbestsqs"); + script << "#!/bin/sh" << endl + << "stem=$(grep -n Objective bestcorr?*.out | sort -n -k 2 | head -1 | sed 's/:.*$//g')" << endl + << "if [ \"${stem}\" == \"\" ]; then" << endl + << " echo No output yet." << endl + << " exit 1" << endl + << "fi" << endl + << "cp $stem bestcorr.out" << endl + << "cp $(echo $stem | sed 's/corr/sqs/g') bestsqs.out" << endl + << "cat bestcorr.out" << endl; + } + system("chmod +x ./findbestsqs ; sh -c ./findbestsqs"); + exit(0); + } + if (maxvol==0 && !readcell) { + cout << "Generating clusters..." << endl; + ostrstream cmd; + cmd << "corrdump -clus -noe -nop -ro -l=" << rndstrfilename << " "; + for (int i=2; i<=MAXMULTIPLET; i++) { + if (maxd(i)!=0.) { + cmd << "-" << i << "=" << maxd(i) << " "; + } + } + cmd << "; getclus" << '\0'; + // cout << cmd.str() << endl; + system(cmd.str()); + exit(0); + } + + if (maxvol==0 && !readcell) {ERRORQUIT("Please specify -n option.");} + + cerr.setf(ios::fixed); + cerr.precision(sigdig); + + // read in lattice (see parse.h); + Structure ulat; + Array > uatomprob; + Array site_type_list; + Array atom_label; + rMatrix3d axes; + { + ifstream file(rndstrfilename); + if (!file) ERRORQUIT("Unable to open random structure file."); + parse_rndstr_file(&ulat.cell, &ulat.atom_pos, &ulat.atom_type, &uatomprob, &site_type_list, &atom_label, file, &axes); + } + rMatrix3d inv_cell=!ulat.cell; + rMatrix3d inv_axes=!axes; + + SpaceGroup spacegroup; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,ulat.cell,ulat.atom_pos,ulat.atom_type); + spacegroup.cell=ulat.cell; + + // initialize a table of correlation functions; + if (!check_plug_in(CorrFuncTable(),corrfunc_label)) { + ERRORQUIT("Aborting"); + } + CorrFuncTable *pcorrfunc=GenericPlugIn::create(corrfunc_label); + pcorrfunc->init_from_site_type_list(site_type_list); + + // group sites that are equivalent by symmetry; + Structure lat; + Array sym_to_type; + Array > atomprob; + Array > sym_type_prob; + { + lat.cell=ulat.cell; + lat.atom_pos.resize(ulat.atom_pos.get_size()); + lat.atom_type.resize(ulat.atom_type.get_size()); + atomprob.resize(ulat.atom_type.get_size()); + ClusterBank pt_clus(ulat.cell,ulat.atom_pos,1,spacegroup); + sym_to_type.resize(pt_clus.get_cluster_list().get_size()); + sym_type_prob.resize( sym_to_type.get_size()); + LinkedListIterator i_pt_clus(pt_clus.get_cluster_list()); + int at=0; + for (int symt=0; i_pt_clus; i_pt_clus++,symt++) { + int uat=which_atom(ulat.atom_pos,(*i_pt_clus)(0),inv_cell); + sym_to_type(symt)=ulat.atom_type(uat); + Array cur_atomprob; + sym_type_prob(symt)=uatomprob(uat); + Array pt_clus_eq; + find_equivalent_clusters(&pt_clus_eq, *i_pt_clus, spacegroup.cell, spacegroup.point_op, spacegroup.trans); + for (int eq=0; eq dprob; + atomprob(at)=sym_type_prob(symt); + int uat=which_atom(ulat.atom_pos,pt_clus_eq(eq)(0),inv_cell); + diff(&dprob,sym_type_prob(symt),uatomprob(uat)); + if (norm(dprob)>zero_tolerance) { + cerr << "Different occupations assigned to symmetrically equivalent site:" << endl; + cerr << inv_axes*(*i_pt_clus)(0) << endl << "and" << endl << inv_axes*pt_clus_eq(eq)(0) << endl; + ERRORQUIT("Aborting."); + } + at++; + } + } +/* int uat=0; + while (uat1 && near_zero(atomprob(at)(p)-1)) { + ERRORQUIT("Please drop irrelevant species when site is fully occupied with one specie"); + } + totprob+=atomprob(at)(p); + } + if (!near_zero(totprob-1.)) ERRORQUIT("Probabilities must sum to 1."); + pointcorr(at)(func)=corr; + } + } + // cerr << pointcorr << endl; + LinkedList clusterlist; + { + ifstream clusterfile(clusterfilename); + if (!clusterfile) ERRORQUIT("Unable to open cluster file. Please generate it with\n mcsqs -2=[max pair diameter] -3=[max triplet diameter] etc."); + read_clusters_and_eci(&clusterlist, NULL, clusterfile, clusterfile, axes); + } + + ifstream tcorrfile; + if (strlen(tcorrfilename)>0) { + tcorrfile.open(tcorrfilename); + if ( !tcorrfile ) {ERRORQUIT("Unable to open correlation file");} + } + + LinkedList tcorr_list; + LinkedListIterator icluster(clusterlist); + for (; icluster; ) { + if (icluster->clus.get_size()<=1) { + delete clusterlist.detach(icluster); + } + else { + Real corr; + if (strlen(tcorrfilename)>0) { + tcorrfile >> corr; + } + else { + corr=1.; + for (int i=0; iclus.get_size(); i++) { + int at=which_atom(lat.atom_pos,icluster->clus(i),inv_cell); + if (at==-1) {ERRORQUIT("Cluster file inconsistent with random structure file.");} + corr*=pointcorr(at)(icluster->func(i)); + } + } + tcorr_list << new Real(corr); + icluster++; + } + } + Array tcorr; + LinkedList_to_Array(&tcorr,tcorr_list); + // cerr << tcorr; + + cout.setf(ios::fixed); + cout.precision(sigdig); + + Array > eqclus(clusterlist.get_size()); + Array diam(clusterlist.get_size()); + Array nbpt(clusterlist.get_size()); + LinkedListIterator ic(clusterlist); + for (int t=0; ic; t++, ic++) { + find_equivalent_clusters(&eqclus(t),*ic,lat.cell,spacegroup.point_op,spacegroup.trans); + diam(t)=get_length_quick(ic->clus); + nbpt(t)=ic->clus.get_size(); + } + + ofstream logfile; + open_numbered_file(logfile, "mcsqs",ip,".log"); + logfile.setf(ios::fixed); + logfile.precision(sigdig); + + + Array supercell; + int v=(int)(maxvol/MAX(1,lat.atom_pos.get_size())); + if (readcell) { + logfile << "Reading supercells..." << endl << flush; + ifstream cellfile("sqscell.out"); + if (!cellfile) { + ERRORQUIT("Unable to read sqscell.out"); + } + int nc=0; + cellfile >> nc; + supercell.resize(nc); + for (int i=0; i pointgroup; + pointgroup_from_spacegroup(&pointgroup, spacegroup.point_op); + if (do2d) { + find_supercells_2D(&supercell, v, v, lat.cell, pointgroup); + } + else { + find_supercells(&supercell, v, v, lat.cell, pointgroup); + } + if (ip<=0) { + logfile << "Writing supercells..." << endl << flush; + ofstream cellfile("sqscell.out"); + cellfile.setf(ios::fixed); + cellfile.precision(sigdig); + cellfile << supercell.get_size() << endl << endl; + for (int i=0; i mc(supercell.get_size()); + SupercellData best; + best.obj=MAXFLOAT; + int cc=0; + + logfile << "Initializing random supercells..." << endl << flush; + for (int c=0; c curtype=mc(c).str.atom_type; + int curbeg=0; + int curend=0; + mc(c).nbcomp.resize(curtype.get_size()); + mc(c).typebeg.resize(curtype.get_size()); + mc(c).typeend.resize(curtype.get_size()); + for (int at=0; at perm; + generate_permutation(&perm,nbat); + if (mc(c).nbcomp(at)==1) { + if (mc(c).nbactive==curtype.get_size()) { + mc(c).nbactive=at; + } + } + int at2=0; + for (int t=0; t> newweightdist >> newweightnbpt >> newweightdecay >> newT; + if (newT==MAXFLOAT) {newT=newweightnbpt; newweightdecay=0; newweightnbpt=1;} + if (newweightdist!=weightdist || newweightnbpt!=weightnbpt || newweightdecay!=weightdecay || newT!=T) { + logfile << "New parameters read in: -wr=" << newweightdist << " -wp=" << newweightnbpt << " -wd=" << newweightdecay << " -T=" << newT << endl; + } + T=newT; + if (newweightdist!=weightdist || newweightnbpt!=weightnbpt || newweightdecay!=weightdecay) { + weightdist=newweightdist; + weightnbpt=newweightnbpt; + weightdecay=newweightdecay; + best.obj=MAXFLOAT; + for (int c=0; c newcorr; + calc_all_corr(&newcorr,mc(newcc).str,eqclus,lat.cell,*pcorrfunc); + Real newobj=calc_objective_func(newcorr,tcorr,mysqstol,weightdist,weightnbpt,weightdecay,diam,nbpt); + // cerr << newcc << " " << best.obj << " " << obj << " " << newobj << " "; + // for (int t=0; t +#include "clus_str.h" +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include "calccorr.h" + +extern char *helpstring; + + +void calc_all_corr(Array *pcorr, const Structure &str, const Array > &eqclus, const rMatrix3d unitcell, const Array > > &corrfunc) { + pcorr->resize(eqclus.get_size()); + for (int t=0; t &corr, const Array &tcorr, Real mysqstol, Real weightdist, const Array &diam) { + Array dcorr(tcorr.get_size()); + for (int t=0; tmysqstol) { + objdist=min(diam(t),objdist); + objdev+=dcorr(t); + } + } + return -objdist*weightdist+objdev; +} + +/* +int match_point(const Array &corr, const Array &tcorr, Real mysqstol, const Array &diam) { + for (int t=0; tmysqstol) return 0; + } + } + return 1 +} +*/ + +void open_numbered_file(ofstream &file, char *prefix, int num, char *suffix) { + ostrstream filename; + if (num>-1) { + filename << prefix << num << suffix << '\0'; + } + else { + filename << prefix << suffix << '\0'; + } + file.open(filename.str()); + if (!file) { + cerr << "Unable to open " << filename.str() << endl; + ERRORQUIT("Aborting"); + } +} + +class SupercellData { +public: + SupercellData(void): str(), nbcomp(), corr(), obj() {}; + Structure str; + Array nbcomp; + Array corr; + Real obj; +public: + void operator=(const SupercellData &mc) { + str=mc.str; + nbcomp=mc.nbcomp; + corr=mc.corr; + obj=mc.obj; + } +}; + +int main(int argc, char *argv[]) { + int maxvol=0; + char *latticefilename="lat.in"; + char *clusterfilename="clusters.out"; + char *corrfilename="tcorr.out"; + int readcell=0; + int ip=-1; + Real mysqstol=zero_tolerance; + Real weightdist=1.; + int seed=0; + int maxtic=1000; + int sigdig=6; + char *corrfunc_label="trigo"; + int dohelp=0; + AskStruct options[]={ + {"","GENerate Special Quasirandom Structures " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-n","nb of atom/unit cell",INTVAL,&maxvol}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-cf","Input file defining the clusters (default: clusters.out)",STRINGVAL,&clusterfilename}, + {"-tc","Input file defining the target correlations (default: tcorr.out)",STRINGVAL,&corrfilename}, + {"-tol","Tolerance for matching correlations (default: 1e-3)",REALVAL,&mysqstol}, + {"-wr","Weight assigned to range of perfect correlation match is objective function",REALVAL,&weightdist}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latticefilename}, + {"-rc","Read unit cells from file",BOOLVAL,&readcell}, + {"-ip","Index of current process (for parallel operation)",INTVAL,&ip}, + {"-crf","Select correlation functions (default: trigo)",STRINGVAL,&corrfunc_label}, + {"-sd","Seed for random number generation (default: use clock)",INTVAL,&seed}, + {"-h","Display more help",BOOLVAL,&dohelp} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + // read in lattice (see parse.h); + Structure lat; + Array site_type_list; + Array atom_label; + rMatrix3d axes; + ifstream file(latticefilename); + if (!file) ERRORQUIT("Unable to open lattice file."); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &site_type_list, &atom_label, file, &axes); + + Array comp(lat.atom_type.get_size()); + for (int at=0; at::create(corrfunc_label); + pcorrfunc->init(max(comp)); + + LinkedList clusterlist; + LinkedList corrlist; + { + ifstream clusterfile(clusterfilename); + if (!clusterfile) ERRORQUIT("Unable to open cluster file."); + ifstream corrfile(corrfilename); + if (!corrfile) ERRORQUIT("Unable to open target correlation file."); + read_clusters_and_eci(&clusterlist, &corrlist, clusterfile, corrfile, axes); + } + Array tcorr; + LinkedList_to_Array(&tcorr,corrlist); + + cout.setf(ios::fixed); + cout.precision(sigdig); + + Array pointgroup; + find_pointgroup(&pointgroup,lat.cell); + SpaceGroup spacegroup; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,lat.cell,lat.atom_pos,lat.atom_type); + spacegroup.cell=lat.cell; + + Array > eqclus(clusterlist.get_size()); + Array diam(clusterlist.get_size()); + LinkedListIterator ic(clusterlist); + for (int t=0; ic; t++, ic++) { + find_equivalent_clusters(&eqclus(t),*ic,lat.cell,spacegroup.point_op,spacegroup.trans); + diam(t)=get_length_quick(ic->clus); + } + + ofstream logfile; + open_numbered_file(logfile, "mcsqs",ip,".log"); + + logfile << "Generating supercells..." << endl; + Array supercell; + int v=(int)(maxvol/MAX(1,lat.atom_pos.get_size())); + if (readcell) { + ifstream cellfile("sqscell.out"); + int nc=0; + cellfile >> nc; + supercell.resize(nc); + for (int i=0; i mc(supercell.get_size()); + SupercellData best; + best.obj=MAXFLOAT; + int cc=0; + + logfile << "Initializing random supercells..." << endl; + for (int c=0; c> T; + if (file_exists("stopsqs")) {break;} + tic=maxtic; + } + int newcc=random(mc.get_size()); + // int doswap=0; + // if (match_point(mc(newcc).corr,tcorr,mysqstol,diam)) {doswap=1;} + int at; + do { + at=random(mc(newcc).str.atom_type.get_size()); + } while (mc(newcc).nbcomp(at)<2); + int saveat=mc(newcc).str.atom_type(at); + mc(newcc).str.atom_type(at)=(saveat+random(mc(newcc).nbcomp(at)-1)) % mc(newcc).nbcomp(at); + + Array newcorr; + calc_all_corr(&newcorr,mc(newcc).str,eqclus,lat.cell,*pcorrfunc); + Real newobj=calc_objective_func(newcorr,tcorr,mysqstol,weightdist,diam); + cerr << newcc << " " << best.obj << " " << newobj << " "; + for (int t=0; t This code requires 2 input files: +1) A file defining the random state (by default rndstr.in) in a format similar to the lat.in that + is needed for maps or corrdump but with partial occupation of the sites (see below). +2) A cluster file (by default clusters.out), generated, for instance, with the command line: + mcsqs -2=... -3=... etc. + where -2=... -3=... indicate the range of pairs, triplets etc. + The code display the clusters found (format: nb of points, diameter, multiplicity). + + Internally, this actually calls the command + corrdump -l=rndstr.in -ro -noe -nop -clus -2=... -3=... ; getclus + Note that the (new) -ro option allows corrdump to read the same input file as mcsqs (here rndstr.in) + The -noe and -nop skip the empty and point clusters that are not used by mcsqs + -clus indicates to generate clusters only + -2=... -3=... indicate the range of pairs, triplets etc. + getclus just indicates to write out the clusters (nb of points, length, multiplicity) + See corrdump -h for more info. + +When generating SQS, one typically needs to specify the -n=[number of atoms per cell] parameter on the command line. + +-> Output files: + bestsqs.out + The best SQS found so far (in stardard ATAT structure file format - see mmaps -h for a description) + bestcorr.out + For each of the clusters selected, + its number of pointd (1st column) + its diameter (2nd column) + the correlations of the best SQS found so far (3rd column) + along with the target disordered state correlation (4th column) + and the difference between the two (5th column). + rndstrgrp.out + A file containing the same info as the input file defining the random state (rndstr.in), + but with symmetrically equivalent sites grouped together and separated by blank lines. + (This helps determine which sites can have the same occupations.) + mcsqs.log + A log file. + +The code stops if a perfect match is found (all correlations requested match the disordered state), +but this may never happen if there are too many clusters in clusters.out or -n (the number of atoms) is too small. +In any case, the bestsqs.out and bestcorr.out always contain the best solution found so far. +Stopping the code prematurely if the solution is satisfactory is fine. + +-> Optional files: + Creating a file called stopsqs stops the code cleanly. + + Creating a file called sqsparam.in (or as specified by the -pf option) + with 4 numbers in it allows you to set the -wr, -wn, -wd and -T options during runtime. + (for backward compatibility, if 2 numbers are specified, they set the -wr and -T options + while the remaining options are set to their defaults.) + + The -rc option lets you specify supercells to use (via a sqscell.out file). + Useful if brute force enumeration takes too long. + The sqscell.out usually comes from a previous mcsqs run but you can create it yourself. + Note that the sqscell.out file must start with the number supercells you will provide + and that supercells must be expressed in multiple of the axes defined in the rndstr.in file + (in particular, all numbers entered would typically be integers). + [If your are using a version prior to 3.07, these should be entered in cartesian coordinates.] + +-> Format of the input file defining the lattice (specified by the -l option) + +First, the coordinate system a,b,c is specified, either as +[a] [b] [c] [alpha] [beta] [gamma] +or as: +[ax] [ay] [az] +[bx] [by] [bz] +[cx] [cy] [cz] +Then the lattice vectors u,v,w are listed, expressed in the coordinate system just defined: +[ua] [ub] [uc] +[va] [vb] [vc] +[wa] [wb] [wc] +Finally, atom positions and types are given, expressed in the same coordinate system +as the lattice vectors: +[atom1a] [atom1b] [atom1c] [atomtype11]=[occupation11],[atomtype12]=[occupation12],... +[atom2a] [atom2b] [atom2c] [atomtype21]=[occupation21],[atomtype22]=[occupation22],... +etc. + +Examples: + +The fcc lattice of the Cu-Au system; request for an SQS at composition 0.5: +3.8 3.8 3.8 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 Cu=0.5,Au=0.5 + +A lattice for the Li_x Co_y Al_(1-y) O_2 system; request for an SQS +with different composition on each sublattice: + 0.707 0.707 6.928 90 90 120 + 0.3333 0.6667 0.3333 +-0.6667 -0.3333 0.3333 + 0.3333 -0.3333 0.3333 + 0 0 0 Li=0.75,Vac=0.25 + 0.3333 0.6667 0.0833 O + 0.6667 0.3333 0.1667 Co=0.25,Ni=0.25,Al=0.5 + 0 0 0.25 O + +Please note that sites that are equivalent by symmetry must have the same occupation. +The file rndstrgrp.out can help you figure out which sites are equivalent. +If you want override this, you can simply use slightly different species labels (e.g. Fe_a,Fe_b) on the +sites whose occupation must differ, even though these sites are a priori equivalent. +Using different labels forces the code to consider the sites as inequivalent. + +-> The objective function used is: + +(sum (absolute difference from the disordered state correlations)*exp(-wd*(diameter of cluster))*(wn^(nb of points in cluster-2))) +/ +(normalization for weights to sum up to 1 over clusters bigger than the smallest nonmatching cluster) + +-sum over p wr* wn^(p-2)*(diameter of the smallest cluster of p points of less whose correlation does not match the disordered state) + +The wr, wn and wd are set through the -wr,-wn and -wd options respectively (or as the 3 first numbers of in the sqsparam.in file). +The diameter of a cluster is the length of the longest pair contained in a cluster (normalized by nearest-neighbor distance). + +See routine calc_objective_func in mcsqs.c++ for a more precise description. + +This objective function reflect researchers' desire to perfectly match all correlation up to some range. +Adding the absolute difference serves to guide the algorithm in the right direction to extend the range +of perfect match. + +This objective function is a generalization of the one found in the Calphad paper cited above (reduces to it for wn=1 and wd=0, the defaults). + +-> Post-processing + +If you have obtained an SQS and would like to see how good/bad the correlations you have NOT included +in the objective function are, you can use a command of the form: + corrdump -l=rndstr.in -ro -noe -2=... -3=... -s=bestsqs.out +and compare to the output (for a perfectly random solid solution) of + corrdump -l=rndstr.in -ro -noe -2=... -3=... -s=bestsqs.out -rnd + +Beware that the above commands overwrite the clusters.out file. +Make sure to NOT include the -nop option (which is incompatible with the -rnd option). + +The getclus command is useful to get a summary of what the clusters are (number of points, diameter, multiplicity). + +< \ No newline at end of file diff --git a/src/memc2.c++ b/src/memc2.c++ new file mode 100644 index 0000000..e8a679a --- /dev/null +++ b/src/memc2.c++ @@ -0,0 +1,890 @@ +#include +#include +#include "mmclib.h" +#include "parse.h" +#include "getvalue.h" +#include "lstsqr.h" +#include "version.h" +#include "mteci.h" +#include "equil.h" +#include "kmeci.h" +#include "plugin.h" +#include "calcmf.h" +#include "multipoly.h" +#include "chull.h" + +extern char *helpstring; + +GenericPlugIn *GenericPlugIn::list=NULL; + +void print_vector(ostream &file, const Array &v, const char *delim) { + for (int i=0; i > &kept_control, const LinkedList &kept_lro, const Array &cur_control, Real cur_lro) { + const int pow_limit=6; + Array y; + LinkedList_to_Array(&y,kept_lro); + for (int i=0; i best_x; + LinearInequality ineq(cur_control.get_size()); + LinkedList ineqlist; + ineqlist << &ineq; + one_array(&ineq.v); + Array max_pow; + int nb_kept=kept_control.get_size(); + int cur_pow=0; + while (1) { + ineq.c=(Real)cur_pow; + product(&max_pow,ineq.v,ineq.c); + MultiDimPoly poly(max_pow,ineqlist); + if (poly.get_dim_param()>(nb_kept-2) || cur_pow>pow_limit) break; + Array param(poly.get_dim_param()); + zero_array(¶m); + Array2d x(nb_kept,poly.get_dim_param()); + LinkedListIterator > ic(kept_control); + for (int i=0; ic; i++, ic++) { + for (int j=0; j0) { + init_gs=-1; + } + + if (keV) {kboltzman=8.617e-5;} + + if (init_gs==-2) ERRORQUIT("Specify -gs"); + if (! ((n_equil!=-1 && n_step!=-1) || t_prec>0.)) ERRORQUIT("Specify either (-eq and -n) or -tp"); + if (t_prec>0. && n_equil==-1) {n_equil=0;} + if ( t_prec<0. ) ERRORQUIT("-tp value must be positive"); + + rndseed(seed); + int snapshotnum=0; + + // read the lattice file and do some error checking; + Structure lattice; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream latticefile("lat.in"); + if (!latticefile) ERRORQUIT("Unable to open lat.in"); + parse_lattice_file(&lattice.cell, &lattice.atom_pos, &lattice.atom_type, &labellookup, &label, latticefile, &axes); + wrap_inside_cell(&lattice.atom_pos,lattice.atom_pos,lattice.cell); + } + + // initialize a table of correlation functions; + if (!check_plug_in(CorrFuncTable(),corrfunc_label)) { + ERRORQUIT("Aborting"); + } + CorrFuncTable *pcorrfunc=GenericPlugIn::create(corrfunc_label); + pcorrfunc->init_from_site_type_list(labellookup); + + if (!quiet) { + cerr << "Species:" << endl; + for (int i=0; i concmat; + Array2d corr_to_conc; + Array2d conc_to_fullconc; + Array2d corr_to_fullconc; + Array conc_to_fullconc_c; + Array pt_mult; + calc_corr_to_conc(&concmat,lattice,labellookup,spacegroup,*pcorrfunc,&pt_mult); + // cerr << concmat << endl; + extract_nonredundant(&corr_to_conc,&conc_to_fullconc,&conc_to_fullconc_c, concmat); + product(&corr_to_fullconc,conc_to_fullconc,corr_to_conc); + // cerr << "PTMULT" << pt_mult << endl; + // cerr << corr_to_fullconc << endl; + // cerr << conc_to_fullconc_c << endl; + + // check for sites with multiple possible species; + int nbsite=0; + for (nbsite=0; nbsite clusterlist; + { + ifstream clusterfile("clusters.out"); + if (!clusterfile) ERRORQUIT("Unable to open clusters.out"); + Real maxlen=read_clusters_and_eci(&clusterlist,NULL,clusterfile,clusterfile,axes); + if (enclosed_radius==0) enclosed_radius=maxlen; + } + + // read the (possibly temperature-dependent) ECI; + PolyInterpolatorBig > teci; + PolyInterpolatorBig > teeci; + read_t_dep_eci_file(&teci,&teeci,clusterlist.get_size(),kboltzman); + + // Write the file describing the columns of the output file; + { + int c=0; + ofstream file("mcheader.out"); + c++; file << c << ":T" << endl; + for (int i=0; i ic(clusterlist); + for ( ; ic; ic++) { + c++; file << c << ":corr_" << ic->clus.get_size() << "_" << get_cluster_length(ic->clus) << endl; + } + } + + // read the ground state structures; + Array gs_list; + { + ifstream strfile("gs_str.out"); + if (!strfile) ERRORQUIT("Unable to open gs_str.out"); + LinkedList gs_llist; + while (!strfile.eof()) { + Structure str; + parse_structure_file(&str.cell,&str.atom_pos,&str.atom_type,label,strfile); + if (!fix_atom_type(&str, lattice, labellookup,1)) ERRORQUIT("Error reading gs_str.out"); + skip_to_next_structure(strfile); + wrap_inside_cell(&str.atom_pos,str.atom_pos,str.cell); + gs_llist << new Structure(str); + } + LinkedList_to_Array(&gs_list,gs_llist); + } + int nb_gs=gs_list.get_size(); + + // setup the initial configuration; + if (init_gs>=nb_gs || init_gs<-1) ERRORQUIT("-gs option is out of range."); + Structure disordered=lattice_only; + for (int i=0; i0) { + // or user-specified; + ifstream strfile(my_init_str); + if (!strfile) ERRORQUIT("Unable to open initial structure file"); + parse_structure_file(&mystr.cell,&mystr.atom_pos,&mystr.atom_type,label,strfile); + if (!fix_atom_type(&mystr, lattice, labellookup,1)) ERRORQUIT("Error reading initial structure file"); + wrap_inside_cell(&mystr.atom_pos,mystr.atom_pos,mystr.cell); + my_p_init_str=&mystr; + } + else { + my_p_init_str=p_init_str; + } + + // figure out the right supercell; + iVector3d simple_supercell; + find_common_simple_supercell(&simple_supercell,lattice_only.cell,my_p_init_str->cell); + rMatrix3d mat_simple_supercell; + mat_simple_supercell.diag(to_real(simple_supercell)); + iVector3d fit_sphere; + fit_sphere=find_sphere_bounding_box(lattice_only.cell*mat_simple_supercell,2.*enclosed_radius); + for (int i=0; i<3; i++) { + simple_supercell(i)*=fit_sphere(i); + } + if (!quiet) cout << "Supercell size: " << simple_supercell << endl; + + // create the Monte Carlo object; + MultiMonteCarlo *pmc; + MultiKSpaceECI multi_kspace_eci; + // if plug-in for k-space method specified, use it; + if (strlen(kspace_labels)>0) { + if (!check_plug_in(KSpaceECI(),kspace_labels)) { + ERRORQUIT("Aborting"); + } + make_plug_in_list(&multi_kspace_eci, kspace_labels); + LinkedListIterator i(multi_kspace_eci); + for (; i; i++) { + i->init(lattice_only,labellookup,label, simple_supercell, *pcorrfunc); + } + pmc=new KSpaceMultiMonteCarlo(lattice_only,labellookup,simple_supercell,spacegroup,clusterlist,*pcorrfunc,&multi_kspace_eci); + } + else { + pmc=new MultiMonteCarlo(lattice_only,labellookup,simple_supercell,spacegroup,clusterlist,*pcorrfunc); + } + + // find all combinations of spin flips allowed by constrains; + int flipmode=1; + if (file_exists("conccons.in")) { + ifstream file("conccons.in"); + LinkedList eq_list; + read_equalities(&eq_list,label,file); + Array2d conc_cons; + ineq_list_to_Array(&conc_cons,NULL,eq_list); + Array2d corr_cons; + product(&corr_cons,conc_cons,corr_to_fullconc); + pmc->find_all_allowed_flips(corr_cons,iVector3d(flip_span,flip_span,flip_span),flip_min_nb); + flipmode=0; + } + + + // create object providing thermo properties using mean-field approx; + CalcMeanField *pmf; + if (strlen(my_init_str)==0 && init_gs!=-1) { + pmf=new CalcMeanField(lattice_only, labellookup, *my_p_init_str, spacegroup, clusterlist, *pcorrfunc); + } + else { + pmf=NULL; + cerr << "Warning: Mean field approximation output turned off because -is=... option or -gs=-1 option is specified." << endl; + } + + // find reference energy scale (to make some numerical parameters less system-dependent); + Real Escale=0.; + { + Array eci,mult; + pmc->get_cluster_mult(&mult); + teci.interpol(&eci,0.); + for (int i=0; i control_org; + Array maxdiv; + Array2d dcontrol; + { + LinkedList > dcontrol_list; + LinkedList maxdiv_list; + ifstream controlfile(controlfilename); + if (!controlfile) { + cerr << "Error reading control file: " << controlfilename << endl; + ERRORQUIT("Either create file or specify other file with -cf option."); + } + while (skip_delim(controlfile)) { + Array cur_cont(label.get_size()+1); + for (int i=0; i> cur_cont(i); + } + cur_cont(0)*=kboltzman; + if (control_org.get_size()==0) { + control_org=cur_cont; + } + else { + Real curmaxdiv; + controlfile >> curmaxdiv; + maxdiv_list << new Real(fabs(curmaxdiv)); + diff(&cur_cont,cur_cont,control_org); + product(&cur_cont,cur_cont,sgn(curmaxdiv)/MAX(fabs(curmaxdiv)-(include_last ? 1. : 0.),1.)); + dcontrol_list << new Array(cur_cont); + } + } + LinkedList_to_Array(&maxdiv,maxdiv_list); + dcontrol.resize(control_org.get_size(),dcontrol_list.get_size()); + LinkedListIterator > idc(dcontrol_list); + for (int i=0; idc; i++,idc++) { + for (int j=0; j half(dcontrol_list.get_size()); + for (int i=0; i control_org_shift; + product(&control_org_shift,dcontrol,half); + sum(&control_org,control_org,control_org_shift); + } + } + + Array conc_axes_a; + { + LinkedList conc_axes_list; + istrstream line(conc_axes); + while (!line.eof()) { + int i=-1; + line >> i; + if (i==-1) break; + conc_axes_list << new int(i-1); + skip_delim(line,",; "); + } + LinkedList_to_Array(&conc_axes_a,conc_axes_list); + } + + Array > lro_list(maxdiv.get_size()); + Array phi(maxdiv.get_size()); + + MultiDimIterator > curpt(maxdiv); + while (curpt) { + Real sumc=0.; + for (int a=0; a &)curpt)(conc_axes_a(a))/maxdiv(conc_axes_a(a)); + } + if (sumc > 1.+zero_tolerance) { + curpt++; + continue; + } + + if (((Array &)curpt)(0)==0) { + pmc->init_structure(*my_p_init_str); + } + + Array cur_control; + product(&cur_control,dcontrol,curpt); + sum(&cur_control,cur_control,control_org); + Real T=cur_control(0); + Array full_mu; + extract_elements(&full_mu,cur_control,1,cur_control.get_size()); + Array mu; + product(&mu,full_mu,corr_to_fullconc); + Real muxc=inner_product(full_mu,conc_to_fullconc_c); + + Array eci; + teci.interpol(&eci,T); + + const int phi_offset=0; + const int E_offset=1; + const int lro_offset=2; + const int x_offset=3; + + Array lte_val(3+conc_to_fullconc_c.get_size()); + zero_array(<e_val); + if (pmf) { + pmf->set_eci(eci); + pmf->set_LTE(1); + lte_val(phi_offset)=pmf->set_get_phi(T,mu)-muxc; + lte_val(lro_offset)=pmf->get_lro(); + lte_val(E_offset)=calc_E_from_phi(pmf,teci,T,mu,fdT*Escale)-muxc; + Array x_lte,ptcorr_lte; + pmf->set_eci(eci); + calc_conc_from_phi(&ptcorr_lte, pmf,T,mu,fdmu*Escale); + + //Array mult_ptcorr_lte; + //product_diag(&mult_ptcorr_lte,pt_mult,ptcorr_lte); + //product(&x_lte,corr_to_fullconc,mult_ptcorr_lte); + product(&x_lte,corr_to_fullconc,ptcorr_lte); + sum(&x_lte,x_lte,conc_to_fullconc_c); + extract_elements(<e_val, x_offset,x_lte,0,x_lte.get_size()); + if (addmux) { + Real mux=inner_product(full_mu,x_lte); + lte_val(phi_offset)+=mux; + lte_val(E_offset)+=mux; + } + } + + Array mf_val(3+conc_to_fullconc_c.get_size()); + zero_array(&mf_val); + if (pmf) { + pmf->set_eci(eci); + pmf->set_LTE(0); + mf_val(phi_offset)=pmf->set_get_phi(T,mu)-muxc; + mf_val(lro_offset)=pmf->get_lro(); + mf_val(E_offset)=calc_E_from_phi(pmf,teci,T,mu,fdT*Escale)-muxc; + Array x_mf,ptcorr_mf; + pmf->set_eci(eci); + calc_conc_from_phi(&ptcorr_mf, pmf,T,mu,fdmu*Escale); + + //Array mult_ptcorr_mf; + //product_diag(&mult_ptcorr_mf,pt_mult,ptcorr_mf); + //product(&x_mf,corr_to_fullconc,mult_ptcorr_mf); + product(&x_mf,corr_to_fullconc,ptcorr_mf); + sum(&x_mf,x_mf,conc_to_fullconc_c); + extract_elements(&mf_val, x_offset,x_mf,0,x_mf.get_size()); + if (addmux) { + Real mux=inner_product(full_mu,x_mf); + mf_val(phi_offset)+=mux; + mf_val(E_offset)+=mux; + } + } + + int do_quick=(fabs(lte_val(mf_thresh_col)-mf_val(mf_thresh_col)) mc_val(3+conc_to_fullconc_c.get_size()); + pmc->set_eci(eci); + pmc->set_T_mu(T,mu); + + GenericAccumulator *paccum; + if (do_quick) { + paccum=create_accum(0,0.,0); + } else { + if (((Array &)curpt)(0)==0) { + pmc->run(n_equil,flipmode); + } + paccum=create_accum(n_step,t_prec,which_col-1); + } + run_mc(paccum,pmc,flipmode); + if (strlen(snapshotnumfile)>0) { + AutoString snapshotnumfilec(snapshotnumfile); + char *pdot=strchr(snapshotnumfilec,'.'); + if (pdot) { + ostrstream num; + num << snapshotnum << '\0'; + const char *pnum=num.str(); + strcpy(pdot-strlen(pnum),pnum); + *pdot='.'; + ofstream file(snapshotnumfilec); + file.setf(ios::fixed); + file.precision(sigdig); + pmc->view(labellookup,label,file,axes); + snapshotnum++; + } + } + const Array &mcdata=paccum->get_mean(); + const Array &mcdata2=paccum->get_var(); + + mc_val(E_offset)=mcdata(0)-muxc; + mc_val(lro_offset)=1.-mcdata(1); + Array corr,mult; + extract_elements(&corr,mcdata,2+mu.get_size(),2+mu.get_size()+eci.get_size()); + pmc->get_cluster_mult(&mult); + fix_energy(&(mc_val(E_offset)), mult,corr,teci,T); + + Array x_mc,ptcorr_mc; + extract_elements(&ptcorr_mc,mcdata,2,2+mu.get_size()); + + //Array mult_ptcorr_mc; + //product_diag(&mult_ptcorr_mc,pt_mult,ptcorr_mc); + product(&x_mc,corr_to_fullconc,ptcorr_mc); + sum(&x_mc,x_mc,conc_to_fullconc_c); + extract_elements(&mc_val, x_offset,x_mc,0,x_mc.get_size()); + + delete paccum; + + int looplevel=0; + while (looplevel &)curpt)(looplevel)!=0) break; + looplevel++; + } + + if (init_gs==-1) { + lte_val(lro_offset)=0.; + mf_val(lro_offset)=0.; + mc_val(lro_offset)=0.; + } + + if (looplevel==maxdiv.get_size()) { + for (int ll=0; ll dphi(x_mc.get_size()+1); + dphi(0)=-(mc_val(E_offset)-phi(looplevel))/T; + for (int i=0; i dcol; + extract_column(&dcol,dcontrol,looplevel); + Real new_phi=phi(looplevel)+inner_product(dphi,dcol); + if (do_quick) {new_phi=mf_val(phi_offset);} + for (int ll=looplevel; ll>=0; ll--) {phi(ll)=new_phi;} + } + mc_val(phi_offset)=phi(0); + + if (addmux) { + Real mux=inner_product(full_mu,x_mc); + mc_val(phi_offset)+=mux; + mc_val(E_offset)+=mux; + } + + if (do_quick) {mc_val=mf_val;} + + for (int ll=looplevel-1; ll>=0; ll--) { + lro_list(ll).delete_all(); + } + int quitloop=0; + if (looplevel lro_array; + int ll=looplevel; + do { + LinkedList_to_Array(&lro_array,lro_list(ll)); + if (lro_array.get_size()>=3) break; + ll++; + } while (llthreshold); + // cout << lro_array.get_size() << " " << ll << " " << tt << endl; + } + + if (!(droplast && quitloop)) { + ostrstream line; + line.setf(ios::fixed); + line.precision(sigdig); + if (((Array &)curpt)(0)==0) { line << endl; } + line << T/kboltzman << delim; + print_vector(line,full_mu,delim); + print_vector(line,lte_val,delim); + print_vector(line,mf_val,delim); + print_vector(line,mc_val,delim); + line << do_quick << delim; + print_vector(line,corr,delim); + line << endl << '\0'; + mcfile << line.str() << flush; + if (!quiet) {cout << line.str() << flush;} + } + if (quitloop) { + curpt.bump_up(looplevel); + } + else { + if (looplevel==maxdiv.get_size()) {looplevel--;} + for (int ll=looplevel; ll>=0; ll--) { + lro_list(ll) << new Real(mc_val(lro_offset)); + } + curpt++; + } + } + { + ofstream file(snapshotfile); + file.setf(ios::fixed); + file.precision(sigdig); + pmc->view(labellookup,label,file,axes); + } + } + else { //randomwalk algorithm; + Array org_control(label.get_size()+1); + Array dcontrol(label.get_size()+1); + Array lim_control(label.get_size()+1); + { + ifstream controlfile(controlfilename); + if (!controlfile) { + cerr << "Error reading control file: " << controlfilename << endl; + ERRORQUIT("Either create file or specify other file with -cf option."); + } + for (int i=0; i> org_control(i); + } + org_control(0)*=kboltzman; + for (int i=0; i> dcontrol(i); + } + dcontrol(0)*=kboltzman; + for (int i=0; i> lim_control(i); + } + lim_control(0)*=kboltzman; + } + + if (!pmf) { + ERRORQUIT("Cannot use -gs=-1 or -is options with random walk algorithm"); + } + pmc->init_structure(*my_p_init_str); + + Array cur_control,old_control; + old_control=org_control; + cur_control=org_control; + + LinkedList > kept_control; + LinkedList kept_lro; + + while (1) { + Real T=cur_control(0); + Array full_mu; + extract_elements(&full_mu,cur_control,1,cur_control.get_size()); + Array mu; + product(&mu,full_mu,corr_to_fullconc); + Real muxc=inner_product(full_mu,conc_to_fullconc_c); + + Array eci; + teci.interpol(&eci,T); + + const int phi_offset=0; + const int E_offset=1; + const int lro_offset=2; + const int x_offset=3; + + Array lte_val(3+conc_to_fullconc_c.get_size()); + zero_array(<e_val); + pmf->set_eci(eci); + pmf->set_LTE(1); + lte_val(phi_offset)=pmf->set_get_phi(T,mu)-muxc; + lte_val(lro_offset)=pmf->get_lro(); + lte_val(E_offset)=calc_E_from_phi(pmf,teci,T,mu,fdT*Escale)-muxc; + Array x_lte,ptcorr_lte; + pmf->set_eci(eci); + calc_conc_from_phi(&ptcorr_lte, pmf,T,mu,fdmu*Escale); + + //Array mult_ptcorr_lte; + //product_diag(&mult_ptcorr_lte,pt_mult,ptcorr_lte); + //product(&x_lte,corr_to_fullconc,mult_ptcorr_lte); + product(&x_lte,corr_to_fullconc,ptcorr_lte); + sum(&x_lte,x_lte,conc_to_fullconc_c); + extract_elements(<e_val, x_offset,x_lte,0,x_lte.get_size()); + if (addmux) { + Real mux=inner_product(full_mu,x_lte); + lte_val(phi_offset)+=mux; + lte_val(E_offset)+=mux; + } + + Array mf_val(3+conc_to_fullconc_c.get_size()); + zero_array(&mf_val); + pmf->set_eci(eci); + pmf->set_LTE(0); + mf_val(phi_offset)=pmf->set_get_phi(T,mu)-muxc; + mf_val(lro_offset)=pmf->get_lro(); + mf_val(E_offset)=calc_E_from_phi(pmf,teci,T,mu,fdT*Escale)-muxc; + Array x_mf,ptcorr_mf; + pmf->set_eci(eci); + calc_conc_from_phi(&ptcorr_mf, pmf,T,mu,fdmu*Escale); + + //Array mult_ptcorr_mf; + //product_diag(&mult_ptcorr_mf,pt_mult,ptcorr_mf); + //product(&x_mf,corr_to_fullconc,mult_ptcorr_mf); + product(&x_mf,corr_to_fullconc,ptcorr_mf); + sum(&x_mf,x_mf,conc_to_fullconc_c); + extract_elements(&mf_val, x_offset,x_mf,0,x_mf.get_size()); + if (addmux) { + Real mux=inner_product(full_mu,x_mf); + mf_val(phi_offset)+=mux; + mf_val(E_offset)+=mux; + } + + int do_quick=(fabs(lte_val(mf_thresh_col)-mf_val(mf_thresh_col)) mc_val(3+conc_to_fullconc_c.get_size()); + pmc->set_eci(eci); + pmc->set_T_mu(T,mu); + + GenericAccumulator *paccum; + if (do_quick) { + paccum=create_accum(0,0.,0); + } else { + paccum=create_accum(n_step,t_prec,which_col-1); + } + run_mc(paccum,pmc,flipmode); + const Array &mcdata=paccum->get_mean(); + const Array &mcdata2=paccum->get_var(); + + mc_val(E_offset)=mcdata(0)-muxc; + mc_val(lro_offset)=1.-mcdata(1); + Array corr,mult; + extract_elements(&corr,mcdata,2+mu.get_size(),2+mu.get_size()+eci.get_size()); + pmc->get_cluster_mult(&mult); + fix_energy(&(mc_val(E_offset)), mult,corr,teci,T); + + Array x_mc,ptcorr_mc; + extract_elements(&ptcorr_mc,mcdata,2,2+mu.get_size()); + + //Array mult_ptcorr_mc; + //product_diag(&mult_ptcorr_mc,pt_mult,ptcorr_mc); + product(&x_mc,corr_to_fullconc,ptcorr_mc); + sum(&x_mc,x_mc,conc_to_fullconc_c); + extract_elements(&mc_val, x_offset,x_mc,0,x_mc.get_size()); + if (addmux) { + Real mux=inner_product(full_mu,x_mc); + mc_val(phi_offset)+=mux; + mc_val(E_offset)+=mux; + } + + delete paccum; + + mc_val(phi_offset)=0.; + if (do_quick) {mc_val=lte_val;} + + int reject=0; + for (int i=0; i Tmu(1+mu.get_size()); + Tmu(0)=T; + for (int i=0; ithreshold); + // debugfile << reject << endl; + } + { + ostrstream line; + line.setf(ios::fixed); + line.precision(sigdig); + line << T/kboltzman << delim; + print_vector(line,full_mu,delim); + print_vector(line,lte_val,delim); + print_vector(line,mf_val,delim); + print_vector(line,mc_val,delim); + line << do_quick << delim; + print_vector(line,corr,delim); + line << endl << '\0'; + if (!reject) {mcfile << line.str() << flush;} + if (!quiet) {cout << (reject ? 'R' : 'A') << delim << line.str() << flush;} + } + if (reject) { + if (!do_quick) {pmc->init_structure(*my_p_init_str);} + } + else { + kept_control << new Array(Tmu); + kept_lro << new Real(mc_val(lro_offset)); + old_control=cur_control; + } + do { + cur_control(0)=old_control(0)+dcontrol(0)*(2.*uniform01()-1.); + } while (cur_control(0)>lim_control(0) || cur_control(0)<0.); + for (int i=1; i Input files: + +control.in : range of temperature and chemical potentials to scan. + + The first line of this file specifies the initial conditions and has the format: + temperature chemical_potentials_1 ... chemical_potentials_n + where the chemical potentials are for each specie. + Each subsequent line of this file indicates one of the axes along which to scan and has the format: + temperature chemical_potentials_1 ... chemical_potentials_n number_of_steps + where number_of_steps is the the number of steps made between the initial conditions + and the final conditions given on the line. + Example: to scan the region in (T,mu1,mu2,mu3)-space defined by + 100 <= T < 200 and 0 <= mu1 < 1.0 and 0 <= mu2 < 0.5 and mu3 == 0.0 + with a 10x5x5 grid + the control.in file should be + 100 0.0 0.0 0.0 + 200 0.0 0.0 0.0 10 + 100 0.0 0.5 0.0 5 + 100 1.0 0.0 0.0 5 + Note: Temperatures are given in units of energy unless the -k or -eV options are set. + By default, the finals conditions are excluded from the scan (in the example above + the chemical potentials scanned in the last line are 0.0 0.2 0.4 0.6 0.8) + This behavior can be changed with the -il option, to give: 0.0 0.25 0.5 0.75 1.0) + Alternatively, the -hf option gives: 0.1 0.3 0.5 0.7 0.9 . + +NOTE: The mmaps code generates a file called chempot.out which contains special values of the +chemical potential that stabilize various types of equilibria. These values are useful guidelines +to select relevant regions in mu-space to scan. + +-> Other input files: + +lat.in : description of the lattice. +clusters.out : describes the clusters. +eci.out : provides the ECI. +gs_str.out : a list of ground states, in no particular order. + + These 4 files can be created by maps. + See maps documentation (maps -h) for a description of the formats. + +-> Optional input files: + +teci.out : if present, provides temperature-dependent eci (overrides eci.out) + (Note that, even when the teci.out file is used, column 6 of the output file + reflects only the configurational contribution to the heat capacity.) + +The format this file is: +[maximum temperature: Tm] +[number of temperatures where eci are provided: nT] +[ECIs for temperature 0] +[ECIs for temperature Tm/(nT-1)] +[ECIs for temperature 2*Tm/(nT-1)] +... +[ECIs for temperature Tm] + +Note that these numbers can be seperated by blanks or newlines, as desired. + +conccons.in : Specifies linear constraints on the composition that spin flips must obey. + (The code will generate multi-spin flips if necessary.) + Here is an example of such file: + 1.0*Al -1.0*Li +0.1*Co = 0.5 + Please use rational numbers only - infinite loop will result otherwise. + Composition is determined by the user-supplied initial configuration + (via the -g or -is options). + +-> Format of the output file + +The file mcheader.out gives the content of column of the output file. +The following abreviations are used: + T: temperature + mu(A): chemical potentials of specie A + x(A): concentration of specie A + E: energy (per active site) + Egc: grand canonical energy (per active site) , i.e., E - sum_i mu(i)*x(i) + lro: long Range Order parameter of the initial ordered phase + (=0 if initial phase is disordered) + F: Helmholtz free energy (per active site) + phi: grand canonical potential: F - sum_i mu(i)*x(i) + use_mf: flag that is 1 if mf values have been used instead of mc values + corr_n_d: the average correlations associated with each cluster + n is the number of points in the cluster + d is the diameter of the cluster + +Suffixes: + _lte: obtained with low temperature expansion + _mf: obtained with mean field approximation + _mc: obtained with Monte Carlo simulations + +NOTE: to obtain 'canonical' rather than grand canonical quantities (adding mu*x), + to all (free) energies use the -g2c option. + +NOTE: an 'active site' is one that can host more than one possible atom type. +Energy and free energy are reported per 'active site' not per total sites. diff --git a/src/memc2old.c++ b/src/memc2old.c++ new file mode 100644 index 0000000..459b6b0 --- /dev/null +++ b/src/memc2old.c++ @@ -0,0 +1,862 @@ +#include +#include +#include "mmclib.h" +#include "parse.h" +#include "getvalue.h" +#include "lstsqr.h" +#include "version.h" +#include "mteci.h" +#include "equil.h" +#include "kmeci.h" +#include "plugin.h" +#include "calcmf.h" +#include "multipoly.h" +#include "chull.h" + +extern char *helpstring; + +GenericPlugIn *GenericPlugIn::list=NULL; + +void print_vector(ostream &file, const Array &v, char *delim) { + for (int i=0; i > &kept_control, const LinkedList &kept_lro, const Array &cur_control, Real cur_lro) { + const int pow_limit=6; + Array y; + LinkedList_to_Array(&y,kept_lro); + for (int i=0; i best_x; + LinearInequality ineq(cur_control.get_size()); + LinkedList ineqlist; + ineqlist << &ineq; + one_array(&ineq.v); + Array max_pow; + int nb_kept=kept_control.get_size(); + int cur_pow=0; + while (1) { + ineq.c=(Real)cur_pow; + product(&max_pow,ineq.v,ineq.c); + MultiDimPoly poly(max_pow,ineqlist); + if (poly.get_dim_param()>(nb_kept-2) || cur_pow>pow_limit) break; + Array param(poly.get_dim_param()); + zero_array(¶m); + Array2d x(nb_kept,poly.get_dim_param()); + LinkedListIterator > ic(kept_control); + for (int i=0; ic; i++, ic++) { + for (int j=0; j0) { + init_gs=-1; + } + + if (keV) {kboltzman=8.617e-5;} + + if (init_gs==-2) ERRORQUIT("Specify -gs"); + if (! ((n_equil!=-1 && n_step!=-1) || t_prec>0.)) ERRORQUIT("Specify either (-eq and -n) or -tp"); + if (t_prec>0. && n_equil==-1) {n_equil=0;} + if ( t_prec<0. ) ERRORQUIT("-tp value must be positive"); + + rndseed(seed); + int snapshotnum=0; + + // read the lattice file and do some error checking; + Structure lattice; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream latticefile("lat.in"); + if (!latticefile) ERRORQUIT("Unable to open lat.in"); + parse_lattice_file(&lattice.cell, &lattice.atom_pos, &lattice.atom_type, &labellookup, &label, latticefile, &axes); + wrap_inside_cell(&lattice.atom_pos,lattice.atom_pos,lattice.cell); + } + + // initialize a table of correlation functions; + if (!check_plug_in(CorrFuncTable(),corrfunc_label)) { + ERRORQUIT("Aborting"); + } + CorrFuncTable *pcorrfunc=GenericPlugIn::create(corrfunc_label); + pcorrfunc->init_from_site_type_list(labellookup); + + if (!quiet) { + cerr << "Species:" << endl; + for (int i=0; i concmat; + Array2d corr_to_conc; + Array2d conc_to_fullconc; + Array2d corr_to_fullconc; + Array conc_to_fullconc_c; + calc_corr_to_conc(&concmat,lattice,labellookup,spacegroup,*pcorrfunc,1); + extract_nonredundant(&corr_to_conc,&conc_to_fullconc,&conc_to_fullconc_c, concmat); + product(&corr_to_fullconc,conc_to_fullconc,corr_to_conc); + + // check for sites with multiple possible species; + int nbsite=0; + for (nbsite=0; nbsite clusterlist; + { + ifstream clusterfile("clusters.out"); + if (!clusterfile) ERRORQUIT("Unable to open clusters.out"); + Real maxlen=read_clusters_and_eci(&clusterlist,NULL,clusterfile,clusterfile,axes); + if (enclosed_radius==0) enclosed_radius=maxlen; + } + + // read the (possibly temperature-dependent) ECI; + PolyInterpolatorBig > teci; + PolyInterpolatorBig > teeci; + read_t_dep_eci_file(&teci,&teeci,clusterlist.get_size(),kboltzman); + + // Write the file describing the columns of the output file; + { + int c=0; + ofstream file("mcheader.out"); + c++; file << c << ":T" << endl; + for (int i=0; i ic(clusterlist); + for ( ; ic; ic++) { + c++; file << c << ":corr_" << ic->clus.get_size() << "_" << get_cluster_length(ic->clus) << endl; + } + } + + // read the ground state structures; + Array gs_list; + { + ifstream strfile("gs_str.out"); + if (!strfile) ERRORQUIT("Unable to open gs_str.out"); + LinkedList gs_llist; + while (!strfile.eof()) { + Structure str; + parse_structure_file(&str.cell,&str.atom_pos,&str.atom_type,label,strfile); + if (!fix_atom_type(&str, lattice, labellookup,1)) ERRORQUIT("Error reading gs_str.out"); + skip_to_next_structure(strfile); + wrap_inside_cell(&str.atom_pos,str.atom_pos,str.cell); + gs_llist << new Structure(str); + } + LinkedList_to_Array(&gs_list,gs_llist); + } + int nb_gs=gs_list.get_size(); + + // setup the initial configuration; + if (init_gs>=nb_gs || init_gs<-1) ERRORQUIT("-gs option is out of range."); + Structure disordered=lattice_only; + for (int i=0; i0) { + // or user-specified; + ifstream strfile(my_init_str); + if (!strfile) ERRORQUIT("Unable to open initial structure file"); + parse_structure_file(&mystr.cell,&mystr.atom_pos,&mystr.atom_type,label,strfile); + if (!fix_atom_type(&mystr, lattice, labellookup,1)) ERRORQUIT("Error reading initial structure file"); + wrap_inside_cell(&mystr.atom_pos,mystr.atom_pos,mystr.cell); + my_p_init_str=&mystr; + } + else { + my_p_init_str=p_init_str; + } + + // figure out the right supercell; + iVector3d simple_supercell; + find_common_simple_supercell(&simple_supercell,lattice_only.cell,my_p_init_str->cell); + rMatrix3d mat_simple_supercell; + mat_simple_supercell.diag(to_real(simple_supercell)); + iVector3d fit_sphere; + fit_sphere=find_sphere_bounding_box(lattice_only.cell*mat_simple_supercell,2.*enclosed_radius); + for (int i=0; i<3; i++) { + simple_supercell(i)*=fit_sphere(i); + } + if (!quiet) cout << "Supercell size: " << simple_supercell << endl; + + // create the Monte Carlo object; + MultiMonteCarlo *pmc; + MultiKSpaceECI multi_kspace_eci; + // if plug-in for k-space method specified, use it; + if (strlen(kspace_labels)>0) { + if (!check_plug_in(KSpaceECI(),kspace_labels)) { + ERRORQUIT("Aborting"); + } + make_plug_in_list(&multi_kspace_eci, kspace_labels); + LinkedListIterator i(multi_kspace_eci); + for (; i; i++) { + i->init(lattice_only,labellookup,label, simple_supercell, *pcorrfunc); + } + pmc=new KSpaceMultiMonteCarlo(lattice_only,labellookup,simple_supercell,spacegroup,clusterlist,*pcorrfunc,&multi_kspace_eci); + } + else { + pmc=new MultiMonteCarlo(lattice_only,labellookup,simple_supercell,spacegroup,clusterlist,*pcorrfunc); + } + + // find all combinations of spin flips allowed by constrains; + int flipmode=1; + if (file_exists("conccons.in")) { + ifstream file("conccons.in"); + LinkedList eq_list; + read_equalities(&eq_list,label,file); + Array2d conc_cons; + ineq_list_to_Array(&conc_cons,NULL,eq_list); + Array2d corr_cons; + product(&corr_cons,conc_cons,corr_to_fullconc); + pmc->find_all_allowed_flips(corr_cons,iVector3d(flip_span,flip_span,flip_span)); + flipmode=0; + } + + + // create object providing thermo properties using mean-field approx; + CalcMeanField *pmf; + if (strlen(my_init_str)==0 && init_gs!=-1) { + pmf=new CalcMeanField(lattice_only, labellookup, *my_p_init_str, spacegroup, clusterlist, *pcorrfunc); + } + else { + pmf=NULL; + cerr << "Warning: Mean field approximation output turned off because -is=... option or -gs=-1 option is specified." << endl; + } + + // find reference energy scale (to make some numerical parameters less system-dependent); + Real Escale=0.; + { + Array mult; + pmc->get_cluster_mult(&mult); + Array eci; + teci.interpol(&eci,0.); + for (int i=0; i control_org; + Array maxdiv; + Array2d dcontrol; + { + LinkedList > dcontrol_list; + LinkedList maxdiv_list; + ifstream controlfile(controlfilename); + if (!controlfile) { + cerr << "Error reading control file: " << controlfilename << endl; + ERRORQUIT("Either create file or specify other file with -cf option."); + } + while (skip_delim(controlfile)) { + Array cur_cont(label.get_size()+1); + for (int i=0; i> cur_cont(i); + } + cur_cont(0)*=kboltzman; + if (control_org.get_size()==0) { + control_org=cur_cont; + } + else { + Real curmaxdiv; + controlfile >> curmaxdiv; + maxdiv_list << new Real(fabs(curmaxdiv)); + diff(&cur_cont,cur_cont,control_org); + product(&cur_cont,cur_cont,sgn(curmaxdiv)/MAX(fabs(curmaxdiv)-(include_last ? 1. : 0.),1.)); + dcontrol_list << new Array(cur_cont); + } + } + LinkedList_to_Array(&maxdiv,maxdiv_list); + dcontrol.resize(control_org.get_size(),dcontrol_list.get_size()); + LinkedListIterator > idc(dcontrol_list); + for (int i=0; idc; i++,idc++) { + for (int j=0; j half(dcontrol_list.get_size()); + for (int i=0; i control_org_shift; + product(&control_org_shift,dcontrol,half); + sum(&control_org,control_org,control_org_shift); + } + } + + Array conc_axes_a; + { + LinkedList conc_axes_list; + istrstream line(conc_axes); + while (!line.eof()) { + int i=-1; + line >> i; + if (i==-1) break; + conc_axes_list << new int(i-1); + skip_delim(line,",; "); + } + LinkedList_to_Array(&conc_axes_a,conc_axes_list); + } + + Array > lro_list(maxdiv.get_size()); + Array phi(maxdiv.get_size()); + + MultiDimIterator > curpt(maxdiv); + while (curpt) { + Real sumc=0.; + for (int a=0; a &)curpt)(conc_axes_a(a))/maxdiv(conc_axes_a(a)); + } + if (sumc > 1.+zero_tolerance) { + curpt++; + continue; + } + + if (((Array &)curpt)(0)==0) { + pmc->init_structure(*my_p_init_str); + } + + Array cur_control; + product(&cur_control,dcontrol,curpt); + sum(&cur_control,cur_control,control_org); + Real T=cur_control(0); + Array full_mu; + extract_elements(&full_mu,cur_control,1,cur_control.get_size()); + Array mu; + product(&mu,full_mu,corr_to_fullconc); + Real muxc=inner_product(full_mu,conc_to_fullconc_c); + + Array eci; + teci.interpol(&eci,T); + + const int phi_offset=0; + const int E_offset=1; + const int lro_offset=2; + const int x_offset=3; + + Array lte_val(3+conc_to_fullconc_c.get_size()); + zero_array(<e_val); + if (pmf) { + pmf->set_eci(eci); + pmf->set_LTE(1); + lte_val(phi_offset)=pmf->set_get_phi(T,mu)-muxc; + lte_val(lro_offset)=pmf->get_lro(); + lte_val(E_offset)=calc_E_from_phi(pmf,teci,T,mu,fdT*Escale)-muxc; + Array x_lte,ptcorr_lte; + pmf->set_eci(eci); + calc_conc_from_phi(&ptcorr_lte, pmf,T,mu,fdmu*Escale); + product(&x_lte,corr_to_fullconc,ptcorr_lte); + sum(&x_lte,x_lte,conc_to_fullconc_c); + extract_elements(<e_val, x_offset,x_lte,0,x_lte.get_size()); + if (addmux) { + Real mux=inner_product(full_mu,x_lte); + lte_val(phi_offset)+=mux; + lte_val(E_offset)+=mux; + } + } + + Array mf_val(3+conc_to_fullconc_c.get_size()); + zero_array(&mf_val); + if (pmf) { + pmf->set_eci(eci); + pmf->set_LTE(0); + mf_val(phi_offset)=pmf->set_get_phi(T,mu)-muxc; + mf_val(lro_offset)=pmf->get_lro(); + mf_val(E_offset)=calc_E_from_phi(pmf,teci,T,mu,fdT*Escale)-muxc; + Array x_mf,ptcorr_mf; + pmf->set_eci(eci); + calc_conc_from_phi(&ptcorr_mf, pmf,T,mu,fdmu*Escale); + product(&x_mf,corr_to_fullconc,ptcorr_mf); + sum(&x_mf,x_mf,conc_to_fullconc_c); + extract_elements(&mf_val, x_offset,x_mf,0,x_mf.get_size()); + if (addmux) { + Real mux=inner_product(full_mu,x_mf); + mf_val(phi_offset)+=mux; + mf_val(E_offset)+=mux; + } + } + + int do_quick=(fabs(lte_val(mf_thresh_col)-mf_val(mf_thresh_col)) mc_val(3+conc_to_fullconc_c.get_size()); + pmc->set_eci(eci); + pmc->set_T_mu(T,mu); + + GenericAccumulator *paccum; + if (do_quick) { + paccum=create_accum(0,0.,0); + } else { + if (((Array &)curpt)(0)==0) { + pmc->run(n_equil,flipmode); + } + paccum=create_accum(n_step,t_prec,which_col-1); + } + run_mc(paccum,pmc,flipmode); + if (strlen(snapshotnumfile)>0) { + AutoString snapshotnumfilec(snapshotnumfile); + char *pdot=strchr(snapshotnumfilec,'.'); + if (pdot) { + ostrstream num; + num << snapshotnum << '\0'; + const char *pnum=num.str(); + strcpy(pdot-strlen(pnum),pnum); + *pdot='.'; + ofstream file(snapshotnumfilec); + file.setf(ios::fixed); + file.precision(sigdig); + pmc->view(labellookup,label,file,axes); + snapshotnum++; + } + } + const Array &mcdata=paccum->get_mean(); + const Array &mcdata2=paccum->get_var(); + + mc_val(E_offset)=mcdata(0)-muxc; + mc_val(lro_offset)=1.-mcdata(1); + Array corr,mult; + extract_elements(&corr,mcdata,2+mu.get_size(),2+mu.get_size()+eci.get_size()); + pmc->get_cluster_mult(&mult); + fix_energy(&(mc_val(E_offset)), mult,corr,teci,T); + + Array x_mc,ptcorr_mc; + extract_elements(&ptcorr_mc,mcdata,2,2+mu.get_size()); + product(&x_mc,corr_to_fullconc,ptcorr_mc); + sum(&x_mc,x_mc,conc_to_fullconc_c); + extract_elements(&mc_val, x_offset,x_mc,0,x_mc.get_size()); + + delete paccum; + + int looplevel=0; + while (looplevel &)curpt)(looplevel)!=0) break; + looplevel++; + } + + if (init_gs==-1) { + lte_val(lro_offset)=0.; + mf_val(lro_offset)=0.; + mc_val(lro_offset)=0.; + } + + if (looplevel==maxdiv.get_size()) { + for (int ll=0; ll dphi(x_mc.get_size()+1); + dphi(0)=-(mc_val(E_offset)-phi(looplevel))/T; + for (int i=0; i dcol; + extract_column(&dcol,dcontrol,looplevel); + Real new_phi=phi(looplevel)+inner_product(dphi,dcol); + if (do_quick) {new_phi=mf_val(phi_offset);} + for (int ll=looplevel; ll>=0; ll--) {phi(ll)=new_phi;} + } + mc_val(phi_offset)=phi(0); + + if (addmux) { + Real mux=inner_product(full_mu,x_mc); + mc_val(phi_offset)+=mux; + mc_val(E_offset)+=mux; + } + + if (do_quick) {mc_val=mf_val;} + + for (int ll=looplevel-1; ll>=0; ll--) { + lro_list(ll).delete_all(); + } + int quitloop=0; + if (looplevel lro_array; + int ll=looplevel; + do { + LinkedList_to_Array(&lro_array,lro_list(ll)); + if (lro_array.get_size()>=3) break; + ll++; + } while (llthreshold); + // cout << lro_array.get_size() << " " << ll << " " << tt << endl; + } + + if (!(droplast && quitloop)) { + ostrstream line; + line.setf(ios::fixed); + line.precision(sigdig); + if (((Array &)curpt)(0)==0) { line << endl; } + line << T/kboltzman << delim; + print_vector(line,full_mu,delim); + print_vector(line,lte_val,delim); + print_vector(line,mf_val,delim); + print_vector(line,mc_val,delim); + line << do_quick << delim; + print_vector(line,corr,delim); + line << endl << '\0'; + mcfile << line.str() << flush; + if (!quiet) {cout << line.str() << flush;} + } + if (quitloop) { + curpt.bump_up(looplevel); + } + else { + if (looplevel==maxdiv.get_size()) {looplevel--;} + for (int ll=looplevel; ll>=0; ll--) { + lro_list(ll) << new Real(mc_val(lro_offset)); + } + curpt++; + } + } + { + ofstream file(snapshotfile); + file.setf(ios::fixed); + file.precision(sigdig); + pmc->view(labellookup,label,file,axes); + } + } + else { //randomwalk algorithm; + Array org_control(label.get_size()+1); + Array dcontrol(label.get_size()+1); + Array lim_control(label.get_size()+1); + { + ifstream controlfile(controlfilename); + if (!controlfile) { + cerr << "Error reading control file: " << controlfilename << endl; + ERRORQUIT("Either create file or specify other file with -cf option."); + } + for (int i=0; i> org_control(i); + } + org_control(0)*=kboltzman; + for (int i=0; i> dcontrol(i); + } + dcontrol(0)*=kboltzman; + for (int i=0; i> lim_control(i); + } + lim_control(0)*=kboltzman; + } + + if (!pmf) { + ERRORQUIT("Cannot use -gs=-1 or -is options with random walk algorithm"); + } + pmc->init_structure(*my_p_init_str); + + Array cur_control,old_control; + old_control=org_control; + cur_control=org_control; + + LinkedList > kept_control; + LinkedList kept_lro; + + while (1) { + Real T=cur_control(0); + Array full_mu; + extract_elements(&full_mu,cur_control,1,cur_control.get_size()); + Array mu; + product(&mu,full_mu,corr_to_fullconc); + Real muxc=inner_product(full_mu,conc_to_fullconc_c); + + Array eci; + teci.interpol(&eci,T); + + const int phi_offset=0; + const int E_offset=1; + const int lro_offset=2; + const int x_offset=3; + + Array lte_val(3+conc_to_fullconc_c.get_size()); + zero_array(<e_val); + pmf->set_eci(eci); + pmf->set_LTE(1); + lte_val(phi_offset)=pmf->set_get_phi(T,mu)-muxc; + lte_val(lro_offset)=pmf->get_lro(); + lte_val(E_offset)=calc_E_from_phi(pmf,teci,T,mu,fdT*Escale)-muxc; + Array x_lte,ptcorr_lte; + pmf->set_eci(eci); + calc_conc_from_phi(&ptcorr_lte, pmf,T,mu,fdmu*Escale); + product(&x_lte,corr_to_fullconc,ptcorr_lte); + sum(&x_lte,x_lte,conc_to_fullconc_c); + extract_elements(<e_val, x_offset,x_lte,0,x_lte.get_size()); + if (addmux) { + Real mux=inner_product(full_mu,x_lte); + lte_val(phi_offset)+=mux; + lte_val(E_offset)+=mux; + } + + Array mf_val(3+conc_to_fullconc_c.get_size()); + zero_array(&mf_val); + pmf->set_eci(eci); + pmf->set_LTE(0); + mf_val(phi_offset)=pmf->set_get_phi(T,mu)-muxc; + mf_val(lro_offset)=pmf->get_lro(); + mf_val(E_offset)=calc_E_from_phi(pmf,teci,T,mu,fdT*Escale)-muxc; + Array x_mf,ptcorr_mf; + pmf->set_eci(eci); + calc_conc_from_phi(&ptcorr_mf, pmf,T,mu,fdmu*Escale); + product(&x_mf,corr_to_fullconc,ptcorr_mf); + sum(&x_mf,x_mf,conc_to_fullconc_c); + extract_elements(&mf_val, x_offset,x_mf,0,x_mf.get_size()); + if (addmux) { + Real mux=inner_product(full_mu,x_mf); + mf_val(phi_offset)+=mux; + mf_val(E_offset)+=mux; + } + + int do_quick=(fabs(lte_val(mf_thresh_col)-mf_val(mf_thresh_col)) mc_val(3+conc_to_fullconc_c.get_size()); + pmc->set_eci(eci); + pmc->set_T_mu(T,mu); + + GenericAccumulator *paccum; + if (do_quick) { + paccum=create_accum(0,0.,0); + } else { + paccum=create_accum(n_step,t_prec,which_col-1); + } + run_mc(paccum,pmc,flipmode); + const Array &mcdata=paccum->get_mean(); + const Array &mcdata2=paccum->get_var(); + + mc_val(E_offset)=mcdata(0)-muxc; + mc_val(lro_offset)=1.-mcdata(1); + Array corr,mult; + extract_elements(&corr,mcdata,2+mu.get_size(),2+mu.get_size()+eci.get_size()); + pmc->get_cluster_mult(&mult); + fix_energy(&(mc_val(E_offset)), mult,corr,teci,T); + + Array x_mc,ptcorr_mc; + extract_elements(&ptcorr_mc,mcdata,2,2+mu.get_size()); + product(&x_mc,corr_to_fullconc,ptcorr_mc); + sum(&x_mc,x_mc,conc_to_fullconc_c); + extract_elements(&mc_val, x_offset,x_mc,0,x_mc.get_size()); + if (addmux) { + Real mux=inner_product(full_mu,x_mc); + mc_val(phi_offset)+=mux; + mc_val(E_offset)+=mux; + } + + delete paccum; + + mc_val(phi_offset)=0.; + if (do_quick) {mc_val=lte_val;} + + int reject=0; + for (int i=0; i Tmu(1+mu.get_size()); + Tmu(0)=T; + for (int i=0; ithreshold); + // debugfile << reject << endl; + } + { + ostrstream line; + line.setf(ios::fixed); + line.precision(sigdig); + line << T/kboltzman << delim; + print_vector(line,full_mu,delim); + print_vector(line,lte_val,delim); + print_vector(line,mf_val,delim); + print_vector(line,mc_val,delim); + line << do_quick << delim; + print_vector(line,corr,delim); + line << endl << '\0'; + if (!reject) {mcfile << line.str() << flush;} + if (!quiet) {cout << (reject ? 'R' : 'A') << delim << line.str() << flush;} + } + if (reject) { + if (!do_quick) {pmc->init_structure(*my_p_init_str);} + } + else { + kept_control << new Array(Tmu); + kept_lro << new Real(mc_val(lro_offset)); + old_control=cur_control; + } + do { + cur_control(0)=old_control(0)+dcontrol(0)*(2.*uniform01()-1.); + } while (cur_control(0)>lim_control(0) || cur_control(0)<0.); + for (int i=1; i &pts, const LinkedList &poly, const Array &ptsdata) { + LinkedList > apoly; + LinkedListFixedVector_to_LinkedListArray(&apoly,poly); + write(file,pts,apoly,ptsdata); +} + +void MeshExporter::write(ostream &file, const Array > &pts, const LinkedList > &poly, const Array &ptsdata) { + Array fpts; + ArrayArray_to_ArrayFixedVector(&fpts,pts); + write(file,fpts,poly,ptsdata); +} + +void VTKMeshExporter::write(ostream &file, const Array &pts, const LinkedList > &poly, const Array &ptsdata) { + if (pts.get_size()==0 || poly.get_size()==0) return; + file << "# vtk DataFile Version 3.0" << endl; + file << "vtk output" << endl; + file << "ASCII" << endl; + file << "DATASET POLYDATA" << endl; + file << "POINTS " << pts.get_size() << " float" << endl; + for (int p=0; p > t(poly); + int polytype=t->get_size(); + if (polytype==2) { + file << "LINES "; + } + else { + file << "POLYGONS "; + } + file << poly.get_size() << " " << poly.get_size()*(polytype+1) <get_size(); + for (int i=0; iget_size(); i++) { + file << " " << (*t)(i); + } + file << endl; + } + if (ptsdata.get_size()>0) { + file << "POINT_DATA " << pts.get_size() << endl; + file << "SCALARS mycolor float 1" << endl; + file << "LOOKUP_TABLE default" << endl; + for (int p=0; p *GenericPlugIn::list=NULL; + +SpecificPlugIn VTKPlugIn("vtk"); + +void combine_mesh(LinkedList *ppts, LinkedList > *ppoly, const Array &newpts, const LinkedList > &newpoly) { + int shift=ppts->get_size(); + LinkedListIterator > it(newpoly); + for (; it; it++) { + Array *p=new Array(*it); + (*ppoly) << p; + for (int i=0; iget_size(); i++) { + (*p)(i)+=shift; + } + } + (*ppts) << newpts; +} + +void transform(Array *ptpts, const Array pts, const rMatrix3d &op, const rVector3d &trans) { + ptpts->resize(pts.get_size()); + for (int i=0; i> charwidth(c); + get_string(&dummy,file," "); + int numpts; + file >> numpts; + charpts(c).resize(numpts); + for (int i=0; i> charpts(c)(i); + } + get_string(&dummy,file," "); + int numpoly; + file >> numpoly; + for (int i=0; i *ppoly=new Array(); + file >> (*ppoly); + charpoly(c) << ppoly; + } + get_string(&dummy,file,"\n"); + } + charwidth(' ')=0.5; +} + +void PolyFont3D::write(LinkedList *plistpts, LinkedList > *plistpoly, const rVector3d &where, const rVector3d &right, const rVector3d &up, char *string) { + rMatrix3d rot; + rot.set_column(0,right); + rot.set_column(1,up); + rot.set_column(2,right^up); + rVector3d t(where); + for (int i=0; i tpts; + transform(&tpts,charpts(c),rot,t); + combine_mesh(plistpts,plistpoly,tpts,charpoly(c)); + t+=right*(charwidth(c)+spacing); + } +} + +Real PolyFont3D::get_length(char *string, int includelast) { + Real len=0; + for (int i=0; i +#include "arraylist.h" +#include "stringo.h" +#include "plugin.h" + +class MeshExporter { +public: + virtual void write(ostream &file, const Array &pts, const LinkedList > &poly, const Array &ptsdata) {} + void write(ostream &file, const Array &pts, const LinkedList &poly, const Array &ptsdata); + void write(ostream &file, const Array > &pts, const LinkedList > &poly, const Array &ptsdata); +}; + +class VTKMeshExporter: public MeshExporter { + virtual void write(ostream &file, const Array &pts, const LinkedList > &poly, const Array &ptsdata); +}; + +void convert_to_rVector3d(Array *ppts, const Array > pts); +void combine_mesh(LinkedList *ppts, LinkedList > *ppoly, const Array &newpts, const LinkedList > &newpoly); +void transform(Array *ptpts, const Array pts, const rMatrix3d &op, const rVector3d &trans); + +template +void ArrayArray_to_ArrayFixedVector(Array > *paf, const Array > &aa) { + paf->resize(aa.get_size()); + for (int i=0; i +void LinkedListFixedVector_to_LinkedListArray(LinkedList > *pla, const LinkedList > &lf) { + LinkedListIterator > it(lf); + for (;it; it++) { + Array *pa=new Array(); + FixedVector_to_Array(pa,*it); + (*pla) << pa; + } +} + + +class PolyFont3D { + Array > charpts; + Array > > charpoly; + Array charwidth; + Real spacing; +public: + PolyFont3D(void): charpts(256),charpoly(256),charwidth(256),spacing(0.1) {} + PolyFont3D(ifstream &file): charpts(256),charpoly(256),charwidth(256),spacing(0.1) {init(file);} + int init(ifstream &file); + void write(LinkedList *plistpts, LinkedList > *plistpoly, const rVector3d &where, const rVector3d &right, const rVector3d &up, char *string); + Real get_length(char *string, int includelast=0); +}; + +#endif diff --git a/src/misc.hh b/src/misc.hh new file mode 100644 index 0000000..3c0fe4e --- /dev/null +++ b/src/misc.hh @@ -0,0 +1,108 @@ +#ifndef __MISC_H__ +#define __MISC_H__ + +#include +#include +#include +#include "machdep.h" + +// -------------------------- divers + +#define MAX_LINE_LEN 1024 + +#define SMOD(x,m) (((x)+(m)) % (m)) + // modulo signe, ex: SMOD(-1,4)=3 + +#define MAX(x,y) ((x)>(y) ? (x) : (y)) +#define MIN(x,y) ((x)<(y) ? (x) : (y)) +#define ABS(x) ((x)<0 ? (-(x)) : (x) ) + +template +inline T sqr(const T x) {return x*x;} + +/* +template +T min(T a, T b) { + return (a +T max(T a, T b) { + return (a>b ? a : b); +} +*/ + +template +T sgn(T b) { + return (b>(T)0 ? (T)1 : (b<(T)0 ? (T)(-1) : (T)0)); +} + +template +inline T ipow(T base, int exponent) { + if (exponent<0) {return 1./ipow(base,-exponent);} + T accu=(T)1; + while (exponent>0) { + accu*=base; + exponent--; + } + return accu; +} + +template +inline void swap(T *a,T *b) { + T tmp=*a; + *a=*b; + *b=tmp; +} + +template +int is_between(T bw, T a, T b) { + return (a +#include "parse.h" +#include "getvalue.h" +#include "meshutil.h" +#include "version.h" + +void calc_outshift(Array *pshift, const Array &vertex) { + rVector3d middle(0.,0.,0.); + for (int i=0; iresize(vertex.get_size()); + for (int i=0; i > rawpts; + read_table(&rawpts,cin,1); + Array2d tmat; + Array shft; + if (dotri) { + tmat.resize(3,4); + shft.resize(4); + zero_array(&tmat); + zero_array(&shft); + tmat(0,2)=1.; + tmat(0,3)=0.5; + tmat(1,3)=sqrt(3.)/2.; + tmat(2,0)=1./zscale; + shft(0)=-zmin; + } + else if (dotetra) { + tmat.resize(3,5); + shft.resize(5); + zero_array(&tmat); + zero_array(&shft); + tmat(0,2)=1.; + tmat(0,3)=0.5; + tmat(1,3)=sqrt(3.)/2.; + tmat(0,4)=0.5; + tmat(1,4)=1./sqrt(12.); + tmat(2,4)=sqrt(2./3.); + } + else { + ERRORQUIT("Must specify -tri or -tetra"); + } + for (int l=0; l tpt,tmp; + sum(&tmp,rawpts(l),shft); + product(&tpt,tmat,tmp); + for (int c=0; c0) {cout << " ";} + cout << tpt(c); + } + cout << endl; + } + } + exit(0); + } + + MeshExporter *pexporter=GenericPlugIn::create(exporter_label); + + cout.setf(ios::fixed); + cout.precision(sigdig); + + PolyFont3D font; + Array labels(4); + Real fontsize=0.05; + if (strlen(allvertexlabels)>0) { + AutoString aallvertexlabels(allvertexlabels); + char *begstr=aallvertexlabels; + char *endstr=begstr+strlen(begstr); + for (int l=0; l colors(1); + colors(0)=color; + + if (dotri) { + Array vertex(3); + vertex(0)=rVector3d(0.,0.,0.); + vertex(1)=rVector3d(1.,0.,0.); + vertex(2)=rVector3d(0.5,sqrt(3.)/2.,0.); + if (strlen(allvertexlabels)>0) { + Array outshift; + calc_outshift(&outshift,vertex); + LinkedList listpts; + LinkedList > listpoly; + rVector3d right=rVector3d(1.,0.,0.)*fontsize; + rVector3d up=rVector3d(0.,0.,1.)*fontsize; + for (int i=0; i<3; i++) { + rVector3d where=vertex(i)+rVector3d(0.,0.,(zmax-zmin)/zscale/2.0)+outshift(i)*fontsize*2.-right*font.get_length(labels(i))/2.; + font.write(&listpts,&listpoly,where,right,up,labels(i)); + } + Array apts; + LinkedList_to_Array(&apts,listpts); + pexporter->write(cout,apts,listpoly,colors); + } + else { + Array pts(6); + for (int i=0; i<3; i++) { + pts(i)=vertex(i); + pts(3+i)=vertex(i)+rVector3d(0.,0.,(zmax-zmin)/zscale); + } + LinkedList > polys; + for (int i=0; i<3; i++) { + Array *ppoly=new Array(2); + (*ppoly)(0)=i; + (*ppoly)(1)=(i+1)%3; + polys << ppoly; + ppoly=new Array(2); + (*ppoly)(0)=i+3; + (*ppoly)(1)=((i+1)%3)+3; + polys << ppoly; + ppoly=new Array(2); + (*ppoly)(0)=i; + (*ppoly)(1)=i+3; + polys << ppoly; + } + pexporter->write(cout,pts,polys,colors); + } + } + if (dotetra) { + Array vertex(4); + vertex(0)=rVector3d(0.,0.,0.); + vertex(1)=rVector3d(1.,0.,0.); + vertex(2)=rVector3d(0.5,sqrt(3.)/2.,0.); + vertex(3)=rVector3d(0.5,1./sqrt(12.),sqrt(2./3.)); + if (strlen(allvertexlabels)>0) { + Array outshift; + calc_outshift(&outshift,vertex); + LinkedList listpts; + LinkedList > listpoly; + rVector3d right=rVector3d(1.,0.,0.)*fontsize; + rVector3d up=rVector3d(0.,0.,1.)*fontsize; + for (int i=0; i<4; i++) { + rVector3d where=vertex(i)+outshift(i)*fontsize*2.-right*font.get_length(labels(i))/2.; + font.write(&listpts,&listpoly,where,right,up,labels(i)); + } + Array apts; + LinkedList_to_Array(&apts,listpts); + pexporter->write(cout,apts,listpoly,colors); + } + else { + LinkedList > polys; + for (int i=1; i<4; i++) { + for (int j=0; j *ppoly=new Array(2); + (*ppoly)(0)=i; + (*ppoly)(1)=j; + polys << ppoly; + } + } + pexporter->write(cout,vertex,polys,colors); + } + } + +} diff --git a/src/mkteci b/src/mkteci new file mode 100755 index 0000000..00c7b33 --- /dev/null +++ b/src/mkteci @@ -0,0 +1,50 @@ +#!/bin/csh + +if ( $#argv == 0 ) then + echo No T-dependent eci files specified: using T-independent file eci.out only. + echo Use -h option for help. +endif + +if ( "xx$1" == "xx-h" ) then + echo "Syntax: mkteci file1.eci ..." + echo " where file1.eci etc. is a list of T-dependent eci files obtained with" + echo " the clusterexpand command, e.g. " + echo " clusterexpand fvib in the case of vibrational free energy or" + echo " clusterexpand felec in the case of electronic free energy." + echo "Usually the file list is: fvib.eci felec.eci" + echo " ^vibrational ^electronic free energy " + exit +endif + +if ( ! -e Trange.in ) then + echo Creating default Trange.in file... Please rerun mkteci. + echo 2000 21 >! Trange.in + echo "(see svsl -h for more info)" + exit 1 +endif + +set nblin=`(cat eci.out | wc -l ; awk '{print $2}' Trange.in) | awk '{c=$1; getline; t=$1; print (c+1)*t}'` + +set filelist="" + +foreach file ( $* ) + set curfile=`echo ${file}.eci | sed 's/.eci.eci/.eci/g'` + if ( ! -e $curfile ) then + echo $curfile does not exist + exit 1 + endif + if ( `cat $curfile | wc -l` != $nblin ) then + echo The length of $curfile is incompatible with the lengths of eci.out and the Trange.in file. + echo You may need to rerun clusterexpand and/or recalculate free energies for each structure. + exit 1 + endif + set filelist="$filelist $curfile" +end + +awk 'BEGIN {getline < "Trange.in"; nT=$2; neci=0;} {neci++; eci[neci]=$1;} END {for (T=1; T<=nT; T++) {for (n=1; n<=neci; n++) {print eci[n];}; print "";}}' eci.out >! E.eci + +cat Trange.in >! teci.out + +paste E.eci $filelist | awk '{if ($1=="") {print "";} else {n=split($0,a); s=0; for (i=1; i<=n; i++) {s+=a[i];} print s;}}' >> teci.out + +rm -f E.eci diff --git a/src/mlhte.c++ b/src/mlhte.c++ new file mode 100644 index 0000000..5dcb2a3 --- /dev/null +++ b/src/mlhte.c++ @@ -0,0 +1,701 @@ + +class Multi_LHTE { + Array<> site_lookup; + Array<> mean_conc; +public: + void init( const Structure &lattice, const Array &site_type_list, const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list); + void set_mean_field(int mf_on); + void set_eci(const Array &_eci); + void set_T_mu(Real _T, const Array &_mu); + Real get_phi(); + const Array & get_concentration(void); +}; + +#include "drawpd.h" + +MF_ThermoData::MF_ThermoData(void): PhaseThermoData() {} + +MF_ThermoData::MF_ThermoData( const Structure &lattice, const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, const LinkedList &eci_list): PhaseThermoData() { + init(lattice,space_group,str,cluster_list,eci_list); + } + +void MF_ThermoData::init(const Structure &lattice, const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, const LinkedList &eci_list) { + cur_phase=this; + + volume=str.atom_pos.get_size(); + max_flip=2.0; + + E_ref=find_empty_eci(cluster_list,eci_list)/(Real)(lattice.atom_pos.get_size()); + ideal_spin.resize(str.atom_type.get_size()); + for (int i=0; i o_cluster; + Array o_eci; + find_clusters_overlapping_site(&o_cluster,&o_eci, + str.atom_pos(s),lattice,space_group,cluster_list,eci_list,1); + clusters(s).resize(o_cluster.get_size()); + eci(s).resize(o_eci.get_size()); + for (int c=0; c spin=ideal_spin; + Array dE(spin.get_size()); + Real max_diff=MAXFLOAT; + int iter=0; + while (max_diff>spin_precision && iter<10000) { + iter++; + for (int s=0; s 1e2*T) { + new_spin=spin(s); + } + else { + new_spin=(-1.+1.*exp(-2.*dE(s)/T))/(1.+exp(-2.*dE(s)/T)); + } + new_spin=(new_spin+spin(s))/2.; + max_diff=MAX(max_diff,fabs(new_spin-spin(s))); + spin(s)=new_spin; + } + } + Real flip=0.; + for (int i=0; imax_flip) { + cur_x=0; + for (int s=0; s0) { + for (int s=0; s> volume; + file >> ideal_spin; + file >> clusters; + file >> eci; + file >> max_flip; + file >> E_ref; + } + + void MF_ThermoData::write(ostream &file) { + file << object_label() << endl; + file << volume << endl; + file << ideal_spin << endl; + file << clusters << endl; + file << eci << endl; + file << max_flip << endl; + file << E_ref << endl; + } + +Real MF_ThermoData::spin_precision=1e-3; + +LTE_ThermoData::LTE_ThermoData(void): PhaseThermoData() {} + +LTE_ThermoData::LTE_ThermoData(const Structure &lattice, + const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list): PhaseThermoData() { + init(lattice,space_group,str,cluster_list,eci_list); +} + +void LTE_ThermoData::init(const Structure &lattice, + const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list) { + cur_phase=this; + + x0=0.; + volume=str.atom_pos.get_size(); + E0=volume*find_empty_eci(cluster_list,eci_list)/(Real)(lattice.atom_pos.get_size()); + + dE.resize(str.atom_pos.get_size()); + dx.resize(str.atom_pos.get_size()); + zero_array(&(dE)); + zero_array(&(dx)); + + rMatrix3d inv_cell=!str.cell; + for (int s=0; s o_cluster; + Array o_eci; + find_clusters_overlapping_site(&o_cluster,&o_eci, + str.atom_pos(s),lattice,space_group,cluster_list,eci_list,1); + for (int c=0; cdF) return; + if (dF/T < 20) { + Real b=exp(-dF/T); + num+=dx(i)*b; + numE+=dF*b; + den+=b; + } + } + cur_phi=(E0-mu*x0-T*den)/volume; + cur_x=num/volume; + cur_E=(E0-mu*x0+numE)/volume; + } + } + + Real LTE_ThermoData::E(Real T, Real mu) { + set_T_mu(T,mu); + return cur_E; + } + + void LTE_ThermoData::read(istream &file) { + file >> E0; + file >> x0; + file >> volume; + file >> dE; + file >> dx; + } + + void LTE_ThermoData::write(ostream &file) { + file << object_label() << endl; + file << E0 << endl; + file << x0 << endl; + file << volume << endl; + file << dE << endl; + file << dx << endl; + } + + Real HTE_ThermoData::F_of_x(Real T, Real x) { + Real e=0; + for (int i=0; i1.-zero_tolerance) { + return e; + } + return e+T*((1+x)*log(1+x)+(1-x)*log(1-x)-2.*log(2.))/2.; + } + + Real HTE_ThermoData::mu_of_x(Real T, Real x) { + if ((1.-fabs(x))mu ? -1 : 1); + while ( side*(mu-mu_of_x(T,x)) > 0. ) { + oldx=x; + x=(side+x)/2.; + } + Real min_x=MIN(x,oldx); + Real max_x=MAX(x,oldx); + while ((max_x-min_x)>dx) { + Real x=(max_x+min_x)/2.; + if (mu_of_x(T,x)>mu) { + max_x=x; + } + else { + min_x=x; + } + } + return (max_x+min_x)/2.; + } + +HTE_ThermoData::HTE_ThermoData(void): PhaseThermoData() {cur_phase=this;} + +HTE_ThermoData::HTE_ThermoData(const Structure &lattice, + const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list): PhaseThermoData() { + init(lattice,space_group,str,cluster_list,eci_list); +} + +void HTE_ThermoData::init(const Structure &lattice, + const SpaceGroup &space_group, + const Structure &str, + const LinkedList &cluster_list, + const LinkedList &eci_list) { + simple_init(lattice.atom_pos.get_size(),space_group,cluster_list,eci_list); +} + +void HTE_ThermoData::simple_init(int atom_per_unit_cell, + const SpaceGroup &space_group, + const LinkedList &cluster_list, + const LinkedList &eci_list) { + cur_phase=this; + int max_size=0; + LinkedListIterator c(cluster_list); + for (; c; c++) { + max_size=MAX(max_size,c->get_size()); + } + LinkedListIterator e(eci_list); + poly_x.resize(max_size+1); + zero_array(&poly_x); + c.init(cluster_list); + for (; c; c++,e++) { + poly_x(c->get_size())+=(*e)*(Real)calc_multiplicity(*c,space_group.cell,space_group.point_op,space_group.trans)/(Real)atom_per_unit_cell; + } + } + + void HTE_ThermoData::set_T_mu(Real T, Real mu) { + cur_x=x_of_mu(T,mu); + cur_phi=F_of_x(T,cur_x)-mu*cur_x; + } + + void HTE_ThermoData::read(istream &file) { + file >> poly_x; + } + + void HTE_ThermoData::write(ostream &file) { + file << object_label() << endl; + file << poly_x; + } + +Real HTE_ThermoData::dx=1e-3; + + SampledThermoData::SampledThermoData(void): PhaseThermoData() {} + + SampledThermoData::SampledThermoData(Real _T0, Real _dT, const Array &_mu0, + Real _dmu, const Array &_xs, + const Array &_phis): + PhaseThermoData(), T0(_T0), dT(_dT), mu0(_mu0), dmu(_dmu), xs(_xs), phis(_phis) { + cur_phase=this; + } + + void SampledThermoData::set_T_mu(Real T, Real mu) { + cur_phi=MAXFLOAT; + cur_x=0.; + int iT=(int)floor((T-T0)/dT); + if (iT<0 || iT>=mu0.get_size()-1) return; + Real fT=(T-T0-(Real)iT*dT)/dT; + int imu[2]; + for (int l=0; l<2; l++) { + imu[l]=(int)floor((mu-mu0(iT+l))/dmu); + if (imu[l]<0) { + cur_x=xs(iT+l)(0); + return; + } + if (imu[l]>=xs(iT+l).get_size()-1) { + cur_x=xs(iT+l)(xs(iT+l).get_size()-1); + return; + } + } + Real fmu=(mu-(mu0(iT)+imu[0]*dmu))/dmu; + cur_x =(1-fT)*((1-fmu)*xs(iT )(imu[0])+fmu*xs(iT )(imu[0]+1)) + + fT *((1-fmu)*xs(iT+1)(imu[1])+fmu*xs(iT+1)(imu[1]+1)); + cur_phi=(1-fT)*((1-fmu)*phis(iT )(imu[0])+fmu*phis(iT )(imu[0]+1)) + + fT *((1-fmu)*phis(iT+1)(imu[1])+fmu*phis(iT+1)(imu[1]+1)); + } + + void SampledThermoData::read(istream &file) { + file >> T0; + file >> dT; + file >> mu0; + file >> dmu; + file >> xs; + file >> phis; + } + + void SampledThermoData::write(ostream &file) { + file << object_label() << endl; + file << T0 << endl; + file << dT << endl; + file << mu0 << endl; + file << dmu << endl; + file << xs << endl; + file << phis << endl; + } + + PhaseThermoData* PhaseListT::find_phase(Real T) { + LinkedListIterator i(list); + LinkedListIterator j(T_limit); + while (j && (*j)set_T_mu(T,mu); + cur_phi=phase->phi(); + cur_x=phase->x(); + } + + void PhaseListT::read(istream &file) { + int size; + file >> size; + for (int i=0; i> T; + T_limit << new Real(T); + } + for (int i=0; i iT(T_limit); + for ( ; iT; iT++) { + file << *iT << endl; + } + LinkedListIterator il(list); + for ( ; il; il++) { + il->write(file); + } + } + + PhaseThermoData* PhaseList::find_phase(Real T, Real mu) { + LinkedListIterator i(list); + Real min_phi=MAXFLOAT; + PhaseThermoData *phase=NULL; + for (; i; i++) { + if (i->phi(T,mu)phi(); + phase=i; + } + } + return phase; + } + + PhaseList::PhaseList(void): PhaseThermoData(), list() {cur_phase=this;} + + PhaseThermoData *PhaseList::add_phase(PhaseThermoData *phase) { + list << phase; + return phase; + } + + void PhaseList::set_T_mu(Real T, Real mu) { + PhaseThermoData *phase=find_phase(T,mu); + phase->set_T_mu(T,mu); + cur_phi=phase->phi(); + cur_x=phase->x(); + } + + void PhaseList::read(istream &file) { + int size; + file >> size; + for (int i=0; i il(list); + for ( ; il; il++) { + il->write(file); + } + } + + MiscibilityGap::MiscibilityGap(void): PhaseThermoData() {hi=NULL; lo[0]=NULL; lo[1]=NULL;} + + MiscibilityGap::MiscibilityGap(PhaseThermoData *_hi, PhaseThermoData *_lo0, PhaseThermoData *_lo1): PhaseThermoData() { + hi=_hi; + lo[0]=_lo0; + lo[1]=_lo1; + } + + MiscibilityGap::~MiscibilityGap() {delete hi; delete lo[0]; delete lo[1];} + + void MiscibilityGap::set_T_mu(Real T, Real mu) { + if (lo[0]->phi(T,mu) < lo[1]->phi(T,mu)) { + if (hi->phi(T,mu) < lo[0]->phi(T,mu)) + cur_phase=hi; + else + cur_phase=lo[0]; + } + else { + if (hi->phi(T,mu) < lo[1]->phi(T,mu)) + cur_phase=hi; + else + cur_phase=lo[1]; + } + cur_phi=cur_phase->phi(); + cur_x=cur_phase->x(); + } + + void MiscibilityGap::read(istream &file) { + hi=read_phase(file); + lo[0]=read_phase(file); + lo[1]=read_phase(file); + } + + void MiscibilityGap::write(ostream &file) { + file << object_label() << endl; + hi->write(file); + lo[0]->write(file); + lo[1]->write(file); + } + + PhaseObjectList::PhaseObjectList(void): list() { + list << new MF_ThermoData() << new LTE_ThermoData() + << new HTE_ThermoData() << new SampledThermoData() + << new PhaseListT() << new PhaseList() + << new MiscibilityGap(); + } + +PhaseObjectList phaseobjectlist; + +PhaseThermoData *read_phase(istream &file) { + char buf[MAX_LINE_LEN]; + buf[0]=0; + do { + file.get(buf,MAX_LINE_LEN-1); + file.get(); + } while (strlen(buf)==0); + if (file.eof()) return NULL; + LinkedListIterator i(phaseobjectlist.list); + for ( ;i; i++) { + if (strcmp(buf,i->object_label())==0) { + PhaseThermoData *phase=i->new_object(); + phase->read(file); + return phase; + } + } + return NULL; +} + +Real tiny_phi=1e-4; + +void recurse_phase_boundaries(LinkedList *pb_list, const LinkedList &phases, Real T, Real mu0, Real mu1, Real dx) { + LinkedListIterator a(phases); + PhaseThermoData *phase[2]={NULL,NULL}; + Real phi[2]={MAXFLOAT,MAXFLOAT}; + for ( ; a; a++) { + if (a->phi(T,mu0)phi(T,mu0); + } + if (a->phi(T,mu1)phi(T,mu1); + } + } + if (phase[0]!=phase[1] || + (phase[0]==phase[1] && phase[0]->get_sub_phase(T,mu0)!=phase[1]->get_sub_phase(T,mu1)) + ) { + Real mu; + Real phi0=phase[0]->phi(T,mu0); + Real phi1=phase[1]->phi(T,mu1); + Real x0=phase[0]->x(T,mu0); + Real x1=phase[1]->x(T,mu1); + // cout << phi0 << " " << x0 << " " << phi1 << " " << x1 << endl; + mu=((phi1+x1*mu1)-(phi0+x0*mu0))/(x1-x0); + // cout << mu0 << " " << mu << " " << mu1 << endl; + if (mumu1-0.1*(mu1-mu0)) { + mu=(mu0+mu1)/2.; + } + if (fabs(phase[0]->x(T,mu0) - phase[0]->x(T,mu0-(mu-mu0))) < dx && fabs(phase[1]->x(T,mu1) - phase[1]->x(T,mu1+(mu1-mu))) < dx ) { + PhaseBoundary *pb=new PhaseBoundary; + pb->x[0]=phase[0]->x(T,mu0); + pb->x[1]=phase[1]->x(T,mu1); + pb->phase[0]=phase[0]; + pb->phase[1]=phase[1]; + (*pb_list) << pb; + } + else { + recurse_phase_boundaries(pb_list, phases,T,mu0,mu,dx); + recurse_phase_boundaries(pb_list, phases,T,mu,mu1,dx); + } + } +} + +void calc_phase_boundaries(LinkedList *pb_list, const LinkedList &phases, + Real T, Real dx, const Array &mu_hints) { + for (int i=1; i &pb_list1, const LinkedList &pb_list2) { + LinkedListIterator i1(pb_list1); + LinkedListIterator i2(pb_list2); + for (; i1 && i2; i1++, i2++) { + if (i1->phase[0]!=i2->phase[0] || i1->phase[1]!=i2->phase[1]) break; + } + if (i1 || i2) { + return 0; + } + else { + return 1; + } +} + +void add_one_T(LinkedList *two_phase_list, Real T, const LinkedList &pb_list) { + LinkedListIterator i(pb_list); + for (; i; i++) { + LinkedListIterator j(*two_phase_list); + for (; j; j++) { + if (i->phase[0]==j->phase[0] && i->phase[1]==j->phase[1]) { + break; + } + } + if (!j) { + TwoPhaseRegion *tpr=new TwoPhaseRegion; + tpr->phase[0]=i->phase[0]; + tpr->phase[1]=i->phase[1]; + two_phase_list->add(tpr,j); + } + Array *conc=new Array(2); + (*conc)(0)=i->x[0]; + (*conc)(1)=i->x[1]; + j->x_list << conc; + j->T_list << new Real(T); + } +} + +void calc_phase_boundaries(LinkedList *two_phase_list, const LinkedList &phases, + Real dT, Real dx, const Array &mu_hints) { + LinkedList old_pb_list; + LinkedList pb_list; + calc_phase_boundaries(&old_pb_list, phases,dT,dx,mu_hints); + Real T=2*dT; + while (1) { + calc_phase_boundaries(&pb_list, phases,T,dx,mu_hints); + if (!same_phases(pb_list,old_pb_list)) { + LinkedListIterator i(old_pb_list); + LinkedListIterator j(old_pb_list); + j++; + while (j) { + LinkedListIterator k(pb_list); + for ( ; k; k++) { + if (k->phase[0]==i->phase[1] || k->phase[1]==i->phase[1]) break; + } + if (!k) { + Real mean=(i->x[1] + j->x[0])/2.; + i->x[1]=mean; + j->x[0]=mean; + } + i++; + j++; + } + add_one_T(two_phase_list, T,old_pb_list); + } + add_one_T(two_phase_list, T,pb_list); + if (pb_list.get_size()==0) break; + T+=dT; + old_pb_list.delete_all(); + transfer_list(&old_pb_list,&pb_list); + } +} + +void write_phase_diagram(const LinkedList &two_phase_list, ostream &file) { + LinkedListIterator i(two_phase_list); + for (; i; i++) { + Array x; + Array T; + LinkedList_to_Array(&x,i->x_list); + LinkedList_to_Array(&T,i->T_list); + for (int j=0; j=0; j--) { + file << x(j)(1) << " " << T(j) << endl; + } + file << endl; + } +} + +Real E_from_phi(Real T, Real mu, PhaseThermoData *p) { + Real dT=MIN(T,1e-3); + return p->phi(T,mu)-T*(p->phi(T+dT,mu)-p->phi(T-dT,mu))/(2*dT); +} diff --git a/src/mmaps.c++ b/src/mmaps.c++ new file mode 100644 index 0000000..d7ee281 --- /dev/null +++ b/src/mmaps.c++ @@ -0,0 +1,541 @@ +#include +#include +#include +#include +#include +#include "parse.h" +#include "mrefine.h" +#include "getvalue.h" + +#include "version.h" + +extern char *helpstring; + +int sigdig=6; + +// Creates a directory containing a file describing a new structure.; +// ARG: +// str: (IN) structure to write out; +// lat: (IN) \ ; +// site_type_list: (IN) | describes the lattice (see parse.h); +// atom_label: (IN) / ; +// axes: (IN) coordinate system in which to express coordinates; +void write_structure_file(const StructureInfo &str, const Structure &lat, + const Array &site_type_list, const Array &atom_label, const rMatrix3d &axes) { + mkdir(str.label,S_IRWXU | S_IRWXG | S_IRWXO); + if (chdir(str.label)==0) { + ofstream file("str.out"); + file.setf(ios::fixed); + file.precision(sigdig); + write_structure(str,lat,site_type_list,atom_label, axes, file); + ofstream waitfile("wait"); + chdir(".."); + } +} + +// Writes all the output files describing the current state; +// of the cluster expansion (see class CEFitInfo in raffine.h). +void write_fit_info(const CEFitInfo &fitinfo, const Structure &lattice, + const Array &site_type_list, const Array &atom_label, const rMatrix3d &axes, const char *propnameext="eci.out") { + ofstream log("maps.log"); + log << "Maps version " MAPS_VERSION << endl; + if (fitinfo.status & CEFitInfo::fit_impossible) { + log << "Not enough known energies to fit CE" << endl; + } + else { +#ifdef SLOWENUMALGO + log << "The internal database of structures extends up to " << fitinfo.max_volume*lattice.atom_type.get_size() << " atoms/unit cell, see predstr.out" << endl; +#else + log << "The internal database of structures extends at least up to " << MAX(0,fitinfo.max_volume-1)*lattice.atom_type.get_size() << " atoms/unit cell, see predstr.out" << endl; +#endif + if (fitinfo.status & CEFitInfo::gs_problem) { + log << "Among structures of known energy, true ground states differ from fitted ground states" << endl; + } + else { + log << "Among structures of known energy, true and predicted ground states agree" << endl; + } + if (fitinfo.status & CEFitInfo::new_gs) { + log << "New ground states with at most " << fitinfo.max_volume*lattice.atom_type.get_size() << " atoms/unit cell predicted , see predstr.out" << endl; + } + if (fitinfo.status==CEFitInfo::fit_ok) { + //log << "No other ground states of " << fitinfo.max_volume*lattice.atom_type.get_size() << " atoms/unit cell or less exist." << endl; + log << "No other ground states of " << MAX(0,fitinfo.max_volume-1)*lattice.atom_type.get_size() << " atoms/unit cell or less exist." << endl; + } + // insert range todo; + log << "Crossvalidation score: " << fitinfo.cv << endl; + ofstream fit_file("fit.out"); + fit_file.setf(ios::fixed); + fit_file.precision(sigdig); + for (int i=0; ilabel << endl; + } + ofstream gs_file("gs.out"); + gs_file.setf(ios::fixed); + gs_file.precision(sigdig); + for (int i=0; ilabel << endl; + } + + { + ofstream gs_connect("gs_connect.out"); + LinkedListIterator i(fitinfo.hull); + for (; i; i++) { + for (int j=0; jpts.get_size(); j++) { + gs_connect << fitinfo.pstr(i->pts(j))->label << " "; + } + gs_connect << endl; + } + } + + { + // print chemical potentials; + int dimlong=fitinfo.conc_to_fullconc.get_size()(0); + int dimshort=fitinfo.conc_to_fullconc.get_size()(1); + Array2d CC,CCi,A,CCiAt; + Array2d mu_to_fullmu; + inner_product(&CC,fitinfo.corr_to_fullconc,fitinfo.corr_to_fullconc); + invert_matrix(&CCi,CC); + A.resize(fitinfo.corr_to_conc.get_size()(0),fitinfo.corr_to_conc.get_size()(1)+1); + zero_array(&A); + for (int i=0; i > gs_mu(fitinfo.gs_list.get_size()); + for (int j=0; j gs_nb_mu(fitinfo.gs_list.get_size()); + zero_array(&gs_nb_mu); + mufile << "chemical potentials stabilizing multiphase equilibria" << endl; + mufile << "ground state indices , structure labels : chemical potentials" << endl; + LinkedListIterator i(fitinfo.hull); + for (; i; i++) { + Array full_mu; + Array short_mu(i->up.get_size()-1); + Real e=i->up(short_mu.get_size()); + for (int j=0; jup(j))/e; + } + product(&full_mu,mu_to_fullmu,short_mu); + for (int j=0; jc)/e; + } + /* + for (int j=0; jpts.get_size(); j++) { + cerr << j << " " << fitinfo.fitted_energy(i->pts(j))-inner_product(full_mu,fitinfo.concentration(i->pts(j))) << " "; + } + cerr << endl; + */ + for (int j=0; jpts.get_size(); j++) { + int gs=index_in_array(fitinfo.gs_list,i->pts(j)); + sum(&gs_mu(gs),gs_mu(gs),full_mu); + gs_nb_mu(gs)++; + mufile << gs << " "; + } + mufile << " , "; + for (int j=0; jpts.get_size(); j++) { + mufile << fitinfo.pstr(i->pts(j))->label << " "; + } + mufile << ": "; + for (int j=0; jlabel << " : "; + for (int i=0; i> new_energy; + } + } + MyMPI_BcastStream(&new_energy); + if (new_energy!=MAXFLOAT) { + // if the file energy contains a valid number use it as energy; + if (atom_factor>0) { + new_energy*=atom_factor/(Real)(pstr->atom_pos.get_size()); + } + else { + new_energy*=fabs(atom_factor); + } + } + else { + // if anythings goes wrong: error; + new_status=StructureInfo::error; } + } + else { + // if neither error nor calculated => is being calculated; + new_status=StructureInfo::busy; + } + // a structure has changed if its status or energy has changed; + if (new_status!=pstr->status) changed=1; + if (new_status==StructureInfo::calculated && pstr->status==StructureInfo::calculated) { + if (new_energy!=pstr->energy) changed=1; + } + // update values in memory; + pstr->status=new_status; + pstr->energy=new_energy; + // indicates if the structure has changed; + return changed; +} + +int update_all_structures(StructureBank *pstr_bank, const Structure &lattice, const Array &site_type_list, const Array &atom_label, char *propname="energy", int intensive=0) { + Real atom_factor=(intensive ? -lattice.atom_pos.get_size() : lattice.atom_pos.get_size()); + int changed=0; + // list structures on disk; + LinkedList label_on_disk; + if (MyMPIobj.is_root()) { + system("ls */str.out 2> /dev/null | sed 's+/str.out++g' > strlist.out"); + ifstream strfile("strlist.out"); + while (strfile && !strfile.eof()) { + char buf[MAX_LINE_LEN]; + buf[0]=0; + strfile.get(buf,MAX_LINE_LEN-1); + char tmp; + strfile.get(tmp); + if (strlen(buf)==0) break; + label_on_disk << new AutoString(buf); + } + unlink("strlist.out"); // cleanup structure list file; + } + MyMPI_BcastStream(&label_on_disk); + + LinkedListIterator i(pstr_bank->get_structure_list()); + for (; i; i++) { + if (!(i->status & StructureInfo::unknown)) { + LinkedListIterator i_disk(label_on_disk); + for ( ; i_disk; i_disk++) { + if (i->label==*i_disk) break; + } + if (!i_disk) { + i->status=StructureInfo::unknown; + changed=1; + } + else { + if (chdir(i->label)==0) { + if (update_structure(&(*i),atom_factor,propname)) changed=1; + delete label_on_disk.detach(i_disk); + chdir(".."); + } + } + } + } + + LinkedListIterator i_disk(label_on_disk); + for (; i_disk; i_disk++) { + int str_is_ok=0; + StructureInfo str; + if (MyMPIobj.is_root()) { + if (chdir(*i_disk)==0) { + ifstream strfile("str.out"); + if (strfile) { + str_is_ok=parse_structure_file(&str.cell,&str.atom_pos,&str.atom_type,atom_label,strfile); + } + chdir(".."); + } + else { + cerr << "Unable to cd to " << *i_disk << endl; + } + if (!str_is_ok) cerr << "Error while reading structure " << *i_disk << endl; + } + MyMPI_BcastStream(&str_is_ok); + MyMPI_BcastStream(&str); + + if (str_is_ok) { + if (str.atom_pos.get_size()==0) { + cerr << "Problem reading structure " << *i_disk << endl; + ERRORQUIT("Aborting."); + } + if (fix_atom_type(&str,lattice,site_type_list,0)) { + StructureInfo *pstr; + if (pstr_bank->add_structure(str,&pstr)) { + pstr->label.set(*i_disk); + if (update_structure(pstr,atom_factor,propname)) changed=1; + } + else { + if (pstr->status & StructureInfo::unknown) { + pstr->label.set(*i_disk); + if (update_structure(pstr,atom_factor,propname)) changed=1; + } + else { + if (MyMPIobj.is_root()) cerr << "Structure " << *i_disk <<" not loaded since it is the same as structure " << pstr->label << endl; + } + } + } + else { + if (MyMPIobj.is_root()) cerr << "Unable to read structure " << *i_disk << " due to geometric incompatibilities with the lattice." << endl; + } + } + } + return changed; +} + +#define MAPS_IS_RUNNING "maps_is_running" + +int main(int argc, char *argv[]) { + MyMPIobj.init(argc,argv); + // parse command line arguments or display help (see getvalue.h); + int dohelp=0; + char *latticefilename="lat.in"; + int polltime=10; + int max_multiplet=4; + int dummy=0; + int quiet=0; + int gsnbatom=0; + char *conc_file="crange.in"; + int do2D=0; + Real complexity_exp=3.; + Real high_energy=MAXFLOAT; + int user_max_vol=32000; + char *predictor_labels=""; + char *algo_label="std"; + char *corrfunc_label="trigo"; + char *propname="energy"; + int ignore_gs=0; + int intensive=0; + AskStruct options[]={ + {"","MIT Ab initio Phase Stability (MAPS) code " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latticefilename}, + {"-z","Tolerance for finding symmetry operations (default: 1e-3)",REALVAL,&zero_tolerance}, + {"-c","Exponent of the order of complexity (default: 3)",REALVAL,&complexity_exp}, + {"-t","Time between disk reads in sec (default: 10 sec)",INTVAL,&polltime}, + {"-m","Maximum number of points in cluster (default 4)",INTVAL,&max_multiplet}, + {"-g","Extend ground state search up to structures having at least that many atoms.",INTVAL,&gsnbatom}, + {"-cr","Concentration region input file",STRINGVAL,&conc_file}, + {"-he","Highest predicted energy, above ground state hull, allowed when generating structures (default: no limit)",REALVAL,&high_energy}, + {"-mv","Maximum volume (number of atom per unit cell) allowed when generating structures (default: no limit)",INTVAL,&user_max_vol}, + {"-2d","Find supercells along a and b axes only",BOOLVAL,&do2D}, + {"-p","Predictor plugins to use (examples: -p=es or -p=es_cs)",STRINGVAL,&predictor_labels}, + {"-ks","same as -p",STRINGVAL,&predictor_labels}, + {"-fa","Select fitting algorithm (default: built-in)",STRINGVAL,&algo_label}, + {"-crf","Select correlation functions (default: trigo)",STRINGVAL,&corrfunc_label}, + {"-pn","Property to cluster expand (default: energy)",STRINGVAL,&propname}, + {"-ig","Ignore whether cluster expansion predicts correct ground states",BOOLVAL,&ignore_gs}, + {"-pa","Quantity to expand is already per atom",BOOLVAL,&intensive}, + {"-q","Quiet mode (do not print status to stderr)",BOOLVAL,&quiet}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + if (MyMPIobj.file_exists(MAPS_IS_RUNNING)) { + ERRORQUIT("Maps is already running in this directory. To override this error, type rm " MAPS_IS_RUNNING); + } + if (MyMPIobj.is_root()) { + ofstream tmp(MAPS_IS_RUNNING); + } + + // read in lattice (see parse.h); + Structure lat; + Array site_type_list; + Array atom_label; + rMatrix3d axes; + if (MyMPIobj.is_root()) { + ifstream file(latticefilename); + if (!file) ERRORQUIT("Unable to open lattice file."); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &site_type_list, &atom_label, file, &axes); + if (fabs(det(lat.cell))::create(corrfunc_label); + + // initialize a cluster expansion object (with user-specified algorithm, if requested); + if (!check_plug_in(ClusterExpansionCreator(),algo_label)) { + ERRORQUIT("Aborting"); + } + ClusterExpansionCreator *pcec=GenericPlugIn::create(algo_label); + ClusterExpansion *pce=pcec->create(lat,site_type_list,atom_label,spacegroup,pcorrfunc); + delete pcec; + + // initialize cluster expansion object parameters; + pce->max_multiplet=max_multiplet; // sets the maximum number of point per cluster; + pce->complexity_exp=complexity_exp; + pce->set_highest_energy_allowed(high_energy); + pce->set_maximum_volume_allowed(user_max_vol); + LinkedList ineq; + if (strlen(conc_file)>0) { + ifstream crangefile(conc_file); + if (crangefile) { + read_inequalities(&ineq,atom_label,crangefile); + } + } + pce->set_concentration_range(ineq,ignore_gs); + if (!check_plug_in(EnergyPredictor(),predictor_labels)) { + ERRORQUIT("Aborting"); + } + pce->set_predictor_labels(predictor_labels); + pce->access_structure_bank().set_2D_mode(do2D); + + if (gsnbatom) { + if (!quiet && MyMPIobj.is_root()) cerr << "Generating structures for ground state search." << endl; + int maxvol=(gsnbatom+lat.atom_pos.get_size()-1)/lat.atom_pos.get_size(); + for (int i=1; i<=maxvol; i++) { + if (!quiet && MyMPIobj.is_root()) cerr << "Volume= " << i*lat.atom_pos.get_size() << "/" << gsnbatom << endl; + pce->access_structure_bank().find_new_structures(i); + } + if (!quiet && MyMPIobj.is_root()) cerr << "done!" << endl; + } + + // clear up fit status file; + CEFitInfo fitinfo; + fitinfo.status=CEFitInfo::fit_impossible; + ostrstream propnameext; + if (strcmp(propname,"energy")==0) { + propnameext << "eci.out" << '\0'; + } + else { + propnameext << propname << ".eci" << '\0'; + } + if (MyMPIobj.is_root()) write_fit_info(fitinfo,lat,site_type_list,atom_label,axes,propnameext.str()); + + // main loop: wait for "events"; + while (1) { + MyMPIobj.barrier(); + // look for updated structure status/energy; + while (update_all_structures(&(pce->access_structure_bank()),lat,site_type_list,atom_label,propname,intensive) || MyMPIobj.file_exists("refresh")) { + while (MyMPIobj.file_exists("refresh") && MyMPIobj.is_root()) unlink("refresh"); + // if there are changes, fit a new CE; + CEFitInfo fitinfo; + if (!quiet && MyMPIobj.is_root()) cerr << "Finding best cluster expansion..." << endl; + pce->find_best_cluster_choice(&fitinfo); //fit; + if (MyMPIobj.is_root()) write_fit_info(fitinfo,lat,site_type_list,atom_label,axes,propnameext.str()); //print results; + if (!quiet && MyMPIobj.is_root()) cerr << "done!" << endl; + } + // check if user wants to abort; + if (MyMPIobj.file_exists("stop")) break; + // check if user wants a new structure; + if (MyMPIobj.file_exists("ready")) { + StructureInfo *pstr; + if (!quiet && MyMPIobj.is_root()) cerr << "Finding best structure..." << endl; + // first try to find the best structure; + pstr=pce->find_best_structure(); + // if we don't have enough info yet, find the next structure needed to fit a minimal CE; + if (!pstr) pstr=pce->find_initial_structures(); + // if we don't have enough info yet, just find the cheapest structure to compute; + if (!pstr) pstr=pce->find_first_unknown_structure(); + if (MyMPIobj.is_root()) { + write_structure_file(*pstr,lat,site_type_list,atom_label,axes); // write structure; + while (file_exists("ready") && MyMPIobj.is_root()) unlink("ready"); // tell user we're done; + } + pstr->status=StructureInfo::busy; // mark structure as busy; + if (!quiet && MyMPIobj.is_root()) cerr << "done!" << endl; + } + for (int t=0; t What does this program do? + +This is the multicomponent version of the maps code. + +It gradually constructs a increasingly more accurate cluster expansion. +A user-provided script running concurrently is responsible for notifying +maps when computer time is available. maps creates files describing +structures whose energy should be calculated. The user-provided script +sets up the runs needed to calculate the energy of these structures. +As maps becomes aware of more and more structural energies, it gradually +improves the precision of the cluster expansion, which is continously +written to an output file. +The code terminates when a stop file is created by typing, for instance, +touch stop + +NOTE: Fully functional scripts are included with the package: +pollmach and runstruct_vasp. +For for more information type + pollmach + runstruct_vasp -h + +-> Format of the input file defining the lattice (specified by the -l option) + +First, the coordinate system a,b,c is specified, either as +[a] [b] [c] [alpha] [beta] [gamma] +or as: +[ax] [ay] [az] +[bx] [by] [bz] +[cx] [cy] [cz] +Then the lattice vectors u,v,w are listed, expressed in the coordinate system just defined: +[ua] [ub] [uc] +[va] [vb] [vc] +[wa] [wb] [wc] +Finally, atom positions and types are given, expressed in the same coordinate system +as the lattice vectors: +[atom1a] [atom1b] [atom1c] [atom1types] +[atom2a] [atom2b] [atom2c] [atom2types] +etc. + +-The atom type is a comma-separated list of the atomic + symbols of the atoms that can sit the lattice site. +-When only one symbol is listed, this site is ignored for the purpose + of calculating correlations, but not for determining symmetry. + +Examples: + +The fcc lattice of the Cu-Au system: +3.8 3.8 3.8 90 90 90 +0 0.5 0.5 +0.5 0 0.5 +0.5 0.5 0 +0 0 0 Cu,Au + +A lattice for the Li_x Co_y Al_(1-y) O_2 system: + 0.707 0.707 6.928 90 90 120 + 0.3333 0.6667 0.3333 +-0.6667 -0.3333 0.3333 + 0.3333 -0.3333 0.3333 + 0 0 0 Li,Vac + 0.3333 0.6667 0.0833 O + 0.6667 0.3333 0.1667 Co,Al + 0 0 0.25 O + +Optional input file: ref_energy.in + + Contains the reference energy (per active site, i.e. those that can host more than one specie) + to be subtracted to get formation energies. + The atomic reference energies must be in the same order as in the atoms.out file. + If this file is omitted, the energies of the structures with the most + extreme compositions are used to determine the reference energies, + which are then output to the ref_energy.out file. + +Optional input file: nbclusters.in + Allows the user to manually select which clusters to include in the fit. + This file should contains: + number of pairs to include + number of triplets to include + etc. + This file can be changed while maps is running. However, you must type + touch refresh + to tell maps to reread it. + +Optional input file: crange.in (or as specified by the -cr option) + If present, this file + selects the range of concentration over which the cluster expansion + is to be fitted. This controls both where the correct ground states + are inforced in the fitting process and the range of concentration + of the generated structures. Occasionally, a structure outside that + range is generated, to verify the ground state hull. + Here is an example of such file: + 1.0*Al -1.0*Li +0.1*Co >= 0.5 + Multiple constraints can be listed (on separate lines). + Make sure to include a numerical prefactor for each species even + if it is 1.0. Do not put a space between '-' and a number. + Note that the crange.in file is read (if present) even if the -cr option is + not specified. + +Optional input file: weights.in + Forces specific weights to assign to each structure when fitting its energy. + These weights may be updated by the code internally to better reproduce the ground state line. + Format: one weight per line, in the same order as in fit.out + This should only be used to fine-tune the fit at the end when + no new structures will be added (since weights.in would have + to change every time a new structure us added). + +-> Output files + +maps.log +Contains possible warnings: + 'Not enough known energies to fit CE' + 'True ground states not = fitted ground states' + 'New ground states predicted, see predstr.out' + +These warning should disappear as more structural energies become available +and the following messages should be displayed: + 'Among structures of known energy, true and predicted ground states agree.' + 'No other ground states of xx atoms/unit cell or less exist.' + +This file also gives the crossvalidation score of the current fit +(before the weighting is turned on in order to get the correct ground states). + +atoms.out +Lists all atomic species given in the input files. + +fit.out +Contains the results of the fit, one structure per line and each line +has the following information: + concentration energy fitted_energy (energy-fitted_energy) weight index +'concentration' a vector of the atom fraction of all species (in the same + order as in atoms.out). +'energy' is per site (a site is a place where more than one atom type can sit) +'weight' is the weight of this structure in the fit. +'index' is the name of the directory associated with this structure. + +predstr.out +Contains the predicted energy (per site) of all structures maps has in memory but +whose true energy is unknown. +Format: one structure per line, and each line has the following information: + concentration predicted_energy index status +index is the structure number (or -1 if not written to disk yet). +status is either + b for busy (being calculated), + e for error, + u for unknown (not yet calculated) or + g if that structure is predicted to be a ground state (g can be combined with the above). +To list all predicted ground states, type +grep 'g' predstr.out + +gs.out +Lists the ground state energies, one structure per line and each line +has the following information: + concentration energy fitted_energy (energy-fitted_energy) index + +gs_connect.out +Indicates which ground states touch each face of the ground state convex hull. + +gs_str.out +Lists the ground state structures, in the same format as the n/str.out files +(see below). Each structure is terminated by the word 'end' on a line by itself, +followed by a blank line. + +chempot.out +This file contains +(i) the values of the chemical potentials that stabilize all + fixed-composition multiphase equilibria of the system at 0K. + (e.g. in a n-nary system, all the n-phase equilibria) +(ii) values of the chemical potentials that stabilize each of the ground states at 0K. +This data is useful to set up Monte Carlo simulations with the memc2 code. + +eci.out +Lists the eci. (They have already been divided by multiplicity.) +The corresponding clusters are in clusters.out + +clusters.out +For each cluster, the first line is the multiplicity, the second line is the +cluster diameter, and the third line is the number of points in the cluster. +The remaining lines are the coordinates of the points in the cluster +(in the coordinate system specified in the input file defining the lattice). +A blank line separates each cluster. + +n/str.out +Same format as the lattice file, except that +-The coordinate system is always written as 3x3 matrix +-Only one atom is listed for each site. + +ref_energy.out +Reference energies used to calculate formation energies. +(Usually: energy of the pure end members OR values given in +ref_energy.in if provided.) + +The standard output reports the current progress of the calculations. +During the fit of the cluster expansion, each line of numbers displayed has the following meaning: +1) The current number of point, pair, triplet, etc. clusters +2) An indicator of whether the predicted ground states agree with the true ones (1) or not (0) +3) The CV score (per atom, as of version 2.88; per cell earlier). + +-> Communication protocol between maps and the script driving the + energy method code (e.g. ab initio code) + (Only those who want to customize the code need to read this section. + The scripts described in this section are provided with the atat + distribution in the glue/ subdirectory.) + +Unless otherwise specified all files mentioned reside in the directory where +maps was started. All paths are relative to the startup directory. + ++The script should first wait for computer time to be available before creating + a file called 'ready'. +-Upon detecting that the 'ready' file has been created, + maps responds by creating a subdirectory 'n' (where 'n' is a number) and a file + 'n/str.out' containing a description of a structure whose energy needs to be + calculated. +-maps creates a file called 'n/wait' to distinguish this directory + from other ones created earlier. +-maps deletes the 'ready' file. ++Upon detecting that the 'ready' file has disappeared, + the script should now look for the 'n/wait' file, start the calculations + in the directory 'n' and delete file 'n/wait'. ++If anything goes wrong in the calculations, the script should create a file + 'n/error'. ++When the calculations terminate successfully, the energy per unit cell of the structure + should be copied to the file 'n/energy'. + (NOTE: use energy per unit cell of the structure NOT per unit cell of the lattice). +-maps continuously scans all the subdirectories 'n' for 'n/energy' or 'n/error' + files and updates the cluster expansion accordingly. +-maps updates the cluster expansion whenever a file called 'refresh' is created + (maps then deletes it). +-maps terminates when a 'stop' file is created. + +Note that the script can ask maps to create new structure directories even before +the energy of the current structure has been found. +Note that human intervention is allowed: an 'n/error' file can be +manually created if an error is later found in a run. +Users can also manually step up all runs if they wish so, as long +as they follow the protocol. + +Example of script +(portions in /* */ have to be filled in with the appropriate code): + +#!/bin/csh + +while (! -e stop) + /* check machine load here */ + if ( /* load low enough */ ) then + touch ready + while (-e ready) + sleep 30 + end + cd `ls */wait | sed 's+/.*++g' | head -1` + rm -f wait + /* convert str.out to the native format of ab initio code */ + /* in background: run code and create either energy file or error file */ + cd .. + endif + sleep 180 +end + +-> Using maps with vasp + +The script runstruct_vasp, when run from within directory 'n', +1) converts 'vasp.wrap' and 'n/str.out' into all the necessary files to run vasp, +2) runs vasp +3) extract all the information from the output files and writes in a format + readable by maps. + +An example of vasp.wrap is: +[INCAR] +PREC = high +ISMEAR = -1 +SIGMA = 0.1 +NSW=41 +IBRION = 2 +ISIF = 3 +KPPRA = 1000 +DOSTATIC + +See ezvasp documentation for more information. + +-> Importing structures into maps + +MAPS continuously scans all the first-level subdirectories containing +a file called str.out and tries to map them onto superstructures of the +lattice provided. This lets you 'import' structures from another source +into MAPS. A word of caution: the imported structures must be +unrelaxed and no effort is made to rotate or scale them in order to +match the lattice (aside from space group symmetry operations). diff --git a/src/mmapsrep b/src/mmapsrep new file mode 100755 index 0000000..81246f3 --- /dev/null +++ b/src/mmapsrep @@ -0,0 +1,119 @@ +#!/bin/csh +if ( "x$1" == "x-h" ) then + echo Display the output of mmaps in graphical form. + echo "Syntax: mmapsrep [-e] c1 c2 c3" + echo where c1,c2,c3 are the column numbers of the compositions to plot + echo the optional switch -e tells the code to plot structures flagged with error too. + exit +endif + +if ( "x$1" == "x-e" ) then + grep e predstr.out | grep -v b >! error.out + set a = "$2" + set b = "$3" + set c = "$4" +else + echo -n "" >! error.out + set a = "$1" + set b = "$2" + set c = "$3" +endif + +set NC = `head -n 1 fit.out |awk '{print NF}'` +set ce = `head -n 1 fit.out |awk '{print NF-4}'` +set pe = `head -n 1 fit.out |awk '{print NF-3}'` +set re = `head -n 1 fit.out |awk '{print NF-2}'` + +if (-e gs_lines.out) then + rm -f gs_lines.out +endif + +#cat gs_connect.out | awk '{system("grep "$1" gs.out >> gs_lines.out; grep "$2" gs.out >> gs_lines.out; grep "$3" gs.out >> gs_lines.out; grep "$1" gs.out >> gs_lines.out; echo \"\\n\" >> gs_lines.out")}' +awk 'BEGIN {while (getline < "gs.out") {n=split($0,a); pt[a[n]]=$0;}} {n=split($0,a); for (i=1; i<=n; i++) {print pt[a[i]];} print pt[a[1]]; print "";}' gs_connect.out > gs_lines.out + +#cat maps.log +getclus -e | grep -v '^0' | grep -v '^1' >! clusinfo.out +#grep "^2" clusinfo.out >! eci2.out +#grep "^3" clusinfo.out >! eci3.out +#grep "^4" clusinfo.out >! eci4.out +grep g predstr.out >! newgs.out +cat - >! mapsrep.gnu << END +set title "Fitted Energies" +unset border +unset xtics +unset ytics + +set view equal xy +#center=(.5,sqrt(3)/6,0.0) +#unset key +END +if ( `cat newgs.out | wc -l` == 0 ) then + cat - >> mapsrep.gnu <> mapsrep.gnu <> mapsrep.gnu <> mapsrep.gnu <> mapsrep.gnu <> mapsrep.gnu < > &_site_type_list, const iVector3d &_supercell, + const SpaceGroup &space_group, const LinkedList &cluster_list, + const Array > > &_corrfunc) : + lattice(_lattice), site_type_list(_site_type_list), supercell(_supercell), corrfunc(_corrfunc), cur_rho(), cur_conc(), mu(), allowed_flip_site(),allowed_flip_before(),allowed_flip_after(), flip_span(-1,-1,-1) { + Real max_clus_len=0.; + { + LinkedListIterator c(cluster_list); + for ( ; c; c++) { + Real l=get_cluster_length(c->clus); + if (l>max_clus_len) max_clus_len=l; + } + } + margin=find_sphere_bounding_box(lattice.cell,max_clus_len); + iVector3d supercell_orig=supercell; + for (int mult=1; 1 ; mult++) { + supercell=mult*supercell_orig; + int i; + for (i=0; i<3; i++) { + if (supercell(i) < margin(i)) break; + } + if (i==3) break; + } + total_box=supercell+2*margin; + int spin_total_size=total_box(0)*total_box(1)*total_box(2)*lattice.atom_pos.get_size(); + spin=new SPIN_TYPE[spin_total_size]; + for (int i=0; i frozen_site(site_in_cell); + zero_array(&frozen_site); + active_site_in_cell=site_in_cell; + if (file_exists("frozensite.in")) { + ifstream file("frozensite.in"); + while (skip_delim(file)) { + int s=-1; + file >> s; + if (!frozen_site(s)) {active_site_in_cell--;} + frozen_site(s)=1; + } + } + which_site=new int[active_site_in_cell]; + int s=0; + for (int i=0; i c(cluster_list); + for (int i=0; c; c++,i++) { + rcluster_mult_per_atom[i]=calc_multiplicity(*c,lattice.cell,space_group.point_op,space_group.trans)/(Real)lattice.atom_pos.get_size(); + } + } + + E_ref=0.; + which_is_empty=-1; + nb_point=0; + { + LinkedListIterator c(cluster_list); + int cluster_index=0; + for (; c; c++, cluster_index++) { + if (c->clus.get_size()==0) {which_is_empty=cluster_index;} + if (c->clus.get_size()==1) {nb_point++;} + } + which_is_point=new int[nb_point]; + point_mult=new Real[nb_point]; + c.init(cluster_list); + cluster_index=0; + int point_index=0; + for (; c; c++, cluster_index++) { + if (c->clus.get_size()==1) { + which_is_point[point_index]=cluster_index; + point_mult[point_index]=rcluster_mult_per_atom[cluster_index]; + point_index++; + } + } + } + cur_conc.resize(nb_point); + mu.resize(nb_point); + zero_array(&mu); + pmu=mu.get_buf(); + + rMatrix3d inv_cell=!lattice.cell; + for (int s=0; s long_cluster_list; + LinkedList long_cluster_i_list; + LinkedListIterator c(cluster_list); + int cluster_index=0; + + for ( ; c; c++,cluster_index++) { + if (c->clus.get_size()!=0) { + Array clusters; + find_equivalent_clusters(&clusters, *c,space_group.cell,space_group.point_op,space_group.trans); + for (int ec=0; ecclus(0)=clusters(ec).clus(center_atom)+lat_shift; + to_add->site_type(0)=clusters(ec).site_type(center_atom); + to_add->func(0)=clusters(ec).func(center_atom); + int j=1; + for (int i=0; iclus(j)=clusters(ec).clus(i)+lat_shift; + to_add->site_type(j)=clusters(ec).site_type(i); + to_add->func(j)=clusters(ec).func(i); + j++; + } + } + long_cluster_list << to_add; + long_cluster_i_list << new int(cluster_index); + } + } + } + } + } + nb_clusters[s]=long_cluster_list.get_size(); + cluster_size[s]=new int[nb_clusters[s]]; + eci[s]=new Real[nb_clusters[s]]; + which_cluster[s]=new int[nb_clusters[s]]; + site_offset[s]=new pint[nb_clusters[s]]; + spin_val_clus[s]=new ppReal[nb_clusters[s]]; + c.init(long_cluster_list); + LinkedListIterator c_i(long_cluster_i_list); + for (int ic=0; icclus.get_size(); + eci[s][ic]=0.; + which_cluster[s][ic]=*c_i; + site_offset[s][ic]=new int[c->clus.get_size()]; + spin_val_clus[s][ic]=new pReal[c->clus.get_size()]; + for (int j=0; jclus.get_size(); j++) { + int offset_in_cell=which_atom(lattice.atom_pos,c->clus(j),inv_cell); + iVector3d offset_cell=to_int(inv_cell*(c->clus(j)-lattice.atom_pos(offset_in_cell))); + site_offset[s][ic][j]=((offset_cell(0)*total_box(1) + offset_cell(1))*total_box(2) + offset_cell(2))*site_in_cell + offset_in_cell - s; + spin_val_clus[s][ic][j]=new Real[nb_spin_val[offset_in_cell]]; + for (int l=0; lsite_type(j))(c->func(j))(l); + } + } + } + } + } + +MultiMonteCarlo::~MultiMonteCarlo(void) { + for (int s=0; s *pcorr, int site, int type) { + Array allcorr(total_clusters); + zero_array(&allcorr); + for (int c=0; c *pcorr, const Array &sites,const Array &types) { + pcorr->resize(nb_point); + zero_array(pcorr); + for (int i=0; i &corr_constraints, const iVector3d &_flip_span, int min_nb_flip) { + flip_span=_flip_span; + int withinonecell=0; + if (flip_span(0)==0 && flip_span(1)==0 && flip_span(2)==0) {withinonecell=1;} + LinkedList > site_list; + LinkedList > before_flip_list; + LinkedList > > after_flip_list; + Array site_done(site_in_cell); + zero_array(&site_done); + int nb_site_done=0; + int nb_in_basis=0; + Array > corr_basis; + int nbflip=1; + while (1) { + Array maxsite(nbflip); + for (int i=0; i > rawsites(maxsite); + for ( ; rawsites; rawsites++) { + Array sites(maxsite.get_size()); + for (int i=0; i &)rawsites)(i)]; + } + Array maxtype(maxsite.get_size()); + for (int i=0; i &)sites)(i)];} + MultiDimIterator > before_types(maxtype); + int nb_tries=1; + for (int i=0; i before_flip(nb_tries); + for (int i=0; i > after_flip; + for (; before_types; before_types++) { + Array before_corr; + calc_delta_point_corr(&before_corr, (const Array &)sites,(const Array &)before_types); + MultiDimIterator > after_types(maxtype); + for (; after_types; after_types++) { + int same; + for (same=0; same &)before_types)(same)==((Array &)after_types)(same)) break; + } + if (same==nbflip) { + Array after_corr; + calc_delta_point_corr(&after_corr, (const Array &)sites,(const Array &)after_types); + Array delta_corr; + diff(&delta_corr,after_corr,before_corr); + Array c; + if (corr_constraints.get_size()(1)!=delta_corr.get_size()) { + ERRORQUIT("Incorrect number of point correlations to use the hybrid grandcanonical/canonical mode.\nPlease make sure clusters.out includes all point correlations"); + } + product(&c,corr_constraints,delta_corr); + if (inner_product(c,c) &)before_types)(i);} + before_flip(index)=nb_flip; + after_flip << new Array(after_types); + nb_flip++; + if (min_nb_flip==0) { + for (int l=0; l<((Array &)sites).get_size(); l++) { + cerr << ((Array &)sites)(l) << ": " << ((Array &)before_types)(l) << "->" << ((Array &)after_types)(l) << endl; + } + cerr << endl; + } + build_basis(&corr_basis,&nb_in_basis,delta_corr); + } + } + } + } + if (nb_flip>0) { + for (int i=0; i<((Array &)sites).get_size(); i++) { + if (site_done(((Array &)sites)(i))==0) { + site_done(((Array &)sites)(i))=1; + nb_site_done++; + } + } + int addit=1; + if (withinonecell) { + for (int i=0; i(sites); + before_flip_list << new Array(before_flip); + Array > *pafter_flip_array=new Array >(); + LinkedList_to_Array(pafter_flip_array,after_flip); + after_flip_list << pafter_flip_array; + } + else { + cerr << "Ignored" << endl; + } + } + } + if (nb_in_basis >= nb_point-corr_constraints.get_size()(0) && (nb_site_done==active_site_in_cell) && nbflip>=min_nb_flip) break; + nbflip++; + } + LinkedList_to_Array(&allowed_flip_site,site_list); + LinkedList_to_Array(&allowed_flip_before,before_flip_list); + LinkedList_to_Array(&allowed_flip_after,after_flip_list); +} + +int MultiMonteCarlo::force_spin_flip(int *cell, int incell, int newspin) { + int i; + int mcell[3],mcellscan[3],offset; + int oldspin; + Real denergy,dconc; + int cluster_count,site_count; + int **pcluster; + Real ***pppspin_val_clus,**ppspin_val_clus; + int *pwhich_cluster; + int *poffset,*psize; + Real *peci, *prho, *prho2, *prcluster_mult_per_atom; + Real rho; + for (i=0; i<3; i++) { + mcell[i]=cell[i]+margin(i); + } + + offset=((mcell[0]*total_box(1) + mcell[1])*total_box(2) + mcell[2])*site_in_cell + incell; + oldspin=spin[offset]; + denergy=0.; + for (i=total_clusters, prho=new_rho; i>0; i--, prho++) { + *prho=0.; + } + for (cluster_count=nb_clusters[incell], pcluster=site_offset[incell], pppspin_val_clus=spin_val_clus[incell], psize=cluster_size[incell], pwhich_cluster=which_cluster[incell], peci=eci[incell]; cluster_count>0; cluster_count--, pcluster++, pppspin_val_clus++, psize++, pwhich_cluster++, peci++) { + poffset=*pcluster; + ppspin_val_clus=*pppspin_val_clus; + rho=(*ppspin_val_clus)[newspin]-(*ppspin_val_clus)[oldspin]; + poffset++; + ppspin_val_clus++; + for (site_count=(*psize)-1; site_count>0; site_count--, poffset++, ppspin_val_clus++) { + rho*=(*ppspin_val_clus)[spin[offset+(*poffset)]]; + } + new_rho[*pwhich_cluster]+=rho; + denergy+=(*peci)*rho; + } + for (i=0; i=supercell(i)) {mcell[i]-=supercell(i);} + } + for (mcellscan[0]=mcell[0]; mcellscan[0]cur_energy=cur_energy; + pstate->cur_disorder_param=cur_disorder_param; + pstate->cur_rho.resize(total_clusters); + for (int i=0; icur_rho(i)=pcur_rho[i];} + pstate->saved_spins.delete_all(); +} + +void MultiMonteCarlo::save_spin(MultiMonteCarloState *pstate, int *cell, int incell) { + FlipInfo *pinfo=new FlipInfo(); + for (int i=0; i<3; i++) { + pinfo->cell[i]=cell[i]+margin(i); + } + pinfo->incell=incell; + int offset=((pinfo->cell[0]*total_box(1) + pinfo->cell[1])*total_box(2) + pinfo->cell[2])*site_in_cell + incell; + pinfo->spin=spin[offset]; + pstate->saved_spins << pinfo; +} + +void MultiMonteCarlo::restore_state(const MultiMonteCarloState &state) { + cur_energy=state.cur_energy; + cur_disorder_param=state.cur_disorder_param; + for (int i=0; i it(state.saved_spins); + for ( ; it; it++) { + int mcell[3]; + for (int i=0; i<3; i++) { + mcell[i]=it->cell[i]; + if (mcell[i]>=supercell(i)) {mcell[i]-=supercell(i);} + } + int mcellscan[3]; + for (mcellscan[0]=mcell[0]; mcellscan[0]incell]=it->spin; + } + } + } + } +} + +int MultiMonteCarlo::access(int *cell, int incell) { + int mcell[3]; + for (int i=0; i<3; i++) { + mcell[i]=cell[i]+margin(i); + } + int offset=((mcell[0]*total_box(1) + mcell[1])*total_box(2) + mcell[2])*site_in_cell + incell; + return spin[offset]; +} + +void MultiMonteCarlo::multi_spin_flip(void) { + int which_flip,before_index,after_index; + Array cells; + Array oldspin; + do { + which_flip=random(allowed_flip_site.get_size()); + cells.resize(allowed_flip_site(which_flip).get_size()); + iVector3d center; + if (flip_span(0)>=0) { + for (int j=0; j<3; j++) { + center(j)=random(supercell(j)); + } + } + for (int i=0; i=0) { + cells(i)(j)=(supercell(j)+center(j)+random(2*flip_span(j)+1)-flip_span(j)) % supercell(j); + } + else { + cells(i)(j)=random(supercell(j)); + } + } + for (ii=0; ii---" << endl; +} + +void MultiMonteCarlo::set_eci(const Array &new_eci) { + if (which_is_empty>=0) { + E_ref=new_eci(which_is_empty)/lattice.atom_pos.get_size(); + } else { + E_ref=0.; + } + for (int s=0; s > &conc) { + Array > sconc; + sconc=conc; + for (int i=0; i bb(iVector3d(0,0,0),total_box-iVector3d(1,1,1)); + MultiDimIterator cell(supercell); + for ( ; cell; cell++) { + for (int offset_in_cell=0; offset_in_cell image(iVector3d(-1,-1,-1),iVector3d(1,1,1)); + for ( ; image; image++) { + iVector3d image_cell=(iVector3d &)cell+msupercell*(iVector3d &)image+margin; + if (bb.is_in(image_cell)) { + int offset=((image_cell(0)*total_box(1) + image_cell(1))*total_box(2) + image_cell(2))*site_in_cell + offset_in_cell; + spin[offset]=the_spin; + } + } + } + } + int spin_size=supercell(0)*supercell(1)*supercell(2)*site_in_cell; + for (int i=0; i bb(iVector3d(0,0,0),total_box-iVector3d(1,1,1)); + for (int at=0; at image(iVector3d(-1,-1,-1),iVector3d(1,1,1)); + for ( ; image; image++) { + iVector3d image_cell=cell+msupercell*(iVector3d &)image+margin; + if (bb.is_in(image_cell)) { + int offset=((image_cell(0)*total_box(1) + image_cell(1))*total_box(2) + image_cell(2))*site_in_cell + s; + spin[offset]=newspin; + } + } + int offset=((cell(0)*supercell(1) + cell(1))*supercell(2) + cell(2))*site_in_cell + s; + spin_orig[offset]=newspin; + } + } + else { + rMatrix3d inv_cell=!str.cell; + iMatrix3d msupercell; + msupercell.diag(supercell); + BoundingBox bb(iVector3d(0,0,0),total_box-iVector3d(1,1,1)); + MultiDimIterator cell(supercell); + int quickload=0; + if (file_exists("quickload")) {quickload=1;} + cerr << "quickload=" << quickload << endl;; + int at=-1; + for (; cell; cell++) { + rVector3d rcell=lattice.cell*to_real((iVector3d &)cell); + for (int s=0; s image(iVector3d(-1,-1,-1),iVector3d(1,1,1)); + for ( ; image; image++) { + iVector3d image_cell=(iVector3d &)cell+msupercell*(iVector3d &)image+margin; + if (bb.is_in(image_cell)) { + int offset=((image_cell(0)*total_box(1) + image_cell(1))*total_box(2) + image_cell(2))*site_in_cell + s; + spin[offset]=newspin; + } + } + iVector3d thecell=(iVector3d &)cell; + int offset=((thecell(0)*supercell(1) + thecell(1))*supercell(2) + thecell(2))*site_in_cell + s; + spin_orig[offset]=newspin; + } + } + } + cerr << "end init" << endl; + calc_from_scratch(); + extension_calc_from_scratch(); + cerr << "end calc" << endl; +} + +void MultiMonteCarlo::calc_from_scratch(void) { + cur_disorder_param=0.; + cur_energy=0; + for (int i=0; i cur_cell(supercell); + for ( ; cur_cell; cur_cell++) { + iVector3d m_cur_cell=(iVector3d &)cur_cell+margin; + for (int s=0; s=0) {cur_rho(which_is_empty)=1.;} + for (int i=0; i & MultiMonteCarlo::get_cur_concentration(void) { + for (int i=0; i &_mu) { + T=_T; + for (int i=0; i0; i--, prho++) { + *prho=0.; + } + for (cluster_count=nb_clusters[incell], pcluster=site_offset[incell], pppspin_val_clus=spin_val_clus[incell], psize=cluster_size[incell], pwhich_cluster=which_cluster[incell], peci=eci[incell]; cluster_count>0; cluster_count--, pcluster++, pppspin_val_clus++, psize++, pwhich_cluster++, peci++) { + poffset=*pcluster; + ppspin_val_clus=*pppspin_val_clus; + rho=(*ppspin_val_clus)[newspin]-(*ppspin_val_clus)[oldspin]; + poffset++; + ppspin_val_clus++; + for (site_count=(*psize)-1; site_count>0; site_count--, poffset++, ppspin_val_clus++) { + rho*=(*ppspin_val_clus)[spin[offset+(*poffset)]]; + } + new_rho[*pwhich_cluster]+=rho; + denergy+=(*peci)*rho; + } + for (i=0; i=supercell(i)) {mcell[i]-=supercell(i);} + } + for (mcellscan[0]=mcell[0]; mcellscan[0] &labellookup, const Array &atom_label, ofstream &file, const rMatrix3d &axes) { + for (int i=0; i<3; i++) { + file << axes.get_column(i) << endl; + } + for (int i=0; i<3; i++) { + file << (!axes)*((Real)(supercell(i))*lattice.cell.get_column(i)) << endl; + } + rMatrix3d iaxes=!axes; + MultiDimIterator cur_cell(supercell); + for ( ; cur_cell; cur_cell++) { + iVector3d m_cur_cell=(iVector3d &)cur_cell+margin; + for (int s=0; s *pdata) { + pdata->resize(2+nb_point+total_clusters); + (*pdata)(0)=get_cur_energy(); + (*pdata)(1)=get_cur_disorder_param(); + int i=2; + Array conc; + conc=get_cur_concentration(); + for (int j=0; j rho; + rho=get_cur_corr(); + for (int j=0; j data; + pmc->get_thermo_data(&data); + while (accum->new_data(data)) { + pmc->run(1,mode); + pmc->get_thermo_data(&data); + } +} + +#include "anyfft.h" + +KSpaceMultiMonteCarlo::KSpaceMultiMonteCarlo(const Structure &_lattice, const Array > &_site_type_list, + const iVector3d &_supercell, + const SpaceGroup &space_group, const LinkedList &cluster_list, + const Array > > &_corrfunc, KSpaceECI *_p_kspace_eci): + MultiMonteCarlo(_lattice,_site_type_list,_supercell,space_group,cluster_list,_corrfunc), flipped_spins(), ft_spin(), ft_eci(), dir_eci(), convol(), ref_x() { + p_kspace_eci=_p_kspace_eci; + nsite=_lattice.atom_pos.get_size(); + size=supercell(0)*supercell(1)*supercell(2); + rsize=(Real)size; + + ft_spin.resize(nsite); + for (int s=0; s a) { + { + ofstream file("tmp.gnu"); + file << "set hidden" << endl + << "splot 'tmp.out' u 1:2:3 w l" << endl + << "pause -1" << endl; + } + { + ofstream file("tmp.out"); + for (int z=0; zget_k_space_eci(&ft_eci, ref_x); + dir_eci=ft_eci; + for (int s=0; s0.) { +//cerr << cur_recip_E << endl; +//} + } + } + } +//cerr << "end" << endl; + for (int s=0; s diffx; + diff(&diffx,get_cur_concentration(),ref_x); +//cerr << "forget" << endl; + if (max_norm(diffx)>threshold_dx) { + extension_calc_from_scratch(); + } else { + if (flip_time>0) { +//cerr << "time: " << nbflip << " " << flip_time << " " << 2*fft_time/flip_time << endl; + if (nbflip > 2*fft_time/flip_time) { +//cerr << "before= " << extension_get_energy() << endl; + extension_calc_from_scratch(); +//cerr << "after= " << extension_get_energy() << endl; + } + } + } +} + +void KSpaceMultiMonteCarlo::extension_update_spin_flip(int *cell, int incell, int oldspin, int newspin) { + + flip_time=clock(); + int dr[3]; + int mdr[3]; + int *psupercell=supercell.get_buf(); + + Array rspinchange(nb_spin_val[incell]); + rspinchange(0)=0.; + for (int ss=1; ss i(flipped_spins); + for (; i; i++) { + for (int j=0; j<3; j++) { + dr[j] =(cell[j]-(i->cell[j])+psupercell[j]) % psupercell[j]; + mdr[j]=(i->cell[j]-cell[j]+psupercell[j]) % psupercell[j]; + } + //int offsetdr=((dr[0]*psupercell[1] + dr[1])*psupercell[2] + dr[2]); //permbug + int offsetdr =((dr[2]*psupercell[1] + dr[1])*psupercell[0] + dr[0]); + int offsetmdr=((mdr[2]*psupercell[1] + mdr[1])*psupercell[0] + mdr[0]); + for (int ss=1; ssincell]; tt++) { + if (incell>=i->incell) { + dE+=2.*real(dir_eci(incell)(i->incell)(ss)(tt)(offsetdr)*rspinchange(ss)*i->dspin(tt)); + } else { + dE+=2.*real(dir_eci(i->incell)(incell)(tt)(ss)(offsetmdr)*rspinchange(ss)*i->dspin(tt)); + } + } + } + } + cur_recip_E+=dE/(rspin_size); + +/* + cerr << "Eafterflip=" << cur_recip_E << endl; + int ck=0; + if (ck==1) { + extension_calc_from_scratch(); + cerr << cur_recip_E << endl; + } +*/ + flipped_spins.push_front(new FlippedSpin(cell,incell,rspinchange)); + flip_time=clock()-flip_time; +} + +void KSpaceMultiMonteCarlo::extension_undo_spin_flip(void) { + LinkedListIterator flip(flipped_spins); + while ((FlippedSpin *)flip != psave_spins) { + delete flipped_spins.detach(flip); + } + cur_recip_E=save_recip_E; + psave_spins=NULL; +//cerr << "undo" << flipped_spins.get_size() << endl; +} + +KSpaceMultiMonteCarlo::~KSpaceMultiMonteCarlo() { + // free all dynamically allocated memory; +} diff --git a/src/mmclib.hh b/src/mmclib.hh new file mode 100644 index 0000000..6d66048 --- /dev/null +++ b/src/mmclib.hh @@ -0,0 +1,185 @@ +#ifndef _MCLIB_H_ +#define _MCLIB_H_ + +#include +#include +#include "clus_str.h" +#include "linalg.h" +#include "equil.h" +#include "kmeci.h" + +#define SPIN_TYPE signed char + +class FlipInfo { + public: + iVector3d cell; + int incell; + int spin; + FlipInfo(void): cell() {} +}; + +class MultiMonteCarloState { + public: + Real cur_energy; + Real cur_disorder_param; + Array cur_rho; + LinkedList saved_spins; + public: + MultiMonteCarloState(void): cur_rho(), saved_spins() {cur_energy=0; cur_disorder_param=0;} +}; + +class MultiMonteCarlo { + protected: + Structure lattice; + Array > site_type_list; + iVector3d supercell; + iVector3d margin; + iVector3d total_box; + SPIN_TYPE *spin; + SPIN_TYPE *spin_orig; + Real rspin_size; + int site_in_cell; + int active_site_in_cell; + int *which_site; + int *nb_spin_val; + int total_clusters; + int *nb_clusters; + // int *nb_x_clusters; + int **cluster_size; + Real *rcluster_mult_per_atom; + int ***site_offset; + Real ****spin_val_clus; + Real **eci; + int **which_cluster; + Real E_ref; + int which_is_empty; + int nb_point; + int *which_is_point; + Real *point_mult; + Real cur_energy; + Array cur_rho; + Real *pcur_rho; + Real *new_rho; + Real cur_disorder_param; + Array cur_conc; + + Real T; + Array mu; + Real *pmu; + + Array > > corrfunc; + + Array > allowed_flip_site; + Array > allowed_flip_before; + Array > > allowed_flip_after; + iVector3d flip_span; + + protected: + void calc_delta_point_corr(Array *pcorr, int site, int type); + void calc_delta_point_corr(Array *pcorr, const Array &sites,const Array &types); + public: + void find_all_allowed_flips(const Array2d &corr_constraints, const iVector3d &_flip_span, int min_nb_flip=0); + int force_spin_flip(int *cell, int incell, int newspin); + void save_state(MultiMonteCarloState *pstate); + void save_spin(MultiMonteCarloState *pstate, int *cell, int incell); + void restore_state(const MultiMonteCarloState &state); + int access(int *cell, int incell); + void multi_spin_flip(void); + public: + void calc_from_scratch(void); + void spin_flip(void); + void run(int mc_passes, int mode); + MultiMonteCarlo(const Structure &_lattice, const Array > &_site_type_list, const iVector3d &_supercell, + const SpaceGroup &space_group, const LinkedList &cluster_list, + const Array > > &_corrfunc); + ~MultiMonteCarlo(void); + void set_eci(const Array &eci); + void init_random(const Array > &conc); + void init_structure(const Structure &str); + // void set_concentration(Real concentration); + void set_T_mu(Real _T, const Array &_mu); + void view(const Array &labellookup, const Array &atom_label, ofstream &file, const rMatrix3d &axes); + + const Array & get_cur_corr(void) const { + return cur_rho; + } + Real get_cur_energy(void) { + return E_ref+cur_energy+extension_get_energy(); + } + const Array & get_cur_concentration(void); + Real get_cur_disorder_param(void) const { + return cur_disorder_param; + } + int get_total_clusters(void) const { + return total_clusters; + } + void get_cluster_mult(Array *mult) const { + mult->resize(total_clusters); + for (int i=0; i &get_mu(void) const {return mu;} + const iVector3d & get_cell_size() const { + return supercell; + } + void get_thermo_data(Array *pdata); + + protected: + virtual void extension_calc_from_scratch(void) {} + virtual void extension_save_state(void) {} + virtual void extension_forget_state(void) {} + virtual void extension_update_spin_flip(int *cell, int incell, int oldspin, int newspin) {} + virtual void extension_undo_spin_flip(void) {} + virtual Real extension_get_energy(void) {return 0;} +}; + + +void run_mc(GenericAccumulator *accum, MultiMonteCarlo *pmc, int mode); + +class FlippedSpin { + public: + FlippedSpin(int *_cell, int _incell, const Array &_dspin) { + for (int i=0; i<3; i++) {cell[i]=_cell[i];} + incell=_incell; dspin=_dspin; + } + int cell[3]; + int incell; + Array dspin; +}; + +class KSpaceMultiMonteCarlo: public MultiMonteCarlo { + protected: + int nsite; + int size; + Real rsize; + Array > > ft_spin; + Array > > > > ft_eci; + Array > > > > dir_eci; + Array > > convol; + KSpaceECI *p_kspace_eci; + Real cur_recip_E; + clock_t fft_time; + clock_t flip_time; + Array ref_x; + Real threshold_dx; + + LinkedList flipped_spins; + FlippedSpin *psave_spins; + Real save_recip_E; + + public: + KSpaceMultiMonteCarlo(const Structure &_lattice, const Array > &_site_type_list, const iVector3d &_supercell, + const SpaceGroup &space_group, const LinkedList &cluster_list, + const Array > > &_corrfunc, KSpaceECI *_p_kspace_eci); + ~KSpaceMultiMonteCarlo(); + protected: + void set_k_space_eci(void); + void extension_calc_from_scratch(void); + void extension_save_state(void); + void extension_forget_state(void); + void extension_update_spin_flip(int *cell, int incell, int oldspin, int newspin); + void extension_undo_spin_flip(void); + Real extension_get_energy(void) {return cur_recip_E;} +}; + +#endif diff --git a/src/morsepot.c++ b/src/morsepot.c++ new file mode 100644 index 0000000..849727a --- /dev/null +++ b/src/morsepot.c++ @@ -0,0 +1,37 @@ +#include "array.h" +#include "plugin.h" + +class MorseForceConstant: public ArrayFunctionArray { + Array param; +public: + MorseForceConstant(void): ArrayFunctionArray(), param() {} + void eval(Array *py, const Array &x); + int read(istream &file); +}; + +int MorseForceConstant::read(istream &file) { + file >> param; + if (param.get_size()!=8 && param.get_size()!=16) { + ERRORQUIT("Number of parameters in morse input file must be 8 or 16"); + } + return 1; +} + +void MorseForceConstant::eval(Array *py, const Array &x) { + Real *a=param.get_buf()-1; + Real r=x(0); + Real r2=r*r; + Real r3=r2*r; + Real c=x(2); + Real c2=c*c; + Real s=0.5*(a[1]+a[2]*c+a[3]*c2)*(2.+2.*(a[4]+a[5]*c+a[6]*c2)*a[7]*r+ipow(a[4]+a[5]*c+a[6]*c2,2)*ipow(a[7],2)*r2)/(a[4]+a[5]*c+a[6]*c2-1)/r3*exp(-(a[4]+a[5]*c+a[6]*c2)*a[7]*(r-a[8]))+0.5*(a[1]+a[2]*c+a[3]*c2)*(-2*a[4]-2*a[5]*c-2*a[6]*c2-2*(a[4]+a[5]*c+a[6]*c2)*a[7]*r-(a[4]+a[5]*c+a[6]*c2)*ipow(a[7],2)*r2)/(a[4]+a[5]*c+a[6]*c2-1)/r3*exp(-a[7]*(r-a[8])); + if (x.get_size()==16) { + a=param.get_buf()+8-1; + } + Real b=-0.5*(a[1]+a[2]*c+a[3]*c2)*(1+(a[4]+a[5]*c+a[6]*c2)*a[7]*r)/(a[4]+a[5]*c+a[6]*c2-1)/r3*exp(-(a[4]+a[5]*c+a[6]*c2)*a[7]*(r-a[8]))-0.5*(a[1]+a[2]*c+a[3]*c2)*(-a[4]-a[5]*c-a[6]*c2-(a[4]+a[5]*c+a[6]*c2)*a[7]*r)/(a[4]+a[5]*c+a[6]*c2-1)/r3*exp(-a[7]*(r-a[8])); + py->resize(2); + (*py)(0)=s; + (*py)(1)=b; +} + +SpecificPlugIn,MorseForceConstant> MorseForceConstantRegister("morse"); // register plug-in under name "morse"; diff --git a/src/morsepotc3.c++ b/src/morsepotc3.c++ new file mode 100644 index 0000000..4fac5ee --- /dev/null +++ b/src/morsepotc3.c++ @@ -0,0 +1,39 @@ +#include "array.h" +#include "plugin.h" + +class MorseC3ForceConstant: public ArrayFunctionArray { + Array param; +public: + MorseC3ForceConstant(void): ArrayFunctionArray(), param() {} + void eval(Array *py, const Array &x); + int read(istream &file); +}; + +int MorseC3ForceConstant::read(istream &file) { + file >> param; + if (param.get_size()!=10 && param.get_size()!=20) { + ERRORQUIT("Number of parameters in morsec3 input file must be 10 or 20"); + } + return 1; +} + +void MorseC3ForceConstant::eval(Array *py, const Array &x) { + Real *a=param.get_buf()-1; + Real r=x(0); + Real r2=r*r; + Real r3=r2*r; + Real c=x(2); + Real c2=c*c; + Real c3=c*c*c; + Real s=(a[1]+a[2]*c+a[3]*c2+a[4]*c3)*(2.0+2.0*(a[5]+a[6]*c+a[7]*c2+a[8]*c3)*a[9]*r+pow(a[5]+a[6]*c+a[7]*c2+a[8]*c3,2.0)*a[9]*a[9]*r2)/(a[5]+a[6]*c+a[7]*c2+a[8]*c3-1.0)/(r3)*exp(-(a[5]+a[6]*c+a[7]*c2+a[8]*c3)*a[9]*(r-a[10]))/2.0+(a[1]+a[2]*c+a[3]*c2+a[4]*c3)*(-2.0*a[5]-2.0*a[6]*c-2.0*a[7]*c2-2.0*a[8]*c3-2.0*(a[5]+a[6]*c+a[7]*c2+a[8]*c3)*a[9]*r-(a[5]+a[6]*c+a[7]*c2+a[8]*c3)*a[9]*a[9]*r2)/(a[5]+a[6]*c+a[7]*c2+a[8]*c3-1.0)/(r3)*exp(-a[9]*(r-a[10]))/2.0; + if (x.get_size()==20) { + a=param.get_buf()+10-1; + } + Real b=-(a[1]+a[2]*c+a[3]*c*c+a[4]*c*c*c)*(1.0+(a[5]+a[6]*c+a[7]*c*c+a[8]*c*c*c)*a[9]*r)/(a[5]+a[6]*c+a[7]*c*c+a[8]*c*c*c-1.0)/(r*r*r)*exp(-(a[5]+a[6]*c+a[7]*c*c+a[8]*c*c*c)*a[9]*(r-a[10]))/2.0-(a[1]+a[2]*c+a[3]*c*c+a[4]*c*c*c)*(-a[5]-a[6]*c-a[7]*c*c-a[8]*c*c*c-(a[5]+a[6]*c+a[7]*c*c+a[8]*c*c*c)*a[9]*r)/(a[5]+a[6]*c+a[7]*c*c+a[8]*c*c*c-1.0)/(r*r*r)*exp(-a[9]*(r-a[10]))/2.0; + py->resize(2); + (*py)(0)=s; + (*py)(1)=b; +} + +SpecificPlugIn,MorseC3ForceConstant> MorseC3ForceConstantRegister("morsec3"); // register plug-in under name "morsec3"; + diff --git a/src/movefriends.pl b/src/movefriends.pl new file mode 100644 index 0000000..2f4eff3 --- /dev/null +++ b/src/movefriends.pl @@ -0,0 +1,187 @@ +#! /usr/bin/perl + + +foreach $f( <*.hh> ) +{ + move($f); +} + +my @friends = (); +my @class = (); +my $template = ""; +my $innertemplate = ""; +my $name = ""; +sub move() +{ + my $file = $_[0]; + + system "cp save.$file.save $file"; + system "cp $file save.$file.save"; + open IN, "$file"; + open OUT, ">shit"; + print $file, "\n";; + + my $isinclass=0; + my $opened = 0; + + while( ($_ = ) ) + { + if( /^(\s+|)class(\s+|)(\S+)/ and /\{(\s+)$/ ) + { + /^(\s+|)class(\s+|)(\S+)/; + $isinclass = 1; + $name = $3; + $name =~ s/://; + push @class, ( $_ ); + } + if( /template(\s+|)<((\S|\s)+)>/ and $isinclass == 0 ) + { + $template = $2; + $innertemplate = $template; + while ( $innertemplate =~ s/class// ) {} + while ( $innertemplate =~ s/types::t_int// ) {} + while ( $innertemplate =~ s/int// ){} + $innertemplate =~ s/^\s+//; + $innertemplate =~ s/\s+$//; + } + $opened++ if( $isinclass and /{/ ); + if( /friend/ and not /friend(\s+)class/ ) + { grab_friend(); } + elsif ( $isinclass == 1 ) + { push @class, ($_); } + else { print OUT $_; } + if( $isinclass and /}/ ) + { + $opened--; + if( $opened == 0 ) + { + print_friends(); + $isinclass = 0; + $template = ""; + $innertemplate = ""; + $name = ""; + } + } + + } + close IN; + close OUT; + system "cp shit $file"; + system "rm shit"; +} + +sub grab_friend() +{ + return if ( /\)(\s+|);/ ); + my $line = $_; + my $opened = 0; + +# my $dummy = $innertemplate; +# my $newtem = $template; +# while( $dummy =~ s/,// ){}; +# while( $dummy =~ /\S/ ) +# { +# $dummy =~ s/^\s+//; +# $dummy =~ m/(\S+)/; +# my $word = $1; +# while( $line =~ s/(\b|<|,)$word(\s|>|,)/$1_$word$2/ ) {}; +# while( $newtem =~ s/\b$word/_$word/ ) {}; +# $dummy =~ s/$word//; +# } +# my $dummy = $line; +# $dummy =~ /^(\s+)\S/; +# print OUT "$1template<$newtem>\n"; +# $line =~ s/{/;/; +# print OUT "$line"; + push @friends, ( sprintf "$1 template<%s>\n", $template ) if( $template =~ /\S+/ ); + do + { + my $line = $_; + + while ( $line =~ s/$name(\s+|)<(.*)>/TEMPLATED$1<$2>/ ) {} + if( $line =~ /$name/ ) + { + $line =~ s/$name/$name<$innertemplate>/; + } + while ($line =~ s/TEMPLATED(\s+|)<(.+)>/$name$1<$2>/) {} + + push @friends, ( $line ); + + ++$opened if( /{/ ); + --$opened if( /}/ ); + if( $opened == 0 ) + { + push @friends, ( "\n" ); + return; + } + } + while ( $_ = ); +} + +sub print_friends() +{ + if( $#friends == -1 ) + { + for( my $i = 1; $i < scalar( @class ); $i++ ) + { + print OUT $class[$i]; + } + $#friends = -1; + $#class = -1; + return; + } + # print forward class declaration + print OUT " class $name; \n\n"; + # print forward declarations of friend function + for( my $i = 0; $i < scalar( @friends ); $i++ ) + { + $line = $friends[$i]; + next if( $line !~ /friend/ ); + + my $dummy = $line; + $dummy =~ /^(\s+)/; + print OUT "$1template<$template>\n" if( $template =~ /\S/ ); + $line =~ s/friend//; + $line =~ s/{//; + $line =~ s/\)(\s+|)$/\);/; + print OUT $line, "\n"; + } + + # print start of class + my $line = $class[0]; + my $dummy = $class[0]; + $dummy =~ /^(\s+)/; + print OUT "\n\n$1template<$template>\n" if( $template =~ /\S/ ); + print OUT $class[0]; + + # print friends + for( my $i = 0; $i < scalar( @friends ); $i++ ) + { + $line = $friends[$i]; + next if( $line !~ /friend/ ); + + my $dummy = $line; + $dummy =~ /^(\s+)/; + $line =~ s/{//; + $line =~ s/\(/ <> \(/; + $line =~ s/\)(\s+|)$/\);/; + print OUT $line, "\n"; + } + + # print rest of class definition + for( my $i = 2; $i < scalar( @class ); $i++ ) + { + print OUT $class[$i]; + } + print OUT "\n\n"; + # print friend function definition + for( my $i = 0; $i < scalar( @friends ); $i++ ) + { + $line = $friends[$i]; + $line =~ s/friend//; + print OUT $line; + } + $#friends = -1; + $#class = -1; +} + diff --git a/src/mpiinterf.c++ b/src/mpiinterf.c++ new file mode 100644 index 0000000..d996c67 --- /dev/null +++ b/src/mpiinterf.c++ @@ -0,0 +1,70 @@ +#include "mpiinterf.h" + +MyMPIobj_class MyMPIobj; + +#ifdef DEBUG +ofstream mpidebugfile; +#endif + +/* +template +class MPISynchronizerStream { + Array > to_update_list; +public: + MPISynchronizerStream(void): to_update_list(MyMPIobj.numproc) {} + int is_my_job(int index) { + return (index % MyMPIobj.numproc == MyMPIobj.id); + } + void finish(int wait=1) { + for (int i=0; i head(to_update_list(i)); + if (!head) break; + int flag; + MPI_Status status; + if (wait) { + MPI_Probe(i,i,MPI_COMM_WORLD,&status); + } + else { + MPI_Iprobe(i,i,MPI_COMM_WORLD,&flag,&status); + if (!flag) break; + } + int len; + MPI_Get_count(&status, MPI_CHAR, &len); + char *pbuf=new char[len]; + MPI_Recv(pbuf,len,MPI_CHAR,i,i,MPI_COMM_WORLD,&status); + T **pobj=to_update_list(i).detach(head); + istrstream buf(pbuf); + buf >> (**pobj); + T *tmp=*pobj; + delete pobj; + delete pbuf; + } + } + } + } + void sync(T *pobject, int index) { + int windex=index % MyMPIobj.numproc; + if (windex==MyMPIobj.id) { + ostrstream buf; + buf << *pobject << '\0'; + char *pbuf=buf.str(); + int len=strlen(pbuf)+1; + for (int i=0; i +#include +#include "arraylist.h" +#include "binstream.h" + +#define MYSTR str + +#ifdef ATAT_MPI +#include + +#ifdef DEBUG +extern ofstream mpidebugfile; +#endif + +class MyMPIobj_class { +public: + int numproc; + int id; +public: + MyMPIobj_class(void) {} + void init(int argc, char **argv) { + MPI_Init(&argc, &argv); + MPI_Comm_size(MPI_COMM_WORLD, &numproc); + MPI_Comm_rank(MPI_COMM_WORLD, &id); +#ifdef DEBUG + ostrstream debugfilename; + debugfilename << "debug" << id << ".out" << '\0'; + mpidebugfile.open(debugfilename.str()); +#endif + } + int is_root(void) { return id==0; } + void barrier(void) { MPI_Barrier(MPI_COMM_WORLD); } + int probe(int *psource=NULL) { + int flag; + MPI_Status status; + MPI_Iprobe(MPI_ANY_SOURCE,MPI_ANY_TAG,MPI_COMM_WORLD,&flag,&status); + if (psource) { + *psource=status.MPI_SOURCE; + } + return flag; + } + int file_exists(const char *filename) { + int ex; + if (is_root()) { + ifstream file(filename); + ex=(file ? 1 : 0); + } + MPI_Bcast(&ex,1,MPI_INT,0,MPI_COMM_WORLD); + return ex; + } + ~MyMPIobj_class(void) { + MPI_Finalize(); + } +}; + +extern MyMPIobj_class MyMPIobj; + +template +inline int MyMPI_SendStream(T *pbuf, int dest, int tag, MPI_Comm comm=MPI_COMM_WORLD) { + ostrstream line; + bin_ostream(line,*pbuf); + //const string mine=line.MYSTR(); + //cout << "Sent stream:" << mine.size() << ":" << mine.c_str()+4 << ":" << endl; + //return MPI_Send((void *)mine.c_str(),mine.size(),MPI_CHAR,dest,tag,comm); + return MPI_Send((void *)line.str(),line.tellp(),MPI_CHAR,dest,tag,comm); +} + +template +inline int MyMPI_RecvStream(T *pbuf, int src, int tag, MPI_Comm comm=MPI_COMM_WORLD, MPI_Status *status=NULL) { + int len; + MPI_Status tmpstat; + if (!status) {status=&tmpstat;} + MPI_Probe(src,tag,comm,status); + MPI_Get_count(status, MPI_CHAR, &len); + //cout << "recv size:" << len << endl; + char *ptmpbuf=new char[len]; + int retcode=MPI_Recv((void *)ptmpbuf,len,MPI_CHAR,src,tag,comm,status); + strstream line; + line.write(ptmpbuf,len); + bin_istream(line,*pbuf); + delete ptmpbuf; + return retcode; +} + +template +inline int MyMPI_BcastStream(T *pbuf, int root=0, MPI_Comm comm=MPI_COMM_WORLD) { + int retcode,len; + if (MyMPIobj.id==root) { + ostrstream line; + bin_ostream(line,*pbuf); + len=line.tellp(); + MPI_Bcast(&len,1,MPI_INT,root,comm); + retcode=MPI_Bcast((void *)line.str(),line.tellp(),MPI_CHAR,root,comm); + } + else { + MPI_Bcast(&len,1,MPI_INT,root,comm); + char *ptmpbuf=new char[len]; + retcode=MPI_Bcast((void *)ptmpbuf,len,MPI_CHAR,root,comm); + strstream line; + line.write(ptmpbuf,len); + bin_istream(line,*pbuf); + delete ptmpbuf; + } + return retcode; +} + +template +class MPISynchronizer { + int index; + Array to_update_list; + void finish(void) { + int windex=index % MyMPIobj.numproc; + for (int i=0; i<=windex; i++) { + MyMPI_BcastStream(to_update_list(i),i); + } + } +public: + MPISynchronizer(void): to_update_list(MyMPIobj.numproc) {index=0;} + int is_my_job(void) { + return (index % MyMPIobj.numproc == MyMPIobj.id); + } + void sync(T *pobject) { + to_update_list(index % MyMPIobj.numproc)=pobject; + if ((index % MyMPIobj.numproc) == MyMPIobj.numproc-1) { + finish(); + } + index++; + } + ~MPISynchronizer() { + if ( (index % MyMPIobj.numproc) != 0 ) { + index--; + finish(); + } + MyMPIobj.barrier(); + } +}; + +/* +template +class MPISynchronizer { + int index; + Array > to_update_list; + void finish(int wait=1) { + for (int i=0; i head(to_update_list(i)); + if (!head) break; + int flag; + MPI_Status status; + if (wait) { + MPI_Probe(i,i,MPI_COMM_WORLD,&status); + } + else { + MPI_Iprobe(i,i,MPI_COMM_WORLD,&flag,&status); + if (!flag) break; + } + T **pobj=to_update_list(i).detach(head); + MyMPI_RecvStream(*pobj,i,i,MPI_COMM_WORLD,&status); + delete pobj; + } + } + } + } +public: + MPISynchronizer(void): to_update_list(MyMPIobj.numproc) {index=0;} + int is_my_job(void) { + return (index % MyMPIobj.numproc == MyMPIobj.id); + } + void sync(T *pobject) { + finish(0); + int windex=index % MyMPIobj.numproc; + if (windex==MyMPIobj.id) { + for (int i=0; i +void MyMPI_Reduce(T *pobj, void combine(T *, const T &, const T &), MPI_Comm comm=MPI_COMM_WORLD ) { + MPI_Status status; + if (!MyMPIobj.is_root()) { + MyMPI_SendStream(pobj,0,MyMPIobj.id,comm); + } + else { + T a; + for (int i=1; i +inline int MyMPI_BcastStream(T *pbuf, int root=0) { + return 1; +} + +template +class MPISynchronizer { +public: + MPISynchronizer(void) {} + int is_my_job(void) {return (1);} + void sync(T *pobject) {} +}; + +template +void MyMPI_Reduce(T *pobj, void combine(T *, const T &, const T &)) {} + +#endif + +#endif diff --git a/src/mpitest.c++ b/src/mpitest.c++ new file mode 100644 index 0000000..1183b17 --- /dev/null +++ b/src/mpitest.c++ @@ -0,0 +1,81 @@ +#include "mpiinterf.h" +//#include "xtalutil.h" +//#include "parse.h" + +void mysum(int *a, const int &b, const int &c) { + *a=b+c; +} + +int main(int argc, char **argv) { + MyMPIobj.init(argc,argv); + + int v=MyMPIobj.id+3; + MyMPI_BcastStream(&v,0); + + // MyMPI_Reduce(&v,mysum); + cout << MyMPIobj.id << " " << v << endl; +} + +/* +int main(int argc, char **argv) { + MyMPIobj.init(argc,argv); + int n=15; + Array a(n); + { + MPISynchronizer sync; + for (int i=0; i labels(n); + for (int i=0; i > x(n); + for (int i=0; i > sync; + for (int i=0; i +#include +#include "mrefine.h" +#include "getvalue.h" +#include "mpiinterf.h" + +#ifdef DEGE_GS +#define calc_convex_hull calc_convex_hull_degenerate +#endif + +GenericPlugIn *GenericPlugIn::list=NULL; +GenericPlugIn *GenericPlugIn::list=NULL; +SpecificPlugIn StdClusterExpansionPlugIn("std"); // register plug-in under name "std"; + + +Real calc_structure_cost(const Structure &str, const rMatrix3d &cell, const Array &point_op, const Array &trans, Real complexity_exp) { + return pow((Real)(str.atom_pos.get_size()),complexity_exp); +} + +ClusterExpansion::ClusterExpansion(const Structure &_parent_lattice, + const Array &_site_type_list, + const Array &_atom_label, + const SpaceGroup &_spacegroup, CorrFuncTable *_pcorrfunc): + pclusters(), equiv_cluster(), spacegroup(_spacegroup), structures(_parent_lattice,_site_type_list,spacegroup), weight(), + parent_lattice(_parent_lattice), site_type_list(_site_type_list), atom_label(_atom_label), label_list(), i_label_list(), corr_to_fullconc(), corr_to_conc(), conc_to_fullconc(), conc_to_fullconc_c(), down_e(), conc_range() { + pcorrfunc=_pcorrfunc; + max_multiplet=4; + complexity_exp=3.; + high_energy=MAXFLOAT; + predictor_labels=""; + ignore_gs=0; + user_max_vol=32000;//largest cell possible; + + // initialize lattice_only; + int nbsite=0; + for (nbsite=0; nbsiteinit(max_multi); + + pclusters.resize(2); + // initialize point clusters; + pclusters(0)=new MultiClusterBank(lattice_only,1,spacegroup); + int npoint=pclusters(0)->get_cluster_list().get_size(); + for (int i=0; iget_current_length()get_current_index()+pclusters(1)->get_current_index(); + + // initialize equivalent clusters lists; + equiv_cluster.resize(2); + for (int i=0; i >; + LinkedListIterator c(pclusters(i)->get_cluster_list()); + for ( ; c; c++) { + Array *parraycluster=new Array; + find_equivalent_clusters(parraycluster,*c,spacegroup.cell,spacegroup.point_op,spacegroup.trans); + (*equiv_cluster(i)) << parraycluster; + } + } + reset_cluster_choice(); + + calc_corr_to_conc(&corr_to_fullconc,parent_lattice,site_type_list,spacegroup,*pcorrfunc); + extract_nonredundant(&corr_to_conc,&conc_to_fullconc,&conc_to_fullconc_c, corr_to_fullconc); + // cerr << corr_to_conc << endl; + // cerr << conc_to_fullconc << endl; + // cerr << conc_to_fullconc_c << endl; + down_e.resize(corr_to_conc.get_size()(0)+1); + zero_array(&down_e); + down_e(down_e.get_size()-1)=-1.; + + update_correlations(StructureInfo::anystatus); + reset_structure(); + +} + +ClusterExpansion::~ClusterExpansion(void) { + for (int i=0; ilabel)==0) { + while (i_label_list && *i_label_list == cur_label) { + i_label_list++; + cur_label++; + } + label_list.add(new int(cur_label),i_label_list); + ostrstream tmp; + tmp << cur_label << '\0'; + str->label.set(tmp.str()); + } + // set structure cost, if needed; + if (str->cost==0) str->cost=calc_structure_cost(*str,spacegroup.cell,spacegroup.point_op,spacegroup.trans,complexity_exp); + + // creates new lists for larger multiplet if needed; + int multiplet_to_add=pclusters.get_size() - str->correlations.get_size(); + while (multiplet_to_add>0) { + str->correlations << new LinkedList(); + multiplet_to_add--; + } + + // loop through multiplets and add missing correlations; + LinkedListIterator corr_list(str->correlations); + + { + MPISynchronizer sync; + for (int clus_list=0; clus_list corr(*corr_list); + LinkedListIterator clus(pclusters(clus_list)->get_cluster_list()); + LinkedListIterator > equiv_clus(*equiv_cluster(clus_list)); + int idx=0; + // go to the end of the corr. list; + while (corr) {corr++; clus++; equiv_clus++; idx++;} + // and then add the missing corr.; + for ( ; idxget_current_index(); clus++, equiv_clus++, idx++) { + Real *prho=new Real; + if (sync.is_my_job()) { + *prho=calc_correlation(*str,*equiv_clus,spacegroup.cell,*pcorrfunc); + } + (*corr_list) << prho; + sync.sync(prho); + } + } + } + + // create predictor objects, if needed; + if (str->predictor.get_size()==0) { + make_plug_in_list(&(str->predictor),predictor_labels); + } +} + +void ClusterExpansion::update_correlations(StructureInfo::Status select) { + reset_structure(); + // for each structure that maches the select mask, update correlations.; + LinkedListIterator str(structures.get_structure_list()); + for ( ; str; str++) { + if (str->status & select) update_correlations(str); + } +} + +void ClusterExpansion::init_predictors(void) { + LinkedList l; + make_plug_in_list(&l,predictor_labels); + LinkedListIterator i(l); + for (; i; i++) { + i->static_init(*this); + } +} + +void ClusterExpansion::calc_concentration(Array *pconcentration, const Array &corr_vector) { + int nc=corr_to_conc.get_size()(0); + int nr=corr_to_conc.get_size()(1); + pconcentration->resize(nc); + zero_array(pconcentration); + for (int i=0; i > *pconcentration, const Array2d &corr_matrix) { + int nc=corr_to_conc.get_size()(0); + int nr=corr_to_conc.get_size()(1); + int ns=corr_matrix.get_size()(0); + pconcentration->resize(ns); + for (int s=0; s *pcorr_matrix, Array *penergy, + StructureInfo::Status select) { + // update all selected structures; + update_correlations(select); + // first count the number of structures selected and resize relevant arrays; + int nb_str=0; + LinkedListIterator str(structures.get_structure_list()); + for (; str; str++) { + if (str->status & select) nb_str++; + } + pcorr_matrix->resize(iVector2d(nb_str,nb_clusters)); + if (penergy) {penergy->resize(nb_str);} + + // loop through structures; + int i_str=0; + str.init(structures.get_structure_list()); + for (; str; str++) { + if (str->status & select) { //if structure matches mask; + if (penergy) {(*penergy)(i_str)=str->energy;} // copy energy; + // copy correlations; + (*pcorr_matrix)(i_str,0)=1.; + int i_corr=1; + LinkedListIterator corr_list(str->correlations); + for (int clus_list=0; corr_list; corr_list++, clus_list++) { + LinkedListIterator corr(*corr_list); + for (int i=0; iget_current_index(); i++) { + (*pcorr_matrix)(i_str,i_corr)=*corr; + corr++; + i_corr++; + } + } + i_str++; + } + } +} + +void ClusterExpansion::calc_predictor_energy(Array *penergy, StructureInfo::Status select) { + // update all selected structures; + update_correlations(select); + // first count the number of structures selected and resize relevant arrays; + int nb_str=0; + LinkedListIterator str(structures.get_structure_list()); + for (; str; str++) { + if (str->status & select) nb_str++; + } + penergy->resize(nb_str); + + // loop through structures; + int i_str=0; + str.init(structures.get_structure_list()); + for (; str; str++) { + if (str->status & select) { //if structure matches mask; + (*penergy)(i_str)=0.; + LinkedListIterator ip(str->predictor); // loop through user-defined predictor; + for (; ip; ip++) { + (*penergy)(i_str)+=ip->get_energy(*str); + } + // cout << str->label << " " << (*penergy)(i_str) << endl; // trace info, if needed; + i_str++; + } + } +} + +Real ClusterExpansion::calc_predictor_energy(StructureInfo *str) { + update_correlations(str); + Real e=0.; + LinkedListIterator ip(str->predictor); // loop through user-defined predictor; + for (; ip; ip++) { + e+=ip->get_energy(*str); + } + return e; +} + +void ClusterExpansion::reset_cluster_choice(void) { + // reset all cluster generators; + for (int i=1; ireset(); + } + // include minimum number of pairs (1nn); + while ( pclusters(1)->get_current_length() str(structures.get_structure_list()); + for (; str; str++) { + if (str->status==StructureInfo::calculated) nb_calculated_str++; + } + // init nb of clusters in fit; + nb_clusters=1+pclusters(0)->get_current_index()+pclusters(1)->get_current_index(); + // make sure we have enough corr; + update_correlations(StructureInfo::calculated); +} + +void ClusterExpansion::update_equivalent_clusters(void) { + // update the lists of clusters equivalent by a space group symmetry operation (to speed up the calculation of the correlations); + // first add new multiplets if needed; + if (pclusters.get_size()>equiv_cluster.get_size()) { + Array > * > tmp; + tmp.copy(equiv_cluster); + equiv_cluster.resize(pclusters.get_size()); + int m; + for (m=0; m >; + } + } + // now add the missing equivalent clusters; + for (int m=0; m c(pclusters(m)->get_cluster_list()); + LinkedListIterator > e(*equiv_cluster(m)); + while (e) {e++; c++;} // go to the end of the list; + for (; c; c++) { // loop through clusters; + Array *pequiv=new Array; + find_equivalent_clusters(pequiv,*c,spacegroup.cell,spacegroup.point_op,spacegroup.trans); + (*equiv_cluster(m)) << pequiv; + } + } +} + +int ClusterExpansion::find_next_cluster_choice(int colinear) { + if (!colinear) { + // add new multiplets if needed; + if (pclusters(pclusters.get_size()-1)->get_current_index()>0 && pclusters.get_size() tmp(pclusters); + pclusters.resize(tmp.get_size()+1); + for (int i=0; iget_current_index()>0) {c++;} + // B; + while (1) { + Real cur_len=pclusters(c)->get_current_length(); + while (pclusters(c)->get_current_length()get_previous_length() < pclusters(c-1)->get_previous_length()+zero_tolerance) break; // E; + // F; + nb_clusters-=pclusters(c)->get_current_index(); + pclusters(c)->reset(); + // G; + c--; + } + } + else { + int c=0; + while (cget_current_index()>0) {c++;} + c--; + // cerr << c << endl; + if (c<=1) {return 0;} + nb_clusters-=pclusters(c)->get_current_index(); + pclusters(c)->reset(); + while (1) { + c--; + // cerr << c << endl; + if (c<1) {return 0;} + Real cur_len=pclusters(c)->get_current_length(); + while (pclusters(c)->get_current_length()get_previous_length() < pclusters(c-1)->get_previous_length()+zero_tolerance || c==1) ) break; + nb_clusters-=pclusters(c)->get_current_index(); + pclusters(c)->reset(); + } + } + + // update the lists of clusters equivalent under space group symmetry operation; + update_equivalent_clusters(); + // make sure that the corresponding corr. have been calculated; + update_correlations(StructureInfo::calculated); + // are there any other cluster choices to try?; + return (nb_clusters < nb_calculated_str); +} + +void ClusterExpansion::set_cluster_choice(const Array &choice) { + // add new multiplets if needed; + if (pclusters.get_size() tmp(pclusters); + pclusters.resize(choice.get_size()); + int m; + for (m=0; mget_current_index(); // count empty and point; + // advance the index of cluster generator i to choice(i); + int i; + for (i=1; ireset(); + while (pclusters(i)->get_current_index()get_current_index(); // keep count of clusters; + } + // reset any other multiplet not given in array choice; + for (; ireset(); + } + update_equivalent_clusters(); +} + +void ClusterExpansion::get_cluster_choice(Array *pchoice) { + pchoice->resize(pclusters.get_size()); + for (int i=0; iget_size(); i++) { + (*pchoice)(i)=pclusters(i)->get_current_index(); + } +} + +void ClusterExpansion::find_best_cluster_choice(CEFitInfo *pfitinfo) { + reset_cluster_choice(); // select minimal cluster expansion; + + // setup correlation matrix, and energy and concentration vectors; + Array2d corr_matrix; + Array energy; + Array predictor_energy; + Array ce_energy; + Array > concentration; + calc_regression_matrices(&corr_matrix,&energy); + if (corr_matrix.get_size()(0)status=CEFitInfo::fit_impossible;} + return; + } + if (pfitinfo) {pfitinfo->status=CEFitInfo::fit_ok;} + calc_concentration(&concentration,corr_matrix); + init_predictors(); + // find ground states; + LinkedList hull; + Array > conc_e; + paste_col_vector(&conc_e,concentration,energy); + if (!ignore_gs) {calc_convex_hull(&hull, conc_e, down_e);} + clip_hull(&hull,conc_e,conc_range); + // init weights (to 1) unless user-specified weights.in file exists; + Array weight1; + if (MyMPIobj.is_root()) { + ifstream file("weights.in"); + if (file) { + cerr << "weights.in file detected, reading user-specified weights." << endl; + LinkedList wlist; + while (file) { + Real w=MAXFLOAT; + file >> w; + if (w==MAXFLOAT) break; + wlist << new Real(w); + } + LinkedList_to_Array(&weight1,wlist); + } + else { + weight1.resize(concentration.get_size()); + one_array(&weight1); + } + } + MyMPI_BcastStream(&weight1); + weight=weight1; + Array best_choice; // to remember best choice; + Array best_eci_mult; // to remember best eci (times multiplicity); + Array best_choice_noweight; // if weighting fails, save the best noweight solution; + Array best_eci_mult_noweight; // + // if a user specified choice has been given; + if (MyMPIobj.is_root()) { + ifstream cluster_choice_file("nbclusters.in"); + if (cluster_choice_file) { + LinkedList cluster_choice; + cluster_choice << new int(pclusters(0)->get_current_index()); + if (MyMPIobj.is_root()) cerr << "nbclusters.in file detected, using user-specified cluster choice" << endl; + while (skip_delim(cluster_choice_file)) { + int nc; + cluster_choice_file >> nc; + cluster_choice << new int(nc); + } + LinkedList_to_Array(&best_choice,cluster_choice); + } + } + MyMPI_BcastStream(&best_choice); + + if (best_choice.get_size()>0) { // if user-specified cluster choice; + calc_predictor_energy(&predictor_energy); + } + else { // if automatically determined cluster choice; + while (1) { // repeat until ground states ok; + reset_cluster_choice(); // select minimal cluster expansion; + int best_gs_ok=0; + Real best_cv=MAXFLOAT; + int colinear; + do { // loop through cluster choices; + //if you want to print out trace information; + for (int i=0; iget_current_index() << " "; + } + + // calc cross-validation score; + calc_regression_matrices(&corr_matrix,&energy); + calc_predictor_energy(&predictor_energy); + diff(&ce_energy,energy,predictor_energy); + Real cv=calc_cv(corr_matrix,ce_energy,weight,1); + // do regression and add back the predictor energy; + Array cur_eci_mult; + Array fitted_energy; + calc_ols(&cur_eci_mult,corr_matrix,ce_energy,weight,1); + product(&fitted_energy,corr_matrix,cur_eci_mult); + sum(&fitted_energy,fitted_energy,predictor_energy); + // check for qualitatively wrong ground states; + Array problems; + paste_col_vector(&conc_e,conc_e,fitted_energy); + update_normals(&hull,conc_e); + int gs_ok=!flag_outside_hull(&problems, &hull, conc_e,0); + // save best choice so far; + if (MyMPIobj.is_root()) cerr << gs_ok << " " << cv/(Real)(lattice_only.atom_pos.get_size()) << endl; + if ((gs_ok>best_gs_ok && cv!=MAXFLOAT) || (gs_ok==best_gs_ok && cv cur_choice; + get_cluster_choice(&cur_choice); + int i=2; + for ( ; istatus=CEFitInfo::fit_impossible;} + return; + } + // do regression and predict energies with best choice found; + set_cluster_choice(best_choice); + calc_regression_matrices(&corr_matrix,NULL); + Array fitted_energy; + product(&fitted_energy,corr_matrix,best_eci_mult); + sum(&fitted_energy,fitted_energy,predictor_energy); + // check for qualitatively wrong ground states; + Array problems; + paste_col_vector(&conc_e,conc_e,fitted_energy); + update_normals(&hull,conc_e); + if (!flag_outside_hull(&problems, &hull, conc_e,1)) break; // no problems: exit loop; + //cerr << "GS problems" << endl; + // increase the weights of all structures that cause problem; + Real max_weight=0.; + for (int i=0; imax_weight) max_weight=weight(i); + } + if (max_weight>=16.) { // give up after too many retries; + weight=weight1; // reset weights to one; + best_choice=best_choice_noweight; + best_eci_mult=best_eci_mult_noweight; + if (pfitinfo) {pfitinfo->status = CEFitInfo::gs_problem;} + break; + } + } + } + set_cluster_choice(best_choice); // save best choice into ClusterExpansion object; + eci_mult=best_eci_mult; // along with best eci; + + // save all the information in a CEFitInfo object; + if (pfitinfo) { + Real volume=(Real)(lattice_only.atom_pos.get_size()); + calc_regression_matrices(&corr_matrix,&energy); + + // create array of pointers to structures included in the fit; + pfitinfo->pstr.resize(energy.get_size()); + LinkedListIterator s(structures.get_structure_list()); + for (int i=0; ipstr.get_size(); s++) { + if (s->status==StructureInfo::calculated) { + pfitinfo->pstr(i)=s; + i++; + } + } + // find (or read in) the energy of the end members; + pfitinfo->pure_energy.resize(0); + if (MyMPIobj.is_root()) { + ifstream pure_file("ref_energy.in"); + if (pure_file) { + pfitinfo->pure_energy.resize(atom_label.get_size()); + for (int i=0; i> pfitinfo->pure_energy(i); + pfitinfo->pure_energy(i)*=volume; + } + } + } + MyMPI_BcastStream(&(pfitinfo->pure_energy)); + // consider formation energies; + Array > full_conc(concentration.get_size()); + for (int i=0; ipure_energy),full_conc,energy); + diff(&ce_energy,energy,predictor_energy); + // copy concentration, energy, weight, list of true ground states; + pfitinfo->concentration=full_conc; + pfitinfo->energy=energy; + pfitinfo->weight=weight; + LinkedList true_gs; + LinkedListIterator i_face(hull); + for (; i_face; i_face++) { + for (int i=0; ipts.get_size(); i++) { + add_unique(&true_gs,i_face->pts(i),TrivEqual()); + } + } + LinkedList_to_Array(&(pfitinfo->gs_list),true_gs); + // volume of the largest generated structure; + pfitinfo->max_volume=structures.get_max_volume(); + + // eci (will be divided by multiplicity below); + calc_ols(&(pfitinfo->eci), corr_matrix,ce_energy,weight,1); + // predicted energies; + product(&(pfitinfo->fitted_energy), corr_matrix,pfitinfo->eci); + sum(&(pfitinfo->fitted_energy), pfitinfo->fitted_energy,predictor_energy); + + // cv score; + pfitinfo->cv=calc_cv(corr_matrix,ce_energy,empty_rArray,1)/volume; + + // done with fitting, we can express energies per active atom; + for (int i=0; ienergy.get_size(); i++) { + pfitinfo->energy(i)/=volume; + pfitinfo->fitted_energy(i)/=volume; + } + for (int i=0; ipure_energy.get_size(); i++) { + pfitinfo->pure_energy(i)/=volume; + } + if (MyMPIobj.is_root()) { + // write out reference energies of pure end members + ofstream pure_file("ref_energy.out"); + for (int i=0; ipure_energy.get_size(); i++) { + pure_file << pfitinfo->pure_energy(i) << endl; + } + } + + // look for predicted ground states among all generated structures; + // of unknown energies; + { + // construct ground state line by joining the fitted energies of the + // true ground states; + paste_col_vector(&conc_e,conc_e,pfitinfo->fitted_energy); + update_normals(&hull,conc_e); + + // predict energies of all generated structures of unknown energy; + Array2d all_corr; + Array all_fitted_energy; + Array all_predictor_energy; + + calc_regression_matrices(&all_corr,NULL, (StructureInfo::Status) (StructureInfo::unknown | StructureInfo::busy | StructureInfo::error)); + calc_predictor_energy(&all_predictor_energy, (StructureInfo::Status) (StructureInfo::unknown | StructureInfo::busy | StructureInfo::error)); + product(&all_fitted_energy, all_corr,pfitinfo->eci); + sum(&all_fitted_energy, all_fitted_energy,all_predictor_energy); + product(&all_fitted_energy, all_fitted_energy,1./volume); + // find concentration of all generated structures; + Array > all_concentration; + Array > all_conc_e; + calc_concentration(&all_concentration,all_corr); + paste_col_vector(&all_conc_e,all_concentration,all_fitted_energy); + // check for structures breaking the hull; + Array problem; + if (flag_outside_hull(&problem, &hull, all_conc_e,0)) { + pfitinfo->status = (CEFitInfo::Status)(pfitinfo->status | CEFitInfo::new_gs); + } + transfer_list(&(pfitinfo->hull),&hull); + pfitinfo->corr_to_fullconc=corr_to_fullconc; + pfitinfo->corr_to_conc=corr_to_conc; + pfitinfo->conc_to_fullconc=conc_to_fullconc; + pfitinfo->conc_to_fullconc_c=conc_to_fullconc_c; + // output all conc. and energy of all generated structures of unknown energy; + if (MyMPIobj.is_root()) { + LinkedListIterator s(structures.get_structure_list()); + ofstream allstr("predstr.out"); + allstr.setf(ios::fixed); + allstr.precision(6); + for (int i=0; istatus & (StructureInfo::Status) (StructureInfo::unknown | StructureInfo::busy | StructureInfo::error))) {s++;} + const char *slabel=s->label; + Array cur_conc; + product(&cur_conc,conc_to_fullconc,all_concentration(i)); + sum(&cur_conc,cur_conc,conc_to_fullconc_c); + for (int j=0; jstatus & StructureInfo::unknown ? "?" : slabel) << " " + << (s->status & StructureInfo::busy ? "b" : "") + << (s->status & StructureInfo::error ? "e" : "") + << (s->status & StructureInfo::unknown ? "u" : "") + << (problem(i) ? "g" : "") + << endl; + s++; + } + } + } + // save clusters and their multiplicity; + pfitinfo->cluster.resize(nb_clusters); + pfitinfo->multiplicity.resize(nb_clusters); + pfitinfo->multiplicity(0)=1.; + pfitinfo->cluster(0)=MultiCluster(0); + int c=1; + for (int m=0; mreset(); + for (int i=0; icluster(c)=(*pclusters(m)); + pfitinfo->multiplicity(c)=(Real)calc_multiplicity(pfitinfo->cluster(c),parent_lattice.cell,spacegroup.point_op,spacegroup.trans); + pfitinfo->eci(c)/=pfitinfo->multiplicity(c); + } + } + } +} + +void ClusterExpansion::make_correlation_array(Array *array_corr, const LinkedList &list_corr) { + array_corr->resize(nb_clusters); + (*array_corr)(0)=1.; + int dest=1; + // loop through each multiplet + LinkedListIterator lc(list_corr); + for (int i=0; i src(*lc); + for (int c=0; cget_current_index(); c++, dest++, src++) { + (*array_corr)(dest)=*src; + } + } +} + +void ClusterExpansion::reset_structure(void) { + LinkedListIterator i(label_list); + while (i) delete label_list.detach(i); + LinkedListIterator j(structures.get_structure_list()); + for ( ; j; j++) { + int index=-1; + istrstream tmp((const char *)(j->label)); + tmp >> index; + if (index!=-1) { + LinkedListIterator i(label_list); + for ( ; i; i++) { + if (*i>index) break; + } + label_list.add(new int(index),i); + } + } + i_label_list.init(label_list); + cur_label=0; + structures.reset(); + update_correlations(&(structures.get_current_structure())); +} + +void ClusterExpansion::find_next_structure(void) { + structures++; + update_correlations(&(structures.get_current_structure())); +} + +void ClusterExpansion::set_concentration_range(const LinkedList &_conc_range, int _ignore_gs) { + LinkedListIterator i(_conc_range); + for (; i; i++) { + LinearInequality *pineq=new LinearInequality; + pineq->c=i->c-inner_product(conc_to_fullconc_c,i->v); + Array tmp; + inner_product(&tmp,conc_to_fullconc,i->v); + pineq->v.resize(tmp.get_size()+1); + for (int j=0; jv(j)=tmp(j); + } + pineq->v(tmp.get_size())=0.; + conc_range << pineq; + } + ignore_gs=_ignore_gs; +} + +void ClusterExpansion::set_predictor_labels(const char *labels) { + predictor_labels=labels; + update_correlations(StructureInfo::anystatus); +} + +Real get_hull_energy(const LinkedList &hull, const Array &conc) { + Real maxa=-MAXFLOAT; + LinkedListIterator i(hull); + for (; i; i++) { + Real a=-i->c; + for (int j=0; jup(j)*conc(j); + } + a/=-i->up(conc.get_size()); + maxa=MAX(maxa,a); + } + return maxa; +} + +StructureInfo * ClusterExpansion::find_best_structure(void) { + // do the fit; + Array2d raw_corr,corr; + Array energy; + Array ce_energy; + Array predictor_energy; + Array eci; + Array fitted_energy; + calc_regression_matrices(&raw_corr,&energy); + calc_predictor_energy(&predictor_energy); + diff(&ce_energy,energy,predictor_energy); + Array cols; + list_nonredundant_columns(&cols,raw_corr); + extract_columns(&corr,raw_corr,cols); + + if (corr.get_size()(1) > concentration; + calc_concentration(&concentration,raw_corr); + LinkedList hull; + Array > conc_e; + paste_col_vector(&conc_e,concentration,energy); + if (!ignore_gs) {calc_convex_hull(&hull, conc_e, down_e);} + clip_hull(&hull,conc_e,conc_range); + paste_col_vector(&conc_e,conc_e,fitted_energy); + update_normals(&hull,conc_e); + + // predict all unknown energies; + Array2d raw_un_corr,un_corr; + Array un_fitted_energy; + Array un_predictor_energy; + calc_regression_matrices(&raw_un_corr,NULL, StructureInfo::unknown); + calc_predictor_energy(&un_predictor_energy, StructureInfo::unknown); + extract_columns(&un_corr,raw_un_corr,cols); + + product(&un_fitted_energy, un_corr,eci); + sum(&un_fitted_energy, un_fitted_energy,un_predictor_energy); + // and concentrations; + Array > un_concentration; + calc_concentration(&un_concentration,raw_un_corr); + + // are there ground state problems?; + Array > un_conc_e; + paste_col_vector(&un_conc_e,un_concentration,un_fitted_energy); + Array problem; // will contain 1's for structures which break the hull; + if (flag_outside_hull(&problem, &hull, un_conc_e,0)) { + // if there are new predicted ground state, look among them for the structure that give the greatest var reduction; + Array2d rhorho; + // treat all structures as equally important; + set_identity(&rhorho,corr.get_size()(1)); + + LinkedList new_gs; + Array > new_gs_conc_e; + paste_col_vector(&new_gs_conc_e,un_concentration,un_fitted_energy); + calc_convex_hull(&new_gs, new_gs_conc_e, down_e); + clip_hull(&new_gs,new_gs_conc_e,conc_range); + LinkedListIterator i_new_gs(new_gs); + for (; i_new_gs; i_new_gs++) { + for (int i=0; ipts.get_size(); i++) { + problem(i_new_gs->pts(i))|=2; // structures that break the hull and are potential new ground states will be labelled 3; + } + } + + // compute the matrices that enter the expression + // of the covariance matrix of the ECI; + Array2d w_x,ww_x; + product_diag(&w_x, weight,corr); + product_diag(&ww_x, weight,w_x); + Array2d xw2x,xw4x; + inner_product(&xw2x, w_x,w_x); + inner_product(&xw4x, ww_x,ww_x); + Array2d xw2xi; + invert_matrix(&xw2xi, xw2x); + // compute variance before adding a new structure; + Real var_before; + { + Array2d tmp,var_eci; + product(&tmp, xw4x,xw2xi); + product(&var_eci, xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var_before=trace(tmp); + } + + // save best structure; + StructureInfo *p_best_str=NULL; + Real max_benefit=0.; // benefit is variance reduction over computational cost; + reset_structure(); + // loop over predicted ground states whose true energy is unknown; + for (int istr=0; istr raw_cur_rho,cur_rho; + make_correlation_array(&raw_cur_rho, structures.get_current_structure().correlations); + extract_elements(&cur_rho,raw_cur_rho,cols); + Array2d cur_rhorho; + outer_product(&cur_rhorho, cur_rho,cur_rho); + Array2d cur_xw2x,cur_xw2xi,cur_xw4x; + sum(&cur_xw2x, xw2x,cur_rhorho); + sum(&cur_xw4x, xw4x,cur_rhorho); + invert_matrix(&cur_xw2xi, cur_xw2x); + Array2d tmp,var_eci; + product(&tmp, cur_xw4x,cur_xw2xi); + product(&var_eci, cur_xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var=trace(tmp); + } + // calculate benefit of adding structure; + Real benefit=(var_before-var)/structures.get_current_structure().cost; + // save structure if it is the best so far; + if (benefit>max_benefit) { + max_benefit=benefit; + p_best_str=&structures.get_current_structure(); + } + } + if (istr rhorho; + // treat all structures as equally important; + set_identity(&rhorho,corr.get_size()(1)); + + // compute the matrices that enter the expression + // of the covariance matrix of the ECI; + Array2d w_x,ww_x; + product_diag(&w_x, weight,corr); + product_diag(&ww_x, weight,w_x); + Array2d xw2x,xw4x; + inner_product(&xw2x, w_x,w_x); + inner_product(&xw4x, ww_x,ww_x); + Array2d xw2xi; + invert_matrix(&xw2xi, xw2x); + + // compute best possible correlation to add; + Array best_dir(corr.get_size()(1)); + { + // best_dir is the eigenvector associated with the smallest eigenvalue of xw2x; + // find by iterating u=inverse(xw2x)*v; v=u/|u|; + zero_array(&best_dir); + best_dir(best_dir.get_size()-1)=1.; // initial guess; + Array old_dir; + Array d_dir; + do { // iterate; + old_dir.copy(best_dir); + Array tmp; + product(&tmp, xw2xi,best_dir); + product(&best_dir, tmp, 1./sqrt(inner_product(tmp,tmp))); + diff(&d_dir ,best_dir,old_dir); + } while (inner_product(d_dir,d_dir)>1e-4); // until tolerance met; + // normalize so that largest correlation has modulus 1; + Real m=MAX(fabs(max(best_dir)),fabs(min(best_dir))); + product(&best_dir,best_dir,1./m); + } + + // compute variance before adding a new structure; + Real var_before; + { + Array2d tmp,var_eci; + product(&tmp, xw4x,xw2xi); + product(&var_eci, xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var_before=trace(tmp); + } + + // compute variance after the best possible correlation has been added; + Real var; + { + Array2d cur_rhorho; + outer_product(&cur_rhorho, best_dir, best_dir); + Array2d cur_xw2x,cur_xw2xi,cur_xw4x; + sum(&cur_xw2x, xw2x,cur_rhorho); + sum(&cur_xw4x, xw4x,cur_rhorho); + invert_matrix(&cur_xw2xi, cur_xw2x); + Array2d tmp,var_eci; + product(&tmp, cur_xw4x,cur_xw2xi); + product(&var_eci, cur_xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var=trace(tmp); + } + + // now we have the maximum possible variance reduction due to adding a structure; + Real max_possible_dvar=var_before-var; + + // save best structure; + StructureInfo *p_best_str=NULL; + Real max_benefit=0.; // benefit is variance reduction over computational cost; + reset_structure(); + // loop over unknown structures; + while (1) { + if (structures.get_current_structure().status==StructureInfo::unknown) { + // stop search when current computational cost is so high that even if; + // the maximum variance reduction is achieved the benefits are lower; + // than what we already have; + if (max_possible_dvar/structures.get_current_structure().cost < max_benefit || structures.get_current_structure().atom_pos.get_size()>user_max_vol) break; + // calculate variance after the current structure has been added to the fit; + Real var; + Array cur_concentration; + Real cur_energy; + { + Array raw_cur_rho,cur_rho; + make_correlation_array(&raw_cur_rho, structures.get_current_structure().correlations); + calc_concentration(&cur_concentration,raw_cur_rho); + extract_elements(&cur_rho,raw_cur_rho,cols); + cur_energy=inner_product(cur_rho,eci)+calc_predictor_energy(&(structures.get_current_structure())); + Array2d cur_rhorho; + outer_product(&cur_rhorho, cur_rho,cur_rho); + Array2d cur_xw2x,cur_xw2xi,cur_xw4x; + sum(&cur_xw2x, xw2x,cur_rhorho); + sum(&cur_xw4x, xw4x,cur_rhorho); + invert_matrix(&cur_xw2xi, cur_xw2x); + Array2d tmp,var_eci; + product(&tmp, cur_xw4x,cur_xw2xi); + product(&var_eci, cur_xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var=trace(tmp); + } + // calculate benefit of adding structure; + Real benefit=(var_before-var)/structures.get_current_structure().cost; + // save structure if it is the best so far; + if (benefit>max_benefit) { + if (is_point_in_hull(cur_concentration,conc_range)) { + if (cur_energy<=get_hull_energy(hull,cur_concentration)+high_energy) { + max_benefit=benefit; + p_best_str=&structures.get_current_structure(); + } + } + } + } + find_next_structure(); + } // loop to next structure; + return p_best_str; + } +} + +StructureInfo * ClusterExpansion::find_initial_structures(void) { + // find the space spanned by the correlations of existing structures; + // basis contains the result; + reset_cluster_choice(); + update_correlations(StructureInfo::anystatus); + LinkedListIterator i(structures.get_structure_list()); + Array basis; + int nb_in_basis=0; + for (;i; i++) { + if (i->status & (StructureInfo::calculated | StructureInfo::busy)) { + Array cur_corr; + make_correlation_array(&cur_corr,i->correlations); + build_basis(&basis,&nb_in_basis,cur_corr); + } + } + // if there are enough structures to fit the minimal cluster expansion, quit; + if (nb_in_basis==nb_clusters) return NULL; + + // loop through unknown structures in search of a non-coplanar correlation; + reset_structure(); + while (1) { + if (structures.get_current_structure().status==StructureInfo::unknown) { + Array cur_corr; + make_correlation_array(&cur_corr,structures.get_current_structure().correlations); + Array c; + calc_concentration(&c,cur_corr); + if (is_point_in_hull(c,conc_range)) { + if (build_basis(&basis,&nb_in_basis,cur_corr)) break; + } + } + find_next_structure(); + } + return &(structures.get_current_structure()); +} + +StructureInfo * ClusterExpansion::find_first_unknown_structure(void) { + reset_structure(); + while (1) { + while (structures.get_current_structure().status!=StructureInfo::unknown) { + find_next_structure(); + } + Array cur_corr; + make_correlation_array(&cur_corr,structures.get_current_structure().correlations); + Array c; + calc_concentration(&c,cur_corr); + if (is_point_in_hull(c,conc_range)) break; + find_next_structure(); + } + return &(structures.get_current_structure()); +} diff --git a/src/mrefine.hh b/src/mrefine.hh new file mode 100644 index 0000000..497b715 --- /dev/null +++ b/src/mrefine.hh @@ -0,0 +1,226 @@ +#ifndef _RAFFINE_H_ +#define _RAFFINE_H_ + +#include "clus_str.h" +#include "linalg.h" +#include "chull.h" +#include "lstsqr.h" +#include "plugin.h" + +typedef LinkedList LinkedListReal; + +class StructureInfo; +class ClusterExpansion; + +class EnergyPredictor { + public: + EnergyPredictor(void) {} + virtual void static_init(const ClusterExpansion &ce) {} + virtual Real get_energy(const StructureInfo &str) {return 0.;} +}; + +class StructureInfo: public Structure { + public: + enum Status {unknown=1,calculated=2,busy=4,error=8,anystatus=15}; + Real energy; + Status status; + Real cost; + AutoString label; + LinkedList predictor; + LinkedList correlations; + StructureInfo(void): Structure(), + label(), correlations(), predictor() + { + energy=0; + status=unknown; + cost=0.; + } + StructureInfo(const Structure &str): Structure(str), + label(), correlations(), predictor() + { + energy=0; + status=unknown; + cost=0.; + } +}; + +Real calc_structure_cost(const Structure &str, const rMatrix3d &cell, const Array &point_op, const Array &trans, Real complexity_exp); + +// Describes the status of a cluster expansion fit; +class CEFitInfo { + public: + enum Status {fit_ok=0, fit_impossible=1, gs_problem=2, new_gs=4}; + // Respectively means: + // no problem; + // no enough data to fit; + // predicted ground states do not agree with currently known ground states; + // new ground states (whose exact energy is not known yet) have been predicted; + Status status; + Array pstr; // Pointers to structures included in the fit; + Array pure_energy; // Energies of the end members (e.g. pure elements); + Array > concentration; // Concentrations \; + Array fitted_energy; // Predicted energies | of the str used in the fit; + Array energy; // True energies /; + + Array weight; // weights needed to get the right GS line; + Real cv; // crossvalidation score (when weights turned off); + Array gs_list; // indices (into any of the 4 previous arrays) of the true ground states + LinkedList hull; + Array2d corr_to_fullconc; // converts correlation to redundant concentration; + Array2d corr_to_conc; // converts correlation to non redundant concentration; + Array2d conc_to_fullconc; // converts nonredundant concentration to full redundant concentration; + Array conc_to_fullconc_c; // constant terms of previous matrix; + int max_volume; // largest volume considered when looking for new ground states; + Array cluster; // clusters used in the optimal fit; + Array multiplicity; // corresponding multiplicities; + Array eci; // corresponding ECI; +}; + +class ClusterExpansion { + protected: + SpaceGroup spacegroup; // see findsym.h; + StructureBank structures; // structure generation object \ see clus_str.h; + Array pclusters; // cluster generation object /; + // *(pclusters(0)): points, *(pclusters(1)): pairs, etc.; + Array > * > equiv_cluster; // image of each cluster by all elements of the factor group; + Array weight; // weights used in the optimal fit; + Array eci_mult; // fitted ECI (times multiplicity); + Structure parent_lattice; // the lattice; + Structure lattice_only; // the lattice, with fixed atoms removed; + Array site_type_list; // as read by parse_lattice_file; + Array atom_label; // as read by parse_lattice_file; + int minimal_nc; // number of cluster in a minimal nearest neighbor cluster expansion; + int nb_calculated_str; // number of calculated structures; + int nb_clusters; // number of clusters used in the fit; + Real radius_1nn; // radius of the nearest neighbor shell; + + CorrFuncTable *pcorrfunc; + Array2d corr_to_fullconc; // converts correlation to redundant concentration; + Array2d corr_to_conc; // converts correlation to non redundant concentration; + Array2d conc_to_fullconc; // converts nonredundant concentration to full redundant concentration; + Array conc_to_fullconc_c; // constant terms of previous matrix; + Array down_e; + LinkedList conc_range; // range of concentration sampled; + int ignore_gs; + int user_max_vol; + + LinkedList label_list; + LinkedListIterator i_label_list; + int cur_label; + const char *predictor_labels; + Real high_energy; + public: + int max_multiplet; // maximum number of points in cluster (can be increased later on); + Real complexity_exp; + ClusterExpansion(const Structure &_parent_lattice, + const Array &_site_type_list, + const Array &_atom_label, + const SpaceGroup &_spacegroup, + CorrFuncTable *_pcorrfunc); + ~ClusterExpansion(void); + + // Low-level functions; + // update corr. of one structure; + void update_correlations(StructureInfo *str); + // update corr. of all structures of a given status (multiple statuses can be or-ed together); + void update_correlations(StructureInfo::Status select); + // update list of equivalent clusters; + void update_equivalent_clusters(void); + // initialize the static members of the user-specified energy predictors; + void init_predictors(void); + // calculate the matrix that maps point correlation into concentrations; + void calc_point_to_concentration(Array *multiplicity, int nb_cols); + // calculate concentration from correlation vector; + void calc_concentration(Array *pconcentration, const Array &corr_matrix); + // calculate concentration from correlation matrix; + void calc_concentration(Array > *pconcentration, const Array2d &corr_matrix); + // create a matrix of corr. and a vector of energies for structures maching a given status; + void calc_regression_matrices( Array2d *pcorr_matrix, Array *penergy, StructureInfo::Status select=StructureInfo::calculated); + // create a vector of predictor energies (using the user-specified predictor objects) for structures maching a given status; + void calc_predictor_energy( Array *penergy, StructureInfo::Status select=StructureInfo::calculated); + Real calc_predictor_energy(StructureInfo *str); + // restart from minimal cluster expansion (only 1nn pairs); + void reset_cluster_choice(void); + // iterate to the next choice of clusters; + int find_next_cluster_choice(int colinear=0); + // select a given choice of clusters: choice(1) gives the nunber of pairs, choice(2) gives the number of triplets, etc.; + void set_cluster_choice(const Array &choice); + // opposite of the above; + void get_cluster_choice(Array *pchoice); + // make an array of correlations from the list of corr. stored in a StructureInfo object; + void make_correlation_array(Array *array_corr, const LinkedList &list_corr); + // restart from first structure; + void reset_structure(void); + // iterate to the next structure; + void find_next_structure(void); + + // High-level functions; + // Set the concentration range where the ground states must be right; + void set_concentration_range(const LinkedList &_conc_range, int _ignore_gs); + // select predictors; + void set_predictor_labels(const char *labels); + // set max energy above GS hull allowed when generating new structures; + void set_highest_energy_allowed(Real _high_energy) {high_energy=_high_energy;}; + void set_maximum_volume_allowed(int _user_max_vol) {user_max_vol=_user_max_vol;}; + + // the following 4 routines can be overridden in derived class to enable new fitting algorithms; + + // Main routine calling the cluster enumeration and crossvalidation routines; + // Initialize *pfitinfo with results (see class CEFitInfo above); + virtual void find_best_cluster_choice(CEFitInfo *pfitinfo); + // Main routine calling the structure enumeration routines and the variance calculation codes.; + // Return pointer to structure found (or NULL upon failure); + virtual StructureInfo * find_best_structure(void); + // Finds the first few structures needed to initiate the refinement process.; + // Return pointer to structure found (or NULL upon failure); + virtual StructureInfo * find_initial_structures(void); + // Returns the least computationally intensive structure still marked as unknown. + // Return pointer to structure (never NULL); + virtual StructureInfo * find_first_unknown_structure(void); + + // various functions to access private members; + const Structure & get_lattice(void) const { + return parent_lattice; + } + const Structure & get_lattice_only(void) const { + return lattice_only; + } + const Array & get_site_type_list(void) const { + return site_type_list; + } + const Array & get_atom_label(void) const { + return atom_label; + } + const LinkedList & get_structure_list(void) { + return structures.get_structure_list(); + } + LinkedList & access_structure_list(void) { + return structures.get_structure_list(); + } + StructureBank & access_structure_bank(void) { + return structures; + } + const LinkedList & get_cluster_list(int ntuple) const { + return pclusters(ntuple)->get_cluster_list(); + } +}; + +// Setup plugins to allow for alternate cluster expansion algorithms; + +class ClusterExpansionCreator { // for the default algorithm; + public: + virtual ClusterExpansion* create(const Structure &_parent_lattice, const Array &_site_type_list, const Array &_atom_label, const SpaceGroup &_spacegroup, CorrFuncTable *_pcorrfunc) { + return new ClusterExpansion(_parent_lattice,_site_type_list,_atom_label,_spacegroup,_pcorrfunc); + } +}; + +template +class CustomClusterExpansionCreator: public ClusterExpansionCreator { // for alternate algorithm; + virtual ClusterExpansion* create(const Structure &_parent_lattice, const Array &_site_type_list, const Array &_atom_label, const SpaceGroup &_spacegroup, CorrFuncTable *_pcorrfunc) { + return new T(_parent_lattice,_site_type_list,_atom_label,_spacegroup,_pcorrfunc); + } +}; + +// end setting up plugins; + +#endif diff --git a/src/mrefine_skel.c++ b/src/mrefine_skel.c++ new file mode 100644 index 0000000..d29bb46 --- /dev/null +++ b/src/mrefine_skel.c++ @@ -0,0 +1,42 @@ +#include +#include +#include "mrefine.h" +#include "getvalue.h" +#include "mpiinterf.h" + +// first do a "find and replace" to change myown to a tag of your choice everywhere. This will be the tag specified on the command line with -fa=tag +// rename this file, for instance, to mrefine_myown.c++ and add mrefine_myown.o in the PLUGINMMAPS section of the makefile + +// define a derived class of ClusterExpansion where member functions can be overridded; +class myown_ClusterExpansion: public ClusterExpansion { + public: + myown_ClusterExpansion(const Structure &_parent_lattice, + const Array &_site_type_list, + const Array &_atom_label, + const SpaceGroup &_spacegroup, CorrFuncTable *_pcorrfunc); + // uncomment if want to override and add function definitio below; + // void find_best_cluster_choice(CEFitInfo *pfitinfo); + // uncomment if want to override and add function definitio below; + // StructureInfo *find_best_structure(void); +}; + +// register plug-in name; +SpecificPlugIn > myown_ClusterExpansionPlugIn("myown"); + +myown_ClusterExpansion::myown_ClusterExpansion(const Structure &_parent_lattice, + const Array &_site_type_list, + const Array &_atom_label, + const SpaceGroup &_spacegroup, CorrFuncTable *_pcorrfunc): + ClusterExpansion(_parent_lattice,_site_type_list,_atom_label,_spacegroup,_pcorrfunc) { + // add initialization code here if needed. Do not delete this function even if not needed; +} + +/* uncomment if needed. You may copy in the code from the corresponding function in mrefine.c++ as a startiung point; +void myown_ClusterExpansion::find_best_cluster_choice(CEFitInfo *pfitinfo) { +} +*/ + +/* uncomment if needed. You may copy in the code from the corresponding function in mrefine.c++ as a startiung point; +StructureInfo * myown_ClusterExpansion::find_best_structure(void) { +} +*/ diff --git a/src/mteci.c++ b/src/mteci.c++ new file mode 100644 index 0000000..f13710c --- /dev/null +++ b/src/mteci.c++ @@ -0,0 +1,60 @@ +#include +#include "mteci.h" + +void make_eci_list(LinkedList *pecilist, const PolyInterpolatorBig > &teci, Real T) { + pecilist->delete_all(); + Array eciarray; + teci.interpol(&eciarray,T); + (*pecilist) << eciarray; +} + +void read_t_dep_eci_file(PolyInterpolatorBig > *pteci, PolyInterpolatorBig > *pteeci, int ncluster, Real kboltzman) { + ifstream tecifile("teci.out"); + if (tecifile) { + Real Tmax; + int nT; + tecifile >> Tmax >> nT; + Tmax*=kboltzman; + Array > ecis(nT); + for (int it=0; it> ecis(it)(c); + } + } + pteci->init(0.,Tmax,ecis); + Array > eecis(nT-1); + eecis(0)=ecis(0); + Real dT=Tmax/(Real)(nT-1); + for (int it=1; itinit(0.,Tmax,eecis); + } else { + ifstream ecifile("eci.out"); + if (!ecifile) ERRORQUIT("Unable to open eci.out"); + Array > ecis(1); + Array > eecis(1); + ecis(0).resize(ncluster); + eecis(0).resize(ncluster); + for (int c=0; c> ecis(0)(c); + eecis(0)(c)=0.; + } + pteci->init(0.,1.,ecis); + pteeci->init(0.,1.,eecis); + } +} + +void fix_energy(Real *pE, const Array &mult, const Array &corr, const PolyInterpolatorBig > &teci, Real T) { + Array eci1,eci0,eeci,tmp; + Real dT=teci.max()*1e-3; + teci.interpol(&eci1,T+dT); + teci.interpol(&eci0,T-dT); + diff(&eeci,eci1,eci0); + product(&eeci,eeci,-T/(2.*dT)); + product_diag(&tmp,mult,corr); + (*pE)+=inner_product(eeci,tmp); +} diff --git a/src/mteci.hh b/src/mteci.hh new file mode 100644 index 0000000..3053ebf --- /dev/null +++ b/src/mteci.hh @@ -0,0 +1,9 @@ +#include "stringo.h" +#include "arraylist.h" +#include "linalg.h" + +void make_eci_list(LinkedList *pecilist, const PolyInterpolatorBig > &teci, Real T); + +void read_t_dep_eci_file(PolyInterpolatorBig > *pteci, PolyInterpolatorBig > *peeci, int ncluster, Real kboltzman); + +void fix_energy(Real *pE, const Array &mult, const Array &corr, const PolyInterpolatorBig > &teci, Real T); diff --git a/src/multi.c++ b/src/multi.c++ new file mode 100644 index 0000000..74cb107 --- /dev/null +++ b/src/multi.c++ @@ -0,0 +1,13 @@ +typedef Array PolytopeVertex; + +typedef LinkedListIterator LinkedListIteratorPolytopeFace; +typedef LinkedListIterator LinkedListIteratorPolytopeVertex; + +class PolytopeFace { + public: + Array normal; + Real c; + Array vertex; + Array near_face; +}; + diff --git a/src/multipoly.c++ b/src/multipoly.c++ new file mode 100644 index 0000000..f0582d7 --- /dev/null +++ b/src/multipoly.c++ @@ -0,0 +1,84 @@ +#include "multipoly.h" + +MultiDimPoly::MultiDimPoly(const Array &_maxpow, const LinkedList &_bnd): maxpow(), bnd() { + init(_maxpow,_bnd); +} + +void MultiDimPoly::init(const Array &_maxpow, const LinkedList &_bnd) { + maxpow=_maxpow; + add_copy(&bnd,_bnd); + Array zeros(maxpow.get_size()); + zero_array(&zeros); + MultiDimIterator > p(zeros,maxpow); + dim=0; + for (; p; p++) { + LinkedListIterator ibnd(bnd); + int keep=1; + for (; ibnd; ibnd++) { + if (inner_product((Array &)p,ibnd->v) > ibnd->c) { + keep=0; + break; + } + } + if (keep) { + //cout << (Array &)p << endl; + dim++; + } + } +} + +Real MultiDimPoly::eval(const Array &a, const Array &x) const { + Array zeros(maxpow.get_size()); + zero_array(&zeros); + MultiDimIterator > p(zeros,maxpow); + Real acc=0.; + int i=0; + for (; p; p++) { + Array &ap=(Array &)p; + int keep=1; + LinkedListIterator ibnd(bnd); + for (; ibnd; ibnd++) { + if ( inner_product(ap,ibnd->v) > ibnd->c) { + keep=0; + break; + } + } + if (keep) { + Real xp=1.; + for (int j=0; j0) {xp*=pow(x(j),ap(j));} + } + acc+=a(i)*xp; + i++; + } + } + return acc; +} + +void MultiDimPoly::eval_powers(Array *ppowers, const Array &x) const { + Array zeros(maxpow.get_size()); + zero_array(&zeros); + MultiDimIterator > p(zeros,maxpow); + ppowers->resize(get_dim_param()); + int i=0; + for (; p; p++) { + Array &ap=(Array &)p; + int keep=1; + LinkedListIterator ibnd(bnd); + for (; ibnd; ibnd++) { + if ( inner_product(ap,ibnd->v) > ibnd->c) { + keep=0; + break; + } + } + if (keep) { + Real xp=1.; + for (int j=0; j0) {xp*=pow(x(j),ap(j));} + } + (*ppowers)(i)=xp; + i++; + } + } +} + diff --git a/src/multipoly.hh b/src/multipoly.hh new file mode 100644 index 0000000..7febf72 --- /dev/null +++ b/src/multipoly.hh @@ -0,0 +1,21 @@ +#include "chull.h" +#include "arraylist.h" +#include "linalg.h" + +class MultiDimPoly { + int dim; + Array maxpow; + LinkedList bnd; +public: + MultiDimPoly(void): maxpow(), bnd() {dim=0;} + MultiDimPoly(const Array &_maxpow, const LinkedList &_bnd); + void init(const Array &_maxpow, const LinkedList &_bnd); + Real eval(const Array &a, const Array &x) const; + void eval_powers(Array *ppowers, const Array &x) const; + int get_dim_param(void) const { + return dim; + } + int get_dim_arg(void) const { + return maxpow.get_size(); + } +}; diff --git a/src/nnshell.c++ b/src/nnshell.c++ new file mode 100644 index 0000000..10f5777 --- /dev/null +++ b/src/nnshell.c++ @@ -0,0 +1,86 @@ +#include +#include "xtalutil.h" +#include "getvalue.h" +#include "parse.h" +#include "version.h" + + +void list_atom(ostream &file, const Array &labellookup, const Array &label, int thetype) { + for (int i=0; i0) {cout << ",";} + cout << label(labellookup(thetype)(i)); + } +} + + +int main(int argc, char *argv[]) { + char *latfilename="lat.in"; + int listbond=0; + Real user_rad=0.0; + int sigdig=5; + int dummy; + AskStruct options[]={ + {"","Nearest Neighbor Shell " MAPS_VERSION ", by Axel van de Walle and Paul Dalach",TITLEVAL,NULL}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latfilename}, + {"-lb","List bond types in given structures",BOOLVAL,&listbond}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-r","Define a max radius for neighbor search",REALVAL,&user_rad}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + Structure lat; + Array labellookup; + Array label; + rMatrix3d axes; + if (strcmp(latfilename,"-")==0) { + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &labellookup, &label, cin, &axes); + } + else { + ifstream latfile(latfilename); + if (!latfile) ERRORQUIT("Unable to open lattice file"); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &labellookup, &label, latfile, &axes); + } + wrap_inside_cell(&lat.atom_pos,lat.atom_pos,lat.cell); + + cout.setf(ios::fixed); + cout.precision(sigdig); + if (listbond) { + for (int at=0; at0) {cout <<"-";} + int thetype=lat.atom_type(which_atom(lat.atom_pos,p(i),!lat.cell)); + list_atom(cout,labellookup,label,thetype); + } + cout << endl; + } + } + } + else { + for (int at=0; at0) {rnn=user_rad;} + else {rnn=find_1nn_radius(lat,at);} + cout << rnn << endl; + list_atom(cout,labellookup,label,lat.atom_type(at)); + cout << endl; + AtomPairIterator p(lat.cell,lat.atom_pos(at),lat.atom_pos); + while (p.length()<=rnn+zero_tolerance) { + cout << " " << (!axes)*(p(1)-p(0)) << " " << norm(p(1)-p(0)) << " "; + int thetype=lat.atom_type(which_atom(lat.atom_pos,p(1),!lat.cell)); + list_atom(cout,labellookup,label,thetype); + cout << endl; + nbnn++; + p++; + } + cout << " " << nbnn << endl << endl; + } + } +} diff --git a/src/nntouch.c++ b/src/nntouch.c++ new file mode 100644 index 0000000..3e541ff --- /dev/null +++ b/src/nntouch.c++ @@ -0,0 +1,139 @@ +#include +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include "stringo.h" + +void to_lower(char *buf) { + char *p; + for (p=buf; (*p)!=0; p++) { + *p=tolower(*p); + } +} + +int main(int argc, char *argv[]) { + int maxvol=0; + char *latticefilename="lat.in"; + char *radiifilename="rad.in"; + int sigdig=6; + int dummy=0; + Real scale=1.; + AskStruct options[]={ + {"","nntouch " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {""," Scales a lattice so that nearest neighbor atom just touch.",TITLEVAL,NULL}, + {"-l","Input file defining the lattice (default: lat.in) Use filename - to specify stdin",STRINGVAL,&latticefilename}, + {"-r","Input file defining the atomic radii (default: rad.in)",STRINGVAL,&radiifilename}, + {"-s","Multiplicative scaling factor",REALVAL,&scale}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + // read in lattice (see parse.h); + Structure lat; + Array site_type_list; + Array atom_label; + rMatrix3d axes; + if (strcmp(latticefilename,"-")==0) { + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &site_type_list, &atom_label, cin, &axes); + } + else { + ifstream file(latticefilename); + if (!file) ERRORQUIT("Unable to open lattice file."); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &site_type_list, &atom_label, file, &axes); + } + + Array radii_label; + Array radii; + { + LinkedList radii_label_list; + LinkedList radii_list; + ifstream file(radiifilename); + if (!file) ERRORQUIT("Unable to open atomic radii file."); + while (!file.eof()) { + char buf[MAX_LINE_LEN]; + buf[0]=0; + file >> buf; + if (strlen(buf)==0) break; + to_lower(buf); + radii_label_list << new AutoString(buf); + Real r; + file >> r; + radii_list << new Real(r); + } + LinkedList_to_Array(&radii_label,radii_label_list); + LinkedList_to_Array(&radii,radii_list); + } + + Real max_r=0.; + Array site_r(lat.atom_pos.get_size()); + for (int i=0; i +#include + +/* Coefficients in rational approximations. */ +static const Real invnormalcdf_a[] = + { + -3.969683028665376e+01, + 2.209460984245205e+02, + -2.759285104469687e+02, + 1.383577518672690e+02, + -3.066479806614716e+01, + 2.506628277459239e+00 + }; + +static const Real invnormalcdf_b[] = + { + -5.447609879822406e+01, + 1.615858368580409e+02, + -1.556989798598866e+02, + 6.680131188771972e+01, + -1.328068155288572e+01 + }; + +static const Real invnormalcdf_c[] = + { + -7.784894002430293e-03, + -3.223964580411365e-01, + -2.400758277161838e+00, + -2.549732539343734e+00, + 4.374664141464968e+00, + 2.938163982698783e+00 + }; + +static const Real invnormalcdf_d[] = + { + 7.784695709041462e-03, + 3.224671290700398e-01, + 2.445134137142996e+00, + 3.754408661907416e+00 + }; + +#define invnormalcdf_LOW 0.02425 +#define invnormalcdf_HIGH 0.97575 + +Real invnormalcdf(Real p) +{ + Real q, r; + + errno = 0; + + if (p < 0 || p > 1) + { + errno = EDOM; + return 0.0; + } + else if (p == 0) + { + errno = ERANGE; + return -HUGE_VAL /* minus "infinity" */; + } + else if (p == 1) + { + errno = ERANGE; + return HUGE_VAL /* "infinity" */; + } + else if (p < invnormalcdf_LOW) + { + /* Rational approximation for lower region */ + q = sqrt(-2*log(p)); + return (((((invnormalcdf_c[0]*q+invnormalcdf_c[1])*q+invnormalcdf_c[2])*q+invnormalcdf_c[3])*q+invnormalcdf_c[4])*q+invnormalcdf_c[5]) / + ((((invnormalcdf_d[0]*q+invnormalcdf_d[1])*q+invnormalcdf_d[2])*q+invnormalcdf_d[3])*q+1); + } + else if (p > invnormalcdf_HIGH) + { + /* Rational approximation for upper region */ + q = sqrt(-2*log(1-p)); + return -(((((invnormalcdf_c[0]*q+invnormalcdf_c[1])*q+invnormalcdf_c[2])*q+invnormalcdf_c[3])*q+invnormalcdf_c[4])*q+invnormalcdf_c[5]) / + ((((invnormalcdf_d[0]*q+invnormalcdf_d[1])*q+invnormalcdf_d[2])*q+invnormalcdf_d[3])*q+1); + } + else + { + /* Rational approximation for central region */ + q = p - 0.5; + r = q*q; + return (((((invnormalcdf_a[0]*r+invnormalcdf_a[1])*r+invnormalcdf_a[2])*r+invnormalcdf_a[3])*r+invnormalcdf_a[4])*r+invnormalcdf_a[5])*q / + (((((invnormalcdf_b[0]*r+invnormalcdf_b[1])*r+invnormalcdf_b[2])*r+invnormalcdf_b[3])*r+invnormalcdf_b[4])*r+1); + } +} + +Real normal01(void) { + return invnormalcdf(uniform01()); +} diff --git a/src/normal.hh b/src/normal.hh new file mode 100644 index 0000000..24a1a1c --- /dev/null +++ b/src/normal.hh @@ -0,0 +1,4 @@ +#include "misc.h" + +Real invnormalcdf(Real p); +Real normal01(void); diff --git a/src/ocplotpd b/src/ocplotpd new file mode 100755 index 0000000..29f166f --- /dev/null +++ b/src/ocplotpd @@ -0,0 +1,423 @@ +#!/usr/bin/perl + +my $occommand="oc"; + +my %cmdline; #this will contain all command line options, hashed by the option name (e.g. -T, etc.) +for (my $i=0; $i<@ARGV; $i++) { + my @opt = split /=/, $ARGV[$i]; + if ( @opt == 1 ) {$opt[1]=1} + $cmdline{$opt[0]}=$opt[1]; +} + +if ( exists $cmdline{"-h"} ) { + print "Usage: ocplotpd [-1f] [-nt] -n=nb_of_samples -T0=min_temperature -T1=max_temperature -tdb=tdbfile -e=element,element,...\n"; + exit; +} + +for my $tag (("-n","-T0","-T1","-tdb","-e")) { + if ( ! exists $cmdline{$tag} ) { + print "Missing " . $tag . ". Use -h for help\n"; + exit; + } +} + +my $pttoofar=0.2; +if ( exists $cmdline{"-cc"} ){ + $pttoofar=$cmdline{"-cc"}; +} + +sub pddist { + my ($deltatemp,$pta,$ptb)=@_; + if ($deltatemp == 0) {$deltatemp=1;} + my @vpta=split /\s+/, $pta; + my @vptb=split /\s+/, $ptb; + if ($vpta[0] ne $vptb[0]) { + return 100.; + } + my $dist=0; + for (my $i=0; $i<@vpta-2; $i++) { + my $delta=($vpta[3+$i]-$vptb[3+$i]); + if ($i==0) {$delta=$delta/$deltatemp;} + $dist+=$delta*$delta; + } + $dist=sqrt($dist); + return $dist; +} + +sub reorderpoints { + my $deltatemp=shift; + my $maxdist=shift; + my @raw=split /\n/,$_[0]; + if (@raw==0) {return "\n";} + my @ord; + my @done; + my $numdone=1; + my $result; + $ord[0]=$raw[0]; + $done[0]=1; + while ($numdone < @raw ) { + my $bestdist=1000.; + my $bestpt=-1; + my $bestend=-1; + for (my $i=1; $i<@raw; $i++) { + if ( $done[$i] != 1 ) { + my $curdistbeg=pddist($deltatemp,$ord[0],$raw[$i]); + my $curdistend=pddist($deltatemp,$ord[@ord-1],$raw[$i]); + if ($curdistbeg < $curdistend) { + if ($curdistbeg < $bestdist) { + $bestdist=$curdistbeg; + $bestpt=$i; + $bestend=0; + } + } + else { + if ($curdistend < $bestdist) { + $bestdist=$curdistend; + $bestpt=$i; + $bestend=@ord-1; + } + } + } + } + $done[$bestpt]=1; + $numdone++; + if ($bestdist > $maxdist) { + $result = $result . "\n\n" . join("\n",@ord); + @ord=(); + $ord[0]=$raw[$bestpt]; + } + else { + if ($bestend==0) { + unshift @ord, $raw[$bestpt]; + } + else { + push @ord, $raw[$bestpt]; + } + } + } + $result = $result . "\n\n" . join("\n",@ord) . "\n"; + return $result; +} + +sub copy_file_to_handle { + my $destfh=shift; + my $orgfile=shift; + open(my $fh,"<",$orgfile); + while (<$fh>) { + print $destfh $_; + } +} + +sub capitalize_first { + return uc(substr($_,0,1)) . lc(substr($_,1)); +} + +sub pick_phase { + my $data=shift; + my $ph1=shift; + my $ph2=shift; + my @lines=split /\n/,$data; + my $outl=0; + my @linesout; + for (my $l=0; $l<@lines; $l++) { + my $phases=$lines[$l]; + $phases =~ s/ +.*//g; + $phases= ',' . $phases . ','; + if ( index($phases,",$ph1,") > -1 && index($phases,",$ph2,") > -1 ) { + $linesout[$outl]=$lines[$l]; + $outl++; + } + } + if (@linesout==0) { + return ""; + } + else { + return join("\n",@linesout)."\n"; + } +} + +sub escape_bad { + my $cln=shift; + $cln =~ s/_/-/g; + return $cln; +} + +#main + +my $maxn=$cmdline{"-n"}; +my $tempmin=$cmdline{"-T0"}; +my $tempmax=$cmdline{"-T1"}; +my $tdbfile=$cmdline{"-tdb"}; +my @elem=split /[^a-zA-Z]/ , $cmdline{"-e"}; +@elem=map(capitalize_first,@elem); +my @varelem=@elem; +my $filelem=shift @varelem; +{ + open(my $fh,">","tmp.OCM"); + print $fh "read tdb $tdbfile\n"; + print $fh join(" ",@elem) . "\n\n"; +# print $fh "set num\n50\n1e-6\n"; +# print $fh "set adv dense\n"; + print $fh "set bit global 2\n"; + print $fh "set bit global 8\n"; + my $tiny=2e-4; + for (my $n=0; $n<$maxn; $n++) { + my %x; + do { + $x{$filelem}=1; + for my $e (@varelem) { + $x{$e}=$tiny+(1-2*$tiny)*rand(1); + $x{$filelem}-=$x{$e}; + } + } while ($x{$filelem} < 0); + my $temp=$tempmin+($tempmax-$tempmin)*rand(1); + print $fh "set cond t=" . $temp . " p=1e5 n=1 " . join("",(map("x(" . $_ . ")=" . sprintf("%1.4f",$x{$_}) . " " , @varelem))) . "\n"; + print $fh "calc equil\n\n"; + print $fh "list\n\n\n"; + } + print $fh "fin\n"; + close($fh); +} +system("$occommand < tmp.OCM > tmp.oco"); +{ + open(my $oh,"<","tmp.oco"); + my %phaseindex; + my $curphaseindex=0; + my $temp=0; + my $bad=0; + my @ptbyphase; + my $tielines; + while (<$oh>) { + if ( index($_,"not a valid equilibrium") != -1 || index($_,"Error") != -1 ) {$bad=1;} + my @c=split /\s+/ , $_; + if ( $c[0] eq "T=" ) { + $temp=$c[1]; + } + if ( $c[0] eq "Name" ) { + my @equil; + my @allphase; + my $nbphase=0; + while (1) { + my $line=<$oh>; + my @c=split /\s+/, $line; + if ( $c[0] eq "" || $c[0] =~ /OC.*/ ) {last;} + my $phase=$c[0]; + $phase =~ s/\.*$//g; + $phase =~ s/_AUTO.*//g; + if ( ! exists $phaseindex{$phase} ) { + $curphaseindex++; + $phaseindex{$phase}=$curphaseindex; + } + $line=<$oh>; + chomp $line; + @c=split /\s+/, $line; + my %conc; + for (my $i=1; $i<@c; $i+=2) { + $conc{$c[$i]}=$c[$i+1]; + } + $equil[$nbphase]=$phaseindex{$phase} . " " . $phase . " " . $temp . " " . join(" ",map($conc{uc $_},@elem)); + $allphase[$nbphase]=$phaseindex{$phase}; + $nbphase++; + $line=<$oh>; + } + if ( $bad == 0 ) { + if ($nbphase>1) { + my $multiphase=join(",",sort @allphase); + for (my $i=0; $i<$nbphase; $i++) { + $ptbyphase[$allphase[$i]] = $ptbyphase[$allphase[$i]] . $multiphase . " " . $equil[$i] . "\n"; + $tielines = $tielines . $multiphase . " " . $equil[$i] . "\n"; + } + $tielines = $tielines . "\n"; + } + } + $bad=0; + } + } + + for my $ph (keys %phaseindex) { + if (length($ptbyphase[$phaseindex{$ph}]) == 0) { + delete $phaseindex{$ph}; + } + } + + for my $ph (keys %phaseindex) { + open(my $phh,">","phase_" . $ph . ".dat"); + if ( (@elem-1 + ($tempmin == $tempmax ? 0 : 1)) == 2 ) { + my $orderedpt=reorderpoints($tempmax-$tempmin,$pttoofar,$ptbyphase[$phaseindex{$ph}]); + print $phh $orderedpt; + } + else { + for (my $ph2=0; $ph2<=$curphaseindex; $ph2++) { + for (my $ph1=0; $ph1<$ph2; $ph1++ ) { + my $picked_phases=pick_phase($ptbyphase[$phaseindex{$ph}],$ph1,$ph2); + if (length($picked_phases)>0) { + print $phh $picked_phases; + print $phh "\n"; + } + } + } + } + close($phh); + } + { + open(my $tih,">","tielines.dat"); + print $tih $tielines; + close($tih); + } + + { + open(my $gnh,">","ocplotpd.gnu"); + my $tielinecolor='lc rgbcolor "light-gray"'; + if (exists $cmdline{"-nt"}) { + $tielinecolor='lc rgbcolor "white"'; + } + my $tiefile="tielines.dat"; + if (exists $cmdline{"-1f"}) { + $tiefile="-"; + } + print $gnh ""; + if (@elem==2) { + print $gnh "set xlabel '$elem[1]'\n"; + print $gnh "set ylabel 'T (K)'\n"; + print $gnh "plot [0:1] [] "; + print $gnh "'" . $tiefile ."' u 6:4 w l $tielinecolor notitle"; + for my $ph (keys %phaseindex) { + print $gnh ", \\\n"; + my $filename="phase_" . $ph . ".dat"; + if (exists $cmdline{"-1f"}) { + $filename="-"; + } + print $gnh "'" . $filename . "' u 6:4 w l t '" . escape_bad($ph) . "'"; + } + } + elsif (@elem==3) { + if ($tempmin == $tempmax) { + print $gnh "unset border\nunset tics\n"; + print $gnh "set size square 1,1\n"; + print $gnh "set lmargin 4\n"; + print $gnh "set rmargin 2\n"; + print $gnh "set tmargin 4\n"; + print $gnh "set bmargin 1\n"; + print $gnh "set label 'T=$tempmin K' at 0.05,0.866\n"; + print $gnh "set label '$elem[0]' at -0.05,0\n"; + print $gnh "set label '$elem[1]' at 1.05,0\n"; + print $gnh "set label '$elem[2]' at 0.5,0.866+0.05\n"; + print $gnh "set arrow from 0,0 to 1,0 nohead\n"; + print $gnh "set arrow from 1,0 to 0.5,0.866 nohead\n"; + print $gnh "set arrow from 0.5,0.866 to 0,0 nohead\n"; + print $gnh "plot [0:1] [0:0.866] "; + print $gnh "'" . $tiefile . "' u (\$6+0.5*\$7):(0.866*\$7) w l $tielinecolor notitle"; + for my $ph (keys %phaseindex) { + print $gnh ", \\\n"; + my $filename="phase_" . $ph . ".dat"; + if (exists $cmdline{"-1f"}) { + $filename="-"; + } + print $gnh "'" . $filename . "' u (\$6+0.5*\$7):(0.866*\$7) w l t '" . escape_bad($ph) . "'"; + } + } + else { + if (exists $cmdline{"-vtk"}) { + my $zscale=($tempmax-$tempmin); + my $allscaling="-zmin=$tempmin -zmax=$tempmax -zscale=$zscale"; + system("mkaxes -tri -col=0 $allscaling > axes.vtk"); + system("mkaxes -tri -col=0 $allscaling -vl=" . join(',',@elem) . "> labels.vtk"); + system("awk '{print \$4,\$5,\$6,\$7}' $tiefile | mkaxes -trans -tri $allscaling | simplexize -t=- -l -col=0 > tielines.vtk"); + my $color=1; + for my $ph (keys %phaseindex) { + my $filename="phase_" . $ph . ".dat"; + my $vtkfilename="phase_" . $ph . ".vtk"; + system("awk '{print \$4,\$5,\$6,\$7}' $filename | mkaxes -trans -tri $allscaling | simplexize -t=- -rmin=1e-2 -rmax=0.1 -col=$color > $vtkfilename"); + $color++; + } + } + else { + my $tempmid=($tempmin+$tempmax)/2; + print $gnh "unset border\nunset tics\n"; + print $gnh "set size square 1,1\n"; + print $gnh "set label '$elem[0]' at -0.05,0,$tempmid\n"; + print $gnh "set label '$elem[1]' at 1.05,0,$tempmid\n"; + print $gnh "set label '$elem[2]' at 0.5,0.866+0.05,$tempmid\n"; + print $gnh "set arrow from 0,0,$tempmin to 1,0,$tempmin nohead\n"; + print $gnh "set arrow from 1,0,$tempmin to 0.5,0.866,$tempmin nohead\n"; + print $gnh "set arrow from 0.5,0.866,$tempmin to 0,0,$tempmin nohead\n"; + print $gnh "set arrow from 0,0,$tempmax to 1,0,$tempmax nohead\n"; + print $gnh "set arrow from 1,0,$tempmax to 0.5,0.866,$tempmax nohead\n"; + print $gnh "set arrow from 0.5,0.866,$tempmax to 0,0,$tempmax nohead\n"; + print $gnh "set arrow from 0,0,$tempmin to 0,0,$tempmax nohead\n"; + print $gnh "set arrow from 1,0,$tempmin to 1,0,$tempmax nohead\n"; + print $gnh "set arrow from 0.5,0.866,$tempmin to 0.5,0.866,$tempmax nohead\n"; + print $gnh "set label '$tempmin K' at -0.15,0,$tempmin\n"; + print $gnh "set label '$tempmax K' at -0.15,0,$tempmax\n"; + print $gnh "splot [0:1] [0:0.866] [$tempmin:$tempmax]"; + print $gnh "'" . $tiefile . "' u (\$6+0.5*\$7):(0.866*\$7):(\$4) w l $tielinecolor notitle"; + for my $ph (keys %phaseindex) { + print $gnh ", \\\n"; + my $filename="phase_" . $ph . ".dat"; + if (exists $cmdline{"-1f"}) { + $filename="-"; + } + print $gnh "'" . $filename . "' u (\$6+0.5*\$7):(0.866*\$7):(\$4) w p t '" . escape_bad($ph) . "'"; + } + } + } + } + elsif (@elem==4) { + if (exists $cmdline{"-vtk"}) { + system("mkaxes -tetra -col=0 > axes.vtk"); + system("mkaxes -tetra -col=0 -vl=" . join(',',@elem) . "> labels.vtk"); + system("awk '{print \$4,\$5,\$6,\$7,\$8}' $tiefile | mkaxes -trans -tetra | simplexize -t=- -l -col=0 > tielines.vtk"); + my $color=1; + for my $ph (keys %phaseindex) { + my $filename="phase_" . $ph . ".dat"; + my $vtkfilename="phase_" . $ph . ".vtk"; + system("awk '{print \$4,\$5,\$6,\$7,\$8}' $filename | mkaxes -trans -tetra | simplexize -t=- -rmin=1e-2 -rmax=0.1 -col=$color > $vtkfilename"); + $color++; + } + } + else { + print $gnh "unset border\nunset tics\n"; + print $gnh "set size square 1,1\n"; + print $gnh "set arrow from 0,0,0 to 1,0,0 nohead\n"; + print $gnh "set arrow from 1,0,0 to 0.5,0.866,0 nohead\n"; + print $gnh "set arrow from 0.5,0.866,0 to 0,0,0 nohead\n"; + print $gnh "set arrow from 0,0,0 to 0.5,0.289,0.816 nohead\n"; + print $gnh "set arrow from 1,0,0 to 0.5,0.289,0.816 nohead\n"; + print $gnh "set arrow from 0.5,0.866,0 to 0.5,0.289,0.816 nohead\n"; + print $gnh "set label '$elem[0]' at -0.05,-0.05,0\n"; + print $gnh "set label '$elem[1]' at 1.05,-0.05,0\n"; + print $gnh "set label '$elem[2]' at 0.5,0.866+0.05,0\n"; + print $gnh "set label '$elem[3]' at 0.5,0.289,0.816+0.05\n"; + print $gnh "splot [0:1] [0:0.866] [0:0.816] "; + print $gnh "'" . $tiefile . "' u (\$6+0.5*\$7+0.5*\$8):(0.866*\$7+0.289*\$8):(0.816*\$8) w l $tielinecolor notitle"; + for my $ph (keys %phaseindex) { + print $gnh ", \\\n"; + my $filename="phase_" . $ph . ".dat"; + if (exists $cmdline{"-1f"}) { + $filename="-"; + } + print $gnh "'" . $filename . "' u (\$6+0.5*\$7+0.5*\$8):(0.866*\$7+0.289*\$8):(0.816*\$8) w p t '" . escape_bad($ph) . "'"; + } + } + } + else { + die "Sorry, case not yet covered for plotting. The files phase_xxxx.dat may still be useful..."; + + } + print $gnh "\n"; + if (exists $cmdline{"-1f"}) { + copy_file_to_handle($gnh,"tielines.dat"); + unlink("tielines.dat"); + print $gnh "e\n"; + for my $ph (keys %phaseindex) { + my $filename="phase_" . $ph . ".dat"; + copy_file_to_handle($gnh,$filename); + unlink($filename); + print $gnh "e\n"; + } + } + print $gnh "pause -1\n"; + close($gnh); + print "You can now run:\n gnuplot ocplotpd.gnu\n"; + } +} diff --git a/src/ocutil b/src/ocutil new file mode 100755 index 0000000..b0ac6ec --- /dev/null +++ b/src/ocutil @@ -0,0 +1,19 @@ +#!/bin/bash +#!/bin/bash +awk '{ + maxlen=80; + minlen=5; + line=$0; + while (length(line)>maxlen) { + cut=maxlen; + while (1) { + while (cut>minlen && index(" -+",substr(line,cut,1)) == 0) {cut--;} + if (cut<=minlen) {cut=maxlen; break;} + if(substr(line,cut-1,1)!="E") break; + cut--; + } + print substr(line,1,cut-1); + line=" " substr(line,cut); + } + print line; +}' diff --git a/src/oldmpi.hh b/src/oldmpi.hh new file mode 100644 index 0000000..9604941 --- /dev/null +++ b/src/oldmpi.hh @@ -0,0 +1,25 @@ +/* +inline int MyMPI_Send(Real *pbuf, int dest, int tag, MPI_Comm comm) {return MPI_Send(pbuf,1,MPI_DOUBLE,dest,tag,comm);} +inline int MyMPI_Send(int *pbuf, int dest, int tag, MPI_Comm comm) {return MPI_Send(pbuf,1,MPI_INT, dest,tag,comm);} +inline int MyMPI_Recv(Real *pbuf, int src, int tag, MPI_Comm comm, MPI_Status *status) {return MPI_Recv(pbuf,1,MPI_DOUBLE,src,tag,comm,status);} +inline int MyMPI_Recv(int *pbuf, int src, int tag, MPI_Comm comm, MPI_Status *status) {return MPI_Recv(pbuf,1,MPI_INT, src,tag,comm,status);} + +inline int MyMPI_Send(Array *pbuf, int dest, int tag, MPI_Comm comm) {return MPI_Send(pbuf->get_buf(),pbuf->get_size(),MPI_DOUBLE,dest,tag,comm);} +inline int MyMPI_Send(Array *pbuf, int dest, int tag, MPI_Comm comm) {return MPI_Send(pbuf->get_buf(),pbuf->get_size(),MPI_INT, dest,tag,comm);} + +inline int MyMPI_Recv(Array *pbuf, int src, int tag, MPI_Comm comm, MPI_Status *status) { + MPI_Probe(src,tag,comm,status); + int len; + MPI_Get_count(status, MPI_DOUBLE, &len); + pbuf->resize(len); + return MPI_Recv(pbuf->get_buf(),len,MPI_DOUBLE,src,tag,comm,status); +} + +inline int MyMPI_Recv(Array *pbuf, int src, int tag, MPI_Comm comm, MPI_Status *status) { + MPI_Probe(src,tag,comm,status); + int len; + MPI_Get_count(status, MPI_INT, &len); + pbuf->resize(len); + return MPI_Recv(pbuf->get_buf(),len,MPI_INT, src,tag,comm,status); +} +*/ diff --git a/src/opti.c++ b/src/opti.c++ new file mode 100644 index 0000000..4b27d8f --- /dev/null +++ b/src/opti.c++ @@ -0,0 +1,323 @@ +#include "opti.hh" + +OptimizerParam::OptimizerParam(void) { + gradtol=1e-3; + trialstep=0.1; + maxstep=5.0; + multline=2.0; + maxbrakline=5; + maxitline=5; + maxitcg=50; + badstrike=1; + itreset=0; +} + +OptimizerParam::OptimizerParam(const OptimizerParam &a) { + gradtol=a.gradtol; + trialstep=a.trialstep; + maxstep=a.maxstep; + multline=a.multline; + maxbrakline=a.maxbrakline; + maxitline=a.maxitline; + maxitcg=a.maxitcg; + badstrike=a.badstrike; + itreset=a.itreset; +} + +void OptimizerParam::operator = (const OptimizerParam &a) { + gradtol=a.gradtol; + trialstep=a.trialstep; + maxstep=a.maxstep; + multline=a.multline; + maxbrakline=a.maxbrakline; + maxitline=a.maxitline; + maxitcg=a.maxitcg; + badstrike=a.badstrike; + itreset=a.itreset; +} + +FunctionAlongLine::FunctionAlongLine(const Array &_org, const Array &_dir, FunctionWithGrad *_pfunc): Function1DWithGrad(), org(_org), dir(_dir) { + pfunc=_pfunc; + val=pfunc->get_val(); + Array vgrad; + pfunc->get_grad(&vgrad); + grad=inner_product(vgrad,dir); +} + +void FunctionAlongLine::scalar_to_vector(Array *px, Real u) { + product(px,dir,u); + sum(px,*px,org); +} + +void FunctionAlongLine::set_arg(Real u) { + Array x; + scalar_to_vector(&x,u); + pfunc->set_arg(x); + val=pfunc->get_val(); + Array vgrad; + pfunc->get_grad(&vgrad); + grad=inner_product(vgrad,dir); +} + +FunctionAlongGreatCircle::FunctionAlongGreatCircle(const Array &_org, const Array &_dir, FunctionWithGrad *_pfunc): Function1DWithGrad(), org(_org), dir(_dir) { + pfunc=_pfunc; + val=pfunc->get_val(); + Array vgrad; + pfunc->get_grad(&vgrad); + grad=inner_product(vgrad,dir); + cdir=norm(org)/norm(dir); +} + +void FunctionAlongGreatCircle::scalar_to_vector(Array *px, Real u) { + Array y; + product(px,org,cos(u)); + product(&y,dir,sin(u)*cdir); + sum(px,*px,y); +} + +void FunctionAlongGreatCircle::set_arg(Real u) { + Array x; + scalar_to_vector(&x,u); + pfunc->set_arg(x); + val=pfunc->get_val(); + Array vgrad; + pfunc->get_grad(&vgrad); + Array dx; + scalar_to_vector(&dx,u+M_PI/2.); + product(&dx,dx,1./cdir); + grad=inner_product(vgrad,dx); +} + +int min_func1d(Real *px, const OptimizerParam ¶m, Function1DWithGrad *pfunc) { + Real a,b; + b=*px; + a=b; + Real dfb=pfunc->get_grad(); // at *px; + if (fabs(dfb)set_arg(b); + dfb=pfunc->get_grad(); + if (fabs(dfb)0.75) { + if (badstrike>0) { + badstrike--; + cout << "badstrike forgiven\n"; + } + else { + cout << "midpoint" << endl; + x=(a+b)/2.; + } + } + pfunc->set_arg(x); + dfx=pfunc->get_grad(); + cout << "a= " << a << " dfa= " << dfa << endl; + cout << "x= " << x << " dfx= " << dfx << endl; + cout << "b= " << b << " dfb= " << dfb << endl; + *px=x; + if (fabs(dfx)get_val()-curf)get_val(); + pfunc->get_grad(&dir); + product(&dir,dir,-1.); + //cout << "l_dir= "; tracev(dir); + cout << "l_gnorm= " << norm(dir) << endl; + if (norm(dir) diffdir,betaolddir; + diff(&diffdir,dir,olddir); + Real beta=inner_product(dir,diffdir)/inner_product(olddir,olddir); + //Real beta=-inner_product(dir,diffdir)/inner_product(olddir,olddir); + itreset++; + if (beta<0 || itreset>param.itreset) { + cout << "CG Reset: beta=0" << endl; + beta=0.; + itreset=0; + } + product(&betaolddir,olddir,beta); + sum(&dir,dir,betaolddir); + olddir=dir; + } + cout << "Too many iteration in conjugate gradient" << endl; + return 0; +} + +void ortho_project(Array *px, const Array &p, const Array &x) { + Real a=inner_product(p,x)/inner_product(p,p); + Array ap; + product(&ap,p,a); + diff(px,x,ap); //*px=x-p /; +} + +int conjugate_gradient_on_sphere(Array *px, const OptimizerParam &_param, FunctionWithGrad *pfunc) { + cout << "begin on_sphere" << endl; + OptimizerParam param(_param); + if (param.itreset==0) {param.itreset=px->get_size();} + pfunc->set_arg(*px); + // Real curf=pfunc->get_val(); + Array dir,olddir; + pfunc->get_grad(&dir); + product(&dir,dir,-1.); + ortho_project(&dir,*px,dir); + olddir=dir; + int itreset=0; + for (int it=0; it dx(*px); + param.gradtol/=sqrt((Real)px->get_size()); + great_circle_search(px,dir,param,pfunc); + param.gradtol=_param.gradtol; + diff(&dx,dx,*px); + Real ndx=norm(dx); + if (ndx!=0) {param.trialstep=min(ndx/norm(*px),_param.trialstep);} + // if (fabs(pfunc->get_val()-curf)get_val(); + pfunc->get_grad(&dir); + product(&dir,dir,-1.); + ortho_project(&dir,*px,dir); + //cout << "s_dir= "; tracev(dir); + cout << "s_gnorm= " << norm(dir) << endl; + if (norm(dir) diffdir,betaolddir; + diff(&diffdir,dir,olddir); + Real beta=inner_product(dir,diffdir)/inner_product(olddir,olddir); + itreset++; + if (beta<0 || itreset>param.itreset || norm(dx)>norm(*px)) { + cout << "sCG Reset: beta=0" << endl; + beta=0.; + itreset=0; + } + product(&betaolddir,olddir,beta); + sum(&dir,dir,betaolddir); + ortho_project(&dir,*px,dir); + olddir=dir; + + cout << "CG_on_sphere step " << it << endl; + } + cout << "Too many iteration in conjugate gradient on sphere" << endl; + return 0; +} + +int steepest_descent(Array *px, const OptimizerParam ¶m, FunctionWithGrad *pfunc) { + for (int it=0; it g; + pfunc->set_arg(*px); + pfunc->get_grad(&g); + if (norm(g) &x) {} + virtual Real get_val(void) const {} + virtual void get_grad(Array *df) const {} +}; + +class Function1DWithGrad { +public: + virtual void set_arg(Real x) {} + virtual Real get_val(void) const {} + virtual Real get_grad(void) const {} +}; + +class FunctionAlongLine: public Function1DWithGrad { + Array org; + Array dir; + FunctionWithGrad *pfunc; + Real val; + Real grad; +public: + FunctionAlongLine(const Array &_org, const Array &_dir, FunctionWithGrad *_pfunc); + virtual void scalar_to_vector(Array *px, Real u); + virtual void set_arg(Real u); + virtual Real get_val(void) const {return val;} + virtual Real get_grad(void) const {return grad;} +}; + +class FunctionAlongGreatCircle: public Function1DWithGrad { + Array org; + Array dir; + Real cdir; + FunctionWithGrad *pfunc; + Real val; + Real grad; +public: + FunctionAlongGreatCircle(const Array &_org, const Array &_dir, FunctionWithGrad *_pfunc); + virtual void scalar_to_vector(Array *px, Real u); + virtual void set_arg(Real u); + virtual Real get_val(void) const {return val;} + virtual Real get_grad(void) const {return grad;} +}; + +int min_func1d(Real *px, const OptimizerParam ¶m, Function1DWithGrad *pfunc); + +void line_search(Array *px, const Array &dir, const OptimizerParam ¶m, FunctionWithGrad *pfunc); + +void great_circle_search(Array *px, const Array &dir, const OptimizerParam ¶m, FunctionWithGrad *pfunc); + +int conjugate_gradient(Array *px, const OptimizerParam &_param, FunctionWithGrad *pfunc); + +void ortho_project(Array *px, const Array &p, const Array &x); + +int conjugate_gradient_on_sphere(Array *px, const OptimizerParam &_param, FunctionWithGrad *pfunc); + +int steepest_descent(Array *px, const OptimizerParam ¶m, FunctionWithGrad *pfunc); + +#endif diff --git a/src/parse.c++ b/src/parse.c++ new file mode 100644 index 0000000..8321363 --- /dev/null +++ b/src/parse.c++ @@ -0,0 +1,506 @@ +#include +#include "parse.h" + +int is_eol(istream &file) { + if (file.eof()) return(1); + char c; + do { + file.get(c); + if (file.eof()) return(1); + } while (c==' ' || c=='\t'); + file.putback(c); + return (c=='\n'); +} + +int isnumber(char c) { + return (isdigit(c) || strchr("-+.",c)); +} + +void read_cell(rMatrix3d *pcell, istream &file) { + rVector3d tmp; + file >> tmp; + char c; + do { + file.get(c); + } while ((c==' ' || c=='\t') && !file.eof()); + if (file.eof()) return; + file.putback(c); + if (c!='\n') { + rVector3d length,angle; + length=tmp; + file >> angle; + calc_lattice_vectors(pcell,length,angle); + } + else { + pcell->set_column(0,tmp); + file >> tmp; + pcell->set_column(1,tmp); + file >> tmp; + pcell->set_column(2,tmp); + } +} + +void parse_lattice_file(rMatrix3d *pcell, Array *patom_pos, Array *psite_type, Array *psite_type_list, Array *patom_label, istream &file, rMatrix3d *paxes) { + char *delim=" \t,;/"; + // read cell; + rMatrix3d axes; + read_cell(&axes,file); + for (int i=0; i<3; i++) { + rVector3d v; + file >> v; + pcell->set_column(i,axes*v); + } + if (paxes) {*paxes=axes;} + + // read in atoms; + LinkedList atom_pos_list; + LinkedList long_site_type_list; + while (1) { + rVector3d pos(MAXFLOAT,MAXFLOAT,MAXFLOAT); + file >> pos; + if (file.eof() || pos(0)==MAXFLOAT || !file) break; + pos=axes*pos; + char buf[MAX_LINE_LEN]; + file.get(buf,MAX_LINE_LEN-1); + LinkedList site_types; + char *atom_begin=buf; + char *string_end=buf+strlen(buf); + while (atom_begin i(site_types); + while (i && strcmp(*i,atom_begin)<0) {i++;} + site_types.add(new AutoString(atom_begin),i); +*/ + site_types << new AutoString(atom_begin); + atom_begin=atom_end+1; + } + Array *parraystring=new Array(); + LinkedList_to_Array(parraystring,site_types); + + LinkedListIterator i_atom(long_site_type_list); + LinkedListIterator i_pos(atom_pos_list); + while (i_atom && i_atom->get_size() >= parraystring->get_size()) { + i_atom++; + i_pos++; + } + long_site_type_list.add(parraystring,i_atom); + atom_pos_list.add(new rVector3d(pos),i_pos); + } + + // make atom label list; + LinkedList atom_label_list; + LinkedListIterator i_atom(long_site_type_list); + for (; i_atom; i_atom++) { + for (int at=0; atget_size(); at++) { + LinkedListIterator i_label(atom_label_list); + while (i_label && strcmp(*i_label,(*i_atom)(at))<0) {i_label++;} + if (!i_label || strcmp(*i_label,(*i_atom)(at))!=0) { + atom_label_list.add(new AutoString((*i_atom)(at)),i_label); + } + } + } + + // convert string to int in the long site type list; + LinkedListIterator il(long_site_type_list); + LinkedList long_int_site_type_list; + for ( ; il; il++) { + Array *ptype_list=new Array(il->get_size()); + for (int at=0; atget_size(); at++) { + LinkedListIterator i_label(atom_label_list); + int which_type=0; + while (i_label && strcmp(*i_label,(*il)(at))!=0) {i_label++; which_type++;} + (*ptype_list)(at)=which_type; + } + long_int_site_type_list << ptype_list; + } + + // create short site type list by removing duplicates; + LinkedList short_int_site_type_list; + LinkedListIterator ili(long_int_site_type_list); + for ( ; ili; ili++) { + LinkedListIterator is(short_int_site_type_list); + while (is && (*is)!=(*ili)) {is++;} + if (!is) { + short_int_site_type_list << new Array(*ili); + } + } + + // convert site type to int; + LinkedList int_site_type; + ili.init(long_int_site_type_list); + for ( ; ili; ili++) { + LinkedListIterator is(short_int_site_type_list); + int which_type=0; + while ((*is)!=(*ili)) {is++; which_type++;} + int_site_type << new int(which_type); + } + + // make arrays from linked lists; + LinkedList_to_Array(patom_pos,atom_pos_list); + LinkedList_to_Array(psite_type,int_site_type); + LinkedList_to_Array(psite_type_list,short_int_site_type_list); + LinkedList_to_Array(patom_label,atom_label_list); +} + +void parse_rndstr_file(rMatrix3d *pcell, Array *patom_pos, Array *psite_type, Array > *pprob, Array *psite_type_list, Array *patom_label, istream &file, rMatrix3d *paxes) { + char *delim=" \t,;/"; + char *numbersdot="0123456789."; + char *eqdelim="=:\t,;/"; + // read cell; + rMatrix3d axes; + read_cell(&axes,file); + for (int i=0; i<3; i++) { + rVector3d v; + file >> v; + pcell->set_column(i,axes*v); + } + if (paxes) {*paxes=axes;} + + // read in atoms; + LinkedList atom_pos_list; + LinkedList > prob_list; + LinkedList long_site_type_list; + while (1) { + rVector3d pos(MAXFLOAT,MAXFLOAT,MAXFLOAT); + file >> pos; + if (file.eof() || pos(0)==MAXFLOAT || !file) break; + pos=axes*pos; + char buf[MAX_LINE_LEN]; + file.get(buf,MAX_LINE_LEN-1); + LinkedList site_types; + LinkedList atomprob; + char *atom_begin=buf; + char *string_end=buf+strlen(buf); + while (atom_beginstring_end) {atom_begin=string_end;} + while (strchr(numbersdot,*atom_end) && atom_begin> prob; + if (prob==-1) {prob=1.;} + atomprob << new Real(prob); + atom_begin=atom_end+1; + } + Array *parraystring=new Array(); + LinkedList_to_Array(parraystring,site_types); + Array *parrayatomprob=new Array(); + LinkedList_to_Array(parrayatomprob,atomprob); + + LinkedListIterator i_atom(long_site_type_list); + LinkedListIterator i_pos(atom_pos_list); + LinkedListIterator > i_prob(prob_list); + while (i_atom && i_atom->get_size() >= parraystring->get_size()) { + i_atom++; + i_pos++; + i_prob++; + } + long_site_type_list.add(parraystring,i_atom); + atom_pos_list.add(new rVector3d(pos),i_pos); + prob_list.add(parrayatomprob,i_prob); + } + + // make atom label list; + LinkedList atom_label_list; + LinkedListIterator i_atom(long_site_type_list); + for (; i_atom; i_atom++) { + for (int at=0; atget_size(); at++) { + LinkedListIterator i_label(atom_label_list); + while (i_label && strcmp(*i_label,(*i_atom)(at))<0) {i_label++;} + if (!i_label || strcmp(*i_label,(*i_atom)(at))!=0) { + atom_label_list.add(new AutoString((*i_atom)(at)),i_label); + } + } + } + + // convert string to int in the long site type list; + LinkedListIterator il(long_site_type_list); + LinkedList long_int_site_type_list; + for ( ; il; il++) { + Array *ptype_list=new Array(il->get_size()); + for (int at=0; atget_size(); at++) { + LinkedListIterator i_label(atom_label_list); + int which_type=0; + while (i_label && strcmp(*i_label,(*il)(at))!=0) {i_label++; which_type++;} + (*ptype_list)(at)=which_type; + } + long_int_site_type_list << ptype_list; + } + + // create short site type list by removing duplicates; + LinkedList short_int_site_type_list; + LinkedListIterator ili(long_int_site_type_list); + for ( ; ili; ili++) { + LinkedListIterator is(short_int_site_type_list); + while (is && (*is)!=(*ili)) {is++;} + if (!is) { + short_int_site_type_list << new Array(*ili); + } + } + + // convert site type to int; + LinkedList int_site_type; + ili.init(long_int_site_type_list); + for ( ; ili; ili++) { + LinkedListIterator is(short_int_site_type_list); + int which_type=0; + while ((*is)!=(*ili)) {is++; which_type++;} + int_site_type << new int(which_type); + } + + // make arrays from linked lists; + LinkedList_to_Array(patom_pos,atom_pos_list); + LinkedList_to_Array(psite_type,int_site_type); + LinkedList_to_Array(pprob,prob_list); + LinkedList_to_Array(psite_type_list,short_int_site_type_list); + LinkedList_to_Array(patom_label,atom_label_list); +} + +int parse_structure_file(rMatrix3d *pcell, Array *patom_pos, Array *patom_type, const Array &atom_label, istream &file, rMatrix3d *paxes) { + // read cell; + rMatrix3d axes; + read_cell(&axes,file); + for (int i=0; i<3; i++) { + rVector3d v; + file >> v; + pcell->set_column(i,axes*v); + } + if (paxes) {*paxes=axes;} + + // read in atoms; + LinkedList atom_pos_list; + LinkedList atom_type_list; + while (1) { + rVector3d pos(MAXFLOAT,MAXFLOAT,MAXFLOAT); + file >> pos; + if (file.eof() || pos(1)==MAXFLOAT || !file) break; + pos=axes*pos; + atom_pos_list << new rVector3d(pos); + char c; + do { + file.get(c); + } while (strchr(" \t",c) && !file.eof()); + if (file.eof()) {ERRORQUIT("Unexpected end of file in structure file");} + file.putback(c); + char buf[MAX_LINE_LEN]; + file.get(buf,MAX_LINE_LEN-1); + char *end_label=buf; + while (end_label &site_type_list, int drop_fixed_site) { + for (int i=0; iatom_type.get_size(); i++) { + int site_index=which_atom(lat.atom_pos,pstr->atom_pos(i),!lat.cell); + if (site_index==-1) return 0; + int site_type=lat.atom_type(site_index); + int j; + for (j=0; jatom_type(i)==site_type_list(site_type)(j)) { + pstr->atom_type(i)=j; + break; + } + } + if (j==site_type_list(site_type).get_size()) return 0; + } + if (drop_fixed_site) { + LinkedList pos_list; + LinkedList type_list; + for (int i=0; iatom_pos.get_size(); i++) { + if (site_type_list(lat.atom_type(which_atom(lat.atom_pos,pstr->atom_pos(i),!lat.cell))).get_size()>1) { + pos_list << new rVector3d(pstr->atom_pos(i)); + type_list << new int(pstr->atom_type(i)); + } + } + LinkedList_to_Array(&pstr->atom_pos,pos_list); + LinkedList_to_Array(&pstr->atom_type,type_list); + } + return 1; +} + +int fix_atom_type(Structure *pstr, const Array &site_type_list) { + int bad=0; + for (int i=0; iatom_type.get_size(); i++) { + if (site_type_list(pstr->atom_type(i)).get_size()!=1) {bad=1;} + pstr->atom_type(i)=site_type_list(pstr->atom_type(i))(0); + } + return bad; +} + +void write_axes(const rMatrix3d &axes, ostream &file, int doabc) { + if (doabc) { + rVector3d l,ang; + calc_lattice_vectors(&l,&ang,axes); + file << l << " " << ang << endl; + } + else { + for (int i=0; i<3; i++) { + file << axes.get_column(i) << endl; + } + } +} + +void write_structure(const Structure &str, const Structure &lat, + const Array &site_type_list, const Array &atom_label, const rMatrix3d &axes, ostream &file, int doabc) { + rMatrix3d iaxes=!axes; + write_axes(axes,file,doabc); + rMatrix3d frac_cell=iaxes*str.cell; + for (int i=0; i<3; i++) { + file << frac_cell.get_column(i) << endl; + } + for (int i=0; i &atom_label, const rMatrix3d &axes, ostream &file, int doabc) { + rMatrix3d iaxes=!axes; + write_axes(axes,file,doabc); + rMatrix3d frac_cell=iaxes*str.cell; + for (int i=0; i<3; i++) { + file << frac_cell.get_column(i) << endl; + } + for (int i=0; i &site_type_list, const Array &atom_label, const rMatrix3d &axes, ostream &file, int doabc) { + rMatrix3d iaxes=!axes; + write_axes(axes,file,doabc); + rMatrix3d frac_cell=iaxes*lat.cell; + for (int i=0; i<3; i++) { + file << frac_cell.get_column(i) << endl; + } + for (int i=0; i *clusterlist, LinkedList *ecilist, + istream &clusterfile, istream &ecifile, const rMatrix3d &axes) { + Real maxlen=0.; + while (1) { + Real mult; + clusterfile >> mult; + if (clusterfile.eof()) break; + Real len; + clusterfile >> len; + int nbpt; + clusterfile >> nbpt; + clusterfile.get(); + Cluster *pcluster=new Cluster(nbpt); + for (int j=0; j> (*pcluster)(j); + (*pcluster)(j)=axes*((*pcluster)(j)); + } + (*clusterlist) << pcluster; + maxlen=MAX(maxlen,get_cluster_length(*pcluster)); + if (ecilist) { + Real cur_eci; + ecifile >> cur_eci; + (*ecilist) << new Real(cur_eci); + } + } + return maxlen; +} + +Real read_clusters_and_eci(LinkedList *clusterlist, LinkedList *ecilist, + istream &clusterfile, istream &ecifile, const rMatrix3d &axes) { + Real maxlen=0.; + while (1) { + Real mult; + clusterfile >> mult; + if (clusterfile.eof()) break; + Real len; + clusterfile >> len; + int nbpt; + clusterfile >> nbpt; + clusterfile.get(); + MultiCluster *pcluster=new MultiCluster(nbpt); + for (int j=0; j> pcluster->clus(j); + pcluster->clus(j)=axes*(pcluster->clus(j)); + line >> pcluster->site_type(j) >> pcluster->func(j); + if (!line) { + pcluster->site_type(j)=0; + pcluster->func(j)=0; + } + } + (*clusterlist) << pcluster; + maxlen=MAX(maxlen,get_cluster_length(pcluster->clus)); + if (ecilist) { + Real cur_eci; + ecifile >> cur_eci; + (*ecilist) << new Real(cur_eci); + } + } + return maxlen; +} + +int file_exists(const char *filename) { + ifstream file(filename); + if (file) {return 1;} else {return 0;} +} + diff --git a/src/parse.hh b/src/parse.hh new file mode 100644 index 0000000..b9d2e4a --- /dev/null +++ b/src/parse.hh @@ -0,0 +1,161 @@ +#ifndef _PARSE_H_ +#define _PARSE_H_ + +#include +#include +#include +#include "xtalutil.h" +#include "stringo.h" +#include "clus_str.h" +#include "linalg.h" +#include "gceutil.h" +#include "getvalue.h" + +typedef Array ArrayAutoString; +typedef Array Arrayint; + +int is_eol(istream &file); + +int isnumber(char c); + +void read_cell(rMatrix3d *pcell, istream &file); + +// reads in a lattice from a file; +// IN: +// file: any input stream (including cin). the format is: +// +// First, the coordinate system is specified, either as +// a b c alpha beta gamma +// or as: +// ax ay az +// bx by bz +// cx cy cz +// Then the lattice vectors are listed, expressed in the coordinate system just defined: +// ua ub uc +// va vb vc +// wa wb wc +// Finally, atom positions and atomic symbols are given, expressed in the same coordinate system +// as the lattice vectors: +// atom1a atom1b atom1c atom1type1,atom1type2,etc. +// atom2a atom2b atom2c atom2type2,atom2type2,etc. +// etc. +// OUT: +// pcell: Each column of this matrix contains a lattice vector in cartesian; +// patom_pos: cartesian positions of each atom; +// psite_type: for each atom, index into *psite_site_type; +// psite_type_list: an array of indices into *patom_label; +// patom_label: an array of atomic symbols describing each type of atom; +// paxes: (optional) the coordinate system specified at the beginning of the file +// (one lattice vector per column); +// +// An example: +// The fcc lattice for the MgO-CaO system: +// 3.2 3.2 3.2 90 90 90 +// 0 0.5 0.5 +// 0.5 0 0.5 +// 0.5 0.5 0 +// 0 0 0 Ca,Mg +// 0.5 0.5 0.5 O +// then the variables are initialized as follows: +// *pcell: +// 0 1.6 1.6 +// 1.6 0 1.6 +// 1.6 1.6 0 +// *patom_pos: +// 0 0 0 +// 1.6 1.6 1.6 +// *psite_type: +// 0 1 +// *psite_type_list +// 0 1 +// 2 +// *patom_label: +// Ca Mg O +// End of example; + +void parse_lattice_file(rMatrix3d *pcell, Array *patom_pos, Array *psite_type, Array *psite_type_list, Array *patom_label, istream &file, rMatrix3d *paxes=NULL); +// variant that reads occupations (probabilities) - experimental ; +void parse_rndstr_file(rMatrix3d *pcell, Array *patom_pos, Array *psite_type, Array > *pprob, Array *psite_type_list, Array *patom_label, istream &file, rMatrix3d *paxes); + +// reads in a structure from a file; +// IN: +// atom_label: An array of atomic symbols describing each type of atom that will appear in the file; +// file: any input stream (including cin). the format is: +// +// First, the coordinate system is specified, either as +// a b c alpha beta gamma +// or as: +// ax ay az +// bx by bz +// cx cy cz +// Then the lattice vectors are listed, expressed in the coordinate system just defined: +// ua ub uc +// va vb vc +// wa wb wc +// Finally, atom positions and atomic symbol are given, expressed in the same coordinate system +// as the lattice vectors: +// atom1a atom1b atom1c atom1type +// atom2a atom2b atom2c atom2type +// etc. +// OUT: +// pcell: Each column of this matrix contains a lattice vector in cartesian; +// patom_pos: cartesian positions of each atom; +// patom_type: an array of indices into atom_label; +// paxes: (optional) the coordinate system specified at the beginning of the file +// (one lattice vector per column); +// it return 1 upon successeful completion and 0 otherwise; +// +// An example (continued from above): +// Pure CaO in the MgO-CaO system: +// 3.2 3.2 3.2 90 90 90 +// 0 0.5 0.5 +// 0.5 0 0.5 +// 0.5 0.5 0 +// 0 0 0 Ca +// 0.5 0.5 0.5 O +// then the variables are initialized as follows: +// *pcell: +// 0 1.6 1.6 +// 1.6 0 1.6 +// 1.6 1.6 0 +// *patom_pos: +// 0 0 0 +// 1.6 1.6 1.6 +// *patom_type: +// 0 +// (assuming the atom_label contains): +// Ca Mg O +// End of example; +int parse_structure_file(rMatrix3d *pcell, Array *patom_pos, Array *patom_type, const Array &atom_label, istream &file, rMatrix3d *paxes=NULL); + +// takes a structure as read by parse_structure_file and makes it conform; +// to the same standard as parse_lattice_file.; +// It converts a pstr->atom_type that contains indices into atom_label; +// into a pstr->atom_type that contains indices into site_type_list.; +// ARG: +// pstr: (IN/OUT) structure to fix (as read by parse_structure_file); +// lat: (IN) a lattice (as read by parse_lattice_file); +// site_type_list: (IN) (as read by parse_lattice_file); +// it return 1 upon successeful completion and 0 otherwise; +int fix_atom_type(Structure *pstr, const Structure &lat, const Array &site_type_list, int drop_fixed_site); +// simple version of the above if only one atom type per site is possible; +int fix_atom_type(Structure *pstr, const Array &site_type_list); + +void write_axes(const rMatrix3d &axes, ostream &file, int doabc); + +void write_structure(const Structure &str, const Structure &lat, + const Array &site_type_list, const Array &atom_label, const rMatrix3d &axes, ostream &file, int doabc=0); +void write_structure(const Structure &str, const Array &atom_label, const rMatrix3d &axes, ostream &file, int doabc=0); + +void skip_to_next_structure(istream &strfile); + +void write_lattice(const Structure &lat, const Array &site_type_list, const Array &atom_label, const rMatrix3d &axes, ostream &file, int doabc=0); + +Real read_clusters_and_eci(LinkedList *clusterlist, LinkedList *ecilist, + istream &clusterfile, istream &ecifile, const rMatrix3d &axes); +Real read_clusters_and_eci(LinkedList *clusterlist, LinkedList *ecilist, + istream &clusterfile, istream &ecifile, const rMatrix3d &axes); + +int file_exists(const char *filename); + +#endif diff --git a/src/parseineq.c++ b/src/parseineq.c++ new file mode 100644 index 0000000..a74be6c --- /dev/null +++ b/src/parseineq.c++ @@ -0,0 +1,39 @@ +void read_inequalities(LinkedList *ineq_list, const Array &label, istream &s) { + while (!s.eof()) { + char dir; + while (1) { + LinearInequality ineq(label.get_size()+1); + zero_array(&(ineq.v)); + Real a; + s >> a; + skip_delim(s,"* \t\n"); + AutoString w; + get_string(&w,s,"\t\n +-<>"); + if (!is_in_array(label,w)) { + cerr << "unknown atom label " << w << endl; + ERRORQUIT("Aborting."); + } + ineq.v(index_in_array(label,w))+=a; + skip_delim(s," \t\n"); + dir=s.getc(); + if (strchr("<>",dir)>=0) {break;} + s.pushback(dir); + } + skip_delim(s,"="); + s >> ineq.c; + if (dir==">") { + product(&(ineq.v),ineq.v,-1.); + ineq.c=-ineq.c; + } + (*ineq_list) << new LinearInequality(ineq); + skip_delim(s,", \t\n"); + } +} + +Real to_real(const AutoString &s) { + istrstream str(s); + Real r; + str >> r; + return r; +} + diff --git a/src/patchagg b/src/patchagg new file mode 100755 index 0000000..64b1631 --- /dev/null +++ b/src/patchagg @@ -0,0 +1,8 @@ +#!/bin/sh +sed -e 's/LinkedList/LinkedList >/g;' \ + -e 's/LinkedList/LinkedList >/g;' \ + -e 's/LinkedListIterator/LinkedListIterator >/g;' \ + -e 's/LinkedListIterator/LinkedListIterator >/g;' \ + -e 's/<< new Real/<< new Aggregate/g;' \ + -e 's/<< new int/<< new Aggregate/g;' \ + -e 's/add\(new int/add\(new Aggregate/g;' diff --git a/src/patchconst b/src/patchconst new file mode 100755 index 0000000..ef59d9c --- /dev/null +++ b/src/patchconst @@ -0,0 +1,2 @@ +#!/bin/sh +sed 's/char \*\(.*\)="/const char \*\1="/g' | sed -e 's/char \*shortname;/const char *shortname;/g' -e 's/char \*longname;/const char *longname;/g' -e 's/char \*object_label/const char *object_label/g' -e 's/extern char \*/extern const char */g' -e 's/char \*lat_dir/const char *lat_dir/g' -e 's/char \*my_init_str/const char *my_init_str/g' -e 's/char \*puredir/const char *puredir/g' | sed 's/const const/const/g' diff --git a/src/patchdoth b/src/patchdoth new file mode 100755 index 0000000..1079c46 --- /dev/null +++ b/src/patchdoth @@ -0,0 +1,2 @@ +#!/bin/sh +sed -e 's/stream.h>/stream>/g;' -e 's/iomanip.h>/iomanip>/g;' -e 's/complex.h>/complex>/g;' diff --git a/src/patchfor b/src/patchfor new file mode 100755 index 0000000..2e285d5 --- /dev/null +++ b/src/patchfor @@ -0,0 +1,33 @@ +#!/bin/sh +awk 'BEGIN {pat="for ("; p=1; b=0; toadd=0;} \ +{ \ + for (c=1; c<=length($0); c++) { \ + ch=substr($0,c,1); \ + if (ch=="{") { \ + bracket[b]=toadd; b++; \ + toadd=0; \ + printf ch; \ + } \ + else if (ch=="}") { \ + b--; \ + if (bracket[b]==1) {printf "}";} \ + printf ch; \ + } \ + else if (ch==substr(pat,p,1)) { \ + p++; \ + if (p>length(pat)) { \ + printf "{" pat; \ + toadd=1; \ + p=1; \ + } \ + } \ + else { \ + if (p>1) { \ + printf substr(pat,1,p-1); \ + p=1; \ + } \ + printf ch; \ + } \ + } \ + print substr(pat,1,p-1); p=1;\ +}' diff --git a/src/patchfriend b/src/patchfriend new file mode 100755 index 0000000..c78cc69 --- /dev/null +++ b/src/patchfriend @@ -0,0 +1,2 @@ +#!/bin/sh +perl ./patchfriend.pl diff --git a/src/patchfriend.pl b/src/patchfriend.pl new file mode 100644 index 0000000..7c750e6 --- /dev/null +++ b/src/patchfriend.pl @@ -0,0 +1,158 @@ +#! /usr/bin/perl + +# Many thanks to Mayeul d'Avezac for providing this patch + +move(); + +my @friends = (); +my @class = (); +my $template = ""; +my $innertemplate = ""; +my $name = ""; +sub move() +{ + my $file = $_[0]; + + my $isinclass=0; + my $opened = 0; + + while( ($_ = ) ) + { + if( /^(\s+|)class(\s+|)(\S+)/ and /\{(\s+)$/ ) + { + /^(\s+|)class(\s+|)(\S+)/; + $isinclass = 1; + $name = $3; + $name =~ s/://; + push @class, ( $_ ); + } + if( /template(\s+|)<((\S|\s)+)>/ and $isinclass == 0 ) + { + $template = $2; + $innertemplate = $template; + while ( $innertemplate =~ s/class// ) {} + while ( $innertemplate =~ s/types::t_int// ) {} + while ( $innertemplate =~ s/int// ){} + $innertemplate =~ s/^\s+//; + $innertemplate =~ s/\s+$//; + } + $opened++ if( $isinclass and /{/ ); + if( /friend/ and not /friend(\s+)class/ ) + { grab_friend(); } + elsif ( $isinclass == 1 ) + { push @class, ($_); } + else { print $_; } + if( $isinclass and /}/ ) + { + $opened--; + if( $opened == 0 ) + { + print_friends(); + $isinclass = 0; + $template = ""; + $innertemplate = ""; + $name = ""; + } + } + + } +} + +sub grab_friend() +{ + return if ( /\)(\s+|);/ ); + my $line = $_; + my $opened = 0; + + push @friends, ( sprintf "$1 template<%s>\n", $template ) if( $template =~ /\S+/ ); + do + { + my $line = $_; + + while ( $line =~ s/$name(\s+|)<(.*)>/TEMPLATED$1<$2>/ ) {} + if( $line =~ /$name/ ) + { + $line =~ s/$name/$name<$innertemplate>/; + } + while ($line =~ s/TEMPLATED(\s+|)<(.+)>/$name$1<$2>/) {} + + push @friends, ( $line ); + + ++$opened if( /{/ ); + --$opened if( /}/ ); + if( $opened == 0 ) + { + push @friends, ( "\n" ); + return; + } + } + while ( $_ = ); +} + +sub print_friends() +{ + if( $#friends == -1 ) + { + for( my $i = 1; $i < scalar( @class ); $i++ ) + { + print $class[$i]; + } + $#friends = -1; + $#class = -1; + return; + } + # print forward class declaration + print " class $name; \n\n"; + # print forward declarations of friend function + for( my $i = 0; $i < scalar( @friends ); $i++ ) + { + $line = $friends[$i]; + next if( $line !~ /friend/ ); + + my $dummy = $line; + $dummy =~ /^(\s+)/; + print "$1template<$template>\n" if( $template =~ /\S/ ); + $line =~ s/friend//; + $line =~ s/{//; + $line =~ s/\)(\s+|)$/\);/; + print $line, "\n"; + } + + # print start of class + my $line = $class[0]; + my $dummy = $class[0]; + $dummy =~ /^(\s+)/; + print "\n\n$1template<$template>\n" if( $template =~ /\S/ ); + print $class[0]; + + # print friends + for( my $i = 0; $i < scalar( @friends ); $i++ ) + { + $line = $friends[$i]; + next if( $line !~ /friend/ ); + + my $dummy = $line; + $dummy =~ /^(\s+)/; + $line =~ s/{//; + $line =~ s/\(/ <> \(/; + $line =~ s/\)(\s+|)$/\);/; + print $line, "\n"; + } + + # print rest of class definition + for( my $i = 2; $i < scalar( @class ); $i++ ) + { + print $class[$i]; + } + print "\n\n"; + # print friend function definition + for( my $i = 0; $i < scalar( @friends ); $i++ ) + { + $line = $friends[$i]; + $line =~ s/friend//; + print $line; + } + $#friends = -1; + $#class = -1; +} + diff --git a/src/patchlang b/src/patchlang new file mode 100755 index 0000000..5a42c42 --- /dev/null +++ b/src/patchlang @@ -0,0 +1,2 @@ +#!/bin/sh +cat - | ./patchconst | ./patchdoth | ./patchstr2s | ./patchtemplate | ./patchstatic diff --git a/src/patchstatic b/src/patchstatic new file mode 100755 index 0000000..3a95e89 --- /dev/null +++ b/src/patchstatic @@ -0,0 +1,2 @@ +#!/bin/sh +sed 's/template <> CS_KSpaceECI RSPredictor::kspace_eci_object;/template <> CS_KSpaceECI RSPredictor::kspace_eci_object=CS_KSpaceECI();/g' diff --git a/src/patchstr2s b/src/patchstr2s new file mode 100755 index 0000000..f47afdf --- /dev/null +++ b/src/patchstr2s @@ -0,0 +1,3 @@ +#!/bin/sh +#sed -e 's///g;' -e 's/istrstream/istringstream/g;' -e 's/ostrstream/ostringstream/g;' -e 's/\.str()/.str().c_str()/g;' | ./patchdoth +./patchdoth | sed -e 's///g;' -e 's/strstream /stringstream /g;' -e 's/\.str()/.str().c_str()/g;' diff --git a/src/patchstrstr b/src/patchstrstr new file mode 100755 index 0000000..fa55097 --- /dev/null +++ b/src/patchstrstr @@ -0,0 +1,2 @@ +#!/bin/sh +sed 's/ostrstream *([^;]*);/char buf\1\[MAX_LINE_LEN\]; ostrstream \1(buf\1,MAX_LINE_LEN);/g' diff --git a/src/patchtemplate b/src/patchtemplate new file mode 100755 index 0000000..c2ba669 --- /dev/null +++ b/src/patchtemplate @@ -0,0 +1,2 @@ +#!/bin/sh +sed -e 's/^GenericPlugIn GenericPlugIn CS_KSpaceECI/g' -e 's/^inline void BoundingBox/template<> inline void BoundingBox/g' diff --git a/src/patchuT b/src/patchuT new file mode 100755 index 0000000..be2ce20 --- /dev/null +++ b/src/patchuT @@ -0,0 +1,4 @@ +#!/bin/sh +sed -e 's/_T/uT/g' + + diff --git a/src/path.sspp b/src/path.sspp new file mode 100644 index 0000000..4cf665f --- /dev/null +++ b/src/path.sspp @@ -0,0 +1,2 @@ +#const x=1-1; +#const A=""; \ No newline at end of file diff --git a/src/pathint.c++ b/src/pathint.c++ new file mode 100644 index 0000000..dc342f4 --- /dev/null +++ b/src/pathint.c++ @@ -0,0 +1,437 @@ +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include + +Real dPhi(Real p, Real k, Real kT) { + Real acc=0.; + Real k0val=1./(1.+exp(-p/kT)); + Real dk0val=k*kT*log(1+exp(p/kT)); + if (dk0val/k0val<0.1) { + acc=k0val-dk0val; + } + else { + kT*=M_PI; + for (Real s=-1; s<1.5; s+=2.) { + Complex r=sqrt(k)/sqrt(Complex(p,-s*kT)); + Complex ftfermi(1.,0.); + if (abs(kT*r)>0) {ftfermi=kT*r/sinh(kT*r);} + acc+=real(Complex(0,s)*sqrt(Complex(0,-s))/(2.*sqrt(M_PI))*pow(k*Complex(p,-s*kT),-0.25)*exp(-Complex(kT,2*s*p)*r)*ftfermi); + } + } + return acc; +} + +Complex dPhi_complex(Real p, Real k, Real kT) { + Complex acc=0.; + Real k0val=1./(1.+exp(-p/kT)); + Real dk0val=k*kT*log(1+exp(p/kT)); + if (dk0val/k0val<0.1) { + acc=k0val-dk0val; + } + else { + kT*=M_PI; + Complex r=sqrt(k)/sqrt(Complex(p,-kT)); + Complex ftfermi(1.,0.); + if (abs(kT*r)>0) {ftfermi=kT*r/sinh(kT*r);} + acc+=Complex(0,1.)*sqrt(Complex(0,-1.))/(2.*sqrt(M_PI))*pow(k*Complex(p,-kT),-0.25)*exp(-Complex(kT,2*p)*r)*ftfermi; + } + return acc; +} + +Real dPhi_pos(Real p, Real k, Real kT) { + Real acc=0.; + Real k0val=1./(1+exp(-p/kT)); + Real dk0val=k*kT*log(1+exp(p/kT)); + if (dk0val/k0val<0.1) { + acc=k0val-dk0val; + } + else { + kT*=M_PI; + for (Real s=-1; s<1.5; s+=2.) { + Complex r=sqrt(k)/sqrt(Complex(p,-s*kT)); + Real ftfermi=1.; + //if (real(kT*r)>0.) {ftfermi=abs(kT*r)/sinh(real(kT*r));} + if (real(kT*r)>0.) {ftfermi=abs(kT*r/sinh(kT*r));} + acc+=(1./(2.*sqrt(M_PI)))*pow(abs(k*Complex(p,-s*kT)),-0.25)*exp(real(-Complex(kT,2*s*p)*r))*ftfermi; + } + } + return acc; +} + +Real dPhi_raw(Real p, Real k, Real kT, Real prange, int pmesh) { + Real tiny=1e-4; + Real dp=2.*prange/(Real)(2*pmesh+1); + int plmesh=pmesh; + Real minp=p-(Real)plmesh*dp; + if (minp<0) { + plmesh=(int)floor(p/dp); + minp=p-(Real)plmesh*dp; + } + int p2mesh=plmesh+pmesh+1; + Real sk=2.*sqrt(k); + Real acc=0; + int i; + Real u; + for (i=p2mesh, u=minp+dp/2.; i>0; i--, u+=dp) { + acc+=j0(sk*sqrt(u))*pow(cosh((u-p)/kT/2.),-2.); + } + acc*=dp/kT/4.; + return acc; +} + +Real dPhi(Real p, Real k, Real kT, Real prec) { + Real prange=kT; + int pmesh=1; + int done=0; + while (!done) { + done=1; + if ( fabs( dPhi_raw(p,k,kT,prange,2*pmesh) - dPhi_raw(p,k,kT,prange,pmesh) ) > prec ) { + pmesh*=2; + done=0; + } + if ( fabs( dPhi_raw(p,k,kT,2.*prange,2*pmesh) - dPhi_raw(p,k,kT,prange,pmesh) ) > prec ) { + pmesh*=2; + prange*=2.; + done=0; + } + // cerr << dPhi_raw(p,k,kT,prange,pmesh) << " " << prange << " " << pmesh << endl; + } + return dPhi_raw(p,k,kT,prange,pmesh); +} + +/* +int binomial(int n, int k) { + return factorial(n)/(factorial(n-k)*factorial(k)); +} + +Real dPhi(Real p, Real k, int dpmdk, Real a, int nn) { + Real acc=0.; + for (int n=1; n<=nn; n++) { + Real acc2=0.; + for (int m=1; m<=n; m++) { + Real rm=(Real)m; + acc2+=(Real)binomial(n,m)*ipow(rm,dpmdk)/ipow(-a,m)*exp(-k/rm-rm*p); + } + Real rn=(Real)n; + acc+=acc2/(rn*pow(1.+1./a,rn)); + } + return ipow(-1.,dpmdk)*acc; +} +*/ + +template +class Function { +public: + virtual R operator() (const T &x) const {} +}; + + +class ActualPot: public Function { + Real actualstiffo2; +public: + ActualPot(Real _actualstiff): actualstiffo2(_actualstiff/2.), Function() {} + Real operator ()(const rVector3d &x) const { + return actualstiffo2*norm2(x); + } +}; + +Real path_pot(Array xs, const Function &pot) { + int maxn=xs.get_size(); + Real dt=1./(Real)maxn; + Real acc=0.; + for (int n=0; n xs, const Function &pot) { + int maxn=xs.get_size(); + Real dt=1./(Real)maxn; + rVector3d acc(0.,0.,0.); + for (int n=0; n xs) { + int maxn=xs.get_size(); + Real dt=1./(Real)maxn; + Real acc=norm2(xs(0)-xs(maxn-1)); + for (int n=1; n { + Real kT; + Real wscale; +public: + SamplingFunc(Real _kT, Real _wscale): kT(_kT), wscale(_wscale), Function() {} + Real operator ()(const rVector2d &x) const { + return dPhi_pos(x(0),x(1),kT); + } +}; + +class MCState { +public: + Real pot; + Real meanpot; + Real kin; + Real weight; + Array xs; + MCState(void): pot(0.),meanpot(0.),kin(0.),weight(0.),xs(0) {} + MCState(const MCState &old): pot(old.pot),meanpot(old.meanpot),kin(old.kin),weight(old.weight),xs(old.xs) {} +}; + +Complex sgn(Complex z) { + return z/abs(z); +} + +Real determinant(const Array2d &_a) { + Array tmp; + Array2d a(_a); + lu_decomposition(&a,&tmp); + Real acc=1; + for (int i=0; i &a) { + return a(0,0)*a(1,1)-a(0,1)*a(1,0); +} + +void inverse_2x2(Array2d *pinv_a,const Array2d &a) { + pinv_a->resize(2,2); + Complex det=determinant_2x2(a); + Complex tmp=a(0,0)/det; + (*pinv_a)(0,0)=a(1,1)/det; + (*pinv_a)(1,1)=tmp; + (*pinv_a)(0,1)=-a(0,1)/det; + (*pinv_a)(1,0)=-a(1,0)/det; +} + +Complex c_quadratic_form(const Array2d &a, const Array &x) { +#ifdef DEBUG + if (a.get_size()(0)!=a.get_size()(1)) ERRORQUITDUMP("Matrix is not square"); + if (a.get_size()(0)!=x.get_size()) ERRORQUITDUMP("Matrices not conformable"); +#endif + Complex result(0.,0.); + for (int i=0; i *result, const Array2d &a, const Array2d &b) { +#ifdef DEBUG + if (a.get_size()(1)!=b.get_size()(0)) ERRORQUITDUMP("Matrices not conformable"); +#endif + result->resize(iVector2d(a.get_size()(0),b.get_size()(1))); + zero_array(result); + for (int i=0; i mean_pk(2); + Array2d var_pk(iVector2d(2,2)); + if (readmv) { + Real tmp; + dumpin >> tmp; + dumpin >> mean_pk(0) >> mean_pk(1); + dumpin >> var_pk(0,0) >> var_pk(0,1) >> var_pk(1,0) >> var_pk(1,1); + } + else { + zero_array(&mean_pk); + zero_array(&var_pk); + while (1) { + for (int i=0; instepequil) { + acc+=cur_dPhiow; + nstepacc+=1.; + mean_pk(0)+=curstate.pot; + mean_pk(1)+=curstate.kin; + var_pk(0,0)+=curstate.pot*curstate.pot; + var_pk(0,1)+=curstate.pot*curstate.kin; + var_pk(1,0)+=curstate.pot*curstate.kin; + var_pk(1,1)+=curstate.kin*curstate.kin; + if (nstep % verbstep == 0) { + if (printstr) { + for (int i=0; i=nstepmax) break; + } + product(&mean_pk,mean_pk,1./nstepacc); + product(&var_pk,var_pk,1./nstepacc); + Array2d tmp; + outer_product(&tmp,mean_pk,mean_pk); + diff(&var_pk,var_pk,tmp); + dumpout << mu << " "; + dumpout << mean_pk(0) << " " << mean_pk(1) << " "; + dumpout << var_pk(0,0) << " " << var_pk(0,1) << " " << var_pk(1,0) << " " << var_pk(1,1) << " " << endl; + } + Array freq(2); + Real p=mean_pk(0); + Real k=mean_pk(1); + Real sdk=dk*sqrt(mean_pk(1)); + freq(0)=arg(dPhi_complex(-(p+dp),k,kT)/dPhi_complex(-(p-dp),k,kT))/(2.*dp); + freq(1)=arg(dPhi_complex(-p,k+sdk,kT)/dPhi_complex(-p,k-sdk,kT))/(2.*sdk); + Array2d quadph(2,2); + quadph(0,0)=arg(dPhi_complex(-(p+dp),k,kT)*dPhi_complex(-(p-dp),k,kT)/sqr(dPhi_complex(-(p),k,kT)))/sqr(dp); + quadph(1,1)=arg(dPhi_complex(-(p),k+sdk,kT)*dPhi_complex(-(p),k-sdk,kT)/sqr(dPhi_complex(-(p),k,kT)))/sqr(sdk); + quadph(0,1)=arg( (dPhi_complex(-(p+dp),k+sdk,kT)/dPhi_complex(-(p+dp),k-sdk,kT)) / (dPhi_complex(-(p-dp),k+sdk,kT)/dPhi_complex(-(p-dp),k-sdk,kT)) )/(4.*dp*sdk); + quadph(1,0)=quadph(0,1); + Real ph=arg(sgn(dPhi_complex(-p,k,kT))); + cout << "ph(x,y)=(" << ph << ")+(" << freq(0) << ")*x+(" << freq(1) << ")*y+(" << quadph(0,0)/2. << ")*x*x+(" << quadph(1,1)/2. << ")*y*y+2.*(" << quadph(0,1)/2. << ")*x*y" << endl; + cout << "phs(x,y)=ph(x-(" << p << "),y-(" << k << "))" << endl; + Array2d W(2,2); + for (MultiDimIterator ii(iVector2d(2,2)); ii; ii++) {W(ii)=var_pk(ii);} + cout << W << endl; + inverse_2x2(&W,W); + cout << W << endl; + for (MultiDimIterator ii(iVector2d(2,2)); ii; ii++) {W(ii)+=Complex(0.,quadph(ii));} + cout << W << endl; + Array2d tmp1,tmp2; + tmp1=W; + inverse_2x2(&W,W); + product(&tmp2,W,tmp1); + cout << "I=" << tmp2 << endl; + cout << W << endl; + Array cfreq(2); + for (int i=0; i<2; i++) {cfreq(i)=freq(i);} + + cout << cfreq << endl; + // cout << "ne= " << mu << " " << real(2.*M_PI*exp(Complex(0.,ph))*exp(-0.5*c_quadratic_form(W,cfreq))*sqrt(determinant_2x2(W))) << endl; + cout << "ne= " << mu << " " << real(2.*M_PI*exp(-0.5*c_quadratic_form(W,cfreq))*sqrt(determinant_2x2(W))) << endl; + } +} diff --git a/src/pathtest b/src/pathtest new file mode 100755 index 0000000..c410b01 --- /dev/null +++ b/src/pathtest @@ -0,0 +1,37 @@ +#!/bin/bash +myopt=' +-kT=0.25 +-mu0=2.0 +-mu1=6.0 +-dmu=0.05 +-nlink=25 +-nstepequil=10000 +-nstepmax=100000 +-verbstep=1000 +' +./pathint.exe $myopt + +awk '{print $1}' dump.out > x.in +awk '{print $2,$3,$4,$5,$6,$7}' dump.out > y.in +lsfit.exe -1 -x=x.in -y=y.in -p | awk ' +BEGIN {c=0; r=0;} +{ +if ($1=="") {maxr=r; r=0; c++;} +else { + a[r,c]=$1; + r++; +} +} +END { +maxc=c; +for (r=0; r<=maxr; r++ ) { + for (c=0; c<=maxc; c++) { + printf a[r,c] " " + } + print ""; +} +}' > dump.tmp +paste x.in dump.tmp > dump.in + +./pathint.exe -readmv $myopt | grep ne > path.out + diff --git a/src/pdef.c++ b/src/pdef.c++ new file mode 100644 index 0000000..480e3d0 --- /dev/null +++ b/src/pdef.c++ @@ -0,0 +1,116 @@ +#include +#include +#include "phonlib.h" +#include "getvalue.h" +#include "parse.h" +#include "version.h" +#include "lattype.h" +#include "arraylist.h" + +void find_distinct_sites(Array *pwhich_atom, + const Structure &str, + const SpaceGroup &spacegroup) { + LinkedList which_atom_list; + LinkedList > pointlist; + for (int at=0; at p(1); + p(0)=str.atom_pos(at); + if (add_unique(&pointlist,p,spacegroup)) { + which_atom_list << new int(at); + } + } + LinkedList_to_Array(pwhich_atom,which_atom_list); +} + +// extern char *helpstring; +char *helpstring=""; + +int main(int argc, char *argv[]) { + // cerr.setf(ios::fixed | ios::showpos); + cerr.setf(ios::fixed); + cerr.precision(5); + char *latfilename="lat.in"; + char *strfilename="str.out"; + char *strprefix="pdef"; + Real enclosed_radius=0.; + int dohelp=0; + int sigdig=5; + AskStruct options[]={ + {"","Point DEFect generator " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latfilename}, + {"-s","Input file defining the lattice (default: str.out)",STRINGVAL,&strfilename}, + {"-p","Prefix of the directories that will contain the defected structures (Default pdef)",STRINGVAL,&strprefix}, + {"-er","Minimum distance between point defects",REALVAL,&enclosed_radius}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-h","Display more help",BOOLVAL,&dohelp} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + if (enclosed_radius==0) { + ERRORQUIT("You need to specify at least the -er parameter."); + } + + Structure lat; + Array site_type_list; + Array atom_label; + rMatrix3d axes; + { + ifstream file(latfilename); + if (!file) ERRORQUIT("Unable to open lattice file."); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &site_type_list, &atom_label, file, &axes); + if (fabs(det(lat.cell)) atoms; + SpaceGroup str_spacegroup; + str_spacegroup.cell=str.cell; + find_spacegroup(&str_spacegroup.point_op,&str_spacegroup.trans,str.cell,str.atom_pos,str.atom_type); + find_distinct_sites(&atoms,str,str_spacegroup); + + Structure ideal_supercell; + find_smallest_supercell_enclosing_sphere(&(ideal_supercell.cell),str.cell,enclosed_radius); + find_all_atom_in_supercell(&(ideal_supercell.atom_pos), &(ideal_supercell.atom_type), str.atom_pos, str.atom_type, str.cell, ideal_supercell.cell); + + int pert=0; + for (int at=0; at +#include +#include "mclib.h" +#include "drawpd.h" +#include "parse.h" +#include "getvalue.h" +#include "lstsqr.h" +#include "version.h" +#include "teci.h" +#include "keci.h" +#include "plugin.h" + +extern char *helpstring; + +GenericPlugIn *GenericPlugIn::list=NULL; + +int main(int argc, char *argv[]) { + char *delim="\t"; + int help=0; + Real mu0=MAXFLOAT; + Real T0=MAXFLOAT; + Real maxdmu=MAXFLOAT; + Real mu_gap=0; + Real maxdT=MAXFLOAT; + Real enclosed_radius=0.; + int init_gs[2]={-2,-2}; + char *lat_dir[]={".","."}; + char *my_init_str[]={"",""}; + int printlro=0; + Real threshold=3.; + int sigdig=6; + int quiet=0; + char *outfile="mc.out"; + Real kboltzman=1.; + int keV=0; + int seed=0; + Real lte_prec=0; + int go_down=0; + Real large_step=1e50; + Real x_prec=0; + char *kspace_labels=""; + AskStruct options[]={ + {"","PHase Boundary " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Help",BOOLVAL,&help}, + {"-mu","initial chemical potential",REALVAL,&mu0}, + {"-T","initial temperature",REALVAL,&T0}, + {"-dmu","chemical potential adjustment step",REALVAL,&maxdmu}, + {"-dT","temperature step",REALVAL,&maxdT}, + {"-mug","Gap between the mu in phase 1 and mu in phase 2 (default: 0)",REALVAL,&mu_gap}, + {"-ltep","threshold free energy precision to use MC instead of LTE (in units of T) (default: always MC)",REALVAL,<e_prec}, + {"-er","enclosed radius",REALVAL,&enclosed_radius}, + {"-gs1","ground state for phase #1",INTVAL,&(init_gs[0])}, + {"-gs2","ground state for phase #2",INTVAL,&(init_gs[1])}, + {"-is1","File name containing a user-specified initial configuration (replaces -gs1)",STRINGVAL,&(my_init_str[0])}, + {"-is2","File name containing a user-specified initial configuration (replaces -gs2)",STRINGVAL,&(my_init_str[1])}, + + {"-d1","directory for phase #1 (default: current dir)",STRINGVAL,&(lat_dir[0])}, + {"-d2","directory for phase #2 (default: current dir)",STRINGVAL,&(lat_dir[1])}, + {"-lro","print long range order parameter",BOOLVAL,&printlro}, + {"-tstat","Critical value of the test for discontinuity",REALVAL,&threshold}, + {"-smax","Maximum step (experimental feature)",REALVAL,&large_step}, + {"-sigdig","Number of significant digits printed",INTVAL,&sigdig}, + {"-q","Quiet (do not write to stdout)",BOOLVAL,&quiet}, + {"-o","Output file (default: mc.out)",STRINGVAL,&outfile}, + {"-k","Boltzman's constant (conversion factor from T to energy)",REALVAL,&kboltzman}, + {"-keV","Set Boltzman's constant to 8.617e-5 so that temperature is in K when energy is in eV",BOOLVAL,&keV}, + {"-sd","Seed for random number generation (default: use clock)",INTVAL,&seed}, + {"-dn","Go down in temperature",BOOLVAL,&go_down}, + {"-dx","Concentration Precision",REALVAL,&x_prec}, + {"-ks","Specify how k space ECI are calculated (e.g. -ks=cs).",STRINGVAL,&kspace_labels} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (help) { + cout << helpstring; + exit(1); + } + if (keV) {kboltzman=8.617e-5;} + if (mu0==MAXFLOAT ^ T0==MAXFLOAT) ERRORQUIT("Specify both -mu and -T or neither of them"); + if ((T0==MAXFLOAT || T0==0) && lte_prec==0) ERRORQUIT("Specify the -ltep option (e.g. -ltep=5e-3) or start at T>0."); + if (maxdT==MAXFLOAT) ERRORQUIT("Specify -dT"); + + for (int phase=0; phase<2; phase++) { + if (strlen(my_init_str[phase])>0) { + init_gs[phase]=-1; + } + } + + if (init_gs[0]==-2) ERRORQUIT("Specify -gs1"); + if (init_gs[1]==-2) ERRORQUIT("Specify -gs2"); + if (enclosed_radius==0) ERRORQUIT("Specify -er"); + if (! (x_prec>0.)) ERRORQUIT("Specify -dx"); + T0*=kboltzman; + maxdT*=kboltzman; + lte_prec*=kboltzman; + + rndseed(seed); + + Structure init_str[2]; + PhaseThermoData *lte[2]; + PhaseThermoData *mf[2]; + MonteCarlo *mc[2]; + MultiKSpaceECI multi_kspace_eci[2]; + PolyInterpolatorBig > teci[2]; + PolyInterpolatorBig > teeci[2]; + Real e_scale[2]; + + for (int phase=0; phase<2; phase++) { + char cur_dir[MAX_LINE_LEN]; + getcwd(cur_dir,MAX_LINE_LEN); + chdir_robust(lat_dir[phase]); + + Structure lattice; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream latticefile("lat.in"); + if (!latticefile) ERRORQUIT("Unable to open lat.in"); + parse_lattice_file(&lattice.cell, &lattice.atom_pos, &lattice.atom_type, &labellookup, &label, latticefile, &axes); + wrap_inside_cell(&lattice.atom_pos,lattice.atom_pos,lattice.cell); + } + for (int i=0; i2) + ERRORQUIT ("Sorry, only binary alloys implemented"); + } + SpaceGroup spacegroup; + spacegroup.cell=lattice.cell; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,lattice.cell,lattice.atom_pos,lattice.atom_type); + + int nbsite=0; + for (nbsite=0; nbsite clusterlist; + { + ifstream clusterfile("clusters.out"); + if (!clusterfile) ERRORQUIT("Unable to open clusters.out"); + read_clusters_and_eci(&clusterlist,NULL,clusterfile,clusterfile,axes); + read_t_dep_eci_file(&(teci[phase]),&(teeci[phase]),clusterlist.get_size(),kboltzman); + } + + Array gs_list; + { + ifstream strfile("gs_str.out"); + if (!strfile) ERRORQUIT("Unable to open gs_str.out"); + LinkedList gs_llist; + while (!strfile.eof()) { + Structure str; + parse_structure_file(&str.cell,&str.atom_pos,&str.atom_type,label,strfile); + if (!fix_atom_type(&str, lattice, labellookup,1)) ERRORQUIT("Error reading gs_str.out"); + skip_to_next_structure(strfile); + wrap_inside_cell(&str.atom_pos,str.atom_pos,str.cell); + for (int s=0; s=nb_gs || init_gs[phase]<-1) ERRORQUIT("-gs option is out of range."); + + Structure disordered=lattice_only; + for (int i=0; i0) { + cerr << "Reading phase " << (phase+1) << ": "; + ifstream strfile(my_init_str[phase]); + if (!strfile) { + ERRORQUIT("Unable to open initial structure file"); + } + Structure mystr; + parse_structure_file(&mystr.cell,&mystr.atom_pos,&mystr.atom_type,label,strfile); + if (!fix_atom_type(&mystr, lattice, labellookup,1)) ERRORQUIT("Error reading initial structure file"); + wrap_inside_cell(&mystr.atom_pos,mystr.atom_pos,mystr.cell); + for (int s=0; s eci; + teci[phase].interpol(&eci,0.); + LinkedList eci_l; + eci_l << eci; + HTE_ThermoData hte(lattice_only,spacegroup,init_str[phase],clusterlist,eci_l); + e_scale[phase]=hte.F_of_x(0.,0.)-(hte.F_of_x(0.,-1.)+hte.F_of_x(0.,1.))/2.; + } + iVector3d simple_supercell; + find_common_simple_supercell(&simple_supercell,lattice_only.cell,init_str[phase].cell); + rMatrix3d mat_simple_supercell; + mat_simple_supercell.diag(to_real(simple_supercell)); + iVector3d fit_sphere; + fit_sphere=find_sphere_bounding_box(lattice_only.cell*mat_simple_supercell,2.*enclosed_radius); + for (int i=0; i<3; i++) {simple_supercell(i)*=fit_sphere(i);} + cout << "Phase " << phase+1 << " size: " << simple_supercell << endl; + if (strlen(kspace_labels)>0) { + if (lte_prec!=0) ERRORQUIT("LTE not implemented with k-space cluster expansion."); + if (!check_plug_in(KSpaceECI(),kspace_labels)) { + ERRORQUIT("Aborting"); + } + make_plug_in_list(&(multi_kspace_eci[phase]), kspace_labels); + multi_kspace_eci[phase].check_only_one(); + LinkedListIterator i(multi_kspace_eci[phase]); + for (; i; i++) { + i->static_init(lattice_only); + } + mc[phase]=new KSpaceMonteCarlo(lattice_only,simple_supercell,spacegroup,clusterlist,&(multi_kspace_eci[phase])); + } + else { + mc[phase]=new MonteCarlo(lattice_only,simple_supercell,spacegroup,clusterlist); + } + chdir_robust(cur_dir); + } + if (maxdmu==MAXFLOAT) {maxdmu=MAX(fabs(e_scale[0]),fabs(e_scale[1]))/100.;} + + ofstream mcfile(outfile); + mcfile.setf(ios::fixed); + mcfile.precision(sigdig); + cout.setf(ios::fixed); + cout.precision(sigdig); + + Real old_dT=MAXFLOAT; + Real old_dmu=MAXFLOAT; + + Real chkconc[2]; + { + for (int ph=0; ph<2; ph++) { + chkconc[ph]=0; + for (int at=0; atx(0,0) > lte[0]->x(0,0)); + int left0_right1=(chkconc[1] > chkconc[0]); + + if (mu0==MAXFLOAT) { + mu0=(lte[1]->phi(0,0)-lte[0]->phi(0,0))/(lte[1]->x(0,0)-lte[0]->x(0,0)); + T0=maxdT; + + ostrstream line; + line.setf(ios::fixed); + line.precision(sigdig); + if (printlro) { + line << 0 << delim << mu0 << delim + << lte[0]->x(0,mu0) << delim << lte[1]->x(0,mu0) << delim + << lte[0]->phi(0,mu0) << delim << lte[1]->phi(0,mu0) << delim + << 1 << delim << 1 << delim + << endl << '\0'; + } + else { + line << 0 << delim << mu0 << delim + << lte[0]->x(0,mu0) << delim << lte[1]->x(0,mu0) << delim + << lte[0]->phi(0,mu0) << delim << lte[1]->phi(0,mu0) << delim + << endl << '\0'; + } + mcfile << line.str() << flush; + if (!quiet) {cout << line.str() << flush;} + old_dT=maxdT; + old_dmu=0; + } + + Real T=T0; + Real mu=mu0; + LinkedList order_list[2]; + + int mc_started[2]={0,0}; + + while (1) { + Real E[2],x[2],lro[2]; + int discont[2]; + Array order_array[2]; + for (int phase=0; phase<2; phase++) { + LinkedList_to_Array(&order_array[phase],order_list[phase]); + } + int secondpass=0; + while (1) { + for (int phase=0; phase<2; phase++) { + if (lte_prec>0 && (fabs(lte[phase]->phi(T,mu)-mf[phase]->phi(T,mu)) < lte_prec && lte[phase]->phi(T,mu)!=MAXFLOAT)) { + E[phase]=E_from_phi(T,mu,lte[phase]); + x[phase]=lte[phase]->x(T,mu); + lro[phase]=1.; + discont[phase]=0; + } + else { + if (!mc_started[phase]) { + mc[phase]->init_structure(init_str[phase]); + mc_started[phase]=1; + } + Array eci; + teci[phase].interpol(&eci,T); + mc[phase]->set_eci(eci); + mc[phase]->init_run(T,mu+mu_gap*(phase==0 ? -1.:1. )); + MCOutputData mcdata; + run_mc(&mcdata,mc[phase],1,0,x_prec); + // fix_energy(&mcdata,teci[phase],T); + fix_energy(&(mcdata.E),mcdata.mult,mcdata.corr,teci[phase],T); + E[phase]=mcdata.E; + x[phase]=mcdata.x; + lro[phase]=mcdata.lro; + cout << "Phase " << phase+1 << " n_equil= " << mcdata.n_equil << " n_avg= " << mcdata.n_step << endl; + discont[phase]=(detect_discontinuity(order_array[phase],x[phase]) + > detect_discontinuity(order_array[1-phase],x[phase])); + } + } + if (!discont[0] && !discont[1]) {break;} + cout << discont[0] << delim << discont[1] << endl; + if (discont[0] && discont[1]) { + mc_started[0]=0; + mc_started[1]=0; + continue; + } + cout << "Looking for phase transition..." << endl; + cout << "mu x" << endl; + if (secondpass) maxdmu/=2.; + secondpass=1; + Real mu_bounds[2]; + Real new_mu=mu; + Real dmu=maxdmu*(discont[1] ^ left0_right1 ? -1 : 1); + int phase=discont[1]; + Real xx; + do { + new_mu+=dmu; + mc[phase]->init_run(T,new_mu); + MCOutputData mcdata; + run_mc(&mcdata,mc[phase],1,0,x_prec); + xx=mcdata.x; + cout << new_mu << delim << xx << endl; + } while (detect_discontinuity(order_array[phase],xx)>detect_discontinuity(order_array[1-phase],xx)); + mu_bounds[0]=new_mu; + dmu=-dmu; + do { + new_mu+=dmu; + mc[phase]->init_run(T,new_mu); + MCOutputData mcdata; + run_mc(&mcdata,mc[phase],1,0,x_prec); + xx=mcdata.x; + cout << new_mu << delim << xx << endl; + } while (detect_discontinuity(order_array[1-phase],xx)>detect_discontinuity(order_array[phase],xx)); + mu_bounds[1]=new_mu; + mu=(mu_bounds[0]+mu_bounds[1])/2.; + mc_started[phase]=0; + + old_dT=MAXFLOAT; + old_dmu=MAXFLOAT; + } + if (discont[0] && discont[1]) {break;} + for (int phase=0; phase<2; phase++) { + order_list[phase] << new Real(x[phase]); + } + + ostrstream line; + if (printlro) { + line << T/kboltzman << delim << mu << delim + << x[0] << delim << x[1] << delim + << E[0] << delim << E[1] << delim + << lro[0] << delim << lro[1] << delim + << endl << '\0'; + } + else{ + line << T/kboltzman << delim << mu << delim + << x[0] << delim << x[1] << delim + << E[0] << delim << E[1] << delim + << endl << '\0'; + } + mcfile << line.str() << flush; + if (!quiet) {cout << line.str() << flush;} + + Real dT,dmu; + if (fabs(x[1]-x[0]) + +void remove_vacancies(Structure *p_str, const Array &label, const char *specie) { + Structure str=*p_str; + int newsize=str.atom_type.get_size(); + for (int at=0; atatom_pos.resize(newsize); + p_str->atom_type.resize(newsize); + int at=0; + for (int i=0; iatom_pos(at)=str.atom_pos(i); + p_str->atom_type(at)=str.atom_type(i); + at++; + } + } +} + +void add_rVector3d_to_ArrayReal(Array *pa, int at, const rVector3d &v) { + for (int i=0; i<3; i++) { + (*pa)(at*3+i)+=v(i); + } +} + +void make_nn_forcek(LinkedList *p_pair, const Structure &str_ideal, const Structure &str_relax, const LinkedList &spring_data) { + rMatrix3d inv_cell=!str_ideal.cell; + LinkedList > old_pair; + for (int at=0; at > old_p(old_pair); + for (; old_p; old_p++) { + if (equivalent_mod_cell(pair,*old_p,inv_cell)) break; + } + if (!old_p) { + old_pair << new Array(pair); + PairSpring ps; + ps.whichatom[0]=which_atom(str_ideal.atom_pos, pair(0), inv_cell); + ps.whichatom[1]=which_atom(str_ideal.atom_pos, pair(1), inv_cell); + rVector3d ideal_offset=(pair(1)-pair(0))-(str_ideal.atom_pos(ps.whichatom[1])-str_ideal.atom_pos(ps.whichatom[0])); + ps.cell_shift=inv_cell*ideal_offset; + ps.dr=str_relax.atom_pos(ps.whichatom[1])+str_relax.cell*ps.cell_shift-str_relax.atom_pos(ps.whichatom[0]); + LinkedListIterator si(spring_data); + for (; si; si++) { + if ( str_ideal.atom_type(ps.whichatom[0])==si->atom_type[0] + && str_ideal.atom_type(ps.whichatom[1])==si->atom_type[1]) break; + if ( str_ideal.atom_type(ps.whichatom[0])==si->atom_type[1] + && str_ideal.atom_type(ps.whichatom[1])==si->atom_type[0]) break; + } + if (!si) { + cerr << "Did not find spring in make_nn_forcek. Ignoring" << endl; + } + else { + Real l=norm(ps.dr); + Real s=0.; + for (int i=0; iforcek(0).get_size(); i++) { + s+=si->forcek(0)(i)*ipow(l,i); + } + Real b=0.; + for (int i=0; iforcek(1).get_size(); i++) { + b+=si->forcek(1)(i)*ipow(l,i); + } + rMatrix3d diag; + diag.zero(); + diag(0,0)=s; + diag(1,1)=b; + diag(2,2)=b; + rVector3d u=ps.dr; + u.normalize(); + rVector3d pu=find_perpendicular(u); + rMatrix3d rot; + rot.set_column(0,u); + rot.set_column(1,pu); + rot.set_column(2,u^pu); + ps.forcek=rot*diag*(~rot); + (*p_pair) << new PairSpring(ps); + } + } + pair++; + } + } +} + +void make_nn_forcek(LinkedList *p_pair, const Structure &str_ideal, const Structure &str_relax, const LinkedList &spring_data, const LinkedList &dirdep_mat, const Array &conc, const MultiDimPoly &multipoly) { + rMatrix3d inv_cell=!str_ideal.cell; + LinkedList > old_pair; + for (int at=0; at > old_p(old_pair); + for (; old_p; old_p++) { + if (equivalent_mod_cell(pair,*old_p,inv_cell)) break; + } + if (!old_p) { + old_pair << new Array(pair); + PairSpring ps; + ps.whichatom[0]=which_atom(str_ideal.atom_pos, pair(0), inv_cell); + ps.whichatom[1]=which_atom(str_ideal.atom_pos, pair(1), inv_cell); + rVector3d ideal_offset=(pair(1)-pair(0))-(str_ideal.atom_pos(ps.whichatom[1])-str_ideal.atom_pos(ps.whichatom[0])); + ps.cell_shift=inv_cell*ideal_offset; + ps.dr=str_relax.atom_pos(ps.whichatom[1])+str_relax.cell*ps.cell_shift-str_relax.atom_pos(ps.whichatom[0]); + LinkedListIterator si(spring_data); + for (; si; si++) { + if ( str_ideal.atom_type(ps.whichatom[0])==si->atom_type[0] + && str_ideal.atom_type(ps.whichatom[1])==si->atom_type[1]) break; + if ( str_ideal.atom_type(ps.whichatom[0])==si->atom_type[1] + && str_ideal.atom_type(ps.whichatom[1])==si->atom_type[0]) break; + } + if (!si) { + cerr << "Did not find spring in make_nn_forcek. Ignoring" << endl; + } + else { + Real l=norm(ps.dr); + rVector3d ideal_dir=pair(1)-pair(0); + ideal_dir.normalize(); + Array argpoly(multipoly.get_dim_arg()); + argpoly(0)=l; + int ii=1; + LinkedListIterator imat(dirdep_mat); + for (; imat ; imat++,ii++) { + argpoly(ii)=ideal_dir*((*imat)*ideal_dir); + } + for (int j=0; jforcek(0),argpoly); + Real b=multipoly.eval(si->forcek(1),argpoly); + rMatrix3d diag; + diag.zero(); + diag(0,0)=s; + diag(1,1)=b; + diag(2,2)=b; + rVector3d u=ps.dr; + u.normalize(); + rVector3d pu=find_perpendicular(u); + rMatrix3d rot; + rot.set_column(0,u); + rot.set_column(1,pu); + rot.set_column(2,u^pu); + ps.forcek=rot*diag*(~rot); + (*p_pair) << new PairSpring(ps); + } + } + pair++; + } + } +} + +void make_nn_forcek(LinkedList *p_pair, const Structure &str_ideal, const Structure &str_relax, const LinkedList &spring_data, const LinkedList &dirdep_mat, const Array &conc, const MultiDimPoly &multipoly, LinkedList > *pold_pair) { + rMatrix3d inv_cell=!str_ideal.cell; + LinkedList > old_pair; + if (!pold_pair) { + pold_pair=&old_pair; + } + if (pold_pair->get_size()==0) { + for (int at=0; at > old_p(*pold_pair); + for (; old_p; old_p++) { + if (equivalent_mod_cell(pair,*old_p,inv_cell)) break; + } + if (!old_p) { + (*pold_pair) << new Array(pair); + } + pair++; + } + } + } + //cerr << pold_pair->get_size() << endl; + LinkedListIterator > ipair(*pold_pair); + while (ipair) { + PairSpring ps; + ps.whichatom[0]=which_atom(str_ideal.atom_pos, (*ipair)(0), inv_cell); + ps.whichatom[1]=which_atom(str_ideal.atom_pos, (*ipair)(1), inv_cell); + rVector3d ideal_offset=((*ipair)(1)-(*ipair)(0))-(str_ideal.atom_pos(ps.whichatom[1])-str_ideal.atom_pos(ps.whichatom[0])); + ps.cell_shift=inv_cell*ideal_offset; + ps.dr=str_relax.atom_pos(ps.whichatom[1])+str_relax.cell*ps.cell_shift-str_relax.atom_pos(ps.whichatom[0]); + LinkedListIterator si(spring_data); + for (; si; si++) { + if ( str_ideal.atom_type(ps.whichatom[0])==si->atom_type[0] + && str_ideal.atom_type(ps.whichatom[1])==si->atom_type[1]) break; + if ( str_ideal.atom_type(ps.whichatom[0])==si->atom_type[1] + && str_ideal.atom_type(ps.whichatom[1])==si->atom_type[0]) break; + } + if (!si) { + cerr << "Did not find spring in make_nn_forcek. Ignoring" << endl; + } + else { + Real l=norm(ps.dr); + rVector3d ideal_dir=(*ipair)(1)-(*ipair)(0); + ideal_dir.normalize(); + Array argpoly(multipoly.get_dim_arg()); + argpoly(0)=l; + int ii=1; + LinkedListIterator imat(dirdep_mat); + for (; imat ; imat++,ii++) { + argpoly(ii)=ideal_dir*((*imat)*ideal_dir); + } + for (int j=0; jforcek(0),argpoly); + Real b=multipoly.eval(si->forcek(1),argpoly); + rMatrix3d diag; + diag.zero(); + diag(0,0)=s; + diag(1,1)=b; + diag(2,2)=b; + rVector3d u=ps.dr; + u.normalize(); + rVector3d pu=find_perpendicular(u); + rMatrix3d rot; + rot.set_column(0,u); + rot.set_column(1,pu); + rot.set_column(2,u^pu); + ps.forcek=rot*diag*(~rot); + (*p_pair) << new PairSpring(ps); + } + ipair++; + } +} + +// extendable version; +void make_nn_forcek(LinkedList *p_pair, const Structure &str_ideal, const Structure &str_relax, const LinkedList &spring_data, const LinkedList &dirdep_mat, const Array &conc) { +#ifdef DEBUG + ofstream debugfile("fc_debug.out"); + debugfile << "at1 at2 length #concentration concentration(s) stretching bending" << endl; +#endif + rMatrix3d inv_cell=!str_ideal.cell; + LinkedList > old_pair; + for (int at=0; at > old_p(old_pair); + for (; old_p; old_p++) { + if (equivalent_mod_cell(pair,*old_p,inv_cell)) break; + } + if (!old_p) { + old_pair << new Array(pair); + PairSpring ps; + ps.whichatom[0]=which_atom(str_ideal.atom_pos, pair(0), inv_cell); + ps.whichatom[1]=which_atom(str_ideal.atom_pos, pair(1), inv_cell); + rVector3d ideal_offset=(pair(1)-pair(0))-(str_ideal.atom_pos(ps.whichatom[1])-str_ideal.atom_pos(ps.whichatom[0])); + ps.cell_shift=inv_cell*ideal_offset; + ps.dr=str_relax.atom_pos(ps.whichatom[1])+str_relax.cell*ps.cell_shift-str_relax.atom_pos(ps.whichatom[0]); + LinkedListIterator si(spring_data); + for (; si; si++) { + if ( str_ideal.atom_type(ps.whichatom[0])==si->atom_type[0] + && str_ideal.atom_type(ps.whichatom[1])==si->atom_type[1]) break; + if ( str_ideal.atom_type(ps.whichatom[0])==si->atom_type[1] + && str_ideal.atom_type(ps.whichatom[1])==si->atom_type[0]) break; + } + if (!si) { + cerr << "Did not find spring in make_nn_forcek. Ignoring" << endl; + } + else { + Real l=norm(ps.dr); + rVector3d ideal_dir=pair(1)-pair(0); + ideal_dir.normalize(); + Array argfunc(1+dirdep_mat.get_size()+conc.get_size()); + argfunc(0)=l; + int ii=1; + // first concentration then direction (opposite of standard SpringSvsL) + for (int j=0; j imat(dirdep_mat); + for (; imat ; imat++,ii++) { + argfunc(ii)=ideal_dir*((*imat)*ideal_dir); + } + Array sb(2); + si->pfunc->eval(&sb,argfunc); + rMatrix3d diag; + diag.zero(); + diag(0,0)=sb(0); + diag(1,1)=sb(1); + diag(2,2)=sb(1); +#ifdef DEBUG + debugfile << si->atom_type[0] << " " << si->atom_type[1] << " " << l << " " << conc.get_size() << " "; + for (int j=0; j &pair) { + int n_basis=0; + LinkedListIterator p(pair); + for (; p; p++) { + n_basis=MAX(n_basis,MAX(p->whichatom[0],p->whichatom[1])); + } + return (n_basis+1); +} + +void calc_dynmat(Array2d *p_dynmat, const rVector3d &k, const LinkedList &pair, Array mass) { + const int dim=3; + int n_basis=get_basis_size(pair); + if (mass.get_size()==0) { + mass.resize(n_basis); + one_array(&mass); + } + p_dynmat->resize(iVector2d(dim*n_basis,dim*n_basis)); + zero_array(p_dynmat); + LinkedListIterator p(pair); + for (; p; p++) { + Real phase=2.*M_PI*k*(p->dr); + rMatrix3d rblock=(p->forcek)*cos(phase); + rMatrix3d iblock=(p->forcek)*sin(phase); + int at0=p->whichatom[0]; + int at1=p->whichatom[1]; + for (int i=0; iforcek(i,j),0)/sqrt(mass(at0)*mass(at0)); + (*p_dynmat)(at1*dim+i,at1*dim+j)+=Complex(p->forcek(i,j),0)/sqrt(mass(at1)*mass(at1)); + } + } + } +} + +int list_phonon_freq(LinkedList *p_freq, LinkedList *p_weight, const iVector3d &kmesh, const rVector3d &kshift, const LinkedList &pair, const rMatrix3d &cell, const Array &mass, Real convfact) { + rMatrix3d kcell=!((~cell)); + for (int i=0; i<3; i++) { + kcell.set_column(i,kcell.get_column(i)/(Real)kmesh(i)); + } + Real w=1./get_basis_size(pair)/(kmesh(0)*kmesh(1)*kmesh(2)); + Real minv=MAXFLOAT; + Real maxv=0.; + MultiDimIterator ik(kmesh); + for (; ik; ik++) { + Array2d dynmat; + calc_dynmat(&dynmat, kcell*(kshift+to_real(ik)),pair,mass); +//cerr.precision(6); +//cerr.setf(ios::fixed); +//cerr << dynmat << endl; + Array lambda; + diagonalize_symmetric_matrix(&lambda,NULL,dynmat); +//cerr << lambda << endl; + for (int i=0; i *p_freq, Array2d *p_eigvect, const rVector3d &k, const LinkedList &pair, const Array &mass, Real convfact) { + Array2d dynmat; + calc_dynmat(&dynmat, k,pair,mass); + Array lambda; + Array2d vect; + if (p_eigvect) { + diagonalize_symmetric_matrix(&lambda,&vect,dynmat); + } + else { + diagonalize_symmetric_matrix(&lambda,NULL,dynmat); + } + int n=lambda.get_size(); + Array lookup(n); + for (int i=0; iresize(lambda.get_size()); + for (int i=0; iresize(iVector2d(n,n)); + for (int i=0; i > *p_freq, LinkedList > *p_eigvect, const rVector3d &k1, const rVector3d &k2, int nstep, const LinkedList &pair, const Array &mass, Real convfact) { + rVector3d dk=(k2-k1)/(Real)MAX(1,nstep-1); + rVector3d k=k1; + for (int i=0; i dynmat; + calc_dynmat(&dynmat, k,pair,mass); + Array lambda; + Array nu; + Array2d vect; + if (p_eigvect) { + diagonalize_symmetric_matrix(&lambda,&vect,dynmat); + } + else { + diagonalize_symmetric_matrix(&lambda,NULL,dynmat); + } + int n=lambda.get_size(); + Array lookup(n); + for (int i=0; i(nu); + if (p_eigvect) { + Array2d *pa=new Array2d(iVector2d(n,n)); + for (int i=0; imaxx) return 1.; + Real a=2*fabs(x)/sqrt(M_PI); + Real adu=a*du; + Real b=-sgn(x)*sqr(x); + Real y=0.; + for (Real u=0; u<=1+du/2.0; u+=du) { + y+=exp(b*sqr(u))*adu; + } + return (y); +} + +Real ln_real_erf(Real x) { + Real du=0.01; + Real maxx=3.5; + if (x>maxx) return 0.; + Real a=2*fabs(x)/sqrt(M_PI); + Real adu=a*du; + Real b=-sgn(x)*sqr(x); + Real y=0.; + for (Real u=0; u<=1+du/2.0; u+=du) { + y+=exp(b*(sqr(u)-1.))*adu; + } + return (b+log(y)); +} + +Real calc_vib_free_energy_robust(LinkedList freq, LinkedList weight, Real kBT, Real hplanck, Real length) { + LinkedListIterator v(freq); + LinkedListIterator w(weight); + Real c=(2.*M_PI*length)/sqrt(2.*kBT); + Real f=0.; + for (; v; v++, w++) { + Real a=(2.*kBT)/(hplanck*fabs(*v)); + if (a(1./zero_tolerance)) { + f+=(*w)*kBT*log(2./a); + } + else { + f+=(*w)*kBT*log(2.*sinh(1./a)); + } + // cerr << (*w)*kBT*log(2.*sinh(1./a)) << " " << -(*w)*kBT*log(real_erf(c*(*v))) << " " << real_erf(c*(*v)) << endl; + if (kBT>zero_tolerance) { + f+=-(*w)*kBT*ln_real_erf(c*(*v)); + } + else { + if (*v<0) {f+=-(*w)*2.*sqr(M_PI*length*(*v));} + } + } + return f; +} + +Real calc_vib_free_energy(LinkedList freq, LinkedList weight, Real kBT, Real hplanck) { + LinkedListIterator v(freq); + LinkedListIterator w(weight); + Real f=0.; + Real tw=0.,ttw=0.; + for (; v; v++, w++) { + ttw+=(*w); + if ((*v)>0) { + tw+=(*w); + Real a=(2.*kBT)/(hplanck*(*v)); + if (a(1./zero_tolerance)) { + f+=(*w)*kBT*log(2./a); + } + else { + f+=(*w)*kBT*log(2.*sinh(1./a)); + } + } + } + return f*ttw/tw; +} + +Real calc_vib_entropy(LinkedList freq, LinkedList weight, Real kBT, Real hplanck) { + LinkedListIterator v(freq); + LinkedListIterator w(weight); + Real s=0.; + Real tw=0.,ttw=0.; + if (kBTzero_tolerance) { + s+=-(*w)*log((*v)); + tw+=*w; + } + } + } + else { + for (; v; v++, w++) { + if ((*v)>zero_tolerance) { + Real r=hplanck*(*v)/(2.*kBT); + s+=-(*w)*(log(2.*sinh(r))-r/tanh(r)); + } + } + } + return s*ttw/tw; +} + +void calc_k_mesh(iVector3d *p_mesh, const rMatrix3d &cell, Real nbkpts) { + if (nbkpts<=1.) { + *p_mesh=iVector3d(1,1,1); + return; + } + rMatrix3d reciprocal=~(!cell); + rVector3d proj; + for (int i=0; i<3; i++) { + rVector3d a=reciprocal.get_column( i ); + rVector3d b=reciprocal.get_column((i+1)%3); + rVector3d c=reciprocal.get_column((i+2)%3); + proj(i)=fabs(a*((b^c)/norm(b^c))); + } + Real normalizer=pow(nbkpts/(proj(0)*proj(1)*proj(2)),1./3.); + rVector3d mesh=proj*normalizer; + iVector3d imesh=to_int(mesh); + rVector3d fmesh=mesh-to_real(imesh); + while (imesh(0)*imesh(1)*imesh(2)bestf) { + bestf=fmesh(i); + } + } + for (int i=0; i<3; i++) { + if (fabs(fmesh(i)-bestf) &pair, Real volume) { + LinkedListIterator ip(pair); + Real b=0.; + for (; ip; ip++) { +//cerr << ip->dr << endl; +//cerr << ip->forcek << endl; +//cerr << (ip->dr)*((ip->forcek)*(ip->dr)) << endl; + b+=(ip->dr)*((ip->forcek)*(ip->dr)); + } + return (b/volume/9); +} + +void find_special_direction(Array *pspecial_dir, Array *pminus_equiv, + const Array &point_op) { + PointGroupType point_group_type=find_point_group_type(point_op); + Array &special_dir=*pspecial_dir; + rVector3d dir,pert_dir,pert_pert_dir; + switch (point_group_type) { + case pt_grp_1: + case pt_grp_1_: + special_dir.resize(3); + special_dir(0)=rVector3d(1.,0.,0.); + special_dir(1)=rVector3d(0.,1.,0.); + special_dir(2)=rVector3d(0.,0.,1.); + break; + case pt_grp_3: + case pt_grp_4: + case pt_grp_6: + case pt_grp_3_: + case pt_grp_4_: + case pt_grp_6_: + case pt_grp_4om: + case pt_grp_6om: + special_dir.resize(1); + for (int op=0; op=3 && abs(type)<=6) break; + } + pert_dir=find_perpendicular(dir); + special_dir(0)=dir+pert_dir; + break; + case pt_grp_32: + case pt_grp_422: + case pt_grp_622: + case pt_grp_4ommm: + case pt_grp_6ommm: + case pt_grp_6_m2: + case pt_grp_3_m: + case pt_grp_4_2m: + special_dir.resize(1); + for (int op=0; op=3 && abs(type)<=6) break; + } + for (int op=0; op zero_tolerance) break; + } + } + special_dir(0)=dir+pert_dir; + break; + case pt_grp_3m: + case pt_grp_4mm: + case pt_grp_6mm: + special_dir.resize(1); + for (int op=0; op=3 && type<=6) break; + } + for (int op=0; opresize(special_dir.get_size()); + for (int d=0; d *pwhich_atom, Array *pdirection, Array *pdo_minus, + const Structure &str, + const SpaceGroup &spacegroup) { + LinkedList which_atom_list; + LinkedList dir_list; + LinkedList minus_list; + LinkedList > pointlist; + for (int at=0; at p(1); + p(0)=str.atom_pos(at); + if (add_unique(&pointlist,p,spacegroup)) { + Array atom_point_group; + find_atom_point_group(&atom_point_group,str.atom_pos(at),str.cell,spacegroup.point_op,spacegroup.trans); + Array special_dir; + Array minus_equiv; + find_special_direction(&special_dir, &minus_equiv, atom_point_group); + for (int i=0; icell=str.cell*(1.+strain); + pstr->atom_pos.resize(str.atom_pos.get_size()); + for (int at=0; atatom_pos(at)=str.atom_pos(at)*(1.+strain); + } + pstr->atom_type=str.atom_type; +} + +void calc_pert_str(Structure *ppert_str, const rMatrix3d &supercell, const Structure &str, const rVector3d &pos, const rVector3d &displ, Real strain) { + Real scale=1.+strain; + find_all_atom_in_supercell(&(ppert_str->atom_pos), &(ppert_str->atom_type), str.atom_pos, str.atom_type, str.cell, supercell); + if (norm(displ)!=0.) { + int displ_atom=which_atom(ppert_str->atom_pos,pos,!supercell); + ppert_str->atom_pos(displ_atom)+=displ/scale; + } + ppert_str->cell=supercell*scale; + for (int at=0; atatom_pos.get_size(); at++) { + ppert_str->atom_pos(at)=ppert_str->atom_pos(at)*scale; + } + +} + +void read_force_vector(Array *pforce, istream &file, const Array ©from) { + Array force(3*copyfrom.get_size()); + for (int at=0; at<3*copyfrom.get_size(); at++) { + file >> force(at); + } + pforce->resize(force.get_size()); + for (int at=0; at *pf, const Array &x) { + *xmin=MIN(min(x),0.); + *xmax=max(x); + Real h=0.1*((*xmax)-(*xmin))*pow(x.get_size(),-1./5.); + *xmax+=3.*h; + int n=10*(int)(((*xmax)-(*xmin))/h); + pf->resize(n); + zero_array(pf); + for (int i=0; i *pf, const Array &x, const Array &w) { + *xmin=MIN(min(x),0.); + *xmax=max(x); + Real h=0.1*((*xmax)-(*xmin))*pow(x.get_size(),-1./5.); + *xmax+=3.*h; + int n=10*(int)(((*xmax)-(*xmin))/h); + pf->resize(n); + zero_array(pf); + for (int i=0; i *pfc_list, const Array &pointgroup, int forcesym) { + Array > basis; + int nb=0; + for (int ifc=0; ifc<3; ifc++) { + for (int jfc=0; jfc<3; jfc++) { + rMatrix3d fc,acc; + fc.zero(); + fc(ifc,jfc)=1.; + acc.zero(); + for (int op=0; op< pointgroup.get_size(); op++) { + rMatrix3d tfc=pointgroup(op)*fc*(~pointgroup(op)); + acc=acc+tfc; + } + if (forcesym) { + acc=(acc+~acc)/2.0; + } + Real l=max_norm(acc); + if (l>zero_tolerance) { + acc=acc/l; + Array new_comp(9); + int k=0; + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + new_comp(k)=acc(i,j); + k++; + } + } + if (build_basis(&basis,&nb,new_comp)) { + (*pfc_list) << new rMatrix3d(acc); + } + } + } + } +} + diff --git a/src/phonlib.hh b/src/phonlib.hh new file mode 100644 index 0000000..38ed0fd --- /dev/null +++ b/src/phonlib.hh @@ -0,0 +1,81 @@ +#include "xtalutil.h" +#include "clus_str.h" +#include "linalg.h" +#include "lstsqr.h" +#include "multipoly.h" + +class PairSpring { + public: + int whichatom[2]; + rVector3d dr; + rVector3d cell_shift; + rMatrix3d forcek; + PairSpring(void): dr(0.,0.,0.), forcek() {whichatom[0]=0; whichatom[1]=0; forcek.zero();} + PairSpring(const PairSpring &ps): dr(ps.dr), cell_shift(ps.cell_shift), forcek(ps.forcek) {whichatom[0]=ps.whichatom[0]; whichatom[1]=ps.whichatom[1];} +}; + +class SpringSvsL { + public: + int atom_type[2]; + Array > forcek; +}; + +class ExtendableSpringSvsL { + public: + ExtendableSpringSvsL(void) {pfunc=NULL;} + ~ExtendableSpringSvsL() {delete pfunc;} + int atom_type[2]; + ArrayFunctionArray *pfunc; +}; + +void remove_vacancies(Structure *p_str, const Array &label, const char *specie="Vac"); + +void add_rVector3d_to_ArrayReal(Array *pa, int at, const rVector3d &v); + +void make_nn_forcek(LinkedList *p_pair, const Structure &str_ideal, const Structure &str_relax, const LinkedList &spring_data); + +void make_nn_forcek(LinkedList *p_pair, const Structure &str_ideal, const Structure &str_relax, const LinkedList &spring_data, const LinkedList &dirdep_mat, const Array &conc, const MultiDimPoly &multipoly); +void make_nn_forcek(LinkedList *p_pair, const Structure &str_ideal, const Structure &str_relax, const LinkedList &spring_data, const LinkedList &dirdep_mat, const Array &conc, const MultiDimPoly &multipoly, LinkedList > *pold_pair); + +void make_nn_forcek(LinkedList *p_pair, const Structure &str_ideal, const Structure &str_relax, const LinkedList &spring_data, const LinkedList &dirdep_mat, const Array &conc); + +int get_basis_size(const LinkedList &pair); + +void calc_dynmat(Array2d *p_dynmat, const rVector3d &k, const LinkedList &pair, Array mass); + +int list_phonon_freq(LinkedList *p_freq, LinkedList *p_weight, const iVector3d &kmesh, const rVector3d &kshift, const LinkedList &pair, const rMatrix3d &cell, const Array &mass, Real convfact); + + +void calc_normal_modes(Array *p_freq, Array2d *p_eigvect, const rVector3d &k, const LinkedList &pair, const Array &mass, Real convfact); + +void calc_dispersion_curve(LinkedList > *p_freq, LinkedList > *p_eigvect, const rVector3d &k1, const rVector3d &k2, int nstep, const LinkedList &pair, const Array &mass, Real convfact); + +Real real_erf(Real x); +Real ln_real_erf(Real x); + +Real calc_vib_free_energy_robust(LinkedList freq, LinkedList weight, Real kBT, Real hplanck, Real length); +Real calc_vib_free_energy(LinkedList freq, LinkedList weight, Real kBT, Real hplanck); + +Real calc_vib_entropy(LinkedList freq, LinkedList weight, Real kBT=MAXFLOAT, Real hplanck=1.); + +void calc_k_mesh(iVector3d *p_mesh, const rMatrix3d &cell, Real nbkpts); + +Real calc_bulk_modulus(const LinkedList &pair, Real volume); + +void find_special_direction(Array *pspecial_dir, Array *pminus_equiv, + const Array &point_op); + +void find_pertubations(Array *pwhich_atom, Array *pdirection, Array *pdo_minus, + const Structure &str, + const SpaceGroup &spacegroup); + +void stretch_str(Structure *pstr, const Structure &str, Real strain); +void calc_pert_str(Structure *ppert_str, const rMatrix3d &supercell, const Structure &str, const rVector3d &pos, const rVector3d &displ, Real strain); + +void read_force_vector(Array *pforce, istream &file, const Array ©from); + +Real smooth_kernel(Real x); +void smooth_density(Real *xmin, Real *xmax, Array *pf, const Array &x); +void smooth_density(Real *xmin, Real *xmax, Array *pf, const Array &x, const Array &w); + +void find_sym_const_tensor(LinkedList *pfc_list, const Array &pointgroup, int forcesym); diff --git a/src/plotcurv.c++ b/src/plotcurv.c++ new file mode 100644 index 0000000..510e793 --- /dev/null +++ b/src/plotcurv.c++ @@ -0,0 +1,125 @@ +#include +#include "linalg.h" + +Real func_pol(Real r, Real theta) { + Real A=0.5; + Real sigma=0.5; + return (cos(r)-A*exp(-(sqr(r-M_PI)+sqr(theta))/(2.*sqr(sigma)))); +} + +Array2d z; + +Real func(const Array &x) { + iVector2d ix((int)round(x(0)),(int)round(x(1))); + return z(ix); + /* + Real r=norm(x); + Real theta=atan2(x(1),x(0)); + return func_pol(r,theta); + */ + // return ipow(cos(x(0)),3)*cos(x(1)); + //return sqr(x(0))+sqr(x(1))-sqr(x(0))*sqr(x(1)); + //return ((x(1)-sqr(x(0)))-pow(x(1)-sqr(x(0)),3.)/2.); +} + +//2D only +Real curv(const Array &x, int perp) { + Real dx=1; + Array grad(x.get_size()),pos; + Array2d hess(x.get_size(),x.get_size()); + for (int i=0; i &x) { + Real dx=2; + //Real dx=1e-1; + Array grad(x.get_size()),pos; + for (int i=0; i &x) { + Real dx=1; + Array grad(x.get_size()),pos; + for (int i=0; i> tmpc; + cin >> sz; + cin >> xmin; + cin >> xmax; + // cout << tmpc << " " << sz << " " << xmin << " " << xmax << endl; + z.resize(sz); + MultiDimIterator i(sz); + for (; i; i++) { + Real tmp; + cin >> tmp >> tmp >> z(i); + // cout << tmp << " " << tmp << " " << z(i) << endl; + } + + Array x(2); + for (x(0)=1; x(0) +class GenericPlugIn { + protected: + const char *label; + GenericPlugIn *next; + static GenericPlugIn *list; + public: + static B *create(const char *_label) { + GenericPlugIn *i=list; + while (i && strcmp(i->label,_label)!=0) i=i->next; + if (!i) return NULL; + return i->make_new(); + } + virtual B *make_new(void) {return NULL;} +}; + +template +class SpecificPlugIn: public GenericPlugIn { + public: + SpecificPlugIn(const char *_label): GenericPlugIn() { + GenericPlugIn::label=_label; + GenericPlugIn::next=GenericPlugIn::list; + GenericPlugIn::list=this; + } + virtual B *make_new(void) { + return new T; + } +}; + +template +void make_plug_in_list(LinkedList *list, const char *labels, char delim) { + int len=strlen(labels); + char *lab=new char[len+1]; + strcpy(lab,labels); + int i=0; + int j=0; + while (1) { + j=i; + if (j>=len) break; + while (i::create(lab+j); + if (p) { + (*list) << p; + } + i++; + } + delete[] lab; + return; +} + +template +void make_plug_in_list(LinkedList *list, const char *labels) { + make_plug_in_list(list,labels,'_'); +} + +template +int check_plug_in(const B &dummy, const char *labels, char delim) { + int len=strlen(labels); + char *lab=new char[len+1]; + strcpy(lab,labels); + int isok=1; + int i=0; + int j=0; + while (1) { + j=i; + if (j>=len) break; + while (i::create(lab+j); + if (p) { + delete p; + } + else { + cerr << "Unable to find plug-in '" << ((const char *)lab)+j << "'." << endl; + isok=0; + } + i++; + } + delete[] lab; + return isok; +} + +template +int check_plug_in(const B &dummy, const char *labels) { + return check_plug_in(dummy,labels,'_'); +} + +#endif diff --git a/src/pmmclib.c++ b/src/pmmclib.c++ new file mode 100644 index 0000000..f7c98f0 --- /dev/null +++ b/src/pmmclib.c++ @@ -0,0 +1,1142 @@ +#include "mmclib.h" +#include "getvalue.h" +#include "parse.h" +#include "lstsqr.h" + +typedef int *pint; +typedef int **ppint; +typedef Real *pReal; +typedef Real **ppReal; +typedef Real ***pppReal; +typedef Complex *pComplex; + +MultiMonteCarlo::MultiMonteCarlo(const Structure &_lattice, const Array > &_site_type_list, const iVector3d &_supercell, + const SpaceGroup &space_group, const LinkedList &cluster_list, + const Array > > &_corrfunc) : + lattice(_lattice), site_type_list(_site_type_list), supercell(_supercell), corrfunc(_corrfunc), cur_rho(), cur_conc(), mu(), allowed_flip_site(),allowed_flip_before(),allowed_flip_after(), flip_span(-1,-1,-1) { + Real max_clus_len=0.; + { + LinkedListIterator c(cluster_list); + for ( ; c; c++) { + Real l=get_cluster_length(c->clus); + if (l>max_clus_len) max_clus_len=l; + } + } + margin=find_sphere_bounding_box(lattice.cell,max_clus_len); + iVector3d supercell_orig=supercell; + for (int mult=1; 1 ; mult++) { + supercell=mult*supercell_orig; + int i; + for (i=0; i<3; i++) { + if (supercell(i) < margin(i)) break; + } + if (i==3) break; + } + total_box=supercell+2*margin; + int spin_total_size=total_box(0)*total_box(1)*total_box(2)*lattice.atom_pos.get_size(); + spin=new SPIN_TYPE[spin_total_size]; + for (int i=0; i frozen_site(site_in_cell); + zero_array(&frozen_site); + active_site_in_cell=site_in_cell; + if (file_exists("frozensite.in")) { + ifstream file("frozensite.in"); + while (skip_delim(file)) { + int s=-1; + file >> s; + if (!frozen_site(s)) {active_site_in_cell--;} + frozen_site(s)=1; + } + } + which_site=new int[active_site_in_cell]; + int s=0; + for (int i=0; i c(cluster_list); + for (int i=0; c; c++,i++) { + rcluster_mult_per_atom[i]=calc_multiplicity(*c,lattice.cell,space_group.point_op,space_group.trans)/(Real)lattice.atom_pos.get_size(); + } + } + + E_ref=0.; + which_is_empty=-1; + nb_point=0; + { + LinkedListIterator c(cluster_list); + int cluster_index=0; + for (; c; c++, cluster_index++) { + if (c->clus.get_size()==0) {which_is_empty=cluster_index;} + if (c->clus.get_size()==1) {nb_point++;} + } + which_is_point=new int[nb_point]; + point_mult=new Real[nb_point]; + c.init(cluster_list); + cluster_index=0; + int point_index=0; + for (; c; c++, cluster_index++) { + if (c->clus.get_size()==1) { + which_is_point[point_index]=cluster_index; + point_mult[point_index]=rcluster_mult_per_atom[cluster_index]; + point_index++; + } + } + } + cur_conc.resize(nb_point); + mu.resize(nb_point); + zero_array(&mu); + pmu=mu.get_buf(); + + rMatrix3d inv_cell=!lattice.cell; + for (int s=0; s long_cluster_list; + LinkedList long_cluster_i_list; + LinkedListIterator c(cluster_list); + int cluster_index=0; + + for ( ; c; c++,cluster_index++) { + if (c->clus.get_size()!=0) { + Array clusters; + find_equivalent_clusters(&clusters, *c,space_group.cell,space_group.point_op,space_group.trans); + for (int ec=0; ecclus(0)=clusters(ec).clus(center_atom)+lat_shift; + to_add->site_type(0)=clusters(ec).site_type(center_atom); + to_add->func(0)=clusters(ec).func(center_atom); + int j=1; + for (int i=0; iclus(j)=clusters(ec).clus(i)+lat_shift; + to_add->site_type(j)=clusters(ec).site_type(i); + to_add->func(j)=clusters(ec).func(i); + j++; + } + } + long_cluster_list << to_add; + long_cluster_i_list << new int(cluster_index); + } + } + } + } + } + nb_clusters[s]=long_cluster_list.get_size(); + cluster_size[s]=new int[nb_clusters[s]]; + eci[s]=new Real[nb_clusters[s]]; + which_cluster[s]=new int[nb_clusters[s]]; + site_offset[s]=new pint[nb_clusters[s]]; + spin_val_clus[s]=new ppReal[nb_clusters[s]]; + c.init(long_cluster_list); + LinkedListIterator c_i(long_cluster_i_list); + for (int ic=0; icclus.get_size(); + eci[s][ic]=0.; + which_cluster[s][ic]=*c_i; + site_offset[s][ic]=new int[c->clus.get_size()]; + spin_val_clus[s][ic]=new pReal[c->clus.get_size()]; + for (int j=0; jclus.get_size(); j++) { + int offset_in_cell=which_atom(lattice.atom_pos,c->clus(j),inv_cell); + iVector3d offset_cell=to_int(inv_cell*(c->clus(j)-lattice.atom_pos(offset_in_cell))); + site_offset[s][ic][j]=((offset_cell(0)*total_box(1) + offset_cell(1))*total_box(2) + offset_cell(2))*site_in_cell + offset_in_cell - s; + spin_val_clus[s][ic][j]=new Real[nb_spin_val[offset_in_cell]]; + for (int l=0; lsite_type(j))(c->func(j))(l); + } + } + } + } + } + +MultiMonteCarlo::~MultiMonteCarlo(void) { + for (int s=0; s *pcorr, int site, int type) { + Array allcorr(total_clusters); + zero_array(&allcorr); + for (int c=0; c *pcorr, const Array &sites,const Array &types) { + pcorr->resize(nb_point); + zero_array(pcorr); + for (int i=0; i &corr_constraints, const iVector3d &_flip_span) { + flip_span=_flip_span; + LinkedList > site_list; + LinkedList > before_flip_list; + LinkedList > > after_flip_list; + Array site_done(site_in_cell); + zero_array(&site_done); + int nb_site_done=0; + int nb_in_basis=0; + Array > corr_basis; + int nbflip=1; + while (1) { + Array maxsite(nbflip); + for (int i=0; i > sites(maxsite); + for ( ; sites; sites++) { + Array maxtype(maxsite.get_size()); + for (int i=0; i &)sites)(i)];} + MultiDimIterator > before_types(maxtype); + int nb_tries=1; + for (int i=0; i before_flip(nb_tries); + for (int i=0; i > after_flip; + for (; before_types; before_types++) { + Array before_corr; + calc_delta_point_corr(&before_corr, (const Array &)sites,(const Array &)before_types); + MultiDimIterator > after_types(maxtype); + for (; after_types; after_types++) { + int same; + for (same=0; same &)before_types)(same)==((Array &)after_types)(same)) break; + } + if (same==nbflip) { + Array after_corr; + calc_delta_point_corr(&after_corr, (const Array &)sites,(const Array &)after_types); + Array delta_corr; + diff(&delta_corr,after_corr,before_corr); + Array c; + if (corr_constraints.get_size()(1)!=delta_corr.get_size()) { + ERRORQUIT("Incorrect number of point correlations to use the hybrid grandcanonical/canonical mode.\nPlease make sure clusters.out includes all point correlations"); + } + product(&c,corr_constraints,delta_corr); + if (inner_product(c,c) &)before_types)(i);} + before_flip(index)=nb_flip; + after_flip << new Array(after_types); + nb_flip++; + for (int l=0; l<((Array &)sites).get_size(); l++) { + cerr << ((Array &)sites)(l) << ": " << ((Array &)before_types)(l) << "->" << ((Array &)after_types)(l) << endl; + } + cerr << endl; + build_basis(&corr_basis,&nb_in_basis,delta_corr); + } + } + } + } + if (nb_flip>0) { + for (int i=0; i<((Array &)sites).get_size(); i++) { + if (site_done(((Array &)sites)(i))==0) { + site_done(((Array &)sites)(i))=1; + nb_site_done++; + } + } + site_list << new Array(sites); + before_flip_list << new Array(before_flip); + Array > *pafter_flip_array=new Array >(); + LinkedList_to_Array(pafter_flip_array,after_flip); + after_flip_list << pafter_flip_array; + } + } + if (nb_in_basis >= nb_point-corr_constraints.get_size()(0) && (nb_site_done==site_in_cell)) break; + nbflip++; + } + LinkedList_to_Array(&allowed_flip_site,site_list); + LinkedList_to_Array(&allowed_flip_before,before_flip_list); + LinkedList_to_Array(&allowed_flip_after,after_flip_list); +} + +int MultiMonteCarlo::force_spin_flip(int *cell, int incell, int newspin) { + int i; + int mcell[3],mcellscan[3],offset; + int oldspin; + Real denergy,dconc; + int cluster_count,site_count; + int **pcluster; + Real ***pppspin_val_clus,**ppspin_val_clus; + int *pwhich_cluster; + int *poffset,*psize; + Real *peci, *prho, *prho2, *prcluster_mult_per_atom; + Real rho; + for (i=0; i<3; i++) { + mcell[i]=cell[i]+margin(i); + } + + offset=((mcell[0]*total_box(1) + mcell[1])*total_box(2) + mcell[2])*site_in_cell + incell; + oldspin=spin[offset]; + denergy=0.; + for (i=total_clusters, prho=new_rho; i>0; i--, prho++) { + *prho=0.; + } + for (cluster_count=nb_clusters[incell], pcluster=site_offset[incell], pppspin_val_clus=spin_val_clus[incell], psize=cluster_size[incell], pwhich_cluster=which_cluster[incell], peci=eci[incell]; cluster_count>0; cluster_count--, pcluster++, pppspin_val_clus++, psize++, pwhich_cluster++, peci++) { + poffset=*pcluster; + ppspin_val_clus=*pppspin_val_clus; + rho=(*ppspin_val_clus)[newspin]-(*ppspin_val_clus)[oldspin]; + poffset++; + ppspin_val_clus++; + for (site_count=(*psize)-1; site_count>0; site_count--, poffset++, ppspin_val_clus++) { + rho*=(*ppspin_val_clus)[spin[offset+(*poffset)]]; + } + new_rho[*pwhich_cluster]+=rho; + denergy+=(*peci)*rho; + } + for (i=0; i=supercell(i)) {mcell[i]-=supercell(i);} + } + for (mcellscan[0]=mcell[0]; mcellscan[0]cur_energy=cur_energy; + pstate->cur_disorder_param=cur_disorder_param; + pstate->cur_rho.resize(total_clusters); + for (int i=0; icur_rho(i)=pcur_rho[i];} + pstate->saved_spins.delete_all(); +} + +void MultiMonteCarlo::save_spin(MultiMonteCarloState *pstate, int *cell, int incell) { + FlipInfo *pinfo=new FlipInfo(); + for (int i=0; i<3; i++) { + pinfo->cell[i]=cell[i]+margin(i); + } + pinfo->incell=incell; + int offset=((pinfo->cell[0]*total_box(1) + pinfo->cell[1])*total_box(2) + pinfo->cell[2])*site_in_cell + incell; + pinfo->spin=spin[offset]; + pstate->saved_spins << pinfo; +} + +void MultiMonteCarlo::restore_state(const MultiMonteCarloState &state) { + cur_energy=state.cur_energy; + cur_disorder_param=state.cur_disorder_param; + for (int i=0; i it(state.saved_spins); + for ( ; it; it++) { + int mcell[3]; + for (int i=0; i<3; i++) { + mcell[i]=it->cell[i]; + if (mcell[i]>=supercell(i)) {mcell[i]-=supercell(i);} + } + int mcellscan[3]; + for (mcellscan[0]=mcell[0]; mcellscan[0]incell]=it->spin; + } + } + } + } +} + +int MultiMonteCarlo::access(int *cell, int incell) { + int mcell[3]; + for (int i=0; i<3; i++) { + mcell[i]=cell[i]+margin(i); + } + int offset=((mcell[0]*total_box(1) + mcell[1])*total_box(2) + mcell[2])*site_in_cell + incell; + return spin[offset]; +} + +void MultiMonteCarlo::multi_spin_flip(void) { + int which_flip,before_index,after_index; + Array cells; + Array oldspin; + do { + which_flip=random(allowed_flip_site.get_size()); + cells.resize(allowed_flip_site(which_flip).get_size()); + iVector3d center; + if (flip_span(0)>=0) { + for (int j=0; j<3; j++) { + center(j)=random(supercell(j)); + } + } + for (int i=0; i=0) { + cells(i)(j)=(supercell(j)+center(j)+random(2*flip_span(j)+1)-flip_span(j)) % supercell(j); + } + else { + cells(i)(j)=random(supercell(j)); + } + } + for (ii=0; ii---" << endl; +} + +void MultiMonteCarlo::set_eci(const Array &new_eci) { + if (which_is_empty>=0) { + E_ref=new_eci(which_is_empty)/lattice.atom_pos.get_size(); + } else { + E_ref=0.; + } + for (int s=0; s > &conc) { + Array > sconc; + sconc=conc; + for (int i=0; i bb(iVector3d(0,0,0),total_box-iVector3d(1,1,1)); + MultiDimIterator cell(supercell); + for ( ; cell; cell++) { + for (int offset_in_cell=0; offset_in_cell image(iVector3d(-1,-1,-1),iVector3d(1,1,1)); + for ( ; image; image++) { + iVector3d image_cell=(iVector3d &)cell+msupercell*(iVector3d &)image+margin; + if (bb.is_in(image_cell)) { + int offset=((image_cell(0)*total_box(1) + image_cell(1))*total_box(2) + image_cell(2))*site_in_cell + offset_in_cell; + spin[offset]=the_spin; + } + } + } + } + int spin_size=supercell(0)*supercell(1)*supercell(2)*site_in_cell; + for (int i=0; i bb(iVector3d(0,0,0),total_box-iVector3d(1,1,1)); + for (int at=0; at image(iVector3d(-1,-1,-1),iVector3d(1,1,1)); + for ( ; image; image++) { + iVector3d image_cell=cell+msupercell*(iVector3d &)image+margin; + if (bb.is_in(image_cell)) { + int offset=((image_cell(0)*total_box(1) + image_cell(1))*total_box(2) + image_cell(2))*site_in_cell + s; + spin[offset]=newspin; + } + } + int offset=((cell(0)*supercell(1) + cell(1))*supercell(2) + cell(2))*site_in_cell + s; + spin_orig[offset]=newspin; + } + } + else { + rMatrix3d inv_cell=!str.cell; + iMatrix3d msupercell; + msupercell.diag(supercell); + BoundingBox bb(iVector3d(0,0,0),total_box-iVector3d(1,1,1)); + MultiDimIterator cell(supercell); + int quickload=0; + if (file_exists("quickload")) {quickload=1;} + cerr << "quickload=" << quickload << endl;; + int at=-1; + for (; cell; cell++) { + rVector3d rcell=lattice.cell*to_real((iVector3d &)cell); + for (int s=0; s image(iVector3d(-1,-1,-1),iVector3d(1,1,1)); + for ( ; image; image++) { + iVector3d image_cell=(iVector3d &)cell+msupercell*(iVector3d &)image+margin; + if (bb.is_in(image_cell)) { + int offset=((image_cell(0)*total_box(1) + image_cell(1))*total_box(2) + image_cell(2))*site_in_cell + s; + spin[offset]=newspin; + } + } + iVector3d thecell=(iVector3d &)cell; + int offset=((thecell(0)*supercell(1) + thecell(1))*supercell(2) + thecell(2))*site_in_cell + s; + spin_orig[offset]=newspin; + } + } + } + cerr << "end init" << endl; + calc_from_scratch(); + extension_calc_from_scratch(); + cerr << "end calc" << endl; +} + +void MultiMonteCarlo::calc_from_scratch(void) { + cur_disorder_param=0.; + cur_energy=0; + for (int i=0; i cur_cell(supercell); + for ( ; cur_cell; cur_cell++) { + iVector3d m_cur_cell=(iVector3d &)cur_cell+margin; + for (int s=0; s=0) {cur_rho(which_is_empty)=1.;} + for (int i=0; i & MultiMonteCarlo::get_cur_concentration(void) { + for (int i=0; i &_mu) { + T=_T; + for (int i=0; i0; i--, prho++) { + *prho=0.; + } + for (cluster_count=nb_clusters[incell], pcluster=site_offset[incell], pppspin_val_clus=spin_val_clus[incell], psize=cluster_size[incell], pwhich_cluster=which_cluster[incell], peci=eci[incell]; cluster_count>0; cluster_count--, pcluster++, pppspin_val_clus++, psize++, pwhich_cluster++, peci++) { + poffset=*pcluster; + ppspin_val_clus=*pppspin_val_clus; + rho=(*ppspin_val_clus)[newspin]-(*ppspin_val_clus)[oldspin]; + poffset++; + ppspin_val_clus++; + for (site_count=(*psize)-1; site_count>0; site_count--, poffset++, ppspin_val_clus++) { + rho*=(*ppspin_val_clus)[spin[offset+(*poffset)]]; + } + new_rho[*pwhich_cluster]+=rho; + denergy+=(*peci)*rho; + } + for (i=0; i=supercell(i)) {mcell[i]-=supercell(i);} + } + for (mcellscan[0]=mcell[0]; mcellscan[0] &labellookup, const Array &atom_label, ofstream &file, const rMatrix3d &axes) { + for (int i=0; i<3; i++) { + file << axes.get_column(i) << endl; + } + for (int i=0; i<3; i++) { + file << (!axes)*((Real)(supercell(i))*lattice.cell.get_column(i)) << endl; + } + rMatrix3d iaxes=!axes; + MultiDimIterator cur_cell(supercell); + for ( ; cur_cell; cur_cell++) { + iVector3d m_cur_cell=(iVector3d &)cur_cell+margin; + for (int s=0; s *pdata) { + pdata->resize(2+nb_point+total_clusters); + (*pdata)(0)=get_cur_energy(); + (*pdata)(1)=get_cur_disorder_param(); + int i=2; + Array conc; + conc=get_cur_concentration(); + for (int j=0; j rho; + rho=get_cur_corr(); + for (int j=0; j data; + pmc->get_thermo_data(&data); + while (accum->new_data(data)) { + pmc->run(1,mode); + pmc->get_thermo_data(&data); + } +} + +#include "anyfft.h" + +KSpaceMultiMonteCarlo::KSpaceMultiMonteCarlo(const Structure &_lattice, const Array > &_site_type_list, + const iVector3d &_supercell, + const SpaceGroup &space_group, const LinkedList &cluster_list, + const Array > > &_corrfunc, KSpaceECI *_p_kspace_eci): + MultiMonteCarlo(_lattice,_site_type_list,_supercell,space_group,cluster_list,_corrfunc), flipped_spins(), ft_spin(), ft_eci(), dir_eci(), convol(), ref_x() { + p_kspace_eci=_p_kspace_eci; + nsite=_lattice.atom_pos.get_size(); + size=supercell(0)*supercell(1)*supercell(2); + rsize=(Real)size; + + ft_spin.resize(nsite); + for (int s=0; s a) { + { + ofstream file("tmp.gnu"); + file << "set hidden" << endl + << "splot 'tmp.out' u 1:2:3 w l" << endl + << "pause -1" << endl; + } + { + ofstream file("tmp.out"); + for (int z=0; zget_k_space_eci(&ft_eci, ref_x); + dir_eci=ft_eci; + for (int s=0; s0.) { +//cerr << cur_recip_E << endl; +//} + } + } + } +//cerr << "end" << endl; + for (int s=0; s diffx; + diff(&diffx,get_cur_concentration(),ref_x); +//cerr << "forget" << endl; + if (max_norm(diffx)>threshold_dx) { + extension_calc_from_scratch(); + } else { + if (flip_time>0) { +//cerr << "time: " << nbflip << " " << flip_time << " " << 2*fft_time/flip_time << endl; + if (nbflip > 2*fft_time/flip_time) { +//cerr << "before= " << extension_get_energy() << endl; + extension_calc_from_scratch(); +//cerr << "after= " << extension_get_energy() << endl; + } + } + } +} + +void KSpaceMultiMonteCarlo::extension_update_spin_flip(int *cell, int incell, int oldspin, int newspin) { + + flip_time=clock(); + int dr[3]; + int mdr[3]; + int *psupercell=supercell.get_buf(); + + Array rspinchange(nb_spin_val[incell]); + rspinchange(0)=0.; + for (int ss=1; ss i(flipped_spins); + for (; i; i++) { + for (int j=0; j<3; j++) { + dr[j] =(cell[j]-(i->cell[j])+psupercell[j]) % psupercell[j]; + mdr[j]=(i->cell[j]-cell[j]+psupercell[j]) % psupercell[j]; + } + //int offsetdr=((dr[0]*psupercell[1] + dr[1])*psupercell[2] + dr[2]); //permbug + int offsetdr =((dr[2]*psupercell[1] + dr[1])*psupercell[0] + dr[0]); + int offsetmdr=((mdr[2]*psupercell[1] + mdr[1])*psupercell[0] + mdr[0]); + for (int ss=1; ssincell]; tt++) { + if (incell>=i->incell) { + dE+=2.*real(dir_eci(incell)(i->incell)(ss)(tt)(offsetdr)*rspinchange(ss)*i->dspin(tt)); + } else { + dE+=2.*real(dir_eci(i->incell)(incell)(tt)(ss)(offsetmdr)*rspinchange(ss)*i->dspin(tt)); + } + } + } + } + cur_recip_E+=dE/(rspin_size); + +/* + cerr << "Eafterflip=" << cur_recip_E << endl; + int ck=0; + if (ck==1) { + extension_calc_from_scratch(); + cerr << cur_recip_E << endl; + } +*/ + flipped_spins.push_front(new FlippedSpin(cell,incell,rspinchange)); + flip_time=clock()-flip_time; +} + +void KSpaceMultiMonteCarlo::extension_undo_spin_flip(void) { + LinkedListIterator flip(flipped_spins); + while ((FlippedSpin *)flip != psave_spins) { + delete flipped_spins.detach(flip); + } + cur_recip_E=save_recip_E; + psave_spins=NULL; +//cerr << "undo" << flipped_spins.get_size() << endl; +} + +KSpaceMultiMonteCarlo::~KSpaceMultiMonteCarlo() { + // free all dynamically allocated memory; +} diff --git a/src/pmmclib.hh b/src/pmmclib.hh new file mode 100644 index 0000000..f6ef2ef --- /dev/null +++ b/src/pmmclib.hh @@ -0,0 +1,215 @@ +#ifndef _MCLIB_H_ +#define _MCLIB_H_ + +#include +#include +#include "clus_str.h" +#include "linalg.h" +#include "equil.h" +#include "kmeci.h" + +#define SPIN_TYPE signed char + +class FlipInfo { + public: + iVector3d cell; + int incell; + int spin; + FlipInfo(void): cell() {} +}; + +class MultiMonteCarloState { + public: + Real cur_energy; + Real cur_disorder_param; + Array cur_rho; + LinkedList saved_spins; + public: + MultiMonteCarloState(void): cur_rho(), saved_spins() {cur_energy=0; cur_disorder_param=0;} +}; + +class MultiMonteCarlo { + protected: + Structure lattice; + Array > site_type_list; + iVector3d supercell; + iVector3d margin; + iVector3d total_box; + SPIN_TYPE *spin; + SPIN_TYPE *spin_orig; + Real rspin_size; + int site_in_cell; + int active_site_in_cell; + int *which_site; + int *nb_spin_val; + int total_clusters; + int *nb_clusters; + // int *nb_x_clusters; + int **cluster_size; + Real *rcluster_mult_per_atom; + int ***site_offset; + Real ****spin_val_clus; + Real **eci; + int **which_cluster; + Real E_ref; + int which_is_empty; + int nb_point; + int *which_is_point; + Real *point_mult; + Real cur_energy; + Array cur_rho; + Real *pcur_rho; + Real *new_rho; + Real cur_disorder_param; + Array cur_conc; + + Real T; + Array mu; + Real *pmu; + + Array > > corrfunc; + + Array > allowed_flip_site; + Array > allowed_flip_before; + Array > > allowed_flip_after; + iVector3d flip_span; + +#ifdef ATAT_MPI + iVector3d parbox_subdiv; + int parbox_step; + Array > parbox_org; + Array > parbox_size; +#endif + + protected: + void calc_delta_point_corr(Array *pcorr, int site, int type); + void calc_delta_point_corr(Array *pcorr, const Array &sites,const Array &types); + public: + void find_all_allowed_flips(const Array2d &corr_constraints, const iVector3d &_flip_span); + int force_spin_flip(int *cell, int incell, int newspin); + void save_state(MultiMonteCarloState *pstate); + void save_spin(MultiMonteCarloState *pstate, int *cell, int incell); + void restore_state(const MultiMonteCarloState &state); + int access(int *cell, int incell); + void multi_spin_flip(void); + public: + void calc_from_scratch(void); + void spin_flip(void); + void run(int mc_passes, int mode); + MultiMonteCarlo(const Structure &_lattice, const Array > &_site_type_list, const iVector3d &_supercell, + const SpaceGroup &space_group, const LinkedList &cluster_list, + const Array > > &_corrfunc); + ~MultiMonteCarlo(void); + void set_eci(const Array &eci); + void init_random(const Array > &conc); + void init_structure(const Structure &str); + // void set_concentration(Real concentration); + void set_T_mu(Real _T, const Array &_mu); + void view(const Array &labellookup, const Array &atom_label, ofstream &file, const rMatrix3d &axes); + + const Array & get_cur_corr(void) const { + return cur_rho; + } + Real get_cur_energy(void) { + return E_ref+cur_energy+extension_get_energy(); + } + const Array & get_cur_concentration(void); + Real get_cur_disorder_param(void) const { + return cur_disorder_param; + } + int get_total_clusters(void) const { + return total_clusters; + } + void get_cluster_mult(Array *mult) const { + mult->resize(total_clusters); + for (int i=0; i &get_mu(void) const {return mu;} + const iVector3d & get_cell_size() const { + return supercell; + } + void get_thermo_data(Array *pdata); +#ifdef ATAT_MPI + void set_parallel(const iVector3d &_parbox_subdiv, int _parbox_step) { + parbox_subdiv=_parbox_subdiv; + parbox_step=_parbox_step; + iVector3d region_size=supercell; + for (int i=0; i<3; i++) { + region_size(i)/=parbox_subdiv(i); + } + parbox_org.resize(16); + parbox_size.resize(16); + int pass=0; + for (int halfshift=0; halfshift<2; halfshift++) { + MultiDimIterator subbox(iVector3d(2,2,2)); + for (; subbox; subbox++) { + parbox_org(pass).resize(parbox_subdiv); + iVector3d vsubbox=subbox; + for (int i=0; i<3; i++) { + vsubbox(i); + } + pass++; + } + } + } +#endif + protected: + virtual void extension_calc_from_scratch(void) {} + virtual void extension_save_state(void) {} + virtual void extension_forget_state(void) {} + virtual void extension_update_spin_flip(int *cell, int incell, int oldspin, int newspin) {} + virtual void extension_undo_spin_flip(void) {} + virtual Real extension_get_energy(void) {return 0;} +}; + + +void run_mc(GenericAccumulator *accum, MultiMonteCarlo *pmc, int mode); + +class FlippedSpin { + public: + FlippedSpin(int *_cell, int _incell, const Array &_dspin) { + for (int i=0; i<3; i++) {cell[i]=_cell[i];} + incell=_incell; dspin=_dspin; + } + int cell[3]; + int incell; + Array dspin; +}; + +class KSpaceMultiMonteCarlo: public MultiMonteCarlo { + protected: + int nsite; + int size; + Real rsize; + Array > > ft_spin; + Array > > > > ft_eci; + Array > > > > dir_eci; + Array > > convol; + KSpaceECI *p_kspace_eci; + Real cur_recip_E; + clock_t fft_time; + clock_t flip_time; + Array ref_x; + Real threshold_dx; + + LinkedList flipped_spins; + FlippedSpin *psave_spins; + Real save_recip_E; + + public: + KSpaceMultiMonteCarlo(const Structure &_lattice, const Array > &_site_type_list, const iVector3d &_supercell, + const SpaceGroup &space_group, const LinkedList &cluster_list, + const Array > > &_corrfunc, KSpaceECI *_p_kspace_eci); + ~KSpaceMultiMonteCarlo(); + protected: + void set_k_space_eci(void); + void extension_calc_from_scratch(void); + void extension_save_state(void); + void extension_forget_state(void); + void extension_update_spin_flip(int *cell, int incell, int oldspin, int newspin); + void extension_undo_spin_flip(void); + Real extension_get_energy(void) {return cur_recip_E;} +}; + +#endif diff --git a/src/predcs.c++ b/src/predcs.c++ new file mode 100644 index 0000000..91c57b5 --- /dev/null +++ b/src/predcs.c++ @@ -0,0 +1,10 @@ +#include "predrs.h" + +#define STATICCSCOEF static + +#include "kspacecs.cc" + +SpecificPlugIn > CSPredictorRegister("cs"); // register plug-in under name "cs"; + +// static storage space of parameters; +CS_KSpaceECI RSPredictor::kspace_eci_object=CS_KSpaceECI(); // object returning kspace eci; diff --git a/src/predcshelp.hlp b/src/predcshelp.hlp new file mode 100644 index 0000000..7895c06 --- /dev/null +++ b/src/predcshelp.hlp @@ -0,0 +1,136 @@ +This code fits a reciprocal-space cluster expansion of the constituent strain +energy for binary systems with cubic symmetry. + +USAGE: + +csfit needs, as an input, 4 files. + +1) A lat.in file defining the geometry of the lattice (same format as maps). +2) Two str_relax.out residing in given directories (-pa and -pb options, or, by + default 0/ and 1/ ) and providing the relaxed geometry of the two pure + end members for the system. +3) A dir.in file listing the directions along which to compute epitaxial + deformation energy in order to fit the expansion. + Directions are specified as miller indices in the coordinate system + defined in lat.in . + Each index must be separated by a space and + each direction must be on a separate line. + +The code then generates subdirectories (in 0/ and 1/ or any other directory +you specify) with deformed structures whose energy will be used to fit the +expansion. The -np and -nl options let you control the number of structures +generated: -np provides the number of intermediate epitaxial strain +(perpendicular to specified directions) considered between the lattice parameters +of the 2 pure elements while -nl provides the number of different values of +strain along the directions specified. The range of strains spanned is +given by the -ml option (+/- that value, 0 strain being the strain that +keeps volume constant). The -ns option controls the numerical energy +minimization (it is the number of mesh points used in the search for a +minimum) and has no effect of the number of generated structures. + +All default values are very reasonable. You may want to increase -ml and +-nl for systems with a large size mismatch. + +The files generated are compatible with the 'pollmach' +automatic job control utility. If you use vasp, you would +typically type + csfit -d & + pollmach runstruct_vasp -w csvasp.wrap & + +where the csvasp.wrap contains the parameters needed for a vasp run +that does not relax the structure geometry (see atat/examples directory). + +WARNING: you are free to rerun csfit many times, adding new lines in dir.in +but you CANNOT rerun it with different -ml -np -nl settings without first +deleting the subdirectories generated. + +The csfit programs waits until all calculations are done and then fits +the expansion and writes the results to the cs.in file. +The cs.log contains the constituent strain as a function of concentration (rows) +for long period superlattices along the specified directions (columns). + +You can use the resulting expansion in maps by using the -p=cs option +and in emc2 or phb by using the -ks=cs option. + +CONVENTIONS: + +We expand the concentration-dependent reciprocal space ECI associated with +constituent strain as: + + J_{CS}(x,k) = sum_{l=0,2,4,... } a_{l}(x) K_{l}(k) + +where |K_{l}(k)|^2 is normalized to integrate to one over the unit spherical +shell |k|=1. +By combining Equations (12) and (19) in V. Ozolins, C. Wolverton, and A. Zunger, +Phys. Rev. B, 57, 6427 (1998), we see that the coefficients a_{l}(x) are +related to the c_{l}(x) coefficients defined in this paper through: + + a_{l}(x)=c_{l}(x)/(4x(1-x)) + +The configuration-dependent constituent strain energy is given by + + Delta E_{CS}(sigma) = sum_{k} Delta J_{CS}(x,k) |S(sigma,k)|^2 exp(-|k|^2/k_c^2) + +(see Equation (22) in C. Wolverton, V. Ozolins, A. Zunger, J. Phys: Condems. Matter, 12, 2749 (2000)). + +The S(sigma,k) is computed according to the following convention: + + S(sigma,k)=sum_{j in unit cell of structure} S_j exp(i 2 pi k . R_j) * + * (number of atom in unit cell of parent lattice)/ + (number of atom in unit cell of structure) + +Delta E_{CS}(sigma) is thus given per unit cell of the parent lattice. + +1/kc is given in the same unit of length as in the lat.in file (for instance, Angstroms). + +The ouput file cs.in contains: + +[1/k_c, set to 0 to turn off 'attenuation'] +[Number of kubic harmonic to use, e.g. 2 to use K_0 and K_4] +[Number n of mesh point in concentration grid, including x=0 and x=1] + +a_{0}(0) +a_{0}(1/(n-1)) +a_{0}(2/(n-1)) +. +. +. +a_{0}(1) + +a_{4}(0) +a_{4}(1/(n-1)) +a_{4}(2/(n-1)) +. +. +. +a_{4}(1) + +a_{6}(0) +a_{6}(1/(n-1)) +a_{6}(2/(n-1)) +. +. +. +a_{6}(1) + +etc. + + +Additional output files + +cs.log + +Contains the constituent strain energy (cse) of superstructures along +the specified directions as a function of concentration. +Format: +[concentration] [cse along direction 1 of dir.in] [cse along direction 2 of dir.in] etc. +repeat for each concentration + +csdebug.out + +Contains the raw energies for each calculation. +The outer loop is on the directions of the dir.in file. +The middle loop is on the element (which pure end member). +The inner loop is on the stretching perpendicular to the k-vector. +Each line contains the energy for various amount of stretching along the +direction parallel to the k-vector. diff --git a/src/predes.c++ b/src/predes.c++ new file mode 100644 index 0000000..9cf31c7 --- /dev/null +++ b/src/predes.c++ @@ -0,0 +1,131 @@ +#include "mrefine.h" +#include "getvalue.h" +#include "parse.h" +#include "phonlib.h" +#include + +Real calc_ewald(const rMatrix3d &cell, const Array &atom_pos, const Array &charges, Real eta=-1.0, Real prec=1e-25) { + rMatrix3d rcell=2.*M_PI*!(~cell); + LatticePointIterator lat(cell,1); + Real rmin=norm((rVector3d)lat); + LatticePointIterator rlat(rcell,1); + Real kmin=norm((rVector3d)rlat); + Real omega=fabs(det(cell)); + if (eta<0) { + eta=sqrt(0.5*(kmin/rmin)*sqrt(log(prec)/log((prec*omega)/(4*M_PI)))); + // cerr << eta << endl; + } + Real E=0.; + for (int i=0; imaxr) break; + E+=qq*doublecount*erfc(eta*r)/r; + lat++; + nt++; + } + //cerr << "nReal=" << nt << endl; + rlat.init(rcell,1); + Real maxk2=4.*sqr(eta)*(-log(omega*prec/(4.*M_PI))); + nt=0; + while (1) { + rVector3d k=(rVector3d)rlat; + Real k2=norm2(k); + if (k2>maxk2) break; + E+=qq*cos(k*dr)*doublecount*exp(-k2/(4.*sqr(eta)))*4.*M_PI/omega/k2; + rlat++; + nt++; + } + //cerr << "nReciprocal=" << nt << endl; + E-=doublecount*qq*M_PI/sqr(eta)/omega; + if (i==j) { + E-=qq*eta/sqrt(M_PI); + } + } + } + return E*14.39964886; // Coulomb constant in eV*A/e^2; +} + +class ElectroStaticPredictor: public EnergyPredictor { + static Structure lattice; // the parent lattice; + static Array site_type_list; + static Array species_charges; + static Real scrn; + + int done; + Real es_energy; + public: + // Constructor: don't touch; + ElectroStaticPredictor(void); + + // init static members of class; + void static_init(const ClusterExpansion &ce); + + // calculate electrostatic energy for structure str; + Real get_energy(const StructureInfo &str); +}; + +Structure ElectroStaticPredictor::lattice; +Array ElectroStaticPredictor::site_type_list; +Array ElectroStaticPredictor::species_charges; +Real ElectroStaticPredictor::scrn; + +ElectroStaticPredictor::ElectroStaticPredictor(void) {done=0; es_energy=0.;} + +void ElectroStaticPredictor::static_init(const ClusterExpansion &ce) { + ElectroStaticPredictor::lattice=ce.get_lattice(); + ElectroStaticPredictor::site_type_list=ce.get_site_type_list(); + ElectroStaticPredictor::scrn=1.; + ElectroStaticPredictor::species_charges.resize(ce.get_atom_label().get_size()); + { + ifstream file("es.in"); + if (!file) ERRORQUIT("Unable to open es.in file."); + while (!file.eof()) { + AutoString specie; + skip_delim(file," \t=\n"); + get_string(&specie,file," \t="); + skip_delim(file," \t="); + if (file.eof()) break; + if (specie==AutoString("scrn")) { + file >> ElectroStaticPredictor::scrn; + } else { + int wspecie=index_in_array(ce.get_atom_label(),specie); + if (wspecie==-1) ERRORQUIT("Unknown specie in electrostatic predictor."); + file >> ElectroStaticPredictor::species_charges(wspecie); + } + } + } +} + +Real ElectroStaticPredictor::get_energy(const StructureInfo &str) { + if (!done) { + rMatrix3d icell=!(lattice.cell); + Array charges(str.atom_pos.get_size()); + Real total_charge=0.; + int num_positive=0; + int num_negative=0; + for (int i=0; i0) {num_positive++;} + if (charges(i)<0) {num_negative++;} + } + Real d_charge=(total_charge==0. ? 0. : total_charge/(Real)(total_charge>0. ? num_positive : num_negative)); + for (int i=0; i ElectroStaticPredictorRegister("es"); // register plug-in under name "es"; diff --git a/src/predrs.c++ b/src/predrs.c++ new file mode 100644 index 0000000..542bd40 --- /dev/null +++ b/src/predrs.c++ @@ -0,0 +1,85 @@ +#include "predrs.h" + +RSPredictorBase::RSPredictorBase(void): EnergyPredictor() { + done=0; +} + +// init static members of class (those shared among all objects of type RSPredictor; +void RSPredictorBase::static_init(const ClusterExpansion &ce) { + // copy parent lattice from the cluster expansion object (excluding spectator atoms); + lattice=ce.get_lattice_only(); + // set atom_type(i) to the number of possible species that can sit at site i (1 or 2); + for (int i=0; istatic_init(lattice); +} + +// calculate constituent strain energy for structure str; +Real RSPredictorBase::get_energy(const StructureInfo &str) { + if (!done) { + LinkedList kpts_list; // will contain a growing list of kpoints; + // calc all lattices needed: ~=transpose, !=inverse; + rMatrix3d rec_lat=~(!lattice.cell); // reciprocal lattice of parent lattice; + rMatrix3d i_rec_lat=!rec_lat; // inverse matrix of reciprocal of parent lattice; + rMatrix3d i_lat=!lattice.cell; // inverse of parent lattice; + rMatrix3d rec_lat_str=~(!str.cell); // reciprocal lattice of unit cell of the structure; + int ik=0; // include the gamma point; + // int ik=1; // exclude the gamma point; + LatticePointIterator k(rec_lat_str,ik); // k will scan all superlattice points of rec_lat_str; + vol=(int)rint(det(rec_lat)/det(rec_lat_str)); // volume in multiple of unit cell of parent lattice; + // find all (vol-1) k-points closest to the origin that are not equivalent by a translation (i.e. the 1st Brillouin zone); + while (ik old_k(kpts_list); // scan all previously chosen k-points; + for (; old_k; old_k++) { // in this loop; + if (equivalent_mod_cell(*old_k,rVector3d(k),i_rec_lat)) break; // if we already have that k-point exit loop; + } + if (!old_k) { // if we don;t already have that k-point, store it; + kpts_list << new rVector3d(k); + ik++; + } + k++; // go to next k-point; + } + LinkedList_to_Array(&kpts,kpts_list); // convert the list of k-point into an array of k-points; + // cerr << "k=" << kpts << endl; + // compute structure factors; + str_fact.resize(kpts.get_size()); + for (int i=0; i keci; + get_kspace_eci_object()->get_k_space_eci(&keci,kpts(i),conc); + e+=quadratic_form(keci,str_fact(i)); + } + return e; +} + +Structure RSPredictorBase::lattice; // the parent lattice; + +GenericPlugIn *GenericPlugIn::list=NULL; // plugin list for kspace eci objects; + diff --git a/src/predrs.hh b/src/predrs.hh new file mode 100644 index 0000000..e1f1538 --- /dev/null +++ b/src/predrs.hh @@ -0,0 +1,32 @@ +#include "refine.h" +#include "keci.h" +#include "linalg.h" + +class RSPredictorBase: public EnergyPredictor { + static Structure lattice; // the parent lattice; + virtual KSpaceECI *get_kspace_eci_object(void) {return NULL;} // return pointer object returning kspace eci; + + Array kpts; // k-point list; + Array > str_fact; // structure factors; + Real conc; // concentration between 0 and 1; + int vol; // in multiple of parent lattice unit cell volume; + int done; // flag: done with finding k-points; + + public: + // Constructor: don't touch; + RSPredictorBase(void); + + // init static members of class (those shared among all objects of type RSPredictor; + void static_init(const ClusterExpansion &ce); + + // calculate constituent strain energy for structure str; + Real get_energy(const StructureInfo &str); +}; + +template +class RSPredictor: public RSPredictorBase { + static T kspace_eci_object; + KSpaceECI *get_kspace_eci_object(void) {return &kspace_eci_object;} + public: + RSPredictor(void): RSPredictorBase() {} +}; diff --git a/src/predskel.c++ b/src/predskel.c++ new file mode 100644 index 0000000..e1914b5 --- /dev/null +++ b/src/predskel.c++ @@ -0,0 +1,21 @@ +#include "refine.h" + +// replace MyOwn by the name of your new predictor +// look for ?? and edit; + +class MyOwnPredictor: public EnergyPredictor { + static Real ??; + public: + MyOwnPredictor(void): EnergyPredictor() {} + void static_init(const ClusterExpansion &ce) { + ??=??; + } + Real get_energy(const StructureInfo &str) { + return (??); + } +}; + +SpecificPlugIn MyOwnPredictorObject("MyOwn"); + +static Real MyOwnPredictor::??; + diff --git a/src/quvib.c++ b/src/quvib.c++ new file mode 100644 index 0000000..07884e2 --- /dev/null +++ b/src/quvib.c++ @@ -0,0 +1,72 @@ +#include "array.h" +#include + +Real evolve_imag_time(int n, Real stiff, Real freq, int umesh, Real tscale) { + Real A=stiff/2.0; + Real B=freq*freq/stiff/2.0; + Array psi0,psi1; + Array org_psi(umesh); + Real du=2./(Real)(umesh-1); + + Real u=-1.; + for (int i=0; i +#include +#include "refine.h" +#include "getvalue.h" + +GenericPlugIn *GenericPlugIn::list=NULL; +GenericPlugIn *GenericPlugIn::list=NULL; +SpecificPlugIn StdClusterExpansionPlugIn("std"); // register plug-in under name "std"; + + +Real calc_structure_cost(const Structure &str, const rMatrix3d &cell, const Array &point_op, const Array &trans, Real complexity_exp) { + /* + if (complexity_exp<0) { + return ((Real)(str.atom_pos.get_size())>-complexity_exp ? MAXFLOAT : 1. ); + } + else { + */ + return pow((Real)(str.atom_pos.get_size()),complexity_exp); + //} +} + +ClusterExpansion::ClusterExpansion(const Structure &_parent_lattice, + const Array &_site_type_list, + const Array &_atom_label, + const SpaceGroup &_spacegroup): + pclusters(), equiv_cluster(), spacegroup(_spacegroup), structures(_parent_lattice,_site_type_list,spacegroup), weight(), + parent_lattice(_parent_lattice), site_type_list(_site_type_list), atom_label(_atom_label), label_list(), i_label_list() { + max_multiplet=4; + complexity_exp=3.; + minc_gs_ok=-MAXFLOAT; + maxc_gs_ok=MAXFLOAT; + predictor_labels=""; + user_max_vol=32000;//largest cell possible; + + // initialize lattice_only; + int nbsite=0; + for (nbsite=0; nbsiteget_cluster_list().get_size(); + for (int i=0; iget_current_length() c(pclusters(i)->get_cluster_list()); + for ( ; c; c++) { + Array *parraycluster=new Array; + find_equivalent_clusters(parraycluster,*c,spacegroup.cell,spacegroup.point_op,spacegroup.trans); + (*equiv_cluster(i)) << parraycluster; + } + } + reset_cluster_choice(); + update_correlations(StructureInfo::anystatus); + reset_structure(); +} + +ClusterExpansion::~ClusterExpansion(void) { + for (int i=0; ilabel)==0) { + while (i_label_list && *i_label_list == cur_label) { + i_label_list++; + cur_label++; + } + label_list.add(new int(cur_label),i_label_list); + ostrstream tmp; + tmp << cur_label << '\0'; + str->label.set(tmp.str()); + } + // set structure cost, if needed; + if (str->cost==0) str->cost=calc_structure_cost(*str,spacegroup.cell,spacegroup.point_op,spacegroup.trans,complexity_exp); + + // creates new lists for larger multiplet if needed; + int multiplet_to_add=pclusters.get_size() - str->correlations.get_size(); + while (multiplet_to_add>0) { + str->correlations << new LinkedList(); + multiplet_to_add--; + } + + // loop through multiplets and add missing correlations; + LinkedListIterator corr_list(str->correlations); + for (int clus_list=0; clus_list corr(*corr_list); + LinkedListIterator clus(pclusters(clus_list)->get_cluster_list()); + LinkedListIterator equiv_clus(*equiv_cluster(clus_list)); + int idx=0; + // go to the end of the corr. list; + while (corr) {corr++; clus++; equiv_clus++; idx++;}\ + // and then add the missing corr.; + for ( ; idxget_current_index(); clus++, equiv_clus++, idx++) { + (*corr_list) << new Real(calc_correlation(*str,*equiv_clus,spacegroup.cell)); + } + } + + // create predictor objects, if needed; + if (str->predictor.get_size()==0) { + make_plug_in_list(&(str->predictor),predictor_labels); + } +} + +void ClusterExpansion::update_correlations(StructureInfo::Status select) { + reset_structure(); + // for each structure that maches the select mask, update correlations.; + LinkedListIterator str(structures.get_structure_list()); + for ( ; str; str++) { + if (str->status & select) update_correlations(str); + } +} + +void ClusterExpansion::init_predictors(void) { + LinkedList l; + make_plug_in_list(&l,predictor_labels); + LinkedListIterator i(l); + for (; i; i++) { + i->static_init(*this); + } +} + +void ClusterExpansion::calc_point_to_concentration(Array *multiplicity, int nb_cols) { + // figure out the weight to give to each point corr to get the concentration; + LinkedListIterator i(pclusters(0)->get_cluster_list()); + // figure out the weight to give to each point corr to get the concentration; + multiplicity->resize(nb_cols); + zero_array(multiplicity); + for (int j=1; i; i++,j++) { + (*multiplicity)(j)=(Real)calc_multiplicity(*i,lattice_only.cell,spacegroup.point_op,spacegroup.trans)/ + (Real)lattice_only.atom_pos.get_size(); + } +} + +void ClusterExpansion::calc_concentration(Array *pconcentration, const Array2d &corr_matrix) { + // figure out the weight to give to each point corr to get the concentration; + Array multiplicity; + calc_point_to_concentration(&multiplicity,corr_matrix.get_size()(1)); + product(pconcentration,corr_matrix,multiplicity); +} + +void ClusterExpansion::calc_regression_matrices(Array2d *pcorr_matrix, Array *penergy, + StructureInfo::Status select) { + // update all selected structures; + update_correlations(select); + // first count the number of structures selected and resize relevant arrays; + int nb_str=0; + LinkedListIterator str(structures.get_structure_list()); + for (; str; str++) { + if (str->status & select) nb_str++; + } + pcorr_matrix->resize(iVector2d(nb_str,nb_clusters)); + if (penergy) {penergy->resize(nb_str);} + + // loop through structures; + int i_str=0; + str.init(structures.get_structure_list()); + for (; str; str++) { + if (str->status & select) { //if structure matches mask; + if (penergy) {(*penergy)(i_str)=str->energy;} // copy energy; + // copy correlations; + (*pcorr_matrix)(i_str,0)=1.; + int i_corr=1; + LinkedListIterator corr_list(str->correlations); + for (int clus_list=0; corr_list; corr_list++, clus_list++) { + LinkedListIterator corr(*corr_list); + for (int i=0; iget_current_index(); i++) { + (*pcorr_matrix)(i_str,i_corr)=*corr; + corr++; + i_corr++; + } + } + i_str++; + } + } +} + +void ClusterExpansion::calc_predictor_energy(Array *penergy, StructureInfo::Status select) { + // update all selected structures; + update_correlations(select); + // first count the number of structures selected and resize relevant arrays; + int nb_str=0; + LinkedListIterator str(structures.get_structure_list()); + for (; str; str++) { + if (str->status & select) nb_str++; + } + penergy->resize(nb_str); + + // loop through structures; + int i_str=0; + str.init(structures.get_structure_list()); + for (; str; str++) { + if (str->status & select) { //if structure matches mask; + (*penergy)(i_str)=0.; + LinkedListIterator ip(str->predictor); // loop through user-defined predictor; + for (; ip; ip++) { + (*penergy)(i_str)+=ip->get_energy(*str); + } + // cout << str->label << " " << (*penergy)(i_str) << endl; // trace info, if needed; + i_str++; + } + } +} + +void ClusterExpansion::reset_cluster_choice(void) { + // reset all cluster generators; + for (int i=1; ireset(); + } + // include minimum number of pairs (1nn); + while ( pclusters(1)->get_current_length() str(structures.get_structure_list()); + for (; str; str++) { + if (str->status==StructureInfo::calculated) nb_calculated_str++; + } + // init nb of clusters in fit; + nb_clusters=1+pclusters(0)->get_current_index()+pclusters(1)->get_current_index(); + // make sure we have enough corr; + update_correlations(StructureInfo::calculated); +} + +void ClusterExpansion::update_equivalent_clusters(void) { + // update the lists of clusters equivalent by a space group symmetry operation (to speed up the calculation of the correlations); + // first add new multiplets if needed; + if (pclusters.get_size()>equiv_cluster.get_size()) { + Array tmp; + tmp.copy(equiv_cluster); + equiv_cluster.resize(pclusters.get_size()); + int m; + for (m=0; m c(pclusters(m)->get_cluster_list()); + LinkedListIterator e(*equiv_cluster(m)); + while (e) {e++; c++;} // go to the end of the list; + for (; c; c++) { // loop through clusters; + Array *pequiv=new Array; + find_equivalent_clusters(pequiv,*c,spacegroup.cell,spacegroup.point_op,spacegroup.trans); + (*equiv_cluster(m)) << pequiv; + } + } +} + +int ClusterExpansion::find_next_cluster_choice(void) { + // add new multiplets if needed; + if (pclusters(pclusters.get_size()-1)->get_current_index()>0 && pclusters.get_size() tmp(pclusters); + pclusters.resize(tmp.get_size()+1); + for (int i=0; iget_current_index()>0) {c++;} + // B; + while (1) { + Real cur_len=pclusters(c)->get_current_length(); + while (pclusters(c)->get_current_length()get_previous_length() < pclusters(c-1)->get_previous_length()+zero_tolerance) break; // E; + // F; + nb_clusters-=pclusters(c)->get_current_index(); + pclusters(c)->reset(); + // G; + c--; + } + + // update the lists of clusters equivalent under space group symmetry operation; + update_equivalent_clusters(); + // make sure that the corresponding corr. have been calculated; + update_correlations(StructureInfo::calculated); + // are there any other cluster choices to try?; + return (nb_clusters < nb_calculated_str); +} + +void ClusterExpansion::set_cluster_choice(const Array &choice) { + // add new multiplets if needed; + if (pclusters.get_size() tmp(pclusters); + pclusters.resize(choice.get_size()); + int m; + for (m=0; mget_current_index(); // count empty and point; + // advance the index of cluster generator i to choice(i); + int i; + for (i=1; ireset(); + while (pclusters(i)->get_current_index()get_current_index(); // keep count of clusters; + } + // reset any other multiplet not given in array choice; + for (; ireset(); + } + update_equivalent_clusters(); +} + +void ClusterExpansion::get_cluster_choice(Array *pchoice) { + pchoice->resize(pclusters.get_size()); + for (int i=0; iget_size(); i++) { + (*pchoice)(i)=pclusters(i)->get_current_index(); + } +} + +void ClusterExpansion::find_best_cluster_choice(CEFitInfo *pfitinfo) { + reset_cluster_choice(); // select minimal cluster expansion; + + // setup correlation matrix, and energy and concentration vectors; + Array2d corr_matrix; + Array energy; + Array predictor_energy; + Array ce_energy; + Array concentration; + calc_regression_matrices(&corr_matrix,&energy); + if (corr_matrix.get_size()(0)<=corr_matrix.get_size()(1)) { // enough structures?; + if (pfitinfo) {pfitinfo->status=CEFitInfo::fit_impossible;} + return; + } + if (pfitinfo) {pfitinfo->status=CEFitInfo::fit_ok;} + calc_concentration(&concentration,corr_matrix); + init_predictors(); + // find ground states; + Array true_gs; + calc_convex_hull(&true_gs, concentration,energy); + // init weights (to 1); + weight.resize(concentration.get_size()); + one_array(&weight); + Array best_choice; // to remember best choice; + Array best_eci_mult; // to remember best eci (times multiplicity); + Array best_choice_noweight; // if weighting fails, save the best noweight solution; + Array best_eci_mult_noweight; // + // if a user specified choice has been given; + { + ifstream cluster_choice_file("nbclusters.in"); + if (cluster_choice_file) { + LinkedList cluster_choice; + cluster_choice << new int(pclusters(0)->get_current_index()); + cerr << "nbclusters.in file detected, using user-specified cluster choice" << endl; + while (skip_delim(cluster_choice_file)) { + int nc; + cluster_choice_file >> nc; + cluster_choice << new int(nc); + } + LinkedList_to_Array(&best_choice,cluster_choice); + } + } + if (best_choice.get_size()>0) { // if user-specified cluster choice; + calc_predictor_energy(&predictor_energy); + } + else { // if automatically determined cluster choice; + while (1) { // repeat until ground states ok; + reset_cluster_choice(); // select minimal cluster expansion; + int best_gs_ok=0; + Real best_cv=MAXFLOAT; + do { // loop through cluster choices; + //if you want to print out trace information; + for (int i=0; iget_current_index() << " "; + } + + // calc cross-validation score; + calc_regression_matrices(&corr_matrix,&energy); + calc_predictor_energy(&predictor_energy); + diff(&ce_energy,energy,predictor_energy); + Real cv=calc_cv(corr_matrix,ce_energy,weight,1); + // do regression and add back the predictor energy; + Array cur_eci_mult; + Array fitted_energy; + calc_ols(&cur_eci_mult,corr_matrix,ce_energy,weight,1); + product(&fitted_energy,corr_matrix,cur_eci_mult); + sum(&fitted_energy,fitted_energy,predictor_energy); + // check for qualitatively wrong ground states; + Array problems; + int gs_ok=!ground_state_problem(&problems, true_gs,concentration,fitted_energy,minc_gs_ok,maxc_gs_ok); + + // save best choice so far; + cerr << gs_ok << " " << cv << endl; + if ((gs_ok>best_gs_ok && cv!=MAXFLOAT) || (gs_ok==best_gs_ok && cv cur_choice; + get_cluster_choice(&cur_choice); + int i=2; + for ( ; istatus=CEFitInfo::fit_impossible;} + return; + } + // do regression and predict energies with best choice found; + set_cluster_choice(best_choice); + calc_regression_matrices(&corr_matrix,NULL); + Array fitted_energy; + product(&fitted_energy,corr_matrix,best_eci_mult); + sum(&fitted_energy,fitted_energy,predictor_energy); + // check for qualitatively wrong ground states; + Array problems; + if (!ground_state_problem(&problems, true_gs,concentration,fitted_energy,minc_gs_ok,maxc_gs_ok)) break; // no problems: exit loop; + //cerr << "GS problems" << endl; + // increase the weights of all structures that cause problem; + Real max_weight=0.; + for (int i=0; imax_weight) max_weight=weight(i); + } + if (max_weight>=16.) { // give up after too many retries; + one_array(&weight); // reset weights to one; + best_choice=best_choice_noweight; + best_eci_mult=best_eci_mult_noweight; + if (pfitinfo) {pfitinfo->status = CEFitInfo::gs_problem;} + break; + } + } + } + set_cluster_choice(best_choice); // save best choice into ClusterExpansion object; + eci_mult=best_eci_mult; // along with best eci; + + // save all the information in a CEFitInfo object; + if (pfitinfo) { + Real volume=(Real)(lattice_only.atom_pos.get_size()); + calc_regression_matrices(&corr_matrix,&energy); + + // create array of pointers to structures included in the fit; + pfitinfo->pstr.resize(energy.get_size()); + LinkedListIterator s(structures.get_structure_list()); + for (int i=0; ipstr.get_size(); s++) { + if (s->status==StructureInfo::calculated) { + pfitinfo->pstr(i)=s; + i++; + } + } + // find (or read in) the energy of the end members; + pfitinfo->pure_energy.resize(2); + pfitinfo->pure_energy(0)=MAXFLOAT; + pfitinfo->pure_energy(1)=MAXFLOAT; + { + ifstream pure_file("ref_energy.in"); + if (pure_file) { + pure_file >> pfitinfo->pure_energy(0); + pure_file >> pfitinfo->pure_energy(1); + pfitinfo->pure_energy(0)*=volume; + pfitinfo->pure_energy(1)*=volume; + } + } + // consider formation energies; + calc_formation(&energy,concentration,energy,&(pfitinfo->pure_energy(0)),&(pfitinfo->pure_energy(1))); + diff(&ce_energy,energy,predictor_energy); + // copy concentration, energy, weight, list of true ground states; + pfitinfo->concentration.copy(concentration); + pfitinfo->energy.copy(energy); + pfitinfo->weight.copy(weight); + pfitinfo->gs_list.copy(true_gs); + // volume of the largest generated structure; + pfitinfo->max_volume=structures.get_max_volume(); + + // eci (will be divided by multiplicity below); + calc_ols(&(pfitinfo->eci), corr_matrix,ce_energy,weight,1); + // predicted energies; + product(&(pfitinfo->fitted_energy), corr_matrix,pfitinfo->eci); + sum(&(pfitinfo->fitted_energy), pfitinfo->fitted_energy,predictor_energy); + // predicted ground state line (among structures whose energy is known) using fitted energy (not used later on); + calc_convex_hull(&(pfitinfo->fitted_gs_list), concentration,pfitinfo->fitted_energy); + Array problems; + if (ground_state_problem(&problems, pfitinfo->fitted_gs_list,concentration,pfitinfo->fitted_energy,minc_gs_ok,maxc_gs_ok)) { + pfitinfo->status = CEFitInfo::gs_problem; + } + + // cv score; + pfitinfo->cv=calc_cv(corr_matrix,ce_energy,empty_rArray,1)/volume; + // concentration range where gs must be ok; + pfitinfo->minc_gs_ok=minc_gs_ok; + pfitinfo->maxc_gs_ok=maxc_gs_ok; + + // done with fitting, we can express energies per atom; + for (int i=0; ienergy.get_size(); i++) { + pfitinfo->energy(i)/=volume; + pfitinfo->fitted_energy(i)/=volume; + } + pfitinfo->pure_energy(0)/=volume; + pfitinfo->pure_energy(1)/=volume; + { + // write out reference energies of pure end members + ofstream pure_file("ref_energy.out"); + pure_file << pfitinfo->pure_energy(0) << endl; + pure_file << pfitinfo->pure_energy(1) << endl; + } + + // look for predicted ground states among all generated structures; + // of unknown energies; + { + // construct ground state line by joining the fitted energies of the + // true ground states; + Array gs_fitted_energy; + Array gs_concentration; + convex_hull_from_gs(&gs_concentration,&gs_fitted_energy, pfitinfo->gs_list,concentration,pfitinfo->fitted_energy); + + // predict energies of all generated structures of unknown energy; + Array2d all_corr; + Array all_fitted_energy; + Array all_predictor_energy; + calc_regression_matrices(&all_corr,NULL, (StructureInfo::Status) (StructureInfo::unknown | StructureInfo::busy | StructureInfo::error)); + calc_predictor_energy(&all_predictor_energy, (StructureInfo::Status) (StructureInfo::unknown | StructureInfo::busy | StructureInfo::error)); + product(&all_fitted_energy, all_corr,pfitinfo->eci); + sum(&all_fitted_energy, all_fitted_energy,all_predictor_energy); + product(&all_fitted_energy, all_fitted_energy,1./volume); + // find concentration of all generated structures; + Array all_concentration; + calc_concentration(&all_concentration,all_corr); + // check for structures breaking the hull; + Array problem; + if (ground_state_problem(&problem, gs_concentration,gs_fitted_energy,all_concentration,all_fitted_energy,minc_gs_ok,maxc_gs_ok)) { + pfitinfo->status = (CEFitInfo::Status)(pfitinfo->status | CEFitInfo::new_gs); + } + // output all conc. and energy of all generated structures of unknown energy; + { + LinkedListIterator s(structures.get_structure_list()); + ofstream allstr("predstr.out"); + allstr.setf(ios::fixed); + allstr.precision(6); + for (int i=0; istatus & (StructureInfo::Status) (StructureInfo::unknown | StructureInfo::busy | StructureInfo::error))) {s++;} + const char *slabel=s->label; + Real c=(1.+all_concentration(i))/2.; + Real form_e=s->energy/volume-(1-c)*pfitinfo->pure_energy(0)-c*pfitinfo->pure_energy(1); + allstr << c << " " << (s->energy==0 ? 0 : form_e) << " " << all_fitted_energy(i) << " " + << (s->status & StructureInfo::unknown ? "?" : slabel) << " " + << (s->status & StructureInfo::busy ? "b" : "") + << (s->status & StructureInfo::error ? "e" : "") + << (s->status & StructureInfo::unknown ? "u" : "") + << (problem(i) ? "g" : "") + << endl; + s++; + } + } + } + // save clusters and their multiplicity; + pfitinfo->cluster.resize(nb_clusters); + pfitinfo->multiplicity.resize(nb_clusters); + pfitinfo->multiplicity(0)=1.; + pfitinfo->cluster(0).resize(0); + int c=1; + for (int m=0; mreset(); + for (int i=0; icluster(c).copy((*pclusters(m))); + pfitinfo->multiplicity(c)=(Real)calc_multiplicity(pfitinfo->cluster(c),parent_lattice.cell,spacegroup.point_op,spacegroup.trans); + pfitinfo->eci(c)/=pfitinfo->multiplicity(c); + } + } + } +} + +void ClusterExpansion::make_correlation_array(Array *array_corr, const LinkedList &list_corr) { + array_corr->resize(nb_clusters); + (*array_corr)(0)=1.; + int dest=1; + // loop through each multiplet + LinkedListIterator lc(list_corr); + for (int i=0; i src(*lc); + for (int c=0; cget_current_index(); c++, dest++, src++) { + (*array_corr)(dest)=*src; + } + } +} + +void ClusterExpansion::reset_structure(void) { + LinkedListIterator i(label_list); + while (i) delete label_list.detach(i); + LinkedListIterator j(structures.get_structure_list()); + for ( ; j; j++) { + int index=-1; + istrstream tmp((const char *)(j->label)); + tmp >> index; + if (index!=-1) { + LinkedListIterator i(label_list); + for ( ; i; i++) { + if (*i>index) break; + } + label_list.add(new int(index),i); + } + } + i_label_list.init(label_list); + cur_label=0; + structures.reset(); + update_correlations(&(structures.get_current_structure())); +} + +void ClusterExpansion::find_next_structure(void) { + structures++; + update_correlations(&(structures.get_current_structure())); +} + +void ClusterExpansion::set_predictor_labels(const char *labels) { + predictor_labels=labels; + update_correlations(StructureInfo::anystatus); +} + +StructureInfo * ClusterExpansion::find_best_structure(void) { + // do the fit; + Array2d raw_corr,corr; + Array energy; + Array ce_energy; + Array predictor_energy; + Array eci; + Array fitted_energy; + calc_regression_matrices(&raw_corr,&energy); + calc_predictor_energy(&predictor_energy); + diff(&ce_energy,energy,predictor_energy); + Array cols; + list_nonredundant_columns(&cols,raw_corr); + extract_columns(&corr,raw_corr,cols); + + if (corr.get_size()(1)<3 || corr.get_size()(0) concentration; + calc_concentration(&concentration,raw_corr); + Array true_gs; + Array gs_fitted_energy; + Array gs_concentration; + calc_convex_hull(&true_gs, concentration,energy); + convex_hull_from_gs(&gs_concentration,&gs_fitted_energy, true_gs,concentration,fitted_energy); + + // predict all unknown energies; + Array2d raw_un_corr,un_corr; + Array un_fitted_energy; + Array un_predictor_energy; + calc_regression_matrices(&raw_un_corr,NULL, StructureInfo::unknown); + calc_predictor_energy(&un_predictor_energy, StructureInfo::unknown); + extract_columns(&un_corr,raw_un_corr,cols); + + product(&un_fitted_energy, un_corr,eci); + sum(&un_fitted_energy, un_fitted_energy,un_predictor_energy); + // and concentrations; + Array un_concentration; + calc_concentration(&un_concentration,raw_un_corr); + + // are there ground state problems?; + Array problem; // will contain 1's for structures which break the hull; + if (ground_state_problem(&problem, gs_concentration,gs_fitted_energy,un_concentration,un_fitted_energy,minc_gs_ok,maxc_gs_ok)) { + // if there are new predicted ground state, look among them for the structure that give the greatest var reduction; + Array2d rhorho; + // treat all structures as equally important; + set_identity(&rhorho,corr.get_size()(1)); + + Array new_gs; + calc_convex_hull(&new_gs,un_concentration,un_fitted_energy); + for (int i=0; i w_x,ww_x; + product_diag(&w_x, weight,corr); + product_diag(&ww_x, weight,w_x); + Array2d xw2x,xw4x; + inner_product(&xw2x, w_x,w_x); + inner_product(&xw4x, ww_x,ww_x); + Array2d xw2xi; + invert_matrix(&xw2xi, xw2x); + // compute variance before adding a new structure; + Real var_before; + { + Array2d tmp,var_eci; + product(&tmp, xw4x,xw2xi); + product(&var_eci, xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var_before=trace(tmp); + } + + // save best structure; + StructureInfo *p_best_str=NULL; + Real max_benefit=0.; // benefit is variance reduction over computational cost; + reset_structure(); + // loop over predicted ground states whose true energy is unknown; + for (int istr=0; istr raw_cur_rho,cur_rho; + make_correlation_array(&raw_cur_rho, structures.get_current_structure().correlations); + extract_elements(&cur_rho,raw_cur_rho,cols); + Array2d cur_rhorho; + outer_product(&cur_rhorho, cur_rho,cur_rho); + Array2d cur_xw2x,cur_xw2xi,cur_xw4x; + sum(&cur_xw2x, xw2x,cur_rhorho); + sum(&cur_xw4x, xw4x,cur_rhorho); + invert_matrix(&cur_xw2xi, cur_xw2x); + Array2d tmp,var_eci; + product(&tmp, cur_xw4x,cur_xw2xi); + product(&var_eci, cur_xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var=trace(tmp); + } + // calculate benefit of adding structure; + Real benefit=(var_before-var)/structures.get_current_structure().cost; + // save structure if it is the best so far; + if (benefit>max_benefit) { + max_benefit=benefit; + p_best_str=&structures.get_current_structure(); + } + } + if (istr rhorho; + // treat all structures as equally important; + set_identity(&rhorho,corr.get_size()(1)); + + // compute the matrices that enter the expression + // of the covariance matrix of the ECI; + Array2d w_x,ww_x; + product_diag(&w_x, weight,corr); + product_diag(&ww_x, weight,w_x); + Array2d xw2x,xw4x; + inner_product(&xw2x, w_x,w_x); + inner_product(&xw4x, ww_x,ww_x); + Array2d xw2xi; + invert_matrix(&xw2xi, xw2x); + + // compute best possible correlation to add; + Array best_dir(corr.get_size()(1)); + { + // best_dir is the eigenvector associated with the smallest eigenvalue of xw2x; + // find by iterating u=inverse(xw2x)*v; v=u/|u|; + zero_array(&best_dir); + best_dir(best_dir.get_size()-1)=1.; // initial guess; + Array old_dir; + Array d_dir; + do { // iterate; + old_dir.copy(best_dir); + Array tmp; + product(&tmp, xw2xi,best_dir); + product(&best_dir, tmp, 1./sqrt(inner_product(tmp,tmp))); + diff(&d_dir ,best_dir,old_dir); + } while (inner_product(d_dir,d_dir)>1e-4); // until tolerance met; + // normalize so that largest correlation has modulus 1; + Real m=MAX(fabs(max(best_dir)),fabs(min(best_dir))); + product(&best_dir,best_dir,1./m); + } + + // compute variance before adding a new structure; + Real var_before; + { + Array2d tmp,var_eci; + product(&tmp, xw4x,xw2xi); + product(&var_eci, xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var_before=trace(tmp); + } + + // compute variance after the best possible correlation has been added; + Real var; + { + Array2d cur_rhorho; + outer_product(&cur_rhorho, best_dir, best_dir); + Array2d cur_xw2x,cur_xw2xi,cur_xw4x; + sum(&cur_xw2x, xw2x,cur_rhorho); + sum(&cur_xw4x, xw4x,cur_rhorho); + invert_matrix(&cur_xw2xi, cur_xw2x); + Array2d tmp,var_eci; + product(&tmp, cur_xw4x,cur_xw2xi); + product(&var_eci, cur_xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var=trace(tmp); + } + + // now we have the maximum possible variance reduction due to adding a structure; + Real max_possible_dvar=var_before-var; + + // save best structure; + StructureInfo *p_best_str=NULL; + Real max_benefit=0.; // benefit is variance reduction over computational cost; + reset_structure(); + // loop over unknown structures; + while (1) { + if (structures.get_current_structure().status==StructureInfo::unknown) { + // stop search when current computational cost is so high that even if; + // the maximum variance reduction is achieved the benefits are lower; + // than what we already have; + if (max_possible_dvar/structures.get_current_structure().cost < max_benefit || structures.get_current_structure().atom_pos.get_size()>user_max_vol) break; + // calculate variance after the current structure has been added to the fit; + Real var; + Real cur_concentration; + { + Array raw_cur_rho,cur_rho; + make_correlation_array(&raw_cur_rho, structures.get_current_structure().correlations); + Array point_multiplicity; + calc_point_to_concentration(&point_multiplicity, raw_cur_rho.get_size()); + cur_concentration=inner_product(raw_cur_rho,point_multiplicity); + extract_elements(&cur_rho,raw_cur_rho,cols); + Array2d cur_rhorho; + outer_product(&cur_rhorho, cur_rho,cur_rho); + Array2d cur_xw2x,cur_xw2xi,cur_xw4x; + sum(&cur_xw2x, xw2x,cur_rhorho); + sum(&cur_xw4x, xw4x,cur_rhorho); + invert_matrix(&cur_xw2xi, cur_xw2x); + Array2d tmp,var_eci; + product(&tmp, cur_xw4x,cur_xw2xi); + product(&var_eci, cur_xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var=trace(tmp); + } + // calculate benefit of adding structure; + Real benefit=(var_before-var)/structures.get_current_structure().cost; + // save structure if it is the best so far; + if (benefit>max_benefit && + cur_concentration>=minc_gs_ok-zero_tolerance && + cur_concentration<=maxc_gs_ok+zero_tolerance) { + max_benefit=benefit; + p_best_str=&structures.get_current_structure(); + } + } + find_next_structure(); + } // loop to next structure; + return p_best_str; + } +} + +StructureInfo * ClusterExpansion::find_initial_structures(void) { + // find the space spanned by the correlations of existing structures; + // basis contains the result; + reset_cluster_choice(); + update_correlations(StructureInfo::anystatus); + LinkedListIterator i(structures.get_structure_list()); + Array basis; + int nb_in_basis=0; + for (;i; i++) { + if (i->status & (StructureInfo::calculated | StructureInfo::busy)) { + Array cur_corr; + make_correlation_array(&cur_corr,i->correlations); + build_basis(&basis,&nb_in_basis,cur_corr); + } + } + // if there are enough structures to fit the minimal cluster expansion, quit; + if (nb_in_basis==nb_clusters) return NULL; + + // loop through unknown structures in search of a non-coplanar correlation; + reset_structure(); + while (1) { + if (structures.get_current_structure().status==StructureInfo::unknown) { + Array cur_corr; + make_correlation_array(&cur_corr,structures.get_current_structure().correlations); + Array point_multiplicity; + calc_point_to_concentration(&point_multiplicity, cur_corr.get_size()); + Real c=inner_product(cur_corr,point_multiplicity); + if (c>=minc_gs_ok && c<=maxc_gs_ok) { + // if correlation vector is not coplanar to the basis, we're done; + if (build_basis(&basis,&nb_in_basis,cur_corr)) break; + } + } + find_next_structure(); + } + return &(structures.get_current_structure()); +} + +StructureInfo * ClusterExpansion::find_first_unknown_structure(void) { + reset_structure(); + while (1) { + while (structures.get_current_structure().status!=StructureInfo::unknown) { + find_next_structure(); + } + Array cur_corr; + make_correlation_array(&cur_corr,structures.get_current_structure().correlations); + Array point_multiplicity; + calc_point_to_concentration(&point_multiplicity, cur_corr.get_size()); + Real c=inner_product(cur_corr,point_multiplicity); + if (c>=minc_gs_ok && c<=maxc_gs_ok) break; + find_next_structure(); + } + return &(structures.get_current_structure()); +} diff --git a/src/refine.hh b/src/refine.hh new file mode 100644 index 0000000..76a1be5 --- /dev/null +++ b/src/refine.hh @@ -0,0 +1,214 @@ +#ifndef _RAFFINE_H_ +#define _RAFFINE_H_ + +#include "clus_str.h" +#include "linalg.h" +#include "gstate.h" +#include "lstsqr.h" +#include "plugin.h" + +typedef LinkedList LinkedListReal; + +class StructureInfo; +class ClusterExpansion; + +class EnergyPredictor { + public: + EnergyPredictor(void) {} + virtual void static_init(const ClusterExpansion &ce) {} + virtual Real get_energy(const StructureInfo &str) {return 0.;} +}; + +class StructureInfo: public Structure { + public: + enum Status {unknown=1,calculated=2,busy=4,error=8,anystatus=15}; + Real energy; + Status status; + Real cost; + AutoString label; + LinkedList predictor; + LinkedList correlations; + StructureInfo(void): Structure(), + label(), correlations(), predictor() + { + energy=0.; + status=unknown; + cost=0.; + } + StructureInfo(const Structure &str): Structure(str), + label(), correlations(), predictor() + { + energy=0.; + status=unknown; + cost=0.; + } +}; + +Real calc_structure_cost(const Structure &str, const rMatrix3d &cell, const Array &point_op, const Array &trans, Real complexity_exp); + +typedef LinkedList LinkedListArrayCluster; + +// Describes the status of a cluster expansion fit; +class CEFitInfo { + public: + enum Status {fit_ok=0, fit_impossible=1, gs_problem=2, new_gs=4}; + // Respectively means: + // no problem; + // no enough data to fit; + // predicted ground states do not agree with currently known ground states; + // new ground states (whose exact energy is not known yet) have been predicted; + Status status; + Array pstr; // Pointers to structures included in the fit; + Array pure_energy; // Energies of the end members (e.g. pure elements); + Array concentration; // Concentrations \; + Array fitted_energy; // Predicted energies | of the str used in the fit; + Array energy; // True energies /; + + Real minc_gs_ok; // concentration range where gs much be correct; + Real maxc_gs_ok; + + Array weight; // weights needed to get the right GS line; + Real cv; // crossvalidation score (when weights turned off); + Array gs_list; // indices (into any of the 4 previous arrays) of the true ground states + Array fitted_gs_list; // indices (...) of the predicted ground states; + int max_volume; // largest volume considered when looking for new ground states; + Array cluster; // clusters used in the optimal fit; + Array multiplicity; // corresponding multiplicities; + Array eci; // corresponding ECI; +}; + +class ClusterExpansion { + protected: + SpaceGroup spacegroup; // see findsym.h; + StructureBank structures; // structure generation object \ see clus_str.h; + Array pclusters; // cluster generation object /; + // *(pclusters(0)): points, *(pclusters(1)): pairs, etc.; + Array equiv_cluster; // image of each cluster by all elements of the factor group; + Array weight; // weights used in the optimal fit; + Array eci_mult; // fitted ECI (times multiplicity); + Structure parent_lattice; // the lattice; + Structure lattice_only; // the lattice, with fixed atoms removed; + Array site_type_list; // as read by parse_lattice_file; + Array atom_label; // as read by parse_lattice_file; + int nb_calculated_str; // number of calculated structures; + int nb_clusters; // number of clusters used in the fit; + Real radius_1nn; // radius of the nearest neighbor shell; + Real minc_gs_ok; // concentration range where gs much be correct; + Real maxc_gs_ok; + int user_max_vol; + LinkedList label_list; + LinkedListIterator i_label_list; + int cur_label; + const char *predictor_labels; + public: + int max_multiplet; // maximum number of points in cluster (can be increased later on); + Real complexity_exp; + ClusterExpansion(const Structure &_parent_lattice, + const Array &_site_type_list, + const Array &_atom_label, + const SpaceGroup &_spacegroup); + ~ClusterExpansion(void); + + // Low-level functions; + // update corr. of one structure; + void update_correlations(StructureInfo *str); + // update corr. of all structures of a given status (multiple statuses can be or-ed together); + void update_correlations(StructureInfo::Status select); + // update list of equivalent clusters; + void update_equivalent_clusters(void); + // initialize the static members of the user-specified energy predictors; + void init_predictors(void); + // calculate the matrix that maps point correlation into concentrations; + void calc_point_to_concentration(Array *multiplicity, int nb_cols); + // calculate concentration from correlation matrix; + void calc_concentration(Array *pconcentration, const Array2d &corr_matrix); + // create a matrix of corr. and a vector of energies for structures maching a given status; + void calc_regression_matrices( Array2d *pcorr_matrix, Array *penergy, StructureInfo::Status select=StructureInfo::calculated); + // create a vector of predicted energies (using the user-specified predictor objects) for structures maching a given status; + void calc_predictor_energy( Array *penergy, StructureInfo::Status select=StructureInfo::calculated); + // restart from minimal cluster expansion (only 1nn pairs); + void reset_cluster_choice(void); + // iterate to the next choice of clusters; + int find_next_cluster_choice(void); + // select a given choice of clusters: choice(1) gives the nunber of pairs, choice(2) gives the number of triplets, etc.; + void set_cluster_choice(const Array &choice); + // opposite of the above; + void get_cluster_choice(Array *pchoice); + // make an array of correlations from the list of corr. stored in a StructureInfo object; + void make_correlation_array(Array *array_corr, const LinkedList &list_corr); + // restart from first structure; + void reset_structure(void); + // iterate to the next structure; + void find_next_structure(void); + + // High-level functions; + // Set the concentration range where the ground states must be right; + void set_concentration_range_gs_ok(Real minc, Real maxc) { + minc_gs_ok=minc; + maxc_gs_ok=maxc; + } + // select predictors; + void set_predictor_labels(const char *labels); + void set_maximum_volume_allowed(int _user_max_vol) {user_max_vol=_user_max_vol;}; + + // the following 4 routines can be overridden in derived class to enable new fitting algorithms; + + // Main routine calling the cluster enumeration and crossvalidation routines; + // Initialize *pfitinfo with results (see class CEFitInfo above); + virtual void find_best_cluster_choice(CEFitInfo *pfitinfo); + // Main routine calling the structure enumeration routines and the variance calculation codes.; + // Return pointer to structure found (or NULL upon failure); + virtual StructureInfo * find_best_structure(void); + // Finds the first few structures needed to initiate the refinement process.; + // Return pointer to structure found (or NULL upon failure); + virtual StructureInfo * find_initial_structures(void); + // Returns the least computationally intensive structure still marked as unknown. + // Return pointer to structure (never NULL); + virtual StructureInfo * find_first_unknown_structure(void); + + // various functions to access private members; + const Structure & get_lattice(void) const { + return parent_lattice; + } + const Structure & get_lattice_only(void) const { + return lattice_only; + } + const Array & get_site_type_list(void) const { + return site_type_list; + } + const Array & get_atom_label(void) const { + return atom_label; + } + const LinkedList & get_structure_list(void) { + return structures.get_structure_list(); + } + LinkedList & access_structure_list(void) { + return structures.get_structure_list(); + } + StructureBank & access_structure_bank(void) { + return structures; + } + const LinkedList & get_cluster_list(int ntuple) const { + return pclusters(ntuple)->get_cluster_list(); + } +}; + +// Setup plugins to allow for alternate cluster expansion algorithms; + +class ClusterExpansionCreator { // for the default algorithm; + public: + virtual ClusterExpansion* create(const Structure &_parent_lattice, const Array &_site_type_list, const Array &_atom_label, const SpaceGroup &_spacegroup) { + return new ClusterExpansion(_parent_lattice,_site_type_list,_atom_label,_spacegroup); + } +}; + +template +class CustomClusterExpansionCreator: public ClusterExpansionCreator { // for alternate algorithm; + virtual ClusterExpansion* create(const Structure &_parent_lattice, const Array &_site_type_list, const Array &_atom_label, const SpaceGroup &_spacegroup) { + return new T(_parent_lattice,_site_type_list,_atom_label,_spacegroup); + } +}; + +// end setting up plugins; + +#endif diff --git a/src/ridge.c++ b/src/ridge.c++ new file mode 100644 index 0000000..feab45b --- /dev/null +++ b/src/ridge.c++ @@ -0,0 +1,143 @@ +#include "ridge.h" +#include "arraylist.h" +#include "lstsqr.h" + +int list_nonredundant_columns_regul(Array *which_col, const Array2d &x, const Array &r) { + int nb_in_basis=0; + Array basis; + LinkedList cols; + for (int i=0; i cur_col; + extract_column(&cur_col,x,i); + if (build_basis(&basis, &nb_in_basis, cur_col)) { + cols << new int(i); + /* + int j; + for (j=0; jzero_tolerance) nb_diff++; + } + if (nb_diff<=1) break; + } + if (j==i) { + cols << new int(i); + } + */ + } + } + } + LinkedList_to_Array(which_col,cols); + return (which_col->get_size()==x.get_size()(1)); +} + +void calc_ols_regul(Array *pb, const Array2d &x, const Array &y, const Array &r) { + Array2d xx_i; + inner_product(&xx_i, x,x); + for (int j=0; j xy; + inner_product(&xy, x,y); + product(pb,xx_i,xy); +} + +void calc_ols_regul(Array *pb, const Array2d &x, const Array &y, const Array &weight, int nonredundant, const Array &r) { + const Array2d *px=&x; + const Array *py=&y; + const Array *pr=&r; + Array2d wx,nr_x; + Array nr_r; + Array wy; + if (weight.get_size()!=0) { + product_diag(&wx,weight,*px); + product_diag(&wy,weight,*py); + px=&wx; + py=&wy; + } + if (nonredundant) { + Array cols; + list_nonredundant_columns_regul(&cols,*px,r); + extract_columns(&nr_x,*px,cols); + px=&nr_x; + extract_elements(&nr_r,*pr,cols); + pr=&nr_r; + Array b; + calc_ols_regul(&b,*px,*py,*pr); + pb->resize(x.get_size()(1)); + zero_array(pb); + for (int i=0; i &x, const Array &y, const Array ®) { + int n=x.get_size()(0); + int r=x.get_size()(1); + Array2d xx_i; + inner_product(&xx_i, x,x); + for (int i=0; i xy; + inner_product(&xy, x,y); + Array b; + product(&b,xx_i,xy); + Array y_hat; + product(&y_hat,x,b); + Real cv=0.; + for (int i=0; i &x, const Array &y, const Array &weight, int nonredundant, const Array &r) { + const Array2d *px=&x; + const Array *py=&y; + const Array *pr=&r; + Array2d wx,nr_x; + Array nr_r; + Array wy; + if (weight.get_size()!=0) { + product_diag(&wx,weight,*px); + product_diag(&wy,weight,*py); + px=&wx; + py=&wy; + } + if (nonredundant) { + Array cols; + list_nonredundant_columns_regul(&cols,*px,r); + extract_columns(&nr_x,*px,cols); + px=&nr_x; + extract_elements(&nr_r,*pr,cols); + pr=&nr_r; + } + return calc_cv_regul(*px,*py,*pr); +} + +void predict_ols_regul(Array *p_yhat, const Array2d &x, const Array &y, const Array &weight, int nonredundant, const Array &r) { + Array b; + calc_ols_regul(&b,x,y,weight,nonredundant,r); + product(p_yhat, x,b); +} + diff --git a/src/ridge.hh b/src/ridge.hh new file mode 100644 index 0000000..b85d10d --- /dev/null +++ b/src/ridge.hh @@ -0,0 +1,9 @@ +#include "array.h" + +int list_nonredundant_columns_regul(Array *which_col, const Array2d &x, const Array &r); +void calc_ols_regul(Array *pb, const Array2d &x, const Array &y, const Array &r); +void calc_ols_regul(Array *pb, const Array2d &x, const Array &y, const Array &weight, int nonredundant, const Array &r); +Real calc_cv_regul(const Array2d &x, const Array &y, const Array ®); +Real calc_cv_regul(const Array2d &x, const Array &y, const Array &weight, int nonredundant, const Array &r); +void predict_ols_regul(Array *p_yhat, const Array2d &x, const Array &y, const Array &weight, int nonredundant, const Array &r); + diff --git a/src/seebeck.c++ b/src/seebeck.c++ new file mode 100644 index 0000000..cc72c4e --- /dev/null +++ b/src/seebeck.c++ @@ -0,0 +1,174 @@ +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include "lstsqr.h" +#include "xtalutil.h" + +class KBand { +public: + KBand(void): k(), band(), v() {} + KBand(const rVector3d &_k, const Array &_band): k(_k), band(_band), v() {} + rVector3d k; + Array band; + Array v; +}; + +int main(int argc, char *argv[]) { + char *delim="\t"; + int dohelp=0; + char *strfilename="str.out"; + char *bandfilename="bands.out"; + int sigdig=5; + Real kr=0.5; + int nosym=0; + Real fermi=0; + Real T=0.; + Real Emin=0.; + Real Emax=0.; + Real dE=0.; + AskStruct options[]={ + {"","Seebeck coefficient calculator" MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + // {"-h","Display more help",BOOLVAL,&dohelp}, + {"-s","Input file defining the structure (default: str.out)",STRINGVAL,&strfilename}, + {"-bf","Input file defining the band structure (default: bands.out)",STRINGVAL,&bandfilename}, + // {"-ns","Turn off symmetry",BOOLVAL,&nosym}, + {"-z","Tolerance for finding symmetry operations (default: 1e-3)",REALVAL,&zero_tolerance}, + {"-kr","K-space radius",REALVAL,&kr}, + // {"-ef","Fermi energy",REALVAL,&fermi}, + // {"-T","Temperature",REALVAL,&T}, + {"-E1","Energy min",REALVAL,&Emin}, + {"-E2","Energy max",REALVAL,&Emax}, + {"-dE","Energy step",REALVAL,&dE}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + ofstream logfile("seebeck.out"); + logfile.setf(ios::fixed); + logfile.precision(sigdig); + cout.setf(ios::fixed); + cout.precision(sigdig); + + Structure str; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream strfile(strfilename); + if (!strfile) ERRORQUIT("Unable to open structure file"); + parse_lattice_file(&str.cell, &str.atom_pos, &str.atom_type, &labellookup, &label, strfile, &axes); + } + SpaceGroup spacegroup; + spacegroup.cell=str.cell; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,str.cell,str.atom_pos,str.atom_type); + rMatrix3d rec_lat=2.*M_PI*!(~str.cell); + rMatrix3d inv_rec_lat=!rec_lat; + + int nb_bands=0; + ifstream bandfile(bandfilename); + if (!bandfile) ERRORQUIT("Unable to open band file"); + bandfile >> nb_bands; + LinkedList E_list; + while (1) { + KBand Eonek; + bandfile >> Eonek.k; + if (bandfile.eof()) break; + Eonek.k=flip_into_brillouin_1(rec_lat*Eonek.k,rec_lat); + Eonek.band.resize(nb_bands); + for (int b=0; b> Eonek.band(b); + } + for (int op=0; op i(E_list); + for (; i; i++) { + if (cylinder_norm(inv_rec_lat*(Eonek2.k-(i->k))) i(E_list); + for (; i; i++) { + LinkedList local_E_list; + LinkedListIterator j(E_list); + for (; j; j++) { + MultiDimIterator img(vmin,vmax); + for (; img; img++) { + rVector3d k=j->k+rec_lat*(rVector3d &)img; + if (norm(k-i->k)band); + } + } + } + + cerr << i->k << endl; + i->v.resize(nb_bands); + for (int b=0; b x(nb_nei,3); + Array y(nb_nei); + LinkedListIterator j(local_E_list); + for (int n=0; j; j++, n++) { + y(n)=(j->band(b)) - (i->band(b)); + for (int d=0; d<3; d++) { + x(n,d)=(j->k(d)) - (i->k(d)); + } + } + cerr << x << endl; + Array der; + calc_ols(&der,x,y); + { + Array resid,yhat; + predict_ols(&yhat,x,y); + diff(&resid,y,yhat); + Real nsigma2=inner_product(resid,resid); + Real R2=inner_product(yhat,yhat)/inner_product(y,y); + Real cv=calc_cv(x,y); + cerr << "band= " << b << " n= " << nb_nei << " R2= " << R2 << " cv= " << cv << " mse= " << sqrt(nsigma2/(Real)(y.get_size())) << endl; + } + for (int d=0; d<3; d++) { i->v(b)(d)=der(d); } + } + } + + int nE=(int)((Emax-Emin)/dE); + Array sigma(nE); + Array trsigma(nE); + Array vel(nE); + Array dos(nE); + for (int n=0; nband(b)-Emin)/dE); + if (n>=0 && nv(b)); + for (int d1=0; d1<3; d1++) { + for (int d2=0; d2<3; d2++) { + sigma(n)(d1,d2)+=i->v(b)(d1)*i->v(b)(d2); + dos(n)+=1.; + } + } + } + } + } + for (int n=0; n +#include "getvalue.h" +#include "version.h" +#include "integer.h" +#include "linalg.h" +#include "meshutil.h" + +template +ostream& operator << (ostream &s, const LinkedList &a) { + s << a.get_size() << endl; + LinkedListIterator i(a); + for (; i; i++) { + s << *i << endl; + } + return s; +} + +void debug_mesh(const LinkedList > & polylist, const Array > &pts) { + ofstream file("mesh.out"); + LinkedListIterator > it(polylist); + for (;it; it++) { + ofstream last("lastpoly.out"); + for (int i=0; iget_size(); i++) { + for (int ii=0; ii *pperp, const Array > & v) { + int dim=v(0).get_size(); + pperp->resize(dim); + Array2d B(dim,dim),iB; + for (int i=0; i *pcenter, Real *pradius2, const Array > &pts) { + int dim=pts(0).get_size(); + int nbpts=pts.get_size(); + Array2d A(dim,dim); + Array v(dim); + for (int i=0; i delta; + diff(&delta,pts(i+1),pts(i)); + set_row(&A,delta,i); + v(i)=(norm2(pts(i+1))-norm2(pts(i)))/2.; + } + if (nbpts B,iB; + Array u(dim); + B=A; + for (int i=0; i r; + diff(&r,pts(0),*pcenter); + *pradius2=norm2(r); + return 1; +} + +class SideFlag { +public: + int done; + Array ipts; + Array forward; + SideFlag(void): done(0),ipts(0),forward(0) {} + SideFlag(int _done, const Array& _ipts): done(_done),ipts(_ipts),forward(0) {} +}; + +void debug_side(const LinkedList & edgelist, const Array > &pts) { + ofstream file("normal.out"); + ofstream filedone("done.out"); + LinkedListIterator it(edgelist); + for (; it; it++) { + Array center; + center=pts(it->ipts(0)); + for (int i=1; iipts.get_size(); i++) { + sum(¢er,center,pts(it->ipts(i))); + } + product(¢er,center,1./(Real)(it->ipts.get_size())); + for (int j=0; jdone << endl; + if (it->forward.get_size()!=0) { + Array endarrow; + sum(&endarrow,center,it->forward); + for (int j=0; j +class OrderBy_r { + public: + int operator () (const T& a, const T& b) const { + return (a.r > &pts; + Array center; + Array distindex; + int curindex; +public: + PointFromCenterIterator(const Array > &_pts, const Array &_center): pts(_pts), center(_center), distindex(_pts.get_size()), curindex(0) { + for (int i=0; i d; + diff(&d,pts(i),center); + distindex(i).r=norm(d); + distindex(i).i=i; + } + sort_array(&distindex,OrderBy_r()); + } + void init(void) {curindex=0;} + operator void * () {return (void *)(curindex > &pts, Real maxr=MAXFLOAT) { + Array midside(pts(side.ipts(0))); + for (int i=1; i > polytope(side.ipts.get_size()+1); + for (int i=0; i" << sqrt(radius2) << endl; + if (norm2(delta) *pforward, const Array &sideipts, int ptipts, const Array > &pts) { + int dim=pts(0).get_size(); + Array > edge(dim-1); + for (int j=0; j testv(dim); + diff(&testv,pts(ptipts),pts(sideipts(0))); + if (inner_product(testv,*pforward)>0) { + product(pforward,*pforward,-1.); + } +} + +int add_point_to_mesh(LinkedList > *ppolylist, LinkedList *psidelist, int pttoadd, SideFlag *pside, const Array > &pts) { + int good=1; + LinkedList newsidelist; + for (int i=0; iipts.get_size(); i++) { + SideFlag *pnewside=new SideFlag(); + pnewside->ipts=pside->ipts; + pnewside->ipts(i)=pttoadd; + sort_array(&(pnewside->ipts)); + pnewside->done=1; + calc_forward_vector(&pnewside->forward,pnewside->ipts,pside->ipts(i),pts); + LinkedListIterator itexistside(*psidelist); + for (; itexistside; itexistside++) { + if ( itexistside->ipts == pnewside->ipts ) break; + } + newsidelist << pnewside; + if (itexistside) { + if (itexistside->done!=1) { + good=0; + // cerr << "Not adding side: done=" << itexistside->done << endl; + } + } + } + if (good) { + LinkedListIterator it(newsidelist); + while (it) { + LinkedListIterator itexistside(*psidelist); + for (; itexistside; itexistside++) { + if ( itexistside->ipts == it->ipts ) break; + } + if (!itexistside) { + // cerr << "side added\n"; + (*psidelist) << newsidelist.detach(it); + } + else { + itexistside->done=2; + itexistside->forward.resize(0); + it++; + } + } + pside->done=2; + pside->forward.resize(0); + Array *ppoly=new Array(pside->ipts.get_size()+1); + (*ppoly)(0)=pttoadd; + for (int i=0; iipts.get_size(); i++) { + (*ppoly)(i+1)=pside->ipts(i); + } + // cerr << "POLY" << (*ppoly) << endl; + sort_array(ppoly); + (*ppolylist) << ppoly; + return 1; + } + else { + pside->done=-1; + pside->forward.resize(0); + return 0; + } +} + +void create_mesh(LinkedList > *ppolylist, const Array > &pts, int fulldim, Real maxr) { + LinkedList sidelist; + int dim=pts(0).get_size(); + if (pts.get_size() *ppoly=new Array(dim+fulldim); + Array acc(pts(0)); + (*ppoly)(0)=0; + for (int n=1; nget_size(); n++) { + Array avg; + product(&avg,acc,1./(Real)n); + PointFromCenterIterator itpts(pts,avg); + while (1) { + itpts++; + int i; + for (i=0; i center; + Real radius2; + Array > mypts(ppoly->get_size()); + for (int i=0; i delta; + diff(&delta,pts(jtpts()),center); + if (norm2(delta)>radius2) break; + // cerr << "bad point: " << jtpts() << " " << norm(delta) << " " << sqrt(radius2) << endl; + } + } + (*ppolylist) << ppoly; + + // cerr << "poly= "; + // cerr << *ppoly << endl; + + for (int n=0; nget_size(); n++) { + SideFlag *pside=new SideFlag(); + pside->ipts.resize(ppoly->get_size()-1); + for (int i=0; iget_size()-1; i++) { + pside->ipts(i)=(*ppoly)(i+(i>=n ? 1:0)); + } + sort_array(&(pside->ipts)); + calc_forward_vector(&(pside->forward),pside->ipts,(*ppoly)(n),pts); + pside->done=1; + sidelist << pside; + // cerr << "side= "; + // cerr << pside->ipts << endl; + // cerr << pside->forward << endl; + } + // debug_mesh(*ppolylist,pts); + // debug_side(sidelist,pts); + // cerr << "done 1st poly\n"; + + int didsome; + do { + LinkedListIterator itside(sidelist); + didsome=0; + for (; itside; itside++) { + if (itside->done==1) { + // cerr << itside->ipts << endl; + int pttoadd=find_point_to_add(*itside,pts,maxr); + // cerr << "add=" << pttoadd << endl; + if (pttoadd==-1) { + itside->done=-1; + } + else { + add_point_to_mesh(ppolylist,&sidelist, pttoadd,itside,pts); + // debug_mesh(*ppolylist,pts); + // debug_side(sidelist,pts); + Real tmp; + didsome=1; + } + } + } + } while (didsome); +} + +int remove_nearby(Array > *ppts, const Array > &orgpts, Real cutoff) { + int ret=1; + Real cutoff2=sqr(cutoff); + LinkedList > list; + for (int i=0; i delta; + diff(&delta,orgpts(i),orgpts(j)); + if (inner_product(delta,delta)(orgpts(i)); + } + } + LinkedList_to_Array(ppts,list); + return ret; +} + +char *helpstring="Insert more help here"; + +int main(int argc, char *argv[]) { + // parsing command line. See getvalue.hh for details; + char *tabfilename="tab.in"; + // Real maxd=0.; + Real color=0; + Real rmax=0.1; + Real rmin=1e-3; + int sigdig=5; + char *exporter_label="vtk"; + int doline=0; + int nofixnormal=0; + int backface=0; + int dohelp=0; + int dummy=0; + AskStruct options[]={ + {"","Simplexize " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-t","Input table file",STRINGVAL,&tabfilename}, + //{"-md","Max distance between points of the same surface",REALVAL,&maxd}, + {"-col","Color",REALVAL,&color}, + {"-rmax","Maximum radius of curvature",REALVAL,&rmax}, + {"-rmin","Minimum distance between points kept",REALVAL,&rmin}, + {"-l","Plot lines",BOOLVAL,&doline}, + //{"-nfn","do Not fix Normal vector",BOOLVAL,&nofixnormal}, + //{"-bf","generate back face",BOOLVAL,&backface}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-ef","Export format (default: vtk)",STRINGVAL,&exporter_label}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + if (!check_plug_in(MeshExporter(),exporter_label)) { + // cerr << exporter_label << endl; + ERRORQUIT("Unknown export format"); + } + MeshExporter *pexporter=GenericPlugIn::create(exporter_label); + + + cout.setf(ios::fixed); + cout.precision(sigdig); + + Array > rawpts; + if (strcmp(tabfilename,"-")==0) { + read_table(&rawpts,cin,1); + } + else { + ifstream tabfile(tabfilename); + if (!tabfile) ERRORQUIT("Unable to open table file"); + read_table(&rawpts,tabfile,1); + } + + // Array > allpts; + LinkedList listpts3; + LinkedList > allpoly; + + if (doline) { + int idx=0; + for (int begi=0; begi0) endi++; + for (int i=begi; i *pline=new Array(2); + (*pline)(0)=reali+i; + (*pline)(1)=reali+j; + allpoly << pline; + } + } + begi=endi; + } + } + else { + int surfbeg=0; + while (surfbeg0) surfend++; + Array > pts; + extract_elements(&pts, rawpts,surfbeg,surfend-1); + + remove_nearby(&pts, pts,rmin); + LinkedList > poly; + create_mesh(&poly, pts,0,rmax); + Array pts3; + ArrayArray_to_ArrayFixedVector(&pts3,pts); + + combine_mesh(&listpts3,&allpoly, pts3,poly); + // cerr << "surfend= " << surfend << endl; + // cerr << "meshptssize= " << listpts3.get_size() << endl; + // cerr << "meshpolysize= " << allpoly.get_size() << endl; + surfbeg=surfend+1; + } + } + Array colors(1); + colors(0)=color; + Array allpts3; + LinkedList_to_Array(&allpts3,listpts3); + pexporter->write(cout,allpts3,allpoly,colors); +} diff --git a/src/skelread.c++ b/src/skelread.c++ new file mode 100644 index 0000000..39d1632 --- /dev/null +++ b/src/skelread.c++ @@ -0,0 +1,76 @@ +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" + +// write extra help as plain text in *.hlp +extern char *helpstring; + +int main(int argc, char *argv[]) { + // parsing command line. See getvalue.hh for details; + char *latfilename="lat.in"; + char *strfilename="str.out"; + Real r=0; + int n=0; + int b=0; + int sigdig=5; + int dohelp=0; + int dummy=0; + AskStruct options[]={ + {"","Skeleton for atat-like codes " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-l","Input file defining the lattice (Default: lat.in)",STRINGVAL,&latfilename}, + {"-s","Input file defining the structure (Default: str.out)",STRINGVAL,&strfilename}, + {"-r","A real parameter",REALVAL,&r}, + {"-n","An integer parameter",INTVAL,&n}, + {"-b","A boolean parameter",BOOLVAL,&b}, + {"-sig","Number of significant digits printed (Default: 5)",INTVAL,&sigdig}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + cout.setf(ios::fixed); + cout.precision(sigdig); + cout << r << endl; + cout << n << endl; + cout << b << endl; + + // parsing lattice and structure files. See parse.hh for detail; + Structure lat; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream latfile(latfilename); + if (!latfile) ERRORQUIT("Unable to open lattice file"); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &labellookup, &label, latfile, &axes); + wrap_inside_cell(&lat.atom_pos,lat.atom_pos,lat.cell); + } + + Structure str; + { + ifstream strfile(strfilename); + if (!strfile) ERRORQUIT("Unable to open structure file"); + parse_structure_file(&str.cell, &str.atom_pos, &str.atom_type, label, strfile, NULL); + wrap_inside_cell(&str.atom_pos,str.atom_pos,str.cell); + } + + // str.atom_type are indices into label; + write_structure(str,label,axes,cout,0); + + // str.atom_type converted to indices into labellookup; + fix_atom_type(&str, lat,labellookup,0); + write_structure(str,lat,labellookup,label,axes,cout,0); + + // if space group needed; + SpaceGroup spacegroup; + spacegroup.cell=lat.cell; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,lat.cell,lat.atom_pos,lat.atom_type); +} diff --git a/src/sortatoms b/src/sortatoms new file mode 100755 index 0000000..8329d1d --- /dev/null +++ b/src/sortatoms @@ -0,0 +1,4 @@ +#!/bin/csh +awk '{if (split($0,a)==4) {print $0 > "tosort.tmp"} else {print $0;}}' +sort -k 4 tosort.tmp +rm tosort.tmp diff --git a/src/splitjob.c++ b/src/splitjob.c++ new file mode 100644 index 0000000..d918a9f --- /dev/null +++ b/src/splitjob.c++ @@ -0,0 +1,31 @@ +#include +#include +#include +#include +#include "misc.h" + +main(int argc, char **argv) +{ + int numproc, my_id; + MPI_Status status; + + MPI_Init(&argc, &argv); + MPI_Comm_size(MPI_COMM_WORLD, &numproc); + MPI_Comm_rank(MPI_COMM_WORLD, &my_id); + + char buf[MAX_LINE_LEN]; + char c; + ifstream file(argv[1]); + for (int i=0; file; i++) { + file.get(buf,MAX_LINE_LEN-1); + file.get(c); + if (strlen(buf)==0) break; + if ((i%numproc)==my_id) { + cout << "splitjob: Process " << my_id+1 << " of " << numproc << " is running " << buf << endl; + system(buf); + } + } + + MPI_Barrier(MPI_COMM_WORLD); + MPI_Finalize(); +} diff --git a/src/sqs2tdb b/src/sqs2tdb new file mode 100755 index 0000000..2f1229a --- /dev/null +++ b/src/sqs2tdb @@ -0,0 +1,1002 @@ +#!/usr/bin/perl + +#use strict; + +# Initial setup of global variables + +# read config file to know where atat directory is +my $atatdir; +BEGIN { + open(my $cf,"<",join('/',$ENV{"HOME"},".atat.rc")) or die "Can't open ~/.atat.rc\n"; + $atatdir = <$cf>; + chomp $atatdir; + $atatdir =~ s/.*atatdir\s*=\s*//g; + our $libdir = join('',$atatdir,"/src"); +} + +# load libraries from atat/src/ + +use lib $libdir; + +use Permutor; +use PowerSet; +use PowerSet 'powerset'; + +#process command line + +my %cmdline; #this will contained all command line options, hashed by the option name (e.g. -l, etc.) +for (my $i=0; $i<@ARGV; $i++) { + my @opt = split /=/, $ARGV[$i]; + if ( @opt == 1 ) {$opt[1]=1} + $cmdline{$opt[0]}=$opt[1]; +} + +# end of global var setup +# go the "Main" section below + +#subroutine to setup a directory of the SQS database (-mk option) +sub makemanysqs() { + if (! -e "sqsgen.in") {# if input file does not exist create a template for user to edit + print qq{ +Please create a sqsgen.in file of the form (for example): +level=0 a=1 b=1 [...] +level=1 a=1 b=0.5,0.5 [...] +level=1 a=0.5,0.5 b=1 [...] +level=2 a=0.5,0.5 b=0.5,0.5 [...] +[...] +where a,b,... would the wyckoff positions for each site (append a number if two different sites have the same letter) +and where the concentration could have more than two values (e.g. 0.33333,0.33333,0.33333). +You will still need to run mcsqs in each subdirectory created that has fractional occupation. +}; + print join("","See ",$atatdir,"/","data/sqsdb/"," for examples."); + exit; + } + open(my $fh,"<","sqsgen.in") or die "Unable to open gensqs.in"; # to read sqs compositions, one per line + while (<$fh>) { + chomp; + my $dirname=$_; # will contain sqs directory name + my @cols = split /\s+/, $_ ; # split by whitespace separated columns + my @levs = split /=/, $cols[0]; # sqs level is in 1st column + my %siteocc; #will contain concentrations for each site, hashed by site wyckoff name + for (my $i=1; $i<@cols; $i++) { # loop over sites (i.e. columns 2,3,...) to get concentrations + my @rawsite = split /=/, $cols[$i]; # split site=concentration_list + my $atom="A"; # atom labels start at A + my @allconc = split /,/, $rawsite[1]; # parse coma-separated concentrations + @allconc = reverse sort @allconc; # sort from highest to lowest concentration + $siteocc{$rawsite[0]}=""; # will contain a string of all occupations (concentrations) for current site + for (my $at=0; $at<@allconc; $at++) { #loop over concentrations for current site + my $com=""; # put comas only between items + if ($at > 0) {$com=",";} # + $siteocc{$rawsite[0]}=join('',$siteocc{$rawsite[0]},$com,$rawsite[0],"_",$atom,"=",$allconc[$at]); # append site_atom=conc + $atom++; # A,B,C,... + } + } + $dirname =~ s/^\s*level/lev/; #cleanup directory name level->lev + $dirname =~ s/\s+/_/g; # whitespaces to _ + $dirname =~ s/^/sqsdb_/; # sqsdb_ prefix + print $dirname,"\n"; # report directory being made + mkdir $dirname; + { + # open unit cell structure + open(my $sf,"<","rndstr.skel") or die "Can't open rndstr.skel (should contain unit cell of structure in ATAT format with lowercase Wyckoff position as atom names)"; + open(my $of,">",join('/',$dirname,"rndstr.in")); # will contain the input file for mcsqs + while (<$sf>) { + chomp; + my @cols = split /\s+/, $_ ; # split each line by whitespace-separated columns + if ( $cols[3] =~ /[a-z]/ ) { # if line has an atom label in colunm 4 + print $of $cols[0]," ",$cols[1]," ",$cols[2]," ",$siteocc{$cols[3]},"\n"; # replace wykoff site name with list of all concentrations for site + } + else { + print $of $_,"\n" ; #otherwise copy line as is + } + } + } + } + system("cd sqsdb_lev=0_*; cellcvrt -ro < rndstr.in >| bestsqs.out"); # special case: for end members no need to generate sqs: just copy unit cell +} + +#subroutine to copy sqs from database to current directory +sub copysqs() { + #find where to get sqs from (from -l command-line option ) + my $sqsdbdir=join("",$atatdir,"/","data/sqsdb/",$cmdline{"-l"}); + + #if a master species.in file in give in current directory, read it + my $masterspecies=""; + { + if (-e "species.in") { + open(my $sh,"<","species.in"); + $masterspecies=<$sh>; + chomp $masterspecies; + } + } + if (exists $cmdline{"-sp"}) { + $masterspecies=$cmdline{"-sp"}; + if (! -e "species.in") { + open(my $sh,">","species.in"); + print $sh $masterspecies . "\n"; + } + } + + if (! $masterspecies eq "") { + print "Using species: ",$masterspecies,"\n"; + } + + #make a string with list of (Wyckoff) sites in sqs, each followed with "=" and master list of species (elements) + my $specskel; + { + open(my $fh,"<",join("",$sqsdbdir,"/sqsgen.in")) or die "can't open sqsgen.in \n"; + $specskel=<$fh>; + $specskel =~ s/^level[^\s]*[\s]*//g; + $specskel =~ s/=[0-9.,+-]*/=$masterspecies/g; + } + + #create directory and template species.in file if nonexistant and exit. + if (!chdir($cmdline{"-l"})) { + mkdir($cmdline{"-l"}); + chdir($cmdline{"-l"}); + open(my $sf,">","species.in"); + print $sf $specskel; + print "Edit the file ",$cmdline{"-l"},"/species.in (if needed) and rerun the same command.\n"; + exit; + } + + #read the species.in file (were now are in the subdirectory given by -l option) + my @sites; #will contain array of all sites (a site is a sublattice in CALPHAD nomenclature) + my %spec; #each entry (hashed by site name from @sites) will contain a reference to an array of the species on each site + my %perm; #each entry (hashed by site name from @sites) will point to an object that generates all permutation on species on a site + { + my @rawsite ; + open(my $sf,"<","species.in") or die "can't open species.in"; + @rawsite = split /\s+/, <$sf>; # the different sites are whitespace separated + for (my $s=0; $s<@rawsite; $s++) { # for each site, parse the species + my @asitespec = split /=/ , $rawsite[$s] ; #split site=species + my $site=$asitespec[0]; + @sites=(@sites,$site); #grow array of sites + $spec{$site} = [ split /,/ , $asitespec[1] ]; #record the array of species for current site + $perm{$site} = new List::Permutor @{$spec{$site}}; #make permuter object for current site + } + } + #read the multiplicities from sqsdb of each site and place them in mult.in + { + open(my $mh,">","mult.in"); + foreach my $s ( @sites ) { #loop over sites + open(my $sh,join('',$sqsdbdir,"/rndstr.skel")); #this file contains all sites (with equivalent sites repeated) + my $m=0; + while (<$sh>) { + my @cols=split /\s+/, $_; + if ($cols[3] eq $s) {$m++;} #count number of time site $s appears + } + print $mh $s,"=",$m,"\t"; + } + print $mh "\n"; + } + + #read in the wyckoff sites of the sqs that are equivalent by symmetry (only happens in simple structures, e.g. B2) + my @equivsite; #this will contain an array of statements of equivalence between wyckoff positions, e.g. a=b,c=b + { + if (-e "$sqsdbdir/equiv.in") { + open(my $eh,"<","$sqsdbdir/equiv.in"); + while (<$eh>) { + chomp; + push @equivsite,$_; #add new entry to array + } + } + } + + #read the different sqs in the db + my @sqslist=(); #this will contain names of all unique sqs + # this file list all available sqs compositions + open(my $fh,"<",join("",$sqsdbdir,"/sqsgen.in")) or die "can't open sqsgen.in \n"; + while (<$fh>) { #loop over sqs + chomp; + # each line contain sqs level followed by site=compo,compo,... (repeated for each site) + my $dirdbname=$_; # will contain the sqs directory name to copy form the database + my @cols = split /\s+/, $_ ; #level and sites are whitespace separated + my @levs = split /=/, @cols[0]; # split level=number + if ($levs[1] <= $cmdline{"-lv"}) { # if level is below what specified by -lv command line option + my %siteocc; # this will contain references to arrays of the occupations (compositions) for each site, hashed by site name + for (my $i=1; $i<@cols; $i++) { # loop over all sites + my @arawsite = split /=/, @cols[$i]; #split into site name and composition list + my @allconc = split /,/, @arawsite[1]; #parse composition list and put into array + @allconc = reverse sort @allconc; # by convention list higher composition first + $siteocc{@arawsite[0]}=[ @allconc ]; # record all occupations for this site + } + #cleanup and make directory name + $dirdbname =~ s/^\s*level/lev/; + $dirdbname =~ s/\s+/_/g; + $dirdbname =~ s/^/sqsdb_/; + + #check if the current sqs does not have too many possible occupations for the given number of species, at each site + my $nbok=1; + foreach my $site ( @sites ) { + if ( @{$spec{$site}} < @{$siteocc{$site}}) {$nbok=0; last;} + } + #if the nb of occupation and species are ok + if ($nbok) { + while (1) { #loop over permutations of the species on each site + # this is needed if the number of species in the database sqs is smaller than the nb of species desired + # example: A,B,C alloy with binary sqs => need sqs for A,B and B,C and A,C + #make sqs name in the calculation directory + my $sqsname=""; # will contain the name of the sqs calc directory + foreach my $site (@sites) { + my @aspec=$perm{$site}->peek; # get all species for that site in the current permutation order + my @speclist=(); + for (my $i=0; $i<@{$siteocc{$site}}; $i++) { + # add an entry of the form site_specie=occupation + @speclist = (@speclist,join('',$site,"_",$aspec[$i],"=",@{$siteocc{$site}}[$i])); + } + @speclist = sort @speclist; #put wyckoff sites in alphabetical order + $sqsname=join(',',$sqsname,join(',',@speclist)); + } + $sqsname =~ s/^,//; # remove extra , in front + #sqsname now completed, except for prefix + + my $onespeconly=1; # flag that will indicate if it is an end member that might reduce to a simpler parent lattice + my $onespecname=""; # will contain name of species on simpler parent lattice + if (@sites==1) {$onespeconly=0;} # if only one sublattice cannot be equivalent to higher symmetry phase + else { + foreach my $site (@sites) { + my @aspec=$perm{$site}->peek; # get all species for that site in the current permutation order + # this block checks if the end member reduces to a simpler known parent lattice + if (@{$siteocc{$site}}>1) { # only one specie one sublattice? + $onespeconly=0; #no: cannot be simple lat + } + else { + if ( $onespecname eq "" ) { + $onespecname=$aspec[0]; # first time around, store specie name on 1st sublattice + } + else { # next time around, check if the same specie is on the other sublattices + if ( $onespecname ne $aspec[0] ) {$onespeconly=0;} # if not, cannot reduce to simpler lattice + } + } + } + } + + # now check if that sqs is not equivalent to another one under permutation of equivalent sites + my $alreadylisted=0; #flag to indicate the sqs is redundant + my $sqspermname=""; #will contain various sqs with sites permuted + my $equivpowset = new Data::PowerSet(@equivsite); #we will select arbitrary subsets of site equivalence relations + while (my $equivon= $equivpowset->next) { #loop over subset of site equiv relations + my %mapsite; # will contain how each wyckoff site is mapped onto another + for my $s (@sites) {$mapsite{$s}=$s;} #initialize identity mapping + for my $ss (@$equivon) { # loop over equivalences + my $a=$ss; + $a =~ s/=.*//g; # site a is before = + my $b=$ss; + $b =~ s/.*=//g; # site b is after = + $mapsite{$a}=$b; # record permutation of those sites + $mapsite{$b}=$a; + } + $sqspermname=""; # will contain sqs name with permuted sites + foreach my $oldsite (@sites) { #loop over sites before permutation + my $site=$mapsite{$oldsite}; #permuted site name + my @aspec=$perm{$site}->peek; #get species for that site + my @speclist=(); #construct sqs name as before + for (my $i=0; $i<@{$siteocc{$site}}; $i++) { + @speclist = (@speclist,join('',$oldsite,"_",$aspec[$i],"=",@{$siteocc{$site}}[$i])); #use old site label with occupations of permuted site + } + @speclist = sort @speclist; # wyckoff sites in alphabet order + $sqspermname=join(',',$sqspermname,join(',',@speclist)); + } + $sqspermname =~ s/^,//; + #sqspermname now completed + #print $sqspermname,"\n"; + if ( grep(/^$sqspermname$/, @sqslist) == 1 ) {$alreadylisted=1; last;} # if permuted site sqs was already in list + } + #print $alreadylisted,"\n"; + #print "list=\n",join("\n",@sqslist),"\nend\n"; + if ( grep(/^$sqsname$/, @sqslist) == 0 ) { #if (unpermuted) sqs is not in list + push @sqslist,$sqsname; # add to list + my %subatom; # will contain which to put in which site (hashed by wyckoff_x where x=A,B,C,... the generic atom names in sqs db) + foreach my $site (@sites) { #loop over sites + my @aspec=$perm{$site}->peek; # species for current permutation + for (my $atom="A", my $i=0; $i < @{$siteocc{$site}}; $atom++, $i++) { + $subatom{join("_",$site,$atom)}=$aspec[$i]; #set, e.g., subatom{"b_A"}="Cu" + } + } + # put prefix and create dir + $sqsname = "sqs_lev=" . $levs[1] . "_" . $sqsname; + mkdir($sqsname); + if ( $alreadylisted == 1 ) { #if equivalent to permuted sqs, write a link to it + open(my $lh,">","$sqsname/link"); + print $lh "sqs_lev=" . $levs[1] . "_" . $sqspermname . "\n"; + } + else { #otherwise copy all files needed for calc + if ( ! -e "$sqsname/str.out" ) { #only do if didn't exist before + print "Preparing ",$sqsname," directory\n"; + { + open(my $sqsf,">",join("",$sqsname,"/str.in")) or die "Can't open str.in\n"; #destination file + open(my $dbf,"<",join("",$sqsdbdir,"/",$dirdbname,"/bestsqs.out")) or die "Can't open bestsqs.out file.\n"; #origin file from database + while (<$dbf>) { #loop over lines in origin file + chomp; + my @cols = split /\s/, $_ ; #split into columns + if ( $cols[3] =~ /[a-z]/ ) { #if 4th column contains a site, replace it by the correct atom from subatom + print $sqsf $cols[0]," ",$cols[1]," ",$cols[2]," ",$subatom{$cols[3]},"\n"; + } + else { # otherwise copy as is + print $sqsf $_,"\n"; + } + } + } + # check if structure has higher symmetry after sites are decorated + my $hisym=0; + { + open(my $osf,join("","cellcvrt -sym < ",$sqsdbdir,"/",$dirdbname,"/bestsqs.out | head -n 1 |")); + my $osym=<$osf>; + chomp $osym; + open(my $fsf,join("","cellcvrt -sym < ",$sqsname,"/str.in |& grep -v Warning | head -n 1 |")); + my $fsym=<$fsf>; + chomp $fsym; + if ( $osym < $fsym ) { + print "Equivalent to another high-symmetry structure: ",$sqsname,"\n"; + $hisym=1; + } + #print "sym= ",$osym," ",$fsym," ",$hisym,"\n"; + } + if ($hisym) { + open(my $bf,">",$sqsname ."/bump"); + print $bf ""; + } + # isotropically stretch str.in so that atoms just touch and put in str.out + my $cmd=join("","nntouch -l=",$sqsname,"/str.in -r=",$atatdir,"/data/radii.in >| ",$sqsname,"/str.out"); + system($cmd); + if ($levs[1]==0) { # for end members also write "endmem" file as a flag + open (my $emf,">",join("",$sqsname,"/endmem")); + print $emf ""; + } + if ($onespeconly == 1) { # if this end member can be reduced to a simpler lattice + if (open(my $plf,"<",$sqsdbdir . "/" . "parentlat.in")) { #check if this simpler lattice is known in the sqs db + my $linkto=<$plf>; # read lattice and partial structure name (e.g. FCC_A1/sqs_lev=0_a_) + chomp $linkto; + $linkto = $linkto . $onespecname . "=1"; # add specie name to partial structure name + open(my $lf,">",$sqsname ."/link"); # write a suitable link file + print $lf $linkto . "\n"; + print "link to parent lattice: " . $linkto . "\n"; # notify user + } + } + else { # if not known, then needs to be computed + open (my $wf,">",join("",$sqsname,"/wait")); #write "wait" file as a flag to mark as "to be computed" + print $wf ""; + } + } + } + } + # increment to the next permutation of species + my $doneperm=1; + foreach my $a ( @sites ) { #try to permute one site at the time + my @set = $perm{$a}->next ; + if ( $perm{$a}->peek ) {$doneperm=0; last;} #stop as soon as one permutation was possible + $perm{$a}->reset; #if reach end of permutation, restart at first permutation for that site + } + if ( $doneperm ) {last;} #if all sites reached their last permutation, we're at the end + } + } + } + } +} + +#subroutine to fit ab initio data, combine with sgte and create tdb file for one phase +sub fittdb() { + # SECTION 1: read all input files + my @sites; # will contain names of each Wyckoff site (a site is a sublattice in CALPHAD nomenclature) + my %spec; # will contain reference to array of possible species sitting on site, for each site (hashed by Wyckoff site) + { + my @rawsite ; + open(my $sf,"<","species.in") or die "Can't open species.in"; #read from species.in for one lattice + @rawsite = split /\s+/, <$sf>; #sites are whitespace separated + for (my $s=0; $s<@rawsite; $s++) { + my @asitespec = split /=/ , $rawsite[$s] ; # format is site=specie,specie + my $site=$asitespec[0]; #first site name + @sites=(@sites,$site); #add to list of sites + $spec{$site} = [ split /,/ , $asitespec[1] ]; #parse comma separated list of species and record it for that site + } + } + + my %mult; #will contain multiplicity of each site per unit cell (hashed by Wyckoff site) + my $totsite; #will contain total numer of site per unit cell + { + open (my $mh,"<","mult.in") or die "can't open mult.in"; + my @cols = split /\s+/ , <$mh>; #sites are whitespace separated + foreach my $m (@cols) { #loop over sites + my @tok = split /=/, $m; #parse site=mult + $mult{$tok[0]}=$tok[1]; # record multiplicity for that sie + $totsite+=$tok[1]; # increment total number of site + } + } + my @terms; #will contain all types of interaction terms as a 3d array + # The first index is the type of interaction (i.e. which line of the terms.in file) + # The second index is the site (as an integer, not a wyckoff symbol) + # the last index is 0 or 1, with [0] giving the order (1: linear in composition, 2: binary interaction, etc.) + # and [1] giving the level (e.g. order of polynomial in a binary interaction) + { + if (! -e "terms.in") { # if terms.in file does not exist, make a default one and output some help + open(my $tf,">","terms.in"); + print $tf join(':',map { "1,0" } @sites) . "\n"; + print qq{Please edit the file terms.in +Each entry on one line has the form order,level:order,level:... +in which sublattices are separated by : +and where order has the following meaning: 1: linear in composition 2: binary interaction, 3: ternary interaction, etc. +and where level is the maximum value of the additional parameter in a tdb file specifying the order of the polynomial used. +In a binary interaction, level can be 0,1,2,3,... +In a ternary interaction, level can be 0,1 +In higher order interaction level can only be 0 +(These are limitations of the tdb format.) +}; + exit; + } + open(my $tf,"<","terms.in") or die "Can't open terms.in"; + my $l=0; + while (<$tf>) { + chomp; + my @atermraw = split /[:]+/, $_ ; # each site is separated by : + @atermraw = ( @atermraw , map { "0,0" } @sites ); # pad with 0,0 for all sites that the user did not specify + my @aterm = map { [ split /,+/ ] } @atermraw ; # split each order,level pair into two array entries + $terms[$l]=[ @aterm[0..@sites-1] ]; # cut extraneous 0,0 that were padded and record cleanup terms in $terms for line $l + $l++; # next line in file + } + } + + my %stablephase; # will contain the stable room temperature phase of each element, hashed by element name + { + open(my $sh,"<",$atatdir . "/data/sgte_elements.tdb"); #fetch from atat data directory + while (<$sh>) { + chomp; + my @col=split /\s+/, $_; + $col[1] =~ s/ELEM_//g; + $stablephase{$col[1]}=$col[2]; + } + } + + # SECTION 2: create input file for least squares fit + my @tdbparam; # will contain all interaction terms of the tdb file, each in the form specie,specie,...:specie,specie,...:...;level + my $bumpval=5e-3; # energy shift to avoid degeneracies between low symmetry end members and high symmetry ones. + if ($cmdline{"-bv"} != 0) { + $bumpval=$cmdline{"-bv"}; + } + + my @propname=("energy","svib_ht"); # input files that we will fit + my @propsuf=("","*T"); #suffix they need in tdb file + my $idealgas=8.3144621; + my @propnum=(1.60217653e-19*6.02214078e23,-$idealgas); #conversion factor from ab initio units to tdb units: eV/atom -> J/mol and k_B -> J/(K mol) + for my $aprop (@propname) { # loop over properties + open(my $dh,"ls -d sqs_* |"); # list all sqs directories - we'll read them from handle dh + open(my $mh,">","x_" . $aprop . ".in"); # file will contain regressors for least-squared fit + open(my $eh,">","y_" . $aprop . ".in"); # file will contain dependent variable for least-squared fit + open(my $mn,">","strname_" . $aprop . ".out"); # file will contain structures included in fit of this property + open(my $ch,">","conc_" . $aprop . ".out"); # file will contain overall concentrations of structures included in fit of this property + my $founddata=0; + while (<$dh>) { # loop over sqs directories + chomp; + my $dirname=$_; # get directory name + my $olddirname=$dirname; # name before redirection + if ( -e "$dirname/link" ) { # if find a link to another directory, use that directory instead + open(my $lh,"<","$dirname/link"); + print $dirname," mapped to "; + $dirname=<$lh>; + chomp $dirname; + if ( ! -e $dirname ) { + $dirname = "../" . $dirname; + } + print $dirname,"\n"; + } + my $concname=$_; # start to extract concentrations from sqs name + $concname =~ s/sqs_//g; # trim prefixes + $concname =~ s/lev=[^_]+_//g; + + my %conc; # this will contain all concentrations for this sqs (hashed by Wyckoff site and then hashed by species) + my %overconc; # this will contain overall concentration for this sqs (hashed by species) + foreach my $s (@sites) { #initialize all concentrations to 0 + $conc{$s}={}; + for my $sp ( @{$spec{$s}} ) { + ${$conc{$s}}{$sp}=0; + $overconc{$sp}=0; + } + } + + my $badconc=0; + my @rawcs=split /,/ , $concname ; # concentation are coma separated and have the form site_specie=number + foreach my $rawc (@rawcs) { + my @piece=split /=/ , $rawc; # parse so that piece[0]=site_specie and piece[1]=number + my @lab=split /_/, $piece[0]; # parse so that lab[0]=site and lab[1]=specie + if (! exists ${$conc{$lab[0]}}{$lab[1]}) {$badconc=1;} #can't find such a composition + ${$conc{$lab[0]}}{$lab[1]}=$piece[1]; #record the site composition + $overconc{$lab[1]}+=$piece[1]*$mult{$lab[0]}/$totsite; # increment overall composition + } + if ( ! -e join('',$dirname,"/",$aprop)) { # check if property aprop is available for current sqs + $badconc=1; + } + + if ($badconc) { # if anything went wrong, skip + print $dirname," skipped for property " . $aprop . "\n"; + } + else { # otherwise process + $founddata=1; # we have found at least one data point + print $dirname,"\n"; # report structure used + print $mn $dirname,"\n"; + { + open(my $es,"<",join('',$dirname,"/str.out")) or die "can't open " . $dirname . "/str.out\n"; #read structure file + my $totsitesup=0; # will contain total number of atoms (i.e. site) + while (<$es>) { # loop over lines + my @cols=split /\s+/, $_; # split in columns + if ( $cols[3] =~ /[a-zA-Z]/ ) { # if line contain atom label, count it + $totsitesup++; + } + } + open(my $ef,"<",join('',$dirname,"/",$aprop)); # read property (e.g. energy) + my $energy=<$ef>; + chomp $energy; + # if directory contains file bump, bump energies by bumpval per atom (to avoid degeneracies at end members); + if ( $aprop eq "energy" && -e join('',$olddirname,"/bump") ) { # check for bump in dir before redirection + $energy+=$bumpval*$totsitesup; + } + # add code here for bump + my $energypercell=($energy*$totsite/$totsitesup); # convert per unit cell + print $eh $energypercell,"\n"; # record property value in dependent variable file for fitting + for my $el ( sort keys %overconc ) {print $ch $overconc{$el},"\t";} + print $ch "\n"; + open(my $eo,">",join('',$dirname,"/",$aprop,"_cell")); # record in a *_cell file too + print $eo $energypercell,"\n"; + } + + @tdbparam=(); # clear thermo database param (from previous interaction calculation ) + my %doneterm; # to keep track of terms already processed + foreach my $rterm (@terms) { # loop over possible interaction terms + #print "rterm="; # + #foreach my $tt (@{$rterm}) {print @{$tt}[0],":";} # + #print "\n"; # + my $perm = new List::Permutor @{$rterm}; # will consider all assignements of terms to sublattices (i.e. sites) + while (my @term=$perm->next) { # loop over permutation of terms + my $hiord=0; # will contain highest level of interaction + # sanity checks + for (my $s=0; $s<@term; $s++) { + if ($term[$s][0]==3 && $term[$s][1]>0) { $term[$s][1]=2; } # higher order param for ternaries are indexed by 0,1,2 so 2 is higher limit + # check if only one higher order param + if ($term[$s][1]>0 && $hiord>0) {die "TDB format only allows one higher order parameter.\n";} + if ($term[$s][1]>0) {$hiord=$term[$s][1];} + } + my @nterm; # will contain the number of components for each term (1=one component, 2=binary, 3=ternary, etc.) indexed by site number + my %ordterm; # will contain the level for each interaction, indexed by site (ord=level in this section of the code) + my $ns=0; # to loop over site number + my $toohi=0; # flag if interaction involves more components than there are on the site + foreach my $s (@sites) { # loop over sites + $nterm[$ns]=@{$term[$ns]}[0]; #copy nb of component + if (@{$term[$ns]}[0]>@{$spec{$s}}) {$toohi=1;} # flag if too many components + $ordterm{$s}=@{$term[$ns]}[1]; # copy level of interaction + $ns++; # next site + } + my $kterm=join('_',@nterm); #create label to check if done + if (! $toohi==1 && ! exists $doneterm{$kterm}) { # if not flagged and not done + $doneterm{$kterm}=1; # mark as done + + my %powset; # will contain objects to find all subset of a set of species on a site, hashed by site name + my $ns=0; # site number + foreach my $s (@sites) { # loop over sites + $powset{$s} = new Data::PowerSet ({min=>$nterm[$ns], max=>$nterm[$ns]}, @{$spec{$s}}); # find all subsets of $nterm[$ns] species + $ns++; # next site + } + while (1) { # loop over subsets of species + for (my $ord=0; $ord<=$hiord; $ord++) { # loop over levels of interactions + my $acc=1.; # to accumulate the product of compositions + my @atdbparam; # will contain the label of the interaction as specie,specie,...:specie,specie,...:... + foreach my $s ( @sites ) { # loop over sites + my $elem=$powset{$s}->peek; # which species (elements) take part in that interaction + $atdbparam[@atdbparam]=(@{$elem}==0 ? "*" : join(',',@{$elem})); # add elem,elem,... at the end of the label or * if no element + foreach my $e ( @{$elem} ) { # do the product of compositions of all elements $e involved on site $s + $acc*=${$conc{$s}}{$e}; + } + # handle higher level interaction + if (@{$elem}==2 && $ordterm{$s}>0) { # for binary interactions include terms of the form (X_A-X_B)^$ord + $acc*=(${$conc{$s}}{@{$elem}[0]}-${$conc{$s}}{@{$elem}[1]})**$ord; + } + if (@{$elem}==3 && $ordterm{$s}>0) { # for ternary interactions, use CALPHAD convention + my $comp=0; + for (my $i=0; $i<3; $i++) { # sum all compositions involved (may be <1 for higher-order systems) + $comp+=${$conc{$s}}{@{$elem}[$i]} + } + my $v=${$conc{$s}}{@{$elem}[$ord]}+(1-$comp)/3.; # contribution is X_{A,B or C} + (1-sum composition)/3 + $acc*=$v; #accumulate product + } + } + $tdbparam[@tdbparam]=join('',join(':',@atdbparam),';',$ord); # record interaction name as specie,specie,...:specie,specie,...:...;level + print $mh $acc,"\t"; # record regressor for this interaction + } + # find next subset + my $donepower=1; + foreach my $s ( @sites ) { # try for each site + $powset{$s}->next; # go to next subset for this site + if ( $powset{$s}->peek ) {$donepower=0; last;} # if possible, we have found next subset choice + $powset{$s}->reset; # if not possible restart at first subset for this site and try next site + } + if ( $donepower ) {last;} # if all sites are at their last subset, we are done with exploring interactions + } + } + } + } + print $mh "\n"; # put next interaction on the next line + } + } + if ($founddata==1) { # if we have some data, do the fit + system("lsfit -x=x_" . $aprop . ".in -y=y_" . $aprop . ".in -colin >| param_" . $aprop . ".out; sleep 1"); # least square fit of parameters in param_[property].out + # report some quality measures in fit_[property].out + system("lsfit -x=x_" . $aprop . ".in -y=y_" . $aprop . ".in -colin -p -ty -e | sed 's/ /\t/g' >| fit.tmp"); + system("paste conc_" . $aprop . ".out fit.tmp strname_" . $aprop . ".out >| fit_" . $aprop . ".out; rm fit.tmp ; sleep 1"); + # and cv_[property].out + system("lsfit -x=x_" . $aprop . ".in -y=y_" . $aprop . ".in -colin -cv >| cv_" . $aprop . ".out"); + } + else { # if have no data + print "Found no data for " . $aprop . "\n"; + # create a param_[propery].out file with as many 0 as there are parameters + open(my $ph,">","param_" . $aprop . ".out"); + print $ph map {"0\n"} @tdbparam; + } + } + + # concatenate (by columns) all the param_[property].out files into allparam.out + system("paste " . join(' ',map {"param_" . $_ . ".out"} @propname) . " >| allparam.out"); + + # SECTION 3: Create tdb file + { + my $Tmin="298.15"; # default lowest and highest temperature cutoffs + my $Tmax="10000"; + if ( exists $cmdline{"-Tu"} ) { + $Tmax=$cmdline{"-Tu"}; + } + if ( exists $cmdline{"-Tl"} ) { + $Tmin=$cmdline{"-Tl"}; + } + my $phase=`pwd`; # create phase name from current directory name without upper directory name + chomp($phase); + $phase =~ s/.*\///g; + + my @exphase; # will contain which phases should not be loaded from SGTE + if (-e "../exfromsgte.in") { # this optional file lists the phases to not load from SGTE + open(my $xh,"<","../exfromsgte.in"); + @exphase=<$xh>; + chomp(@exphase); + print "SGTE Phases excluded: ",join(' ',@exphase),"\n"; + } + + my $volden=1; #to nomalize all properties per cell + my $issgtephase=0; #flag + if (system(join('',"grep -q \'^PHASE ",$phase," \' ",$atatdir,"/data/sgte_phases.tdb"))==0) { # check if phase is in SGTE database + $volden=$totsite; # for sgte phase there is always one atom per cell (even for hcp...) + $issgtephase=1; + } + + my @endfunc; # will contain gibb free energy functions for end members in tdb format + my %elemfunc; # will contain free energy reference shifter (to make elemental free energy match sgte), hashed by REF_phase_element + my @xsparam; # will contain excess quantities of mixing terms + my @ratiocoef=(1,-2,1.5,-0.5); + my $sroterm=""; + my $coord=0; + { + if (open(my $zh,"<",$atatdir . "/data/sqsdb/" . (uc $phase) . "/coord.in")) { + $coord=<$zh>; + } + else { + print "No SRO included.\n"; + } + } + my %paramall; + { + open(my $pf,"<","allparam.out"); # read in fitted numerical parameters + foreach my $termord (@tdbparam) { # loop over terms + my $allp=<$pf>; #read in all parameters for that term + chomp $allp; + $paramall{$termord}=$allp; + } + } + + foreach my $termord (@tdbparam) { # loop over terms + my $term=$termord; # get term + $term =~ s/;.*//g; # without the level + my $ord=$termord; # get level + $ord =~ s/.*;//g; # without the term + my $allp=$paramall{$termord}; #fetch all parameters for that term + my @p=split /\s+/, $allp; # put white space-separated parameters in array p + my $pdb=""; # will contain the function corresponding to that term + my $needtoaddord2=0; + for (my $i=0; $i<@propname; $i++) { # loop over properties (energy, entropy) + my $coef=$p[$i]*$propnum[$i]/$volden; # convert units and normalize per cell + $pdb=$pdb . ($coef !=0 || $i==0 ? ($coef >= 0 ? "+" : "") . ($coef) . $propsuf[$i] : ""); # make function expression +coef*suffix and append to pdb + if ( $cmdline{"-sro"}>0 && $propsuf[$i] eq "" && $coord != 0 && ($term =~ s/,/,/g)==1 ) { + if ($ord==0) { + my $Gab; + { + my @coef2=split /\s+/,$paramall{"$term;2"}; + $coef2[0]*=$propnum[$i]/$volden; + $Gab=abs($coef-$coef2[0])*$cmdline{"-sro"}; + } + my $c=$Gab/($coord*$idealgas); + my @tmpsroterm; + for (my $s=0; $s<=2; $s+=2) { + for (my $n=0; $n<4; $n++) { + $tmpsroterm[$s] = $tmpsroterm[$s] . "+" . (($s-1)*$ratiocoef[$n]*$Gab/2.0) . ($n==0 ? "" : "*EXP(" . (-$n*$c) . "*T**(-1))"); + } + $tmpsroterm[$s] =~ s/\+-/-/g; + } + $pdb = $pdb . $tmpsroterm[0]; + $sroterm=$tmpsroterm[2]; + if ( ("$term;2" ~~ @tdbparam)==0 ) { + $needtoaddord2=1; + } + } + elsif ($ord==2) { + $pdb = $pdb . $sroterm; + } + } + } + if ($term =~ /,/ || $term =~ /\*/) { # if it is an excess term + push @xsparam,join('',"PARAMETER L(",uc $phase,",",uc $termord,") ",$Tmin," ",$pdb," ; ",$Tmax," N !"); #create parameter tdb command + if ($needtoaddord2) { + push @xsparam,join('',"PARAMETER L(",uc $phase,",",uc $term,";2) ",$Tmin," ",$sroterm," ; ",$Tmax," N !"); #create parameter tdb command + } + } + else { # if it is an end member term (no coupling between atoms) + my @elem=split /:/, $term; #parse species (elements) from : separated list + my %conc; # will contain overall concentration of each species (not site-specific) + for (my $n=0; $n<@sites; $n++) { # loop over sites + $conc{$elem[$n]}+=$mult{$sites[$n]}/$volden; # add to concentration (accounting for multiplicity of site and per cell normalization) + } + my $fname=join('',"ABIN_",$phase,"_",$term); # make function name for ab initio end member data: ABIN_phase_elementlist + $fname =~ s/://g; # remove : from list + push @endfunc,join('',"FUNCTION ",uc $fname," ",$Tmin," ",$pdb," ; ",$Tmax," N !"); #create function tdb command + + my $line=join('',"PARAMETER G(",uc $phase,",",uc $termord,") ",$Tmin," ",uc $fname); # will contain parameter tdb command for current term + # now shift with reference states (so that elemental free energies match sgte) + foreach my $e (sort keys %conc) { # loop over species (elements) involved in this term + my $elemref=join('',"REF_",uc $phase,"_",uc $e); # create label of reference free energy shifter for element + my $curstabphase; # will contain the stable phase used as a shifter + my $elemsgte=join('',"SGTE_",uc $phase,"_",uc $e); # create label of sgte free energy for element + if (($issgtephase==1 || $cmdline{"-os"}) && ! grep {/^$elemsgte$/} @exphase) { # if (current phase in sgte or -os specified) and not excluded by user + $curstabphase=$phase; # use current phase as shifter + } + else { # otherwise + if ($issgtephase==1) {print "Exclude SGTE data for: ",$elemsgte,"\n";} # notify sgte not used for current phase + $curstabphase=$stablephase{uc $e}; # use instead the stable phase of this element as reference + } + my $elemabin=join('',"ABIN_",uc $curstabphase,"_",uc $e); # make label for ab initio free energy for reference phase + $elemsgte=join('',"SGTE_",uc $curstabphase,"_",uc $e); # make label for sgte free energy for reference phase + $line=join('',$line,"-",$conc{$e},"*",$elemref); # subtract reference free energy shifter for current element weighted by concentration + $elemfunc{$elemref}=join('',"FUNCTION ",$elemref, " ",$Tmin," ",$elemabin," - ",$elemsgte," ; ",$Tmax," N !"); # add this element reference free energy shifter to list + } + $line=join('',$line," ; ",$Tmax," N !"); # finish tdb command + push @xsparam,($line); # record current line to tdb file + } + } + open(my $tf,">","$phase.tdb"); # now write tdb file for current phase + print $tf "PHASE ",$phase," % ",scalar(keys %mult)," "; # write PHASE tdb command with number of sublattice + foreach my $s (@sites) { + print $tf $mult{$s}/$volden," " # output multiplicity per cell of each sublattice + } + print $tf " !\n"; # finish tdb command + print $tf "CONSTITUENT ",$phase," :"; # write CONSTITUENT tdb command for current phase + foreach my $s (@sites) { # look over sublattices + my $frst=1; + foreach my $at (@{$spec{$s}}) { # loop of species (elements) + if (!$frst) {print $tf ",";} # comma separated, except before first element + $frst=0; + print $tf uc $at; # list atom + } + print $tf ":"; # sublattice are : separated + } + print $tf "!\n"; # finish tdb command + print $tf join("\n",@endfunc),"\n"; # output all ab initio free energies for end members + print $tf join("\n",values %elemfunc),"\n"; # output all end member reference free energy shifters + print $tf join("\n",@xsparam),"\n"; # output all excess free energy terms + } +} + +# subroutine to combine multiple phases into a single tdb file +sub comb_phases() { + my $mysed=" | grep -v -e '^#' -e '^\$' | sed -e 's//\\n/g' -e 's/ELEM_//g' "; # filter to create valid tdb file (eliminate comments expand newlines remove ELEM_) + + open(my $eh,"grep -H '^CONSTITUENT ' */*.tdb | sed -e 's/^[^:]*:[^:]*://g' -e 's/: *!//g' -e 's/[:,]/\\n/g' | sort -u |"); #list all unique elements found in files */*.tdb + my @allelem=<$eh>; # slurp all lines into array of element names + chomp @allelem; + @allelem = map uc,@allelem; # cleanup: no newline and uppercase + print "Found elements ",join(' ',@allelem),"\n"; # report elements found + my $togrepe="grep " . join('',(map {"-e \'ELEM_" . $_ . " \' "} @allelem)). $atatdir . "/data/sgte_elements.tdb"; # command to fetch elemental data from sgte database + system($togrepe . "$mysed >| tmp.tdb"); # copy to our tdb file after cleanup filter + + open(my $ph,"cat */*.tdb | grep SGTE_ | sed 's/.*SGTE_\\([^ ]*_\\)\\([^ _]*\\) .*/\\1ELEM_\\2/g' | sort -u |"); # list all unique phase needing sgte data in */*.tdb + my @allsgtephase=<$ph>; # slurp all phases into array + chomp @allsgtephase; + @allsgtephase = map uc,@allsgtephase; # cleanup: no newline and uppercase + my $phaselist = join(' ',@allsgtephase); #make phase list to report to user + $phaselist =~ s/ELEM_//g; + print "Phases found in SGTE database: ",$phaselist,"\n"; + my $togrepp="grep " . join('',(map {"-e \'" . $_ . " \' "} @allsgtephase)). $atatdir . "/data/sgte_freee.tdb"; # fetch sgte free energy functions for each phase + system($togrepp . $mysed . " >> tmp.tdb"); # append to tdb file + + print "Using:\n"; + system("ls -1 */*.tdb"); # report which files are being used + system("cat */*.tdb >> tmp.tdb"); # catenate all */*.tdb available files + + $togrepp =~ s/_ELEM_([^ ]*) /,ELEM_\1/g; + system($togrepp . $mysed . " >> tmp.tdb"); # fetch additional sgte data if any (for magnetic and gas phases) + + my $tdbfile=join('',join('_',@allelem),".tdb"); # make final tdb file name + if (-e "subref.sed") { # if user-defined substitution rules exist + system(join('',"sed -f subref.sed tmp.tdb >| ",$tdbfile)); # apply them to file + } + else { + system(join('',"mv tmp.tdb ",$tdbfile)); # otherwise just move + } + if ($cmdline{"-oc"}) { # make open calphad compliant if -oc specified + system("mv " . $tdbfile . " tmp.tdb"); + system(q{grep FUNCTION tmp.tdb | awk 'BEGIN {n=0;} {printf "s/%s/FUNC%04i/g\n",$2,n; n++}' > func.sed}); + system(q{cat tmp.tdb | awk '/^ELEMENT/ {printf " ELEMENT %-2s %-24s %f %f %f !\n",$2,$3,$4,$5,$6;} ! /^ELEMENT/ {print $0;}' | sed -e 's/^PHASE/ PHASE/g' -e 's/^FUNCTION/ FUNCTION/g' -e 's/^CONSTITUENT/ CONSTITUENT/g' -e 's/^PARAMETER\(.*\)N !/ PARAMETER\1N REFDUM !/g' | sed -f func.sed | + awk '{maxlen=77; + line =$0; + while (length(line)>maxlen) { + cut=maxlen; + while (1) { + while (index(" -+",substr(line,cut,1)) == 0) {cut--;} + if(substr(line,cut-1,1)!="E") break; + cut--; + } + print substr(line,1,cut-1); + line=" " substr(line,cut); + } + print line; + }' > } . $tdbfile); + system("rm tmp.tdb func.sed"); + + + + } +} + +# help +sub print_help() { + my $version; + { + open(my $vh,"grep define.MAPS_VERSION $atatdir/src/version.hh |"); + $version = <$vh>; + chomp $version; + $version =~ s/.*\"(.*)\".*/\1/g; + } + print "sqs2tdb version " . $version; + print qq{ by Axel van de Walle and with contributions to the SQS database + from Ruoshi Sun, Qijun Hong and Sara Kadkhodaei. + +Usage: sqs2tdb [options] where the available options are: +-h : More help. +-cp : Copy SQS from the database to the current directory. Must specify: + -lv=[level] + level indicates how fine of composition mesh to use (0: only end members, 1: mid points, etc.) + -l=[lattice] + Available lattices +}; + system("ls ${atatdir}/data/sqsdb/ | sed 's/^/ /g'"); + print qq{ + Optional: -sp=Element,Element,... to indicate which elements to consider + (otherwise read from species.in if it exists). +-fit : Fit solution model from SQS energies (to be run within the desired lattice directory). +-tdb : Combine solution models from one or multiple lattices into a single .tdb file. + add the -oc (Open Calphad) option to generate a more portable tdb file. +-mk : Generate input file for SQS generation with mcsqs. (Usually not needed - only for experts.) + To be run in the SQS database directory: +}; + print " ",join("",$atatdir,"/","data/sqsdb/","[lattice name]\n"); + print qq{Note that -h,-mk,-cp,-fit,-tdb are mutually exclusive. +}; + print qq{ + +For more information see user guide published in: + A. van de Walle, R. Sun, Q.-J. Hong, and S. Kadkhodaei. + Software tools for high-throughput calphad from first-principles data. + Calphad, 58:70, 2017. + https://doi.org/10.1016/j.calphad.2017.05.005 +(Also, this paper should be cited in any publication resulting from this code's use.) +}; + if ($cmdline{"-h"}) { + print q{ +EXAMPLES + +-> A simple session of sqs2tdb could be: + +cp ~/atat/example/vasp.wrap . +emacs vasp.wrap #edit as needed + +echo Al,Ni > species.in + +sqs2tdb -cp -l=FCC_A1 -lv=1 +sqs2tdb -cp -l=FCC_A1 -lv=1 + +cd FCC_A1 +foreachfile wait pwd \; runstruct_vasp + +sqs2tdb -fit + +Edit the file terms.in to read +1,0 +2,0 + +sqs2tdb -fit + +cd .. + +(repeat the above for other lattices if necessary) + +sqs2tdb -tdb + +The file AL_NI.tdb would contain a valid .tdb file. + +-> In a more advanced example, the runstruct_vasp command could be replaced +by a job script submission containing the runstruct_vasp command. + +-> When there are lattice instabilities, the runstruct_vasp could be replaced by +robustrelax_vasp -mk #this is to be run only once (see robustrelax_vasp -h for instructions) +robustrelax_vasp -id + +-> If phonons are to be included (for end members) one could do: +foreachfile endmem pwd \; fitfc -si=str_relax.out -ernn=4 -ns=1 -nrr +foreachfile -d 3 wait \; runstruct_vasp -lu -w vaspf.wrap + where vaspf.wrap contains parameters for a static run to calculate forces. +foreachfile endmem pwd \; fitfc -si=str_relax.out -f -frnn=2 +foreachfile endmem pwd \; robustrelax_vasp -vib + +sqs2tdb -fit + +OPTIONAL input files (to placed in the topmost directory): + + exfromsgte.in : specify which phases should NOT be copied from SGTE database + (by default all phases for each relevant element are included, + but you may want to use ab initio data for virtual phase) + subref.sed : substitution rule (sed command to be applied to final tdb file) + +OUTPUT FILES + In addition to the *.tdb files, there is some diagnostic info available in the files fit_[property].out where property could be + energy, svib_ht, etc. + +ADVANCED FEATURES + In each sqs subdirectory created, there may be a file called link that contains the path to + another directory where energy data can be found. This is useful if another structure is + known be equivalent by symmetry. This file is created by default for equivalence within a + given structure type can even find symmetries across structure types. + You can also create the file yourself and the code will follow your link. + + There may also be a file called bump which indicates that a structure must be moved up in energy by the + amount specified by the -bv option (or 5e-3 by default) to avoid degeneracy with an equivalent higher symmetry structure. + This file is created by default (during the -cp step) when the code detects higher symmetry (e.g. a GAMMA_L12 phase with all sites occupied + with the same type of atom is just FCC). You can delete this file if the higher-symmetry structure is not in your + set of structures. This file is read during the -fit step. + + In summary, if you see a bump file, ask yourself if you have that structure elsewhere and put an appropriate link file. + If you don't have that structure elsewhere, you can delete the bump file. + The code will still work and give the right answer if you don't do this, but it will spend more computer time. + + During the -fit step, one can specify the -sro option to include a low-order CVM approximation to the short range order. + + The default lower and upper temperature limits of 298.15K and 10000K can be changed with the -Tl=... and -Tu=... options, respectively. +}; + } +} + +#Main + +#parse one of the 5 main modes in which the code is operating: +if (@ARGV == 0 || $cmdline{"-h"}) { + print_help(); +} +elsif ($cmdline{"-mk"}) { + makemanysqs(); + print "Directories setup\n"; +} +elsif ($cmdline{"-cp"}) { + copysqs(); + print "Copied SQSs\n"; +} +elsif ($cmdline{"-fit"}) { + fittdb(); + print "Fit completed\n"; +} +elsif ($cmdline{"-tdb"}) { + comb_phases(); + print "TDB file created\n"; +} +else { + print "Please specify at least one of -mk -cp -fit -tdb or -h for help\n"; +} diff --git a/src/stm.c++ b/src/stm.c++ new file mode 100644 index 0000000..f7ba09d --- /dev/null +++ b/src/stm.c++ @@ -0,0 +1,155 @@ +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" + +Real interpol(Real x,Real x0,Real x1,Real y0,Real y1){ + return (y0+(y1-y0)*(x-x0)/(x1-x0)); +} + +int main(int argc, char *argv[]) { + Real density=0.; + char *strfilename="str.out"; + char *regionfilename="region.in"; + char *hrangefilename=""; + char *afterlabel=""; + int pdensityrange=0; + int beginz=0; + int roll=0; + AskStruct options[]={ + {"","STM simulator " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-s","Input file defining the structure geometry (default: str.out)",STRINGVAL,&strfilename}, + {"-r","Input file defining the region scanned (default: region.in)",STRINGVAL,®ionfilename}, + {"-h","Input file defining the height range (default: calculated from input)",STRINGVAL,&hrangefilename}, + {"-a","Start read after this label",STRINGVAL,&afterlabel}, + {"-dr","Print density range",BOOLVAL,&pdensityrange}, + {"-id","Iso-density level",REALVAL,&density}, + {"-bz","",INTVAL,&beginz}, + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (file_exists("roll.in")) { + ifstream file("roll.in"); + file >> roll; + } + for (int i=0; i> nx >> ny >> nz; + Real mind=MAXFLOAT; + Real maxd=-MAXFLOAT; + Array > > raw; + raw.resize(nz); + for (int iz=0; iz> raw(riz)(iy)(ix); + mind=MIN(mind,raw(riz)(iy)(ix)); + maxd=MAX(maxd,raw(riz)(iy)(ix)); + } + } + } + if (pdensityrange) { + cout << mind << " " << maxd << endl; + exit(0); + } + Array2d h(nx,ny); + for (int ix=0; ix=0 && raw(iz)(iy)(ix)> v0; v0=axes*v0; + regionfile >> v1; v1=axes*v1; + regionfile >> v2; v2=axes*v2; + Real step=sqrt(norm(cell.get_column(0)^cell.get_column(1))/(Real)(nx*ny))/2.; + int n1=(int)(norm(v1)/step); + int n2=(int)(norm(v2)/step); + rVector3d dv1,dv2; + dv1=v1/n1; + dv2=v2/n2; + Real zscale=norm(cell.get_column(2))/((Real)nz); + Array2d stm(n1,n2); + Real minh=MAXFLOAT; + Real maxh=-MAXFLOAT; + for (int i1=0; i10) { + ifstream hfile(hrangefilename); + if (!hfile) {ERRORQUIT("Unable to open height file");} + hfile >> minh >> maxh; + } + { + ofstream hfile("hrange.out"); + hfile << minh << " " << maxh << endl; + } + ostream &outfile=cout; + int linecutlim=6; + Real maxgray=255.; + outfile << "P2" << endl; + outfile << "# STM image" << endl; + outfile << n1 << " " << n2 << endl; + outfile << maxgray << endl; + int linecut=0; + for (int i2=0; i2=maxgray) {g=maxgray;} + outfile << (int)g; + linecut++; + if (linecut>=linecutlim) { + outfile << endl; + linecut=0; + } + else { + outfile << " "; + } + } + } +} diff --git a/src/str2cif b/src/str2cif new file mode 100755 index 0000000..11774b2 --- /dev/null +++ b/src/str2cif @@ -0,0 +1,26 @@ +#!/bin/bash + +if [[ "x$1" == "x-h" ]] +then + echo Converts an ATAT structure file \(from stdin\) to the CIF format \(stdout\). + exit 1 +fi +cellcvrt -f -abc | awk 'BEGIN {n=0;} { +n++; +if (n==1) { + print "data_global _chemical_name 'MyName'"; + print "_cell_length_a " $1; + print "_cell_length_b " $2; + print "_cell_length_c " $3; + print "_cell_angle_alpha " $4; + print "_cell_angle_beta " $5; + print "_cell_angle_gamma " $6; + print "_symmetry_space_group_name_H-M \x27P 1\x27"; + print "loop_"; + print "_atom_site_label"; + print "_atom_site_fract_x"; + print "_atom_site_fract_y"; + print "_atom_site_fract_z"; +} else if (n>4) { + print $4,$1,$2,$3; +}}' diff --git a/src/str2xyz b/src/str2xyz new file mode 100755 index 0000000..9cd88de --- /dev/null +++ b/src/str2xyz @@ -0,0 +1,39 @@ +#!/bin/csh +if ( 'x'$3 == 'x' ) then + echo "Utility to convert structure files into xyz files suitable for viewing with rasmol" + echo "Syntax: str2xyz [-v] na nb nc [scale] infile" + echo "-v (optional) calls rasmol (otherwise, xyz file is written to stdout" + echo "na nb nc define the number of periodic repetition to plot" + echo "scale (optional) scales the structure to adjust which bonds are plotted" + exit 1 +endif + +if ( 'x'$1 == 'x-v' ) then + set doview + shift; +endif + +if ( 'x'$5 == 'x' ) then + set scale=1 + set infile=$4 +else + set scale=$4 + set infile=$5 +endif + +if ( "$1" == "1" && "$2" == "1" && "$3" == "1" ) then + cat $infile | cellcvrt -f | cellcvrt -c -sc=$scale | awk '{print $4,$1,$2,$3}' | tail -n +7 >! tmptmp.str +else + (echo $1 0 0 ; echo 0 $2 0 ; echo 0 0 $3) >! supercell.tmp + cat $infile | cellcvrt -f | cellcvrt -uss=supercell.tmp | cellcvrt -c -sc=$scale | awk '{print $4,$1,$2,$3}' | tail -n +7 >! tmptmp.str +endif + +( echo `cat tmptmp.str | wc -l` ; echo Title ; cat tmptmp.str ) >! tmptmp.xyz + +if ( $?doview ) then + rasmol -xyz tmptmp.xyz +else + cat tmptmp.xyz +endif + +rm -f tmptmp.xyz tmptmp.str supercell.tmp diff --git a/src/strainder.c++ b/src/strainder.c++ new file mode 100644 index 0000000..78355fd --- /dev/null +++ b/src/strainder.c++ @@ -0,0 +1,299 @@ +#include +#include +#include "getvalue.h" +#include "parse.h" +#include "version.h" +#include "findsym.h" +#include "arraylist.h" +#include "tensorsym.h" +#include "lstsqr.h" + +//extern char *helpstring; +char *helpstring=""; + +void convert(rMatrix3d *mat, const rTensor &ten) { + Array i(2); + for (i(0)=0; i(0)<3; i(0)++) { + for (i(1)=0; i(1)<3; i(1)++) { + (*mat)(i(0),i(1))=ten(i); + } + } +} + +int main(int argc, char *argv[]) { + rMatrix3d Id; + Id.identity(); + char *strfilename="str_relax.out"; + char *tensorfilename="tensor.out"; + Real max_strain=0.01; + int nb_strain=1; + int dohelp=0; + int sigdig=5; + int fit=0; + int rank=1; + int nozero=0; + char *sym_indices=""; + int proper=0; + int dummy=0; + AskStruct options[]={ + {"","STRAIN DERivative calculator " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-f","Fit (instead of the default, generate perturbations)",BOOLVAL,&fit}, + {"-s","Input file defining the relaxed structure (default: str_relax.out)",STRINGVAL,&strfilename}, + {"-t","Name of the tensor file",STRINGVAL,&tensorfilename}, + {"-r","Rank of the tensor",INTVAL,&rank}, + {"-si","Symmetric indexes (comma-separated list; indices start at 0)",STRINGVAL,&sym_indices}, + {"-ms","Maximum strain magnitude imposed (default: 0.01)",REALVAL,&max_strain}, + {"-ns","Number of strain values (default: 1)",INTVAL,&nb_strain}, + {"-nz","Do not assume tensor is zero at zero strain",BOOLVAL,&nozero}, + {"-pr","Compute proper piezoelectric constant",BOOLVAL,&proper}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-z","Tolerance for finding symmetry operations (default: 1e-3)",REALVAL,&zero_tolerance}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + Structure str; + Array atom_label; + rMatrix3d axes; + { + Array site_type_list; + ifstream file(strfilename); + if (!file) ERRORQUIT("Unable to open relaxed structure file."); + parse_lattice_file(&str.cell, &str.atom_pos, &str.atom_type, &site_type_list, &atom_label, file, &axes); + if (fabs(det(str.cell)) > symflip(1); + symflip(0).resize(2); symflip(0)(0)=0; symflip(0)(1)=1; + Array pert_strain_t; + find_symmetry_breaking_basis(&pert_strain_t, 2,pointgroup, symflip); + + for (int pert=0; pert=-1; m-=2) { + rMatrix3d strain; + convert(&strain,pert_strain_t(pert)); + strain=max_strain*((Real)m)*strain; + Structure sstr; + strain_str(&sstr,str,strain); + // check if negative pert equivalent; + if (m==-1) { + rMatrix3d ipluscell=!((Id-strain)*str.cell); + int op=0; + for ( ; op tensorsize(rank); + if (rank==0) { + tensorsize.resize(1); + tensorsize(0)=1; + } + else { + fill_array(&tensorsize,3); + } + + cerr << "Reading..." << endl; + + rTensor atzero(tensorsize); + atzero.zero(); + if (nozero) { + ifstream tensorfile(tensorfilename); + if (!tensorfile) { + cerr << " Unable to open file " << tensorfilename << " for zero strain" << endl; + ERRORQUIT("Aborting"); + } + MultiDimIterator > i(tensorsize); + for (; i; i++) { + tensorfile >> atzero(i); + } + } + + system("ls p[-+]*/str_relax.out 2> /dev/null | sed 's+/str_relax.out++g' > pertlist.out"); + LinkedList tensor_list; + LinkedList strain_list; + { + ifstream volfile("pertlist.out"); + while (skip_delim(volfile)) { + AutoString volname; + get_string(&volname,volfile); + cerr << volname; + chdir_robust(volname); + + Structure sstr; + ifstream file("str_relax.out"); + parse_structure_file(&(sstr.cell), &(sstr.atom_pos), &(sstr.atom_type), atom_label, file); + if (file_exists(tensorfilename)) { + rMatrix3d strain=sstr.cell*(!str.cell)-Id; + strain_list << new rMatrix3d(strain); + ifstream tensorfile(tensorfilename); + rTensor tensor(tensorsize); + MultiDimIterator > i(tensorsize); + for (; i; i++) { + tensorfile >> tensor(i); + tensor(i)-=atzero(i); + } + tensor_list << new rTensor(tensor); + cerr << endl; + } + else { + cerr << " Unable to open file " << tensorfilename << endl; + } + + chdir_robust(".."); + } + } + unlink("pertlist.out"); + + Array > symflip; + { + //create symflip array + istrstream idxstring(sym_indices); + LinkedList indexlist; + while (1) { + int num=-1; + idxstring >> num; + if (num==-1) break; + indexlist << new int(num); + } + if (indexlist.get_size()%2!=0) { + ERRORQUIT("Must specify an even number of indices"); + } + + symflip.resize(indexlist.get_size()/2+1); + LinkedListIterator it(indexlist); + int j=0; + for (; it; j++) { + symflip(j).resize(2); + symflip(j)(0)=*it; + it++; + symflip(j)(1)=*it; + it++; + } + symflip(j).resize(2); + symflip(0)(0)=rank+0; + symflip(0)(1)=rank+1; + // end + } + + Array tensor_basis; + find_symmetric_basis(&tensor_basis, rank+2,pointgroup, symflip); + + int block=ipow(3,rank); + Array big_tensor(tensor_list.get_size()*block); + Array2d big_eqnmat(tensor_list.get_size()*block,tensor_basis.get_size()); + zero_array(&big_tensor); + zero_array(&big_eqnmat); + + Array resptensorsize(rank+2); + fill_array(&resptensorsize,3); + LinkedListIterator itensor(tensor_list); + LinkedListIterator istrain(strain_list); + for (int p=0; itensor; p++,itensor++,istrain++) { + MultiDimIterator > i(tensorsize); + for (int j=0; i; i++,j++) { + big_tensor(p*block+j)=(*itensor)((Array&)i); + } + for (int b=0; b > i(resptensorsize); + Array &ai=(Array &)i; + for (int j=0; i; i++,j++) { + big_eqnmat(p*block+(j%block),b)+=tensor_basis(b)(ai)*(*istrain)(ai(rank+0),ai(rank+1)); + } + } + } + Array beta; + calc_ols(&beta,big_eqnmat,big_tensor); + + Array tensor_hat; + product(&tensor_hat,big_eqnmat,beta); + + { + ofstream logfile("strainder.log"); + logfile.setf(ios::fixed); + logfile.precision(sigdig); + logfile << "system of equations:"; + logfile << big_eqnmat << endl; + + logfile << "actual tensor predicted tensor difference" << endl; + for (int i=0; i > i(resptensorsize); + for (; i; i++) { + strainder(i)+=tensor_basis(b)(i)*beta(b); + } + } + + if (proper) { + if (rank!=1) {ERRORQUIT("rank must be 1 for this option.");} + MultiDimIterator > i(resptensorsize); + Array &ai=(Array &)i; + for (; i; i++) { + strainder(i)+=( ai(1)==ai(2) ? 1. : 0.)*atzero.vectorize()(ai(0))-( ai(0)==ai(1) ? 1. : 0.)*atzero.vectorize()(ai(2)); + } + } + + + cout.setf(ios::fixed); + cout.precision(sigdig); + MultiDimIterator > i(resptensorsize); + for (; i; i++) { + cout << strainder(i) << endl; + } + } +} diff --git a/src/stringo.c++ b/src/stringo.c++ new file mode 100644 index 0000000..001f381 --- /dev/null +++ b/src/stringo.c++ @@ -0,0 +1,16 @@ +#include "stringo.h" + +/* +istream& operator >> (istream &file, AutoString &str) { + static char buf[1000]; + file.get(buf,1000); + return file; +} +*/ + +Real to_real(const AutoString &s) { + istrstream str((const char *)s); + Real r; + str >> r; + return r; +} diff --git a/src/stringo.hh b/src/stringo.hh new file mode 100644 index 0000000..b91952c --- /dev/null +++ b/src/stringo.hh @@ -0,0 +1,144 @@ +#ifndef __STRINGO_H__ +#define __STRINGO_H__ + +#include +#include +#include +#include +#include "misc.h" + +class AutoString { +protected: + char *buf; +#ifdef DEBUG + int truelen; +#endif +public: + AutoString(const char *str) { + buf=NULL; + set(str); + } + AutoString(const AutoString &a) { + buf=NULL; + set(a); + } + AutoString(int len) { + buf=NULL; + set(len); + } + void set(const char *str) { + if (buf) delete[] buf; + if (str) { + buf=new char[strlen(str)+1]; + strcpy(buf,str); +#ifdef DEBUG + truelen=strlen(str); +#endif + } + else + buf=NULL; + } + void set(int len) { + if (buf) delete[] buf; + buf=new char[len+1]; + MEMCLR(buf,len+1); +#ifdef DEBUG + truelen=len; +#endif + } + AutoString(void) { + buf=NULL; + set(""); + } + int len(void) const { + if (buf) { + return strlen(buf); + } + else { + return 0; + } + } + void operator=(const AutoString &a) { + set(a); + } +#ifndef STRING_FIX + operator char * () { + return buf; + } +#endif + operator const char * () const { + return buf; + } + char& operator [](int i) { +#ifdef DEBUG + if ( i<0 || i>=truelen ) { + cerr << "AutoString out of range: " << i << "/" << truelen << endl; + ERRORQUIT("Abort"); + } + else +#endif + return buf[i]; + } + const char& operator [](int i) const { +#ifdef DEBUG + if ( i<0 || i>=truelen ) { + cerr << "AutoString out of range: " << i << "/" << truelen << endl; + ERRORQUIT("Abort"); + } + else +#endif + return buf[i]; + } + void operator += (const AutoString &s) { + char *newbuf=new char[len()+s.len()+1]; + strcpy(newbuf,*this); + strcpy(newbuf+len(),s); + delete[] buf; + buf=newbuf; +#ifdef DEBUG + truelen=strlen(newbuf); +#endif + } + void operator += (char c) { + char *newbuf=new char[len()+2]; + strcpy(newbuf,*this); + newbuf[len()]=c; + newbuf[len()+1]=0; + delete[] buf; + buf=newbuf; +#ifdef DEBUG + truelen=strlen(newbuf); +#endif + } + int operator == (const AutoString &s) const { + return (strcmp(*this,s)==0); + } + ~AutoString() { + if (buf) delete[] buf; + } + friend istream& operator >> (istream &file, AutoString &str); +}; + +Real to_real(const AutoString &s); + +#include "binstream.h" + +inline ostream & bin_ostream(ostream &file, AutoString &str) { + bin_ostream(file, str.len()); + for (int i=0; i &x, int dimstrain) { + pm->zero(); + int uaxis=dimstrain/4; + dimstrain=dimstrain%4; + iVector3d sh; + if (dimstrain==3) { + sh=iVector3d(0,3,5); + } + else if (dimstrain==2) { + sh=iVector3d(0,2,0); + } + else { + sh=iVector3d(0,0,0); + } + for (int i=0; i &x, int dimstrain) { + if (dimstrain==3) { + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + int ii=i; + int jj=j; + if (j *px, const rMatrix3d &m, int dimstrain) { + if (px->get_size()==0) {px->resize(num_strain_dim(dimstrain));} + int uaxis=dimstrain/4; + dimstrain=dimstrain%4; + int k=0; + for (int i=0; i *px, const rMatrix3d &m, int dimstrain) { + if (dimstrain==3) { + if (px->get_size()==0) {px->resize(6);} + int k=0; + for (int i=0; i<3; i++) { + for (int j=i; j<3; j++) { + (*px)(k)=m(i,j); + k++; + } + } + } + else { + if (px->get_size()==0) {px->resize(3);} + int k=0; + for (int i=0; i<2; i++) { + for (int j=i; j<2; j++) { + (*px)(k)=m(i,j); + k++; + } + } + } +} +*/ + +OptimizedStructure::OptimizedStructure(void): FunctionWithGrad(), grad(), val(0), axes(), str(), atom_label(), sumpos() {stressscale=0; strainscale=0; sleeptime=5; dimstrain=3;} + +OptimizedStructure::~OptimizedStructure(void) {ofstream file("stop");} + +void OptimizedStructure::init(Array *px, const rMatrix3d &_axes, const Structure &_str, const Array &_atom_label, Real forcefact, int _dimstrain) { + axes=_axes; + str=_str; + dimstrain=_dimstrain; + Real omega=det(str.cell)/(Real)(str.atom_pos.get_size()); + stressscale=pow(omega,2./3.)*forcefact; + strainscale=pow(omega,1./3.)*(Real)(str.atom_pos.get_size())/forcefact; + atom_label=_atom_label; + px->resize(num_strain_dim(dimstrain)+3*(str.atom_pos.get_size()-1)); + rMatrix3d id; + id.zero();// + Matrix3d_to_Array6(px,id,dimstrain); + sumpos=rVector3d(0.,0.,0.); + for (int at=0; at0) { + for (int j=0; j<3; j++) { + (*px)(num_strain_dim(dimstrain)+3*(at-1)+j)=v(j); + } + } + } +} + +void OptimizedStructure::vect_to_str(Structure *pstr, const Array &x) { + pstr->atom_type=str.atom_type; + rMatrix3d strainI; + Array6_to_Matrix3d(&strainI,x,dimstrain); + strainI=strainI/strainscale; + rMatrix3d id;// + id.identity(); + strainI=id+strainI; + pstr->cell=strainI*str.cell; + pstr->atom_pos.resize(str.atom_pos.get_size()); + rVector3d v0(0.,0.,0.); + rMatrix3d icell=!str.cell; + for (int at=1; atatom_pos.get_size(); at++) { + rVector3d v; + for (int j=0; j<3; j++) { + v(j)=x(num_strain_dim(dimstrain)+3*(at-1)+j); + } + pstr->atom_pos(at)=pstr->cell*icell*v; + v0+=v; + } + pstr->atom_pos(0)=pstr->cell*icell*(sumpos-v0); +} + +void OptimizedStructure::set_arg(const Array &x) { + Real stressconv=1e8/1.6e-19*1e-30; // kB to eV/A^3; + Structure curstr; + cout << "x= "; + tracev(x); + vect_to_str(&curstr,x); + { + ofstream file("str.out"); + file.setf(ios::fixed); + file.precision(5); + write_structure(curstr,atom_label,axes,file,0); + } + {ofstream flag("busy");} + while (file_exists("busy")) { + sleep(sleeptime);// + } + { + ifstream efile("energy"); + efile >> val; + } + cout << "read energy\n"; + grad.resize(num_strain_dim(dimstrain)+3*(str.atom_pos.get_size()-1)); + rMatrix3d strainI; + { + ifstream sfile("stress.out"); + rMatrix3d rawstress; + rawstress(2,2)=MAXFLOAT; + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + sfile >> rawstress(i,j); + } + } + if (rawstress(2,2)==MAXFLOAT) { + ERRORQUIT("Error reading stress.out file."); + } + /* + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + if (i!=j) {rawstress(i,j)*=2.;} + } + } + */ + cout << "read stress\n"; + rMatrix3d stress; + rMatrix3d id; + id.identity();// + Array6_to_Matrix3d(&strainI,x,dimstrain); + strainI=strainI/strainscale; + strainI=id+strainI; + stress=-stressscale*stressconv*rawstress*(~ ! strainI); + //cout << "stress= " << stress << endl; + for (int i=0; i<3; i++) { + for (int j=i+1; j<3; j++) { + stress(i,j)+=stress(j,i); + stress(j,i)=0.; + } + } + Matrix3d_to_Array6(&grad,stress,dimstrain); + } + { + ifstream rfile("str_relax.out"); + Structure str_relax; + rMatrix3d axes_relax; + parse_structure_file(&(str_relax.cell), &(str_relax.atom_pos), &(str_relax.atom_type), atom_label, rfile, &axes_relax); + Array copyfrom; + Array cellshift; + reorder_atoms(&str_relax,str,©from,&cellshift); + cout << "read str_relax.out\n"; + + ifstream ffile("force.out"); + Array rawforce(str.atom_pos.get_size()); + rawforce(rawforce.get_size()-1)(2)=MAXFLOAT; + for (int i=0; i> rawforce(i); + } + cout << "read forces\n"; + if (rawforce(rawforce.get_size()-1)(2)==MAXFLOAT) { + ERRORQUIT("Error reading force.out file."); + } + + for (int at=1; at _c) { + c=_c; + pfunc->set_arg(c); + pfunc->get_grad(&g0); +} + +void SmallEpicycle::set_arg(const Array &_s) { + cout << "Epicycle" << endl; + Array x; + s=_s; + sum(&x,c,s); + // tracev(c); + cout << "epidx= "; + tracev(s); + cout << endl; + pfunc->set_arg(x); + e=pfunc->get_val(); + Array g; + pfunc->get_grad(&g); + diff(&df,g,g0); + product(&df,df,1./norm(s)); +} diff --git a/src/strinterf.hh b/src/strinterf.hh new file mode 100644 index 0000000..80f4944 --- /dev/null +++ b/src/strinterf.hh @@ -0,0 +1,53 @@ +#ifndef __STRINTERF_H__ +#define __STRINTERF_H__ + +#include +#include "stringo.h" +#include "xtalutil.h" +#include "opti.h" + +int num_strain_dim(int n); + +void Array6_to_Matrix3d(rMatrix3d *pm, const Array &x, int dimstrain); + +void Matrix3d_to_Array6(Array *px, const rMatrix3d &m, int dimstrain); + +class OptimizedStructure: public FunctionWithGrad { + Real val; + Array grad; + rVector3d sumpos; + Real stressscale; + Real strainscale; + int dimstrain; +public: + rMatrix3d axes; + Structure str; + Array atom_label; + int sleeptime; +public: + OptimizedStructure(void); + ~OptimizedStructure(void); + void init(Array *px, const rMatrix3d &_axes, const Structure &_str, const Array &_atom_label, Real forcefact=1., int _dimstrain=3); + void vect_to_str(Structure *pstr, const Array &x); + void set_arg(const Array &x); + Real get_val(void) const {return val;} + void get_grad(Array *pgrad) const {*pgrad=grad;} +}; + +class SmallEpicycle: public FunctionWithGrad { + FunctionWithGrad *pfunc; + Array c; + Array s; + Array g0; + Array df; + Real e; +public: + SmallEpicycle(FunctionWithGrad *_pfunc): FunctionWithGrad(), c(), s(), g0(), df() {pfunc=_pfunc;} + void init(const Array _c); + void get_grad_org(Array *pg) {*pg=g0;} + void set_arg(const Array &_s); + Real get_val(void) const {return e;} + void get_grad(Array *pdf) const {*pdf=df;} +}; + +#endif diff --git a/src/strpath.c++ b/src/strpath.c++ new file mode 100644 index 0000000..6bf1f8c --- /dev/null +++ b/src/strpath.c++ @@ -0,0 +1,203 @@ +#include +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" + +char *helpstring="Insert more help here"; + +int find_inflect_pt(Real *pinflecty, Real *ppos, const Array &y) { + Real tiny=1e-6; + Real c1=y(0)+y(2)-2.*y(1); + Real c2=y(1)+y(3)-2.*y(2); + if (c1*c2>0) {return 0;} + Real x=0.5; + if ((c2-c1)>tiny*max(fabs(c1),fabs(c2))) { + x=-c1/(c2-c1); + } + *pinflecty=y(1)*(1-x)+y(2)*x; + if (ppos) { + *ppos=x+1.; + } + return 1; +} + +int find_local_min(Real *pminy, Real *ppos, const Array &y) { + if (y(1) energylist; + while (1) { + Real tmp=MAXFLOAT; + cin >> tmp; + if (tmp==MAXFLOAT) break; + energylist << new Real(tmp); + } + Array energy; + LinkedList_to_Array(&energy,energylist); + int i; + for (i=0; i e3; + extract_elements(&e3,energy,i,i+3); + int found=0; + found=find_local_min(&ei,&xi,e3); + if (found) {cerr << "Local minimum found" << endl;} + if (!found && i e4; + extract_elements(&e4,energy,i,i+4); + found=find_inflect_pt(&ei,&xi,e4); + } + if (found) { + if (doinflectpos) { + cout << ((Real)i+xi)/(Real)(energy.get_size()-1) << endl; + } + else { + cout << ei << endl; + } + break; + } + } + if (i==energy.get_size()-2) { + if (doinflectpos) { + cout << 1. << endl; + } + else { + cout << energy(energy.get_size()-1) << endl; + } + } + exit(0); + } + + // parsing lattice and structure files. See parse.hh for detail; + Structure str1; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream str1file(str1filename); + if (!str1file) ERRORQUIT("Unable to open structure 1 file"); + parse_lattice_file(&str1.cell, &str1.atom_pos, &str1.atom_type, &labellookup, &label, str1file, &axes); + wrap_inside_cell(&str1.atom_pos,str1.atom_pos,str1.cell); + fix_atom_type(&str1, labellookup); + } + Structure str2; + { + ifstream str2file(str2filename); + if (!str2file) ERRORQUIT("Unable to open structure 2 file"); + parse_structure_file(&str2.cell, &str2.atom_pos, &str2.atom_type, label, str2file, NULL); + wrap_inside_cell(&str2.atom_pos,str2.atom_pos,str2.cell); + reorder_atoms(&str2,str1); + } + + Real f0,f1,df; + if (nimage==0) { + f0=midf; + df=1; + f1=midf+df/2; + } + else { + f0=0; + df=1./(Real)(nimage-1); + f1=1+df/2; + } + int im=0; + for (Real f=f0; f dir; + dir.resize(str1.atom_pos.get_size()); + Array frac1; + Array frac2; + rMatrix3d icell1=!str1.cell; + rMatrix3d icell2=!str2.cell; + for (int at=0; at0) { + for (int at=0; at +#include "phonlib.h" +#include "getvalue.h" +#include "parse.h" +#include "version.h" +#include "plugin.h" + +void read_spring_file(LinkedList *springlist, int *pmaxlpow, int *pdirdep, int *pconcpow, istream &file, const Array &label) { + *pmaxlpow=-1; + *pdirdep=0; + *pconcpow=0; + while (skip_delim(file)) { + AutoString atom; + SpringSvsL s; + get_string(&atom,file); + if (strcmp(atom,"maxlpow")==0) { + file >> *pmaxlpow; + } + else if (strcmp(atom,"dirdep")==0) { + file >> *pdirdep; + } + else if (strcmp(atom,"concpow")==0) { + file >> *pconcpow; + } + else { + s.atom_type[0]=index_in_array(label,atom); + skip_delim(file); + get_string(&atom,file); + s.atom_type[1]=index_in_array(label,atom); + s.forcek.resize(2); + file >> s.forcek(0); + file >> s.forcek(1); + (*springlist) << new SpringSvsL(s); + } + } + if (*pmaxlpow==-1) { + LinkedListIterator i(*springlist); + *pmaxlpow=i->forcek(0).get_size()-1; + } +} + +void read_spring_file(LinkedList *springlist, istream &file, const Array &label, const char *potplugin) { + while (skip_delim(file)) { + AutoString atom; + ExtendableSpringSvsL *pspring=new ExtendableSpringSvsL; + get_string(&atom,file); + pspring->atom_type[0]=index_in_array(label,atom); + skip_delim(file); + get_string(&atom,file); + pspring->atom_type[1]=index_in_array(label,atom); + pspring->pfunc=GenericPlugIn >::create(potplugin); + if (!pspring->pfunc->read(file)) { + ERRORQUIT("Error reading spring file."); + } + (*springlist) << pspring; + } +} + +void read_mass_file(Array *masses, istream &file, const Array &label) { + masses->resize(label.get_size()); + for (int i=0; iget_size(); i++) {(*masses)(i)=-1.;} + while (skip_delim(file)) { + AutoString curlab; + get_string(&curlab,file); + Real m; + file >> m; + int i=index_in_array(label,curlab); + if (i!=-1) {(*masses)(i)=m;} + } + for (int i=0; iget_size(); i++) { + if ((*masses)(i)==-1.) { + cerr << "Mass of " << label(i) << " is not known"; + ERRORQUIT("Aborting"); + } + } +} + +Real find_local_minimum(const Array &a,Real *pos=NULL) { + int i=1; + Real curmin=a(1); + for (int j=1; ja(j) && a(j-1)>a(j)) { + if (a(j)a(2)) { + if (a(0) > *GenericPlugIn >::list=NULL; + +int main(int argc, char *argv[]) { + char *latfilename=""; + char *strfilename="str.out"; + char *rel_strfilename="str_relax.out"; + char *sprfilename="slspring.out"; + char *potplugin=""; + char *massfilename=""; + Real bulkmod=0.; + char *bulkmodfile=""; + Real maxs=0.05; + int ns=1; + Real T0=0.; + Real T1=2000.; + Real dT=100.; + Real kppra=1000; + rVector3d kshift(0.5,0.5,0.5); + int kshift0; + Real hplanck=6.6260755e-34/1.60217733e-19; // h in eV s (not h bar); + Real kboltzman=1.380658e-23/1.60217733e-19; // k_B in eV/K; + Real convfk=1.60217733e-19*1e20; // converts eV/A^2 into J/m^2; + Real mass_unit=1.6605402e-27; // convert a.u. mass into kg; + Real robust_len=0.; + Real perfewer=1.; + int peratom=0; + int forceneg=0; + char *kdispfile=""; + char *strainfilename=""; + int sigdig=5; + int dummy=0; + int dohelp=0; + Real maxfklen=MAXFLOAT; + if (file_exists("../Trange.in")) { + ifstream tfile("../Trange.in"); + cerr << "Reading Trange.in file." << endl; + T0=0; + int nT=0; + tfile >> T1 >> nT; + dT=(T1-T0)/MAX(1,nT-1); + } + + AskStruct options[]={ + {"","Vibrational free energy calculator using the Stiffness VS Length method " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-l","Input file defining the lattice (defaults: lat.in, ../lat.in, str.out)",STRINGVAL,&latfilename}, + {"-us","Input file defining the unrelaxed structure (default: str.out)",STRINGVAL,&strfilename}, + {"-rs","Input file defining the relaxed structure (default: str_relax.out)",STRINGVAL,&rel_strfilename}, + {"-sp","Input file defining the springs (default: slspring.out)",STRINGVAL,&sprfilename}, + {"-m","Input file defining the atomic masses (default: ${atatdir}/data/masses.in)",STRINGVAL,&massfilename}, + {"-b","Bulk modulus",REALVAL,&bulkmod}, + {"-bf","Bulk modulus file",STRINGVAL,&bulkmodfile}, + {"-ms","Maximum stretching of the lattice parameter (default: 0.05)",REALVAL,&maxs}, + {"-ns","Number of lattice parameter stretching step (default: 1 => harmonic approximation)",INTVAL,&ns}, + {"-T0","Minimum temperature (default: 0) ",REALVAL,&T0}, + {"-T1","Maximum temperature (default: 2000)",REALVAL,&T1}, + {"-dT","Temperature step (default: 100)",REALVAL,&dT}, + {"-kp","Number of k-points per reciprocal atom (default: 1000)",REALVAL,&kppra}, + {"-s0","Use a gamma-centered k-point mesh (default shift: 1/2 1/2 1/2)",BOOLVAL,&kshift0}, + {"-sx","k-point shift (along 1st recip lat. vect.)",REALVAL,&kshift(0)}, + {"-sy","k-point shift (along 2nd recip lat. vect.)",REALVAL,&kshift(1)}, + {"-sz","k-point shift (along 3rd recip lat. vect.)",REALVAL,&kshift(2)}, + {"-hp","Planck's constant (default in (eV s))",REALVAL,&hplanck}, + {"-kb","Boltzman's constant (default in eV/K)",REALVAL,&kboltzman}, + {"-cfk","Conversion factor for force constants into energy/dist^2 (default: converts eV/A^2 into J/m^2)",REALVAL,&convfk}, + {"-mu","Mass units (default: converts a.u. mass into kg)",REALVAL,&mass_unit}, + {"-rl","Robust Length algorithm parameter for soft modes (beta)",REALVAL,&robust_len}, + {"-pa","Output free energy per atom instead of per unit cell",BOOLVAL,&peratom}, + {"-sc","Correction factor if spectator ion are present (default: 1)",REALVAL,&perfewer}, + {"-fn","Force continuation of calculations even if unstable",BOOLVAL,&forceneg}, + {"-df","Phonon dispersion curve calculation input file.",STRINGVAL,&kdispfile}, + {"-sf","Extra strain file",STRINGVAL,&strainfilename}, + {"-msl","Maximum spring length",REALVAL,&maxfklen}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-up","User-specified Potential Plug-in (optional)",STRINGVAL,&potplugin}, + {"-d","Use all default values",BOOLVAL,&dummy}, + {"-h","Display more help",BOOLVAL,&dohelp} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + if (kshift0) { + kshift=rVector3d(0.,0.,0.); + } + + int maxlpow=1; + int dirdep=0; + int concpow=0; + + Structure lat; + Array labellookup; + Array label; + rMatrix3d axes; + { + if (strlen(latfilename)==0) { + if (file_exists("lat.in")) {latfilename="lat.in";} + else if (file_exists("../lat.in")) {latfilename="../lat.in";} + else if (file_exists("str.out")) {latfilename="str.out";} + } + ifstream latfile(latfilename); + if (!latfile) ERRORQUIT("Unable to open lattice file"); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &labellookup, &label, latfile, &axes); + wrap_inside_cell(&lat.atom_pos,lat.atom_pos,lat.cell); + } + + Structure str; + { + ifstream strfile(strfilename); + if (!strfile) ERRORQUIT("Unable to open structure file"); + parse_structure_file(&str.cell, &str.atom_pos, &str.atom_type, label, strfile, NULL); + wrap_inside_cell(&str.atom_pos,str.atom_pos,str.cell); + rMatrix3d extrastrain; + extrastrain.identity(); + if (strlen(strainfilename)>0) { + ifstream strainfile(strainfilename); + strainfile >> extrastrain; + } + str.cell=extrastrain*(str.cell); + for (int at=0; at springlist; + LinkedList extspringlist; + + { + ifstream sprfile(sprfilename); + if (!sprfile) { + AutoString filename("../"); + filename+=sprfilename; + sprfile.clear(); + sprfile.open(filename); + if (!sprfile) { + ERRORQUIT("Unable to open spring file."); + } + } + if (strlen(potplugin)>0) { + if (!check_plug_in(ArrayFunctionArray(),potplugin)) { + ERRORQUIT("Aborting"); + } + read_spring_file(&extspringlist,sprfile,label,potplugin); + dirdep=1; + } + else { + read_spring_file(&springlist,&maxlpow,&dirdep,&concpow,sprfile,label); + } + } + + LinkedList dirdep_mat; + if (!dirdep) { + rMatrix3d *pid=new rMatrix3d; + pid->identity(); + dirdep_mat << pid; + } + else { + SpaceGroup spacegroup; + find_spacegroup(&spacegroup.point_op,&spacegroup.trans,lat.cell,lat.atom_pos,lat.atom_type); + Array pointgroup; + pointgroup_from_spacegroup(&pointgroup, spacegroup.point_op); + find_sym_const_tensor(&dirdep_mat, pointgroup,1); + } + + Array2d redtonored; + Array conc; + Array red_conc; + { + Array2d m; + Array v; + calc_noredtored(&m,&v,lat,labellookup); + calc_redtonored(&redtonored, m,v); + // if (!calc_concentration(&red_conc,lat,labellookup,str)) { + // ERRORQUIT("Error calculating concentration: cannot map an atom in structure onto lattice site."); + // } + calc_concentration(&red_conc, str.atom_type,label.get_size()); + product(&conc,redtonored,red_conc); + } + + MultiDimPoly multipoly; + { + int ddms=dirdep_mat.get_size(); + Array maxpows(1+ddms+redtonored.get_size()(0)); + Array dlineq(maxpows.get_size()),duineq(maxpows.get_size()); + Array cineq(maxpows.get_size()); + zero_array(&dlineq); + zero_array(&duineq); + zero_array(&cineq); + maxpows(0)=maxlpow; + for (int i=0; i linineq; + linineq << new LinearInequality(dlineq,-1) << new LinearInequality(duineq,1) << new LinearInequality(cineq,concpow); + multipoly.init(maxpows,linineq); + } + + Array atomic_masses; + { + ifstream massfile; + if (strlen(massfilename)>0) { + massfile.open(massfilename); + if (!massfile) { + ERRORQUIT("Unable to open atomic masses file"); + } + } + else { + AutoString configfilename(getenv("HOME")); + configfilename+="/.atat.rc"; + ifstream configfile(configfilename); + if (!configfile) { + ERRORQUIT("$HOME/.atat.rc was not found."); + } + while (configfile.get()!='=') {}; + skip_delim(configfile," \t"); + AutoString massfilename2; + get_string(&massfilename2,configfile); + massfilename2+="/data/masses.in"; + massfile.open(massfilename2); + if (!massfile) { + ERRORQUIT("Unable to open atomic masses file"); + } + } + read_mass_file(&atomic_masses,massfile,label); + } + + remove_vacancies(&str,label,"Vac"); + remove_vacancies(&str,label,"Va"); + + Structure rel_str; + { + ifstream rel_strfile(rel_strfilename); + if (!rel_strfile) ERRORQUIT("Unable to open relaxed structure file"); + parse_structure_file(&rel_str.cell,&rel_str.atom_pos,&rel_str.atom_type,label,rel_strfile); + wrap_inside_cell(&rel_str.atom_pos,rel_str.atom_pos,rel_str.cell); + reorder_atoms(&rel_str,str); + } + + Array masses(rel_str.atom_type.get_size()); + for (int at=0; at0) { + ifstream infile(kdispfile); + if (!infile) { + ERRORQUIT("Unable to open dispersion curve calculation input file."); + } + ofstream outffile("eigenfreq.out"); + ofstream outvfile("eigenvect.out"); + rMatrix3d recip=(!(~((rel_str.cell)*(!str.cell)*axes))); + while (skip_delim(infile)) { + int nbpts; + rVector3d k1,k2; + infile >> nbpts >> k1 >> k2; + k1=recip*k1; + k2=recip*k2; + LinkedList fklist; + if (strlen(potplugin)>0) { + make_nn_forcek(&fklist, str, rel_str, extspringlist, dirdep_mat, red_conc); + } + else { + make_nn_forcek(&fklist, str, rel_str, springlist, dirdep_mat, conc, multipoly); + } + { + LinkedListIterator ifk(fklist); + while (ifk) { + if (norm(ifk->dr)>maxfklen) { + delete fklist.detach(ifk); + } + else { + ifk++; + } + } + } + LinkedList > freq; + LinkedList > eigvect; + calc_dispersion_curve(&freq,&eigvect, k1,k2,nbpts,fklist,masses,convfk/mass_unit); + LinkedListIterator > i_freq(freq); + LinkedListIterator > i_eigvect(eigvect); + for (; i_freq; i_freq++, i_eigvect++) { + for (int i=0; iget_size(); i++) { + outffile << (*i_freq)(i) << '\t'; + } + outffile << endl; + outvfile << (*i_eigvect); + } + } + } + else { + iVector3d kmesh; + calc_k_mesh(&kmesh,str.cell,kppra/(Real)(str.atom_pos.get_size())); + int nT=(int)((T1-T0)/dT)+1; + Array > F; + resize(&F,nT,ns); + ofstream vdosfile("vdos.out"); + ofstream logfile("svsl.log"); + logfile.setf(ios::fixed); + logfile.precision(sigdig); + logfile << "kmesh= " << kmesh << endl; + for (int is=0; is fklist; + if (strlen(potplugin)>0) { + make_nn_forcek(&fklist, str, stretched_str, extspringlist, dirdep_mat, red_conc); + } + else { + make_nn_forcek(&fklist, str, stretched_str, springlist, dirdep_mat, conc, multipoly); + } + { + LinkedListIterator ifk(fklist); + while (ifk) { + if (norm(ifk->dr)>maxfklen) { + delete fklist.detach(ifk); + } + else { + ifk++; + } + } + } + logfile << "Number of NN springs: " << fklist.get_size() << endl; + LinkedListIterator ifk(fklist); + for (; ifk; ifk++) { + logfile << "atoms: " << ifk->whichatom[0] << " " << ifk->whichatom[1] << endl; + logfile << "atom types: " << label(stretched_str.atom_type(ifk->whichatom[0])) << "-" << label(stretched_str.atom_type(ifk->whichatom[1])) << endl; + logfile << "|dr|: " << norm(ifk->dr) << endl; + logfile << "dr: " << ifk->dr << endl; + logfile << "cell shift: " << ifk->cell_shift << endl; + logfile << "fk matrix: " << endl << ifk->forcek << endl; + } + logfile << "end" << endl << endl; + if (strlen(bulkmodfile)) { + ifstream file(bulkmodfile); + if (!file) ERRORQUIT("Unable to open bulk modulus file."); + file >> bulkmod; + } + if (bulkmod==0.) bulkmod=calc_bulk_modulus(fklist,det(rel_str.cell)); + logfile << "Bulk modulus: " << bulkmod << endl; + Real elasE=det(rel_str.cell)*bulkmod*pow(pow(iso_stretch,3.)-1.,2.)/2./(Real)(rel_str.atom_type.get_size()); + LinkedList freq,weight; + if (!list_phonon_freq(&freq, &weight, kmesh, kshift, fklist, stretched_str.cell,masses,convfk/mass_unit)) { + if (!forceneg && robust_len==0.) { + ERRORQUIT("Unstable modes found. Aborting."); + } + } + + LinkedListIterator ifreq(freq); + logfile << "Phonon frequencies:" << endl; + for ( ; ifreq; ifreq++) { + logfile << *ifreq << endl; + } + logfile << "end" << endl << endl; + + Array freqa; + LinkedList_to_Array(&freqa,freq); + Real xmin,xmax; + Array vdos; + smooth_density(&xmin,&xmax,&vdos,freqa); + Real df=(xmax-xmin)/(Real)(vdos.get_size()-1); + LinkedListIterator iw(weight); + Real w=(*iw)*(Real)(peratom ? 1:rel_str.atom_type.get_size())*perfewer; + for (int i=0; i0) { + Real geomass=1.; + for (int at=0; at Phonon Dispersion curves +The -df=inputfile option invokes the phonon dispersion curve module. +The syntax of the input file is: +[nb of points] [kx1] [ky1] [kz1] [kx2] [ky2] [kz2] +repeat... + +Each line of input defines one segment (kx1,ky1,kz1)-(kx2,ky2,kz2) +along which the dispersion curve is to be calculated. +[nb of points] specifies the number of points sampled along the segment. +The coordinates are in multiple of the reciprocal cell defined by the axes in the +file specified by the -us option (or, by default, in the str.out file). +(The k-point coordinates are appropriately strained +by the amount needed for the str.out file to be identical to the str_relax.out file.) +The phonon frequencies are output in the eigenfreq.out file. + +Other parameters can be altered, if needed. + The physical constants are set by default for + force constants input in eV/Angstrom^2 + temperature in K + free energy in eV + frequencies in Hz + masses in a.u. + They can be altered by the -hb, -kb, -cfk and -mu options. + + By default the code give free energies per unit cell, but the -pa option gives them per atom. + The -sc option can provide a multiplicative factor for other conventions (e.g. per formula unit). + + By default, the code aborts whenever unstable modes are found, unless the -fn option is specified. + + Contact the author for information about the -df and -sf options. + +The output files are as follows: + +svsl.log : a log file giving some of the intermediate steps of the calculations +vdos.out: the phonon density of states for each lattice parameter considered (unstable modes appear + as negative frequencies). +svsl.out: gives along each row, the temperature, the free energy, and the linear thermal expansion + (e.g. 0.01 means that the lattice has expansion by 1% at that temperature). +fvib: gives only the free energy + +-> For including vibrations in phase diagram calculations + + You are likely to use this code as follow: + + #first create the Trange.in file for up to 2000K in intervals of 100K: + echo 2000 21 > Trange.in + + #This executes the svsl code in each subdirectory containing str_relax.out but no error file. + foreachfile -e str_relax.out pwd \\; svsl [options if desired] + + #constructs a cluster expansion of the vibrational free energy (eci are in fvib.eci) + clusterexpand fvib + + #add the energetic eci from eci.out to the vibrational eci from fvib.eci and create the teci.out + #file that will be read by the Monte Carlo code. + mkteci fvib.eci diff --git a/src/symbrklib b/src/symbrklib new file mode 100755 index 0000000..f6ea8d4 --- /dev/null +++ b/src/symbrklib @@ -0,0 +1,82 @@ +#!/usr/bin/perl + +my $atatdir; +BEGIN { + open(my $cf,"<",join('/',$ENV{"HOME"},".atat.rc")) or die "Can't open ~/.atat.rc\n"; + $atatdir = <$cf>; + chomp $atatdir; + $atatdir =~ s/.*atatdir\s*=\s*//g; +} + +my @relaxpath; + +$relaxpath{"bcc-fcc"}=q{ +1 1 {1+x*(sqrt(2)-1)} 90 90 90 +-0.5 0.5 0.5 +0.5 -0.5 0.5 +0.5 0.5 -0.5 +0 0 0 {A} +}; + +$relaxpath{"bcc-hcp"}=q{ +#const a=1; b=sqrt(2); c=sqrt(2); +#const d=x/12.; th=109.47*(1-x)+x*120; +#const deg=3.14159/180; e=sqrt(sin(th*deg/2)/cos(th*deg/2)/sqrt(2)); +{a/e} {b*e} {c} 90 90 90 +0.5 -0.5 0 +0.5 0.5 0 +0 0 1 +0 {0.25+d} 0.25 {A} +0 {0.75-d} 0.75 {A} +}; + +if ( (@ARGV == 0) || ($ARGV[0] eq "-h") ) { + print q{Usage: symbrklib [-s fraction] [element] [initial_structure] [final_structure] +Currently, the initial and final structures can be one of bcc,fcc,hcp. +The -s option (optional) indicates to just generate a small distortion (a given fraction along the instability path). +This command is intended to be run before robustrelax_xxxx +}; +exit; +} + +my $x=1; +my $x0=0; + +my @myargv=@ARGV; +if ($ARGV[0] eq "-s") { + $x=$myargv[1]; + shift @myargv; + shift @myargv; +} + +my $pathname; +if ($myargv[1] gt $myargv[2]) { + $pathname=$myargv[2] . '-' . $myargv[1]; + $x=1-$x; + $x0=1-$x0; +} +else { + $pathname=$myargv[1] . '-' . $myargv[2]; +} + +if ( $relaxpath{$pathname} eq "" ) { + print "Unkown instability path: $pathname\n"; + exit; +} + +{ + open(my $fh,">","path.sspp"); + print $fh "#const x=$x;\n"; + print $fh qq{#const A="$myargv[0]";}; + print $fh $relaxpath{$pathname}; +} +system("sspp < path.sspp > path.in; nntouch -l=path.in -r=$atatdir/data/radii.in > str_hint.out"); + +{ + open(my $fh,">","path.sspp"); + print $fh "#const x=$x0;\n"; + print $fh qq{#const A="$myargv[0]";}; + print $fh $relaxpath{$pathname}; +} +system("sspp < path.sspp > path.in; nntouch -l=path.in -r=$atatdir/data/radii.in > str_sup.out"); +system("rm -f path.in path.sspp"); diff --git a/src/teci.c++ b/src/teci.c++ new file mode 100644 index 0000000..89b3e44 --- /dev/null +++ b/src/teci.c++ @@ -0,0 +1,105 @@ +#include "teci.h" + +void make_eci_list(LinkedList *pecilist, const PolyInterpolatorBig > &teci, Real T) { + pecilist->delete_all(); + Array eciarray; + teci.interpol(&eciarray,T); + (*pecilist) << eciarray; +} + +void read_t_dep_eci_file(PolyInterpolatorBig > *pteci, PolyInterpolatorBig > *pteeci, int ncluster, Real kboltzman) { + ifstream tecifile("teci.out"); + if (tecifile) { + Real Tmax; + int nT; + tecifile >> Tmax >> nT; + Tmax*=kboltzman; + Array > ecis(nT); + for (int it=0; it> ecis(it)(c); + } + } + pteci->init(0.,Tmax,ecis); + Array > eecis(nT-1); + eecis(0)=ecis(0); + Real dT=Tmax/(Real)(nT-1); + for (int it=1; itinit(0.,Tmax,eecis); + } else { + ifstream ecifile("eci.out"); + if (!ecifile) ERRORQUIT("Unable to open eci.out"); + Array > ecis(1); + Array > eecis(1); + ecis(0).resize(ncluster); + eecis(0).resize(ncluster); + for (int c=0; c> ecis(0)(c); + eecis(0)(c)=0.; + } + pteci->init(0.,1.,ecis); + pteeci->init(0.,1.,eecis); + } +} + +/* +void fix_energy(MCOutputData *pmcdata, const PolyInterpolatorBig > &teci, Real T) { + + Array eci1,eci0,eeci,tmp; + Real dT=teci.max()*1e-3; + teci.interpol(&eci1,T+dT); + teci.interpol(&eci0,T-dT); + diff(&eeci,eci1,eci0); + product(&eeci,eeci,-T/(2.*dT)); + product_diag(&tmp,pmcdata->mult,pmcdata->corr); + pmcdata->E+=inner_product(eeci,tmp); +} +*/ + +void fix_energy(Real *pE, const Array &mult, const Array &corr, const PolyInterpolatorBig > &teci, Real T) { + Array eci1,eci0,eeci,tmp; + Real dT=teci.max()*1e-3; + teci.interpol(&eci1,T+dT); + teci.interpol(&eci0,T-dT); + diff(&eeci,eci1,eci0); + product(&eeci,eeci,-T/(2.*dT)); + product_diag(&tmp,mult,corr); + (*pE)+=inner_product(eeci,tmp); +} + +TDependentECIPhase::TDependentECIPhase(const char *_label, + const Structure &_lattice, const SpaceGroup &_space_group, + const Structure &_str, + const LinkedList &_cluster_list, + const PolyInterpolatorBig > &_teci): + PhaseThermoData(), labeltocreate(_label), + lattice(_lattice), space_group(_space_group), str(_str), + cluster_list(_cluster_list), teci(_teci) {phase=NULL;} + +void TDependentECIPhase::set_T_mu(Real T, Real mu) { + if (phase) { + delete phase; + } + LinkedListIterator i(phaseobjectlist.list); + for ( ;i; i++) { + if (strcmp(labeltocreate,i->object_label())==0) { + phase=i->new_object(); + break; + } + } + LinkedList ecilist; + make_eci_list(&ecilist,teci,T); + phase->init(lattice,space_group,str,cluster_list,ecilist); + phase->set_T_mu(T,mu); + cur_phi=phase->phi(); + cur_x=phase->x(); +} + +void TDependentECIPhase::write(ostream &file) { + phase->write(file); +} diff --git a/src/teci.hh b/src/teci.hh new file mode 100644 index 0000000..de65c4e --- /dev/null +++ b/src/teci.hh @@ -0,0 +1,32 @@ +#include "stringo.h" +#include "arraylist.h" +#include "linalg.h" +//#include "mclib.h" +#include "drawpd.h" + +void make_eci_list(LinkedList *pecilist, const PolyInterpolatorBig > &teci, Real T); + +void read_t_dep_eci_file(PolyInterpolatorBig > *pteci, PolyInterpolatorBig > *peeci, int ncluster, Real kboltzman); + +//void fix_energy(MCOutputData *pmcdata, const PolyInterpolatorBig > &teeci, Real T); + +void fix_energy(Real *pE, const Array &mult, const Array &corr, const PolyInterpolatorBig > &teci, Real T); + +class TDependentECIPhase: public PhaseThermoData { + AutoString labeltocreate; + Structure lattice; + SpaceGroup space_group; + Structure str; + LinkedList cluster_list; + PolyInterpolatorBig > teci; + PhaseThermoData *phase; + public: + TDependentECIPhase(const char *_label, + const Structure &_lattice, const SpaceGroup &_space_group, + const Structure &_str, + const LinkedList &_cluster_list, + const PolyInterpolatorBig > &_teci); + ~TDependentECIPhase(void) {delete phase;} + void set_T_mu(Real T, Real mu); + void write(ostream &file); +}; diff --git a/src/tensor.hh b/src/tensor.hh new file mode 100644 index 0000000..a2032c6 --- /dev/null +++ b/src/tensor.hh @@ -0,0 +1,83 @@ +#ifndef __TENSOR_H__ +#define __TENSOR_H__ + +#include +#include "misc.h" +#include "linalg.h" + +template +class Tensor { +protected: + Array dim; + Array x; +public: + Tensor(void): dim(), x() {} + Tensor(const Tensor &a): dim(a.dim), x(a.x) {} + void operator=(const Tensor &a) { + dim=a.dim; + x=a.x; + } + Tensor(const Array &_dim): dim(), x() { + resize(_dim); + } + void resize(const Array &_dim) { + dim=_dim; + int m=1; + for (int i=0; i &k) { + int j=0; + for (int i=0; i &k) const { + int j=0; + for (int i=0; i & get_size(void) const {return dim;} + void operator+=(const Tensor &a) { + sum(&x,x,a.x); + } + void operator-=(const Tensor &a) { + diff(&x,x,a.x); + } + void operator*=(Real a) { + for (int i=0; i &t) { + Real sum=0.; + for (int i=0; i & vectorize(void) { + return x; + } + Array const & vectorize(void) const { + return x; + } +}; + +#define rTensor Tensor + +#endif diff --git a/src/tensorsym.c++ b/src/tensorsym.c++ new file mode 100644 index 0000000..81b96d4 --- /dev/null +++ b/src/tensorsym.c++ @@ -0,0 +1,372 @@ +#include "tensorsym.h" +#include "lstsqr.h" +#include "phonlib.h" + +void apply_symmetry(rTensor *ptt, const rMatrix3d &op, const rTensor &t) { + ptt->resize(t.get_size()); + ptt->zero(); + int rank=t.get_size().get_size(); + MultiDimIterator > i(t.get_size()); + for (; i; i++) { + MultiDimIterator > j(t.get_size()); + for (; j; j++) { + Real acc=1.; + for (int k=0; k &)i)(k),((Array &)j)(k)); + } + (*ptt)(i)+=t(j)*acc; + } + } +} + +int symmetrize(rTensor *psymt, const rTensor &t, const SpaceGroup &space_group) { + psymt->resize(t.get_size()); + psymt->zero(); + Real n0=norm(t); + if (n0zero_tolerance) { + (*psymt)/=n; + return 1; + } + else { + return 0; + } +} + +void transpose(rTensor *psymt, const rTensor &t, int row, int col) { + psymt->resize(t.get_size()); + MultiDimIterator > i(t.get_size()); + for (; i; i++) { + Array ti(i); + swap(&(ti(row)),&(ti(col))); + (*psymt)(ti)=t(i); + } +} + +void transpose(rTensor *pt, int row, int col) { + rTensor tmp(*pt); + transpose(pt,tmp,row,col); +} + +void transpose(rTensor *psymt, const rTensor &t, const Array &map) { + psymt->resize(t.get_size()); + Array ti(map.get_size()); + MultiDimIterator > i(t.get_size()); + for (; i; i++) { + Array &ai=(Array &)i; + for (int k=0; k > *pgroup, int rank, const Array > &flip) { + LinkedList > group; + Array map(rank); + for (int j=0; j(map); + for (int f=0; f > i(group); + int n=group.get_size(); + for (; n>0; i++,n--) { + map=*i; + for (int p=0; p > j(group); + for ( ; j; j++) { + if ((*j)==map) break; + } + if (!j) { + group << new Array(map); + } + } + } + LinkedList_to_Array(pgroup,group); +} + +void symmetrize_flip(rTensor *psymt, const Array > &flipgroup) { + rTensor t(*psymt); + for (int f=1; f > &flip) { + for (int f=0; f > &flip) { + if (!symmetrize(psymt, t,space_group)) { + return 0; + } + symmetrize(psymt, flip); + Real n=norm((*psymt)); + if (fabs(n)>zero_tolerance) { + (*psymt)/=n; + return 1; + } + else { + return 0; + } +} +*/ + +void find_symmetric_basis(Array *pbasis, int rank, const SpaceGroup &space_group, const Array > &flip) { + Array > flipgroup; + calc_flip_group(&flipgroup, rank,flip); + int dim=3; + Array > basis; + int nb_in_basis=0; + Array size(rank); + for (int i=0; i > i(size); + for (; i; i++) { + if (done(i)==0.) { + t.zero(); + t(i)=1.; + symmetrize_flip(&t,flipgroup); + rTensor st; + if (symmetrize(&st,t,space_group)) { + build_basis(&basis,&nb_in_basis,st.vectorize()); + } + done+=t; + } + } + gram_schmidt(&basis,basis); + pbasis->resize(nb_in_basis); + for (int j=0; j > j(t.get_size()); + for (; j; j++) { + Array &aj=(Array &)j; + if (fabs(t(aj))>zero_tolerance) { + Array p(3); + zero_array(&p); + int s=1; + for (int k=0; kaj(k+1)) {s=0;}} + char c[]="xyz"; + if (s) { + cerr << " + " << t(aj)*factorial(t.get_size().get_size())/(factorial(p(0))*factorial(p(1))*factorial(p(2))); + for (int k=0; k<3; k++) {if (p(k)>0) {cerr << "*" << c[k] << "^" << p(k);}} + } + } + } + cerr << endl; +} + +void find_symmetric_basis_projection(Array *pbasis, int rank, const SpaceGroup &space_group, const Array > &flip, const Array &proj, int paral ) { + if (proj.get_size()==0) { + if (paral==0) {find_symmetric_basis(pbasis, rank,space_group,flip);} + return; + } + Real nelem=pow(3.,(Real)rank); + Array > flipgroup; + calc_flip_group(&flipgroup, rank,flip); + int dim=3; + Array > basis; + int nb_in_basis=0; + Array size(rank); + for (int i=0; i mat(t.vectorize().get_size(),proj.get_size()); + for (int j=0; j projmat,imat; + invert_matrix_tall(&imat,mat); + product(&projmat, mat,imat); + if (!paral) { + product(&projmat,projmat,-1.); + for (int j=0; j > i(size); + for (; i; i++) { + if (done(i)==0.) { + t.zero(); + t(i)=1.; + symmetrize_flip(&t,flipgroup); + rTensor st; + if (symmetrize(&st,t,space_group)) { + rTensor pt(size); + product(&(pt.vectorize()),projmat,st.vectorize()); + if (norm(pt)/norm(st.vectorize())>zero_tolerance) { + build_basis(&basis,&nb_in_basis,pt.vectorize()); + } + } + done+=t; + } + } + gram_schmidt(&basis,basis); + pbasis->resize(nb_in_basis); + for (int j=0; j > *pflip, int rank) { + pflip->resize(rank*(rank-1)/2); + int f=0; + for (int i=0; i *pbasis, int rank, const SpaceGroup &space_group) { + int dim=3; + Array size(rank); + for (int i=0; i > flip; + all_flip(&flip,rank); + Array > flipgroup; + calc_flip_group(&flipgroup, rank,flip); + Array proj_2; + if (rank>2) { + Array > flip_2; + all_flip(&flip_2,rank-2); + // Array > flipgroup_2; + // calc_flip_group(&flipgroup_2, rank-2,flip_2); + Array basis_2; + // SpaceGroup space_group_2; + // space_group_2.cell=space_group.cell; + // space_group_2.point_op.resize(1); + // space_group_2.point_op(0).identity(); + // space_group_2.trans.resize(1); + // space_group_2.trans(0)=rVector3d(0.,0.,0.); + find_symmetric_basis(&basis_2, rank-2,space_group,flip_2); + proj_2.resize(basis_2.get_size()); + for (int i=0; i > j(size); + for (; j; j++) { + Array subj; + extract_elements(&subj,(Array &)j,2,rank); + Array &aij=(Array &)j; + tmp(j)=basis_2(i)(subj)*(aij(0)==aij(1)); + } + //cerr << flip << endl; + //print_harm(tmp); + // apply_symmetry(&(proj_2(i)),space_group.point_op(1),tmp); + // cerr << space_group.point_op(1) << endl; + // print_harm(proj_2(i)); + // exit(1); + // cerr << space_group.point_op.get_size() << endl; + symmetrize_flip(&tmp,flipgroup); + symmetrize(&(proj_2(i)),tmp,space_group); + //print_harm(proj_2(i)); + //exit(1); + //cerr << proj_2(i).get_size() << proj_2(i).vectorize(); + } + } + else if (rank==2) { + proj_2.resize(1); + proj_2(0).resize(size); + MultiDimIterator > j(size); + for (; j; j++) { + Array &aij=(Array &)j; + proj_2(0)(j)=(aij(0)==aij(1)); + } + } + + // find_symmetric_basis(pbasis, rank,space_group,flip); + find_symmetric_basis_projection(pbasis, rank,space_group,flip,proj_2,0); +} + +void find_symmetry_breaking_basis(Array *pbasis, int rank, const SpaceGroup &space_group, const Array > &flip) { + Array > flipgroup; + calc_flip_group(&flipgroup, rank,flip); + Array special_dir; + Array all_dir(3); + find_special_direction(&special_dir,NULL,space_group.point_op); + for (int i=0; i tensor_list; + Array > basis; + int nb_in_basis=0; + Array size(rank); + for (int i=0; i > i(size); + for (; i; i++) { + MultiDimIterator > j(size); + for (; j; j++) { + Real a=1.; + for (int k=0; k&)i)(k))(((Array)j)(k)); + } + t(j)=a; + } + symmetrize_flip(&t,flipgroup); + int added=0; + for (int op=0; op > &flip); +void transpose(rTensor *psymt, const rTensor &t, int row, int col); +void transpose(rTensor *psymt, int row, int col); +void transpose(rTensor *psymt, const rTensor &t, const Array &map); +int symmetrize(rTensor *psymt, const rTensor &t, const SpaceGroup &space_group, const Array > &flip); +void calc_flip_group(Array > *pgroup, int rank, const Array > &flip); +void symmetrize_flip(rTensor *psymt, const Array > &flipgroup); +void find_symmetric_basis(Array *pbasis, int rank, const SpaceGroup &space_group, const Array > &flip); +void find_symmetry_breaking_basis(Array *pbasis, int rank, const SpaceGroup &space_group, const Array > &flip); + +void find_symmetric_basis_projection(Array *pbasis, int rank, const SpaceGroup &space_group, const Array > &flip, const Array &proj, int paral ); +void all_flip(Array > *pflip, int rank); +void calc_sym_harmonics(Array *pbasis, int rank, const SpaceGroup &space_group); +void print_harm(const rTensor &t); diff --git a/src/test.c++ b/src/test.c++ new file mode 100644 index 0000000..4c9c7cb --- /dev/null +++ b/src/test.c++ @@ -0,0 +1,45 @@ +//#include +#include "linalg.h" +#include "chull.h" +#include +#include "integer.h" + +int main(void) { + int sd; + cin >> sd; + rndseed(sd); + zero_tolerance=1e-5; + int d=3; + int n=55; + Array > x(n); + for (int i=0; i ground(d); + zero_array(&ground); + // ground(d-1)=-1; + LinkedList hull; + calc_convex_hull(&hull, x,ground); + ofstream pfile("pts.out"); + for (int i=0; i h(hull); + for (; h; h++) { + for (int j=0; j<=h->pts.get_size(); j++) { + int i=h->pts(j % (h->pts.get_size())); + for (int j=0; j +using namespace std; + +int main(void) { + complex c; +} diff --git a/src/testconst.c++ b/src/testconst.c++ new file mode 100644 index 0000000..f6f0816 --- /dev/null +++ b/src/testconst.c++ @@ -0,0 +1,3 @@ +int main(int argc, char *argv[]) { + char *str="test"; +} diff --git a/src/testdoth.c++ b/src/testdoth.c++ new file mode 100644 index 0000000..2ee8159 --- /dev/null +++ b/src/testdoth.c++ @@ -0,0 +1,4 @@ +#include + +int main(int argc, char *argv[]) { +} diff --git a/src/testeof.c++ b/src/testeof.c++ new file mode 100644 index 0000000..e03ead9 --- /dev/null +++ b/src/testeof.c++ @@ -0,0 +1,16 @@ +#include "parse.h" + +int main(void) { + char c; + cin >> c; + cout << c << endl; + cout << cin.eof() << endl; + cin >> c; + cout << c << endl; + cout << cin.eof() << endl; + cin.putback(c); + cout << cin.eof() << endl; + cin >> c; + cout << c << endl; + cout << cin.eof() << endl; +} diff --git a/src/testfriend.c++ b/src/testfriend.c++ new file mode 100644 index 0000000..c2855cc --- /dev/null +++ b/src/testfriend.c++ @@ -0,0 +1,10 @@ +class C { +public: + friend int fr(int x) { + return 1; + } +}; + +int main(int argc, char *argv[]) { + int y=fr(2); +} diff --git a/src/testlat.c++ b/src/testlat.c++ new file mode 100644 index 0000000..cb611ff --- /dev/null +++ b/src/testlat.c++ @@ -0,0 +1,61 @@ +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" + +char *helpstring="Insert more help here"; + +int main(int argc, char *argv[]) { + // parsing command line. See getvalue.hh for details; + char *latfilename="lat.in"; + char *strfilename="str.out"; + Real r=0; + int n=0; + int b=0; + int sigdig=5; + int dohelp=0; + int dummy=0; + AskStruct options[]={ + {"","Skeleton for atat-like codes " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-l","Input file defining the lattice (defaults: lat.in)",STRINGVAL,&latfilename}, + {"-s","Input file defining the structure (default: str.out)",STRINGVAL,&strfilename}, + {"-r","A real parameter",REALVAL,&r}, + {"-n","An integer parameter",INTVAL,&n}, + {"-b","A boolean parameter",BOOLVAL,&b}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + cout.setf(ios::fixed); + cout.precision(sigdig); + + // parsing lattice and structure files. See parse.hh for detail; + Structure lat; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream latfile(latfilename); + if (!latfile) ERRORQUIT("Unable to open lattice file"); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &labellookup, &label, latfile, &axes); + wrap_inside_cell(&lat.atom_pos,lat.atom_pos,lat.cell); + } + + rMatrix3d supcel; + find_smallest_supercell_enclosing_sphere(&supcel,lat.cell,r); + rMatrix3d supcela=(!axes)*supcel; + write_axes(axes,cout,0); + for (int i=0; i<3; i++) { + cout << supcela.get_column(i) << endl; + } + +} diff --git a/src/teststatic.c++ b/src/teststatic.c++ new file mode 100644 index 0000000..2fbe6f5 --- /dev/null +++ b/src/teststatic.c++ @@ -0,0 +1,16 @@ +template +class A { +public: + static T x; +}; + +class B { +public: + int y; +}; + +template <> B A::x; + +int main(void) { + A::x.y=1; +} diff --git a/src/teststr2s.c++ b/src/teststr2s.c++ new file mode 100644 index 0000000..15a1ccc --- /dev/null +++ b/src/teststr2s.c++ @@ -0,0 +1,4 @@ +#include + +int main(int argc, char *argv[]) { +} diff --git a/src/testtemplate.c++ b/src/testtemplate.c++ new file mode 100644 index 0000000..afb8f8a --- /dev/null +++ b/src/testtemplate.c++ @@ -0,0 +1,10 @@ +template +class Temp { + static int x; +}; + +int Temp::x; + +int main(int argc, char *argv[]) { + int y=fr(2); +} diff --git a/src/testuT.c++ b/src/testuT.c++ new file mode 100644 index 0000000..fababc9 --- /dev/null +++ b/src/testuT.c++ @@ -0,0 +1,23 @@ +/* +#include +#include +#include +#include +#include +*/ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +int main(int argc, char *argv[]) { + double _T=0; +} diff --git a/src/tlambda.c++ b/src/tlambda.c++ new file mode 100644 index 0000000..7d946ae --- /dev/null +++ b/src/tlambda.c++ @@ -0,0 +1,612 @@ +#include +#include "refine.h" +#include "ridge.h" +#include "getvalue.h" + +// -----------------------------; + + +class CE_TLambda: public ClusterExpansion { +public: + Array cur_regul_param; + CE_TLambda (const Structure &_parent_lattice, + const Array &_site_type_list, + const Array &_atom_label, + const SpaceGroup &_spacegroup): ClusterExpansion(_parent_lattice,_site_type_list,_atom_label,_spacegroup), cur_regul_param() {}; + + // Main routine calling the cluster enumeration and crossvalidation routines; + // Initialize *pfitinfo with results (see class CEFitInfo above); + virtual void find_best_cluster_choice(CEFitInfo *pfitinfo); + // Main routine calling the structure enumeration routines and the variance calculation codes.; + // Return pointer to structure found (or NULL upon failure); + virtual StructureInfo * find_best_structure(void); + // Finds the first few structures needed to initiate the refinement process.; + // Return pointer to structure found (or NULL upon failure); + // virtual StructureInfo * find_initial_structures(void); + // Returns the least computationally intensive structure still marked as unknown. + // Return pointer to structure (never NULL); + // virtual StructureInfo * find_first_unknown_structure(void); + + int find_next_multiplet_choice(void); + void calc_regularization_vector(Array *regul, const Array ¶m); +}; + +SpecificPlugIn > TLambdaClusterExpansionPlugIn("tl"); // register plug-in under name "tl"; + +void CE_TLambda::find_best_cluster_choice(CEFitInfo *pfitinfo) { + int max_pair_len=0; + Array regul_param(2); + { + ifstream infile("tlambda.in"); + if (!infile) { + cerr << "You need to provide a tlambda.in file containing:" << endl + << " the length of the longest pair" << endl + << " the 't' parameter" << endl + << " the 'lambda' parameter" << endl; + ERRORQUIT("Aborting."); + } + infile >> max_pair_len; + infile >> regul_param(0) >> regul_param(1); + } + cur_regul_param=regul_param; // save param for later; + + reset_cluster_choice(); // select minimal cluster expansion; + while (pclusters(1)->get_current_length() pair_clusters; + get_cluster_choice(&pair_clusters); + set_cluster_choice(pair_clusters); + + // setup correlation matrix, and energy and concentration vectors; + Array2d corr_matrix; + Array regul; + Array energy; + Array predictor_energy; + Array ce_energy; + Array concentration; + calc_regression_matrices(&corr_matrix,&energy); + if (corr_matrix.get_size()(0)<=corr_matrix.get_size()(1)-pair_clusters(1)) { // enough structures?; + if (pfitinfo) {pfitinfo->status=CEFitInfo::fit_impossible;} + return; + } + if (pfitinfo) {pfitinfo->status=CEFitInfo::fit_ok;} + calc_concentration(&concentration,corr_matrix); + init_predictors(); + // find ground states; + Array true_gs; + calc_convex_hull(&true_gs, concentration,energy); + // init weights (to 1); + weight.resize(concentration.get_size()); + one_array(&weight); + Array best_choice; // to remember best choice; + Array best_eci_mult; // to remember best eci (times multiplicity); + Array best_choice_noweight; // if weighting fails, save the best noweight solution; + Array best_eci_mult_noweight; // + { + ifstream cluster_choice_file("nbclusters.in"); + if (cluster_choice_file) { + LinkedList cluster_choice; + cluster_choice << new int(pclusters(0)->get_current_index()); + cerr << "nbclusters.in file detected, using user-specified cluster choice" << endl; + while (skip_delim(cluster_choice_file)) { + int nc; + cluster_choice_file >> nc; + cluster_choice << new int(nc); + } + LinkedList_to_Array(&best_choice,cluster_choice); + } + } + if (best_choice.get_size()>0) { // if user-specified cluster choice; + calc_predictor_energy(&predictor_energy); + } + else { // if automatically determined cluster choice; + while (1) { // repeat until ground states ok; + set_cluster_choice(pair_clusters); // include requested pairs; + int best_gs_ok=0; + Real best_cv=MAXFLOAT; + do { // loop through cluster choices; + //if you want to print out trace information; + for (int i=0; iget_current_index() << " "; + } + + // calc cross-validation score; + calc_regression_matrices(&corr_matrix,&energy); + calc_regularization_vector(®ul,regul_param); + calc_predictor_energy(&predictor_energy); + diff(&ce_energy,energy,predictor_energy); + Real cv=calc_cv_regul(corr_matrix,ce_energy,weight,1,regul); + // do regression and add back the predictor energy; + Array cur_eci_mult; + Array fitted_energy; + calc_ols_regul(&cur_eci_mult,corr_matrix,ce_energy,weight,1,regul); + product(&fitted_energy,corr_matrix,cur_eci_mult); + sum(&fitted_energy,fitted_energy,predictor_energy); + // check for qualitatively wrong ground states; + Array problems; + int gs_ok=!ground_state_problem(&problems, true_gs,concentration,fitted_energy,minc_gs_ok,maxc_gs_ok); + + // save best choice so far; + cerr << gs_ok << " " << cv << endl; + if ((gs_ok>best_gs_ok && cv!=MAXFLOAT) || (gs_ok==best_gs_ok && cvstatus=CEFitInfo::fit_impossible;} + return; + } + // do regression and predict energies with best choice found; + set_cluster_choice(best_choice); + calc_regression_matrices(&corr_matrix,NULL); + Array fitted_energy; + product(&fitted_energy,corr_matrix,best_eci_mult); + sum(&fitted_energy,fitted_energy,predictor_energy); + // check for qualitatively wrong ground states; + Array problems; + if (!ground_state_problem(&problems, true_gs,concentration,fitted_energy,minc_gs_ok,maxc_gs_ok)) break; // no problems: exit loop; + // double the weights of all structures that cause problem; + Real max_weight=0.; + for (int i=0; imax_weight) max_weight=weight(i); + } + if (max_weight>=16.) { // give up after too many retries; + one_array(&weight); // reset weights to one; + best_choice=best_choice_noweight; + best_eci_mult=best_eci_mult_noweight; + if (pfitinfo) {pfitinfo->status = CEFitInfo::gs_problem;} + break; + } + } + } + set_cluster_choice(best_choice); // save best choice into ClusterExpansion object; + eci_mult=best_eci_mult; // along with best eci; + + // save all the information in a CEFitInfo object; + if (pfitinfo) { + Real volume=(Real)(lattice_only.atom_pos.get_size()); + calc_regression_matrices(&corr_matrix,&energy); + calc_regularization_vector(®ul,regul_param); + + // create array of pointers to structures included in the fit; + pfitinfo->pstr.resize(energy.get_size()); + LinkedListIterator s(structures.get_structure_list()); + for (int i=0; ipstr.get_size(); s++) { + if (s->status==StructureInfo::calculated) { + pfitinfo->pstr(i)=s; + i++; + } + } + // find (or read in) the energy of the end members; + pfitinfo->pure_energy.resize(2); + pfitinfo->pure_energy(0)=MAXFLOAT; + pfitinfo->pure_energy(1)=MAXFLOAT; + { + ifstream pure_file("ref_energy.in"); + if (pure_file) { + pure_file >> pfitinfo->pure_energy(0); + pure_file >> pfitinfo->pure_energy(1); + pfitinfo->pure_energy(0)*=volume; + pfitinfo->pure_energy(1)*=volume; + } + } + // consider formation energies; + calc_formation(&energy,concentration,energy,&(pfitinfo->pure_energy(0)),&(pfitinfo->pure_energy(1))); + diff(&ce_energy,energy,predictor_energy); + // copy concentration, energy, weight, list of true ground states; + pfitinfo->concentration.copy(concentration); + pfitinfo->energy.copy(energy); + pfitinfo->weight.copy(weight); + pfitinfo->gs_list.copy(true_gs); + // volume of the largest generated structure; + pfitinfo->max_volume=structures.get_max_volume(); + + // eci (will be divided by multiplicity below); + calc_ols_regul(&(pfitinfo->eci), corr_matrix,ce_energy,weight,1,regul); + // predicted energies; + product(&(pfitinfo->fitted_energy), corr_matrix,pfitinfo->eci); + sum(&(pfitinfo->fitted_energy), pfitinfo->fitted_energy,predictor_energy); + // predicted ground state line (among structures whose energy is known) using fitted energy (not used later on); + calc_convex_hull(&(pfitinfo->fitted_gs_list), concentration,pfitinfo->fitted_energy); + // cv score; + pfitinfo->cv=calc_cv_regul(corr_matrix,ce_energy,weight,1,regul)/volume; + // concentration range where gs must be ok; + pfitinfo->minc_gs_ok=minc_gs_ok; + pfitinfo->maxc_gs_ok=maxc_gs_ok; + + // done with fitting, we can express energies per atom; + for (int i=0; ienergy.get_size(); i++) { + pfitinfo->energy(i)/=volume; + pfitinfo->fitted_energy(i)/=volume; + } + pfitinfo->pure_energy(0)/=volume; + pfitinfo->pure_energy(1)/=volume; + { + // write out reference energies of pure end members + ofstream pure_file("ref_energy.out"); + pure_file << pfitinfo->pure_energy(0) << endl; + pure_file << pfitinfo->pure_energy(1) << endl; + } + + // look for predicted ground states among all generated structures; + // of unknown energies; + { + // construct ground state line by joining the fitted energies of the + // true ground states; + Array gs_fitted_energy; + Array gs_concentration; + convex_hull_from_gs(&gs_concentration,&gs_fitted_energy, pfitinfo->gs_list,concentration,pfitinfo->fitted_energy); + + // predict energies of all generated structures of unknown energy; + Array2d all_corr; + Array all_fitted_energy; + Array all_predictor_energy; + calc_regression_matrices(&all_corr,NULL, (StructureInfo::Status) (StructureInfo::unknown | StructureInfo::busy | StructureInfo::error)); + calc_predictor_energy(&all_predictor_energy, (StructureInfo::Status) (StructureInfo::unknown | StructureInfo::busy | StructureInfo::error)); + product(&all_fitted_energy, all_corr,pfitinfo->eci); + sum(&all_fitted_energy, all_fitted_energy,all_predictor_energy); + product(&all_fitted_energy, all_fitted_energy,1./volume); + // find concentration of all generated structures; + Array all_concentration; + calc_concentration(&all_concentration,all_corr); + // check for structures breaking the hull; + Array problem; + if (ground_state_problem(&problem, gs_concentration,gs_fitted_energy,all_concentration,all_fitted_energy,minc_gs_ok,maxc_gs_ok)) { + pfitinfo->status = (CEFitInfo::Status)(pfitinfo->status | CEFitInfo::new_gs); + } + // output all conc. and energy of all generated structures of unknown energy; + { + LinkedListIterator s(structures.get_structure_list()); + ofstream allstr("predstr.out"); + allstr.setf(ios::fixed); + allstr.precision(6); + for (int i=0; istatus & (StructureInfo::Status) (StructureInfo::unknown | StructureInfo::busy | StructureInfo::error))) {s++;} + const char *slabel=s->label; + allstr << (1.+all_concentration(i))/2. << " " << all_fitted_energy(i) << " " + << (s->status & StructureInfo::unknown ? "?" : slabel) << " " + << (s->status & StructureInfo::busy ? "b" : "") + << (s->status & StructureInfo::error ? "e" : "") + << (s->status & StructureInfo::unknown ? "u" : "") + << (problem(i) ? "g" : "") + << endl; + s++; + } + } + } + // save clusters and their multiplicity; + pfitinfo->cluster.resize(nb_clusters); + pfitinfo->multiplicity.resize(nb_clusters); + pfitinfo->multiplicity(0)=1.; + pfitinfo->cluster(0).resize(0); + int c=1; + for (int m=0; mreset(); + for (int i=0; icluster(c).copy((*pclusters(m))); + pfitinfo->multiplicity(c)=(Real)calc_multiplicity(pfitinfo->cluster(c),parent_lattice.cell,spacegroup.point_op,spacegroup.trans); + pfitinfo->eci(c)/=pfitinfo->multiplicity(c); + } + } + } +} + +StructureInfo * CE_TLambda::find_best_structure(void) { + // do the fit; + Array2d raw_corr,corr; + Array energy; + Array ce_energy; + Array predictor_energy; + Array eci; + Array fitted_energy; + Array raw_regul,regul; + calc_regularization_vector(&raw_regul,cur_regul_param); // new for tlambda; + calc_regression_matrices(&raw_corr,&energy); + calc_predictor_energy(&predictor_energy); + diff(&ce_energy,energy,predictor_energy); + Array cols; + list_nonredundant_columns(&cols,raw_corr); + extract_columns(&corr,raw_corr,cols); + extract_elements(®ul,raw_regul,cols); + + if (corr.get_size()(1)<3 || corr.get_size()(0) concentration; + calc_concentration(&concentration,corr); + Array true_gs; + Array gs_fitted_energy; + Array gs_concentration; + calc_convex_hull(&true_gs, concentration,energy); + convex_hull_from_gs(&gs_concentration,&gs_fitted_energy, true_gs,concentration,fitted_energy); + + // predict all unknown energies; + Array2d raw_un_corr,un_corr; + Array un_fitted_energy; + Array un_predictor_energy; + calc_regression_matrices(&raw_un_corr,NULL, StructureInfo::unknown); + calc_predictor_energy(&un_predictor_energy, StructureInfo::unknown); + extract_columns(&un_corr,raw_un_corr,cols); + + product(&un_fitted_energy, un_corr,eci); + sum(&un_fitted_energy, un_fitted_energy,un_predictor_energy); + // and concentrations; + Array un_concentration; + calc_concentration(&un_concentration,un_corr); + + // are there ground state problems?; + Array problem; // will contain 1's for structures which break the hull; + if (ground_state_problem(&problem, gs_concentration,gs_fitted_energy,un_concentration,un_fitted_energy,minc_gs_ok,maxc_gs_ok)) { + // if there are new predicted ground state, look among them for the structure that give the greatest var reduction; + Array2d rhorho; + // treat all structures as equally important; + set_identity(&rhorho,corr.get_size()(1)); + + Array new_gs; + calc_convex_hull(&new_gs,un_concentration,un_fitted_energy); + for (int i=0; i w_x,ww_x; + product_diag(&w_x, weight,corr); + product_diag(&ww_x, weight,w_x); + Array2d xw2x,xw4x; + inner_product(&xw2x, w_x,w_x); + for (int k=0; k xw2xi; + invert_matrix(&xw2xi, xw2x); + // compute variance before adding a new structure; + Real var_before; + { + Array2d tmp,var_eci; + product(&tmp, xw4x,xw2xi); + product(&var_eci, xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var_before=trace(tmp); + } + + // save best structure; + StructureInfo *p_best_str=NULL; + Real max_benefit=0.; // benefit is variance reduction over computational cost; + reset_structure(); + // loop over predicted ground states whose true energy is unknown; + for (int istr=0; istr raw_cur_rho,cur_rho; + make_correlation_array(&raw_cur_rho, structures.get_current_structure().correlations); + extract_elements(&cur_rho,raw_cur_rho,cols); + Array2d cur_rhorho; + outer_product(&cur_rhorho, cur_rho,cur_rho); + Array2d cur_xw2x,cur_xw2xi,cur_xw4x; + sum(&cur_xw2x, xw2x,cur_rhorho); + sum(&cur_xw4x, xw4x,cur_rhorho); + invert_matrix(&cur_xw2xi, cur_xw2x); + Array2d tmp,var_eci; + product(&tmp, cur_xw4x,cur_xw2xi); + product(&var_eci, cur_xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var=trace(tmp); + } + // calculate benefit of adding structure; + Real benefit=(var_before-var)/structures.get_current_structure().cost; + // save structure if it is the best so far; + if (benefit>max_benefit) { + max_benefit=benefit; + p_best_str=&structures.get_current_structure(); + } + } + if (istr rhorho; + // treat all structures as equally important; + set_identity(&rhorho,corr.get_size()(1)); + + // compute the matrices that enter the expression + // of the covariance matrix of the ECI; + Array2d w_x,ww_x; + product_diag(&w_x, weight,corr); + product_diag(&ww_x, weight,w_x); + Array2d xw2x,xw4x; + inner_product(&xw2x, w_x,w_x); + for (int k=0; k xw2xi; + invert_matrix(&xw2xi, xw2x); + + // compute best possible correlation to add; + Array best_dir(corr.get_size()(1)); + { + // best_dir is the eigenvector associated with the smallest eigenvalue of xw2x; + // find by iterating u=inverse(xw2x)*v; v=u/|u|; + zero_array(&best_dir); + best_dir(best_dir.get_size()-1)=1.; // initial guess; + Array old_dir; + Array d_dir; + do { // iterate; + old_dir.copy(best_dir); + Array tmp; + product(&tmp, xw2xi,best_dir); + product(&best_dir, tmp, 1./sqrt(inner_product(tmp,tmp))); + diff(&d_dir ,best_dir,old_dir); + } while (inner_product(d_dir,d_dir)>1e-4); // until tolerance met; + // normalize so that largest correlation has modulus 1; + Real m=MAX(fabs(max(best_dir)),fabs(min(best_dir))); + product(&best_dir,best_dir,1./m); + } + + // compute variance before adding a new structure; + Real var_before; + { + Array2d tmp,var_eci; + product(&tmp, xw4x,xw2xi); + product(&var_eci, xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var_before=trace(tmp); + } + + // compute variance after the best possible correlation has been added; + Real var; + { + Array2d cur_rhorho; + outer_product(&cur_rhorho, best_dir, best_dir); + Array2d cur_xw2x,cur_xw2xi,cur_xw4x; + sum(&cur_xw2x, xw2x,cur_rhorho); + sum(&cur_xw4x, xw4x,cur_rhorho); + invert_matrix(&cur_xw2xi, cur_xw2x); + Array2d tmp,var_eci; + product(&tmp, cur_xw4x,cur_xw2xi); + product(&var_eci, cur_xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var=trace(tmp); + } + + // now we have the maximum possible variance reduction due to adding a structure; + Real max_possible_dvar=var_before-var; + + // save best structure; + StructureInfo *p_best_str=NULL; + Real max_benefit=0.; // benefit is variance reduction over computational cost; + reset_structure(); + // loop over unknown structures; + while (1) { + if (structures.get_current_structure().status==StructureInfo::unknown) { + // stop search when current computational cost is so high that even if; + // the maximum variance reduction is achieved the benefits are lower; + // than what we already have; + if (max_possible_dvar/structures.get_current_structure().cost < max_benefit) break; + // calculate variance after the current structure has been added to the fit; + Real var; + Real cur_concentration; + { + Array raw_cur_rho,cur_rho; + make_correlation_array(&raw_cur_rho, structures.get_current_structure().correlations); + Array point_multiplicity; + calc_point_to_concentration(&point_multiplicity, raw_cur_rho.get_size()); + cur_concentration=inner_product(raw_cur_rho,point_multiplicity); + extract_elements(&cur_rho,raw_cur_rho,cols); + Array2d cur_rhorho; + outer_product(&cur_rhorho, cur_rho,cur_rho); + Array2d cur_xw2x,cur_xw2xi,cur_xw4x; + sum(&cur_xw2x, xw2x,cur_rhorho); + sum(&cur_xw4x, xw4x,cur_rhorho); + invert_matrix(&cur_xw2xi, cur_xw2x); + Array2d tmp,var_eci; + product(&tmp, cur_xw4x,cur_xw2xi); + product(&var_eci, cur_xw2xi,tmp); + product(&tmp, var_eci, rhorho); + var=trace(tmp); + } + // calculate benefit of adding structure; + Real benefit=(var_before-var)/structures.get_current_structure().cost; + // save structure if it is the best so far; + if (benefit>max_benefit && + cur_concentration>=minc_gs_ok-zero_tolerance && + cur_concentration<=maxc_gs_ok+zero_tolerance) { + max_benefit=benefit; + p_best_str=&structures.get_current_structure(); + } + } + find_next_structure(); + } // loop to next structure; + return p_best_str; + } +} + +void CE_TLambda::calc_regularization_vector(Array *regul, const Array ¶m) { + regul->resize(nb_clusters); + (*regul)(0)=0.; + int i=1; + for (int m=0; m ic(get_cluster_list(m)); + LinkedListIterator > ieqc(*equiv_cluster(m)); + for (int index=0; index < pclusters(m)->get_current_index(); ic++, ieqc++, index++, i++) { + if (m==1) { + (*regul)(i)=param(0)*pow(get_length_quick(*ic),param(1))/(ieqc->get_size()); + } + else { + (*regul)(i)=0; + } + } + } +} + +int CE_TLambda::find_next_multiplet_choice(void) { + // add new multiplets if needed; + if (pclusters(pclusters.get_size()-1)->get_current_index()>0 && pclusters.get_size() tmp(pclusters); + pclusters.resize(tmp.get_size()+1); + for (int i=0; iget_current_index()>0) {c++;} + // B; + while (1) { + Real cur_len=pclusters(c)->get_current_length(); + while (pclusters(c)->get_current_length()get_previous_length() < pclusters(c-1)->get_previous_length()+zero_tolerance) break; // E; + // F; + nb_clusters-=pclusters(c)->get_current_index(); + pclusters(c)->reset(); + // G; + c--; + } + + // update the lists of equivalent clusters; + update_equivalent_clusters(); + // make sure that the corresponding corr. have been calculated; + update_correlations(StructureInfo::calculated); + // are there any other cluster choices to try? (check if number of non pair is less than number of structures); + return (nb_clusters-(pclusters(1)->get_current_index()) < nb_calculated_str); +} diff --git a/src/triph.c++ b/src/triph.c++ new file mode 100644 index 0000000..b8542cf --- /dev/null +++ b/src/triph.c++ @@ -0,0 +1,478 @@ +#include +#include "getvalue.h" +#include "version.h" +#include "integer.h" +#include "plugin.h" + +template +ostream& operator<<(ostream& s, const LinkedList &l) { + s << l.get_size() << endl; + LinkedListIterator i(l); + for (; i; i++) { + s << *i << endl; + } +} + +template +T& first(LinkedList &l) { + LinkedListIterator i(l); + return *i; +} + +/* +Real dirhausdorf(const Array &a, const Array &b) { + Real mx=0.; + for (int i=0; i &a, const Array &b, const Array &pts) { + Real mx=0.; + for (int i=0; i &a, const Array &b, const Array &pts) { + return max(directed_hausdorf(a,b,pts),directed_hausdorf(b,a,pts)); +} + +Real directed_hausdorf(int a, const Array &b, const Array &pts) { + Real mn=MAXFLOAT; + for (int j=0; j +void concat(Array *pc, const Array &a, const Array &b) { + pc->resize(a.get_size()+b.get_size()); + int j=0; + for (int i=0; i *pa, const Array &b) { + Real nf=norm((*pa)(0)-b(0))+norm((*pa)(pa->get_size()-1)-b(b.get_size()-1)); + Real nr=norm((*pa)(0)-b(b.get_size()-1))+norm((*pa)(pa->get_size()-1)-b(0)); + if (nrget_size()/2; i++) { + swap(&((*pa)(i)),&((*pa)(pa->get_size()-1-i))); + } + } +} +*/ + +template +class Permutor { + Array org; + Array cur; + MultiDimIterator > it; +public: + Permutor(const Array &_org): org(_org), cur(), it() { + Array m(org.get_size()); + for (int j=0; j& (void) { + if (cur.get_size()==0) { + cur.resize(org.get_size()); + Array done(org.get_size()); + zero_array(&done); + const Array &p=it; + for (int i=0; i +class PermutorUnique { + Permutor p; + LinkedList > list; +public: + PermutorUnique(const Array &_org): p(_org), list() {list << new Array(p);} + operator void * () {return (void *)p;} + operator const Array& (void) { + return p; + } + void operator++ (int) { + while (1) { + p++; + if (!p) break; + const Array &a=p; + LinkedListIterator > i(list); + for (; i; i++) { + if (*i==a) break; + } + if (!i) { + list << new Array(a); + break; + } + } + } +}; + +void make_triangles(LinkedList *ptriangles, const Array &a0, const Array &a1, int i1org, int i1end, const Array &pts) { + int di1=1; + if (norm2d(pts(a1(i1org))-pts(a0(0)))>norm2d(pts(a1(i1end))-pts(a0(0)))) { + di1=-1; + } + int i0=0; + int i1=(di1==1 ? i1org : i1end); + while (i0=i1org && i1<=i1end) { + int inci0=1; + int inci1=1; + if (i0+1>=a0.get_size()) {inci0=0;} + if (i1+di1i1end) {inci1=0;} + if (!inci0 && !inci1) break; + if (inci0 && inci1) { + rVector3d dx0=pts(a0(i0+1))-pts(a0(i0)); + rVector3d dx1=pts(a1(i1+di1))-pts(a1(i1)); + Real p0=(pts(a1(i1))-pts(a0(i0)))*dx0/norm2(dx0); + Real p1=(pts(a0(i0))-pts(a1(i1)))*dx1/norm2(dx1); + if (p0>=0 && p0<=1) { + inci1=0; + } + else if (p1>=0 && p1<=1) { + inci0=0; + } + else if (p0 *ptoflip, const Array > &pts2tri, const Array &triangles, const Array &pts) { + rVector3d u=(pts(triangles(t)(1))-pts(triangles(t)(0))) ^ (pts(triangles(t)(2))-pts(triangles(t)(1))); + if (dir*u>=0) {(*ptoflip)(t)=1;} else {(*ptoflip)(t)=-1; u=-u;} + for (int v=0; v<3; v++) { + LinkedListIterator i(pts2tri(triangles(t)(v))); + for (; i; i++) { + if ((*i)!=t) { + int j; + for (j=0; j<3; j++) { + if (triangles(*i)(j)==triangles(t)((v+1)%3)) break; + } + if (j<3) break; + } + } + if (i) { + if ((*ptoflip)(*i)==0) { + fix_triangle_normals_sub(*i,u,ptoflip,pts2tri,triangles,pts); + } + } + } +} + +int fix_triangle_normals(LinkedList *ptriangles, const Array &pts) { + Array triangles; + LinkedList_to_Array(&triangles,*ptriangles); + Array > pts2tri(pts.get_size()); + for (int t=0; t toflip(triangles.get_size()); + zero_array(&toflip); + while (1) { + int f; + for (f=0; f t(*ptriangles); + for (int it=0; t; t++, it++) { + if (toflip(it)==-1) { + swap(&((*t)(1)),&((*t)(2))); + } + } +} + +class TriangulationExporter { +public: + virtual void write_onecolor(ostream &file, const Array &pts, const LinkedList &tri, int color) {} +}; + +GenericPlugIn *GenericPlugIn::list=NULL; + +class VTKTriangulationExporter: public TriangulationExporter { + virtual void write_onecolor(ostream &file, const Array &pts, const LinkedList &tri, int color) { + cout << "# vtk DataFile Version 3.0" << endl; + cout << "vtk output" << endl; + cout << "ASCII" << endl; + cout << "DATASET POLYDATA" << endl; + cout << "POINTS " << pts.get_size() << " float" << endl; + for (int p=0; p t(tri); + for (; t; t++) { + cout << 3 << " " << *t << endl; + } + + cout << "POINT_DATA " << pts.get_size() << endl; + cout << "SCALARS mycolor int 1" << endl; + cout << "LOOKUP_TABLE default" << endl; + for (int p=0; p VTKPlugIn("vtk"); + +char *helpstring="Insert more help here"; + +int main(int argc, char *argv[]) { + // parsing command line. See getvalue.hh for details; + char *tabfilename="tab.in"; + // Real maxd=0.; + Real sc=1000.; + int color=0; + int sigdig=5; + char *exporter_label="vtk"; + int nofixnormal=0; + int backface=0; + int dohelp=0; + int dummy=0; + AskStruct options[]={ + {"","TRIangulate PHase " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-t","Input table file",STRINGVAL,&tabfilename}, + // {"-md","Max distance between points of the same surface",REALVAL,&maxd}, + {"-sc","Scale for the unique axis (1st)",REALVAL,&sc}, + {"-col","Color",INTVAL,&color}, + {"-nfn","do Not fix Normal vector",BOOLVAL,&nofixnormal}, + {"-bf","generate back face",BOOLVAL,&backface}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-ef","Export format (default: vtk)",STRINGVAL,&exporter_label}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + cout.setf(ios::fixed); + cout.precision(sigdig); + + if (!check_plug_in(TriangulationExporter(),exporter_label)) { + cerr << exporter_label << endl; + ERRORQUIT("Unknown export format"); + } + TriangulationExporter *pexporter=GenericPlugIn::create(exporter_label); + + // this needs to be cleaned up; + Array pts; + LinkedList > strips; + { + Array > rawtab; + ifstream tabfile(tabfilename); + if (!tabfile) ERRORQUIT("Unable to open table file"); + read_table(&rawtab,tabfile,1); + LinkedList ptslist; + LinkedList curstrip; + int j=0; + for (int i=0; i<=rawtab.get_size(); i++) { + if (i==rawtab.get_size() || rawtab(i).get_size()==0) { + if (curstrip.get_size()>0) { + Array *pstrip=new Array; + LinkedList_to_Array(pstrip,curstrip); + strips << pstrip; + curstrip.delete_all(); + } + } + else { + rVector3d *pv=new rVector3d(rawtab(i)(0)/sc,rawtab(i)(1)+rawtab(i)(2)/2.,rawtab(i)(2)*sqrt(3.)/2); + ptslist << pv; + curstrip << new int(j); + j++; + } + } + LinkedList_to_Array(&pts, ptslist); + } + LinkedList triangles; + + Real cursl0=MAXFLOAT; + for (int i=1; icursl0+zero_tolerance) {cursl1=min(cursl1,pts(i)(0));} + } + if (cursl1==MAXFLOAT) break; + + int nsl0=0; + int nsl1=0; + LinkedListIterator > s(strips); + for (; s; s++) { + if (near_zero(pts((*s)(0))(0)-cursl0)) nsl0++; + if (near_zero(pts((*s)(0))(0)-cursl1)) nsl1++; + } + Array *> pa0(nsl0); + Array *> pa1(nsl1); + int i0=0; + int i1=0; + for (s.init(strips); s; s++) { + if (near_zero(pts((*s)(0))(0)-cursl0)) {pa0(i0)=s; i0++;} + } + for (s.init(strips); s; s++) { + if (near_zero(pts((*s)(0))(0)-cursl1)) {pa1(i1)=s; i1++;} + } + if (pa0.get_size() bestmrg; + Array* > bestperm; + Array merge(pa0.get_size()); + zero_array(&merge); + for (int i=0; i mrg(merge); + for (; mrg; mrg++) { + const Array &amrg=mrg; + Permutor * > perm(pa0); + for (; perm; perm++) { + const Array *> &aperm=perm; + Real d=0; + int s0=0; + for (int s1=0; s1 comb; + concat(&comb,*aperm(s0),*aperm(s0+1)); + d+=hausdorf(comb,*pa1(s1),pts); + s0++; + } + else { + d+=hausdorf(*aperm(s0),*pa1(s1),pts); + } + } + if (d diffd(pa1(s1)->get_size()); + for (int i1=0; i1get_size(); i1++) { + diffd(i1)=directed_hausdorf((*pa1(s1))(i1),*bestperm(s0),pts)-directed_hausdorf((*pa1(s1))(i1),*bestperm(s0+1),pts); + } + int i1split=-1; + int hlf=diffd.get_size()/2; + for (int di=0; di0)!=(diffd(i2+1)>0)) { + i1split=i2; + break; + } + // if (near_zero(diffd(i2)) || near_zero(diffd(i2+1))) { + // i1split=i2; + // break; + // } + } + } + if (i1split!=-1) break; + } + if (i1split==-1) { + make_triangles(&triangles,*bestperm(s0+(diffd(0)>0)),*pa1(s1),0,pa1(s1)->get_size()-1,pts); + } + else { + int shft=(fabs(diffd(i1split+1))0)),*pa1(s1),0,i1split+shft,pts); + make_triangles(&triangles,*bestperm(s0+(diffd(i1split+1)>0)),*pa1(s1),i1split+shft,pa1(s1)->get_size()-1,pts); + } + s0++; + } + else { + make_triangles(&triangles,*bestperm(s0),*pa1(s1),0,pa1(s1)->get_size()-1,pts); + } + } + cursl0=cursl1; + } + + if (!nofixnormal) {fix_triangle_normals(&triangles,pts);} + if (backface) { + LinkedListIterator t(triangles); + for (; t; t++) { + triangles.add(new iVector3d((*t)(0),(*t)(2),(*t)(1)),t); + t++; + } + } + + pexporter->write_onecolor(cout,pts,triangles,color); + delete pexporter; + +} diff --git a/src/tryamd.c++ b/src/tryamd.c++ new file mode 100644 index 0000000..9618e3f --- /dev/null +++ b/src/tryamd.c++ @@ -0,0 +1,43 @@ +#include "version.h" +#include +#include "linalg.h" + +Real myfr(Real r) { + return -r*exp(-r); +} + +Real myf(Real x, Real y) { + rVector2d z(x,y); + rVector2d z0; + Real acc=0.; + for (z0(0)=-0.5; z0(0)<=2.6; z0(0)+=10.) { + for (z0(1)=-0.5; z0(1)<=2.6; z0(1)+=10.) { + acc+=myfr(norm(z-z0)); + } + } + return acc; +} + +int main(int argc, char *argv[]) { + Real dx=0.01; + ofstream file("ftmp.out"); + Array x(2); + Array f(2); + Array2d H(2,2); + for (x(0)=-2.; x(0)<=2.; x(0)+=0.05) { + for (x(1)=-2.; x(1)<=2.; x(1)+=0.05) { + f(0)=(myf(x(0)+dx,x(1))-myf(x(0)-dx,x(1)))/(2.*dx); + f(1)=(myf(x(0),x(1)+dx)-myf(x(0),x(1)-dx))/(2.*dx); + H(0,0)=(myf(x(0)+dx,x(1))+myf(x(0)-dx,x(1))-2.*myf(x(0),x(1)))/sqr(dx); + H(1,1)=(myf(x(0),x(1)+dx)+myf(x(0),x(1)-dx)-2.*myf(x(0),x(1)))/sqr(dx); + H(1,0)=(myf(x(0)+dx,x(1)+dx)-myf(x(0)+dx,x(1)-dx) - ( myf(x(0)-dx,x(1)+dx)-myf(x(0)-dx,x(1)-dx) ) )/sqr(dx)/4.0; + H(0,1)=H(1,0); + Real t=(H(0,0)+H(1,1))/2.; + Real d=H(0,0)*H(1,1)-H(1,0)*H(0,1); // 1*x^2-2*t*x+d; + Real mincurv=t-sqrt(sqr(t)-d); + Real maxcurv=t+sqrt(sqr(t)-d); + file << x(0) << " " << x(1) << " " << myf(x(0),x(1)) << " " << mincurv << " " << maxcurv << endl; + } + file << endl; + } +} diff --git a/src/tryclus.c++ b/src/tryclus.c++ new file mode 100644 index 0000000..ef24cdb --- /dev/null +++ b/src/tryclus.c++ @@ -0,0 +1,103 @@ +#include +#include "xtalutil.h" +#include "getvalue.h" +#include "parse.h" +#include "version.h" + + +void list_atom(ostream &file, const Array &labellookup, const Array &label, int thetype) { + for (int i=0; i0) {cout << ",";} + cout << label(labellookup(thetype)(i)); + } +} + + +int main(int argc, char *argv[]) { + char *latfilename="lat.in"; + int listbond=0; + Real user_rad=0.0; + int sigdig=5; + int dummy; + AskStruct options[]={ + {"","Nearest Neighbor Shell " MAPS_VERSION ", by Axel van de Walle and Paul Dalach",TITLEVAL,NULL}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latfilename}, + {"-lb","List bond types in given structures",BOOLVAL,&listbond}, + {"-sig","Number of significant digits to print in output files",INTVAL,&sigdig}, + {"-r","Define a max radius for neighbor search",REALVAL,&user_rad}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + Structure lat; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream latfile(latfilename); + if (!latfile) ERRORQUIT("Unable to open lattice file"); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &labellookup, &label, latfile, &axes); + wrap_inside_cell(&lat.atom_pos,lat.atom_pos,lat.cell); + } + cout.setf(ios::fixed); + cout.precision(sigdig); + if (listbond) { + for (int at=0; at0) {rnn=user_rad;} + else {rnn=find_1nn_radius(lat,at);} + int body=3; + Array ang(body); + AtomMultipletIterator clus(lat.cell, lat.atom_pos, body); + for ( ; clus.length()<=user_rad+zero_tolerance; clus++) { + for (int i=0; i thetype(body); + for (int i=0; i0) {rnn=user_rad;} + else {rnn=find_1nn_radius(lat,at);} + cout << rnn << endl; + list_atom(cout,labellookup,label,lat.atom_type(at)); + cout << endl; + AtomPairIterator p(lat.cell,lat.atom_pos(at),lat.atom_pos); + while (p.length()<=rnn+zero_tolerance) { + cout << " " << (!axes)*(p(1)-p(0)) << " " << norm(p(1)-p(0)) << " "; + int thetype=lat.atom_type(which_atom(lat.atom_pos,p(1),!lat.cell)); + list_atom(cout,labellookup,label,thetype); + cout << endl; + nbnn++; + p++; + } + cout << " " << nbnn << endl << endl; + } + } +} diff --git a/src/undopatch b/src/undopatch new file mode 100755 index 0000000..3e1a9b5 --- /dev/null +++ b/src/undopatch @@ -0,0 +1,5 @@ +#!/bin/csh +foreach file (*.bak) + set nobak=`echo $file | sed 's/.bak//g'` + cp -f $file $nobak +end diff --git a/src/vctriv.c++ b/src/vctriv.c++ new file mode 100644 index 0000000..0e2b03c --- /dev/null +++ b/src/vctriv.c++ @@ -0,0 +1,65 @@ +#include +#include "parse.h" +#include "getvalue.h" +#include "version.h" +#include "normal.h" + +char *helpstring="Insert more help here"; + +int main(int argc, char *argv[]) { + // parsing command line. See getvalue.hh for details; + char *latfilename="lat.in"; + int n=0; + int s=100; + Real v=1.; + int sigdig=5; + int dohelp=0; + int dummy=0; + AskStruct options[]={ + {"","Skeleton for atat-like codes" MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-l","Input file defining the lattice (defaults: lat.in)",STRINGVAL,&latfilename}, + {"-n","An integer parameter",INTVAL,&n}, + {"-s","An integer parameter",INTVAL,&s}, + {"-v","An real parameter",REALVAL,&v}, + {"-sig","Number of significant digits printed (default: 5)",INTVAL,&sigdig}, + {"-h","Display more help",BOOLVAL,&dohelp}, + {"-d","Use all default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + if (dohelp) { + cout << helpstring; + return 1; + } + + cout.setf(ios::fixed); + cout.precision(sigdig); + + + // parsing lattice and structure files. See parse.hh for detail; + Structure lat; + Array labellookup; + Array label; + rMatrix3d axes; + { + ifstream latfile(latfilename); + if (!latfile) ERRORQUIT("Unable to open lattice file"); + parse_lattice_file(&lat.cell, &lat.atom_pos, &lat.atom_type, &labellookup, &label, latfile, &axes); + // wrap_inside_cell(&lat.atom_pos,lat.atom_pos,lat.cell); + } + rndseed(0); + rVector3d x=lat.atom_pos(n); + // cout << lat.atom_pos << endl; + for (int i=0; i +#define iVector2d Vector2d +#define rVector2d Vector2d +#define iVector2d Vector2d +#define rMatrix2d Matrix2d +#define iMatrix2d Matrix2d +#define iBoundingBox2d BoundingBox + +#define rVector3d Vector3d +#define iVector3d Vector3d +#define rVector3d Vector3d +#define iVector3d Vector3d +#define rMatrix3d Matrix3d +#define iMatrix3d Matrix3d +#define iBoundingBox3d BoundingBox +#define rBoundingBox3d BoundingBox + +inline rVector2d to_real(const iVector2d &v) { + return rVector2d((Real)v(0),(Real)v(1)); +} + +inline rVector3d to_real(const iVector3d &v) { + return rVector3d((Real)v(0),(Real)v(1),(Real)v(2)); +} + +inline rMatrix3d to_real(const iMatrix3d &a) { + rMatrix3d b; + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + b(i,j)=(Real)a(i,j); + } + } + return rMatrix3d(b); +} + +inline int iround(Real x) { + return (int)rint(x); +} + +inline iVector2d to_int(const rVector2d &v) { + return iVector2d(iround(v(0)),iround(v(1))); +} + +inline iVector3d to_int(const rVector3d &v) { + return iVector3d(iround(v(0)),iround(v(1)),iround(v(2))); +} + +inline iMatrix3d to_int(const rMatrix3d &a) { + iMatrix3d b; + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + b(i,j)=iround(a(i,j)); + } + } + return b; +} + +#endif diff --git a/src/version.hh b/src/version.hh new file mode 100644 index 0000000..6e51e14 --- /dev/null +++ b/src/version.hh @@ -0,0 +1,3 @@ +#ifndef MAPS_VERSION +#define MAPS_VERSION "3.36" +#endif diff --git a/src/viewgce.c++ b/src/viewgce.c++ new file mode 100644 index 0000000..aaf39b6 --- /dev/null +++ b/src/viewgce.c++ @@ -0,0 +1,179 @@ +#include +#include "tensor.h" +#include "getvalue.h" +#include "version.h" +#include "parse.h" + +int equal_multiclus(const MultiCluster &a, const MultiCluster &b) { + if (a.clus.get_size()!=b.clus.get_size()) return 0; + for (int i=0; i fixx_list; + if (file_exists("fixdir.in")) { + ifstream file("fixdir.in"); + while (!file.eof()) { + rVector3d tmp(MAXFLOAT,MAXFLOAT,MAXFLOAT); + file >> tmp; + if (tmp(0)==MAXFLOAT) break; + fixx_list << new rVector3d(tmp); + } + } + { + ofstream shfile("sh.tmp"); + Real maxr=0.; + for (int pass=0; pass<2; pass++) { + Real dt=M_PI/48; + Real dp=M_PI/48; + for (Real t=0; t x(3); + x(0)=sin(t)*cos(p); + x(1)=sin(t)*sin(p); + x(2)=cos(t); + Real r=0.; + const Array &size=sumtensor.get_size(); + MultiDimIterator > i(size); + for ( ; i; i++) { + Real a=sumtensor(i); + LinkedListIterator ifixx(fixx_list); + for (int j=0; j &)i)(j)); + ifixx++; + } + else { + a*=x(((Array &)i)(j)); + } + } + r+=a; + } + maxr=MAX(maxr,fabs(r)); + if (pass==1) { + shfile << x(0) << " " << x(1) << " " << x(2) << " " << (normalize ? r/maxr : r) << endl; + } + } + if (pass==1) { + shfile << endl; + } + } + } + } + ostrstream line; + line << plotcommand << " "; + line.width(3); + line.fill('0'); + line << c << '\0'; + system(line.str()); +} + +int main(int argc, char *argv[]) { + char *latticefilename="lat.in"; + char *ecifilename=""; + char *rmcommand="rm -f shclus???.pnm"; + char *plotcommand="viewtensorclus"; + char *catcommand="pnmcat -topbottom shclus???.pnm | pnmtopng > all.png"; + int normalize=0; + int dummy=0; + AskStruct options[]={ + {"","Viewer for a Generalized Cluster Expansion " MAPS_VERSION ", by Axel van de Walle",TITLEVAL,NULL}, + {"-l","Input file defining the lattice (default: lat.in)",STRINGVAL,&latticefilename}, + {"-eci","Combine terms using ECI in specified file",STRINGVAL,&ecifilename}, + {"-rc","Remove command to run beforehand",STRINGVAL,&rmcommand}, + {"-cc","Command to catenate all output",STRINGVAL,&catcommand}, + {"-pc","Command to plot tensor and cluster",STRINGVAL,&plotcommand}, + {"-n","Normalize plots by max",BOOLVAL,&normalize}, + {"-d","All default values",BOOLVAL,&dummy} + }; + if (!get_values(argc,argv,countof(options),options)) { + display_help(countof(options),options); + return 1; + } + + rMatrix3d axes; + axes.identity(); + { + Structure lattice; + Array labellookup; + Array label; + ifstream latticefile(latticefilename); + if (latticefile) { + parse_lattice_file(&lattice.cell, &lattice.atom_pos, &lattice.atom_type, &labellookup, &label, latticefile, &axes); + wrap_inside_cell(&lattice.atom_pos,lattice.atom_pos,lattice.cell); + } + } + + system(rmcommand); + + if (!file_exists("gcetensor.in")) { + ofstream tfile("gcetensor.in"); + tfile << 1 << endl; + } + + LinkedList clusterlist; + LinkedList ecilist; + + { + ifstream clusterfile; + if (file_exists("clusters.out")) { + clusterfile.open("clusters.out"); + } + else { + clusterfile.open("harm.out"); + } + if (!clusterfile) { + ERRORQUIT("Unable to open clusters.out or harm.out file"); + } + if (strlen(ecifilename)>0) { + ifstream ecifile(ecifilename); + if (!ecifile) ERRORQUIT("Unable to open eci file"); + read_clusters_and_eci(&clusterlist,&ecilist,clusterfile,ecifile,axes); + } + else { + read_clusters_and_eci(&clusterlist,NULL,clusterfile,clusterfile,axes); + } + } + + LinkedListIterator ic(clusterlist); + LinkedListIterator ie(ecilist); + if (ie) { + for (int c=0; ic; c++) { + rTensor sumtensor(((TensorSymmetryObeyingObject *)(ic->psymobj))->tensor.get_size()); + sumtensor.zero(); + LinkedListIterator jc=ic; + while (jc) { + if (!equal_multiclus(ic->clus,jc->clus)) break; + rTensor tensor=((TensorSymmetryObeyingObject *)(jc->psymobj))->tensor; + tensor*=(*ie); + sumtensor+=tensor; + jc++; + ie++; + } + view_tensor_cluster(sumtensor,ic->clus,c,plotcommand,normalize); + ic=jc; + } + } + else { + for (int c=0; ic; ic++,c++) { + view_tensor_cluster(((TensorSymmetryObeyingObject *)(ic->psymobj))->tensor,ic->clus,c,plotcommand,normalize); + } + } + system(catcommand); +} diff --git a/src/viewharm b/src/viewharm new file mode 100755 index 0000000..1c64be6 --- /dev/null +++ b/src/viewharm @@ -0,0 +1,22 @@ +#!/bin/csh +cat - > viewclus.gnu < shclus${1}.pnm diff --git a/src/viewtensorclus b/src/viewtensorclus new file mode 100755 index 0000000..156301c --- /dev/null +++ b/src/viewtensorclus @@ -0,0 +1,32 @@ +#!/bin/csh +cat - > viewclus.gnu < tmp1.pnm +pngtopnm.exe < clus.png | pnmcrop -margin 20 > tmp2.pnm +pnmcat -leftright tmp1.pnm tmp2.pnm > shclus${1}.pnm diff --git a/src/wycked b/src/wycked new file mode 100755 index 0000000..2f00889 --- /dev/null +++ b/src/wycked @@ -0,0 +1,64 @@ +#!/bin/bash +atatdir=$(sed 's/.*=\(.*\)/\1/g' ~/.atat.rc) + +if [[ $# -eq 0 || "x$1" == "x-h" ]] +then + cat - <<-EOF +WYCKoff position EDitor, by Axel van de Walle +Syntax: + wycked [spcgrp] [list_of_wyckoff_position_letter_without_seperators] +The output is meant to first be edited to set the free parameters a,b,c,alpha,beta,gamma,x,y,z,etc +in each of the lines starting with #const +and processed by sspp to create a valid ATAT structure file. + +ACKNOWLEDGEMENTS +This code makes use of a Wyckoff position database downloaded from the Bilbao Crystallographic Server +at http://www.cryst.ehu.es/ +Accordingly, if you use this code, you should cite, in addition to the usual ATAT citations, +the following papers: + M. I. Aroyo, J. M. Perez-Mato, D. Orobengoa, E. Tasci, G. de la Flor, A. Kirov + "Crystallography online: Bilbao Crystallographic Server" + Bulg. Chem. Commun. 43(2) 183-197 (2011). + M. I. Aroyo, J. M. Perez-Mato, C. Capillas, E. Kroumova, S. Ivantchev, G. Madariaga, + A. Kirov and H. Wondratschek, + "Bilbao Crystallographic Server I: Databases and crystallographic computing programs" + Z. Krist. 221, 1, 15-27 (2006). doi:10.1524/zkri.2006.221.1.15 + M. I. Aroyo, A. Kirov, C. Capillas, J. M. Perez-Mato and H. Wondratschek + "Bilbao Crystallographic Server II: Representations of crystallographic point groups and + space groups", Acta Cryst. A62, 115-128 (2006). doi:10.1107/S0108767305040286 +EOF +exit +fi + +sgonly=$(echo $1 | sed 's/s[12]//g') +sgset=$(echo $1 | sed 's/^[^s]*//g') + +spcgrpdata=($(awk '{if ($1=='\"$sgonly\"' || $2=='\"$sgonly\"') {print $1,$3,$4;}}' ${atatdir}/data/wyckoff/spcgrp.txt) ) + +if [[ ${#spcgrpdata} == 0 ]] +then + echo "Space Group $sgonly not found." + exit 1 +fi + +sgnum=${spcgrpdata[0]} +sgaxes=${spcgrpdata[1]} +sgcell=${spcgrpdata[2]} + +cat ${atatdir}/data/wyckoff/axes_${sgaxes}.txt +cat ${atatdir}/data/wyckoff/cell_${sgcell}.txt + +for ((i=0 ; i < ${#2} ; i++)) +do + site=${2:i:1} + grep ${site}\$ ${atatdir}/data/wyckoff/wyckoff${sgnum}${sgset}.txt | awk '{print "{"$1"}","{"$2"}","{"$3"}","{"toupper($4)"}"}' >| wycktmp${$}.tmp + echo -n "#const " + for pvar in x y z + do + grep -q "$pvar" wycktmp${$}.tmp && echo -n "${pvar}=; " + done + #echo ${site^}=\"${site^}\"\; + echo ${site} | awk '{print toupper($1)"=\"" toupper($1) "\";"}' + cat wycktmp${$}.tmp +done +rm -f wycktmp${$}.tmp diff --git a/src/xtalutil.c++ b/src/xtalutil.c++ new file mode 100644 index 0000000..699f1e2 --- /dev/null +++ b/src/xtalutil.c++ @@ -0,0 +1,693 @@ +#include "xtalutil.h" + +int in01(rVector3d v) { + for (int i=0; i<3; i++) { + if (v(i)<0. || v(i)>=1.) return 0; + } + return 1; +} + +int in01included(rVector3d v) { + for (int i=0; i<3; i++) { + if (v(i)<=-zero_tolerance || v(i)>=1+zero_tolerance) return 0; + } + return 1; +} + +int which_atom(const Array &atom_pos, const rVector3d &pos, const rMatrix3d &inv_cell) { + for (int i=0; i &atom_pos, const rVector3d &pos) { + for (int i=0; i *dest, const Array &src, const rMatrix3d &cell) { + if (dest->get_size()!=src.get_size()) {dest->resize(src.get_size());} + rVector3d shift=rVector3d(1,1,1)*M_PI*zero_tolerance*0.1; + rMatrix3d inv_cell=!cell; + for (int i=0; i c(-max_cell,max_cell); + rVector3d closest_k; + Real min_norm=MAXFLOAT; + for (;c; c++) { + rVector3d cur_k=k+rec_lat*to_real(c); + Real norm_k=norm(cur_k); + if (norm_kzero_tolerance) { + result=result/l; + break; + } + } + return result; +} + +iVector3d make_miller(rVector3d normal) { + int p,q,common; + common=1; + for (int i=0; i<3; i++) { + integer_ratio(&p,&q,normal(i),zero_tolerance); + least_common_multiple(q,1); + } + iVector3d miller; + for (int i=0; i<3; i++) { + miller(i)=iround(normal(i)*(Real)common); + } + return miller; +} + +void calc_lattice_vectors(rMatrix3d *lattice_vector, const rVector3d &cell_length, rVector3d cell_angle) { + cell_angle=cell_angle*M_PI/180.; + rVector3d a=rVector3d(1. , 0. , 0.)*cell_length(0); + rVector3d b=rVector3d(cos(cell_angle(2)), sin(cell_angle(2)), 0.)*cell_length(1); + rVector3d axb=a^b; + rMatrix3d linear_system; + linear_system.set_row(0,a); + linear_system.set_row(1,b); + linear_system.set_row(2,axb); + rVector3d right_hand_side; + right_hand_side(0)=norm(a)*cell_length(2)*cos(cell_angle(1)); + right_hand_side(1)=norm(b)*cell_length(2)*cos(cell_angle(0)); + right_hand_side(2)=0.; + rVector3d solution=(!linear_system)*right_hand_side; + Real x=sqrt(sqr(cell_length(2))-norm2(solution))/norm(axb); + lattice_vector->set_column(0,a); + lattice_vector->set_column(1,b); + lattice_vector->set_column(2,solution+x*axb); +} + +void calc_lattice_vectors(rVector3d *cell_length, rVector3d *cell_angle, const rMatrix3d &lattice_vector) { + for (int i=0; i<3; i++) { + (*cell_length)(i)=norm(lattice_vector.get_column(i)); + } + for (int i=0; i<3; i++) { + (*cell_angle)(i)=acos(lattice_vector.get_column((i+1)%3)*lattice_vector.get_column((i+2)%3)/(((*cell_length)((i+1)%3))*((*cell_length)((i+2)%3))))*180.0/M_PI; + } +} + +iVector3d find_sphere_bounding_box(const rMatrix3d &cell, Real radius) { + iVector3d max_cell; + rMatrix3d rec_lat=~!cell; + for (int i=0 ; i<3; i++) { + max_cell(i)=(int)ceil(norm(rec_lat.get_column(i))*radius+zero_tolerance); + } + return(max_cell); +} + +int equivalent_mod_cell(const rVector3d &a, const rVector3d &b, const rMatrix3d &inv_cell) { + rVector3d frac_a=inv_cell*a; + rVector3d frac_b=inv_cell*b; + rVector3d delta=frac_a-frac_b; + for (int i=0; i<3; i++) { + delta(i)=cylinder_norm(delta(i)); + } + return (norm(delta) &a, const Array &b, const rMatrix3d &inv_cell) { + if (a.get_size()!=b.get_size()) return 0; + if (a.get_size()==0) return 1; + for (int i=0; i c(-max_cell,max_cell); + for (;c;c++) { + rVector3d x=cell*to_real(c); + Real r=norm(x); + if (max_radius i(list); + while (i && norm(*i) i(list); + delete list.detach(i); + i.init(list); + while (!i) { + find_new_neighbors(max_radius+inc_radius); + i.init(list); + } + return *i; +} + +void LatticePointInCellIterator::init(const rMatrix3d &_cell, const rMatrix3d &_supercell) { + cell=_cell; + cell_to_super=(!_supercell)*_cell; + shift=rVector3d(1.,1.,1.)*zero_tolerance*0.1*M_PI; //some irrational number; + + rMatrix3d super_to_cell=!cell_to_super; + BoundingBox box; + box.before_update(); + MultiDimIterator take_tip(iVector3d(0,0,0),iVector3d(1,1,1)); + for (; take_tip; take_tip++) { + box.update(super_to_cell*(to_real(take_tip)+shift)); + } + current.init(to_int(floor(box.min)),to_int(ceil(box.max))); + advance_to_valid(); +} + +void LatticePointInCellIterator::advance_to_valid(void) { + while (current) { + if (in01(cell_to_super*to_real(current)+shift)) break; + current++; + } +} + +void find_all_atom_in_supercell(Array *psuper_atom_pos, + Array *psuper_atom_type, + const Array &atom_pos, + const Array &atom_type, + const rMatrix3d &cell, const rMatrix3d &supercell) { + int nb_atom_supercell=iround(atom_pos.get_size()*fabs(det(supercell)/det(cell))); + psuper_atom_pos->resize(nb_atom_supercell); + psuper_atom_type->resize(nb_atom_supercell); + LatticePointInCellIterator l(cell,supercell); + int index=0; + for ( ; l; l++) { + for (int s=0; s *psuper_atom_pos, + Array *psuper_atom_type, + const Array &atom_pos, + const Array &atom_type, + const rMatrix3d &cell, const rMatrix3d &supercell) { + int nb_atom_supercell=iround(atom_pos.get_size()*fabs(det(supercell)/det(cell))); + psuper_atom_pos->resize(nb_atom_supercell); + psuper_atom_type->resize(nb_atom_supercell); + int index=0; + for (int s=0; s *psuper_atom_pos, + Array *psuper_atom_type, + const Array &atom_pos, + const Array &atom_type, + const rMatrix3d &cell, const rMatrix3d &supercell) { + rMatrix3d super_to_cell=(!cell)*supercell; + rVector3d take_tip; + BoundingBox box; + box.before_update(); + for (take_tip(0)=0.; take_tip(0)<=1.; take_tip(0)+=1.) { + for (take_tip(1)=0.; take_tip(1)<=1.; take_tip(1)+=1.) { + for (take_tip(2)=0.; take_tip(2)<=1.; take_tip(2)+=1.) { + box.update(super_to_cell*take_tip); + } + } + } + + int nb_atom=atom_pos.get_size(); + int nb_atom_supercell=nb_atom*iround(fabs(det(supercell)/det(cell))); + rMatrix3d axes_to_super=!supercell; + + Array &super_atom_pos=*psuper_atom_pos; + Array &super_atom_type=*psuper_atom_type; + super_atom_pos.resize(nb_atom_supercell); + if (psuper_atom_type) super_atom_type.resize(nb_atom_supercell); + { + int index=0; + rVector3d which_cell; + for (which_cell(0)=box.min(0); which_cell(0)<=box.max(0)+zero_tolerance; which_cell(0)+=1.) { + for (which_cell(1)=box.min(1); which_cell(1)<=box.max(1)+zero_tolerance; which_cell(1)+=1.) { + for (which_cell(2)=box.min(2); which_cell(2)<=box.max(2)+zero_tolerance; which_cell(2)+=1.) { + for (int at=0; at 1.+zero_tolerance) break; + } + if (i==3) { + int index2; + for (index2=0; index21.-zero_tolerance) pos_super(i)-=1.; + } + pos_axes=supercell*pos_super; + super_atom_pos(index)=pos_axes; + if (psuper_atom_type) super_atom_type(index)=atom_type(at); + index++; + } + } + } + } + } + } + if (index!=super_atom_pos.get_size()) ERRORQUIT("Computed supercell does not have the right number of atoms."); + } +} +*/ + +Real find_1nn_radius(const Structure &str, int atom) { + Real dist=0.; + LinkedList pair_list; + AtomPairIterator pair(str.cell,str.atom_pos(atom),str.atom_pos); + while (1) { + LinkedListIterator i(pair_list); + for ( ; i; i++) { + if (cos_angle((*i)(1)-(*i)(0),pair(1)-(*i)(1))>-zero_tolerance) break; + } + if (i) { + break; + } + else { + pair_list << new Array(pair); + dist=norm(pair(1)-pair(0)); + } + pair++; + } + return dist; +} + +Real find_1nn_radius(const Structure &str) { + Real max_dist=0.; + for (int at=0; at pair_list; + AtomPairIterator pair(str.cell,str.atom_pos(at),str.atom_pos); + while (1) { + LinkedListIterator i(pair_list); + for ( ; i; i++) { + if (cos_angle((*i)(1)-(*i)(0),pair(1)-(*i)(1))>-zero_tolerance) break; + } + if (i) { + break; + } + else { + pair_list << new Array(pair); + dist=norm(pair(1)-pair(0)); + } + pair++; + } + max_dist=MAX(max_dist,dist); + } + return max_dist; +} + +void AtomPairIterator::find_new_neighbors(Real new_max_radius) { +#ifdef QUICKNEIGHBORALGO + for (int i=0; iget_size(); i++) { + for (int j=0; jget_size(); j++) { + rVector3d dr=(*atom_pos1)(i)-(*atom_pos2)(j); + Real minr=norm(dr); + iVector3d max_cell=find_sphere_bounding_box(cell,minr); + MultiDimIterator c(-max_cell,max_cell); + rVector3d closest(0.,0.,0.); + for (; c; c++) { + rVector3d rc=cell*to_real(c); + rVector3d x=rc+dr; + if (norm(x)zero_tolerance || j>i) { + rVector3d atom_b=(*atom_pos2)(j)+shift; + Real r=norm(atom_b-atom_a); + if (max_radiuszero_tolerance) { + LinkedListIterator i(list); + while (i && norm((*i)(1)-(*i)(0)) *parray=new Array(2); + (*parray)(0)=atom_a; + (*parray)(1)=atom_b; + list.add(parray,i); + } + } + } + } + } + } + max_radius=new_max_radius; +#else + LatticePointIterator lat_vect(cell,0); + for (; norm(lat_vect) < (new_max_radius+max_dist_in_cell+zero_tolerance); lat_vect++) { + for (int i=0; iget_size(); i++) { + for (int j=(same_pos && norm(lat_vect)get_size(); j++) { + rVector3d atom_a=(*atom_pos1)(i); + rVector3d atom_b=(*atom_pos2)(j)+(rVector3d)lat_vect; + Real r=norm(atom_b-atom_a); + if (max_radiuszero_tolerance) { + LinkedListIterator i(list); + while (i && norm((*i)(1)-(*i)(0)) *parray=new Array(2); + (*parray)(0)=atom_a; + (*parray)(1)=atom_b; + list.add(parray,i); + } + } + } + } + max_radius=new_max_radius; +#endif +} + +void AtomPairIterator::init(void) { + max_dist_in_cell=0.; + for (int i=0; iget_size(); i++) { + for (int j=0; jget_size(); j++) { + max_dist_in_cell=MAX(max_dist_in_cell,norm((*atom_pos1)(i)-(*atom_pos2)(j))); + } + } + inc_radius=MAXFLOAT; + for (int i=0; i<3; i++) { + inc_radius=MIN(inc_radius,norm(cell.get_column(i))); + } + inc_radius+=zero_tolerance; + max_radius=0.; + LinkedListIterator it(list); + while (it) {delete list.detach(it);} + find_new_neighbors(inc_radius); +} + +void AtomPairIterator::init(const rMatrix3d &_cell, const Array &_atom_pos) { + cell=_cell; + atom_pos1=&_atom_pos; + atom_pos2=&_atom_pos; + same_pos=1; + init(); +} + +void AtomPairIterator::init(const rMatrix3d &_cell, const Array &_atom_pos1, const Array &_atom_pos2) { + cell=_cell; + atom_pos1=&_atom_pos1; + atom_pos2=&_atom_pos2; + same_pos=0; + init(); +} + +void AtomPairIterator::init(const rMatrix3d &_cell, const rVector3d &_an_atom, const Array &_atom_pos) { + cell=_cell; + an_atom.resize(1); + an_atom(0)=_an_atom; + atom_pos1=&an_atom; + atom_pos2=&_atom_pos; + same_pos=0; + init(); +} + +void AtomPairIterator::operator++(int) { + LinkedListIterator i(list); + delete list.detach(i); + i.init(list); + while (!i) { + find_new_neighbors(max_radius+inc_radius); + i.init(list); + } +} + +void AtomMultipletIterator::init(const rMatrix3d &_cell, const Array &_atom_pos, int _ntuple) { + cell=_cell; + atom_pos=&_atom_pos; + ntuple=_ntuple; + multiplet.resize(ntuple); + pairs.resize(ntuple-1); + if (ntuple>1) { + pairs(ntuple-2).init(cell,*atom_pos,*atom_pos); + for (int i=0; irmax+zero_tolerance) break; + } + if (j &c) { + Real max_length=0.; + for (int i=0; imax_length) max_length=l; + } + } + return max_length; +} + +void find_common_supercell(rMatrix3d *psupercell, const rMatrix3d &a, const rMatrix3d &b) { + rMatrix3d s,g; + if (det(a)set_column(0,v1); + psupercell->set_column(1,v2); + psupercell->set_column(2,v3); +} + +void find_common_simple_supercell(iVector3d *psimple_supercell, const rMatrix3d &unitcell, const rMatrix3d &supercell) { + rMatrix3d isupercell=!supercell; + for (int i=0; i<3; i++) { + int m=1; + while (!is_int(isupercell*((Real)m*unitcell.get_column(i)))) m++; + (*psimple_supercell)(i)=m; + } +} + +void strain_str(Structure *pstr, const Structure &str, const rMatrix3d &strain) { + rMatrix3d id; + id.identity(); + rMatrix3d s=strain+id; + pstr->cell=s*(str.cell); + pstr->atom_pos.resize(str.atom_pos.get_size()); + pstr->atom_type.resize(str.atom_pos.get_size()); + for (int at=0; atatom_pos(at)=s*str.atom_pos(at); + } + pstr->atom_type=str.atom_type; +} + +void apply_symmetry(Array *b, const rMatrix3d &point_op, const rVector3d &trans, const Array &a) { + b->resize(a.get_size()); + for (int i=0; iclus.resize(a.clus.get_size()); + b->site_type=a.site_type; + b->func=a.func; + for (int i=0; iclus)(i)=point_op*a.clus(i)+trans; + } +} + +void reorder_atoms(Structure *rel_str, const Structure &str, Array *pcopy_from, Array *pshift) { + if (rel_str->atom_pos.get_size()!=str.atom_pos.get_size()) { + ERRORQUIT("Structures of different number of atoms in reorder_atoms!"); + } + { + Real scale=pow(det(rel_str->cell)/det(str.cell),1./3.); + iMatrix3d supercell=to_int((!(rel_str->cell))*(str.cell)*scale); + rel_str->cell=(rel_str->cell)*to_real(supercell); + } + /* + { + Real maxr=0; + for (int i=0; i<3; i++) {maxr=MAX(maxr,norm(str.cell.get_column(i)));} + Real scale=pow(det(str.cell)/det(rel_str->cell),1./3.); + maxr*=MAX(1.,pow(scale,-3.)); + Array supercell; + find_all_equivalent_cell(&supercell,rel_str->cell,maxr); + Real mind=MAXFLOAT; + int best_ss; + for (int s=0; scell=supercell(best_ss); + } + */ + int n=str.atom_pos.get_size(); + Array frac_str,frac_rel_str; + Array str_done(n),rel_str_done(n); + zero_array(&str_done); + zero_array(&rel_str_done); + rVector3d t(0.,0.,0.); + apply_symmetry(&frac_str,!str.cell,t,str.atom_pos); + apply_symmetry(&frac_rel_str,!rel_str->cell,t,rel_str->atom_pos); + Array copy_from(n); + Array shift(n); + for (int t=0; tatom_type(best_ir)) { + ERRORQUIT("Too large shift between relaxed and unrelaxed positions."); + } + copy_from(best_i)=best_ir; + rVector3d s=frac_str(best_i)-frac_rel_str(best_ir); + shift(best_i)=to_int(s); + rel_str_done(best_ir)=1; + str_done(best_i)=1; + } + Structure tmpstr(*rel_str); + for (int i=0; iatom_pos(i)=tmpstr.atom_pos(copy_from(i))+rel_str->cell*to_real(shift(i)); + rel_str->atom_type(i)=tmpstr.atom_type(copy_from(i)); + } + if (pcopy_from) (*pcopy_from)=copy_from; + if (pshift) (*pshift)=shift; +} diff --git a/src/xtalutil.hh b/src/xtalutil.hh new file mode 100644 index 0000000..929f15f --- /dev/null +++ b/src/xtalutil.hh @@ -0,0 +1,273 @@ +#ifndef _XTALUTIL_H_ +#define _XTALUTIL_H_ + +#include "vectmac.h" +#include "arraylist.h" +#include "integer.h" + +#define HELPLATTICEAUTOCAST + +class Structure { +public: + rMatrix3d cell; + Array atom_pos; + Array atom_type; + Structure(void): atom_pos(), atom_type() {} + Structure(const Structure &a): cell(a.cell), atom_pos(a.atom_pos), atom_type(a.atom_type) {} +}; + +class MultiCluster { + public: + MultiCluster(int n=0): clus(n), site_type(n), func(n) {} + MultiCluster(const MultiCluster &c): clus(c.clus), site_type(c.site_type), func(c.func) {} + Array clus; + Array site_type; + Array func; + void operator=(const MultiCluster &m) { + clus=m.clus; + site_type=m.site_type; + func=m.func; + } +}; + +typedef Array ArrayrVector3d; + +inline Real cos_angle(rVector3d v, rVector3d u) { + return v*u/(norm(v)*norm(u)); +} + +inline Real cylinder_norm(Real x) { + return fabs(fmod(fabs(x)+0.5,1.)-0.5); +} + +inline Real cylinder_norm(rVector3d v) { + return sqrt(sqr(cylinder_norm(v(0)))+sqr(cylinder_norm(v(1)))+sqr(cylinder_norm(v(2)))); +} + +inline rVector3d ceil(rVector3d v) { + return(rVector3d(ceil(v(0)),ceil(v(1)),ceil(v(2)))); +} + +inline rVector3d floor(rVector3d v) { + return(rVector3d(floor(v(0)),floor(v(1)),floor(v(2)))); +} + +inline rVector3d round(rVector3d v) { + return(rVector3d(round(v(0)),round(v(1)),round(v(2)))); +} + +inline rVector3d mod1(rVector3d v) { + return(v-floor(v)); +// return(rVector3d(fmod(u(0),1.),fmod(u(1),1.),fmod(u(2),1.))); +} + +inline rVector3d cylinder(rVector3d v) { + return(rVector3d(cylinder_norm(v(0)),cylinder_norm(v(1)),cylinder_norm(v(2)))); +} + +inline int is_int(const rVector3d &v) { + for (int i=0; i<3; i++) { + if (fabs(v(i)-rint(v(i)))>zero_tolerance) return 0; + } + return 1; +} + +inline int is_int(const rMatrix3d &m) { + for (int i=0; i<3; i++) { + for (int j=0; j<3; j++) { + if (fabs(m(i,j)-rint(m(i,j)))>zero_tolerance) return 0; + } + } + return 1; +} + +int in01(rVector3d v); +int in01included(rVector3d v); +int which_atom(const Array &atom_pos, const rVector3d &pos, const rMatrix3d &inv_cell); +int which_atom(const Array &atom_pos, const rVector3d &pos); +rVector3d wrap_inside_cell(const rVector3d &v, const rMatrix3d &cell); +rVector3d flip_into_brillouin_1(const rVector3d &k, const rMatrix3d &rec_lat); +rVector3d find_perpendicular(const rVector3d &dir); +void wrap_inside_cell(Array *dest, const Array &src, const rMatrix3d &cell); +iVector3d make_miller(rVector3d normal); +void calc_lattice_vectors(rMatrix3d *lattice_vector, const rVector3d &cell_length, rVector3d cell_angle); +void calc_lattice_vectors(rVector3d *cell_length, rVector3d *cell_angle, const rMatrix3d &lattice_vector); +iVector3d find_sphere_bounding_box(const rMatrix3d &cell, Real radius); +int equivalent_mod_cell(const rVector3d &a, const rVector3d &b, const rMatrix3d &inv_cell); +int equivalent_mod_cell(const Array &a, const Array &b, const rMatrix3d &inv_cell); +int equivalent_mod_cell(const MultiCluster &a, const MultiCluster &b, const rMatrix3d &inv_cell); + +class LatticePointIterator { + rMatrix3d cell; + Real max_radius; + Real inc_radius; + LinkedList list; + void find_new_neighbors(Real new_max_radius); + public: + LatticePointIterator(void): list(), cell() {} + LatticePointIterator(const rMatrix3d &_cell, int skipzero=1): list(), cell() {init(_cell,skipzero);} + LatticePointIterator(const LatticePointIterator &lp): list(), cell(lp.cell) {max_radius=lp.max_radius; inc_radius=lp.inc_radius; add_copy(&list,lp.list);} + void init(const rMatrix3d &_cell, int skipzero=1); + rVector3d operator++(int); + operator FixedVector () { + LinkedListIterator i(list); + return *i; + } +}; + +class LatticePointInCellIterator { + rMatrix3d cell; + rMatrix3d cell_to_super; + rVector3d shift; + MultiDimIterator current; +public: + LatticePointInCellIterator(void): current() {} + LatticePointInCellIterator(const rMatrix3d &_cell, const rMatrix3d &_supercell): current() { + init(_cell,_supercell); + } + void init(const rMatrix3d &_cell, const rMatrix3d &_supercell); + void advance_to_valid(void); + operator void * () { + return current; + } + operator FixedVector () { + return cell*to_real(current); + } + void operator++(int) { + current++; + advance_to_valid(); + } +}; + +#ifdef HELPLATTICEAUTOCAST +// Some compilers need help with automatic type casts; +inline Real norm( LatticePointIterator& _p) { return norm((rVector3d)_p); } +inline Real norm2( LatticePointIterator& _p) { return norm2((rVector3d)_p); } +inline Real operator*(LatticePointIterator& _p, const rVector3d& _a) { return _a * (rVector3d)_p; } +inline Real operator*( const rVector3d& _a, LatticePointIterator& _p) { return (rVector3d)_p * _a; } +inline rVector3d operator*( const rMatrix3d& _a, LatticePointIterator& _p) { return _a * (rVector3d)_p; } +inline rVector3d operator^( const rVector3d& _a, LatticePointIterator& _p) { return _a ^ (rVector3d)_p; } +inline rVector3d operator^( LatticePointIterator& _p, const rVector3d& _a) { return (rVector3d)_p ^ _a; } +inline Real operator*( LatticePointIterator& _a, LatticePointIterator& _p) { return (rVector3d)_a * (rVector3d)_p; } + +inline rVector3d operator+( const rVector3d& _a, LatticePointInCellIterator& _p) { return _a + (rVector3d)_p; } +inline rVector3d operator+(LatticePointInCellIterator& _p, const rVector3d& _a) { return _a + (rVector3d)_p; } +inline Real norm( LatticePointInCellIterator& _p) { return norm((rVector3d)_p); } +#endif + +void find_all_atom_in_supercell(Array *psuper_atom_pos, + Array *psuper_atom_type, + const Array &atom_pos, + const Array &atom_type, + const rMatrix3d &cell, const rMatrix3d &supercell); + +void find_all_atom_in_supercell_ordered(Array *psuper_atom_pos, + Array *psuper_atom_type, + const Array &atom_pos, + const Array &atom_type, + const rMatrix3d &cell, const rMatrix3d &supercell); + +Real find_1nn_radius(const Structure &str, int atom); +Real find_1nn_radius(const Structure &str); + +class AtomPairIterator { + rMatrix3d cell; + LinkedList list; + const Array *atom_pos1; + const Array *atom_pos2; + Real max_dist_in_cell; + Real inc_radius; + Real max_radius; + int same_pos; + Array an_atom; + void find_new_neighbors(Real new_max_radius); + void init(void); + public: + AtomPairIterator(void): list(), an_atom() {} + AtomPairIterator(const rMatrix3d &_cell, const Array &_atom_pos): + list(), an_atom() { + init(_cell,_atom_pos); + } + AtomPairIterator(const rMatrix3d &_cell, const Array &_atom_pos1, const Array &_atom_pos2): + list(), an_atom() { + init(_cell,_atom_pos1,_atom_pos2); + } + AtomPairIterator(const rMatrix3d &_cell, const rVector3d &_an_atom, const Array &_atom_pos): + list(), an_atom() { + init(_cell,_an_atom,_atom_pos); + } + void init(const rMatrix3d &_cell, const Array &_atom_pos); + void init(const rMatrix3d &_cell, const Array &_atom_pos1, const Array &_atom_pos2); + void init(const rMatrix3d &_cell, const rVector3d &_an_atom, const Array &_atom_pos); + void operator++(int); + operator const Array& () { + LinkedListIterator i(list); + return *i; + } + const rVector3d& operator()(int j) { + LinkedListIterator i(list); + return (*i)(j); + } + Real length(void) { + LinkedListIterator i(list); + return norm( (*i)(1)-(*i)(0) ); + } +}; + +class AtomMultipletIterator { + rMatrix3d cell; + const Array *atom_pos; + int ntuple; + Array multiplet; + Array pairs; + public: + AtomMultipletIterator(const rMatrix3d &_cell, const Array &_atom_pos, int _ntuple): + pairs(), multiplet() { + init(_cell,_atom_pos,_ntuple); + } + AtomMultipletIterator(const AtomMultipletIterator &_multiplet, int _ntuple): + pairs(), multiplet() { + init(_multiplet.cell,*_multiplet.atom_pos,_ntuple); + } + void init(const rMatrix3d &_cell, const Array &_atom_pos, int _ntuple); + void operator++(int); + operator const Array& (void) { + return multiplet; + } + const FixedVector& operator()(int j) { + return multiplet(j); + } + Real length(void) { + return norm(multiplet(ntuple-1)-multiplet(0)); + } +}; + +Real get_cluster_length(const Array &c); + +void find_common_supercell(rMatrix3d *psupercell, const rMatrix3d &a, const rMatrix3d &b); +void find_common_simple_supercell(iVector3d *psimple_supercell, const rMatrix3d &unitcell, const rMatrix3d &supercell); + +void strain_str(Structure *pstr, const Structure &str, const rMatrix3d &strain); + +void apply_symmetry(Array *b, const rMatrix3d &point_op, const rVector3d &trans, const Array &a); +void apply_symmetry(MultiCluster *b, const rMatrix3d &point_op, const rVector3d &trans, const MultiCluster &a); + +void reorder_atoms(Structure *rel_str, const Structure &str, Array *pcopy_from=NULL, Array *pshift=NULL); + +#include "binstream.h" + +inline ostream & bin_ostream(ostream &file, Structure &str) { + bin_ostream(file, str.cell); + bin_ostream(file, str.atom_pos); + bin_ostream(file, str.atom_type); + return file; +} + +inline istream & bin_istream(istream &file, Structure &str) { + bin_istream(file, str.cell); + bin_istream(file, str.atom_pos); + bin_istream(file, str.atom_type); + return file; +} + +#endif