GSvit documentation

open source FDTD solver with GPU support

User Tools

Site Tools


docs:become

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
docs:become [2020/04/14 14:16]
pklapetek
docs:become [2020/04/14 14:19]
pklapetek
Line 9: Line 9:
 ===== 2D calculation ===== ===== 2D calculation =====
  
-Calculations in 2D are performed using the GSvit2D solver which is an almost unused extension of GSvit to 2D calculations. As this was very outdated, most of the algorithms had to be implemented,​ incuding near-to-far field calculation and various materials treatment including dispersive metal treatment via PLRC algorithm. To test the correctness of the newly implemented code we compared a simple transmission grating diffraction pattern to the analytically known solution. ​+Calculations in 2D are performed using the GSvit2D solver which is an almost unused extension of GSvit to 2D calculations. As this was very outdated, most of the algorithms had to be implemented,​ incuding near-to-far field calculation and various materials treatment including dispersive metal treatment via PLRC algorithm. ​ 
 + 
 +To test the correctness of the newly implemented code we compared a simple transmission grating diffraction pattern to the analytically known solution. ​
 There are at least two possible ways how to treat the grating in FDTD calculation. First of all, we can setup the grating physically in the computation domain, as large as possible, run the calculation and evaluated the far field response. As we are usually interested in an infinite grating response, this would mean an infinite computational domain. Instead, we can use periodic boundary conditions, compute only one motive and evaluate the far field data. This still does not provide the results if the far field data are evaluated only from the single motive, we need to evaluate it from many virtual repetitions to get the impact of some number of motives. There are at least two possible ways how to treat the grating in FDTD calculation. First of all, we can setup the grating physically in the computation domain, as large as possible, run the calculation and evaluated the far field response. As we are usually interested in an infinite grating response, this would mean an infinite computational domain. Instead, we can use periodic boundary conditions, compute only one motive and evaluate the far field data. This still does not provide the results if the far field data are evaluated only from the single motive, we need to evaluate it from many virtual repetitions to get the impact of some number of motives.
 In most of the graphs here we show complete diffraction pattern. In most of the graphs here we show complete diffraction pattern.
Line 15: Line 17:
  
 A comparison of the different evaluation methods is shown below. ​ A comparison of the different evaluation methods is shown below. ​
-It shows a transmission grating that is evaluated different ways. First of all, analytical results for single aperture, for three apertures and nine apertures are shown.+It shows a transmission grating that is evaluated different ways. First of all, analytical results for single aperture, for three apertures and nine apertures are shown. Results from 
 +periodic calculation (based on a single motive) where the far field is evaluated from three 
 +and nine virtual repetitions are then compared to the case where the calculation is not periodic 
 +and three apertures are physically existing in the computational domain.
  
 An important message is that An important message is that
-using the periodic approach for only a small number of repetitions ​(p=1 means three slits in this case) does not work as it does not take into account the field on sides of the computational domain (see the technical explanation listed below for our reference).+using the periodic approach for only a small number of repetitions does not work as it does not take into account the field on sides of the computational domain (see the technical explanation listed below for our reference).
  
 {{:​docs:​methods_explanation_humanized.png?​600|}} {{:​docs:​methods_explanation_humanized.png?​600|}}
docs/become.txt · Last modified: 2020/04/24 12:27 by pklapetek