Skip to content

Implement 3D voxelization #32

Description

@rsweeney-cfs

Problem: Presently, Emis3D calls Cherab to observe every new radiation structure that is desired. Generating new sets of radiation distributions for new plasmas with different shapes and q95 is relatively time-intensive, preventing the use of Emis3D across large datasets. There is also an opportunity for Emis3D to leverage disruption reconstructions to build RadDists time-step by time-step, and at present this would be a daunting endeavor that might only be feasible on a handful of discharges.

Proposed Solution: A relatively simple solution is to use Cherab to observe a dense 3D grid of voxels that fill the entire tokamak. This is done once per tokamak. This observe would be very time-intensive, but it only has to be done once, and @MishaVeldhoen has identified ways to improve the way that Emis3D uses Raysect. The 3D grid is reduced to a matrix of couplings between each voxel and each bolometer. All "observes" of RadDists are then simple matrix multiplications with an expected speed up of many orders of magnitude. Deploying Emis3D on large databases, and leveraging disruption time-evolving equilibria becomes possible.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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