cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Difference between solve block output between Mathcad 15 and Prime 7 after conversion

FrankM22
6-Contributor

Difference between solve block output between Mathcad 15 and Prime 7 after conversion

Hi, I am very new to mathcad and was wondering if anyone would be able to figure out why after using Prime 7's in-built xmcd converter, the output of the solve block in the attached files is very different - but only for the first row of the output rather than the whole thing (highlighted below)

06 aug 21.png06 aug 21 (2).png

Thanks in advance.

3 REPLIES 3
LucMeekes
23-Emerald II
(To:FrankM22)

At first glance: You shouldn't worry. Compared to the rest of the data either value (be it 10^-10, or 10^-104) is virtually zero. You should consider them to be zero.

 

Success!

Luc

StuartBruff
23-Emerald II
(To:FrankM22)

I wouldn't have called them "very different" in the context of the magnitude of the rest of the values.

 

The (probable) reason you are seeing this difference is that Mathcad Prime and Mathcad 15 use different floating-point libraries and their parsers likely give a different order of calculation (whilst maintaining overall correctness of calculation). 

 

Floating-point arithmetic in Mathcad uses 80-bits internally, with 53 (IIRC) bits for the mantissa, which is sufficient to store 15 to 17 decimal digits.   Operations on floating-point numbers will generally produce a result that has more than 53 bits, which consequently get dropped.   This is quite normal for "reasonable" values and the user will usually never notice, given Mathcad's default number display.   If you go to the Math Formatting tab and select 15 digits (the second item in the "Results" area of the tab), then you are likely to see some other differences in the trailing digits.  

 

The values you are seeing are basically round-off errors caused by the inexact nature of floating-point arithmetic and are close enough to zero to be regarded as zero.  This will happen in all maths applications that use standard floating-point arithmetic.   

 

If you want, you could explicitly make each value less than, say, 10^-9 equal to zero, or round everything to 9 digits accuracy.

 

Stuart 

 

Stuart

1000000.png

Announcements