Shocks are discontinuities that can arise in the solution of nonlinear PDEs.

For Example... consider the nonlinear PDE

ut + uux = 0

Preliminaries What path would we have to travel in x and t to stay at a constant value of u? Introduce a parameter s and let x = x(s) and t = t(s). Then u(x,t) = u(x(s),t(s)) and

du   du dx   du dt
-- = -- -- + -- --
ds   dx ds   dt ds
Since we get to pick x(s) and t(s), set
dx           dt
-- = u  and  -- = 1.
ds           ds
Then du/ds simplifies to the original PDE:
du   du     du
-- = -- u + -- = uu  + u  = 0.
ds   dx     dt     x    t
Therefore, u is constant along the curve defined by (x(s),t(s)). Integrate dx/ds and dt/ds to get
x = us + c1
t = s + c2
Letting c2 = 0 for convenience, 
x = ut + c1  ==&rt;  x - ut = c
We have found that u is constant along the characteristic lines x - ut = c.

Initial Conditions Notice that the lines along which u is constant are dependent on u itself! This is something that happens in nonlinear PDEs that doesn't happen in linear PDEs--the "behavior" is dependent on initial conditions. Suppose u at time zero looks like this:

     t                                       
     ^                                        
     |                                        
     |                                        
     |                                        
-----2-_                                     
     |  \                                   
     |   \                                    
     |    \                                     
     1     -___________                
     |                                          
     |                                         
-----0-------------------------&rt;x
     |                                         
     |                                         
     |                                         
Then the lines of constant u will be something like this:
     t                                     
     ^        /  /  /   /                     
     |       /   | /    |                     
     |      /    |/     |                     
     |     /    //     /                      
     |    /     *     |                   
     |   /     /|      |                      
     |  /     //      /                       
     | /     / |      |                       
     |/     /  |      |                       
     +     /  /      /                       
    /|    /   |      |                        
 u=2 |  u=2  u=1    u=1                        
  /  |  /    /      /            
 /   | /     |      |                          
/    |/      |      |                         
-----+--------------------------&rt;x
     |                                         
     |                                         
     |                                         
But wait, the lines where u=2 and u=1 intersect! In other words, at the location *, u is multivalued?

Shocks In reality, whatever is represented by u probably cannot be multivalued. Therefore we introduce the "weak solution" which has a shock, or discontinuity, in it. The weak solution satisfies the PDE everywhere except at the shock.

     t                                       
     ^                                        
     |                                        
     |                                        
     |                                        
-----2---------+                                   
     |         |                                 
     |         |                                 
     |         |                                
     1         +_______                
     |                                          
     |                                         
-----0-------------------------&rt;x
     |         ^                               
     |         |                              
     |       shock                            
To find the speed of the shock, integrate the PDE with resepct to x from a to b to get
             2         2
 d  a       u (a,t) - u (b,t)
-- ∫ u dx = -----------------
dt  b               2
Let a → f- and b → f+, where f(t) is the location of the shock. We get
                       2      2
df   -    +        (u-) - (u+)
-- (u  - u ) + 0 = ------------
dt                      2
or,
df   (u-) + (u+)
-- = -----------
dt        2
The shock wave travels at the average of the speed on the left and the speed on the right.