Changeset 39390 in project
- Timestamp:
- 11/26/20 00:30:25 (5 months ago)
- Location:
- release/5/fp-utils/trunk
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
release/5/fp-utils/trunk/fp-inlines.scm
r39387 r39390 119 119 (define (fpprecision-factor p #!optional (base 10.0)) (fpexpt base (exact->inexact p))) 120 120 121 (define (fpprecision-epsilon p #!optional (base 10.0)) 122 (fp/ 1.0 (fpprecision-factor (fpadd1 (exact->inexact p)) base)) ) 121 (define (fpprecision-epsilon p #!optional (base 10.0)) (fp/ 1.0 (fpprecision-factor p base))) 123 122 124 123 ;; -
release/5/fp-utils/trunk/fp-utils.egg
r39387 r39390 3 3 4 4 ((synopsis "fp utilities") 5 (version "4.0. 3")5 (version "4.0.4") 6 6 (category math) 7 7 (author "[[kon lovett]]") -
release/5/fp-utils/trunk/tests/fp-utils-test.scm
r38875 r39390 4 4 (import test) 5 5 6 (test-begin "F pUtils")6 (test-begin "FP Utils") 7 7 8 8 ;;; … … 15 15 (import (chicken flonum)) 16 16 17 (test-group "F pInlines"17 (test-group "FP Inlines" 18 18 19 19 (test-assert (fpzero? 0.0)) … … 50 50 ;; 51 51 52 (define-constant 5eps (fp/ 9.0 1e06)) 52 (test-group "FP precision" 53 (test 10.0 (fpprecision-factor 1)) 54 (test 10000000000.0 (fpprecision-factor 10)) 55 (test 15.8489319246111 (fpprecision-factor 1.2)) 56 (test 0.1 (fpprecision-epsilon 1)) 57 (test 0.0000000001 (fpprecision-epsilon 10)) 58 (test 0.0630957344480193 (fpprecision-epsilon 1.2)) 59 ) 53 60 54 (test-group "Fp Approximate =" 61 ;; 62 63 (test-group "FP Approximate =" 55 64 56 65 ;sweet, sweet repeating expansion … … 60 69 61 70 ;own epsilon 62 (test-assert (fp~= 0.123456 0.123457 5eps)) 63 (test-assert (fp~<= 0.123456 0.123457 5eps)) 64 (test-assert (fp~>= 0.123456 0.123457 5eps)) 65 (test-assert (fp~<= 0.123456 0.12346 5eps)) 66 (test-assert (fp~>= 0.123456 0.12344 5eps)) 71 (let ((eps5 (fpprecision-epsilon 5))) 72 (test-assert (fp~= 0.123456 0.123457 eps5)) 73 (test-assert (fp~<= 0.123456 0.123457 eps5)) 74 (test-assert (fp~>= 0.123456 0.123457 eps5)) 75 (test-assert (fp~<= 0.123456 0.12346 eps5)) 76 (test-assert (fp~>= 0.123456 0.12344 eps5)) ) 67 77 ) 68 78 … … 71 81 (define-constant 4eps (fp/ 9.0 1e05)) 72 82 73 (test-group "F pUtils"83 (test-group "FP Utils" 74 84 75 85 (test 1.0 (fpmodulo 5.0 2.0)) … … 102 112 ;;; 103 113 104 (test-end "F pUtils")114 (test-end "FP Utils") 105 115 106 116 (test-exit)
Note: See TracChangeset
for help on using the changeset viewer.