Gas station without pumps

2020 June 10

Sourdough focaccia

Filed under: Uncategorized — gasstationwithoutpumps @ 14:50
Tags: , , , , ,

My wife suggested that I try making focaccia with the sourdough starter that I’ve been using for the past three weeks’ breads: rye bread rolls, hole-wheat sourdough, and white sourdough. Focaccia is not traditionally a sourdough recipe, but the sourdough starter should add an interesting flavor to the flatbread.

I looked at three focaccia recipes: from Carol Field’s The Italian Baker, Marcella Hazan’s More Classic Italian Cooking, and Joe Ortiz’s The Village Baker.  I’ve never baked any of those recipes, but my wife has tried both Hazan’s recipe and Ortiz’s recipe.  She was disappointed with both—the Hazan recipe made a rather ordinary flatbread and Ortiz’s was too oily. The recipe in The Italian Baker has almost no olive oil, and one of the things I like in focaccia is the olive-oil taste and texture, so I’m going to ignore that one.

I think that the sourdough starter should add more flavor, so I’ll start with the Hazan recipe, but increase the olive oil, though not to the level of Ortiz’s recipe.  The Hazan recipe uses ¾ cup water and 3 cups flour (flour/water ≈ 4), with 7 tablespoons of olive oil (so water/oil ≈ 1.7). Ortiz’s recipe calls for 2½ cups water, 6 cups flour (flour/water ≈2.4),  ¾ cup old dough, and 2.1 cups olive oil (water/oil ≈ 1.3).  Hazan’s recipe is very dry, and Ortiz’s makes a very slack dough, so I’m going to compromise on flour/water ≈3 and water/oil ≈ 1.5.

I’ll make a light sponge to rise and sour overnight, then add more flour in the morning.


1 cup sourdough starter
1 teaspoon dark brown sugar
2 cups all-purpose flour
1½ cups water

together in large bowl.  Cover and let rise overnight.  Stir down and remove one cup of mixture for new sourdough starter. I’ll probably freeze the starter this time, as I’m not planning to make sourdough again for a few weeks, and maintaining a starter when not using it for baking weekly is a bit of a hassle.


¾ cup olive oil
5 cloves garlic, chopped fine
fresh rosemary leaves
2 teaspoons salt

to make a garlicky oil.

Mix into the overnight sponge

¼ cup olive oil
2–2½ cups all-purpose flour
2 teaspoons salt

with bread hook, kneading in last cup of flour by hand, to get a smooth dough. Place the ball of dough in the garlicky oil, cover, and let rise 3–4 hours until tripled.

Stretch dough into a sheet about 12″ by 18″ by ⅜” in a greased cookie sheet with raised sides. If the dough springs back, let it rest a couple of minutes and stretch it out again.  Make dimples in the top surface and pour the remaining garlicky oil on top.

Let rise (covered) for an hour.

Preheat oven to 400°F,  poke dents in the top surface, and bake 15–17 minutes, until golden brown.

One thing I haven’t decided on for sure yet is whether to bake on a metal baking sheet (as described above) or to do the final rise on baking parchment and just slide the baking parchment and focaccia into the oven directly on the baking tiles.  I’ll update this recipe when I make up my mind.

Update 2020 June 12: I went with the metal baking sheet, as it gave me a place to stretch out the dough.   The baking time from the recipes was far too short—I ended up baking the focaccia for more like 35 minutes at 400°F.  I checked the temperature with newly purchased oven thermometers, and found that the oven had been running cool—I had to raise the setting to 450°F to get 400°F and 415°F on the two thermometers in the center of the oven.

If I do this recipe again, I’ll put more of the olive oil into the dough and less into the topping (maybe ½ cup each), as the bread was almost fried in the olive oil.  I’ll also reduce the salt—cutting it about in half (so 1 teaspoon each for the dough and the garlicky oil).


The focaccia in the cookie sheet right after removal from the oven. The edges looked a little too browned to me.

