I have an iso-surface of velocity V(a,b,c) as shown in the picture. I need to calculate the volume enclosed by this iso-surface and the X axis. I have the x,y,z co-ordinates corresponding to this iso-surface as three different 3D matrices. Any suggestions will be of great help! thank you!

 Akzeptierte Antwort

Chad Greene
Chad Greene am 12 Feb. 2016

0 Stimmen

This is a sum. Each grid cell has a volume which is its height x width x length. In your case height at a given row and column is V(row,col). If your grid cells are W*L in size, the volume under the surface of one grid cell is V(row,col)*W*L. For the entire surface, sum up all those volumes and multiply by grid size:
sum(V(:))*W*L

1 Kommentar

Walter Roberson
Walter Roberson am 13 Feb. 2016
This applies if we assume a border of 0 around the values. If not then we have to subtract half of the boundary pixels (trapezoid rule.)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by