Weather analysis and forecasting