24小时热门版块排行榜    

查看: 4284  |  回复: 10

duguwuhao

新虫 (小有名气)

[求助] 求助matlab for循环中的赋值问题。 已有2人参与

dm=0.001*2*pi*c;
    w=-0.5*2*pi*c:dm:0.5*2*pi*c;
    Kx=zeros(size(w));
    Ay=zeros(size(w));
for m=1:length(w);
    syms ay kx ky;
    y=(0.0382*8*(pi^3)*(c^4)*sqrt(ainf-(wp.^2)./(w.^2)))./((wp^2).*w);
    axx=ainf*((1-(wp*(w+1i*y)*wp))./(w.*(((w+1i*y).^2)-((wc)^2))));   %无单位
    axy=ainf*(((wp^2)*wc*1i)./(w.*(((w+y*1i).^2)-((wc)^2))));   %无单位
    azz=ainf.*((1-(wp^2))./(w.*(w+1i*y)));   %无单位
    a1=real(axx);
    a2=imag(axx);
    a3=real(axy);
    a4=imag(axy);
    a5=real(azz);
    a6=imag(azz);
    f1=ay-sqrt((kx.^2)-((w./c).^2));
    f2=kx-((sqrt(((a4.*ay./2).^2))+(a1.*(w./c).^2)-((a1.*ay.*ky)./(tan(ky.*t))))-(a4.*ay./2));
    f3=ky-(sqrt((((w./c).^2).*(a1-((a4.^2)./a1)))-kx.^2));
    [kx,ay]=solve('f1','f2','f3');
    Kx(m)=kx;
    Ay(m)=Ay;
end


