John May

Dr. John May

2616 Reputation

18 Badges

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

Social Networks and Content at Maplesoft.com

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 Posts that have been published by John May

February 2nd is Groundhog Day in North America. A day when we look to small marmots to prognosticate the weather. If the groundhog sees its shadow when it emerges from its burrow, then it predicts 6 more weeks of winter, and if not, then spring begins today! Unfortunately there are many official weather predicting groundhogs. Fortunately, the excellent website Groundhog-Day.com tracks each of their predictions. Unfortunately, it doesn't tell you which groundhog to trust. Fortunately, it has an API and we can take the data and map it in Maple:

This map assumes that each groundhog's prediction is valid at it's exact geographic coordinates, but that it's predictive powers fall off in inverse proportion to the distance away.  So, exactly halfway between a groundhog predicting early spring, and one predicting 6 more weeks of winter, we expect 3 more weeks of winter.  I handle that with Maple's Interpolation:-InverseDistanceWeightedInterpolation command with a radius of 1500 miles.  I plot a contourplot of that interpolating function, and then display it with the world map in DataSets:-Builtin:-WorldMap to generate the image above.

All the code to do that can be found in the following worksheet which also using the URL packaget to fetch the most recent groundhog data possible from the website.

Groundhog-Map.mw

I've commented out a few lines that you might use to explore other possible maps.  You can filter to file to just include real living groundhogs and not all the other precitions (some from puppets, some from other animals) if you find that more trust worthy. You might also prefer to change the interpolation command, one of my collegues suggests that Interpolation:-NaturalNeighborInterpolation might be a better choice.

we have recieved lots of great sumissions, but we want your great submission and now you have more time.

 

The deadline for submissions to the Art Gallery and Showcase for the 2023 Maple Conference is rapidly approaching. We really want to see your art! It doesn't have to be incredibly impressive or sophisticated, we just want to see what our community can create! If you've been working on something or have a great idea, you still have a few days to get it together to submit.

A penrose tiling mosaic of that famous Windows 95 background

Submission can be made by email to gallery@maplesoft.com but be sure to visit the visit our Call for Creative Works for details on the format of the submission.

 

If you've seen Paulina's announcement then you know that we are once again holding a virtual Maple Conference this year.  As well, we are once again going to have a virtual gallery featuring artwork and creative projects submitted by the Maple community!

Last year we had a number of great submissions to our Maple Art Gallery and our Maple Learn Creative Showcase.  These were our excellent prize winners.

From left to right we have A visualization of all the primitive roots of 10037 created by Simon Plouffe, winner of the Judge’s Choice, Mother’s Day Rose created with Maple plots by Greg Wheaton, winner of the People’s Choice, and Mona Lisa in Maple Learn created by Paul DeMarco (with help from Leonardo DaVinci), the winner of the People’s Choice for the Maple Learn Showcase.

This year we are expanding the Gallery into two collections to encourage more people to submit.  They are

  • The Art Gallery - A small gallery to highlight high effort, mathematically interesting works (with stricter criteria)

  • The Creative Works Showcase - A larger showcase for nearly any interesting visual works created with Maplesoft products like Maple Learn and Maple

Feel free to submit nearly anything cool for the Creative Works Showcase, if we find it particularly impressive we might even ask you to let us consider it for the gallery.  Also, do not be intimidated by the title "Art Gallery" we're looking for anything that has taken some artistic effort and tells a mathematical story.

For more information on critera and how to submit, please visit our Call for Creative Works.  The important deadline to know is the September 14th deadline for submission of works with virtual gallery reception and awards ceremony durring the conference October 26-27.

I look forward to seeing all the submissions for the Maple community again this year!

This year, for Christmas, my children* got a Valve Steam Deck under the Christmas tree.  It's a pretty cool device that looks a little  like a monsterous Nintendo Switch, but it can run an impressive subset of the Steam video game catalog, games mostly designed to run on Windows PCs.  It manages this by sporting a custom x86_64 processor by AMD and running a customized version of Arch Linux that uses Wine via Valve's Proton tool.  The key point here, is that it is a tiny x86_64 compatible computer running Linux. So, of course, I needed to install Maple on it. So, I just paired a bluetooth keyboard, rebooted it into desktop mode and with a few small trick, bam, Maple on the Steam Deck:

There were a few small hiccups that required some work. I had absolutely no problems getting the Maple installer onto the device via a USB drive and no problems running it. I only ran into problems durring license activation:

Fortunately, I talked to our crack technical support team and they were able to identify this as a problem with Arch Linux not having full LSB 3.0 support installed by default. The process for fixing that is documented on the Arch Linux Wiki and involves just installing the ld-lsb package via pacman -- with the small additional wrinkle that you need to take the Steam Deck operating system out of 'read-only' mode in order to do that. But once that was done, I had a full version of Maple running well (albeit at 1280x800 resolution on a 7" display).

Since this device is designed for gaming, I was curious how fast it is compared to some other machines I work on. I chose an arbitrary benchmark of exactly solving a random linear system with integer coefficients.

restart;
N := 400;
A := LinearAlgebra:-RandomMatrix(N, N):
b := LinearAlgebra:-RandomVector(N):
v := [seq(cat(v__, i), i = 1 .. N)]:
sys := LinearAlgebra:-GenerateEquations(A, v, b):
CodeTools:-Usage(SolveTools:-LinearSolvers:-Rational(`~`[lhs - rhs](sys), v, dense = false)):

which it solves in decent time:

For comparison, this is 30% faster than the 32 core Xeon e5 workstation I do most of my work on, and only 5% slower than my notebook computer with an 8th gen Intel i7.  Not bad for a toy! (please don't make me sad by telling me how much faster this is on a Mac M1 or M2)

Let me know in the comments if you have other benchmarks you want me to run on the Steam Deck. Also, please let me know if you manage to get your employer to buy you a Steam Deck to do scientific computing.

 

*Okay, maybe it was a gift for me. Shhhh, don't tell.

This is a friendly reminder that the deadline for submissions for this year's Maple Conference Creative Works Exhibit is fast approaching!

If you are looking for inspiration, you can take a look at the writeup of the works that were featured last year in this write up in the most recent issue of Maple Transations.

Also, don't forget that you can also submit art made in Maple Learn for a special exhibit alongside the main gallery.

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