Dear Francois Remacle,

One example images for the mar225 is available under:
http://www.mx.bessy.de/temp_stuff/mar225_5_theta_1_001.img.bz2

The output for this image using DiffractionImage library looks like this (using the function listed below):

================ DEBUG OUTPUT ======================

                2Theta readout:                 0.000

              Exposure time=    1.0
                         NY=    3072
NAME_TEMPLATE_OF_DATA_FRAMES=    mar225_5_theta_1_???.img
                         QX=    0.073
               project_name=    mar225_5_theta_1
               image_number=    1
                    phi_end=    285.0
                   TwoTheta=    0.0
                   DETECTOR=    MARCCD
                       ORGY=    1118
                       ORGX=    1121
MAXIMUM_NUMBER_OF_PROCESSORS=    2
          OSCILLATION_RANGE=    1.0
                  phi_start=    284.0
           X-RAY_WAVELENGTH=    1.72000
                 image_name=    mar225_5_theta_1_001.img
                  image_dir=    /psfhome/zocher/Desktop/ixds/ixds_v0.0.4
DIRECTION_OF_DETECTOR_Y-AXIS=   0.0 0.0 1.0
                         NX=    3072
                         QY=    0.073
               Detector S/N=    N/A
                   DISTANCE=    75
====================================================


Using catmar resulted in the correct 2Theta-Angle (which is the true experimental setup):

> catmar mar225_5_theta.img | grep "2-THETA"
Starting 2-THETA       =     5000
Ending   2-THETA       =     5000
2-THETA          [deg] =    5.000


The used python function:

def _get_all_image_info(image_file) :
""" Function extracting image header information and other useful variables such as ' date',....
       and put them into a dictonary.
   """

image_info = {} try: diff = DiffractionImage.DiffractionImage(image_file)

   except:
       print
       print "\t Could not read image header..."
       print "\t     .... sys.exit"
       print
       sys.exit(0)

   image_info["Exposure time= "]        =        diff.getExposureTime()
image_info["Detector S/N= "] = diff.getSerialNo() image_info["X-RAY_WAVELENGTH= "] = '%.5f'%diff.getWavelength()
   image_info["DETECTOR= "]             =        diff.getFormat()
image_info["ORGX= "] = '%.0f'%diff.getBeamX() image_info["ORGY= "] = '%.0f'%diff.getBeamY() image_info["DISTANCE= "] = '%.0f'%diff.getDistance() image_info["NX= "] = '%.0f'%diff.getWidth() image_info["NY= "] = '%.0f'%diff.getHeight() image_info["QX= "] = '%.3f'%diff.getPixelX() image_info["QY= "] = '%.3f'%diff.getPixelY() image_info["phi_start= "] = '%.1f'%diff.getOscStart()
   image_info["phi_end= "]              = '%.1f'%diff.getOscEnd()
image_info["OSCILLATION_RANGE= "] = '%.1f'%(diff.getOscEnd() - diff.getOscStart())

   if diff.getTwoTheta() > 0 :
       image_info["TwoTheta= "]    = float(diff.getTwoTheta())
       # function to recognise the two theta-axis
       two_thetha_axis             = __get_2theta_axis(prog_vars)
       image_info[two_thetha_axis] = string.join([str(0.0),
str(math.sin(image_info["TwoTheta= "])), str(math.cos(image_info["TwoTheta= "]))
                             ])
   else :
       image_info["TwoTheta= "]    = float(0)
       two_thetha_axis             = __get_2theta_axis(prog_vars)
       image_info[two_thetha_axis] = string.join([str(0.0),
str(math.sin(image_info["TwoTheta= "])), str(math.cos(image_info["TwoTheta= "]))
                              ])
# functions to get other xds_vars image_info["image_dir= "] = os.path.abspath(os.path.dirname(image_file)) image_info["image_name= "] = os.path.basename(image_file) image_info["NAME_TEMPLATE_OF_DATA_FRAMES= "] = _get_name_template(image_file) image_info["project_name= "] = _get_project_name(image_file) image_info["image_number= "] = _get_image_number(image_file)
   image_info["MAXIMUM_NUMBER_OF_PROCESSORS= "] = _get_ncpu()

   if debug == "on":
       print
       print " ================ DEBUG OUTPUT ====================== "
       print
       print "\t\t 2Theta readout: \t\t %.3f" %diff.getTwoTheta()
       print
       for  key, val in image_info.items():
           print "%30s \t %s" %(key, val)
       print " ==================================================== "

   return image_info


Once again, thank you very much for your help,
Best Regards,
Georg




Remacle, F (Francois) schrieb:
------------------------------------------------------------------------
*From:* Remacle, F (Francois)
*Sent:* 02 July 2008 09:46
*To:* 'Georg Zocher'
*Subject:* RE: [ccp4bb] .getTwoTheta() in DiffractionImage library

Dear Georg,
Normally the getTwoTheta function should pick up the angle information from the image header. Obviously in your case it did not :-). Could you send me examples images from these detectors so I can try to ammend this problem? Thanks Francois Remacle
CCP4

------------------------------------------------------------------------
*From:* CCP4 bulletin board [mailto:[EMAIL PROTECTED] *On Behalf Of *Georg Zocher
*Sent:* 02 July 2008 06:36
*To:* [email protected]
*Subject:* [ccp4bb] .getTwoTheta() in DiffractionImage library

Dear All,

just writting due to one problem concering the 'image diffraction library'. I just build some code for some xds automatisation and would like to use the 'image diffraction library' for the readout of the image header informations.

The problem I ran into is the output of the ".getTwoTheta()"-function implemented in the DiffractionImage module. Where all of the other readout-functions worked very well, the .getTwoTheta()"-function returned always 0.0 degree. Tested with marccd165- and marccd225-detector. Using the manufactors program called 'catmar' showed the 'right' angle.

Maybe I just made a very stupid error....

Thanks in advance, best regards
Georg

--
 Dr. Georg Zocher
BESSY-MX group BESSY GmbH
 Albert-Einstein-Straße-15
 D-12489 Berlin

 Fon  : +49-(0)30-6392 4973
 Fax  : +49-(0)30-6392 4975
 email: [EMAIL PROTECTED]
 url  : http://www.psf.bessy.de/

BESSY GmbH - Mitglied der Leibniz Gemeinschaft
Vorsitzender des Aufsichtsrates: Prof. Dr. Dr. h.c. mult Joachim Treusch
Geschäftsführer: Prof. Dr. Dr. h.c. Wolfgang Eberhardt, Prof. Dr.Eberhard 
Jaeschke Sitz Berlin, AG Charlottenburg, HRB 14635


--
Dr. Georg Zocher
BESSY-MX group BESSY GmbH
Albert-Einstein-Straße-15
D-12489 Berlin

Fon  : +49-(0)30-6392 4973
Fax  : +49-(0)30-6392 4975
email: [EMAIL PROTECTED]
url  : http://www.psf.bessy.de/

BESSY GmbH - Mitglied der Leibniz Gemeinschaft
Vorsitzender des Aufsichtsrates: Prof. Dr. Dr. h.c. mult Joachim Treusch
Geschäftsführer: Prof. Dr. Dr. h.c. Wolfgang Eberhardt, Prof. Dr.Eberhard 
Jaeschke Sitz Berlin, AG Charlottenburg, HRB 14635

Reply via email to