由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
EE版 - 问一个很基础的Matlab的问题
相关主题
这个函数的包络线怎么求问一个matlab的问题,关于workspace里的数据
傻傻地问: 啥叫 Zero Autocorrelation ?问一个Matlab变量问题
跪求指导,这个matlab报错是啥意思啊?问个simulink的问题
matlabe‘’内的语句 换行输入,用什么链接? ...不行,any optimization theory guru here?
问一个MATLAB里遇到的问题问一个矩阵不等式的问题. 在线等
问一个matlab编程的简单问题另外一个cadence里的plot的问题
对大家讨论的感想:)请问有什么optimization变量是matrix的?
matlab怎么画f(x,y)=c这种函数图问个delayed branch的问题
相关话题的讨论汇总
话题: matlab话题: end话题: value话题: 语句话题: function
进入EE版参与讨论
1 (共1页)
s******e
发帖数: 841
1
有一个函数
A是一个n by 1的向量,当知道A(1)的时候用以下语句对A中的其他元素赋值
A(i+1)=(1+g)*A(i),g是一个常数
当调用这个函数的时候,运行这个语句的时候发生如下错误
In an assignment A(I) = B, the number of elements in B and I must be the
same.
后来发现这个语句的返回值不是A(i+1),而是A这个向量,我觉得这可能是造成这个错
误的原因,但是有什么方法可以实现对A中的元素一一赋值呢
谢谢
d***s
发帖数: 55
2
1.返回成变量B,然后再把B(i+1)赋给A(i+1)
2.修改函数

【在 s******e 的大作中提到】
: 有一个函数
: A是一个n by 1的向量,当知道A(1)的时候用以下语句对A中的其他元素赋值
: A(i+1)=(1+g)*A(i),g是一个常数
: 当调用这个函数的时候,运行这个语句的时候发生如下错误
: In an assignment A(I) = B, the number of elements in B and I must be the
: same.
: 后来发现这个语句的返回值不是A(i+1),而是A这个向量,我觉得这可能是造成这个错
: 误的原因,但是有什么方法可以实现对A中的元素一一赋值呢
: 谢谢

H***F
发帖数: 2501
3
use for loop

【在 s******e 的大作中提到】
: 有一个函数
: A是一个n by 1的向量,当知道A(1)的时候用以下语句对A中的其他元素赋值
: A(i+1)=(1+g)*A(i),g是一个常数
: 当调用这个函数的时候,运行这个语句的时候发生如下错误
: In an assignment A(I) = B, the number of elements in B and I must be the
: same.
: 后来发现这个语句的返回值不是A(i+1),而是A这个向量,我觉得这可能是造成这个错
: 误的原因,但是有什么方法可以实现对A中的元素一一赋值呢
: 谢谢

k**f
发帖数: 372
4

I think you did not provide the full context, in particular, what is the
value of i. The following runs just fine in MATLAB:
A=1; g=0.25; for i=1:5, A(i+1)=(1+g)*A(i); end
If your code was
A=1; i=1:5; A(i+1)=(1+g)*A(i);
the error message is
"Index exceeds matrix dimensions."

【在 s******e 的大作中提到】
: 有一个函数
: A是一个n by 1的向量,当知道A(1)的时候用以下语句对A中的其他元素赋值
: A(i+1)=(1+g)*A(i),g是一个常数
: 当调用这个函数的时候,运行这个语句的时候发生如下错误
: In an assignment A(I) = B, the number of elements in B and I must be the
: same.
: 后来发现这个语句的返回值不是A(i+1),而是A这个向量,我觉得这可能是造成这个错
: 误的原因,但是有什么方法可以实现对A中的元素一一赋值呢
: 谢谢

s******e
发帖数: 841
5
thank you all for the replies,
The error messege came up when I assigned a vector to the function variable.
If I assigned a scalor, it ran just fine.
for instance, my function is
function V=value(k)
x=zeros(10,1);
z=zeros(10,1);
x(1)=50000;
for i=1:9
z(i)=k*x(i);
x(i+1)=x(i)-z(i);
end
z(10)=k*x(10);
V=0;
for j=10:-1:1
V=400*z(j)-500*z(j)^2/x(j)+V/1.1;
end
V=-V;
end
If I write the following words in the command window, the error messege I
mentioned will pop up
x=0:0.1:1;
y=value(x);
I

【在 k**f 的大作中提到】
:
: I think you did not provide the full context, in particular, what is the
: value of i. The following runs just fine in MATLAB:
: A=1; g=0.25; for i=1:5, A(i+1)=(1+g)*A(i); end
: If your code was
: A=1; i=1:5; A(i+1)=(1+g)*A(i);
: the error message is
: "Index exceeds matrix dimensions."

k**f
发帖数: 372
6

variable.
No wonder. Your function can only take a scalar as parameter. Call it with a
vector doesn't work for z(i) = k*x(i).
You will have to run a loop like this to get the intended result:
for x=0:0.1:1
y=value(x);
% now use y for this x value
end

【在 s******e 的大作中提到】
: thank you all for the replies,
: The error messege came up when I assigned a vector to the function variable.
: If I assigned a scalor, it ran just fine.
: for instance, my function is
: function V=value(k)
: x=zeros(10,1);
: z=zeros(10,1);
: x(1)=50000;
: for i=1:9
: z(i)=k*x(i);

s******e
发帖数: 841
7
got it,
thanks

a

【在 k**f 的大作中提到】
:
: variable.
: No wonder. Your function can only take a scalar as parameter. Call it with a
: vector doesn't work for z(i) = k*x(i).
: You will have to run a loop like this to get the intended result:
: for x=0:0.1:1
: y=value(x);
: % now use y for this x value
: end

1 (共1页)
进入EE版参与讨论
相关主题
问个delayed branch的问题问一个MATLAB里遇到的问题
[发包子问] 求教一个filter问一个matlab编程的简单问题
湾区 招CPU人才对大家讨论的感想:)
请问:比较器的响应时间matlab怎么画f(x,y)=c这种函数图
这个函数的包络线怎么求问一个matlab的问题,关于workspace里的数据
傻傻地问: 啥叫 Zero Autocorrelation ?问一个Matlab变量问题
跪求指导,这个matlab报错是啥意思啊?问个simulink的问题
matlabe‘’内的语句 换行输入,用什么链接? ...不行,any optimization theory guru here?
相关话题的讨论汇总
话题: matlab话题: end话题: value话题: 语句话题: function