how to call this function in another script?

조회 수: 1 (최근 30일)
Mohammed AlQahtani
Mohammed AlQahtani 2022년 2월 9일
답변: Nivedita 2023년 11월 14일
function M=bisFor(f, a, b, ~)
M=ceil((log10(b-a)/TOL)/log10(2));
FA=f(a);
value=(1:M);
for i=value
p=a+(b-a)/2;
FP=f(p);
if sign(FA)==sign(FP)
a=p;
FA=FP;
else
b=p;
end
end
p=a+(b-a)/2;
end
  댓글 수: 2
Abolfazl Chaman Motlagh
Abolfazl Chaman Motlagh 2022년 2월 9일
the error is in mmmm.m file. you should show us what is in line 7 of that.
Jan
Jan 2022년 2월 9일
편집: Jan 2022년 2월 9일
Just a hint:
value=(1:M);
for i=value
This is much slower than:
for i = 1:M
What is the purpose of defining a 4th ignored input?
function M=bisFor(f, a, b, ~)
% ^ ??
On the other hand, what is "TOL"? Do you want to provide this as 4th input?

댓글을 달려면 로그인하십시오.

답변 (1개)

Nivedita
Nivedita 2023년 11월 14일
I understand that you want to call the "bisFor" function in another script. To call this function in another script, you just need to make sure the function is in your MATLAB path. Then, you can call it just like any other function.
Here's an example of how you can call this function:
% Define the function you want to find the root of
f = @(x) x^2 - 2;
% Define the interval [a, b]
a = 1;
b = 2;
% Define the tolerance
TOL = 1e-5;
% Call the bisFor function
M = bisFor(f, a, b, TOL);
% Display the result
disp(M);
In this script, we first define the function "f" using a function handle. This function is "x^2 - 2", which has a root at "sqrt(2)". Then we define the interval [a, b] where we want to find the root, and the tolerance "TOL" for the bisection method. Finally, we call the "bisFor" function with these parameters and display the result.
Please replace the function "f", the interval [a, b], and the tolerance "TOL" with your own values as needed.
For more information on function handles, you can refer to the following documentation link:
I hope this helped!
Regards,
Nivedita.

카테고리

Help CenterFile Exchange에서 Get Started with MATLAB에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by