[cctbxbb] phenix.map_value_at_point does not work with ccp4 maps

Takanori nakane takanori.nakane at bs.s.u-tokyo.ac.jp
Fri Dec 11 17:25:06 PST 2015


Hi Pavel,

Thank you very much for quick reply.

> > It also has a problem that when there are multiple columns in an mtz
> > file and the specified label does not match any of them, the
> > last column is used without warning.
> 
> Hm.. this is not good, I will have a look!

This is caused because selection of the miller array is not right.

http://sourceforge.net/p/cctbx/code/22916/tree/trunk/mmtbx/command_line/map_value_at_point.py#l78

should be something like this:

    found = False
    for ma in miller_arrays:
      if(ma.info().labels[0].lower() == params.label.lower()):
        found = True
        break
    if not found:
      raise Sorry("Specified label not found.")

Best regards,

Takanori Nakane

On Fri, 11 Dec 2015 09:51:27 -0800 Pavel Afonine <pafonine at lbl.gov> wrote:

> Hi Takanori,
> 
> > I encountered an error with phenix.map_value_at_point.
> > It does not work when ccp4 maps are provided.
> 
> indeed! At present it only works with MTZ files. It is a trivial effort 
> to extend it to accepting the map too. I will do it in a day or two 
> (writing from airport..).
> 
> > It works fine
> > when an mtz file with map coefficients is provided.
> 
> As expected.
> 
> > Probably this is related to the bug reported last September.
> > http://phenix-online.org/pipermail/cctbxbb/2015-September/001155.html
> 
> Yes, maps are not expected in input!
> 
> > It also has a problem that when there are multiple columns in an mtz
> > file and the specified label does not match any of them, the
> > last column is used without warning.
> 
> Hm.. this is not good, I will have a look!
> 
> > phenix.fetch_pdb 3eml
> > phenix.fetch_pdb -x 3eml
> > phenix.maps 3eml.pdb 3eml-sf.cif
> >
> > # Just to use the latest svn version
> > cctbx.python 
> > ~/prog/dials/modules/cctbx_project/mmtbx/command_line/map_value_at_point.py 
> > point="1.0 2.0 3.0" 3eml_2mFo-DFc_map.ccp4
> >
> > Default params::
> >
> >   label = None
> >   point = None
> >   resolution_factor = 0.25
> >   scale = *sigma volume
> >   resolution = None
> >   low_resolution = None
> >
> > Map values at specified points:
> > Traceback (most recent call last):
> >   File 
> > "/mnt/wd_storage/nakane/prog/dials/modules/cctbx_project/mmtbx/command_line/map_value_at_point.py", 
> > line 162, in <module>
> >     run(sys.argv[1:])
> >   File 
> > "/mnt/wd_storage/nakane/prog/dials/modules/cctbx_project/mmtbx/command_line/map_value_at_point.py", 
> > line 146, in run
> >     "%10.3f"%map_3d.eight_point_interpolation(point_frac)).strip()
> > Boost.Python.ArgumentError: Python argument types in
> >     cctbx_maptbx_ext.eight_point_interpolation(double, tuple)
> > did not match C++ signature:
> >     eight_point_interpolation(scitbx::af::const_ref<double, 
> > scitbx::af::c_grid_padded<3ul, unsigned long> >, scitbx::vec3<double>)
> >
> > cctbx.python 
> > ~/prog/dials/modules/cctbx_project/mmtbx/command_line/map_value_at_point.py 
> > 3eml_map_coeffs.mtz point="1.0 2.0 3.0" label="2FOFCWT" # This works fine
> >
> > cctbx.python 
> > ~/prog/dials/modules/cctbx_project/mmtbx/command_line/map_value_at_point.py 
> > 3eml_map_coeffs.mtz point="1.0 2.0 3.0" label="WRONG_LABEL" # but this 
> > also proceeds!
> 
> Thanks! I will investigate and get back to you! This is very valuable 
> information.
> 
> All the best,
> Pavel
> 


More information about the cctbxbb mailing list