def test_FeMn_nonzero(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") rhochi = cryspy.file_to_globaln(f_name) chi_sq, n_points = rhochi.calc_chi_sq() assert chi_sq < 5112.6 assert int(n_points) == 1091
def test_f_mag(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "1.0.2_URu0.96Rh0.04Si2.mcif") globaln = cryspy.file_to_globaln(f_name) mag_cif = globaln.mag_crystal_5yOhtAoR index_hkl = numpy.array( [[1, 2, 0, 1, 0, 3, 2, 2, 4], [0, 0, 0, 1, 1, 0, 0, 1, 0], [1, 0, 2, 0, 1, 1, 2, 1, 0]], dtype=int) space_group_symop_magn_operation = mag_cif.space_group_symop_magn_operation space_group_symop_magn_centering = mag_cif.space_group_symop_magn_centering cell = mag_cif.cell atom_site = mag_cif.atom_site try: atom_site_aniso = mag_cif.atom_site_aniso except AttributeError as e: atom_site_aniso = None atom_site_scat = mag_cif.atom_site_scat atom_site_scat.load_atom_type_scat_by_atom_site(atom_site) atom_site_moment = mag_cif.atom_site_moment flag_derivatives = False flag_only_orbital= False f_mag, dder = calc_f_mag(index_hkl, space_group_symop_magn_operation, space_group_symop_magn_centering, cell, atom_site, atom_site_aniso, atom_site_scat, atom_site_moment, flag_derivatives=flag_derivatives, flag_only_orbital=flag_only_orbital)
def test_UNPD_PbSo4(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") rhochi = cryspy.file_to_globaln(f_name) chi_sq, n_points = rhochi.calc_chi_sq() assert chi_sq < 4427.6 assert int(n_points) == 756
def test_refine_mcif(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "pd_test.rcif") rhochi = cryspy.file_to_globaln(f_name) chi_sq, n_points = rhochi.calc_chi_sq() assert chi_sq < 3036.0 assert int(n_points) == 4901
def test_calc_FR_2channel(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") mem = cryspy.file_to_globaln(f_name) mem.calc_fr() diffrn = mem.diffrn_exp_mnbite refine_ls = diffrn.refine_ls
def test_wrong_cif(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "wrong_cif.rcif") globaln = cryspy.file_to_globaln(f_name) assert globaln.data_Tb2Ti2O7.geom_angle[0].label is None assert globaln.data_tb2ti2o7.atom_type[ "TI"].scat_length_neutron.real == -0.3438 assert globaln.data_global.journal.name_full == "Journal Name"
def test_refine(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") rhochi = cryspy.file_to_globaln(f_name) rhochi.refine() chi_sq, n_points = rhochi.calc_chi_sq() assert chi_sq < 429.1 assert int(n_points) == 142
def test_estimate_fm(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") rhochi = cryspy.file_to_globaln(f_name) l_estimation = rhochi.estimate_f_mag_for_diffrn() estim = l_estimation[0] l_f_m = estim.f_m l_f_m_sigma = estim.f_m_sigma
def test_calc_FR_tensorMEM(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") mem = cryspy.file_to_globaln(f_name) mem.calc_fr() diffrn = mem.diffrn_exp_mnbite refine_ls = diffrn.refine_ls mem.create_prior_density()
def test_refine_mcif(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "pd_test.rcif") rhochi = cryspy.file_to_globaln(f_name) d_out = cryspy.rhochi_no_refinement(rhochi) chi_sq = d_out["chi_sq"] n_points = d_out["n_points"] assert chi_sq < 3036.0 assert int(n_points) == 4901
def test_FeMn_nonzero(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") rhochi = cryspy.file_to_globaln(f_name) d_out = cryspy.rhochi_no_refinement(rhochi) chi_sq = d_out["chi_sq"] n_points = d_out["n_points"] assert chi_sq < 5112.6 assert int(n_points) == 1091
def test_UNPD_PbSo4(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") rhochi = cryspy.file_to_globaln(f_name) d_out = cryspy.rhochi_no_refinement(rhochi) chi_sq = d_out["chi_sq"] n_points = d_out["n_points"] # chi_sq, n_points = rhochi.calc_chi_sq() assert chi_sq < 55600.9 assert int(n_points) == 25553
def test_calc_FR_2channel(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") mem = cryspy.file_to_globaln(f_name) mem.calc_fr() diffrn = mem.diffrn_exp_mnbite refine_ls = diffrn.refine_ls assert refine_ls.goodness_of_fit_all < 0.986 assert refine_ls.number_reflns == 142
def test_refine(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") rhochi = cryspy.file_to_globaln(f_name) cryspy.rhochi_run(rhochi) d_out = cryspy.rhochi_no_refinement(rhochi) chi_sq = d_out["chi_sq"] n_points = d_out["n_points"] assert chi_sq < 429.1 assert int(n_points) == 142
def test_calc_FR_tensorMEM(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") mem = cryspy.file_to_globaln(f_name) mem.calc_fr() diffrn = mem.diffrn_exp_mnbite refine_ls = diffrn.refine_ls assert refine_ls.goodness_of_fit_all < 4.99 assert refine_ls.number_reflns == 142 mem.create_prior_density()
def test_estimate_fm(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") rhochi = cryspy.file_to_globaln(f_name) l_estimation = cryspy.calc_f_mag_for_diffrn(rhochi) estim = l_estimation[0] l_f_m = estim.f_m l_f_m_sigma = estim.f_m_sigma assert abs(float(l_f_m[0]) - (-0.7881)) < 0.001 assert abs(float(l_f_m[1]) - (-0.2003)) < 0.001 assert abs(float(l_f_m[2]) - (0.68611)) < 0.001 assert abs(float(l_f_m[3]) - (0.41953)) < 0.001 assert abs(float(l_f_m_sigma[0]) - 0.16078) < 0.001 assert abs(float(l_f_m_sigma[1]) - 0.14083) < 0.001 assert abs(float(l_f_m_sigma[2]) - 0.47949) < 0.001 assert abs(float(l_f_m_sigma[3]) - 0.34928) < 0.001
import numpy from cryspy import file_to_globaln from cryspy.A_functions_base.function_1_matrices import calc_chi_sq f_name = "main.rcif" mem_obj = file_to_globaln(f_name) mem_obj.calc_fr() density_point = mem_obj.density_point diffrn = mem_obj.diffrn_exp_mnbite diffrn_refln = diffrn.diffrn_refln # Analytical Derivatives fr_e = numpy.array(diffrn_refln.fr, dtype=float) fr_s = numpy.array(diffrn_refln.fr_sigma, dtype=float) crystal = mem_obj.crystals()[0] l_diffrn = mem_obj.experiments() mem_parameters = mem_obj.mem_parameters density_point.volume_unit_cell = crystal.cell.volume density_point.number_unit_cell = \ mem_parameters.points_a * mem_parameters.points_b * \ mem_parameters.points_c chi_iso_ferro = mem_parameters.chi_ferro
def test_FeMn_zero(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") rhochi = cryspy.file_to_globaln(f_name) chi_sq, n_points = rhochi.calc_chi_sq()
def test_UNPD_PbSo4(): dir = os.path.dirname(__file__) f_name = os.path.join(dir, "main.rcif") rhochi = cryspy.file_to_globaln(f_name) rhochi.refine() chi_sq, n_points = rhochi.calc_chi_sq()