I think I now understand why my Colpitts oscillator oscillated at a different frequency than I expected, and why the 4.7µF capacitor appeared to be a 4.0µF capacitor when I measured it. The problem is most likely the DC bias on the capacitors.
It turns out that cheap ceramic capacitors have highly variable capacitance, depending on temperature, DC bias, and AC voltage applied. There is a pretty good explanation of these effects from Kemet, a capacitor manufacturer: Tech Report 2008-03: Why 47 uF capacitor drops to 37 uF- 30 uF- or lower. The paper talks about several different voltage, temperature, aging, and frequency effects of both electrolytic capacitors and multiple-layer ceramic capacitors (MLCCs).
There is actually some interesting physics going on. They explain that there are 4 different polarization mechanisms that can cause a material to exhibit a higher dielectric constant: electric, atomic, dipole orientation, and space charge. These correspond mainly to the magnitude of the movements of charges. The most important of them for the ferromagnetic ceramics used in MLCCs is the dipole orientation. What happens with DC bias is that many of the dipoles are already aligned to the electric field, and so fewer of them can rotate as a result of any AC signal added to the DC, resulting in a lower effective dielectric constant and hence lower capacitance.
The effect depends mainly on the magnitude of the electric field. A capacitor with a low voltage rating has a thinner dielectric, and hence exhibits this drop in capacitance at lower voltages than one with a high voltage rating. They give an example of a 22µF capacitor with X5R dielectric dropping fairly linearly to about 18µF (–18%) at 30% of its rated voltage then more steeply to 9µF (–60%) at 80% of its rated voltage. The effect depends somewhat on which dielectric is used, but they don’t give the details in this survey. This effect looks like a good reason to use a 3 times higher voltage rating on ceramic capacitors than the voltage you actually plan to use.
They do talk about the rating system for MLCC dielectrics (those mysterious codes like Y5V and X7R). It turns out that these are talking about the temperature dependence of the dielectric. The first letter gives the low temperature limit (X=–55˚C, Y=–30˚C, Z=+10˚C), the middle digit gives the upper temperature limit (2=+45˚C, 4=+65˚C, 5=+85˚C, 6=+105˚C, 7=+125˚C, 8=+150˚C, 9=+200˚C), and the last letter gives the capacitance deviation over the temperature range (A=±1%, B=±1.5%, C=±2.2%, D=±3.3%, E=±4.7%, F=±7.5%, P=±10%, R=±15%, S=±22%, T=+22/–33%, U=+22/–56%, V=+22/–82%). Note: these ratings are for Class 2 and Class 3 dielectrics: Class 1 dielectrics use a different scheme for specifying temperature coefficient,which they also provide (those codes look like C0G or M3K, not starting with X, Y, or Z, and specify a temperature coefficient in PPM/˚C).
So an X7R capacitor has a ±15% variation over a temperature range of –55˚C to +125˚C, while a Y5V has a +22/-82% variation over –30˚C to +85˚C. Now I see why the TI datasheet for the LM3668 Buck/Boost converter says “Multilayer ceramic capacitors such as X5R or X7R with low ESR [are] a good choice for this as well. These capacitors provide an ideal balance between small size, cost, reliability and performance. Do not use Y5V ceramic capacitors as they have poor dielectric performance over temperature and poor voltage characteristic for a given value.” Apparently, the high temperature dependence also results in high voltage dependence, which could be a real disadvantage in a capacitor used for smoothing out ripple in a DC power supply.
Unfortunately, I’ve forgotten exactly which capacitors I ordered last year, and I don’t have the original packaging. Based on the price (I bought the cheapest at Digikey), they probably have X7R or X5R dielectrics, which appear to be the popular ones with a good tradeoff between size and performance. These shouldn’t shift much with temperature, but the voltage dependence may still be large enough to explain the effects I’m seeing.
If the problem is indeed the DC bias on the capacitors, then I should be able to control the frequency of the LC oscillator by replacing the ground connection between the capacitors of the Colpitts oscillator with an adjustable voltage source. I used a potentiometer and a unity-gain buffer to provide a voltage source that was between the 2.5V virtual ground and the 0V power rail. When the voltage source was at virtual ground, the frequency of the oscillator was 7.4kHz, but when the voltage was –2.44V relative to virtual ground, the frequency was 8.6kHz, a 16% change in frequency or a 26% drop in capacitance. The change was fairly smooth with the bias voltage and was reversible and repeatable, so I’m reasonably convinced that what I was seeing was indeed a DC bias effect on the capacitors.
I had not been aware that the DC bias effect was so large in ceramic capacitors.