Generate XDS.INP: Difference between revisions

Jump to navigation Jump to search
m (→‎The script: set LC_ALL)
(4 intermediate revisions by the same user not shown)
Line 120: Line 120:
# revision 1.01 . KD 07/12/2020 ROTATION_AXIS=0 -1 0 for Pilatus3 2M, S/N 24-0118 at ID23-2 (http://www.globalphasing.com/autoproc/wiki/index.cgi?BeamlineSettings)
# revision 1.01 . KD 07/12/2020 ROTATION_AXIS=0 -1 0 for Pilatus3 2M, S/N 24-0118 at ID23-2 (http://www.globalphasing.com/autoproc/wiki/index.cgi?BeamlineSettings)
# revision 1.02 . KD 11/01/2021 recognize mar555 detector as mar345 (thanks to Thomas Hauß, HZB)  
# revision 1.02 . KD 11/01/2021 recognize mar555 detector as mar345 (thanks to Thomas Hauß, HZB)  
# revision 1.03 . Feng YU 18/7/2021 fix/expand information about Shanghai Synchrotron Radiation Facility (SSRF)
# revision 1.03 . Feng Yu 18/7/2021 fix/expand information about Shanghai Synchrotron Radiation Facility (SSRF)
# revision 1.04 . Zhipu Luo 13/08/2021 extract ORGX,ORGY for electron diffraction from SMV header if the wavelength value starts with 0.0  
# revision 1.04 . Zhipu Luo 13/08/2021 extract ORGX,ORGY for electron diffraction from SMV header if the wavelength value starts with 0.0  
# revision 1.05 . KD specialcase extraction of number of images for BNL detectors E-32-0101 and E-18-0104
# revision 1.05 . KD specialcase extraction of number of images for BNL detectors E-32-0101 and E-18-0104
# revision 1.06 . KD fix URLs in output. Comment availability of Apple processor dectris-neggia-Apple-arm64.so . Set LC_ALL=C .
# revision 1.06 . KD fix URLs in output. Availability of Apple M1 processor dectris-neggia-Apple-arm64.so . LC_ALL=C .
REVISION="1.06 (15-OCT-2021)"
# revision 1.07 . KD, Thomas Hauß, Gleb Bourenkov 25/10/2021. Detector moved from Petra P14 to P13
# revision 1.08 . KD, Thomas Hauß, Feng Yu 7/11/2021 fix TZ in timestamps for SSRF detectors
# revision 1.09 . KD, Feng Yu 7/11/2021 fix detector number BNL E-18-0121 to be E-18-0104
REVISION="1.09 (9-NOV-2021)"


#                                                                                                             
#                                                                                                             
Line 514: Line 517:


       # find SENSOR_THICKNESS:
       # find SENSOR_THICKNESS:
       SENSOR_THICKNESS=`grep thickness tmp2 | sed -e s/'Silicon sensor, thickness'// | awk '{print $1*1000}'`
       SENSOR_THICKNESS=`grep thickness tmp2 | sed -e s/'Si.* sensor, thickness'// | awk '{print $1*1000}'`
       # find X_RAY_WAVELENGTH:                                                                               
       # find X_RAY_WAVELENGTH:                                                                               
       X_RAY_WAVELENGTH=`grep Wavelength tmp2 | sed -e s/Wavelength// -e s/A// | awk '{print $1}'`             
       X_RAY_WAVELENGTH=`grep Wavelength tmp2 | sed -e s/Wavelength// -e s/A// | awk '{print $1}'`             
Line 566: Line 569:
       fi
       fi
# PETRA P14: raw data from Eiger are stored as CBF files so this is treated as Pilatus
# PETRA P14: raw data from Eiger are stored as CBF files so this is treated as Pilatus
       if [ "$DET_SN" == "Dectris Eiger 16M, E-32-0107" -o "$DET_SN" == "Dectris Eiger 4M, E-08-0107" -o "$DET_SN" == "PILATUS 6M-F, S/N 60-0115-F" ] ; then
       if [ "$DET_SN" == "Dectris Eiger 4M, E-08-0107" -o "$DET_SN" == "PILATUS 6M-F, S/N 60-0115-F" ] ; then
         rotation_axis="0 -1 0"
         rotation_axis="0 -1 0"
         echo ROTATION_AXIS="0 -1 0" at PETRA P14
         echo ROTATION_AXIS="0 -1 0" at PETRA P14
      fi
