public static ColorCieLuv convertXuzToCieLuv(final double x, final double y, final double z) {
        // problems here with div by zero

        final double varU = 4 * x / (x + 15 * y + 3 * z);
        final double varV = 9 * y / (x + 15 * y + 3 * z);

        // Debug.debug("var_U", var_U);
        // Debug.debug("var_V", var_V);

        double varY = y / 100.0;
        // Debug.debug("var_Y", var_Y);

        varY = pivotXyz(varY);

        // Debug.debug("var_Y", var_Y);

        final double refU = 4 * REF_X / (REF_X + 15 * REF_Y + 3 * REF_Z);
        final double refV = 9 * REF_Y / (REF_X + 15 * REF_Y + 3 * REF_Z);

        // Debug.debug("ref_U", ref_U);
        // Debug.debug("ref_V", ref_V);

        final double l = 116 * varY - 16;
        final double u = 13 * l * (varU - refU);
        final double v = 13 * l * (varV - refV);

        return new ColorCieLuv(l, u, v);
    }
DIN99o.

@param l99o lightness of color.
@param a99o position between red and green.
@param b99o position between yellow and blue.
@return DIN99o colors converted to CIELab color space.
@see <a href=
     "https://de.wikipedia.org/w/index.php?title=Diskussion:DIN99-Farbraum">https://de.wikipedia.org/w/index.php?title=Diskussion:DIN99-Farbraum</a>
src/main/java/org/apache/commons/imaging/color/ColorConversions.java