声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 980|回复: 4

[编程技巧] 求助矩阵赋值大小的问题

[复制链接]
发表于 2010-6-2 19:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
事情是这样的,我有一个程序,F1 F2 F3 F4都已经定义好, 然后使用

%反力计算
xf=0.00001:0.01:20.00; yf(2000)=0;
for i=1:2000, yf(i)=(f1(0.01*i)+f3(0.01*i)+f4(0.01*i))*9.8; end
plot(xf,yf); hold on;
可以做出一个图片来

但是我发现横坐标太长了 ,想把20改成7.5,但是发现改完之后画不出来图,提示说
Error in ==> C:\Documents and Settings\Administrator\桌面\复件 新\fl.m
On line 7  ==> plot(xf,yf);hold on;
??? Error using ==> plot
Vectors must be the same lengths.

后来把20改成30

%反力计算
xf=0.00001:0.01:30.00; yf(2000)=0;
for i=1:3000, yf(i)=(f1(0.01*i)+f3(0.01*i)+f4(0.01*i))*9.8; end
plot(xf,yf); hold on;
又可以做出图来
但是再改回20就连20也做不出来了

发现只要用一个大数做一次,比这个数小的数都做不出来了,就高手指点

[ 本帖最后由 ChaChing 于 2010-6-2 22:07 编辑 ]
回复
分享到:

使用道具 举报

发表于 2010-6-2 20:17 | 显示全部楼层
  1. xf=0.00001:0.01:M;
  2. yf(length(xf))=0;
  3. for i=1:length(xf)
  4. yf(i)=(f1(0.01*i)+f3(0.01*i)+f4(0.01*i))*9.8;
  5. end
  6. plot(xf,yf);hold on;
复制代码

我这里没有安装Matlab
我试着写了一段代码
应该是可以解决你的问题
你试一试

评分

1

查看全部评分

发表于 2010-6-2 22:04 | 显示全部楼层
使用xf=0.00001:0.01:7.5得到的xf为1*750, 但yf(2000)=0得到的yf至少为1*2000, 当然不等长!
改成30后再改回20, yf已为1*3000, 大小并不会因为赋值而改变!

看看此帖的8F, 常见的程序出错问题整理 (eight)
http://forum.vibunion.com/forum/thread-46001-1-1.html
 楼主| 发表于 2010-6-3 14:55 | 显示全部楼层

回复 沙发 qibbxxt 的帖子

谢谢热心人 非常感谢
 楼主| 发表于 2010-6-3 14:55 | 显示全部楼层

回复 板凳 ChaChing 的帖子

谢谢谢谢 新建一个重新打开貌似好使了
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-21 22:16 , Processed in 0.049144 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表