[Imgcif-l] RE: CBFlib status

Herbert J. Bernstein yaya at bernstein-plus-sons.com
Mon Apr 17 15:06:21 BST 2006


Dear Chris,

   Until a new convert_image is ready, the following script will
do the necessary edit, if it has not already been done:

================= CUT HERE =========================
#!/bin/csh
grep 'diffrn_data_frame' $1
if ( $status == 0) then
ex $1 << 'EOF_EOF_EOF'
1,$s/diffrn_data_frame/diffrn_frame_data/
w
q
'EOF_EOF_EOF'
endif
grep '_diffrn_detector.sample_detector_distance' $1
if ( $status == 0) then
ex $1 << 'EOF_EOF_EOF'
1,$s/_diffrn_detector.sample_detector_distance/_diffrn_measurement.sample_detector_distance/
w
q
'EOF_EOF_EOF'
endif

================= CUT HERE =========================

Running that script on a modern linux box on a file
that does not need to be changed took 0.025 seconds
and is 100% CPU bound.  Running that script on a file
that does need to be changed took .77 seconds cpu
time and 1.56 seconds wall clock time.

Just put the code between the CUT HERE lines into a file,
check that the first line is not blank, but begins with

    #!/bin/csh

save it as FixMosflmCBF.csh, do a

   chmod 755  FixMosflmCBF.csh

and run it with one argument -- the CBF to be modified in place.

I know this would be cleaner and faster with sed, but this way it is just a
fixup on one file as an easy insert into a script, and also provides
a simple template of what needs to be changed in convert_image for
mosflm, and a quick check to see if a cbf is ready for the unpatched
mosflm.

   Regards,
     Herbert


