Maplesoft Blog

The Maplesoft blog contains posts coming from the heart of Maplesoft. Find out what is coming next in the world of Maple, and get the best tips and tricks from the Maple experts.

Latest Posts Latest Blog Posts Feed

Do an internet search on "Challenger Puzzle" and you will find descriptions and solvers for a puzzle that involves sums of integers from one to nine. Indeed, on a 4 × 4 grid where sixteen integers would fit, four are given, along with the row, column, and diagonal sums of the numbers not shown. The object of the puzzle is to discover the missing twelve numbers.

Unlike Sudoku, the digits can repeat. And unlike Sudoku, the puzzle can have multiple solutions. In fact, "There may be more than one solution" is explicitly stated below the directions, copyrighted by King Features Syndicate, Inc., that appear in my local newspaper, the Waterloo Region Record.

Innocence Found...

April 05 2010 Tom 4 724

After years of dreaming, planning, scheming, and hoping, my family, as a single entity, finally made it to Asia for a holiday. In our region, school children typically enjoy a mid March “Break”. This usually means families packing up their minivans and driving to Florida or other warm places to help them forget the bleakness of the Canadian winter.  This year, however, the spring winds took my family to Asia – Japan and Korea to be specific. I was born in Korea but moved to Canada in 1971 when I was 7 years old. And those of you who have glanced at my past posts know that I’ve been a frequent business visitor to Japan many times over the years. But a family trip to these dynamic places is a completely different experience. There is something remarkable about the discovery experience you get as a pure tourist where issues of punctuality and protocol disappear and you’re left with the experience in its most raw and engaging forms.

Recently, I received an email from a physics instructor asking for help in building a tool that would display the solution of the initial value problem 


with the four parameters under the control of sliders. (Of course, we recognize that this equation governs the damped, driven linear oscillator, and that the request to endow its solution with sliders is in service of visualization of the change in the nature of the solution as the parameters vary.)

The Mighty Transistor...

March 19 2010 fkern 26

A few days ago I asked my wife what she thought was the most important invention of the last 100 years. Without pause, she responded “the credit card!”

I suppose that “important” is relative, but my answer is the transistor. As Wikipedia puts it, “The transistor is the fundamental building block of modern electronic devices, and its presence is ubiquitous in modern electronic systems.” Semiconductors are vital to everyday life because they have radically reduced the size, cost and power consumption of all modern electronics.

Life wouldn’t be the same without transistors (or without credit cards, admittedly). Your laptop would weigh hundreds of pounds and be a “mainframe” computer without transistors. Your television would rely on tubes, and you couldn’t mount it on the wall – it would weigh 100 pounds or so without transistors. No mobile phones, either – your telephone would have a rotary dial, and the handset would be connected with a wire. Telephone directories would still be printed books weighing 5 pounds or so.

It was years since I "derived" the result that slopes of perpendicular lines were negative reciprocals of each other. So I thought it would be easy to show that when , where, in Figure 1, is the slope of line (black) and is the slope of line (red). Clearly, lines and are perpendicular when .

It's Not Easy Being Green...

March 08 2010 Tom 4 724

I’ve written in the past of how the push for more efficient, “greener” designs are driving innovation in important industries like auto, aerospace, and power.  Over the past few years, we’ve met countless engineers around the world who are working hard to transform conventional designs to highly refined optimal designs in tune with modern realities, and some are, of course, throwing out old ideas all together and venturing into exotic power sources and radical platforms that used to be the stuff of science fiction. Last week I had one of the more interesting and enjoyable encounters with such a group of very talented green engineers.

It's Better With Maple...

February 11 2010 rlopez 1637

Recently, I had to write a brief introduction to the precalculus topic "Vertical Translation of Graphs." Figure 1 ( in black, in red) says just about everything. 



Figure 1   The red curve () is the black curve () vertically translated upward by one unit. 


But is the issue all that trivial? Although the curves are vertically separated by one unit, they don't look uniformly spaced. The animation in Figure 2 helps overcome the optical illusion that makes it seem like the black curve bends towards the red curve, even though the curves are congruent.

Ten years ago, I wrote an article for Dr. Dobb’s Journal on Analytical Computing. Many of the techniques I discussed there, like hybrid symbolic-numeric computing and automated code generation have since revealed themselves as indispensable tools for engineering. Others, like exact computing, have yet to reveal their potential.

 A lot has happened since that article, of course, and it’s about time I share some thoughts about what the current challenges are. There are three areas that are top of my mind and that I would like to discuss here: Parallel computing, collaborative software and user interface abstractions.

Speaking of languages …...

February 01 2010 Tom 4 724

I’ve always been a big fan of languages and even a bigger fan of those who readily master multiple languages with relative ease. My late brother was a linguist with a minimum of five or so distinct languages in his portfolio. Yes, there were many things that I thought I could do better, but that one gift of his was the thing that I would remember him by as time went on.  The other day, my son Eric asked me for advice on what courses to take in Grade 10. He essentially had three electives and, as with most public schools in our country, there were countless choices, all of which sounded tantalizingly interesting and enriching. In the end he came to the conclusion (OK, I drove him to the conclusion), that French, German, and Computer Science would be the right choices.

