JiscMail Logo
Email discussion lists for the UK Education and Research communities

Help for CCP4BB Archives


CCP4BB Archives

CCP4BB Archives


CCP4BB@JISCMAIL.AC.UK


View:

Message:

[

First

|

Previous

|

Next

|

Last

]

By Topic:

[

First

|

Previous

|

Next

|

Last

]

By Author:

[

First

|

Previous

|

Next

|

Last

]

Font:

Proportional Font

LISTSERV Archives

LISTSERV Archives

CCP4BB Home

CCP4BB Home

CCP4BB  August 2014

CCP4BB August 2014

Options

Subscribe or Unsubscribe

Subscribe or Unsubscribe

Log In

Log In

Get Password

Get Password

Subject:

Re: mtz map data

From:

James Holton <[log in to unmask]>

Reply-To:

James Holton <[log in to unmask]>

Date:

Fri, 29 Aug 2014 13:24:56 -0700

Content-Type:

text/plain

Parts/Attachments:

Parts/Attachments

text/plain (117 lines)

MTZ files are not maps.  They can usually be converted into maps, but 
that depends on the type of information they contain. Coot lets you load 
an mtz and immediately view a map, but only because it internally picks 
the coefficients that you probably want to use and then internally 
executes an inverse Fourier transform.  To get a map you can access 
voxel by voxel you will need the CCP4 program "FFT":
http://www.ccp4.ac.uk/html/fft.html

Once you have a map file, you can convert it to text using the CCP4 
program MAPDUMP:
http://www.ccp4.ac.uk/html/mapdump.html
or perhaps MAP2NA4
http://www.ccp4.ac.uk/html/maptona4.html

However, both of these output only a few significant digits, which 
invariably introduces round-off error.  Some may argue that the extra 
digits are not "significant" anyway, but round-off error is an insidious 
beast, and once introduced it never goes away.  If you don't believe me, 
try rotating a PDB file of lysozyme through 100 full 360-degree 
rotations in 1 degree steps with PDBSET.  You will find that you do not 
end up with the same structure you started with!  It is RMS 0.1 A 
different, with some atoms as much as 1 A out of place.  This is not a 
bug in PDBSET, it arises from the round-off error in the 3rd 
"significant digit" of the coordinates accumulating with each round-off 
event.

But I digress.  The point is that in situations where you are going to 
go back-and-forth between map an mtz more than once, or if you simply 
don't know the magnitude of error that you are dealing with (a common 
situation), then I recommend keeping round-off error to a minimum.

    Internally, CCP4 maps are stored as 4-byte floats, which have about 
seven significant base-10 digits.  The full file format definition is here:
http://www.ccp4.ac.uk/html/maplib.html

Personally, I tend to read map values with the unix binary dump program 
"od", which can be made to read 4-byte floats.  It is simply a matter of 
skipping the header, which is easily done by using MAPDUMP to tell you 
how many grid points are in the file and subtracting 4* that number of 
bytes from the file size.  I wrote a little jiffy script for converting 
a CCP4 *.map file into a PDB file with the density printed into the B 
factor column here:
http://bl831.als.lbl.gov/~jamesh/map_noise/scripts/map2pdb.com
This script does introduce round-off error, but you can modify it as you 
see fit.  You will find, however, that the PDB file produced this way is 
pretty huge.

I should warn you that you will find that the "nearest" map grid point 
is not a very good approximation of a given point of interest (such as 
the center of an atom).   What you might want to do is interpolate 
between nearby map grid points, possibly even doing a cubic spline 
interpolation in three dimensions.  This feature cannot be found in the 
CCP4 suite, but is available in the RAVE suite from Uppsala Software 
Factory as the program MAPMAN:
http://xray.bmc.uu.se/usf/mapman_man.html
use the "peek" function in that program.

All that said, I caution you that integrating a "volume" from map values 
is in general not a very good idea.  More properly, the integral of 
electron density over space is a "charge", and such integrals are very 
sensitive to offsets.  Offsets are dangerous because most maps are 
calculated to have the sum all grid point values equal to zero.  This is 
simply because the F000 structure factor, which represents this sum, was 
not measured.  So, if you add "1" to all your map voxels, your integral 
immediately becomes "n" times higher, where "n" is the number of grid 
points.  Yes, difference maps are supposed to be centered on zero, but 
to what precision?  You need F000 to be sure.  One way of estimating 
F000 was published recently:
http://www.pnas.org/content/111/1/237.long

However, when integrating density you also have problems with how far 
away from your point of interest you should integrate.  Too far and you 
pick up a lot of noise, but too close and you get systematic bias.

Personally, I think the best way to integrate a map is by using 
occupancy refinement.  Essentially, if you have a noisy curve and you 
want to integrate it, fitting a smooth function to that curve and then 
integrating the curve itself is often a very powerful noise filter.  The 
calculated form factor for an atom has a well-defined integral (the 
atomic number), it "automatically" defines the vacuum level of the map 
by being zero far from the atomic center, it "automatically" subtracts 
the density of neighboring atoms (if they are modeled in), and also 
down-weights more distant voxels by an appropriate amount.  That is, the 
optimum noise filter is generally the same shape as the signal of 
interest (sometimes called a Wiener filter, see the Numerical Recipes 
book).  So, if you fit a bunch of hydrogen atoms into your mystery 
density (perhaps keeping the rest of the model fixed if you can) then 
the sum of all those hydrogen occupancies is a very good estimate of the 
number of electrons in the feature.  What is the error bar?  Try 
jiggling the rest of the molecule and re-refining the occupancies.  That 
is at worst a lower bound for the total error.  Do this 5-10 times with 
different random number seeds and you will have a handle on the RMS 
variation in your "measurement" of the charge.  The END_RAPID.com script 
available here:
http://bl831.als.lbl.gov/END/RAPID/end.rapid/Documentation/documentation.htm
can be useful for doing several parallel occupancy refinements with the 
benefit of also adding noise to the data to get a more realistic error bar.

HTH

-James Holton
MAD Scientist


On 8/28/2014 7:49 AM, Alejandro Virrueta wrote:
> Hello,
>
> I am new to crystallography refinement, and I have a question (I'm 
> sorry in advance if it is a stupid one):
>
> Is it possible to extract all the density values (observed and 
> model-computed) from an mtz file? I need this information in order to 
> quantify the volumes of the difference regions (peaks and holes).
>
> Thanks,
> Alex

Top of Message | Previous Page | Permalink

JiscMail Tools


RSS Feeds and Sharing


Advanced Options


Archives

May 2024
April 2024
March 2024
February 2024
January 2024
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007


JiscMail is a Jisc service.

View our service policies at https://www.jiscmail.ac.uk/policyandsecurity/ and Jisc's privacy policy at https://www.jisc.ac.uk/website/privacy-notice

For help and support help@jisc.ac.uk

Secured by F-Secure Anti-Virus CataList Email List Search Powered by the LISTSERV Email List Manager