matlab中两个矩阵相乘减去另外一个矩阵。

matlab \u8ba1\u7b97\u4e24\u4e2a\u77e9\u9635\u76f8\u4e58

* \u8868\u793a\u77e9\u9635\u4e0e\u77e9\u9635\u76f8\u4e58\uff0c\u6ee1\u8db3\u7ebf\u6027\u4ee3\u6570\u4e0a\u5b66\u7684\u77e9\u9635\u4e0e\u77e9\u9635\u7684\u4e58\u6cd5\uff0c*\u8868\u793a\u77e9\u9635\u4e2d\u5143\u7d20\u4e0e\u5143\u7d20\u76f8\u4e58\uff0c\u8fd9\u4e24\u4e2a\u77e9\u9635\u7684\u7ef4\u6570\u5fc5\u9700\u76f8\u540c\u3002
\u4f8b\u5982\uff1aA.*B,\u90a3\u4e48A\u662fm\u884cn\u5217\u7684\u8bdd\uff0cB\u5fc5\u987b\u4e5f\u662fm\u884cn\u5217\u3002\u5176\u4ed6\u7684\u5982\uff1a \u201c/ \u4e0e ./ \u201d \uff0c\u201c.^ \u4e0e ^ \u201d\u7684\u542b\u4e49\u90fd\u662f\u4e00\u6837\u7684\u3002

\u6269\u5c55\u8d44\u6599\u4e58\u79ef
Kronecker\u79ef\u662f\u4e24\u4e2a\u4efb\u610f\u5927\u5c0f\u7684\u77e9\u9635\u95f4\u7684\u8fd0\u7b97\uff0c\u8868\u793a\u4e3a \u3002\u514b\u7f57\u5185\u514b\u79ef\u4e5f\u6210\u4e3a\u76f4\u79ef\u6216\u5f20\u91cf\u79ef [4] .\u4ee5\u5fb7\u56fd\u6570\u5b66\u5bb6\u5229\u5965\u6ce2\u5fb7\u00b7\u514b\u7f57\u5185\u514b\u547d\u540d\u3002\u8ba1\u7b97\u8fc7\u7a0b\u5982\u4e0b\u4f8b\u6240\u793a\uff1a

\u6ce8\u610f\u4e8b\u9879
\u5f53\u77e9\u9635A\u7684\u5217\u6570\u7b49\u4e8e\u77e9\u9635B\u7684\u884c\u6570\u65f6\uff0cA\u4e0eB\u53ef\u4ee5\u76f8\u4e58\u3002
\u77e9\u9635C\u7684\u884c\u6570\u7b49\u4e8e\u77e9\u9635A\u7684\u884c\u6570\uff0cC\u7684\u5217\u6570\u7b49\u4e8eB\u7684\u5217\u6570\u3002
\u4e58\u79efC\u7684\u7b2cm\u884c\u7b2cn\u5217\u7684\u5143\u7d20\u7b49\u4e8e\u77e9\u9635A\u7684\u7b2cm\u884c\u7684\u5143\u7d20\u4e0e\u77e9\u9635B\u7684\u7b2cn\u5217\u5bf9\u5e94\u5143\u7d20\u4e58\u79ef\u4e4b\u548c\u3002
\u4e58\u79ef-\u54c8\u8fbe\u9a6c\u79ef( hadamard product)
\u77e9\u9635 \u4e0e \u77e9\u9635 \u7684Hadamard\u79ef\u8bb0\u4e3a \u3002
\u5176\u5143\u7d20\u5b9a\u4e49\u4e3a\u4e24\u4e2a\u77e9\u9635\u5bf9\u5e94\u5143\u7d20\u7684\u4e58\u79ef
\u7684m\u00d7n\u77e9\u9635 \u3002
\u4f8b\u5982

\u53c2\u8003\u8d44\u6599\uff1a\u767e\u5ea6\u767e\u79d1 \u77e9\u9635\u4e58\u6cd5

\u77e9\u9635\u5206\u6790\u662f\u89e3\u51b3\u5f88\u591a\u95ee\u9898\u7684\u597d\u65b9\u6cd5\uff0c\u4f46\u662f\u5f88\u591a\u65f6\u5019\u77e9\u9635\u7684\u8fd0\u7b97\u6bd4\u8f83\u7e41\u7410\uff0c\u7279\u522b\u662f\u9ad8\u9636\u77e9\u9635\u8fd0\u7b97\u3002\u8fd9\u65f6\u5019\u5982\u679c\u7528matlab\u6765\u8ba1\u7b97\u5c31\u65b9\u4fbf\u5feb\u6377\u5f97\u591a\u3002\u4e0b\u9762\u6211\u5c06\u4ecb\u7ecd\u4e00\u4e9b\u57fa\u672c\u7684\u77e9\u9635\u8fd0\u7b97\u65b9\u6cd5\u3002\u5982\u52a0\uff0c\u51cf\uff0c\u4e58\uff0c\u9664\uff0c\u8f6c\u7f6e\uff0c\u6c42\u9006\u3002
\u7ea6\u5b9a\uff1a
a=[1,3,5;2,4,6;7,9,8] b=[9,6,4;3,4,5;2,3,4]

