In the last set of posts we talked about the Excel integration and the new 3D plots component in Mathcad Prime 2.0. Today we will be introducing you to the symbolic calculation feature.

Mathcad 15.0 has had various symbolic calculation capabilities for a long time. These capabilities were absent in Mathcad Prime 1.0 but, we are happy to announce, they have been added back into the available mix of functionality for Mathcad Prime 2.0!

This newly restored symbolic calculation capability in Mathcad Prime 2.0 integrates smoothly with numeric calculation, using patented integration technology. Often in math and engineering software, formulas must be altered before they can be applied to a specific case. Mathcad Prime 2.0’s symbolic calculation functionality automates this process for you and allows you to set up the right form of the formula before plugging in numbers.

Kent Pitman, the Software Development Manager at PTC who oversees work on the calculation engine for Mathcad, shared his views with me on four interesting aspects of symbolic calculation in Mathcad Prime 2.0: explicit evaluation, the unique integration between symbolic and numeric calculations, using Lagrange notation (F’) for derivatives, and Leibniz notation for derivatives.

In Mathcad Prime 2.0, with the explicit evaluation feature, Pitman says, “you can control precisely what variables are looked at within a problem and it’s good for engineers who must show calculations step-by-step. This can be a requirement for certain engineers.” In the following example, he showed me an explicit calculation where he specified which numeric values to use, and which to leave unbound (and effectively handled symbolically).

Next, Pitman showed me how the powerful integration between numerics and symbolics technology can be used. What’s interesting about this feature is that along with being able to use symbolics to define what you’re going to do numerically, you can also accomplish the reverse, and use numerics to inform symbolics. This is a functionality that was standard in Mathcad 15.0 and has been added as one of the advanced features of Mathcad 2.0. In the following example, you can see how symbolics can be used to compute the expression that would become the definition of a function “f”. Then, when the function is called, Mathcad Prime 2.0 automatically computes sin(x), not the integral.

Below is another example of the numerics and symbolics integration. You can see that a symbolic solve is used at definition time and then the result can be used for numeric calculations. You can also see in this example how Mathcad Prime 2.0 draws attention to potential errors, since the value of “a” has no value and the definition of the variable “a” is only “some constant”.

The next feature Pitman and I discussed was the notation for derivatives. This is a newly improved feature that allows you to directly express Lagrange notation for derivatives, rather than having to write a program to implement notation. In contrast to past Mathcad software, which limited where you could use Lagrange notation, you can now use it for any expression where a math expression is called for. Because it can now be a direct expression, it simplifies your calculation. Pitman says, “This is a new feature. We’re not just bringing the software up to date, but we’re adding to it and trying to improve it as well.”

Mathcad has traditionally allowed derivatives to be expressed only using Leibniz notation. The Leibniz notation basically describes a function by talking about its definition. That is, instead of using a notation like the one below, and then referring to “the function F”, one simply referred to “the function sin(x)+x” directly. So, the function that was the derivative of F was referred to by reference to that definition.

Starting with Mathcad Prime 2.0, the Lagrange notation for derivatives is also possible to use. This notation assumes modern functional notation, where functions have names, and uses F’ to denote the derivative of F, as in:

Note that because the function is parameterized, changes of variables are a little easier (see left image) and the function can be easily evaluated at various points (see right image).

Previously one would have written:

Here is another, more complicated example (see left image). In Mathcad Prime 2.0, one can instead write it as it appears in the second image:

Note that both of the above two expressions avoid having the “chain rule” applied to sin(x), as would happen if you used the Leibniz notation this way:

Below you can see how use of explicit evaluation allows a number of useful transformations.

Whether you’re new to Mathcad Prime and see symbolics as a new feature or you’ve got experience with Mathcad 15.0 and see symbolics as a restoration of what belongs there, you’ll have to agree that the presence of symbolics in Mathcad Prime 2.0 is a welcome one. It is considered to be a major tool for many engineers and is a great advanced feature. I’d like to give a special thank you to Kent Pitman for sitting down and sharing all of these exciting highlights with me, and to you for reading. Keep your eyes out for our next post!

since you guys don’t make money off of website hits, why not include the entire post in the RSS feed.

Hi there,

I’m glad to hear that you are subscribed to the RSS feed. You are correct, we don’t make money off of the website hits. The reason why we don’t include the entire post in the feed, is because we feel that users like you can get more value out of the experience when we bring you to our actual blog site. When you read the post on the blog site, you can not only read the full article, but also see any relevant discussions, questions, or comments from other users and/or authors, you have the option to interact with the post yourself, and you can easily find related posts to an article or topic you find interesting. I hope you continue to follow the blog!

Can I hide the explicit operator as in Mathcad 14-15?

Hi Valery,

Thanks for your question. Mathcad Prime 2.0 does not include that functionality as a result of scheduling constraints. However, the team is working to include the functionality in future versions of Mathcad. Let me know if you have any other questions!

Explicit function is only usefull if there is posibility to hide the operator. Otherewise sorry, but we still “got nothing” in this case. It was one of the most expected function. My master thesis will make Mr. Word… again.

Barron,

Different users use Mathcad in very different ways, so we are always balancing and prioritizing which features to implement. We do plan to add the ability to hide the explicit operator in a future release.

Mona

Ah….Maybe I’m kind of slouch, but it seems to be so easy to implement it that way. Anyway I appreciate your work. Thanks.

The last illustration given for the x+y/z example seems a rather heavy-handed way of getting what you would get directly with the “arrow” on its own, unaccompanied by any modifiers!

You’re right of course. That’s what we get for asking a developer to provide examples.

x:=1 y:=2 z:=3

x + y/z -> 5/3

Mona

How does it cope with nested explicit evaluation?. Some times you just want the first level of substitution, and other times one wants full depth substitution. This is particularly a problem when you need both a symbolic solution, and a numeric substitution.

I had a case where I was showing a forward evaluation (which gave numeric results), and deriving the inverse function symbolically, that I could then evaluate with either the earlier numeric results (to get back my input test values), or use real measurements to estimate the inputs.

I had great difficulty making it all work and needed to use various tricks to stop the symbolics simply using my numeric inputs for the solve. I needed other tricks for the reverse step.

Hi Philip,

These blogs are really from marketing to let people know about some upcoming features in Mathcad Prime 2.0.

I’m not even clear on what you are requesting. Please post your question in the Mathcad community pages, http://communities.ptc.com/community/mathcad with an example worksheet of what you are trying to do.

Best regards,

Mona

Wonderful article! This is the kind of information

that should be shared across the web. Disgrace on Google for now

not positioning this publish higher! Come on over and visit my web site

. Thanks =)

I’m really inspired along with your writing abilities and also with the structure for your weblog. Is that this a paid theme or did you modify it your self? Either way keep up the nice high quality writing, it is rare to look a nice weblog like this one today..

Mathcad Prime 3 (student version) keeps giving me an error when using the Lagrange notation for finding the derivative of the function sin(2x). I get the correct answer for sin(x) but an error for sin(2x).

This is my first time go to see at here and i am genuinely pleassaqnt to read everthing aat alone place.

Good information. Lucky me I discovered your website by accident (stumbleupon).

I’ve saved as a favorite for later!