Hi,

There are 2 basic ways of approaching this problem: the good and the
bad (I won't even mention the ugly!).  The bad ways all involve
counting columns and working out Fortran formats.  This is because it
cannot be safely assumed that the file has been written with fixed
length records, which is the basic assumption you're making when you
specify a Fortran format.  If the file was written using Fortran 'G'
(general) format then some numbers might appear as (for example)
'123.456' whereas others might come out as (say) 1.23456E+10.  There's
no way a fixed format read can handle both of these.  Added to that,
working out a Fortran format is surely very error-prone, as evidenced
by the number of questions posted to the BB from people who have
attempted it!  If you get it wrong and you're lucky the program will
crash and you'll know you have to try one of the 'good' ways.  If
you're unlucky the program will run to completion and produce a
success status, but in reality some reflections will have been
assigned the wrong values, and you'll probably never know that it
didn't actually work.

The only safe way is to treat the file as free format: there are a
number of 'good' ways, some of which have been mentioned (e.g.
convert2mtz, phenix.refine).  Might I also suggest that you Read The
Fine Manual, specifically of the f2mtz program, which is the CCP4
utility which does this conversion.  This advises converting the file
first to free format using a little perl script (I know there are
other and no doubt equally reliable scripts around), which completely
circumvents column-counting and the fixed Fortran format trap.

If convert2mtz or any of the 'approved' ways didn't work, I would
encourage you to report it: that way if the program is at fault and it
gets fixed then everyone benefits; if you did something wrong then at
least you'll end up a little wiser.

Cheers

-- Ian

On Tue, Sep 28, 2010 at 3:41 PM, Jeremiah Farelli <jfare...@bu.edu> wrote:
> We recently had this problem in our lab.
>
> No matter what we tried, we could not get convert2mtz (or any other program) 
> to work properly.  We were probably doing something wrong with the 
> fortran....?
>
> Depending on how far along you are, you can try using phenix.refine.  Just 
> input your model and the .cv file and phenix will export a new .cv file with 
> Free-R flags intact.
>
> If you aren't to the model building stage yet, this won't work however.

Reply via email to