作者Ecampus (7.7)
看板MATLAB
标题[讨论] 请问 关於『Error using *』如何处理?
时间Sat Oct 7 11:10:21 2017
我code如下
t=0:1:160
t'
x=1700
D=390
M=1e+09
C = (M/4900.884539/t'.^0.5) * exp(-x.^2 /4 / D / t')
然後要求出C的时候
matlab跳出
『Error using /
Matrix dimensions must agree.』
========================
我试过 把t'改成t 也跑不出来 照样跳出" Error using * "的结果
尝试多次其他改变 也一样
但我发现如果 把x跟t这两样参数互换 把t的参数当x输入 把x的参数当t输入
居然可以正常run =.="
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 125.230.67.243
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/MATLAB/M.1507345824.A.8D8.html
1F:→ LiamIssac: 不是 .* 就是矩阵的维度没对 10/07 11:15
2F:→ LiamIssac: t'是? 10/07 11:16
3F:→ Steven0422: 都跟你说维度错误了 10/07 12:25
我感到有点疑惑的是 我这不是矩阵
只是单纯想求出C在每个不同时间的值
难道是 我要把x设定N个...跟t的数量一样多个 才能求得出来吗@_@?
请问您们说的"维度"是这个意思吗
4F:推 Mizar: 这不是矩阵类型 为什麽要考虑维度? 10/07 16:36
※ 编辑: Ecampus (125.230.80.48), 10/07/2017 20:11:23
5F:推 LiamIssac: t是阵列 所以要用.* 除非原po改成for loop 10/07 21:02
6F:推 s871526117: matlab里面*和.*不一样,原PO的状况会变成一个1*n乘上 10/07 23:44
7F:→ s871526117: 1*n的矩阵乘法,会出问题 10/07 23:44
8F:→ s871526117: 还用.*才能一个元素对一个元素乘喔 10/07 23:45
9F:→ Ecampus: 喔喔 原来是这样 已修正THX Q_Q 10/08 00:13