Matlab中保存函数内部中间变量到工作空间
比如函数
function y=myfunt1(x)
f=linspace(10e-3,10e-3,100);
希望保存变量f
方法中加入save dat f
function y=myfunt1(x)
f=linspace(10e-3,10e-3,100);
save dat f
调用函数变为
myfunt1(5)
load dat f
注释与取消注释
Ctrl+R Ctrl+T
size()
size():获取矩阵的行数和列数
1、s=size(A),当只有一个输出参数时,返回一个行向量,该行向量的第一个元素是矩阵的行数,第二个元素是矩阵的列数。
2、[r,c]=size(A),当有两个输出参数时,size函数将矩阵的行数返回到第一个输出变量r,将矩阵的列数返回到第二个输出变量c。
3、size(A,n)如果在size函数的输入参数中再添加一项n,并用1或2为n赋值,则
size将返回矩阵的行数或列数。其中r=size(A,1)该语句返回的时矩阵A的行数, c=size(A,2) 该语句返回的时矩阵A的列数。
Matlab中的@什么意思
-
函数句柄
所谓函数句柄,个人认为可以将其理解成一个函数的代号,就像一个人的名字。这样在调用时可以调用函 数句柄而不用调用该函数。
将函数句柄赋值给变量要用到@符号, 语法: 变量名=@函数名, 此处地函数名可以是当前Matlab中可以使用 的任意函数 例如: , 此后mysin就和sin同样地使用, mysin(pi)和sin(pi)的含义相同. -
匿名函数
这是函数句柄的一种高级用法, 这样产生的函数句柄变量不指向特定的函数, 而是一个函数表达式. 其语法:
变量名=@(输入参数列表)运算表达式
例如, 计算变量平方的函数可以简单地写为这个匿名函数:
mysqr1=@(x)x.*x
之后, 执行mysqr1(变量名), 即可计算该变量的平方, 注意, mysqr1属性是函数句柄变量, 而不是这个表达式; 还有要注意这个表达式不需要用单引号括起来
Size()
- 求列数
vv=[1, 2, 3; 4, 2, 3];
ans=size(vv,2)
- 求行数
vv=[1, 2, 3; 4, 2, 3];
ans=size(vv,1)