MIT Photonic Bands

From AbInitio

(Difference between revisions)
Jump to: navigation, search
Revision as of 19:54, 30 March 2006 (edit)
Stevenj (Talk | contribs)
(Documentation)
← Previous diff
Current revision (18:45, 10 July 2018) (edit)
Stevenj (Talk | contribs)

 
Line 1: Line 1:
-[[Image:Mpb-logo.jpg|500px|center]]+MPB has moved to: https://github.com/stevengj/mpb
- +Please update your links.
-The '''MIT Photonic-Bands''' ('''MPB''') package is a [http://www.gnu.org/philosophy/free-sw.html free] program for computing the band structures (dispersion relations) and electromagnetic modes of periodic dielectric structures, on both serial and parallel computers. It was developed by [http://math.mit.edu/~stevenj Steven G. Johnson] at [http://web.mit.edu/ MIT] along with the Joannopoulos [http://ab-initio.mit.edu/ Ab Initio Physics] group.+
- +
-This program computes definite-frequency eigenstates (harmonic modes) of [[w:Maxwell's equations|Maxwell's equations]] in periodic dielectric structures for arbitrary wavevectors, using fully-vectorial and three-dimensional methods. It is especially designed for the study of [http://ab-initio.mit.edu/photons/ photonic crystals] (a.k.a. photonic band-gap materials), but is also applicable to many other problems in optics, such as waveguides and resonator systems. (For example, it can solve for the modes of waveguides with arbitrary cross-sections.)+
- +
-See also our complementary [[Meep]] package for time-domain simulations, reflection/transmission spectra, etc.+
- +
-{{TOCright}}+
-== [[MPB download]] ==+
- +
-You can [[MPB download|download]] the full source code (in ANSI C) for MPB under the [[MPB License and Copyright|free GPL license]]. The [[MPB Installation|installation]] section of the manual describes how to install it; mainly, this consists of downloading and installing various prerequisites if you do not have them already.+
- +
-=== Latest version: 1.4.2 ===+
- +
-The [[MPB release notes]] describe what is new in each version; the current version of MPB is 1.4.2.+
- +
-== Documentation ==+
-{{MPB}}+
-The [[MPB manual]] is readable online. Note especially the [[MPB User Tutorial|tutorial]] section of the manual, to get a flavor of what it is like to use the program. You may be also interested in the [[libctl manual]], which describes a Guile/Scheme-based scripting library that we build our interface on top of, and also a collection of [[Guile and Scheme links]].+
- +
-We have published a paper (available online) on the computational methods underlying MPB:+
- +
-:Steven G. Johnson and J. D. Joannopoulos, "[http://www.opticsexpress.org/oearchive/source/27937.htm Block-iterative frequency-domain methods for Maxwell's equations in a planewave basis]," ''Optics Express'' '''8''', no. 3, 173-190 (2001).+
- +
-See also our [[Citing MPB|referencing suggestions]] for how to cite MPB in your work.+
- +
-=== Mailing Lists ===+
- +
-The MPB mailing lists (and their archives) are another source of information about MPB.+
- +
-Subscribe to the (read-only) [http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/mpb-announce mpb-announce mailing list] to receive an email when MIT Photonic-Bands is updated in the future. Subscribe to the (unmoderated) [http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/mpb-discuss mpb-discuss mailing list] for discussion of questions and ideas about using the MIT Photonic-Bands package. Announcements are '''not''' always sent to mpb-discuss; you should subscribe to mpb-announce for that. [http://dir.gmane.org/gmane.comp.science.photonic-bands Archives of mpb-discuss] are available online. (You can also read & post to the list via the [news://news.gmane.org/gmane.comp.science.photonic-bands gmane.comp.science.photonic-bands] newsgroup from [http://www.gmane.org/ Gmane]).+
- +
-== Features ==+
- +
-Some of the more noteworthy features of the MIT Photonic-Bands package are:+
- +
-* Fully-vectorial, three-dimensional calculation. Iterative eigensolver techniques are employed to make large, three-dimensional calculations possible. (Can handle 2D and 1D problems too, of course.) +
-* Direct, frequency-domain eigensolver (as opposed to indirect methods, e.g. time-domain). For one thing, this means that you get both eigenvalues (frequencies) and eigenstates (electromagnetic modes) at the same time. (See also a [[MPB Introduction#Frequency-Domain vs. Time-Domain|comparison of time-domain and frequency-domain techniques]] in the [[MPB manual]].) +
-* Targeted eigensolver. Normally, iterative eigensolvers provide you with the states (optical bands/modes) with the lowest few frequencies. Our software can alternatively compute the modes whose frequencies are closest to a specified target frequency. This greatly reduces the number of bands that must be computed in guided or resonant mode calculations. +
-* Flexible, scriptable user interface based upon the [http://www.gnu.org/software/guile/ GNU Guile] extension & scripting language. +
-* Support for arbitrary, anisotropic dielectric structures (including gyrotropic/magneto-optic materials) and non-orthogonal unit cells. +
-* Field output in [http://hdf.ncsa.uiuc.edu/ HDF] format for input into many popular graphing and visualization tools. +
-* Portable to most any Unix-like operating system; tested under Linux, AIX, IRIX, and Tru64 (''née'' Digital) Unix. See also the [[MPB Installation|installation section]] of the manual. +
-* Support for parallel machines with MPI. (Tested on an SGI [http://scv.bu.edu/SCV/Origin2000/ Origin2000] and on an SMP Linux machine with [http://www-unix.mcs.anl.gov/mpi/mpich/ MPICH].) +
-* Free software under the GNU General Public License. (See also the [[MPB License and Copyright]] section of the manual.) +
- +
-To give you some feel for how long these calculations take, let us consider one typical data point. For the 3d band-structure of a [[MPB Data Analysis Tutorial#Diamond Lattice of Spheres|diamond lattice of dielectric spheres in air]], computing the lowest 10 bands on a 16×16×16 grid at 31 k-points, MPB 1.0 took 2 minutes on a 550MHz Pentium-III under Linux with the [http://www.netlib.org/atlas/ ATLAS] optimized BLAS library. (Thus, at each k-point, MPB was minimizing a function with 81920 degrees of freedom in 4 seconds on average.)+
- +
-== [[MPB Acknowledgements|Acknowledgements]] ==+
- +
-Many people and groups have contributed to the development of this software, both directly and indirectly. Please see the [[MPB Acknowledgements|acknowledgements section]] of the manual for those to whom we feel especially grateful.+
- +
-== Contact Info ==+
- +
-If you have questions or problems regarding MIT Photonic-Bands, you are encouraged look at the [[#Mailing lists|mailing lists]] and the [http://dir.gmane.org/gmane.comp.science.photonic-bands mpb-discuss archives] as your first resort.+
- +
-For professional consulting support of the MIT Photonic-Bands package, and photonic band-gap applications in general, contact [http://rleweb.mit.edu/rlestaff/p-joan.htm Prof. John D. Joannopoulos] of MIT (phone: (617) 253-4806, fax: (617) 253-2562).+
- +
-Alternatively, you may directly contact [http://math.mit.edu/~stevenj Steven G. Johnson] at [mailto:stevenj@alum.mit.edu stevenj@alum.mit.edu].+
- +
-[[Category:MPB]]+

Current revision

MPB has moved to: https://github.com/stevengj/mpb

Please update your links.

Personal tools