John May

Dr. John May

2616 Reputation

18 Badges

17 years, 31 days
Maplesoft
Pasadena, California, United States

Social Networks and Content at Maplesoft.com

Maple Application Center
I have been a part of the Mathematical Software Group at Maplesoft since 2007. I have a Ph.D in Mathematics from North Carolina State University as well as Masters and Bachelors degrees from the University of Oregon. I have been working on research in computational mathematics since 1997. I currently work on symbolic solvers and visualization as well as other subsystems of Maple.

MaplePrimes Activity


These are replies submitted by John May

If you are using Maple 12, a double integral can be entered in 1D input as a single call to int:

int(1/x, [x = y..1, y = 0..1]);
 

John

Oops, wrong version.  I was running the example with some development code loaded.  When I run with a clean Maple 12, I definitely see memory blow up.

I suspect Acer is probably right that you can get around a lot of a the memory issues by using Arrays instead of arrays, and by avoiding repeated calls to int.

John

I ran this worksheet in Maple 12, and I did not get any memory blow up.  Memory usage seems to hold more or less constant through the loop (there was a lot of alloc and gc but total usage didn't seem to rise).

John

I can't say for sure, but unless you are doing something like very large matrix computations where you know you are going to need more than 2 GB of RAM for the computation, it is unlikely more RAM is going to help.  Like Robert says, I find that most computations that shoot up to 2GB and crash the kernel are due to combinatorical explosions of memory use and would not be satisfied with only a couple more gigabytes of RAM.

More often than not, the solution is a new algorithm, not new hardware.

John

There are not actually options to control some of the environment variables in solve but that should change eventually.  _SolutionsMayBeLost is a little harder to replace but we have been thinking about it.

John

I think, as a rule, our newer code favours named optional parameters over environment variables for user level interfaces.  I know integration and solve  have been modified in recent releases to support most of the control originally provided via environment variables through options as well with the documentation being updated to steer users to the options.

John

evalc will do the same (it implicitly assumes that variables are real):

 evalc(abs(z));

 evalc(argument(z));

John

evalc will do the same (it implicitly assumes that variables are real):

 evalc(abs(z));

 evalc(argument(z));

John

In theory, I guess one could make a forget all function doing something like:

for p in {anames('procedure')} do
      forget(p);
end do;

Things get more fiddly when one wants to make sure any remember tables of functions stored in modules are also cleared (especially if they are local module members).  But it should be possible. All the extra fiddly stuff is probably why we don't have such a function already.

John

It is already kind of possible to do that:

f(x) := 456:f(y) := 12:  f(x), f(y);

forget(f,x); f(x), f(y);

But it is quite limited.  If f has multiple arguments, you need to specify all of them; it doesn't use wildcards.  forget also cannot be called on all functions with remember tables since that information is not stored centrally: each defined function would have to be individually inspected.

However, as acer pointed out, the deeper issue here is that remembers tables should not be used on obects with last name evaluation.  That is,  we shouldn't need to have such a selective 'forget' at all.

That with problem int and functions should be fixed in the next release of Maple.

John

forget(int);  would be more appropriate here.   `int/int` has the option 'system' which means:

Option system serves to identify procedures in the Maple library that are
  considered to be "system functions", meaning functions for which the
  remember table may be deleted at garbage collection time. If this option is
  not specified for a procedure that has the remember option, the remember
  table survives garbage collections.

So gc() isn't necessarily guaranteed to work here.

John

Many of the internal integrators do check for  periodicity and symmetries, but apparently they are not catching compositions of trig functions.  I will look into beefing this up a bit.

John

Many of the internal integrators do check for  periodicity and symmetries, but apparently they are not catching compositions of trig functions.  I will look into beefing this up a bit.

John

This appears to be related to a very old issue with solve and inverse trig solutions.  We've added it as an SCR to our database, and I will be sure to look at it.

John May
Math Developer, Maplesoft

Question asking sites (e.g. Yahoo Answers and Ask Metafilter) and review sites (e.g. the Amazon reviews) use a system like this.  In the case of "answers" sites, there is often a special rating set aside for the original "asker" to specify that an answer was helpful to their situation directly.

It looks like there are a lot of Drupal modules to do this sort of thing, but it is not obvious from a quick look which is the right one for Mapleprimes.

 

John

First 10 11 12 13 14 15 16 Page 12 of 19