APP下载

浅析MATLAB在统计分析与常微分方程中的应用

2019-03-26袁朱红

数理化解题研究 2019年9期
关键词:库塔欧拉数据量

袁朱红

(河北农业大学理学院数学系 071000)

随着社会的快速发展以及信息技术的广泛应用,数学发挥着越来越大的作用.在强调数学定义、定理的证明以及推理计算过程的同时,不能忽略数学在解决现实问题中的应用性.如果在数学学习中引入MATLAB,不仅能够实现计算的精准性,而且还能高效地解决数学中的实际应用问题.

一、MATLAB在数据统计分析中的应用

在传统学习中,学生都是通过肉眼观察比较数据求其最值,笔算各种数据进行统计分析.针对数据量少的情况,学生可以完成.但是一旦数据量增大,学生将很难快速准确计算出相应结果.而在实际应用中,经常需要对大量数据进行统计处理,对此MATLAB能提供相关函数简单化地实现.

>>A=[1,-1,2,3;5,1,-4,2;3,0,5,2;11,15,10,9]%建立矩阵A.

>>max(max(A))%求数据矩阵的最大值.

ans=15

>>min(min(A))%求数据矩阵的最小值.

ans=-4

>>sum(sum(A,2))%数据矩阵求和.

ans=64

>>prod(prod(A,2))%数据矩阵求积.

ans=0

>>mean(mean(A,2))%求数据矩阵的算术平方根.

ans=4

>>median(median(A,2))%求数据矩阵的中值.

ans=2

>>cumsum(A,dim)%当dim为1时,返回一个矩阵,其第i列是A的第i列的累加和向量;当dim为2时,返回一个矩阵,其第i行是A的第i行的累加和向量(矩阵累乘积函数cumprod与之用法相同).

>>std(A,flag,dim)%当dim为1时,求各列元素的标准差;当dim为2时,求各行元素的标准差.

>>var(A,flag,dim)%当dim为1时,求各列元素的方差;当dim为2时,求各行元素的方差.

>>corrcoef(A)%矩阵A形成的一个相关系数矩阵.

二、MATLAB在常微分方程中的应用

众所周知,只有一些典型的常微分方程,才能求出它们的解析解并用初始条件确定表达式中的任意常数.然而在实际问题中遇到的常微分方程往往很复杂,在许多情况下得不出解析解,这就需要使用数值解法.

考虑常微分方程的初值问题:y′=f(x,y),y(x0)=y0,所谓其数值解法,就是在x0

1.欧拉法

MATLAB命令如下:

>>x1(1)=0;y1(1)=1;y2(1)=1;h=0.1;

fork=1:10

x1(k+1)=x1(k)+h;

y1(k+1)=(1-h)*y1(k)+h*x1(k)+h;

y2(k+1)=(y2(k)+h*x1(k+1)+h)/(1+h);

end

x1,y1,y2,%y1是向前欧拉解,y2是向后欧拉解.

2.龙格—库塔法

MATLAB提供了多个求常微分方程初值问题数值解函数,一般调用格式如下:

[t,y]=solver(filename,ts,y0)

其中,t和y分别是自变量值和函数值;solver为求常微分方程数值解的函数,如下表1列出了常用函数采用的方法和适用的场合;filename是由待解方程写成的函数文件;ts表示求解区间[t0,tf],t0、tf分别为自变量的初值与终值;y0是函数的初值.

表1 求常微分方程数值解的常用函数

首先在MATLAB中建立函数文件funt.m.

function yp=funt(t,y),

yp=y2-t-2;

求解微分方程,取t0=0,tf=10,输入命令:

[t,y]=ode23(‘funt’,[0,10],2)%求数值解.

在数学学习中引入MATLAB,不仅可以解决手算无法处理的问题,还能增强解决数学实际问题的应用能力.数学理论学习与实践应用一直都是相辅相成的关系,而MATLAB软件的应用作为数学实践不可忽视的一部分,能够有效提高学生学习的兴趣和主观能动性,对培养创新应用型人才具有重大的意义.

猜你喜欢

库塔欧拉数据量
欧拉闪电猫
盐亭字库塔石刻文字研究
欧拉魔盒
精致背后的野性 欧拉好猫GT
再谈欧拉不等式一个三角形式的类比
基于大数据量的初至层析成像算法优化
高刷新率不容易显示器需求与接口标准带宽
宽带信号采集与大数据量传输系统设计与研究
字的天堂
盐亭字库塔第一县