Hi James, This has been available for as long as CCTBX/Phenix have existed—in my memory, for 20+ years, for sure. This: phenix.fmodel model.pdb high_res=2 will give you a 2 Å resolution Fourier map of model.pdb from model.pdb, and this: phenix.fmodel model.pdb reflections.mtz will give you a Fourier map of model.pdb that corresponds to the HKL found in reflections.mtz. Now, if you're looking for a real-space map, this: phenix.fft will convert the Fourier map generated with the above commands into that map. Of course, I assume someone with your level of expertise will do all of this in a Python script using CCTBX — at least for more flexibility and fun! All the best, Pavel On 12/5/24 11:50, James Holton wrote:
The only programs I know of that will output the calculated density map before going into reciprocal space are SFALL (CCP4) and the newer "gemmi" from Global Phasing. If there is a direct map rendering tool in Phenix, I'd love to know about it.
HTH,
-James Holton MAD Scientist
On 12/5/2024 11:24 AM, Pavel Afonine wrote:
Hi Rob,
I came across this article https://doi.org/10.1107/S160057672201144X. Although I have yet to read it in details I wonder if the CCTBX can Fcalc maps at finite resolution, i.e. not using Gaussian atomic density profiles. It looks like the function in cctbx.maptbx.atom_curves.bcr_approx(...) is suited to do so. If so, how would I use this for generating a real space map as in https://cci.lbl.gov/docs/cctbx/script_1/#create-a-map-from-a-pdb-file but now using atomic density profiles at finite resolution?
one way of doing this is to compute Fcalc using
def structure_factors
method of xray.structure. This is a finite resolution Fourier map you asking for, which is stored in miller.array object. If you need a real-space equivalent of that, do .fft_map() on that object that will give it to you.
The methodology described in the paper you quoted above is coded in cctbx/matpbx/bcr and indeed, this allows to compute finite resolution map directly without first computing Fourier map and then converting it into the real-space map, see
cctbx/matpbx/tst_bcr.py
for examples.
I'm actively working on this to enable real-space refinement of parameters like B factors, occupancies and coordinates using more accurate LS targets rather than simplistic atom-centered functions.
So far production code only computes the expansion coefficients and 1D atom map profiles. Soon I will commit actual general case finite resolution map generation code.
But for now you can just do the same via Fourier space.
Pavel
_______________________________________________ cctbxbb mailing list -- [email protected] To unsubscribe send an email to [email protected]
_______________________________________________ cctbxbb mailing list -- [email protected] To unsubscribe send an email to [email protected]