\u5de5\u5177/\u539f\u6599
matlab
\u65b9\u6cd5/\u6b65\u9aa4
\u52a0\u548c\u51cf\uff1a
\u52a0\u51cf\u6cd5\u7684\u547d\u4ee4\u5f88\u7b80\u5355\uff0c\u76f4\u63a5\u7528\u52a0\u6216\u8005\u51cf\u53f7\u5c31\u53ef\u4ee5\u4e86\u3002\u5982\uff1a
c=a+b
d=a-b

\u4e58\u6cd5\uff1a
\u4e00\u822c\u4e58\u6cd5\uff1ac=a*b,\u8981\u6c42a\u7684\u5217\u6570\u7b49\u4e8eb\u7684\u884c\u6570\u3002
\u5982\u679ca,b\u662f\u4e00\u822c\u7684\u5411\u91cf\uff0c\u5982a=[1,2,3] b=[3,4,5]
\u70b9\u79ef\uff1a dot(a,b),
\u53c9\u79ef\uff1a cross\uff08a,b)
\u5377\u79ef\uff1a conv(a,b)

\u9664\u6cd5\uff1a\u4e00\u822c\u5728\u89e3\u7ebf\u6027\u65b9\u7a0b\u7ec4\u65f6\u4f1a\u7528\u5230\u3002
x=a\b \u5982\u679cax=b\uff0c\u5219 x=a\b\u662f\u77e9\u9635\u65b9\u7a0b\u7684\u89e3\u3002
x=b/a \u5982\u679cxa=b, \u5219x=b/a\u662f\u77e9\u9635\u65b9\u7a0b\u7684\u89e3\u3002

\u8f6c\u7f6e\uff1a
\u8f6c\u7f6e\u65f6\uff0c\u77e9\u9635\u7684\u7b2c\u4e00\u884c\u53d8\u6210\u7b2c\u4e00\u5217\uff0c\u7b2c\u4e8c\u884c\u53d8\u6210\u7b2c\u4e8c\u5217\uff0c\u3002\u3002\u3002
x=a.'

\u6c42\u9006\uff1a
\u8981\u6c42\u77e9\u9635\u4e3a\u65b9\u9635\u3002\u8fd9\u5728\u77e9\u9635\u8fd0\u7b97\u4e2d\u5f88\u5e38\u7528\u3002
x=inv(a)

你的程序有很多莫名奇妙的地方:

1、程序的数据,B是1x16的行向量,而不是16x1的矩阵,是不是写错了?

2、为什么要先产生2x304的矩阵in,然后再赋值给Sch,而不是直接产生Sch?更何况,Sch为19x16的矩阵,只需要304个数就够了,为什么in是2x304的?

3、像Sch (:, i)'.*pn这样的表达式根本行不通啊?前者是行向量,后者是列向量。

4、有必要使用那么多for循环吗?而且嵌套的循环都用i作为循环控制变量,够乱的。

5、循环体里面类似excess=int_Cap (i)-B也是很可疑的,int_Cap (i)是一个元素,而B是向量,你确定是要计算这样的结果吗?

 

确认一下,你的要求只是要产生满足 Sch×pn-B>0&Sch×pn-B<50 的0-1均匀分布的矩阵Sch?有两点需要说明:

1、按照矩阵乘法的规则,Sch应该是16x19的矩阵,而不是19x16;

2、对于判断矩阵大于或小于某个值,意味着矩阵中所有的元素都要满足此条件,你确定这个条件能满足?我试着产生了100000多个矩阵,都不满足该条件。

 

其实,如果上述理解无误,代码可以很简单,供参考(不保证B和pn矩阵录入无误,请自行核实):

B=[881 0 179 1291 659 878 786 854 683 878 500 629 382 189 425 1166];
pn= [320;200;80;84;100;160;100;60;200;40;40;72;140;80;40; 180;180;160;60];
n=0;
while true
    n=n+1
    Sch=randsrc(16,19,[0 1]);
    e = (Sch*pn)'-B;
    if e>0 & e<50 | n>100000, break, end
end


产生Sch的函数在判定的循环外,当然不变

