Escolar Documentos
Profissional Documentos
Cultura Documentos
Version 12.1
for Windows XP, Vista, Windows 7
OptiBPM
Technical Background and Tutorials
Waveguide Optics Modeling Software Systems
Disclaimer
Optiwave makes no representation or warranty with respect to the adequacy of this documentation or the programs which it
describes for any particular purpose or with respect to its adequacy to produce any particular result. In no event shall Optiwave, its
employees, its contractors or the authors of this documentation be liable for special, direct, indirect or consequential damages,
losses, costs, charges, claims, demands, or claim for lost profits, fees or expenses of any nature or kind.
Contact Information
Technical Support
Tel
(613) 224-4700
support@optiwave.com
Fax
(613) 224-4706
URL
www.optiwave.com
General Enquiries
Tel
info@optiwave.com
Fax
(613) 224-4706
URL
www.optiwave.com
Tel
sales@optiwave.com
Fax
(613) 224-4706
URL
www.optiwave.com
Sales
Table of contents
Technical Background..............................................................................................11
Notes: .....................................................................................................................................12
Scattering Data..........................................................................................................81
Introduction ...........................................................................................................................81
Modeling of the Optical Components - Survey of Methods ..............................................81
Circuit Complexity - Classification ......................................................................................83
The Tool - Scattering Data Approach ..................................................................................86
Implementation with OptiSystem.........................................................................................90
Solutions ................................................................................................................................90
References:..........................................................................................................................104
Tutorials ...................................................................................................................165
Lesson 1: Getting Started ......................................................................................167
Installing OptiBPM ..............................................................................................................167
Hardware and software requirements ...............................................................................167
Protection key......................................................................................................................167
OptiBPM directory...............................................................................................................168
Installation ...........................................................................................................................168
Installing OptiBPM on Windows XP, Vista or Windows 7 ......................................168
Introduction to OptiBPM.....................................................................................................169
References ...........................................................................................................................355
Notes: ...................................................................................................................................356
Lesson 11: Integrated optical circuit simulation using OptiBPM and OptiSystem
Scattering data export .........................................................................................385
Theoretical Background .....................................................................................................385
Part I OptiBPM.................................................................................................................387
Generating Scattering Data script ..........................................................................390
Exporting scattering data .......................................................................................394
Creating the arms...................................................................................................395
Part II OptiSystem...........................................................................................................397
Loading the *.s file in OptiSystem ..........................................................................397
Loading the files for both Arms ..............................................................................401
Completing the layout in OptiSystem .....................................................................403
Connecting the components ..................................................................................405
Running the calculation..........................................................................................407
Creating the graph to view the results....................................................................407
Reference:............................................................................................................................409
Notes ....................................................................................................................................410
Technical Background
The following section contains information on the following topics:
Scattering Data
11
Notes:
( x, y, z ) = ( x, y, z ) exp ( jkn 0 z )
(1)
13
the changes must be taken up by making the mesh finer (smaller x , y , and shorter
propagation step z ). For many practical waveguides, the refractive index contrast
in the transverse plane ( x y plane) is small, which means the variation of the field
in the transverse plane is slow, compared to the wavelength. On the other hand,
sometimes there are large index contrasts in the transverse plane, and a finer mesh
in x , y , or both axes might be needed. Another case in which the effectiveness of
Equation 1 is compromised is when some of the light deviates from the direction of
the z axis. This is another case in which faster variation in is unavoidable, and
sometimes a finer mesh or Wide Angle methods are necessary.
In any case, it is recommended to experiment with several different meshes applied
to the same problem, and to compare the results. Usually, the same results are found
in all cases, but failing this, the results can be analyzed for trends. Eventually a
suitable range of mesh parameters can be found which gives consistent results. In
OptiBPM, it is very easy to apply many different meshes to the same problem and
compare the results.
Sometimes a single value of reference index will not reduce the variation everywhere,
but will follow the optical field well in one region of the device. Another region may
follow a different Reference Index. For example, in a star coupler, a waveguide
connects to a free propagation region. The reference index for the waveguide is the
waveguide's modal index, but the reference index for the coupler would be the slab
waveguide's modal index. The best solution in this case is to define one reference
index for one region and a different one for another region. This is easily done in
OptiBPM.
14
E = j 0 H
(2)
H = j 0 n ( x, y, z )E
(3)
(n E) = 0
(4)
H = 0.
(5)
The magnetic field can be eliminated by taking the curl of Equation 2 and using
Equation 3.
(6)
E = k n E
2
where
k = 0 0 .
= ( . ) .
(7)
E + k n E = ( E ) .
(8)
Equation 6 becomes
2
BPM has a bias towards the z axis, so it is natural to treat the z component of both
E and differently than the transverse components, x and y .
15
Writing
(9)
E = E t + z E z
= t + z ----z
(10)
E
2
2 2
E t + k n E t = t t E t + --------z .
z
(11)
The divergence Equation 4 can be used to eliminate the longitudinal term above.
Equations (9) and (10) can be used to separate the transverse and longitudinal terms
in Equation 4
2
n
2
2 E
t ( n E t ) + -------- E z + n --------z = 0 .
z
z
(12)
If the refractive index is changing slowly along z , then the second term can be
neglected. Then the second term on the right hand side of Equation 11 can be
replaced with the divergence term of Equation 12.
1
2
2 2
2
E t + k n E t = t t E t ----2 t ( n E t )
n
(13)
Using the chain rule on the second divergence term on the right hand side gives a
term that cancels the first divergence term, leaving a single term on the right hand
side. Also, on the left side, the z derivative can be written explicitly
1
E
2 2
2
2
t E t + ---------2-t + k n E t = t ----2 ( t n ) E t .
n
z
2
16
(14)
At this point the slowly varying envelope approximation is used, the field components
Ex and Ey are varying quickly in the z direction, but are probably varying slowly in x
and y . Therefore the substitution
(15)
E t ( x, y, z ) = e t ( x, y, z ) exp ( jn 0 kz )
(16)
If the reference index has been set correctly then the first term will be much smaller
than the second, and it is safe to neglect the first term. The remaining equation is of
first order in z . It is customary to collect the transverse differential operators on the
right hand side,
P xx P xy e x
ex
2jkn 0 ----=
z e y
P yx P yy e y
where the components of the operator
(17)
P are
2
1 2
+ k2 ( n 2 n2 )
P xx = ----- ----2 ----- n . + ------0
2
x n x
y
2
1 2
P xy = ----- ----2 ----- n . ----------x n y
xy
(18)
1 2
P yx = ----- ----2 ----- n . -----------yx
y n x
2
2
1 2
+ k2 ( n 2 n2 ) .
P yy = ----- ----2 ----- n . + ------0
2
y n y
x
17
These are the paraxial vector wave equations for the optical electric field. See
Reference [7] for another account of the formulation, and for examples of the use of
these equations for simulating waveguide optics with BPM.
In order to solve the system for a practical problem, OptiBPM will apply a mesh to the
region where the device is to be simulated. From the device geometry, each point in
the mesh is associated with a refractive index, and each point has an electromagnetic
field. Equation 17 is a first order equation in z , and so knowledge of the
electromagnetic field in some transverse plane ( z = constant) is enough to define an
initial value problem. It was assumed since the beginning, with the application of the
slowly varying envelope approximation (Equation 1), that the light propagation was in
a single direction ( z axis) with no reflection. With Equation 17, it becomes apparent
how this simulation is actually carried out. The differential operators P are
approximated with finite differences, P is a large sparse matrix, and Equation 17 is
applied at a given transverse plane to determine the electromagnetic field at the next
transverse plane.
18
e
2jkn 0 -------x = P xx e x
z
(19)
e
2jkn 0 -------y = P yy e y
z
(20)
for Semi-Vector TM. In Semi-Vector BPM, one can notice a difference in the
propagation of light depending on whether the initial light is polarized parallel or
perpendicular to the device substrate. However, once polarized horizontally, for
example, the model does not allow the horizontal light to transfer into a vertical
polarization.
On the other hand, for structures with a very low index contrast, it won't make much
2
difference in the order of application of operators like x and n . In this case, the
operators commute, and both Pxx and Pyy reduce to the scalar operator:
+ ------ + k2 ( n2 n2 ) .
P = ------0
2
2
x y
2
(21)
19
e t ( z 1 ) = exp [ zP ( 2jn 0 k ) ]e t ( z 0 )
(22)
1 + ( 1 )x
exp [ x ] = ------------------------------ .
1 x
(23)
z
z
I ------------- P e t ( z 1 ) = I + ------------- P e t ( z 0 ) .
4jn 0 k
4jn 0 k
(24)
In OptiBPM, the operator P is a large sparse matrix that approximates the partial
derivatives as finite differences. In the above equation, the field is assumed known at
z = z 0 , and is to be found on the plane z = z 1 . The operator P is applied to the
unknowns to be found in the vector e t ( z 1 ) . Since Equation 24 does not give the
unknown e t ( z 1 ) directly, but instead only as a solution to an equation, the resulting
numerical method is called 'implicit'. To progress from one transverse plane to the
next using an implicit method requires the solution of the above set of linear
equations.
The variable is called the Scheme Parameter, the usual value is 0.5, partly
because it is the most accurate representation of the exponent, but also because this
20
often realizes the most stable method. In Equation 24, it is possible to show (before
the introduction of lossy boundary conditions) that the norm of the operator on the left
is the same as the operator on the right. Therefore the application of many steps
should lead to no change in the norm of the solution vector e t . This guarantees the
stability of the method, at least in the sense of conservation of energy.
21
ADI
Usually the most time consuming process in the execution of the BPM simulation is
the solution of the linear system in Equation 24. Sometimes, it is possible to speed
this calculation by manipulating the formulation so that only simple linear systems
result. There are other formulations of the problem which permit the operator to be
split into two parts, one which involves derivatives in the x direction only, and the
other having derivatives in y only. In the first step, the operator with x derivatives is
used. The operator with x derivatives uses simple finite difference equations,
therefore no more than the next neighbor in the mesh need be used. The resulting
linear system is tridiagonal; it has matrix elements in the main diagonal and the two
adjacent diagonals.
The tridiagonal system is solved much more quickly than the general linear system.
In the next step, the operator involves derivatives with only y . By changing the
orientation of the problem (alternate direction), another tridiagonal system is obtained.
This changing of the sense of direction to get tridiagonal systems in solving the implicit
part of the propagation step is the origin of the name Alternating Direction Implicit.
OptiBPM uses ADI whenever possible, to obtain the fastest algorithm [32].
22
( x, z ) = A ( z ) exp ( jk x x ) .
(25)
As can been seen in Figure 1, denote the x coordinates and electric fields of the
nodes at p = 1, 0, 1 as x 1, x 0, x 1 and as 1 , 0 , 1 . Assuming Equation 25 for
each mesh point we can get:
23
(26)
(27)
exp ( jk x x ) = -----1 = 1
exp ( jk x x ) = ------0 = 1
where
x = x 2 x 1 = x 0 x 1 .
Figure 1 Nodes
p = 1
and
p = m
1
k x = -------- ln ( 1 ) .
j x
(28)
If the real part of k x is positive, then the plane wave expressed by Equation 25
propagates toward the outside of the boundary. If the real part of k x , Re ( k x ) , is
negative, the plane wave of Equation 25 propagates toward the inside of the
boundary. When we are dealing with a waveguiding structure that has no reflecting
element, an inward-propagating wave should not exist. Therefore, in such a case
Re ( k x ) must be made positive:
Re ( k x ) 0
The wave number of the outgoing plane wave at the right-hand boundary is obtained
in a similar manner. Then we assume that the wave function for the right-traveling
wave with the x -directed wave number k x is expressed as
( x, z ) = A ( z ) exp ( jk x x ) .
(29)
As can been seen in Figure 1, let denote the x coordinates and fields of the nodes at
p = m 2, m 1, m as x m 2, x m 1, x m , and as m 2, m 1, m .
Assuming Equation 29 for each mesh point we can get:
m 1
m
exp ( j k x x ) = ---------- = m
24
(30)
m 2
(31)
m1
exp ( j k x x ) = ----------
where
x = x m 1 x m 2 = x m x m 1 .
1
k x = -------- ln ( m ) .
j n
(32)
Similar to the left-hand boundary case the real part of k x , Re ( k x ) , must be restricted
to be positive to ensure only radiation outflow. When it is negative, which implies
reflection occurs at the right-hand boundary, the sign should be changed from minus
to plus.
As can been seen, the beam propagation including a radiation wave can be analyzed
easily and efficiently by using the above-mentioned transparent boundary condition.
The fundamental aspect of the TBC method is the plane-wave approximation of the
radiation wave and the successive renewal of the wave number k x by using the
former step-field distribution [14].
25
PML equations
We consider a 3-D optical waveguide surrounded by PML regions I, II, and III with
thickness d as shown in Figure 2. Using the transversely scaled version of PML,
Maxwell's equations can be written as
=
' E = j 0 r sE
(33)
' E = j 0 sH .
(34)
p
2
' --- ' k 0 qs = 0
s
(35)
with
p = 1,
1
p = =r ,
q = =
r , = E
for TE modes
= E
for TM modes
q = 1,
(36)
where
e
m
-2 = 1 j --------s = 1 j ------------.
0
0 n
(37)
Here E and H are the electric and magnetic field vectors, respectively, is the
angular frequency, 0 and 0 are the permittivity and permeability of free space,
respectively, n is the refractive index, and e and m are the electric and magnetic
26
' used in
(38)
(39)
' z = s ----z
(40)
z directions, respectively,
27
Region
sx
sy
II
III
(41)
e
--------= -----m2
0
0 n
which means that wave impedance of PML medium exactly equals of the adjacent
medium with refractive index n in the computation window,
m
e = max ---
(42)
where is the distance from the beginning of PML. Using the theoretical reflection
coefficient R at the interface between the computational window and the PML
medium
2 max d m
R = exp ---------------- --- d
0 cn 0 d
the maximum conductivity
max
may be determined as
( m + 1 ) 0 cn --1-
max = ------------------ ---------ln
2
where
28
(43)
(44)
The parameter
s is written as
s =
( + 1 ) -
1
ln -----------------------
1
j
4 dn d Rt
in PML region
29
W is
p---
- ------2
----------- + s ---p + k 0 qs = 0
x s x
z z
30
(46)
with
= E y, p = 1, q = n 2
for TE modes
= H y, p = 1 n 2, q = 1
for TM modes
(47)
(48)
where E y and H y are the y components of the electric and magnetic fields
respectively, is the angular frequency, 0 and 0 are the permittivity and
permeability of free space, respectively, n is the refractive index, k 0 is the free-space
wave number, and the parameter s is defined by Equation 45.
We separate the field ( x, z ) into two parts: the axially slowly varying envelop term
of ( x, z ) and the rapidly term of exp ( jk 0 n ref z ) . Here, n ref is the reference index.
Then,
( x, y )
is expressed by
( x, z ) = ( x, z ) exp ( jk 0 n ref z ) .
(49)
By substituting Equation 49 into Equation 46, we obtain the following equation for
slowly varying complex amplitude :
1 p
2
2
p -------2- 2jk 0 n ref p ------ + --- ----- --- ------ + k 0 ( q n ref )p = 0 .
z
s
x
s
x
z
2
The term
(50)
31
1
2
1
2
(51)
(52)
1
2h
' ( x ) ------ [ ( x + h ) ( x h ) ] .
(53)
E
1
1 _ -----------------[ E y ( x ) E y ( x 2h ) ] .
s(x h)
(54)
s ( x ) + s ( x + 2h )
s(i) + s(i + 1)
s ( x + h ) = --------------------------------------- = ----------------------------------
2
2
(55)
Here we consider:
32
s ( x ) + s ( x + 2h )
s(i) + s(i + 1 )
s ( x + h ) = --------------------------------------- = ----------------------------------
2
2
s ( x ) + s ( x 2 h )
s(i) + s(i 1)
s ( x h ) = ------------------------------------ = --------------------------------- .
2
2
(56)
Ey ( i 1 )
1--- ---- 1--- E y
2
-------- ----------------------------------------------------2
s x s x
s ( i ) x ( s ( i ) + s ( i 1 ) )
Ey ( i + 1 )
1
1
- .
- -------------------------------------- + -------------------------------------- E y ( i ) + -------------------------------------(s(i) + s(i + 1))
(s(i) + s(i + 1)) (s(i) + s(i 1))
(57)
E 2 E
2jk 0 --------y = ---------2-y + PE y
z
z
(58)
where
B pml
F pml
pml
- E ( i 1 ) + k 20 ( n 2i n 2ref ) + C
-E (i + 1) .
--------- E y ( i ) + -------PE y -------2 y
2 y
2
x
x
x
(59)
Here,
2
B pml = ----------------------------------------------s( i)[s(i 1) + s(i )]
(60)
2
F pml = ----------------------------------------------s(i)[s(i) + s(i + 1 )]
(61)
2
1
1
C pml = --------- -------------------------------------- + ------------------------------------- .
s( i) (s( i) + s(i + 1)) (s(i) + s(i 1))
(62)
33
H
1 H
Hy
2
2
---------- 2jk 0 n 0 ---------y + ----r ----- ------ ---------y + k 0 ( r n 0 )H y = 0 .
2
z
s
x
s
x
r
z
2
(63)
H y ( x 2h )
--------------------1 - H
1 - ----------r(x)
----r -------------y ------- --------------------------------------2
s x s ( x ) r ( x ) x 4h s ( x ) s ( x h ) r ( x h )
1
1
_ ---------------------------------------- + --------------------------------------- H (x) +
s( x + h ) r ( x + h ) s ( x h ) r ( x h ) y
H y ( x + 2h )
---------------------------------------- .
s ( x + h ) r ( x + h )
For small
(64)
h one has:
s( i) + s(i + 1)
s ( x ) + s ( x + 2h )
s ( x + h ) --------------------------------------- = ----------------------------------
2
2
(65)
s ( i 2h ) + s ( x )
s ( x h ) -------------------------------------- =
2
( i 1 ) + s ( i )
s--------------------------------
(66)
r ( x ) + r ( x + 2h )
- =
r ( x + h ) -----------------------------------------
r ( i ) + r ( i + 1 )
------------------------------------
(67)
r ( x 2h ) + r ( x )
r ( x h ) -----------------------------------------=
r ( i 1 ) + r ( i )
------------------------------------ .
(68)
34
By substituting Equation 66, Equation 67, and Equation 68 into Equation 64, we get:
r 1 H y
4 r ( i )
--- ----- ------ --------- -------- --------- s x s r x x 2 s ( i )
Hy ( i 1 )
1
_ --------------------------------------- s----------------------------------------------------------------------(
i
1
)
+
s
(
i
)
(
i
)
+
(
i
1
)
s
(
x
+
h
)
(
x
+
h
)
r
r
r
H y ( x + 2h )
1
+ ---------------------------------------- H y ( x ) + ---------------------------------------s ( x h ) r ( x h )
s ( x + h ) r ( x + h )
Hy ( i + 1 )
-.
+ --------------------------------------------------------------------------------( s ( i ) + s ( i + 1 ) ) ( r ( i ) + r ( i + 1 ) )
(69)
2
H
Hy
2k 0 n ref ---------y = ---------- + PH y
2
z
z
(70)
with
B
C
F
PH y --------2 H y ( i 1 ) + --------2 H y ( i ) + --------2 H y ( i + 1 )
x
x
x
(71)
4 r ( i )
1
- -----------------------------------------------------------------------------B = ------------s ( i ) ( s ( i 1 ) + s ( i ) ) ( r ( i ) + r ( i 1 ) )
(72)
4 r ( i )
1
- --------------------------------------------------------------------------------C = ------------s ( i ) ( s ( i ) + s ( i + 1 ) ) ( r ( i ) + r ( i + 1 ) )
1
2
2
+ ---------------------------------------------------------------------------------- + k 0 ( r ( i ) n ref )
( s ( i ) + s ( i 1 ) ) ( r ( i ) + r ( i 1 ) )
(73)
4 r ( i )
1
- .
- --------------------------------------------------------------------------------F = ------------s ( i ) ( s ( i ) + s ( i + 1 ) ) ( r ( i ) + r ( i + 1 ) )
(74)
35
1 = 0 L
(75)
1- -----0
L = ---=
.
1 l1
(76)
z.
Following similar way described we can include the right-hand TBC expressing the
field m of the hypothetical node as
m = m 1 R
(77)
lm 2
-.
R = --------- lm 1
(78)
1L
2
2
2
2 - E ( 0 ) + -------2 + k 0 ( n 0 n ref ) ------PE y ------E (1)
y
2 y
2
x
x
x
for the first left mesh point
(79)
i = 0,
and
1
R
2
2
2
2 - E (m 1)
-2 + k 0 ( n m 1 n ref ) ------PE y --------2 E y ( m 2 ) + ------y
2
x
x
x
for the last right mesh point
36
i = m 1.
(80)
2 2
2
1
1
PH y k 0 n ( 0 ) n ref + ----------------------------------- + --------------(
(
0
)
+
(
1
)
)
2
r
r
r(0)
R
Hy ( 1 )
-2 H y ( 0 ) + ------------------------------+ ------2
2
x
n (0) + n (1)
for the first left mesh point
(81)
i = 0
and
Hy ( m 2 )
R
2
2
2
2 - H (m 1)
PH y ----------------------- + -------2 + k 0 ( n m 1 n ref ) ------y
2
2
x
x
x
for the last right mesh point
(82)
i = m 1.
37
p
2
2
R ( x ) = ps -------2- 2jk 0 n ref ps ------ + ----- --- ----- + k 0 s ( q n ref p) = 0
z x s x
z
2
(83)
which must be zero in accordance with the state problem. However, it is impractical
to enforce R ( x ) = 0 at every point in the domain from x = 0 to x = x f . Since
( x f ) is not expected to vary substantially over a small distance, say x , we
subdivide the domain into small segments and instead enforce the condition
Domain of W m ( x )
W m ( x )R ( x ) dx = 0
(84)
38
If W m ( x ) = ( x x m ) or W m ( x ) = [ x ( x m + 1 + x m ) 2 ] the resulting
weighted residual procedure is referred to as point matching and leads to a form
of the finite difference method.
If W m ( x ) is set equal to the basis functions used for the representation of ( x ) ,
the procedure is referred to as Galerkin's method. This is the most popular
testing/weighting method for casting the differential equation to a linear system.
The choice of W m ( x ) is not completely arbitrary. For the mathematical steps in
the FEM procedure to hold rigorously, W m ( x ) and its derivative must be at least
square integrable over the domain. Specifically, for the problem at hand, it must
satisfy the condition
xm
d2
----[
W
(
x
)
]
+
W
(
x
)
m
m
dx < .
dx
(85)
39
xm
xm
p d
p W m ( x )
p--- ----
W m dx = --- ------ -----------------dx + --- ------ W m ( x )
----x s x
s x
x
s dx
0
xm
(86)
The last right hand side term can be evaluated by enforcing the known boundary
conditions at the endpoints. Its effect on the overall system will be considered later.
Step 2: Derive the weak form of the differential equation. The weak form of the
differential equation is most appropriate for numerical solution and is obtained by
substituting Equation 86 into Equation 84.
xm
xm
W ( x )dl 2jk 0 n ref p ------ W m ( x )dl
2
p ------z
z
2
d
+ ------W m ( x )
dx
xm
0
xm
W m ( x )
- ------------------ dl
----x x
0
xm
which holds providing Equation 50 is valid. However, because of the integral, the
weak form Equation 87 enforces the differential equation on an average (and
therefore weaker) sense.
40
(87)
eo
(x) =
e
j
e
j
( x ) j
(88)
j=1
eo = 2 , we
e are defined as
x2 x
e
-e
N 1 ( x ) = -------------e
x2 x1
(89)
x x1
-e .
N ( x ) = -------------e
x2 x1
e
2
(90)
Figure 5 Nodal expansion function for eth functions considering linear approximation
The basis functions have unit magnitude at one node and vanish at all others with
linear variation between the nodes. When eo = 3 , we have quadratic elements that
are also known as second order elements. Each element has three nodes, one of two
endpoints, and the third is usually placed at the center of the element. Within each
element, the unknown function is approximated as a quadratic function
e ( x ) = ae + be x + ce x2 .
(91)
41
e1 = a e + b e x e1 + c e ( x e1 )
e2 = a e + b e x e2 + c e ( x e2 )
e3 = a e + b e x e3 + c e ( x e3 ) .
2
eo = 3
(x)=
e
N (x )
e
j
e
j
(92)
j=1
( x x2 ) ( x x3 )
e
N 1 = ---------------------------------------e
e
e
e
( x1 x2 ) ( x 1 x3 )
(93)
( x x1 ) ( x x3 )
N = ---------------------------------------e
e
e
e
( x2 x1 ) ( x 2 x3 )
(94)
e
2
42
( x x1 ) ( x x2 )
e
-.
N 3 = ---------------------------------------e
e
e
e
( x3 x1 ) ( x 3 x2 )
e
(95)
Figure 6 The nodal expansion function for eth functions considering quadratic approximation
43
eo
e=1 i=1
x2
Ne
p dW m ( x ) dN i ( x )
----------------- dx ei
k ( qs n )W m ( x )N ( x ) --- -----------------s dx
dx
e
2
0
2
ref
e
i
x1
i
e
e
- 2jk 0 n ref i psN i ( x )W m ( x ) dx --------
psN ( x )Wm ( x )dx --------z
z
e
e
j=1
x1
x1
eo
x2
e
i
e
i
2
d
pW m ( x ) -----dx
d
pW m ( x ) -----dx
x=x
j=1
eo
=0.
x2
(96)
x = x0
The terms in the brackets are due to contributions from endpoints of the domain and
their evaluation is subject to the specific boundary conditions. This equation now
explicitly shows how the boundary conditions enter into the construction of the linear
system. Hereon, we will refer to their contributions as endpoints since we have not yet
specified the type of boundary condition to be imposed.
We are now ready to make different choices for the weighting function to generate a
system of linear equations for the solution of { n} . As stated earlier, this step is also
referred to as testing and Galerkin's method is usually employed in the finite element
e
method. Specifically, we choose W m ( x ) = N j ( x ) and for each of these testing or
weighting functions a single linear equation is generated.
44
Ne
e=1
eo
i = 1
x2
p dN i ( x ) dN j ( x )
2
2
e
e
- ----------------- dx ei
k 0 ( qs n ref )N i ( x )N j ( x ) --- ---------------s dx
dx
e
x1
eo
e
e
-i
psNi ( x )Nj ( x ) dx ------z
e
x1
x2
eo
e
e
2jk 0 n ref
psNi ( x )Nj ( x ) dx --------z
2
e
i
2
j = 1 xe
1
j=1
Ne
pN 2 ( x ) d-----dx
x = xf
1
d
pN 2 ( x ) ----dx
x2
=0.
(97)
x=0
Ne
e
e d2 { e }
e d{ }
----------------------------[
M
]
2jk
n
[
M
]
0 0
2
dz
dz
e=1
+ ( [ k ] k0 n0 [ M ] ) { } + ge { } } = 0
e
(98)
dN i ( x ) dN j ( x )
- ---------------- dx
[ K ] ij = k q ( x )s ( x )N ( x )N ( x ) dx p ( x )s ( x ) --------------dx
dx
e
2
0
e
i
e
j
45
(99)
N ( x )N ( x ) dx
[ M ] ij =
e
e
i
e
j
(100)
ge =
p---------(x)
d N ( x ) ----s ( x ) 1 dx
if e = 1
x = x0
p---------( x ) Ne d
N ( x ) -----s(x) 2
dx
(101)
if e = Ne .
x = xf
Here [ K ] ij and [ M ] ij are tridiagonal when we use linear base function to expand
the field element or pentadiagonal when we adopt quadratic base function to expand
e
the field. Since N i ( x ) are linear functions, the evaluation of integrals can be carried
out in closed form provided pe(x) and qe(x) are taken as constant over integration of
e
e
e
e
e
e
the eth element. Specifically, setting p ( x ) p and q ( x ) q for x 1 < x < x 2 .
e
I1 =
le 2 1
1 2
N N dx = --6e
i
e
j
(102)
dN dN
1
I 2 = --------i --------j dx = --- 1 1 .
dx dx
le 1 1
e
(103)
I1 =
46
4 1 2
le
e e
----N
N
d
x
=
i j
30 1 4 2
e
2 2 16
(104)
7 8 1
e
e
dN i dN j
1
I 2 = -------- -------- dx = ------ 8 16 8 .
dx dx
3l e
e
1 8 7
Here
(105)
le = x2 x1 .
b) Boundary Condition
The endpoint contributions appear only when e
Neumann
d-----dx
or Dirichlet conditions
= d-----dx
x=0
x=0
= 0
x = xf
x = xf
are imposed.
ge =
jk 1
jk f p
0
if e = 1
if e = Ne
otherwise.
(106)
Here,
1, i
1
k 1, i = j -------------------- ln ------x 2, i x 1, i 2, i
(107)
f, i
1
k 1, i = j ------------------------ ln -----x f, i x f 1, i f, i
(108)
s = 1 . For PML, we
47
P 2k 0 n ref
- .
------ = j ---------------------------------------------------1 + ( j 2k 0 n ref ) ( z )
z
(109)
N------ = j --,
D
z
where
(110)
D j z ( 1 )N
l + 1 = ---------------------------------------- l .
D + j z N
(111)
The parameter is introduced to control the finite difference scheme. The range of
is between 0 and 1. We can have standard implicit scheme with = 0 , explicit
scheme with = 1 and Crank-Nicolson scheme with = 0.5. For CrankNicolson scheme the propagating field does not diverge as the beam propagates.
The numerator of the term on the right-hand side of Equation 111 can be factorized as
( An P + Bn P
N
N1
+ Cn P
N2
+ ) = ( 1 + c n P ) ( 1 + c 2 P ) ( 1 + c 1 P )
( D j z ( 1 )N ) = ( A n P + B n P
N
48
(112)
N1
+ Cn P
N2
+ ) = 0 .
(113)
The denominator of the term on the right-hand side of Equation 111 can be factorized
as
( Ad P + Bd P
N
N1
Cd P
N2
+ ) = ( 1 + d n P ) ( 1 + d 2 P ) ( 1 + d 1 P )
(114)
D + j z N =
d P
i
(115)
= 0.
i=0
Here,
c0 = d0 = P = 1
l + 1 at z + z
l at z
as
An P + Bn P
+ Cn P
+ l
-
= ----------------------------------------------------------------------N
N 1
N 2
Ad P + Bd P
+ Cd P
+
(116)
( 1 + c P ) ( 1 + c P ) ( 1 + c P )
( 1 + d n P ) ( 1 + d 2 P ) ( 1 + d 1 P )
(117)
l+1
N 1
N 2
or
n
2
1
l + 1 = ---------------------------------------------------------------------------l .
The explicit expressions for the corresponding Wide-angle (WA) orders using Pad
approximant operator are shown below.
The term
-------2z
2
in Equation 109 can be taken into account quite effectively by using the recursion
relation:
---z
P 2k 0 n ref
-.
= j -----------------------------------------------------------1 + ( j 2 k 0 n ref ) ( z ) n 1
(118)
49
---z
here
a = 2k 0 n ref ,
---z
Pa
P
= j ------------------------ = j --a
j
1 + --- ----a z 1
(119)
= 0
1
D = 1,
(120)
N = Pa
(121)
P
D j z ( 1 )N = 1 j z ( 1 ) --- = 1 + A n P
a
(122)
P
D + j z N = 1 + j z --- = 1 + A n P
a
(123)
z ( 1 )
A n = j -----------------------a
(124)
z
A d = j ------ .
a
(125)
and therefore
where
50
l+ 1
at
1+A P
1 + Ad P
n
- l
l + 1 = ------------------
(126)
or
( 1 + Ad P )
l+ 1
= ( 1 + An P ) .
(127)
l+ 1
at
z + z from the
(128)
( [ M ] + Ad [ L ] )
e
l+ 1 2
= ( [ M ] + An [ L ] )
e
(129)
here
[ L ] = [ K ] k 0 n ref [ M ] .
e
(130)
---z
Here
Pa
= j -------------------------------------------- .
1 + ( j a ) ( z ) 0
(131)
a = 2k 0 n ref .
---z
Pa
= j -------------------P
1 + ---2
(132)
N = P
--a
(133)
51
P
D = 1 + ----2 .
a
(134)
Thus,
P j z ( 1 ) P
--D j z ( 1 )N = 1 + ---2
a
a
1
(1 )
= 1 + ----2 j z ----------------- P = 1 + A n P
a
a
(135)
and,
P + j z P
1 + j z
--- = 1 + ------ P = 1 + A d P
D + j z N = 1 + ---2
2
a
a
a
a
(136)
where
1 )
1 j z (---------------A n = ---
2
a
a
(137)
z
1
A d = ----2 + j ---------- .
a
a
Thus, we can get the unknown field
the triagonal linear system:
l + 1 at z + z
( 1 + Ad P )
l+ 1
(138)
= ( 1 + An P )
solving
(139)
P = [ M ] ( [ K ] k 0 n ref [ M ] ).
e 1
52
(140)
( [ M ] + Ad [ L ] )
e
l+ 1 2
= ( [ M ] + An [ L ] )
e
(141)
here
[ L ] = [ K ] k 0 n ref [ M ]
e
(142)
53
---z
Pa
= j -------------------------------------------1 + ( j a ) ( z ) 2
(143)
---z
Here
P
--- + P
----3a a
= j ---------------- .
1 + 2P
------2a
(144)
a = 2k 0 n ref .
---z
2 2
P
--- + ----3 P
a a
= j ---------------------------2 .
I + 3P
------2- + P
----4a
a
(145)
2 2
N = P
--- + ----3 P
a a
(146)
P
D = 1 + 3P
------2- + ----4- .
a
a
(147)
Thus,
1 )
3 j z (---------------- P
D j z ( 1 )N = 1 + ---
a2
a
2
1 2 z1 - 2
j P = 1 + B n P + A n P
+ ----4 --------------------3
a
a
54
(148)
and,
3
D + j z N = 1 + ----2 + j z --- P +
a
a
2 z - 2
2
1 + ----------- ---j P = 1 + Bd P + Ad P
3
4
a
(149)
z ( 1 -)
1 2-------------------------A n = ---j,
3
4
a
a
(150)
z ( 1 )3
----------------------j,
B n = ---2
a
a
(151)
2 z 1 + -----------j,
A d = ---3
4
a
a
(152)
where:
z 3 +
--------j.
B d = ---2
a
a
Thus, the unknown field
follows
l + 1 at z + z
(153)
l at z
as
1 + Bn P + An P l
( 1 + c2 P ) ( 1 + c1 P ) l .
-2 = --------------------------------------------- l + 1 = -----------------------------------1 + Bd P + Ad P
(154)
( 1 + d2 P ) ( 1 + d1 P )
Multistep Method
In order to solve Equation 154, we applied the multistep method developed by
Hadley.
First, we rewrite Equation 154 as
1 + d2 P l + 1
1 + c1 P l
-----------------
- .
= ----------------1 + c2 P
1 + d1 P
(155)
55
l+ 1 2
as
1+d P
1 + c2 P
2
- l+ 1 .
l + 1 2 = -----------------
(156)
1+c P
1 + d1 P
1
- l .
l + 1 2 = -----------------
Since
l+ 1 2
( 1 + d1 P )
l+ 1 2
(157)
by solving:
= ( 1 + c1 P ) .
(158)
P = [ M ] ( [ K ] k 0 n ref [ M ] ).
(159)
( [ M ] + d1 [ L ] )
e
l+ 1 2
= ( [ M ] + c1 [ L ] )
e
(160)
here
[ L ] = [ K ] k 0 n ref [ M ] .
e
Using
(161)
l+ 1
= ( 1 + c2 P )
l+ 1 2
(162)
( [ M ] + d 2 [ L ])
e
l+ 1
= ( [ M ] + c 2 [ L ])
e
l+ 1 2
(163)
Solving Equation 162 or Equation 162, we can obtain the unknown field
. It is
apparent from the form of Equation 154 that an n th-order Pad propagator may be
decomposed into an n -step algorithm for which the i th partial step takes the form
l+ 1
1+cP
1 + di P
i
- l + (i 1) n
l + i n = ----------------
when
i = 1, 2, , n .
56
(164)
Compute
l+ 1 2
( 1 + d1 P )
l+ 1 2
= ( 1 + c1 P ) .
(165)
( [ M ] + d1 [ L ] )
e
l+12
= ( [ M ] + c1 [ L ] ) .
e
l + 1 at z + z
( 1 + d2 P )
l+ 1
(166)
we solve:
= ( 1 + c2 P )
l+ 1 2
(167)
( [ M ] + d2 [ L ] )
e
l+ 1
= ( [ M ] + c2 [ L ] )
e
l+12
(168)
---z
---z
(169)
Pa
= j -------------------------------------------1 + ( j a ) ( z ) 4
(170)
Pa
= j -------------------------------------------- .
1 + ( j a ) ( z ) 3
----z
P
--- + 3P
--------+P
----53
a
a
a
= ---------------------------------------------------------------------- .
3 + ---1 P + ---1 + ---2 P2
1 + ---2
2
2
4
a a
a a
(171)
---z
Here
P
--- + 4P
-------- + 3P
-------3
5
a
a
a
-3 .
= j ------------------------------------------2
6P
P
5P
- + ----61 + ------2- + -------2
a
a
a
(172)
a = 2k 0 n ref .
57
N = P
--- + 4P
-------- + 3P
-------3
5
a
a a
(173)
2
P
D = 1 + 5P
------2- + 6P
-------+ ----6- .
2
a
a
a
(174)
Thus,
z ( 1 )6 4j z ( 1 ) 2
5 j
----------------------P + ---D j z ( 1 ) N = 1 + --- ---------------------------- P
2
4
3
a
a
a
a
1 3j
z ( 1 )- P 3 = 1 + C P + B P 2 + A P 3
+ ------------------------------n
n
n
6
5
a
a
(175)
and
z5 + j
6 + j 4------------z- P + ---D + j z N = 1 + --- P2 +
3
2
4
a
a
a
a
z - 3
2
3
1 + j 3-----------+ ---P =1 + C d P + B d P + A d P
5
6
a
a
(176)
where
58
3j z ( 1 )1 ---------------------------A n = ---6
5
a
a
(177)
6 ---------------------------4j z ( 1 -)
B n = ---4
3
a
a
(178)
z ( 1 )5 j
----------------------C n = ---2
a
a
(179)
1 3j z
A d = ----6 + -------------5
a
a
(180)
6 + -------------4j z B d = ---4
3
a
a
(181)
z 5 + j
--------C d = ---.
2
a
a
(182)
l + 1 at z + z
2
1+C P+B P +A P
1 + Cd P + Bd P + Ad P
l at z
as
(1 + c P)(1 + c P)(1 + c P)
( 1 + d3 P ) ( 1 + d2 P ) ( 1 + d1 P )
n
n
n
3
2
1
-3 l = --------------------------------------------------------------------- l .
l + 1 = -----------------------------------------------------2
(183)
Multistep method
In order to solve Equation 183, we use the Multistep method, that is, the unknown field
l + 1 can be obtained from the known field l by successively solving Equation 164
for i = 1, 2, 3 . Therefore for Pad(3,3) we follow the steps:
1
Using
l , compute l + 1 3
( 1 + d1 P )
= ( 1 + c1 P ) .
l+ 1 3
= ( [ M ] + c1 [ L ] ) .
(184)
( [ M ] + d1 [ L ] )
e
Using
l + 1 3 , compute l + 2 3
( 1 + d2 P )
(185)
l+ 2 3
= ( 1 + c2 P )
l+ 1 3
l+23
= ( [ M ] + c2 [ L ] )
(186)
( [ M ] + d2 [ L ] )
e
l+ 1 3
(187)
59
l+ 2 3
( 1 + d3 P )
l+ 2 3
l+ 1
= ( 1 + c3 P )
l+1
= ( [ M ] + c3 [ L ] )
(188)
( [ M ] + d3 [ L ] )
e
60
l+ 2 3
(189)
---z
---z
Pa
= j -------------------------------------------1 + ( j a ) ( z ) 6
(190)
Pa
= j -------------------------------------------- =
1 + ( j a ) ( z ) 5
2
P
-------- + 6P
--------+P
----7--- + 5P
3
5
a
a
a
a
j --------------------------------------------------------------------------------------------------------- .
5 1
6 4 2
1 3 3
1 + ----2 + ----2 P + ----4 + ----4 P + ----6 + ----6 P
a a
a a
a a
(191)
---z
P
--- + 6P
-------- + 10P
----------- + 4P
-------3
5
7
a
a
a
a
-4 .
= j ----------------------------------------------------------------2
3
7P
15P
10P
P
1 + ------2- + ----------- + ----------- + ----84
3
a
a
a
a
(192)
N = P
--- + 6P
-------- + 10P
----------- + 4P
-------3
5
7
a
a
a a
(193)
2
3
P
15P- 10P
D = 1 + 7P
------2- + --------------------+
+ ----8- .
4
6
a
a
a
a
(194)
61
Thus,
z ( 1 )
7
D j z ( 1 ) N = 1 + ----2 j ------------------------ P
a
a
6 z ( 1 )- 2 10 10
z ( 1 )- 3
+ 15
-----4- j -------------------------P + -----6- j ----------------------------P
3
5
a
a
a
z ( 1 )- 4
2
3
4
1 j 4-------------------------+ ---P =1 + D n P + C n P + B n P + A n P
7
a8
(195)
and
z -
6 z - 2
7 + j
--------D + j z N = 1 + ---P + 15
-----4- + j -----------P
3
2
a
a
a
a
z 3 1
4 z 4
10- + j 10
--------------- P + ----8 + j ------------ P
+ ----5
7
a6
a
a
a
2
= 1 + Dd P + Cd P + Bd P + Ad P
(196)
here
62
z ( 1 )
1 j 4-------------------------A n = ---7
8
a
a
(197)
z ( 1 )B n = 10
-----6- 10j
------------------------------5
a
a
(198)
z ( 1 )C n = 15
-----4- 6j
---------------------------3
a
a
(199)
z ( 1 )7 j------------------------D n = ---
.
2
a
a
(200)
l + 1 at z + z
1+D P+C P +B P +A P
1 + Dn P + Cn P + Bn P + An P
l at z
as
d
d
d
d
-4 l
l + 1 = ------------------------------------------------------------------------2
3
( 1 + c4 P ) ( 1 + c3 P ) ( 1 + c2 P ) ( 1 + c1 P ) l
- .
= --------------------------------------------------------------------------------------------( 1 + d4 P ) ( 1 + d3 P ) ( 1 + d2 P ) ( 1 + d1 P )
(201)
Multistep Method
In order to solve Equation 201, we use the multistep method, that is, the unknown field
l + 1 is obtained with the following the steps:
1
Compute
l+ 1 4
( 1 + d1 P )
l+ 1 4
= ( 1 + c1 P ) .
l+ 1 4
= ( [ M ] + c1 [ L ] ) .
(202)
( [ M ] + d1 [ L ] )
e
Compute
l+ 1 2
(203)
( 1 + d2 P )
l+ 1 2
= ( 1 + c2 P )
l+ 1 4
l+ 1 2
= ( [ M ] + c2 [ L ] )
(204)
( [ M ] + d2 [ L ] )
e
Compute
l+ 3 4
l+ 1 4
(205)
( 1 + d3 P )
l+ 3 4
= ( 1 + c3 P )
l+ 1 2
l+ 3 4
= ( [ M ] + c3 [ L ] )
(206)
( [ M ] + d3 [ L ] )
e
l+ 1 2
(207)
63
Finally, knowing
linear system:
( 1 + d4 P )
l+ 1
= ( 1 + c4 P )
l+ 3 4
(208)
( [ M ] + d4 [ L ] )
e
l+ 1
= ( [ M ] + c4 [ L ] )
e
l+ 3 4
(209)
The advantage of the multistep is that the matrix equation to be solved in each step
is the same size as the Fresnel equation and for 2D problems is tridiagonal when we
consider Finite Difference method (FD) or Finite Element Method (FEM) considering
linear element.
64
References
[1]
M.D. Feit and J.A. Fleck, Jr.: Light Propagation in Graded-Index Optical Fibers, Appl. Opt. 17,
(1978): 3990-3998.
[2]
M.D. Feit and J.A. Fleck, Jr.: Analysis of Rib Waveguides and Couplers by the Propagating
Beam Method, J. Opt. Soc. Am. A 7, (1990): 73-79.
[3]
[4]
T.B. Koch, J.B. Davies, and D. Wickramasingle: Finite Element/Finite Difference Propagation
Algorithm for Integrated Optical Devices, Electron. Lett. 25, (1989): 514-516.
[5]
D. Yevick: A Guide to Electric Field Propagation Technique for Guided-Wave Optics, Opt.
Quantum Electron. 26, (1994): S185-S197.
[6]
[7]
W.P. Huang and C.L. Xu: Simulation of Three-Dimensional Optical Waveguide by a Full-Vector
Beam Propagation Method: IEEE J. Select. Quantum Electron. 29, (1993): 2639-2649.
[8]
C.L. Xu, W.P. Huang, S.K. Chaudhuri, and J. Chrostowski: An Unconditionally Stable Vectorial
Beam Propagation Method for 3-D Structures, IEEE Photon. Technol. Lett. 6, (1994): 549-551.
[9]
[10]
G.R. Hadley: Transparent Boundary Condition for the Beam Propagation Method, IEEE
J. Quantum Electron. 28, (1992): 363-370.
[11]
Yasuyuki Arai, Akihiro Maruta, and Masanori Matsuhara: Transparent Boundary for the FiniteElement Beam Propagation Method, Opt. Lett. 18, (1993): 765-766.
[12]
J.P. Berengr: A Perfectly Matched Layer for the Absorption of Electromagnetic Waves,
J. Comput. Phys. 114, (1994): 185-200.
[13]
F. Fogli, G. Bellanca, and P. Bassi: TBC and PML conditions for 2D and 3D BPM: A Comparison,
Opt. Quantum Electron. 30, (1998): 443-456.
[14]
K. Kawano and T. Kitoh: Introduction to Optical Waveguide Analysis. John Wiley & Sons, Inc.
(2001).
[15]
W.P. Huang, C.L. Xu, W. Lui, and K. Yokoyama: The Perfectly Matched Layer (PML) Boundary
Condition for the Beam Propagation Method, IEEE Photon. Technol. Lett. 8, (1996): 649-651.
[16]
[17]
M. Koshiba, Y. Tsuji, and M. Hikari: Finite Element Beam Propagation Method with Perfectly
Matched Layer Boundary Conditions, IEEE Trans. on Magnetics 34, (1999): 1482-1485.
[18]
[19]
65
[20]
G.R. Hadley: Wide-Angle Beam Propagation using Pad Approximant Operators, Opt. Lett. 17,
(1992): 1426-1428.
[21]
M. Koshiba and Y. Tsuji: A Wide-Angle Finite Element Beam Propagation Method, IEEE
Photon. Technol. Lett. 8, (1996): 1208-1210.
[22]
[23]
Y. Chung and N. Dagli: Assessment of Finite Difference Beam Propagation, IEEE J. Quantum
Electron. (1990): 1335-1339.
[24]
Y. Chung and N. Dagli: Explicit Finite Difference Vectorial Beam Propagation Method, Electron.
Lett. 27, (1991): 2119-2121.
[25]
[26]
[27]
W.P. Huang, C.L. Xu, S.T. Chu, and S. Chaudhuri: The Finite-Difference Vector Beam
Propagation Method: Analysis and Assessment, J. Lightwave Technol. 10, (1992): 295-305.
[28]
M. Koshiba: Optical Waveguide Theory by Finite Element Method. KTK Scientific Publishers
and Kluwer Academic Publishers, Dordrecht, Holland, (1992).
[29]
J. Jin: The Finite Element Method in Electromagnetics. John Wiley & Sons, Inc. (1993).
[30]
[31]
G. R. Hadley: Multistep Method for Wide-Angle Beam Propagation, Opt. Lett. 17,
(1992): 1743-1745.
[32]
66
+ ----- - + k 2 n 2 ( x, y ) = 0
------2
2
x z
2
(1)
( u, v ) defined with
W = u + iv = f ( x + iz ) = f ( Z )
(2)
67
W = R 2 ln ( Z R 2 )
(3)
- + ------ + k 2 dZ 2 n 2 ( x ( u, v ), y ( u, v ) ) = 0
-------------2
2
dW
u v
2
(4)
dZ- = exp ( u R )
------2
dW
Trying to solve the original wave Equation 1 for bends may lead to large errors due to
the paraxial approximation used in BPM. Using conformal mapping technique we can
avoid the limitations imposed by the paraxial approximation and simply solve the
wave equation Equation 4 for a straight waveguide with a modified refractive index
dZ- n ( x, y ) .
------dW
Along with the argument in [3], the method can be also used in 3D cases by applying
the transformation to any given depth of the waveguide.
68
References
[1]
M. Heiblum and J.H. Harris: Analysis of Curved Optical Waveguides by Conformal Mapping,
IEEE J. Quant. Electron. 11, (1975): 75-83.
[2]
S.J. Garth: Modes on a Bent Optical Waveguide, IEEE Proc. J. 134, (1987): 221-229.
[3]
P.L. Fan, M.L. Wu, and C.T. Lee: Analysis of Abrupt Bent Waveguides by the Beam Propagation
Method and the Conformal Mapping Method, J. Light. Technol. 15, (1997): 1026-1031.
69
Notes:
70
n i ( , x, y ) = n i ( ) + n i ( , x, y )
(0)
i = o, e
(1)
where, depending on the crystal cut and polarization, we consider the ordinary ( o ) or
extraordinary ( e ) index distribution. Due to the chromatic dispersion, the graded
index also depends on the wavelength . The chromatic dispersion of the ordinary
and extraordinary bulk index is computed using Sellmeiers dispersion equations
( in m)
(0) 2
(2)
(3)
m.
71
n i ( , x, y ) = d i ( )h i ( x, y ),
i = o, e.
(4)
where the dispersion factor is different for the ordinary and extraordinary cases
( in m)
0.67
d o ( ) = ------------------- 2 0.13
0.839
d e ( ) = --------------------------2
0.0645
(5)
h i ( x, y ) = [ F i c( x, y )] i
i = o, e
(6)
F o = 1.3 10
25
cm
F e = 1.2 10
23
cm
and
o = 0.55
and
e = 1.00
are different for the ordinary and extraordinary cases. They are fitted from published
experimental data [1].
The concentration profile can be derived following the classical diffusion theory
[2], [3]. The profile has a bell-shaped form
2
w
w
y -
c ( x, y ) = c 0 erf ---------- 1 + 2x
------ + erf ---------- 1 2x
------ exp ---- D2
2D H
2D H
w
w
(7)
In the lateral direction, that is horizontal to the crystal surface, the profile is
characterized by the combination of error functions. In the crystal in-depth direction,
that is vertical to the crystal surface, it has a Gaussian shape. The profile's parameters
include the profile constant c 0 , the dopant stripe width before diffusion w , the
horizontal (lateral) diffusion length D H , and the vertical (in depth) diffusion length D V .
72
In OptiBPM, the dopant stripe width before diffusion is identified with the waveguide
width provided by the layout.
The horizontal and vertical diffusion lengths
D H = 2 tD 0H exp ( T 0 T )
(8)
D V = 2 tD 0V exp ( T 0 T )
(9)
are functions of the diffusion time t and the diffusion temperature T . The
temperature coefficient T 0 and the diffusion constants D 0H , D 0V are specific
for the Ti:LiNbO3.
OptiBPM provides the option to enter the horizontal and vertical diffusion lengths
(Profile parameters Group I), or, alternatively, to specify the diffusion process by
entering constant for the diffusion lengths (Group II).
The concentration profile constant is a function of the stripe thickness before
diffusion , the dopant constant C m , and the vertical diffusion length D V
described earlier,
c0 = Cm ( DV )
(10)
C m = ( M at )N A
(11)
M at and
73
heated for several hours, similar to the Titanium diffusion process. Formally, the
resulting refractive index distribution can be modeled using similar formulas, so all
parameters have the same meaning in both cases. However, the default parameters
are different.
The major differences between the Ti and Mg diffusion processes:
The power distribution factors for the Magnesium process are the same for
ordinary and extraordinary indices and equal to unity in contrast to Titanium
process.
Different dopant constant the material density of Magnesium and its atomic
weight produce a dopant constant that is smaller than that of Titanium.
Basic proton exchange takes place when the Lithium Niobate substrate is immersed
in an appropriate proton source, usually an acid melt, and heated for a couple of hours
at temperatures ranging from 150 to 300 degrees Celsius. Under these conditions,
the two ion species counter diffuse, so that material is exchanged between the
substrate and the melt. The annealing post processing involves solely heating of the
sample to redistribute the Lithium and Hydrogen ions.
Before presenting more details, we note the following important remarks. In the
OptiBPM model, only the extraordinary refractive index is affected (increased) by the
proton exchange process. Changes of the ordinary index are negative. They are
much smaller and therefore neglected.
74
Proton exchange process on its own leads to a step-function index profile with a
change of the refractive index [4]
(0)
n es = [ 1 exp ( x ) ]
(12)
DV =
tD 0 exp ( Q RT )
(13)
n e ( y ) = n e0 + n es f ( y )g ( x )
(14)
1
w
1
w
2x
2x
g ( x ) = --- erf ---------- 1 + ------ + --- erf ---------- 1 ------
2D H
2
2D H
w
w
2
where the horizontal diffusion length
the horizontal distribution function.
(15)
75
f ( y ) = exp [ ( y D V ) ]
(16)
n es
q
- = pt a
1 ---------(0)
n es
DV
c
-------- 1 = bt a
(0)
DV
(0)
(17)
(0)
where D V is the initial PE depth, n es is the initial change of the refractive index
after proton exchange and b, c, p, q are the fitting parameters (Table 3). The
refractive index distribution is strongly dependent on the post-exchange time t a and
the post-exchange temperature T a .
In a case when the predefined profiles are found not sufficient, user has the option to
define his own refractive index profiles by using the User Function Profiles in Profile
designer.
Table 2
Toluic Acid
Benzoic Acid
109-263
122-249
7.02 107
7.36 109
75.58
94
Table 3
76
T a [oC]
b [hrc]
c []
p [hrq]
q []
300
0.7031
0.0754
0.2325
0.1033
400
1.2884
0.7577
0.3749
0.6574
ELECTROOPTIC EFFECT
Electrooptic Effect
The electrooptic effect is the modification of the refractive index by an externally
applied electrostatic field. In the linear electrooptic effect, the size of the perturbation
to the refractive index is directly proportional to the strength of the local electrostatic
field. In OptiBPM, there are two features to model in the linear electrooptic effect; one
is a general implementation of the effect for any kind of electrode shape and material,
the other is aimed specifically at Lithium Niobate or other crystals with point group
symmetry 3m. The general implementation was introduced in release 9.0. It follows a
strategy of defining an electrode material to identify electrode position and shape the
same way as dielectric materials define optical waveguide position and shape. In this
approach, dielectric materials are supplied with electrostatic permittivity definition, so
that the electrode potentials can be used to find the electrostatic field in the transverse
plane. Once the field is found, the perturbation to the refractive index is found directly
by equation [21].
The 3m point group electrooptic simulation is mainly for the specific technology of
diffused waveguides in electrooptic materials like Lithium Niobate. This feature is
accessed through the Electrode Region Tool found in the layout designer. This feature
works independent of the general electrooptic simulation feature, it is not necessary
to define electrode materials to use the Electrode Region Tool. These Lithium Niobate
devices are waveguide modulators or switches that employ metallic electrodes
deposited on top of optical waveguides to serve the purpose of applying the electric
field. An intermediate buffer layer with a low dielectric constant is often deposited
between the electrodes and the substrate to reduce the losses that are due to the
metallic cover of the waveguide. The efficiency of the device depends on the overlap
between the electric field and the optical field. By changing electrode parameters you
can optimize the device. Usually, the electrode in this kind of electrooptic device is
plated to a thickness of 2-3 microns in order to reduce its ohmic losses while the
electrode width can be as small as 10 microns and the gap between electrodes is
typically 5 microns. The calculation of an electric field of the coplanar electrodes in the
Electrode Region of OptiBPM is based on reference [8].
OptiBPM provides the Electrodes Region tool to enter and specify one or more
electrode sets. Each electrode set can have up to three electrodes, with each
electrode defined by its width and applied voltage. It is also possible to adjust the
separation between the electrodes, their common thickness, and to apply a buffer
layer characterized by its thickness, horizontal and vertical permittivity, and refractive
index. The number of the electrode sets per region is not limited.
From the electrooptic effect perspective, LiNbO3 is a trigonal crystal with the point
group symmery 3m. The matrix of the electrooptic or Pockels coefficients for the
group 3m crystals is [11]
77
ELECTROOPTIC EFFECT
0
0
0
r ij =
0
r 51
r 22
r 22
r 22
0
r 51
0
0
r 13
r 13
r 33
0
0
0
(18)
Values of the electrooptic coefficients can be altered within the Profile Designer,
however, published data are proposed as the program defaults. The crystal
coordinate system (X, Y, Z) is aligned with the principal axes of the crystal. Referring
to the crystal coordinates, the program offers calculations with different crystal cuts,
propagation directions and the choice of the TE and TM polarization.
Notice that the (X, Y, Z) crystal system is not the same as the device layout coordinate
system (x, y, z). In the layout coordinates, it is assumed that the z-direction is the
propagation direction. The electrode fields are referred to the layout coordinates. The
crystal cut direction in conventionally assumed as perpendicular to the crystal wafer
surface. Electrode sets produce static electrical fields that can be either horizontal or
vertical to the crystal surface. The optical fields, being the principal electrical
component of the electromagnetic field, can oscillate horizontally (TE polarization) or
vertically (TM polarization) to the surface.
Index ellipsoid
In the absence of electrode fields the refractive index ellipsoid, or indicatrix, is of the
following form:
2
X
Y- + Z
----2- + --------2 = 1
2
no no ne
where
78
(19)
ELECTROOPTIC EFFECT
Under the influence of an electric field the index ellipsoid is deformed in space:
1 r E + r E X 2 + ---1 r E + r E Y 2 + ---1 + r E Z2 +
---33 z
n 2 22 y 13 z
n 2 22 y 13 z
n2
(20)
+ 2r 51 E y YZ + 2r 51 E x XZ 2r 22 E x XY = 1
In different cases of the cut, the propagation and polarization, and the electrode field
direction, different electrooptic coefficients r ij are used in the simulation program.
Table 4 is the reference table to help you in entering your electrooptic coefficients.
The mixed coupling terms in the index ellipsoid were ignored. The change in the
corresponding refractive index can be approximated as
3
n
n i' n i + ----i ( r H E H + r V E V )
2
(21)
where E H , E V , r H , and r V are the electric fields in horizontal and vertical directions
and the corresponding electrooptic coefficients, respectively, and i denotes either
ordinary or extraordinary refractive index. Notice that whether the electrode field is
considered horizontal or vertical depends on the electrode configuration, voltage and
the waveguide position. Intuitively, you can assume that the electrostatic field lines
between electrodes follow patterns familiar from electrostatics. For example, if you
place one of the electrodes right on the top of the waveguide, it will likely produce the
static field that is vertical in the waveguide.
Table 4
TE
TM
Crystal Cut
Propagation
Direction
Horizontal
Electrode Field
Vertical
Electrode Field
Horizontal
Electrode Field
Vertical
Electrode Field
r33
r13
r33
r13
r22
r22
r13
r33
r13
r33
r22
r22
r22
r22
79
ELECTROOPTIC EFFECT
References
[1]
E. Strake, G.P. Bava, and I. Montrosset: Modes of channel waveguides: A novel quasi-analytical
technique in comparison with scalar finite-element method, J. Light. Technol. 6, (1988): 11261135.
[2]
J. Crank: The mathematics of diffusion. Oxford University Press, New York, (1975).
[3]
G.B. Hocker and W.K. Burns: Mode dispersion in diffused channel waveguides by the effective
index method, Appl. Opt. 16, (1977): 113-118.
[4]
J. Nikolopoulos and G.L. Yip: Accurate modeling of the index profile in annealed protonexchanged LiNbO3, Proc. SPIE 1583, Integrated Optical Circuits, (1991): 71-82.
[5]
J. Nikolopoulos and G.L. Yip: Theoretical modeling and characterization of annealed protonexchanged planar waveguides in z-cut LiNbo3, J. Light. Technol. 9, (1991): 864-870.
[6]
E.Y.B. Pun, K.K. Loi, and P.S. Chung: Experimental studies of proton-exchanged waveguides
in Lithium Niobate using toluic acid, Proc. SPIE 1583, Integrated Optical Circuits, (1991): 64-70.
[7]
J.L. Jackel: Proton exchange: past, present, and future, Proc. SPIE 1583, Integrated Optical
Circuits, (1991): 54-63.
[8]
[9]
H. Jin, R. Vahldieck, M. Belanger, and Z. Jakubczyk: A mode projecting method for the quasistatic analysis of electrooptic device electrodes considering finite metallization thickness and
anisotropic substrate, J. Quant. Electron. 27, (1991): 2306-2314.
[10]
R. Syms and J. Cozens: Optical guided waves and devices, Section 3.7, London, McGraw-Hill,
(1992).
[11]
A. Yariv: Optical Electronics in Modern Communications. 5th edition, Oxford University Press,
(1996).
80
SCATTERING DATA
Scattering Data
Introduction
Ever since the development of compact and user friendly computer-aided design
(CAD) for analyzing various waveguiding structures, or photonic devices, there has
been a growing need to make the methods more flexible and also more efficient than
they were originally found. Pioneering works dealing with numerical methods suitable
for optical circuit simulations and their complex analysis date back to 1960s. It means
they are actually as old as the integrated optics itself. Although these numerical
techniques have appeared to be relatively powerful they can be used to study just
very basic photonic ingredients, as for example various curvilinear directional
couplers and branching or combining waveguides, further the tapered waveguides,
S-bends, and few others. Some more sophisticated techniques even handle
multidirectional propagation of the light (e.g. ring resonator - see below). One can say
that these methods must be exploited in very specific way and a user may be quite
limited or restricted when using them. We are however facing more and more complex
optical circuits (see [1] and [2]). As an extreme example, a user may wish to analyze
a functionality of devices being set up on a six inch wafer. To investigate such a
structure, it is becoming a very serious task, because the layout could consist of quite
exotic subcomponents and their mutual combinations and/or variations in the layout
on the wafer. There is definitely no complex method for such a complete analysis yet
and one can also conclude, that very advanced (see below what it means) circuits are
often out of even theoretical simulation possibilities of those particular methods. We
should also mention the fact that some numerical approaches could be able to
simulate more complex photonic circuits, but the time consumption would be
practically unacceptable, at least uneconomical.
Hence, the purpose of this paper is to show a relatively efficient solution to analyze
advanced photonic circuits. We will consider three principal and frequently exploited
numerical approaches in the following. These methods are good enough to simulate
the particular basic optical ingredients. By comparing them, we will point out their
advantages and disadvantages. This should directly lead to the new proposed
solution when the nontrivial circuits are considered. We will be concerning with an
efficient connection among these methods. Finally, the presented simulation
approach of the advanced circuits will be entirely performed by a proper combination
of the Optiwave Corporation products.
81
SCATTERING DATA
of the natural unidirectional propagation of the light beam (see [1] and the references
therein). The schematic in Figure 1 depicts the well-known four port coupler, one of
the most typical examples being studied by BPM (please note the sizes, especially
the slopes of the waveguides). We explain the fundamental limitation of the BPM with
this example.
Figure 1 Four-port coupler
The reason of the unidirectional properties of the BPM is obvious, since the method
is derived under the paraxial approximation. This yields an accurate analysis just in
the close vicinity of the longitudinal axis. The propagation direction is also indicated
on the schematics above. Some relaxation (say up to 60 degrees deviation from the
longitudinal direction) can be achieved by the wide angle BPM. Anyhow, this can be
applied just for very specific photonic arrangements. Further improvement is available
using the so called bi-directional BPM (backward propagating to the formerly
assumed direction) and some other minor modifications. These improvements have
been worthwhile indeed, but they are not still satisfactory for our purpose. Apart from
these limitations, the BPM techniques are relatively fast and they can also be used to
study quite long devices (up to a few millimeters). The speed is approximately related
to the area of the simulation window. We will reconsider this fact below.
Another numerical method is the finite difference time domain method (FDTD) [3]. The
method is complex and it is based on the direct numerical solution of the Maxwell's
equation in time domain. Unlike BPM, the FDTD is omnidirectional. The schematic in
Figure 2 shows a suitable example for the FDTD, the ring resonator.
Figure 2
82
Ring resonator
SCATTERING DATA
The light is introduced into the device through the upper waveguide, however it later
propagates along the ring circumference, which would be unacceptable in BPM. The
method can also simulate scattering phenomena, nonlinear effects and many others.
The FDTD has one crucial limitation as well. Namely, the device design is strictly
space limited, say to several tenths micrometers in size (in 3D). The reason for this is
the huge CPU consumption during the simulation.
The last method is the exploitation of (quasi) analytical techniques like the coupled
mode theory (CMT). Our product OptiGrating is actually a computer automated CMT.
The CMT is mainly appointed for the description the light interaction with the media
containing gratings [4]. A grating is obviously very specific component of a photonic
circuit and we will be analyzing any grating appearing in a layout separately through
the paper, although some sophisticated numerical methods (even like FDTD) can be
used to describe the light response from the interaction with a grating. One can also
use the CMT advantageously for some basic classification of various waveguide
configurations (or any coupling phenomena).
83
SCATTERING DATA
The device can be fully analyzed by the BPM, however we can show it is not
necessary. The distances among the input ports (named with the respect to
multiplexed wavelengths) are typically 0.25 mm and the device is several millimeters
long, the circuit area is quite large. Note, the speed of the BPM simulator is
approximately proportional to the layout area. Further, we can see that the layout is,
say, somehow coarse, i.e. we can declare some places where the field exists in the
evanescent form and the field is negligible. Running the simulation through these
places is inefficient, however we cannot exclude these dead places from the
rectangular simulation window. Our new approach proposes an elegant solution (see
the pertinent paragraph below).
84
SCATTERING DATA
Figure 4
85
SCATTERING DATA
Star coupler
We can see quite a number of the input ports (on the left hand side) and some number
of the output ports (the right hand side). Actually, we do not need to care much what
happens inside the simulation window. This has been determined by the BPM and
what we actually wish to collect is the pertinent data at the outputs. Since we are
dealing with the optical circuits we would need some kind of information carrying the
transfer of the power among the input and the output ports accompanied with the
phase change. The principle of this sub-circuit analysis is very simple and needs just
a negligible action by a user. Having a layout created under the OptiBPM, like the four-
86
SCATTERING DATA
port coupler (i.e. 2 input ports and 2 output ports) or the star coupler (thus generally
designed as N input and M output ports), one can click the icon called Scattering data
script icon seen below).
What happens then is fully automated by OptiBPM. Namely, the scattering data script
icon generates the script yielding the scanning through a given interval of
wavelengths. Running the simulation thereafter, we will receive the S-data file fully
describing the optical response of the BPM sub-circuit under study. Let us show how
it really works in the following.
Any suitable layout for our approach can be schematically depicted as shown in
Figure 7. Such layouts consist of few basic items. Firstly, there is a given rectangular
simulation window (understood as the wafer in the OptiBPM). The propagation
direction BPM propagation direction is stated from the left to the right. Therefore, we
have M input ports on the left and N output ports on the right. Both types of ports are
supposed to have the light in a modal configuration. In addition, they may be arbitrarily
tilted and each input/output waveguide may be of a different geometry. The only one
condition is the waveguides must carry the light in the fundamental modal field. These
ports can be understood as the connectors, it will be mentioned later in the final
implementation part.
Figure 7 Scattering Data layout schematic
We would now like to know how is the entire device (the schematics show the MMI
coupler) response to the introduced modal field. The simulation run under the S-data
script does the following. The simulation starts with the propagation of a pertinent
modal field from the first input waveguide. Whatever happens inside the simulation
window, we expect some modal field at each output waveguide. The second step of
the scripted loop is the response from the second waveguide up to the M -th one. All
this is performed for several user defined number of wavelengths, as seen in the
scripting loop.
We may describe the procedure mathematically. Let us begin with the trivial four-port
coupler (see Figure 1). Having known the input fields a 1 and a 2 , we may construct
the schematic matrix S yielding the desired information at the output ports b 1 and b 2
(note there is some analogy with the classical scattering matrix, however we use a
87
SCATTERING DATA
reduced form of it, hence it is called S-data matrix through the text). The four-port
coupler is then characterized by the following relation:
b1
S S a
= 11 12 1
b2
S 21 S 22 a 2
(1)
b1
S 11
b 2 = S 21
bM
S M1
S 12
S 22
S M2
S 1N
S 2N
S MN
a1
a2
aN
(2)
We use the following relations to obtain the desired S-data elements. We are
searching for a response on a unitary input modal field (unitary means the unit
amplitude and zero phase additional advance of the modal filed). We have to use the
following approximation, because it would be somehow cumbersome to transport a
complete information carrying the output field distribution yielded from the BPM
simulation. Concerning the relative power presence at the output waveguide, we thus
compare the actual final BPM field obtained after the simulation at each output
waveguide with that one being theoretically present if the single straight waveguide
light propagation considered for the pertinent output waveguide. This can be easily
done by well-known power overlap integral
E1 E2 dx
-,
P = --------------------------------------2
2
E1 dx E2 dx
(3)
where one field is the BPM one, while the second is the modal field distribution of
output waveguide (the asterisk means the complex conjugated field). The
denominator, consisting of the product of two integrals, ensures the normalization of
the overlap integral from 0 to 1. determines the integration region.
88
SCATTERING DATA
The response with respect to the cumulated phase delay is then given by (both real
and imaginary part)
b =
P exp [ j ( kn 0 L + wg ) ] ,
(4)
n0 L nr Lr ,
(5)
with r being the number of regions in the layout. In other words Equation 4 simply
adds the phase shift due to the optical length of the wafer. Since the responses were
sought for the unit input modal fields, the collected values of b for each combination
(input/output/wavelength) created according to Equation 2 the S-data matrix S ij
elements. The exported file is a text file with an '.s' extension. The first line contains
two integer values: the number of inputs and the number of outputs. All the
subsequent lines represent an individual scattering data matrix for a single
wavelength. They contain the wavelength in microns and all the complex values of the
amplitude transmission between each input and output port. The total number of
elements in each row is the number of the inputs times the number of the outputs
times 2 (real and imaginary parts) plus one (wavelength). These lines appear such
that the wavelength is in increasing order.
S ( k ) S c exp { i ( k c k )n 0 L } ,
(6)
89
SCATTERING DATA
Solutions
The concluding part of our discourse will show both the complexity and the flexibility
of the presented modeling improvements. The OptiSystem schematic layout brings a
new vision of the optical circuit behavior. Any advanced photonic circuit may be
further studied as a set consisting of separated fundamental components. As we will
also see, the use of the OptiSystem platform extends the simulation possibilities
dramatically, because of a possible entering of various photonic and even electronic
simulation tools.
90
SCATTERING DATA
Let us mark the couplers as shown in Figure 9. At this point we encounter the key
point of the approach - its division criteria with the respect to the sub-circuit
functionality. We have to split the circuit into the particular cells. The cells must be self
existing fully functional units, although the splitting of the whole device must not
disturb its functionality in any way when later composed together by means of the
OptiSystem.
91
SCATTERING DATA
Four-port coupler
92
SCATTERING DATA
First the most accurate way is to simulate them by BPM similarly to the coupler - let
us call it total analysis with respect to this approach. However, the detailed study is
not needed for all waveguides. We would prefer to do so for the waveguides playing
a role between the couplers, since we are primarily interested in the phase difference
between the arms. The waveguides connecting the ports with the core of the device
(i.e. the outermost waveguides) are simple isolated waveguides engaged in modal
propagation in the fundamental mode. After some preliminary inspection we can even
neglect the losses or we can prescribe them analytically. In other words, a user's
experience and intuitive estimation says how far any approximation may be used.
This means we can approximately assume the power overlap integral to be the unity
at the end of the waveguide and we have to find the phase delay according to
Equation 4. The style of the S-data file is obvious. To generate these data analytically
requests only the knowledge of the propagation length(s) and the modal indices. This
can be even done by any spreadsheet codes. We will also supply a user with a short
engine creating the files soon. The huge advantage here is we do not employ any
numerical technique to describe all the waveguides where numeric yields no essential
results. Short inspection apparently shows the power overlap integral differs by
negligible amount after relatively long propagation in the straight waveguide. We thus
need to consider the phase delay, as described above.
What about the efficiency of the method? We can see we have to run the BPM for only
small fractions of the whole layout. This saves an immense portion of the simulation
time and we are missing no essential information about the light traveling on the
layout. To be more specific, let us show the final design of the mux/demux device in
the OptiSystem environment.
Figure 11 Remaining primitive waveguides from layout
93
SCATTERING DATA
The four-port coupler takes the form shown on the left. The icon
possesses all the desired data with respect to the power transfer, the
phase delay as the dependencies on the considered wavelength
interval.
The schematic representation of the device according to the original
schematics is shown in Figure 12. For an example, note the direct
(analytical) connection from the coupler 'b' to the output A, because
there is no special functionality of that upper waveguide. Introducing
the light sources and the analyzers (power meters), we may run the simulation. Since
we are dealing with small matrices, the simulation takes only negligible time.
Figure 12 Four-port coupler schematic in OptiSystem environment
Figure 13 details the flexibility of the OptiSystem tool. If there is no need for the exact
analysis, we can skip some numerical simulations and simulate only those parts we
are interested in. The simplest layout is shown in Figure 13.
94
SCATTERING DATA
We have numerically studied only the phase differences of each arm, and we
exploited analytically prescribed 3dB coupler. We may exchange any S-data part of
the simulation by an analytical model and vice versa. This possibility opens very huge
field for the additional study of a device, its modification, pre-calculation, partial
analysis (e.g. one can put the power meter in any suitable place inside the layout) and
many others. You can see the agreement with the original paper [5] (we show only
one channel signal for the sake of brevity). The files are available in the template
library of Optiwave products.
Figure 14
95
SCATTERING DATA
We follow exactly the same procedure as shown before. At this point, we want to point
out the possible questionableness of any chosen division criteria. The optical subcells like the couplers should cover the entire functionality of the element. The slight
difficulty arises with the division of the long curved waveguides marked on the
Figure 15 with yellow lines. A user will probably pick the proposed solution marked by
the bold lines. However, a potential success of the simulation will depend on the
numerical method and/or approach employed for the particular task (e.g. the
conformal mapping technique in cases of bent waveguides). This is shown by the
thinner lines. Actually, a user is quite free when analyzing such the structure. We see
it as an extra flexibility and our already gained experience shows, it really helps to
understand the device behavior in every tiny detail.
The MZI under the OptiSystem layout is shown on the next schematics (Figure 16 ).
The explanation is simple. We have the input and the output couplers and two arms,
the lower is characterized by one single bent waveguide, however the upper arm
consist of the proper set of curved waveguides (any details are given in the manuals
96
SCATTERING DATA
accordingly). The last graphics shows nothing else, but the interference patterns in
the both output arms having the well-know shapes.
Figure 16
97
SCATTERING DATA
98
SCATTERING DATA
Here, we deal with basic linear grating, i.e. no period chirp and no apodization are
present for the sake of simplicity. Running the calculation produces transmitting and
reflecting spectra of the assumed Bragg grating (see Figure 19). These are exported
for further use into the OptiSystem. See User Guide of OptiGrating for detailed
explanation of the fields.
Figure 19
99
SCATTERING DATA
The upper input coupler serves as the actual input one (light propagates from left to
right - ordinary direction), while the lower coupler acts like that part of the input coupler
recombining the reflected signal (backward propagation direction).
The input 3dB coupler is then used three times, but simulated only once by the BPM.
The final results from the OptiSystem simulation are shown below (added and
dropped signals as the wavelength dependencies. Left - the reflected (dropped)
signal with respect to lambda. Right - transmitted spectrum (output B).
100
SCATTERING DATA
Ring Resonator
Before having the FDTD component and any simple possibility to use a
multidirectional optical component based on a modified S-data approach, we have to
analyze some structures suitable for the FDTD like the ring resonator by the means
already available.
Figure 22
The solution for the fourth example is obvious. We will demonstrate the solution on
the simplest level. The circuit must be divided at least into four elements
(see Figure 23). Namely, we can see the two coupling regions and several bent
101
SCATTERING DATA
elements. They are symmetrical, so we can simulate just one using BPM. We also
have to describe the phase delay (perhaps also losses) in the bent arcs. The realistic
ring resonator design and its representation in OptiSystem is shown in Figure 23
followed by the wavelength dependent responses.
Figure 23 Ring resonator system schematic
Note that this circuit has a fundamental difference to the previous ones. In the
simulation, one of the outputs goes in a circle and is eventually connected to an input.
Strictly speaking this should forbid the calculation, since not all the inputs are known
at the beginning of calculation. OptiSystem can accommodate this situation by
including the delay element, an instruction that a solution should be found by iteration.
In the first pass, the input is assumed zero, and the calculation proceeds until the
output is transmitted to the first input. In a second pass, this input value from the
previous iteration is used. In many cases, this iterative procedure converges to the
steady state solution.
102
SCATTERING DATA
103
SCATTERING DATA
References:
[1]
Okamoto, K., Fundamentals of Optical Waveguides. Academic Press, San Diego, 2000.
[2]
Doerr, C. R., Optical Fiber Telecommunications IV, Ch. 9 Planar Lightwave Devices for WDM.
Academic Press, San Diego, 2002.
[3]
Yee, K. S., Numerical Solution of Initial Boundary Value Problems Involving Maxwell's
Equations in Isotropic Media., IEEE Trans. Antennas and Prop. 17 (1966), 585-589.
[4]
Kashyap, R., Fibre Bragg Gratings. Academic Press, San Diego, 2000.
[5]
104
n ( r, E ) = n 0 + n Kerr EE*
Here, r is the position vector, n 0 is the constant part of the refractive index, n Kerr is
non-linear coefficient and E is the electric field intensity. Without an optical field, the
refractive index is equal to n 0 . Once the optical wave propagates within the material,
the refractive index is affected and the change of refractive index in turn influences
the optical wave. The non-linear algorithm attempts to solve the field propagation in
non-linear materials using linear BPM engine by looping the propagation within a
single propagation step into an iteration process.
A typical BPM simulation process is shown in Figure 25. The simulation engine is
called in every propagation step to propagate the optical field one step forward, i.e.
from slice i to slice i + 1 .
Figure 25 Standard BPM propagation (no iteration). The shaded boxes schematically
show optical field E being propagated through three consecutive slices - (i-1, i, i+1). The
top box shows initial optical field in slice i-1 and undefined field values in slices i and i+1
(field assigned to zero). With each propagation step, the field propagates to another
slice.
If a non-linear iteration process is used, the propagation engine advances the same
initial optical field several times within one propagation step, depending on specified
number of iterations, before the algorithm proceeds further. During this iteration
105
The algorithm is symbolically depicted in Figure 26. First, the initial optical field is
propagated one step. Then the resulting optical field is used to calculate the new
refractive index distribution within the slice. Next, the original optical field is used
again as the starting field, and is propagated one step with the corrected refractive
index. The iteration process is repeated the required number of times, each time
using the latest iteration result to refine the refractive index value for the slice.
Figure 26 Nonlinear BPM propatation (number of iterations = 3). Before definitely
advancing by one propagation step to the next slice (shaded boxes), the engine
performs required number of iterations (denoted by upper index). In each of these
iterations, the refractive index is corrected according to a user-specified function n(E).
The index corrections are done using the previous iteration output. Notice that the initial
field in the iteration steps does not change.
When using the non-linear BPM feature the non-linear waveguides must use either a
User Function Profile or a User Dll Profile. Four system variables, which represent the
optical field, are available to define the non-linear refractive index function; field
amplitude (_Emod), field square (_EE), real and imaginary parts of the field variable
(_Ere, _Eim).
The non-linear algorithm does not guarantee convergence. You must experiment with
both the propagation steps and number of iterations to ensure results are converging.
Note: This feature has not yet been implemented for 3D isotropic full vector BPM
and 3D anisotropic BPM engine.
106
Since the propagation is assumed to be in one direction only, knowledge of the phase
and amplitude of the two single mode input fields at the input is enough to predict the
fields found at the output. Since the governing differential equations are linear, the
relation between the a's and b's can be expressed by a matrix:
b1
S S a
= 11 21 1
b2
S 12 S 22 a 2
(6)
Or in a general form:
b1
b2
bM
S 11
S 21
S N1
a1
S 12
S 22
S N2
a2
S 1M
S 2M
S NM a N
M is the number of
107
The output is the number of input waveguides, number of output waveguides, the
wavelengths, and the array Sij(k) according to the description in OptiSystem
documentation.
108
b =
The real and imaginary parts of
(7)
b real = b cos
(8)
b imag = b sin
There are two terms contributing to
of the layout region
delay = kn 0 L
(9)
k = 2
-----
(10)
where
n 0 is the reference index, and L is the length of the region, the distance from the
input plane to the end of the wafer.
The other angle, wg , is from the waveguides themselves. You can observe this angle
in the output files of an OptiBPM calculation. The total angle needed to complete the
calculation is
= delay + wg
(11)
109
S ( k ) S c exp { i ( k c k )n 0 L } ,
with k c = 2 c , while k = 2 where is the actual wavelength. The values
S c are the S-data obtained after the ordinary simulation for the central wavelength. In
conclusion, we may need just one wavelength simulation to describe the device
optical response. The limitation of the central wavelength approximation is obvious.
The accuracy is decreased with increasing propagation length as well as with the
broader wavelength interval. The approximation will be also suitable for lower values
of the reference refractive index.
110
Calculating delay
If the BPM calculation contains regions, the reference index n 0 might not have the
same value throughout the calculation (see Figure 28). In this case, you must make
a weighted sum of the regions.
Figure 28
For the layout in Figure 28, the phase delay is taken from the sum of the optical
distances of the three regions
delay = k ( n 1 L 1 + n 2 L 2 + n 3 L 3 )
(12)
111
Calculating wg
This angle is available from the complex field at the end of a BPM calculation. It is
easiest to see this angle in a 2D calculation, because this information is always
displayed in 2D. For a layout like the one in Figure 27, the BPM calculation result in
2D is shown in Figure 29.
Figure 29 Optical Field Amplitude in X-Z plane
If you press the Ph key at the top of the display, the optical phase ( wg ) appears
(see Figure 30).
Figure 30 Optical Phase in X-Z plane
112
At the end of the calculation (z = 1000), the phase settles to a constant value in the
regions of the waveguides (a different value for each waveguide). You can see this
more clearly using the slice selector and setting the slice to the highest value (see
Figure 31).
Figure 31 Optical Phase at the end of propagation
The phase being constant in the region of each waveguide is not a coincidence. It
happens whenever the output waveguides are not tilted and the propagation has
developed into a modal pattern (radiation modes have radiated away). You can
calculate the S data for this example by using wg = 2.12 for the first output
waveguide and wg = 0.54 for the second waveguide.
113
It doesn't matter which of the three possible lengths shown is used, provided that the
length definition and the optical phase point are taken from the same place.
To avoid confusion, we recommend the following rules, broken down case by case
2D Calculation
For 2D calculations, use the mesh point closest to the centre of the waveguide where
it intersects the end of the calculation.
114
3D Channel
For the 3D Channel waveguide, the view from the layout in the x-z plane defines the
width of the entire channel. Use the midpoint of the channel in the x-z plane to define
the x coordinate of the optical phase point. This makes the definition consistent with
the 2D definition (see Figure 33).
Figure 33 Midpoints for 3D Channel
The channel consists of layers at a certain depth. Use the midpoints at the top of the
uppermost layer and the bottom of the lowest layer to define the y coordinate of the
optical phase point.
3D Fiber
The 3D fiber consists of concentric circular or elliptic layers. Use the common center
point of the layers (see Figure 34).
Figure 34 Midpoint for fiber
115
3D Diffused
The midpoint in x can be defined the same way as for the other midpoints. A good
nominal distance to move below the substrate is the diffusion length for the diffused
waveguide under consideration (see Figure 35).
Figure 35 Midpoint for diffused waveguide
116
Wide Angle BPM is implemented using high order Pade recursion, making it
possible to simulate multiple propagating modes traveling a widely different offaxis, with no need to accurately guess the "reference" index n 0 .
117
The formulation is optimized by the use of efficient sparse techniques to solve the
resultant complex matrix equations.
Mathematical Formulations
We consider a longitudinal varying 3-D optical waveguide, as shown in Figure 1, and
the transverse cross-section of the optical waveguide surrounded by
PML regions I, II, and III with thickness d, as shown in Figure 2, where x and y are the
transverse directions and z is the propagation direction.
Figure 1 Longitudinally varying 3-D optical waveguide
For most anisotropic materials, such as LiNbO3, if the crystal axes of orientation and
the applied modulation fields are arranged properly, the dielectric tensor can take the
form [12]:
118
(13)
' = xx e x e x + xy e x e y + yx e y e x + yy e y e y
(14)
s ( ' ) d'
0
( ' )
d'
a ( ' ) + j -------
()
= b ( ) + ------
(15)
so that
1
(16)
119
H = j E
(17)
E = j 0 H
(18)
H = j E
(19)
0 H = 0
(20)
with
x
y
x
(21)
(22)
120
TE
TM
Region
Sx
Sy
II
III
Note: See Figure 2 to identify PML regions I, II and III around computational
domain.
Since the waves are assumed to propagate in z direction, the parameter s z will be
set to unity, while the other PML parameters have to be determined such that the
wave impedance of the PML layer placed around the computational domain is exactly
the same as that of the adjacent medium inside the computation domain. Hence, the
PML medium will perfectly match the computational domain medium allowing the
unwanted radiations to leave the computation domain without any reflection.
This necessary condition can be derived as [1]:
e
m
s x, y = 1 j --------------- = 1 j ---------2
0
0 n
(23)
where is the angular frequency, 0 and 0 are the permittivity and permeability of
free space, respectively, n is the refractive index for axial anisotropic medium we can
2
chose zz = n ( z component of the permitivitty tensor) and e and m are the
electric and magnetic conductivities of PML.
The PML impedance matching condition defined by Equation 23 means that the wave
impedance of a PML medium equals that of the adjacent medium with refractive index
in the computational window
2
e = max ---
d
m
(24)
where is the distance inside the PML measured from the PML-computational
domain interface, and d is the width of PML (kept constant in all directions). Using the
121
(25)
(26)
s =
1
( + 1 -)
--- ln ----- in PML region
1 j ------------------- Rt
4dn d
(27)
122
0 0 zz
(28)
2
( p ) k 0 q = 0
(29)
(30)
z
z
= k0 t Et
(31)
The solution of the wave equation Equation 31 can be separated as a slowly varying
envelope and a fast-oscillating phase term:
E t ( x, y, z ) = e t ( x, y, z ) exp ( jn 0 k 0 z )
(32)
zz
E z
( E ) = t ( t E t ) + ---------- E z + zz --------z
z
(33)
If the refractive index varies slowly along the propagation direction z , which is valid
for must photonic guided-wave devices. Then the mentioned term above is much
smaller than the other ones in Equation 33. Thus one can derive:
E z
( E ) = t ( t E t ) + zz --------z
(34)
123
Therefore,
( t Et )
E z
--------- = --------------------- z
zz
(35)
( E ) = 0 (Gauss' Law).
t ( t et )
t ( t e t ) e z t ---------------------- ez
zz
e t 2 e t
2 2
2
- ---------- = k 0 t e
+ k 0 n 0 e t + 2jk 0 n 0 -----2
z
z z
(36)
Note: The elimination of the axial component using the divergence condition,
D = 0 , guarantees the complete elimination of spurious modes. In addition
using just two components instead of three reduces computational efforts and
resource usage.
We can write Equation 36 in a operator form:
- e = Me
----- j2k 0 ---t
z
z t
124
(37)
t ( t et )
t ( t e t ) + e z t ---------------------- ez
zz
2 2
2
k 0 n 0 e t + k 0 t e z = Me t
(38)
M xx M xy
M yx M yy
(39)
s x x s x zz x
s y y s y y
s x x s y zz y
(40)
2
1 1 e y
1
1 ( xy e y )
1 ( yy e y )
1
M xy e y = ---- ----- ---- -------- + ---- ----- ------------ --------------------- + ---- ----- ------------ --------------------- + k 0 xy e y
s y y s x x
s x x s x zz x
s x x s y zz y
(41)
2
1 1 e x
1
1 ( xx e x )
1 ( yx e x )
1
M yx e x = ---- ----- ---- -------- + ---- ----- ------------ --------------------- + ---- ----- ------------ --------------------- + k 0 xy e x
s x x s y y
s y y s x zz x
s y y s y zz y
(42)
2
2 2
1 1 e y
1
1 ( xy e y )
1 ( yy e y )
1
M yy e y = ---- ----- ---- -------- + ---- ----- ------------ --------------------- + ---- ----- ------------ --------------------- + k 0 yy e y k 0 n 0 e y (43)
s x x s x x
s y y s x zz x
s y y s y zz y
125
operator M does not change its sparsity with the introduction of the PML, except that
the matrix elements are modified according to the discretization of the transverse
operator in the PML region [7].
et
e
---------- 2n 0 k 0 -------t
2
z
z
The use of the paraxial approximation limits the method to structures where the beam
propagates in directions that makes a small angle with respect to the axis of
propagation. Wide angle BPM circumvents that restriction of the paraxial
approximation by retaining the second derivative of the envelope along z . Therefore
it is not necessary to have the phase variation along z almost constant and uniform
over the cross section. Neither is it required for field amplitude to change slowly along
z . This allows the simulation of multiple propagating modes traveling a widely
different off-axis angles, and there is no need to accurately guess the "reference"
index n 0 . Here we refer to the angle relative to the z -axis as an off-axis angle [7].
Equating operators on e t on the left and right sides of the Equation 37 gives the
recursion [8]:
M
----= ------------------------------z i + 1
j2n 0 k 0 ----z
(44)
2n k z
(45)
0 0
(46)
(47)
Here z is the longitudinal step size, is a weighting factor which controls the finitedifference scheme. For instance, = 1 , corresponds to the standard implicit scheme
and = 0 is explicit ; the Crank-Nicholson scheme corresponds to = 0.5 . The
choice of affects the stability, the numerical dissipation, and the numerical
126
dispersion of the scheme. Applying the Von Neumann Analysis, it is possible to prove
that the weighted finite-difference scheme is unconditionally stable for 0.5 , which
means that the stability criteria is independent of both longitudinal step size and
transverse mesh sizes [7].
We get.
D = 1,
M
N = ------------2k 0 n 0
(48)
for paraxial.
Using Pade recursion we get:
M D = 1 + ------------2 2
4k 0 n 0
(49)
M
N = -------------2k 0 n 0
for wide angle-Pade(1,1).
M - + ------------M N = ------------2k 0 n 0 4k 3 n 3
0 0
(50)
3M
M
D = 1 + -------------- + ----------------2 2
4 4
4k 0 n 0 16k 0 n 0
for wide angle-Pade(2, 2).
2
M
M
3M
N = -------------- + -------------- + ----------------2k 0 n 0 2k 3 n 3 32k 5 n 5
0 0
0 0
(51)
5M
3M
M
D = 1 + -------------- + ----------- + ----------------2 2
4 4
6 6
4k 0 n 0 k 0 n 0 64k 0 n 0
for wide angle-Pade(3, 3), and
2
0 0
0 0
(52)
0 0
(53)
127
(54)
In order to solve Equation 54 we use the multistep method developed by Hadley [8].
The advantage of the multistep method is that the matrix equation to be solved in each
step is the same size as the Fresnel equation.
We can recast Equation 47 in the following form:
l+1
Ae t
(55)
= Be t
l
l+l
where { e t } and { e t }
are field vectors at two sequential steps l and l + 1 , A and
B are nonsymmetric complex band matrices.
The system in Equation 52 is solved efficiently by the well established sparse matrix
solver BiConjugate Gradients Stabilized method (bicgstab) [9].
128
Ae t = e t
(56)
where = n 0 k 0
et =
ex
(57)
ey
and
A =
A xx A xy
A yx A yy
(58)
(59)
2
1 e y 1
1 - ( xy e y )
----------1 - ( yy e y )
1- ----1- -------- -------- + ---- ----- ------------------------------- + ----------------------- + k 0 xy e y
A xy e y = --
y
s
x
s
x
s
x
s
x
s
y
sy
x
x
x zz
x
y zz
(60)
2
1 e x 1
1 ( xx e x )
1 ( yx e x )
1
1- -------- -------- + ---- ----- ------------ -------------------- + ---- ----- ------------ -------------------- + k 0 yx e x
A yx e x = --
s y y s x zz x
s y y s y zz y
s y x s y y
(61)
129
2
1 ( xy e y )
1 ( yy e y )
1
1
1 1 e y
A yy e y = ---- ----- ---- -------- + ---- ----- ------------ --------------------- + ---- ----- ------------ --------------------- + k 0 yy e y
s y y s y zz y
s x x s x x s y y s x zz x
(62)
( A I )e t = 0
(63)
(64)
The transverse electric field components e x and e y , at any mesh point ( i, j ) are
obtained from the eigenvector e t for each propagating mode. In order to solve
Equation 63, we use a solver that is based on Implicitly Restarted Arnold Method [10]
available in MatLab Software and in a public domain library ARPACK
(http://www.cacm.rice.edu/software/ARPACK). Using the Arnold Method, it is
possible to solve large sparse problems by finding only selected eigenvalues which
may be located in various parts of the spectrum. For instance, in waveguide problems
one is typically interested in a few dominant modes which correspond to the
eigenvalues with the largest real part. The most suitable technique for finding the
dominant modes involves the shift-invert strategy in which eigenproblem Equation 13
is converted to the eigenproblem:
1
1
( A I ) x = --------------- x
2
(65)
where is the shift. When an iterative solver is applied, the product of matrix operator
and some varying vector x is repeatedly calculated. In the modified eigenproblem
Equation 62, instead of calculating the inverse of matrix ( A I ) directly, a sparse
LU decomposition of the matrix is performed.
1
130
Appendix I
E-Formulation
The full vectorial wave equation is given by:
2
E k0 E = 0
(1)
t t E t + t t E z e z + t ----- ( e z E t ) + ----- [ e z ( t E t ) ]
z
z
z
z
t t E z e z + t ----- ( e z E t ) = k 0 zz E z
z
(2)
(3)
z
z
= k0 t Et
(4)
t t E t = t t e t exp ( jk 0 n 0 z )
(5)
We can write:
E t ( x, y, z ) = e t ( x, y, z ) exp ( jk 0 n 0 z )
(6)
By substituting Equation 6 into the second right hand term of Equation 4, we get:
e
z
z
(7)
---e ----- ( e E t )
z z z z
E
= -----------t
2
z
(8)
Et
e e
2 2
----------- = k 0 n 0 e t + 2jk 0 n 0 -------t ----------t exp ( jk 0 n 0 z )
2
z z 2
(9)
131
2
(1)
H k0 0 H = 0
here = .
The double-curl Equation 1 involves three vector components of the magnetic field,
while strictly only two are needed.
t [ k zz H t ] + ----- [ e z ( t H z e z ) ]
z
(2)
Now, using an appropriate reference refractive index n 0 , and slowly varying envelope
approximation (SVEA), we assume the following form of the solution:
H t ( x, y, z ) = h t ( x, y, z ) exp ( jk 0 n 0 z )
(3)
By using Equation 3 into Equation 2, we can recast Equation 1 in the following form:
2
h t
ht
h
2 2
2
t [ k zz h t ] + e z t t --------z jk 0 n 0 h z e z 2jk 0 n 0 p -------- + k 0 n 0 ph t p ---------- = k 0 h t
z
2
z
z
(4)
with
p =
k yy k yx
(5)
k xy k xx
From divergence condition, we get:
( 0 Ht ) = 0
(6)
t h t = --------z jk 0 n 0 h z
z
132
(7)
h t
ht
2 2
2
t [ k zz h t ] e z [ t t ( t h t )e z ] + 2jk 0 n 0 p -------- + k 0 n 0 ph t p ---------- = k 0 h t
2
z
z
(8)
or
2
h t
ht
2 2
2
2jk 0 n 0 p -------- p ---------- = t [ k zz h t ] + e z [ t t ( t h t )e z ] k 0 n 0 ph t + k 0 h t (9)
2
z
z
To obtain Equation 9, we assume that the permittivity along the propagation direction
is often slow, as is observed in real devices. Therefore, p z has been neglected.
Similiar to the E-formulation, the elimination of the axial component using the
divergence condition
-
---2jk n p p ----- h t = Mh t
z
z 0 0
(10)
2 2
2
Mh t = t [ k zz h t ] + e z [ t t ( t h t )e z ] k 0 n 0 ph t + k 0 h t
Mh t =
(11)
M xx M xy h x
M yx M yy h y
(12)
M xx M xy
M yx M yy
(13)
(14)
2 2
k zz h y k yx 1 h y k yy 1 h y
1- ----------- -------- ------- ----- ---- -------- + ------- ----- ---- -------- k 0 n 0 k yx h x
M yy h y = --s y y s y x s y y s y y s x x s y y
(15)
133
k xx 1 h x
2 2
1 k zz h x k yx 1 h x
M yx h x = ---- ----- ------- -------- ------- ----- ---- -------- + ------- ----- ---- -------- k 0 n 0 k xy h x
s x x s y y s x x s x x s y y s x x
(16)
k xx 1 h y k xy 1 h y
2 2
2
1 k zz h y
M yy h y = ---- ----- ------- -------- + ------- ----- ---- -------- ------ ----- ---- -------- k 0 n 0 k xx h y + k 0 h y
s x x s x x
s y y s y x
s x x s y y
(17)
(18)
(19)
Here we get D = p
M N = ------------2k 0 n 0
(20)
(21)
M N = ------------2k 0 n 0
for wide angle-Pade(1,1).
As in the E-Formulation description, we can apply the Pad recursion formula
M
---= ------------------------------z i + 1
j2k 0 n 0 ---z
(22)
Ah t
134
= Bh t
(23)
l+1
where h t and h t
are field vectors at two sequential steps l and l + 1 , A and B are
nonsymmetric complex band matrices. By solving Equation 23, we can simulate the
propagation of the beam in anisotropic materials, such as the polarization
dependence and coupling, due to both the material and geometrical effects.
The system in Equation 23 is solved efficiently by the well established sparse matrix
solver "bicgstab" (BiConjugate Gradients Stabilized method ).
2
2 2
(24)
t [ k zz h t ] + e z [ t t ( t h t )e z ] + k 0 h t = k 0 n 0 ph t
One can cast the Helmholtz equation into the following matrix form:
2
Ah t = h t
(25)
where
= k0 n0
ht =
(26)
hx
hy
and
A =
A xx A xy
A yx A yy
(27)
s y y s y y
s x x s y y
s y y s x x
(28)
yx k xy 1 h x
yy k yy 1 h x yx k xx 1 h x
2
+ --------------- ----- ---- -------- --------------- ----- ---- -------- + --------------- ----- ---- -------- + k 0 yy h x
s y y s x x
s x x s x x
s x x s x x
yy k zz h x
yx k zz h y yy k yx 1 h y
A xy h y = ------- ----- ------- -------- + ------- ----- ------- -------- -------------- ----- ---- --------
s y y s x y
s x x s y x
s y y s y x
(29)
yy k yy 1 h y yx k xx 1 h y
yx k xy 1 h y
2
+ --------------- ----- ---- -------- --------------- ----- ---- -------- + --------------- ----- ---- -------- k 0 yx h y
s x x s y y
s y y s y y
s x x s y x
135
xy k zz h x yx k zz h x xy k yx 1 h x
A yx h x = ------ ----- ------- -------- ------- ----- ------- -------- + --------------- ----- ---- -------s y y s x x
s x y s y y s x x s y y
xy k yy 1 h x
xx k xx 1 h x yx k 1 h x
xy ----- ---- -------- 2
+ --------------- ----- ---- -------- + --------------- ----- ---- -------- -------------k h
s x x s x y
s y y s x x
s x x s x x 0 xy x
(30)
xy k zz h y xx k zz h y 1 h y
A yy h y = ------ ----- ------- -------- + ------- ----- ------- -------- + ----- ---- -------s x y s x x s x x s x x y s y y
xy k yy 1 h y
xx k xx 1 h y xx k 1 h y
2
xy ----- ---- --------
+ k 0 xx h y .
----------------- ----- ---- -------- + --------------- ----- ---- -------- -------------
s x x s y y
s y y s y y
s x x s y y
(31)
It is noted that in Equations [28] - [31], both the material and the geometrical
properties of the waveguides contribute to the polarization dependence,
A xx A yy , and coupling:
A xy 0 and A yx 0 .
Like in E-Formulation Equation 25 can be solved by an efficient Arnodi method that
takes into account the sparsity under consideration and computes just a few number
of eigenvalues and eigenvectors that represent the propagation constants and fields
distributions for the wanted modes.
136
Appendix II
H-Formulation
The full vectorial wave equation for H is given by:
2
H k0 0 H = 0
t ( k zz t H t ) + t ( t t H z e z ) + t t ----- ( e z H t )
z
z
z
z
z
(1)
(2)
= k 0 t H t + k 0 k zz H z e
t ( t t H z e z ) + t t ----- ( e z H t ) = k 0 k zz H z e z
z
(3)
z
z
z
= k0 t Ht
(4)
By substituting
H t ( x, y, z ) = h t ( x, y, z ) exp ( jk 0 n 0 z )
(5)
t ( k zz t H t ) = t ( k zz t h t ) exp ( jk 0 n 0 z )
(6)
By substituting Equation 5 into the second right hand term of Equation 4, we get:
h
z z
z
(7)
---e ----- ( e H t )
z z t z z
h t
= ----- p --------
z z
(8)
137
By substituting Equation 5 into the second right hand term of Equation 4, we get:
2
h t
h t
2 2
h t
----- p -------- = k 0 n 0 h t + 2jk 0 n 0 p -------- p --------- exp ( jk 0 n 0 z )
2
z z
z
(9)
where
p =
k yy k yx
(10)
k xy k xx
References
[1]
[Berenger, 1994] J. P. Berenger, "A Perfectly Matched Layer for the Absorption of
Electromagnetic Waves," J. Comput. Phys., No. 114, 1994, pp. 185-200.
[2]
[Teixeira, 1998] F. L. Teixeira and W. C. Chew, " Systematic Derivation of Anisotropic PML
Absorbing Media in Cylindrical and Spherical Coordinates", IEEE Microwave and Guided Lett.,
vol. 8, No. 6, pp. 371-373, 1998.
[3]
[4]
[Huang, 1992 A] W. P. Huang, C. L. Xu, S. T. Chu and S. K. Chaudhuri, " The Finite-Difference
Vector Beam Propagation Method. Analysis and Assessment, IEEE J. Light. Techn., vol.10,
No.,3, pp. 295-305, 1992.
[5]
[Huang, 1996A] W. P. Huang, C. L. Xu, W. Lui, and K. Yokoyama, "The Perfectly Matched Layer
Boundary Condition for Modal Analysis of Optical Waveguides: Leaky Mode Calculations",
IEEE Photon. Techn. Lett., vol. 8, No. 5, pp. 652-654, May 1996.
[6]
[Huang, 1996] W. P. Huang, C. L. Xu, W. Lui, and K. Yokoyama, "The Perfectly Matched Layer
(PML) Boundary Condition for the Beam Propagation Method", IEEE Photon. Techn. Lett., vol.
8, No. 5, pp. 649-651, May 1996.
[7]
[Huang, 1992 B] W. P. Huang and C. L. Xu, "A Wide-Angle Vector Beam Propagation Method,
IEEE Photon. Techn. Lett., vol. 4, No. 10, pp. 1118-1120, 1992.
[8]
[9]
[Van, 1992] H. A. Van Der Vorst, "Bi-CGSTAB: A Fast and Smooth Converging Variant of Bi-CG
for the Solution of Nonsymmetric Linear System, SIAM J. Sci. Statist. Comput., vol. 13,
pp. 631-644, 1992.
[10]
[Mielewski, 1998] J. Mielewski and M. Mrozowski, " Application of the Arnoldi Method in FEM
Analysis of Waveguides", IEEE Microwave and Guided Lett., vol. 8, No.1, pp. 7-9, 1998.
[11]
[Huang, 1991] W. P. Huang, C. L. Xu, and S. K. Chaudhuri, " A Finite-Difference Vector Beam
Propagation Method based on H-Fields, IEEE Photon. Tech. Lett., vol. 3, pp. 1117-1120, 1991.
[12]
[Huang, 1994] Xu, C. L., W. P. Huang, J. Chrostowski, and S. K. Chaudhuri, " A Full-Vectorial
Beam Propagation Methods for Anisotropic Waveguides, IEEE J. Lightwave Tech., vol.12,
No. 11, pp. 1926-1931.
138
139
is not the most convenient construction for locating the zeros, particularly in the case
where two zeros are very close to each other. Optiwave uses an eigen-value analysis
that splits the dispersion function into two functions. This splitting resolves the almost
degenerate pairs and helps the simple-minded computer algorithms to find the zeros
of the dispersion function (i.e. the modes) more reliably.
Real-valued formulation
The time independent Maxwell curl equations with a positive time convention (
are
E = j 0 H
H = j 0E
e jt )
(1)
( E ) = 0
H = 0
(2)
The factor j does not suit the current purpose, so make the substitution
h = j 0 H
where 0 =
units. Then
0 0
E = kh
where
(3)
h = kE
(4)
(5)
Debye Potential
For finding electromagnetic fields in a cylindrical geometry it is convenient to use
cylindrical coordinates r, and z, and Debye potentials parallel to the axis of rotation,
z [2]
1
E = ( z ) + ----- ( z )
k
(6)
1
h = ( z ) + --- ( z )
k
(7)
+ k = 0
2
(8)
Consider the following equation, true for any satisfying (9) in a region of constant
permittivity.
2
2
[ ( z ) ] ( z ) k z = ------z
(9)
Associate the first two terms together and apply the vector identity
( ) =
2
(10)
2
( z ) k z = ------z
(11)
to get
The right hand side of (11) is a gradient of a scalar function, so the curl of the left hand
side must be zero. take the curl of (11)
2
( z ) k ( z ) = 0
(12)
141
= 0), will
(13)
from which we can see there is no longitudinal (z) component to the electric field, i.e.
these are transverse electric fields. The magnetic field associated with these
transverse electric fields is constructed from the first Maxwell curl equation in (4):
1
h = --- ( z )
k
(14)
Separation of Variables
The potentials themselves are solutions of the scalar Helmholtz equation, and the
particular solution is found by observing the boundary conditions imposed by physical
considerations on E and h. The potentials are supposed to form modes, so a solution
where the variables are separated is appropriate
(15)
and a similar expression applies for the other Debye potential, . The Helmholtz
equation (8) is expanded in cylindrical co-ordinates, and then (15) is substituted.For
regions where is constant, the radial functions follow the Ordinary or Modified
Bessel equation, and so the solutions are linear combinations of Bessel functions of
integer order v. In any given layer,
(r) = AJ ( ur ) + BY ( ur )
142
(r) = CJ ( ur ) + DY ( ur )
(16)
(r) = AI ( wr ) + BK ( ur )
(r) = CI ( ur ) + DK ( ur )
(17)
where w = k . Equations (15), (16), and (17) are substituted in (6) and (7)
to find the electromagnetic fields. It is the tangential components and z that are
needed explicitly, since it is the tangential components of the electric and magnetic
fields that should match at layer boundaries. These field components are related to
the coefficients A, B, C, and D by a 4x4 matrix
2
Ez
h
f =
=
hz
E
u J ( ur ) k u Y ( ur ) k
0
0
uJ' ( ur )
uY' ( ur ) nJ ( ur ) r nY ( ur ) r
2
u J ( ur ) k
0
0
nJ ( ur ) r nY ( ur ) r uJ' ( ur )
u Y ( ur ) k
uY' ( ur )
A
B
C
D
(18)
F =
0
0
1
0
nk ru
1
nk ru
0
2
0
0
(19)
143
u J k u Y k
uY'
uJ'
2
D =
0
0
0
0
0
0
0
0
(20)
u J k u Y k
uY'
uJ'
2
The advantage of this factoring is that it is easy to find the expressions for F and
1
1
1
D . F is found by two row reductions and D by inverting the 2x2 matrices in the
block diagonal. These matrices are required to find the coefficients in the next layer.
If c m are the coefficients in the m-th layer, then the coefficients in the next layer is
found from the matrix product,
c m + 1 = D m + 1 ( r m )F m + 1 ( r m )F m ( r m )D m ( r m )c m
1
(21)
The use of the factored matrix means four matrix multiplications instead of two are
required to cross the boundary, but it avoids having to find the matrix inverse
numerically.
Dispersion equation
The matrix to describe the whole multilayer can be written as one 4x4 matrix, the
product of all layers, one layer of which is shown in (21). The dispersion equation is
usually constructed by setting the determinant of this 4x4 matrix product to 0, but this
is not a good choice from the numerical point of view. In the limit of low index contrast,
the modal indices can be very close to each other, making them hard to find by
numerical methods, which tend to skip over closely spaced zeros. A more convenient
condition comes from using rectangular matrices at the first and last layers, which are
special cases. In the first layer, which contains r = 0, coefficients B 0 and D 0 must
be zero, so the first matrix, D 0 , is 4 x 2 consisting of the first and third columns of the
D matrix in (20). Similarly, in the last layer, it is the coefficients A M and C M that must
go to zero in (17), since those contain solutions I with unphysical growth. The last
1
1
matrix D M will be of size 2 x 4, and consist of the first and third rows of D . The
product of all these matrices will be of size 2x2, which we call S(n). (The dependence
on n is written explicitly since it is the modal index to be found). A mode is obtained
at a modal index n when a non-trivial solution is found to,
0 = S(n)
A0
C0
(22)
The condition det(S) = 0 is sufficient for a non-trivial solution. However this condition
can be inconvenient for the case of certain modes of the low index contrast fiber. For
example, consider a step index fiber with radius 2 m , having a core index of 1.46
and a cladding of 1.45. For order zero ( = 0 ), the determinant of S will vary with
the modal index n as shown in Figure 1.
144
Figure 1 The determinant of the system matrix vs. the modal index. Step index fiber with radius 2 m , core
index of 1.46, and a cladding of 1.45. The optical wavelength is 0.5 m , and the order = 0 .
It is difficult to find the zero for curves of this type. The position of the zero is easily
passed over in the initial search for zero crossings. The shape of the curve in the
region of the zero is very nearly quadratic, so the best solution is to split the
determinant function into a product of two functions. In that case, the zeros can be
found by looking for zero crossings of the two functions separately. Suitable functions
T
can be found by considering the vector [ A 0, C 0 ] , as an eigenvector of S with
eigenvalue, equal to 0. The eigenvalues of S(n) are ,
1(n) = T 2 + T 4 det ( S )
2
2(n) = T 2 T 4 det ( S )
2
(23)
145
LP Modes
Linearly Polarized modes can be found with the same style of approach as above, by
a transfer matrix analysis of multilayer fibers.In the LP analysis, the initial excitation is
assumed to have a linear polarization, and so a modal analysis supporting only one
field component is used. It can be shown this is a good approximation for fibers with
low refractive index contrast, as shown below.
146
Consider again the wave equation of (5), but this time use the vector identity (10)
directly on the electric wave equation instead of introducing the Debye potential. The
result is
(24)
E ( E )E + k E = 0
2
0 = ( E ) = E + ( E )
so that
2
2
E + k E + E ------- = 0
(26)
In the case of low index contrast waveguides, such as are found in most optical fibers,
the last term in (26) is negligible. The last term is the only one that contributes to
coupling among the field components of the electric field, so if this term is neglected,
the model will be a polarization preserving model. If the excitation was a linear
polarization parallel to the X axis, the model could be further simplified by considering
only the X component of (26). This shows that for the LP model, the governing
equation for the field is the Helmholtz equation (8) applied to the field component E x .
The solution for LP modes is constructed in a similar way as for the vector modes.
The E x is constructed in each layer as a linear combnation of Bessel functions (16)
and (17), except this time only two coefficients, A 1 and B 1 , are required, since only
one function needs to be constructed. The physical consideration at the layer
boundaries is the continuity of E x and its derivative. The two conditions are related
to the two coefficients A and B for each layer by 2x2 matrices. The modes are found
by setting up a calculation that assumes A 1 = 1 and B 1 = 0 for the first (inner
most) layer, and then calculating the coefficients in each subsequent layer by matrix
manipulations. The last layer has the condition that the coefficient ( A M ) of the Bessel
function I must be zero, since this Bessel function is not bounded at infinity. This
last coefficient is a function of the order and the modal index n, so the modes are
found by finding the zeros of A M ( n ) .
147
References
[1]
[2]
C. Tsao, Optical Fibre Waveguide Analysis, (Oxford University Press, 1992), Part III
[3]
C. Yeh and G. Lindgren, "Computing the propagation characteristics of radially stratified fibers:
an efficient method", Applied Optics 16(2) p483-493 (1977)
[4]
148
149
Magnetic Formulation
Inside a dielectric, the time independent Maxwell curl equations with a positive time
convention ( e jt ) are
E = j 0 H
H = j 0E
(1)
( E ) = 0
H = 0
(2)
In the magnetic formulation, the electric field is eliminated from (1) by taking the curl
of the second equation and substituting from the first. For regions of constant
permittivity , there are no gradients of , and the equation simplifies to
H = 0 0 H
2
2
( A ) A , and the property of
H + k H = 0
2
where
(3)
(4)
It is true that it is usually the electric field, and not the magnetic field, that is of interest
for applications. The motivation for solving the problem with a magnetic formulation is
that the waveguide structure is created by introducing discontinuities in electric
permittivity, , and not magnetic permeability, . When matching boundary
conditions at layer boundaries, the normal component of the electric field is
discontinuous, since it is the electric displacement, D = 0 E , and not the electric
field that is to be made continuous. Since the permeability is the vacuum level 0
everywhere, all components of the magnetic field are continuous at all boundaries.
The finite difference representation of continuous functions is more accurate than
discontinuous functions, and therefore a finite difference formulation based on the
magnetic field gives more accurate results than one based on electric fields.
The electric fields are still needed for applications. These fields can be calculated after
the fact by taking the curl of the magnetic field (using the second equation in (1)) by
finite differences. Explicitly,
2
1 Hx 1 Hy
E x = --------0 --+ --- 2 H y
k y x y
(5)
1 H 1 Hy
E y = -----0 --- 2 x + -- H x
x y
k x
(6)
In the mode solving problem, the permittivity does not vary with z, and so the
solution for the magnetic field can be expected to be an harmonic function of z:
H ( x, y, z ) = h ( x, y )e
(7)
jz
hx hx
2
2
---------2- + ---------2- + k h x = h x
x
y
2
(8)
hy hy
2
2
---------2- + ---------2- + k h y = h y
x
y
2
(9)
Since the is unknown, the mode solving problem is really an eigenvector problem
2
with as the eigenvalue, and the function h x ( x, y ) or h y ( x, y ) as the
eigenfunction.
Figure 1 Mesh for the finite difference equation. The magnetic field is defined at points N, S, E, W, and P.
The permittivity is defined in the rectangular regions bounded by the nodes.
151
h
SE
h xE h xW ------ SW
-------2 + --------2 + xN-2 -------------------- + --------------------x x y NE + SE NW + SW
h xS
NE
NW
-2 -------------------+ ------- + --------------------y NE + SE NW + SW
2
2
k NW SW k NE SE
2 - ------2+ h xP --------------------- + --------------------- ------2
NW + SW NE + SE y x 2
h 1 NW SW NE SE
2
+ -------y ------ --------------------- + --------------------- = h xP
x y NW + SW NE + SE
(10)
Equation (10) comes mostly from (8) for h x . In the matching of transverse
components of the fields, another term involving h y appears. This is the term that is
responsible for the coupling of h x and h y . In the finished finite difference
formulation, the derivative of h y with respect to x is replaced by a centred finite
difference. Note that if at this particular node, it happens that the permittivity is the
same on the north side of the boundary as on the south (i.e. it is a vertical boundary),
no coupling will occur, or at least there will be no contribution from the h y component
of this node.
This equation (and a similar one for h y ) is applied to each node in the mesh. Let the
number of nodes be n. It is the repeated application of this equation, and the
adjustment of the meaning of the N, S, W, E, and P designations, that generates a
large system of linear equations. The values of the x and y components of the
magnetic field are collected in a vector of dimension n x 1, called v , say. The
equations on the left form an n x n matrix Q that multiplies v , and the right hand
side has the original vector representing the magnetic field, multiplied by the
2
eigenvalue . In vector-matrix form, the problem looks like
Qv = v
2
152
(11)
equations. The Finite Difference Mode Solver uses the Implicitly Restarted Arnoldi
Method as described in Ref. [2] to find the eigenvectors of this system, and thereby
find the modes of the waveguide.
The Implicitly Restarted Arnoldi Method looks for the modes inside a Krylov
Subspace. This subspace is constructed from the mode operator, and from an
arbitrary (could be random) starting magnetic field, here described as a vector, v 1 .
The Krylov subspace K m ( Q, v 1 )is the space spanned by powers of the Q when
applied to the initial vector v 1 :
K m ( Q, v 1 ) = span { v 1, Qv 1, Q v 1, Q v 1, Q v 1 }
2
(12)
The IRAM constructs a basis for the m + 1 dimensional Krylov subspace by the
Gram-Schmidt process. For example, a basis for a 2 dimensional Krylov subspace,
K 1 ( Q, v 1 ) , can be constructed from v 1 and Qv 1 . A vector perpendicular to v 1
can be found by subtracting the v 1 component from Qv 1 :
w 2 = Qv 1 ( v 1 Qv 1 )v 1
(13)
This vector is parallel to the second basis vector, v 2 , which is found once
divided by its length, w T w . It is easy to show that this length is
2
w 2 is
(14)
w 2 w 2 = v 2 Qv 1
The above inner product
are defined
h ij = v i Qv j
With this definition, the effect of including another power of
of the new basis vectors
Qv 1 = h 11 v 1 + h 21 v 2
Following the Gram-Schmidt process, a vector in the Krylov subspace that is
perpendicular to both v 1 and v 2 can be constructed from subtracting the
projections of Qv 2 onto the first two basis vectors
(17)
w 3 = Qv 2 h 12 v 1 h 22 v 2
Normalizing w 3 as before, and rearranging terms shows how the space generated
2
from Q v 1 can be represented in terms of the basis vectors
(18)
Qv 2 = h 12 v 1 + h 22 v 2 + h 32 v 3
153
v1 = x1 e1 + x2 e2 + + xk ek Sk
(19)
When the second vector to span the Krylov subspace is calculated, it is apparent it is
Qv 1 = 1 x 1 e 1 + 2 x 2 e 2 + + k x k e k S k
2
(20)
also a linear combination of the k eigenvectors, and is therefore still in the subspace,
S k . It is easy to see that this situation is not changed by multiplying by Q again,
and so
Q v1 Sk
j
(21)
w k + 1 = Qv k h 1k v 1 h 2k v 2 h kk v k
(22)
When this is done with v 1 S k , the w k + 1 must be zero, and the Gram-Schmidt
process will terminate. Because of the termination, the search for modes will take
place in a space of dimension k ( 1, 2, maybe 10) rather than in the space of the
vectors themselves. The vectors have dimension equal to the number of nodes in the
mesh of Fig. 1. This is typically some number on the order of 105 or 106. This
termination greatly simplifies the problem!
Of course, a random choice of v 1 is unlikely to be a member of S k , but the IRAM
strategy is to use iterative processes that effectively change the initial choice of v 1
to a vector inside (or not far from) the subspace S k .
154
In the FD tab of the Solver Parameters dialog box of OptiMode, both k and m are
defined as shown in Fig. 2.
Figure 2 Solver Parameter dialog box of OptiMode displaying the tab for the Finite Difference mode solver
(FD). Dimension of Krylov Subspace (m) and number of modes to find (k) are defined here. In the Auto
setting, m = 2k with m having a minimum of 4. m can be set by the user by unselecting the Auto check box.
Note that when the Dimension of Krylov Subspace is in its Auto setting, the dimension
of the Krylov subspace (m) will be made double the dimension of the number of
modes desired (k). In this example, the IRAM will construct a basis for a Krylov
subspace of dimension m. This will involve making m copies of the field initially found
on the defined mesh. If this mesh is already very large, there is a possibility to create
an out-of-memory error, because the mode solver requires at least m times the
storage required for a single mode.
The first choice of v 1 will probably not be anywhere near S k , so the IRAM begins
a process of shifted Q-R iteration to move away from unwanted eigenvalues and
closer to the desired ones. When the Q-R iteration process is finished, The algorithm
restarts (the R in IRAM). It reduces the dimension of the working space to k, but the
new subspace is different because the QR iterations indirectly change the starting
vector, v 1 . The result is usually movement toward the desired solution space S k .
This leaves a new set of vectors spanning a new k dimensional space, and the
algorithm starts the Arnoldi process again to build the dimension up to m. Then
another Q-R process will start to move closer to S k . See Ref [2] for details. If you
watch the computers Task Manager while the algorithm runs, you might see the used
RAM cycle as the dimension of the space cycles from k to m and back. After many
iterations the stopping condition will be met, and at this point the generalization of
equation (18) will appear as
Qv k = h 1k v 1 + h 22 v 2 + + h kk v k + h k + 1, k v k + 1
(23)
155
If the v 1 is now inside S k , the last coefficient in the sum will be zero. This is evident
from the definition of h ij . If v 1 really is inside S k , Qv k is also inside S k and it
must be perpendicular to v k + 1 , making h k + 1, k = 0 . In the practical
implementation of the mode solving problem, h k + 1, k wont be exactly zero, but the
IRAM process finishes when it is small enough to be negligible. Once the problem is
in the form of (23) with the last term very small, it is easy to find the modes and
propagation constants.
To see this, make the following change in notation. Define an n x k matrix
columns of which are made from the k Arnoldi basis vectors of size n x 1,
V k = [ v 1, v 2, v 3, , v k ]
V k , the
vk
(24)
and form a k x k matrix from the h ij coefficients of equation (15). Now consider QV k .
Equations (16) and (18) show how the first two columns of QV k are formed in terms
of h ij and the v k found in the first three columns of V k . The reader can find the
following columns by following the Gram-Schmidt process further. Note that H k has
all zero elements for those below the first subdiagonal, because the ith column of
QV k is a linear combination of the first i + 1 basis vectors v k . (A matrix of this form
is called Hessian).
Hk =
h 1, k 1
h 2, k 1
h 3, k 1
h 4, k 1
h 1k
h 2k
h 3k
h 4k
0 0
0 h k, k 1 h kk
h 11
h 21
0
0
h 12
h 22
h 32
0
h 13
h 23
h 33
h 43
(25)
All of the columns of QV k , except for the last one, are calculated by V k H k . The last
column (kth column), according to (23) will need to include a term v k + 1 . This isnt
available in V k , so the relation is made complete by adding the last column explicitly:
T
QV k = V k H k + h k + 1, k v k + 1 e k
(26)
e k is the kth unit column vector in a k dimensional space, and the transpose is
T
e k = ( 0, 0, 0, , 1 ) . Putting this row vector after the column vector v k + 1 serves
to put v k + 1 in the last column of a k x k matrix with zeros elsewhere. The second
term on the right adds the missing column in the relation. From the above discussion,
the h k + 1, k is expected to be small, and it becomes a measure of the accuracy of the
solution.
The k modes we are looking for are inside S k . These modes can be found by finding
the eigenvectors of the matrix H k . This greatly simplifies the problem. The matrix
Q is n x n, where n is the number of nodes in the finite difference mesh. n is typically
156
on the order of 105 or 106. On the other hand H k is k x k, and k is probably of order
of 10 or so. The reduction to (26) simplifies the problem by many orders of magnitude.
The k modes inside
vector, of size k x 1,
Now let
(27)
(28)
Qx x = QV k s V k s = QV k s V k H k s
= ( QV k V k H k ) s = h k + 1, k v
(29)
T
k+1 k
e s
If the last term in (23) is zero, then ( x, ) is an exact eigenpair solution for Q . If the
last term is not exactly zero, then the pair ( x, ) is called a Ritz Pair, and the norm of
(29) is a measure of how accurately the Ritz Pair approximates the true eigenvector.
Qx x = h k + 1, k v k + 1 e k s = h k + 1, k e k s
T
(30)
The number the above equation (30) evaluates to is called the Ritz estimate of the
Ritz Pair, ( x, ) .
The IRAM will stop when the user specified tolerance has been met, or the maximum
number of steps has been exceeded. The tolerance is calculated from the user
specified number in the Tolerance field of the Solver Parameters dialog box shown in
Fig. 2. The maximum number of steps is from the field called Max. Steps. Letting the
tolerance be t , the IRAM will stop when the following condition is met:
(31)
h k + 1, k e k s max ( M H k , t )
T
where
When the mode solver is running, while the iterations are taking place, the value in
(31) is exceeded, but it is still informative to observe at least one of the Ritz vectors.
In a long calculation, the user can see if the mode solver is approaching a mode
solution or not. If not, the simulation can be stopped, and corrective action taken.
OptiMode calculates one of the Ritz vectors by (27) while the IRAM is going through
its iterations. This is the field displayed in the simulator while the calculation is taking
place. You can select which Ritz vector to view with the entry in the field Preview Mode
field in the Solver Parameters dialog box (Fig. 2). Selecting 0 in this field will calculate
157
and display the first Ritz vector, the current approximation to the fundamental mode.
Entering 1 in this field will calculate and display the second Ritz vector, an
approximation to the next higher mode, and so on. The fields dont change very much
from one iteration to the next, so to save execution time you might not want to
calculate and view a Ritz vector for every iteration. If you want to observe every 10th
iteration, enter 10 in the Skip Value field.
Figure 3 South boundary. The S node is outside the mesh, and not part of the simulation.
One kind of boundary condition is to just take the value at S to be zero. This is the
Dirichlet boundary condition, where all field components are taken to be zero at (or
one mesh point beyond) the simulation window boundary. This boundary will be used
if the Use TBC checkbox is not selected in the Solver Parameters dialog box (Fig. 2).
If the Use TBC checkbox in the Solver Parameters dialog box is selected, the value
of the magnetic field at S will be estimated. When the mode solving starts, S will be
taken as 0 for the initial iterations of IRAM. After Skip Value steps (and after each
multiple of Skip Value iterations) the mode solver calculates and displays the Ritz pair
( x, ) , which is an approximation to the mode indicated in the Preview Mode field of
the Solver Parameters dialog box (Fig. 2). The x contains the values of the magnetic
field at the nodes of the mesh, and the is an approximation to the propagation
constant as found in equation (8) or (9). The region outside the calculation window
158
boundary (south of P), is without feature, of constant permittivity, and so the magnetic
field (either x component or y) will approximately follow
2
h h
-------2- + -------2- + ( k )h = 0
x
y
2
(32)
h ( x, y ) = h P e
Here the origin of the coordinate system
desired value of the magnetic field at S is
(33)
( ax + by )
hS = hP e
b y
(34)
and this value can be used for the node outside the calculation window when applying
finite difference equations like (10).
To calculate the appropriate value for the wavenumber,
a +b +k = 0
2
The Ritz pair estimate provides an estimate of the magnetic field at the nodes of the
2
2
mesh, and these values can be used to estimate the value of h x (and
therefore a ) at P along the South boundary. With the a estimated this way, the
b could be calculated as
b =
k a
2
(36)
where the branch cut of the square root is selected so as to have a positive real part,
so that the magnitude of h S is something smaller than h P .
It remains to estimate a . This can be done by finite differences of the three nodes
W, P, and E, but the values of the field at the window boundaries can be quite small,
with lots of error, and the results of second differences can be erratic. In this release
2
2
we chose a Fourier Series method to estimate h x , and the entire South
boundary is used. Let f ( x ) represent the magnetic field on the South
159
boundary
f(x)
fn ( x ) =
2jmx L
(37)
m = n
where
1- L
2jmx L
-F m = f ( x )e
dx
L 0
(38)
The fact that all of the points on the boundary are used to calculate the f n ( x ) helps
to stabilize it from numerical errors. The second derivative is calculated by changing
the series in the appropriate way
2
d f (x)
h --------------- n2 =
2
x
dx
2
2m 2 2jmx L
F m ----------- e
L
(39)
m = n
1 h
a = ----- 2
hP x
P
(40)
160
References
[1]
P. Lsse, P. Stuwe, J. Schle, H-G Unger, Analysis of Vectorial Mode Fields in Optical
Waveguides by a New Finite Difference Method, Journal of Lightwave Technology, 12(3), p
487-493 (1994)
[2]
R.B. Lehoucq, D.C. Sorensen, C. Yang, ARPACK Users Guide, SIAM (1998)
161
162
163
164
Tutorials
This section contains lessons that will help you become familiar with OptiBPM.
The settings and values used in this tutorial are for these lessons only. When you perform reallife simulations, use the settings and values that you require.
The lessons in this section are:
Lesson 11: Integrated optical circuit simulation using OptiBPM and OptiSystem
Scattering data export
165
TUTORIALS
166
Protection key
A hardware protection key is supplied with the software.
Note: Please ensure that the hardware protection key is NOT connected during
the installation of OptiBPM.
To ensure that OptiBPM operates properly, verify the following:
The protection key is properly connected to the parallel/USB port of the computer.
If you use more than one protection key, ensure that there is no conflict between
the OptiBPM protection key and the other keys.
Note: Use a switch box to prevent protection key conflicts. Ensure that the cable
between the switch box and the computer is a maximum of one meter long.
167
OptiBPM directory
By default, the OptiBPM installer creates an OptiBPM directory on your hard disk. The
Opti BPM directory contains the following subdirectories:
\UserDLLs default location of User Profile DLLs, also contains example code
(Visual Studio 6.0) for development of Profile DLLs
Installation
OptiBPM can be installed on Windows XP, Vista or Windows 7. We recommend that
you exit all Windows programs before running the setup program.
168
Step
Action
In the Run dialog box, type F:\setup.exe, where F is your CD ROM drive.
When the installation is complete, remove the CD from the CD ROM drive
and reboot your computer.
Introduction to OptiBPM
What is OptiBPM?
OptiBPM is a powerful, user-friendly software system that enables you to create
designs for a variety of integrated and fiber optics guided wave problems on your
computer. Beam Propagation Method (BPM) is a step-by-step method of simulating
the passage of light through any waveguiding medium. An optical field can be tracked
at any point as it propagates along a guiding structure in integrated and fiber optics.
BPM allows computer-simulated observation of the light field distribution. You can
examine the radiation and the guided field simultaneously. OptiBPM provides easy
data entry for laying out waveguide devices. The layout environment contains
waveguide blocks called primitives. You can design devices easily and configure
various simulations. The graphical project layout is a user-friendly graphical interface
for designing photonic devices. Designing tools are provided in toolbars and menu
options. The tools include waveguide primitives, editing and manipulation tools, and
special layout regions.
The OptiBPM program simulates light propagation in two-dimensional (2D) and threedimensional (3D) waveguide devices.
The 2D dimensions are:
X-direction (vertical)Transverse
Z-direction (horizontal)Propagation
X-direction (vertical)Transverse
Y-directionDepth
Z-direction (horizontal)Propagation
Note: The simulated devices have a step-like effective refractive index
distribution in the transverse dimension.
To obtain a 2D device from a real 3D device, apply the effective index method. The
reduction from 3D to 2D consists of replacing the two-dimensional transverse crosssection of the device with a one-dimensional cross-section. The actual index crosssection is replaced by a one-dimensional effective index distribution. Although the
effective index method is an approximate solution, it works for many devices.
BPM 3D provides all the tools you need for step-index waveguide design. In BPM 3D,
the entry modeling data consists of the refractive index distribution, the starting
propagation field, and a set of numerical parameters. The index of refraction
distribution is provided by the waveguide structure laid out in the project layout. The
starting field can be a waveguide mode, a Gaussian field, a rectangular field, or a
user-defined field supplied from a file. The starting field and other simulation
parameters are specified in the Global Data dialog box that is accessed through the
Simulation menu. Output data consists of different files that can be displayed or used
for other simulations.
169
Numerical Simulations
The OptiBPM processing environment contains the Beam Propagation Method (BPM)
as its core element, as well as mode solvers that are compatible with the BPM
algorithms. BPM is based on a numerical solution of equations that govern light
propagation in dielectric media. BPM considers monochromatic signals and is related
to solving the Helmholtz equation. Models of propagation based on approximations of
the Helmholtz equation are used to:
2D BPM
The 2D BPM simulator is based on the unconditionally stable finite difference method
algorithm of Crank-Nicolson. You can customize the following program options,
depending on the design:
Wide-angle propagation based on Pad approximants, Pad (1,1) and Pad (2,2)
up to Pad (4,4)
3D BPM
The full 3D BPM simulator is based on:
Scalar algorithms
Mode solvers
In OptiBPM, the mode solvers are compatible with the 2D and 3D BPM algorithm. The
solvers employ different methods:
170
The program for planar structures is based on resolving multiple boundary conditions
at dielectric interfaces between layers. During propagation of a user-defined field, the
CFM calculates the correlation integral between the input field and the propagating
field at every point. This creates the field amplitude correlation function for the
waveguide. The correlation function provides all the information required for a
complete modal description of the fields, including:
propagation constants
mode eigenfunctions
The ADI method separates the X and Y derivatives into two parts of one iteration step.
This method is superior to other finite-difference techniques because of its fast
convergence. The ADI method also provides all propagation constants and mode
eigenfunctions.
Graphics
OptiBPM has state-of-the-art graphics that enable you to view, manipulate, and print
field amplitude, phase, effective index distribution, and other calculated data.
The graphical features include:
A monitoring window allows you to track the signal along selected multiple paths in
the waveguide circuit.
171
172
Quick start
This section describes how to create a design, run a simulation, view the simulation
results, and save the design project. The settings and values used here are for this
quick start only. When you create real-life projects, use the settings and values that
you require.
OptiBPM consists of the following applications:
Profile Designer
OptiBPM Simulator
OptiBPM Analyzer
To get started, you will create a design project in the Designer and save your project
as a .bpd file.
Next, you will simulate your project using the Simulator. The simulator displays the
results of the data that the simulation generates in a graph that you select:
Optical Field
Refractive Index
Cut View
Finally, you will view the simulation results in the Analyzer. The Analyzer also enables
you to:
For information on creating paths and writing scripts, see Lessons 3, 5, 6, and 12.
Starting OptiBPM
To start OptiBPM, perform the following procedure.
Step
Action
Select Programs > Optiwave Software > OptiBPM 12> Waveguide Layout
Designer.
OptiBPM Layout Designer opens and the graphical user interface appears
(see Figure 1).
173
When you install OptiBPM for the first time, the toolbars are placed one after another
in a row. The length of the row is probably wider than the width of your screen, so you
should arrange the toolbars around the layout window so they are all displayed. Drag
and drop the toolbars into view; they can be arranged in more than a single line (see
Figure 1). You can also place the toolbars along the side of the layout window or at
the bottom.
Note: Toolbar positioning only needs to be done once, as the positions are saved
by Windows.
174
175
Defining materials
Defining materials
To define materials, perform the following procedure.
Step
Action
176
Use the Initial Properties dialog box to specify basic parameters. These parameters
can be changed later in the session, but they are set at the beginning of the creation
of a project because they are expected to change less frequently. For example, it is
expected that a property such as the Refractive Index will change less frequently in
a design session than some other property that is to be engineered, such as layout
geometry. The Waveguide Profile is the specification of the waveguide geometry in
the transverse plane. Channel waveguides consist of layers, fibers have circular cross
section, and diffused waveguides have graded index. These definitions also change
less often in a design session than does layout geometry.
2
177
There are two main branches in the tree at the left of the Profile Designer window,
Master and OptiBPM Designer1. OptiBPM Designer1 is the temporary name of the
project we are currently working with. When you save the project, you can give it a
more meaningful name.
The main branches have identical subbranches. The subbranches organize user
defined materials and waveguide profiles. You define new materials and profiles in the
Project branch. If you expect to use the definitions again, drag and drop them into the
Master branch. When you open OptiBPM again, the Material and Profile definitions
will appear in the Master branch. You can drag them to the new project branch rather
than having to create them again.
Note: As this is our first time using OptiBPM, we wont be using the Master
directory. Click on the
icon to close it now, so you dont use it by
mistake later in this lesson.
3
Select New.
The Dielectric1 dialog box appears (see Figure 5).
Figure 5 Dielectric1 dialog box
178
Click the 3D Isotropic tab and type Refractive index (Re:): 1.5
179
Figure 7
3D Anisotropic tab
10
180
Action
In the directory under OptiBPM_Designer1, under the Profiles folder, rightclick the Channel folder.
A context menu appears.
Select New.
The ChannelPro1 dialog box appears.
Note: To ensure that you can view all fields, maximize the ChannelPro1
dialog box.
181
Channel profiles consist of layers in the epitaxial direction, and these layers
are defined in the 3D profile panel.
5
182
Click Add.
The information you typed appears in the 3D profile definition window.
In the directory under OptiBPM_Designer1, under the Profiles folder, rightclick the Fiber folder.
A context menu appears.
Select New.
The FiberPro1 dialog box appears.
Note: To ensure that you can view all fields, maximize the FiberPro1 dialog
box.
10
11
For the 3D definition of the Fiber profile, the layers are now concentric layers
of an optical fiber. To define the 3D profile definition:
a. Under 3D profile definition, type the following information:
Layer name: Fiber Core
183
Rx: 2.0
Ry: 2.0
b. In the Material list, click Silica Core.
c.
12
Click Add.
The information you typed appears in the 3D profile definition window.
13
In the Waveguide Properties tab, the Profiles drop-down box, the two profiles we have
defined are available.
184
Action
185
To specify what material to associate with any point that is not contained
inside a waveguide (for 2D calculations):
5
186
Figure 14
10
Save the project as GettingStarted.bpd, so the work done up to this point can be
recovered. If you want to keep files that record intermediate steps of this project, use
the SaveAs function. After you save the file, the name of the tree in the Profile
Designer is GettingStarted, the saved name replaces the temporary name
OptiBPMDesigner 1 (see Figure 11). Similiarly, if you open other projects in
OptiBPM, new tree branches will be created in the Profile Designer with the same
name as the newly created project.
187
188
Action
To draw the first waveguide, in the project layout window, click in the left side
of the project layout at Origin, drag the waveguide towards the right side of
the project layout, and release (see Figure 16).
Note: Click the Select button
to cancel waveguide creation mode.
Create other waveguide shapes by selecting them and placing them in the
layout as in steps 1 and 2. To delete a waveguide from the layout, select the
waveguide and press Delete. For more information about the features of the
waveguide designer, see the Users Reference manual.
To edit the waveguide properties, from the Edit menu, select Properties, or
double-click on the waveguide in the layout.
The Linear Waveguide Properties dialog box appears.
Use the steps illustrated above to create a layout similiar to the one seen in
Figure 16.
Figure 16 Layout design
189
Click the Ref. Index (n) 3D XY Plane View tab at the bottom of the layout
window.
The refractive index view appears.
This view shows the refractive index distribution in the transverse (XY) plane
at the position Z = 0. If your linear waveguide starts at Origin (see Figure 16),
you should see the Channel waveguide we specified in the Profile Designer
procedure Defining 2D and 3D channel profiles. Click on the Palette button to
see the refractive index scale (see the first button in the toolbar shown in
Figure 17). There are many other display options to choose from. Right-click
on the layout to see a list of additional features.
Figure 17
Palette button
You should also become familiar with the Z button found on the Refractive Index
View Type toolbar (see Figure 18). Use of this button allows you to move the Z
position of the XY plane. You can adjust the Z position until you are satisfied that the
refractive index is accurately portrayed in the 3D space. Ensure that you have created
the correct shape, as this is the shape that will be passed to the simulator.
Figure 18 Refractive Index View Type toolbar
Action
From the Draw menu, select Input Plane, or click the Input Plane button
(see Figure 19).
The cursor changes into a cross-hair when you move it into the project layout
window.
Figure 19 Input Plane button
190
To insert the input plane, click as close to the left side of the layout window as
possible.
The input plane appears (see Figure 20). Propagation proceeds left to right,
as shown by the red arrow.
To edit the input plane, from the Edit menu, select Properties or double-click
on the Input Plane.
The Input Plane dialog box appears (see Figure 21).
Figure 21 Input Plane dialog box
191
In the Input Field dialog box, you can specify if the Starting field is to be Modal,
Gaussian, Rectangular, or defined by the user (File).
4
Click Edit.
The Input Field dialog box appears.
On the Input Fields 3D tab, there are two lists. The one on the right displays the list of
waveguides currently found crossing the input plane. In general, there will be more
than one. On the left is the list of optical fields placed on those waveguides. Any of
the waveguides crossing the input plane could have light in a fundamental mode of
arbitrary amplitude and phase.
In this example, we are illustrating the simplest case.
6
Click All.
Sends all waveguide crossing the input plane to the Fields list. The Amplitude
and Phase have values of 1.0 and 0.0 by default (see Figure 22).
Figure 22 Item in Waveguides/Fields window
At this point, we can solve for the mode on the selected waveguide.
7
192
Click Mode.
The Calculate Mode dialog box appears.
Type the number of modes you want the modesolver to find in Number of
Modes, and click Calc. Mode.
The modesolver is started.
The modesolver first shows the refractive index it detects in the XY plane (the plane
where the Input Field marker was placed - see Figure 25).
193
Figure 25 Modesolver
Next, the modesolver finds the mode (or modes), and lists the modal index found in
the Modefound window. The modal field pattern of the mode selected in the
Modefound window is displayed in the Ex tab of the main window (see Figure 26). If
you ask the modesolver to find more than one mode, it will keep finding them and
listing them in the Notification window until it finds the number you asked for, or there
are no more modes on the waveguide (our example is a single mode waveguide).
194
10
To apply the settings and return to the Input Field dialog box, click OK.
11
12
13
Action
195
196
By default, the optical field is shown in the tranverse plane. The progress of the
simulation is displayed on the progress bar along the bottom of the window.
4
197
At the end of the simulation, a message appears and prompts you to open OptiBPM
Analyzer (see Figure 30). The Analyzer is a separate application dedicated to
postprocessing. When you perform a simulation, a file with the extension .bpa is
created. The analyzer reads any .bpa file and displays results and facilitates
postprocessing. You can review results of previous simulations using the analyzer.
There is a tree in the Navigator window you use to select and organize results. Initially,
a copy of the original layout is displayed (see Figure 31).
6
198
Click on the tree item Iteration > Optical Field Propagation > XZ Slice to
see the simulator display (see Figure 32).
Figure 32
Simulator display
199
Click the Ph button on the Data View toolbar (see Figure 33).
The phase distribution in the XZ plane is displayed in the window (see Figure
34).
Figure 33 Data View toolbar
Since the BPM uses a slowly varying envelope approximation, it is a good idea to
check that the optical phase is not changing too quickly in the areas where most of
the optical power is found (compare Figure 34 to Figure 32). Rapid variations in
regions of high optical power indicate that the correct Reference Index has not been
used.
In the Refractive Index Propagation branch of the tree, there is a record of the
refractive index distribution that the simulator used for the calculation.
In the Simulation Parameters branch, there is important data about the simulation
that is generated automatically. This includes the type of starting field, optical
wavelength, Reference Index used by the simulator, propagation step, and other
display and mesh data that are likely to be needed when the results are reviewed (see
Figure 35).
200
The data displayed in this lesson are only the data recorded by default. If more
detailed results are needed, the OptiBPM Designer application (which this lesson
started with) can specify many other output options. You can view these by selecting
Simulation > Additional Output Data (see Figure 36) in the Waveguide Layout
Designer.
201
202
Action
To select the folder where you want to store the Master library, click
The Browse for Folder dialog box appears (see Figure 38)
203
Figure 38
204
Click OK.
A message appears and prompts you to verify the new Master library path.
Click OK.
The Profile Designer displays the Master library contents and teh OptiBPM
Designer Library contents of your layout in the Library Browser (see Figure
39)
Figure 39
Library Browser
205
206
Action
207
208
Action
209
To adjust the display ratio, from the Preferences menu, select Layout
Options.
The Layout Options dialog box appears (see Figure 4).
Figure 4
10
11
210
Action
To draw the first waveguide, in the layout window, click in the left side of the
layout, drag the waveguide towards the right side of the layout window, and
release (see Figure 5).
Figure 5 Drawing the first linear waveguide
211
212
To draw the second waveguide, in the layout window, click beside the first
waveguide, drag the second waveguide towards the right side of the layout
window, and release (see Figure 10).
213
10
To edit the second waveguide, from the Edit menu, select Properties.
The Linear Waveguide Properties dialog box appears.
11
12
13
14
214
15
16
17
The position and the size of the second linear waveguide change according
to the settings that you selected (see Figure 13).
Figure 13 Modified linear waveguide second
215
Action
To insert the input plane, click as close to the left side of the layout window as
possible.
The input plane appears (see Figure 14).
Figure 14 Input plane
216
To edit the input plane, from the Edit menu, select Properties.
The Input Plane Properties dialog box appears (see Figure 15).
Figure 15
To position the input plane more accurately, click the Global Data tab.
Click Edit.
The Input Field dialog box appears (see Figure 16).
Figure 16 Input Field dialog box
217
In the window under Waveguides, select the check box (see Figure 17)
Figure 17 Item in Waveguides window
Click Add.
The item under Waveguides moves into the window under Fields.
10
In the window under Fields, select the item check box (see Figure 18).
Figure 18 Item in Fields window
11
218
To change the default amplitude (1.0) and phase (0.0), click Edit.
The Field Properties dialog box appears (see Figure 19).
12
13
To apply the settings and return to the Input Field dialog box, click OK.
14
15
16
219
17
220
Action
221
Note: While the simulation is running, to select the type of view for the simulation,
at the bottom of the simulation window, click one of the following tabs:
Layout
Cut View
When the simulation is finished, you are asked whether you want to launch the
OptiBPM_Analyzer. Click Yes to open the analyzer.
Note: You do not need to close the simulator in order to open the analyzer.
To leave the OptiBPM_Simulator open, click No when the dialog box appears asking
whether to exit (see Figure 24).
Figure 24 Exit simulator dialog box
222
Figure 26
Figure 27
223
224
Action
Click XZ Slice.
The optical field view of the simulation results appears (see Figure 30).
Figure 30 OptiBPM_Analyzer Optical Field Propagation
Click XZ slice.
The refractive index view of the simulation results appears (see Figure 31).
225
226
Action
227
228
Action
229
230
Step
Action
To draw the arc waveguide, in the layout window, click in the left side of the
layout, drag the arc towards the right side of the layout window, and release
to finish drawing the arc (see Figure 4).
Figure 4
Note: The arc waveguide can be at any position and can be any size.
3
Click
To edit the arc waveguide, from the Edit menu, select Properties.
The Arc Waveguide Properties dialog box appears (see Figure 5).
231
232
10
11
12
Click OK.
The position and the size of the arc waveguide change according to the
settings that you selected (see Figure 9).
233
234
Step
Action
To insert the input plane, click at the left side of the layout window.
The input plane appears (see Figure 10).
To edit the input plane, from the Edit menu, select Properties.
The Input Plane Properties dialog box appears (see Figure 11).
Figure 11 Input Plane Properties dialog box
235
To position the input plane more accurately, click the Global Data tab.
Click Edit.
The Input Field dialog box appears (see Figure 12).
Figure 12 Input Field dialog box
In the window under Waveguides, select the check box (see Figure 13)
Figure 13 Item in Waveguides window
236
Click Add.
The selected waveguide moves into the window under Fields.
10
In the window under Fields, select the item check box (see Figure 14).
Figure 14 Item in Fields window
11
Click Edit.
The Field Properties dialog box appears (see Figure 15).
Note: The modal field is automatically selected under the pertinent angle
(tangential direction).
Figure 15 Field Properties dialog box
12
13
To apply the settings and return to the Input Field dialog box, click OK.
14
237
15
238
Action
239
240
Action
241
Layout
Cut View
When the simulation is finished, you are asked whether you want to launch the
OptiBPM_Analyzer. Click Yes to open the analyzer.
Note: You do not need to close the simulator in order to open the analyzer.
To leave the OptiBPM_Simulator open, click No when the dialog box appears asking
whether to exit (see Figure 21).
Figure 21 Exit simulator dialog box
242
Figure 23
Figure 24
243
244
Action
Click XZ Slice.
The optical field view of the simulation results appears (see Figure 27).
Figure 27 OptiBPM_Analyzer Optical Field Propagation
Click XZ slice.
The refractive index view of the simulation results appears (see Figure 28).
245
246
To view the graph of the power in the output waveguide, click Power in
output waveguides.
The graph appears in the layout window.
In the top left corner of the layout window, click the blue Graph Menu icon.
A context menu appears (see Figure 29).
247
Notes:
248
Creating materials
Running a simulation
249
Action
Action
2D Wafer Properties:
Material: cladding
250
Action
Width: 48
Action
To insert the input plane, click as close to the left side of the layout window as
possible.
The input plane appears.
To edit the input plane, from the Edit menu, select Properties.
The Input Plane Properties dialog box appears (see Figure 1).
251
Ensure that on the Global Data tab, Z position: Offset, the value is 2.000.
Figure 1 Input Plane Properties dialog box
252
Action
Click the 2D tab and ensure that the following settings are selected
(see Figure 3).
Polarization: TE
Mesh Number of points = 600
BPM solver: Pad(1,1)
Engine: Finite Difference
Scheme Parameter: 0.5
Propagation Step: 1.55
Boundary Condition: TBC
Note: For more information on simulation parameters, see the OptiBPM
Users Guide.
Figure 2 Simulation parameters dialog boxGlobal tab
253
254
Here we can review the results and decide where the coupling will be most
efficient and reasonable. As previously discussed, we are interested in the
four local intensity maxima and finding their precise horizontal positions.
Since we have 200 displays and the total length is 1420m, we recognize that
these maxima lay approximately within the interval 1400m from the origin.
255
Action
256
To view these four points more accurately, right-click anywhere in the graph
to access the context menu.
257
This view shows that the centers of the two points are at approximately
1399m on the axis.
Note: A procedure that describes this value more precisely is shown in a later
lesson that discusses scripting.
10
258
11
To focus more precisely on the centers of the points, change the length of the
second waveguide.
a. Double-click on the waveguide.
The Linear Waveguide Properties dialog box appears.
b. Type the following value:
End offset
Horizontal: 1399
12
13
14
15
Analogically to the procedures above, find a vertical position for the upper and
outermost intensity maxima. You will find that its approximately 19.6m.
259
Action
Draw the waveguide on top of the second waveguide from 100um to 1500um
and at a slight upward angle (see Figure 11).
Figure 11
260
Action
From the Edit menu, select Edit Mode > Monitor Paths.
The Path Monitor dialog box appears (see Figure 13).
Figure 13 Path Monitor dialog box
Click New.
The buttons in the dialog box change (see Figure 14) and the cursor changes
into a link.
Figure 14 Path Monitor dialog box different buttons
261
In the layout window, click the first waveguide and the output waveguide.
The defined path turns red (see Figure 15).
Figure 15 Red waveguides
262
In the Layout Window, go to Simulation >> Path Monitor Type... and Select
Power overlap integral with fundamental mode with Global
Normalization.
Figure 17 Path Monitoring Type
Run the simulation and view the output waveguide in the simulator
(see Figure 18).
Figure 18 Simulation with output waveguide
263
Action
In the dialog box that appears after the simulation ends, click Yes.
OptiBPM_Analyzer opens.
The goal is to maximize the coupling from the intensity maxima to the output
waveguide. The highlighted section of the graph must be at its maximum
level. This is done by precisely changing the vertical end point of the output
waveguide. After this iteration, you may find that the coupling is best when
the vertical end point value is 19.86m.
264
In the Waveguide Properties dialog box, change the end offset value of the
output waveguide to 19.86m.
Action
265
The positions of the output waveguides change according to the settings that
you selected (see Figure 21).
Figure 21 FInal settings for output waveguides
266
Action
267
As you can see, the resulting paths are very similar. This means that the
power distribution in all four output waveguides is almost identical, which
reflects the desired result.
268
Notes:
269
270
Action
271
2D Wafer Properties:
Material: cladding
Action
Width: 4
272
Width: 4
Action
Click Edit.
The Input Field dialog box appears.
273
In the window under Waveguides, select the second check box with the Pos
setting of 4.000000 (see Figure 2).
Figure 2 Items in Waveguide window
Click Add.
The selected waveguide moves into the window under Fields.
To apply the setting and return to the Input Plane dialog box, click OK.
Action
From the Edit menu, select Edit Mode > Monitor Paths.
The Path Monitor dialog box appears (see Figure 3).
Figure 3 Path Monitor dialog box
274
Click New.
The buttons in the dialog box change (see Figure 4) and the cursor changes
into a link.
Repeat steps 2 to 4 to assign a path to the second waveguide (see Figure 7).
Path 2 appears in the drop-down list.
275
Figure 7
In the Layout Window, go to Simulation >> Path Monitor Type... and select
Power overlap integral with fundamental mode with Global
Normalization.
Figure 8 Path Monitoring Type
276
Step
Action
277
To apply the settings and return to the layout window, click OK.
Action
278
To select the Path Monitor view, click the Path Monitor tab (see Figure 11).
Figure 11 Path Monitor First path
Figure 10 and Figure 11 show that the energy is fully coupled into the second
waveguide. Now we will study the coupling phenomenon with respect to the
wavelength.
3
279
Action
Figure 12 Script
280
Note: This script will perform 3 iterations with a 0.15m step-down from the
starting wavelength.
281
Before running the simulation, test the script for errors by running the
scripting page (Simulation > Run Script, or press Play on the Script
toolbar).
If you have made a VB syntax error, a message with the line number and
description of the problem will appear in the Notification tab of the Output
Window. If you only get the message "Warning: Running of Script will clear
Undo Redo stacks", then all is well, and you should proceed. If you get error
messages in addition to the warning, check your spelling and typing of the
script before going to simulation.
Note: In later lessons, you will learn that many scripts can change the
layout. This is a desirable feature for advanced simulations, but keep in
mind that running these scripts will change the layout you have drawn.
10
11
Under Simulation technique, click Simulate Using Script (see Figure 14).
Figure 14 Run simulation using the scripto
282
12
13
283
Action
284
285
286
Notes
287
288
Action
289
290
291
Action
b. Wafer Dimensions:
Length: 1000
Width: 40 (see Figure 4).
c.
2D Wafer Properties:
Material: CladEffInd (see Figure 5)
292
Figure 4
293
294
Action
295
296
Figure 9
OR
Press Ctrl, click both waveguides to select them, and select Edit > Flip and
Mirror > Mirror to Right (see Figure 10).
297
Deselect all waveguides and press Ctrl to select the two waveguides on the
right (see Figure 11).
Figure 11 Selecting the waveguides
298
Click and drag the two waveguides so they line up with the right boundary of
the calculation window (see Figure 12).
Figure 12
Draw a linear waveguide between the two S-Bend Arc waveguides (see
Figure 13).
Figure 13 Filling in the gap
299
10
To create a mirror image, select all the waveguides, and click the Mirror to
Bottom button on the Flip and Mirror toolbar (see Figure 14).
OR
Select all the waveguides, and select Edit > Flip and Mirror > Mirror to
Bottom (see Figure 14).
Figure 14 Creating a mirror image of the waveguides
11
300
Select all the bottom waveguides drag the waveguides down. Centre them so
the design is symmetric (see Figure 15).
The waveguide placement is complete.
12
Verify each waveguide and check that the co-ordinates are correct (see
Figure 16).
Note: If necessary, change the co-ordinates in the Waveguide Properties
dialog box.
Figure 16
Waveguide co-ordinates
301
Action
Click the Scripting tab in the main project window (see Figure 17).
The Scripting window appears.
Figure 17 Scripting tab
Remove the following line from the script (see Figure 19):
InputPlaneMgr.DeleteAll
302
Action
To insert the input plane, click at the left side of the layout window.
The input plane appears.
To edit the input plane, from the Edit menu, select Properties.
The Input Plane properties dialog box appears (see Figure 20.
To position the input plane more accurately, click the Global Data tab and
type the following settings:
a. Starting Field: Mode
b. Z Position: 10.00000
303
304
Select the second waveguide (at position 7.5) and click Add.
The selected waveguide appears in the Fields window and displays the
amplitude and phase (see Figure 22).
Figure 22
To apply the selected waveguide and return to the Input Field dialog box,
click OK.
305
Action
306
As Figure 24 shows, this coupler is not an ideal 3dB coupler because more
power is transferred to the lower branch than to the upper branch. Moving the
waveguides farther apart would reduce the coupling. You can run many
simulations with various separations to find the best design.
3
307
308
Action
7.5,
470,
SBendSin2.SetPosition 900,
7.5,
530,
SBendSin3.SetPosition 900,
-7.5,
530,
-(3.0+Delta*(x-1))
SBendSin4.SetPosition 100,
-7.5,
470,
-(3.0+Delta*(x-1))
Linear3.SetPosition
470,
Linear6.SetPosition
470,
3.0+Delta*(x-1),
-(3.0+Delta*(x-1)),
530,
530,
3.0+Delta*(x-1)
3.0+Delta*(x-1)
3.0+Delta*(x-1)
-(3.0+Delta*(x-1))
ParamMgr.Simulate
Next
Note: The first lines draw the layout, and the above lines enter a loop. The
layout is adjusted to move the coupler waveguides farther apart in each
iteration. Each loop ends with a ParamMgr.Simulate command which calls
the simulator for the current layout.
3
309
310
Click Run.
The simulator runs 10 times and the progress is reported in the Notification
window (see Figure 27).
311
Action
312
313
Figure 31
314
To view the simulation result for the 3rd iteration, select Iteration 3 from the
Iteration drop-down list.
Action
315
316
317
Note: You can use the default values, change the defaults, or apply functions.
You can change:
electrooptic coefficients
crystal cut
propagation direction
polarization
The wavelength input in the profile determines the refractive index boxes in
the auto mode, but does not influence simulations. The wavelength of the
simulation process is set in Setting the simulation parameters on page 321.
4
Action
318
Length: 60
Width: 20
c.
2D Wafer Properties:
Material: LN1
d. 3D Wafer Properties
Cladding
Material: Cladding
Thickness: 2
Substrate
Material: LN1
Thickness: 10
2
Action
To insert the input plane, from the Draw menu, select Input Plane and click at
the left side of the layout window.
The input plane appears.
To set up the excitation field properties, edit the input plane properties by
selecting Edit > Properties.
The Input Plane properties dialog box appears.
Click Edit.
The Input Fields dialog box appears (see Figure 4).
319
Since the waveguide is formed by a Ti diffusion, it will be lying just below the
top of the substrate. We will therefore set the centre of the beam 3 microns
below the surface.
7
Click on User
320
Close the Input Field and Input Plan dialog boxes to return to the Layout
Designer.
Action
Click the Global Data tab and type the following settings (see Figure 6):
a. Reference Index: Average
b. Wavelength: 1.550000
c.
View cut:
X Mesh Pt: 76 (x-position ~ 0.0)
Y Mesh Pt: 88 (y-position ~ -3.0)
321
322
Action
Click the 3D Isotropic tab and ensure that the following settings are selected
(see Figure 7):
Polarization: None(Scalar)
Number of points: 151 x 151
View cut:
X Mesh Pt: 76 (x-position ~ 0.0)
Y Mesh Pt: 88 (y-position ~ -3.0)
Propagation Step: 1.5
323
324
Action
From the File menu, select the template file (PredefinedTi.bpd) and click
Open.
The file opens in the Profile Designer.
Click OK.
Action
325
Action
Copy (Ctrl-C) and paste (Ctrl-V) the original waveguide in the layout
window.
A second linear waveguide appears in the layout window on top of the original
one.
Note: Since the diffused processes are additive, the top waveguide is not
going to overwrite the bottom waveguide but both processes will contribute to
the final refractive index distribution. You can check the index distribution in
the designer by going to the Ref.Index tab (see Figure 12).
You can now run the 3D simulation (see Figure 13 and Figure 14 for 3D
results).
326
Figure 12
327
In diffused waveguides, the refractive index is small. To view the diffusion, set the
scale manually:
Step
Action
Click Apply.
Note: Auto scale will stay off until you turn it back on, so don't forget to turn
Auto scale back on when viewing other data.
Figure 13 Ex - XY results 3D
328
Notes
329
330
Step
Action
Action
331
b. Name: Air
3D Isotropic Refractive index (Re:): 1
c.
Name: Substrate
3D Isotropic Refractive index (Re:): 3.40
332
After this step, minimize the Profile Designer and return to the OptiMode XS Designer.
333
Action
d. Thickness: 3
Figure 4 Selecting 3D Wafer Properties
The application will display the refractive index distribution of the transverse plane
with the cladding and substrate. Save the project. The name of the project will
replace the default name in the Profile Designer directory that defines this projects
profiles and materials.
334
To add the waveguide to the top of the substrate, click on the Waveguide icon
in the Layout Properties window. The refractive index contrast is low, but the
difference can be made more visible by using the Height Plot setting and
rotating the view to emphasize contrast. Both buttons are circled in red in
Figure 5.
Figure 5 Waveguide on top of Substrate
335
Profile = RidgeWG
Action
Go to Solving >> Edit Parameters ... to open the Variables and Functions
dialog box.
Click OK
Action
Click on the Add Substrate layers button, next to the Waveguide button of
Figure 5. Double click on the new item in the list to get the Substrate Region
dialog box
Click Add to get the Layers dialog box, and enter EtchedFilmThickness for
the Thickness.
The refractive index view will now show the film of thickness 0.4 microns covering all
the substrate.
336
Note that the Substrate Layer is available in OptiBPM as well. Use this feature for
designing ridge waveguides or other waveguides that have a multilayer film on the
wafer between waveguides. The Layout in OptiBPM Designer will show the location
of the ridges, and is the appropriate picture for preparing the layout masks.
337
Action
Click OK
Once the parameters have been set, the mode can be found from Solving >> Solve
ADI
338
When the mode solving is finished, youll be asked if you want to proceed to the
Analyzer, If so, the simulator will close and the Analyzer application for this project
will open.
339
Action
Go to Solving >> Edit Parameters ... to open the Variables and Functions
dialog box.
The picture in the refractive index view, as in Figure 6, will change to a film thickness
of 0.6 microns, and the simulator will solve the new structure.
340
Modal Index
0.0
3.41181111
0.2
3.41208921
0.4
3.41254107
0.6
3.41338269
0.8
3.41465381
341
342
343
Material
Parameter
nCladding (InP)
3.1662
nSubstrate (InP)
3.1662
nTopLayer (InGaAsP_top)
3.3832
nBottomLayer (InGaAsP_bottom)
3.2416
Ltaper
560m
WInputTop
1.2m
WInputBottom
2.4m
dCladding
5m
dBuffer
0.4m
dSubstrate
5m
dTopLayer
0.3m
dBottomLayer
0.11m
WOutputTop
0.08m
WOutputBottom
6.0m
344
Action
345
Action
346
Action
Width: 2.4
d. Depth: 0.4
e. Label: Linear Input Waveguide
f.
2
Profile: InputWgChannel
g. Profile: BottomInGaAsChannel
3
347
Vertical: 0
c.
Width: 6.0
d. Depth: 0.4
e. Label: LinearOutput
f.
Profile: BottomInGaAsChannel
Note: Notice the Depth Parameter values are set to 0.4. This will place the
bottom of the waveguides 0.4 micrometers above the substrate, leaving a
space for the buffer layer. As the buffer is of the same material as the cladding
and substrate, there is no need for further concern.
The resulting layout should look similar to Figure 2.
Figure 2
Layout design
348
Vertical: 0
c.
g. Profile: TopInGaAsChannel
5
Action
Click Edit.
The Input Field dialog box appears (see Figure 4).
In the window under Waveguides, select the check box (see Figure 4).
Click Add.
The item under Waveguides moves into the window under Fields.
349
350
351
Action
Click the Global Data tab and type the following settings:
a. Reference Index: Modal
b. Wavelength: 1.550000
c.
View cut:
i.
352
Step
Action
Click the 3D tab and check the settings (see Figure 6).
353
354
Figure 7
Figure 8
Figure 9 Ex XY results 2D
References
[1]
R. Zengerle, O. Leminger, W. Weiershausen, K. Faltin, and B. Huebner: Laterally tapered InPInGaAsP waveguides for low-loss chip-to-fiber butt coupling: A comparison of different
configurations, IEEE Phot. Techn. Lett. 7, (May 1995): 532-534.
355
Notes:
356
OptiBPM has another, older, electro-optic module. This legacy feature is specialized
to three coplanar electrodes when used on diffused electrodes in lithium niobate. See
Lesson 14: Mach-Zehnder Interferometer switch. If the system you want to model
conforms to this specific case, and information about electrode impedance is not
required, you might want to consider the Electrode Region feature described in
Lesson 14: Mach-Zehnder Interferometer switch. For all other electro-optic
simulations, the feature described in this tutorial should be used.
357
The material system for this example is AlGaAs. The ridge structure forms a
waveguide and supports TE and TM waves, although only the TE mode is excited in
our example. The electrodes are metal and do not significantly intersect the guided
mode. When the electrodes have a potential difference, a mostly vertical electric field
appears in the material that supports the optical mode. The refractive index of the
material is modified slightly by the electo-optic effect. The effect is small, but it can
make a significant difference in the phase of the optical wave after propagation over
a long distance, on the order of one cm. According to Ref [1], applying a potential
difference of 17.8 V between the Topside and Backside electrode should cause a
change in phase of Pi after 1cm of propagation in the fundamental mode of the
waveguide.
To make a project that simulates the voltage-dependent optical phase shift, follow
these steps. A finished project can be found in the Tutorial Samples directory, called
Lesson10_ElectroOptic.bpd.
It is recommended that you have already finished Lesson 1: Getting Started. It is also
a good idea to have already completed Lesson 9: Create a chip-to-fiber butt coupler
as well, in order to be familiar with issues in 3D BPM simulation without electro-optic
effects.
358
Action
In a new project, open the Profile Designer and create a new material for
GaAs in the branch Materials/Dielectric. Name the material GaAs155, and
enter a refractive index of 3.421076 in the 2D and 3D Isotropic tabs of the new
material. This value of refractive index is taken from Reference 2. The
electro-optic tensor for GaAs has non-zero components r41 = r52 = r63 in the
crystal coordinate system. However, for this device the waveguide axis is
rotated in the XZ plane by 45 relative to the crystal axis, so a vertical (parallel
to Y) electrostatic field affects the TE mode by an electro-optic coefficient
equal to r41. In this project we will simulate a TE mode, so enter the r41
coefficient as rV, the vertical electro-optic coefficient. (select the Electro Optic
Effects check box) The horizontal part of the electric field does not affect the
horizontally polarized TE mode, so the rH should be set to zero.
= 1.55
m. n = 3.421076,
359
Click on the Static Permittivity tab and enter 13.18 for the XX and YY
component of the static permittivity tensor[3].
Figure 3 Static Permittivity of GaAs.
360
Repeat steps 1-3 for the other dielectric materials in the project. The names
and properties of all dielectric properties in the project are shown in Table 8
below.
Name
rH
rV
EpsXX
EpsYY
GaAs155
3.421076
1.42e-12
13.18
13.18
A13Ga7As155
3.279933
1.42e-12
12.244
12.244
BCB
1.538
2.365444
2.365444
air
1.0
1.0
1.0
361
wave. The refractive index of 1.6 will prevent the electrode from disturbing
the beam propagation method of simulation. See comments in the paragraph
above.
6
362
Repeat step 5-6 for another material, called ground. Use the same refractive
index.
Define Profiles
8
Create a Channel profile called ridgeWG. This will be placed on top of the
epitaxial layers to create the ridge of Figure 1. Set the 2D profile definition to
Material Al3Ga7As155. Set the 3D profile definition with one layer of Material
Al3Ga7As155 with Width 3, Thickness 0.5, and Offset 0. Enable the Slanted
Walls feature, and enter 45 angles on the right and left sides.
Figure 5 Definition of the ridgeWG Channel Profile
10
Repeat Steps 8-9 to create a profile for an electrode. Name the Profile
Electrode1Profile and enter the Material as Electrode1 for 2D and 3D profile
definitions. Set Width = 1.0, Thickness 0.2, and Offset 0.
363
11
364
Repeat Step 10, but name the new profile GroundElectrode. All properties
are the same as Electrode1Profile except the electrode material is ground
instead of Electrode1 material.
12
Return to the Initial properties dialog box and enter the following choices:
Waveguide Properties tab
Width 4.0
Profile: ridgeWG
Wafer Dimensions tab
12000
Width 40
2D Wafer Properties tab
Material: BCB
3D Wafer Properties tab
Cladding Material: BCB, Thickness 4
Substrate Material: air, Thickness 0.5
365
13
Click OK
14
Change the view to see the whole wafer by Preferences >> Layout Options
>> Display Ratio = 200.
16
17
18
366
With the Select tool, right click in the waveguide to open the Linear
Waveguide Properties dialog box, and change the Depth to 3.05
Figure 10
19
Open the Simulation Parameters dialog box from Simulation >> Simulation
Parameters. In the 3D Isotropic tab, enter Number of Points per micron in X
as 10 and 30 for Y. Set the View Cut in X to 201 and to 100 in Y. This box
also has a radio button to select which solver will be used to find the
electrostatic field. The default is SuperLU, which can be used if your system
has sufficient RAM. If there is trouble with this solver later in the project, the
solver can be changed to the alternative solver, Bi-Conjugate Gradient.
367
20
368
Look at the profile so far by clicking on the Ref. Index (n) 3D XY Plane View
tab. The Air substrate, the BCB cladding, and the semiconductor ridge
should already be there, as in Figure 12.
21
The other dielectric layers are input by using the Region feature of OptiBPM.
In the Layout select Draw >> Regions >> Substrate Region, and drag and
drop the substrate region on the layout. With the Select tool, right click on the
new Region to get to the Substrate Region Dialog box. Enter 0 as the starting
offset, and 12000 as the end.
369
22
Go to the Substrate tab and click Add to add the first layer. Enter for the Start
and End Thickness 2.0, and select material Al3Ga7As155
Figure 14 Substrate Layer
23
370
Repeat step 22 to add the second layer. Enter for the Start and End
Thickness 0.73, and select material GaAs155.
24
Repeat step 22 to add the third layer. Enter for the Start and End Thickness
0.32, and select material Al3Ga7As155.
25
Look at the profile again by clicking on the Ref. Index (n) 3D XY Plane View
tab. The substrate layers should be there, to reproduce the waveguide part
of Figure 1
Figure 15 Waveguide of Fig. 1
371
26
In the layout view, draw a second linear waveguide with the same coordinates
as the first waveguide. With the Select Tool, right click on the waveguide to
open the Linear Waveguide Properties dialog box. Change the Width to 2.0,
the Depth to 3.55, and the Profile to Electrode1Profile.
Figure 16 Electrode 1 layout definition
27
372
28
Repeat Step 26 to draw the ground electrode. Let the Width be 6.0, the
Depth be 0.2, and the Profile be GroundElectrode.
29
This waveguide is wider than the rest, so it covers the first two. Note that right
clicking the waveguide presents layout options such as Move To Back. Apply
this to this waveguide so that the other two can be seen in the layout.
373
Figure 18
Finished layout with Substrate Region, two electrodes, and ridge waveguide.
30
374
Look at the Ref. Index (n) 3D XY Plane View tab again. In certain angles
of the XY Plane view in the Height Plot mode, one can see the electrodes as
well as the waveguide.
375
Electrostatic Simulation
31
Go to Edit >> Edit Electrodes to get the Edit Electrode Connections dialog
box. Each Electrode Material has a combo box with a selection of electrode
Ids, there is one ID for each of the Electrode Materials.
Figure 20 Edit Electrode Connections dialog box, with combo selection of electrode ID.
376
32
33
Once the IDs are assigned, one can assign the potentials in the Electrode
Potential list box. Assign a potential of 17.8 V to Electrode ID 1, and 0 V to
Electrode ID 2.
34
35
Run the Electrostatic simulation by Simulation >> Electro Optical Solver >>
Calculate. The Electro Optical Solver window will open, and the graph will
initially show the position and ID of the electrodes in this transverse plane.
(Position Z = 0 is the default, but this can be adjusted with the slider in the
Electro Optical View Option dialog box. ) Selecting Electrostatic Potential in
the tree will show equipotential contour lines superimposed on the
electrodes.
377
Figure 22 Electro Optic Solver. Selecting Electrode ID first and Electrostatic Potential second shows the
Electrode ID in colour and the Electrostatic Potential in contour lines. The picture can be more clear by
turning off the grid. (Right click and unselect Grid).
36
378
Selecting the Electrostatic Potential first, then RI real, and then Electrode ID
will show the potential in colour, and the electrode and waveguide boundaries
with superimposed lines.
37
379
Figure 24 Electrode Impedance. Capacitance is for a lumped circuit. Impedance and Phase Velocity are
for the balanced transmission line case.
Electro-Optic Simulation
38
In the Layout view, add an Input Plane (see Lesson 1: Getting Started). Set
the Z Position to 0 and the Starting Field to Modal. In the Input Field dialog
box, select the waveguide with the ridgeWG profile to form the input field.
Figure 25 Input Field dialog
380
39
40
Select Simulation >> Additional Output Data >> 3D Isotropic tab, and select
Relative Power vs. Distance and Electrode Impedance. In the Z Cut tab,
select Field, Refractive index, and Potential and Permittivity for various Z
positions. Exit the box with OK.
41
Figure 26 Simulation of Phase of the guided mode with electrode potential 17.8 V
42
When the simulation finishes, open the Analyser and observe the data in the
Electrode Impedance tree. Right click the graph to open the legend. If the
electrodes change position over the wafer, this graph will plot the changes vs.
Z. Numerical data is available from the Export Data option that drops down
from the blue icon at the top left corner of the graph.
381
43
Open the Z Cuts directory from the tree and select optical, refractive index,
permittivity, or Electrostatic Potential data for display. The Z value is then
selected from the combo box.
Figure 28
382
References
[1]
[2]
[3]
Y. Cui and P. Berini, Modeling and Design of GaAs Traveling-Wave Electrooptic Modulators
Based on the Planar Microstrip Structure, J. Lightwave Tech., 24(6) p2368-2379 (2006)
[4]
383
384
LESSON 11: INTEGRATED OPTICAL CIRCUIT SIMULATION USING OPTIBPM AND OPTISYSTEM SCATTERING
DATA EXPORT
Part I OptiBPM
Part II OptiSystem
Theoretical Background
We will analyze one of basic photonic circuits, the Mach-Zehnder Interferometer (MZI)
shown in Figure 1 . The device actually consists of four basic components/devices
and our goal is to divide the circuit into these primitive self-existing devices, or, in other
words, the 3dB coupler. They can be separately simulated by means of OptiBPM and
later analyzed as the entire device by OptiSystem.The device can be quite large, and
therefore, consume an extended simulation time. Any division to a subcomponent
decreases the time consumption drastically, because the simulation speed is
proportional to the area of the component (see Scattering Data in the Technical
Background for more information). At this point, we should emphasise the circuit
division criteria are case sensitive and the decision is dependent on the users
knowledge and experience, however the subcomponents (i.e. their boundaries ) are
often visible naturally. On the other hand, an improper subcomponental division can
cause false results. Moreover, the designer has already the principle of a given circuit
operation clearly in mind prior to enitiating any practical design. In this example, we
will design the MZI to have a maximum intensity for one wavelength and the minimum
intensity (in the same port) for another wavelength. This is the principal behaviour of
the MZI and it can be exploited as a basic switch, because the other output port
obviously behaves in a complementary fashion to the first one.
The functionality of the device is well known. The light is launched into one input (we
will select the upper input waveguide, marked input). The input 3dB coupler splits the
light into two equal parts. The 3dB coupler was previously optimised to split the light
385
equally from one input port to the output ones. The light then propagates
independently through each arm. One of them is optically longer, what causes a
phase difference at the ends of these arms. This can be achieved in several ways, we
simply demonstrate this effect by increasing the core refractive index of the lower arm.
Finally, the light coming from both arms enters the output coupler, which recombines
the light depending on a magnitude of the phase difference. If there was no phase
difference, the light should ideally appear just in the lower (B) ouput port. However,
with the presence of a certain phase difference, the light distribution will vary with
changing wavelength. We will omit any theory here for the sake of brevity (you should
refer to any basic photonic literature, such as [1]). Since we are interested of the
wavelength dependence on the device bahaviour, the optical phase difference takes
the form:
n 1 ( ) n 2 ( )
( ) = 1 ( ) 2 ( ) = 2L -------------------------------
where is the wavelength, L is the arms length, n 1 ( ) and n 2 ( ) are the effective
indices of the upper and lower arm, respectively. The length of the arms in between
the couplers is 3 mm. Regarding the material configurations, the core refractive index
is 1.5, the cladding is 1.49 for all devices. The core refractive index of the lower arm
is increased to the value 1.52. The width of all particular waveguides is 4 microns. A
basic inspection of the effective indices shows, we should thus be interested to
analyze the wavelength interval from1.534 nm to 1.554 nm to reach desired
behaviour of the device (including couplers).
Obviously, we can see the following subcomponents in our case (see Figure 1):
One (the lower) of the arms causes the desired phase difference
Figure 1 Schematics of MZI
386
LESSON 11: INTEGRATED OPTICAL CIRCUIT SIMULATION USING OPTIBPM AND OPTISYSTEM SCATTERING
DATA EXPORT
Part I OptiBPM
This section describes the procedures required to generate scattering data in
OptiBPM. The procedures are:
To start designing the 3dB coupler, we will use the coupler created in Lesson 6, where
the influence of the distance between the coupling parts of the coupler was studied by
a script (see Figure 2). When you run the sample file, you can see the the optimal half
splitting power appearing somewhere between the 3rd and 4th iteration step (see
Figure 3).
Figure 2 Lesson6_3db_coupler layout
387
To use the data in Lesson 6 to generate scattering data, perform the following
procedure.
Step
Action
We will derive the coordinates of the waveguides in the coupler from the script code
in Lesson 6. The end of the script code in Lesson 6 is:
It is obvious the vertical positions of the all SBends and the short central linear
waveguides (Linear6 and Linear3) have to be defined accordingly. Considering the
ideal coupling for x = 3.5 , the expressions from the script yield for the desired
vertical positions the value 3.278 and -3.278, respectively. However, let us
consider a slightly non-symmetric coupling (approximately 45% and 55% of the total
power to each waveguide) as a fictitious simulation of an inaccurate fabrication. We
will decrease the values slightly, to +/- 3.19. The easiest way to modify these
vertical waveguides is to simply modify manually the pertinent waveguide
coordinates. The coupler is saved as deriv_3dB.bpd for further exploitation.
To modify the waveguide properties for this lesson, perform the following procedure.
Step
Action
388
LESSON 11: INTEGRATED OPTICAL CIRCUIT SIMULATION USING OPTIBPM AND OPTISYSTEM SCATTERING
DATA EXPORT
Click OK.
The Linear Waveguide Properties dialog box closes.
Click OK.
The Linear Waveguide Properties dialog box closes.
The ends of the S-bend waveguides must also be modified to meet the ends of
Linear3 and Linear6.
Step
Action
Click OK.
The S-Bend Sine Properties dialog box closes.
Click OK.
The S-Bend Sine Properties dialog box closes.
Click OK.
The S-Bend Sine Properties dialog box closes.
10
11
12
Click OK.
The S-Bend Sine Properties dialog box closes.
13
389
Lesson6_3db_coupler.BPD file
Action
A message box opens and informs you that the scattering data script will
overwrite the current script (see Figure 5).
Figure 5 Scattering data script message box
390
Click Yes.
The Scattering Data Scripting dialog box appears.
LESSON 11: INTEGRATED OPTICAL CIRCUIT SIMULATION USING OPTIBPM AND OPTISYSTEM SCATTERING
DATA EXPORT
From the Input Plane drop-down list, select InputPlane1 (refer to Figure 6).
To determine the scanning interval and the number of steps in the interval,
type the following wavelength values:
Initial: 1.534
Final: 1.554
Steps: 21
Note: The default number of steps is 3. When you select only one step,
the results are wavelength-independent for further analysis.
Figure 6 Scattering Data Scripting dialog box
Click OK.
The Scripting window opens and displays the generated scattering data
script (see Figure 7).
391
392
Click the 2D tab and ensure that the correct simulation parameters are set.
LESSON 11: INTEGRATED OPTICAL CIRCUIT SIMULATION USING OPTIBPM AND OPTISYSTEM SCATTERING
DATA EXPORT
Click Run.
OptiBPM_Simulator opens and the simulation runs.
393
Obviously, both are mathematically equal. However, the polar coordinates export is
advantageous for relatively longer devices, because of further interpolation of slowly
varying cumulative phase in OptiSystem. Therefore, only a few iteration steps are
required. On the other hand, the Cartesian coordinates export is worth using in cases
of sudden phase changes in the device behaviour, but quite a number of iterations is
needed (i.e., frequently oscillating function is to be fitted in most cases).
To export the scattering data from OptiBPM_Analyzer to OptiSystem, perform the
following procedure.
Step
Action
394
LESSON 11: INTEGRATED OPTICAL CIRCUIT SIMULATION USING OPTIBPM AND OPTISYSTEM SCATTERING
DATA EXPORT
The procedure to generate and export scattering data is complete. The next
procedure describes how to generate, use, and analyze the scattering data *.s file
with OptiSystem.
Waveguide width: 4
Waveguide length: 3 mm
Refractive index of the cladding: 1.49
Refractive index of the core (upper arm): 1.50
Refractive index of the core (lower arm): 1.52
Scan the wavelength with:
Initial: 1.534
Final: 1.554
Steps: 14
Note: Since we are dealing with the single straight waveguide, 14 or less steps
should be accurate enough for the data export.
Following the procedure outlined for the 4 port coupler, generate the Sdata files for
both arms (L11_Arm.bpd and L11_Arm.s; L11_Arm_phase.bpd and
L11_Arm_phase.s, the latter one having a higher core refractive index).
395
396
LESSON 11: INTEGRATED OPTICAL CIRCUIT SIMULATION USING OPTIBPM AND OPTISYSTEM SCATTERING
DATA EXPORT
Part II OptiSystem
This section describes how to analyze the scattering data *.s file generated from
OptiBPM in OptiSystem. The procedures are:
Action
From the Start menu on the task bar, select Programs > Optiwave Software
> OptiSystem > OptiSystem.
OptiSystem opens.
397
In the Component Library, double-click the Default folder, and then doubleclick the Optiwave Software Tools folder.
The Optiwave Software Tools folder opens and displays the available
components. This is where the OptiBPM Component NxM is located.
Select and drag the OptiBPM Component NxM into the main layout (see
Figure 13).
Figure 13 OptiBPM Component NxM
398
LESSON 11: INTEGRATED OPTICAL CIRCUIT SIMULATION USING OPTIBPM AND OPTISYSTEM SCATTERING
DATA EXPORT
To load the scattering data into the OptiBPM Component NxM, in the main
layout, double-click OptiBPM Component NxM.
The OptiBPM Component NxM Properties dialog box appears
(see Figure 14).
You must select the type of data (Cartesian (Real Imag) or Polar coordinates
(Amplitude Phase). The choice must correspond to the data style exported from
OptiBPM (Polar in this case).
6
In the OptiBPM Component NxM Properties dialog box, File Format row,
select Value > Amplitude Phase.
Figure 14 OptiBPM Component NxM Properties dialog box
399
In Label, describe the device according to the simulation in OptiBPM (in this
case we use 4 port coupler (3dB)) (see Figure 16).
10
Click OK.
The OptiBPM Component NxM becomes a 2x2 elementtwo inputs and
two outputs (see Figure 17) and the label changes.
Figure 16 Final step of loading *.s file
400
LESSON 11: INTEGRATED OPTICAL CIRCUIT SIMULATION USING OPTIBPM AND OPTISYSTEM SCATTERING
DATA EXPORT
Action
Select Copy, place the cursor in the layout, right-click and select Paste.
A copy of the 4 port coupler (3dB) appears in the layout.
or
Select the OptiBPM Component NxM and drag the component into the
layout.
An OptiBPM Component NxM appears in the layout.
401
Figure 18 OptiBPM Component NxM in Recently Used list (OptiBPM Component NxM selected)
Having introduced the input coupler and the both arms, the OptiSystem layout should
look like Figure 19.
Figure 19 OptiSystem layout after introduction of arms
402
LESSON 11: INTEGRATED OPTICAL CIRCUIT SIMULATION USING OPTIBPM AND OPTISYSTEM SCATTERING
DATA EXPORT
To add light power to the inputs and detectors of the OptiBPM Component NxM
outputs, perform the following procedure.
Note: Because we are studying wavelength response, we will use the Optical
Filter Analyzer, which mutually transmits and receives the light from a given
interval. The component extracts the frequency response of an optical
component by comparing a reference optical signal before and after the
calculation.
Step
Action
Select Optical Filter Analyzer, drag the component into the main layout and
position it close to the first OptiBPM Component NxM (4 port coupler 3dB)
input port .
403
In the Bandwidth row, type 20, click on Units, and select nm(nanometers).
Note: This is selected to ensure that the filter runs inside the desired interval
1544 nm +/- 10 nm.
404
LESSON 11: INTEGRATED OPTICAL CIRCUIT SIMULATION USING OPTIBPM AND OPTISYSTEM SCATTERING
DATA EXPORT
Action
To connect the ports, click on the output (upper port) of the Analyzer and
connect it to the upper input port of the 4 port coupler(3dB).
The components are connected by a green line (see Figure 22).
Connect the ports of the arms in the layout as detailed in Figure 23 (follow
schematics as shown in Figure 1).
Figure 23 Inner part of layout connected
405
Connect the upper output port of the right (output) coupler with the input port
of the Optical Filter Analyzer (see Figure 24).
The remaining input port must be assigned to have no input field. This is
accomplished by using the Optical Null component.
4
Drag the Optical Null component into the main layout and connect it to the
input port of the 4 port coupler (3dB) (see Figure 24).
Figure 24 The complete layout in OptiSystem environment
406
LESSON 11: INTEGRATED OPTICAL CIRCUIT SIMULATION USING OPTIBPM AND OPTISYSTEM SCATTERING
DATA EXPORT
Action
Action
407
Click on the Transmission Function graph icon and move it into one of the
graph view quadrants (upper left, for example).
The graph appears in the Graph view window (see Figure 28) and the Graph
View Type dialog box appears.
408
LESSON 11: INTEGRATED OPTICAL CIRCUIT SIMULATION USING OPTIBPM AND OPTISYSTEM SCATTERING
DATA EXPORT
Figure 28 Graphs
The power response can be seen in the upper graph. As expected, the power
decreases from the maximum (relative units normalized to one as for maximum)
value to no power at the other end of wavelength spectra.
The lower graph depicts the optical phase as the function of the increasing
wavelength within the mentioned interval.
Reference:
[1]
Okamoto, K., Fundamentals of Optical Waveguides. Academic Press, San Diego, 2000,
Chap. 4.5.
409
Notes
410
Action
Change the Master library path if required, and then click OK to close
the Options dialog box.
411
412
Figure 2
Click the 2D Isotropic tab, and unselect the Use Default check box. (The
script will change the 2D Index value, so it should not be linked to the 3D
value by a default definition.
Click Store.
Select New.
The ChannelPro1 dialog box appears.
10
Under 2D profile definition, from the Material drop-down list, select Guide
(see Figure 3).
413
11
12
Action
In the Initial Properties dialog box, click the Waveguide Properties tab.
414
415
10
416
11
12
To apply the settings and return to the main layout, click OK.
Action
Draw the waveguide in the center of the wafer and covering the length of the
wafer (see Figure 8).
Figure 8 Draw Linear Waveguide
417
Action
Click in the layout and position the Input Plane at 10 microns (see Figure 9).
Figure 9 Insert Input Plane
418
Click All to move the waveguide for input from the Waveguides window to
the Fields window (see Figure 10).
Figure 10
To save the setting and return to the Input Plane dialog box, click OK.
Action
419
420
To apply the settings and return to the main layout, click OK.
Action
Click Yes.
OptiBPM_Simulator opens and runs four iterations, changing the refractive
index of the waveguide each time (see Figure 13).
421
At the end of the simulation, a message appears and prompts you to open
OptiBPM_Analyzer.
5
422
Action
In the Iteration drop-down list, select another iteration to view (for example,
Iteration 3).
The graph of the refractive index profile for the selected iteration appears in
the main layout.
To view the optical field graph for this iteration, under Optical Field
Propagation, click XZ Slice (see Figure 15).
423
424
Defining variables
Defining functions
Familiarize yourself with the procedures in Lesson 4: Create an MMI star coupler.
425
Action
Click Store.
The Dielectric material air is saved in the Materials folder.
426
Click Store.
The Diffused material Lithium niobate_1 is saved in the Materials folder.
Action
Click Store.
Action
Profile
Wafer Dimensions
Length (m): 100
Width (m): 30
2D Wafer Properties
Material: Lithium
niobate_1
3D Wafer Properties
Cladding
Material: air
Thickness: 3
Substrate
Material: Lithium
niobate_1
Thickness: 8
2
427
(0)
n e ( x, y, z ) = n e ( )
w
w
2x
2x
+ d e ( ) F e c 0 erf ------------------ 1 + ------ + erf ------------------ 1 ------
2D
(
z
)
2D
(
z
)
w
w
H
H
y2
exp --------------
D 2 ( z )
v
The symbols, variables, and functions are explained in Table 9, Table 10, and in the
Technical Background.
As the equation for refractive index is exceedingly long, we rewrite the equation with
the help of auxiliary functions fxProf and fyProf in a form suitable for
implementation:
(0)
n e ( x, y, z ) = n e ( ) + d e ( ) F e c 0 fxProf ( x, z ) fyProf ( y, z )
All the definitions of auxiliary functions can be found in Table 10.
Note: The z-dependencies of the vertical and horizontal diffusion constants are
defined by function1 and function2, which were chosen arbitrarily to be the
sin functions of the z-position.
Table 9 Functions and Variables
Variable
Symbol
Value
(0)
ne
428
Meaning
lambda
1.55
Wavelength
de ( )
fde(x )
function
Fe
Fe
1.2e-23
c0
fC0(t,z)
function
gamma e
wdth
thickness
0.05
Variable
Symbol
Value
Meaning
D H0
Dx0
D V0
Dy0
3.5
DH ( z )
fDx(z)
function
DV ( z )
fDy(z)
function
Propagation distance
Function definitions
d e ( x ) = 0.839x ( x 0.0645 )
2
D H ( z ) = D H0 + function1 ( z )
D V ( z ) = D V0 + function2 ( z )
c 0 ( t, z ) = t 5.67e22 ( D V ( z ) )
w
w
fxProf ( x, z ) = erf ------------------ 1 + 2x
------ + erf ------------------ 1 2x
------
2D H ( z )
2D H ( z )
w
w
fyProf ( y, z ) = exp ( y D V ( z ) )
2
function1 ( z ) = 2 sin ( z 10 )
function2 ( z ) = 2 sin ( z 10 )
429
Defining variables
Step
Action
Click Verify.
Click Add/Apply.
The thickness variable appears in the User Variable table.
Defining functions
With all the variables defined, continue with defining functions in Table 10. This order
is necessary since the variables are used within the functions. If not defined, you will
get an error trying to use them in other functions definitions. For a list of internally
predefined constants and functions ( , e, ), which can be used, see Appendix D:
Parser supported functions.
To define a function, perform the following procedure.
Step
Action
430
Click Verify.
Click Add/Apply.
The fDx(z) variable appears in the User Function table.
Action
In the Profile Designer, right-click the Profiles folder, select User Function
Profile, and select New.
Material: LithiumNiobate_1
Click in the Association cells and make the following selections from the dropdown list (see ):
Argument
Association
_dx
_dy
_z
Click Verify.
Click Store.
Definition
Now we can check the profile of the newly created user defined profile against a
predefined Ti:LiNbO3 diffused profile.
431
Action
In the 3D refractive index view, you can check that the two profiles are the same for
z = 0, due to the fact that the Diffusion length at z=0 is equal to the predefined
variables Dx0 and Dy0. If you view the refractive index at different positions, you will
see differences. The predefined waveguide does not change its profile along the
z-coordinates, whereas the user defined waveguide has non-constant diffusion
lengths which are functions of z-coordinates (see Table 10).
432
Figure 16 Refractive index profiles at z=0 (picture at left) and z=80 (picture at right). The predefined diffused
waveguide,on the left of each picture, does not change. The user defined waveguide (the right profile in each
picture) depends on the z-coordinate as expected.
433
Notes
434
Design steps
Creating a script
435
Action
Action
436
437
Action
438
Action
Start position
End position
SBendSin1
Horizontal: 0
Horizontal: 5750
Vertical: -20
Vertical: -7.25
Horizontal: 5750
Horizontal: 9000
Vertical: -7.25
Vertical: -7.25
Horizontal: 9000
Horizontal: 11500
Vertical: -7.25
Vertical: -16
Horizontal: 11500
Horizontal: 21500
Vertical: -16
Vertical: -16
Horizontal: 21500
Horizontal: 24000
Vertical: -16
Vertical: -7.25
Horizontal: 24000
Horizontal: 27250
Vertical: -7.25
Vertical: -7.25
Horizontal: 27250
Horizontal: 33000
Vertical: -7.25
Vertical: -20
Linear1
SBendSin2
Linear2
SBendSin3
Linear3
SBendSin4
Note: You can use the mirror and flip operations in Edit > Flip and Mirror menu
to build the design.
To build the top waveguides by using the mirror options, perform the following
procedure steps for each waveguide in the layout.
2
439
Example
Waveguide name
Start position
End position
SBendSin1
Horizontal: 0
Horizontal: 5750
(bottom waveguide)
Vertical: -20
Vertical: -7.25
SBendSin5
Horizontal: 30
Horizontal: 5750
(top waveguide)
Vertical: 20
Vertical: 7.25
Linear1
Horizontal: 5750
Horizontal: 9000
(bottom waveguide)
Vertical: -7.25
Vertical: -7.25
Linear4
Horizontal: 5750
Horizontal: 9000
(top waveguide)
Vertical: 7.25
Vertical: 7.25
440
441
You can check the refractive index profile of different slices through the device.
Action
On the Layout Designer, select the Ref. Index (n) - 3D XY Plane View tab
located at the bottom of the layout designer window.
Select Preferences > Refractive Index View > 3D Slice (XY Plane) >
Select Z Distance (see Figure 6).
The X-Y Ref. Idx View Option dialog box appears (see Figure 5).
In the X-Y Ref. Idx View Option dialog box, type the value for Z Distance
and click View.
The Ref. Index (n) - 3D XY Plane View is updated to reflect the Z Distance
(see Figure 7).
Figure 5 Z plane selectorRI Data toolbar, X-Y Ref. Idx View Option dialog box
442
Action
Click on the layout where you want to place the beginning of the region and
move the mouse to the point where the region should end.
The electrode region appears in the layout.
In the Electrode Region dialog box, you can edit the start and end position of the
region (Z Position tab), change the reference refractive index and propagation step
in the region (Calculation tab), change material properties of the cladding, substrate,
and substrate layers (Substrate tab). The Electrode tab allows you to define the
electrodes on the substrate. The electrode region in this lesson starts at 11500 m
and ends at 21500 m .
443
In this example, we want to build electrodes on the top of a buffer layer. The properties
of the buffer layer can be defined under the Electrode tab (see Figure 9). As we did
not define a buffer material when we began the lesson, we have to do so now.
Figure 9 Electrode tab
444
Action
On the Electrode tab, select All sets > Electrode with buffer layer.
The Buffer Layer panel is activated.
0.3
Horizontal permittivity
Vertical permittivity
Material
buffer
Electrode thickness m
50
Voltage
0.0
Electrode 2
Width
26
Voltage
0.0
Electrode 3
Width
50
Voltage
0.0
Gap 1-2
6.0
Gap 2-3
6.0
Electrode 2
Center Position
5.5
445
10
We have specified an electrode region with three electrodes, all with zero voltage,
positioned slightly off the symmetry axis of the Mach-Zehnder interferometer.
446
Action
Select Draw > Input Plane and place the Input Plane in the layout.
Double-click on the Input Plane on the layout to open the Input Plane
properties dialog box.
Click Edit.
The Input Fields dialog box appears.
In the Waveguides table, select the second waveguide and click Add.
The entry is added to the Fields table.
To set the simulation parameters, select Simulation > Simulation Parameters, and
perform the following procedure.
Step
Action
In the Simulation Parameters dialog box, Global Data tab, type/select the
following:
Reference Index: Modal
Wavelength m: 1.3
Click OK.
447
Action
Click Run.
The OptiBPM Simulator 2D appears.
To change the voltage of the central electrode, in the Electrode Region dialog box,
Electrode tab, select the electrode set in the Electrode sets table, and click Edit.
Type 6.75 in Electrode 2Voltage (V).
Figure 11 Switching voltage of 0.0V
You can perform more detailed investigations of the electro-optic switch using
scripting language. For example, we can scan the voltage on the central electrode
and observe the overlap integral of the output ports with the waveguide mode.
448
Action
In the Electrode Region dialog box, Electrode tab, select the electrode set
in the Electrode sets table, and click Edit.
The Electrode Sets dialog box appears.
Then we create a simple script, which runs 10 loops increasing voltage V2 from 0.0
to 7.2 V by 0.8V.
449
Creating a script
To create the script, perform the following procedure.
Step
Action
When we run the simple scanning script, we obtain a graph of the optical field overlap
versus the number of iterations. It then becomes clear that the electro-optic switch is
fully switching the input signal from one output port to another for the second
electrode voltage between 6.4 and 7.2V.
450
Figure 14
451
452
453
454
Action
Action
In the Profile Designer, create the following Fiber Profile (see Figure 2):
Profile name: SMF-28
2D profile definition tab
Material: core
3D profile definition tab
Layer name: core
Rx: 4.07
Ry: 4.07
Material: core
455
456
Action
457
Action
To open the properties dialog box for the waveguide, double-click on the
waveguide.
The Linear Waveguide Properties dialog box appears.
458
Click OK.
459
Action
Click OK.
Figure 4 Simulation Parameters dialog box3D Isotropic tab
460
Action
In the Layout Designer, click the Ref. Index (n) - 3D XY Plane View tab
(see Figure 5).
Note: To view the color palette, select View > 3D Graph Items > Palette.
Figure 5 Refractive index distribution
Click the Plane View buttons (see Plane View buttons on 3D Graph toolbar
in Figure 6) to see the 2D Refractive Index distributions in X and Y directions
(see Figure 7 and Figure 8).
461
462
Action
Click All.
The information from the Waveguides list appears in the Fields list.
Click Mode.
The Calculate Mode dialog box appears.
463
10
11
In the Gauss Field Parameters dialog box, select Type: Auto and click OK.
Figure 10 Gauss Field Parameters dialog box
12
464
465
Modal Indices
(Fundamental Mode)
Wavelength
OptiBPM
OptiFiber
(microns)
(ADI Method)
(FD Method)
1.30
1.449613
1.449613
1.35
1.449495
1.449495
1.40
1.449379
1.449374
1.45
1.449264
1.449264
1.50
1.449151
1.449152
1.55
1.449041
1.449042
1.60
1.448933
1.448934
1.65
1.448828
1.448829
466
467
Figure 1
468
= n clad
To implement the above equation in User Function Profile, we will first explain the
User Variables and User Functions (see Table 12).
Table 12 User Variables and User Functions
Variable
Symbol
Value
n core
n_core
1.48
n clad
n_cl
1.444
radius
Delta(n_core,n_cl)
(n_core*n_core-n_cl*n_cl)/ 2/ (n_core*n_core)
r(x,y)
sqrt(x*x+(y-y0)*(y-y0))
y0
y0
-15
fgr(x,y) = n_core*sqrt(1-2*Delta(n_core,n_cl)*(pow((r(x,y)/radius),1)))
(1)
(2)
469
Action
In the Materials folder, right-click the Dielectric folder and select New.
The Dielectric dialog box appears.
Click Store.
The new dielectric material is stored in the Materials folder.
Action
In the Profile Designer, select Tools > Edit Variables and Functions.
The Variables and Functions dialog box appears.
Click Add/Apply.
The variable appears under the User Variables tab in the table below
(see Figure 2).
After defining all the variables, the User Variables table appears as in Figure 2.
470
Figure 2
Action
In the Profile Designer, select Tools > Edit Variables and Functions.
The Variables and Functions dialog box appears.
Click Add/Apply.
The function appears under the User Functions/DLLs tab in the table below
(see Figure 3).
After defining all the variables, the User Variables table appears as in Figure 3.
471
Figure 3
472
Action
Make the following associations on the Profile Function tab by clicking in the
corresponding Association cells:
Argument: x
Association: _dx
Argument: y
Association: _y
Click Verify.
Click Store.
The associations are stored in the fiber profile (see Figure 4).
473
474
Action
475
Action
To open the properties dialog box for the waveguide, double-click on the
waveguide.
The Linear Waveguide Properties dialog box appears.
476
Click OK.
Action
Click OK.
Action
Click the Ref. Index (n) - 3D XY Plane View tab (see Figure 5).
Note: To view the color palette, click the Palette button.
To increase the contrast, right-click in the graph. Select Data Clamping Settings,
deselect Auto Scale, and type the following settings:
Scale Min: 1.443
Scale Max: 1.481
Click OK.
477
Click the Plane View buttons (see Plane View buttons on 3D Graph toolbar,
Figure 6) to see the 2D Refractive Index distributions in X and Y directions
(see Figure 7 and Figure 8).
478
Action
Double click on the Input Plane to get the Input Plane dialog box.
Click Edit.
The Edit Input Field dialog box appears.
Click All.
The information from the Waveguides list appears in the Fields list.
Click Mode.
The Calculate Mode dialog box appears.
479
10
11
12
In the Gauss Field Parameters dialog box, select Type: User defined.
13
14
Click OK.
15
480
Figure 11 Calculated modal index and modal field of triangular core fiber
The table below compares the above results to the modal indices generated with the
Finite Difference Method of OptiFiber.
Modal Index (ADI Method)
1.45524303
1.4552448
481
Notes
482
= 2.05 .
483
Action
xx
yy
zz
xy
= 2.31
= 2.19
= 2.31
= yx = 0
Click Store.
The Dielectric material AnisoEps is saved in the Materials folder.
xx = yy = zz = 2.05
xy = yx = 0
484
Click Store.
Figure 2 Relative Permittivity tensor of the anisotropic core
485
Action
486
Click Add.
Click Store.
487
Action
In the Initial Properties dialog box, type/select the following (see Figure 7):
a. Default Waveguide tab
Profile: BuriedAniso
b. Wafer Dimensions tab
Length (m): 200
Width (m): 6
c.
488
489
Action
To open the properties dialog box for the waveguide, double-click on the
waveguide.
The Linear Waveguide Properties dialog box appears.
Width: 2
Note: The length of the waveguide does not have any affect on the mode solver.
4
Click OK.
The waveguide is drawn in the layout according to the properties entered.
Figure 7 Linear Waveguide Properties dialog box
490
Action
491
10
Click OK.
The Simulation Parameters dialog box closes.
492
Action
493
Action
494
Click Edit.
The Input Field dialog box appears.
Select the item in the Fields window (see Figure 12), and click Aniso.
The Calculate Mode dialog box appears (see Figure 13).
Figure 12
495
496
497
Figure 16 Amplitude of the major component field Hy for the fundamental mode
H 11
Figure 17 Amplitude of the minor component field Hx for the fundamental mode
H 11
498
In addition to the mode, E 11 , we can view the transversal electric field components
y
y
and mode indexes for the modes E 11 and E 21 .
499
Action
Open the Global Data: ADI Method dialog box and select the Advanced tab
(see Figure 18).
In addition to the mode H 11 , we can view the transversal magnet field components
y
y
and mode indexes for the modes H 11 and H 21 .
After running the simulation, you can open the Analyzer and check the power in
output waveguides, field components, power overlap integral, notes, and simulation
parameters.
As expected, the mode indexes computed using H Formulation (Magnetic) are
equal to the ones computed by using the E Formulation (Electric).
The results are comparable to those obtained by Ohtaka, using a variational method
and cylindrical harmonic function expansions. His results have been used frequently
as a standard for comparison. See [1] for more detail.
References:
[1]
[2]
Yilong Lu and F. Anibal Fernandez, "An Efficient Finite Element Solution of Inhomogeneous
Anisotropic and Lossy Dielectric Waveguides", IEEE Trans. Microwave Theory Tech., vol. MTT41, pp. 1215-1223, June/July. 1993.
500
To continue from where Lesson 17 finished, open the project file: Lesson17Aniso.bpd.
501
Action
In Starting Field, click Select and select Gaussian (see Figure 1).
In Reference Index, select User and enter 1.47762628 this is the modal
index of the fundamental mode calculated in Lesson 17.
Figure 1 Simulation Parameters dialog box Global Data tab
502
10
11
Action
In the Layout Designer, click the Ref. Index (n) - 3D XY Plane View tab (see
Figure 3).
503
504
Action
Set the Starting Field to Gaussian. The polarization in Figure 2 was selected
as quasi-TE. Therefore the Gaussian field is applied to Ex. The other
component, Ey, is set to zero.
Click Edit...
505
Select the waveguide in the Waveguides list on the right hand side and click
Add
Select the item in the Fields table on the left and click Edit.
The Field Properties dialog box appears (see Figure 6).
Figure 6 Field Properties
Halfwidth X: 1.0
d. Halfwidth Y: 0.5
506
Click OK.
10
11
12
Anisotropic Simulation.
The Simulation Parameters dialog box appears.
Figure 7
13
Simulation Parameters
507
Figure 8
Note: The Gaussian beam launched in the waveguide changes and reaches a
stable configuration equal to that of one of the fundamental modes evaluated
using the mode solver (refer to Lesson 17: Modal analysis of an anisotropic buried
waveguide).
508
References:
[1]
M. Ohtaka, "Analysis of the guided modes in the anisotropic dielectric rectangular waveguides",
Trans. Inst. Electron. Commun. Eng. Japan, Vol J64-C, pp. 674-681, Oct 1981.
[2]
[Y. Lu and F. Anibal Fernandez, "An Efficient Finite Element Solution of Inhomogeneous
Anisotropic and Lossy Dielectric Waveguides", IEEE Trans. Microwave Theory Tech., Vol. MTT41, pp. 1215-1223, June/July 1993
509
510
Optiwave
7 Capella Court
Ottawa, Ontario, K2E 8A7, Canada
Tel.: 1.613.224.4700
Fax: 1.613.224.4706
E-mail: support@optiwave.com
URL: www.optiwave.com