MATLAB试验数据拟合——日记1(如有错误,欢迎指正,虚心学习)
2022年11月13日记
文章目录
问题描述
现有数值模拟煤层不同角度切顶后三个不同区域:采空区、实体煤段、煤柱段的各16个监测点的应力数据,现需要对其使用matlab进行以下工作:
①分段拟合,第一段:y = ax + b,第二段:y = ae^(bx + c) + d
②应力峰值:即拟合后最大值
③平均应力集度差,拟合后相邻角度的函数面积差
部分数据示例:【数据表名称:应力数据.xlsx】
部分数据:
提示:以下是本篇文章正文内容,下面案例可供参考
一、分析思路
①简单观察数据的图像走势:
②用点1-5拟合第一段,用5-16拟合第二段,获得两个函数的具体参数后再求其交点,此交点即为峰值点。
③计算面积并相邻面积做差(Excel即可完成)
二、具体代码实现
1.主函数:main.m
代码如下:
clc
clear
%% 导入数据
data1 = xlsread('应力数据','Sheet1','A3:P18'); % 表中第一个板块数据
data2 = xlsread('应力数据','Sheet1','A23:P38'); % 表中第二个板块数据
%% 需要拟合的数据
turning_point = 5; bottom = 16;
x1 = data1(1:turning_point,1); y1 = data1(1:turning_point,2);
x2 = data1(turning_p