epostma

1484 Reputation

19 Badges

15 years, 116 days
Maplesoft

Social Networks and Content at Maplesoft.com

Maple Application Center
I am the manager of the Mathematical Software Group, working mostly on the Maple library. I have been working at Maplesoft since 2007, mostly on the Statistics and Units packages and on contract work with industry users. My background is in abstract algebra, in which I completed a PhD at Eindhoven University of Technology. During my studies I was always searching for interesting questions at the crossroads of math and computer science. When I came to Canada in 2007, I had nothing but a work permit, some contacts at Maplesoft (whom I had met at a computer algebra conference a year earlier), and a plan to travel around beautiful Canada for a few months. Since Maplesoft is a company that solves more interesting math and computer science related questions than just about anywhere else, I was quite eager to join them, and after about three months, I could start.

MaplePrimes Activity


These are replies submitted by epostma

@acer : Yes, I meant to include that option. I wonder where I dropped it - I ran the code, so I must have done something wrong copying and pasting. I agree with your other remarks as well.

Erik.

@pagan : If that's the case, then I think there is no finite optimal solution. If we take c fixed for the moment, we can get optimal values for a and b by running

Statistics:-ExponentialFit(ln~([3.05, 3.1, 3.75] -~ c), [.74e-4, .1806e-3, .584e-4]);

(at least, optimal in a slightly perturbed metric). We can find the minimal sum of squared residuals for a given value of c as follows:

minsumsq := c -> Statistics:-ExponentialFit(ln~([3.05, 3.1, 3.75] -~ c),
                                            [.74e-4, .1806e-3, .584e-4]);

It now appears that minsumsq keeps decreasing as c goes to minus infinity (and the corresponding a and b go to plus infinity and minus infinity, respectively). Thus, there's no optimal solution.

Hope this helps,

Erik Postma
Maplesoft.

@pagan : If that's the case, then I think there is no finite optimal solution. If we take c fixed for the moment, we can get optimal values for a and b by running

Statistics:-ExponentialFit(ln~([3.05, 3.1, 3.75] -~ c), [.74e-4, .1806e-3, .584e-4]);

(at least, optimal in a slightly perturbed metric). We can find the minimal sum of squared residuals for a given value of c as follows:

minsumsq := c -> Statistics:-ExponentialFit(ln~([3.05, 3.1, 3.75] -~ c),
                                            [.74e-4, .1806e-3, .584e-4]);

It now appears that minsumsq keeps decreasing as c goes to minus infinity (and the corresponding a and b go to plus infinity and minus infinity, respectively). Thus, there's no optimal solution.

Hope this helps,

Erik Postma
Maplesoft.

That's the first problem. The next is, the entries of S cannot be substituted into anything - what you need is equations of the form variablename = value. So you could define S as:

S := [seq(seq([h1 = h1vals[ii], h2 = h2vals[ii], h3 = h3vals[ii], h4 = h4vals[ii], h5 = h5vals[ii], h6 = h6vals[ii], 
w = wvals[jj]], jj = 1 .. 4), ii = 1 .. 4)];

assuming that sys is a system of (polynomial) equations in the variables h1, h2, ..., h6, and w.

If your system of equations is multivariate and not polynomial (and it does look like that from the rest of your worksheet), try using ?fsolve instead of ?RootFinding/Isolate.

Hope this helps,

Erik Postma.

That's the first problem. The next is, the entries of S cannot be substituted into anything - what you need is equations of the form variablename = value. So you could define S as:

S := [seq(seq([h1 = h1vals[ii], h2 = h2vals[ii], h3 = h3vals[ii], h4 = h4vals[ii], h5 = h5vals[ii], h6 = h6vals[ii], 
w = wvals[jj]], jj = 1 .. 4), ii = 1 .. 4)];

assuming that sys is a system of (polynomial) equations in the variables h1, h2, ..., h6, and w.

If your system of equations is multivariate and not polynomial (and it does look like that from the rest of your worksheet), try using ?fsolve instead of ?RootFinding/Isolate.

