Not sure if that helps, I have tested this one some years ago. F_000 has definitively to be adapted in VESTA but I have seen good results
Cheers
Dominique
macro Out_FCF(file)
{
out file
Out_String("\ndata_")
Out_String("\n_shelx_refln_list_code 3")
Out_String("\n_exptl_crystal_F_000 51")
Out_String("\nloop_\n_symmetry_equiv_pos_as_xyz")
Out(Get(sp_xyzs_txt), "%s")
Out(Get(a), "\n_cell_length_a %V")
Out(Get(b), "\n_cell_length_b %V")
Out(Get(c), "\n_cell_length_c %V")
Out(Get(al), "\n_cell_angle_alpha %V")
Out(Get(be), "\n_cell_angle_beta %V")
Out(Get(ga), "\n_cell_angle_gamma %V")
Out_String("\nloop_")
Out_String("\n_refln_index_h")
Out_String("\n_refln_index_k")
Out_String("\n_refln_index_l")
Out_String("\n_refln_F_meas")
Out_String("\n_refln_F_sigma")
Out_String("\n_refln_A_calc")
Out_String("\n_refln_B_calc")
phase_out file append
load out_record out_fmt out_eqn
{
"\n%4.0f" = H;
"%4.0f" = K;
"%4.0f" = L;
"%11.5f" = Sqrt ((Iobs_no_scale_pks / M) / Get(scale));
"%11.5f" = Sqrt ((Iobs_no_scale_pks_err / M) / Get(scale));
"%11.5f" = If(Iobs_no_scale_pks >= 0.00001, A01, 0.00001 );
"%11.5f" = B01;
}
fourier_map 1
fourier_map_formula = Fobs - Fcalc;
min_grid_spacing 0.1
correct_for_atomic_scattering_factors 0
}
macro Out_FCFwithanomr(file)
{
out file
Out_String("\ndata_")
Out_String("\n_shelx_refln_list_code 3")
Out_String("\n_exptl_crystal_F_000 50")
Out_String("\nloop_\n_symmetry_equiv_pos_as_xyz")
Out(Get(sp_xyzs_txt), "%s")
Out(Get(a), "\n_cell_length_a %V")
Out(Get(b), "\n_cell_length_b %V")
Out(Get(c), "\n_cell_length_c %V")
Out(Get(al), "\n_cell_angle_alpha %V")
Out(Get(be), "\n_cell_angle_beta %V")
Out(Get(ga), "\n_cell_angle_gamma %V")
Out_String("\nloop_")
Out_String("\n_refln_index_h")
Out_String("\n_refln_index_k")
Out_String("\n_refln_index_l")
Out_String("\n_refln_F_meas")
Out_String("\n_refln_F_sigma")
Out_String("\n_refln_A_calc")
Out_String("\n_refln_B_calc")
phase_out file append
load out_record out_fmt out_eqn
{
"\n%4.0f" = H;
"%4.0f" = K;
"%4.0f" = L;
"%11.5f" = Sqrt ((Iobs_no_scale_pks / M) / Get(scale));
"%11.5f" = Sqrt ((Iobs_no_scale_pks_err / M) / Get(scale));
"%11.5f" = If(Iobs_no_scale_pks >= 0.00001, A01-B11, 0.00001 );
"%11.5f" = A11+B01;
}
fourier_map 1
fourier_map_formula = Fobs - Fcalc;
min_grid_spacing 0.1
correct_for_atomic_scattering_factors 0
}