ScatteringSurfaceSample#

class ansys.speos.core.input_files.scattering_surface.ScatteringSurfaceSample(specular_reflection=100.0, specular_transmission=0.0, lambertian_reflection=0.0, lambertian_transmission=0.0, gaussian_reflection=0.0, gaussian_transmission=0.0, gaussian_fwhm_incidence_reflection=0.0, gaussian_fwhm_incidence_transmission=0.0, gaussian_fwhm_perpendicular_reflection=0.0, gaussian_fwhm_perpendicular_transmission=0.0)#

Bases: ansys.speos.core.input_files._base._ValueComparable

Scattering contributions of a surface at one angle of incidence and one wavelength.

Every contribution is a percentage of the incident light. What is left once the six contributions are summed is absorbed, see ScatteringSurfaceSample.absorption. Called without arguments, the constructor gives the sample of a new file in the Speos default scattering surface: a perfect specular reflector.

Parameters:
specular_reflectionfloat, optional

Specularly reflected part, in percent. By default, 100.0.

specular_transmissionfloat, optional

Specularly transmitted part, in percent. By default, 0.0.

lambertian_reflectionfloat, optional

Lambertian reflected part, in percent. By default, 0.0.

lambertian_transmissionfloat, optional

Lambertian transmitted part, in percent. By default, 0.0.

gaussian_reflectionfloat, optional

Gaussian reflected part, in percent. By default, 0.0.

gaussian_transmissionfloat, optional

Gaussian transmitted part, in percent. By default, 0.0.

gaussian_fwhm_incidence_reflectionfloat, optional

Full width at half maximum of the reflected Gaussian lobe in the incidence plane, in degrees. By default, 0.0.

gaussian_fwhm_incidence_transmissionfloat, optional

Full width at half maximum of the transmitted Gaussian lobe in the incidence plane, in degrees. By default, 0.0.

gaussian_fwhm_perpendicular_reflectionfloat, optional

Full width at half maximum of the reflected Gaussian lobe in the perpendicular plane, in degrees. By default, 0.0.

gaussian_fwhm_perpendicular_transmissionfloat, optional

Full width at half maximum of the transmitted Gaussian lobe in the perpendicular plane, in degrees. By default, 0.0.

Raises:
ValueError

If a percentage is outside 0 to 100 or a Gaussian width is outside 0 to 90 degrees.

Warns:
UserWarning

If computed absorption is negative, excluding rounding noise within 1e-9 percent.

Parameters:
  • specular_reflection (float)

  • specular_transmission (float)

  • lambertian_reflection (float)

  • lambertian_transmission (float)

  • gaussian_reflection (float)

  • gaussian_transmission (float)

  • gaussian_fwhm_incidence_reflection (float)

  • gaussian_fwhm_incidence_transmission (float)

  • gaussian_fwhm_perpendicular_reflection (float)

  • gaussian_fwhm_perpendicular_transmission (float)

Notes

Construction and property assignments validate before storing a value. Negative absorption from measurement or rounding errors is preserved with a warning. Set specular_reflection explicitly when giving other contributions, since its default already reflects all the light.

Overview#

validate

Check the contributions of the sample.

specular_reflection

Specularly reflected part, in percent.

specular_transmission

Specularly transmitted part, in percent.

lambertian_reflection

Lambertian reflected part, in percent.

lambertian_transmission

Lambertian transmitted part, in percent.

gaussian_reflection

Gaussian reflected part, in percent.

gaussian_transmission

Gaussian transmitted part, in percent.

gaussian_fwhm_incidence_reflection

Reflected Gaussian FWHM in the incidence plane, in degrees.

gaussian_fwhm_incidence_transmission

Transmitted Gaussian FWHM in the incidence plane, in degrees.

gaussian_fwhm_perpendicular_reflection

Reflected Gaussian FWHM in the perpendicular plane, in degrees.

gaussian_fwhm_perpendicular_transmission

Transmitted Gaussian FWHM in the perpendicular plane, in degrees.

absorption

Absorbed part of the incident light, in percent.

Import detail#

from ansys.speos.core.input_files.scattering_surface import ScatteringSurfaceSample

Property detail#

property ScatteringSurfaceSample.specular_reflection: float#

Specularly reflected part, in percent.

Parameters:
valuefloat

New specularly reflected part, in percent.

Returns:
float

Contribution between 0 and 100.

property ScatteringSurfaceSample.specular_transmission: float#

Specularly transmitted part, in percent.

Parameters:
valuefloat

New specularly transmitted part, in percent.

Returns:
float

Contribution between 0 and 100.

property ScatteringSurfaceSample.lambertian_reflection: float#

Lambertian reflected part, in percent.

Parameters:
valuefloat

New lambertian reflected part, in percent.

Returns:
float

Contribution between 0 and 100.

property ScatteringSurfaceSample.lambertian_transmission: float#

Lambertian transmitted part, in percent.

Parameters:
valuefloat

New lambertian transmitted part, in percent.

Returns:
float

Contribution between 0 and 100.

property ScatteringSurfaceSample.gaussian_reflection: float#

Gaussian reflected part, in percent.

Parameters:
valuefloat

New gaussian reflected part, in percent.

Returns:
float

Contribution between 0 and 100.

property ScatteringSurfaceSample.gaussian_transmission: float#

Gaussian transmitted part, in percent.

Parameters:
valuefloat

New gaussian transmitted part, in percent.

Returns:
float

Contribution between 0 and 100.

property ScatteringSurfaceSample.gaussian_fwhm_incidence_reflection: float#

Reflected Gaussian FWHM in the incidence plane, in degrees.

Parameters:
valuefloat

New full width at half maximum of the reflected Gaussian lobe in the incidence plane, in degrees.

Returns:
float

Full width at half maximum between 0 and 90 degrees.

property ScatteringSurfaceSample.gaussian_fwhm_incidence_transmission: float#

Transmitted Gaussian FWHM in the incidence plane, in degrees.

Parameters:
valuefloat

New full width at half maximum of the transmitted Gaussian lobe in the incidence plane, in degrees.

Returns:
float

Full width at half maximum between 0 and 90 degrees.

property ScatteringSurfaceSample.gaussian_fwhm_perpendicular_reflection: float#

Reflected Gaussian FWHM in the perpendicular plane, in degrees.

Parameters:
valuefloat

New full width at half maximum of the reflected Gaussian lobe in the perpendicular plane, in degrees.

Returns:
float

Full width at half maximum between 0 and 90 degrees.

property ScatteringSurfaceSample.gaussian_fwhm_perpendicular_transmission: float#

Transmitted Gaussian FWHM in the perpendicular plane, in degrees.

Parameters:
valuefloat

New full width at half maximum of the transmitted Gaussian lobe in the perpendicular plane, in degrees.

Returns:
float

Full width at half maximum between 0 and 90 degrees.

property ScatteringSurfaceSample.absorption: float#

Absorbed part of the incident light, in percent.

Returns:
float

Complement to 100 of the six reflection and transmission contributions.

Notes

This property is read-only.

Method detail#

ScatteringSurfaceSample.validate()#

Check the contributions of the sample.

Raises:
ValueError

If a contribution is outside the 0 to 100 range, a full width at half maximum is outside the 0 to 90 degrees range.

Warns:
UserWarning

If computed absorption is negative, excluding rounding noise within 1e-9 percent.