scopesim.optics.surface module

class scopesim.optics.surface.PoorMansSurface(emission, throughput, meta)[source]

Bases: object

Solely used by SurfaceList

class scopesim.optics.surface.SpectralSurface(filename=None, **kwargs)[source]

Bases: object

Initialised by a file containing one or more of the following columns: transmission, emissivity, reflection. The column wavelength must be given. Alternatively kwargs for the above mentioned quantities can be passed as arrays. If they are not Quantities, then a unit should also be passed with the <array_name>_unit syntax (i.e. emission_unit or wavelength_unit)

If temperature is not given as a Quantity, it defaults to degrees Celsius.

property area
property emission

Looks for an emission array in self.meta. If it doesn’t find this, it defaults to creating a blackbody and multiplies this by the emissivity. Assumption is that self.meta[“temperature”] is in deg_C, unless it is a u.Quantity with attached temperature unit. Return units are in PHOTLAM arcsec^-2, even though arcsec^-2 is not given

property emissivity
from_meta(key, default_unit=None)[source]

Converts a specific value in the meta dict to a Quantity

Parameters:
keystr

Which key to pull from self.meta

default_unitstr, Unit

In case self.meta doesn’t contain a unit for the desired key

Returns:
meta_quantityQuantity
property mirror_angle
property reflection
property throughput
property transmission
property wavelength