Rossby waves#

In order to derive the Rossby wave equation, we begin by taking two assumptions:

  • Two dimensional flow

  • Barotropic flow

Even with this assumptions is posible to extract the essence of the physical characteristics of the phenomenon. Given this assumptions we began the derivation from the folowing equation (1) the barotropic vorticity equation.

(1)#\[\frac{D}{Dt}(\zeta + f) = 0\]

As simple as the above equation looks, it needs to be linearise in order to be solve, is important to remember that the vorticity is a function of \(u\) and \(v\). In order to do this we need to decompose both the \(u\) velocity and \(\zeta\) the relative vorticity. This decomposition consist in separating the variable in the basic state and a perturbation. Refer to the following equations (2) and (3).

(2)#\[u= u_0 + u'\]
(3)#\[\zeta = \zeta _0 + \zeta'\]

where both \(u_0\) and \(\zeta _0\) refer to the basic state of the variables. \(u'\) and \(\zeta'\) refer to the perturbations. After this, one can expand (1) through the material derivative. Also one can make the assumption that the basic state is bigger than the perturbation \(u_0 >> u'\) and \(\zeta _0 >> \zeta'\) With this the following expression appears:

(4)#\[\frac{\partial (\zeta _0 + \zeta')}{\partial t} + (u_0 + u')\frac{\partial (\zeta _0 + \zeta')}{\partial x} + (v_0 + v')\frac{\partial (f + \zeta _0 + \zeta')}{\partial y} = 0\]

At this point the vorticity equation looks like a hard expression to solve. In this case it is important to remember that the stream function relates to both the horizontal velocity and the vorticity in the following way (5)(6)(7)

(5)#\[u = \frac{- \partial \psi}{\partial y}\]
(6)#\[v = \frac{ \partial \psi}{\partial x}\]
(7)#\[\zeta= \nabla ^2 \psi\]

