refellips.reflect_modelSE

refellips.reflect_modelSE.Delta_Psi_TMM(AOI, layers, wavelength, delta_offset, reflect_delta=False)

Get delta and psi using the transfer matrix method.

Parameters:
  • AOI (array_like) – the angle of incidence values required for the calculation. Units = degrees

  • Wavelength (float) – Wavelength of light. Units = nm

  • layers (np.ndarray) –

    coefficients required for the calculation, has shape (2 + N, 4), where N is the number of layers.

    • layers[0, 1]

      refractive index of fronting

    • layers[0, 2]

      extinction coefficent of fronting

    • layers[N, 0]

      thickness of layer N

    • layers[N, 1]

      refractive index of layer N

    • layers[N, 2]

      extinction coefficent of layer N

    • layers[N, 3]

      roughness between layer N-1/N (IGNORED!)

    • layers[-1, 1]

      refractive index of backing

    • layers[-1, 2]

      extinction coefficent of backing

    • layers[-1, 3]

      roughness between backing and last layer (IGNORED!)

Returns:

  • Psi (np.ndarray) – Calculated Psi values for each aoi value.

  • Delta (np.ndarray) – Calculated Delta values for each aoi value.

class refellips.reflect_modelSE.ReflectModelSE(structure, delta_offset=0, name=None)

Bases: object

Parameters:
  • structure (refellips.StructureSE) – The interfacial structure.

  • name (str, optional) – Name of the Model

logp()

Additional log-probability terms for the reflectivity model. Do not include log-probability terms for model parameters, these are automatically included elsewhere.

Returns:

logp – log-probability of structure.

Return type:

float

model(wavelength_aoi, p=None)

Calculate the ellipsometric values (psi, delta) of this model

Parameters:
  • wavelength_aoi (array-like) – An array of shape (N, 2) corresponding to the wavelengths (nm) and angle of incidences (deg) the ellipsometric measurements were performed at.

  • p (refnx.analysis.Parameters, optional) – parameters required to calculate the model

Returns:

psi, delta – Calculated ellipsometric parameters

Return type:

np.ndarray

property parameters

refnx.analysis.Parameters - parameters associated with this model.

property structure

refnx.reflect.Structure - object describing the interface of a reflectometry sample.

refellips.reflect_modelSE.coh_tmm(n_list, d_list, th_0, lam_vac)

Code adapted by that of Byrnes - see https://arxiv.org/abs/1603.02720

n_list is the list of refractive indices, in the order that the light would pass through them. The 0’th element of the list should be the semi-infinite medium from which the light enters, the last element should be the semi- infinite medium to which the light exits (if any exits).

th_0 is the angle of incidence: 0 for normal, pi/2 for glancing. Remember, for a dissipative incoming medium (n_list[0] is not real), th_0 should be complex so that n0 sin(th0) is real (intensity is constant as a function of lateral position).

d_list is the list of layer thicknesses (front to back). Should correspond one-to-one with elements of n_list. First and last elements should be “inf”.

lam_vac is vacuum wavelength of the light.

refellips.reflect_modelSE.interface_r_p(n_i, n_f, th_i, th_f)
refellips.reflect_modelSE.interface_r_s(n_i, n_f, th_i, th_f)
refellips.reflect_modelSE.interface_t_p(n_i, n_f, th_i, th_f)
refellips.reflect_modelSE.interface_t_s(n_i, n_f, th_i, th_f)