Skip to content

Conversation

@wweiphy
Copy link
Collaborator

@wweiphy wweiphy commented Nov 17, 2021

The calculation for LA is modified in this PR in order to take into account the changes on the drift-depth shape after irradiation.

As can be seen from this figure, the drift-depth shape changes from a solid blue line to an s-shaped (shown in red) curve after irradiation. The average displacement becomes smaller and the slope in the central region becomes larger.
In order to correct for the displacement around central region, Morris proposed to evaluate the LA at depth T/2 and obtain tan\theta_L = 2(D_1/2)/T as shown in green, which helps to monitor displacement of charge carriers around central region and thus is better for calibration purpose.

LA_irradiated.pdf

@mmusich
Copy link

mmusich commented Nov 17, 2021

@wweiphy The code is now in main fork of cmssw, why are changes still proposed here?

f1->SetParName(5, "quintic term");

double p1_simul_newmodule = 0.294044;
double half_width = 0.0285 / 2 * 10000; // pixel width in units of micro meter
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No magic numbers, please fetch from geometry

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@wweiphy can you please do this?


float bPixLorentzAnglePerTesla_;
// if the fit quality is OK
if (prob > fitProbCut_) {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just want to draw your attention to the fact that right now fitProbCut_ is set to 0.5

desc.add<double>("fitProbCut", 0.5)->setComment("cut on fit chi2 probabiblity to accept measurement");

which is not tuned at all, it's just a random value I picked.

thinking in the long run for the multi-run harvesting applications, a part from the minimum number of events in the MRH configuration, I think it would be good to have some sort of internal logic from within the SiPixel LA harvester to veto the creation of the payload (as it is done for all the other Tracker PCL workflows)
At the moment it just checks that the single "module-group" fit probability is higher than this given cut and if that condition is not satisfied it copies the values from the current value stored in DB (not stopping the payload creation).
If a more refined logic is introduced the input can be balanced in a more refined way, since the MRH will retry aggregating more statistics until a valid payload is produced.

@wweiphy @tvami @ferencek @OzAmram

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have a similar issue with the SiPixelQuality payloads where the old payloads gets appended when the occupancy threshold is not passed. So it looks like we need a similar fix for both types of payloads.

Concerning the fitProbCut, I guess it would make sense to have a look at the distribution and see if some other cut value would make more sense. However, the question of a more refined internal logic still remains. Once the required minimum number of events is reached, is it possible to continue collecting statistics until some other conditions is met (and only then the payload is created). I really don't know much about MRH and how complicated the logic can be.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

However, the question of a more refined internal logic still remains. Once the required minimum number of events is reached, is it possible to continue collecting statistics until some other conditions is met (and only then the payload is created). I really don't know much about MRH and how complicated the logic can be.

the logic better be implemented on the cmssw side, where you have full control and NOT in the MRH backend.

@wweiphy
Copy link
Collaborator Author

wweiphy commented Nov 19, 2021

@mmusich I think it's better to first make changes here, but I could make another PR to the main cmssw branch if you'd like.

f1->SetParName(5, "quintic term");

double p1_simul_newmodule = 0.294044;
auto width_ = phase1PixelTopology::pixelThickness;
Copy link

@mmusich mmusich Nov 19, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@wweiphy it would be better to take it really from DB as we might want to extend the functionality to phase-2...

@mmusich
Copy link

mmusich commented Nov 19, 2021

I think it's better to first make changes here, but I could make another PR to the main cmssw branch if you'd like.

well, in the end it must end up in cmssw, but if you prefer to get twice the review, fine :)

@mmusich
Copy link

mmusich commented Nov 24, 2021

@wweiphy is this ready for merge?

@tvami
Copy link

tvami commented Nov 24, 2021

@wweiphy maybe you could squash before merging here?

@wweiphy
Copy link
Collaborator Author

wweiphy commented Nov 24, 2021

@mmusich @tvami
Done with the squashing. I think it's good to go.

@mmusich mmusich merged commit 24976a5 into CMSTrackerDPG:SiPixelLorentzAngleCalibrationInPCL Nov 24, 2021
@tvami
Copy link

tvami commented Nov 24, 2021

Ok, so is the plan now to submit a PR to the main CMSSW?

@mmusich
Copy link

mmusich commented Nov 24, 2021

I think so, would be nice to backport to 12_1_X for replay too.
Diff is here: https://github.com/cms-sw/cmssw/compare/master...CMSTrackerDPG:SiPixelLorentzAngleCalibrationInPCL?expand=1

@tvami
Copy link

tvami commented Nov 24, 2021

I submitted it: cms-sw#36241, let's merge it in master and I can do the backport as well.

@mmusich
Copy link

mmusich commented Nov 24, 2021

I submitted it: cms-sw#36241, let's merge it in master and I can do the backport as well

@tvami would it be possible to add to the cmssw PR description the nice introduction of this PR from @wweiphy (including the figure)?

mmusich pushed a commit that referenced this pull request May 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants