The goal of this example is to demonstrate how to simulate the Bloch mode profile of a periodic structure, including degenerate modes.

Here we use a 3D cubic lattice structure composed of a simple cubic lattice of spheres with lattice period 500 nm. The spheres are composed of a material with refractive index = 3, and radius = 130 nm. The bandstructure for this lattice is shown below. To generate the band diagram, open *bloch_mode.fsp* run the *bloch_mode_bandstructure.lsf*. If there is no sweep data, enable the dipole_cloud and bandstructure analysis group to run all the sweep.

Now we extract the Bloch modes of the 2 lowest order modes at the Brillouin zone edge (\(k_x = p/a\)) from a single simulation. We know that these modes have frequencies 256 THz and 281 THz when \((k_x, k_y, k_z)\) = (0.5, 0, 0), at the 20th sweep point. We also know that the Bloch mode can be written as \( E_{k+a}(x)=\exp (i k a) u_{k}(x) \). Our goal is to extract \(u_k(x)\).

Load the file *bloch_mode.fsp*. This example uses two 3D frequency profile monitors to determine the field profiles of the modes. Each monitor is set to the frequency of one of the modes and uses the time apodization feature to correctly extract the field profile information at that frequency using Fourier transforms.

Due to the symmetry of the problem, each of the bands calculated in the bandstructure above is doubly degenerate, one mode for each polarization. Thus care must be taken to excite only one of these Bloch modes. By placing a point dipole source on a symmetry plane of the lattice, one mode of a specific polarization may be excited directly. Note that it is very important, when degenerate modes are present, to use symmetry properties to determine where to place the point dipole sources. Otherwise you will extract the field profile corresponding to a linear combination of all the degenerate modes!

After running the simulation project, open the script prompt and run the script file *bloch_mode.lsf.* This will calculate \(|u_k(x)|^2\) for the modes at the two frequencies and plot cross sections of them. The results are shown below:

lower frequency symmetry: sy = +1, sz = -1

upper frequency symmetry: sy = +1, sz = -1

lower frequency symmetry: sy = +1, sz = -1

upper frequency symmetry: sy = +1, sz = -1

### See also

Making a CW movie, Apodization