This chapter extends the scaling technique to well-known partial differential equation (PDE) models for waves, diffusion, and transport. We start out with the simplest 1D models of the PDEs and then progress with additional terms, different types of boundary and initial conditions, and generalizations to 2D and 3D.
A standard, linear, one-dimensional wave equation problem in a homogeneous medium may be written as $$ \begin{equation} \frac{\partial^2 u}{\partial t^2} = c^2 {\partial^2 u\over\partial x^2}, \quad x\in (0,L),\ t\in (0,T], \tag{3.1} \end{equation} $$ where \( c \) is the constant wave velocity of the medium. With a briefer notation, where subscripts indicate derivatives, the PDE (3.1) can be written \( u_{tt}=c^2u_{xx} \). This subscript notation will occasionally be used later.
For any number of dimensions in heterogeneous media we have the generalization $$ \begin{equation} \frac{\partial^2 u}{\partial t^2} = \nabla\cdot\left(c^2 \nabla u\right) + f, \quad x,y,z\in \Omega,\ t\in (0,T], \tag{3.2} \end{equation} $$ where \( f \) represents a forcing.
Let us first start with (3.1), homogeneous Dirichlet conditions in space, and no initial velocity \( u_t \): $$ \begin{align} u(x,0) &= I(x), \quad &x\in [0,L], \tag{3.3}\\ {\partial\over\partial t}u(x,0) &= 0, \quad & x\in [0,L], \tag{3.4}\\ u(0,t) & = 0, \quad & t\in (0,T], \tag{3.5}\\ u(L,t) & = 0, \quad & t\in (0,T]. \tag{3.6} \end{align} $$ The independent variables are \( x \) and \( t \), while \( u \) is the dependent variable. The rest of the parameters, \( c \), \( L \), \( T \), and \( I(x) \), are given data.
We start with introducing dimensionless versions of the independent and dependent variables: $$ \bar x = \frac{x}{x_c},\quad \bar t=\frac{t}{t_c},\quad\bar u=\frac{u}{u_c} \tp $$ Inserting the \( x=x_c\bar x \), etc., in (3.1) and (3.3)-(3.6) gives $$ \begin{align*} \frac{\partial^2 \bar u}{\partial \bar t^2} &= \frac{t_c^2c^2}{x_c^2}{\partial^2 \bar u\over\partial x^2}, \quad & \bar x\in (0,L/x_c),\ \bar t\in (0,T/t_c], \\ \bar u(\bar x,0) &= \frac{I(x_c\bar x)}{u_c}, \quad &\bar x\in [0,L/x_c], \\ \frac{\partial}{\partial \bar t}\bar u(\bar x,0) &= 0, \quad & \bar x\in [0,L/x_c], \\ \bar u(0,\bar t) & = 0, \quad & \bar t\in (0,T/t_c], \\ \bar u(L/x_c,\bar t) & = 0, \quad &\bar t\in (0,T/t_c]. \end{align*} $$
The key question is how to define the scales. A natural choice is \( x_c=L \) since this makes \( \bar x\in [0,1] \). For the spatial scale and the problem governed by (3.1) we have some analytical insight that can help. The solution behaves like $$ \begin{equation} u(x,t) = f_R(x-ct) + f_R(x+ct), \tag{3.7} \end{equation} $$ i.e., a right- and left-going wave with velocity \( c \). The initial conditions constrain the choices of \( f_R \) and \( f_L \) to \( f_L + f_R=I \) and \( -cf_L' + cf_R' = 0 \). The solution is \( f_R = f_L = \frac{1}{2} \), and consequently $$ u(x,t) = \frac{1}{2}I(x-ct) + \frac{1}{2}I(x+ct), $$ which tells that the initial condition splits in two, half of it moves to the left and half to the right. This means in particular that we can choose \( u_c=\max_x |I(x)| \) and get \( |\bar u|\leq 1 \), which is a goal. It must be added that boundary conditions may result in reflected waves, and the solution is then more complicated than indicated in the formula above.
Regarding the time scale, we may look at the two terms in the scaled PDE and argue that if \( |u| \) and its derivatives are to be of order unity, then the size of the second-order derivatives should be the same, and \( t_c \) can be chosen to make the coefficient \( t_c^2 c^2 /x_c^2 \) unity, i.e., \( t_c=L/c \). Another reasoning may set \( t_c \) as the time it takes the wave to travel through the domain \( [0,L] \). Since the wave has constant speed \( c \), \( t_c = L/c \).
With the described choices of scales, we end up with the dimensionless initial-boundary value problem $$ \begin{alignat}{2} \frac{\partial^2 \bar u}{\partial \bar t^2} &= {\partial^2 \bar u\over\partial x^2}, \quad & \bar x\in (0,1),\ \bar t\in (0,\bar T], \tag{3.8}\\ \bar u(\bar x,0) &= \frac{I(\bar x L)}{\max_{x\in(0,L)} |I(x)|}, \quad &\bar x\in [0,1], \tag{3.9}\\ {\partial\over\partial \bar t}\bar u(\bar x,0) &= 0, \quad & \bar x\in [0,1], \tag{3.10}\\ \bar u(0,\bar t) & = 0, \quad &\bar t\in (0,\bar T], \tag{3.11}\\ \bar u(1,\bar t) & = 0, \quad &\bar t\in (0,\bar T]. \tag{3.12} \end{alignat} $$ Here, \( \bar T = Tc/L \).
The striking feature of (3.8)-(3.12) is that there are no physical parameters involved! Everything we need to specify is the shape of the initial condition and then scale it such that it is less than or equal to 1.
The physical solution with dimension is recovered from \( \bar u(\bar x,\bar t) \) through $$ \begin{equation} u(x,t) = \max_{x\in(0,L)}I(x)\,\bar u(\bar x L, \bar t L/c) \tag{3.13} \end{equation} $$
How do we implement (3.8)-(3.12)? As for the simpler mathematical models, we suggest to implement the model with dimensions and observe how to set parameters to obtain the scaled model. In the present case, one must choose \( L=1 \), \( c=1 \), and scale \( I \) by its maximum value. That's all!
Several implementations of 1D wave equation models with different degree of mathematical and software complexity come along with these notes. The simplest version is wave1D_u0.py that implements (3.1) and (3.3)-(3.6). This is the code to be used in the following. It is described in in the book Finite difference computing with PDEs [3].
As an example, we may let the original initial-boundary value problem (3.1)-(3.6) model vibrations of a string on a string instrument (e.g., a guitar). With \( u \) as the displacement of the string, the boundary conditions \( u=0 \) at the ends are relevant, as well as the zero velocity condition \( \partial u/\partial t=0 \) at \( t=0 \). The initial condition \( I(x) \) typically has a triangular shape for a picked guitar string. The physical problem needs parameters for the amplitude of \( I(x) \), the length \( L \) of the string, and the value of \( c \) for the string. Only the latter is challenging as it involves relating \( c \) to the pitch (i.e., time frequency) of the string. In the scaled problem, we can forget about all this. We simply set \( L=1 \), \( c=1 \), and let \( I(x) \) have a peak of unity at \( x=x_0\in(0,1) \): $$ \frac{I(x)}{\max_x I(x)} = \left\lbrace \begin{array}{ll} x/x_0, & x < x_0,\\ (1-x)/(1-x_0), & \hbox{otherwise} \end{array}\right. $$ The dimensionless coordinate of the peak, \( x_0 \), is the only dimensionless parameter in the problem. For fixed \( x_0 \), one single simulation will capture all possible solutions with such an initial triangular shape.
The file wave1D_u0_scaled.py
has functionality for detecting whether a simulation corresponds to
a previously run scaled case, and if so, the solution is retrieved from
file. The implementation technique makes use of joblib
, but is more
complicated than shown previously in these notes since some of the
arguments to the function that computes the solution are functions,
and one must recognized if the function has been used as argument
before or not. There is documentation in the wave1D_u0_scaled.py
file explaining how this is done.
A generalization of (3.1)-(3.6) is to allow for a time-dependent Dirichlet condition at one end, say \( u(0,t)=U_L(t) \). At the other end we may still have \( u=0 \). This new condition at \( x=0 \) may model a specified wave that enters the domain. For example, if we feed in a monochromatic wave \( A\sin(k(x-ct)) \) from the left end, \( U_L(t)=A\sin (kct) \). This forcing of the wave motion has its own amplitude and time scale that could affect the choice of \( u_c \) and \( t_c \).
The main difference from the previous initial-boundary value problem is the condition at \( x=0 \), which now reads $$ \bar u(0,\bar t) = \frac{U_L(\bar t t_c)}{u_c}$$ in scaled form.
Regarding the characteristic time scale, it is natural to base this scale on the wave propagation velocity, together with the length scale, and not on the time scale of \( U_L(t) \), because the time scale of \( U_L \) basically determines whether short or long waves are fed in at the boundary. All waves, long or short, propagate with the same velocity \( c \). We therefore continue to use \( t_c=L/c \).
The solution \( u \) will have one wave contribution from the initial condition \( I \) and one from the feeding of waves at \( x=0 \). This gives us three choices of \( u_c \): \( \max_x |I| + \max_t |U_L| \), \( \max_x |I| \), or \( \max_t |U_L| \). The first seems relevant if the size of \( I \) and \( U_L \) are about the same, but then we can choose either \( \max_x |I| \) or \( \max_t |U_L| \) as characteristic size of \( u \) since a factor of 2 is not important. If \( I \) is much less than \( U_L \), \( u_c=\max_t |u_L| \) is relevant, while \( u_c=\max_x|I| \) is the choice when \( I \) has much bigger impact than \( U_L \) on \( u \).
With \( u_c=\max_t |U_L(t)| \), we get the scaled problem $$ \begin{alignat}{2} \frac{\partial^2 \bar u}{\partial \bar t^2} &= {\partial^2 \bar u\over\partial \bar x^2}, \quad & \bar x\in (0,1),\ \bar t\in (0,\bar T], \tag{3.14}\\ \bar u(\bar x,0) &= \frac{I(x_c\bar x)}{\max_t |U_L(t)|}, \quad &\bar x\in [0,1], \tag{3.15}\\ {\partial\over\partial \bar t}\bar u(\bar x,0) &= 0, \quad & \bar x\in [0,1], \tag{3.16}\\ \bar u(0,\bar t) & = \frac{U_L(\bar tt_c)}{\max_t |U_L(t)|}, \quad &\bar t\in (0,\bar T], \tag{3.17}\\ \bar u(1,\bar t) & = 0, \quad &\bar t\in (0,\bar T]. \tag{3.18} \end{alignat} $$ Also this problem is free of physical parameters like \( c \) and \( L \). The input is completely specified by the shape of \( I(x) \) and \( U_L(t) \).
Software for the original problem with dimensions can be reused for (3.14)-(3.18) by setting \( L=1 \), \( c=1 \), and scaling \( U_L(t) \) and \( I(x) \) by \( \max_t |U_L(t)| \).
As an example, consider $$ \begin{align*} U_L(t) &= a\sin(\omega t)\hbox{ for } 0\leq t\leq 2\frac{\omega}{2\pi}, \hbox{ else } 0,\\ I(x) & = Ae^{-(x-L/2)^2/\sigma^2}\tp \end{align*} $$ That is, we start with a Gaussian peak-shaped wave in the center of the domain and feed in a sinusoidal wave at the left end for two periods. The solution will be the sum of three waves: two parts from the initial condition, plus the wave fed in from the left.
Since \( \max_t |U_L|=a \) we get $$ \begin{align} \bar u(\bar x,0) &= \frac{A}{a}e^{-(L/\sigma)^2(\bar x -\frac{1}{2})^2}, \tag{3.19}\\ \bar u(0,\bar t) &= \sin(\bar t\omega L/c)\tp \tag{3.20} \end{align} $$ Here, \( U_L \) models an incoming wave \( a\sin(k(x-ct) \), with \( k \) specified. The result is incoming waves of length \( \lambda = 2\pi/k \). Since \( \omega =kc \), \( \bar u(0,\bar t)=\sin(kL\bar t) = \sin(2\pi\bar t L/\lambda) \). (This formula demonstrates the previous assertion that the time scale of \( U_L \), i.e., \( 1/\omega \), determines the wave length \( 1/\omega = \lambda/(2\pi) \) in space.) We realize from the formulas (3.19) and (3.20) that there are three key dimensionless parameters related to these specific choices of initial and boundary conditions: $$ \alpha = \frac{A}{a},\quad\beta = \frac{L}{\sigma},\quad\gamma = kL =2\pi\frac{L}{\lambda}\tp$$ With \( \alpha \), \( \beta \), and \( \gamma \) we can write the dimensionless initial and boundary conditions as $$ \begin{align*} \bar u(\bar x,0) &= \alpha e^{-\beta^2(\bar x -\frac{1}{2})^2},\\ \bar u(0,\bar t) &= \sin(\gamma\bar t)\tp \end{align*} $$ The dimensionless parameters have the following interpretations:
We can simulate two special cases:
simulate_Gaussian_and_incoming_wave
in
the file session.py
applies the general unscaled
solver in wave1D_dn.py
for solving the wave equation with constant \( c \),
and any time-dependent function or \( \partial u/\partial x=0 \) at the
end points. This solver is trivially adapted to the present case.
\( \alpha=10 \).
\( \alpha=0.1 \).
Now we change the initial condition from \( u=I \) and \( \partial u/\partial t = 0 \) to $$ \begin{align} u(x,0) &= 0, \tag{3.21}\\ \frac{\partial}{\partial t} u(x,0) &= V(x)\tp \tag{3.22} \end{align} $$ Impact problems are often of this kind. The scaled version of \( u_t(x,0)=V(x) \) becomes $$ \frac{\partial}{\partial \bar t} \bar u(\bar x,0) = \frac{t_c}{u_c}V(\bar x x_c)\tp $$
From (3.7) we now get \( f_L + f_R =0 \) and \( cf_L' - cf_R' = V \). Introducing \( W(x) \) such that \( W'(x)=V(x) \), a solution is \( f_L=\frac{1}{2}W/c \) and \( -f_R=\frac{1}{2}W/c \). We can express this solution through the formula $$ \begin{equation} u(x,t) = \frac{1}{2c}\int_{x-ct}^{x+ct} V(\xi) d\xi = \frac{1}{2c}(W(x+ct) - W(x-ct))\tp \tag{3.23} \end{equation} $$
Since \( V \) is the time-derivative of \( u \), the characteristic size of \( V \), call it \( V_c \), is typically \( u_c/t_c \). If we, as usual, base \( t_c \) on the wave speed, \( t_c = L/c \), we get \( u_c = V_cL/c \). Looking at the solution (3.23), we see that \( u_c \) has size \( \hbox{mean}(V)L/(2c) \), where \( \hbox{mean}(V) \) is the mean value of \( V \) (\( W\sim\hbox{mean}(V)L \)). This result suggests \( V_c=\hbox{mean}(V) \) and \( u_c = \hbox{mean}(V)L/(2c) \). One may argue that the factor 2 is not important, but if we want \( |\bar u|\in [0,1] \) it is convenient to keep it.
The scaled initial condition becomes $$ \frac{\partial}{\partial \bar t} \bar u(\bar x,0) = \frac{t_c}{u_c}V(\bar x x_c) = \frac{V(\bar x x_c)}{\half\hbox{mean}(V)}\tp $$
Suppose we change the initial condition \( u(x,0)=0 \) to \( u(x,0)=I(x) \). The scaled version of this condition with the above \( u_c \) based on \( V \) becomes $$ \begin{equation} \bar u(\bar x, 0) = \frac{2cI(\bar x x_c)}{L\,\hbox{mean}(V)}\tp \tag{3.24} \end{equation} $$
Is a dimensionless number really dimensionless? It is easy to make errors when scaling equations, so checking that such fractions are dimensionless is wise. The dimension of \( I \) is the same as \( u \), here taken to be displacement: [L]. Since \( V \) is \( \partial u/\partial t \), its dimension is \( [\hbox{LT}^{-1}] \). The dimensions of \( c \) and \( L \) are \( [\hbox{LT}^{-1}] \) and \( [\hbox{L}] \). The dimension of the right-hand side of (3.24) is then $$ \frac{[\hbox{LT}^{-1}][L]}{[L][L\hbox{T}^{-1}]} = 1,$$ demonstrating that the fraction is indeed dimensionless.
One may introduce a dimensionless initial shape, \( \bar I (\bar x)= I(\bar xL)/\max_x |I| \). Then $$ \bar u(\bar x, 0) = \alpha\bar I(\bar x),$$ where \( \alpha \) the dimensionless number $$ \alpha = \frac{2c}{L}\frac{\max_x |I(x)|}{\hbox{mean}(V)}\tp$$
If \( V \) is much larger than \( I \), one expects that the influence of \( I \) is small. However, it takes time for the initial velocity \( V \) to influence the wave motion, so the speed of the waves \( c \) and the length of the domain \( L \) also play a role. This is reflected in \( \alpha \), which is the important parameter. Again, the scaling and the resulting dimensionless parameter(s) teach us much about the interaction of the various physical effects.
The next generalization regards wave propagation in a non-homogeneous medium where the wave velocity \( c \) depends on the spatial position: \( c=c(x) \). To simplify the notation we introduce \( \lambda (x) = c^2(x) \). We introduce homogeneous Neumann conditions at \( x=0 \) and \( x=L \). In addition, we add a force term \( f(x,t) \) to the PDE, modeling wave generation in the interior of the domain. For example, a moving slide at the bottom of a fjord will generate surface waves and is modeled by such an \( f(x,t) \) term (provided the length of the waves is much larger than the depth so that a simple wave equation like (3.25) applies). The initial-boundary value problem can be then expressed as $$ \begin{alignat}{2} \frac{\partial^2 u}{\partial t^2} &= \frac{\partial}{\partial x}\left( \lambda(x) {\partial u\over\partial x}\right) + f(x,t), \quad & x\in (0,L),\ t\in (0,T], \tag{3.25}\\ u(x,0) &= I(x), \quad &x\in [0,L], \tag{3.26}\\ {\partial\over\partial t}u(x,0) &= 0, \quad &x\in [0,L], \tag{3.27}\\ \frac{\partial}{\partial x}u(0,t) & = 0, \quad &t\in (0,T], \tag{3.28}\\ \frac{\partial}{\partial x}u(L,t) & = 0, \quad &t\in (0,T]. \tag{3.29} \end{alignat} $$
We make the coefficient \( \lambda \) non-dimensional by $$ \begin{equation} \bar\lambda(\bar x) = \frac{\lambda(\bar xx_c)}{\lambda_c}, \tag{3.30} \end{equation} $$ where one normally chooses the characteristic size of \( \lambda \), \( \lambda_c \), to be the maximum value such that \( |\lambda|\leq 1 \): $$ \lambda_c = \max_{x\in(0,L)}\lambda(x)\tp$$ Similarly, \( f \) has a scaled version $$ \bar f(\bar x,\bar t) = \frac{f(\bar x x_c, \bar t t_c)}{f_c},$$ where normally we choose $$ f_c=\max_{x,t}|f(x,t)|\tp$$ Inserting dependent and independent variables expressed by their non-dimensional counterparts yields $$ \begin{alignat*}{2} \frac{\partial^2 \bar u}{\partial \bar t^2} &= \frac{t_c^2\lambda_c}{L^2}\frac{\partial}{\partial \bar x}\left( \bar\lambda(\bar x) {\partial\bar u\over\partial\bar x}\right) + \frac{t_c^2f_c}{u_c}\bar f(\bar x,\bar t), \quad & \bar x\in (0,1),\ \bar t\in (0,\bar T],\\ \bar u(\bar x,0) &= \frac{I(x)}{u_c}, \quad &\bar x\in [0,1],\\ {\partial\over\partial \bar t}\bar u(\bar x,0) &= 0, \quad & \bar x\in [0,1],\\ \frac{\partial}{\partial \bar x}\bar u(0,\bar t) & = 0, \quad &\bar t\in (0,\bar T],\\ \frac{\partial}{\partial \bar x}\bar u(1,\bar t) & = 0, \quad &\bar t\in (0,\bar T], \end{alignat*} $$ with \( \bar T = Tc/L \).
The time scale is, as before, chosen as \( t_c =L/\sqrt{\lambda_c} \). Note that the previous (constant) wave velocity \( c \) now corresponds to \( \sqrt{\lambda (x)} \). Therefore, \( \sqrt{\lambda_c} \) is a characteristic wave velocity.
One could wonder if the time scale of the force term, \( f(x,t) \), should influence \( t_c \), but as we reasoned for the boundary condition \( u(0,t)=U_L(t) \), we let the characteristic time be governed by the signal speed in the medium, i.e., by \( \sqrt{\lambda_c} \) here and not by the time scale of the excitation \( f \), which dictates the length of the generated waves and not their propagation speed.
We may choose \( u_c \) as \( \max_x |I(x)| \), as before, or we may fit \( u_c \) such that the coefficient in the source term is unity, i.e., all terms balance each other. This latter idea leads to $$ u_c = \frac{L^2 f_c}{\lambda_c} $$ and a PDE without parameters, $$ \frac{\partial^2 \bar u}{\partial \bar t^2} = \frac{\partial}{\partial \bar x}\left( \bar\lambda(\bar x) {\partial\bar u\over\partial\bar x}\right) + \bar f(\bar x,\bar t)\tp $$ The initial condition \( u(x,0)=I(x) \) becomes in dimensionless form $$ \bar u(\bar x, 0) = u_c^{-1} \max_x |I(x)|\bar I(\bar x) = \beta^{-1}\bar I(\bar x),$$ where $$ \beta = \frac{L^2}{\lambda_c}\frac{\max_{x,t} |f(x,t)|}{\max_x|I(x)|}\tp$$
In the case \( u_c=\max_x|I(x)| \), \( \bar u(\bar x,0)=\bar I(\bar x) \) and the \( \beta \) parameter appears in the PDE instead: $$ \frac{\partial^2 \bar u}{\partial \bar t^2} = \frac{\partial}{\partial \bar x}\left( \bar\lambda(\bar x) {\partial\bar u\over\partial\bar x}\right) + \beta \bar f(\bar x,\bar t)\tp $$ With \( V=0 \), and \( u=0 \) or \( u_x=0 \) on the boundaries \( x=0,L \), this scaling normally gives \( |\bar u|\leq 1 \), since initially \( |I|\leq 1 \), and no boundary condition can increase the amplitude. However, the forcing, \( \bar f \), may inherit spatial and temporal scales of its own that may complicate the matter. The forcing may, for instance, be some disturbance moving with a velocity close to the propagation velocity of the free waves. This will have an effect akin to the resonance for the vibration problem discussed in the section Undamped vibrations with constant forcing and the waves produced by the forcing may be much larger than indicated by \( \beta \). On the other hand, the forcing may also consist of alternating positive and negative parts (retrogressive slides constitute an example). These may interfere to reduce the wave generation by an order of magnitude.
The initial condition \( u_t(x,0)=V(x) \) has its dimensionless variant as $$ \bar V(\bar x) = \frac{t_c}{u_c}\frac{V(L\bar x)}{\max_x|V(x)|},$$ which becomes $$ \frac{\partial\bar u}{\partial\bar t}(\bar x, 0) = \frac{L}{\sqrt{\lambda_c}}\frac{\max_{x}|V(x)|}{\max_{x}|I(x)|}\bar V(\bar x), \hbox{ if } u_c=\max_x|I(x)|,$$ or $$ \frac{\partial\bar u}{\partial\bar t}(\bar x, 0) = \frac{\sqrt{\lambda_c}}{L}\frac{\max_{x}|V(x)|}{\max_{x,t}|f(x,t)|} \bar V(\bar x), \hbox{ if } u_c=t_c^2f_c=\frac{L^2}{\lambda_c}\max_{x,t}|f(x,t)|\tp$$ Introducing the dimensionless number \( \alpha \) (cf. the section Velocity initial condition), $$ \alpha^{-1} = \frac{\sqrt{\lambda_c}}{L}\frac{\max_{x}|V(x)|}{\max_{x,t}|f(x,t)|}, $$ we can write $$ \frac{\partial\bar u}{\partial\bar t}(\bar x, 0) = \left\lbrace \begin{array}{ll} \alpha^{-1}\bar V(\bar x),& u_c=\max_x|I|\\ \alpha^{-1}\beta^{-1}\bar V(\bar x), & u_c=t_c^2f_c \end{array}\right. $$
A linear damping term \( b\,\partial u/\partial t \) is often added to the wave equation to model energy dissipation and amplitude reduction. Our PDE then reads $$ \begin{equation} \frac{\partial^2 u}{\partial t^2} + b\frac{\partial u}{\partial t} = \frac{\partial}{\partial x}\left( \lambda(x) {\partial u\over\partial x}\right) + f(x,t)\tp \tag{3.31} \end{equation} $$ The scaled equation becomes $$ \frac{\partial^2 \bar u}{\partial \bar t^2} + \frac{t_c} b\frac{\partial \bar u}{\partial \bar t} = \frac{t_c^2\lambda_c}{L^2}\frac{\partial}{\partial \bar x}\left( \bar \lambda(\bar x) {\partial \bar u\over\partial \bar x}\right) + \frac{t_c^2f_c}{u_c}\bar f(\bar x,\bar t)\tp $$
The damping term is usually much smaller than the two other terms involving \( \bar u \). The time scale is therefore chosen as in the undamped case, \( t_c=L/\sqrt{\lambda_c} \). As in the section Variable wave velocity and forcing, we have two choices of \( u_c \): \( u_c=\max_x|I| \) or \( u_c=t_c^2f_c \). The former choice of \( u_c \) gives a PDE with two dimensionless numbers, $$ \begin{equation} \frac{\partial^2 \bar u}{\partial \bar t^2} + \gamma\frac{\partial \bar u}{\partial \bar t} = \frac{\partial}{\partial \bar x}\left( \bar \lambda(\bar x) {\partial\bar u\over\partial\bar x}\right) + \beta\bar f(\bar x,\bar t), \tag{3.32} \end{equation} $$ where $$ \gamma = \frac{bL}{\sqrt{\lambda_c}}, $$ measures the size of the damping, and \( \beta \) is as given in the section Variable wave velocity and forcing. With \( u_c=t_c^2f_c \) we get a PDE where only \( \gamma \) enters, $$ \begin{equation} \frac{\partial^2 \bar u}{\partial \bar t^2} + \gamma\frac{\partial \bar u}{\partial \bar t} = \frac{\partial}{\partial \bar x}\left( \bar \lambda(\bar x) {\partial\bar u\over\partial\bar x}\right) + \bar f(\bar x,\bar t)\tp \tag{3.33} \end{equation} $$ The scaled initial conditions are as in the section Variable wave velocity and forcing, so in this latter case \( \beta \) appears in the initial condition for \( u \).
To summarize, the effects of \( V \), \( f \), and damping are reflected in the dimensionless numbers \( \alpha \), \( \beta \), and \( \gamma \), respectively.
To demonstrate how the scaling extends to in three spatial dimensions, we consider $$ \begin{equation} \frac{\partial^2 \bar u}{\partial \bar t^2} = \frac{\partial}{\partial x}\left(\lambda\frac{\partial u}{\partial x}\right)+ \frac{\partial}{\partial y}\left(\lambda\frac{\partial u}{\partial y}\right)+ \frac{\partial}{\partial z}\left(\lambda\frac{\partial u}{\partial z}\right)\tp \tag{3.34} \end{equation} $$ Introducing $$ \bar x = \frac{x}{x_c},\quad \bar y = \frac{y}{y_c}, \quad \bar z = \frac{z}{z_c}, \quad \bar t = \frac{t}{t_c}, \quad \bar u =\frac{u}{u_c},$$ and scaling \( \lambda \) as \( \bar\lambda = \lambda(\bar xx_c, \bar y y_c, \bar z z_c)/\lambda_c \), we get $$ \frac{\partial^2 \bar u}{\partial \bar t^2} = \frac{t_c^2\lambda_c}{x_c^2}\frac{\partial}{\partial \bar x}\left(\bar\lambda\frac{\partial \bar u}{\partial \bar x}\right)+ \frac{t_c^2\lambda_c}{y_c^2}\frac{\partial}{\partial \bar y}\left(\bar\lambda\frac{\partial \bar u}{\partial \bar y}\right)+ \frac{t_c^2\lambda_c}{z_c^2}\frac{\partial}{\partial \bar z}\left(\bar\lambda\frac{\partial \bar u}{\partial \bar z}\right)\tp $$ Often, we will set \( x_c=y_c=z_c=L \) where \( L \) is some characteristic size of the domain. As before, \( t_c = L/\sqrt{\lambda_c} \), and these choices lead to a dimensionless wave equation without physical parameters: $$ \begin{equation} \frac{\partial^2 \bar u}{\partial \bar t^2} = \frac{\partial}{\partial \bar x}\left(\bar\lambda\frac{\partial \bar u}{\partial \bar x}\right)+ \frac{\partial}{\partial \bar y}\left(\bar\lambda\frac{\partial \bar u}{\partial \bar y}\right)+ \frac{\partial}{\partial \bar z}\left(\bar\lambda\frac{\partial \bar u}{\partial \bar z}\right)\tp \tag{3.35} \end{equation} $$ The initial conditions remain the same as in the previous one-dimensional examples.