# similarly, Eiger 16M at PETRA P14 until May 22, 2021
      if [ "$DET_SN" == "Dectris Eiger 16M, E-32-0107" ] ; then
        egrep -q '^# 2020-|^# 2021-0[1-5]|^# 2021-06-[01]|^# 2021-06-2[01]' tmp2 || isatP13=1
        if [ "$isatP13" == 1 ] ; then
          echo using the default ROTATION_AXIS=1 0 0 at PETRA P13
        else
          rotation_axis="0 -1 0"
          echo ROTATION_AXIS="0 -1 0" at PETRA P14
        fi
       fi
       fi
# ESRF ID23-2:
# ESRF ID23-2:
Line 616: Line 629:
   # SSRF BL17U1 and SSRF BL10U2 (Feng YU 2021-07-18)
   # SSRF BL17U1 and SSRF BL10U2 (Feng YU 2021-07-18)
   # Eiger X 16M (S/N E-32-0111) was installed at SSRF BL17U1 from Oct 2017 to Feb 2021. After Feb 2021, it was moved back to SSRF BL10U2.
   # Eiger X 16M (S/N E-32-0111) was installed at SSRF BL17U1 from Oct 2017 to Feb 2021. After Feb 2021, it was moved back to SSRF BL10U2.
# 2021-02-01 00:00:00 CST time stamp is 1612108800
# 2021-03-01 00:00:00 time stamp is 1614528000
     if [ "$SN" == "E-32-0111" ]; then
     if [ "$SN" == "E-32-0111" ]; then
       collection_time=`h5dump -d "/entry/instrument/detector/detectorSpecific/data_collection_date" $FIRSTFRAME | grep "(0):" | awk '{print $2}' | sed -e "s/\.\(.*\)/CST/g; s/\"//g"`
       collection_time=`h5dump -d "/entry/instrument/detector/detectorSpecific/data_collection_date" $FIRSTFRAME | grep "(0):" | awk '{print $2}' | sed -e "s/\.\(.*\)//g; s/\"//g"`
       if [ `uname -s` == "Darwin" ]; then
       if [ `uname -s` == "Darwin" ]; then
         collection_timestamp=`date -j -f "%Y-%m-%dT%H:%M:%S%Z" $collection_time +%s`
         collection_timestamp=`date -j -f "%Y-%m-%dT%H:%M:%S" $collection_time +%s`
       elif [ `uname -s` == "Linux" ]; then
       elif [ `uname -s` == "Linux" ]; then
         collection_timestamp=`date -d $collection_time +%s`
         collection_timestamp=`date -d $collection_time +%s`
Line 635: Line 648:
           rotation_axis="-1 0 0    ! Cannot determine rotation axis. SSRF BL17U1: -1 0 0; SSRF BL02U1: 0 -1 0"
           rotation_axis="-1 0 0    ! Cannot determine rotation axis. SSRF BL17U1: -1 0 0; SSRF BL02U1: 0 -1 0"
         fi
         fi
       elif [ $collection_timestamp -ge 0 ] && [ $collection_timestamp -le 1612108800 ]; then
       elif [ $collection_timestamp -ge 0 ] && [ $collection_timestamp -le 1614528000 ]; then
         # SSRF BL17U1
         # SSRF BL17U1
         rotation_axis="-1 0 0"
         rotation_axis="-1 0 0"
Line 666: Line 679:
     fi
     fi
# revision 1.05 specialcase nframes for Eiger detectors at BNL
# revision 1.05 specialcase nframes for Eiger detectors at BNL
     if [ "$SN" == "E-18-0121" -o "$SN" == "E-32-0101" ]; then
     if [ "$SN" == "E-18-0104" -o "$SN" == "E-32-0101" ]; then
       echo specialcase nframes for Eiger detectors at BNL:
       echo specialcase nframes for Eiger detectors at BNL:
       nframes=`h5dump -A -g "/entry/data" $FIRSTFRAME | grep "DATASPACE  SIMPLE" | sed -e "s/,.*//" | awk '{a+=$5}END{print a}'`
       nframes=`h5dump -A -g "/entry/data" $FIRSTFRAME | grep "DATASPACE  SIMPLE" | sed -e "s/,.*//" | awk '{a+=$5}END{print a}'`
Line 988: Line 1,001:
     if [ -e /usr/local/lib64/dectris-neggia.so ]; then
     if [ -e /usr/local/lib64/dectris-neggia.so ]; then
       echo LIB=/usr/local/lib64/dectris-neggia.so >> XDS.INP
       echo LIB=/usr/local/lib64/dectris-neggia.so >> XDS.INP
       echo LIB= line was written to XDS.INP . For Apple processors you must modify the name.
       echo LIB= line was written to XDS.INP . For Apple ARM64 processors, you must modify the name.
     else
     else
       echo !LIB=/usr/local/lib64/dectris-neggia.so >> XDS.INP
       echo !LIB=/usr/local/lib64/dectris-neggia.so >> XDS.INP
2,652

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.

Navigation menu