--- a/RegressionTests__QDoubleTests.st Fri Nov 29 16:30:54 2019 +0100
+++ b/RegressionTests__QDoubleTests.st Fri Nov 29 17:17:52 2019 +0100
@@ -5,10 +5,10 @@
"{ NameSpace: RegressionTests }"
TestCase subclass:#QDoubleTests
- instanceVariableNames:''
- classVariableNames:''
- poolDictionaries:''
- category:'tests-Regression-Numbers'
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'tests-Regression-Numbers'
!
!QDoubleTests class methodsFor:'documentation'!
@@ -431,6 +431,7 @@
f1 := 2.0 exp.
q1 := 2.0 asQDouble exp.
+ self assert:(q1 d0 - f1) abs < 0.00000001.
"/ the first 113 digits are (wolfram):
"/ 7.3890560989306502272304274605750078131803155705518473240871278225225737960790577633843124850791217947737531612654...
@@ -441,10 +442,9 @@
"/ 2.0QD exp printfPrintString:'%.60f'
"/ 7.389056098930650227230427460575007813180315570551847324087128
- self assert:(q1 d0 = f1).
-
f1 := 3.0 exp.
q1 := 3.0 asQDouble exp.
+ self assert:(q1 d0 - f1) abs < 0.00000001.
"/ the first 113 digits are (wolfram):
"/ 20.0855369231876677409285296545817178969879078385541501443789342296988458780919737312044971602530177021536076158519...
@@ -455,11 +455,10 @@
"/ 3.0QD exp printfPrintString:'%.60f'
"/ 20.085536923187667740928529654581717896987907838554150144378934
- self assert:(q1 d0 = f1).
-
f1 := 0.5 exp.
q1 := 0.5 asQDouble exp.
+ self assert:(q1 d0 - f1) abs < 0.00000001.
"/ the first digits are (wolfram):
"/ 1.648721270700128146848650787814163571653776100710148011575...
@@ -470,11 +469,29 @@
"/ 0.5QD exp printfPrintString:'%.60f'
"/ 1.648721270700128146848650787814163571653776100710148011575079
- self assert:(q1 d0 = f1).
+ f1 := -1.0 exp.
+ q1 := -1.0 asQDouble exp.
+ self assert:(q1 d0 - f1) abs < 0.00000001.
+
+"/ 1.0 exp -> 2.71828182845905
+"/ 1.0 asQDouble exp 2.718281828459045235360287471353
+"/ 1.0 exp asQDouble 2.718281828459045090795598298428
+"/
+"/ 3.0 ln -> 1.09861228866811
+"/ 3.0 asQDouble ln 8.148220079427205481478375773976
+"/ 3.0 ln asQDouble 1.098612288668109782108217586938
+"/
+"/ 1.0 exp ln -> 1.0
+"/ 1.0 exp ln asQDouble -> 1.0
+"/ 1.0 asQDouble exp ln 6.316187310732210430808896199868
+"/ 1.0 exp asQDouble ln 6.316187310732210132396290848094
+"/
+"/ f1 := 100 exp asQDouble 2.68811714181614E+.
f1 := 100 exp.
q1 := 100 asQDouble exp.
+ self assert:(q1 d0 - f1) abs < 0.00000001.
"/ the first digits are (wolfram):
"/ 2.688117141816135448412625551580013587361111877374192241519160861528028703490956491415887109721984571081167087... × 10^43
@@ -485,8 +502,6 @@
"/ 100QD exp printfPrintString:'%2.60g'
"/ 2.688117141816135410947767882599577473393902466198400202846738e43'
- self assert:(q1 d0 = f1).
-
"
self run:#test_06_exp
self new test_06_exp