Features

Dispersion Formulas

FilmOptima provides a range of dispersion models for both the real and imaginary parts of the refractive index. If none of the analytical models are suitable, tabulated data can be used instead, with intermediate values interpolated using cubic splines.

Real

  • Constant: n=A0n=A_0
  • Cauchy: n(λ0)=A0+i=1nBiλ0Cin(\lambda_0)=A_0+\sum_{i=1}^nB_i\lambda_0^{Ci}
  • Conrady: n(λ0)=A0+A1λ0+A2λ03.5n(\lambda_0)=A_0+\frac{A_1}{\lambda_0}+\frac{A_2}{\lambda_0^{3.5}}
  • Exotic: n2(λ0)=A0+A1λ02A2+A3(λ0A4)(λ0A4)2+A5n^2(\lambda_0)=A_0+\frac{A_1}{\lambda_0^2-A_2}+\frac{A_3(\lambda_0-A_4)}{(\lambda_0-A_4)^2+A_5}
  • Gases: n(λ0)1=A0+i=0nBiCiλ02n(\lambda_0)-1=A_0+\sum_{i=0}^n\frac{B_i}{C_i-\lambda_0^{-2}}
  • Lorentz-Drude: Re(ϵr(ω))=ϵr()+ωp2i=1Mfiω0,i2ω2+ȷωΓi\operatorname{Re}(\epsilon_r(\omega))=\epsilon_r(\infty)+\omega_p^2\sum_{i=1}^M\frac{f_i}{\omega_{0,i}^2-\omega^2+\jmath\omega\Gamma_i}
  • Hartmann: n(λ0)=A0+A1λ0A2n(\lambda_0)=A_0+\frac{A_1}{\lambda_0-A_2}
  • Hartmann-Modified: n(λ0)=A0+A1(λ0A2)2n(\lambda_0)=A_0+\frac{A_1}{(\lambda_0-A_2)^2}
  • Herzberger: n(λ0)=A0+A1λ020.028+A2(1λ020.028)2+A3λ02+A4λ04+A5λ06n(\lambda_0)=A_0+\frac{A_1}{\lambda_0^2-0.028}+A_2\left(\frac{1}{\lambda_0^2-0.028}\right)^2+A_3\lambda_0^2+A_4\lambda_0^4+A_5\lambda_0^6
  • Schoitt-Briot: n2(λ0)=A0+A1λ02+i=1nBiλ02in^2(\lambda_0)=A_0+A_1\lambda_0^2+\sum_{i=1}^n\frac{B_i}{\lambda_0^{2i}}
  • Sellmeier: n2(λ0)=A0+i=0nBiλ02λ02Cin^2(\lambda_0)=A_0+\sum_{i=0}^n\frac{B_i\lambda_0^2}{\lambda_0^2-C_i}
  • Sellmeier-Modified: n2(λ0)=A0+i=0nBiλ02λ02Ci2n^2(\lambda_0)=A_0+\sum_{i=0}^n\frac{B_i\lambda_0^2}{\lambda_0^2-C_i^2}
  • Polynomial: n2(λ0)=A0+i=1nBiλ0Cin^2(\lambda_0)=A_0+\sum_{i=1}^nB_i\lambda_0^{C_i}
  • RefractiveIndexInfo: n2(λ0)=A0+B1λ0C1λ02B2C2+B3λ0C3λ02B4C4+B5λ0C5+B6λ0C6+B7λ0C7+B8λ0C8n^2(\lambda_0)=A_0+\frac{B_1\lambda_0^{C_1}}{\lambda_0^2-B_2^{C_2}}+\frac{B_3\lambda_0^{C_3}}{\lambda_0^2-B_4^{C_4}}+B_5\lambda_0^{C_5}+B_6\lambda_0^{C_6}+B_7\lambda_0^{C_7}+B_8\lambda_0^{C_8}
  • Datatable: cubic-spline interpolated\text{cubic-spline interpolated}

Imaginary

  • Non-Absorptive: k=0k=0
  • Constant: k=A0k=A_0
  • Cauchy: k(λ0)=A0eA1(1λ01A2)k(\lambda_0)=A_0e^{A_1(\frac{1}{\lambda_0}-\frac{1}{A_2})}
  • Exponential: k(λ0)=A0eA1λ0+A2λ0k(\lambda_0)=A_0e^{\frac{A_1}{\lambda_0}+A_2\lambda_0}
  • Lorentz-Drude: Im(ϵr(ω))=ϵr()+ωp2i=1Mfiω0,i2ω2+ȷωΓi\operatorname{Im}(\epsilon_r(\omega))=\epsilon_r(\infty)+\omega_p^2\sum_{i=1}^M\frac{f_i}{\omega_{0,i}^2-\omega^2+\jmath\omega\Gamma_i}
  • Polynomial: k(λ0)=A0+i=1nBiλ0Cik(\lambda_0)=A_0+\sum_{i=1}^nB_i\lambda_0^{Ci}
  • Sellmeier: k(λ0)=A0A1A2+A3λ0+1λ03k(\lambda_0)=\frac{A_0}{A_1A_2+\frac{A_3}{\lambda_0}+\frac{1}{\lambda_0^3}}
  • Datatable: cubic-spline interpolated\text{cubic-spline interpolated}

Optical Characteristics

Conventional, phase, and layer-specific outputs available during optimization and analysis.

Conventional

  • R - Reflectance (s-pol, p-pol, avg)
  • T - Transmittance (s-pol, p-pol, avg)
  • A - Absorptance (s-pol, p-pol, avg)

Phase

  • pR / pT - Phase Shift (s-pol, p-pol)
  • GDR / GDT - Group Delay
  • GDDR / GDDT - Group Delay Dispersion

Layer-Specific

  • LA - Layer Absorptance
  • LOA - Local Absorption
  • E - Electric Field

Coherence Models

Select the propagation model that matches your stack's physical coherence behavior.

Coherent Stack

All optical characteristics.

Incoherent Stack

R/T/A.

Hybrid (Mixed) Stack

R/T/A.

Algorithms

Explore FilmOptima's algorithm portfolio by category and jump to detailed documentation for each method.

Refinement

Synthesis

Global Optimization

How It Works

Datamanagement

FilmOptima employs a relational SQL database to ensure data integrity and efficient storage. Common entities like general targets or materials are stored only once and referenced across multiple user designs.

Flexible Optimization Control

Define your goals (e.g., max layers, max optimization duration) as stopping conditions, and hand-pick the algorithms to use. Our engine runs your chosen algorithms in round-robin manner.

Hands-Free Queue

Queue multiple designs for sequential processing, perfect for running long optimizations overnight or while you focus on other tasks.