variable store in loop
显示 更早的评论
syms z x a v
Y(1)=a
T=0
for k=1:2
Y(k+1)=z
v=0
for l=1:k
v=v+kroneckerDelta(sym(l-2))*(k+2-l)*(k+1-l)*Y(k+2-l) % THIS LINE
end
T= v+ 2*(k)*Y(k+1)+(kroneckerDelta(sym(l-2)))==0
a=solve(T,z)
Y(k+1)=a
end
The highlighted part is not getting updated. Why it is so? Y(2)=z is variable and this value is later used to calculate T.
回答(1 个)
VBBV
2023-1-4
syms z x a v
Y(1)=a
T=0
for k=1:2
Y(k+1)=z;
v=0;
for l=1:k
v=v+kroneckerDelta(str2sym('l-2'))*(k+2-l)*(k+1-l)*Y(k+2-l);
end
T= v+ 2*(k)*Y(k+1)+(kroneckerDelta(str2sym('l-2')))==0
a=solve(T,z);
Y(k+1)=a;
end
6 个评论
VBBV
2023-1-4
Use str2sym
yogeshwari patel
2023-1-5
Image Analyst
2023-1-5
You're assigning a to Y, not z. What is the point of z? What value does z even have? If you do
whos z
z
as the first lines in your for loop, what does it show?
yogeshwari patel
2023-1-5
syms z x a v
Y(1)=a
T=0;
for k=1:2
Y(k+1)=z
v=0
for l=1:k
v=v+kroneckerDelta(sym(l-2))*(k+2-l)*(k+1-l)*Y(k+2-l) % THIS LINE
end
T= v+ 2*(k)*Y(k+1)+(kroneckerDelta(sym(l-2)))==0
a=solve(T,z)
Y(k)=a % may be this is change needed
end
you need to assign kth value to a in the below line
a=solve(T,z)
Y(k)=a % may be this is change needed
end
类别
在 帮助中心 和 File Exchange 中查找有关 Code Performance 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!