Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations KootK on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Things you love/hate with mathcad

weikequ

Structural
Oct 10, 2024
8
Hey guys, I'm a structural turned software engineer and I'm building a mathcad-ish alternative (primarily due to the lack of care and innovation PTC's shown for the software). I'm really curious about the things you love or hate about the software. Maybe PTC can also see this thread and then I can go back to just using mathcad lol. For me:

Awesome
- handling units
- displaying/typing math in a really natural way

Not awesome
- lack of integration points with my other tools
- no sketches
- PTC hasn't done anything really great to improve the software in like 10+ years
 
Replies continue below

Recommended for you

Haven't used it in a while, but this is what I recall:
Pricing model stinks. Too expensive. No permanent licenses.
Every new version seems to make old file versions obsolete. In some cases can't even read the old files.
Every new version introduces new errors.
Not easily compatible with Excel.
 
Yeah, I heard with Prime you can't open a file created with a newer version of Prime.
I think the old Mathcad didn't have that issue.


Prime 10.0 introduced Advanced Controls which looks neat.

Also enjoying the ability to link to different places in the document.
Think that came out in Prime 9.0.


Seems like its taken forever to restore functions that were available in the old Mathcad.
 
- lack of integration points with my other tools
- no sketches
Integration was tried in earlier versions of Mathcad, but trying to keep up with Microsoft, or any other company's software/software changes is a continual game of catch-up, and rife with pitfalls.
Sketching was tried in Mathcad with SmartSketch, which worked until it didn't. I think trying to do too much with a calculation program is hazardous to your financial health
- PTC hasn't done anything really great to improve the software in like 10+ years
Depends on how you define "improve," since they definitely "improved" on MCP1, which was sorely lacking a plethora of MC15 features. Given that the user base is probably way smaller than that of their mainline products, PTC probably scaled down the ambitions they had when they bought out Mathsoft.
Yeah, I heard with Prime you can't open a file created with a newer version of Prime.
I think the old Mathcad didn't have that issue.
There was a limit to Mathcad's backward/forward compatibility; Mathsoft switched their file format few times, and that did make life miserable for a small company with limited financial resources, insofar as trying to keep forward and backward compatibility.

I would suggest starting small; simply duplicating M15's good features as much as possible would be a great start, especially if the price point is attractive. Nevertheless, note that Mathsoft was never really able to get wide reach into potential users, and I'm guessing that the pitfalls they encountered in trying to fix an old code base a couple of times broke their bank, resulting in their sale to PTC. Furthermore, I suspect the user base hasn't really grown much in the intervening time, so PTC's ability to complete the re-implementation the functionality of M15 has dragged. Note that going away from probable spaghetti code to a more "modern" software implementation has bit both Mathsoft and PTC; MC14 starts up substantially faster than MCP10. And bear in mind that each added non-core "feature" is that much more code to load on startup and to maintain, over the long run, not even counting potential issues with compatibility with integrating with external software that you have no control over.
 
You might be going up against a few competitors with deeper pockets than you.
SMath Studio, Mathematica and Maple Flow are alternatives that people are turning to as PTC repels them.

That said, the competition has strong points and weak points.

SMath Studio: deliberately designed to compete with Mathcad, hobby project turned pro, based in Russia, owner great at math but not at finance, doesn't realize he'll make more money licensing to a Euro/US company than trying to get anybody to buy software from Russia.

Mathematica: designed for one-off calculations, ability to annotate and illustrate scientific papers, solve functions algebraically, demonstrate "whiteboard" methods for teachers, but completely unsuitable for engineering reports.

Maple Flow: deliberately designed to compete with Mathcad, supported by a good math engine "Maple", has programmers and developers and marketing team that seems to be focused, has a lot of catching up to do, product is bare-bones currently.
 
Smath, when augmented by Maxima, has a very good graphing ability, rather better than I am used to from old versions of mathcad.

Another alternative is EngineeringPaperXYZ. Unfortunately the developer got booted from here, he's on Reddit now. Here's a link to a demo.


if you aren't allowed to access .xyz sites then EPxyz.com

Upstairs I have a Vista laptop with Mathcad 5 on it. That's a keeper. Oh and Mathcad for DOS. Grins. I can't use both as they have different shortcuts.
 
Maple Flow looks interesting, but it seems to be more of an iteration of the symbolic Maple engine. One of the things I use Mathcad for is table driven calculations that would otherwise require something like Matlab, but I don't do programming.
 
Ah, back in the old days that horrible realisation after 4 hours work that you should be in Excel rather than Mathcad.
 
I would suggest starting small; simply duplicating M15's good features as much as possible would be a great start, especially if the price point is attractive. Nevertheless, note that Mathsoft was never really able to get wide reach into potential users, and I'm guessing that the pitfalls they encountered in trying to fix an old code base a couple of times broke their bank, resulting in their sale to PTC. Furthermore, I suspect the user base hasn't really grown much in the intervening time, so PTC's ability to complete the re-implementation the functionality of M15 has dragged. Note that going away from probable spaghetti code to a more "modern" software implementation has bit both Mathsoft and PTC; MC14 starts up substantially faster than MCP10. And bear in mind that each added non-core "feature" is that much more code to load on startup and to maintain, over the long run, not even counting potential issues with compatibility with integrating with external software that you have no control over.
Good comment! What would you consider to be M15's must have feature-set? I know it might be overly ambitious, but I feel like a lot of people's first foray into doing calculations is through Excel even though it's not super intuitive to learn and hard to do easily reviewable calc documentation. Not that we'll probably ever be able to take on microsoft though 😂.
 
You might be going up against a few competitors with deeper pockets than you.
SMath Studio, Mathematica and Maple Flow are alternatives that people are turning to as PTC repels them.

That said, the competition has strong points and weak points.

SMath Studio: deliberately designed to compete with Mathcad, hobby project turned pro, based in Russia, owner great at math but not at finance, doesn't realize he'll make more money licensing to a Euro/US company than trying to get anybody to buy software from Russia.

Mathematica: designed for one-off calculations, ability to annotate and illustrate scientific papers, solve functions algebraically, demonstrate "whiteboard" methods for teachers, but completely unsuitable for engineering reports.

Maple Flow: deliberately designed to compete with Mathcad, supported by a good math engine "Maple", has programmers and developers and marketing team that seems to be focused, has a lot of catching up to do, product is bare-bones currently.
That is an awesome summary, thanks! Yeah haha, when has trying to make something new been easy??

Since I've taken a foray into software, I'm really thinking about things from that perspective as well, trying to bring some of those critical infrastructure into traditional engineering. It'll be basically VSCode without code. So thinking about stuff like the following to really differentiate things:
- Basic mathcad stuff like units, variables, functions, etc
- Markdown based text editing, equations/calcs stored in LaTeX
- Version control with git to allow project tracking
- Extensions marketplace for other software integrations
- Sketching capabilities
 
Calcpad is open source, so if you really want to write software I guess you could contribute there.
Calcpad is a VERY cool project and I hope it takes off (hell yes for open source). But imo it ventures too far into writing something that's like coding. If I wanted to just code, I'd just use python with handcalcs or something. WYSIWYG is the way to go if you don't want/don't have time to dive into python
 
These are some personal likes about Mathcad. I hope they give you some ideas into your software development.

In my engineering experience, I've mainly used Mathcad. The first thing I like about it is that it is a 'blank sheet'. That permits the user to display their work in whatever type of format they prefer, from the 'quick pencil scribble' to the full blown 'Engineering Documentation Justification Report'. That's what I like, the flexibility. In my case, I go for the Report format. The visual 'Word Processing' capabilities can make the pages look very professional.

I'm keen on the units. I've been asked to check peoples work, where they haven't used units (be it Mathcad or Excel). In the case of Mathcad, units is like a check, if your accidentally working with mixed units, it lets you know!

Graphing, in 2D and 3D. This has come in handy! 3D has helped in things like plotting rectangular plate displacements, stress fields, 3D bolt groups, etc.

Being able to write out an equation, with variables that haven't been defined has helped.
Example would be p(x,y,k,u.v) = k.sin(pi.u.x/b).cos(pi.v.y/a), for use such as in min. potential energy methods!
Also the general solution, y(x,A,B,P) = A.cos(k(P).x) + B.sin(k(P).x), for use in things like beam column deflection & buckling.
This then permits the equation to be used in a 'solve block', where unknowns can be solved (linear and non-linear solvers) by equating to known boundary / loading conditions etc within the 'solve block'. Use of 'solve blocks' has helped out tremendously!

Another aspect of Mathcad that has proven to be very handy is the integration and differentiation capabilities! For example, these capabilities have come in very useful for beam deflection calculations. Combined with the use of undefined variables (unknown variables to be found) and a 'solve block', numerous boundary conditions (transnational / rotational), differing materials (combination of components) and changing cross sections (stepped / tapered) along the beam, and loading combinations [distributed (linear / tapered / sinusoidal) / point loads / step moments] have been easily solved! Being able to symbolically solve these types of equations (integrals / differential) is also very useful! In some instances, the symbolically solved equations can be used instead of the built in integration / differentiation capabilities, thus speeding up the solution time.

For diagrams, including things like FBD, to aid in explaining methods etc, I like the ability to insert a picture, such as ‘Paint’, and be able to edit it.

Hope this helps.
 
Last edited:
What would you consider to be M15's must have feature-set?
  • Units - that's a must -- needs to seamlessly convert SI to USC and vice-versa; the mixed units comment above, I think, only applies to erroneous mixed units. Adding 1 ft to 1 m is perfectly fine in Mathcad; adding 1 ft^2 to 1 m will result in Mathcad griping about incompatible units.
  • Given-Find solve blocks -- perhaps with better diagnostics and better ability to fix convergence problems
  • Array calculations using iteration variables, i.e., y_sub_i = function(x_sub_i) -- basically a FOR loop, but without having to do any programming
I don't do much beyond that
 

Part and Inventory Search

Sponsor