Man Linux: Main Page and Category List

NAME

       mpb-split - compute eigenmodes with MPB using multiple processes

SYNOPSIS

       mpb-split NUM-SPLIT [DEFINITION]... [CTLFILE]...

DESCRIPTION

       mpb-split  is  a  parallelizing  front-end to MIT Photonic Bands (MPB).
       For a computation with several k points, it splits the list of k points
       over  multiple  processes.   Of course, this will only benefit you on a
       system where different processes will run on different processors, such
       as  an  SMP or a cluster with automatic process migration (e.g. MOSIX).
       mpb-split is actually a trivial shell script, though, so you can easily
       modify  it  if you need to use a special command to launch processes on
       other processors/machines.

       MIT Photonic Bands  (MPB)  is  a  free  program  to  compute  the  band
       structures (dispersion relations) and electromagnetic modes of periodic
       dielectric structures, and is  applicable  both  to  photonic  crystals
       (photonic  band-gap  materials)  and  a  wide  range  of  other optical
       problems.

       More information on MPB, including a  detailed  manual,  can  be  found
       online at the MPB home page: http://ab-initio.mit.edu/mpb/

       A typical invocation of mpb-split looks like:

           mpb-split num-split foo.ctl >& foo.out

       This causes mpb-split to process the control file foo.ctl, divide the k
       points into num-split equal chunks, run each list in a separate process
       with  MPB,  and  redirect  the  output  (in  order)  to  foo.out.  (One
       typically redirects output to a file, as  the  output  is  verbose  and
       contains  a  number of comma-delimited datasets that one can extract by
       grepping.)

       Overall, the behavior and arguments are the same as for mpb except that
       the first argument must be the integer num-split.

       What  mpb-split technically does is to set the MPB variable k-split-num
       to num-split and k-split-index to the index (starting with  0)  of  the
       chunk  for  each  process.  If you want, you can use these variables to
       divide the problem in some other way and then reset them to  1  and  0,
       respectively.

BUGS

       Send bug reports to S. G. Johnson, stevenj@alum.mit.edu.

AUTHORS

       Written  by Steven G. Johnson.  Copyright (c) 1999, 2000, 2001, 2002 by
       the Massachusetts Institute of Technology.

SEE ALSO

       mpb(1), mpb-data(1)