Imaginary refractive index to absorption converter
The attached FRED script file will retrieve the imaginary refractive index value for a Sampled Material type, create corresponding wavelength and absorption coefficient pairs for that material, and set the absorption flag active.
In this implementation the conversion between imaginary refractive index and absorption coefficient includes a scale factor assuming that the system units are in millimeters.
Dim matID As Long, numWvls As Long, ii As Long Dim wvl As Double, rl As Double, im As Double 'this is the sampled material we are converting matID = FindMaterial( "Material 1" ) 'loop over wavelengths, get imaginary refractive index numWvls = GetSampledMaterialWavelengthCount( matID ) For ii = 0 To numWvls-1 GetSampledMaterialIthWavelength matID, ii, wvl, rl, im 'use 4*pi*k/lambda, assuming units are in mm SetMaterialAbsorb( matID, wvl, 4*Acos(-1)*im/(wvl*10^-3) ) Next ii 'now set the absorption flag for the material to be active SetMaterialAbsorbFlag matID, True 'and that we are defining absorption coefficients, not Internal Transmittance SetMaterialAbsorbRefDist matID, 0<br><br>