Over the last few months, Swift Calcs has been testing a new Computation Tree to help speed calculations in Swift Calcs. We are happy to announce that this new intelligent computation scheme is now live, and we expect our users to see an increase in computation speeds for complex worksheets.
Out with the old
Prior to today, Swift Calcs used a blind computation scheme, similar to python or other scripting languages, to perform calculations. In this method, whenever any item in a worksheet was changed, that line and all following lines were automatically recalculated.
This behavior made a simple assumption: If an item changes, any later item in the worksheet might be impacted, so they should all be recalculated.
Although effective, this calculation scheme is quite inefficient. Many later items may not be impacted by a change, and recalculating them is unnecessary, wasting system resources and time. In the worst cases, long worksheets with hundreds of lines would be completely recalculated when a simple definition, with no impact on the remaining worksheet, was changed at the top of the page.
In with the new
The Computation Tree is our answer. Now, Swift Calcs intelligently links lines in your worksheet based on the independent and dependent variables in each line. When something in a worksheet is changed, Swift Calcs will now only recalculate later lines that depend on the item that was originally changed. When these dependent lines are updated, any lines that are dependent on these lines are then updated as well, and so on, until all dependencies on the original edit are resolved, and the worksheet is fully updated.
It's a bit more work on our end to build the tree on the fly, and we have worked hard testing this feature to ensure the accuracy of our tree building algorithms. That work has paid off: on complex worksheets, this new calculation scheme results in computation improvements of over 10x, as lines un-impacted by a change are passed over instead of needlessly recalculated.
Live now on Swift Calcs
The Computation Tree is now live and running. Since Swift Calcs is cloud-based, you already have it and its already working. Enjoy more efficient calculations with Swift Calcs!
Today Autodesk was kind enough to invite the Swift Calcs team in to present Swift Calcs to the Autodesk Fusion 360 community through a webinar to Autodesk users. Together, we highlighted Swift Calcs computational abilities, and demonstrated the power of using Swift Calcs to drive dimensions in Fusion 360 models using the Swift Calcs plugin for Autodesk Fusion 360.
In the latest iteration of What's New, we will be walking through a number of features that we're added to Swift Calcs over the last four weeks. Remember, since Swift Calcs is cloud-based, these features are already live and available to you now, without any software to update or install.
Better auto-conversion handling
Swift Calcs makes entering equations with units easy by automatically converting entry that matches a built-in unit as you type. Sometimes, however, you really meant 'm', not 'meters', and the auto-conversion is unintended. Starting now, use the undo functionality in Swift Calcs (found in the edit menu or with the Ctrl-Z keyboard shortcut) to immediately undo the auto-conversion. This behavior will also stop the symbol from being converted in the future for the same line. This quick ability to undo the auto-conversion will help you more quickly enter equations that match your intent today.
Email bounce reports in invitations
When inviting other users to your projects or worksheets in Swift Calcs, you will now receive a notification if any email addresses provided fail upon delivery. Although this will not catch issues associated with invitation email ending up in spam filters, any recipients that outright block the invitation email will be shown in a message after in Swift Calcs after the invitation is sent, helping you know that some users, although invited, may not have received the invitation itself.
More help videos
Our help documentation team has put together 6 more tutorial videos, available now in the Swift Calcs help area (accessed through the 'help' menu). These tutorial videos cover more advanced calculations in Swift Calcs, including working with units, variables, functions, and solving equations using the symbolic and numeric solvers. Stay tuned as this team puts together even more documentation over the coming weeks.
Bugs and issues
Various bugs and issues were squashed across the software, including a calculation bug in the mathematics engine that caused incorrect factorization results in rare cases, and a bug that limited use of the Candela unit in Swift Calcs. Find a bug, let us know so that we can make Swift Calcs better!
Working with units in Swift Calcs has always been a key feature that our users have time and time again told us keeps them coming back to Swift Calcs. With a wide range of units from engineering and physics, it's easy to perform complex calculations with automatic unit tracking and checking, ensuring consistency in results while also reducing errors and conversion mistakes.
Today, Swift Calcs is excited to announce the addition of currency to the unit library in Swift Calcs.
Unlike traditional units, which have fixed conversion rates (12 inches is always 1 foot!), currency conversions fluctuate constantly. Now your Swift Calcs worksheet can make use of currency conversion with daily updates to the conversion rates. Calculate your expected profit or costs in the local currencies, and convert the results back to your primary currency. Come back in a few days to find the results updated based on the pricing of the day.
Historical conversion rates are here too!
From your worksheet settings, found by clicking this icon at the top of your worksheet: , you can select the date to use for your currency conversions in the calculation. Our data goes back over 10 years, and over the next few months we will be adding more history to bring our data back even farther.
Start using currencies today
Since Swift Calcs is cloud based, your worksheets can start using currency units today. Find the currency option in the units list in the math-mode toolbar, or add currency units directly by using the autocomplete menu that appears when you start typing the name of the currency. Our full list of currencies, and their associated 3 letter unit symbol, is listed below:
You may have noticed that the Swift Calcs team has been quiet the last few months. Did you miss us? We sure missed you...but we wanted to try out that whole strong, silent-type thing (or was it a mysterious and hard-to-get thing?).
Actually, we've been spending the last months deeply engaged with some of our more active users. What has been working? And more importantly, what has been broken, and what can we improve? Over that time, we've been dropping in updates and adding features as we fix bugs, plug issues, and prepare to exit from Beta later this year.
Now we're back
Now we're back and better than ever. Some of the new features we are excited to announce today (scroll down to read more about each):
A brand new help and support area with new tutorial videos
Watch this space for updates every 2 or 3 weeks. We'll be highlighting recent changes, features, and changes designed to improve your engineering workflow.
And as always, let us know what you think! Create a new support ticket from the help pulldown in Swift Calcs and send us your thoughts, or contact us directly at [email protected].
Details of Recent Updates
New help and support Section
A major problem with Swift Calcs has been a lack of user documentation or tutorials. Today, that starts to change. We have launched a brand new help and support center, accessed from the '?' icon at the top right of every Swift Calcs screen. View video tutorials outlining the basics of Swift Calcs, access user forums, and submit support tickets to Swift Calcs staff. We are actively building this help section now, and have a good base of tutorials available today. By mid-December, we will have added significantly more help content to help you get the most out of Swift Calcs.
Integrated Material Data
We are happy to announce the availability of material data for hundreds of engineering materials, courtesy of makeitfrom.com. Access this data by clicking the 'material library' item in the toolbox under the 'General' category. When you add this to your worksheet, a popup will prompt you with a list of materials, and when you select a material and assign it to a variable, you can access a variety of material data using name:property syntax. See it in action here: http://www.swiftcalcs.com/worksheets/1bfdc74b-8b37-48a8-b160-30acda666929/MaterialDataExample
Integrated Thermodynamic Data
We are also thrilled to announce that thermodynamic data for a wide range of species is now available within Swift Calcs. To use this data, define a mixture of various species, set temperature and pressure of the mixture, and find properties such as enthalpy and entropy. You can also set enthalpy or entropy and find the corresponding temperature for that state. Access this data by clicking the 'ideal mixture' item in the toolbox under the 'General' category. When you add this to your worksheet, a popup will prompt you with a list of species, and when you select some and assign the mixture to a variable, you can access or set a variety of properties using name:property syntax. See it in action here: http://www.swiftcalcs.com/worksheets/4151388a-a550-4eed-8b62-5f818e670d41/IdealMixtureExample
Per-Result Significant Digits
Now, on any result in Swift Calcs, hover your mouse over the answer and select Change Precision from the pulldown menu to customize the displayed significant digits for the answer.
When you add a plot to Swift Calcs, you will see a new option, parametric, from the plot type pulldown. With parametric plots, you can define the x and y coordinates based on a function of a third variable.
Integration with Onshape and Autodesk Fusion 360
We have launched our integrations for the cloud CAD platforms from Onshape and Autodesk. With our apps, you can perform calculations in Swift Calcs and tie your results directly to variables in your CAD geometry, allowing for your calculations to directly drive your CAD files.
Now, in the 'sharing' section for worksheets and projects, you can find an 'embed' section that will provide a small code snippet that you can copy and paste on to your blog, or another website that you control. When used on your site, the embed code will integrate your Swift Calcs file directly on your site, allowing you to show your content within your own website.
We've been refining our auto-complete and auto-conversion routines in Swift Calcs to better provide suggestions and transformations of use to you. For example, units are now automatically recognized for every unit, unless a variable with the same name has been defined in your worksheet. Similarly, autocomplete is now case-sensitive, to ensure 'kN' suggests kilonewtons before knots.
And much, much more
From stability improvements to bug fixes to feature enhancements, the changelist for the last few months has been long. Check out our public repositories to learn more, and keep your eyes here as we continue to update the community over the next months as Swift Calcs continues to grow and improve.