首先声明一点,format这个函数不是用于控制运算精度的,它只能控制结果显示类型。运算的时候还是用matlab自己的精度,具体是多少就不知道了。matlab控制运算精度用的是digits和vpa这两个函数。digits用于规定运算精度,比如: digits(20); 这个语句就规定了运算精度是20位有效数字。但并不是规定了就可以使用,因为实际编程中,我们可能有些运算需要控制精度,而有些不需要控制。vpa就用于解决这个问题,凡是用需要控制精度的,我们都对运算表达式使用vpa函数。例如: digits(5); a=vpa(sqrt(2)); 这样a的值就是1.4142,而不是准确的 1.4142135623730950488016887242097...... 又如: digits(5); a=vpa(sqrt(2)); b=sqrt(2); 这样a的值是 1.4142,b没有用vpa函数,所以b是1.4142135623730950488016887242097...... vpa函数对其中每一个运算都控制精度,并非只控制结果。digits(11); a=vpa(2/3+4/7+5/9); b=2/3+4/7+5/9; a的结果为1.7936507936,b的结果为1.793650793650794......也就是说,计算a的值的时候,先对2/3,4 /7,5/9这三个运算都控制了精度,又对三个数相加的运算控制了精度。而b的值是真实值,对它取11位有效数字的话,结果为1.7936507937,与a不同,就是说vpa并不是先把表达式的值用matlab本身的精度求出来,再取有效数字,而是每运算一次,都控制精度。我举的例子不太好,因为加法不太会增加数字位数。希望大家能理解我的意思.... vpa对它括起来的运算每一次都控制精度,但有一点需要注意,vpa对函数的参数不起作用。举一个例子: digits(5); a=vpa(sqrt(2/3)); b=vpa(sqrt(vpa(2/3))); 结果a为0.81649,b为.81650。sqrt是一个函数,2/3是参数,也就是说,a式中,vpa对2/3是不起作用的,只对sqrt函数的返回值作用。如果想达到2/3的精度也要控制的效果,就要用b式,对参数也使用vpa函数。还有一点,digits 这个函数不是必需的,vpa可以这样用: vpa(表达式,运算精度); 举例来说: vpa(pi,5); 和digits(5); vpa(pi); 结果是一样的,vpa不指定运算精度,就用digits函数指定的。如果也没有用digits函数,那好象就是按matlab本身的精度来算的吧,这点我没试验,觉得不重要....

