24小时热门版块排行榜    

查看: 1965  |  回复: 3

jiasen1980

金虫 (正式写手)

[求助] MATLAB解方程出现??? Subscripted assignment dimension mismatch.

运行一个有缘色散的超越方程求数值解,
下边是我的程序,用MATLAB7.1 运行只能结出前四个解,for循环到w=5时显示
没有精确解,不知问题出在了那里,此外用这个程序计算当e2取复数时候可以运行但去实数如下面的值时候就 出错,求大虫指点迷津,原方程见图片其中K0=2pi/lambda

clc;
clear;
syms b;
neff=zeros(1,31);
digits(200);
for w=1:31
d=vpa(w*5*1e-9);
k0=vpa(2*pi/0.8e-6);
e1=1;
e2=13.425;
w
z=vpa(solve(exp(sqrt(b-e1*k0^2).*d)-(e2*sqrt(b-e1*k0^2)-e1*sqrt(b-e2*k0^2))/(e2*sqrt(b-e1*k0^2)+e1*sqrt(b-e2*k0^2)),b));
neff(1,w)=vpa(sqrt(z)/k0)
end
用算结果显示如下
neff =

  Columns 1 through 4

   3.3286 + 1.6971i   2.2151 + 1.4575i   1.8060 + 1.2174i   1.5881 + 1.0458i

  Columns 5 through 8

        0                  0                  0                  0         

  Columns 9 through 12

        0                  0                  0                  0         

  Columns 13 through 16

        0                  0                  0                  0         

  Columns 17 through 20

        0                  0                  0                  0         

  Columns 21 through 24

        0                  0                  0                  0         

  Columns 25 through 28

        0                  0                  0                  0         

  Columns 29 through 31

        0                  0                  0         


w =

     5

Warning: Explicit solution could not be found.
> In solve at 140
  In sym.solve at 49
??? Subscripted assignment dimension mismatch.
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

梦在潇湘

铁杆木虫 (著名写手)

【答案】应助回帖


臭水沟(金币+1): 谢谢应助~~ 2011-06-26 21:10:46
jiasen1980(金币+5): 2011-06-26 22:21:33
Subscripted assignment dimension mismatch.
是指在引用矩阵的时候矩阵下标不符,比如一个2*2的矩阵和3*3的矩阵相乘,就会出现这种问题,至于具体是什么地方出现问题,需要详细分析程序,但错误肯定是有矩阵引用引起的。
2楼2011-06-26 20:17:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

信彼南山

木虫 (著名写手)

这程序让你编的,符号也太不规范了,公式里面的符号跟程序里都不一样,看起来是相当累啊
3楼2011-06-27 00:03:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wangyuewu08

木虫 (著名写手)

【答案】应助回帖


xiegangmai(金币+1): 谢谢应助! 2011-06-28 21:44:06
jiasen1980(金币+6): 多谢 我试一下 2011-06-29 14:19:11
没有精确解可能是因为楼主使用了vpa,它的含义是Variable precision arithmetic——变精度算法,是在纯粹的符号运算和matlab数值运算之间做的折中,就是兼顾运算速度和运算精度。

楼主不妨试试去掉vpa。
希望对你有用
往事并不如烟
4楼2011-06-28 21:40:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 jiasen1980 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +32 医学老男孩 2026-08-13 74/3700 2026-08-16 21:05 by 医学老男孩
[基金申请] 时间戳又变了8-15 +13 archvillain 2026-08-15 25/1250 2026-08-16 20:13 by zhaosm1982
[基金申请] 2027广东省杰青 +3 奶牛小黑 2026-08-15 6/300 2026-08-16 20:07 by 奶牛小黑
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +3 Tide man 2026-08-14 3/150 2026-08-16 17:47 by jurkat.1640
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +10 majunge000 2026-08-11 12/600 2026-08-16 08:18 by xli1984
[精细化工] 招聘 金属平磨液,抛光液研发工程师 +3 小天0311 2026-08-14 3/150 2026-08-16 07:31 by H9PLUS
[基金申请] filecode=后面第一个是大写字母 +6 wangze12014 2026-08-14 7/350 2026-08-15 20:12 by gltch
[基金申请] filecode +8 cratir 2026-08-14 12/600 2026-08-15 18:08 by zyfgau
[基金申请] 关于Filecode分析方法 +10 majunge000 2026-08-10 13/650 2026-08-15 12:26 by hanpeng972
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[基金申请] filecode +15 documentary 2026-08-10 17/850 2026-08-14 10:08 by kissu88
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
信息提示
请填处理意见