-
Notifications
You must be signed in to change notification settings - Fork 2
Implementation of full ray-tracing event processing #12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…mented at TRestAxionEventProcess
…mented at TRestAxionEventProcess
|
Hi Javi, this looks real good!!
|
Hi Jaime, I have updated How do you get the relation between the Yaw angle and the expected offset? We need to discuss about it, but what I am doing is to get the spot at Z=7500mm, not sure what additional rotation would be required. So, what I call here focal is Z=7500mm (the distance to the center of the optics). This is defined at As you see, this will generate two observables at the analysis tree, |
|
Ok, I just added a new parameter inside In other words, if If Here it is an image when |
ruzarmen
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perfect!
|
Maybe make the pitch angle |

The implementation baseline will be defined at
pipeline/axionGenerator.rml. For the moment, theopticsBench.rmlray tracer to test optics implementations have been implemented at the present PR.Simply, test the processing using
Some variables that can be modified are
REST_DEV,REST_YAW,REST_PITCH,REST_NEVENTSin order to produce different datasets systematically.One could then do:
in order to generate a file where the optics was deviated by 0.01 degrees in the yaw axis.
There is also an additional RML containing a
TRestAnalysisPlotdefinition that can be used together with the previous generated ROOT file to produce few systematic plots.It will produce the following figure:
List of changes at this PR:
Added new
TRestAxionEventProcess::TRestEventProcessencapsulation to add capability to processes to rotate or translate a ray-tracing component. Metadata members inside this class added to keep information of rotation/translation parameters.TRestAxionEventProcess::BeginOfEventProcessandTRestAxionEventProcess::EndOfEventProcesshave been implemented to produce rotation and translation of the particular component. The relevant metadata members are:fYawandfPitchangles measured in the default radians unit.fCentergiving a physical position to the helioscope component defined by each process.TRestAxionGeneratorProcesshas been re-impemented to connect withTRestAxionSolarFlux.solarFlux, but if defined asflatit will just launch particles parallel to the z-axis, and spread on the area defined byfTargetRadius. The energy values in theflatcase are distributed in the range(fMinEnergy,fMaxEnergy).TRestAxionDeviationProcessnew process added to allow including an intermediate additional random deviation to the particle. It can be combined withflatdistribution to produce an artificial angular distribution.TRestAxionTransportProcessnew process added to move the particle to a given z-position following the direction of the particle at the present state.TRestAxionFieldPropagationProcesshas been implemented. It extracts the effective BSquared field and coherence length.TRestAxionMagneticField::GetTransversalFieldComponentbug fixed and method added for validation atmagneticField.py.TRestAxionEventadded methodsRotateXZandRotateZXto be used byTRestAxionEventProcessto produce component rotation.TRestAxionEventdata membersfBSquaredandfLCoherencehave been added, andfGammaProbabilityhas been removed (not yet clear which members will be finally kept).Fully impemented
opticsBench.rmlray-tracer description to be operative.Implemented
opticsPlots.rmlto produce plots with the files produced usingopticsBench.rml.