Product Tips & Techniques

Tips and Tricks on how to get the most about Maple and MapleSim

We are looking for someone that can develop some maple scripts for us. Must have some chemical engineering knowledge.

contact us: smne33@hotmail.com

 

regards.

Maple 15, Windows7x64, Standard v. Classic

I have noticed that, on my system, the smoothness of some INLINE plots is better in Classic than in Standard. Is this some regression or some installation-specific quirck I wonder?

In Tools->Options, I have plot anti-aliasing enabled (whatever that is).

This looks alright in Classic

plots:-implicitplot(
  [ x^2 + y^2 = 1, x^2 + y^2 = 2 ]
  , x = -2 .. 2
  , y = -2 .. 2

The folks at Grand Valley State University have posted a nice set of Maple tutorial videos on YouTube.  The videos have been designed for students taking 200-level math courses, but they are certainly suitable for anyone who is either new to Maple, or looking for a refresher.

Enjoy!

http://www.youtube.com/playlist?list=PL81C1945FA962279F

Bryon

The iPad is a very exciting device and it has been gaining broad adoption from our academic and professional customers alike. It was a logical step for us to bring Maple technology to this platform.
 
The Maple Player for iPad is now available in the Apple App Store. It comes bundled with ready-made interactive Maple documents, covering topics like integration, differentiation, computing...

I was recently looking at rotating a 3D plot, using plottools:-rotate, and noticed something inefficient.

In the past few releases of Maple, efficient float[8] datatype rtables (Arrays or hfarrays) can be used inside the plot data structure. This can save time and memory, both in terms of the users' creation and manipulation of them as well as in terms of the GUI's ability to use them for graphic rendering.

What I noticed is that, if one starts with a 3D plot data structure containing a float[8] Array in the MESH portion, then following application of plottools:-rotate a much less efficient list-of-lists is produced in the resulting structure.

Likewise, an effiecient float[8] Array or hfarray in the GRID portion of a 3D plot structure gets transformed by plottools:-rotate into an inefficient list-of-lists object in the MESH portion of the result. For example,

restart:

p:=plot3d(sin(x),x=-6..6,y=-6..6,numpoints=5000,style=patchnogrid,
          axes=box,labels=[x,y,z],view=[-6..6,-6..6,-6..6]):

seq(whattype(op(3,zz)), zz in indets(p,specfunc(anything,GRID)));
                            hfarray

pnew:=plottools:-rotate(p,Pi/3,0,0):

seq(whattype(op(1,zz)), zz in indets(pnew,specfunc(anything,MESH)));
                              list

The efficiency concern is not just a matter of the occupying space in memory. It also relates to the optimal attainable methods for subsequent manipulation of the data.

It may be nice and convenient for plottools to get as much mileage as it can out of plottools:-transform, internally. But it's suboptimal. And plotting is a topic where dedicated, optimized helper routines for some particular data format is justified and of merit. If we want plot manipulation to be fast, then both Library-side as well as GUI-side operations need more case-by-case-optimizated.

Here's an illustrative worksheet, using and comparing memory performance with a (new, alternative) procedure that does inplace rotation of a 3D MESH. plot3drotate.mw

If you have been logged in at mapleprimes in the last week you will know that I'm currently going through an obsession with plots. Indeed, some deadline is looming and it is all very stressful. For reference, and hopefully it may be of use to someone somewhere someday, I produce 2D plots with Standard GUI in the postscript format using plotsetup(ps). I'm on Windows for this. (3D plots aren't so hot with Standard GUI)

I use LaTeX for my documents. I used to insert postscript...

The goal here is to produce plots for inclusion inside Worksheets or Documents of the Standard GUI at specific sizes.

[update: Maple 18 has this as a new feature for 2D plots. See the `size` option described on ?plot,options]

When manually resizing an existing plot, using the mouse pointer, there is no visual cue as to what pixel size has been attained. Hence any worksheet author who wishes to produce a plot of size 600x600 is presented with two barriers. The first is that resizing must be done manually, and the second is that there is no convenient mechanism showing the actual size attained.

The `Resize` package attempts to address these barriers by allowing construction of a plot, inside a worksheet, with programmatically specified width and height in pixels.

The default behaviour of the package is to produce the plot inside a new Worksheet, from whence it may be selected and copied. An optional behaviour is to show the constructed plot inside a Task Template (a form of help-page), where it may be previewed for correctness and inserted into the current Worksheet or Document at the press of a single button.

It appears to function for both 2D and 3D single plots.

It won't work for so-called Array plots, which are collections of multiple plots displayed side-by-side inside a worksheet table.

This first version is a bit rough. The plot is currently being inserted as input, which is why it isn't centered on the page. I suspect that it would be best to insert the first argument (eg. a `plot` call) as input to an execution group, and then have the plot be the output. That would look, and hopefully act, just as usual. And with the plot call inserted as input, the original `Resize` call could be neatly deleted if desired.

To install this thing, use the File->Open from the Standard GUI's menubar. Choose this .mla file as the thing to open. (You may have to slide a scrollbar, and select a view of "All Files", in order to see it in the pop-up File Manager.) Double-clicking on the file, to launch it, should ideally also open it but it looks like that functionality broke for Maple 15.

Resize_installer.mla

Alternatively, you could run the command,

march( 'open', "...full...path...to...Resize_installer.mla");

The attached .mla archive is a (graphically) self-unpacking installer, when opened in this way.

The bundled materials include a pre_built .mla containing the package itself, the source code and a worksheet that rebuilds it from source if desired, a short example worksheet, and a worksheet that rebuilds the whole installer (and re-bundles all those files into it). I used the `InstallerBuilder` to make the self-unpacking .mla installer, as I think it's a handy tool that is under-appreciated (and, alas, under documented!).

It's supposed to work without the usual hassle of having to set `libname`. This is an automatic consequence of the place in which it gets installed.

It seems to work in Maple 12, 14, and 15, on Windows 7. Let me know if you have problems with it.

acer

I saw an image yesterday of some math done similar to how one can write on paper, with each new reformulation shown on the next line, with a down-arrow between each such line. In other words, operations and output moving down the sheet rather than along it to the right.

The first thing that came to mind was: can this be done in Maple with context-menus?

Here is an attempt,

    cm_downwards.mw

We have just released the MapleSim Driveline Component Library. Built with the involvement of several transmission manufacturers, this MapleSim add-on covers all stages in the powertrain, from the engine to the differential, wheels, and road loads, as well as vehicle dynamics. MapleSim and the MapleSim Driveline Component Library make it much easier for transmission manufacturers to reduce power loss through improved designs, resulting in more efficient vehicles.

For...

 

                

3D Paper Physical Model

And so with this provocative title, "pushing dsolve to its limits" I want to share some difficulties I've been having in doing just that. I'm looking at a dynamic system of 3 ODEs. The system has a continuum of stationary points along a line. For each point on the line, there exist a stable (center) manifold, also a line, such that the point may be approached from both directions. However, simulating the converging trajectory has proven difficult.

I have simulated as...

MapleNet 15 has just been released. MapleNet 15 brings the power of Maple 15 to your web sites and applications. New features include support for the new interactive data tables and single-click re-execution of documents.  MapleNet 15  also automatically detects when it is being accessed from a mobile device and adapts the display according to the device capabilities. 

You can learn more about MapleNet 15

Most programs will not produce and assign to a large number of global "top-level" names. But it is interesting that the cost associated with such global name assignment is related to the number of entries in libname.

A possible cause of this cost is the need to check whether the name is protected, before assigning.

The following timings were made on 32bit Maple 15 running on Windows 7, on an Intel i7. The set of four timings is...

Just wanted to let everyone know that there is a Maple 15 update available. Maple 15.01 provides:

  • Enhancements to MapleCloud security settings
  • Improvements to tools supporting multi-process programming on a local grid
  • Extended MATLAB® connectivity to include MATLAB® R2011a
  • Compatibility with MapleSim 5

 

To get this update, you can use Tools>Check for Updates from within Maple, or visit for ...

This is more of a blog entry, mostly a note to myself.

I wanted to generate a list of points on the surface of a deformed sphere. It turns out that Robert recently showed how to do that on a unit sphere.

http://www.mapleprimes.com/questions/35962-Limited-Random-Points-Plot-On-A-Surface#comment66936

Adapting his code is straightforward. So here is what I came up with. One proc generates the random points on the surface of the ellipsoid. Another proc generates...

First 30 31 32 33 34 35 36 Last Page 32 of 65