Thanks to visit codestin.com
Credit goes to bornagainproject.org

Rough interfaces

Rough interfaces modify the Fresnel transmission and reflection coefficients, and cause diffuse scattering.

Roughness class

The rough interface constructor has the signatures

roughness = ba.Roughness(interface_model, transient)
roughness = ba.Roughness(interface_model, transient, crosscorrelation)

For the three arguments, see the following three pages:

Usage

Each layer (except for the semi-infinite top layer) supports an optional top roughness property that can be set as follows:

autocorr = ba.SelfAffineFractalModel(vertical_rms, hurst, horizontal_correlation_length)
transient = ba.TanhTransient()
crosscorrelation = ba.CommonDepthCrosscorrelation(vertical_correlation_length)

roughness = ba.Roughness(autocorr, transient, crosscorrelation)
layer = ba.Layer(material, thickness, roughness) # roughness refers to top interface

For updating from BornAgain <= 21, see the BornAgain 22 release letter.

Examples

Examples