Open up your Terminal and type in “meep” and it should pull up your active shell.īefore we work out way through a tutorial, you should take a look at the very basic code and syntax that I have listed below so that you can a feel of what code will look like in the program. Now that you have your package built, Meep is ready for use. You do however must go through the installation page and manually build each of them since there is no built packages. Recommended installations: Below are some highly recommended things that should be also installed with your Meep package. Which means that all operations will be done through a Unix machine in the terminal, in my case I am using Ubuntu 14.10 but any Unix interface should work as long as you correctly build the package. It is important to note that Meep is an Unix bases shell program or like one. Three basic types of terminations are supported in Meep: Bloch-periodic boundaries, metallic walls, and PML absorbing layers.
Almost everything you might want to compute (transmission spectra, frequencies, etcetera) is expressed as a ratio anyway, so the units end up canceling.īoundary conditions and symmetries: we can only simulate a finite region of space, which means that we must terminate our simulation with some boundary conditions. Units in Meep: Meep uses "dimensionless" units where all these constants are unity. Maxwell's Equations: Meep simulates Maxwell's equations, which describe the interactions of electric (E) and magnetic (H) fields with one another and with matter and sources. Scheme: programming language developed at MIT, which has a particularly simple syntax: all statements are of the form (function arguments.). The ctl file specifies the geometry you wish to study, the current sources, the outputs computed, and everything else specific to your calculation. The user guide contains a background, simple commands, package build instructions, and a tutorial to build a waveguide.Ĭtl File: The use of Meep revolves around the control file, abbreviated "ctl" and typically called something like foo.ctl (although you can use any file name you wish). The MEEP user guide was created to give the next user of MEEP a starting point. Although the foundations are built in C++ you do not need to be a real programmer to use Meep. C++ provides the interfaces with the greatest level of flexibility in designing FDTD simulations. Meep is written in C++, there is two main interfaces that are the most used (libctl/scheme).
Meep (or MEEP) which stands for MIT Electromagnetic Equation Propagation, is a free finite-difference time-domain (FDTD) simulation software package developed at MIT to model electromagnetic systems.