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

4 views (last 30 days)
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
Thank you in advance :)
Jakob Aberhan
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.

Sign in to comment.

Accepted Answer

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.
xi = unique(x) ; yi = unique(y) ;
[X,Y] = meshgrid(xi,yi) ;
Z = reshape(z,size(X)) ;
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) ;
To integrate have have look on trapz
Jakob Aberhan
Jakob Aberhan on 21 Jul 2023
Ok so I could solve my problem. Thanks a lot, you really helped me with your answer.

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!