How to get S parameters of star couplers in Mode solution?



I was trying to follow this example

But I don’t know how to get the s parameters of star coupler.

Thanks advanced,



The mode expansion monitor are used to get the S parameters of any linear photonic component.
In this example, they are already provided.
Check this page on how to use the monitors and interpret their results:

In a nutshel, if you want to get S21 for example, it is equal to
{the power of the fundamental mode at the output port}/{power of the fundamental mode at the input}
You need to write a script to calculate this:


Note if the waveguides have different widths, the expression will be a bit different as shown in the link above.

The provided script in the AWGs page is a good starting point to make a for loop to calculate all the S-parameters.

If you have any more questions, never hesitate to let me know.

Mode expansion monitor - a query
How to find phase shift at two sides of the rectangular resonator in FDTD solutions?


Thanks @aya_zaki for your reply! Your explanation is correct except that when you talk about the S parameters they are defined in terms of the complex transmission coefficients (forward or backward propagating depending on the situation), not power. Following your example if we imagine a star coupler where the input ports are on the left and the output ports on the right, and we label one of the input ports as 1 and one of the output ports as 2, then the S21 element of the S-matrix is the ratio of the complex transmission coefficients for forward propagation:

S21 = port2.a/port1.a

(note that in the denominator it should be port1 not port 2).

This will be a complex number which carries the phase information. If you take the absolute value squared then you get transmission.

A very good example where you can see how to calculate the S parameters for mutiple ports is this ring resonator example. In particular take a look at the analysis script for “model” in this file: ring_resonator2.lms (558.3 KB). The approach in this example can be immediately extended to the star coupler.

Hope this helps!

How to find phase shift at two sides of the rectangular resonator in FDTD solutions?


How can I get the power of fundamental mode in mode expansion monitor?

Thank you very much!



Thank you very much for your kind reply.I want to confirm that:
S21 = port2.a/port1.a,
S11 = port1.b/port1.a,
S12 = port1.a/port2.a,
S22 = port2.b/port2.a
It that right?



Hi @qi.han.1,

Referring to the following figure:

Your definition for S11 and S22 is correct, while
S12 = port1.b/port2.a, and
S21 = port2.b/port1.a

For a 2-port element, the s-matrix is defined as in the equation below:

I hope this could help :slight_smile:



In my understanding, port.a means the complex transmission coefficient for forward propagation, and port.b means the complex transmission coefficient for backward propagation.Is it correct?



Hi @qi.han.1,

Your understanding is correct. Please note that the “forward” and “backward” propagation is in regarding to the port.



I’m confused because different persons gave me oppsite reply. Please see the diagram below




Hi @qi.han.1,

When we define the S-Parameters, also tied back to your previous question, we define all the “forward” propagation as the light propagating into the structure, as shown in the following figure, “a1” and “a2” are all pointing to the structure. Similarly, the “backward” propagation as the light propagating away from the structure. This is the confusion part.

Then if you are measuring S21, it refers to input from port 1 and output from port 2, which gives you

S21 = port2.b/port1.a



Thank you.

But I’m still confused “the selected modal field” means the structure or the propagation of light?



input_star.lms (627.7 KB)
Can you run this star coupler? I think it’s useful for our discussion. By the way, why some Re(b) are negative but others are positive?



Hi @qi.han.1,

For the Mode Expansion monitor, the forward and backward propagation is defined based on the coordinate axis. “T_farward” and “a” are along the positive coordinate axis and “T_backward” and “b” are along the negative coordinate axis. This definition is different from the s-matrix/s-parameter definition. And you have to adjust the equations if you are using the Mode Expansion monitors (and it is most of the cases to use Mode Expansion monitors to calculate for s-parameters).

But for the measuring of S21, it always refers to input from port 1 and output from port 2. So if you are using Mode Expansion monitor, you can define S21 as port2.a/port1.a.

I hope this is clear.



Thank you very much! It’s clear now!



Hi @qi.han.1,

For the Re(b) values in this example, just by looking at the real part of a complex transmission is meaningless. “a” and “b” measures the complex transmission, the more meaningful way is to look at the “T_forward” and “T_backward” as the power transmission.


I’m following the example and extracting S parameter of star coupler
I have syntax errors in my script. Can you help me to fix them?
star coupler.lsf (702 Bytes)
input_star.lms (700.1 KB)

Thank you very much!


Hi @qi.han.1,

I modified your file a bit and now it compiles successfully star coupler_modified.lsf (893 Bytes). Please note that this script has to be run in analysis mode (after you run the simulation).

You may find the datasets page very helpful as well on how to constructure them.



I’m extracting S parameter of output star coupler. I set 17 sources as shown below. Can you tell me what I should do to get S21?

Thank you very much!



Hi Qi,

We need more information to be able to help you. For example how do you name the ports (which is port 1…)? I don’t think you need so many sources to calculate for the s parameters. Let me know :slight_smile:


Hi, Guanghui

I want to get 1717ports S parameter from Output star coupler. Can you tell me the difference of definition between 1N port and N*N port? We can name port 1 to port 17 as source ports and port 18 to 34 as waveguide ports. Please see it below