"Fossies" - the Fresh Open Source Software Archive

Member "meep-1.10.0/scheme/materials.scm" (5 Jun 2019, 57033 Bytes) of package /linux/privat/meep-1.10.0.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Lisp source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. See also the latest Fossies "Diffs" side-by-side code changes report for "materials.scm": 1.9.0_vs_1.10.0.

    1 ; Materials Library
    2 
    3 ; default unit length is 1 um
    4 (define um-scale 1.0)
    5 
    6 ; conversion factor for eV to 1/um [=1/hc]
    7 (define eV-um-scale (/ um-scale 1.23984193))
    8 
    9 ;------------------------------------------------------------------
   10 ; crystaline silicon (c-Si) from A. Deinega et al., J. Optical Society of America A, Vol. 28, No. 5, pp. 770-77, 2011
   11 ; based on experimental data for intrinsic silicon at T=300K from M.A. Green and M. Keevers, Progress in Photovoltaics, Vol. 3, pp. 189-92, 1995
   12 ; wavelength range: 0.4 - 1.0 um
   13 
   14 (define cSi-frq1 (/ 3.64 um-scale))
   15 (define cSi-gam1 0)
   16 (define cSi-sig1 8)
   17 
   18 (define cSi-frq2 (/ 2.76 um-scale))
   19 (define cSi-gam2 (/ (* 2 0.063) um-scale))
   20 (define cSi-sig2 2.85)
   21 
   22 (define cSi-frq3 (/ 1.73 um-scale))
   23 (define cSi-gam3 (/ (* 2 2.5) um-scale))
   24 (define cSi-sig3 -0.107)
   25 
   26 (define cSi (make medium (epsilon 1.0)
   27  (E-susceptibilities 
   28   (make lorentzian-susceptibility
   29     (frequency cSi-frq1) (gamma cSi-gam1) (sigma cSi-sig1))
   30   (make lorentzian-susceptibility
   31     (frequency cSi-frq2) (gamma cSi-gam2) (sigma cSi-sig2))
   32   (make lorentzian-susceptibility
   33     (frequency cSi-frq3) (gamma cSi-gam3) (sigma cSi-sig3)))))
   34 
   35 ;------------------------------------------------------------------
   36 ; amorphous silicon (a-Si) from Horiba Technical Note 08: Lorentz Dispersion Model
   37 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Lorentz_Dispersion_Model.pdf
   38 ; wavelength range: 0.21 - 0.83 um
   39 
   40 (define aSi-frq1 (/ (* 0.315481407124682 um-scale)))
   41 (define aSi-gam1 (/ (* 0.645751005208333 um-scale)))
   42 (define aSi-sig1 14.571)
   43 
   44 (define aSi (make medium (epsilon 3.109)
   45  (E-susceptibilities 
   46   (make lorentzian-susceptibility
   47     (frequency aSi-frq1) (gamma aSi-gam1) (sigma aSi-sig1)))))
   48 
   49 ;------------------------------------------------------------------
   50 ; hydrogenated amorphous silicon (a-Si:H) from Horiba Technical Note 08: Lorentz Dispersion Model
   51 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Lorentz_Dispersion_Model.pdf
   52 ; wavelength range: 0.21 - 0.83 um
   53 
   54 (define aSi-H-frq1 (/ (* 0.334189199460916 um-scale)))
   55 (define aSi-H-gam1 (/ (* 0.579365387850467 um-scale)))
   56 (define aSi-H-sig1 12.31)
   57 
   58 (define aSi-H (make medium (epsilon 3.22)
   59  (E-susceptibilities 
   60   (make lorentzian-susceptibility
   61     (frequency aSi-H-frq1) (gamma aSi-H-gam1) (sigma aSi-H-sig1)))))
   62 
   63 ;------------------------------------------------------------------
   64 ; indium tin oxide (ITO) from Horiba Technical Note 08: Lorentz Dispersion Model
   65 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Lorentz_Dispersion_Model.pdf
   66 ; wavelength range: 0.21 - 0.83 um
   67 
   68 (define ITO-frq1 (/ (* 0.182329695588235 um-scale)))
   69 (define ITO-gam1 (/ (* 1.94637665620094 um-scale)))
   70 (define ITO-sig1 2.5)
   71 
   72 (define ITO (make medium (epsilon 1.0)
   73  (E-susceptibilities 
   74   (make lorentzian-susceptibility
   75     (frequency ITO-frq1) (gamma ITO-gam1) (sigma ITO-sig1)))))
   76 
   77 ;------------------------------------------------------------------
   78 ; alumina (Al2O3) from Horiba Technical Note 08: Lorentz Dispersion Model
   79 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Lorentz_Dispersion_Model.pdf
   80 ; wavelength range: 0.21 - 2.07 um
   81 
   82 (define Al2O3-frq1 (/ (* 0.101476668030774 um-scale)))
   83 (define Al2O3-gam1 0)
   84 (define Al2O3-sig1 1.52)
   85 
   86 (define Al2O3 (make medium (epsilon 1.0)
   87  (E-susceptibilities 
   88   (make lorentzian-susceptibility
   89     (frequency Al2O3-frq1) (gamma Al2O3-gam1) (sigma Al2O3-sig1)))))
   90 
   91 ;------------------------------------------------------------------
   92 ; aluminum nitride (AlN) from Horiba Technical Note 08: Lorentz Dispersion Model
   93 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Lorentz_Dispersion_Model.pdf
   94 ; wavelength range: 0.26 - 1.65 um
   95 
   96 (define AlN-frq1 (/ (* 0.139058089950651 um-scale)))
   97 (define AlN-gam1 0)
   98 (define AlN-sig1 3.306)
   99 
  100 (define AlN (make medium (epsilon 1.0)
  101  (E-susceptibilities 
  102   (make lorentzian-susceptibility
  103     (frequency AlN-frq1) (gamma AlN-gam1) (sigma AlN-sig1)))))
  104 
  105 ;------------------------------------------------------------------
  106 ; aluminum arsenide (AlAs) from R.E. Fern and A. Onton, J. Applied Physics, Vol. 42, pp. 3499-500, 1971
  107 ; ref: https://refractiveindex.info/?shelf=main&book=AlAs&page=Fern
  108 ; wavelength range: 0.56 - 2.2 um
  109 
  110 (define AlAs-frq1 (/ (* 0.2822 um-scale)))
  111 (define AlAs-gam1 0)
  112 (define AlAs-sig1 6.0840)
  113 
  114 (define AlAs-frq2 (/ (* 27.62 um-scale)))
  115 (define AlAs-gam2 0)
  116 (define AlAs-sig2 1.900)
  117 
  118 (define AlAs (make medium (epsilon 2.0792)
  119  (E-susceptibilities 
  120   (make lorentzian-susceptibility
  121     (frequency AlAs-frq1) (gamma AlAs-gam1) (sigma AlAs-sig1))
  122   (make lorentzian-susceptibility
  123     (frequency AlAs-frq2) (gamma AlAs-gam2) (sigma AlAs-sig2)))))
  124 
  125 ;------------------------------------------------------------------
  126 ; borosilicate glass (BK7) from SCHOTT Zemax catalog 2017-01-20b
  127 ; ref: https://refractiveindex.info/?shelf=glass&book=BK7&page=SCHOTT
  128 ; wavelength range: 0.3 - 2.5 um
  129 
  130 (define BK7-frq1 (/ (* 0.07746417668832478 um-scale)))
  131 (define BK7-gam1 0)
  132 (define BK7-sig1 1.03961212)
  133 (define BK7-frq2 (/ (* 0.14148467902921502 um-scale)))
  134 (define BK7-gam2 0)
  135 (define BK7-sig2 0.231792344)
  136 (define BK7-frq3 (/ (* 10.176475470417055 um-scale)))
  137 (define BK7-gam3 0)
  138 (define BK7-sig3 1.01046945)
  139 
  140 (define BK7 (make medium (epsilon 1.0)
  141  (E-susceptibilities 
  142   (make lorentzian-susceptibility
  143     (frequency BK7-frq1) (gamma BK7-gam1) (sigma BK7-sig1))
  144   (make lorentzian-susceptibility
  145     (frequency BK7-frq2) (gamma BK7-gam2) (sigma BK7-sig2))
  146   (make lorentzian-susceptibility
  147     (frequency BK7-frq3) (gamma BK7-gam3) (sigma BK7-sig3)))))
  148 
  149 ;------------------------------------------------------------------
  150 ; fused quartz (silica) from I.H. Malitson, J. Optical Society of America, Vol. 55, pp. 1205-9, 1965
  151 ; ref: https://refractiveindex.info/?shelf=glass&book=fused_silica&page=Malitson
  152 ; wavelength range: 0.21 - 6.7 um
  153 
  154 (define fused-quartz-frq1 (/ (* 0.0684043 um-scale)))
  155 (define fused-quartz-gam1 0)
  156 (define fused-quartz-sig1 0.696166300)
  157 (define fused-quartz-frq2 (/ (* 0.1162414 um-scale)))
  158 (define fused-quartz-gam2 0)
  159 (define fused-quartz-sig2 0.407942600)
  160 (define fused-quartz-frq3 (/ (* 9.896161 um-scale)))
  161 (define fused-quartz-gam3 0)
  162 (define fused-quartz-sig3 0.897479400)
  163 
  164 (define fused-quartz (make medium (epsilon 1.0)
  165  (E-susceptibilities 
  166   (make lorentzian-susceptibility
  167     (frequency fused-quartz-frq1) (gamma fused-quartz-gam1) (sigma fused-quartz-sig1))
  168   (make lorentzian-susceptibility
  169     (frequency fused-quartz-frq2) (gamma fused-quartz-gam2) (sigma fused-quartz-sig2))
  170   (make lorentzian-susceptibility
  171     (frequency fused-quartz-frq3) (gamma fused-quartz-gam3) (sigma fused-quartz-sig3)))))
  172 
  173 ;------------------------------------------------------------------
  174 ; gallium arsenide (GaAs) from T. Skauli et al., J. Applied Physics, Vol. 94, pp. 6447-55, 2003
  175 ; ref: https://refractiveindex.info/?shelf=main&book=GaAs&page=Skauli
  176 ; wavelength range: 0.97 - 17 um
  177 
  178 (define GaAs-frq1 (/ (* 0.4431307 um-scale)))
  179 (define GaAs-gam1 0)
  180 (define GaAs-sig1 5.466742)
  181 (define GaAs-frq2 (/ (* 0.8746453 um-scale)))
  182 (define GaAs-gam2 0)
  183 (define GaAs-sig2 0.02429960)
  184 (define GaAs-frq3 (/ (* 36.9166 um-scale)))
  185 (define GaAs-gam3 0)
  186 (define GaAs-sig3 1.957522)
  187 
  188 (define GaAs (make medium (epsilon 5.372514)
  189  (E-susceptibilities 
  190   (make lorentzian-susceptibility
  191     (frequency GaAs-frq1) (gamma GaAs-gam1) (sigma GaAs-sig1))
  192   (make lorentzian-susceptibility
  193     (frequency GaAs-frq2) (gamma GaAs-gam2) (sigma GaAs-sig2))
  194   (make lorentzian-susceptibility
  195     (frequency GaAs-frq3) (gamma GaAs-gam3) (sigma GaAs-sig3)))))
  196 
  197 ;------------------------------------------------------------------
  198 ; silicon nitride (Si3N4) from H. R. Philipp, J. Electrochemical Society, Vol. 120, pp. 295-300, 1973
  199 ; ref: https://refractiveindex.info/?shelf=main&book=Si3N4&page=Philipp
  200 ; wavelength range: 0.207 - 1.24 um
  201 
  202 (define Si3N4-VISNIR-frq1 (/ (* 0.13967 um-scale)))
  203 (define Si3N4-VISNIR-gam1 0)
  204 (define Si3N4-VISNIR-sig1 2.8939)
  205 
  206 (define Si3N4-VISNIR (make medium (epsilon 1.0)
  207  (E-susceptibilities 
  208   (make lorentzian-susceptibility
  209     (frequency Si3N4-VISNIR-frq1) (gamma Si3N4-VISNIR-gam1) (sigma Si3N4-VISNIR-sig1)))))
  210 
  211 ;------------------------------------------------------------------
  212 ; silicon nitride (Si3N4) from K. Luke, et. al., Optics Letters, Vol. 40, pp. 4823-4826, 2015
  213 ; ref: https://refractiveindex.info/?shelf=main&book=Si3N4&page=Luke
  214 ; wavelength range: 0.310 - 5.504 um
  215 
  216 (define Si3N4-NIR-frq1 (/ (* 0.1353406 um-scale)))
  217 (define Si3N4-NIR-gam1 0)
  218 (define Si3N4-NIR-sig1 3.0249)
  219 (define Si3N4-NIR-frq2 (/ (* 1239.842 um-scale)))
  220 (define Si3N4-NIR-gam2 0)
  221 (define Si3N4-NIR-sig2 40314)
  222 
  223 (define Si3N4-NIR (make medium (epsilon 1.0)
  224  (E-susceptibilities 
  225   (make lorentzian-susceptibility
  226     (frequency Si3N4-NIR-frq1) (gamma Si3N4-NIR-gam1) (sigma Si3N4-NIR-sig1))
  227   (make lorentzian-susceptibility
  228     (frequency Si3N4-NIR-frq2) (gamma Si3N4-NIR-gam2) (sigma Si3N4-NIR-sig2)))))
  229 
  230 ;------------------------------------------------------------------
  231 ; elemental metals from A.D. Rakic et al., Applied Optics, Vol. 37, No. 22, pp. 5271-83, 1998
  232 ; wavelength range: 0.2 - 12.4 um
  233 
  234 ; silver (Ag)
  235 
  236 (define Ag-plasma-frq (* 9.01 eV-um-scale))
  237 
  238 (define Ag-f0 0.845)
  239 (define Ag-frq0 1e-10)
  240 (define Ag-gam0 (* 0.048 eV-um-scale))
  241 (define Ag-sig0 (/ (* Ag-f0 (sqr Ag-plasma-frq)) (sqr Ag-frq0)))
  242 
  243 (define Ag-f1 0.065)
  244 (define Ag-frq1 (* 0.816 eV-um-scale)) ; 1.519 um
  245 (define Ag-gam1 (* 3.886 eV-um-scale))
  246 (define Ag-sig1 (/ (* Ag-f1 (sqr Ag-plasma-frq)) (sqr Ag-frq1)))
  247 
  248 (define Ag-f2 0.124)
  249 (define Ag-frq2 (* 4.481 eV-um-scale)) ; 0.273 um
  250 (define Ag-gam2 (* 0.452 eV-um-scale))
  251 (define Ag-sig2 (/ (* Ag-f2 (sqr Ag-plasma-frq)) (sqr Ag-frq2)))
  252 
  253 (define Ag-f3 0.011)
  254 (define Ag-frq3 (* 8.185 eV-um-scale)) ; 0.152 um
  255 (define Ag-gam3 (* 0.065 eV-um-scale))
  256 (define Ag-sig3 (/ (* Ag-f3 (sqr Ag-plasma-frq)) (sqr Ag-frq3)))
  257 
  258 (define Ag-f4 0.840)
  259 (define Ag-frq4 (* 9.083 eV-um-scale)) ; 0.137 um
  260 (define Ag-gam4 (* 0.916 eV-um-scale))
  261 (define Ag-sig4 (/ (* Ag-f4 (sqr Ag-plasma-frq)) (sqr Ag-frq4)))
  262 
  263 (define Ag-f5 5.646)
  264 (define Ag-frq5 (* 20.29 eV-um-scale)) ; 0.061 um
  265 (define Ag-gam5 (* 2.419 eV-um-scale))
  266 (define Ag-sig5 (/ (* Ag-f5 (sqr Ag-plasma-frq)) (sqr Ag-frq5)))
  267 
  268 (define Ag (make medium (epsilon 1.0)
  269   (E-susceptibilities
  270      (make drude-susceptibility
  271        (frequency Ag-frq0) (gamma Ag-gam0) (sigma Ag-sig0))
  272      (make lorentzian-susceptibility
  273        (frequency Ag-frq1) (gamma Ag-gam1) (sigma Ag-sig1))
  274      (make lorentzian-susceptibility
  275        (frequency Ag-frq2) (gamma Ag-gam2) (sigma Ag-sig2))
  276      (make lorentzian-susceptibility
  277        (frequency Ag-frq3) (gamma Ag-gam3) (sigma Ag-sig3))
  278      (make lorentzian-susceptibility
  279        (frequency Ag-frq4) (gamma Ag-gam4) (sigma Ag-sig4))
  280      (make lorentzian-susceptibility
  281        (frequency Ag-frq5) (gamma Ag-gam5) (sigma Ag-sig5)))))
  282 
  283 ;------------------------------------------------------------------
  284 ; gold (Au)
  285 
  286 (define Au-plasma-frq (* 9.03 eV-um-scale))
  287 
  288 (define Au-f0 0.760)
  289 (define Au-frq0 1e-10)
  290 (define Au-gam0 (* 0.053 eV-um-scale))
  291 (define Au-sig0 (/ (* Au-f0 (sqr Au-plasma-frq)) (sqr Au-frq0)))
  292 
  293 (define Au-f1 0.024)
  294 (define Au-frq1 (* 0.415 eV-um-scale)) ; 2.988 um
  295 (define Au-gam1 (* 0.241 eV-um-scale))
  296 (define Au-sig1 (/ (* Au-f1 (sqr Au-plasma-frq)) (sqr Au-frq1)))
  297 
  298 (define Au-f2 0.010)
  299 (define Au-frq2 (* 0.830 eV-um-scale)) ; 1.494 um
  300 (define Au-gam2 (* 0.345 eV-um-scale))
  301 (define Au-sig2 (/ (* Au-f2 (sqr Au-plasma-frq)) (sqr Au-frq2)))
  302 
  303 (define Au-f3 0.071)
  304 (define Au-frq3 (* 2.969 eV-um-scale)) ; 0.418 um
  305 (define Au-gam3 (* 0.870 eV-um-scale))
  306 (define Au-sig3 (/ (* Au-f3 (sqr Au-plasma-frq)) (sqr Au-frq3)))
  307 
  308 (define Au-f4 0.601)
  309 (define Au-frq4 (* 4.304 eV-um-scale)) ; 0.288 um
  310 (define Au-gam4 (* 2.494 eV-um-scale))
  311 (define Au-sig4 (/ (* Au-f4 (sqr Au-plasma-frq)) (sqr Au-frq4)))
  312 
  313 (define Au-f5 4.384)
  314 (define Au-frq5 (* 13.32 eV-um-scale)) ; 0.093 um
  315 (define Au-gam5 (* 2.214 eV-um-scale))
  316 (define Au-sig5 (/ (* Au-f5 (sqr Au-plasma-frq)) (sqr Au-frq5)))
  317 
  318 (define Au (make medium (epsilon 1.0)
  319   (E-susceptibilities
  320      (make drude-susceptibility
  321        (frequency Au-frq0) (gamma Au-gam0) (sigma Au-sig0))
  322      (make lorentzian-susceptibility
  323        (frequency Au-frq1) (gamma Au-gam1) (sigma Au-sig1))
  324      (make lorentzian-susceptibility
  325        (frequency Au-frq2) (gamma Au-gam2) (sigma Au-sig2))
  326      (make lorentzian-susceptibility
  327        (frequency Au-frq3) (gamma Au-gam3) (sigma Au-sig3))
  328      (make lorentzian-susceptibility
  329        (frequency Au-frq4) (gamma Au-gam4) (sigma Au-sig4))
  330      (make lorentzian-susceptibility
  331        (frequency Au-frq5) (gamma Au-gam5) (sigma Au-sig5)))))
  332 
  333 ;------------------------------------------------------------------
  334 ; copper (Cu)
  335 
  336 (define Cu-plasma-frq (* 10.83 eV-um-scale))
  337 
  338 (define Cu-f0 0.575)
  339 (define Cu-frq0 1e-10)
  340 (define Cu-gam0 (* 0.030 eV-um-scale))
  341 (define Cu-sig0 (/ (* Cu-f0 (sqr Cu-plasma-frq)) (sqr Cu-frq0)))
  342 
  343 (define Cu-f1 0.061)
  344 (define Cu-frq1 (* 0.291 eV-um-scale)) ; 4.261 um
  345 (define Cu-gam1 (* 0.378 eV-um-scale))
  346 (define Cu-sig1 (/ (* Cu-f1 (sqr Cu-plasma-frq)) (sqr Cu-frq1)))
  347 
  348 (define Cu-f2 0.104)
  349 (define Cu-frq2 (* 2.957 eV-um-scale)) ; 0.419 um
  350 (define Cu-gam2 (* 1.056 eV-um-scale))
  351 (define Cu-sig2 (/ (* Cu-f2 (sqr Cu-plasma-frq)) (sqr Cu-frq2)))
  352 
  353 (define Cu-f3 0.723)
  354 (define Cu-frq3 (* 5.300 eV-um-scale)) ; 0.234 um
  355 (define Cu-gam3 (* 3.213 eV-um-scale))
  356 (define Cu-sig3 (/ (* Cu-f3 (sqr Cu-plasma-frq)) (sqr Cu-frq3)))
  357 
  358 (define Cu-f4 0.638)
  359 (define Cu-frq4 (* 11.18 eV-um-scale)) ; 0.111 um
  360 (define Cu-gam4 (* 4.305 eV-um-scale))
  361 (define Cu-sig4 (/ (* Cu-f4 (sqr Cu-plasma-frq)) (sqr Cu-frq4)))
  362 
  363 (define Cu (make medium (epsilon 1.0)
  364   (E-susceptibilities
  365      (make drude-susceptibility
  366        (frequency Cu-frq0) (gamma Cu-gam0) (sigma Cu-sig0))
  367      (make lorentzian-susceptibility
  368        (frequency Cu-frq1) (gamma Cu-gam1) (sigma Cu-sig1))
  369      (make lorentzian-susceptibility
  370        (frequency Cu-frq2) (gamma Cu-gam2) (sigma Cu-sig2))
  371      (make lorentzian-susceptibility
  372        (frequency Cu-frq3) (gamma Cu-gam3) (sigma Cu-sig3))
  373      (make lorentzian-susceptibility
  374        (frequency Cu-frq4) (gamma Cu-gam4) (sigma Cu-sig4)))))
  375 
  376 ;------------------------------------------------------------------
  377 ; aluminum (Al)
  378 
  379 (define Al-plasma-frq (* 14.98 eV-um-scale))
  380 
  381 (define Al-f0 0.523)
  382 (define Al-frq0 1e-10)
  383 (define Al-gam0 (* 0.047 eV-um-scale))
  384 (define Al-sig0 (/ (* Al-f0 (sqr Al-plasma-frq)) (sqr Al-frq0)))
  385 
  386 (define Al-f1 0.227)
  387 (define Al-frq1 (* 0.162 eV-um-scale)) ; 7.654 um
  388 (define Al-gam1 (* 0.333 eV-um-scale))
  389 (define Al-sig1 (/ (* Al-f1 (sqr Al-plasma-frq)) (sqr Al-frq1)))
  390 
  391 (define Al-f2 0.050)
  392 (define Al-frq2 (* 1.544 eV-um-scale)) ; 0.803 um
  393 (define Al-gam2 (* 0.312 eV-um-scale))
  394 (define Al-sig2 (/ (* Al-f2 (sqr Al-plasma-frq)) (sqr Al-frq2)))
  395 
  396 (define Al-f3 0.166)
  397 (define Al-frq3 (* 1.808 eV-um-scale)) ; 0.686 um
  398 (define Al-gam3 (* 1.351 eV-um-scale))
  399 (define Al-sig3 (/ (* Al-f3 (sqr Al-plasma-frq)) (sqr Al-frq3)))
  400 
  401 (define Al-f4 0.030)
  402 (define Al-frq4 (* 3.473 eV-um-scale)) ; 0.357 um
  403 (define Al-gam4 (* 3.382 eV-um-scale))
  404 (define Al-sig4 (/ (* Al-f4 (sqr Al-plasma-frq)) (sqr Al-frq4)))
  405 
  406 (define Al (make medium (epsilon 1.0)
  407   (E-susceptibilities
  408      (make drude-susceptibility
  409        (frequency Al-frq0) (gamma Al-gam0) (sigma Al-sig0))
  410      (make lorentzian-susceptibility
  411        (frequency Al-frq1) (gamma Al-gam1) (sigma Al-sig1))
  412      (make lorentzian-susceptibility
  413        (frequency Al-frq2) (gamma Al-gam2) (sigma Al-sig2))
  414      (make lorentzian-susceptibility
  415        (frequency Al-frq3) (gamma Al-gam3) (sigma Al-sig3))
  416      (make lorentzian-susceptibility
  417        (frequency Al-frq4) (gamma Al-gam4) (sigma Al-sig4)))))
  418 
  419 ;------------------------------------------------------------------
  420 ; beryllium (Be)
  421 
  422 (define Be-plasma-frq (* 18.51 eV-um-scale))
  423 
  424 (define Be-f0 0.084)
  425 (define Be-frq0 1e-10)
  426 (define Be-gam0 (* 0.035 eV-um-scale))
  427 (define Be-sig0 (/ (* Be-f0 (sqr Be-plasma-frq)) (sqr Be-frq0)))
  428 
  429 (define Be-f1 0.031)
  430 (define Be-frq1 (* 0.100 eV-um-scale)) ; 12.398 um
  431 (define Be-gam1 (* 1.664 eV-um-scale))
  432 (define Be-sig1 (/ (* Be-f1 (sqr Be-plasma-frq)) (sqr Be-frq1)))
  433 
  434 (define Be-f2 0.140)
  435 (define Be-frq2 (* 1.032 eV-um-scale)) ; 1.201 um
  436 (define Be-gam2 (* 3.395 eV-um-scale))
  437 (define Be-sig2 (/ (* Be-f2 (sqr Be-plasma-frq)) (sqr Be-frq2)))
  438 
  439 (define Be-f3 0.530)
  440 (define Be-frq3 (* 3.183 eV-um-scale)) ; 0.390 um
  441 (define Be-gam3 (* 4.454 eV-um-scale))
  442 (define Be-sig3 (/ (* Be-f3 (sqr Be-plasma-frq)) (sqr Be-frq3)))
  443 
  444 (define Be-f4 0.130)
  445 (define Be-frq4 (* 4.604 eV-um-scale)) ; 0.269 um
  446 (define Be-gam4 (* 1.802 eV-um-scale))
  447 (define Be-sig4 (/ (* Be-f4 (sqr Be-plasma-frq)) (sqr Be-frq4)))
  448 
  449 (define Be (make medium (epsilon 1.0)
  450   (E-susceptibilities
  451      (make drude-susceptibility
  452        (frequency Be-frq0) (gamma Be-gam0) (sigma Be-sig0))
  453      (make lorentzian-susceptibility
  454        (frequency Be-frq1) (gamma Be-gam1) (sigma Be-sig1))
  455      (make lorentzian-susceptibility
  456        (frequency Be-frq2) (gamma Be-gam2) (sigma Be-sig2))
  457      (make lorentzian-susceptibility
  458        (frequency Be-frq3) (gamma Be-gam3) (sigma Be-sig3))
  459      (make lorentzian-susceptibility
  460        (frequency Be-frq4) (gamma Be-gam4) (sigma Be-sig4)))))
  461 
  462 ;------------------------------------------------------------------
  463 ; chromium (Cr)
  464 
  465 (define Cr-plasma-frq (* 10.75 eV-um-scale))
  466 
  467 (define Cr-f0 0.168)
  468 (define Cr-frq0 1e-10)
  469 (define Cr-gam0 (* 0.047 eV-um-scale))
  470 (define Cr-sig0 (/ (* Cr-f0 (sqr Cr-plasma-frq)) (sqr Cr-frq0)))
  471 
  472 (define Cr-f1 0.151)
  473 (define Cr-frq1 (* 0.121 eV-um-scale)) ; 10.247 um
  474 (define Cr-gam1 (* 3.175 eV-um-scale))
  475 (define Cr-sig1 (/ (* Cr-f1 (sqr Cr-plasma-frq)) (sqr Cr-frq1)))
  476 
  477 (define Cr-f2 0.150)
  478 (define Cr-frq2 (* 0.543 eV-um-scale)) ; 2.283 um
  479 (define Cr-gam2 (* 1.305 eV-um-scale))
  480 (define Cr-sig2 (/ (* Cr-f2 (sqr Cr-plasma-frq)) (sqr Cr-frq2)))
  481 
  482 (define Cr-f3 1.149)
  483 (define Cr-frq3 (* 1.970 eV-um-scale)) ; 0.629 um
  484 (define Cr-gam3 (* 2.676 eV-um-scale))
  485 (define Cr-sig3 (/ (* Cr-f3 (sqr Cr-plasma-frq)) (sqr Cr-frq3)))
  486 
  487 (define Cr-f4 0.825)
  488 (define Cr-frq4 (* 8.775 eV-um-scale)) ; 0.141 um
  489 (define Cr-gam4 (* 1.335 eV-um-scale))
  490 (define Cr-sig4 (/ (* Cr-f4 (sqr Cr-plasma-frq)) (sqr Cr-frq4)))
  491 
  492 (define Cr (make medium (epsilon 1.0)
  493   (E-susceptibilities
  494      (make drude-susceptibility
  495        (frequency Cr-frq0) (gamma Cr-gam0) (sigma Cr-sig0))
  496      (make lorentzian-susceptibility
  497        (frequency Cr-frq1) (gamma Cr-gam1) (sigma Cr-sig1))
  498      (make lorentzian-susceptibility
  499        (frequency Cr-frq2) (gamma Cr-gam2) (sigma Cr-sig2))
  500      (make lorentzian-susceptibility
  501        (frequency Cr-frq3) (gamma Cr-gam3) (sigma Cr-sig3))
  502      (make lorentzian-susceptibility
  503        (frequency Cr-frq4) (gamma Cr-gam4) (sigma Cr-sig4)))))
  504 
  505 ;------------------------------------------------------------------
  506 ; nickel (Ni)
  507 
  508 (define Ni-plasma-frq (* 15.92 eV-um-scale))
  509 
  510 (define Ni-f0 0.096)
  511 (define Ni-frq0 1e-10)
  512 (define Ni-gam0 (* 0.048 eV-um-scale))
  513 (define Ni-sig0 (/ (* Ni-f0 (sqr Ni-plasma-frq)) (sqr Ni-frq0)))
  514 
  515 (define Ni-f1 0.100)
  516 (define Ni-frq1 (* 0.174 eV-um-scale)) ; 7.126 um
  517 (define Ni-gam1 (* 4.511 eV-um-scale))
  518 (define Ni-sig1 (/ (* Ni-f1 (sqr Ni-plasma-frq)) (sqr Ni-frq1)))
  519 
  520 (define Ni-f2 0.135)
  521 (define Ni-frq2 (* 0.582 eV-um-scale)) ; 2.130 um
  522 (define Ni-gam2 (* 1.334 eV-um-scale))
  523 (define Ni-sig2 (/ (* Ni-f2 (sqr Ni-plasma-frq)) (sqr Ni-frq2)))
  524 
  525 (define Ni-f3 0.106)
  526 (define Ni-frq3 (* 1.597 eV-um-scale)) ; 0.776 um
  527 (define Ni-gam3 (* 2.178 eV-um-scale))
  528 (define Ni-sig3 (/ (* Ni-f3 (sqr Ni-plasma-frq)) (sqr Ni-frq3)))
  529 
  530 (define Ni-f4 0.729)
  531 (define Ni-frq4 (* 6.089 eV-um-scale)) ; 0.204 um
  532 (define Ni-gam4 (* 6.292 eV-um-scale))
  533 (define Ni-sig4 (/ (* Ni-f4 (sqr Ni-plasma-frq)) (sqr Ni-frq4)))
  534 
  535 (define Ni (make medium (epsilon 1.0)
  536   (E-susceptibilities
  537      (make drude-susceptibility
  538        (frequency Ni-frq0) (gamma Ni-gam0) (sigma Ni-sig0))
  539      (make lorentzian-susceptibility
  540        (frequency Ni-frq1) (gamma Ni-gam1) (sigma Ni-sig1))
  541      (make lorentzian-susceptibility
  542        (frequency Ni-frq2) (gamma Ni-gam2) (sigma Ni-sig2))
  543      (make lorentzian-susceptibility
  544        (frequency Ni-frq3) (gamma Ni-gam3) (sigma Ni-sig3))
  545      (make lorentzian-susceptibility
  546        (frequency Ni-frq4) (gamma Ni-gam4) (sigma Ni-sig4)))))
  547 
  548 ;------------------------------------------------------------------
  549 ; palladium (Pd)
  550 
  551 (define Pd-plasma-frq (* 9.72 eV-um-scale))
  552 
  553 (define Pd-f0 0.330)
  554 (define Pd-frq0 1e-10)
  555 (define Pd-gam0 (* 0.008 eV-um-scale))
  556 (define Pd-sig0 (/ (* Pd-f0 (sqr Pd-plasma-frq)) (sqr Pd-frq0)))
  557 
  558 (define Pd-f1 0.649)
  559 (define Pd-frq1 (* 0.336 eV-um-scale)) ; 3.690 um
  560 (define Pd-gam1 (* 2.950 eV-um-scale))
  561 (define Pd-sig1 (/ (* Pd-f1 (sqr Pd-plasma-frq)) (sqr Pd-frq1)))
  562 
  563 (define Pd-f2 0.121)
  564 (define Pd-frq2 (* 0.501 eV-um-scale)) ; 2.475 um
  565 (define Pd-gam2 (* 0.555 eV-um-scale))
  566 (define Pd-sig2 (/ (* Pd-f2 (sqr Pd-plasma-frq)) (sqr Pd-frq2)))
  567 
  568 (define Pd-f3 0.638)
  569 (define Pd-frq3 (* 1.659 eV-um-scale)) ; 0.747 um
  570 (define Pd-gam3 (* 4.621 eV-um-scale))
  571 (define Pd-sig3 (/ (* Pd-f3 (sqr Pd-plasma-frq)) (sqr Pd-frq3)))
  572 
  573 (define Pd-f4 0.453)
  574 (define Pd-frq4 (* 5.715 eV-um-scale)) ; 0.217 um
  575 (define Pd-gam4 (* 3.236 eV-um-scale))
  576 (define Pd-sig4 (/ (* Pd-f4 (sqr Pd-plasma-frq)) (sqr Pd-frq4)))
  577 
  578 (define Pd (make medium (epsilon 1.0)
  579   (E-susceptibilities
  580      (make drude-susceptibility
  581        (frequency Pd-frq0) (gamma Pd-gam0) (sigma Pd-sig0))
  582      (make lorentzian-susceptibility
  583        (frequency Pd-frq1) (gamma Pd-gam1) (sigma Pd-sig1))
  584      (make lorentzian-susceptibility
  585        (frequency Pd-frq2) (gamma Pd-gam2) (sigma Pd-sig2))
  586      (make lorentzian-susceptibility
  587        (frequency Pd-frq3) (gamma Pd-gam3) (sigma Pd-sig3))
  588      (make lorentzian-susceptibility
  589        (frequency Pd-frq4) (gamma Pd-gam4) (sigma Pd-sig4)))))
  590 
  591 ;------------------------------------------------------------------
  592 ; platinum (Pt)
  593 
  594 (define Pt-plasma-frq (* 9.59 eV-um-scale))
  595 
  596 (define Pt-f0 0.333)
  597 (define Pt-frq0 1e-10)
  598 (define Pt-gam0 (* 0.080 eV-um-scale))
  599 (define Pt-sig0 (/ (* Pt-f0 (sqr Pt-plasma-frq)) (sqr Pt-frq0)))
  600 
  601 (define Pt-f1 0.191)
  602 (define Pt-frq1 (* 0.780 eV-um-scale)) ; 1.590 um
  603 (define Pt-gam1 (* 0.517 eV-um-scale))
  604 (define Pt-sig1 (/ (* Pt-f1 (sqr Pt-plasma-frq)) (sqr Pt-frq1)))
  605 
  606 (define Pt-f2 0.659)
  607 (define Pt-frq2 (* 1.314 eV-um-scale)) ; 0.944 um
  608 (define Pt-gam2 (* 1.838 eV-um-scale))
  609 (define Pt-sig2 (/ (* Pt-f2 (sqr Pt-plasma-frq)) (sqr Pt-frq2)))
  610 
  611 (define Pt-f3 0.547)
  612 (define Pt-frq3 (* 3.141 eV-um-scale)) ; 0.395 um
  613 (define Pt-gam3 (* 3.668 eV-um-scale))
  614 (define Pt-sig3 (/ (* Pt-f3 (sqr Pt-plasma-frq)) (sqr Pt-frq3)))
  615 
  616 (define Pt-f4 3.576)
  617 (define Pt-frq4 (* 9.249 eV-um-scale)) ; 0.134 um
  618 (define Pt-gam4 (* 8.517 eV-um-scale))
  619 (define Pt-sig4 (/ (* Pt-f4 (sqr Pt-plasma-frq)) (sqr Pt-frq4)))
  620 
  621 (define Pt (make medium (epsilon 1.0)
  622   (E-susceptibilities
  623      (make drude-susceptibility
  624        (frequency Pt-frq0) (gamma Pt-gam0) (sigma Pt-sig0))
  625      (make lorentzian-susceptibility
  626        (frequency Pt-frq1) (gamma Pt-gam1) (sigma Pt-sig1))
  627      (make lorentzian-susceptibility
  628        (frequency Pt-frq2) (gamma Pt-gam2) (sigma Pt-sig2))
  629      (make lorentzian-susceptibility
  630        (frequency Pt-frq3) (gamma Pt-gam3) (sigma Pt-sig3))
  631      (make lorentzian-susceptibility
  632        (frequency Pt-frq4) (gamma Pt-gam4) (sigma Pt-sig4)))))
  633 
  634 ;------------------------------------------------------------------
  635 ; titanium (Ti)
  636 
  637 (define Ti-plasma-frq (* 7.29 eV-um-scale))
  638 
  639 (define Ti-f0 0.148)
  640 (define Ti-frq0 1e-10)
  641 (define Ti-gam0 (* 0.082 eV-um-scale))
  642 (define Ti-sig0 (/ (* Ti-f0 (sqr Ti-plasma-frq)) (sqr Ti-frq0)))
  643 
  644 (define Ti-f1 0.899)
  645 (define Ti-frq1 (* 0.777 eV-um-scale)) ; 1.596 um
  646 (define Ti-gam1 (* 2.276 eV-um-scale))
  647 (define Ti-sig1 (/ (* Ti-f1 (sqr Ti-plasma-frq)) (sqr Ti-frq1)))
  648 
  649 (define Ti-f2 0.393)
  650 (define Ti-frq2 (* 1.545 eV-um-scale)) ; 0.802 um
  651 (define Ti-gam2 (* 2.518 eV-um-scale))
  652 (define Ti-sig2 (/ (* Ti-f2 (sqr Ti-plasma-frq)) (sqr Ti-frq2)))
  653 
  654 (define Ti-f3 0.187)
  655 (define Ti-frq3 (* 2.509 eV-um-scale)) ; 0.494 um
  656 (define Ti-gam3 (* 1.663 eV-um-scale))
  657 (define Ti-sig3 (/ (* Ti-f3 (sqr Ti-plasma-frq)) (sqr Ti-frq3)))
  658 
  659 (define Ti-f4 0.001)
  660 (define Ti-frq4 (* 19.43 eV-um-scale)) ; 0.064 um
  661 (define Ti-gam4 (* 1.762 eV-um-scale))
  662 (define Ti-sig4 (/ (* Ti-f4 (sqr Ti-plasma-frq)) (sqr Ti-frq4)))
  663 
  664 (define Ti (make medium (epsilon 1.0)
  665   (E-susceptibilities
  666      (make drude-susceptibility
  667        (frequency Ti-frq0) (gamma Ti-gam0) (sigma Ti-sig0))
  668      (make lorentzian-susceptibility
  669        (frequency Ti-frq1) (gamma Ti-gam1) (sigma Ti-sig1))
  670      (make lorentzian-susceptibility
  671        (frequency Ti-frq2) (gamma Ti-gam2) (sigma Ti-sig2))
  672      (make lorentzian-susceptibility
  673        (frequency Ti-frq3) (gamma Ti-gam3) (sigma Ti-sig3))
  674      (make lorentzian-susceptibility
  675        (frequency Ti-frq4) (gamma Ti-gam4) (sigma Ti-sig4)))))
  676 
  677 ;------------------------------------------------------------------
  678 ; tungsten (W)
  679 
  680 (define W-plasma-frq (* 13.22 eV-um-scale))
  681 
  682 (define W-f0 0.206)
  683 (define W-frq0 1e-10)
  684 (define W-gam0 (* 0.064 eV-um-scale))
  685 (define W-sig0 (/ (* W-f0 (sqr W-plasma-frq)) (sqr W-frq0)))
  686 
  687 (define W-f1 0.054)
  688 (define W-frq1 (* 1.004 eV-um-scale)) ; 1.235 um
  689 (define W-gam1 (* 0.530 eV-um-scale))
  690 (define W-sig1 (/ (* W-f1 (sqr W-plasma-frq)) (sqr W-frq1)))
  691 
  692 (define W-f2 0.166)
  693 (define W-frq2 (* 1.917 eV-um-scale)) ; 0.647 um
  694 (define W-gam2 (* 1.281 eV-um-scale))
  695 (define W-sig2 (/ (* W-f2 (sqr W-plasma-frq)) (sqr W-frq2)))
  696 
  697 (define W-f3 0.706)
  698 (define W-frq3 (* 3.580 eV-um-scale)) ; 0.346 um
  699 (define W-gam3 (* 3.332 eV-um-scale))
  700 (define W-sig3 (/ (* W-f3 (sqr W-plasma-frq)) (sqr W-frq3)))
  701 
  702 (define W-f4 2.590)
  703 (define W-frq4 (* 7.498 eV-um-scale)) ; 0.165 um
  704 (define W-gam4 (* 5.836 eV-um-scale))
  705 (define W-sig4 (/ (* W-f4 (sqr W-plasma-frq)) (sqr W-frq4)))
  706 
  707 (define W (make medium (epsilon 1.0)
  708   (E-susceptibilities
  709      (make drude-susceptibility
  710        (frequency W-frq0) (gamma W-gam0) (sigma W-sig0))
  711      (make lorentzian-susceptibility
  712        (frequency W-frq1) (gamma W-gam1) (sigma W-sig1))
  713      (make lorentzian-susceptibility
  714        (frequency W-frq2) (gamma W-gam2) (sigma W-sig2))
  715      (make lorentzian-susceptibility
  716        (frequency W-frq3) (gamma W-gam3) (sigma W-sig3))
  717      (make lorentzian-susceptibility
  718        (frequency W-frq4) (gamma W-gam4) (sigma W-sig4)))))
  719 
  720 ;------------------------------------------------------------------
  721 ; metals from D. Barchiesi and T. Grosges, J. Nanophotonics, Vol. 8, 08996, 2015
  722 ; wavelength range: 0.4 - 0.8 um
  723 
  724 ; gold (Au)
  725 ; fit to P.B. Johnson and R.W. Christy, Physical Review B, Vol. 6, pp. 4370-9, 1972
  726 
  727 (define Au-JC-visible-frq0 (/ (* 0.139779231751333 um-scale)))
  728 (define Au-JC-visible-gam0 (/ (* 26.1269913352870 um-scale)))
  729 (define Au-JC-visible-sig0 1)
  730 
  731 (define Au-JC-visible-frq1 (/ (* 0.404064525036786 um-scale)))
  732 (define Au-JC-visible-gam1 (/ (* 1.12834046202759 um-scale)))
  733 (define Au-JC-visible-sig1 2.07118534879440)
  734 
  735 (define Au-JC-visible (make medium (epsilon 6.1599)
  736   (E-susceptibilities
  737    (make drude-susceptibility
  738      (frequency Au-JC-visible-frq0) (gamma Au-JC-visible-gam0) (sigma Au-JC-visible-sig0))
  739    (make lorentzian-susceptibility
  740      (frequency Au-JC-visible-frq1) (gamma Au-JC-visible-gam1) (sigma Au-JC-visible-sig1)))))
  741 
  742 ;------------------------------------------------------------------
  743 ; gold (Au)
  744 ; fit to E.D. Palik, Handbook of Optical Constants, Academic Press, 1985
  745 
  746 (define Au-visible-frq0 (/ (* 0.0473629248511456 um-scale)))
  747 (define Au-visible-gam0 (/ (* 0.255476199605166 um-scale)))
  748 (define Au-visible-sig0 1)
  749 
  750 (define Au-visible-frq1 (/ (* 0.800619321082804 um-scale)))
  751 (define Au-visible-gam1 (/ (* 0.381870287531951 um-scale)))
  752 (define Au-visible-sig1 -169.060953137985)
  753 
  754 (define Au-visible (make medium (epsilon 0.6888)
  755   (E-susceptibilities
  756    (make drude-susceptibility
  757      (frequency Au-visible-frq0) (gamma Au-visible-gam0) (sigma Au-visible-sig0))
  758    (make lorentzian-susceptibility
  759      (frequency Au-visible-frq1) (gamma Au-visible-gam1) (sigma Au-visible-sig1)))))
  760 
  761 ;------------------------------------------------------------------                       
  762 ;; UNSTABLE: field divergence may occur
  763 
  764 ; silver (Au)
  765 ; fit to E.D. Palik, Handbook of Optical Constants, Academic Press, 1985
  766 
  767 (define Ag-visible-frq0 (/ (* 0.142050162130618 um-scale)))
  768 (define Ag-visible-gam0 (/ (* 18.0357292925015 um-scale)))
  769 (define Ag-visible-sig0 1)
  770 
  771 (define Ag-visible-frq1 (/ (* 0.115692151792108 um-scale)))
  772 (define Ag-visible-gam1 (/ (* 0.257794324096575 um-scale)))
  773 (define Ag-visible-sig1 3.74465275944019)
  774 
  775 (define Ag-visible (make medium (epsilon 0.0067526)
  776   (E-susceptibilities
  777    (make drude-susceptibility
  778      (frequency Ag-visible-frq0) (gamma Ag-visible-gam0) (sigma Ag-visible-sig0))
  779    (make lorentzian-susceptibility
  780      (frequency Ag-visible-frq1) (gamma Ag-visible-gam1) (sigma Ag-visible-sig1)))))
  781 
  782 ;------------------------------------------------------------------
  783 ;; UNSTABLE: field divergence may occur
  784 
  785 ; aluminum (Al)
  786 ; fit to E.D. Palik, Handbook of Optical Constants, Academic Press, 1985
  787 
  788 (define Al-visible-frq0 (/ (* 0.0625841659042985 um-scale)))
  789 (define Al-visible-gam0 (/ (* 0.606007002962666 um-scale)))
  790 (define Al-visible-sig0 1)
  791 
  792 (define Al-visible-frq1 (/ (* 0.528191199577075 um-scale)))
  793 (define Al-visible-gam1 (/ (* 0.291862527666814 um-scale)))
  794 (define Al-visible-sig1 -44.4456675577921)
  795 
  796 (define Al-visible (make medium (epsilon 0.13313)
  797   (E-susceptibilities
  798    (make drude-susceptibility
  799      (frequency Al-visible-frq0) (gamma Al-visible-gam0) (sigma Al-visible-sig0))
  800    (make lorentzian-susceptibility
  801      (frequency Al-visible-frq1) (gamma Al-visible-gam1) (sigma Al-visible-sig1)))))
  802 
  803 ;------------------------------------------------------------------
  804 ; chromium (Cr)
  805 ; fit to E.D. Palik, Handbook of Optical Constants, Academic Press, 1985
  806 
  807 (define Cr-visible-frq0 (/ (* 0.118410119507342 um-scale)))
  808 (define Cr-visible-gam0 (/ (* 0.628596264869804 um-scale)))
  809 (define Cr-visible-sig0 1)
  810 
  811 (define Cr-visible-frq1 (/ (* 0.565709598452496 um-scale)))
  812 (define Cr-visible-gam1 (/ (* 0.731117670900812 um-scale)))
  813 (define Cr-visible-sig1 13.2912419951294)
  814 
  815 (define Cr-visible (make medium (epsilon 2.7767)
  816   (E-susceptibilities
  817    (make drude-susceptibility
  818      (frequency Cr-visible-frq0) (gamma Cr-visible-gam0) (sigma Cr-visible-sig0))
  819    (make lorentzian-susceptibility
  820      (frequency Cr-visible-frq1) (gamma Cr-visible-gam1) (sigma Cr-visible-sig1)))))
  821 
  822 ;------------------------------------------------------------------
  823 ;; UNSTABLE: field divergence may occur
  824 
  825 ; titanium (Ti)
  826 ; fit to E.D. Palik, Handbook of Optical Constants, Academic Press, 1985
  827 
  828 (define Ti-visible-frq0 (/ (* 0.101331651921602 um-scale)))
  829 (define Ti-visible-gam0 (/ (* 0.365743382258719 um-scale)))
  830 (define Ti-visible-sig0 1)
  831 
  832 (define Ti-visible-frq1 (/ (* 4.56839173979216e-09 um-scale)))
  833 (define Ti-visible-gam1 (/ (* 5.86441957443603e-10  um-scale)))
  834 (define Ti-visible-sig1 54742662.1963414)
  835 
  836 (define Ti-visible (make medium (epsilon -5.4742e7)
  837   (E-susceptibilities
  838    (make drude-susceptibility
  839      (frequency Ti-visible-frq0) (gamma Ti-visible-gam0) (sigma Ti-visible-sig0))
  840    (make lorentzian-susceptibility
  841      (frequency Ti-visible-frq1) (gamma Ti-visible-gam1) (sigma Ti-visible-sig1)))))
  842 
  843 ;------------------------------------------------------------------
  844 ; aluminum (Al) from Horiba Technical Note 09: Drude Dispersion Model
  845 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Drude_Dispersion_Model.pdf
  846 ; wavelength range: 0.19 - 0.83 um
  847 
  848 (define Al-drude-frq (/ (* 0.0789607648707171 um-scale)))
  849 (define Al-drude-gam (/ (* 1.78138208333333 um-scale)))
  850 (define Al-drude-sig 1)
  851 
  852 (define Al-drude (make medium (epsilon 1.0)
  853   (E-susceptibilities
  854    (make drude-susceptibility
  855      (frequency Al-drude-frq) (gamma Al-drude-gam) (sigma Al-drude-sig)))))
  856 
  857 ;------------------------------------------------------------------
  858 ; cobalt (Co) from Horiba Technical Note 09: Drude Dispersion Model
  859 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Drude_Dispersion_Model.pdf
  860 ; wavelength range: 0.26 - 1.65 um
  861 
  862 (define Co-frq (/ (* 0.0789607648707171 um-scale)))
  863 (define Co-gam (/ (* 0.213802712536644 um-scale)))
  864 (define Co-sig 1)
  865 
  866 (define Co (make medium (epsilon 3.694)
  867   (E-susceptibilities
  868    (make drude-susceptibility
  869      (frequency Co-frq) (gamma Co-gam) (sigma Co-sig)))))
  870 
  871 ;------------------------------------------------------------------
  872 ;; WARNING: unstable; field divergence may occur
  873 
  874 ; molybdenum (Mo) from Horiba Technical Note 09: Drude Dispersion Model
  875 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Drude_Dispersion_Model.pdf
  876 ; wavelength range: 0.25 - 0.83 um
  877 
  878 (define Mo-frq (/ (* 0.0620790071099539 um-scale)))
  879 (define Mo-gam (/ (* 0.148359690080172 um-scale)))
  880 (define Mo-sig 1)
  881 
  882 (define Mo (make medium (epsilon -1.366)
  883   (E-susceptibilities
  884    (make drude-susceptibility
  885      (frequency Mo-frq) (gamma Mo-gam) (sigma Mo-sig)))))
  886 
  887 ;------------------------------------------------------------------
  888 ; nickel chrome (NiCr) from Horiba Technical Note 09: Drude Dispersion Model
  889 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Drude_Dispersion_Model.pdf
  890 ; wavelength range: 0.25 - 0.83 um
  891 
  892 (define NiCr-frq (/ (* 0.0868845080588648 um-scale)))
  893 (define NiCr-gam (/ (* 0.308418390547264 um-scale)))
  894 (define NiCr-sig 1)
  895 
  896 (define NiCr (make medium (epsilon 1.0)
  897   (E-susceptibilities
  898    (make drude-susceptibility
  899      (frequency NiCr-frq) (gamma NiCr-gam) (sigma NiCr-sig)))))
  900 
  901 ;------------------------------------------------------------------
  902 ; nickel iron (NiFe) from Horiba Technical Note 09: Drude Dispersion Model
  903 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Drude_Dispersion_Model.pdf
  904 ; wavelength range: 0.25 - 0.83 um
  905 
  906 (define NiFe-frq (/ (* 0.0838297450980392 um-scale)))
  907 (define NiFe-gam (/ (* 0.259381156903766 um-scale)))
  908 (define NiFe-sig 1)
  909 
  910 (define NiFe (make medium (epsilon 1.0)
  911   (E-susceptibilities
  912    (make drude-susceptibility
  913      (frequency NiFe-frq) (gamma NiFe-gam) (sigma NiFe-sig)))))
  914 
  915 ;------------------------------------------------------------------
  916 ; titanium (Ti) from Horiba Technical Note 09: Drude Dispersion Model
  917 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Drude_Dispersion_Model.pdf
  918 ; wavelength range: 0.21 - 1.24 um
  919 
  920 (define Ti-drude-frq (/ (* 0.113746966055046 um-scale)))
  921 (define Ti-drude-gam (/ (* 0.490056098814229 um-scale)))
  922 (define Ti-drude-sig 1)
  923 
  924 (define Ti-drude (make medium (epsilon 1.0)
  925   (E-susceptibilities
  926    (make drude-susceptibility
  927      (frequency Ti-drude-frq) (gamma Ti-drude-gam) (sigma Ti-drude-sig)))))
  928 
  929 ;------------------------------------------------------------------
  930 ; silicon nitride (SiN), non-stoichiometric, from Horiba Technical Note 08: Lorentz Dispersion Model
  931 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Lorentz_Dispersion_Model.pdf
  932 ; wavelength range: 0.21 - 2.07 um
  933 
  934 (define SiN-frq1 (/ (* 0.190891752117013 um-scale)))
  935 (define SiN-gam1 (/ (* 3.11518072864322 um-scale)))
  936 (define SiN-sig1 1.2650)
  937 
  938 (define SiN (make medium (epsilon 2.320)
  939  (E-susceptibilities 
  940   (make lorentzian-susceptibility
  941     (frequency SiN-frq1) (gamma SiN-gam1) (sigma SiN-sig1)))))
  942 
  943 ;------------------------------------------------------------------
  944 ; silicon nitride (Si3N4), stoichiometric, from Horiba Technical Note 08: Lorentz Dispersion Model
  945 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Lorentz_Dispersion_Model.pdf
  946 ; wavelength range: 0.23 - 0.83 um
  947 
  948 (define Si3N4-frq1 (/ (* 0.389153148148148 um-scale)))
  949 (define Si3N4-gam1 (/ (* 0.693811936205932 um-scale)))
  950 (define Si3N4-sig1 4.377)
  951 
  952 (define Si3N4 (make medium (epsilon 1.0)
  953  (E-susceptibilities 
  954   (make lorentzian-susceptibility
  955     (frequency Si3N4-frq1) (gamma Si3N4-gam1) (sigma Si3N4-sig1)))))
  956 
  957 ;------------------------------------------------------------------
  958 ; silicon dioxide (SiO2) from Horiba Technical Note 08: Lorentz Dispersion Model
  959 ; ref: http://www.horiba.com/fileadmin/uploads/Scientific/Downloads/OpticalSchool_CN/TN/ellipsometer/Lorentz_Dispersion_Model.pdf
  960 ; wavelength range: 0.25 - 1.77 um
  961 
  962 (define SiO2-frq1 (/ (* 0.103320160833333 um-scale)))
  963 (define SiO2-gam1 (/ (* 12.3984193000000 um-scale)))
  964 (define SiO2-sig1 1.12)
  965 
  966 (define SiO2 (make medium (epsilon 1.0)
  967  (E-susceptibilities 
  968   (make lorentzian-susceptibility
  969     (frequency SiO2-frq1) (gamma SiO2-gam1) (sigma SiO2-sig1)))))
  970 
  971 ;------------------------------------------------------------------
  972 ; indium phosphide (InP) from Handbook of Optics, 2nd edition, Vol. 2, McGraw-Hill, 1994
  973 ; ref: https://refractiveindex.info/?shelf=main&book=InP&page=Pettit
  974 ; wavelength range: 0.95 - 10 um
  975 
  976 (define InP-frq1 (/ (* 0.6263 um-scale)))
  977 (define InP-gam1 0)
  978 (define InP-sig1 2.316)
  979 
  980 (define InP-frq2 (/ (* 32.935 um-scale)))
  981 (define InP-gam2 0)
  982 (define InP-sig2 2.765)
  983 
  984 (define InP (make medium (epsilon 7.255)
  985  (E-susceptibilities 
  986   (make lorentzian-susceptibility
  987     (frequency InP-frq1) (gamma InP-gam1) (sigma InP-sig1))
  988   (make lorentzian-susceptibility
  989     (frequency InP-frq2) (gamma InP-gam2) (sigma InP-sig2)))))
  990 
  991 ;------------------------------------------------------------------
  992 ; germanium (Ge) from N. P. Barnes and M. S. Piltch, J. Optical Society America, Vol. 69, pp. 178-180, 1979
  993 ; ref: https://refractiveindex.info/?shelf=main&book=Ge&page=Icenogle
  994 ; wavelength range: 2.5 - 12 um
  995 
  996 (define Ge-frq1 (/ (* 0.6641159 um-scale)))
  997 (define Ge-gam1 0)
  998 (define Ge-sig1 6.7288)
  999 
 1000 (define Ge-frq2 (/ (* 62.210127 um-scale)))
 1001 (define Ge-gam2 0)
 1002 (define Ge-sig2 0.21307)
 1003 
 1004 (define Ge (make medium (epsilon 9.28156)
 1005  (E-susceptibilities 
 1006   (make lorentzian-susceptibility
 1007     (frequency Ge-frq1) (gamma Ge-gam1) (sigma Ge-sig1))
 1008   (make lorentzian-susceptibility
 1009     (frequency Ge-frq2) (gamma Ge-gam2) (sigma Ge-sig2)))))
 1010 
 1011 ;------------------------------------------------------------------
 1012 ; silicon (Si) from C. D. Salzberg and J. J. Villa, , J. Optical Society America, Vol. 47, pp. 244-246, 1957
 1013 ; ref: https://refractiveindex.info/?shelf=main&book=Si&page=Salzberg
 1014 ; wavelength range: 1.36 - 11 um
 1015 
 1016 (define Si-frq1 (/ (* 0.301516485 um-scale)))
 1017 (define Si-gam1 0)
 1018 (define Si-sig1 10.6684293)
 1019 
 1020 (define Si-frq2 (/ (* 1.13475115 um-scale)))
 1021 (define Si-gam2 0)
 1022 (define Si-sig2 0.0030434748)
 1023 
 1024 (define Si-frq3 (/ (* 1104 um-scale)))
 1025 (define Si-gam3 0)
 1026 (define Si-sig3 1.54133408)
 1027 
 1028 (define Si (make medium (epsilon 9.28156)
 1029  (E-susceptibilities 
 1030   (make lorentzian-susceptibility
 1031     (frequency Si-frq1) (gamma Si-gam1) (sigma Si-sig1))
 1032   (make lorentzian-susceptibility
 1033     (frequency Si-frq2) (gamma Si-gam2) (sigma Si-sig2))
 1034   (make lorentzian-susceptibility
 1035     (frequency Si-frq3) (gamma Si-gam3) (sigma Si-sig3)))))
 1036 
 1037 ;------------------------------------------------------------------
 1038 ; poly(methyl methacrylate) (PMMA) from N. Sultanova et al., Acta Physica Polonica A, Vol. 116, pp. 585-7, 2009
 1039 ; ref: https://refractiveindex.info/?shelf=organic&book=poly%28methyl_methacrylate%29&page=Sultanova
 1040 ; wavelength range: 0.437 - 1.052 um
 1041 
 1042 (define PMMA-frq1 (/ (* 0.106362587407415 um-scale)))
 1043 (define PMMA-gam1 0)
 1044 (define PMMA-sig1 1.1819)
 1045 
 1046 (define PMMA (make medium (epsilon 1.0)
 1047  (E-susceptibilities 
 1048   (make lorentzian-susceptibility
 1049     (frequency PMMA-frq1) (gamma PMMA-gam1) (sigma PMMA-sig1)))))
 1050 
 1051 ;------------------------------------------------------------------
 1052 ; polycarbonate (PC) from N. Sultanova et al., Acta Physica Polonica A, Vol. 116, pp. 585-7, 2009
 1053 ; ref: https://refractiveindex.info/?shelf=organic&book=polycarbonate&page=Sultanova
 1054 ; wavelength range: 0.437 - 1.052 um
 1055 
 1056 (define PC-frq1 (/ (* 0.145958898324152 um-scale)))
 1057 (define PC-gam1 0)
 1058 (define PC-sig1 1.4182)
 1059 
 1060 (define PC (make medium (epsilon 1.0)
 1061  (E-susceptibilities 
 1062   (make lorentzian-susceptibility
 1063     (frequency PC-frq1) (gamma PC-gam1) (sigma PC-sig1)))))
 1064 
 1065 ;------------------------------------------------------------------
 1066 ; polystyrene (PS) from N. Sultanova et al., Acta Physica Polonica A, Vol. 116, pp. 585-7, 2009
 1067 ; ref: https://refractiveindex.info/?shelf=organic&book=polystyren&page=Sultanova
 1068 ; wavelength range: 0.437 - 1.052 um
 1069 
 1070 (define PS-frq1 (/ (* 0.142182980697410 um-scale)))
 1071 (define PS-gam1 0)
 1072 (define PS-sig1 1.4435)
 1073 
 1074 (define PS (make medium (epsilon 1.0)
 1075  (E-susceptibilities 
 1076   (make lorentzian-susceptibility
 1077     (frequency PS-frq1) (gamma PS-gam1) (sigma PS-sig1)))))
 1078 
 1079 ;------------------------------------------------------------------
 1080 ; cellulose (CLS) from N. Sultanova et al., Acta Physica Polonica A, Vol. 116, pp. 585-7, 2009
 1081 ; ref: https://refractiveindex.info/?shelf=organic&book=cellulose&page=Sultanova
 1082 ; wavelength range: 0.437 - 1.052 um
 1083 
 1084 (define CLS-frq1 (/ (* 0.105294824184287 um-scale)))
 1085 (define CLS-gam1 0)
 1086 (define CLS-sig1 1.124)
 1087 
 1088 (define CLS (make medium (epsilon 1.0)
 1089  (E-susceptibilities 
 1090   (make lorentzian-susceptibility
 1091     (frequency CLS-frq1) (gamma CLS-gam1) (sigma CLS-sig1)))))
 1092 
 1093 ;------------------------------------------------------------------
 1094 ; barium borate (BaB2O4), beta phase, from G. Tamosauskas et al., Optical Materials Express, Vol. 8, pp. 1410-18, 2018
 1095 ; ref: https://refractiveindex.info/?shelf=main&book=BaB2O4&page=Tamosauskas-o
 1096 ; ref: https://refractiveindex.info/?shelf=main&book=BaB2O4&page=Tamosauskas-e
 1097 ; wavelength range: 0.188 - 5.2 um
 1098 
 1099 ;; NOTE: ordinary (o) axes in X and Y, extraordinary (e) axis in Z
 1100 
 1101 (define BaB2O4-frq1 (/ (* 0.06265780079128216 um-scale)))
 1102 (define BaB2O4-gam1 0)
 1103 (define BaB2O4-sig1 0.90291)
 1104 
 1105 (define BaB2O4-frq2 (/ (* 0.13706202975295528 um-scale)))
 1106 (define BaB2O4-gam2 0)
 1107 (define BaB2O4-sig2 0.83155)
 1108 
 1109 (define BaB2O4-frq3 (/ (* 7.746612162745725 um-scale)))
 1110 (define BaB2O4-gam3 0)
 1111 (define BaB2O4-sig3 0.76536)
 1112 
 1113 (define BaB2O4-susc-o
 1114   (list
 1115    (make lorentzian-susceptibility
 1116      (frequency BaB2O4-frq1) (gamma BaB2O4-gam1) (sigma-diag (vector3* BaB2O4-sig1 (vector3 1 1 0))))
 1117    (make lorentzian-susceptibility
 1118      (frequency BaB2O4-frq2) (gamma BaB2O4-gam2) (sigma-diag (vector3* BaB2O4-sig2 (vector3 1 1 0))))
 1119    (make lorentzian-susceptibility
 1120      (frequency BaB2O4-frq3) (gamma BaB2O4-gam3) (sigma-diag (vector3* BaB2O4-sig3 (vector3 1 1 0))))))
 1121 
 1122 (define BaB2O4-frq1 (/ (* 0.0845103543951864 um-scale)))
 1123 (define BaB2O4-gam1 0)
 1124 (define BaB2O4-sig1 1.151075)
 1125 
 1126 (define BaB2O4-frq2 (/ (* 0.15029970059850417 um-scale)))
 1127 (define BaB2O4-gam2 0)
 1128 (define BaB2O4-sig2 0.21803)
 1129 
 1130 (define BaB2O4-frq3 (/ (* 16.217274740226856 um-scale)))
 1131 (define BaB2O4-gam3 0)
 1132 (define BaB2O4-sig3 0.656)
 1133 
 1134 (define BaB2O4-susc-e
 1135   (list
 1136    (make lorentzian-susceptibility
 1137      (frequency BaB2O4-frq1) (gamma BaB2O4-gam1) (sigma-diag (vector3* BaB2O4-sig1 (vector3 0 0 1))))
 1138    (make lorentzian-susceptibility
 1139      (frequency BaB2O4-frq2) (gamma BaB2O4-gam2) (sigma-diag (vector3* BaB2O4-sig2 (vector3 0 0 1))))
 1140    (make lorentzian-susceptibility
 1141      (frequency BaB2O4-frq3) (gamma BaB2O4-gam3) (sigma-diag (vector3* BaB2O4-sig3 (vector3 0 0 1))))))
 1142 
 1143 (define BaB2O4 (make medium
 1144          (epsilon 1.0)
 1145          (E-susceptibilities (append BaB2O4-susc-o BaB2O4-susc-e))))
 1146 
 1147 ;------------------------------------------------------------------
 1148 ; lithium niobate (LiNbO3) from D.E. Zelmon et al., J. Optical Society of America B, Vol. 14, pp. 3319-22, 1997
 1149 ; ref: https://refractiveindex.info/?shelf=main&book=LiNbO3&page=Zelmon-o
 1150 ; ref: https://refractiveindex.info/?shelf=main&book=LiNbO3&page=Zelmon-e
 1151 ; wavelength range: 0.4 - 5.0 um
 1152 
 1153 ;; NOTE: ordinary (o) axes in X and Y, extraordinary (e) axis in Z
 1154 
 1155 (define LiNbO3-frq1 (/ (* 0.13281566172707193 um-scale)))
 1156 (define LiNbO3-gam1 0)
 1157 (define LiNbO3-sig1 2.6734)
 1158 
 1159 (define LiNbO3-frq2 (/ (* 0.24318717071424636 um-scale)))
 1160 (define LiNbO3-gam2 0)
 1161 (define LiNbO3-sig2 1.2290)
 1162 
 1163 (define LiNbO3-frq3 (/ (* 21.78531615561271 um-scale)))
 1164 (define LiNbO3-gam3 0)
 1165 (define LiNbO3-sig3 12.614)
 1166 
 1167 (define LiNbO3-susc-o
 1168   (list
 1169    (make lorentzian-susceptibility
 1170      (frequency LiNbO3-frq1) (gamma LiNbO3-gam1) (sigma-diag (vector3* LiNbO3-sig1 (vector3 1 1 0))))
 1171    (make lorentzian-susceptibility
 1172      (frequency LiNbO3-frq2) (gamma LiNbO3-gam2) (sigma-diag (vector3* LiNbO3-sig2 (vector3 1 1 0))))
 1173    (make lorentzian-susceptibility
 1174      (frequency LiNbO3-frq3) (gamma LiNbO3-gam3) (sigma-diag (vector3* LiNbO3-sig3 (vector3 1 1 0))))))
 1175 
 1176 (define LiNbO3-frq1 (/ (* 0.14307340773183533 um-scale)))
 1177 (define LiNbO3-gam1 0)
 1178 (define LiNbO3-sig1 2.9804)
 1179 
 1180 (define LiNbO3-frq2 (/ (* 0.2580697580112788 um-scale)))
 1181 (define LiNbO3-gam2 0)
 1182 (define LiNbO3-sig2 0.5981)
 1183 
 1184 (define LiNbO3-frq3 (/ (* 20.39803912144498 um-scale)))
 1185 (define LiNbO3-gam3 0)
 1186 (define LiNbO3-sig3 8.9543)
 1187 
 1188 (define LiNbO3-susc-e
 1189   (list
 1190    (make lorentzian-susceptibility
 1191      (frequency LiNbO3-frq1) (gamma LiNbO3-gam1) (sigma-diag (vector3* LiNbO3-sig1 (vector3 0 0 1))))
 1192    (make lorentzian-susceptibility
 1193      (frequency LiNbO3-frq2) (gamma LiNbO3-gam2) (sigma-diag (vector3* LiNbO3-sig2 (vector3 0 0 1))))
 1194    (make lorentzian-susceptibility
 1195      (frequency LiNbO3-frq3) (gamma LiNbO3-gam3) (sigma-diag (vector3* LiNbO3-sig3 (vector3 0 0 1))))))
 1196 
 1197 (define LiNbO3 (make medium
 1198          (epsilon 1.0)
 1199          (E-susceptibilities (append LiNbO3-susc-o LiNbO3-susc-e))))
 1200 
 1201 ;------------------------------------------------------------------
 1202 ; calcium tungstate (CaWO4) from W.L. Bond, J. Applied Physics, Vol. 36, pp. 1674-77, 1965
 1203 ; ref: https://refractiveindex.info/?shelf=main&book=CaWO4&page=Bond-o
 1204 ; ref: https://refractiveindex.info/?shelf=main&book=CaWO4&page=Bond-e
 1205 ; wavelength range: 0.45 - 4.0 um
 1206 
 1207 ;; NOTE: ordinary (o) axes in X and Y, extraordinary (e) axis in Z
 1208 
 1209 (define CaWO4-frq1 (/ (* 0.1347 um-scale)))
 1210 (define CaWO4-gam1 0)
 1211 (define CaWO4-sig1 2.5493)
 1212 
 1213 (define CaWO4-frq2 (/ (* 10.815 um-scale)))
 1214 (define CaWO4-gam2 0)
 1215 (define CaWO4-sig2 0.9200)
 1216 
 1217 (define CaWO4-susc-o
 1218   (list
 1219    (make lorentzian-susceptibility
 1220      (frequency CaWO4-frq1) (gamma CaWO4-gam1) (sigma-diag (vector3* CaWO4-sig1 (vector3 1 1 0))))
 1221    (make lorentzian-susceptibility
 1222      (frequency CaWO4-frq2) (gamma CaWO4-gam2) (sigma-diag (vector3* CaWO4-sig2 (vector3 1 1 0))))))
 1223 
 1224 (define CaWO4-frq1 (/ (* 0.1379 um-scale)))
 1225 (define CaWO4-gam1 0)
 1226 (define CaWO4-sig1 2.6041)
 1227 
 1228 (define CaWO4-frq2 (/ (* 21.371 um-scale)))
 1229 (define CaWO4-gam2 0)
 1230 (define CaWO4-sig2 4.1237)
 1231 
 1232 (define CaWO4-susc-e
 1233   (list
 1234    (make lorentzian-susceptibility
 1235      (frequency CaWO4-frq1) (gamma CaWO4-gam1) (sigma-diag (vector3* CaWO4-sig1 (vector3 0 0 1))))
 1236    (make lorentzian-susceptibility
 1237      (frequency CaWO4-frq2) (gamma CaWO4-gam2) (sigma-diag (vector3* CaWO4-sig2 (vector3 0 0 1))))))
 1238 
 1239 (define CaWO4 (make medium
 1240         (epsilon 1.0)
 1241         (E-susceptibilities (append CaWO4-susc-o CaWO4-susc-e))))
 1242 
 1243 ;------------------------------------------------------------------
 1244 ; calcium carbonate (CaCO3) from G. Ghosh, Optics Communication, Vol. 163, pp. 95-102, 1999
 1245 ; ref: https://refractiveindex.info/?shelf=main&book=CaCO3&page=Ghosh-o
 1246 ; ref: https://refractiveindex.info/?shelf=main&book=CaCO3&page=Ghosh-e
 1247 ; wavelength range: 0.204 - 2.172 um
 1248 
 1249 ;; NOTE: ordinary (o) axes in X and Y, extraordinary (e) axis in Z
 1250 
 1251 (define CaCO3-frq1 (/ (* 0.13940057496294625 um-scale)))
 1252 (define CaCO3-gam1 0)
 1253 (define CaCO3-sig1 0.96464345)
 1254 
 1255 (define CaCO3-frq2 (/ (* 10.954451150103322 um-scale)))
 1256 (define CaCO3-gam2 0)
 1257 (define CaCO3-sig2 1.82831454)
 1258 
 1259 (define CaCO3-susc-o
 1260   (list
 1261    (make lorentzian-susceptibility
 1262      (frequency CaCO3-frq1) (gamma CaCO3-gam1) (sigma-diag (vector3* CaCO3-sig1 (vector3 1 1 0))))
 1263    (make lorentzian-susceptibility
 1264      (frequency CaCO3-frq2) (gamma CaCO3-gam2) (sigma-diag (vector3* CaCO3-sig2 (vector3 1 1 0))))))
 1265 
 1266 (define CaCO3-frq1 (/ (* 0.1032906302623815 um-scale)))
 1267 (define CaCO3-gam1 0)
 1268 (define CaCO3-sig1 0.82427830)
 1269 
 1270 (define CaCO3-frq2 (/ (* 10.954451150103322 um-scale)))
 1271 (define CaCO3-gam2 0)
 1272 (define CaCO3-sig2 0.14429128)
 1273 
 1274 (define CaCO3-susc-e
 1275   (list
 1276    (make lorentzian-susceptibility
 1277      (frequency CaCO3-frq1) (gamma CaCO3-gam1) (sigma-diag (vector3* CaCO3-sig1 (vector3 0 0 1))))
 1278    (make lorentzian-susceptibility
 1279      (frequency CaCO3-frq2) (gamma CaCO3-gam2) (sigma-diag (vector3* CaCO3-sig2 (vector3 0 0 1))))))
 1280 
 1281 (define CaCO3 (make medium
 1282         (epsilon-diag 1.73358749 1.73358749 1.35859695)
 1283         (E-susceptibilities (append CaCO3-susc-o CaCO3-susc-e))))
 1284 
 1285 ;------------------------------------------------------------------
 1286 ; silicon dioxide (SiO2) from G. Ghosh, Optics Communication, Vol. 163, pp. 95-102, 1999
 1287 ; ref: https://refractiveindex.info/?shelf=main&book=SiO2&page=Ghosh-o
 1288 ; ref: https://refractiveindex.info/?shelf=main&book=SiO2&page=Ghosh-e
 1289 ; wavelength range: 0.198 - 2.0531 um
 1290 
 1291 ;; NOTE: ordinary (o) axes in X and Y, extraordinary (e) axis in Z
 1292 
 1293 (define SiO2-frq1 (/ (* 0.10029257051247614 um-scale)))
 1294 (define SiO2-gam1 0)
 1295 (define SiO2-sig1 1.07044083)
 1296 
 1297 (define SiO2-frq2 (/ (* 10 um-scale)))
 1298 (define SiO2-gam2 0)
 1299 (define SiO2-sig2 1.10202242)
 1300 
 1301 (define SiO2-susc-o
 1302   (list
 1303    (make lorentzian-susceptibility
 1304      (frequency SiO2-frq1) (gamma SiO2-gam1) (sigma-diag (vector3* SiO2-sig1 (vector3 1 1 0))))
 1305    (make lorentzian-susceptibility
 1306      (frequency SiO2-frq2) (gamma SiO2-gam2) (sigma-diag (vector3* SiO2-sig2 (vector3 1 1 0))))))
 1307 
 1308 (define SiO2-frq1 (/ (* 0.10104546699382412 um-scale)))
 1309 (define SiO2-gam1 0)
 1310 (define SiO2-sig1 1.09509924)
 1311 
 1312 (define SiO2-frq2 (/ (* 10 um-scale)))
 1313 (define SiO2-gam2 0)
 1314 (define SiO2-sig2 1.15662475)
 1315 
 1316 (define SiO2-susc-e
 1317   (list
 1318    (make lorentzian-susceptibility
 1319      (frequency SiO2-frq1) (gamma SiO2-gam1) (sigma-diag (vector3* SiO2-sig1 (vector3 0 0 1))))
 1320    (make lorentzian-susceptibility
 1321      (frequency SiO2-frq2) (gamma SiO2-gam2) (sigma-diag (vector3* SiO2-sig2 (vector3 0 0 1))))))
 1322 
 1323 (define SiO2-aniso (make medium
 1324              (epsilon-diag 1.28604141 1.28604141 1.28851804)
 1325              (E-susceptibilities (append SiO2-susc-o SiO2-susc-e))))
 1326 
 1327 ;------------------------------------------------------------------
 1328 ; gallium nitride (GaN), alpha phase (wurtzite), from A.S. Barker Jr. and M. Ilegems, Physical Review B, Vol. 7, pp. 743-50, 1973
 1329 ; ref: https://refractiveindex.info/?shelf=main&book=GaN&page=Barker-o
 1330 ; ref: https://refractiveindex.info/?shelf=main&book=GaN&page=Barker-e
 1331 ; wavelength range: 0.35 - 10 um
 1332 
 1333 ;; NOTE: ordinary (o) axes in X and Y, extraordinary (e) axis in Z
 1334 
 1335 (define GaN-frq1 (/ (* 0.256 um-scale)))
 1336 (define GaN-gam1 0)
 1337 (define GaN-sig1 1.75)
 1338 
 1339 (define GaN-frq2 (/ (* 17.86 um-scale)))
 1340 (define GaN-gam2 0)
 1341 (define GaN-sig2 4.1)
 1342 
 1343 (define GaN-susc-o
 1344   (list
 1345    (make lorentzian-susceptibility
 1346      (frequency GaN-frq1) (gamma GaN-gam1) (sigma-diag (vector3* GaN-sig1 (vector3 1 1 0))))
 1347    (make lorentzian-susceptibility
 1348      (frequency GaN-frq2) (gamma GaN-gam2) (sigma-diag (vector3* GaN-sig2 (vector3 1 1 0))))))
 1349 
 1350 (define GaN-frq1 (/ (* 18.76 um-scale)))
 1351 (define GaN-gam1 0)
 1352 (define GaN-sig1 5.08)
 1353 
 1354 (define GaN-susc-e
 1355   (list
 1356    (make lorentzian-susceptibility
 1357      (frequency GaN-frq1) (gamma GaN-gam1) (sigma-diag (vector3* GaN-sig1 (vector3 0 0 1))))))
 1358 
 1359 (define GaN (make medium
 1360           (epsilon-diag 3.6 3.6 5.35)
 1361           (E-susceptibilities (append GaN-susc-o GaN-susc-e))))
 1362 
 1363 ;------------------------------------------------------------------
 1364 ; aluminum nitride (AlN) from J. Pastrnak and L. Roskovcova, Physica Status Solidi, Vol. 14, K5-8, 1966
 1365 ; ref: https://refractiveindex.info/?shelf=main&book=AlN&page=Pastrnak-o
 1366 ; ref: https://refractiveindex.info/?shelf=main&book=AlN&page=Pastrnak-e
 1367 ; wavelength range: 0.22 - 5 um
 1368 
 1369 ;; NOTE: ordinary (o) axes in X and Y, extraordinary (e) axis in Z
 1370 
 1371 (define AlN-frq1 (/ (* 0.1715 um-scale)))
 1372 (define AlN-gam1 0)
 1373 (define AlN-sig1 1.3786)
 1374 
 1375 (define AlN-frq2 (/ (* 15.03 um-scale)))
 1376 (define AlN-gam2 0)
 1377 (define AlN-sig2 3.861)
 1378 
 1379 (define AlN-susc-o
 1380   (list
 1381    (make lorentzian-susceptibility
 1382      (frequency AlN-frq1) (gamma AlN-gam1) (sigma-diag (vector3* AlN-sig1 (vector3 1 1 0))))
 1383    (make lorentzian-susceptibility
 1384      (frequency AlN-frq2) (gamma AlN-gam2) (sigma-diag (vector3* AlN-sig2 (vector3 1 1 0))))))
 1385 
 1386 (define AlN-frq1 (/ (* 0.1746 um-scale)))
 1387 (define AlN-gam1 0)
 1388 (define AlN-sig1 1.6173)
 1389 
 1390 (define AlN-frq2 (/ (* 15.03 um-scale)))
 1391 (define AlN-gam2 0)
 1392 (define AlN-sig2 4.139)
 1393 
 1394 (define AlN-susc-e
 1395   (list
 1396    (make lorentzian-susceptibility
 1397      (frequency AlN-frq1) (gamma AlN-gam1) (sigma-diag (vector3* AlN-sig1 (vector3 0 0 1))))
 1398    (make lorentzian-susceptibility
 1399      (frequency AlN-frq2) (gamma AlN-gam2) (sigma-diag (vector3* AlN-sig2 (vector3 0 0 1))))))
 1400 
 1401 (define AlN-aniso (make medium
 1402              (epsilon-diag 3.1399 3.1399 3.0729)
 1403              (E-susceptibilities (append AlN-susc-o AlN-susc-e))))
 1404 
 1405 ;------------------------------------------------------------------
 1406 ; alumina/sapphire (Al2O3) from I.H. Malitson and M.J. Dodge, J. Optical Society of America, Vol. 62, pp. 1405, 1972
 1407 ; ref: https://refractiveindex.info/?shelf=main&book=Al2O3&page=Malitson-o
 1408 ; ref: https://refractiveindex.info/?shelf=main&book=Al2O3&page=Malitson-e
 1409 ; wavelength range: 0.2 - 5 um
 1410 
 1411 ;; NOTE: ordinary (o) axes in X and Y, extraordinary (e) axis in Z
 1412 
 1413 (define Al2O3-frq1 (/ (* 0.0726631 um-scale)))
 1414 (define Al2O3-gam1 0)
 1415 (define Al2O3-sig1 1.4313493)
 1416 
 1417 (define Al2O3-frq2 (/ (* 0.1193242 um-scale)))
 1418 (define Al2O3-gam2 0)
 1419 (define Al2O3-sig2 0.65054713)
 1420 
 1421 (define Al2O3-frq3 (/ (* 18.02825 um-scale)))
 1422 (define Al2O3-gam3 0)
 1423 (define Al2O3-sig3 5.3414021)
 1424 
 1425 (define Al2O3-susc-o
 1426   (list
 1427    (make lorentzian-susceptibility
 1428      (frequency Al2O3-frq1) (gamma Al2O3-gam1) (sigma-diag (vector3* Al2O3-sig1 (vector3 1 1 0))))
 1429    (make lorentzian-susceptibility
 1430      (frequency Al2O3-frq2) (gamma Al2O3-gam2) (sigma-diag (vector3* Al2O3-sig2 (vector3 1 1 0))))
 1431    (make lorentzian-susceptibility
 1432      (frequency Al2O3-frq3) (gamma Al2O3-gam3) (sigma-diag (vector3* Al2O3-sig3 (vector3 1 1 0))))))
 1433 
 1434 (define Al2O3-frq1 (/ (* 0.0740288 um-scale)))
 1435 (define Al2O3-gam1 0)
 1436 (define Al2O3-sig1 1.5039759)
 1437 
 1438 (define Al2O3-frq2 (/ (* 0.1216529 um-scale)))
 1439 (define Al2O3-gam2 0)
 1440 (define Al2O3-sig2 0.55069141)
 1441 
 1442 (define Al2O3-frq3 (/ (* 20.072248 um-scale)))
 1443 (define Al2O3-gam3 0)
 1444 (define Al2O3-sig3 6.5927379)
 1445 
 1446 (define Al2O3-susc-e
 1447   (list
 1448    (make lorentzian-susceptibility
 1449      (frequency Al2O3-frq1) (gamma Al2O3-gam1) (sigma-diag (vector3* Al2O3-sig1 (vector3 0 0 1))))
 1450    (make lorentzian-susceptibility
 1451      (frequency Al2O3-frq2) (gamma Al2O3-gam2) (sigma-diag (vector3* Al2O3-sig2 (vector3 0 0 1))))
 1452    (make lorentzian-susceptibility
 1453      (frequency Al2O3-frq3) (gamma Al2O3-gam3) (sigma-diag (vector3* Al2O3-sig3 (vector3 0 0 1))))))
 1454 
 1455 (define Al2O3-aniso (make medium
 1456               (epsilon 1.0)
 1457               (E-susceptibilities (append Al2O3-susc-o Al2O3-susc-e))))
 1458 
 1459 ;------------------------------------------------------------------
 1460 ; yttrium oxide (Y2O3) from Y. Nigara, Japanese J. of Applied Physics, Vol. 7, pp. 404-8, 1968
 1461 ; ref: https://refractiveindex.info/?shelf=main&book=Y2O3&page=Nigara
 1462 ; wavelength range: 0.25 - 9.6 um
 1463 
 1464 (define Y2O3-frq1 (/ (* 0.1387 um-scale)))
 1465 (define Y2O3-gam1 0)
 1466 (define Y2O3-sig1 2.578)
 1467 
 1468 (define Y2O3-frq2 (/ (* 22.936 um-scale)))
 1469 (define Y2O3-gam2 0)
 1470 (define Y2O3-sig2 3.935)
 1471 
 1472 (define Y2O3 (make medium (epsilon 1.0)
 1473  (E-susceptibilities
 1474   (make lorentzian-susceptibility
 1475     (frequency Y2O3-frq1) (gamma Y2O3-gam1) (sigma Y2O3-sig1))
 1476   (make lorentzian-susceptibility
 1477     (frequency Y2O3-frq2) (gamma Y2O3-gam2) (sigma Y2O3-sig2)))))
 1478 
 1479 ;------------------------------------------------------------------
 1480 ; undoped yttrium aluminum garnet (YAG) from D.E. Zelmon et al., Applied Optics, Vol. 37, 4933-5, 1998
 1481 ; ref: https://refractiveindex.info/?shelf=main&book=Y3Al5O12&page=Zelmon
 1482 ; wavelength range: 0.4 - 5.0 um
 1483 
 1484 (define YAG-frq1 (/ (* 0.1088577052853862 um-scale)))
 1485 (define YAG-gam1 0)
 1486 (define YAG-sig1 2.28200)
 1487 
 1488 (define YAG-frq2 (/ (* 16.814695953242804 um-scale)))
 1489 (define YAG-gam2 0)
 1490 (define YAG-sig2 3.27644)
 1491 
 1492 (define YAG (make medium (epsilon 1.0)
 1493  (E-susceptibilities
 1494   (make lorentzian-susceptibility
 1495     (frequency YAG-frq1) (gamma YAG-gam1) (sigma YAG-sig1))
 1496   (make lorentzian-susceptibility
 1497     (frequency YAG-frq2) (gamma YAG-gam2) (sigma YAG-sig2)))))
 1498 
 1499 ;------------------------------------------------------------------
 1500 ; cadmium telluride (CdTe) from D.T.F. Marple, J. Applied Physics, Vol. 35, pp. 539-42, 1964
 1501 ; ref: https://refractiveindex.info/?shelf=main&book=CdTe&page=Marple
 1502 ; wavelength range: 0.86 - 2.5 um
 1503 
 1504 (define CdTe-frq1 (/ (* 0.6049793384901669 um-scale)))
 1505 (define CdTe-gam1 0)
 1506 (define CdTe-sig1 1.53)
 1507 
 1508 (define CdTe (make medium (epsilon 5.68)
 1509  (E-susceptibilities
 1510   (make lorentzian-susceptibility
 1511     (frequency CdTe-frq1) (gamma CdTe-gam1) (sigma CdTe-sig1)))))