Adding more parameters to xray::scatterer for anharmonic thermal displacements
Hi, we are working with Michal Chodkiewicz (Warsaw University) to add anharmonic thermal tensors to smtbx refinement. I was thinking to add one pointer to xray::scatterer, which can be NULL. When it is not so, it would point to an object which can compute the value and the derivatives for that thermal factor. That means we would have a base class with virtual methods, but I would say that is our problem! The issue for the rest of the cctbx community is the extra storage of that pointer in that class. Would that be all right? I remember quite a few years ago Ralf saying he wanted to replace the ADP's by a pointer to an external storage to save space. Our idea is along the same line. Best wishes, Luc
Go for it!
--Nick
Nicholas K. Sauter, Ph. D.
Senior Scientist, Molecular Biophysics & Integrated Bioimaging Division
Lawrence Berkeley National Laboratory
1 Cyclotron Rd., Bldg. 33R0345
Berkeley, CA 94720
(510) 486-5713
On Tue, Aug 21, 2018 at 9:58 AM, Luc J. Bourhis
Hi,
we are working with Michal Chodkiewicz (Warsaw University) to add anharmonic thermal tensors to smtbx refinement. I was thinking to add one pointer to xray::scatterer, which can be NULL. When it is not so, it would point to an object which can compute the value and the derivatives for that thermal factor. That means we would have a base class with virtual methods, but I would say that is our problem!
The issue for the rest of the cctbx community is the extra storage of that pointer in that class. Would that be all right? I remember quite a few years ago Ralf saying he wanted to replace the ADP's by a pointer to an external storage to save space. Our idea is along the same line.
Best wishes,
Luc
_______________________________________________ cctbxbb mailing list [email protected] http://phenix-online.org/mailman/listinfo/cctbxbb
Sounds fine to me with a caveat that perhaps this is an opportunity to rationalize handling of ADPs in xray::scatterer. Currently we have isotropic, anisotropic, mixture, TLS, TLS with individual isotropic component, all scattered across different pieces of code. I have tons of code that deal with this externally outside xray::scatterer (even outside xray.structure !!) and that needs to be rationalized and centralized in some way. Otherwise we might be adding to the pile of ad-hocs. Of course that requires time to actually do it and therefore some planning (I wouldn't be able to dive into this say today or next week, or even next month). Needless to say that it would be nice to have anharmonic B-factors in phenix.refine as well when it comes to refinements at ultra-high resolution (as well as other smart ADP restraints that smtbx has!). All the best, Pavel On 8/21/18 18:58, Luc J. Bourhis wrote:
Hi,
we are working with Michal Chodkiewicz (Warsaw University) to add anharmonic thermal tensors to smtbx refinement. I was thinking to add one pointer to xray::scatterer, which can be NULL. When it is not so, it would point to an object which can compute the value and the derivatives for that thermal factor. That means we would have a base class with virtual methods, but I would say that is our problem!
The issue for the rest of the cctbx community is the extra storage of that pointer in that class. Would that be all right? I remember quite a few years ago Ralf saying he wanted to replace the ADP's by a pointer to an external storage to save space. Our idea is along the same line.
Best wishes,
Luc
_______________________________________________ cctbxbb mailing list [email protected] http://phenix-online.org/mailman/listinfo/cctbxbb
participants (3)
-
Luc J. Bourhis
-
Nicholas Sauter
-
Pavel Afonine