-
Notifications
You must be signed in to change notification settings - Fork 24
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
assignlabels refresh #81
Comments
Hi Younes, I would expect a lot of problems with overlapping peaks here. These can switch between grains in a pretty randomised way as they get assigned to the "closest" grain. A better approach would be to handle overlapped peaks properly and flag them. I'll put that in a next comment...
|
To deal better with overlaps, and try to overcome a few recurring problems:
A peak to grain assignment matrix should be very sparse. Currently only one grain per peak. It would help for twins and duplicates to store the N grains per peak which might be able to index. The rest of the this would imply a bit of reorganisation to update the geometry to pull out detector versus diffractometer + grain computations. |
Hi Jon,
Yes, I confirm that the problem is fixed for most of the peaks when using no_sort argument. Thank you.
So for the "hr, kr, lr" columns, are they computed and stored with accounting for the translation? if not, how to calculate hkl with translation? The only idea I have is to compute_gv by setting t_x, t_y and t_z in the passed parameters to transformation routines but this is already done.
Yes.
Using --nos_sort, the output of test_assign dropped down from thousands peaks to only 40 peaks more or less. So yes I guess these 40 peaks are the kind of peaks that could be indexed to more than one grain because of overlapping and twinning.
I think the hkl_tolerance alone is not sufficient as a unique cretaria to assign a peak. We can add other conditions. Lowering hkl_tolerance reduces the probability of such false indexing but we miss some good peaks as well, that is why I think that this verification should be done when indexing/refining ubi.
I completely agree. This would help to get rid of some recurring problems and contribute in making data analysis easier and maybe more accurate. Other suggestions such as improving the peaksearch algorithm/outputs and refining strain will also help a lot. I am focusing now on writing the thesis, hopefully I will be able to contribute more once I finish the PhD. |
So I think this is the same issue as #54 where I will add a note about systematic absences so I will close it for now and transer the "todo" over there. Note that if you can index a peak that should be systematically absent there are two different possibilities:
|
Hi Jon,
I think that sometimes the labels assignement (refinegrains.py/assignlabels) and other new columns of the ".new" file are not correctly updated for all the peaks; especially when a user do several successive makemap. I noticed that with my data, knowing that I used the version currently installed on rnice.
Here you find a small code to test the assignement (I assumed that the gx, gy, gz are the good values written to the .new file by the routine "refinegrains.py/assignlabels/compute_gv with translation + score_and_assign).
test_assign.txt
What does it give with a data of yours?
Happy Christmas and New Year
Best regards
Younes
The text was updated successfully, but these errors were encountered: