scopesim.optics.surface.SpectralSurface#
- class scopesim.optics.surface.SpectralSurface(filename=None, cmds=None, **kwargs)#
Bases:
objectInitialised 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.
- __init__(filename=None, cmds=None, **kwargs)#
Methods
__init__([filename, cmds])from_meta(key[, default_unit])Convert a specific value in the meta dict to a
Quantity.Attributes
areaLook for an emission array in self.meta.
emissivitymirror_anglereflectionthroughputtransmissionwavelength- property emission#
Look 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 indeg_C, unless it is au.Quantitywith temperature unit attached. Return units are inPHOTLAM arcsec^-2, even thougharcsec^-2is not given.