Java与Matlab混编中的混合积实现技巧


向量:

生成向量:

①直接输入:A = [1,2,3,4,5,6] → 生成向量A,A是一维向量,具有六个分量

②利用冒号表达式:x = x0:step:xn →x0为首元素值,xn为为元素值限,step为每个元素与前一个元素的等差值

③线性等分向量函数:y = linspace(x1,x2,n) → 生成n维向量,y(1) = x1,y(2) = x2

向量的运算:

①加减:+-

②数乘:*

③点乘:dot()函数 dot(a,b) → a点乘b

④叉乘:cross()函数 cross(a,b) → a叉乘b

⑤混合积:dot(a,cross(b,c))


矩阵:
生成矩阵:

①直接输入:A = [1,2,3;4,5,6;7,8,9]

②函数生成:

  特殊矩阵的生成

函数概要zeros生成零矩阵ones生成全一矩阵eye生成单位矩阵rand生成0-1间均匀分布的随机矩阵randn生成均值为0,方差为1的标准正态分布矩阵magic生成魔方矩阵(行、列、对角线上元素的和相等)

特殊矩阵生成函数命令格式例:zeroszeros(n) → 生成n阶方阵全零阵zeros(m,n) zeros([m,n]) → 生成m×n全零阵zeros(size(X)) → 生成与矩阵X大小相同的全零阵

③运算生成:

R = [1,2,3;4,5,6]  N = [4,5,6;7,8,9]

C = R + i*N

矩阵的运算:

①加减:+-

②乘/数乘:*

③乘方:^

④除法(左除\和右除/):x=a\b是方程a*x=b的解,x=b/a是方程x*a=b的解

⑤求逆:inv()  伪逆pinv()

⑥求迹:trace()

⑦求秩:rank()

范数、条件数...

特殊操作:

①对角线元素的抽取:diag()

用法:X = diag(v,k) %以向量v的元素作为矩阵X的第k条对角线元素,k=0时作主对角线元素 k>0时v为上方第k条对角线;k<0时v为下方第k条对角线 X = diag(v) %以向量v的元素作为主对角线元素,其余元素为0 v = diag(X,k) %抽取矩阵X的第k条对角线元素构成向量v v = diag(X) %抽取主对角线元素构成向量v

②上/下三角阵的抽取:tril()取下三角部分 triu()取下三角部分

用法:L = tril(X) %抽取X的主对角线的下三角部分构成矩阵L L = tril(X,k) %抽取X的第k条对角线的下三角部分,k=0时为主对角线;k>0时v为上方 第k条对角线;k<0时v为下方第k条对角线,构成矩阵L

③变维:

用法:reshape(A,m,n) → 在矩阵总元素保持不变的情况下将矩阵A转换成m×n矩阵 B(:):A(:) → 将A的元素用B的维度排列例:

④变向:

旋转:rot90()

用法:B = rot90(A,k) %将矩阵A逆时针方向旋转k×90°

翻转:fliplr() 左右翻转;flipud() 上下翻转;flipdim() 按照指定维数翻转

用法:flidim(A,dim) %将矩阵A按dim维翻转

线性方程组求唯一解:

①AX=b → X=A\b

②函数rref()

C = [A,B] %A为系数矩阵,B为常数列,C为增广矩阵 R = rref(C) %将增广矩阵C变为行最简形式1.2.

齐次线性方程组求解:

null()求基础解系

format rat %结果用有理分式显示 z = null(A,'r') %z的列向量是AX=0的基础解系1.2.

非齐次线性方程组求通解:

%A为系数矩阵,b为常数列,B为增广矩阵,n为未知数个数 n = R_A = rank(A) R_B = rank(B) format rat if R_A == R_B&R_A == n X = A\b %系数矩阵和增广矩阵的秩相同→方程组有解;秩等于未知数个数→有效方程个数等于未知数个数→解唯一 if R_A == R_B&R_A < n X = A\b %求方程组的一组特解 C = null(A,'r') %求AX=0的基础解系 %系数矩阵和增广矩阵的秩相同→方程组有解;秩小于未知数个数→有效方程个数小于未知数个数→解无穷 else X = 'equition no solve' %其余情况下方程组无解 end1.2.3.4.5.6.7.8.9.10.11.12.13.14.

求矩阵的特征值和特征向量:

eig()函数

d = eig(A) %求矩阵A的特征值并赋值给变量d [V,D] = eig(A) %求矩阵A的特征值对角阵D和特征向量V1.2.

例:特征值-1对应的特征向量为(-0.7071,0,-0.7071);特征值2对应的特征向量为(-0.2425,0,-0.9701)和(0.3015,0.9045,0.3015)

免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空