Secant Method M File



Files

Let’s understand the secant method in numerical analysis and learn how to implement secant method in C programming with an explanation, output, advantages, disadvantages and much more.

What is Secant Method?

  1. Secant Method - Matlab Code - M File, Study Guides, Projects, Research for Mathematical Methods for Numerical Analysis and Optimization Pakistan Institute of Engineering and Applied Sciences, Islamabad (PIEAS).
  2. This video implements the secant method in MATLAB. The example finds a root of the sin function in the proximity of 4, which of course turns out to be 3.1415.
  3. To do this, we could create an m-file for the other function, but we would have to call that m-file cosmx.m even if there were no cosines in it, because that is what the bisectcosmx function expects. Suppose that we have three files, called f1.m through f3.m, each of which evaluates a function that we want to use bisection.

The secant method is a root-finding method that uses a succession of the roots of secant lines to find a better approximation of root.

The secant method algorithm is a root bracketing method and is the most efficient method of finding the root of a function. It requires two initial guesses which are the start and end interval points. This method is very similar to the Regula Falsi method.

The secant method is a Quasi-Newton method and it is seen to be faster in execution in some scenarios as compared to Newton-Raphson method and the False Position Method well.

The secant algorithm does not ensure convergence. The rate of convergence of secant method algorithm is 1.618, which is really fast comparatively. The order of convergence of secant method is superlinear.

Firstly, you need to code function f and save it as M-file. For your problem, the function will have following shape: function out = f(x,y) out(1) = y(2); out(2) = y(1).y(2) - 12.y(1) - 9.y(2) -4.x^3 +5.x^2 + 12/13; Then simply call shootingmethod with required parameters.

The equation used in the following secant method c programs are as follows:

  • x3 – 5x + 3
  • x3 – 3x – 8

Secant Method Formula

Secant Method Algorithm

2
4
6
8
Step1:Assume an equationf(x)=0(which must be defined)
Step3:Do
wherei=1,2,3,4,.....
Step4:Evaluated Result
File

Convergence criteria for Secant Method

Secant
  1. Fixing apriori the total number of iterations (limit).
  2. Testing the condition (xi+1−xi), is less than some tolerance limit (epsilon).

Advantages

  • It evaluates one function at every iteration as compared with Newton’s method which evaluates two.
  • The convergence rate is very fast.
  • The secant method rule does not use the derivatives of a function.

Disadvantages

  • The convergence may not always happen.
  • Newton’s method generalizes much efficiently to new methods for solving simultaneous systems of nonlinear equations as compared to the Secant method.

Note: This secant method in C programming is compiled with GNU GCC compiler using CodeLite IDE on Microsoft Windows 10 operating system.

Method 1: C Program For Secant Method using Do While Loop

2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
32
34
36
38
40
{
floatstart_interval,end_interval,midpoint,allowed_error;
printf('nEnter Value for Start Interval Point:t');
printf('nEnter Value for End Interval Point:t');
printf('nEnter Value for Allowed Error:t');
printf('nEnter Limit for Iterations:t');
do
if(equation(start_interval)equation(end_interval))
printf('Please enter different start and end intervalsn');
}
midpoint=(start_interval *equation(end_interval)-end_interval *equation(start_interval))/(equation(end_interval)-equation(start_interval));
end_interval=midpoint;
printf('nIteration: %dtRoot: %fn',count,midpoint);
if(countlimit)
break;
}while(fabs(equation(midpoint))>allowed_error);
return0;
{
}

Output

Method 2: Implement Secant Method in C Programming using While Loop

2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
32
34
36
#include<math.h>
#define EQUATION(x) (x)*(x)*(x) - 3*(x) - 8
intmain()
floatinterval_start,interval_end,midpoint;
printf('nEnter Value for Start Interval Point:t');
printf('nEnter Value for End Interval Point:t');
printf('nEnter value for Allowed Error:t');
printf('n');
printf('nStartttEndttMidPointtfunction(Start)tfunction(End)');
while(temp>allowed_error)
a=EQUATION(interval_start);
midpoint=interval_end-((b *(interval_end-interval_start))/(b-a));
printf('n%ft%ft%ft%ft%f',interval_start,interval_end,midpoint,a,b);
interval_end=midpoint;
{
}
{
}
printf('nnRoot of the Equation: %fn',midpoint);

Secant Method M File Extension

Output

Secant Method Algorithm

If you have any doubts about the implementation of Secant method in C programming, let us know about it in the comment section. Find more about it on WikiPedia.

Secant Method M File Viewer

NUMERICAL METHODS C PROGRAMS
Newton-Raphson Method C Program
Weddle’s Rule Algorithm C Program
Euler’s Method C Program
Bisection Method C Program
Gauss Seidel Method C Program
Simpson’s 3/8th Rule C Program
Picard’s Method C Program
Regula Falsi Method C Program
Bisection Method Algorithm and Flowchart
Simpson’s 1/3rd Rule C Program
Trapezoidal Rule C Program