-
Notifications
You must be signed in to change notification settings - Fork 25
Description
Dear Raysect team,
currently Raysect provides a class to create an inhomogeneous radiation emitter, i.e. InhomogeneousVolumeEmitter.
By relying on the linear attenuation law (Lambert-Beer), the integrated emission between two consecutive samples in InhomogeneousVolumeEmitter can be attenuated of an appropriate factor depending on local material properties (specified by an absorption_function_3d() to be defined by the user). This would therefore model an absorbing material, e.g. a plasma with respect to the radiation emission therein.
Quoting the wise strategy suggested by @vsnever (from this issue):
-
I think inhomogeneous emitter and inhomogeneous absorber are two different materials and should be implemented independently. If material combines both properties, it can be implemented using the
Add()modifier with an emitter as the first argument. -
In general, absorption depends on wavelength, so
material.absorption_function_3d()should return aSpectralFunction.
What do you think? Thank you!
Cheers,
Matteo