At 9:03 AM -0700 4/17/06, Chris Nielsen wrote:
>        Hi Herbert,
>
>       I'll probably make the changes to convert_image right now and
>not change mosflm.  Recompiling it is (sometimes) an adventure.  Sort
>of like remaking CCP4, especially after a new release.
>
>       Best,
>
>       Chris
>
>
>-----Original Message-----
>From:	Herbert J. Bernstein [mailto:yaya at bernstein-plus-sons.com]
>Sent:	Mon 4/17/2006 5:06 AM
>To:	Chris Nielsen
>Cc:	imgCIF-l at iucr.org
>Subject:	RE: CBFlib status
>Dear Chris,
>
>    I am copying this to the imgcif list, since this might be
>useful to others working with mosflm and CBF:
>
>    If you are running a version of mosflm without the following
>patch,
>
>      http://arcib.dowling.edu/~bernsteh/cbfwrap.patch
>
>you will need to use an editor (e.g. ex or sed) to apply
>the following correction to any CBF produced by convert_image:
>
>1,$s/diffrn_data_frame/diffrn_frame_data/
>
>    You will also want to make the following edit pass to
>put the sample detector distance where mosflm expects it
>instead of where I mistakenly put it:
>
>1,$s/_diffrn_detector.sample_detector_distance/_diffrn_measurement.sample_detector_distance/
>
>With just the first change, ipmosflm runs, but with some warnings.
>With both changes, ipmosflm seems to just run for the adsc
>images.
>
>Once we have collected a few more comments, I will provide internal
>hooks for both these changes in a patch for convert_image.
>
>    Thanks for you patience with all this.
>
>    Regards,
>      Herbert
>
>At 6:26 AM -0400 4/17/06, Herbert J. Bernstein wrote:
>>Dear Chris,
>>
>>    It looks like you are using a version of ipmosflm
>>that still insists on diffrn_frame_data instead
>>of diffrn_data_frame.  You need to do one of the
>>following:
>>
>>    0.  Apply the patch
>>
>>      http://arcib.dowling.edu/~bernsteh/cbfwrap.patch
>>
>>to mosflm.
>>
>>    1.  Edit your cbf  to have an extra copy
>>of the diffrn_data_frame loop as a
>>diffrn_frame_data loop and to ensure that
>>it contains the sample_detector_distance.
>>
>>If this is too much of a nuisance, I'll just add
>>an option to convert image to do the mapping
>>fromn diffrn_data_frame to diffrn_frame_data
>>on output.  All the pieces to do that are
>>there, but Harry seems to be willing to
>>accept the patch.
>>
>>    Regards,
>>     Herbert
>>
>>=====================================================
>>   Herbert J. Bernstein, Professor of Computer Science
>>     Dowling College, Kramer Science Center, KSC 121
>>          Idle Hour Blvd, Oakdale, NY, 11769
>  >
>>                   +1-631-244-3035
>>                   yaya at dowling.edu
>>=====================================================
>>
>>On Sun, 16 Apr 2006, Chris Nielsen wrote:
>>
>>>
>>>         Hi Herbert,
>>>
>>>         Still no joy.  Downloaded the latest, ran convert_image, and I get
>>>   the messages below from mosflm.  There needs to be a quick index lookup
>>>   for "Fatal Error" numbers.  I don't find an easy way to find this in
>>>   the source.
>>>
>>>        Getting closer!
>>>
>>>        Regards,
>>>
>>>        Chris
>>>
>>>   convert_image -i mb_LP_1_001.img -o mb_LP_1_001.cbf -d adscquantum315
>>>   convert_image:  template_name: template_adscquantum315_3072x3072.cbf
>>>    HEADER_BYTES = 512;
>>>    DIM = 2;
>>>    BYTE_ORDER = big_endian;
>>>    TYPE = unsigned_short;
>>>    SIZE1 = 3072;
>>>    SIZE2 = 3072;
>>>    PIXEL_SIZE = 0.102588;
>>>    BIN = 2x2;
>>>    DETECTOR_SN = 901;
>>>    TIME = 29.945155;
>>>    DISTANCE = 200.000000;
>>>    PHI = 85.000000;
>>>    OSC_START = 85.000000;
>>>    OSC_RANGE = 1.000000;
>>>    WAVELENGTH = 0.979381;
>>>    BEAM_CENTER_X = 157.500000;
>>>    BEAM_CENTER_Y = 157.500000;
>>>    PIXEL SIZE = 0.102588;
>>>    OSCILLATION RANGE = 1;
>>>    EXPOSURE TIME = 29.9452;
>>>    TWO THETA = 0;
>>>    BEAM CENTRE = 157.5 157.5;
>>>   header pixel center indices: 1535.5 1535.5
>>>    Element ID: ELEMENT1
>>>    convert_image: beam center:  1535.5 1535.5 157.524 -157.524
>  >>   detector distance: 200
>>>    Pixel area, projected area: 0.0105243      , 0.00703457
>>>   [ccd at cnvaio2 wide]$ cd process_cbf
>>>   [ccd at cnvaio2 process_cbf]$ mosflm
>>>
>>>
>>>    ************ Version 6.2.5 for Image plate and CCD data 9th
>>>August 2005  ***********
>>>    A.G.W. Leslie, MRC Laboratory Of Molecular Biology, HILLS ROAD,
>>>CAMBRIDGE CB2 2QH, UK
>>>    E-mail andrew at mrc-lmb.cam.ac.uk
>>>    New auto-indexing using DPS due to Ingo Steller Robert Bolotovsky
>>>and Michael Rossmann
>>>    (1998) J. Appl. Cryst. 30, 1036-1040
>>>    Original auto-indexing using REFIX due to Wolfgang Kabsch
>>>(Kabsch,W. (1993),
>>>   J.Appl.Cryst. 24,795-800.)
>>>    X-windows interface using xdl_view due to John Campbell
>>>(Daresbury Laboratory, UK.)
>>   >  (Campbell,J.W. (1995) J. Appl. Cryst. 28, 236-242.
>>>
>>>
>>>    MOSFLM => @mosflm.inp
>>>    Command filename: mosflm.inp
>>>    MOSFLM =>  scanner CBF
>>>   warning, warning, warning. This detector option has not been fully
>>>enabled yet.
>>>
>>>   You should be prepared for unexpected results.
>>>    MOSFLM =>  gain 0.2
>>>    MOSFLM =>  synchrotron polar 0.99
>>>    MOSFLM =>  dispersion  0.0002
>>>    MOSFLM =>  divergence  0.001 0.001
>>>    MOSFLM =>  genf genfile.gen
>>>    MOSFLM =>  wavelength  0.9794
>>>    MOSFLM =>  distance    199.43
>>>    MOSFLM =>  beam  157.52  157.60
>>>    MOSFLM =>  mosaic  0.234
>>>    MOSFLM =>  directory       ../
>>>    MOSFLM =>  template   mb_LP_1_###.cbf
>>>    MOSFLM =>  extention  cbf
>>>    MOSFLM =>  image 1
>>>    MOSFLM =>  go
>>>
>>>   CBFlib fatal error 4000
>>>
>>>   CBFlib fatal error 4000
>>>
>>>   CBFlib fatal error 4
>>>   [ccd at cnvaio2 process_cbf]$ ls -l ../mb_LP_1_001.cbf
>>>   -rw-r--r--  1 ccd games 5773811 Apr 16 22:35 ../mb_LP_1_001.cbf
>>>   [ccd at cnvaio2 process_cbf]$
>>   >
>>>
>>>   -----Original Message-----
>>>   From:	Herbert J. Bernstein [mailto:yaya at bernstein-plus-sons.com]
>>>   Sent:	Sun 4/16/2006 3:54 PM
>>>   To:	Chris Nielsen
>>>   Cc:
>>>   Subject:	RE: CBFlib status
>>>   Dear Chris,
>>>
>>>   The latest and greatest is now at:
>>>
>>>   http://arcib.dowling.edu/~bernsteh/software/CBFlib_0.7.5/
>>>
>>>   The updated manual is at:
>>>
>>>   http://arcib.dowling.edu/~bernsteh/software/CBFlib_0.7.5/doc/CBFlib.html
>>>
>>>   The tarball is at:
>>>
>>>   http://arcib.dowling.edu/~bernsteh/software/CBFlib_0.7.5/CBFlib.tar.gz
>>>
>>>   This is not final, but further changes will go into 0.7.6, so people
>>>   will have this as a base to work against.
>>>
>>>   Actually, I have not yet done a complete job on the transforms.
>>>   I only have the code working for square arrays, and I really
>>>   should allow for the possibility of unequal x and y dimensions.
>>>
>>>   I think you will find the centering in this version fairly
>>>   reasonable.  I rounded to the nearest half pixel.  Let me
>>>   know if you want me to put it back to the previous handling.
>  >>
>>>   I've told every on the imgCIF list about this release to get more
>>>   testers.   Do you want to be added to the imgCIF list?  We moved
>>>   it from BNL to the IUCr.
>>>
>>>   Regards,
>>>       Herbert
>>>
>>>
>>>   At 3:05 PM -0700 4/16/06, Chris Nielsen wrote:
>>>   >       Hi Herb,
>>>   >
>>>   >       I'll give this a try.  Apropos the beam center, well, you always
>>>   >worry about something missed when the math does not work out, so I'm
>>>   >with you.
>>>   >
>>>   >       When I can get things to process (which I expect, now) I will
>>>   >be in a position to understand where we are with this format.  Note
>>>   >well that mosflm has always displayed "normal" adsc images mirrored
>>>   >and rotated; that's because of its origin as a film processing
>>>   >package.  Everyone lives with that distinction when the images are
>>>   >processed.  Fortunately, you built in *all* necessary mirror and
>>>   >rotations into the conversion, so we're set.  Since mosflm's
>>>   >view is not natural we may elect to output adsc images in the
>>>   >"normal" orientation and continue to view mosflm images with its
>>>   >mirror and rotation.  Normally "detector adsc" takes care of
>>>   >the origins, etc., for adsc images but this can be explicitly
>>>   >set as well, since scanner (or detector) cbf will nor correspond
>>>   >to the adsc convention.
>  >>  >
>>>   >       I am sure this will sort out shortly.
>>>   >
>>>   >       Thanks again for the hard work,
>>>   >
>>>   >       Chris
>>>   >
>>>   >
>>>   >-----Original Message-----
>>>   >From:	Herbert J. Bernstein [mailto:yaya at bernstein-plus-sons.com]
>>>   >Sent:	Sat 4/15/2006 4:14 AM
>>>   >To:	Chris Nielsen
>>>   >Cc:
>>>   >Subject:	RE: CBFlib status
>>>   >Dear Chris,
>>>   >
>>>   >   You need to say
>>>   >
>>>   >   scanner CBF
>>>   >
>>>   >The entire script follows below, but I should mention that
>>>   >the biggest problem I am now having on finishing the
>>>   >beam center is the small variations in the beam centers
>>>   >presented:  157.5, 157.5 in the image file header,
>>>   >and 157.52, 157.60 in the ipmosflm script.  Is the
>>>   >center intended to be good to a small fraction of a pixel,
>>>   >or good to the nearest half pixel (i.e. centered on a
>>>   >pixel when an integer is given, centered between
>>>   >pixels when a half pixel is given), or good to the
>>   > >nearest whole pixel (always centered on a pixel).  With
>>>   >an even number of pixels, centered between pixels seems
>>>   >a likely possibility.  I know I should not fuss on
>>>   >such small differences, but it bothers the matehmatician
>>>   >in me.
>>>   >
>>>   >   Regards,
>>>   >     Herbert
>>>   >
>>>   >
>>>   >================================================================
>>>   ># File Automaticaly generated by ProDC
>>>   ># X-Ray data collected at ESRF_ID29
>>>   ># Detector type: ADSC Quantum 210
>>>   ># Date: Thu Feb 10 19:01:18 2005
>>>   ># User comments: Move
>>>   >
>>>   >#  Basic definitions
>>>   >  scanner CBF
>>>   >  gain 0.2
>>>   >  synchrotron polar 0.99
>>>   >  dispersion  0.0002
>>>   >  divergence  0.001 0.001
>>>   >  genf genfile.gen
>>>   >
>>>   >#  Better have them
>>>   >  wavelength  0.9794
>>>   >  distance    199.43
>>>   >  beam  157.52  157.60
>>>   >
>>>   >#  Just a guess
>>>   >  mosaic  0.234
>>>   >
>>>   >#  Files
>>>   >  directory       ../
>>>   >  template   mb_LP_1_###.cbf
>>>   >  extention  cbf
>>>   >  image 1
>>   > ># phi  0.00  to  1.00
>>>   >
>>>   >  go
>>>   >  ================================================
>>>   >
>>>   >
>>>   >=====================================================
>>>   >  Herbert J. Bernstein, Professor of Computer Science
>>>   >    Dowling College, Kramer Science Center, KSC 121
>>>   >         Idle Hour Blvd, Oakdale, NY, 11769
>>>   >
>>>   >                  +1-631-244-3035
>>>   >                  yaya at dowling.edu
>>>   >=====================================================
>>>   >
>>>   >On Fri, 14 Apr 2006, Chris Nielsen wrote:
>>>   >
>>>   >>        Hi Herb,
>>>   >>
>>>   >>        Forgive the redundant question, but what is the protocol for
>>>   >>telling mosflm that the images
>>>   >>  are cbf rather than adsc images?  I can't dig this information out
>>>   >>of my email and havn't got
>>>   >>  mosflm to run sucessfully on your latest convert_image.  Your
>  >>  >>ipmosflm input script would
>>>   >>  be useful.
>>>   >>
>>>   >>        Best, and thanks for putting up with it all,
>>>   >>
>>>   >>        Chris
>>>   >>
>>>   >>
>>>   >>	-----Original Message-----
>>>   >>	From: Herbert J. Bernstein [mailto:yaya at bernstein-plus-sons.com]
>>>   >>	Sent: Thu 4/13/2006 9:10 PM
>>>   >>	To: Andrew HAMMERSLEY; Jon Wright
>>>   >>	Cc: sweet at bnl.gov; Chris Nielsen
>>>   >>	Subject: Re: CBFlib status
>>>   >>
>>>   >>
>>>   >>
>>>   >>	I promised Chris a snapshot this evening, so before it is tomorrow,
>>>   >>	here is the latest:
>>>   >>
>>>   >>
>>>   >>http://arcib.dowling.edu/~bernsteh/software/CBFlib_0.7.5_12Apr06.tar.gz
>>>   >>
>>>   >>	The version of convert_image in this kit now dumps the full
>>>   >>image header
>>>   >>	into a text field, which is put into
>>>   >>
>>>   >>	_diffrn_data_frame.detail
>>>   >>
>>>   >>	The PHI angle now seems to be set correctly.  The beam center is close
>>>   >>	(off by less than half a pixel as an index, but has the sign inverted
>>>   >>	for the y component of the beam center in mm).  I'll continue on
>>>   >>	that tomorrow, but comments on this version would be be appreciated.
>>>   >>
>>>   >>	To test, you will need to place
>>>   >>
>>>   >>	mb_LP_1_001.img (Chris's adsc test case) and
>>>   >>
>>>   >>	example.mar2300 (the Mar test case) into the same directory that
>  >>  >>	contains the snapshot (not into the directory it creates).
>>>   >>	Both are available in
>>>   >>
>>>   >>	http://arcib.dowling.edu/~bernsteh/software/
>>>   >>
>>>   >>	then
>>>   >>
>>>   >>	make all
>>>   >>	make tests
>>>   >>
>>>   >>	The manual is growing, but I still have code to write up and make
>>>   >>	test programs for.
>>>   >>
>>>   >>	Regards,
>>>   >>	   Herbert
>>>   >>
>>>   >>
>>>   >>	--
>>>   >>	=====================================================
>>>   >>	  Herbert J. Bernstein, Professor of Computer Science
>>>   >>	    Dowling College, Kramer Science Center, KSC 121
>>>   >>	         Idle Hour Blvd, Oakdale, NY, 11769
>>>   >>
>>>   >>	               Office:  +1-631-244-3035
>>>   >>	            Lab (KSC 020): +1-631-244-3451
>>>   >>	                  yaya at dowling.edu
>>>   >>	=====================================================
>>>   >>
>>>   >>
>>>   >>
>>>
>>>
>>>   --
>>>   =====================================================
>>>     Herbert J. Bernstein, Professor of Computer Science
>>>       Dowling College, Kramer Science Center, KSC 121
>>>            Idle Hour Blvd, Oakdale, NY, 11769
>>>
>>>                  Office:  +1-631-244-3035
>>>               Lab (KSC 020): +1-631-244-3451
>>>                     yaya at dowling.edu
>>   > =====================================================
>>>
>>>
>>>
>>>
>
>
>--
>=====================================================
>   Herbert J. Bernstein, Professor of Computer Science
>     Dowling College, Kramer Science Center, KSC 121
>          Idle Hour Blvd, Oakdale, NY, 11769
>
>                Office:  +1-631-244-3035
>             Lab (KSC 020): +1-631-244-3451
>                   yaya at dowling.edu
>=====================================================


-- 
=====================================================
  Herbert J. Bernstein, Professor of Computer Science
    Dowling College, Kramer Science Center, KSC 121
         Idle Hour Blvd, Oakdale, NY, 11769

               Office:  +1-631-244-3035
            Lab (KSC 020): +1-631-244-3451
                  yaya at dowling.edu
=====================================================


More information about the imgcif-l mailing list