All the years that I've been fooling around with the Baxendall class-D oscillator, I've believed the original paper, which said that if you made the source inductor much bigger than the centre-tapped inductor in the resonant tank, the circuit will "squeg", rather than settling down to producing a nice steady sine wave. It certainly did when I wound inductors that had something of the order of four or five times the inductance of the inductor in the tank circuit.
Recently, I was wondering if fooling around with the mark-to-space ratio might allow me to tame the squegging, so I dug out my old Spice model, and replaced the 1mH source capacitor with the biggest Toko 8RB choke I could find in a distributors catalogue - 33mH, 80R 8.5pF of parallel capacitance (its self-resonant frequency is 300kHz).
Before plugging in the mark-to-space circuitry, I tried the base circuit in LTSpice. It worked fine - settled down within a few cycles of the 16kHz frequency set by the resonant frequency of the tank circuit, and the worst spur is the 7th harmonic at 109kHz which is 66dB down on the fundamental -
0.05% distortion - which is about what I got with my rather messier and appreciably less efficient current-mirror variant (but that circuit did included an amplitude stabilising loop that guaranteed a very stable output amplitude, comparable with the Linear Technology zener-based voltage reference that provided the DC reference voltage for teh scheme).The only thing that I can come up with that might explain why the Toko inductors seem to work so well is that their series resistances - at 40R and 80R respectively - is a lot higher than the 0.044R of my 1mH inductor and the 0.18R that I would have got if I'd wound twice as many turns of 30% thinner wire on the same former for the same core, or the 1.5R that I'd expect if I tried to get 33mH out of that core (5.7 times the number of turns and three times thinner wire),
Here's the .asc file
Version 4 SHEET 1 1316 776 WIRE -80 0 -160 0 WIRE 64 0 -80 0 WIRE 288 0 144 0 WIRE 368 0 288 0 WIRE -160 96 -160 0 WIRE -112 96 -160 96 WIRE 96 96 -32 96 WIRE 256 96 96 96 WIRE 368 96 368 0 WIRE 368 96 336 96 WIRE -112 192 -160 192 WIRE 16 192 -32 192 WIRE 256 192 16 192 WIRE 368 192 336 192 WIRE -368 256 -464 256 WIRE -208 256 -288 256 WIRE 16 256 16 192 WIRE 16 256 -208 256 WIRE -464 336 -464 256 WIRE -160 400 -160 192 WIRE -80 400 -160 400 WIRE 0 400 -80 400 WIRE 288 400 64 400 WIRE 368 400 368 192 WIRE 368 400 288 400 WIRE -160 448 -160 400 WIRE -16 448 -160 448 WIRE 144 480 -48 480 WIRE 368 480 368 400 WIRE 368 480 224 480 WIRE -160 496 -160 448 WIRE 368 496 368 480 WIRE -48 576 -48 480 WIRE -48 576 -112 576 WIRE -16 576 -16 448 WIRE 176 576 -16 576 WIRE 320 576 256 576 WIRE -464 624 -464 416 WIRE -160 624 -160 592 WIRE -160 624 -464 624 WIRE 96 624 96 96 WIRE 96 624 -160 624 WIRE 368 624 368 592 WIRE 368 624 96 624 WIRE -464 656 -464 624 FLAG -464 656 0 FLAG -208 256 Vct FLAG 288 0 Vout+ FLAG -80 0 Vout- FLAG -80 400 tank- FLAG 288 400 tank+ SYMBOL ind2 -128 208 R270 WINDOW 0 32 56 VTop 0 WINDOW 3 4 56 VBottom 0 SYMATTR InstName L1 SYMATTR Value 0.00025 SYMATTR Type ind SYMATTR SpiceLine Rser=0.022 SYMBOL ind2 240 208 R270 WINDOW 0 32 56 VTop 0 WINDOW 3 4 56 VBottom 0 SYMATTR InstName L2 SYMATTR Value 0.00025 SYMATTR Type ind SYMATTR SpiceLine Rser=0.022 SYMBOL nmos 320 496 R0 SYMATTR InstName M1 SYMATTR Value FDS6680A SYMBOL nmos -112 496 M0 SYMATTR InstName M2 SYMATTR Value FDS6680A SYMBOL cap 64 384 R90 WINDOW 0 0 32 VBottom 0 WINDOW 3 46 32 VTop 0 SYMATTR InstName C1 SYMATTR Value 100n SYMBOL ind -384 272 R270 WINDOW 0 32 56 VTop 0 WINDOW 3 5 56 VBottom 0 SYMATTR InstName L3 SYMATTR Value 0.033 SYMATTR SpiceLine Ipk=0.03 Rser=80 Cpar=8.5p SYMBOL voltage -464 320 R0 WINDOW 123 0 0 Left 0 WINDOW 39 24 132 Left 0 SYMATTR SpiceLine Rser=0.001 SYMATTR InstName V1 SYMATTR Value 5 SYMBOL res 272 560 R90 WINDOW 0 0 56 VBottom 0 WINDOW 3 32 56 VTop 0 SYMATTR InstName R1 SYMATTR Value 10 SYMBOL res 240 464 R90 WINDOW 0 0 56 VBottom 0 WINDOW 3 32 56 VTop 0 SYMATTR InstName R2 SYMATTR Value 10 SYMBOL ind2 -128 112 R270 WINDOW 0 44 45 VTop 0 WINDOW 3 5 56 VBottom 0 SYMATTR InstName L4 SYMATTR Value 0.0000253 SYMATTR Type ind SYMATTR SpiceLine Rser=0.004 Cpar=100pF SYMBOL ind2 240 112 R270 WINDOW 0 32 56 VTop 0 WINDOW 3 5 56 VBottom 0 SYMATTR InstName L5 SYMATTR Value 0.0000253 SYMATTR Type ind SYMATTR SpiceLine Rser=0.004 SYMBOL res 160 -16 R90 WINDOW 0 0 56 VBottom 0 WINDOW 3 32 56 VTop 0 SYMATTR InstName R3 SYMATTR Value 10k TEXT -400 664 Left 0 !.tran 0 10m 0m 10n TEXT -448 8 Left 0 !K1 L1 L2 0.99 TEXT -448 40 Left 0 !K2 L1 L4 0.99 TEXT -448 72 Left 0 !K3 L1 L5 0.99 TEXT -448 104 Left 0 !K4 L2 L4 0.99 TEXT -448 136 Left 0 !K5 L2 L5 0.99 TEXT -448 168 Left 0 !K6 L4 L5 0.99 TEXT -472 704 Left 0 !.ic V(tank-)=0.0 V(Vct)=0.005 V(tank+)=0.001 V(Vout+)=0.0 V(Vout-)=-0.0 I(L3)=0.00 I(L1)=0 0 (L2)=0 00 I(L4)=-0.03 I(L5)=-0.0