Question: EDIT: within "if": f(1,1)<3.0 condition cannot be determined

Hello,

I want to create a plot of a gradient field of a function with singularities I want to draw arrows only where the function has values below 3,   or written: where f(x,y) < 3.

MY CODE:

potfeld := f(x, y) -> 1/sqrt(y^2+x^2);
   for i to 5 do
           for j to 3 do
                    if sqrt(i^2+j^2) <> 0 and sqrt((i-2)^2+j^2) <> 0 and potfeld(i, j) < 3
                       then P[i, j] := arrow(`<,>`(i, j), `<,>`((D[1](potfeld))(i, j), (D[2](potfeld))(i, j)))
                       else P[i, j] := arrow(`<,>`(i, j), `<,>`(.1, .1))
                   end if
           end do
    end do;
Pseq := seq(seq([P[k, l]], k = 1 .. 5), l = 1 .. 3);
display(Pseq, view = [1 .. 5, 1 .. 3], scaling = constrained);

 

RESULTS IN:
Error, cannot determine if this expression is true or false:  (1/2)*2^(1/2) < 3.0

The "(1/2)*2^(1/2)" are the value of the function potfeld(x,y) evaluated at (1,1).

I ask for your help, as with many changes and variations I have not managed to solve this issue.
+Thx and regards+

Please Wait...