Not enough input arguments.
2 次查看(过去 30 天)
显示 更早的评论
Hello, I am trying to run the program, but apper the error:
Error using rwn (line 8) Not enough input arguments.
code:
% random walk on a square lattice
% input the number of jumps nt
% output is the square displacement rs2 and the list of positions x and y
function[rs2,x,y]= rwn(nt)
x(1)=0; % start particle at the origin
y(1)=0;
rs2(1)=0;
Fd=ceil(4.*rand(nt,1));% list with nt entries, each a random integer from 1 to 4, LINE 8
delx = [1 0 -1 0]; % these two lines define the jumps on the square lattice
dely = [0 1 0 -1]; % right, up, left, down
for j=1:nt % sum over nt jumps
x(j+1)=x(j)+delx(Fd(j)); % x position at j+1 jump
y(j+1)=y(j)+dely(Fd(j)); % y position at j+1 jump
rs2(j+1)=x(j+1)^2 + y(j+1)^2; % square displacement position at j+1 jump
end
0 个评论
回答(1 个)
Star Strider
2014-10-23
It ran without problems for me with this call:
nt = 25;
[rs2,x,y]= rwn(nt)
The only suggestion I have is that you could change the ‘Fd’ line to:
Fd=randi(4,nt,1);
2 个评论
Star Strider
2014-10-23
You cannot define a function of the type you are using in a regular MATLAB script. You have to create a separate .m file for it. Save your function as rwn.m and it should work without problems.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!