How to integrate a vector over a surface of x,y-coordinate vectors
12 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Jakob Aberhan
el 18 de Jul. de 2023
Comentada: Jakob Aberhan
el 21 de Jul. de 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
Thank you in advance :)
3 comentarios
Respuesta aceptada
KSSV
el 19 de Jul. de 2023
Editada: KSSV
el 19 de Jul. de 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
4 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Numerical Integration and Differentiation en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!