2,718
edits
No edit summary |
m (another fix) |
||
(6 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
[http://xds.mpimf-heidelberg.mpg.de/html_doc/2cbf_program.html 2cbf] is part of the [[XDS]] distribution. It converts any image file format that is known to XDS to a miniCBF file. This program is also used by [[XDSGUI]]. | |||
Single-line example (bash shell): | |||
for i in ../images/*img ; do echo $i; echo $i `basename $i`.cbf | 2cbf ; done | |||
This converts all .img files in ../images to miniCBF files with the extension .img.cbf in the current directory. | |||
To have control over the number of digits encoding the frame number, one can use bash's printf command. Example: | |||
<pre> | <pre> | ||
#!/bin/bash | #!/bin/bash | ||
for j in $(seq 1 120); do | for j in $(seq 1 120); do | ||
echo Data_02_$(printf "%04d" "$j").sfrm Data_02_$(printf "%04d" "$j").cbf | 2cbf | |||
done | done | ||
</pre> | |||
To convert frames stored in Dectris-format .h5 files, one should replace "master" with a 6-digit framenumber, and use the [https://xds.mr.mpg.de/html_doc/xds_parameters.html#LIB= LIB=] keyword: | |||
echo collect_01_000001.h5 collect_1.cbf LIB=/usr/local/lib64/dectris-neggia.so | 2cbf | |||
It should work without LIB=, but then H5ToXds is required. | |||
echo | To convert a full data set, use e.g.: | ||
#!/bin/bash | |||
for j in $(seq 1 100); do | |||
echo x1_1_$(printf "%06d" "$j").h5 x1_1_$(printf "%04d" "$j").cbf LIB=/usr/local/bin/linux_bin/dectris-neggia.so | 2cbf | |||
done | |||
or just use GlobalPhasing's hdf2mini-cbf : | |||
hdf2mini-cbf x1_1_master.h5 -linkrange 1 100 | |||
which seems to convert batches of 100 frames - don't know how to restrict it to convert only frames 1 to 100. The advantage of hdf2mini-cbf is that it writes a proper mini-CBF header which is suitable for MOSFLM or DIALS. | |||