Problem in computing the curl of 2D velocity vector field

Hi everyone,
I'm trying the compute the curl of a 2D velocity vector field using the function
[curlz,cav] = curl(X,Y,UU,VV);
X, Y are generated using meshgrid. However I obtain a matrix of NaNs and + - Inf ... Do you know what's happening? I think I followed the correct instructions from the Matlab Help... Please let me know.
Emanuele

2 Commenti

Thorsten
Thorsten il 3 Dic 2014
Modificato: Thorsten il 3 Dic 2014
No, we don't know what's happening because you have not told us how you computed X, Y, UU and VV. Please do so and provide the code...
Hi, I want to calculate the curl from a single trajectory.
Basically, I want to identify if the trajectory rotates clockwise of anti-clock wise and measure the rotation speed.
I use something like the below:
x = data(:,1);
y = data(:,2);
u = data(:,3);
v = data(:,4);
V = [u v];
R = [x y];
curlRes = curl(V,R);
The result is 0 everywhere.
I also tried [curlz,cav] = curl(x,y,u,v) and it gives the follwoing error
'Index in position 1 is invalid. Array indices must be positive integers or logical values.'
the vectors u,v contain negative values as well as they indicate the velocity direction
Thank you

Accedi per commentare.

 Risposta accettata

I sorted out the problem, however it seems that the curl is too big at the extremes of the domain... any idea how to fix this?

1 Commento

How did you sort the problem, I have the same issue. Can you explain please?

Accedi per commentare.

Più risposte (1)

Generally, the input velocity matrices may contain NaNs, try :
sum(isnan(UU(:))); % must be zero if there is no NaN, same for VV

1 Commento

yes, they're both 0, both for UU and VV... can it depend on X and Y matrices?

Accedi per commentare.

Categorie

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by