首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >数学建模--------MATLAB学习使用

数学建模--------MATLAB学习使用

作者头像
阑梦清川
发布2025-02-24 12:17:36
发布2025-02-24 12:17:36
2290
举报
文章被收录于专栏:学习成长指南学习成长指南

1.向量化编程

我们通过物理里面的,电阻等于电压除以电流计算电阻,了解向量化编程和非向量化编程的区别

我们首先介绍一个函数mean函数,这个函数是用来计算数组的均值,例如A是一个数组,这个数组里面有很多的元素,我们想要计算这个数组里面的诸多元素平均值,使用mean(A)即可;

题目要求我们分别计算每一组数据的电阻值,最后求电阻的平均值;

(1)上面的是非向量化编程,使用2个循环,第一个循环计算的是每一组数据对应的电阻,第二个循环计算的是电阻的累加值,最后使用电阻的累加值除以数组的长度(也就是数据的个数)得到的是电阻的平均值;

(2)向量化编程的思想就会很简洁,直接利用的是MATLAB很有特色的点运算,求出每组电阻值,最后求的数组的平均值,两行代码就可以完成计算平均值的目的;

2.非数的处理解决

在MATLAB里面,我们如果是0/0,无穷除以无穷就会得到NaN,这个并不是报错,也不是空,只是一个非数的值,我们在绘制函数的图像的时候可能会遇到这样的情况,我们可以采取一下的解决方案:下面我们绘制一个函数的图像,观察图像特征:

定义域-2*pi到2*pi,绘制的是sin(x)/x的函数图像,这个时候中间就会有0/0的情况,这种情况下就会出现非数的情况,体现在图像上就是截断函数图像

细心的读者就会发现,这个有一段图象是不完整的,因为是遇到了0/0的情况;

我们打开工作区页面,就会发现在选取的点里面,只有21个是NaN这个就是因为0/0才导致的;

我们只需要在原来的基础上面稍加改动,就可以得到我们想要的函数图像,我们的做法就是使用tt=t+(t==0)*eps,就是在原来的t的基础上面,选取特殊点0乘上eps,就可以让这个点在附近的点取值,换言之就是在0附近找一个点代替0,eps就是一个非常小的数,利用它就可以找到十分接近0的一个点代替0,这样就不会出现截断的现象了;

下面就是eps的具体数值,就是一个非常小的数值,但是不会出现0/0的情况了;

3.逻辑运算符

逻辑运算符有与&,或|,非~,异或xor;前面的我们经常使用,这里不做介绍,我们介绍一下xor,就是异或的用法,异或运算的规则就是全是0或者全是非0,结果就是0,否则就是1:

通过这个案例,我们也是可以发现,1,2,5列都是非0的数字进行运算,结果就是0,第4列是两个0进行运算,结果就是0,第三列一个0一个非0进行运算,结果就是1;

4.数值计算

求两个函数的极限f1(x)=(1-cos2x)/((sinx)*2x);f2(x)=sin(x)/x;求两个函数x趋近于0时候的极限

我们在数学里面这个趋近于就是不断的靠近,我们在MATLAB如何表示这个区锦的过程呢?我们需要生成一串数据,来表示这个趋近的过程,我们这里选择的是logspace函数

(1)这个文档或许可以让你对于这个函数的用法有些了解,但是我们需要知道的是,他生成的是以10为底数的很大的数值,我们给他乘上eps就可以生成15个不断趋近于0的数字,这样就表示了这个极限的趋近过程

(2)我们在列举这两个函数的时候,一定要知道这是使用乘号还是点乘,向量和数字之间的运算两者都是可以的,但是向量和向量之间的运算就必须使用点乘符号;

(3)disp这个函数就是显示变量的值,基本的用法就是disp(),我们在括号的里面使用了中括号是因为我们要写的是3个行向量,经过转置以后就变成了列向量,这样方便我们观察函数极限的趋近过程;

(4)如果只是这样写,我们还是无法观察到自己想要的结果的(读者可以自行尝试),因为MATLAB的默认精度是4位小数,我们的数据因为精度比较高,在MATLAB里面就会全部显示0,无法观察这个趋近的过程,我们的做法就是加上format long这样就可以提高精度,是我们可以得到自己想要的结果,我们通过观察打印的结果就可以看到无限趋近的时候,函数的极限,还是很直观的

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-02-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.向量化编程
  • 2.非数的处理解决
  • 3.逻辑运算符
  • 4.数值计算
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档