vv

5766 Reputation

9 Badges

3 years, 239 days

MaplePrimes Activity


These are questions asked by vv

L:=[1,2,0,4]:
s := sum(1/L[i], i=1..nops(L));

Error, (in limit/mrv/limsimpl) too many levels of recursion

So, this error cannot be caught by try

try    # bug
  s := sum(1/L[i], i=1..nops(L));
  catch:  s:=infinity
end try;

Error, (in limit/mrv/limsimpl) too many levels of recursion

Strangely, for L:=[1, 2, 0.0, 4]  it's OK.

Everything works with add instead of sum, but this is another thing.

 

seq(x) in the help page:  When x is a sparse Matrix, Vector or rtable, only the nonzero entries are scanned.
Is the statement correct/complete?

V := Vector(6, [11,22,0,44], storage=sparse):
entries(V);
seq(V);

                        [11], [22], [44]
                      11, 22, 44, 0, 0, 0

 

add(add(1,i=1..j),j=1..4);

10

(1)

S:=%add(%add(1,i=1..j),j=1..4);

%add(%add(1, i = 1 .. j), j = 1 .. 4)

(2)

value(S);

Error, (in value) unable to execute add

 

It seems that the inner add is evaluated prematurely.

 

eval(subs(%add=add, S));  # ok

10

(3)

subs[eval](%add=add, S);  # ?

Error, unable to execute add

 

 

 

A strange fact about filenames. 
Some  filenames containing the "%" character cannot be loaded by Maple.  E.g.  "%add.mw"  or "xx%abyy.mw".  But "xx%yy.mw" is OK.
This happens in Windows, but I suspect that it is not OS related.  It seems that Maple is trying to do some hex manipulations with the filename.

 

A simple (?)  int and too many levels of recursion

 

J := Int(cos(2*x)/(1+2*sin(3*x)^2), x = 0 .. Pi);

Int(cos(2*x)/(1+2*sin(3*x)^2), x = 0 .. Pi)

(1)

evalf[30](J);

-0.321451052376028387436461558651e-32

(2)

value(J);

Error, (in csgn) too many levels of recursion

 

 

 

The workaround I know (for J = 0) it is not very simple.
Can you find an easy one?

 

 

Download int-too-many-levels-of-recursion.mw

Executing the entire worksheet several times I obtain random results for Threads:-Seq

restart;

N:=10^3;
f:= (a,b) -> add(evalf(j), j=a..b);

1000

 

proc (a, b) options operator, arrow; add(evalf(j), j = a .. b) end proc

(1)

seq(f(k*N/4+1,(k+1)*N/4), k=0..3);

31375., 93875., 156375., 218875.

(2)

Threads:-Seq(f(k*N/4+1,(k+1)*N/4), k=0..3);

31218.+j, 93875., 156375., 218875.

(3)

Threads:-Seq(f(k*N/4+1,(k+1)*N/4), k=0..3);

31375., 93875., 156375., 218875.

(4)

Threads:-Seq(f(k*N/4+1,(k+1)*N/4), k=0..3);

31900., 94170., 156375., 218875.

(5)

 


Download threads!.mw

1 2 3 4 5 6 7 Last Page 1 of 9