Once on the cooling rack, the amount of browning looked about right to me.

The browning of the garlic made an attractive presentation on the plate.

2020 June 9

Error in video

Filed under: Circuits course — gasstationwithoutpumps @ 22:00
Tags: , ,

After posting Resonance for non-linear impedance today, I realized that there was a small error in the most recent video (Tenth video for electronics book).  In particular, the estimation formula  was incorrect for the initial value for C2 based on the resonant frequency of the non-linear inductor-like component of the voice coil in parallel with the capacitor C2.  It used the average of the two roots of the quadratic equation for u in Resonance for non-linear impedance, rather than just the more positive root.

This error is unimportant for two reasons:

  • The initial value of C2 only needed to be close enough for the fitting algorithm to converge.
  • I didn’t use that estimate of C2 in any case, but used the simpler estimate based on a single data point on the downward slope that corresponded to where C2 dominated the impedance.

The corrected code is fairly simple:

cp(alpha,beta) = cos(pi*(alpha-beta)/2)
U(alpha,beta) = (-(alpha+beta)*cp(alpha,beta) + sqrt((alpha+beta)**2*cp(alpha,beta)**2 - 4*alpha*beta))/(2*alpha)                                              
N = (2*pi*f_peak)**(1+alpha)*M/U(alpha,-1)                                      
C2_a = 1./N   

This method produces an estimate that is closer to the final value after fitting than the simple estimator I used in the video.

Resonance for non-linear impedance

Filed under: Circuits course — gasstationwithoutpumps @ 08:51
Tags: , ,

In modeling loudspeakers and electrodes, my book uses a non-linear impedance (j \omega\; 1\,s)^\alpha M, where -1 \le \alpha \le 1 is unitless, and M is in ohms.  This two-parameter component generalizes the standard passive components, as \alpha=0 gives resistors (with M=R), \alpha=1 gives inductors (with M= L/1\,s) and \alpha=-1 gives capacitors (with M= 1\,s/C).

This week I was thinking about resonance from a combination of an inductor-like component and a capacitor and more generally from two non-linear impedances with different exponents.  If we put two in series, we have an impedance Z = (j\omega\;1\,s)^\alpha M + (j\omega\;1\,s)^\beta N. To figure out where there are peaks or dips in the the magnitude of the impedance, it is easiest to look at |Z|^2 = Z Z^*, and let w = \omega \; 1s, to simplify the writing.

|Z|^2 = Z Z^*

= (w^\alpha M)^2 + (w^\beta N)^2 + (j w)^{\alpha+\beta}M N ( (-1)^\alpha + (-1)^\beta)

= (w^\alpha M)^2 + (w^\beta N)^2 + (j w)^{\alpha+\beta}M N ( (j^{-2\alpha} + j^{-2\beta})

= (w^\alpha M)^2 + (w^\beta N)^2 +w^{\alpha+\beta}M N ( (j^{\beta -\alpha} + j^{\alpha-\beta})

= (w^\alpha M)^2 + (w^\beta N)^2 +2 w^{\alpha+\beta}M N ( \cos(\frac{\pi(\alpha-\beta)}{2}))

We can first look for places where the magnitude goes to zero—are any of them for real values of \omega?  If we let u=w^{\alpha-\beta} M/N, so that \omega = w/1\,s = (u N/M)^{1/(\alpha-\beta)} / 1\,s, then

|Z|^2 = (w^\beta N)^2 \left( u^2 + 2 \cos(\frac{\pi(\alpha-\beta)}{2}) u +1 \right)

and the magnitude is zero if

u = - \cos(\frac{\pi(\alpha-\beta)}{2}) \pm j \sin(\frac{\pi(\alpha-\beta)}{2}),

which is real if \alpha-\beta is an even integer.  The only ones of interest are ±2, which correspond to the standard LC resonance with \alpha=1 and \beta=1, and give us the usual formula for resonance: \omega = (LC)^{-1/2}.

More generally, we can look for a minimum of the magnitude of the impedance that is not zero, by taking the derivative with respect to \omega or w and setting it to zero:

\frac{d (ZZ^*)}{d w} = \frac{1}{w}\left(2\alpha (w^\alpha M)^2 + 2\beta(w^\beta N)^2 + 2 (\alpha+\beta) w^{\alpha+\beta} M N \cos(\frac{\pi(\alpha-\beta)}{2}) \right)

Setting that to zero and changing variable again gives us 0 = \alpha u^2 + (\alpha+\beta)\cos(\frac{\pi(\alpha-\beta)}{2}) u + \beta, which gives us the solution

u = \frac{- (\alpha+\beta)\cos(\frac{\pi(\alpha-\beta)}{2}) \pm  \sqrt{(\alpha+\beta)^2 \cos^2(\frac{\pi(\alpha-\beta)}{2}) - 4\alpha\beta}}{2\alpha}.

The simplest case is the symmetric one, with \beta = - \alpha, which gives us u = \pm 1or \omega =(N/M)^{1/(2\alpha)}/ 1\,s.  This generalizes the standard LC resonance, with the standard result \omega = (LC)^{1/2}.

If \alpha and \beta have the same sign, then u is not real and so there is no resonance (except in the trivial case \alpha=\beta, in which case we have a simple non-linear impedance (j\omega)^\alpha (M+N) and still no resonance).

As the two exponents get further apart, the resonance gets more pronounced:

2020 June 7

Tenth video for electronics book

Filed under: Circuits course — gasstationwithoutpumps @ 22:03
Tags: , , , , , ,

I’ve just published my tenth video for my Applied Analog Electronics book.  This video is for part of §29.2.2—fitting models for loudspeakers.

I filmed the video using OBS (Open Broadcaster Software), and this is the unedited first take. This is my longest video yet in the series.

2020 June 5

Compensation in impedance analyzer

Filed under: Circuits course — gasstationwithoutpumps @ 00:18
Tags: , ,

The Analog Discovery 2 has an impedance analyzer that includes short-circuit and open-circuit compensation to correct for the impedances of the test fixture, and I’ve been thinking about how that might be computed internally.  The open-circuit and short-circuit compensation can be applied independently or together, but each requires making and recording an impedance at each frequency for which impedance analysis is done.

Since there are three impedances that are measured (open-circuit, short-circuit, and device-under-test), I came up with two circuits that could model the test setup:

The measurement is made at the two ports, and Z_DUT is the device being measured—the other two impedances are parasitic ones of the test fixture that we are trying to eliminate.

Let’s look at the short-circuit compensation first.  For the first model, if we replace Z_DUT with a short circuit, we measure an impedance of Z_{sc} = Z_{s1}, while for the second circuit we measure Z_{sc} = Z_{p2} || Z_{s2}.   In the first model, we can do short-circuit compensation as Z_{DUT} = Z_{m} - Z_{sc}, where Z_{m} is the measured impedance with the DUT in place.  For the second circuit, we would need to measure another value to determine the appropriate correction to get Z_{DUT}.

For open-circuit compensation, in the first model we get Z_{oc} = Z_{s1} + Z_{p1} and in the second model we get Z_{oc} = Z_{p2}.  So for the first model we would need another measurement to get Z_{DUT}, but for the second model Z_m=Z_{oc} || Z_{DUT}, so Z_{DUT} = \frac{1}{1/Z_m - 1/Z_{oc}} = \frac{Z_m Z_{oc}}{Z_{oc}-Z_m}.

If we do both compensations, we can use either model, but the corrections we end up with are slightly different.

For the first model, we have Z_m = Z_{s1} + (Z_{p1} || Z_{DUT}) = Z_{sc} + ((Z_{oc}-Z_{sc}) || Z_{DUT}). We can rearrange this to Z_m -  Z_{sc} = (Z_{oc}-Z_{sc}) || Z_{DUT}, or \frac{1}{Z_m -  Z_{sc}} = \frac{1}{Z_{oc}-Z_{sc}} + \frac{1}{Z_{DUT}}.

We can simplify that to Z_{DUT}=\frac{1}{1/(Z_m-Z_{sc}) - 1/(Z_{oc}-Z_{sc})} = \frac{(Z_m-Z_{sc})(Z_{oc}-Z_{sc})}{Z_{oc}-Z_m}.  If Z_{sc}=0, this simplifies to our open-compensation formula, and if Z_{oc}\rightarrow\infty, this approaches our formula for short-circuit compensation.

For the second model, the algebra is a little messier. We have Z_m = Z_{oc} || (Z_{s2} + Z_{DUT}), which can be rewritten as \frac{1}{Z_m} - \frac{1}{Z_{oc}} = \frac{1}{Z_{s2} + Z_{DUT}}, or Z_{s2}+Z_{DUT} = \frac{1}{1/Z_m - 1/Z_{oc}} = \frac{Z_m Z_{oc}}{Z_{oc} - Z_m}.

We also have 1/Z_{sc} = 1/Z_{p2} + 1/Z_{s2}, so Z_{s2} = \frac{1}{1/Z_{sc} - 1/Z_{oc}}=\frac{Z_{sc}Z_{oc}}{Z_{oc} - Z_{sc}}, and so

Z_{DUT} = \frac{Z_m Z_{oc}}{Z_{oc} - Z_m} - \frac{Z_{sc}Z_{oc}}{Z_{oc} - Z_{sc}}

Z_{DUT} = Z_{oc} \left( \frac{Z_m}{Z_{oc}-Z_m} - \frac{Z_{sc}}{Z_{oc}-Z_{sc}}\right)

Z_{DUT} = Z_{oc} \left( \frac{Z_mZ_{oc} - Z_{sc}Z_{oc}}{({Z_{oc}-Z_m})(Z_{oc}-Z_{sc})}\right)

Z_{DUT} = \frac{Z_{oc}^2(Z_m - Z_{sc})}{({Z_{oc}-Z_m})(Z_{oc}-Z_{sc})}

Once again, when Z_{sc}=0, this formula simplifies to our formula for just open-circuit compensation, and when Z_{oc}\rightarrow\infty, this approaches out formula for short-circuit compensation.

We can make the two formulas look more similar, by using the same denominator for both, making the formula for the first model

Z_{DUT} = \frac{(Z_{oc}-Z_{sc})^2(Z_m - Z_{sc})}{({Z_{oc}-Z_m})(Z_{oc}-Z_{sc})}

That is, the only difference is whether we scale by Z_{oc}^2 or correct the open-circuit measurement to use (Z_{oc}-Z_{sc})^2.  At low frequencies (with any decent test jig) the open-circuit impedance is several orders of magnitude larger than the short-circuit impedance, so which correction is used hardly matters, but at 10MHz, changing the compensation formula can make a big difference.

For example, for the following compensation measurements using the flywires, a breadboard, and some short leads with alligator clips to make the test fixture

the choice of compensation formula would make a 3% difference is the reported impedance at 10MHz.  Notice that Z_{oc} is approximately a small capacitor and Z_{sc} is approximately a small resistor in series with a small inductor.  Shorter wires and no breadboard can make these parasitic values much smaller, so that the compensation is not so crucial.  For example, here are measurements of the impedance analyzer board:

Because the open-circuit impedance here is much higher than the input impedance of the measuring oscilloscope channel, I believe that corrections have already been made for known characteristics of the oscilloscope channels.

The exact values of the Z_{oc} measurements are often limited by the noise in measuring the current through the sense resistor, at least at lower frequencies, where the impedance of the parasitic capacitance is very high.

« Previous PageNext Page »

%d bloggers like this: