Solution of equation of difference
1 view (last 30 days)
Show older comments
Hello! So I'm trying to solve this equation:
for A>0 and being my main variable
Initial value of y(-1)=3 and for N=30 loops
This is the code I've managed to write:
function res = my_matlab_function(A,N)
%definition of y(-1)=3
y_1=3;
% calculating the first value of y(0)
y(0)=0.5*y_1+(0.5*(A^2))/(y_1);
%calculating the rest
for i=1:N-1
y(i)=0.5*(y(i-1)+((A^2)/y(i-1)));
result = my_matlab_function(A,N);
disp(['A= ' num2str(A) 'Result=' num2str(result)])
end
but MATLAB returns to me the followed error:
Not enough input arguments.
Error in my_matlab_function (line 8)
y(0)=0.5*y_1+(0.5*(A^2))/(y_1);
0 Comments
Answers (1)
Yash Srivastava
on 2 Feb 2022
Edited: Yash Srivastava
on 2 Feb 2022
Hello Nick,
I am assuming that you are trying to run the script file directly by pressing the ‘Run’ button or executing the file from command window. For a file with function to run properly, you need to pass arguments.
You may refer the below documentation to pass arguments to functions with the help of ‘Run’ button:
You may also refer the below link to pass arguments to functions using command window:
Also, Array indexing starts from 1 in MATLAB. You may adjust your index values accordingly.
0 Comments
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!