Clear Filters
Clear Filters

How to calculate the area under a curve in km^2?

1 view (last 30 days)
Hello everyone!
I am a geologist working on this area of the Moon characterized by this fault-related landforms (see image), for some future calculations I need to know the so-called "excess area", so I need to quantify in m^2 or km^2 the area under the red line (this is a topographic profile across one of the above-mentioned structures) and above the black line whiich is my reference level. Since I am working on a GIS-based software with a known coordinate system I can measure all the distances I want to have a reference for calculation.
I read in a paper that "cross-sectional area of ridges was calculated from each profile by using a trapezoidal numerical integration" but I really don't know where to start...
Thank you in advance,
Jack
  3 Comments
Torsten
Torsten on 22 May 2023
Then
trapz(x,y-ybase)
is the area where x and y are as above and ybase is the y-coordinate of the black line.
The unit of the area will be [unit_x]*[unit_y].

Sign in to comment.

Accepted Answer

Nathan Hardenberg
Nathan Hardenberg on 22 May 2023
Edited: Nathan Hardenberg on 22 May 2023
Check out the trapz-function (https://de.mathworks.com/help/matlab/ref/trapz.html). This is exactly what you need.
You have to cut of the data from your starting point to your endpoint. And your "black line" has to be 0 level. because the trapz-function is just integrating numerically. If your data is not euqally spaced, you can also provide this in the function (see documentation)
% creating radom data
y = zeros(1,20);
y(5:14) = rand(1,10)+5
y = 1×20
0 0 0 0 5.0174 5.1231 5.1924 5.7921 5.4807 5.5166 5.2084 5.1917 5.7500 5.7148 0 0 0 0 0 0
plot(y); % visualizing
xline(4, '--');
xline(15, '--');
y_cut = y(4:15); % cutting off data
area = trapz(y_cut)
area = 53.9872

More Answers (0)

Community Treasure Hunt

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

Start Hunting!