Hope this helps,

Erik Postma.

There are three editors that I know support editing Maple source code (more than an arbitrary programming editor): vi and emacs (of course), and a java-based editor called jEdit. Google will find them immediately. Any one of these will make you much happier than your current solution.

Erik Postma.

There are three editors that I know support editing Maple source code (more than an arbitrary programming editor): vi and emacs (of course), and a java-based editor called jEdit. Google will find them immediately. Any one of these will make you much happier than your current solution.

Erik Postma.

@Christopher2222 and @acer: Thanks for bringing these issues to my attention - I fixed the documentation and implementation; these changes should make it into a future version of Maple.

Erik.

@Christopher2222 and @acer: Thanks for bringing these issues to my attention - I fixed the documentation and implementation; these changes should make it into a future version of Maple.

Erik.

Hi john2,

I'm familiar with the notion of kurtosis only for probability distributions (in fact there are two very similar definitions - see the Wikipedia page). In particular, you'd need to have int(f(x), x=-infinity .. infinity) equal to one and all function values nonnegative. I can imagine that you could relax the nonnegativity constraints without problem, and if the integral is finite you could scale the function to make it one, but for your example the result is undefined and even the Cauchy principal value is infinite.

What is the definition of kurtosis for such functions?

Erik Postma
Maplesoft.

@Markiyan Hirnyk : You're right - I made a mistake! Thanks for pointing that out. (I didn't get notification emails for your comments though - only when your second answer was posted...)

There is a mapping going on, from the set you describe in R^4 into "my" cube in R^3, in which the angles do not get preserved. However, the mapping is a nontrivial linear mapping, so parallel faces remain parallel and no new faces get introduced. (In theory some faces could get mapped into the same plane, so faces could be removed.) So for the octahedron, you'd need to have every face of the 3d cube and the two faces of the planes determined by the relation.

I think an argument can be made about the graph structure of vertices and edges of the object before the mapping and after the mapping, which excludes the octahedron. (Probably that is enough - maybe we need the full tripartite incidence graph where vertices, edges, and faces of the solids become vertices of the graph, and two vertices are adjacent if the corresponding objects in the solid are incident with each other.) I'm still working on it. The tetrahedron is wide open, though.

Erik.

@Markiyan Hirnyk : You're right - I made a mistake! Thanks for pointing that out. (I didn't get notification emails for your comments though - only when your second answer was posted...)

There is a mapping going on, from the set you describe in R^4 into "my" cube in R^3, in which the angles do not get preserved. However, the mapping is a nontrivial linear mapping, so parallel faces remain parallel and no new faces get introduced. (In theory some faces could get mapped into the same plane, so faces could be removed.) So for the octahedron, you'd need to have every face of the 3d cube and the two faces of the planes determined by the relation.

I think an argument can be made about the graph structure of vertices and edges of the object before the mapping and after the mapping, which excludes the octahedron. (Probably that is enough - maybe we need the full tripartite incidence graph where vertices, edges, and faces of the solids become vertices of the graph, and two vertices are adjacent if the corresponding objects in the solid are incident with each other.) I'm still working on it. The tetrahedron is wide open, though.

Erik.

@jerbertz : it's called the "member selection" or "scope resolution" operator, and is explained on its help page: ?:-. This particular case uses the version explained in the second bullet point.

Hope this helps,

Erik Postma
Maplesoft.

@jerbertz : it's called the "member selection" or "scope resolution" operator, and is explained on its help page: ?:-. This particular case uses the version explained in the second bullet point.

Hope this helps,

Erik Postma
Maplesoft.

For this case, the result can easily be obtained by evaluating the integral before the assignment to f: then indeed x is gone from f:

f := unapply(int(a*x, x=0..1), a);
int(f(x), x);

returns x^2/4. The difficulty comes when on the one hand you want to already perform the integration, but on the other hand you want to use a recursive definition that is evaluated on the fly.

Hope this helps,

Erik Postma
Maplesoft.

4 5 6 7 8 9 10 Last Page 6 of 21