你单步调试每一循环内sch的值也不变么??

  • matlab涓袱涓煩闃电浉涔樺噺鍘鍙﹀涓涓煩闃点
    绛旓細1銆佹寜鐓鐭╅樀涔樻硶鐨瑙勫垯锛孲ch搴旇鏄16x19鐨勭煩闃碉紝鑰屼笉鏄19x16锛2銆佸浜庡垽鏂煩闃靛ぇ浜庢垨灏忎簬鏌愪釜鍊硷紝鎰忓懗鐫鐭╅樀涓墍鏈夌殑鍏冪礌閮借婊¤冻姝ゆ潯浠讹紝浣犵‘瀹氳繖涓潯浠惰兘婊¤冻锛熸垜璇曠潃浜х敓浜100000澶氫釜鐭╅樀锛岄兘涓嶆弧瓒宠鏉′欢銆傚叾瀹烇紝濡傛灉涓婅堪鐞嗚В鏃犺锛屼唬鐮佸彲浠ュ緢绠鍗曪紝渚涘弬鑰冿紙涓嶄繚璇丅鍜宲n鐭╅樀褰曞叆鏃犺锛岃鑷鏍稿疄锛...
  • matlab涓殑涓や釜鐭╅樀脳鏄庝箞涓涔樻硶鏉ョ潃
    绛旓細a=[1,3,5;2,4,6;7,9,8] b=[9,6,4;3,4,5;2,3,4]宸ュ叿/鍘熸枡 matlab 鏂规硶/姝ラ 鍔犲拰鍑忥細鍔犲噺娉曠殑鍛戒护寰堢畝鍗曪紝鐩存帴鐢ㄥ姞鎴栬呭噺鍙峰氨鍙互浜嗐傚锛歝=a+b d=a-b 涔樻硶锛氫竴鑸箻娉曪細c=a*b,瑕佹眰a鐨勫垪鏁扮瓑浜巄鐨勮鏁般傚鏋渁,b鏄竴鑸殑鍚戦噺锛屽a=[1,2,3] b=[3,4,5]鐐圭Н锛 dot...
  • 鎬庢牱浣跨敤matlab璁$畻鐭╅樀涔樻硶
    绛旓細1. 瀹氫箟涓や釜鐭╅樀A鍜孊銆2. 浣跨敤鐭╅樀涔樻硶鍑芥暟`C = A * B`璁$畻鐭╅樀涔樼Н銆3. 鏌ョ湅缁撴灉鐭╅樀C銆傝缁嗚В閲婂涓嬶細鍦∕atlab涓锛岀煩闃典箻娉曢潪甯哥畝鍗曚笖鐩磋銆傞鍏堬紝浣犻渶瑕佸畾涔変袱涓杩涜涔樻硶杩愮畻鐨勭煩闃点傝繖鍙互閫氳繃鐩存帴杈撳叆鐭╅樀鍏冪礌鎴栦娇鐢ㄥ叾浠栧嚱鏁版潵鍒涘缓鐭╅樀鏉ュ畬鎴愩傚畾涔夌煩闃靛悗锛屼娇鐢ㄦ槦鍙疯繍绠楃鏉ヨ繘琛岀煩闃典箻娉曡繍绠椼...
  • matlab缂栧啓m鏂囦欢姹涓ょ煩闃电殑涔樻硶 鏈夐棶棰 璇烽珮鎵嬫寚鐐
    绛旓細% 涓や釜鐭╅樀鐨勪箻娉杩愮畻.m function [C]=Mutiply_matrix(A,B) [m1,n1]=size(A); [m2,n2]=size(B); if(n1==m2) 銆婂喎love琛銆 | 娴忚661 娆 闂鏈紑鏀惧洖绛 |涓炬姤 鎺ㄨ崘浜2017-12-16 16:48:52 鏈浣崇瓟妗 寰堥珮鍏翠负鎮ㄨВ绛旇繖涓棶棰,matlab涓袱涓煩闃鏄彲浠ョ洿鎺ョ浉涔樼殑,姣斿C=A*B銆傚鏋滆鑷繁缂栫▼鏉...
  • Matlab涓煩闃鐩稿噺
    绛旓細鏁扮粍瀵瑰簲鍏冪礌鐨勭浉鍑 A-B 鐭╅樀鐩稿噺 A.*B 鏁扮粍瀵瑰簲鍏冪礌鐨勭浉涔 A*B 鍐呯淮鐩稿悓鐭╅樀鐨勪箻绉 A./B A鐨勫厓绱犺B鐨勫搴斿厓绱犻櫎 A/B A鍙抽櫎B B.\A 涓瀹氫笌涓婄浉鍚 B\A A宸﹂櫎B(涓鑸笌鍙抽櫎涓嶅悓)exp(A)浠涓哄簳,鍒嗗埆浠鐨勫厓绱犱负鎸囨暟,姹傚箓 expm(A)A鐨勭煩闃垫寚鏁板嚱鏁 log(A)瀵笰鐨勫悇鍏冪礌姹傚鏁 logm(A)...
  • 濡備綍鍒╃敤matlab璁$畻涓ょ煩闃典箻绉
    绛旓細瑕璁$畻涓や釜鐩稿悓鐨勭煩闃电浉涔橈紝棣栧厛闇瑕佷簡瑙g煩闃典箻娉曠殑鍩烘湰姒傚康鍜岃鍒欍傜煩闃典箻娉曟槸涓绉嶅皢涓や釜鐭╅樀鐩镐箻寰楀埌涓涓柊鐭╅樀鐨勮繍绠椼傝涓や釜鐭╅樀 𝐴A鍜 𝐵B閮芥槸 𝑛脳 𝑛n脳n鐨勬柟闃碉紝閭d箞瀹冧滑鐨勪箻绉 𝐶= 𝐴𝐵C=AB涔熸槸涓涓 𝑛脳 𝑛n脳n...
  • 璇烽棶matlab缂栫▼,鎬庢牱璁涓や釜鐭╅樀瀵瑰簲鍏冪礌鐩搁櫎?
    绛旓細涓や釜鐭╅樀瀵瑰簲鍏冪礌鐩搁櫎绋嬪簭濡備笅锛>> clear >> A=[3 6 9];>> B=[1 2 3];>> C=A./BC =3 3 3 娉細MATLAB鍦ㄧ煩闃电殑杩愮畻涓紝鈥/鈥濆彿鍜屸*鈥濆彿浠h〃鐭╅樀涔嬮棿鐨勪箻娉涓庨櫎娉曪紝瀵瑰簲鍏冪礌涔嬮棿鐨勪箻闄ゆ硶闇瑕佷娇鐢ㄢ./鈥濆拰鈥.*鈥濄
  • matlab涓煩闃电浉涔鐨勯棶棰:
    绛旓細鐭╅樀鐩镐箻鍦∕ATLAB涓鐨勭浉鍏抽棶棰樿В绛 涓銆佺煩闃电浉涔樼殑鍩烘湰瑙勫垯 鍦∕ATLAB涓紝鐭╅樀鐩镐箻閬靛惊绾挎т唬鏁扮殑瑙勫垯銆傚綋涓や釜鐭╅樀鐨勭淮搴﹀厑璁告椂锛屽彲浠ヨ繘琛鐭╅樀涔樻硶銆傚叿浣撴潵璇达紝绗竴涓煩闃电殑鍒楁暟蹇呴』绛変簬绗浜屼釜鐭╅樀鐨勮鏁般傜粨鏋滅煩闃电殑琛屾暟灏嗕笌绗竴涓煩闃电殑琛屾暟鐩稿悓锛岃屽垪鏁板垯涓庣浜屼釜鐭╅樀鐨勫垪鏁扮浉鍚屻備簩銆丮ATLAB涓繘琛...
  • matlab鐭╅樀鐩镐箻
    绛旓細鍏蜂綋鎿嶄綔闈炲父绠鍗曘傞鍏堬紝纭繚涓や釜鐭╅樀A鍜孊鐨勫昂瀵稿吋瀹广傜劧鍚庯紝鐩存帴浣跨敤涔樺彿鈥*鈥濊繘琛鐩镐箻銆備緥濡傦紝鍋囪A鍜孊鏄袱涓凡缁忓畾涔夊ソ鐨勭煩闃碉紝鍙渶瑕鍦∕ATLAB鍛戒护绐楀彛杈撳叆鈥淐 = A * B鈥濓紝鍗冲彲寰楀埌鐩镐箻鐨勭粨鏋滅煩闃礐銆傜ず渚嬭鏄 渚嬪锛屾湁浠ヤ笅涓や釜鐭╅樀锛欰 = [1 2; 3 4]B = [5 6; 7 8]杩欎袱涓煩闃靛彲浠...
  • matlab涓鎬庢牱浣涓や釜鐭╅樀鍚屼綅缃殑鍏冪礌鍒嗗埆鐩镐箻鎴栫浉闄? 渚嬪:x=[1 2...
    绛旓細鐩镐箻 results=x.*y 鐩搁櫎 results=x./y
  • 扩展阅读:matlab中两个矩阵相除 ... matlab求两矩阵相乘 ... matlab矩阵不同怎么相乘 ... matlab求两个矩阵的右除 ... 一张图看懂矩阵运算 ... matlab两个矩阵的乘积 ... matlab两个矩阵怎么相乘 ... matlab中两个矩阵合并 ... 两个矩阵相乘的matlab语句 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网