Skip to main content

ยท 6 min read
Weichen Qiu
Samer Adeeb

The following are free-to-use calculators developed by researchers at the University of Alberta for a variety of disciplines.

Civil Engineeringโ€‹

CSA S16-1Structural EngineeringAn application to determine class, moments and maximum shear of W section Steel beams.
CSA S16-2Structural EngineeringGives all beams with specified input
CSA S16 Tension MemberStructural EngineeringCSA S16 Tension Member
CSA S16 Compression MemberStructural EngineeringCSA S16 Compression Member
CSA S16 FlexureStructural EngineeringCSA S16 Flexure
Strain Demand in Pipes Subjected to Ground MovementPipeline EngineeringThis page analyzes the response of the pipe to ground movements induced by geotechnical activities, e.g., ground heave and subsidence, slope instability, landslides, liquefaction-induced action, and tectonic faults.
Stress Design of Straight Pipe According to CSA Z662.19Pipeline EngineeringCSA Z662.19 provides equations limiting the circumferential and longitudinal stresses in steel pipelines. Given the pipe properties and field conditions, this page performs the required checks according to sections, 4.7, and 4.8.
Stress Strain Curve of Steel MaterialsPipeline EngineeringThis page calculates converts the Engineering stress-strain curve to true stress-strain curve using the well known conversion equations. The page outputs the stress-plastic strain data required by some finite element analysis software and provides the best-fit Ramberg-Osgood approximation to the given data.

Electrical Engineeringโ€‹

Processor ComparisonHardware EngineeringCompares two processors by utilizing benchmark times for different programs.
Discrete Signals Difference EquationsSignal ProcessingAn application to determine values of a difference equation. Assumptions are sets the x(n)=ฮด(n) (the impulse function) and y(n)=0 for n<0. Make sure n is greater than the size of Y coefficients.
ConvolutionSignal ProcessingAn application to determine x[n]*h[n] = y[n]. The input contains the n index of each coefficient, such as the first element is n = 0 for the x function.
Circular ConvolutionSignal ProcessingAn application to determine the circular convolution of 2 functions.
Floating point binary numbersBinaryFloating point numbers can be represented using IEEE 754 in binary. This system uses one sign bit, then a set number of exponent (k) bits and finally, fraction (n) bits. Depending on the number of these bits, the representations of numbers change as well. This calculator is made with the intention of getting the largest floating point number possible as well as the largest integer. There are restrictions on the number of bits that can be checked, due to an overflow possibility in python.
Hard Disk Drive (HDD) Reading a FileHardware EngineeringBest and random cases of the time an HDD will take to read over a file. Assumes both block size and sector size are the same


Thermo Question Type 1ThermodynamicsAn application to determine quality given certain knowns and unknowns. Known variable values must correspond to Thermo tables.
Thermo Question Type 2ThermodynamicsAn application to determine particular unknown given certain knowns. Known variable values must correspond to Thermo tables.
Thermo Question Type 1bThermodynamicsAn application to determine a specific value given certain knowns and unknowns. Known variable values must correspond to Thermo tables.
DiagramsThermodynamicsAn application to graph Pv and Tv graphs.


Thin Lens EquationOpticsKnowing the distance an object is from a lens, we can determine the focal length and the magnification.
Thin Compound Lens EquationOpticsWe can find combined focal length of two lens. If d is input as being greater than f_1, then it will be assumed that d is 0.
Lensmaker EquationOpticsThe lens maker equation can be used to find both the Power and focal length of a thick lens and a thin lens if the thickness tends to 0.
Snell's LawOpticsThis application will derive the angle of refraction using Snell's Law.
Coulomb's LawElectrostaticCoulomb's Law with three point charges

Business and Financeโ€‹

Antique LampsMax Profit EstimationAn application to maximize profits, with the given types of lamps, bass, and platinum. Maximize, has 2 inputs with their coefficients. Assembly has 3 inputs, each being its respective coefficients, and Max demand has 1 input. The coefficients are aB+ bP = cC where B is brass, P is platinum, and C is the constant, with the input [a,b,c]. The inputs are interpreted into functions where it is drawn on the graph. There will be a feasible region where all boundaries will be satisfied. The program then picks all the intersections within the feasible region(note that some points will not be accounted for). The output just gives the profits given at that point on the graph.
Cattle ProfitMax Profit EstimationAn application to maximize profits (only gives boundaries), the first table consists of the first element being the regular, and the 2nd being the premium. The second table consists of the first element being alfalfa and the second being barley. This can also be translated such as the required material for a toy car to be inputted, but in this case it is just using cattle profit as the output. The program basically just gives the boundaries and conditions of what to expect before proceeding onto the next step.

ยท 3 min read
Samer Adeeb

Welcome to our newly released MecSimCalc platform for creating and sharing computational tools on the web. With a few very simple steps, educators and professionals can create interactive web applications for their students or clients.

MecSimCalc has been a concept in my head since I joined the Engineering Faculty at the University of Alberta in 2007. At the time, I was looking for an easy way to create interactive web examples for my students to help them visualize different Mathematical and Engineering concepts. Throughout the years, I experimented with webMathematica and javascripts. However, dealing with web infrastructure has always been a struggle. I still remember the agony of trying to switch my whole website from traditional HTTP to HTTPS or the yearly agony of renewing the licenses of the different components that I was using. Throughout the years, my experience has shaped my vision for creating MecSimCalc as a platform that frees the developer from all the ever changing web architecture to allow them to focus on their application.

MecSimCalc is a simple, yet extremely powerful platform that has applications in a large array of fields. Here is an example in Medicine, by answering a simple questionnaire, a visitor to the app can identify their diabetes risk. The app was created based on an algorithm published on a Canadian government website. For University Mathematics Education, a student can enter any functional expression and the limits of an integral while the interactive app would calculate the numerical integral and would provide a plot, powered by matplotlib for visual illustration of the example.

We created MecSimCalc for professionals in engineering and finance. Consider the app that can be distributed by a mortgage specialist to his or her clients to help them identify the price of the house that matches their finances. Or consider the Engineering app that uses the CorLAS algorithm to calculate the failure pressure of pipelines with longitudinal crack like features. While these apps are currently publicly available, we can work with any professionals to help them build and share their specific applications only with their clients.

I welcome all our visitors to explore the different applications that have been created using MecSimCalc.

We also invite all professionals, scientists, and educators who would like to publicly or privately publish their lively algorithms to try out our free platform. We promise to keep it free for any publicly available applications. We are also happy to work with any professionals wishing to use MecSimCalc for their enterprise applications.

Please send us any suggestions, questions, or inquiries to