You can find the last (important) changes here.
ToDo: hamilton_nhv like fast_hamilton_nhv (optional store H additionally) replace XY_FLAG by separate x entry (mem+...%) but sort HBSize for tasks (const. package size) old.xy_flag(mixed blocks): xy+by+rr=4B+2B+2B=8B + buffers new.xx_idx(sorted blocks): xx+yy+rr=4B+4B+2B=10B + const.pktsize -d$TMP for batchjobs? (better remove tmp dependency of code) bug: if ulimit -v is smaller maxfile i100 failes ??? bug: hubbard model nu=nd=N n1=0 (should be n1=1) - adapt to clusters without shared FS (how to distribute sequence of data of unknown number? blocks? or dry run for counting only) v2.39 Apr09 fix wrong n1=0 for serial code a0, skip trivial case: nu=0, nd=nn new option -m(default: daten.def) new option -z for utils/def2fig.sh models/lattice.c renamed to m_lattice.c, also new options added all coordinates based on base coordinates (ex: 60degree for kagome) add stretched kagome lattice add CONFIG_SymSearch option to config.h (0: disable slow sym search) reduce default static size (probably lower speed) partly replace "\n ..." by "...\n" for better MPI output Tru64 defines LONG_BIT instead of __WORDSIZE v2.38 Feb09 fix possible deadlock for wop() (expectation values) fix deadlock for x_sort() if last task has block length node_n1=0 fix early convergence abortion for N=40 square j1=-1 j2=0.42 exe/tmp can point to local scratch space now (disk cluster) exe/tmp_shared for shared scratch space (removed in later versions) fix check of XY_TYPE bits for node_n1 (not n1) fix error in mrule for mpi_n>1 (wrong results) remove execution of spinsdef in Makefile, better for cluster remove "long long" for better MPI and ansi compatibility fix compile problems for CM=tU,tJ (hubbard model, t-J-model) v2.37 Aug08 (benchmark version) add CFG_CPUSET option (set to 0x0005 on dual HT-Xeon boards) fix free(static) bug in mpi version of ns() output of SH_speed and i_speed in hnz/s better configuration script for MPI SH.t measures max. realtasktime which can be wrong for overload, fixed better balance measuring from hnz[block] (max. efficiency = t1/(n*tn)) v2.36 Jun08 better default settings for mpi and pthread buffers expectation values computed now using mpi (wop(op)) replace v0[thread] by v0 + b_ofs[thread] (better mpi code, less /%-ops) (one malloc, first touched by threads) sort mpi data in SH once (like i100) v2.35 Jun08 replace integer modulo operation (slow on IA64) add anisotropy Jz(i,j) (as z$parameter_index to daten.def, default=0) for H = Sum(i,j) J(i,j)(Sx(i)Sx(j)+Sy(i)Sy(j)) + (J(i,j)+Jz(i,j))(Sz(i)Sz(j)) fix bug for moved b_smallest() b2i() (part of FPGA rewrite) v2.34 Apr08 fix deadlock and errors for partly stored matrix using MPI fix AddSS bug (was a factor of nw to big and to slow) new option -o<outfile> for better job management (torque/PBS buffers stdout localy) Fix: log2(n1=0) FP EXCEPTION for Tru64@alpha (-nanf on linux) Fix: mymap.read(2GB+) failed on 64bit-systems, buggy since v2.33? Fix: ini_thxy() hanging in endlessloop if (int)2*n1<0 (square42) v2.33 Mar08 mymap(ev) replaced by mymalloc(ev), else slow or hangs on NFSv3+MPI Bug for mapped eigenvects on MPI systems fixed (nev>0) Bug for 32bit systems using mpi and mymap > 2GB fixed (for LFS) norm2 vector removed, code simplified Bug fixed, for maxfile = 0, was 10* slower (wrong number stored blocks) also output excitations for small n1 at "conv=" line Bug fixed, maxfile to small or 0: wrong results (faster mpi) Bug fixed, n1 < num_threads less output for nodes*ppn > 8 algo:a0 replaced by a16, a0 is new fast ns(), a16 is old slow ns() good scaling up to 128 CPUs tested v2.32 Feb08 single thread workaround for S=1 systems, multithread computes n1 sometimes to big (ToDo: check for reason and fix it) fix bug in fulldiag (a4) matrix generation dont print pointer for verbose malloc for easier diff bug fixed for maxfile=0 (incomplete stored H) IA64 is very slow for div operations, MPI speed up 50% MPI Data reduced, 30% speedup for 100Mbit v2.31 Dec07 fix problems with model=tU for v2.27 or later fix problem of uninitialized values on tiny systems, where some threads have an empty cfg-table (since v2.27 and B_NUM>1) multiple sublattice detection, better MPI scaling v2.30 Dec07 STOREH=0: bug for 2nd run of storeh fixed, 0 is default now in config0.h nzxmax fixed for multithread, STOREH=2 missing creation mode fixed v2.29 Dec07 STOREH=0: realloc of more than half of main memory may fail, recoded new sublattice generation, using defined bonds only (not correlations) weight matrix of Ising energies for j1 and j2 bonds extended (3D plot) v2.28 Nov07 2nd successfull mpi-run (np<4 only for dsk>0%), mixed MPI+PTHREAD define CONFIG_DIMER_CHECK for artificial symmetry breaking (finite systems) only symmetries which are not explicite set in daten.sym can be broken first successfull mpi-run (np=2..3 pt=1 only), but not usefull (slow) output of converged energies for better awk handling -D STOREH=0 to store/read H into/from memory for max. performance reduce cache (line) coherence overhead by replace of work.bi[thread] for configurations output .oxQ for .ud3, which looks better new sublattice (SL) generation (bi-/tripartit only) macro Sud removed, switch off ud-symmetry by setting sym.wud=sym_ud=0 v2.27pre6 Oct07 new performance data, well pthread scaling up to 32 (no disk used) mrule speedup (5-100)x using symmetry, more comments history.tex converted to history.html set number of threads by option -tn (n={1..B_NUM}) noSBase is not supported anymore (use sym_k= -9999) for simplicity update models/*.c according to modeldef.c (partly untested) modeldef.c: only the new flexible format of daten.def is supported now mrule parallized, renaming korr to corr (en:correlation) remove chk2 function for degenerated states (simplification) remove wop_k, wop_t, wop_ud (simpler, can be taken from biggest coeff.) renaming ckfg to ccfg (proper engl.), Mai07 output time in minutes (better to parse) + human abbreviation, Apr07 fix segfault for small LM-systems in wop_block function status script removed, write PID-file instead (more flexible) stack-output for SIGUSR1 removed for simplicity (better use gdb) fix noncritical error in err_fulltable v2.26 Feb07 h_get inlined (not done by the compiler), (2-5)x speedup for i100 better scaling of iteration (was bad before) thread code simplified B_NL2 removed, B_NUM used now to define #threads, code simplified configure checks signal.h, failes on g++-4.1 on SLES9 at IA-64 four-site exchange added partly (must be fullfill symmetry) fast_a2 removed due to future adaptions (#CPU>1024, FPGA) may be wrong results for a2 using syms (LC6 was NaN, check it!) remove HALF_HXY (store only upper half triangular H, problems with blocking, simplify code) reduce files from B_NUM^2 to B_NUM (non diagonal blocks carry only about 10% of diagonal blocks, wasted) problems with high file number if going to massive parallel change output of ZiZj, SiSj and S^2 for a4 via sisj=... (daten.i) v2.25 Jun 2006 fix gcc-3.3.4 compiler error and warnings bug fix for <SiSi>!=0.75 and NOS1SYM if sym_lm!=nn a8 bug fixed (this was introduced by new parallel method) better error report, if HRMAX is to small symmetry search can be aborted by SIGUSR2+SIGUSR1 (usefull for pyrochlore) output a warning if maxfile limit was reached (ERR(630)) v2.24 Jul 2005 Output trace of H, sum of upper left nondiagonal elements of H and sum E as a check for correctness of matrix elements (see Bug below) Bug a4-wrong results (!=a0) squago30 29+1 a0: wrong h12 for B_NL2>0 + CONFIG_noB_MASK + nommap, but H is ok a4: wrong results for B_NL2>0 (fixed) error message "unused bits are set" fixed for N=32 on int32-systems (RS) tmp/tri.txt closed after usage (stated as memleak by valgrind) performance data for 2-Prozessor Dual-Core Opteron running Linux added v2.23 Jun 2005 fix segfault for lapack + complex add input format " p%d= %lf" for daten.i hole-hole repulsion added for tJ+tU-model (h#) bugfix pic2.cc (if edgevectors are negative only) bugfix o2tower.sh (convergence warning lead to dublicated values) nev=0 for fulldiag using LAPACK (faster), less memory (cplx) overflow dbgD for SSANISO fixed make N=6 s=14 possible by defining Tnorm2 as double (default=long) sisj now is a bitpattern (bit0=<sisj>,bit1=<ss>) store_sym_tupel overflow for NN>nn fixed v2.22 utils/o2tower.sh adapted to new output format memleak for fulldiag+pthread (fixed using valgrind), vector.c iortho(): wrong degeneracy for complex vectors (fixed), daten.def: change format of =pbcf= from A-B-C-D-A to A-B-C-D script utils/def2fig.sh for xfig improved, new options "code2" code removed, models/m_tU.c added for Hubbard chains bug for tJ,tU+SBase removed (no nondiagonalelements since v2.20) op_ninj now is (nu+nd)(i)*(nu+nd)(j) instead of nui*nuj new expectation values (op_nisnjs) for tJ/tU-model 1st step to replace wopij() by wop() for any number of sites definition of operators depending on more than 2 sites possible, see xval.c wop(), op_sisj2(), op_sisjsksl() (under work), for s>1/2 all (2s*2s) intrabonds i-j have same correlation old: s=5/2 ss=s*(s+1)=8.75 SiSi=0.75 SiSj=0.25 ss=5*SiSi+20*SiSj i!=j new: s=5/2 ss=s*(s+1)=8.75 SiSi=SiSj=ss/25=0.35 NE0 replaced by ne0 in daten.i (more comfortable) v2.21 rename macro Zahl (german) to VecType, default to complex for c++, convergence check improved (sometimes it stopped to early, pew=NEW=60), max_NN enlarged from 127 to 32767, speed up for s>1/2 emulation (about factor 2s) include infile (new command in daten.i, max level 1) v2.20 error.tex translated to english (please correct bad english for me) lintab renamed to hilbert (its better named), buggy wopij fixed makesym() removed, big vectors (.vec) moved to ./tmp (quota) bug040217: nu==nd && Sud==0 && (!norm2)==ERR(600) - adding local single site anisotropy (SSANISO, by Reimar Schmidt) h_file: testing STORE_XandY for future use (more simple code) - N=32+8 XR: raw=hnz*5=66MB zip=34MB, XYR: raw=hnz*9=119MB zip=47MB - try to change size of htmp by: export GZIP="-6" before starting spin - add octahedron def-files to models - add 16MB I/O-buffer (reducing file fragmentation a bit) bug030620: complex + LAPACK + fulldiag uninitialized values leading sometimes to random results, fixed using valgrind-1.9.6 memleak fixed, parallel SiSj, using valgrind-1.9.6 v2.19 Warning: there could be new bugs, only speed_test is checked by me if norm2[] stored dont collect states with different orbit length (vec output), H-blocks instead of H-stripes for better speed (local data, CPU cache) no binary compatibility to tmp-files of older versions! numsymconf uses max. B_NUM threads (old: 16 threads) bug: PTHREADS: storeh_block starts with uninitialized values (fixed) bug: TBC + sym + nu==nd => -9.95702223 nonhermitian H also wx=0 (fixed) v2.17 pthread_attr explicit set to PTHREAD_SCOPE_SYSTEM, because SunOS uses PTHREAD_SCOPE_PROCESS as default (all threads running on one CPU) h_file.c completely rewritten for better performance (40%(x86)-200%(MIPS) faster) better use of CPU cache, much better speed! has much more potential! bug: use of only one H-block (B_NL2=0) negativ shift fixed output sym-factor(norm2) (=orbital-length?) after configurations, mmap offset must be multiple of _SC_PAGESIZE on some systems (fix), bug: startvec=4 and if max_ea>1 and nev>0 and more than one run (fixed) new: startvec=<4+rnd*8> (p.e. 12, 20, 28) for different startvectors a0: max. n1 iterations (small n1) v2.16 lapack usable for full diag (a4), try ./configure --lapack v2.15 speed_test added, Warnings fixed: suggest explicit braces to avoid ambiguous "else", bug fixed: r^2 was wrong (pos was set after daten.def was read), bug fixed: (for EA>1 checkpoint not resetted, wrong results for EA>1), compatibility to cc, c89: Compaq C V6.4-014 (no //, see c89 -V) sleeping time on error reduced, repeating errors not printed, comments added in put_h() v2.14 bug: forgotten close after reading tmp/tmph* (resulting in linux-2.4.10 crash, if ev=1 and a0 is repeated 1000 times) fixed model-files with nn<NN accepted (no recompilation needed) spins.tex further translated to english v2.13 compiler error if float fixed old Bug fixed, using valgrind-20020601 by Julian Seward, GNU (Bug: fulldiag a4 + float, since v1.8) v2.12 mrule() in xval.c revised, set sublattice SL=... for MRule use SL=...;a0;SL=...,a3 for different sublattices v2.11 version is now real number (2nd dot removed, 2.101<2.11) fulldiag: output E and S^2 as table (for TD, susceptibility) precision depends on float v2.1.0 vlint.h (C++class: very long int) added, allows any number of sites 68 sites tested, but tJ and tU not checked for correctness ! matrix dimension is still limited to 32 or 64bit value ! simplifications using C++ operations (code2 under construction) v2.0.3 bug fixed (wrong matrix dimension on very small systems), quick-start (2 spins) added in documentation v2.0.2 use ud+=+1,-1 and/or param+=0.1,0,0,0 to change parameters by constant steps more easier (p.e. in loops) to generate lot of data, "+="-form works for anisotropy too, name of package is changed from spin to spinpack (more unique) bugs fixed (noSBase,tJ(but slow),s=1,ferrimagnets) v2.0.1 startvec changed according to v[i]<1.0 (16bit-real) Warning: random startvec before v2.0.0 is not reproduced! do not load/save l1 (its mmaped to a file already) save thxy_r-table all the time (its only small amount of data) save_mode=1: bug save hxy fixed; write tmp/status n1 fixed v2.0.0 remalloc uses fallback to mmap(tmpfile) => no memory limits (a0,a2) 1GB-File-split removed (use linux-LFS or 64bit or more blocks) quash H-file if an reproducible error occurs during write (disk full?) v1.9.3 mmap used to bypass memory+swap limits (use algo=2 to spare memory) bzlib for h-zip (ca. 1/3 of size! (gz=1/2) but slower unzip 2*gz) try lin() before get b_smallest should save lot of time v1.9.2 use (unsigned Tnorm2)norm2, b_smallest, b_ifsmallest3 10% faster algo=2 (2x2-diag) parallelized (around a0 speed!?) v1.9.1 better error handling, lintab/numsymkonf changed (faster, but save_mode may not work) v1.9.0 storeh(),read_h(),wzizj() parallelized using pthreads (configure -mpt), recommended for shared memory multi processing machines, using 3 to 4 threads is default (best number of threads depends on disk speed and size, it depends also on the value of the variable maxfile and of the CPU usage by other processes of cause) and can be changed by defining B_NL2 in config.h (3 for 2^3 blocks), only lanczos-inc1 is parallelized yet (getting energy), speed-square36: numsymkonf=10x, storeh=2x, Hv_from_disk=1.1x v1.8.3 pthread library used for multiprocessor machines, no MP_PRAGMAs MIPSpro C++ v7.2.1 warnings fixed, configure --mpt added v1.8.2 more output if sisj=1 (sisj-3zizj, num_of_same_bonds) missing kommas in param= for default daten.i fixed v1.8.1 CONFIG_ABEL compiler error fixed, bug: read_sym if s1-sym fixed div0 fixed v1.8.0 missing close(tmp/tmph*.tmp) fixed, (fd-buf overflow after lot of iterations) fulldiag => ev=0 possible, no fatal error if jacobi not converge fulldiag output changed, some fixes use CONFIG_TBC instead of IFww, TBC+noSym+noSud(!) fixed daten.i: nud= and param= instead of :nu,nd,p1,p2,p3... v1.7.20 h-field added (patch by Reimar Schmidt), add some corrections bug in fulldiag (ev, since v1.7.3) fixed v1.7.19 daten.def pos[x,y,z] is changed to double, m_1d.c added v1.7.18 configure v0.4.1, configure --debug => stack-checking v1.7.17 configure v0.4.0, bug in symmetry.c fixed (daten.sym + sym_k=-1) v1.7.16 sbase->norm2 changed to llong allowing N=10 S=5/2 on 32bit machines b_ifsmallest_lm() etc. added bcc40s2 30u10d 31m/10s/18s/483s/509s => 0s/6s/12s/73s/90s i586-133MHz S=1 and ud-sym or tJ,tU not tested Apr2001 v1.7.15 maxfile is per block now to live with the 32bit limit v1.7.14 symcreate now rekursiv, shorter and over 40x faster, ATTENTION: other generators!!! no-degeneration bug fixed, docu extended v1.7.13 daten.sym: cyclic form possible, trying all permutations v1.7.12 tJ,tU cc-errors, asm removed, n1==0 => no error v1.7.11 new packaging v1.7.10 h-buffer for writing, parallel (no speedup), models updated v1.7.9 check_point=4 implemented (gzip faster (buffer)) get_h is now not parallel! change it! Feb 2001 v1.7.8d bug removed for Sz=0, Sud not used; <Szi>=0 always! v1.7.8c complex.h error if Zahl==4 xor 5 fixed? v1.7.8,8b bug fixed, HIDX replaced by HRMAX>0 sizeof(thxy)=5 (8) v1.7.7 HRMAX=0 replaces noHIDX, save_mode+checkpoint against crashs v1.7.6 mp-bugs: hamilton(), problems with I/O + stack ??? v1.7.5 mp-bug removed: hamilton() v0x,v0y,.. must be local() v1.7.3 vector divided in blocks, preparation for block version v1.7.2 bug fixed in fast_nhv(), blocksize rounded to 2^n v1.7.1 bugs removed: wrong sym if bond twice, h_stored<100% v1.7.0 H-schreiben/lesen nur noch auf Platte (parallelisierbar) v1.6.4 zlib used instead of pipe (no memory problems on thor???) v1.6.3d bug removed, if v0,v1=NULL, small changes in inc1() v1.6.3c HRMAX in config.h gesetzt, sisj=0 (daten.i) v1.6.3b Tnorm2 can be set to char (less memory, see spins.h) v1.6.3 bug in symmetry.c removed (delay, if daten.sym given) v1.6.2 cache in pipe.c for better performance v1.6.1 new pipe.c (IRIX64 needs twice of parent-mem for fork or popen) v1.6.0c bug removed thor: -mp sym_k=-1000 Sz>0 numsymkonf is wrong v1.6.0 TBC nun auch mit Symmetrien! v1.5.8 Twisted Boundary Conditions or Field (J^-(i+L)=e^(iw)J^-(i)) v1.5.7 fork - schlaegt manchmal fehl, HRMAX auf 1024 gesetzt v1.5.6 better error handling (daten.def, more output) v1.5.5b bug wenn S=1 und sym_k!=0 beseitigt (thanks J.R.) v1.5.5 S1SYM in numsymkonf() und next() eingebaut, S=1 faster! v1.5.4 keine zombies, endlich S1SYM schneller and korrekt!? v1.5.3 base2[],lintab entfernt, block_no(), nw<=Nw mgl. automatic SUBLATTICE generation fkt=symkorrelationen() v1.5.2 bug: pipe.c: killte gzip, bevor gzip zu Ende schrieb v1.5.1 Hamilton-Matrix mit gzip gepackt (see pipe.c,h_file.c,ca.50%) v1.5.0 es gibt kein model.h mehr! nur noch daten.def zu nutzen v1.4.8 alternative creation of H, algo=8 a8 [n1max] (10x slower) v1.4.7 doc/error.tex als genauere Fehlerbeschreibungsliste v1.4.6 ansatz.h/ansatz.c fuer Variationsansaetze v1.4.4 bug beseitigt (2x hamilton schreiben erzeugte Fehler) defspin1.sh zum erzeugen von Gittern mit Spin-1,Spin-3/2,etc. v1.4.3 Vektoren koennen bei wenig RAM & C++ auf Platte (array_m.h) v1.4.2 now use the disk to store l1 (N=40 possible using 4GB mem) Jan 2000 06.12.99 definition of HIDX in spins.h for storing indizes to matrixvalues less memory and disk, therefore faster, (+ 2*8*64k memory for table) 09.11.99 Bug in gcc on alphaPC (large struct object as function argument) 31.10.99 AddSS in Add34 umbenannt, AddSS als $S^2$ Operator zugefuegt 07.06.99 anisotropy parameter for xy-component of Heisenberg-Hamiltonian (XXZ) v1.4 01.02.99 anisotropy parameter for z-component of Heisenberg-Hamiltonian (XXZ) sym_k= -n for omitting next n generated symmetries, v1.4 23.01.99 kein extra outputfile, besser stdout und filtern via awk Jan 1999 07.12.98 startvector fuer algo=1 jetzt korrekt waehlbar 30.11.98 HamiltonOperator wird in GB-Happen gespeichert (h_file.c) damit kann auf 32bit-UNIX 2GB-Filegrenze umgangen werden v1.3 algorithm a4 = full diag (works, bad implementation) 1998-Nov spins-lintab2 fehlerhaft bei nichtvertauschenden unvertraegl. Sym. Bsp: N=4 k=2/4 0/2 (sgn[udud]=0) 1998-295 spins-chk3: nur verschiedene Paarkorrelationen berechnen nun korrekte Sz,S,ZMag fuer Spin-Mischungen (S=1/2,S=1,...) 1998-293 sighand-ini: shell-script status wird erzeugt, use "sh status" 1998-270 m_bcc: nun immer R(i=0)=( 0 0 0 ) besser fuer Abstansbestimmungen 1998-190 NE0=0 Eigenvektor=Groundstate, NE0=1 1st EV = 1st Excitation etc. Bestimmung der Aequivalenzklassen (max. Anzahl waehlbarer k's) 1998-184 cplx+SBase: storeh >10 mal schneller, da locale arrays nun static! 1998-183 Anzahl Eigenvectoren nun in daten.i nev veraenderbar 1998-170 complex-version getestet fuer JJ-N=5-chain, k=1/5*2Pi, g++,Zahl=4 1998-154 tU,tJ mit up/down getrennt (code2), nun 64 sites (llong) moeglich! bug beseitigt, nun tU,tJ mit SBase und k!=0 korrekt bug beseitigt, zahl sym, wenn cyclen(P0)!=2 fehlte P0^i, etc bug beseitigt, falsche cyclenlaenge der Permutation (not Prod!) 1998-139 notation year-day_of_year, daten.i nun mit Sym_ud=<+1|-1> date '+%Y-%j' 18.05.98 bug in symkorrelation() beseitigt, erzeugte unsym. Korrelationen 08.04.98 version 1.2 bis N=64 JJ-Sites (long long), NoAbel, k!=0 geht ? 15.01.98 lintab2(),wzizj() fuer symmetrie beschleunigt + korrelat-sym-Ansatz Jan 1998 15.12.97 Endlich der Durchbruch beim Symmetrie suchen, nun 0:01 statt 8:01 beim BCC30_30 (486DX4-100)! (Versucht Nachbar als naechstes) 12.12.97 Nutzung nichtvertauschender Permutationen geht im k=0 Raum (viele 32er Systeme koennen nun berechnet werden ca. 20h,200MB) OO.OO.97 Parameter (J's,t's,U's etc.) werden ueber Indexliste zugewiesen, leichter hantierbar, Bindungen klassifiziert Jan 1997 08.01.96 ud-Symmetrie kann mit Sud=1 genutzt werden, H-Matrix wird NUR bei Speichermangel in hxy.tmp (tmp_hxy) gespeichert 10.07.95 rq: (H*v-<v|H*v>*v)^2 => |(H*v/<v|H*v>-v)| 19.04.95 _nhn=_nhv(m1=1) -> einsparung _nhn 11.04.95 symmetrisiere -> v'=v +/- SymOp(v) (aendert EW nicht!!!) 11.04.95 gleichzeit. diag. 2A(-1,+1)+B(-1,+1)=(-2-1,-2+1,2-1,2+1), [A,B]=0 1995-Mar H speichern tJ-16 Faktor 3.5 schneller tJ-16 131s/70It 14.02.95 einfuehrung symmetriequantenzahlen (vertauschende Permutationen) 12.10.94 16-er tJ lanz=13m24s lanz2=13m42s 10.10.94 hamilton_nhv (neue prozedure) <n|H|v> l.615 tJ-8 1s 10.10.94 hamilton_nhn (neue prozedure) <n|H|n> l.695 tJ-8 24s 27.09.94 lanz2 zugefuegt (neues verfahren) l.866 tJ-8 98s 29.06.94 diplomversion fertig tJ-8 3s/6s