Filter löschen
Filter löschen

Solution of equation of difference

1 Ansicht (letzte 30 Tage)
Nick Vasilakis
Nick Vasilakis am 26 Jan. 2022
Bearbeitet: Yash Srivastava am 2 Feb. 2022
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);

Antworten (1)

Yash Srivastava
Yash Srivastava am 2 Feb. 2022
Bearbeitet: Yash Srivastava am 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.

Kategorien

Mehr zu Get Started with MATLAB finden Sie in Help Center und File Exchange

Produkte


Version

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by