运行提示:在赋值 A( = B 中,A 和 B 中的元素数目必须相同。
出错行数:    Kx(m)=kx;
    Ay(m)=Ay;

跪求大神解惑。。。
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

duguwuhao

新虫 (小有名气)

那个笑脸不是我卖萌啊。。。。我也不知道怎么出现的。。。。。。
2楼2016-09-16 13:07:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

guokeqin

金虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
solve函数,不能计算点乘,建议你采用solve函数计算出来函数关系式,然后手动输入方程再操作

发自小木虫Android客户端
6楼2016-09-17 06:57:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

duguwuhao

新虫 (小有名气)

修改了一下,将w改成w(m),还是出错貌似,是我solve的问题。没有得出数值解

发自小木虫Android客户端
3楼2016-09-16 14:43:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

duguwuhao

新虫 (小有名气)

我检查了下,程序,貌似是slove语句的问题,单独拿出来,程序出现警报:警告: Cannot solve symbolically. Returning a numeric approximation instead. 跪求大神解决
4楼2016-09-16 15:38:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

FMStation

至尊木虫 (知名作家)

【答案】应助回帖

感谢参与,应助指数 +1
https://www.mathworks.com/help/symbolic/solve.html

Return Numeric Solutions
Try solving the following equation. The symbolic solver cannot find an exact symbolic solution for this equation,
and therefore issues a warning before calling the numeric solver. Because the equation is not polynomial, an
attempt to find all possible solutions can take a long time. The numeric solver does not try to find all numeric
solutions for this equation. Instead, it returns only the first solution it finds.
5楼2016-09-16 21:56:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

duguwuhao

新虫 (小有名气)

引用回帖:
6楼: Originally posted by guokeqin at 2016-09-17 06:57:58
solve函数,不能计算点乘,建议你采用solve函数计算出来函数关系式,然后手动输入方程再操作

我把点乘去掉显示:
在赋值 A( = B 中,A 和 B 中的元素数目必须相同。
我重新编了一下solve的公式:
kx=solve(tan(t*(((sqrt(((w(m)/c)^2)*(a1-((a4^2)/a1)))))-(kx^2)))==(a1*sqrt(((w(m)/c)^2)*(a1-((a4^2)/a1))-(kx^2))*sqrt((kx^2)-((w(m)/c)^2)))/((a1*((w(m)/c)^2))-(kx^2)-(a4*kx*sqrt((kx^2)-((w(m)/c)^2)))),kx);
但是在kx赋值到Kx的时候出现错误,另外,solve语句单独拿出来进行计算的时候会出现警告:
警告: Cannot solve symbolically. Returning a numeric approximation instead. 这个时候我能输出kx。很疑惑。
7楼2016-09-17 22:28:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

duguwuhao

新虫 (小有名气)

引用回帖:
5楼: Originally posted by FMStation at 2016-09-16 21:56:31
https://www.mathworks.com/help/symbolic/solve.html

Return Numeric Solutions
Try solving the following equation. The symbolic solver cannot find an exact symbolic solution for this equation,
and ...

大神,这个我了解了,所以尝试把solve语句修改了一下,单独计算kx=solve(tan(t*(((sqrt(((w/c)^2)*(a1-((a4^2)/a1)))))-(kx^2)))==(a1*sqrt(((w/c)^2)*(a1-((a4^2)/a1))-(kx^2))*sqrt((kx^2)-((w/c)^2)))/((a1*((w/c)^2))-(kx^2)-(a4*kx*sqrt((kx^2)-((w/c)^2)))),kx);时,现出现警告:
警告: Cannot solve symbolically. Returning a numeric approximation instead.
这个时候能输出kx的数值解,所以我就比较疑惑为什么有数值解还不能赋值成功。。。
8楼2016-09-17 22:31:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

duguwuhao

新虫 (小有名气)

我把方程组进行处理,整理成一个公式进行计算,代码如下:
clear;
clc;
a0=8.85*1e-12;    %c2/m2N
ainf=12.37;   %极限高频相对介电常数 无单位
%y=pi*1e11;   %衰减频率 hz
B=3;   %磁场强度 T或kg/As2
%T=185;   %温度 K
t=1.361*1e-6;  %厚度 m
e=1.6*1e-19;   %单位电荷量 C
me=9.11*1e-31;   %电子质量 kg
m=0.033*me;   %载流子质量 kg
N=8*1e23;
c=3e8;
%N=(5.76*1e20)*(T^1.5)*exp(-(0.13/((8.625*1e-5)*T)));   %载流子浓度 m-3  此处的0.0151为KB*T KB为玻尔兹曼常数8.625e-5 eV/K,所以0.0151单位为eV
wc=e*B/m;   %回旋频率 rad/s
wp=sqrt(N*(e^2)/(a0*m));   %等离子频率 rad/s
%w=0:pi*2*(2*(1e12))/1000:pi*2*2*(1e12);   %定义频率范围 rad/s
%w=1.21*2*pi*1e12;
dm=0.0001*2*pi*c;
    w=0.4*2*pi*c:dm:0.5*2*pi*c;
    Kx=zeros(size(w));
    Ay=zeros(size(w));
for m=1:length(w);
    syms kx;
    y=(0.0382*8*(pi^3)*(c^4)*sqrt(ainf-(wp.^2)./(w(m).^2)))./((wp^2).*w(m));
    axx=ainf*((1-(wp*(w(m)+1i*y)*wp))./(w(m).*(((w(m)+1i*y).^2)-((wc)^2))));   %无单位
    axy=ainf*(((wp^2)*wc*1i)./(w(m).*(((w(m)+y*1i).^2)-((wc)^2))));   %无单位
    azz=ainf.*((1-(wp^2))./(w(m).*(w(m)+1i*y)));   %无单位
    a1=real(axx);
    a2=imag(axx);
    a3=real(axy);
    a4=imag(axy);
    a5=real(azz);
    a6=imag(azz);
    kx=solve(tan(t*(((sqrt(((w(m)/c)^2)*(a1-((a4^2)/a1)))))-(kx^2)))==(a1*sqrt(((w(m)/c)^2)*(a1-((a4^2)/a1))-(kx^2))*sqrt((kx^2)-((w(m)/c)^2)))/((a1*((w(m)/c)^2))-(kx^2)-(a4*kx*sqrt((kx^2)-((w(m)/c)^2)))),kx);
    A=char(kx);
    Kx(m)=A;
end
显示:
在赋值 A( = B 中,A 和 B 中的元素数目必须相同。

出错 yanzheng (line 38)
    Kx(m)=A;
。。。。。
9楼2016-09-17 22:34:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

czcdxmc

木虫 (正式写手)

MEMS小学生

引用回帖:
4楼: Originally posted by duguwuhao at 2016-09-16 15:38:26
我检查了下,程序,貌似是slove语句的问题,单独拿出来,程序出现警报:警告: Cannot solve symbolically. Returning a numeric approximation instead. 跪求大神解决

警告已说明错误原因。

发自小木虫Android客户端
学海无涯,回头是岸。
10楼2016-09-18 08:17:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 duguwuhao 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 情人节自我反思:在爱情中有过遗憾吗? +5 瞬息宇宙 2026-02-15 6/300 2026-02-18 12:51 by 月下雪林
[找工作] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +3 i3cz6qj6l2 2026-02-17 3/150 2026-02-18 11:09 by lqtl9djx19
[考博] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +3 i3cz6qj6l2 2026-02-17 3/150 2026-02-18 10:54 by lqtl9djx19
[考研] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +3 i3cz6qj6l2 2026-02-17 3/150 2026-02-18 10:39 by lqtl9djx19
[考研] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +3 pnpwoqbg8f 2026-02-17 3/150 2026-02-18 08:53 by lqtl9djx19
[硕博家园] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +3 pnpwoqbg8f 2026-02-17 3/150 2026-02-18 08:38 by lqtl9djx19
[找工作] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +4 pnpwoqbg8f 2026-02-17 4/200 2026-02-18 07:55 by lotyj5cz79
[基金申请] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +3 pnpwoqbg8f 2026-02-16 4/200 2026-02-18 07:40 by lotyj5cz79
[考研] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +4 pnpwoqbg8f 2026-02-16 4/200 2026-02-18 07:38 by lotyj5cz79
[硕博家园] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +4 pnpwoqbg8f 2026-02-16 4/200 2026-02-18 07:23 by lotyj5cz79
[论文投稿] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +4 pnpwoqbg8f 2026-02-16 4/200 2026-02-18 07:08 by lotyj5cz79
[公派出国] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +3 pnpwoqbg8f 2026-02-16 3/150 2026-02-18 06:53 by lotyj5cz79
[论文投稿] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +3 pnpwoqbg8f 2026-02-17 3/150 2026-02-18 00:40 by tk2gfblvuz
[找工作] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +3 pnpwoqbg8f 2026-02-17 4/200 2026-02-18 00:23 by tk2gfblvuz
[公派出国] 售SCI一区文章,我:8 O5 51O 54,科目齐全,可+急 +3 pnpwoqbg8f 2026-02-17 3/150 2026-02-17 23:40 by tk2gfblvuz
[基金申请] 基金正文30页指的是报告正文还是整个申请书 +3 successhe 2026-02-16 4/200 2026-02-17 20:56 by successhe
[基金申请] 今年春晚有几个节目很不错,点赞! +5 瞬息宇宙 2026-02-16 6/300 2026-02-17 12:49 by jymy19840415
[微米和纳米] 球磨粉体时遇到了大的问题,请指教! 10+3 6sbiam 2026-02-12 15/750 2026-02-16 15:03 by tgzxzqj
[基金申请] 过年走亲戚时感受到了所开私家车的鄙视链 +3 瞬息宇宙 2026-02-15 5/250 2026-02-16 14:23 by aspect3000
[硕博家园] 江汉大学解明教授课题组招博士研究生/博士后 +3 cleverlyy 2026-02-12 3/150 2026-02-12 21:02 by qsdf1
信息提示
请填处理意见