A long time ago I was faced with the problem of making an
accurate pulsed current source. With the secondary problem
of measuring it accurately. CTs of the day were about 5%
datasheet, no guarantee,; part had to be sub-%.
What I came up with was a variation on the transmission
line pulser like people use for ESD testing. The charged
line puts out a nice square pulse (if you tweak the
termination right). I used a mercury relay for the switch.
A current transformer placed in the termination resistor
path sees the line current. The resistor value and the
pulse voltage can both be measured accurately (DMM,
'scope; 'scope can be calibrated back to a DC source).
So from these you can know the true pulse current and
derive the correction for your CT-measured pulse.
Easy. Only took me weeks of late nights to build the
thing (bench automated test for 5 channels times 4
current sources apiece, laser trimmed). Then the
fixture ate itself in a few months from the 28V supply
and icing at low temp, electrolytically chowing all the
pins in the $10K Kelvin pogo contactor. Big fun.
Some CTs have a lower frequency limit and this scheme
would not apply there.
However if you filter your Class D amp adequately and
make it look like a sine wave voltage, and can get
confidence in the measurement of said voltage and a
load resistor, the same chain of calibration idea ought
to work. The main thing is to have the source clean
to better than a small fraction of your error budget.
To which point, you are better off not betting on a
very low resistance, a 0.01 ohm sense resistor will
likely be dwarfed, or compromised at least, by PCB and
wiring resistances. More voltage and higher resistor is
going to be more reliable I would bet, for the same
current. However if you are able to get Kelvin sensing
on a low value resistor, it could work (though your
fidelity at lower currents will suffer from voltmeter
resolution I expect - what, 200mV scale, 1mV accurate,
0.01 ohms is 100mA?).