matlab自定义函数的五种表示(前2种重点)
1.命令文件/函数文件+函数文件:多个M文件
2.函数文件+子函数:一个M文件
3. inline:无需M文件
4.符号表达式+subs方式:无需M文件
5.字符串+subs方式:无需M文件
第一种:命令文件/函数文件+函数文件
%命令/函数文件:myfile1.m
clear
for t=1:10
y=mylfg(t);
fprintf('%4d^(1/3) = %6.4f\n',t,y);
end
%函数文件:mylfg.m
function y = mylfg(x)
y=x^(1/3);
NOTE:
1.函数调用时注意实参与形参的匹配
2.函数必须单独写在一个文件!
不你能与命令文件写在同一个文件中。
3.函数名最好与文件名一致。
第二种方式:函数文件+子函数
%函数文件:funtry2.m
fumction [] = funtry2()
for t= 1:10
y=lfg2(t);
fprintf('%4d^(1/3) %6.4f\n',t,y);
end
%%子函数
function y = lfg2(x)
y =x^(1/3);
NOTE:
函数文件中可以定义一个或多个子函数,此时我们称该函数为主函数,子函数只能被主函数或同一个函数文件中的其他函数调用。
疑问:方式一中的函数文件与方式二种的主函数如何区别呢????是一个概念吗???
方式三:inline+命令/函数文件
1.inline命令可以用来定义一个内联函数
f = inline('函数表达式',‘变量1’,‘变量2’,....)
2.调用方式:y=f(数值列表)
带入的数值列表顺序应与定义时的变量名顺序一致
eg: f = inline('x^2+y','x','y');
z = f(2,3);
z =7
优点:运算速度快
缺点:1.占用内存多2.只能对数值带入不能进行求导等符号运算
方式四:syms + subs
syms定义一个符号表达式,用subs命令调用
syms f x %定义符号
f =1/(1+x^2); %定义符号表达式
subs(f,'x',代替x的数值或符号)
优点:可以用符号替换
缺点:运算速度低
方式五:字符串 + subs
直接定义一个字符串,用subs命令完成调用
f= ' 1/(1+x^2)'
z=subs(f,'x',2)
g = subs(f,'x','y^2')
优点:占用内存少,格式方便自由
matlab自定义函数的五种表示(前2种重点)的更多相关文章
- MATLAB自定义函数
MATLAB自定义函数形式 function [a,b,c] = funname(x1,x2,x3) 输入变量 对于输入变量,MATLAB可以识别输入变量的个数,通过nargin来记录当前输入变量个数 ...
- matlab 自定义函数及调用
这一篇博客主要学习了: 第一,自定义函数优点有很多,比如可重复利用:容易纠错,以后直接装入大工程里(更重要的是,实参是复制给形参的,在自定义函数中运行时形参独立显示,这一点和C不一样). 第二,通过h ...
- python第十四课--排序及自定义函数之自定义函数(案例五)
演示函数的定义和使用细节: 默认参数:#在设计自定义函数的时候,就存在一个默认值,就算在调用的时候不显示的传入实参,也不会报错.#会用默认值来代替参与后期的运算 def m1(name='张三',ag ...
- Matlab中函数定义方法
Matlab自定义函数的六种方法 n1.函数文件+调用函数(命令)文件:需单独定义一个自定义函数的M文件: n2.函数文件+子函数:定义一个具有多个自定义函数的M文件: n3.Inline:无需M文件 ...
- PHP自定义函数使用外部变量
一般,php的自定义函数不能直接使用外部变量. 在php自定义函数中使用外部变量前,需要先使用global对外部变量进行声明. <?php $var = "hello World!& ...
- C/S权限系统得到拼音和五笔的自定义函数(二)
得到五笔: CREATE FUNCTION [dbo].[fun_getWB](@Str VARCHAR(2000)) RETURNS VARCHAR(2000) AS BEGIN DECLARE @ ...
- Matlab基本功能:自定义函数、添加块注释、定时器的试用
1.自定义函数 新建一个m文件 在m文件里面第一行输入function [X,Y]=pll(X1,Y1,X2,Y2),这里x1 x2 y1 y2是你函数的输入值, x y是输出值,接着定义你要实现的功 ...
- Python学习(五)函数 —— 自定义函数
Python 自定义函数 函数能提高应用的模块性,和代码的重复利用率.Python提供了许多内建函数,比如print()等.也可以创建用户自定义函数. 函数定义 函数定义的简单规则: 函数代码块以de ...
- resize函数有五种插值算法
转自http://blog.csdn.net/fengbingchun/article/details/17335477 最新版OpenCV2.4.7中,cv::resize函数有五种插值算法:最近邻 ...
随机推荐
- 最短路之Floyd(弗洛伊德)
只有五行的Floyd最短路算法: 核心代码 每次都更新通过k点,然后从i到j的最短路程...
- python实现计数排序
计数排序有局限性,最小值和最大值决定着数组的长度,如果分配均匀的话可以用 # @File: count_sort import random def count_sort(li, max_num=10 ...
- [在读]HTML5程序设计(第二版)
去年买的,看了30%不到,之后一直是搁置状态,内容还不错,确确实实纯粹讲H5的.
- SAMBA服务初学练习
服务概述 Samba最先在Linux和Windows之间架起了一座桥梁,正是由于Samba的出现,我们可以在Linux和Windows之间实现文件共享的相互通讯,我们可以将其架设成一个功能非常强大的文 ...
- [转]ASP.NET MVC URL重写与优化(进阶篇)-继承RouteBase玩转URL
本文转自:http://www.cnblogs.com/John-Connor/archive/2012/05/03/2478821.html 引言-- 在初级篇中,我们介绍了如何利用基于ASP.NE ...
- AJPFX总结方法重载与方法重写的区别
方法重载在同一个类中,可以出现同名方法,但是这些同名方法的参数列表必须不同,这样定义方法叫做方法重载.方法重载的特点重载的注意事项重载与返回值无关重载与具体的变量标识符无关重载只与方法名与参数相关重载 ...
- PKU_campus_2017_K Lying Island
思路: 题目链接http://poj.openjudge.cn/practice/C17K/ 状压dp.dp[i][j]表示第i - k人到第i人的状态为j的情况下前i人中最多有多少好人. 实现: # ...
- android xml中使用include标签
在一个项目中,我们可能会在xml中局部用到相同的布局,如果每次都在xml中重写这些布局,代码显得很冗余.重复的复制黏贴也很烦恼,所以,我们把这些相同的局部布局写成一个单独的xml模块,需要用到这些布局 ...
- javaee 第八周作业
hashcode()和equals()的作用.区别.联系 先来试想一个场景,如果你想查找一个集合中是否包含某个对象,那么程序应该怎么写呢?通常的做法是逐一取出每个元素与要查找的对象一一比较,当发现两者 ...
- autoHeight.vue 高度自适应
autoHeight.vue 高度自适应 <!-- * @description 自适应高度 * @fileName autoHeight.vue * @author 彭成刚 * @date 2 ...