raysect / source

The main source repository for the Raysect project.
http://www.raysect.org
BSD 3-Clause "New" or "Revised" License
86 stars 23 forks source link

Proposal: volumetric scattering #418

Open MMoscheni opened 1 year ago

MMoscheni commented 1 year ago

Dear Raysect team,

currently rays fired by observers are of rectilinear trajectory, which could potentially be reflected/scattered by material surfaces (call it "superficial scattering").

Adding "volumetric scattering", i.e. simulating non-rectilinear ray trajectories within the volume of a material, could potentially be interesting. The scattering probability would generally depend on local material properties, specified by the user via a scattering_function_3d(). If material properties vary in space, then relying on adaptive integration (see this issue) would be a necessary conditon.

Quoting the wise strategy suggested by @vsnever (from this issue):

What do you think? Thank you! Cheers, Matteo

CnlPepper commented 1 year ago

Volumetric scattering is proposed for v1.0. To implement it requires a complete re-implementation of the volume integration system. This would be a significant API change and would require cherab's materials to be rewritten. See #357.