Programming Reference for VirtualLab Fusion  2022.1
Static Public Member Functions | List of all members
VL_Structures Class Reference

This class provides methods for accessing optical interfaces, materials, media, stacks as well as Boundary Responses. More...

Static Public Member Functions

static ComplexAmplitude ApplyBoundaryResponse (ComplexAmplitude incidentField, BoundaryResponseBase boundaryResponse, VectorD samplingDistance)
 Applies a boundary response on a harmonic field. More...
 
static HarmonicFieldsSet ApplyBoundaryResponse (HarmonicFieldsSet incidentField, BoundaryResponseBase boundaryResponse, VectorD samplingDistance)
 Applies a boundary response on a harmonic fields sets. More...
 
static SampledTransitionPointLayers2D GenerateTransitionPointLayers2DFromStack (OpticalStack stackToConvert, HomogeneousMedium mediumInfront, HomogeneousMedium mediumBehind, double wavelength, double accuracyTPL=1.0, bool reverseLayers=false)
 This method converts an optical stack to the y-invariant "transition point layers" structure definition that is used by the FMM. More...
 
static TransitionPointLayers3D GenerateTransitionPointLayers3DFromStack (OpticalStack stackToConvert, HomogeneousMedium mediumInfront, HomogeneousMedium mediumBehind, double wavelength, double accuracyTPL=1.0, bool reverseLayers=false)
 This method converts an optical stack to the three-dimensional "transition point layers" structure definition that is used by the FMM. More...
 

Detailed Description

This class provides methods for accessing optical interfaces, materials, media, stacks as well as Boundary Responses.

Member Function Documentation

◆ ApplyBoundaryResponse() [1/2]

static ComplexAmplitude ApplyBoundaryResponse ( ComplexAmplitude  incidentField,
BoundaryResponseBase  boundaryResponse,
VectorD  samplingDistance 
)
static

Applies a boundary response on a harmonic field.

Parameters
incidentFieldThe incident field on which the boundary response shall be applied.
boundaryResponseThe boundary response to apply.
samplingDistanceThe sampling distance of the resulting field. To avoid aliasing effects, the sampling distance should be a divisor of the sampling distance of the incident field. If necessary, the incident field is resampled to this sampling distance using the Accelerated Sinc-Interpolation.
Returns
A harmonic field where the boundary response has been applied on the incident field.

◆ ApplyBoundaryResponse() [2/2]

static HarmonicFieldsSet ApplyBoundaryResponse ( HarmonicFieldsSet  incidentField,
BoundaryResponseBase  boundaryResponse,
VectorD  samplingDistance 
)
static

Applies a boundary response on a harmonic fields sets.

Parameters
incidentFieldThe incident field on which the boundary response shall be applied.
boundaryResponseThe boundary response to apply.
samplingDistanceThe sampling distance of all member fields the resulting fields set. To avoid aliasing effects, the sampling distance should be a divisor of the sampling distance of the incident fields. If necessary, the incident fields are resampled to this sampling distance using the Accelerated Sinc-Interpolation.
Returns
A harmonic fields set where the boundary response has been applied on the incident field.

◆ GenerateTransitionPointLayers2DFromStack()

static SampledTransitionPointLayers2D GenerateTransitionPointLayers2DFromStack ( OpticalStack  stackToConvert,
HomogeneousMedium  mediumInfront,
HomogeneousMedium  mediumBehind,
double  wavelength,
double  accuracyTPL = 1.0,
bool  reverseLayers = false 
)
static

This method converts an optical stack to the y-invariant "transition point layers" structure definition that is used by the FMM.

Parameters
stackToConvertThe optical stack that shall be converted.
mediumBehindThe medium behind the stack.
mediumInfrontThe medium in front of the stack, i.e. the medium in which the incoming light is defined.
wavelengthThe wavelength that should be used for calculating the refractive indices.
accuracyTPLOptional accuracy factor that is used for the generation of both the layers and the transition points. If not specified, a value of 1 is taken.
reverseLayersIf this optional parameter is set to true, the order of the layers is reversed, i. e. the stack is orientated towards the incoming light.
Returns
The "transition point layers" structure definition that can used by the two-dimensional FMM.

◆ GenerateTransitionPointLayers3DFromStack()

static TransitionPointLayers3D GenerateTransitionPointLayers3DFromStack ( OpticalStack  stackToConvert,
HomogeneousMedium  mediumInfront,
HomogeneousMedium  mediumBehind,
double  wavelength,
double  accuracyTPL = 1.0,
bool  reverseLayers = false 
)
static

This method converts an optical stack to the three-dimensional "transition point layers" structure definition that is used by the FMM.

Parameters
stackToConvertThe optical stack that shall be converted.
mediumBehindThe medium behind the stack.
mediumInfrontThe medium in front of the stack, i.e. the medium in which the incoming light is defined.
wavelengthThe wavelength that should be used for calculating the refractive indices.
accuracyTPLOptional accuracy factor that is used for the generation of both the layers and the transition points. If not specified, a value of 1 is taken.
reverseLayersIf this optional parameter is set to true, the order of the layers is reversed, i. e. the stack is orientated towards the incoming light.
Returns
The "transition point layers" structure definition that can used by the three-dimensional FMM.