The Only Native GPU Platform
For Thin Film Optimization
Accelerate your Thin Film Design Process and reduce time-to-market
while ensuring compliance with key requirements.
Technical
Cauchy:
n(\lambda_0)=A_0+\sum_{i=1}^nB_i\lambda_0^{Ci}
Conrady:
n(\lambda_0) = A_0+\frac{A_1}{\lambda_0}+\frac{A_2}{\lambda_0^{3.5}}
Exotic:
n^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(\lambda_0)-1=A_0+\sum_{i=0}^n\large\frac{B_i}{C_i-\lambda_0^{-2}}
Lorentz-Drude:
\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(\lambda_0) = A_0+\frac{A_1}{\lambda_0-A_2}
Hartmann-Modified:
n(\lambda_0) = A_0+\frac{A_1}{(\lambda_0-A_2)^2}
Herzberger:
n(\lambda_0) = A_0+\frac{A_1}{\lambda_0^2-0.028}+A_2(\frac{1}{\lambda_0^2-0.028})^2+A_3\lambda_0^2+A_4\lambda_0^4+A_5\lambda_0^6
Schoitt-Briot:
n^2(\lambda_0)=A_0+A_1\lambda_0^2+\sum_{i=1}^n\large\frac{B_i}{\lambda_0^{2i}}
Sellmeier:
n^2(\lambda_0)=A_0+\sum_{i=0}^n\large\frac{B_i\lambda_0^2}{\lambda_0^2-C_i}
Sellmeier-Modified:
n^2(\lambda_0)=A_0+\sum_{i=0}^n\frac{B_i\lambda_0^2}{\lambda_0^2-C_i^2}
Polynomial:
n^2(\lambda_0) = A_0+\sum_{ i = 1 }^n\large B_i\lambda_0^{ C_{ i } }
RefractiveIndexInfo:
n^2(\lambda) = 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}}
Cauchy:
k(\lambda_0)=A_0e^{A_1(\frac{1}{\lambda_0}-\frac{1}{A_2})}
Exponential:
k(\lambda_0)=A_0e^{\frac{A_1}{\lambda_0}+A_2\lambda_0}
Lorentz-Drude:
\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(\lambda_0)=A_0+\sum_{i=1}^nB_i\lambda_0^{Ci}
Sellmeier:
k(\lambda_0)={\frac{A_0}{A_1A_2+\frac{A_3}{\lambda_0}+\frac{1}{\lambda_0^3}}}
R — Reflectance (s-pol, p-pol, avg)
T — Transmittance (s-pol, p-pol, avg)
A — Absorptance (s-pol, p-pol, avg)
pR — Phase Shift on Reflection (s-pol, p-pol,)
pT — Phase Shift on Transmission (s-pol, p-pol)
GDR —Group Delay on Reflection (s-pol, p-pol)
GDT —Group Delay on Transmission (s-pol, p-pol)
GDDR — Group Delay Dispersion on Reflection (s-pol, p-pol)
GDDT — Group Delay Dispersion on Transmission (s-pol, p-pol)
LA — Layer Absorptance (s-pol, p-pol, avg)
LOA — Local Absorption (s-pol, p-pol, avg)
E — Electric Field (s-pol, p-pol, avg)
Quadratic :
F=\sqrt{\frac{1}{m}\sum_{i =1}w_i\lbrack\frac{S_i-\hat{S_i}}{\Delta_T}\rbrack^2}
Absolut:
F=\frac{1}{m}\sum_{i =1}w_i\lbrack\frac{\vert{S_i-\hat{S_i}\vert}}{\Delta_T}\rbrack
Max:
F=\max{\lbrack{w_i}\frac{\vert{S_i-\hat{S_i}\vert}}{\Delta_T}: 1..m\rbrack}
Coherent Stack — All optical characteristics.
Incoherent Stack — R/T/A.
Hybrid (Mixed) Stack — R/T/A.
Adam — Adaptive Momentum Estimation
Needle — Inserts a zero thickness layer at optimal position followed by a refinement algorithm.
AnyNeedle — Propietary, inserts a finite thickness layer at optimal position.
BranchAndBound — Global optimizer with mathematical guarantees regarding global optimality
ParticleSwarmOptimization — A population-based global optimizer that guides a swarm of candidate solutions through the search space using individual and social intelligence
FilmOptima employs a relational SQL database to ensure data integrity and efficient storage. This structure normalizes data, meaning common entities like general targets or materials are stored only once and referenced across multiple user designs. To preserve data consistency, the system prevents modifications to any entity that is actively referenced in other designs, preventing unintended cascading effects.
Flexible Optimization Control
FilmOptima puts you in complete control of the optimization process. 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, and intelligently concludes the process when no further improvements can be made. You dictate the “how” and “when” of perfecting your design.
FilmOptima allows you to queue multiple designs for sequential processing, perfect for running long optimizations overnight or while you focus on other tasks. Maximize your productivity by submitting optimization tasks to run automatically. You can even test and compare different optimization strategies on the same design by adding them to the queue, revealing the most effective approach.