Dr. John May

## 2351 Reputation

12 years, 272 days
Maplesoft
Guru
Pasadena, California, United States

## Social Networks and Content at Maplesoft.com

I am a Senior Developer in the Mathematical Software Group and have been with Maplesoft since 2007. I am also an Adjunct Assistant Professor in the School of Computer Science at the University of Waterloo.

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.

My main research interests in are computational linear and polynomial algebra, especially numerical polynomial algebra. I currently work on the exact algebraic solvers as well as other subsystems of Maple.

## PolynomialTools:-Splits will get you par...

PolynomialTools:-Splits will get you part of the way there, but then you're faced with the problem of identifying real linear factors, and combining the complex ones.   I don't, right off, know an out of the box solution that gives a purely real factorization.

## Four Solutions...

Something to be aware of.  For each value of epsilon, your system has (generically) has four solutions.  fsolve by default only returns one of the solutions to a system. See with:

```sol := solve({eq3, eq4, eq5, eq6}, {d[0], d[1], d[2], d[3]});
sols := allvalues(sol):
evalf(eval([sols], epsilon = -1/10));
```

## It is possible to call Matlab solvers, b...

It is possible to call Matlab solvers, but in fact Matlab mostly uses all the same numerical numerical solvers that Maple does ( ATLAS / MLK / LAPACK ).   The key to getting at the speed in Maple is making sure your matrix is stored as a hardware floating point (datatype=float[8]) array so that you avoid expensive copy and conversion overhead when you call linear algebra routines.

## @AmusingYeti creating a function f as a ...

@AmusingYeti creating a function f as a procedure and then plotting it as a function call  plot(f(x), x=0..5) is a classic anti-pattern in Maple, it works OK in many cases, but you are almost always better off plotting the procedure directly:

```plot(f, x=0..5);
plot(2*f, x=0..5);```

etc

## Input...

hellohihihi,

I would be interested to see your system of equations (and inequations), since solve will almost always call SolveTools:-PolynomialSystem directly on problems that are purely polynomial and so it should not usually be slower to use solve instead.

John

## Hard One...

This seems to be hard one.   I stopped it after 17 hours on my i7.

memory used=7230230.4MB, alloc=5588.3MB, time=62626.80

John

## Hard One...

This seems to be hard one.   I stopped it after 17 hours on my i7.

memory used=7230230.4MB, alloc=5588.3MB, time=62626.80

John

## I am unable to view the file in the link...

I am unable to view the file in the link (I get a login screen).  Is it possible to host it somewhere else?

John

## Talking about trees all the time does no...

Talking about trees all the time does not always make one very poplar.

John

## The easiest option is to build your expr...

The easiest option is to build your expression using the 2D math palettes and when done highlight the whole thing and select the context menu: 2-D Math > Convert To > Atomic Identifier

If you lprint() the result, and play around a little bit, you will see that something similar could also be entered programmaticly in Maple's typsetting markup:

``#msubsup(mi("σ"),mrow(mi("θ"),mi("θ")),mi("S"))``

Displayed as:

John

## The easiest option is to build your expr...

The easiest option is to build your expression using the 2D math palettes and when done highlight the whole thing and select the context menu: 2-D Math > Convert To > Atomic Identifier

If you lprint() the result, and play around a little bit, you will see that something similar could also be entered programmaticly in Maple's typsetting markup:

``#msubsup(mi("σ"),mrow(mi("θ"),mi("θ")),mi("S"))``

Displayed as:

John

## Actual Input...

It is hard to give an answer to this sort of question without having the actual input.  "Linear and nonlinear equations with inequalities" covers a lot of ground.

## Earth...

Here is a good collection of images of planets that map nicely to spheres: http://www.vendian.org/mncharity/dir3/planet_globes/

Here is my Earth:

n := 128;
p:=ImageTools:-Preview(ImageTools:-Transpose(im),2*n,n):

q:=plot3d(1, x=0..2*Pi, y=0..Pi, coords=spherical, style=surface,
grid=[2*n,n]):

plots:-display(PLOT3D(MESH(op([1,1],q), op([1,4..-1],p)), op(2..-1,q)));

John

## Classy Wood Grain...

From now on, all my plots will be textured in classy woodgrain:

using this texture:

John

 1 2 3 4 5 6 7 Last Page 3 of 19
﻿