matlab 降低计算精度,MATLAB 计算精度控制相关推荐

  1. matlab优化算法案例分析与应用_最优化计算与matlab实现(18)——粒子群优化算法——权重改进的粒子群算法...

    参考资料 <精通MATLAB最优化计算(第二版)> 编程工具 Matlab 2019a 目录 石中居士:最优化计算与Matlab实现--目录​zhuanlan.zhihu.com 权重改进 ...

  2. matlab nan变成0_最优化计算与matlab实现(17)——粒子群优化算法——带压缩因子的粒子群算法...

    参考资料 <精通MATLAB最优化计算(第二版)> 编程工具 Matlab 2019a 目录 石中居士:最优化计算与Matlab实现--目录​zhuanlan.zhihu.com 带压缩因 ...

  3. [渝粤教育] 中南大学 科学计算与MATLAB语言 参考 资料

    教育 -科学计算与MATLAB语言-章节资料考试资料-中南大学[] 随堂测验 1.[单选题]MATLAB一词来自( )的缩写. A.Mathematica Laboratory B.Matrix La ...

  4. c++分治法求最大最小值实现_最优化计算与matlab实现(12)——非线性最小二乘优化问题——G-N法...

    参考资料 <精通MATLAB最优化计算(第二版)> 编程工具 Matlab 2019a 目录 石中居士:最优化计算与Matlab实现--目录​zhuanlan.zhihu.com 非线性最 ...

  5. matlab length_【重点】最优化计算与matlab实现(20)——遗传算法

    参考资料 <精通MATLAB最优化计算(第二版)> 编程工具 Matlab 2019a 目录 石中居士:最优化计算与Matlab实现--目录​zhuanlan.zhihu.com 遗传算法 ...

  6. MATLAB上的GPU加速计算

    概述 怎样在MATLAB上做GPU计算呢?主要分为三个步骤:数据的初始化.对GPU数据进行操作.把GPU上的数据回传给CPU 一.数据的初始化 首先要进行数据的初始化.有两种方法可以进行初始化:一是先 ...

  7. MATLAB牛拉法计算潮流,matlab潮流计算

    <matlab潮流计算>由会员分享,可在线阅读,更多相关<matlab潮流计算(14页珍藏版)>请在装配图网上搜索. 1.附录1使用牛顿拉夫逊法进行潮流计算的Matlab程序代 ...

  8. 直扩 单音干扰抑制 matlab,数学计算软件MATLAB资料集锦分享

    数学计算软件MATLAB资料集锦分享 (2014-08-20 17:07:08) 标签: matlab 数学建模 仿真模拟 整理了一些有关MATLAB资料如下: 1.H型可逆PWM变换器的控制方式解析 ...

  9. 求pi的数学模型matlab计算pi,MATLAB实验-pi的计算 圆周率的近似计算 数学软件与数学实验 教学课件.ppt...

    MATLAB实验-pi的计算 圆周率的近似计算 数学软件与数学实验 教学课件 1.圆周率π的计算历程 所谓"圆周率"是指一个圆的周长与其直径的比值.古今中外,许多人致力于圆周率的研 ...

  10. matlab找三角网,基于MATLAB的三角网交会点坐标计算的程序设计

    内容简介: 毕业论文 基于MATLAB的三角网交会点坐标计算的程序设计,共36页,14997字. 摘 要:Matlab语言具备高效.可视化及推理能力强等特点,是目前工程界流行最广的科学计算语言,而就测 ...

最新文章

  1. CSDN 插件限时内测,新用户抢永久免费去广告特权!
  2. DataWorks 安装手册
  3. 休息五分钟,学几个bash快捷键
  4. 验证输入字符串是否包含特殊字符
  5. boost:验证Boost概念检查的class_requires 库应该在预期的时间内捕获错误
  6. 发现一个病毒文件你删了他又自动创建怎么解决
  7. ICE专题:ICE简介
  8. 【杭州云栖】飞天技术汇大视频专场:全民视频时代下的创新技术之路
  9. node 后台重定向_登录后重定向到用户原本要访问的页面《 Node.js 应用:重构与改进 #3 》...
  10. import java.awt.event.;是什么意思,。import java.awt.*;import java.awt.event.*;import...
  11. 国土空间规划项目资料获取的途径
  12. mbot机器人编程课件_mbot机器人教程创客大赛
  13. 解决 java 程序中 CPU 占用率过高问题
  14. endl 和 cout
  15. 谷歌发布 12 款 Chrome 新皮肤
  16. WebGL编程指南-30 三维物体雾化效果,立方体雾化效果
  17. LNMP论坛搭建,图案步骤,简单清晰明瞭
  18. 微信小程序如何分享到朋友圈
  19. oracle 视图怎样修改,ORACLE视图的修改
  20. 不管风云如何变幻 企业有“云算盘”就够了

热门文章

  1. MATLAB人脸识别疫情防护门禁系统GUI设计与实现
  2. TensorFlow练手项目三:使用VGG19迁移学习实现图像风格迁移
  3. 前端访问不到本地图片,IDEA设置Tomcat虚拟路径
  4. 12306外包给阿里巴巴/IBM到底是否可行?
  5. 多核程序设计 linux,多核程序设计Linux多线程编程.ppt
  6. S2B2C 电子商务营销模式
  7. 阿里云以及腾讯云香港服务器分析
  8. 【AI2 THOR】环境使用说明
  9. C练题笔记之:Leetcode-137. 只出现一次的数字 II
  10. 如何在SpringWEB项目或者Springboot启动时直接执行业务代码(三种方式)