I’m not a morning person. Well, that’s not entirely true: I am not particularly a morning person, but relative to my wife, Amy, I seem awfully crusty and curmudgeonly for about an hour after waking up. She, on the other hand, is definitely of the “up and at ‘em” variety. As such, I would like to credit coffee with contributing significantly to our happy marriage these last five years.

With so many data points I can now reliably say that it is in everyone’s best interest for me to wake up first, or for us to wake up at the same time. If Amy gets up first, by the time I wake up she is reciting lists of “things I’d like to do today” as I groggily attempt to get that first double espresso to my lips. This is where something interesting happens: If I don’t perk up, Amy gets extra happy in an attempt to cheer me up (just give me time to wake up!). This implicitly suggests that she is using her mood as a forcing function to my mood. If I still don’t perk up, then things turn ugly as I am clearly being insensitive to her generous efforts to cheer me up, and her mood drops. Conversely, if I do perk up, whether from the coffee or her cheerfulness, all is well.

It was 1992 when Mel Maron and I had just published the third edition of Numerical Analysis: A Practical Approach.  One of our editors made the suggestion that a Maple version of an advanced engineering math book should be written. For the next five years I steadfastly resisted the challenge.  Finally, in 1997 I signed a contract with Addison Wesley for a 1000-page AEM text, the manuscript due in two years. 

 Rose-Hulman Institute of Technology where I was teaching in the math department is on the quarter system, and math faculty normally teach twelve contact hours.  Calculus classes are five hours per week, so for each calculus course taught, a faculty member picks up an extra hour.  To minimize prep time, I wrangled three courses all the same, but they had to be calculus courses, so I was teaching fifteen contact hours and writing what turned out to be a 1200-page text. 

After the first two quarters of academic year 1997, I needed to come up for air, so I set aside the project and spent several months putting together a Maple-based tensor calculus course. Happily, I even got to teach it in the following school year. One of the high points for me was animating a parallel vector field along a latitude on a sphere.

Getting Things Done...

January 20 2010 Samir Khan 674

Around the time that Windows 98 was at its most popular, I used to dabble in programming Windows user interfaces with Visual C++ and the help of several thick MFC (Microsoft Foundation Class) manuals.  I wanted to create packaged (and admittedly simple) engineering applications. But for a chemical engineer with little background in Windows programming, combining math functionality with a user interface was time-consuming and cumbersome. (MFC can be arcane unless you’ve invested considerable time in learning the API.)

Later, I migrated to VB6.  Designing an interface was an order of magnitude easier, but I still had to roll many of my own math routines, or link to external libraries. While I may be interested in the mathematical mechanics of adaptive step sizing in Runge-Kutta algorithms at the intellectual level, it was secondary to my then goal.

Nocturnal computation...

January 14 2010 Tom 4 724

In his last blog post “Watching the Dawn”, Fred Kern comments on the life of an engineer before the realization that symbolic approaches to computing can get you better results faster. The analogy is, of course, prior to this revelation we were in some sense in the dark. I’d like to add my two cents worth as I was indeed one of those engineers lurking in the dark for many years.

Flash back about 20 or so years.  I was a poor graduate student and to feed myself, I began doing small jobs for this new company called Waterloo Maple Software (which eventually became Maplesoft).  Mostly, my work was to develop small applications or demonstrations with an engineering focus.  I remember with great fondness, the look of shock and awe that would come over my engineering colleagues’ faces when I showed them how I computed symbolic matrix products or performed a cumbersome simplification in seconds. For me, it was an obvious thing to do because I had access to the technology and I didn’t know any better. But for them, it seemed like pure voodoo. But in reality, the common themes that I somehow fumbled upon during these early presentations would later reappear in much richer, exciting forms as core themes in the eventual “symbolic sunrise” twenty years later.

Watching the Dawn...

January 13 2010 fkern 26

I’ve flown across the oceans hundreds of times, but anyone who has done it even once has experienced the beautiful view of a dawn or a sunset.  That is, if you weren’t asleep.

I’ve had the good fortune to witness other dawns and sunsets – the dawn of new technologies, and the sunset of others.  I’m old enough to remember the dawn of ATMs, fax machines, the internet, wireless technology, transistors, personal computers and several other things that are basic to our lives today.  I actually contributed in a small way to at least two of those “dawns”.

The truth is that most technology dawns are more obvious in the “afternoon” – a few years after the dawn.  When it’s happening, it often seems like a complicated and possibly interesting thing, but the full potential impact isn’t always clear (at least to me).

I’m quite sure that I’m witnessing another new dawn today.  It’s the dawn of symbolic computing technology revolutionizing the world of engineering.

A few months ago, I needed to prepare for a customer on-site training session. As part of the request for topics to be covered during the training, my contact there wanted to talk about contact! Contact models are important for multi-body systems because it is about the interactions between objects.  An important example of a contact model is a tire component that interacts with the road. In this case, the training topic requested was a more generic question: “how to create contact models in MapleSim”.  There are, of course, lots of examples available within MapleSim that contain contact models already. Two particular examples came to mind: 1) the bouncing ball; and 2) the catapult. However, this being a training session, simply presenting the example models would not accomplish the purpose of the session. So I broadened my scope and turned my attention to the question: “how does one model contact in general?”

First 9 10 11 12 13 14 15 Page 11 of 18