Clear Filters
Clear Filters

To find intersection, and to calculate the area between two curves for two functions.

18 views (last 30 days)
This question was flagged by Star Strider
Hi everyone, kindly please help me in solving this problem. I am new to this matlab. So I am not really sure how to do this.
Hoping for a step-by-step answer.
Let f(x) = e^x - 1 and g(x) = 1 - x^2 for x ∈ [0; 1]. Draw the graphs of the two functions f and g, determine the point of intersection z of the two graphs and calculate the area of the region between the two graphs in [0; z].
Thank you in advance.
  2 Comments
Walter Roberson
Walter Roberson on 7 Jan 2023
The area "between" two intersecting real-valued functons is equal to the area of the absolute value of the difference between the two functions. The area of the absolute value of the difference can be calculated symbolically using int()

Sign in to comment.

Accepted Answer

Sulaymon Eshkabilov
Sulaymon Eshkabilov on 7 Jan 2023
Edited: Sulaymon Eshkabilov on 7 Jan 2023
Step 1. Calculation the two functions
x = linspace(0, 1, 200);
f = exp(x)-1;
g = 1-x.^2;
Step 2. Plot the calculated f(x) and g(x) points
plot(x, f, 'b-', x, g, 'r', LineWidth=2), grid on
xlabel('$x$', 'interpreter', 'latex')
ylabel('$f(x), \ g(x)$', 'interpreter', 'latex')
title 'Area between two curves', hold on
Step 3. Find the intersection
[xi,yi] = polyxpoly(x,f,x,g);
mapshow(xi,yi,'DisplayType','point','Marker','o', 'MarkerFaceColor', 'c', 'MarkerSize', 9)
Step 4. Compute the area between the two curves
AREA = trapz(x,f)-trapz(x,g)
AREA = 0.0516
  4 Comments
Walter Roberson
Walter Roberson on 8 Jan 2023
The area "between" the two curves is the sum:
  • area of (higher one minus lower one) between 0 and intersection point; plus
  • area of (new higher one minus new lower one) between intersection point and 1.
Which can also be expressed as the absolute value of the difference in the functions.
The calculation you did is the plain difference between the functions -- and the difference goes negative when the functions intersect.
syms t
AREA = int(abs((exp(t)-1) - (1-t.^2)), 0, 1)
AREA = 
vpa(AREA)
ans = 
0.67464615778033102610566089193666

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!