Skip to main content
1-Visitor
November 18, 2014
Solved

Solving Linear System With Mixed Units?

  • November 18, 2014
  • 4 replies
  • 2050 views

Hi,

I am attempting to solve a linear system with mixed units, but I am having great difficulties.

I have read that 0's within the matrix must have assigned units. However I still get errors.

Worksheet attached - linear system on page 2.

Working in Mathcad 15

Any ideas? Thanks

Best answer by Fred_Kohlhepp

Rather than dividing by units, use the function "UnitsOf()", it prevents scaling errors.

Rather than A.33/m, use A.33/UnitsOf(m). There are two benefits:

1) If A.33 happens to be feet, inches, furlongs, miles, it will get converted into the proper value for the default units system in Mathcad. (This prevents differential equation solutions from improper scaling.)

2) If A.33 happens to be not a length, but say a force, Mathcad will throw an error.

4 replies

Werner_E
25-Diamond I
November 18, 2014

The zero with units applies to Prime (dynamic unit check), not to Mathcad static unit check.

Prime is inferior compared to Mathcad in most aspects but there are a very few things which have been improved in Prime and one of them is the handling of mixed dimensions in one matrix.

In Mathcad 15 you are not allowed to put values of different dimensions in one matrix.

In your matrix A you have dimensionless values (1's) and lengths which throws am error.

Best approach is to get rid of the units altogether by dividing the variables by their unit (write A.33/m, etc.) and put the units back later. Thats annoying and failure prone and it sure is a drawback.

23-Emerald I
November 18, 2014

Rather than dividing by units, use the function "UnitsOf()", it prevents scaling errors.

Rather than A.33/m, use A.33/UnitsOf(m). There are two benefits:

1) If A.33 happens to be feet, inches, furlongs, miles, it will get converted into the proper value for the default units system in Mathcad. (This prevents differential equation solutions from improper scaling.)

2) If A.33 happens to be not a length, but say a force, Mathcad will throw an error.

Werner_E
25-Diamond I
November 18, 2014

Fred Kohlhepp wrote:

Rather than dividing by units, use the function "UnitsOf()", it prevents scaling errors.

Rather than A.33/m, use A.33/UnitsOf(m). There are two benefits:

1) If A.33 happens to be feet, inches, furlongs, miles, it will get converted into the proper value for the default units system in Mathcad. (This prevents differential equation solutions from improper scaling.)

2) If A.33 happens to be not a length, but say a force, Mathcad will throw an error.

Good points!

aprice1-VisitorAuthor
1-Visitor
November 18, 2014

Thank you both for the insightful answers!