bottleneck is the basis mapping and calculation of the normalization
factor