文档章节

.M文件等基础MATLAB知识

C-1993-C
 C-1993-C
发布于 2017/09/05 16:50
字数 773
阅读 19
收藏 0

M文件的分类:

1.脚本文件,在运行的时候可以直接输入文件名称就可以运行。

2.函数文件(整个文件为一个编写的功能函数,在使用的时候可以直接调用)

function[x1,x2]=root(a,b,c,disc,real,imag);中是创建函数的语句该函数的名称为root,函数中所涉及的变量有a、b、c、disc、real、imag。

M文件的结构

1.函数的定义

首行有关键字function开头并在首行列出所有的输入和输出,输入在function之后一个的话直接输入,如果有多个输出的话就用方括号括起来。等号的右边是函数的名称,名称之后小括号内为所有涉及到的变量。

varargin and varargout是两个和输入输出变量关系比较大的特殊变量

nargin 和 nargout可以实现变量的检测

2.M文件的调试(略)

3.函数的类型

M函数、子函数、嵌套函数、私有函数、匿名函数、重载函数

(1)匿名函数举例

问题:minimum=fminbnd(f,-3,3);
plot(minimum,f(minimum),'d');

两句程序中,对于fminbnd函数的了解为0,应该是在最优化处理那一部分会有介绍,先放置一段时间

等待后续学习了解。

(2)子函数

(3)私有函数

(4)重载函数

(5)内联函数

常用格式fun=inline(expr,arg1,arg2....)fun为函数名,expr为表达式,arg为变量)

例题:(内联函数中只能出现函数和系数)

建立对应的内联函数,但是如何调用内敛函数,和普通的调用函数有什么相同和区别。

:如果传递一个可变系数的方程可以用如下程序:

编写程序的时候注意的地方num2str(a)把a转换成字符输出。这一部分需要用',num2str(....),'来分开才能正常运行。

eval函数

eval(expression……);求表达式的 值或者执行包含文本的字符串。

feval函数;[y1,y2,...]=feval(fhandle,x1,...,)其中fhandle只接受函数名,不接受表达式

具体区别见下程序:

该程序中对于小白有两处:

1.set(gcf,'units','normalized','position',[0.2,0.3,0.2,0.2]);调整坐标系的语句

百度一下网友的解释。

2.axis(‘square’);建立正方形的坐标系。

关于画图还有好多知识要学习。慢慢来!

函数的函数

以标量为变量的非线性函数,以函数名为自变量的函数(求零点、极点、最优化,常微分方程)

humps()函数——后期学习。

可变数量输入/输出

varargin:可变数量输入变量列表

varargout:可变数量输出变量列表

通过实例来了解其用法是最好的方法;

按照课本敲了近半个小时,完事提示n、d都是未定义的,这该如何是好。心累啊。函数定义的一般方式就是开头那样吧,但是不知道是不是书错了,表示狠心累!!!!

 

 

 

 

 

 

© 著作权归作者所有

共有 人打赏支持
上一篇: JAVA初学笔记
下一篇: MATLAB的编程结构
C-1993-C
粉丝 0
博文 4
码字总数 4609
作品 0
贝尔法斯特
私信 提问
matlab混合编程向导(vc,vb,.net...)

一.matlab与vc混编 1.通过mcc将matlab的m文件转化为cpp,c文件或dll供vc调用: 这方面的实现推荐精华区Zosco和ljw总结的方法(x-6-1-4-3-1和2) vc的设置请参看精华区x-6-1-4-3-5,通过这种设置...

云栖希望。
2017/12/04
0
0
产生的DLL (VS2005, MATLAB7.5, mwArray)

程序中使用MATLAB编译产生的DLL (VS2005, MATLAB7.5, mwArray) 最近有几个帖子都在讨论有关在C++程序中使用MATLAB编译产生的动态链接库DLL。本 来想用原来帖子中给出的m代码作为例子,无奈...

云栖希望。
2017/12/04
0
0
除了不会生孩子 MATLAB 什么都会

Part 1 有趣的 MATLAB 如果你在暑假、有WIFI、有西瓜的空调房里不知道做什么,不如学下MATLAB吧,有了它,你可以什么都不需要! 知乎网友@邵恩真,示范了如何使用花式 MATLAB 玩游戏! 用 MA...

21ic电子网
02/01
0
0
转]MATLAB 与 C 语言的接口

MATLAB 到 C 语言程序的转换可以由两种途径完成,其一是 MATLAB 自己提供的 C 语言翻译程序 mcc, 另一种是原第 3 方公司 MathTools 开发的 MATCOM。后者出现较早,功能远比 MATLAB 自己的翻译...

云栖希望。
2017/12/04
0
0
多线程VC++和Matlab混编在信号采集和处理中的应用

引言 Visual C++自诞生以来,一直是Windows环境下最主要的应用开发系统,利用Visual C++开发系统可以完成各种应用程序的开发,从底层软件直到上层直接面向用户的软件都可以用Visual C++来...

云栖希望。
2017/12/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

矿难让显卡压了那么多货咋办?NV如是说

在苏州 GTC 开幕的几天前,英伟达刚刚遭遇了一次股价的腰斩。 近来加密货币的热度渐低,受到挖矿热潮照顾许多的英伟达「矿机」销量受到打击,甚至出现了严重的库存危机,加上近来刚刚发的 RT...

linux-tao
12分钟前
1
0
Python学习日记5|BeautifulSoup中find和find_all的用法

Python学习日记5|BeautifulSoup中find和find_all的用法 是蓝先生 关注 2016.04.20 11:26* 字数 930 阅读 37205评论 11喜欢 10 今天是4.20号。 前天晚上看到蒋方舟的一句话: 不要左顾右盼。慢...

linjin200
12分钟前
1
0
浅析Vue.js 中的条件渲染指令

1 应用于单个元素 Vue.js 中的条件渲染指令可以根据表达式的值,来决定在 DOM 中是渲染还是销毁元素或组件。 html: <div id="app"><p v-if="type===1">拌面</p><p v-else-if="type==...

开元中国2015
13分钟前
1
0
聊天机器人最难理解的 10 个词汇

简评:现在,越来越多的「聊天机器人」凭借着人工智能能与人类对话,甚至编写新闻。人们该如何判断对方是一个血肉之躯,还是一个可笑的算法?又该如何判断一个小说故事是由一台机器编写的,而...

极光推送
18分钟前
1
0
开源 java CMS - FreeCMS2.8会员我的评论

项目地址:http://www.freeteam.cn/ 我的评论 从左侧管理菜单点击我的评论进入。在这里可以查看当前登录会员的所有评论记录。 删除评论 选择评论然后点击删除按钮可以完成删除操作。 为了防止...

freeteam
42分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部