本文主要是介绍使用x射线与大块材料中原子相互作用的基本理论模拟相对强度XRD图案(Matlab代码实现),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
💥1 概述
📚2 运行结果
🎉3 参考文献
👨💻4 Matlab代码
💥1 概述
这一系列 MATLAB 代码旨在使用x射线与大块材料中原子相互作用的基本理论模拟相对强度XRD图案。
除非需要混合物成分规则,否则无需预定义参数。在这种情况下应编辑Scatteringdata.xlsx并将所需的组件添加到工作表的末尾。
要操作该程序,请使用以下过程:
- 运行XRD_Intensity_Simulation.m
- 选择 X 射线源
📚2 运行结果
🎉3 参考文献
[1]胡林彦,张庆军,沈毅.X射线衍射分析的实验方法及其应用[J].河北理工学院学报,2004(03):83-86+93.
👨💻4 Matlab代码
主函数部分代码:
%% Theoretical Peak Intensity Calcuclator
% This program takes user input about a specific crystal structure and
% determines the peak positions and relative intensities. Based on theory
% that can be found in Structure of Materials: An Introduction to
% Crystallography, Diffraction, and Symmetry by Marc De Gaef and Michael E.
% McHenry
%%
%Extract the necessary simulation parameters from the user
[crystaltype,hklvec,lambda,atoms,lattice_spacing] = dialogue();
%Calcualte the d spacing of individual crystal planes.
dspacevec=dspace(hklvec,crystaltype,lattice_spacing);
%Calcualte the theta and s values at different hkl peaks.
[thetavec,svec]=theta_s_calc(lambda,dspacevec);
%Calculate the scattering factor for each atom involved.
scatterfactorvec=scatterfactor(svec, crystaltype, atoms);
%Calculate the strucutre factor for each plane.
structurefactors=structurefactor(scatterfactorvec,crystaltype);
%Calculate absolute intensity
intensityvec=intensitycalc(structurefactors,crystaltype,thetavec);
%Compare Absolute and Relative Intensities
compareintensity(intensityvec,hklvec,thetavec,crystaltype,atoms,lattice_spacing)
这篇关于使用x射线与大块材料中原子相互作用的基本理论模拟相对强度XRD图案(Matlab代码实现)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!