Sensitivity analysis of forecast errors and the construction of optimal perturbations using singular vectors