Making a weather forecast that turns out to be accurate is very rewarding for a meteorologist, but at the same time, a forecast that ends up way off the mark can be very frustrating. While weather forecasting has improved by leaps and bounds in the past several decades, there are still limitations to how accurately we can predict the weather.
Creating a forecast boils down to figuring out the movement of air currents in the atmosphere. Sounds simple enough, right? But consider that we need to know not only how the air moves horizontally, but vertically as well, since the atmosphere is three-dimensional. To make a precipitation forecast, we basically need to know 1) where the air is rising, 2) if there is enough moisture in the air, and 3) how these two factors will change over time from the surface through about 7 miles up in the atmosphere. If we are going to make a prediction for the next three or four days, we need to know what these ingredients and air currents are doing over the entire North American continent. For a seven day forecast, we need to know what they are doing over the entire northern hemisphere!
To help us evaluate these ingredients, we use computer forecast models. A model is a computer algorithm that predicts the weather in three dimensions by using mathematical laws that govern how the atmosphere works. The computer takes input of the current observed conditions from satellite, radar, surface and upper air observations, then uses equations to project how these conditions will change in the future.
There are a number of factors that limit what the computer models can do, and how accurate they can be. First, the equations that govern how the atmosphere works make assumptions and estimations, which introduce errors. We have to make these assumptions because we don't completely understand how the atmosphere works. The farther out in time the computer model predicts, the less accurate it will be, because the errors continue to compound on one another as the forecast gets farther away from the initial observed conditions. This is why two computer models can predict two very different weather patterns - different models use different sets of equations, and thus their errors are different. Looking at different models is an important part of making a forecast. When models are in agreement, we have higher confidence that what they're telling us is accurate, but if they are different, we have to decide which one is closer to the truth.
Another limitation is computing power. While there have been tremendous improvements to this in the past several years, it still isn't perfect. Ideally, we want to have a high resolution model (one with a lot of detail), but also one that covers a large area, and one that can predict as far out in time as possible. If we could have all of these factors like we wanted them, it would take a computer days to finishing crunching the numbers to give us a forecast! So we have to compromise by using models that cover a smaller area, or are lower resolution, or don't predict as far out in time. These compromises can reduce a model's accuracy. We are also limited by how much data can go into the model from observations, as more input will also slow the model down. We can't sample the atmosphere over every single cubic inch of the earth and miles up into the atmosphere. So the data going into the models are also limited. Increasing the amount of data and the computing power can increase accuracy, but it also costs a lot of money (computer models in the U.S. are run and funded by the government).
So how do meteorologists overcome these problems with the models? We use our experience. Humans are better are recognizing a pattern and recalling similar conditions that occurred in the past with the same pattern than a computer. We can add value to a computer forecast by using our experience to determine when the computer model might be leading us down the wrong path. From experience, we learn the patterns in which one model might be able to perform better than another. It takes training and experience to properly interpret what the computer models are telling us. We learn how the models work, what their limitations are, and when they can or cannot be trusted to make a good prediction.
Of course, humans are prone to errors as well, so we'll never be able to be 100% accurate 100% of the time. And since all meteorologists have different experiences, meteorologists will often make different forecasts. We make our best estimate based on our training, experience, and available data. Most of the time, we can get pretty close, and like horseshoes and hand grenades, close can often be good enough in meteorology.