How to create n,k object for EAM using electric field data saved by DEVICE


Dear Sir,
I have query regarding (n,k) import objects, because when i run simulation in device, it generate “.mat file” but (n,k) import objects requires “.txt” file. is there any way to get “.txt” file which will be used in (n,k) object?
Thanks in advance

Electro-absorptive modulator

When you are creating an n,k material for your EAM, you basically want to start with an unperturbed n,k value and then add delta_n and delta_k to those values calculated from the electric field data saved in your DEVICE simulation. The easiest way to do this would be to use a structure group. If you take a look at the FDTD project file of this KB example (Nanobeam PC Modulator), you will see that the n,k material has been created using the setup script of a structure group. In the setup script the E-field data from the .mat file (saved by DEVICE) is loaded, delta_n and delta_k is calculated, then the total n and k values are calculated and are used to create the n,k material. If you create the n,k material from script in this way then you do not need a .txt file as you can use the final n,k values directly.


Respected sir,
I have calculated “.mat” file and imported it into “mode solution”. I have some query regarding this

  1. In script you have used “d_n = 0.5gamma_33n0^3*Emagi;” for calculating change in refractive index, can you please tell me weather is it true for all materials (like i am using Ge). and what actually “gamma_33” and “n0” represent here?
  2. I tried to calculate change in effective index using FDE(sweep) but “no data set were found for the result”. actually i want to calculate change in absorption coefficient, hence i want to calculate value of n and k with respect to applied voltage. how can i do this?

It will be great help from your side sir
Thanks in advance


You can find the details about the model used in the KB example in the reference article mentioned on the page. The parameter values are material specific so for a different material you will have to figure out what values to use.

If you want to get the effective index as a function voltage then you have to run a sweep (as you have mentioned). You can use a structure group similar to the one used in the KB example I mentioned in the earlier post and then use a parameter sweep to sweep the bias index. You will have to edit the parameter sweep object so that it saves the effective index “neff” of the desired mode as a result so that once the sweep is run you can get the value of neff for the different bias voltages.


Dear Sir
I am trying implement a paper ( based on EAM. I want to calculate Im(neff) on applying bias voltage. As you suggested me, i put electric field monitor. then i used “.mat” file in mode and getting changes in electric filed potential on applying bias voltage as given below

then i run sweep for this as given below but not getting any changes.

. I request you to help me in finding error while my simulating. I can share my device and mode file if u say.


Hi @sourabh.jain, I will be happy to take a look at your file. However, looking at your screenshot I can see that the boundaries of your FDE solver is very close to the waveguide. You need to place the solver boundaries at least half a wavelength away from the waveguide edges. Try calculating the mode without sweeping to check if you are indeed getting the right mode. Once you are happy with the mode you are getting run the sweep again. If you still have issues please feel free to share the files.


​​Dear Sir,
I am sharing Device and Mode file. Please have a look and kindly suggest me
what should i do for resolving such problem. actually after updating
mode file, one additional script error also coming. please help me to fix it.