MPB(1)
β¨ MPB β the MIT Photonic-Bands manual page β¨
okay bestie, you're looking at MPB(1) from the MIT Photonic-Bands Package β let's get into it π
πΈ NAME πΈ
mpb β compute eigenmodes of periodic dielectric structures
π SYNOPSIS π
mpb [OPTION]... [DEFINITION]... [CTLFILE]...
π¦ DESCRIPTION π¦
MIT Photonic Bands (MPB) is a free program that computes the band structures (dispersion relations) and electromagnetic modes of periodic dielectric structures. It works for photonic crystals (aka photonic band-gap materials) and a whole wide range of other optical problems. its feature list is genuinely iconic:
- fully-vectorial, 3D computations π₯
- a flexible user-interface based upon the GNU Guile scripting language π§
- output in HDF format
- iterative, targeted eigensolver methods that let you tackle very large problems by solving for only a few states near a specified frequency π
more info on MPB, including a detailed manual, lives online at the MPB home page: http://ab-initio.mit.edu/mpb/
a typical invocation of MPB looks like this:
mpb foo.ctl >& foo.out
this causes MPB to process the control file foo.ctl and redirect its output to foo.out. (ngl you typically redirect output to a file, because the output is verbose and contains a bunch of comma-delimited datasets that you can extract by grepping. it's giving data dump, fr fr.)
you can also run MPB in an interactive mode, where you type in MPB commands (in Scheme/Guile) and immediately see their results. interactive mode is entered when:
- you invoke
mpbwith no control files, or - your control files don't contain any
runstatements (which disable interactive mode), or - the last control file ends by setting
(set! interactive? true)β in which case interactive mode is entered after the control files execute.
another useful feature: you can alter parameters in your control files from the command line, by including definitions of the form variable=value as arguments to mpb (before the control files). this overrides the values of variables defined with define-param in the control file (including all of the predefined MPB input variables). main character energy, honestly π«Ά
multiple control files and definitions are executed in sequence, in the order they are specified on the command line. periodt.
π OPTIONS π
-h,--helpβ display help on the command-line options and usage. bestie behavior, honestly.-V,--versionβ print the version number and copyright info formpb.-v,--verboseβ verbose output. it's giving talkative π
π BUGS π
found a bug? send bug reports to S. G. Johnson, stevenj@alum.mit.edu. no cap, he wants to know π
π AUTHORS π
Written by Steven G. Johnson. Copyright (c) 1999-2012 by the Massachusetts Institute of Technology.
β SEE ALSO β
and that's the whole page, bestie! this one is from the MPB manual, dated January 27, 2000 β iconic, timeless, slay πβ¨π
π¦ where this page comes from
- debian bookworm: mpb 1.11.1-5 Β· GPL-2.0-or-later
- debian trixie: mpb 1.11.1-6+b2 Β· GPL-2.0-or-later
- ubuntu jammy: mpb 1.11.1-4 Β· GPL-2.0-or-later
- ubuntu noble: mpb 1.11.1-5ubuntu1 Β· GPL-2.0-or-later
- ubuntu questing: mpb 1.11.1-6build5
- ubuntu resolute: mpb 1.12.0-1 Β· GPL-2.0-or-later
- ubuntu stonking: mpb 1.12.0-1build1 Β· GPL-2.0-or-later
- Copyright (C) 1999-2014 Massachusetts Institute of Technology
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms