fourier_maps
Fourier Maps in Superflip
In addition to the TOPAS Fourier map calculations and viewer, you can output information to calculate/view maps in other software.
The macro below was contributed by Lynne McCusker. It creates an input file for superflip to calculate an (Fobs-Fcalc) difference map. This can be output in a format (.xplor) that can be read by Chimera or Vesta. It can be executed with a simple “superflip file.inflip” command. The file.inflip will need minor editting to remove the quotation marks around the symmetry operators.
macro Out_Inflip(file) ' Prints a superflip input file to generate a difference Fourier map in xplor format' ' that can be viewed in Chimera' ' The command 'superflip file' will then produce a diffmap_phasename.xplor file' { out file Out_String("title superflip difference map") Out(Get(phase_name), " %s") Out_String("\n\ndimension 3") Out_String("\nvoxel 112 56 40") Out_String("\ncell") Out(Get(a), " %10.5f") Out(Get(b), " %10.5f") Out(Get(c), " %10.5f") Out(Get(al), " %10.5f") Out(Get(be), " %10.5f") Out(Get(ga), " %10.5f") Out_String("\n\ncenters") Out_String("\n 0 0 0") Out_String("\nendcenters") Out_String("\n\nsymmetry") Out(Get(sp_xyzs_txt), "%s") Out_String("\nendsymmetry") Out_String("\n\nperform fourier") Out_String("\nterminal yes") Out(Get(phase_name), "\n\noutputfile diffmap%s.xplor") Out_String("\noutputformat xplor") Out_String("\n\ndataformat a b") Out_String("\nfbegin") phase_out file append load out_record out_fmt out_eqn { "\n%4.0f" = H; "%4.0f" = K; "%4.0f" = L; "%15.4f" = ((A01-B11)/Sqrt((A01-B11)^2+(B01+A11)^2)) * (Sqrt(Iobs_no_scale_pks/(M*Get(scale))) - Sqrt((A01-B11)^2+(B01+A11)^2)); 'A Fdiff' "%15.4f" = ((B01+A11)/Sqrt((A01-B11)^2+(B01+A11)^2)) * (Sqrt(Iobs_no_scale_pks/(M*Get(scale))) - Sqrt((A01-B11)^2+(B01+A11)^2)); 'B Fdiff' } out file append Out_String("\nendf") }
fourier_maps.txt · Last modified: 2022/11/03 15:08 by 127.0.0.1