24小时热门版块排行榜    

查看: 649  |  回复: 5

阿毛虫

银虫 (正式写手)

[求助] 为什么这两个程序差别这么大,只是将Omega的范围变化了,朋友看看怎么回事???? 已有1人参与

第一幅图的程序是:
clear all;clc
G=8e10;K=1.2; E=2.06e11; P=7.9e3; L=4; D=0.8; H=0.2; k=1/K; I=D*(H^3)/12; A=D*H;
  Omega2=linspace(sqrt((k*G*A)/(P*I)),inf,10000);
      b2=sqrt(P*A/(E*I)).*Omega2*L^2;    r=sqrt(I/A)/L; s=sqrt(E*I/(k*A*G))/L;
alfa2=sqrt(r^2+s^2-sqrt((r^2-s^2)^2+4./(b2.^2)))/sqrt(2);  
    beta2=sqrt(r^2+s^2+sqrt((r^2-s^2)^2+4./(b2.^2)))/sqrt(2);   
F2=2-2*cos(alfa2.*b2).*cos(beta2.*b2)+(b2./sqrt(-1+b2.^2*r^2*s^2)).*(-r^2+3*s^2+(b2.^2*s^2)*(r^2-s^2)^2).*sin(beta2.*b2).*sin(alfa2.*b2);
figure(2)
plot(Omega2,F2)
第二幅图的程序是
clear all;clc
G=8e10;K=1.2; E=2.06e11; P=7.9e3; L=4; D=0.8; H=0.2; k=1/K; I=D*(H^3)/12; A=D*H;
  Omega2=linspace(sqrt((k*G*A)/(P*I)),2e20,10000);
      b2=sqrt(P*A/(E*I)).*Omega2*L^2;    r=sqrt(I/A)/L; s=sqrt(E*I/(k*A*G))/L;
alfa2=sqrt(r^2+s^2-sqrt((r^2-s^2)^2+4./(b2.^2)))/sqrt(2);  
    beta2=sqrt(r^2+s^2+sqrt((r^2-s^2)^2+4./(b2.^2)))/sqrt(2);   
F2=2-2*cos(alfa2.*b2).*cos(beta2.*b2)+(b2./sqrt(-1+b2.^2*r^2*s^2)).*(-r^2+3*s^2+(b2.^2*s^2)*(r^2-s^2)^2).*sin(beta2.*b2).*sin(alfa2.*b2);
figure(2)
plot(Omega2,F2)
这两个程序只有Omega的范围有变化,一个是到无穷,一个是确定的一个挺大的数,为什么出现的图会有的有图像有的没有,还有一点就是为什么图像的横坐标是从0开始的,明明取得向量不是从零开始的???

为什么这两个程序差别这么大,只是将Omega的范围变化了,朋友看看怎么回事????
untitled.jpg


为什么这两个程序差别这么大,只是将Omega的范围变化了,朋友看看怎么回事????-1
1.jpg
回复此楼
学习吧
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mygt_hit

专家顾问 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
阿毛虫: 金币+10, ★★★很有帮助, 明白 2015-11-06 14:38:17
1. 第一段代码中,Omega2的内容是:[50315.4605426628, 之后全是inf],所以画图只画了一个点。
2. 第二段代码中,起点不是0,而是50315.4605426628,只不过横坐标乘以10^20,所以看上去像0了。
知其然,知其所以然。
2楼2015-11-06 13:22:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

阿毛虫

银虫 (正式写手)

引用回帖:
2楼: Originally posted by mygt_hit at 2015-11-06 13:22:15
1. 第一段代码中,Omega2的内容是:,所以画图只画了一个点。
2. 第二段代码中,起点不是0,而是50315.4605426628,只不过横坐标乘以10^20,所以看上去像0了。

谢谢,另外我还想问一下,如果就第二幅图来说,我如果想求零点,应该怎么求,具体一点可以吗?
学习吧
3楼2015-11-06 14:37:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mygt_hit

专家顾问 (职业作家)

【答案】应助回帖

引用回帖:
3楼: Originally posted by 阿毛虫 at 2015-11-06 14:37:51
谢谢,另外我还想问一下,如果就第二幅图来说,我如果想求零点,应该怎么求,具体一点可以吗?...

设置横坐标取值范围在0附近求吧,或者列方程用MATLAB求。
知其然,知其所以然。
4楼2015-11-06 15:05:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

阿毛虫

银虫 (正式写手)

引用回帖:
4楼: Originally posted by mygt_hit at 2015-11-06 15:05:06
设置横坐标取值范围在0附近求吧,或者列方程用MATLAB求。...

老师能具体一点吗?用fsolve?
学习吧
5楼2015-11-06 17:04:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mygt_hit

专家顾问 (职业作家)

【答案】应助回帖

引用回帖:
5楼: Originally posted by 阿毛虫 at 2015-11-06 17:04:46
老师能具体一点吗?用fsolve?...

我就知道个大概,抱歉,fsolve solve等,还有符号工具箱都可以求解吧。
知其然,知其所以然。
6楼2015-11-06 17:42:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 阿毛虫 的主题更新
信息提示
请填处理意见