The Weather Resarch and Forecasting (WRF, pronounced "worf") model is an open-source numerical weather prediction (NWP) and atmospheric simulation system designed for both research and operational applications . This system was developed as joint effort between National Center of Atmospheric Research, National Oceanic and Atmospheric Administration (NOAA), Air Force Weather Agency and others. In this post ,and the posts to follow, I'll try to explain the WRF from two different perspectives, the first being Meteorology and the second being Computer Science.
I am here concerned with the Advanced Research WRF (ARW) subset of WRF.
Weather Prediction Basics:
Weather Prediction means to predict the state of the atmosphere in terms of (pressure, temperature, speed of wind, etc). Our atmosphere is controlled by flow and the conditions of the air across the planet and by predicting that flow we can predict the weather conditions in the area of interest. The prediction is done by providing a system with information about the current state of the area of interest. Then the system uses that information as the parameters for its equations (usually difference equations) to produce future conditions for that area.
Advanced Research WRF's dynamics engine integrates Euler's Equations to predict air flow.
Euler's equations are defined as a set of differential equations used in fluid dynamics to govern invscid flow (Wikipedia).Being continuous equations, Euler's equations are discretized. Both temporal and spacial discretization are needed. So the surface of the earth is mapped as a grid ,based on the projection method used to project the spheric shape of earth, where all variable are defined on that grid.
Figure 1 Spacial discretization
(V,U,W are wind velocities, θ is the potential temperature)For temporal discretization, the Euler's equations are integrated using a time-split integration scheme called Runge-Kutta method.
The following loop is used to integrate the equations and this loop is the main loop in the system (i.e. all other components are used to provide this loop with the information needed to compute the current time step)
Begin Time Step
Begin RK3 Loop:
Solve the equations
End RK3 Loop
Compute non-RK3 physics
End Time Step
Note: This is a very simple version of the loop for the complete version reference .
Initial and lateral boundary conditions:
For the system to be able to predict the weather for a certain area it doesn't only need its initial conditions but it also needs a way to know its boundary conditions as of course adjacent areas affect the area of interest. To solve this problem, several methods of generating lateral boundary data are used including periodic generating in which the lateral boundary conditions are repeated along the x-axis or y-axis or both.
 A Description of the Advanced Research WRF Version 3