2003-02-27 Steven G. Johnson * NEWS: tense * NEWS, ChangeLog: updated * mpb-ctl/mpb.scm.in: bug fix: kdir is in reciprocal coordinates. Thanks to Suxia (Susan) Yang for tracking down this bug. 2003-02-25 Steven G. Johnson * mpb-ctl/epsilon.c: fixed SunOS problem where guile 1/infinity and C 1/infinity give apparently different results...thanks to Benjamin Cowan for the bug report 2003-02-21 Steven G. Johnson * mpb-ctl/mpb.scm.in: change prompt to mpb> 2003-01-21 Steven G. Johnson * mpb-ctl/examples/sq-rods.ctl: whoops * mpb-ctl/examples/sq-rods.ctl: GaAs is n=11.56 2002-12-17 Steven G. Johnson * mpb-ctl/mpb.scm.in: fixed find-k for band-min != 0; thanks to M. Povinelli 2002-12-14 Steven G. Johnson * mpb-ctl/mpb.scm.in: fix find-k to work for thunk band functions 2002-12-03 Steven G. Johnson * mpb-ctl/examples/tri-holes.ctl: added k-interp 2002-12-02 Steven G. Johnson * mpb-ctl/examples/hole-slab.ctl: use k-interp param 2002-11-02 Steven G. Johnson * doc/installation.html: typo 2002-10-24 Steven G. Johnson * acx_mpi.m4: check for mpich lib 2002-09-26 Steven G. Johnson * acx_mpi.m4: added whitespace 2002-09-24 Steven G. Johnson * acx_mpi.m4: slight comment fix * acx_mpi.m4: fixed punctuation * acx_mpi.m4, configure.ac: use new acx_mpi.m4 2002-09-20 Steven G. Johnson * mpb-ctl/mpb.c: freqs: line should list headings as "k1, k2, k3" instead of "kx, ky, kz" since they are in reciprocal-lattice, not cartesian, coords. Thanks to Theis Peter Hanson for the suggestion. 2002-09-17 Steven G. Johnson * NEWS, mpb-ctl/epsilon.c: don't resize lattice basis for grid-size==1 unless no-size specified; thanks to Tairan Wang 2002-09-15 Steven G. Johnson * NEWS: updated * mpb-ctl/epsilon.c, mpb-ctl/field-smob.c, mpb-ctl/fields.c, mpb-ctl/mpb.c, mpb-ctl/mpb.h: whoops, take absolute value of Rm determinant for volume; thanks to Rumen Iliew for the bug report 2002-09-14 Steven G. Johnson * configure.ac, mpb-ctl/my-smob.h: improved smob compatibility...grrr, damn guile * mpb-ctl/Makefile.in, src/matrices/Makefile.in, src/matrixio/Makefile.in, src/maxwell/Makefile.in, src/util/Makefile.in, tests/Makefile.in, utils/Makefile.in: put my CPPFLAGS *first*; thanks to Cazimir G. Bostan for the bug report 2002-09-13 Steven G. Johnson * mpb-ctl/mpb.c: include field-smob.h * ChangeLog, NEWS: updated * mpb-ctl/field-smob.c: whoops * configure.ac, mpb-ctl/my-smob.h: guile-1.3.4 has scm_make_smob_type but not SCM_SMOB_PREDICATE (sigh) * mpb-ctl/field-smob.c, mpb-ctl/matrix-smob.c: whoops, fix guile 1.3 smob support * NEWS: dated release * mpb-ctl/mpb.scm.in: whoops 2002-09-11 Steven G. Johnson * doc/user-ref.html: whoops * doc/user-ref.html, mpb-ctl/field-smob.c, mpb-ctl/fields.c, mpb-ctl/mpb.scm.in: made Bloch phase handling more sane, maybe...maybe I should just bite the bullet and include the phase in the loaded fields, at some point? * mpb-ctl/fields.c: whoops, no kvector for c fields * mpb-ctl/mpb.scm.in, mpb-ctl/my-smob.h: whoops * configure.ac: bumped version * configure.ac, mpb-ctl/Makefile.in, mpb-ctl/field-smob.c, mpb-ctl/field-smob.h, mpb-ctl/matrix-smob.c, mpb-ctl/matrix-smob.h, mpb-ctl/my-smob.h, mpb-ctl/smob.h: use new Guile smob functions * mpb-ctl/mpb.scm.in: whoops * NEWS, TODO, doc/index.html, doc/user-ref.html, mpb-ctl/matrix-smob.c, mpb-ctl/mpb.scm.in: documented and cleaned up new interfaces 2002-09-10 Steven G. Johnson * src/matrixio/evectmatrixio.c: include SCALAR_NUMVALS in c dimension, not p dimension 2002-09-06 Steven G. Johnson * ChangeLog: updated 2002-08-27 Steven G. Johnson * mpb-ctl/examples/dos.scm: comment * mpb-ctl/examples/dos.scm: first arg to interpolate must be non-negative * mpb-ctl/examples/dos.scm: minor * mpb-ctl/examples/dos.scm: fixed hyphenation * mpb-ctl/examples/dos.scm: credit Doug * mpb-ctl/examples/dos.scm: some fixes * mpb-ctl/examples/dos.scm: remove debugging print * mpb-ctl/examples/dos.scm: include dos.scm in example doc * mpb-ctl/examples/dos.scm: added example density-of-states function 2002-06-19 Steven G. Johnson * mpb-ctl/mpb.scm.in: whoops, find-k was outputting in reverse order 2002-06-13 Steven G. Johnson * mpb-ctl/mpb.scm.in: added find-k routine to solve for k's at a given a frequency * mpb-ctl/mpb.c: don't print error if randomize-fields is called before init-params, so that we can ensure that fields are random when calling run-parity without knowing whether run was already called. 2002-06-12 Steven G. Johnson * configure.ac: print messages to remind when options like --with-inv-symmetry are set 2002-06-11 Steven G. Johnson * mpb-ctl/field-smob.c: fixed handling of curfield='-' 2002-06-10 Steven G. Johnson * mpb-ctl/fields.c: whoops, fixed field normalization for non-unit cells 2002-06-03 Steven G. Johnson * configure.ac: warn if zlib is not found (thanks to Kevin Hennessy for the bug report) 2002-04-30 Steven G. Johnson * mpb-ctl/fields.c: fixed floating-point error on Alphas for homogeneous structures, reported by F. Lopez-Tejeira 2002-04-17 Steven G. Johnson * configure.ac: make sure libctl is an appropriate version; thanks to Patricia Max for the suggestion 2002-04-03 Steven G. Johnson * mpb-ctl/epsilon.c: fixed error message (--with-hermitian-epsilon is not --with-hermitian-eps) * mpb-ctl/epsilon.c: fix check of real epsilon-offdiag for non-hermitian-eps (thanks to Doug Allan) 2002-03-24 Steven G. Johnson * mpb-ctl/field-smob.c: integrate-fields passes position vector 2002-03-23 Steven G. Johnson * mpb-ctl/field-smob.c, mpb-ctl/field-smob.h, mpb-ctl/fields.c, mpb-ctl/matrix-smob.c, mpb-ctl/matrix-smob.h: added assert_*_smob functions to replace SAFE_*, getting rid of many compiler warnings as well as CHECK statements * mpb-ctl/smob.h: use SCM2PTR, like Guile source, to be safe; still doesn't eliminate annoying warnings * mpb-ctl/field-smob.c, mpb-ctl/field-smob.h, mpb-ctl/fields.c, mpb-ctl/mpb.h, mpb-ctl/mpb.scm.in: fixed whoopses, added *-field-get-point (FIXME: handle arbitrary smobs) (FIXME: save k in smob?) * mpb-ctl/field-smob.c, mpb-ctl/fields.c: checked in fields.c (whoops) and RENORMALIZED FIELDS and INTEGRALS: all integrals are now integrals and not sums (i.e. we include the dV factor) and fields are properly unit-normalized 2002-03-22 Steven G. Johnson * mpb-ctl/field-smob.c: whoops * mpb-ctl/Makefile.in, mpb-ctl/field-smob.c, mpb-ctl/field-smob.h, mpb-ctl/mpb.c, mpb-ctl/mpb.h, mpb-ctl/mpb.scm.in, src/util/check.h, src/util/debug_malloc.c: added field-smob 2002-03-21 Steven G. Johnson * mpb-ctl/matrix-smob.c: use CHK_MALLOC * mpb-ctl/matrix-smob.c: whoops * mpb-ctl/matrix-smob.c: allow very small imaginary part in scale_eigenvector for mpbi (since we can get this in the phase-fixing routines just by fp error) * mpb-ctl/mpb.scm.in: get rid of debugging print * mpb-ctl/matrix-smob.c: get rid of debugging printf * tests/blastest.c: whoops * mpb-ctl/Makefile.in, mpb-ctl/epsilon.c, mpb-ctl/matrix-smob.c, mpb-ctl/matrix-smob.h, mpb-ctl/mpb.c, mpb-ctl/mpb.h, mpb-ctl/mpb.scm.in, mpb-ctl/smob.h, src/matrices/blasglue.c, src/matrices/blasglue.h, src/matrices/eigensolver.c, src/matrices/evectmatrix.c, src/matrices/matrices.h, src/matrices/sqmatrix.c: added evectmatrix/sqmatrix smobs and several new functions, split mpb.c source files, mpb-split now uses full path... 2002-03-20 Steven G. Johnson * src/maxwell/maxwell_eps.c: fixed Stroud code URL 2002-03-19 Steven G. Johnson * mpb-ctl/mpb.scm.in: allow-negative-epsilon should use the targeted solver 2002-03-14 Steven G. Johnson * mpb-ctl/Makefile.in, mpb-ctl/mpb-split.1, mpb-ctl/mpb.1, utils/mpb-data.1: man page cleanups, added mpb-split man page 2002-03-13 Steven G. Johnson * mpb-ctl/Makefile.in: whoops, slight fix * mpb-ctl/Makefile.in: 'make install' (and in particular, installing mpb-split) should not write to the source directory. (This was biting me on NFS systems where root didn't have write access to my home directory.) * mpb-ctl/Makefile.in, utils/Makefile.in: use mandir * doc/developer.html, doc/license.html: fixed OE url, added bibtex 2002-03-11 Steven G. Johnson * NEWS: S. Lantz is at Cornell, not Corning. * doc/license.html: whoops, updated copyright year 2002-03-11 Steven G. Johnson * mpb-ctl/epsilon_file.c: included missing header * mpb-ctl/epsilon_file.c, mpb-ctl/mpb.c: whoops, slight fix * NEWS: added release date 2002-03-10 Steven G. Johnson * doc/analysis-tutorial.html: fixed h5utils URL 2002-03-09 Steven G. Johnson * AUTHORS: added AUTHORS file to be GNU-ly correct 2002-03-08 Steven G. Johnson * mpb-ctl/mpb.c: use ctl_fix_path on epsilon_input_file in case user is running ctl file from another directory (thanks to Alexey Yamilov for bugging me) 2002-03-07 Steven G. Johnson * mpb-ctl/mpb.c: fix typo * doc/user-ref.html: noted no-size orthogonality * doc/user-ref.html: fixed typo * ChangeLog, NEWS, configure.ac: updated version * COPYRIGHT, mpb-ctl/epsilon_file.c, mpb-ctl/mpb.1, mpb-ctl/mpb.c, mpb-ctl/mpb.h, mpb-ctl/mpb.scm.in, src/matrices/blasglue.c, src/matrices/blasglue.h, src/matrices/eigensolver.c, src/matrices/eigensolver.h, src/matrices/eigensolver_davidson.c, src/matrices/eigensolver_utils.c, src/matrices/evectmatrix.c, src/matrices/linmin.c, src/matrices/linmin.h, src/matrices/matrices.c, src/matrices/matrices.h, src/matrices/scalar.h, src/matrices/sqmatrix.c, src/matrixio/evectmatrixio.c, src/matrixio/fieldio.c, src/matrixio/matrixio.c, src/matrixio/matrixio.h, src/maxwell/maxwell.c, src/maxwell/maxwell.h, src/maxwell/maxwell_constraints.c, src/maxwell/maxwell_eps.c, src/maxwell/maxwell_op.c, src/maxwell/maxwell_pre.c, src/util/check.h, src/util/debug_malloc.c, src/util/mpi_utils.c, src/util/mpi_utils.h, src/util/mpiglue.h, tests/blastest.c, tests/eigs_test.c, tests/malloctest.c, tests/maxwell_test.c, utils/mpb-data.1, utils/mpb-data.c: 2002 copyright year update * configure.ac, doc/user-ref.html, mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in: use Scheme complex numbers * mpb-ctl/mpb.scm.in: made usage of define-property consistent with latest rev. of libctl 2002-02-27 Steven G. Johnson * configure.ac: fixed bug in zdotc detection (thanks to Steve Lantz) * doc/installation.html: Added "Fun with Fortran" section (thanks to Steve Lantz for the suggestion). * src/maxwell/maxwell_eps.c: Fixed bug that would cause compile failure with Fortran compilers using upper case. (Thanks to Steve Lantz of Corning.) 2002-02-25 Steven G. Johnson * acx_lapack.m4: check for lapack_rs6k library name 2002-02-13 Steven G. Johnson * ChangeLog: updated 2002-02-12 Steven G. Johnson * mpb-ctl/mpb.c: fixed (I think) conjugation in field routines...E is multiplied by i, so it is conjugated along with H 2002-02-09 Steven G. Johnson * doc/license.html: don't recommend referencing the web site 2002-01-21 Steven G. Johnson * doc/user-ref.html: fixed typo (thanks, Mihai) 2002-01-19 Steven G. Johnson * mpb-ctl/mpb.c: reorganized get-*-point functions 2002-01-18 Steven G. Johnson * Makefile.in: make snapshot and make dist now run autoheader/autoconf in the same order * Makefile.in: make snapshot runs autoheader * Makefile.in: include install-sh, etc., in snapshot * Makefile.in: configure.in -> configure.ac * configure.ac, mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in: compute-energy-integral -> compute-field-integral (generalized) (thanks to Marin for suggestion) 2002-01-17 Steven G. Johnson * doc/user-ref.html: fixed bug in formatting * mpb-ctl/mpb.c, src/matrixio/fieldio.c: don't center exp(ikx)...it screws up vectorfield_otherhalf * mpb-ctl/mpb.c: fixed epsilon imag. part * mpb-ctl/epsilon_file.c, mpb-ctl/mpb.c, mpb-ctl/mpb.h, mpb-ctl/mpb.scm.in: added get-*-point functions * src/matrixio/fieldio.c: compute exp(ikx) phase such that the center of the cell is the origin, for more consistency with other parts of the code * mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in: allow user to specify resolution instead of grid size (requires new libctl) 2002-01-03 Steven G. Johnson * mpb-ctl/mpb.c: Got rid of NaN when computing (undefined) group velocity for zero-frequency states at the Gamma point; arbitrarily return zero here instead. Thanks to Dmitry N. Chigrin for reporting floating-point exceptions on Alphas. * doc/user-ref.html: improved run-parity docs 2001-12-15 Steven G. Johnson * TODO: additions 2001-12-12 Steven G. Johnson * acx_blas.m4: use FLIBS everywhere * doc/installation.html: added note on using a consistent f77 compiler 2001-12-08 Steven G. Johnson * NEWS, configure.ac, doc/installation.html, doc/user-ref.html: use AC_HELP_STRING, and shorten --with-hermitian-eps * doc/installation.html: noted new blas/lapack options * acx_blas.m4, acx_lapack.m4: check for *.so.* as well as *.so * acx_blas.m4, acx_lapack.m4, configure.ac: use new BLAS/LAPACK check macros 2001-12-07 Steven G. Johnson * src/maxwell/maxwell_constraints.c: fixed bug in y-parity constraint for 3d. Thanks to Rumen Iliew for the bug report. 2001-12-04 Steven G. Johnson * mpb-ctl/mpb.scm.in: added run-yeven-zeven, etcetera 2001-11-20 Steven G. Johnson * NEWS: noted replacement of run-polarization by run-parity, etcetera, in MPB 1.2; thanks to Karl Koch for pointing out this omission. * doc/user-ref.html: fixed missing tag * ChangeLog: updated * NEWS, configure.ac: bumped version * Makefile.in, install-sh: autoconf file should not be in cvs * NEWS, src/util/debug_malloc.c: cleanups, allow malloc(0) * mpb-ctl/mpb.c: ugh, ugh, fixed memory overwrite due to mis-parenthesization; thanks to Karl Koch for the bug report. 2001-11-16 Steven G. Johnson * NEWS: correction * NEWS: slight fix * NEWS: added date * ChangeLog: updated 2001-11-15 Steven G. Johnson * ChangeLog, NEWS: updated * mpb-ctl/examples/line-defect.ctl: slight correction * mpb-ctl/examples/line-defect.ctl: switched to rods, not holes, and cleaned up a bit * doc/analysis-tutorial.html, doc/user-tutorial.html, doc/acknowledgments.html, doc/developer.html, doc/installation.html, doc/introduction.html, doc/license.html, doc/user-ref.html: make it easier to filter Go To lines * doc/index.html: indent contents for easy filtering 2001-11-14 Steven G. Johnson * configure.ac: fixed bash-ism * doc/installation.html: Note the necessity of installing guile-devel RPM (grr, FAQ). 2001-11-13 Steven G. Johnson * mpb-ctl/examples/line-defect.ctl: added triangular-lattice line-defect example 2001-10-22 Steven G. Johnson * mpb-ctl/examples/honey-rods.ctl: slightly more optimal rod-size parameter 2001-10-11 Steven G. Johnson * mpb-ctl/examples/diamond.ctl: use new basis-size property * Makefile.in: copy config.guess, config.sub to 'make dist' directory * config.guess, config.sub: removed non-owned files * configure.ac: bumped version * NEWS: updated * doc/analysis-tutorial.html, doc/user-ref.html, doc/user-tutorial.html: noted new basis-size property in libctl 2001-10-10 Steven G. Johnson * NEWS, doc/analysis-tutorial.html, mpb-ctl/examples/check.ctl, mpb-ctl/examples/diamond.ctl: rotated W and K points to be consist with the picture in John's book; thanks to Robert Sheldon for the suggestion * NEWS: some updates 2001-10-09 Steven G. Johnson * TODO: add more example files 2001-10-08 Steven G. Johnson * doc/user-ref.html: output-copies is no longer supported 2001-10-05 Steven G. Johnson * mpb-ctl/mpb.c, src/maxwell/maxwell.h, src/maxwell/maxwell_eps.c: return better scalar epsilon value 2001-09-30 Steven G. Johnson * doc/user-ref.html: slight improvement & fix * doc/user-ref.html: spiffed up parity discussion * doc/user-ref.html: another fix * doc/user-ref.html: whoops, another fix * doc/user-ref.html: slight fix * TODO, doc/user-ref.html, mpb-ctl/examples/hole-slab.ctl, mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in, src/maxwell/Makefile.in, src/maxwell/maxwell.c, src/maxwell/maxwell.h, src/maxwell/maxwell_constraints.c, src/maxwell/maxwell_eps.c, src/maxwell/maxwell_pre.c, tests/maxwell_test.c: added y-parity, reorganized polarization constraints 2001-09-19 Steven G. Johnson * doc/installation.html: updated ATLAS link 2001-08-08 Steven G. Johnson * mpb-ctl/mpb.c: group-v computation blows away curfield; thanks to Marin for noting this 2001-07-24 Steven G. Johnson * mpb-ctl/mpb.c, src/maxwell/maxwell_op.c: use units for D that are consistent with H 2001-07-23 Steven G. Johnson * src/matrixio/matrixio.h, utils/mpb-data.c, doc/user-ref.html, mpb-ctl/mpb.c, src/matrixio/fieldio.c: added full epsilon tensor output (some problems still for hermitian epsilon with inversion symmetry) 2001-07-10 Steven G. Johnson * configure.ac: make sure guile is in PATH 2001-07-05 Steven G. Johnson * NEWS: updated * configure.ac, src/maxwell/maxwell.h: fixed for new config.h * configure.ac, config.guess, config.sub, configure.in, src/config.h.in, src/matrices/blasglue.c, src/util/fortranize.h: switched to autoconf 2.50 * doc/user-ref.html, doc/user-tutorial.html: lowered default tolerance to 1e-7 * NEWS: updated * mpb-ctl/mpb.scm.in: lowered default tolerance to 1e-7 2001-07-04 Steven G. Johnson * doc/index.html, doc/user-ref.html: fixed documentation cross-refs * doc/user-ref.html, doc/user-tutorial.html, mpb-ctl/examples/tutorial.ctl, mpb-ctl/mpb.scm.in: documented, fixed retrieve-gap function * ChangeLog, NEWS: updated * configure.in: bumped version to 1.1.1 * mpb-ctl/examples/bragg.ctl: generalized 2001-07-04 Steven G. Johnson * mpb-ctl/examples/bragg.ctl: generalized 2001-06-26 Steven G. Johnson * ChangeLog: updated * src/maxwell/maxwell_op.c: yikes, fixed bug in H output for cases lacking inversion symmetry 2001-06-21 Steven G. Johnson * configure.in: detect MPI compiler for AIX...this test needs to be split into a separate macro, really 2001-06-12 Steven G. Johnson * src/maxwell/maxwell_eps.c, src/maxwell/maxwell.h, src/maxwell/maxwell_op.c, src/matrices/eigensolver_davidson.c, mpb-ctl/mpb.c: Laid some groundwork for negative epsilon support, but need a new eigensolver algorithm before it can really work. More importantly, fixed bug in mpbi for 1d transforms (arrays were not written properly, and worse: array bounds were violated, causing random results). 2001-06-03 Steven G. Johnson * mpb-ctl/mpb.scm.in: added retrieve-gap function 2001-05-09 Steven G. Johnson * src/matrices/eigensolver.c: output malloc count when verbose * src/util/check.h, src/util/debug_malloc.c: add debug_output_malloc_count 2001-05-06 Steven G. Johnson * NEWS, ChangeLog: updated * doc/analysis-tutorial.html: K is C_{3v}, not C_{6v}. * /home/stevenj/Repository/mpb/doc/analysis-tutorial.html: K is C_{3v}, not C_{6v}. 2001-04-30 Steven G. Johnson * /home/stevenj/Repository/mpb/NEWS, /home/stevenj/Repository/mpb/configure.in, /home/stevenj/Repository/mpb/ChangeLog: updated & bumped version * /home/stevenj/Repository/mpb/mpb-ctl/mpb.c: Fixed bug in field output for kz != 0. Thanks to Jesper Riishede for the bug report. 2001-04-29 Steven G. Johnson * doc/user-ref.html: note limitations of fix-*field-phase 2001-04-26 Steven G. Johnson * doc/installation.html: updated LAM URL 2001-04-20 Steven G. Johnson * mpb-ctl/mpb-split.in: Use #! /bin/bash instead of #!/bin/bash for portability on some systems. * doc/user-ref.html, mpb-ctl/mpb.c: compute_energy_integral should also pass position to integrand 2001-04-14 Steven G. Johnson * mpb-ctl/mpb-split.in: Whoops, add first job (0th k-point chunk) to list of subprocesses, so that it gets killed properly if we kill the script. 2001-04-11 Steven G. Johnson * mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in, doc/user-ref.html: Added compute-energy-integral function, suggested by Marin Soljacic. 2001-04-03 Steven G. Johnson * doc/acknowledgments.html, doc/introduction.html: acknowledged Bob Meade 2001-03-07 Steven G. Johnson * mpb-ctl/mpb.scm.in: minor cleanup 2001-03-06 Steven G. Johnson * doc/user-ref.html: magnetic material -> gyrotropic (magneto-optic) material 2001-03-04 Steven G. Johnson * mpb-ctl/mpb.scm.in: display-eigensolver-stats outputs mean time per iteration * doc/installation.html: photonic-bands -> MPB * doc/installation.html: link to MPICH and LAM from MPI section * utils/mpb-data.c: check to make sure -n argument is > 0 (thanks to Niclas Carlsson for a bug report). 2001-03-02 Steven G. Johnson * doc/user-tutorial.html: linked to units section * doc/user-tutorial.html: ./mpb -> mpb (why did I have it this way?) 2001-02-24 Steven G. Johnson * doc/user-ref.html: fix hyphenation 2001-02-23 Steven G. Johnson * configure.in, src/config.h.in, src/matrixio/matrixio.c: H5Pset_mpi is now called H5Pset_fapl_mpio in HDF5 1.4.0 * configure.in: more warnings or errors if important things are not found 2001-02-22 Steven G. Johnson * tests/blastest.c, tests/blastest.complex.out, tests/blastest.real.out: pick deterministic phase for eigenvectors * configure.in: removed single quotes that confuse emacs coloring * configure.in: use nicer section separator 2001-02-20 Steven G. Johnson * mpb-ctl/Makefile.in: whoops...variable assignments in Makefiles don't carry over to the next line (I guess each line is executed in its own subshell). 2001-02-19 Steven G. Johnson * doc/analysis-tutorial.html: punctuation alteration * doc/analysis-tutorial.html: slight rewording * doc/analysis-tutorial.html: noted that the real part is sometimes zero * doc/analysis-tutorial.html: noted units for resolution in mpb-data * doc/analysis-tutorial.html: use -S 3 instead of -X 3 -Y 3 * doc/tri-rods-eps-2.gif, doc/tri-rods-ez1.gif, doc/tri-rods-ez2.gif, doc/tri-rods-ez3.gif, doc/tri-rods-ez4.gif, doc/tri-rods-ez5.gif, doc/tri-rods-ez6.gif, doc/tri-rods-ez7.gif, doc/tri-rods-ez8.gif: updated mode pictures (since mpb-data now centers its output at the origin) * config.guess, config.sub: updated to latest version * ChangeLog: updated * doc/analysis-tutorial.html, mpb-ctl/examples/diamond.ctl, mpb-ctl/mpb.scm.in, src/maxwell/maxwell_eps.c: a couple compilation fixes, and noted use of define-param in the manual * mpb-ctl/examples/check.ctl: whoops, got rid of premature exit * mpb-ctl/examples/check.ctl: improved accuracy in 1d tests...but there still seem to be occasional discrepancies. What is going on? * doc/user-ref.html: clarification * TODO: updated 2001-02-18 Steven G. Johnson * doc/installation.html: fixed autoconf URL * src/maxwell/maxwell.c: whoops, non-constant array initializers are not allowed 2001-02-17 Steven G. Johnson * doc/installation.html: mention parallel HDF5 * doc/installation.html: fixed typo * doc/user-ref.html, doc/installation.html: noted mpbi-mpi in manual * mpb-ctl/mpb.c: fixed counting statistics for mpbi-mpi * src/maxwell/maxwell_op.c: fixed field output for 2d mpbi-mpi * mpb-ctl/Makefile.in: fixed copyright year * src/matrixio/matrixio.c: don't call H5Dwrite at all for empty dataspaces (e.g. in leftover processes under MPI) * src/maxwell/maxwell_op.c: bug fixed for mpbi-mpi field output * mpb-ctl/examples/hole-slab.ctl: There sees to be some funny rounding problem on the Origin (at least) that causes it to get confused about whether x=0 and/or y=0 is inside the eps block. * doc/user-ref.html: fixed broken tag * mpb-ctl/mpb.c: undid erroneous cleanups (although they wouldn't have technically caused problems) * ChangeLog: updated 2001-02-16 Steven G. Johnson * NEWS: minor rewordings * NEWS: updated * utils/mpb-data.c: Fixed a problem with MODF_POSITIVE that caused mpb-data to crash on an Alpha; thanks to Dominique Caron for the bug report. 2001-02-14 Steven G. Johnson * doc/user-ref.html: note that MPB exits with an error if run-te/tm are used nonsensically, or if epsilon is not positive-definite. * NEWS: fixed hyphenation * configure.in: bumped version * mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in, src/matrices/scalar.h, src/matrixio/fieldio.c, src/matrixio/matrixio.c, src/matrixio/matrixio.h, src/maxwell/maxwell.c, src/maxwell/maxwell.h, src/maxwell/maxwell_op.c, NEWS: Rewrote field output for inversion-symmetry case. We now write the field to the file in a few chunks, rather than trying to expand the half-complex rfftw output to the full array. This paves the way for a parallel mpbi. As a side effect, we also circumvent a bug in the old makefull routines that caused artifacts to appear in the output for 3d cells (reported by Michelle Povinelli). 2001-02-11 Steven G. Johnson * mpb-ctl/mpb.scm.in: Bug fix in combine-band-functions, etcetera, for when a thunk is encountered. Thanks to Michelle Povinelli for the bug report. 2001-02-09 Steven G. Johnson * mpb-ctl/mpb.c, src/matrixio/fieldio.c, src/matrixio/matrixio.c, src/matrixio/matrixio.h: generalized fieldio function in preparation for rewritten mpbi output... * mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in, NEWS, src/matrixio/fieldio.c, src/matrixio/matrixio.h: eliminated output-copies in favor of mpb-data 2001-02-08 Steven G. Johnson * mpb-ctl/mpb.c: added geometry tree debugging code * doc/installation.html, doc/user-ref.html, NEWS: give (more) thanks to Clarendon * src/matrices/blasglue.c, src/matrixio/matrixio.c, src/maxwell/maxwell_op.c: fixed problems when an MPI process has no portion of the eigenmodes (which can happen for inconvenient # processes)...matrixio is still not quite right, though * src/matrices/blasglue.c: don't die if passed NULL arrays for zero sizes * mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in: added get/set kpoint-index functions * NEWS: updated * doc/index.html, doc/installation.html, doc/user-ref.html: documented mpb-mpi * mpb-ctl/examples/check.ctl: check-tolerance should be a param * src/maxwell/maxwell_pre.c: Fixed bug in zero-k constraint for parallel systems. 2001-02-07 Steven G. Johnson * doc/acknowledgments.html: thanks to Clarendon * utils/mpb-data.1, utils/mpb-data.c: added mpb-data -T option * configure.in, utils/Makefile.in: don't build/install mpb-data when linking to MPI * mpb-ctl/examples/check.ctl, mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in: expose more MPI info to Guile, and don't do 1d tests in check.ctl under MPI (where they are not supported) * mpb-ctl/mpb.c, src/matrices/eigensolver.c, src/matrices/eigensolver_davidson.c, src/matrices/eigensolver_utils.c, src/matrices/evectmatrix.c, src/matrices/matrices.h, src/maxwell/maxwell_eps.c, src/maxwell/maxwell_pre.c, src/util/mpiglue.h, src/util/mpi_utils.c, src/util/mpi_utils.h, tests/eigs_test.c: yikes, Allreduce requires sendbuf != recvbuf (although this is not clear from the documentation) * src/maxwell/maxwell_eps.c: cleanups, fixed calculation of eps_inv_mean for MPI * src/maxwell/maxwell.c: fixed indenting * TODO: updates * mpb-ctl/Makefile.in: put check target at the end so that 'make' does 'make all' * src/matrixio/matrixio.c: fprintf -> mpi_one_fprintf * src/maxwell/maxwell_op.c: whoops, fixed stride/dist check to coincide with what fftwnd_mpi really supports * src/config.h.in: define HAVE_FFTW to something * configure.in, mpb-ctl/mpb.c, src/maxwell/maxwell.c, src/maxwell/maxwell.h, src/util/mpi_utils.c: fixed compilation whoopses under MPI * doc/user-ref.html: fix * ChangeLog, NEWS: updated 2001-02-06 Steven G. Johnson * mpb-ctl/mpb.scm.in: workaround for older versions of Guile where we can't get the number of arguments to a function (apparently) * configure.in: fixed gen-ctl-io check, removed AC_PROG_CC_STDC ifdef...there's something not working about ifdef that I don't understand * configure.in: call AC_PROG_CC_STDC if defined, in part so that autoconf 2.5 doesn't complain * configure.in: added MPI checks * src/util/mpi_utils.c: clarification * src/matrixio/matrixio.c: fixed misnamed function call * configure.in, src/config.h.in, src/matrixio/matrixio.c: support HDF5 file i/o without H5Pset_mpi 2001-02-05 Steven G. Johnson * src/util/mpiglue.h, src/util/mpi_utils.c, src/util/mpi_utils.h: added critical section utility, intended for mediating output file access 2001-02-04 Steven G. Johnson * mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in: turn off printing unless we are the master process * doc/user-tutorial.html, mpb-ctl/examples/check.ctl, mpb-ctl/examples/tutorial.ctl, mpb-ctl/mpb.scm.in: display-many -> print * mpb-ctl/Makefile.in: make main() in new libctl call our hooks * mpb-ctl/epsilon_file.c, mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in, src/matrices/eigensolver.c, src/matrices/eigensolver_davidson.c, src/matrices/linmin.c, src/matrices/matrices.c, src/matrixio/fieldio.c, src/matrixio/matrixio.h, src/maxwell/maxwell.c, src/maxwell/maxwell_eps.c, src/maxwell/maxwell_op.c, src/maxwell/maxwell_pre.c, src/util/mpiglue.h, src/util/mpi_utils.c, src/util/mpi_utils.h: many cleanups in preparation for MPI * mpb-ctl/mpb.c: give error if k-point is incompatible with the polarization * configure.in, tests/blastest.complex.out, tests/blastest.out, tests/blastest.real.out, tests/Makefile.in: fixed blastest 'make check' for complex scalars 2001-02-03 Steven G. Johnson * mpb-ctl/mpb.c, src/maxwell/maxwell_eps.c, src/maxwell/maxwell.h: checks to see if dielectric tensor is okay; return error if TE/TM is specified but impossible * doc/index.html: fixed typo 2001-01-30 Steven G. Johnson * configure.in: use vendor cc, too, so that Fortran and C are in sync (there may be linking problems, otherwise). * doc/developer.html, doc/license.html: noted MPB paper 2001-01-27 Steven G. Johnson * mpb-ctl/mpb.c: fixed compute_energy_in_object_list for non-orthogonal lattices 2001-01-26 Steven G. Johnson * mpb-ctl/mpb.scm.in: filename-prefix is once again a define-param variable 2001-01-24 Steven G. Johnson * NEWS: clarified the purpose of "nothing" * doc/user-tutorial.html, mpb-ctl/examples/tutorial.ctl, mpb-ctl/mpb.c: in compute-energy-in-objects, let 'nothing' material punch a hole 2001-01-23 Steven G. Johnson * doc/user-ref.html, doc/user-tutorial.html, mpb-ctl/examples/tutorial.ctl, mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in, NEWS: added 'nothing' material * doc/installation.html: clarified simultaneous installation of mpb and mpbi 2001-01-21 Steven G. Johnson * mpb-ctl/examples/check.ctl: collect error statistics * mpb-ctl/examples/check.ctl: Fix a bug (Bragg-sine not resetting default-material). Also raise tolerance slightly. * Makefile.in, tests/Makefile.in: print friendly message when (if?) make check passes * mpb-ctl/examples/check.ctl: added sinusoidal Bragg to make check * doc/user-ref.html: warn user about run-te and run-tm with anisotropic dielectrics * NEWS: give credit * doc/user-ref.html, mpb-ctl/examples/bragg-sine.ctl, mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in, NEWS: added material-function type * configure.in: don't check for ctl_get_list (not there anymore) * doc/installation.html, doc/user-ref.html, NEWS: let's not capitalize 'Hermitian' * tests/Makefile.in: whoops, fixed $ substitution * Makefile.in: changed subdir order in make check * Makefile.in, mpb-ctl/Makefile.in, tests/Makefile.in: added 'make check' * tests/maxwell_test.c: fix -E * tests/maxwell_test.c: use epsilon with inversion symmetry, so it works with mpbi * tests/blastest.out: added sample output * tests/maxwell_test.c: allow option to fail if error is too large * src/maxwell/maxwell.c: Earlier, we flipped the sign of the G vector in order to have a consistent sign of k for mpbi and mpbi--it is especially important to be careful about this when you have a complex-Hermitian dielectric tensor that breaks (k,-k) time-reversal symmetry. However, this made our planewave basis slightly different from before. It used to be that we had 1 more positive-G planewave than negative-G (for even grid sizes), but the above change reverses this situation. It doesn't matter in an absolute sense, since the planewave cutoff is still the same, but the difference was an annoyance--it caused check.ctl to fail because of microscopic changes in the results, and also made us inconsistent with the MPB paper. This change fixes that, restoring the +G/-G planewave balance to what it was before (although the basis elements are stored in a different order, with the -G waves first). * src/maxwell/maxwell.c, src/maxwell/maxwell_op.c: fixed G sign convention to be consistent for mpbi and mpb 2001-01-20 Steven G. Johnson * doc/developer.html, doc/user-ref.html, doc/user-tutorial.html: spelling correction * doc/developer.html, doc/introduction.html: link to barnesandnoble.com instead of Amazon to be GNU-ly correct * doc/user-tutorial.html: added link * doc/installation.html, doc/user-ref.html, NEWS: documented complex-Hermitian epsilon * src/maxwell/maxwell_op.c: slight change * configure.in, mpb-ctl/epsilon_file.c, mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in, src/config.h.in, src/matrices/scalar.h, src/maxwell/maxwell_eps.c, src/maxwell/maxwell.h, src/maxwell/maxwell_op.c, tests/maxwell_test.c: added --with-hermitian-epsilon 2001-01-11 Steven G. Johnson * mpb-ctl/mpb.scm.in: Modified band-range data functions so that they are tail recursive, lest stack overflow crashes occur when large numbers of bands (e.g. 600) are computed. Thanks to Mihai Ibanescu for the bug report. 2001-01-10 Steven G. Johnson * src/matrices/minpack2-linmin.c: use MIN, MAX, and ABS in case some header file defines these macros too (like AIX...grrr). Thanks to Angelo R. Rossi for the bug report. 2001-01-07 Steven G. Johnson * doc/analysis-tutorial.html: clarification * doc/analysis-tutorial.html: slight clarification * doc/user-ref.html: slight formatting fix * TODO: updated * ChangeLog, configure.in, NEWS: bumped version number, prepare for release 2001-01-06 Steven G. Johnson * doc/license.html: clarification * doc/analysis-tutorial.html: updated fcc units note * doc/analysis-tutorial.html, doc/diamond-bands.gif, mpb-ctl/examples/diamond.ctl: use standard units for fcc (diamond) * mpb-ctl/mpb.scm.in: bug fix in filename-prefix use (fixes bug introduced by previous change) * doc/analysis-tutorial.html, doc/index.html, doc/user-ref.html: expanded table of contents * doc/installation.html: clarification of efence * doc/installation.html: fixes * doc/installation.html: fixed missing link * doc/installation.html: slight change * doc/installation.html: emphasize HDF5 * doc/installation.html: noted more clearly that MPI is not yet used * doc/installation.html: fixed ref * doc/installation.html: recommend ATLAS * doc/installation.html: moved Bourne shell note up front. * doc/installation.html: grammar fix(?) * doc/installation.html: notes on binary packages for Linux * doc/license.html: clarification * doc/license.html: expanded and updated referencing suggestions * doc/license.html: comma goes outside of link * doc/license.html: fixed capitalization * src/matrices/matrices.c, src/matrices/matrices.h, src/matrices/scalar.h, src/matrices/sqmatrix.c, src/matrixio/evectmatrixio.c, src/matrixio/fieldio.c, src/matrixio/matrixio.c, src/matrixio/matrixio.h, src/maxwell/maxwell.c, src/maxwell/maxwell_eps.c, src/maxwell/maxwell.h, src/maxwell/maxwell_op.c, src/maxwell/maxwell_pre.c, src/util/check.h, src/util/debug_malloc.c, src/util/fortranize.h, src/util/mpiglue.h, src/util/mpi_utils.c, src/util/mpi_utils.h, tests/blastest.c, tests/eigs_test.c, tests/malloctest.c, tests/maxwell_test.c, utils/mpb-data.1, utils/mpb-data.c, COPYRIGHT, mpb-ctl/epsilon_file.c, mpb-ctl/mpb.1, mpb-ctl/mpb.c, mpb-ctl/mpb.h, mpb-ctl/mpb.scm.in, src/matrices/blasglue.c, src/matrices/blasglue.h, src/matrices/eigensolver.c, src/matrices/eigensolver_davidson.c, src/matrices/eigensolver.h, src/matrices/eigensolver_utils.c, src/matrices/evectmatrix.c, src/matrices/linmin.c, src/matrices/linmin.h: 2001 copyright year update * doc/license.html: fixed copyright year * doc/license.html: Added Latin quote and fixed reference. * doc/developer.html: fixed reference * ChangeLog: fixed email * ChangeLog: updated * mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in, NEWS: read filename-prefix on each output call 2001-01-03 Steven G. Johnson * /home/stevenj/Repository/mpb/NEWS, /home/stevenj/Repository/mpb/doc/user-ref.html: documented using thunks for band functions * /home/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in: accept thunks as band functions * /home/stevenj/Repository/mpb/doc/user-ref.html, /home/stevenj/Repository/mpb/mpb-ctl/mpb.c, /home/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/stevenj/Repository/mpb/NEWS: compute-field-energy now returns the fraction of the energy in each field component. Also, fixed a bug in the group velocity calculation when eigensolver-block-size < num-bands. Thanks to Karl Koch for the suggestion and bug report. * /home/stevenj/Repository/mpb/src/matrices/blasglue.c: fixed calling real syev for complex scalars 2000-11-12 Steven G. Johnson * /home/stevenj/Repository/mpb/src/matrices/blasglue.c, /home/stevenj/Repository/mpb/src/matrices/blasglue.h: separate function for eigenvalues of real matrices, if we need them 2000-11-10 Steven G. Johnson * /home/stevenj/Repository/mpb/src/maxwell/maxwell_eps.c: comment 2000-11-07 Steven G. Johnson * /home/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/stevenj/Repository/mpb/src/matrices/evectmatrix.c, /home/stevenj/Repository/mpb/src/matrices/matrices.h: changed flop count to double to avoid overflow * /home/stevenj/Repository/mpb/src/matrices/eigensolver_davidson.c: make trace output more closely match other eigensolver's * /home/stevenj/Repository/mpb/src/matrices/eigensolver.c: print more digits in eigensolver trace output * /home/stevenj/Repository/mpb/mpb-ctl/mpb.c, /home/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/stevenj/Repository/mpb/src/matrices/evectmatrix.c, /home/stevenj/Repository/mpb/src/matrices/matrices.h: added flop count, nwork & davidson user control * /home/stevenj/Repository/mpb/doc/analysis-tutorial.html: noted reference for diamond 2000-11-06 Steven G. Johnson * /home/stevenj/Repository/mpb/src/matrices/eigensolver_davidson.c: added dead code for alternate computation method of computing AY... * /home/stevenj/Repository/mpb/src/maxwell/maxwell.h, /home/stevenj/Repository/mpb/src/maxwell/maxwell_op.c: added maxwell_target_operator1 * /home/stevenj/Repository/mpb/src/matrices/eigensolver.c: put constraint in a more logical place, after the preconditioner. 2000-11-04 Steven G. Johnson * /home/stevenj/Repository/mpb/src/matrices/eigensolver.c: reorder iteration output so it's a little less misleading (iteration 1 is now after the first eigenvector update, and the last iteration can be printed) 2000-10-30 Steven G. Johnson * /home/stevenj/Repository/mpb/tests/normal_vectors.c: use uniform directions on a sphere 2000-10-26 Steven G. Johnson * /home/stevenj/Repository/mpb/mpb-ctl/examples/check.ctl: use a slightly lower tolerance for the targeted eigensolver * /home/stevenj/Repository/mpb/mpb-ctl/examples/check.ctl: updated for new MPB...in particular, 3d numbers have changed because of the new spherical quadrature, and 2d numbers may have changed slightly because of the new handling of the Gamma points. Also fixed some bugs where some of the tests that I had blithely inserted conflicted with one another. * /home/stevenj/Repository/mpb/doc/user-ref.html, /home/stevenj/Repository/mpb/mpb-ctl/mpb.c, /home/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in: changed default block size, made more flexible * /home/stevenj/Repository/mpb/mpb-ctl/mpb.c: print a message to remind the user when we're assuming inversion symmetry * /home/stevenj/Repository/mpb/mpb-ctl/mpb.c: fixed bug in integration (eps_mean, energy in object, etcetera) when using inversion symmetry. Because of the funny format output by real FFTs, the fields stored are slightly *over* half of the full "logical" arrays. One has to be careful not to overcount the boundary points. 2000-10-25 Steven G. Johnson * /home/stevenj/Repository/mpb/NEWS: updated * /home/stevenj/Repository/mpb/configure.in, /home/stevenj/Repository/mpb/doc/installation.html, /home/stevenj/Repository/mpb/doc/user-ref.html, /home/stevenj/Repository/mpb/mpb-ctl/mpb.c, /home/stevenj/Repository/mpb/src/maxwell/maxwell.c, /home/stevenj/Repository/mpb/src/maxwell/maxwell.h, /home/stevenj/Repository/mpb/src/maxwell/maxwell_eps.c, /home/stevenj/Repository/mpb/src/maxwell/maxwell_op.c, /home/stevenj/Repository/mpb/src/maxwell/maxwell_pre.c: support inversion symmetry 2000-10-23 Steven G. Johnson * doc/user-ref.html, mpb-ctl/examples/bragg.ctl, mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in, NEWS, src/matrices/eigensolver.c, src/matrices/evectmatrix.c, src/matrices/matrices.c, src/matrices/matrices.h, src/maxwell/maxwell.c, src/maxwell/maxwell.h, src/maxwell/maxwell_pre.c: added eigensolver-block-size and zero-k handling 2000-10-22 Steven G. Johnson * NEWS: added first-brillouin-zone function * doc/user-ref.html: documented first-brillouin-zone * mpb-ctl/mpb.scm.in: added first-brillouin-zone 2000-10-21 Steven G. Johnson * tests/normal_vectors.c: print more angle information 2000-09-21 Steven G. Johnson * doc/user-ref.html: clarification of compute-field-energy normalization 2000-08-10 Steven G. Johnson * utils/mpb-data.c: Re-mapping (rectangularizing, etcetera) now maps the center of the original primitive cell to the center of the output. Also, the -x, -y, and -z lattice multipliers now apply to the axes *after* the cell is rectangularized. 2000-08-06 Steven G. Johnson * configure.in: Fix test for sunperf...-xlic_lib only supported in Sun cc, not gcc. 2000-08-05 Steven G. Johnson * doc/installation.html: updated PHiPACK URL. 2000-07-18 Steven G. Johnson * doc/license.html: John likes to go by his initials. * doc/license.html: noted Meade reference 2000-07-12 Steven G. Johnson * tests/malloctest.c: added benchmark * src/maxwell/maxwell_eps.c, tests/Makefile.in, tests/normal_vectors.c, src/maxwell/maxwell.h: Added more sophisticated spherical quadrature algorithm for computing normal vectors (rather than just using the vertices of an icosahedron). 2000-07-10 Steven G. Johnson * /home/a/stevenj/Repository/mpb/mpb-ctl/examples/check.ctl: Updated frequencies to account for changes due to new 12-point mesh for normal vectors in 2d. (This really only affects TE states.) We really need to do a more sophisticated quadrature in 3d, too; good algorithms are apparently available. 2000-07-09 Steven G. Johnson * /home/a/stevenj/Repository/mpb/tests/eigs_test.c: updated for new sqmatrix_invert arguments * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.h, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver_davidson.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver_utils.c, /home/a/stevenj/Repository/mpb/src/matrices/evectmatrix.c, /home/a/stevenj/Repository/mpb/src/matrices/matrices.h, /home/a/stevenj/Repository/mpb/src/matrices/sqmatrix.c, /home/a/stevenj/Repository/mpb/src/matrices/blasglue.c, /home/a/stevenj/Repository/mpb/src/matrices/blasglue.h: Added experimental EIGS_ORTHOGONAL_PRECONDITIONER code (doesn't seem to give any consistent benefit at this point). * /home/a/stevenj/Repository/mpb/doc/user-ref.html: fixed typo * /home/a/stevenj/Repository/mpb/ChangeLog, /home/a/stevenj/Repository/mpb/NEWS, /home/a/stevenj/Repository/mpb/configure.in: Updated. * /home/a/stevenj/Repository/mpb/doc/user-ref.html: documented group-velocity functions 2000-07-09 Steven G. Johnson * /home/a/stevenj/Repository/mpb/mpb-ctl/examples/check.ctl, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in: Added beginnings of a test suite. * /home/a/stevenj/Repository/mpb/utils/mpb-data.1, /home/a/stevenj/Repository/mpb/utils/mpb-data.c: added -e option to specify orientation 2000-07-04 Steven G. Johnson * /home/a/stevenj/Repository/mpb/doc/user-tutorial.html: fixed typo 2000-07-03 Steven G. Johnson * /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_eps.c: Use finer mesh in 2d for normal vector computation (so as not to break 90-degree rotational symmetries). I also need to think about the 3d mesh, although it seems to be a hard problem there to come up with general spherically "symmetric" distributions of 3d points. Perhaps some sort of weighted quadrature? 2000-06-14 Steven G. Johnson * /home/a/stevenj/Repository/mpb/src/matrixio/matrixio.c: Yikes! Fixed crashing bug! 2000-06-01 Steven G. Johnson * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver_davidson.c: added initial try at Davidson eigensolver 2000-05-31 Steven G. Johnson * /home/a/stevenj/Repository/mpb/doc/installation.html: added sub-headings in installation section, to draw peoples attention to the two issues they need to consider. Thanks to Maksim for pointing out that this was easily missed. 2000-05-23 Steven G. Johnson * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in: Added (index n) substitute for epsilon property of dielectrics. 2000-05-16 Steven G. Johnson * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.h, /home/a/stevenj/Repository/mpb/src/matrices/evectmatrix.c, /home/a/stevenj/Repository/mpb/src/matrices/matrices.c, /home/a/stevenj/Repository/mpb/src/matrices/matrices.h, /home/a/stevenj/Repository/mpb/src/matrices/sqmatrix.c, /home/a/stevenj/Repository/mpb/src/matrices/Makefile.in, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: added experimental (unused) Davidson eigensolver * /home/a/stevenj/Repository/mpb/mpb-ctl/Makefile.in: updated copyright year 2000-05-11 Steven G. Johnson * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: make sure linmin tolerance is no larger than eigensolver tolerance * /home/a/stevenj/Repository/mpb/doc/license.html: noted inclusion, with permission, of code from MINPACK-2 * /home/a/stevenj/Repository/mpb/configure.in, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in: improved handling of optional Guile sort routine 2000-05-10 Steven G. Johnson * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.h, /home/a/stevenj/Repository/mpb/src/matrices/linmin.c, /home/a/stevenj/Repository/mpb/src/matrices/linmin.h, /home/a/stevenj/Repository/mpb/src/matrices/minpack2-linmin.c, /home/a/stevenj/Repository/mpb/configure.in, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/a/stevenj/Repository/mpb/src/config.h.in, /home/a/stevenj/Repository/mpb/src/matrices/Makefile.in: Many changes. Switched to line minimization routine from MINPACK-2, thanks to Jorge More. Added reorthogonalization option to eigensolver, and renormalization of D, to combat numerical problems. Added option (not on by default) to dynamically reset CG based on convergence history, and also another unused option to orthogonalize the first step. Checked to see if Guile provides a sort routine (new in 1.3.4, I think), before using it in mpb.scm.in. (Or should we do this dynamically?) 2000-05-03 Steven G. Johnson * /home/a/stevenj/Repository/mpb/doc/analysis-tutorial.html: more clarification * /home/a/stevenj/Repository/mpb/doc/tri-rods-ez1.gif, /home/a/stevenj/Repository/mpb/doc/tri-rods-ez2.gif, /home/a/stevenj/Repository/mpb/doc/tri-rods-ez3.gif, /home/a/stevenj/Repository/mpb/doc/tri-rods-ez4.gif, /home/a/stevenj/Repository/mpb/doc/tri-rods-ez5.gif, /home/a/stevenj/Repository/mpb/doc/tri-rods-ez6.gif, /home/a/stevenj/Repository/mpb/doc/tri-rods-ez7.gif, /home/a/stevenj/Repository/mpb/doc/tri-rods-ez8.gif, /home/a/stevenj/Repository/mpb/doc/analysis-tutorial.html, /home/a/stevenj/Repository/mpb/mpb-ctl/examples/tri-rods.ctl: Use fix-efield-phase to get deterministic field pictures. * /home/a/stevenj/Repository/mpb/doc/user-ref.html: fixed typo * /home/a/stevenj/Repository/mpb/doc/user-ref.html: documented fix-*field-phase band functions * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in: added fix-*field-phase band functions * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c: invalidate curfield when eigenstates are recomputed. * /home/a/stevenj/Repository/mpb/doc/user-ref.html: clarification in fix-field-phase * /home/a/stevenj/Repository/mpb/doc/user-ref.html: documented fix-field-phase * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c: fix scaling of energy total returned by compute-field-energy. * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/a/stevenj/Repository/mpb/doc/user-ref.html: compute-field-energy returns total unnormalized energy 2000-05-02 Steven G. Johnson * /home/a/stevenj/Repository/mpb/doc/user-ref.html: documented new "cone" geometric object type. * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c: Bug fix in epsilon creation for 2d systems: is now xy plane at z=0, rather than at z=-0.5. 2000-04-04 Steven G. Johnson * /home/a/stevenj/Repository/mpb/doc/user-ref.html: clarified meaning of block size 2000-03-19 Steven G. Johnson * /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_pre.c: increased min. denom., and used max(denom,min) instead of (denom + min). 2000-03-18 Steven G. Johnson * /home/a/stevenj/Repository/mpb/doc/installation.html: minor updates * /home/a/stevenj/Repository/mpb/doc/license.html: slight translation tweak to restore parallel structure * /home/a/stevenj/Repository/mpb/tests/eigs_test.c: fixed bug 2000-03-17 Steven G. Johnson * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in: added display-group-velocities band function * /home/a/stevenj/Repository/mpb/tests/eigs_test.c: handled case where eigenvals array passed to preconditioner is NULL. * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in: added group velocity calc * /home/a/stevenj/Repository/mpb/src/maxwell/maxwell.h, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_op.c: added maxwell_ucross_op for group velocity calculation 2000-03-16 Steven G. Johnson * /home/a/stevenj/Repository/mpb/src/maxwell/maxwell.h, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_op.c: Separated H_from_e computation into its own subroutine, in preparation for group velocity computation. * /home/a/stevenj/Repository/mpb/doc/user-ref.html, /home/a/stevenj/Repository/mpb/doc/user-tutorial.html: added cross-refs * /home/a/stevenj/Repository/mpb/doc/user-ref.html: documented coordinate conversion functions from libgeom in libctl-1.2 2000-03-15 Steven G. Johnson * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c: slightly simpler phase-fixing algorithm (don't discriminate between components). * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c: removed debugging printf * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in: Added fix-field-phase function (currently undocumented), based on a suggestion by Doug Allan. 2000-03-14 Steven G. Johnson * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c: be sure to do sums, etcetera, over all processors * /home/a/stevenj/Repository/mpb/utils/mpb-data.c: bug fix in outputing imag. part range (thanks to Doug Allan). 2000-03-08 Steven G. Johnson * /home/a/stevenj/Repository/mpb/doc/license.html: clarification * /home/a/stevenj/Repository/mpb/doc/license.html: added suggested reference 2000-02-28 Steven G. Johnson * /home/a/stevenj/Repository/mpb/doc/analysis-tutorial.html: addressed FAQ on fcc lattice units 2000-02-22 Steven G. Johnson * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: got rid of debugging printf 2000-02-14 Steven G. Johnson * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: sum times over processors, and a couple of other cleanups * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: fixed comment * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.h: Corrected operation counts when projecting the preconditioning. Changed some flag names and orderings, and added EIGS_FORCE_APPROX_LINMIN. * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: added documentation for linmin * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: pass correct U to eigensolver_get_eigenvals_aux 2000-02-13 Steven G. Johnson * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.h: added adaptive algorithm choice * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c: don't precondition when randomizing fields (it doesn't really seem to help). * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.h: Added approximate (2-point) line minimization. Disabled for now, until the runtime self-optimization code is added. * /home/a/stevenj/Repository/mpb/tests/eigs_test.c, /home/a/stevenj/Repository/mpb/tests/maxwell_test.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver_utils.c, /home/a/stevenj/Repository/mpb/src/matrices/matrices.h, /home/a/stevenj/Repository/mpb/src/matrices/scalar.h, /home/a/stevenj/Repository/mpb/src/matrices/sqmatrix.c, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell.c, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell.h, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_op.c, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_pre.c, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c, /home/a/stevenj/Repository/mpb/src/matrices/Makefile.in, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.h: rewritten eigensolver 2000-02-12 Steven G. Johnson * /home/a/stevenj/Repository/mpb/NEWS: noted change in mpb-data * /home/a/stevenj/Repository/mpb/ChangeLog, /home/a/stevenj/Repository/mpb/NEWS, /home/a/stevenj/Repository/mpb/configure.in: bumped version * /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_pre.c: Yikes! Bug fix in zparity stuff for even nz!! 2000-02-12 stevenj * /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_pre.c: Yikes! Bug fix in zparity stuff for even nz!! 2000-02-09 stevenj * /home/a/stevenj/Repository/mpb/doc/user-ref.html: documented band-range-data output var * /home/a/stevenj/Repository/mpb/ChangeLog: updated * /home/a/stevenj/Repository/mpb/NEWS: noted changes * /home/a/stevenj/Repository/mpb/NEWS: noted --without-hdf5 fix * /home/a/stevenj/Repository/mpb/configure.in: Warn user if -lhdf5 is found but hdf5.h is not (probably an error). * /home/a/stevenj/Repository/mpb/src/matrixio/matrixio.c, /home/a/stevenj/Repository/mpb/utils/mpb-data.c: fixed compilation --without-hdf5 Wed Feb 9 23:14:45 2000 Steven G. Johnson * NEWS: noted changes * NEWS: noted --without-hdf5 fix * configure.in: Warn user if -lhdf5 is found but hdf5.h is not (probably an error). * src/matrixio/matrixio.c, utils/mpb-data.c: fixed compilation --without-hdf5 Tue Feb 8 06:40:20 2000 Steven G. Johnson * doc/user-tutorial.html: slight clarifications Mon Feb 7 02:30:24 2000 Steven G. Johnson * doc/analysis-tutorial.html: updated run time for diamond lattice * doc/user-ref.html: slight clarification Sun Feb 6 02:43:38 2000 Steven G. Johnson * src/matrixio/matrixio.c, src/matrixio/matrixio.h, utils/mpb-data.c: creating a dataset deletes pre-existing ones Sat Feb 5 22:03:02 2000 Steven G. Johnson * configure.in: updated to check for ATLAS 3.0 libraries. Fri Feb 4 01:37:35 2000 Steven G. Johnson * doc/user-ref.html: document current-k variable Tue Feb 1 03:30:58 2000 Steven G. Johnson * doc/analysis-tutorial.html: fixed typo * doc/tri-rods-ez8.gif, doc/tri-rods-ez1.gif, doc/tri-rods-ez2.gif, doc/tri-rods-ez3.gif, doc/tri-rods-ez4.gif, doc/tri-rods-ez5.gif, doc/tri-rods-ez6.gif, doc/tri-rods-ez7.gif: updated to use h5topng 1.3.4 images (much nicer contour lines). * doc/analysis-tutorial.html: noted random phase Sat Jan 29 19:34:56 2000 Steven G. Johnson * mpb-ctl/mpb.scm.in: output band range data * utils/mpb-data.c: Fixed -d help in -h info. * mpb-ctl/mpb.1: small change Sat Jan 29 02:36:46 2000 Steven G. Johnson * doc/user-tutorial.html: mentioned data analysis tutorial * doc/analysis-tutorial.html: grammar fix * doc/analysis-tutorial.html: slight change * src/matrixio/matrixio.c, src/matrixio/matrixio.h, utils/mpb-data.c: Handle case of trying to create dataset where one already exists. * mpb-ctl/examples/diamond.ctl, mpb-ctl/examples/tri-rods.ctl: updated for data analysis tutorial * doc/user-tutorial.html, doc/tri-rods-eps-2.gif, doc/tri-rods-ez1.gif, doc/tri-rods-ez2.gif, doc/tri-rods-ez3.gif, doc/tri-rods-ez4.gif, doc/tri-rods-ez5.gif, doc/tri-rods-ez6.gif, doc/tri-rods-ez7.gif, doc/tri-rods-ez8.gif, doc/user-ref.html, doc/diamond-b3-eps.gif, doc/diamond-b3.gif, doc/diamond-bands.gif, doc/diamond-eps.gif, doc/index.html, doc/tri-rods-bands.gif, doc/tri-rods-eps-1.gif, doc/analysis-tutorial.html, doc/diamond-b1-eps.gif, doc/diamond-b1.gif: added data analysis tutorial Fri Jan 28 20:11:25 2000 Steven G. Johnson * doc/user-tutorial.html: minor change * doc/installation.html: noted that PATH may need to be updated, and some other small changes * doc/installation.html: noted make distclean * doc/installation.html: slight formatting fix * doc/installation.html: Added section reviewing how to set up installation paths, etcetera. * mpb-ctl/examples/diamond.ctl: added diamond (fcc) lattice example * mpb-ctl/mpb.scm.in: report elapsed time for initialization * mpb-ctl/mpb.scm.in: fixed display-eigensolver-stats for num-runs=0 * mpb-ctl/examples/tutorial.ctl, doc/user-tutorial.html: use output-at-kpoint in tutorial * doc/user-ref.html: Documented output-at-kpoint. Thu Jan 27 23:57:50 2000 Steven G. Johnson * mpb-ctl/examples/hole-slab.ctl, mpb-ctl/mpb.scm.in: Added output-at-kpoint function. * mpb-ctl/mpb.1, utils/mpb-data.1, mpb-ctl/Makefile.in: added mpb man page * mpb-ctl/mpb.c, src/matrixio/evectmatrixio.c, src/matrixio/matrixio.c, src/matrixio/matrixio.h, utils/Makefile.in, utils/mpb-data.1, utils/mpb-data.c, Makefile.in, TODO, configure.in, mpb-ctl/epsilon_file.c: Added mpb-data utility, so we can finally unskew datasets (and more). * src/matrixio/matrixio.c: Suppress HDF5 error messages if we try to read a nonexistent dataset; just return NULL. * mpb-ctl/mpb.c: write out Bloch wavevector in reciprocal, not cartesian, basis. * mpb-ctl/Makefile.in, tests/Makefile.in, src/matrices/Makefile.in, src/matrixio/Makefile.in, src/maxwell/Makefile.in, src/util/Makefile.in: set SHELL * mpb-ctl/epsilon_file.c, src/matrixio/evectmatrixio.c, src/matrixio/matrixio.c, src/matrixio/matrixio.h: Added attribute-reading code, and made it possible to check at runtime if a dataset exists in a file (by returning an NULL instead of dying if the dataset doesn't exist when we try to read it). Wed Jan 26 17:40:56 2000 Steven G. Johnson * src/maxwell/maxwell_pre.c: zparity and run-even/odd now work correctly for 2d grids. zparity calculation is also now ready for use with MPI. * doc/user-ref.html: fixed typo * mpb-ctl/examples/tutorial.ctl, mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in, src/maxwell/maxwell.h, src/maxwell/maxwell_eps.c, tests/maxwell_test.c, doc/user-ref.html, doc/user-tutorial.html, mpb-ctl/epsilon_file.c: added anisotropic dielectrics Sat Jan 22 05:57:27 2000 Steven G. Johnson * mpb-ctl/mpb.scm.in: Fixed bug in output-dpwr-in-objects. Thanks to Mihai Ibanescu for the bug report. Fri Jan 21 02:18:28 2000 Steven G. Johnson * src/matrixio/matrixio.h, doc/user-tutorial.html, mpb-ctl/mpb.c, src/matrixio/fieldio.c, src/matrixio/matrixio.c: output all components in one h5 file * doc/developer.html: fixed typo * src/matrixio/fieldio.c, src/matrixio/matrixio.c, src/matrixio/matrixio.h, mpb-ctl/mpb.c: tag output datasets with k & R attributes Mon Jan 17 03:00:19 2000 Steven G. Johnson * doc/license.html: yet more felicitous translation * doc/license.html: more felicitous translation * doc/user-tutorial.html: fixed typo Fri Jan 14 21:33:21 2000 Steven G. Johnson * mpb-ctl/Makefile.in, src/matrices/Makefile.in, src/matrixio/Makefile.in, src/maxwell/Makefile.in, src/util/Makefile.in, tests/Makefile.in, Makefile.in, configure.in, doc/installation.html: INCLUDES -> CPPFLAGS Wed Jan 12 02:02:09 2000 Steven G. Johnson * mpb-ctl/Makefile.in: Added dependency rule to ensure ctl-io.h is created before main.o is built. Thanks to Christoph Becher for the bug report. * Makefile.in: Need to set the SHELL in the Makefile for non-GNU makes. Thanks to Christoph Becher for the bug report. Tue Jan 11 21:04:51 2000 Steven G. Johnson * doc/user-ref.html: user-ref.html Fri Jan 7 18:35:12 2000 Steven G. Johnson * configure.in, mpb-ctl/mpb.c, NEWS: 0.9.1 eigensolver bugfix (yikes!) Tue Jan 4 05:52:41 2000 Steven G. Johnson * mpb-ctl/mpb.c: noted units of reciprocal lattice vectors in output * NEWS: noted filename-prefix fix * mpb-ctl/mpb.c: bug fix...prefix goes *before* filename; thanks to Karl Koch. Sun Jan 2 17:29:20 2000 Steven G. Johnson * ChangeLog: updated * doc/user-tutorial.html: slight fix * NEWS: noted more changes * doc/user-tutorial.html: noted polarization (e.g. ".te") in the output filenames. * doc/user-tutorial.html: slight rewording * NEWS, configure.in: version-numbering scheme is now 0.8, 0.9, 0.10, ... * doc/introduction.html: small formatting fix * TODO: updated * NEWS: slight rewording * NEWS: added version number to NEWS * NEWS: removed inconsistent parens * mpb-ctl/mpb.scm.in, NEWS, doc/user-ref.html, mpb-ctl/mpb.c: added z-parity output var * src/maxwell/maxwell_pre.c: fixed counting bug in zparity computation * NEWS, configure.in: configure works without f77 compiler, hopefully Sat Jan 1 23:50:31 2000 Steven G. Johnson * tests/maxwell_test.c, src/util/check.h, src/util/debug_malloc.c, src/util/fortranize.h, src/util/mpi_utils.c, src/util/mpi_utils.h, src/util/mpiglue.h, tests/blastest.c, tests/eigs_test.c, tests/malloctest.c, src/matrixio/matrixio.c, src/matrixio/matrixio.h, src/maxwell/maxwell.c, src/maxwell/maxwell.h, src/maxwell/maxwell_eps.c, src/maxwell/maxwell_op.c, src/maxwell/maxwell_pre.c, src/matrices/blasglue.h, src/matrices/eigensolver.c, src/matrices/eigensolver.h, src/matrices/evectmatrix.c, src/matrices/matrices.c, src/matrices/matrices.h, src/matrices/scalar.h, src/matrices/sqmatrix.c, src/matrixio/evectmatrixio.c, src/matrixio/fieldio.c, doc/license.html, mpb-ctl/epsilon_file.c, mpb-ctl/mpb.c, mpb-ctl/mpb.h, mpb-ctl/mpb.scm.in, src/matrices/blasglue.c, COPYRIGHT: bumped copyright year * NEWS, configure.in: bumped version and went to 2-digit minor version numbers * mpb-ctl/examples/hole-slab.ctl, mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in, src/maxwell/maxwell.c, src/maxwell/maxwell.h, src/maxwell/maxwell_pre.c, NEWS, doc/user-ref.html: added run-even and run-odd Tue Dec 14 02:43:57 1999 Steven G. Johnson * doc/user-ref.html: defined reciprocal lattice * doc/license.html: slight wording change in quotation * doc/license.html: better translation Mon Dec 13 23:55:56 1999 Steven G. Johnson * doc/license.html: added St. Augustine quote Thu Dec 9 00:11:11 1999 Steven G. Johnson * doc/acknowledgments.html: slight fix Sun Dec 5 21:07:58 1999 Steven G. Johnson * doc/installation.html: various improvements Fri Dec 3 20:03:56 1999 Steven G. Johnson * mpb-ctl/examples/hole-slab.ctl: fixed substrate * mpb-ctl/examples/hole-slab.ctl: allow substrate * mpb-ctl/examples/tri-holes.ctl: Added 2d triangular lattice of holes example. Thu Dec 2 06:40:01 1999 Steven G. Johnson * doc/user-tutorial.html: warned of false-positives in band gaps * tests/maxwell_test.c, src/util/check.h, tests/eigs_test.c, tests/malloctest.c, src/matrixio/matrixio.c, src/maxwell/maxwell.c, src/matrices/matrices.c, src/matrices/sqmatrix.c, src/matrixio/fieldio.c, mpb-ctl/mpb.c, src/matrices/eigensolver.c, mpb-ctl/epsilon_file.c: Use CHK_MALLOC everywhere. For one thing, this prevents problems when we allocate 0 bytes on systems where malloc(0) returns NULL. * mpb-ctl/mpb.scm.in, mpb-ctl/mpb.c: handle num-bands = 0 Wed Dec 1 04:04:48 1999 Steven G. Johnson * src/matrices/eigensolver.h: enable delay-cg by default * src/matrices/eigensolver.c: print warning in verbose mode for large lambda * mpb-ctl/mpb.scm.in: fixed median bug for odd sizes * mpb-ctl/examples/hole-slab.ctl, mpb-ctl/examples/sq-rods.ctl, mpb-ctl/mpb.scm.in, doc/user-ref.html: added display-eigensolver-stats * src/matrices/eigensolver.c, src/matrices/eigensolver.h: added EIGS_DELAY_CG flag...don't enable by default until we do more tuning Tue Nov 30 23:47:35 1999 Steven G. Johnson * src/matrices/eigensolver.c: don't use cg with analytic multimin (multimin screws up cg) (because of this, multimin is probably not worth it) * tests/maxwell_test.c: got rid of gcc warning * mpb-ctl/mpb.c: randomize-fields now randomizes both the real and imaginary parts. Previously, it just set the imaginary parts to zero (which is fine for structures with inversion symmetry, but in general cases I don't see any justification for it). * src/matrices/eigensolver.c: verbose mode now prints out trace on every iteration. Mon Nov 29 22:00:23 1999 Steven G. Johnson * NEWS, ChangeLog: updated * mpb-ctl/Makefile.in: fixed trailing spaces in sed command; thanks to Ron Chase for the bug report. * mpb-ctl/Makefile.in, tests/Makefile.in, configure.in: incorporate FLIBS into LIBS * doc/installation.html: more explicit instructions for LAPACK and BLAS. Thu Nov 25 06:25:09 1999 Steven G. Johnson * mpb-ctl/epsilon_file.c: minor improvements, mostly to comments * src/matrices/eigensolver.c: get rid of warning * src/matrices/eigensolver.c: don't redeclare lambda (also gets rid of possiblity of prev_lambda being assigned to undefined variable) * Makefile.in: added 'make snapshot' * doc/user-ref.html: slight rewording * src/maxwell/maxwell_eps.c, src/matrixio/matrixio.c, src/matrixio/matrixio.h, src/maxwell/maxwell.h, mpb-ctl/mpb.h, mpb-ctl/mpb.scm.in, src/matrixio/evectmatrixio.c, mpb-ctl/Makefile.in, mpb-ctl/epsilon_file.c, mpb-ctl/mpb.c, doc/user-ref.html: added epsilon-input-file input var Wed Nov 24 05:05:48 1999 Steven G. Johnson * mpb-ctl/mpb.scm.in, configure.in, mpb-ctl/mpb.c: added eigensolver-flags input variable * src/matrices/evectmatrix.c, src/matrices/matrices.c, src/matrices/matrices.h, src/matrices/eigensolver.c, src/matrices/eigensolver.h: Added EIGS_ANALYTIC_MULTIMIN, but don't enable by default until I can fix the convergence. (Maybe by implementing a generalized conjugacy condition for conjugate gradient?) * src/matrices/eigensolver.c: commented on non-storage of U and YtAYU; also changed iteration counter to be 1-based in verbose mode * src/matrices/matrices.h, src/matrices/scalar.h, src/matrices/evectmatrix.c, src/matrices/matrices.c, src/matrices/eigensolver.c: optimized when matrices are diagonal Mon Nov 22 05:12:35 1999 Steven G. Johnson * configure.in: bumped version * NEWS: noted (scheduled) 0.8.1 release. * doc/introduction.html: added comparison with time-domain Sun Nov 21 17:59:22 1999 Steven G. Johnson * mpb-ctl/examples/hole-slab.ctl, mpb-ctl/examples/tutorial.ctl, doc/user-tutorial.html, mpb-ctl/mpb.scm.in, doc/user-ref.html, NEWS: output-hfieldz, etc -> output-hfield-z; also use these functions in tutorial * NEWS: noted changes * src/matrixio/matrixio.c: speed up saving non-contiguous data * mpb-ctl/mpb.scm.in, doc/user-ref.html: added output-field[xyz] and friends * src/matrixio/matrixio.h, mpb-ctl/mpb.scm.in, src/matrixio/fieldio.c, mpb-ctl/mpb.c: Sped up phase calculations in field output (but to no avail, it seems), and set things up for outputting only a single component of a vector field. * NEWS: fixed typo * doc/user-ref.html, mpb-ctl/mpb.scm.in, NEWS: added output-copies variable 2000-01-02 stevenj * /home/a/stevenj/Repository/mpb/doc/user-tutorial.html: slight fix * /home/a/stevenj/Repository/mpb/NEWS: noted more changes * /home/a/stevenj/Repository/mpb/doc/user-tutorial.html: noted polarization (e.g. ".te") in the output filenames. * /home/a/stevenj/Repository/mpb/doc/user-tutorial.html: slight rewording * /home/a/stevenj/Repository/mpb/NEWS, /home/a/stevenj/Repository/mpb/configure.in: version-numbering scheme is now 0.8, 0.9, 0.10, ... * /home/a/stevenj/Repository/mpb/doc/introduction.html: small formatting fix * /home/a/stevenj/Repository/mpb/TODO: updated * /home/a/stevenj/Repository/mpb/NEWS: slight rewording * /home/a/stevenj/Repository/mpb/NEWS: added version number to NEWS * /home/a/stevenj/Repository/mpb/NEWS: removed inconsistent parens * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/a/stevenj/Repository/mpb/NEWS, /home/a/stevenj/Repository/mpb/doc/user-ref.html, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c: added z-parity output var * /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_pre.c: fixed counting bug in zparity computation * /home/a/stevenj/Repository/mpb/NEWS, /home/a/stevenj/Repository/mpb/configure.in: configure works without f77 compiler, hopefully 2000-01-01 stevenj * /home/a/stevenj/Repository/mpb/tests/maxwell_test.c, /home/a/stevenj/Repository/mpb/src/util/check.h, /home/a/stevenj/Repository/mpb/src/util/debug_malloc.c, /home/a/stevenj/Repository/mpb/src/util/fortranize.h, /home/a/stevenj/Repository/mpb/src/util/mpi_utils.c, /home/a/stevenj/Repository/mpb/src/util/mpi_utils.h, /home/a/stevenj/Repository/mpb/src/util/mpiglue.h, /home/a/stevenj/Repository/mpb/tests/blastest.c, /home/a/stevenj/Repository/mpb/tests/eigs_test.c, /home/a/stevenj/Repository/mpb/tests/malloctest.c, /home/a/stevenj/Repository/mpb/src/matrixio/matrixio.c, /home/a/stevenj/Repository/mpb/src/matrixio/matrixio.h, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell.c, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell.h, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_eps.c, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_op.c, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_pre.c, /home/a/stevenj/Repository/mpb/src/matrices/blasglue.h, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.h, /home/a/stevenj/Repository/mpb/src/matrices/evectmatrix.c, /home/a/stevenj/Repository/mpb/src/matrices/matrices.c, /home/a/stevenj/Repository/mpb/src/matrices/matrices.h, /home/a/stevenj/Repository/mpb/src/matrices/scalar.h, /home/a/stevenj/Repository/mpb/src/matrices/sqmatrix.c, /home/a/stevenj/Repository/mpb/src/matrixio/evectmatrixio.c, /home/a/stevenj/Repository/mpb/src/matrixio/fieldio.c, /home/a/stevenj/Repository/mpb/doc/license.html, /home/a/stevenj/Repository/mpb/mpb-ctl/epsilon_file.c, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.h, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/a/stevenj/Repository/mpb/src/matrices/blasglue.c, /home/a/stevenj/Repository/mpb/COPYRIGHT: bumped copyright year * /home/a/stevenj/Repository/mpb/NEWS, /home/a/stevenj/Repository/mpb/configure.in: bumped version and went to 2-digit minor version numbers * /home/a/stevenj/Repository/mpb/mpb-ctl/examples/hole-slab.ctl, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell.c, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell.h, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_pre.c, /home/a/stevenj/Repository/mpb/NEWS, /home/a/stevenj/Repository/mpb/doc/user-ref.html: added run-even and run-odd 1999-12-14 stevenj * /home/a/stevenj/Repository/mpb/doc/user-ref.html: defined reciprocal lattice * /home/a/stevenj/Repository/mpb/doc/license.html: slight wording change in quotation * /home/a/stevenj/Repository/mpb/doc/license.html: better translation 1999-12-13 stevenj * /home/a/stevenj/Repository/mpb/doc/license.html: added St. Augustine quote 1999-12-09 stevenj * /home/a/stevenj/Repository/mpb/doc/acknowledgments.html: slight fix 1999-12-05 stevenj * /home/a/stevenj/Repository/mpb/doc/installation.html: various improvements 1999-12-03 stevenj * /home/a/stevenj/Repository/mpb/mpb-ctl/examples/hole-slab.ctl: fixed substrate * /home/a/stevenj/Repository/mpb/mpb-ctl/examples/hole-slab.ctl: allow substrate * /home/a/stevenj/Repository/mpb/mpb-ctl/examples/tri-holes.ctl: Added 2d triangular lattice of holes example. 1999-12-02 stevenj * /home/a/stevenj/Repository/mpb/doc/user-tutorial.html: warned of false-positives in band gaps * /home/a/stevenj/Repository/mpb/tests/maxwell_test.c, /home/a/stevenj/Repository/mpb/src/util/check.h, /home/a/stevenj/Repository/mpb/tests/eigs_test.c, /home/a/stevenj/Repository/mpb/tests/malloctest.c, /home/a/stevenj/Repository/mpb/src/matrixio/matrixio.c, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell.c, /home/a/stevenj/Repository/mpb/src/matrices/matrices.c, /home/a/stevenj/Repository/mpb/src/matrices/sqmatrix.c, /home/a/stevenj/Repository/mpb/src/matrixio/fieldio.c, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c, /home/a/stevenj/Repository/mpb/mpb-ctl/epsilon_file.c: Use CHK_MALLOC everywhere. For one thing, this prevents problems when we allocate 0 bytes on systems where malloc(0) returns NULL. * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c: handle num-bands = 0 1999-12-01 stevenj * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.h: enable delay-cg by default * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: print warning in verbose mode for large lambda * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in: fixed median bug for odd sizes * /home/a/stevenj/Repository/mpb/mpb-ctl/examples/hole-slab.ctl, /home/a/stevenj/Repository/mpb/mpb-ctl/examples/sq-rods.ctl, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/a/stevenj/Repository/mpb/doc/user-ref.html: added display-eigensolver-stats * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.h: added EIGS_DELAY_CG flag...don't enable by default until we do more tuning 1999-11-30 stevenj * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: don't use cg with analytic multimin (multimin screws up cg) (because of this, multimin is probably not worth it) * /home/a/stevenj/Repository/mpb/tests/maxwell_test.c: got rid of gcc warning * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c: randomize-fields now randomizes both the real and imaginary parts. Previously, it just set the imaginary parts to zero (which is fine for structures with inversion symmetry, but in general cases I don't see any justification for it). * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: verbose mode now prints out trace on every iteration. 1999-11-29 stevenj * /home/a/stevenj/Repository/mpb/NEWS, /home/a/stevenj/Repository/mpb/ChangeLog: updated * /home/a/stevenj/Repository/mpb/mpb-ctl/Makefile.in: fixed trailing spaces in sed command; thanks to Ron Chase for the bug report. * /home/a/stevenj/Repository/mpb/mpb-ctl/Makefile.in, /home/a/stevenj/Repository/mpb/tests/Makefile.in, /home/a/stevenj/Repository/mpb/configure.in: incorporate FLIBS into LIBS * /home/a/stevenj/Repository/mpb/doc/installation.html: more explicit instructions for LAPACK and BLAS. 1999-11-29 stevenj * /home/a/stevenj/Repository/mpb/mpb-ctl/Makefile.in: fixed trailing spaces in sed command; thanks to Ron Chase for the bug report. * /home/a/stevenj/Repository/mpb/mpb-ctl/Makefile.in, /home/a/stevenj/Repository/mpb/tests/Makefile.in, /home/a/stevenj/Repository/mpb/configure.in: incorporate FLIBS into LIBS * /home/a/stevenj/Repository/mpb/doc/installation.html: more explicit instructions for LAPACK and BLAS. 1999-11-25 stevenj * /home/a/stevenj/Repository/mpb/mpb-ctl/epsilon_file.c: minor improvements, mostly to comments * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: get rid of warning * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: don't redeclare lambda (also gets rid of possiblity of prev_lambda being assigned to undefined variable) * /home/a/stevenj/Repository/mpb/Makefile.in: added 'make snapshot' * /home/a/stevenj/Repository/mpb/doc/user-ref.html: slight rewording * /home/a/stevenj/Repository/mpb/src/maxwell/maxwell_eps.c, /home/a/stevenj/Repository/mpb/src/matrixio/matrixio.c, /home/a/stevenj/Repository/mpb/src/matrixio/matrixio.h, /home/a/stevenj/Repository/mpb/src/maxwell/maxwell.h, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.h, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/a/stevenj/Repository/mpb/src/matrixio/evectmatrixio.c, /home/a/stevenj/Repository/mpb/mpb-ctl/Makefile.in, /home/a/stevenj/Repository/mpb/mpb-ctl/epsilon_file.c, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c, /home/a/stevenj/Repository/mpb/doc/user-ref.html: added epsilon-input-file input var 1999-11-24 stevenj * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/a/stevenj/Repository/mpb/configure.in, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c: added eigensolver-flags input variable * /home/a/stevenj/Repository/mpb/src/matrices/evectmatrix.c, /home/a/stevenj/Repository/mpb/src/matrices/matrices.c, /home/a/stevenj/Repository/mpb/src/matrices/matrices.h, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.h: Added EIGS_ANALYTIC_MULTIMIN, but don't enable by default until I can fix the convergence. (Maybe by implementing a generalized conjugacy condition for conjugate gradient?) * /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: commented on non-storage of U and YtAYU; also changed iteration counter to be 1-based in verbose mode * /home/a/stevenj/Repository/mpb/src/matrices/matrices.h, /home/a/stevenj/Repository/mpb/src/matrices/scalar.h, /home/a/stevenj/Repository/mpb/src/matrices/evectmatrix.c, /home/a/stevenj/Repository/mpb/src/matrices/matrices.c, /home/a/stevenj/Repository/mpb/src/matrices/eigensolver.c: optimized when matrices are diagonal 1999-11-22 stevenj * /home/a/stevenj/Repository/mpb/configure.in: bumped version * /home/a/stevenj/Repository/mpb/NEWS: noted (scheduled) 0.8.1 release. * /home/a/stevenj/Repository/mpb/doc/introduction.html: added comparison with time-domain 1999-11-21 stevenj * /home/a/stevenj/Repository/mpb/mpb-ctl/examples/hole-slab.ctl, /home/a/stevenj/Repository/mpb/mpb-ctl/examples/tutorial.ctl, /home/a/stevenj/Repository/mpb/doc/user-tutorial.html, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/a/stevenj/Repository/mpb/doc/user-ref.html, /home/a/stevenj/Repository/mpb/NEWS: output-hfieldz, etc -> output-hfield-z; also use these functions in tutorial * /home/a/stevenj/Repository/mpb/NEWS: noted changes * /home/a/stevenj/Repository/mpb/src/matrixio/matrixio.c: speed up saving non-contiguous data * /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/a/stevenj/Repository/mpb/doc/user-ref.html: added output-field[xyz] and friends * /home/a/stevenj/Repository/mpb/src/matrixio/matrixio.h, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/a/stevenj/Repository/mpb/src/matrixio/fieldio.c, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.c: Sped up phase calculations in field output (but to no avail, it seems), and set things up for outputting only a single component of a vector field. * /home/a/stevenj/Repository/mpb/NEWS: fixed typo * /home/a/stevenj/Repository/mpb/doc/user-ref.html, /home/a/stevenj/Repository/mpb/mpb-ctl/mpb.scm.in, /home/a/stevenj/Repository/mpb/NEWS: added output-copies variable Fri Nov 19 00:45:13 1999 Steven G. Johnson * TODO: updated and cleaned up a bit * doc/license.html, doc/user-tutorial.html: noted example ctl files * mpb-ctl/examples/hole-slab.ctl: output hfield instead of dpwr. * mpb-ctl/examples/hole-slab.ctl: added hole-slab example Thu Nov 18 20:43:17 1999 Steven G. Johnson * configure.in: don't look in ../libctl and print error if libctl not found * src/matrices/eigensolver.c: flush iteration output * mpb-ctl/mpb.scm.in, doc/user-ref.html: added current-k global * mpb-ctl/mpb.c: print out geometry box tree in --verbose mode * mpb-ctl/examples/sq-rods.ctl: slight cleanup * mpb-ctl/examples/bragg.ctl, mpb-ctl/examples/sq-rods.ctl: updated examples * doc/user-tutorial.html: recommend using mpb foo.ctl >& foo.out so that foo.out catches errors. * Makefile.in: added 'make dist' target * mpb-ctl/mpb.c: explained that hack from 1.32 was to get good convergence. * mpb-ctl/mpb.c: hack: for some reason I don't comprehend, it is necessary to re-randomize the fields before doing a zero-k point, at least with the new "analytic" linmin in eigensolver.c. Hey, it works, and it can't do any harm. * configure.in: bumped beta version number * src/matrices/sqmatrix.c: Added explanatory comment to sqmatrix_AeBC, noting the probable relative efficiency of various operations. * src/matrices/eigensolver.c: tiny fix in comment * src/matrices/eigensolver.h, src/matrices/eigensolver.c: Added "analytic" line minimization based on exact minimization of rigorous expansion of the functional for small displacements (truly exact for p=1). Also cleaned up eigensolver code a bit, giving generic names to matrices UYtAYU and Usqrt that were being used for lots of random things. Wed Nov 17 23:56:34 1999 Steven G. Johnson * doc/user-ref.html: grammar fix * doc/introduction.html: link to feature list at MPB home page. * doc/index.html: slight wording change * doc/index.html, README: noted author * doc/license.html: gnu web page -> gnu web site * doc/user-tutorial.html, mpb-ctl/mpb.c: sumfrq -> freqs, etcetera * mpb-ctl/mpb.scm.in: interactive -> interactive? * src/maxwell/maxwell_pre.c, src/maxwell/maxwell.c, src/maxwell/maxwell.h, mpb-ctl/mpb.c: Put in special-case code for k ~ 0 lowest bands (constant fields), to fix problems with slow convergence. * src/matrices/eigensolver.c, src/matrices/eigensolver.h, mpb-ctl/mpb.c: Added constraint "chaining" utilities. Tue Nov 16 07:10:08 1999 Steven G. Johnson * src/matrices/eigensolver.c: renamed check variable (don't reuse E2--bad style) * doc/user-ref.html, doc/user-tutorial.html: noted that 2d grid does not mean k is 2d * doc/developer.html: -> , and fixed missing close tag (why have I been closing everything with ?) * mpb-ctl/mpb.c: added missing return statements in error code Mon Nov 15 23:51:42 1999 Steven G. Johnson * TODO: we can't add HDF4 support because the HDF4 license conflicts with the GPL * TODO: updated; we now restart CG every 100 iterations * mpb-ctl/mpb.c: Use EIGS_VERBOSE flag when run with --verbose. We should probably print even more output than we already do with this flag. * configure.in: Fixed version number. * mpb-ctl/mpb.c, mpb-ctl/mpb.scm.in, doc/user-ref.html: Added "deterministic?" and "iterations" input and output variables. * src/matrices/eigensolver.h, src/util/mpiglue.h, src/matrices/eigensolver.c: Periodically print feedback in eigensolver, even when EIGS_VERBOSE is not set, if the user is kept waiting more than a couple of seconds. Also, implement resetting of CG direction every 100 iters (determined by some experimentation with the 5x5 defect). Sun Nov 14 20:29:37 1999 Steven G. Johnson * tests/eigs_test.c, tests/malloctest.c, tests/maxwell_test.c, src/util/mpi_utils.h, src/util/mpiglue.h, tests/blastest.c, src/util/check.h, src/util/debug_malloc.c, src/util/fortranize.h, src/util/mpi_utils.c, src/maxwell/maxwell_eps.c, src/maxwell/maxwell_op.c, src/maxwell/maxwell_pre.c, src/maxwell/maxwell.c, src/maxwell/maxwell.h, src/matrixio/evectmatrixio.c, src/matrixio/fieldio.c, src/matrixio/matrixio.c, src/matrixio/matrixio.h, src/matrices/matrices.h, src/matrices/scalar.h, src/matrices/sqmatrix.c, src/matrices/eigensolver.h, src/matrices/evectmatrix.c, src/matrices/matrices.c, src/matrices/blasglue.c, src/matrices/blasglue.h, src/matrices/eigensolver.c, COPYRIGHT, mpb-ctl/mpb.c: fixed indenting in COPYRIGHT * mpb-ctl/Makefile.in, mpb-ctl/mpb.c, doc/installation.html, doc/user-tutorial.html, configure.in, doc/developer.html, doc/index.html, README, TODO, Makefile.in: Great Renaming II: we are now MPB * doc/index.html: noted mpb-discuss mailing list. * configure.in: check for -lcxml in addition to -ldxml (name changed due to acquisition by Compaq). Fri Nov 12 20:46:38 1999 Steven G. Johnson * photon-ctl/photon.scm.in: Removed begin-time macro (moved it to libctl). * src/matrixio/matrixio.c, src/matrixio/matrixio.h, src/config.h.in, src/matrixio/evectmatrixio.c, src/matrixio/fieldio.c, TODO, configure.in: Added --without-hdf5 option (automatic when hdf5 libraries are not found). * TODO: added some items * TODO, configure.in: Fixed linking to ESSL on AIX. * src/util/fortranize.h: don't need to define NO_FORTRAN_FUNCTIONS here on AIX, since it's detected by configure. Thu Nov 11 03:01:28 1999 Steven G. Johnson * configure.in, doc/installation.html: Added --with-fastblas= to try linking with -l. * doc/developer.html, doc/introduction.html, doc/acknowledgments.html: Several updates. * tests/maxwell_test.c, src/maxwell/maxwell_op.c, src/maxwell/maxwell_pre.c, tests/eigs_test.c, src/matrices/eigensolver.c, src/matrices/eigensolver.h, src/maxwell/maxwell.h, photon-ctl/photon.c, photon-ctl/photon.scm.in, TODO, doc/user-ref.html: Implemented fancy preconditioner. Also made different eigensolver iteration schemes into runtime flags (instead of preprocessor #ifdefs). Wed Nov 3 23:14:56 1999 Steven G. Johnson * photon-ctl/photon.scm.in: added elapsed time output Mon Nov 1 22:52:13 1999 Steven G. Johnson * TODO: updated to reflect recent improvements Tue Oct 26 00:54:42 1999 Steven G. Johnson * doc/developer.html: Fixed missing tags. * photon-ctl/examples/tutorial.ctl, doc/user-ref.html, doc/user-tutorial.html: Tutorial revisions, mainly to reflect new mesh size. * photon-ctl/photon.scm.in: Use default mesh of 3, like Fortran code. Mon Oct 25 21:06:14 1999 Steven G. Johnson * doc/developer.html: Wrote first-draft developer section. * doc/introduction.html: small change Thu Oct 21 22:06:28 1999 Steven G. Johnson * photon-ctl/photon.c: Use new geom_fix_objects and geom_box_tree routines...the latter greatly speed up dielectric function calculation!! Wed Oct 20 22:45:55 1999 Steven G. Johnson * photon-ctl/photon.scm.in, configure.in: Added code to activate readline in Guile 1.3.2+. Also shuffled around BLAS libraries somewhat. Try the atlas library, and stop checking for BLAS libraries after we find one. Tue Oct 19 00:30:28 1999 Steven G. Johnson * photon-ctl/examples/tutorial.ctl: added comments to output. Mon Oct 18 19:25:58 1999 Steven G. Johnson * photon-ctl/examples/tutorial.ctl: Added file of commands from the User Tutorial (in the manual). Wed Oct 13 23:11:28 1999 Steven G. Johnson * configure.in: Fixed bug when gcc and/or Guile are installed in non-standard directories. Fri Oct 1 19:44:34 1999 Steven G. Johnson * src/matrices/blasglue.c: herk routines take only *real* coefficients to multiply matrices by. Thu Sep 30 19:35:50 1999 Steven G. Johnson * photon-ctl/photon.c: Check NWORK size before using W[0], W[1]. Fri Sep 17 00:15:29 1999 Steven G. Johnson * tests/malloctest.c: DEBUG -> DEBUG_MALLOC * src/util/debug_malloc.c, configure.in, src/config.h.in, src/util/check.h: split --enable-debug-malloc into separate flag, added --with-efence, removed a couple of Fortran library checks (should be added automatically by AC_F77_LIBRARY_LDFLAGS), and moved ordering of Guile libs. Thu Sep 16 23:09:22 1999 Steven G. Johnson * tests/eigs_test.c, tests/malloctest.c, tests/maxwell_test.c, src/util/debug_malloc.c, src/util/mpi_utils.c, tests/blastest.c, src/maxwell/maxwell_eps.c, src/maxwell/maxwell_op.c, src/maxwell/maxwell_pre.c, src/matrices/evectmatrix.c, src/matrices/matrices.c, src/matrices/sqmatrix.c, src/maxwell/maxwell.c, src/matrices/blasglue.c, src/matrices/eigensolver.c, configure.in, photon-ctl/photon.c: Changed #include to #include "path/config.h", where path is the appropriate relative path. This way, we can compile on the @#$#@-ing Origin, which includes a file called config.h in one of its system header directories. * src/maxwell/maxwell_eps.c, tests/maxwell_test.c, src/maxwell/Makefile.in, src/maxwell/maxwell.c, src/maxwell/maxwell.h, photon-ctl/photon.c: Separated epsilon tensor calculation into maxwell_eps.c, and compute normal vectors using separate "moment mesh." * photon-ctl/Makefile.in: Rebuild program when libraries change. * photon-ctl/examples/sq-rods.ctl: run-tm, not run. Wed Sep 15 03:05:32 1999 Steven G. Johnson * configure.in: Fixed library detection for SGI. * configure.in: Added more warnings. * tests/blastest.c: Got rid of warning about unused main() params. Tue Sep 14 18:24:59 1999 Steven G. Johnson * tests/Makefile.in, tests/malloctest.c: Added malloctest. * src/util/debug_malloc.c: Noted provenance of debug_malloc and friends. Mon Sep 13 18:45:17 1999 Steven G. Johnson * doc/acknowledgments.html: Fixed ack's. Sun Sep 12 01:47:36 1999 Steven G. Johnson * configure.in: compress test program a little * configure.in: Replaced m4 "dnl" comments with sh "#" comments (this means that they get passed through to the configure script, but so what). Fri Sep 10 23:41:28 1999 Steven G. Johnson * src/matrices/blasglue.c: Reverted changes (which I hadn't meant to commit)--passing args as strings doesn't help things on the $*@#$ alpha. * photon-ctl/Makefile.in: added explanatory comment. * configure.in, photon-ctl/Makefile.in: --program-suffix, etcetera now work. * doc/installation.html: Documented new libctl & photon installation procedure. * configure.in: Added AC_PROG_INSTALL check. * install-sh, config.sub, config.guess: Updated versions of autoconf files. * tests/Makefile.in, src/matrixio/Makefile.in, src/maxwell/Makefile.in, src/util/Makefile.in, photon-ctl/photon.scm.in, src/matrices/Makefile.in, src/matrices/blasglue.c, photon-ctl/Attic/photon.scm, photon-ctl/Makefile.in, photon-ctl/photon.c, Makefile.in, TODO, configure.in: Mirrored changes in libctl (which is now installed in a central location). Also, separated CFLAGS from -I flags (so that CFLAGS can be overridden more easily). configure script now looks for Guile, libctl. Thu Sep 9 18:07:15 1999 Steven G. Johnson * README: Mentioned contact addresses in manual. * README: Refer readers to the manual. * doc/user-ref.html, doc/user-tutorial.html, doc/installation.html, doc/introduction.html, doc/license.html, doc/acknowledgments.html, doc/index.html: Made changes suggested by John. In particular, we are now the "MIT Photonic-Bands" package. * doc/user-tutorial.html: Discussed units. * doc/introduction.html: Made a stab at an introduction. Wed Sep 8 22:12:05 1999 Steven G. Johnson * TODO: Added a couple more items. * doc/acknowledgments.html, doc/developer.html, doc/index.html: Added acknowledgments section. * doc/user-ref.html: Wrote "Field manipulation functions" section. Tue Sep 7 23:28:42 1999 Steven G. Johnson * doc/user-ref.html: put types in font * doc/user-ref.html: Added output functions section. * photon-ctl/photon.scm: Added combine-band-functions. * photon-ctl/photon.scm: Set gap-list to '() if there are 1 or fewer k-points in the run function. * doc/user-ref.html: added more sections. Mon Sep 6 06:26:22 1999 Steven G. Johnson * doc/user-tutorial.html: bug fix * doc/user-tutorial.html: Fixed lie. * doc/user-tutorial.html: grammar fix * doc/user-ref.html: fixed another tag * doc/user-ref.html: fixed tag * doc/user-ref.html: added another link * doc/user-ref.html: small correction * doc/developer.html, doc/user-ref.html: More useful additions. Started on the reference section. * photon-ctl/photon.scm, photon-ctl/photon.c: Split randomize-fields into a separate function; less hackery this way. * photon-ctl/photon.scm, doc/user-tutorial.html, photon-ctl/photon.c: Made it easier to re-run without reinitializing fields. Sun Sep 5 23:48:29 1999 Steven G. Johnson * doc/user-tutorial.html: Added mode-tuning tutorial. * configure.in: Don't prefer vendor cc to gcc (since performance-critical code is in libs). * src/config.h.in, src/matrices/blasglue.c, configure.in: configure now checks to see if function return value from zdotc is okay. * photon-ctl/photon.c: Small fix: hdf output description now includes frequency of correct band. * photon-ctl/photon.c, photon-ctl/photon.scm, TODO: Implemented items on TODO list: dimensions < true_rank should make grid sizes 1 in extra dimensions. Prevent sumte/sumtm/sumfrq header lines from being output when not needed (put in solve-kpoint, when called with kpoint_index == 0, instead of in init_params). Add "filename-prefix" input variable for adding a prefix to all output filenames. Prepend "k" and "b" to k-point and band indices in output filenames. Start band indices with one. * doc/user-tutorial.html: another small change * doc/user-tutorial.html: another small fix * doc/user-tutorial.html: small change * doc/user-tutorial.html: Added point-defect example. * photon-ctl/photon.c: Perform center-shifting correctly now (I hope). * photon-ctl/photon.scm: Only output gaps if there is more than one k point. Sat Sep 4 23:25:59 1999 Steven G. Johnson * TODO, doc/user-tutorial.html, photon-ctl/photon.c: Fixed bug for non-square lattices (G was transposed). * src/util/mpiglue.h, tests/maxwell_test.c, src/matrixio/matrixio.c, src/matrixio/matrixio.h, src/maxwell/maxwell.c, src/matrixio/evectmatrixio.c, src/matrixio/fieldio.c, configure.in, photon-ctl/Makefile.in, photon-ctl/photon.c: Turned on all gcc warnings and eliminated them whereever practical. * doc/user-tutorial.html: Added more subsections. * TODO: updated list * photon-ctl/photon.c: Shifted origin to the center of the grid (this does not affect inversion symmetry). * photon-ctl/photon.scm: Added gap-list computation. Fri Sep 3 05:30:10 1999 Steven G. Johnson * doc/installation.html, doc/user-tutorial.html, doc/index.html: Slowly building the manual... Thu Sep 2 22:50:20 1999 Steven G. Johnson * doc/user-tutorial.html, doc/installation.html, doc/introduction.html: Added more to the manual. * photon-ctl/examples/sq-rods.ctl, photon-ctl/examples/bragg.ctl, photon-ctl/photon.scm: Added alias, "dielectric", for "material-type". * doc/installation.html: Wrote installation section. Wed Sep 1 23:44:39 1999 Steven G. Johnson * doc/user-tutorial.html, doc/index.html, doc/installation.html, doc/introduction.html, doc/license.html, doc/user-ref.html, doc/developer.html: Added documentation outline. * photon-ctl/photon.scm: revamped (run) functions; they're actually useful now. * photon-ctl/photon.c: Moved display_object_info to libgeom. * photon-ctl/Makefile.in: Added dependency rule for geom.scm. * photon-ctl/photon.scm, photon-ctl/photon.c: Added compute-energy-in-objects, plus ability to let init-params not reinitialize the fields. * photon-ctl/photon.c: note breakage under mpi of field output. * src/matrixio/matrixio.h, src/maxwell/maxwell.h, src/maxwell/maxwell_op.c, src/matrixio/Makefile.in, src/matrixio/evectmatrixio.c, src/matrixio/fieldio.c, src/matrixio/matrixio.c, photon-ctl/Makefile.in, photon-ctl/photon.c, photon-ctl/photon.scm, Makefile.in, configure.in: Added matrixio (HDF5 output capability). Tue Aug 31 22:07:52 1999 Steven G. Johnson * src/maxwell/maxwell.h, src/maxwell/maxwell.c: k vector is passed to maxwell function in the basis of the reciprocal lattice vectors! * src/maxwell/maxwell_op.c: Compute transform with correct sign (makes a difference for field output in structures lacking inversion symmetry). * src/maxwell/maxwell_op.c: fixed comment. * src/maxwell/maxwell_op.c: Broke out E/H computations into subroutines, to prepare for HDF output and position-space calculations. * configure.in: Cleaned up a little, and fixed (I think?) order of linking BLAS libs. Mon Aug 30 20:31:20 1999 Steven G. Johnson * photon-ctl/examples/bragg.ctl, photon-ctl/examples/sq-rods.ctl: Added a couple of examples (very half-baked at this point). * configure.in: Added (untested) checks for BLAS in vendor-specific libraries (which, I *think*, include an optimized BLAS). * configure.in: Fixed --help output to reflect fact that --enable-complex is the default. * photon-ctl/photon.c: Print out radius for cylinders. * photon-ctl/photon.c, photon-ctl/photon.scm: Allow polarization of solution to be set. * photon-ctl/photon.c: removed newlines. * README, TODO: Updated info. * tests/maxwell_test.c, src/util/mpiglue.h, tests/blastest.c, tests/eigs_test.c, src/util/debug_malloc.c, src/util/fortranize.h, src/util/mpi_utils.c, src/util/mpi_utils.h, src/maxwell/maxwell_op.c, src/maxwell/maxwell_pre.c, src/util/check.h, src/matrices/sqmatrix.c, src/maxwell/maxwell.c, src/maxwell/maxwell.h, src/matrices/matrices.c, src/matrices/matrices.h, src/matrices/scalar.h, src/matrices/blasglue.h, src/matrices/eigensolver.c, src/matrices/eigensolver.h, src/matrices/evectmatrix.c, photon-ctl/photon.c, photon-ctl/photon.scm, src/matrices/blasglue.c, COPYING, COPYRIGHT: GPL-ed everything. * Makefile.in: 'make distclean' should remove config.status. * src/maxwell/maxwell.h, src/maxwell/maxwell_op.c, tests/maxwell_test.c, photon-ctl/photon.c, photon-ctl/photon.scm, src/maxwell/maxwell.c, Makefile.in, configure.in, photon-ctl/Makefile.in: Added first pass at a user interface (photon-ctl). Sat Jul 17 17:58:07 1999 Steven G. Johnson * tests/maxwell_test.c, src/maxwell/maxwell.c, src/maxwell/maxwell_op.c: Implemented num_fft_bands != num_bands. Fri Jul 16 22:20:28 1999 Steven G. Johnson * tests/maxwell_test.c, src/maxwell/maxwell.h, src/maxwell/maxwell_op.c, src/maxwell/maxwell_pre.c, src/maxwell/maxwell.c: Added in epsilon tensor initialization routine, and got rid of eps_inv_mean[band] mess from maxwell_op since it wasn't doing any good in the preconditioner. Thu Jun 10 22:04:23 1999 Steven G. Johnson * tests/maxwell_test.c: Fixed -h help string. * configure.in: Checked for ASCII project optimized Pentium Pro BLAS library (libblasppro1). Sat Jun 5 00:22:20 1999 Steven G. Johnson * tests/maxwell_test.c: Changed maxwell output format slightly; added tolerance parameter. * tests/maxwell_test.c: Whoops! TWOPI is a double, not (implicitly) and int! Fri Jun 4 23:14:43 1999 Steven G. Johnson * tests/maxwell_test.c: Default to quarter-wave stack. * tests/maxwell_test.c, src/maxwell/maxwell.h, src/maxwell/maxwell_op.c, src/maxwell/maxwell_pre.c, src/matrices/eigensolver.c, src/matrices/eigensolver.h, src/maxwell/maxwell.c: Added code to find maxwell eigenvals "targeted" around a particular frequency. The convergence is slower than I would like, though. * src/maxwell/maxwell_pre.c: For now, don't subtract eigenvals from the preconditioner, as least not until I understand the effects better. (Right now, seems to make convergence worse in many cases, and also seems to mess up the convergence criteria for the higher bands.) Tue Jun 1 19:59:38 1999 Steven G. Johnson * src/config.h.in, src/maxwell/maxwell.h, configure.in: Updated to work with [ds]?r?fftw libraries (aren't regular expressions wonderful?). * tests/maxwell_test.c, src/util/mpi_utils.c, src/util/mpi_utils.h, src/util/mpiglue.h, src/matrices/scalar.h: Misc. changes. * src/maxwell/maxwell_op.c, src/maxwell/maxwell_pre.c: Separated op and preconditioner into their own files. Thu Feb 4 02:51:19 1999 Steven G. Johnson * src/maxwell/maxwell.c, TODO: Check for k == 0 in when setting k vector. * TODO, src/matrices/eigensolver.c: Added stricter convergence (convergence of each eigenvalue separately). * tests/maxwell_test.c: Small fixes. * tests/eigs_test.c, tests/maxwell_test.c, src/maxwell/maxwell.c, src/maxwell/maxwell.h, src/matrices/eigensolver.c, src/matrices/eigensolver.h, src/maxwell/Makefile.in, Makefile.in, TODO, configure.in, src/config.h.in: Allowed discrimination between TE and TM modes. Wed Feb 3 22:55:15 1999 Steven G. Johnson * configure.in: Added profiling flags to existing flags, instead of replacing. * configure.in: Fixed ordering of checks... * src/config.h.in, tests/maxwell_test.c, configure.in: Added --enable-prof. * tests/maxwell_test.c, src/maxwell/maxwell.c, src/maxwell/maxwell.h, tests/eigs_test.c, src/matrices/eigensolver.h, src/matrices/eigensolver.c, TODO: Lots of changes to eigensolver routine and preconditioners, yielding dramatic improvements in convergence. The most important thing new is that we now diagonalize the subspace on each iteration of eigensolver. This makes the preconditioner much more sensible, and also allows us to subtract the eigenval from the preconditioner (a better approximation, hopefully, to the correct Hessian). Sun Jan 31 07:49:01 1999 Steven G. Johnson * src/maxwell/maxwell.c, src/maxwell/maxwell.h: No need to store k+G in k_data since we don't use this information. * tests/maxwell_test.c, TODO, src/maxwell/maxwell.c: Maxwell seems like it might be working! Sat Jan 30 22:17:11 1999 Steven G. Johnson * src/matrices/scalar.h, tests/eigs_test.c: Made complex eigenvector output in eigs_test more uniform. * tests/Makefile.in: Whoops! make clean should delete eigs_test.o. * src/matrices/eigensolver.c: Removed unused lines. * tests/maxwell_test.c, src/maxwell/maxwell.h, src/util/check.h, src/util/debug_malloc.c, tests/Makefile.in, src/matrices/eigensolver.c, src/maxwell/maxwell.c, Makefile.in, TODO, configure.in, src/config.h.in: Fixed uninitialized D bug in eigensolver.c (doh!). Added test for maxwell operator code, and got maxwell closer to working (I hope). Fri Jan 29 20:52:08 1999 Steven G. Johnson * tests/Attic/Makefile, tests/Makefile.in, tests/blastest.c, tests/eigs_test.c, src/util/Makefile.in, src/util/debug_malloc.c, src/util/mpi_utils.c, src/maxwell/Makefile.in, src/maxwell/maxwell.c, src/maxwell/maxwell.h, src/matrices/eigensolver.c, src/matrices/evectmatrix.c, src/matrices/matrices.c, src/matrices/sqmatrix.c, src/config.h.in, src/matrices/Makefile.in, src/matrices/blasglue.c, config.guess, config.sub, configure.in, install-sh, Makefile.in: "Autoconfiscated" everything (i.e. adapted for use with GNU autoconf portability tools). * src/matrices/scalar.h: Separate scalar_complex type that is always defined. * src/maxwell/maxwell.c, src/maxwell/maxwell.h, src/maxwell/README: Initial version of Maxwell operator code. Mon Aug 10 23:32:35 1998 Steven G. Johnson * src/matrices/eigensolver.c: Noted that A and C are assumed to be linear. * tests/eigs_test.c, src/matrices/eigensolver.c, src/matrices/eigensolver.h: Added callback data pointer to eigensolver. Sat Aug 8 19:18:06 1998 Steven G. Johnson * tests/blastest.c, tests/eigs_test.c: Made sure that solving for complex eigenvectors works. (Hooray!) * src/util/fortranize.h, src/matrices/blasglue.c: Worked around problems accessing Fortran function return values on the RS/6000. * tests/eigs_test.c: For complex scalars, create complex matrix. * src/matrices/scalar.h: Bug fix in ASSIGN_SCALAR for complex. * src/matrices/README: Columns, not rows, of Y are the eigenvectors. * src/matrices/evectmatrix.c, src/matrices/matrices.h, src/matrices/sqmatrix.c, src/matrices/eigensolver.c: Some minor cleanup in function interfaces. * src/matrices/eigensolver.c: Changed confusing use of "X" in comment. * src/matrices/README: Noted eigensolver.c. * README: Updated to note eigensolvers. * src/util/fortranize.h: "Cray" is not an acronym. * src/util/fortranize.h, src/matrices/Attic/fortranize.h: Moved fortranize.h to util directory. * tests/Attic/Makefile: Makefile for test programs. This will probably get replaced by something autoconf'y later, but it will do for now. * tests/blastest.c: Check for memory leaks at end. * tests/eigs_test.c: Only print out A for n <= 10 instead of 20. * src/matrices/eigensolver.c: Increased iteration limit and included it in the failure message. * tests/eigs_test.c: Added comparison of multiple tests (w/o CG, w/o preconditioning, etcetera). * src/matrices/matrices.h, src/matrices/sqmatrix.c: Added sqmatrix_copy. * tests/eigs_test.c: Got things working. * src/util/check.h: Modified to enable debug_malloc/free when DEBUG is defined. Does it work? * src/matrices/eigensolver.c, src/matrices/sqmatrix.c: Eigensolver now computes correct eigenvectors/values at the end. Fixed problem with not enough memory being allocated for dense real eigensolver of small sizes (U.p < 3). Fri Aug 7 22:35:16 1998 Steven G. Johnson * src/util/mpi_utils.h: Fixed missing semicolon when not using gcc. * tests/eigs_test.c, tests/blastest.c, src/util/debug_malloc.c, src/util/mpi_utils.c, src/util/mpi_utils.h, src/util/mpiglue.h, src/util/check.h, src/matrices/Attic/fortranize.h, src/matrices/matrices.c, src/matrices/matrices.h, src/matrices/scalar.h, src/matrices/sqmatrix.c, src/matrices/blasglue.h, src/matrices/eigensolver.c, src/matrices/eigensolver.h, src/matrices/evectmatrix.c, src/matrices/README, src/matrices/blasglue.c: Added starting code. Wed May 20 01:18:50 1998 Steven G. Johnson * README: Created photonic-bands repository. * README: Initial revision