MPB
Last Modified: 10/09 16:43
Description
From the MPB Homepage, http://ab-initio.mit.edu/wiki/index.php/MIT_Photonic_Bands: The MIT Photonic-Bands (MPB) package is a 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 Steven G. Johnson at MIT along with the Joannopoulos Ab Initio Physics group.
This program computes definite-frequency eigenstates (harmonic modes) of 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 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.)
Version
- 1.1.1
Authorized Users
- All Circe Users
Platform
- circe cluster
Running MPB on the Cluster
It is highly recommended that you read the tutorials on using MPB:
- MPB User Tutorial: http://ab-initio.mit.edu/wiki/index.php/MPB_User_Tutorial
Enabling MPB and Utilities (h5utils, etc).
Ensure that you've loaded the module apps/mpb/1.4.2 into your environment to access the various HDF5 utilities for converting and working with output data. Load it persistently so that we can avoid having to deal with it again later:
[user@login0 ~]$ module add apps/mpb/1.4.2 [user@login0 ~]$ module initadd apps/mpb/1.4.2
Loading the MPB module will automatically provide the following dependencies:
- compilers/intel/10.1.018.x86_64
- openmpi/1.2.7-x86_64-intel-10.1.018
- apps/szip/2.0
- apps/hdf5/1.6.9
- apps/libctl/3.1
- apps/h5utils/1.12.1
Running a Parallel Job
To run MPB, we will use the run command which creates our job script and submits our job to the cluster for us. We will also use the /work filesystem since MPB relies on HDF5's parallel I/O facilities:
[user@login0 ~]$ cd $WORK [user@login0 user]$ ls input.ctl [user@login0 user]$ run -b -t 1:00:00 -n 4 mpb-mpi input.ctl ...
Here, we run MPB with 4 processors for one hour, specifying the input ctl file input.ctl. See the tutorials linked above for information on creating the ctl (Scheme-based) input file. For more information on using the run command, please see here.
More Job Information
See the following for more detailed job submission information:
Reporting Bugs
Report bugs to the Information Technology Helpdesk at help@usf.edu