Curl function outputting -inf and NaN

2 visualizzazioni (ultimi 30 giorni)
Spencer
Spencer il 8 Giu 2011
Commentato: Robert il 16 Nov 2023
Hello All,
I have a 2-D velocity field I am trying to calculate the curl of. My input
curlX=curl(Y,Z,V,W);
and it gives me a matrix of a bunch of -inf, inf and NaN.
if I input just curlX=curl(V,W) then it gives me a result for curl but not on the correct coordinate system. Can someone please help me with this?
-Spencer

Risposta accettata

Andrew Newell
Andrew Newell il 8 Giu 2011
If quiver works but not curl, your coordinates may not have the correct form. They have to be monotonic, as if set up by meshgrid.
  1 Commento
Spencer
Spencer il 8 Giu 2011
Thank you andrew. After you said this I went back and made a meshgrid instead of using the given grid and it now works fine. Thanks!

Accedi per commentare.

Più risposte (3)

Sean de Wolski
Sean de Wolski il 8 Giu 2011
Apparently you're dividing a positive number by zero (inf), a negative number by zero (-inf) and zero by zero (nan). What does your data look like?

Spencer
Spencer il 8 Giu 2011
My data consists of 4 40*40 matrices, each matrix representing the Y, Z, V, or W coordinates and velocities respectively.. I dont know exactly what the curl function in matlab does, so I may need to look into it.
Another note: when I use quiver(YY,ZZ,VV,WW) it outputs my velocity field as it should be. So it seems like my matrices are OK.
  1 Commento
Andrew Newell
Andrew Newell il 8 Giu 2011
Extra details for your question should be included as comments (like this one) or edits to your original question.

Accedi per commentare.


Spencer
Spencer il 8 Giu 2011
some of my data is very small velocities i.e. e^-4, could this be the reason I am getting these small numbers, is the program carrying the small decimal places?
  1 Commento
Sean de Wolski
Sean de Wolski il 8 Giu 2011
MATLAB works in double precision so it shouldn't have issues at 1e4. Unless you're dividing a very large number by 1e4.
Even:
2e200/1e4
doesn't go to inf.

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by