声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 3428|回复: 9

[编程技巧] linsolve 关于First and second arguments must be single or double.

[复制链接]
发表于 2008-8-11 16:41 | 显示全部楼层 |阅读模式

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

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

x
A=sym('[5,0,4,2;1,-1,2,1;4,1,2,0;1,1,1,1]');
B=sym('[3;1;1;0]');
X=zeros(4,1);
X=linsolve(A,B)
??? Error using ==> linsolve
First and second arguments must be single or double.

该怎么改一下阿?
非常感谢啊!

[ 本帖最后由 sigma665 于 2008-8-12 09:25 编辑 ]
回复
分享到:

使用道具 举报

发表于 2008-8-11 17:01 | 显示全部楼层

回复 楼主 米三古余月 的帖子

>> A=[5,0,4,2;1,-1,2,1;4,1,2,0;1,1,1,1];
>> B=[3;1;1;0];
>> X=zeros(4,1);
>> X=linsolve(A,B)

X =

    1.0000
   -1.0000
   -1.0000
    1.0000

评分

1

查看全部评分

 楼主| 发表于 2008-8-12 11:15 | 显示全部楼层
我最后也是改成这个样子了,可是书上介绍的按照符号形式,也可以采用linsolve(A,B)
这个函数来求解,但实际上有问题。
    而且我看好几本书上都那么用呢。
    依然很感谢你!
发表于 2008-8-12 12:06 | 显示全部楼层
First and second arguments must be single or double.
这个说的很清楚了
具体以matlab帮助为准
发表于 2008-8-13 10:14 | 显示全部楼层
奇怪
我试了下
执行无误
发表于 2008-8-13 13:07 | 显示全部楼层

回复 5楼 ChaChing 的帖子

是呀,我这也没问题呀

lz的matlab版本是多少呀?
发表于 2008-8-13 23:49 | 显示全部楼层
A=sym([5,0,4,2;1,-1,2,1;4,1,2,0;1,1,1,1]);
B=sym([3;1;1;0]);
A\B

评分

1

查看全部评分

发表于 2010-11-13 10:15 | 显示全部楼层
A=[5,0,4,2;1,-1,2,1;4,1,2,0;1,1,1,1];
B=[3;1;1;0];
A\B
发表于 2010-11-13 10:36 | 显示全部楼层
matlab版本的问题
以前linsolve是支持符号运算的
但是后来就不支持了
具体从哪个版本开始变的个人也不太清楚

评分

1

查看全部评分

发表于 2010-11-13 21:35 | 显示全部楼层
的确如ls所说
A=sym('[5,0,4,2;1,-1,2,1;4,1,2,0;1,1,1,1]'); B=sym('[3;1;1;0]');
X=zeros(4,1); X=linsolve(A,B)
在v5.3是执行无误的, 但R2006a/R2009a就抱错!
A=sym([5,0,4,2;1,-1,2,1;4,1,2,0;1,1,1,1]); B=sym([3;1;1;0]); A\B
都是执行无误的

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-5-24 11:20 , Processed in 0.107929 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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