Skip to content

Create I19 attenuation sub-systems #2123

Description

@CoePaul

Addresses #1007
Creating the dodal device which serves as the entire transmission system

This splits naturally ( under the bonnet / hood ) into two sub-systems
as per the business logic requirements requested by the scientist.

https://confluence.diamond.ac.uk/x/4Iq4Fw

Use either the wheel / aluminium wedge sub-system
or the resin wedge system ( or neither ).

Creating therefore each sub-system with these capabilities:

A sub-system which can:

a) report what the sub-system attenuation would be for any input x-ray energy, motor configuration
-- this should not ignore invalid options from business logic - but instead just calculate the attenuation
-- it will then be able to report the live attenuation if it finds
the motors in a non-canonical state
-- this same functionality is then perfectly primed to answer questions about
the current attenuation at the current energy and current motor positions
because You just feed those into the function arguments

b) predict what the fastest-closest match attenuation (would be hypothetically), given
-- a set of motor positions
-- an x-ray energy

  • the energy and motor positions need not be the current ones - the calculator should just calculate

c) report back motor positions needed to achieve a given attenuation request

d) answer thresholding questions needed for the business logic as it decides which sub-systems to use

N.B. Given that the lingua franca of the attenuation business logic is the logarithmic Bn unit,
all attenuation calculation results and requests will be made in these units.
( This is the whole reason that unit was invented in the first place )

Acceptance Criteria

  • That an attenuation sub-system class exists with the above listed capabilities as demonstrated in tests

Metadata

Metadata

Assignees

Fields

No fields configured for Feature.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions