Finite Element & Finite Volume Methods

a control volume

Imagine drawing an imaginary box around a stretch of river and asking only one question: how much water is inside, and how does that change as water flows in one end and out the other? You don't track every molecule; you watch the box's contents and its faces. A control volume is exactly that accounting box — a fixed region of the domain over which the finite volume method enforces a conservation balance.

In practice the domain is partitioned into many small, non-overlapping control volumes (also called cells) that tile it completely, just like a finite element mesh but used differently. The method stores one number per control volume — the AVERAGE of the quantity over that cell — rather than values at points. Conservation is applied cell by cell: the change of the cell average over a time step equals the net flux summed over the cell's faces. Two common layouts exist. In a CELL-CENTERED scheme the unknown lives at the centre of each mesh cell and the cell IS the control volume. In a VERTEX-CENTERED (or node-centered) scheme the unknowns sit at mesh vertices, and the control volumes are dual cells built around each vertex (for example, the median-dual or Voronoi region). Either way, the key object is the FACE shared between two adjacent control volumes, because that is where flux is exchanged.

The control volume is what makes finite volume conservation local and exact. Because adjacent cells SHARE a face and use the SAME numerical flux through it, what one cell loses through that face the other gains — there is no double counting and no leak. The honest points: control volumes can be any shape (the method handles arbitrary polygons and polyhedra, which is why it thrives on messy unstructured meshes), but a control volume that is highly skewed or non-orthogonal to its faces makes the flux reconstruction less accurate, so cell geometry still matters. And because the stored quantity is an average over a whole cell, fine features smaller than a cell are simply not represented — resolution is set by control-volume size.

On a 1D grid, cell i is the interval [x_{i-1/2}, x_{i+1/2}] of width dx, and the stored unknown u_i is the average of u over that interval. Its two faces are x_{i-1/2} (shared with cell i-1) and x_{i+1/2} (shared with cell i+1). The flux at x_{i+1/2} is computed once and used with opposite signs by both neighbouring cells.

One average per cell; conservation enforced through shared faces.

The unknown is a CELL AVERAGE, not a point value — so features finer than a control volume are invisible, and 'the value at the centre' is only an approximation to that average. Highly skewed cells also degrade flux accuracy even though conservation still holds exactly.

Also called
finite volumecellcontrol cell控制容積