All, I thought this would be a simple task, but for the life of me I can't see how to do it! All I want to do is convert an MTZ file to Shel-X format for refinement. I thought it would take me 2 secs, but it's taken me at least 5 attempts, and it's still not right!
First I tried mtz2various with this command line: echo 'labi FP=F SIGFP=SIGF FREE=FreeR_flag\noutp shelx' | mtz2various hklin 16294 hklout 16294.hkl with 'HKLF 3' in my .ins file. This works fine, but then shelxl complains with: 11112222333344444444555555556666 >> -48 0 27 37.49 19.74 -1<< ?? ** REFLECTION 30 HAS WRONG FORMAT ** OK fair enough I should have read the Shel-X manual first, because it appears that 'HKLF 3' doesn't accept free R flags, it has to be 'HKLF 4' (i.e. I's not F's). So when all else fails read the mtz2various documentation (at least read it more thoroughly): * If only FP SIGFP or IP SIGIP are assigned on LABIN, then h k l FP SIGFP or h k l IP SIGIP is output. Great, precisely what I want! So for my second try let's go with: echo 'labi IP=IMEAN SIGIP=SIGIMEAN FREE=FreeR_flag\noutp shelx' | mtz2various hklin 16294 hklout 16294.hkl but no: Data line--- labi IP=IMEAN SIGIP=SIGIMEAN FREE=FreeR_flag MtzParseLabin: neither label recognised: IP IMEAN MTZ2VARIOUS: Error in label assignments in LABIN Yet the output also says: LABIN <program label>=<file label> ... Valid program labels are: FP, SIGFP and optionally FPH, SIGFPH, IP, SIGIP, FC, PHIC, W, FPART, PHIPART, PHIB, FOM, HLA HLB HLC HLD FREE My first thought was "I've got the IMEAN/SIGIMEAN label wrong", but no, mtzdump says: Col Sort Min Max Num % Mean Mean Resolution Type Column num order Missing complete abs. Low High label 1 ASC -49 43 0 100.00 -8.7 18.6 48.75 1.33 H H 2 NONE 0 32 0 100.00 12.0 12.0 48.75 1.33 H K 3 NONE 0 41 0 100.00 15.7 15.7 48.75 1.33 H L 4 NONE 4.2 854.8 314 99.01 82.26 82.26 34.92 1.33 F F 5 NONE 0.7 241.2 314 99.01 3.38 3.38 34.92 1.33 Q SIGF 6 NONE -58.6 8600.6 314 99.01 146.23 146.25 34.92 1.33 J IMEAN 7 NONE 0.5 5370.6 314 99.01 5.88 5.88 34.92 1.33 Q SIGIMEAN 8 NONE 0.0 19.0 0 100.00 9.48 9.48 48.75 1.33 I FreeR_flag Then I look further down in mtz2various.doc: Input labels accepted are: H, K, L Indices FP, SIGFP F and Sigma for native FPH, SIGFPH F and Sigma for derivative FC, PHIC F and Phase from model FPART, PHIPART F and Phase from partial structure DP, SIGDP Anomalous difference and Sigma I, SIGI I and Sigma So OK, fair enough IP, SIGIP was a typo (happens all the time in CCP4 documentation!), so problem solved, for my third go let's try: echo 'labi I=IMEAN SIGI=SIGIMEAN FREE=FreeR_flag\noutp shelx' | mtz2various hklin 16294 hklout 16294.hkl Yes it worked!!! or did it??? I see that the output file has "HKLF 3" in the header, and when I read the log file I see: ****NB Amplitude Output , flagged with HKLF 3 ***. No good, Shel-X won't take free R flags with HKLF 3 - and I thought mtz2various.doc said that if I/SIGI are assigned then I/SIGI are output? (which would make a lot of sense!). Then I read in mtz2various.doc: FSQUARED If this flag is set, the program expects F and SIGF and will output I and SIGI: I = F*F, SIGI = 2*SIGF*F + SIGF*SIGF. These intensities are not necessarily the same as the measured intensities (pre-TRUNCATE); it is better to use the measured values if you have them. I completely agree with the last sentence! - but how to make it read I's and write I's? So in desperation to get something working, my fourth go is with: echo 'labi FP=F SIGFP=SIGF FREE=FreeR_flag\nfsqu\noutp shelx' | mtz2various hklin 16294 hklout 16294.hkl This works: a file in HKLF 4 format containing apparently I & SIGI is produced, but again Shel-X complains: 11112222333344444444555555556666 >> -48 0 27 37.49 19.74 -1<< ?? ** REFLECTION 30 HAS WRONG FORMAT ** Aaaargh - back to step 1! So next I seek advice from a Shel-X user who says they've never seen the "FREE" text at the end of the test reflection lines, e.g.: -48 0 27 114.07 151.73 -1 FREE and I say something along the lines of "don't be silly there's no way the program would write it out like that if Shel-X didn't accept it" - and just to prove to them how dumb their suggestion is I do a global edit of the file, and of course it turns out they're quite right, and technically it works - except of course that I is not the same as F^2 if F has come from truncate (good thing I read the documentation!). I see that mtz2various.doc says "You may still have trouble getting exactly the output you want.". Maybe that's the answer I've been seeking! - or I've missed something very obvious. I could of course have knocked up a jiffy Fortran program in 5 mins to read h, k ,l, I, SIGI, Rflag in one format and write out h, k, l, I, SIGI, Rflag in another format (and I'll probably end up doing just that!), but pity those users who are not programmers! So what have I missed - any ideas? -- Ian Disclaimer This communication is confidential and may contain privileged information intended solely for the named addressee(s). It may not be used or disclosed except for the purpose for which it has been sent. If you are not the intended recipient you must not review, use, disclose, copy, distribute or take any action in reliance upon it. If you have received this communication in error, please notify Astex Therapeutics Ltd by emailing [EMAIL PROTECTED] and destroy all copies of the message and any attached documents. Astex Therapeutics Ltd monitors, controls and protects all its messaging traffic in compliance with its corporate email policy. The Company accepts no liability or responsibility for any onward transmission or use of emails and attachments having left the Astex Therapeutics domain. Unless expressly stated, opinions in this message are those of the individual sender and not of Astex Therapeutics Ltd. The recipient should check this email and any attachments for the presence of computer viruses. Astex Therapeutics Ltd accepts no liability for damage caused by any virus transmitted by this email. E-mail is susceptible to data corruption, interception, unauthorized amendment, and tampering, Astex Therapeutics Ltd only send and receive e-mails on the basis that the Company is not liable for any such alteration or any consequences thereof.