roman_pearce

Mr. Roman Pearce

1688 Reputation

19 Badges

20 years, 17 days
CECM/SFU
Research Associate
Abbotsford, British Columbia, Canada

I am a research associate at Simon Fraser University and a member of the Computer Algebra Group at the CECM.

MaplePrimes Activity


These are replies submitted by roman_pearce

Should hello1, hello2, hello3 be polynomials in {x,y,z} ?

This looks like a bug in the 1D parser that affects Maple 16 and later, either in the terminal, in the worksheet with 1D Maple input, or when reading input from text files.  The two term result is correct.  I filed a bug report.

Thank you for the post and the last example :)

Cox, Little, and O'Shea calls this the "extension theorem".  

http://dacox.people.amherst.edu/lectures/gb1.handout.pdf

I would wait for Maple 2017, knowing that previous versions were released in the spring.  You can run your old Maple on the new machine in the meantime.  If your activation code doesn't work, email custservice@maplesoft.com and explain the situation.  The processor on the Surface Pro should run Maple very well.  The 1GHz requirement is about 10 years old, and in the meantime CPUs have become more efficient and do more work per clock cycle.  Maple runs relatively well even on Intel's Atom CPUs.

Thank you for pointing out an inefficiency in Maple.  We can actually fix this.  As others have pointed out, Maple is computing an exact result and you'll want datatype=float[8] to get a result comparable to Matlab.  But an exact computation should only take 2 or 3 seconds.

Overall I prefer the new look, probably because it is lighter.  I still find the information density to be low, with too much scrolling required.  It might be worth condensing some interface elements.  The site responsiveness seems to have improved a bit.  I'm looking forward to the spam filter.

The spam tags should be hidden but kept for spam filtering purposes.  MaplePrimes already generates them automatically.  Can't we just designate some tags as "spam tags" and filter those messages out?

@acer Nasser's page shows the difficulty in creating Maple benchmark.  If somebody implements a computation in C, then you just end up comparing the efficiency of particular C routines or the overhead of calling them.  This might be important to somebody's work, but it doesn't really measure the system as a whole.  It's also pretty easy to game.

You would need to test a large number of routines over many domains to make a representative benchmark.  You might need 100-250 well-chosen tests.

@MDD Try cyclic-n and katsura-n.  Cyclic-7 has 924 complex roots and is relatively easy, cyclic-8 and 9 have an infinite number of solutions which is makes it difficult, and katsura-n has 2^n solutions and most algorithms that compute a lex Groebner basis using linear algebra have to deal with a 2^n by 2^n dense matrix.

Eval is a C function that is called recursively.  Your chain of assignments forces it to go deeper.  There is only so much stack space available to C programs, so depth is limited.  eval is already optimized to minimize stack space and maximize depth, but you've written a loop to overwhelm it.

It's getting really bad, I deleted a bunch last night.  We should throw it all into a database and automatically flag similar posts.  Can EssayTools do that?  It'd be a good feature.  Also there needs to be a way to select a batch of messages and flag them all as spam.

@ with(Operators); overloads Maple's arithmetic to handle polynomial ideals, and every single intermediate result is simplified by computing a Groebner basis.  This is really inefficient and is intended only for small interactive examples.  Don't use the Operators package with large examples, sorry.

Maple is probably using a lot of memory to do the calculation and then not reclaiming memory.  Can you post the worksheet so we can run it?

@Carl Love Hyperthreading is a tough sell for cpu intensive tasks, and for memory-bound tasks it can hurt performance, but for i/o bound tasks it can double the throughput.  It's great for compiling a large project or running a sever or database.

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