Optiwave Systems Inc.
Research Scientist, Project Lead (OptiFDTD)
Forum Replies Created
- This reply was modified 2 months, 2 weeks ago by Scott Newman. Reason: Image did not attach
- The Cu2O model is based on data covering a wavelength range of 2.5um – 55um. Your source wavelength is set to 0.7um which would result in extrapolation for the model which is not advisable for a Lorentz-Drude fit. You should find a data set for Cu2O that includes your desired operating wavelength
- This reply was modified 3 months ago by Scott Newman. Reason: Upload failure
- We have a Lorentz-Drude model which allows the modelling of the dispersive (and gain) materials you have. The pre-installed material libraries you can import already contain fits for your InGaAs/GaAs regions. I am assuming your electrodes are non-magnetic.
- We have tools for easily designing both ridge waveguides and periodic structures
- The ratio of your smallest feature to the full structure along the same direction. For example the specifications of your duty cycle and period for the Bragg grating relative to the length of the full grating.
- Gain saturation – FDTD tools model gain through the complex refractive index, but they do not model gain saturation. Therefore the reliance on your design to gain saturation will be a concern.
- Electro-optics – Do you plan on modelling the electro-optics through the use of the electrode?
I have looked over your design and while I do have a couple of points to improve your results, I am not able to help much further without you specifying what exactly is your problem with the results.
1. Your simulation domain is defined in the y direction from 0 to 0.25um. This was done by setting your substrate to 0. There is nothing wrong with this except that you specified your source to be at a y position of 0 which is running right along the PBC. I am assuming you want your source in the center of the XY plane, set your y position to 0.125um.
2. Your spheres are made of a Lorentz-Drude material, I recommend running smaller time steps than required by the auto setting to ensure that you have a stable simulation. Your setting was fine but it is something to keep in mind.
3. When creating the spectrum you want to make sure you are plotting the full (Pz) component and not just Pz-x or Pz-y. See attached figure.
4. What version of the software are you using?
Nothing was attached but that is fine. Assuming you have properly normalized both the observation areas to your source 1-T-R should be absorption.
This is assuming you are not using APML boundaries parallel to the optical path as the APML will introduce absorption. This is why I wanted to see your design.
The data processing can be done by a 3rd party application by using the data exported from analyzer or you could develop a VB Script within Designer to process that data.
The fundamental problem with your design file is that the LD models you are using are incorrect and do not reproduce acceptable distributions based on the literature data. These incorrect models result in a divergent simulation. I have previously provided you with properly fit LD models for both Au and Cu2O materials when you contacted us through the firstname.lastname@example.org, I have reattached them here in a zip file. If you use these material fits you will not have the “No valid data” error.
There are additional concerns you should be aware of with your design.
The answer to that is going to rest in your layout and exactly what you are modelling. Do you have a fdt file you can upload?
This particular question should be in the FDTD forum as opposed to system.
The reason your simulation is not working is that the TF/SF functionality was not ported to 64 bit version of the software. What device are you modelling? Also what version of the software are you currently using?
Based on the diagram you attached it would appear that your incidence plane is XY (propagation in XY and interface normal is Y). You are correct, if this is the case then the S (E field perpendicular to the incidence plane) would be the Ez group while the P( E fields parallel to the incident plane) would be the Ex/Ey group.
S – Ez, Hx, Hy
P – Ex, Ey, Hz
In regards to your question about the Poynting vector calculation things get a bit trickier.
S = E x H
which leads to
S = (EyHz-EzHy)x+(EzHx-ExHz)y+(ExHy-EyHx)z
If you have a source that is purely S or purely P polarized then you can neglect the field components of P when working on S, etc. This yields
S (S polarization) = -(EzHy)x+(EzHx)y
S (P polarization) = (EyHz)x-(ExHz)y
Note this separation cannot be done if your source contains field components of both polarizations.
In OptiFDTD the Poynting vector for an observation area is calculated along the direction normal to the plane. This means to get the polarizations above you should create an observation plane perpendicular to x and one perpendicular to y and get the fields from these. From there you can calculate the above equations.
Thank you Manoranjan for forwarding your design file. After running some tests it would appear that the number of layers selected for the PML is inadequate for this design.
While the default settings in FDTD are selected to maximize the range of effectiveness the PML along with your mesh size must be tested and verified using convergence testing.
Doubling the PML thickness to 20 layers removes the divergent behavior and returns expected results.
You are correct in that there is currently no direct way to access the wavlengths for a given DFT. This has been noted as a feature that is required and will be remedied when we can. In the mean time I do have a work around that I use. When you use the CalculatePowerSpectrumTotal() function for a given observation area you will get a XY vector where X is the wavlengths and Y is the DFT amplitude. You can use this to parse through and obtain your wavelengths. You can find an example of this script I used on a simulation with “ObservationArea1” where I was interested in the Ey field.
WGMgr.Sleep( 50 )
N = SimCtrlParams2D.GetDFTNumberOfSpectrumSamples()
set area = ObservePtMgr.GetObjFromID(“ObservationArea1”)
set spectrum = area.CalculatePowerSpectrumTotal()
For i = 1 to N
lambda = spectrum.GetXat(i)
set field = area.GetField(“Ey”, lambda)
From what you have posted everything seems fine. What version of the software are you using?
Would it be possible for you to upload a copy of your design file so that I can take a look? I would suggest zipping the fdt file as the website sometimes has issues with that file extension.
The results you are showing are the results of a divergent FDTD simulation. Typical reasons for this is mesh that is too large or a material defined such that it has gain.
1. I know you say you are using less than lambda/10 but that statement is based on your central wavelength. How broadband are we talking? What is your smallest wavelength?
2. What materials are you using in your structure? If you defined a dielectric with real and imaginary components what is the sign of your imaginary component? In OptiFDTD materials are defined as ~n = n – jk. Positive k is loss so the imaginary component must be negative for loss.
The Optiwave 3D viewer which opens does give you 4 views.
1. Top-Left: A top down view of the DFT of the field, in your case the EZ field, as captured by your observation area. The z coordinate is in fact the real/imaginary/amplitude value depending on what you have selected. This view has a red marker which can be moved using the mouse. This cross hair is used to define the other views.
2. Top-Right: The DFT values along the vertical part of the aforementioned marker are shown in this view. This is the X-cut view .
3. Bottom-Left: The DFT values along the horizontal part of the aforementioned marker are shown in this view. This is the Y-cut view.
4. Bottom-Right: The 3D representation of the data.
The field exported from an observation area is a DFT which has real and imaginary components. The amplitude and phase are the standard definitions for a complex quantity. amplitude = sqrt(real^2+imaginary^2), phase = atan(imaginary/real).
It will depend on what exactly you are looking to model as well as the size of your structure relative to the feature sizes. It will also require use of the new versions of OptiFDTD, I doubt the 32-bit that many here use is capable of it.
Concerns I will need more information will be:
I would strongly encourage you to download the evaluation of OptiFDTD 14 and try it out with your design. If you have issues come back here or reach out to our support team.
As of OptiFDTD 13 and up we do have the ability to script the export of the DFT information as an f3d file. I have attached a zip file that contains a design file with a script that will accomplish this. Note it is a 3D simulation.