MATLAB® Toolboxes for Optical Simulations

BeamLab is an award-winning set of simulation tools for beam propagation through optical devices and waveguides in your familiar MATLAB® environment. BeamLab provides utmost flexibility in post-processing and editing of any output data and graphs. BeamLab consists of two solvers, the BPM Solver and the Mode Solver. Both allow for analyzing beam propagation in waveguides as well as free space, and computing eigenmodes of waveguides with arbitrary cross-sections. BPM Solver implements a beam propagation solver based on the Finite Difference Beam Propagation Method (FD-BPM), and Mode Solver implements a waveguide eigenmode solver based on the Finite Difference Method (FDM). Solving complex optical problems has never been easier!

New BeamLab 2.4 (December 2022) — Fiber characterization made easy! Learn more »

Unlimited Plotting Options

Simple Coding

The following few lines of code produce a video that shows the light vortex in a multimode fiber generated by a Gaussian beam at oblique incidence and slightly offset from the fiber axis.

%% Input parameters for BPM simulation
gridPoints = [200 200];
gridSize = [100 100];
lambda = 1.55;
indexFunction{1} = @(b) homogeneous(b,200,1);
indexFunction{2} = @(b) singlecore(b,4800,[50 50],1.46,1.45);
inputField = @(b) gaussinput(b,[15 15],...
    'Shift',[15 0 200],'Angle',[5 90]);

%% Create beamProblem
beamProblem = beamset(gridPoints,gridSize,lambda,...

%% Start BPM calculation
bpmData = bpmsolver(beamProblem);

Key Features

MATLAB© enabled

  • Toolbox for MATLAB® implementing a Beam Propagation Method (BPM) solver and a waveguide mode solver
  • Intuitive user interface based on MATLAB® — no hassle with learning a new proprietary language
  • Full-vectorial and semi-vectorial beam propagation and mode analysis based on the finite difference method
  • Mode analysis based on a uniform or non-uniform grid
  • Calculation of the electric or magnetic field
  • 3D or 2D analysis
  • Wide-angle and nonlinear beam propagation
  • Analysis of anisotropic and bent waveguides
  • High flexibility in waveguide and input field design with steadily growing library of easy-to-use functions
  • High flexibility in implementing various parameter sweeps and optimization problems1
  • High flexibility in post-processing and editing any output data and graphs to your liking
  • Extensive plotting and visualization options (1D, 2D, 3D plots, pseudocolor and contour plots, video export, etc.)
  • Parallel computing using multicore processors
  • Platform-independent (Windows, macOS, Linux)
  1. For advanced optimization problems BeamLab supports the MATLAB® Optimization Toolbox™.


Application examples encompass a large variety of propagation scenarios for both bulk and waveguide optics including lenses, gratings, apertures, couplers, splitters, multiplexers, and modulators.

Photonic Crystal Fiber

Beam propagation in a photonic crystal fiber
View demo

Spiral Waveguide

Beam propagation in a waveguide wrapped around a straight waveguide
View demo


Beam propagation in a waveguide splitter
View demo

Fiber Modes

Eigenmode calculation of an optical fiber
View demo

Fiber Dispersion

Dispersion evaluation of an optical fiber
View demo

Directional Coupler

Beam propagation in a co-directional waveguide coupler
View demo

Multimode Interference Coupler

Beam propagation in a 2D/3D MMI coupler
View demo

Mach-Zehnder Modulator

Beam propagation in a Mach-Zehnder modulator
View demo

Rib Waveguide Modes

Eigenmode calculation of a rib waveguide
View demo

Spatial Filter

Beam propagation through a spatial filter removing random phase fluctuations
View demo

Nonlinear Self-focusing

Self-focusing of a high-power Gaussian beam in a nonlinear medium.
View demo

Meander Waveguide

Beam propagation in a sinusoidally oscillating waveguide
View demo

What our beamlab users say

Elad Oved

After testing 13(!) programs, I found BeamLab the simplest for simulating graded index waveguides in complex geometries. Working within the MATLAB environment makes the design and analysis using BeamLab easy and flexible.

Elad Oved / ColorChip Ltd.
Daniel Kopf

We do most physical calculations in MATLAB and found that BeamLab is the best toolbox for the simulation of laser beam propagation!

Daniel Kopf / Montfort Laser
Guanchu Wang

Your toolbox is really great and I really thank you for your help during my project!

Guanchu Wang / TU Delft

Your Benefits

  • Priority support: As a customer you will receive priority support, first in line!
  • 30 day money back guarantee: Should you not be fully satisfied with BeamLab you will receive a full refund.

MathWorks Connections Program

MATLAB© Partner

  • We are official partner of the MathWorks Connections Program and supplier of third-party MATLAB® products.
  • BeamLab is implemented natively in MATLAB® und supports all versions from 7.11 (R2010b) to the latest one.
  • If you are interested in testing BeamLab but currently don’t have access to MATLAB®, please click on the relevant checkbox during sign up to receive further instructions.