Mam problem, który się nazywa "cholernie mało czasu na wszystko" co spowodowało, że schudłem, zbrzydłem i w ogóle. Ale nie o tym chciałem pisać
Z braku czasu nie za bardzo mam jak zaprogramować program (może być konsola - wsio adno), który przerobi mi plik.
Przykładowy plik wklejam poniżej
Kod: Zaznacz cały
$GENNBO NATOMS=17 NBAS=205 UPPER BODM $END
$NBO $END
$COORD
1 + OH radical
6 6 2.355789 -0.216790 0.001577
7 7 1.765898 0.943478 0.009398
7 7 1.494552 -1.290113 -0.003843
6 6 0.411338 0.624382 0.009109
1 1 1.740951 -2.267932 -0.014561
6 6 0.222262 -0.754246 -0.000729
6 6 -0.743265 1.479421 0.003108
7 7 -0.932040 -1.465376 0.007610
7 7 -1.936185 0.671891 -0.004584
8 8 -0.846736 2.694706 -0.004329
6 6 -1.996142 -0.696468 -0.003366
1 1 -2.786122 1.217416 -0.080533
7 7 -3.248440 -1.269340 -0.069970
1 1 -3.998146 -0.793635 0.412929
1 1 -3.225743 -2.266470 0.094556
8 8 3.678806 -0.452080 -0.001016
1 1 4.106108 0.418035 0.001891
$END
$BASIS
CENTER = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3
3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 5 5 5 5 5 6 6 6
6 6 6 6 6 6 6 6 6 6 6 6 7 7 7 7 7
7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8
8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9
9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10
10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11
11 11 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13
13 13 13 13 13 14 14 14 14 14 15 15 15 15 15 16 16
16 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17
17
LABEL = 1 1 101 102 103 1 101 102 103 201 204 206 202 203 205 1 1
101 102 103 1 101 102 103 201 204 206 202 203 205 1 1 101 102
103 1 101 102 103 201 204 206 202 203 205 1 1 101 102 103 1
101 102 103 201 204 206 202 203 205 1 1 101 102 103 1 1 101
102 103 1 101 102 103 201 204 206 202 203 205 1 1 101 102 103
1 101 102 103 201 204 206 202 203 205 1 1 101 102 103 1 101
102 103 201 204 206 202 203 205 1 1 101 102 103 1 101 102 103
201 204 206 202 203 205 1 1 101 102 103 1 101 102 103 201 204
206 202 203 205 1 1 101 102 103 1 101 102 103 201 204 206 202
203 205 1 1 101 102 103 1 1 101 102 103 1 101 102 103 201
204 206 202 203 205 1 1 101 102 103 1 1 101 102 103 1 1
101 102 103 1 101 102 103 201 204 206 202 203 205 1 1 101 102
103
$END
$CONTRACT
NSHELL = 63
NEXP = 157
NCOMP = 1 4 4 6 1 4 4 6 1 4 4 6 1 4 4 6 1
1 3 1 4 4 6 1 4 4 6 1 4 4 6 1 4 4
6 1 4 4 6 1 4 4 6 1 1 3 1 4 4 6 1
1 3 1 1 3 1 4 4 6 1 1 3
NPRIM = 6 3 1 1 6 3 1 1 6 3 1 1 6 3 1 1 3
1 1 6 3 1 1 6 3 1 1 6 3 1 1 6 3 1
1 6 3 1 1 6 3 1 1 3 1 1 6 3 1 1 3
1 1 3 1 1 6 3 1 1 3 1 1
NPTR = 1 7 10 11 12 18 21 22 23 29 32 33 34 40 43 44 45
48 49 50 56 59 60 61 67 70 71 72 78 81 82 83 89 92
93 94 100 103 104 105 111 114 115 116 119 120 121 127 130 131 132
135 136 137 140 141 142 148 151 152 153 156 157
EXP = 0.3047525E+04 0.4573695E+03 0.1039487E+03 0.2921016E+02
0.9286663E+01 0.3163927E+01 0.7868272E+01 0.1881289E+01
0.5442493E+00 0.1687145E+00 0.8000000E+00 0.4173511E+04
0.6274579E+03 0.1429021E+03 0.4023433E+02 0.1282021E+02
0.4390437E+01 0.1162636E+02 0.2716280E+01 0.7722184E+00
0.2120315E+00 0.8000000E+00 0.4173511E+04 0.6274579E+03
0.1429021E+03 0.4023433E+02 0.1282021E+02 0.4390437E+01
0.1162636E+02 0.2716280E+01 0.7722184E+00 0.2120315E+00
0.8000000E+00 0.3047525E+04 0.4573695E+03 0.1039487E+03
Nie jest to cały plik. Cały plik znajduje się w tym linku http://wklej.org/id/2602096/
Ogólnie chodzi o to by liczby znajdujące się w sekcji $BASIS $END po słowach CENTER= oraz LABEL= były zapisywane w liczbie 13 liczb w linii , a nie tak jak teraz 17 (czasami jest 19, czasami 15). Mogą być oddzielone pojedynczymi spacjami, nie ma to znaczenia.
Czyli zamiast
Kod: Zaznacz cały
CENTER = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3
winno być
Kod: Zaznacz cały
CENTER = 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 3 3 3 3
Proszę, pomóżcie bo się zachlastam na śmierć :/

