File mathtables.cc
FileList > ase > mathtables.cc
#include "mathutils.hh"
#include "api.hh"
#include "internal.hh"
Namespaces
Type | Name |
---|---|
namespace | Ase The Anklang C++ API namespace. |
Macros
Type | Name |
---|---|
define | DIATONIC_SCALE (scale) |
define | EQTEMP_12_TET (scale) |
define | EQTEMP_5_TET (scale) |
define | EQTEMP_7_TET (scale) |
define | INDIAN_SCALE (scale) |
define | KBERGER3_TEMPERAMENT (scale) |
define | PENTATONIC_5_LIMIT (scale) |
define | PENTATONIC_BLUES (scale) |
define | PENTATONIC_GOGO (scale) |
define | PYTHAGOREAN_TUNING (scale) |
define | QCOMMA_MEANTONE (scale) |
define | SCALED_INTERVAL (scale, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12) |
define | SILBERMANN_SORGE (scale) |
define | SQRT2_2 1.4142135623730950488016887242097 /* 2^0.5 */ |
define | SQRT3_2 1.2599210498948731647672106072782 /* 2^(1/3) */ |
define | SQRT3_4 1.5874010519681994747517056392723 /* 4^(1/3) */ |
define | SQRT4_2 1.1892071150027210667174999705605 /* 2^0.25 */ |
define | SQRT4_8 1.6817928305074290860622509524664 /* 8^0.25 */ |
define | WMEISTER3_TEMPERAMENT (scale) |
define | WMEISTER4_TEMPERAMENT (scale) |
define | WMEISTER5_TEMPERAMENT (scale) |
define | WMEISTER6_TEMPERAMENT (scale) |
define | YOUNG_TEMPERAMENT (scale) |
Macro Definition Documentation
define DIATONIC_SCALE
#define DIATONIC_SCALE (
scale
) SCALED_INTERVAL (scale, 1.0, \
16 / 15.0, 9 / 8.0, 6 / 5.0, 5 / 4.0, 4 / 3.0, 45 / 32.0, \
3 / 2.0, 8 / 5.0, 5 / 3.0, 16 / 9.0, 15 / 8.0)
define EQTEMP_12_TET
#define EQTEMP_12_TET (
scale
) SCALED_INTERVAL (scale, 1.0, \
1.0594630943592952646, 1.1224620483093729814, 1.1892071150027210667, \
1.2599210498948731648, 1.3348398541700343648, 1.4142135623730950488, \
1.4983070768766814988, 1.5874010519681994748, 1.6817928305074290861, \
1.7817974362806786095, 1.8877486253633869933) /* 2^(1/12*[0..11]) */
define EQTEMP_5_TET
#define EQTEMP_5_TET (
scale
) SCALED_INTERVAL (scale, \
1.0, /* 2^(0*240/1200) */ \
1.0717734625362931642130063250233, /* 2^(120.0/1200) (NA) */ \
1.1486983549970350067986269467779, /* 2^(1*240/1200) */ \
1.2311444133449162844993930691677, /* 2^(360.0/1200) (NA) */ \
1.3195079107728942593740019712296, /* 2^(2*240/1200) */ \
1.3819128799677760808194941234190, /* 2^(560.0/1200) (NA) */ \
1.4472692374403780699545336842135, /* 2^(640.0/1200) (NA) */ \
1.5157165665103980823472598013064, /* 2^(3*240/1200) */ \
1.6245047927124710452194187655506, /* 2^(840.0/1200) (NA) */ \
1.7411011265922482782725400349595, /* 2^(4*240/1200) */ \
1.8234449771164336156322101570883, /* 2^(1040./1200) (NA) */ \
1.9096832078208331020817981494413) /* 2^(1120./1200) (NA) */
define EQTEMP_7_TET
#define EQTEMP_7_TET (
scale
) SCALED_INTERVAL (scale, \
1.0, /* 2^(0*171/1200) */ \
1.0506265879517071439385515999019, /* 2^(85.5/1200) (NA) */ \
1.1038162273110462268251028980804, /* 2^(1*171/1200) */ \
1.1596986766255304738157085667472, /* 2^(256.5/1200) (NA) */ \
1.2184102636751912741300922949139, /* 2^(2*171/1200) */ \
1.3449010205670067009547481593893, /* 2^(3*171/1200) */ \
1.4129887703710829641940858921341, /* 2^(598.5/1200) (NA) */ \
1.4845235706290491252321849551821, /* 2^(4*171/1200) */ \
1.5596799337438830130108590901031, /* 2^(769.5/1200) (NA) */ \
1.6386412070860804772885357729621, /* 2^(5*171/1200) */ \
1.7216000202779154901968996860588, /* 2^(940.5/1200) (NA) */ \
1.8087587551221761812432481457391) /* 2^(6*171/1200) */
define INDIAN_SCALE
#define INDIAN_SCALE (
scale
) SCALED_INTERVAL (scale, 1.0, \
16 / 15.0, 9 / 8.0, 6 / 5.0, 5 / 4.0, 4 / 3.0, 45 / 32.0, \
3 / 2.0, 8 / 5.0, 5 / 3.0, 27 / 16.0, 15 / 8.0)
define KBERGER3_TEMPERAMENT
#define KBERGER3_TEMPERAMENT (
scale
) SCALED_INTERVAL (scale, 1.0, /* 2^(0/1200) */ \
25 / 24.0, 9 / 8.0, 6 / 5.0, 5 / 4.0, \
4 / 3.0, 45 / 32.0, 3 / 2.0, 25 / 16.0, \
5 / 3.0, 16 / 9.0, 15 / 8.0)
define PENTATONIC_5_LIMIT
#define PENTATONIC_5_LIMIT (
scale
) SCALED_INTERVAL (scale, 1.0, \
256 / 243.0, 9 / 8.0, 32 / 27.0, 5 / 4.0, 4 / 3.0, 729 / 512.0, \
3 / 2.0, 128 / 81.0, 5 / 3.0, 16 / 9.0, 243 / 128.0)
define PENTATONIC_BLUES
#define PENTATONIC_BLUES (
scale
) SCALED_INTERVAL (scale, 1.0, \
256 / 243.0, 9 / 8.0, 7 / 6.0, 21 / 16.0, 4 / 3.0, 7 / 5.0, \
3 / 2.0, 128 / 81.0, 7 / 4.0, 16 / 9.0, 243 / 128.0)
define PENTATONIC_GOGO
#define PENTATONIC_GOGO (
scale
) SCALED_INTERVAL (scale, 1.0, \
256 / 243.0, 9 / 8.0, 32 / 27.0, 5 / 4.0, 4 / 3.0, 729 / 512.0, \
3 / 2.0, 128 / 81.0, 7 / 4.0, 16 / 9.0, 243 / 128.0)
define PYTHAGOREAN_TUNING
#define PYTHAGOREAN_TUNING (
scale
) SCALED_INTERVAL (scale, 1.0, \
256 / 243.0, 9 / 8.0, 32 / 27.0, 81 / 64.0, 4 / 3.0, 729 / 512.0, \
3 / 2.0, 128 / 81.0, 27 / 16.0, 16 / 9.0, 243 / 128.0)
define QCOMMA_MEANTONE
#define QCOMMA_MEANTONE (
scale
) SCALED_INTERVAL (scale, 1.0, \
1.0449067265256594125050516769666, /* (2187/128)/(81/80)^1.75/16 */ \
1.1180339887498948482045868343656, /* (9/4)/(81/80)^.5/2 */ \
1.1962790249769764335295191953127, /* (8/27)*(81/80)^.75*4 */ \
5 / 4.0, /* (81/16)/(81/80)/4 */ \
1.3374806099528440480064661465173, /* (2/3)*(81/80)^.25*2 */ \
1.3975424859373685602557335429570, /* (729/64)/(81/80)^1.5/8 */ \
1.4953487812212205419118989941409, /* (3/2)/(81/80)^.25 */ \
25 / 16.0, \
1.6718507624410550600080826831466, /* (27/8)/(81/80)^.75/2 */ \
1.7888543819998317571273389349850, /* (4/9)*(81/80)^.5*4 */ \
1.8691859765265256773898737426761) /* (243/32)/(81/80)^1.25/4 */
define SCALED_INTERVAL
#define SCALED_INTERVAL (
scale,
F1,
F2,
F3,
F4,
F5,
F6,
F7,
F8,
F9,
F10,
F11,
F12
) scale * (F1), scale * (F2), scale * (F3), scale * (F4), scale * (F5), scale * (F6), \
scale * (F7), scale * (F8), scale * (F9), scale * (F10), scale * (F11), scale * (F12)
define SILBERMANN_SORGE
#define SILBERMANN_SORGE (
scale
) SCALED_INTERVAL (scale, 1.0, /* 2^(0/1200) */ \
1.0509300646305402574490134498012, /* 2^(86/1200) */ \
1.1198716040467591250082361837530, /* 2^(196/1200) */ \
1.1933357430317218729952278581798, /* 2^(306/1200) */ \
1.2541124095502612486514063523921, /* 2^(392/1200) */ \
1.3363828127152655319782668003685, /* 2^(502/1200) */ \
1.4044448757379971820788342284695, /* 2^(588/1200) */ \
1.4965771640959640975810263196965, /* 2^(698/1200) */ \
1.5727979357879622015539138854402, /* 2^(784/1200) */ \
1.6759742693358971625849112463630, /* 2^(894/1200) */ \
1.7859190221207644704151890003616, /* 2^(1004/1200) */ \
1.8768759933422862606134778581222) /* 2^(1090/1200) */
define SQRT2_2
#define SQRT2_2 1.4142135623730950488016887242097 /* 2^0.5 */
define SQRT3_2
#define SQRT3_2 1.2599210498948731647672106072782 /* 2^(1/3) */
define SQRT3_4
#define SQRT3_4 1.5874010519681994747517056392723 /* 4^(1/3) */
define SQRT4_2
#define SQRT4_2 1.1892071150027210667174999705605 /* 2^0.25 */
define SQRT4_8
#define SQRT4_8 1.6817928305074290860622509524664 /* 8^0.25 */
define WMEISTER3_TEMPERAMENT
#define WMEISTER3_TEMPERAMENT (
scale
) SCALED_INTERVAL (scale, 1.0, /* 2^(0/1200) */ \
256 / 243.0, 64 * SQRT2_2 / 81.0, 32 / 27.0, \
256 * SQRT4_2 / 243.0, 4 / 3.0, 1024 / 729.0, \
8 * SQRT4_8 / 9.0, 128 / 81.0, 1024 * SQRT4_2 / 729.0, \
16 / 9.0, 128 * SQRT4_2 / 81.0)
define WMEISTER4_TEMPERAMENT
#define WMEISTER4_TEMPERAMENT (
scale
) SCALED_INTERVAL (scale, 1.0, /* 2^(0/1200) */ \
16384 * SQRT3_2 / 19683.0, 8 * SQRT3_2 / 9.0, 32 / 27.0, \
64 * SQRT3_4 / 81.0, 4 / 3.0, 1024 / 729.0, \
32 * SQRT3_2 / 27.0, 8192 * SQRT3_2 / 6561.0, \
256 * SQRT3_4 / 243.0, 9 / 8.0 * SQRT3_4, 4096 / 2187.0)
define WMEISTER5_TEMPERAMENT
#define WMEISTER5_TEMPERAMENT (
scale
) SCALED_INTERVAL (scale, 1.0, /* 2^(0/1200) */ \
8 * SQRT4_2 / 9.0, 9 / 8.0, SQRT4_2, 8 * SQRT2_2 / 9.0, \
9 / 8.0 * SQRT4_2, SQRT2_2, 3 / 2.0, 128 / 81.0, \
SQRT4_8, 3 / SQRT4_8, 4 * SQRT2_2 / 3.0)
define WMEISTER6_TEMPERAMENT
#define WMEISTER6_TEMPERAMENT (
scale
) SCALED_INTERVAL (scale, 1.0, /* 2^(0/1200) */ \
98 / 93.0, 28 / 25.0, 196 / 165.0, 49 / 39.0, 4 / 3.0, \
196 / 139.0, 196 / 131.0, 49 / 31.0, 196 / 117.0, \
98 / 55.0, 49 / 26.0)
define YOUNG_TEMPERAMENT
#define YOUNG_TEMPERAMENT (
scale
) SCALED_INTERVAL (scale, 1.0, /* 2^(0/1200) */ \
1.0631412837780103584827404056079, /* 2^(106/1200) */ \
1.1211660780285088308680165651114, /* 2^(198/1200) */ \
1.1933357430317218729952278581798, /* 2^(306/1200) */ \
1.2599210498948731647672106072782, /* 2^(400/1200) */ \
1.3363828127152655319782668003685, /* 2^(502/1200) */ \
1.4174848672222598142134666752417, /* 2^(604/1200) */ \
1.4965771640959640975810263196965, /* 2^(698/1200) */ \
1.5929121092043532274138841376768, /* 2^(806/1200) */ \
1.6798510690641884687069808937168, /* 2^(898/1200) */ \
1.7859190221207644704151890003616, /* 2^(1004/1200) */ \
1.8899306982642323704825496345032) /* 2^(1102/1200) */
The documentation for this class was generated from the following file /__w/anklang/anklang/ase/mathtables.cc