Unified · Split
| @@ -0,0 +1,21 @@ | |||
| 1 | #+TITLE: Normalized Range | ||
| 2 | In =sndkit=, a =normalized range= is any real number within | ||
| 3 | the inclusive range 0 and 1. | ||
| 4 | |||
| 5 | Normalized ranges are ideal ways to abstract away units when | ||
| 6 | you don't want to think about them. | ||
| 7 | |||
| 8 | Usually, values in a normalized range are destined to be | ||
| 9 | @!(ref "scale" "rescaled later")!@, such as @!(ref "oscf" | ||
| 10 | "table lookup oscillators")!@. | ||
| 11 | |||
| 12 | In IEEE floating point, there are sometimes some numerical | ||
| 13 | advantages to keeping things in a smaller range, as values | ||
| 14 | in this range have more equidistance spacing compared to | ||
| 15 | using relatively larger values. This spacing is referred | ||
| 16 | to as the magnitude of a | ||
| 17 | [[https://en.wikipedia.org/wiki/Unit_in_the_last_place][unit in last place, or "ulp"]]. | ||
| 18 | More information about the nuances of floating point | ||
| 19 | precision can be found in =Physically Based Rendering= by | ||
| 20 | Pharr, Jakob, and Humphreys in Chapter 3.9 (Managing | ||
| 21 | Rounding Error). | ||
| @@ -43,6 +43,7 @@ · 42 unmodified lines | |||
| 43 | (ww-add-link "expon" "dsp/expon.org") | 43 | (ww-add-link "expon" "dsp/expon.org") |
| 44 | (ww-add-link "chorus" "dsp/chorus.org") | 44 | (ww-add-link "chorus" "dsp/chorus.org") |
| 45 | (ww-add-link "bitosc" "dsp/bitosc.org") | 45 | (ww-add-link "bitosc" "dsp/bitosc.org") |
| 46 | (ww-add-link "normalized_range" "doc/normalized_range.org") | ||
| 46 | 47 | ||
| 47 | # sync and close | 48 | # sync and close |
| 48 | 49 | ||