|||
MATLAB中矩阵的变形,除了A转置城A'外,常用的操作还有:
1,调整部分行列的位置;
A = [A(11:end) A(1:10)];
将矩阵的第1行至10行移动到矩阵末尾;
2,将矩阵按列堆叠,也就是说有一堆数据,按列存储,可用
A(:)来实现,实际上在MATLAB中数据的存储既为这种形式。注意,在C语言中数据的存储是按行存储的,所以在完成混合编程中要注意到这种不同,解决的方法实际很简单,在调用接口之前,首先转置一下就OK了:)
3,按照一定的需要,将矩阵转变成一定的形状,可以使用reshape命令:
B = reshape(A, 4, 2) % 4是新矩阵的列数,2是新矩阵的行数
======================华丽的分割线================================
昨天小红问我想把一个函数的某个变量赋值后变成另一个函数,用什么函数?比如说,f(x,y,z)本来有三个变量,把z赋值为5,变成另一个函数g(x,y),在MATLAB里怎么实现。
回答呢其实很bt,第一个方法,用手算了之后重新敲一遍函数,哈哈
第二个方法,用到符号计算,比较简单,首先定义符号变量(符号表达式),然后用数值代替其中一个符号,这个解法本来就是上面的问题只不过不是用函数实现,而是通过符号运算来完成,给一个例子:
f=sym('3*x^3+y^2+z');
z=5;
g=subs(f,z);
这就搞定了:-)
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-11-24 22:50
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社