2cbf: Difference between revisions

From XDSwiki
Jump to navigation Jump to search
No edit summary
(example)
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 know to XDS to a miniCBF file. This program is also used by [[XDSGUI]].
[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]].
 
Example (bash shell):
for i in ../img/*img ; do echo $i; echo $i $i.cbf | 2cbf ; done
This converts all .img files in ../img to miniCBF files with the extension .img.cbf .


For 2cbf to work with the [http://xds.mpimf-heidelberg.mpg.de/html_doc/xds_parameters.html#LIB= LIB=] option, it is mandatory to have a filename like test_123456.xy, i.e. with a 6-digit number and a 2-letter extension. If you want to use LIB= and your filenames do not follow this pattern, just symlink them, and construct the symlinks accordingly: e.g.
For 2cbf to work with the [http://xds.mpimf-heidelberg.mpg.de/html_doc/xds_parameters.html#LIB= LIB=] option, it is mandatory to have a filename like test_123456.xy, i.e. with a 6-digit number and a 2-letter extension. If you want to use LIB= and your filenames do not follow this pattern, just symlink them, and construct the symlinks accordingly: e.g.

Revision as of 12:04, 2 April 2020

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.

Example (bash shell):

for i in ../img/*img ; do echo $i; echo $i $i.cbf | 2cbf ; done

This converts all .img files in ../img to miniCBF files with the extension .img.cbf .

For 2cbf to work with the LIB= option, it is mandatory to have a filename like test_123456.xy, i.e. with a 6-digit number and a 2-letter extension. If you want to use LIB= and your filenames do not follow this pattern, just symlink them, and construct the symlinks accordingly: e.g.

#!/bin/bash
# purpose: create symlinks for xds_par
# usage: mklinks

for j in $(seq 1 120); do
  ln -sfn Data_02_$(printf "%04d" "$j").sfrm Data_02_$(printf "%06d" "$j").sf
done

echo ready

If you don't do this, you'll get an error message like

forrtl: severe (59): list-directed I/O syntax error, unit -5, file Internal List-Directed Read
Image              PC                Routine            Line        Source             
2cbf               000000000041DCDC  Unknown               Unknown  Unknown
2cbf               00000000004476AA  Unknown               Unknown  Unknown
2cbf               0000000000445C2B  Unknown               Unknown  Unknown
2cbf               00000000004059B8  getfrm_                  1713  MAIN_2CBF.f90
2cbf               0000000000404C6A  MAIN__                     58  MAIN_2CBF.f90
2cbf               0000000000402ADE  Unknown               Unknown  Unknown
libc-2.17.so       00007FB47339BB35  __libc_start_main     Unknown  Unknown
2cbf               00000000004029E9  Unknown               Unknown  Unknown