MATLAB程序的运行调试涉及到算法的基本原理(程序往往是来求解某个数学模型的参数)、matlab编程、程序设计这三大块内容,缺一不可。
数学模型(本质是处理数据的模型)往往是程序算法的核心,一定要理解透彻。要弄清楚数学模型是如何工作的,求解其参数的流程与数学原理一定要搞明白。
matlab编程是建立在数学模型的基础之上,根据数学模型的结构来搭建的。当然,matlab编程也有自己的特点,如函数的定义、输入变量、输出变量、函数功能(对应与算法中的哪些因变量、自变量、求解方法),另外还有程序的注释,程序的模块化。
程序设计不同的程序员有不同的设计风格,如程序的注释、程序结构的布局、数据结构的选择、程序性能的优先全排序等等。如果在阅读程序之前,了解程序员设计程序的风格,那阅读程序的效率很高很多。
一、数学模型
先问三个主要问题(联系实际问题,也就是实际问题转化为数学模型的过程):
(1)这是什么类型的数学模型(优化模型)
(2)该数学模型解决啥问题(求最优值)
(3)数学模型是怎样解决问题的(梯度下降)
后三个问题:
(1)数学模型的数学表达式
(2)求解的方法
(3)求解方法的步骤
二、matlab
阅读程序的步骤:
基本思路是结合算法的基本原理,求解方法、求解步骤,阅读程序。看程序中的那块对应算法中的那一步。
技巧是:
(1)这步我称为‘重点定位’,定位算法输出量在程序的位置,这往往是最终的数学表达式。也就是说,好多变量已经解好了。我们可以借此反追踪量的求解过程。这是所谓的过程--->结果--->过程
(2)了解程序的输入量、输出量所代表的含义
(3)确定输入量、输出量、程序中变量、常量跟数学模型量的对应关系
(4)追踪输入量、输出量和程序中量的变化,借此来理解数学模型的求解过程;反之,借求解数学模型的过程来理解程序中量的含义(有时,量的含义没有注释或者注释看不懂)
三、程序设计
原文:http://blog.csdn.net/liyuanhao_1114/article/details/18405837