All the above expresions are generalized, but they work the same way for both the perturbations and the basic state. It is importand to clarify that the stream function \(\psi\) can be as well decomposed in the basic state \(\psi _0\) and the perturbation \(\psi'\).

Now we need to make the following assumption to continue with the derivation,the basic state is bigger than the perturbations, and do not depend on time, also it has only one component in the x-direction. Mathematically this translates to the following:

(8)#\[u_0 = u_0(y) , v_0=0 , \zeta _0 = - \frac{\partial u_0}{\partial (x)} , \frac{\partial (\zeta _0)}{\partial t}=0 , \frac{\partial (\zeta _0)}{\partial x}\]

Now the basic state absolute vorticity remains as the following expression (9) where \(f\) refers to the coriolis parameter:

(9)#\[\zeta _{a,0}=\zeta _0 + f = f - \frac{\partial u_0}{\partial (x)} \]

With this assumptions been made, the equation (4) transform in the following expression:

(10)#\[\frac{\partial \zeta'}{\partial t} + u_0 \frac{\partial \zeta'}{\partial x} + \frac{\partial \zeta _{a,0}}{\partial y}v'=0\]

The above equation can be solved through different techniques, but in this case we can make more assumptions to get a better simplification of the expression. This asssumptions consist in making all coefficients into constant. Which mathematically derives in the following:

  • \(u_0 = U\) which means that \(\zeta _{a,0} = f\)

  • \(\frac{\partial \zeta _{a,0} }{\partial y} = \frac{\partial f}{\partial y}=\beta\) This means that the change of the coriolis parameter \(f\) with respect \(y\) can be represented as the \(\beta\)-plane approximation.

This assumptions lead us to this expression (11), that at the end is the one we are looking to solve:

(11)#\[(\frac{\partial}{\partial t} + U \frac{\partial}{\partial x})\zeta' + \beta v'=0\]

In the above expression we can notice that there are two unknowns \(\zeta'\) and \(v'\) for this we can use of equations (6) and (7), which lead us to:

(12)#\[(\frac{\partial}{\partial t} + U \frac{\partial}{\partial x}) \nabla^2 \psi' + \beta \frac{\partial}{\partial x} \psi' =0\]

Equation (12) is the final expression that we are looking to solve numerically in order to understand the behavior of the Rossby wave as time advances. Theoretically equation (12) solutions lead to plane waves that have the following structure:

(13)#\[\psi (x,y) = \Re (\Psi e^{i(kx + yl - \omega t)})\]

Equation (13) is just a reminder of the analytical solution for stream function perturbation \(\psi'\).

Numerical Solution#

In this point we are gonna continue from equation (12) since this is the expression that we are looking to solve. In this case we are looking to solve this equation throught spectral methods, which means that the expressions are taken to a spectral space with help of the fourier transform. So we begin by defining \(\psi\) in the spectral space (14)

(14)#\[\psi (x,y,t) = \Sigma \hat{\psi} (t) e^{-2 \pi k \frac{x}{Lx}} e^{-2 \pi l \frac{y}{Ly}}\]

where \(k\) and \(l\) refer to the zonal wavenumber and meriodinal wavenumer respectively and \(\hat{\psi}\) refers to the fourier coefficients obtain after applying the discrete fourier transform.

We continue with a simplification of the equation (12) to get an expression that let us have our prognostic variable \(\zeta\) well define. This lead us to the following:

(15)#\[\frac{\partial \zeta}{\partial t}=- \beta \frac{\partial}{\partial x}{\psi}\]

Equation (15) can be refer as our linear Barotropic vorticity equation, that can be solved numerically. In this case we are looking to go further and add nonlinear terms to the expression. One can stay with the linear model, that captures the principal physical components of the phenomenon, but in our case is important to add the nonlinearity to have a better representation of the model. ~time tendency function, this means that this is the expression that we are gonna be using later on in the time stepping scheme.~

Adding nonlinearity#

The nonlinear terms come from the equation (1), but in this case we do not make assumptions that will later on lead us to a linearize version, in this case, the only assumptions we make, are that the flow is non-divergent, incomprenssible, and has constant density. With this, expression (15) transforms into the following:

(16)#\[\frac{\partial \zeta}{\partial t}=-J(\psi,\zeta) - \beta \frac{\partial}{\partial x}{\psi}\]

\(J(\psi,\zeta)\) refers to the jacobian term, which it is operated as \(J(A,B)= \frac{\partial A}{\partial x} \frac{\partial B}{\partial y} - \frac{\partial B}{\partial x} \frac{\partial A}{\partial y}\) This term represents the nonlinearity of the expression, and physically express the nonlinear relationship of both \(\psi\) and \(\zeta\).

Expression (16) has another term to be added, which is the hyperdifussion term \(\nu(-1)^{(n_v)} \nabla^{(2n_v)} \zeta\) if we assume \(n_v=1\) then the hyperdifussion term becomes in the plain viscocity \(-\nu \nabla ^2 \zeta\). Adding the viscocity leave us with the following equation:

(17)#\[\frac{\partial \zeta}{\partial t}=-J(\psi,\zeta) - \beta \frac{\partial}{\partial x}{\psi} + \nu \nabla ^2 \zeta\]

Numerical manipulation#

To manipulate expression (17) is important to make use of the expression (7) and (14). With this one can divide equation (17) in tree expressions, the nonlinearity, the \(\beta \)-effect and the viscocity.

Is important to point out, that in order to initialize the model we need to assign values to \(\psi\), this can be done with the following expression (18). we are able to obtain expression (18) given that \(\zeta\) is not an unknown, given that we need to set up with initial conditions in order to generate a solution.

(18)#\[\psi = \frac{\zeta}{(\frac{-2\pi k}{L_x})^2+(\frac{-2\pi l}{l_y})^2}\]

At last we use a third order Adam-Bashford scheme for the time-stepping. As you can see in expression (19) in order to get the future state of the prognostic variable, you need the current state, which can be obtain by applying expression (15). At this point one can just itirate over expression (19) and use the final output as the current state for the next step.

(19)#\[\zeta _{t+3}= \zeta _{t+2}+dt( \frac{23}{12} \zeta _{t+2}- \frac{16}{12} \zeta _{t+1}+ \frac{5}{12} \zeta _{t_0})\]