How to use curl for 2D-vector field correctly?

Hi everyone,
I've some data from a simulation like (x,y,u,v) which u corresponds to velocity in x-direction and v in y-direction. In order to compute the curl of vector V(u,v) i did it like so:
x = data(:,1);
y = data(:,2);
u = data(:,3);
v = data(:,4);
V = [u v];
R = [x y];
curl = curl(V,R);
Now i wanna to see if my code is correct or is there any mistake?
Many thanks!

1 Kommentar

Andreas Passos
Andreas Passos am 25 Feb. 2021
Bearbeitet: Andreas Passos am 25 Feb. 2021
I have the exact same question,
'how to calculate the curl of a trajectory'
if you found the answer please let me know

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Jess Lovering
Jess Lovering am 15 Aug. 2019

0 Stimmen

I think you might have to make those inputs into matrix format first with meshgrid. Then you can pass those directly into curl.
x = data(:,1);
y = data(:,2);
u = data(:,3);
v = data(:,4);
[X,Y] = meshgrid(x,y);
[U,V] = meshgrid(u,v);
curl = curl(X,Y,U,V);

2 Kommentare

Nima
Nima am 15 Aug. 2019
If I use meshgrid, then I will receive 0 and NAN as results of curl!
Jess Lovering
Jess Lovering am 15 Aug. 2019
Sorry - you are right. I am not sure because the help says it needs to be a matrix "as if produced by meshgrid."

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Mathematics finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2018b

Gefragt:

am 15 Aug. 2019

Bearbeitet:

am 25 Feb. 2021

Community Treasure Hunt

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

Start Hunting!

Translated by