声发射熵值参数的Matlab处理
熵值是声发射数据处理的特征参数,对表征声发射活动具有重要意义。
Santis 1研究了地震熵与b值的关系,给出了它们之间的表达式,并将熵的方法应用于震例分析,表明地震孕育的过程是熵增加的过程。本文采用熵处理过程如下:首先将声发射震级序列按照最大和最小震级划分等级,取1000个声发射数据作为统计窗口进行分组,计算每组数据中相同震级的声发射数目,进而计算每一震级的概率,然后按照式1.1和式1.2计算熵值。同b值的计算过程一样,也采用滑动窗口的方式取样计算熵值,滑动窗口设为100个声发射事件,以窗口末尾时间作为计算熵值的时刻,得到声发射熵值随时间(应变)的变化过程。
1. 声发射数据格式
打开hghk-1.txt文本文件,数据格式见下图。左列为时间(秒),右列为声发射能量。
2. 在包含entropy.m的文件夹下运行main.m,结果如下。
其中第一列为时间(秒),第2列为熵值。
3. 熵值函数部分源代码
function [t entro]=entropy(data_in,level)
[M N]=size(data_in);
%记录输入矩阵末尾的时间
t=data_in(M,1);
%每个等级里计数
for i=1:15
jishu=0;
for j=1:M
if data_in(j,2)>=level(i) && data_in(j,2)<=level(i+1)
jishu=jishu+1;
end
end
num(i)=jishu;
end
num=num';
1.SANTIS A D.The Gutenberg–Richter Law and Entropy of Earthquakes:Two Case Studies in Central Italy[J].Bulletin of the Seismological Society of America,2011,101(3):1386-1395.
1 ↩︎