Warning: Trying to access array offset on value of type null in /home/site/wwwroot/lib/plugins/move/action/rename.php on line 42

Warning: Cannot modify header information - headers already sent by (output started at /home/site/wwwroot/lib/plugins/move/action/rename.php:42) in /home/site/wwwroot/inc/actions.php on line 38
out_cif_mag [topas wiki]

User Tools

Site Tools


out_cif_mag

Out_CIF_mag

Output a CIF with components of magnetic moments along x, y and z. Note a temporary (18/7/2011) bug in magnetic version of topas means it's best to replace the “%11.5f” formats of the last 3 lines with “%V”.

		macro Out_CIF_mag(file) {
		out file
 		Out_String("data_topas_output")
		Out(Get(sp_grp_char), "\n\n_mag_space_group_BNS_number %s")
		Out(Get(a), "\n_magnetic_cell_length_a  %V")
		Out(Get(b), "\n_magnetic_cell_length_b  %V")
		Out(Get(c), "\n_magnetic_cell_length_c  %V")
		Out(Get(al), "\n_magnetic_cell_angle_alpha %V")
		Out(Get(be), "\n_magnetic_cell_angle_beta  %V")
		Out(Get(ga), "\n_magnetic_cell_angle_gamma %V")	
 
		Out_String("\n\nloop_")
		Out_String("\n_magnetic_space_group_symop_id")
		Out_String("\n_magnetic_space_group_symop_operation_xyz")
		Out_String("\n_magnetic_space_group_symop_operation_mxmymz")
		Out_String("\n_magnetic_space_group_symop_operation_timereversal")
 		Out(Get(mag_sp_xyzs_txt),  "%s")
 
		Out_String("\n\nloop_")
                 Out_String("\n_magnetic_atom_site_label")
                 Out_String("\n_magnetic_atom_site_type_symbol")
                 Out_String("\n_magnetic_atom_site_fract_x")
                 Out_String("\n_magnetic_atom_site_fract_y")
                 Out_String("\n_magnetic_atom_site_fract_z")
                 Out_String("\n_magnetic_atom_site_occupancy")
                 Out_String("\n_magnetic_atom_site_B_iso_or_equiv")
		atom_out file append
		load out_record out_fmt out_eqn
                 {
		"\n%s" = Get_From_String(Get(current_atom), site);
		" %s" = Get_From_String(Get(current_atom), atom);
		" %V" = Get_From_String(Get(current_atom), x);
		" %V" = Get_From_String(Get(current_atom), y);
	        " %V" = Get_From_String(Get(current_atom), z);
	        " %V" = Get_From_String(Get(current_atom), occ);
	        " %V" = Get_From_String(Get(current_atom), beq);
                 }
 
                  out file append      
		Out_String("\n\nloop_")
		Out_String("\n_magnetic_atom_site_label")
		Out_String("\n_magnetic_atom_site_moment_crystalaxis_mx")
                 Out_String("\n_magnetic_atom_site_moment_crystalaxis_my")
                 Out_String("\n_magnetic_atom_site_moment_crystalaxis_mz")
		atom_out file append
		load out_record out_fmt out_eqn
                 {
		"\n%s" = Get_From_String(Get(current_atom), site);
		"%11.5f" = Get(a) Get_From_String(Get(current_atom), mlx);        
		"%11.5f" = Get(b) Get_From_String(Get(current_atom), mly);        
	         "%11.5f" = Get(c) Get_From_String(Get(current_atom), mlz);        
                  }	
                  }
out_cif_mag.txt · Last modified: 2022/11/03 15:08 by 127.0.0.1