Skip to content

Proposal: inhomogeneous absorption #417

Description

@MMoscheni

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 a SpectralFunction.

What do you think? Thank you!
Cheers,
Matteo

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions