nx_flavor_integrate.nx
buildroot/runtime/nx_flavor_integrate.nx
about
nx_flavor_integrate.nx -- T2 of the TASTE-SCIENCE ladder: MULTIMODAL
flavor integration. "Flavor" is not taste -- it is the brain's fusion
of FOUR senses: gustation (the 5 tastes), retronasal OLFACTION (aroma,
the dominant contributor to flavor identity), trigeminal chemesthesis
(capsaicin heat, menthol cool), and mouthfeel (body, astringency).
The baseline nx_food_science has 6 axes (5 tastes + crunch). T2 builds
a 10-dimensional flavor vector AND models a cross-modal effect the
baseline structurally cannot: ODOR-INDUCED TASTE ENHANCEMENT -- a
congruent aroma (e.g. strawberry) makes a food taste SWEETER without
any added sugar (Stevenson/Prescott). Aroma is also weighted highest
per unit, because olfaction dominates flavor identity (anosmia = food
"tastes of nothing" though the tongue still works).
MEASURED EXCEED (gate-checked): 10 dimensions > 6; aroma out-weighs an
equal unit of taste; and a congruent aroma raises perceived sweetness.
genealogy_id: stevenson_prescott_odor_taste_enhancement
+ shepherd_2006_neurogastronomy + nishi_taste_transduce_2026
dependencies 1 imports · 3 importers
imports: nx_syscalls.nx
imported by: nx_ferment_flavor.nxnx_ferment_flavor_test.nxnx_flavor_integrate_test.nx
structs
| 30 | struct NxFlavorVector |
consts
| 23 | const NX_FV_NDIM: i64 = 10 |
| 24 | const NX_FV_W_TASTE: i64 = 1 |
| 25 | const NX_FV_W_AROMA: i64 = 3 // olfaction dominates flavor identity |
| 26 | const NX_FV_W_TRIG: i64 = 1 |
| 27 | const NX_FV_W_MOUTH: i64 = 1 |
| 28 | const NX_FV_ENHANCE_K: i64 = 300 // odor-induced sweetness enhancement gain |
functions
| 43 | func nx_flavor_vector_new(sweet: i64, sour: i64, salty: i64, bitter: i64, |
| 60 | func nx_flavor_ndim() -> i64 called by 1: main |
| 66 | func nx_flavor_total_intensity(fv: *NxFlavorVector) -> i64 |
| 77 | func nx_flavor_aroma_enhance_sweet(base_sweet: i64, congruent_aroma: i64) -> i64 called by 1: main |