Pentode Spice Model Revisited…
[2/13/2013 – For those interested in my latest finding, head over to this post.]
In the never-ending quest to make better pentode models, I went over Bill Elliott’s math program again – making a long story short – I could not get the results to work on SIMetrix due to non-convergence issues… While troubleshooting the problem,
I noticed that Bill’s results were actually quite different from certain known-working models that I have, so besides getting the models to work in SIMetrix, I also need to verify that the methodology used was valid. I sent an email to Bill about the discrepencies, hopefully he will response to my questions. Well, it turns out, Bill’s solutions work just fine, the non-convergence issue is specific to SIMetrix, as others have tried the same model on LTSPice and no problem with it – so I need to find out how to fix the problem in SIMetrix, which just seems weird, as it is usually far better at convergence than LTSpice…
Speaking of pentode models, in the course of collecting them, I have came across quite a few of them that simply do not work, many fail to model the screen grid current, or grossly under or over estimating it.
The making of an accurate pentode SPICE code generator
The first idea is to modify Dmitry’s PaintKIP using other models,
got pretty far but it seems the number of parameters and the names of the parameters could not be changed. Hopefully, Dmitry will share his source code, so modifications could be made to the java code.
Another idea is like what Steve Bench has done for LTSpice with the tube builder, but this is not as direct as PaintKIP, since the new codes need to be simulated, then plotted and compared to the datasheet – so the process is not interactive.
Yet another idea to use Teodoro’s Excel worksheet to generate new codes, again, this process is not interactive, but at least the curve capture part is “up front” and takes some of the guesswork from the LTSpice method, out of the way.
Still there are some interactive worksheets done in Excel that may offer a solution, I will look into to them today, hopefully something useful will turn up.
Got some great tips from Dmitry, the creator of PaintKIT and PaintKIP:
“Once you get over the javac hurdles, you are ready to roll this further. You can add any number of parameters, change names, etc. Each parameter is defined by WITH_SLIDER name initval form and that results in the class having a double name = initval; instance field as well as corresponding controls. You use such paramters inside the body of double model(double Ep, double Eg)…method. You also use them in the comment to it which gets printed out as SPICE model text. When it is printed out, code between ? and ? is evaluated and this is how the values show up in the model printed out.”
Indeed, after some re-coding, the Rydel-variant PaintKIP is working… but the results do not seem to work that well in the sim – more work is needed. My suspicion is that the equations that I used for the Rydel model were in-correct, as there are quite a few variants floating around – it is also impossible to locate a copy of Rydel’s AES article online, so I read it for myself.
Today I receive a prototye version of PaintKIT from Dmitry, and it’s very much new and improved! Really looking forward to its official realease, it’s yet another great tool to add to the tube modeling arsenal! Dmitry may eventually upgrade the PaintKIP app, which is something I am really looking forward to, since currently, there just isn’t any good tool that can collect, tweak and generate the pentode model codes. I should know, since I have tried them all!
Using Teodoro’s Excel worksheet, I made a new version with the Rydel equation, which gave some odd results in the simulator, but probably worth exploring somemore…
Current plan of action:
– improve the equations used in PaintKIP;
– Use Derive to solve the equations (for non-Koren models);
– Use Motega to optimize/solve the equations (thanks to Jeroen for the source code!)
Made some good progress today, I managed to build a bunch of pentode model generators based on Dmitry’s java code generator and PaintKIP java app. Here are some examples using Robert McLean’s customized pentode models: