# How to integrate a vector over a surface of x,y-coordinate vectors

4 views (last 30 days)
Jakob Aberhan on 18 Jul 2023
Commented: Jakob Aberhan on 21 Jul 2023
Hello,
I have 3 vectors. One x vector with x-coordinates, one y vector with y-coordinates and a vector z with values to this x,y-coordinates. Now I need to integrate the values of the z vecotor over the x,y-surface.
I tried to first make a 2D-Mesh with
[X,Y] = meshgrid(x,y)
and then resape the vector z on to this mesh with
Z = griddata(x, y, z, X(:,1), Y(1,:));
this didnt work.
Can anyone tell me what I am doing wrong or can tell me how I can integrate one verctor over the x,y-coordinates of vector x and y ?
I am using matlab R2022b
Jakob Aberhan on 18 Jul 2023
My problem is I dont know how to interpolate correctly and how to integrate then over the x,y-Mesh with Data in it.

KSSV on 19 Jul 2023
Edited: KSSV on 19 Jul 2023
You need to find out whether your data is structured is unstructured. Depedning on that, you need to proceed.
%%structured
xi = unique(x) ; yi = unique(y) ;
[X,Y] = meshgrid(xi,yi) ;
Z = reshape(z,size(X)) ;
figure
surf(X,Y,Z)
%%unstructured
m = 100 ; n = 100 ;
xi = linspace(min(x),max(x),m) ;
yi = linspace(min(y),max(y),n) ;
[X,Y] = meshgrid(xi,yi) ;
Z = griddata(x,y,z,X,Y) ;
figure
surf(X,Y,Z)
To integrate have have look on trapz
Jakob Aberhan on 21 Jul 2023
Ok so I could solve my problem. Thanks a lot, you really helped me with your answer.

### Categories

Find more on Numerical Integration and Differentiation in Help Center and File Exchange

R2022b

### Community Treasure Hunt

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

Start Hunting!