The black point correction for xyY to sRGB was incorrect in my original post. It should be done the same ways as for xyY to aRGB which was correct. Hope nobody was inconvenienced.
I would be curious if others have found a more elegant way to index through an Array to perform an operation on a set of vectors. I had to use the single quote to get the operation performed first and the index increment second.
Corrections to the original version of theis document;
Make the scaling for a nonzero black point the same for all RGB color spaces.
Clip negative RGB values to zero.
Remove the redundant Array container from matrix multiplications.
Use map in place of the $ to apply a function to each element of an Array.