I have adjusted the above model using a traced triode curve: KT150 curves by Sofia - diyAudio, new code:The following KT150 LTSpice model used reference to this some data refered to in this article "Extract Koren Parameters for KT150". Pentode curve looks close but there is no other triode mode curve to compare with, so you see how it turns out with this one.
Code:**** KT150 ****************************************** * Created on 04/26/2020 12:51 using paint_kip.jar * [URL="http://www.dmitrynizh.com/tubeparams_image.htm"]www.dmitrynizh.com/tubeparams_image.htm[/URL] * Plate Curves image file: kt150.png * Data source link: <plate curves URL> *---------------------------------------------------------------------------------- .SUBCKT KT150 P G2 G K ; LTSpice tetrode.asy pinout * .SUBCKT KT150 P G K G2 ; Koren Pentode Pspice pinout + PARAMS: MU=10.77 KG1=475.4 KP=28.6 KVB=14.23 VCT=0 EX=1.35 KG2=886.91 KNEE=11.86 KVC=1.66 + KLAMG=5.513E-4 KNEE2=20 KNEX=30 KNK=-0.044 KNG=0.006 KNPL=50 KNSL=11 KNPR=120 KNSR=29 + CCG=14P CGP=0.85P CCP=12P RGI=2000.0 * Vp_MAX=500 Ip_MAX=360 Vg_step=5 Vg_start=5 Vg_count=15 * X_MIN=51 Y_MIN=87 X_SIZE=619 Y_SIZE=570 FSZ_X=1296 FSZ_Y=736 XYGrid=false * Rp=1400 Vg_ac=20 P_max=70 Vg_qui=-30 Vp_qui=300 * showLoadLine=n showIp=y isDHP=n isPP=n isAsymPP=n isUL=n showDissipLimit=y * showIg1=n isInputSnapped=y addLocalNFB=n * XYProjections=n harmonicPlot=y dissipPlot=n * UL=0.43 EG2=225 gridLevel2=n addKink=y isTanhKnee=y advSigmoid=n *---------------------------------------------------------------------------------- RE1 7 0 1G ; DUMMY SO NODE 7 HAS 2 CONNECTIONS E1 7 0 VALUE= ; E1 BREAKS UP LONG EQUATION FOR G1. +{V(G2,K)/KP*LOG(1+EXP((1/MU+(VCT+V(G,K))/SQRT(KVB+V(G2,K)*V(G2,K)))*KP))} RE2 6 0 1G ; DUMMY SO NODE 6 HAS 2 CONNECTIONS E2 6 0 VALUE={(PWR(V(7),EX)+PWRS(V(7),EX))} ; Kg1 times KIT current RE21 21 0 1 E21 21 0 VALUE={V(6)/KG1*ATAN((V(P,K)+KNEX)/KNEE)*TANH(V(P,K)/KNEE2)} ; Ip with knee but no slope and no kink RE22 22 0 1 ; E22: kink curr deviation for plate E22 22 0 VALUE={V(21)*LIMIT(KNK-V(G,K)*KNG,0,0.3)*(-ATAN((V(P,K)-KNPL)/KNSL)+ATAN((V(P,K)-KNPR)/KNSR))} G1 P K VALUE={V(21)*(1+KLAMG*V(P,K)) + V(22)} * Alexander Gurskii screen current, see audioXpress 2/2011, with slope and kink added RE43 43 K 1G ; Dummy E43 43 G2 VALUE={0} ; Dummy G2 43 K VALUE={V(6)/KG2*(KVC-ATAN((V(P,K)+KNEX)/KNEE)*TANH(V(P,K)/KNEE2))/(1+KLAMG*V(P,K))-V(22)} RCP P K 1G ; FOR CONVERGENCE C1 K G {CCG} ; CATHODE-GRID 1 C2 G P {CGP} ; GRID 1-PLATE C3 K P {CCP} ; CATHODE-PLATE R1 G 5 {RGI} ; FOR GRID CURRENT D3 5 K DX ; FOR GRID CURRENT } .MODEL DX D(IS=1N RS=1 CJO=10PF TT=1N) .ENDS *$ * The following triode model is derived from pentode model, see above. * In the triode model, all spice parameters come directly from the pentode model, except for Kg1, * which for triode-strapped pentodes is derived from pentode's Kg1, Kg2 and Kvc as * * 4Kg1Kg2 / ((2Kvc-Pi)(2Kg1+PiKg2)) **** KT150 ****************************************** * Created on 04/26/2020 12:51 using paint_kit.jar 4.7 * [URL="http://www.dmitrynizh.com/tubeparams_image.htm"]www.dmitrynizh.com/tubeparams_image.htm[/URL] * Plate Curves image file: kt150.png * Data source link: <plate curves URL> *---------------------------------------------------------------------------------- .SUBCKT TRIODE_KT150 1 2 3 ; Plate Grid Cathode + PARAMS: CCG=14P CGP=0.85P CCP=12P RGI=2000 + MU=10.77 KG1=2528.27 KP=28.6 KVB=14.23 VCT=0 EX=1.35 * Vp_MAX=500 Ip_MAX=360 Vg_step=5 Vg_start=5 Vg_count=15 * Rp=1400 Vg_ac=20 P_max=70 Vg_qui=-30 Vp_qui=300 * X_MIN=51 Y_MIN=87 X_SIZE=619 Y_SIZE=570 FSZ_X=1296 FSZ_Y=736 XYGrid=false * showLoadLine=n showIp=y isDHT=n isPP=n isAsymPP=n showDissipLimit=y * showIg1=n gridLevel2=n isInputSnapped=y * XYProjections=n harmonicPlot=y dissipPlot=n *---------------------------------------------------------------------------------- E1 7 0 VALUE={V(1,3)/KP*LOG(1+EXP(KP*(1/MU+(VCT+V(2,3))/SQRT(KVB+V(1,3)*V(1,3)))))} RE1 7 0 1G ; TO AVOID FLOATING NODES G1 1 3 VALUE={(PWR(V(7),EX)+PWRS(V(7),EX))/KG1} RCP 1 3 1G ; TO AVOID FLOATING NODES C1 2 3 {CCG} ; CATHODE-GRID C2 2 1 {CGP} ; GRID=PLATE C3 1 3 {CCP} ; CATHODE-PLATE D3 5 3 DX ; POSITIVE GRID CURRENT R1 2 5 {RGI} ; POSITIVE GRID CURRENT .MODEL DX D(IS=1N RS=1 CJO=10PF TT=1N) .ENDS *$
Code:
**** KT150 ******************************************
* Created on 09/06/2020 15:59 using paint_kip.jar
* [URL="http://www.dmitrynizh.com/tubeparams_image.htm"]Model Paint Tools: Trace Tube Parameters over Plate Curves, Interactively[/URL]
* Plate Curves image file: kt150.png
* Data source link: <plate curves URL>
*----------------------------------------------------------------------------------
.SUBCKT KT150 P G2 G K ; LTSpice tetrode.asy pinout
* .SUBCKT KT150 P G K G2 ; Koren Pentode Pspice pinout
+ PARAMS: MU=8.831 KG1=684.58 KP=44.04 KVB=150.27 VCT=-1 EX=1.35 KG2=886.91 KNEE=12.57 KVC=1.66
+ KLAMG=4.41E-4 KNEE2=14.49 KNEX=21.55 KNK=-0.06737 KNG=0.008037 KNPL=0.455 KNSL=5.465 KNPR=102 KNSR=26.97
+ CCG=14P CGP=0.85P CCP=12P VGOFF=-1.5 IGA=0.002788 IGB=0.156 IGC=6.16 IGEX=1.86
* Vp_MAX=500 Ip_MAX=360 Vg_step=5 Vg_start=10 Vg_count=17
* X_MIN=38 Y_MIN=34 X_SIZE=642 Y_SIZE=593 FSZ_X=1296 FSZ_Y=736 XYGrid=false
* Rp=1400 Vg_ac=20 P_max=70 Vg_qui=-30 Vp_qui=300
* showLoadLine=n showIp=y isDHP=n isPP=n isAsymPP=n isUL=n showDissipLimit=y
* showIg1=y isInputSnapped=y addLocalNFB=n
* XYProjections=n harmonicPlot=y dissipPlot=n
* UL=0.43 EG2=225 gridLevel2=y addKink=y isTanhKnee=y advSigmoid=n
*----------------------------------------------------------------------------------
RE1 7 0 1G ; DUMMY SO NODE 7 HAS 2 CONNECTIONS
E1 7 0 VALUE= ; E1 BREAKS UP LONG EQUATION FOR G1.
+{V(G2,K)/KP*LOG(1+EXP((1/MU+(VCT+V(G,K))/SQRT(KVB+V(G2,K)*V(G2,K)))*KP))}
RE2 6 0 1G ; DUMMY SO NODE 6 HAS 2 CONNECTIONS
E2 6 0 VALUE={(PWR(V(7),EX)+PWRS(V(7),EX))} ; Kg1 times KIT current
RE21 21 0 1
E21 21 0 VALUE={V(6)/KG1*ATAN((V(P,K)+KNEX)/KNEE)*TANH(V(P,K)/KNEE2)} ; Ip with knee but no slope and no kink
RE22 22 0 1 ; E22: kink curr deviation for plate
E22 22 0 VALUE={V(21)*LIMIT(KNK-V(G,K)*KNG,0,0.3)*(-ATAN((V(P,K)-KNPL)/KNSL)+ATAN((V(P,K)-KNPR)/KNSR))}
G1 P K VALUE={V(21)*(1+KLAMG*V(P,K)) + V(22)}
* Alexander Gurskii screen current, see audioXpress 2/2011, with slope and kink added
RE43 43 K 1G ; Dummy
E43 43 G2 VALUE={0} ; Dummy
G2 43 K VALUE={V(6)/KG2*(KVC-ATAN((V(P,K)+KNEX)/KNEE)*TANH(V(P,K)/KNEE2))/(1+KLAMG*V(P,K))-V(22)}
RCP P K 1G ; FOR CONVERGENCE
C1 K G {CCG} ; CATHODE-GRID 1
C2 G P {CGP} ; GRID 1-PLATE
C3 K P {CCP} ; CATHODE-PLATE
RE23 G 0 1G
GG G K VALUE={(IGA+IGB/(IGC+V(P,K)))*(MU/KG1)*
+(PWR(V(G,K)-VGOFF,IGEX)+PWRS(V(G,K)-VGOFF,IGEX))}
.ENDS
*$
Attachments
Last edited:
Hello.
Anyone have the pentode model QB3.5 / 750?
https://frank.pocnet.net/sheets/030/q/QB3.5-750.pdf
Thanks
Piotr
Anyone have the pentode model QB3.5 / 750?
https://frank.pocnet.net/sheets/030/q/QB3.5-750.pdf
Thanks
Piotr
Vacuum Tube SPICE Models
Attached is UL simulation in LTspice based on:
Improved vacuum tube models for SPICE – Interface Technologies
Vg2 is the screen voltage initially assigned to Pentode curve as specified in the datasheet, so it should follow the model, not arbitrary value.
KT150 in 43%UL mode and comparison is also attached. I have ran other tube model and seem it's working well, welcome any comment.
Attached is UL simulation in LTspice based on:
Improved vacuum tube models for SPICE – Interface Technologies
Vg2 is the screen voltage initially assigned to Pentode curve as specified in the datasheet, so it should follow the model, not arbitrary value.
KT150 in 43%UL mode and comparison is also attached. I have ran other tube model and seem it's working well, welcome any comment.
Attachments
Last edited:
Which model would you prefer: Vg2=300, 500 or 1000V?Hello.
Anyone have the pentode model QB3.5 / 750?
https://frank.pocnet.net/sheets/030/q/QB3.5-750.pdf
Thanks
Piotr
qb3.5-750 model:
Code:
* [url=http://www.dmitrynizh.com/tubeparams_image.htm]Model Paint Tools: Trace Tube Parameters over Plate Curves, Interactively[/url]
* Plate Curves image file: qb3.5-750_P.png
* Data source link: <plate curves URL>
*----------------------------------------------------------------------------------
.SUBCKT QB3 P G2 G K ; LTSpice tetrode.asy pinout
* .SUBCKT QB3 P G K G2 ; Koren Pentode Pspice pinout
+ PARAMS: MU=5.1 KG1=510.97 KP=52.53 KVB=3671.05 VCT=-19.65 EX=1.08 KG2=549.77 KNEE=26.74 KVC=1.571
+ KLAM=2E-6 KLAMG=6.061E-5 KD=8.967E-5 KC=0.04329 KR1=6.5E-5 KR2=0.1216 KVBG=0.02385 KB1=0.92 KB2=2.1 KB3=0.02125 KB4=0.3025 KVBGI=0.00102 KNK=-1.5 KNG=0.006 KNPL=50 KNSL=11 KNPR=118.8 KNSR=26.72
+ CCG=0.12P CGP=12.7P CCP=4.5P VGOFF=-5 IGA=3.65E-4 IGB=0.027 IGC=8 IGEX=2
* Vp_MAX=4000 Ip_MAX=3500 Vg_step=50 Vg_start=250 Vg_count=20
* X_MIN=46 Y_MIN=14 X_SIZE=695 Y_SIZE=603 FSZ_X=1296 FSZ_Y=736 XYGrid=false
* Rp=1400 Vg_ac=20 P_max=1250 Vg_qui=-225 Vp_qui=300
* showLoadLine=n showIp=y isDHP=n isPP=n isAsymPP=n isUL=n showDissipLimit=y
* showIg1=y isInputSnapped=y addLocalNFB=n
* XYProjections=n harmonicPlot=y dissipPlot=n
* UL=0.43 EG2=300 gridLevel2=y addKink=y isTanhKnee=n advSigmoid=y
*----------------------------------------------------------------------------------
RE1 7 0 1G ; DUMMY SO NODE 7 HAS 2 CONNECTIONS
E1 7 0 VALUE= ; E1 BREAKS UP LONG EQUATION FOR G1.
+{V(G2,K)/KP*LOG(1+EXP((1/MU+(VCT+V(G,K))/SQRT(KVB+V(G2,K)*V(G2,K)))*KP))}
RE2 6 0 1G ; DUMMY SO NODE 6 HAS 2 CONNECTIONS
E2 6 0 VALUE={(PWR(V(7),EX)+PWRS(V(7),EX))} ; Kg1 times KIT current
E4 8 0 VALUE={V(P,K)/KNEE/(KVBGI+V(6)*KVBG)}
E5 81 0 VALUE={PWR(V(8),KB1)}
E6 82 0 VALUE={PWR(V(8),KB2)}
E7 83 0 VALUE={PWR(V(8),KB3)}
E8 9 0 VALUE={PWR(1-EXP(-V(81)*(KC+KR1*V(82))/(KD+KR2*V(83))),KB4)*1.5708}
RE4 8 0 1
RE5 81 0 1
RE6 82 0 1
RE7 83 0 1
RE8 9 0 1
RE21 21 0 1
E21 21 0 VALUE={V(6)/KG1*V(9)} ; Ip with knee but no slope and no kink
RE22 22 0 1 ; E22: kink curr deviation for plate
E22 22 0 VALUE={V(21)*LIMIT(KNK-V(G,K)*KNG,0,0.3)*(-ATAN((V(P,K)-KNPL)/KNSL)+ATAN((V(P,K)-KNPR)/KNSR))}
G1 P K VALUE={V(21)*(1+KLAMG*V(P,K))+KLAM*V(P,K) + V(22)}
G2 G2 K VALUE={V(6)/KG2*(KVC-V(9))/(1+KLAMG*V(P,K)) - V(22)}
RCP P K 1G ; FOR CONVERGENCE
C1 K G {CCG} ; CATHODE-GRID 1
C2 G P {CGP} ; GRID 1-PLATE
C3 K P {CCP} ; CATHODE-PLATE
RE23 G 0 1G
GG G K VALUE={(IGA+IGB/(IGC+V(P,K)))*(MU/KG1)*
+(PWR(V(G,K)-VGOFF,IGEX)+PWRS(V(G,K)-VGOFF,IGEX))}
.ENDS
*$
Attachments
I have posted Pentode/UL mode before, now attached is Pentode/Tiode and UL/Triode curves, welcome any comment. Attached simulation asc will enable one to plot one or all of the pentode, UL and triode curves in one sheet.
Attachments
Here is another use of mode switch to determine overall THD and which UL% is least THD distortion.
Attachments
-
PENTODE CHARACTERISTIC CURVES output stages plot-1.png81.6 KB · Views: 355
-
PENTODE CHARACTERISTIC CURVES output stages plot-2.png91 KB · Views: 348
-
PENTODE CHARACTERISTIC CURVES output stages.asc10.1 KB · Views: 100
-
PENTODE CHARACTERISTIC CURVES output stages-2.txt12 KB · Views: 75
-
PENTODE CHARACTERISTIC CURVES output stages-1.txt2.7 KB · Views: 64
Does anyone have a good SPICE model for 805 tubes (better modern ones made in China)? I tried use one found here Tube Models for TINA but simulation does not match measurements of real device.
805 Amperex model:
Code:
**** 805 ** Advanced Grid Current **********************************
* Created on 09/10/2020 14:49 using paint_kit.jar 3.1
* [url=http://www.dmitrynizh.com/tubeparams_image.htm]Model Paint Tools: Trace Tube Parameters over Plate Curves, Interactively[/url]
* Plate Curves image file: 805.png
* Data source link:
*----------------------------------------------------------------------------------
.SUBCKT TRIODE_805 1 2 3 ; Plate Grid Cathode
+ PARAMS: CCG=6.5P CGP=6.5P CCP=1.5P
+ MU=48.14 KG1=4306.46 KP=324 KVB=2230.08 VCT=3.44 EX=1.527
+ VGOFF=-5.88 IGA=1.755E-4 IGB=0.5242 IGC=0.94 IGEX=1.62
* Vp_MAX=3000 Ip_MAX=900 Vg_step=20 Vg_start=120 Vg_count=11
* Rp=4000 Vg_ac=55 P_max=125 Vg_qui=-48 Vp_qui=300
* X_MIN=94 Y_MIN=67 X_SIZE=424 Y_SIZE=514 FSZ_X=1296 FSZ_Y=736 XYGrid=false
* showLoadLine=n showIp=y isDHT=n isPP=n isAsymPP=n showDissipLimit=y
* showIg1=y gridLevel2=y isInputSnapped=n
* XYProjections=n harmonicPlot=n dissipPlot=n
*----------------------------------------------------------------------------------
E1 7 0 VALUE={V(1,3)/KP*LOG(1+EXP(KP*(1/MU+(VCT+V(2,3))/SQRT(KVB+V(1,3)*V(1,3)))))}
RE1 7 0 1G ; TO AVOID FLOATING NODES
G1 1 3 VALUE={(PWR(V(7),EX)+PWRS(V(7),EX))/KG1}
RCP 1 3 1G ; TO AVOID FLOATING NODES
C1 2 3 {CCG} ; CATHODE-GRID
C2 2 1 {CGP} ; GRID=PLATE
C3 1 3 {CCP} ; CATHODE-PLATE
RE2 2 0 1G
EGC 8 0 VALUE={V(2,3)-VGOFF} ; POSITIVE GRID THRESHOLD
GG 2 3 VALUE={(IGA+IGB/(IGC+V(1,3)))*(MU/KG1)*(PWR(V(8),IGEX)+PWRS(V(8),IGEX))}
.ENDS
*$
Attachments
805 Chinese model:
Code:
**** 805 ** Advanced Grid Current **********************************
* Created on 09/10/2020 16:15 using paint_kit.jar 3.1
* [url=http://www.dmitrynizh.com/tubeparams_image.htm]Model Paint Tools: Trace Tube Parameters over Plate Curves, Interactively[/url]
* Plate Curves image file: 805-ch.png
* Data source link:
*----------------------------------------------------------------------------------
.SUBCKT 805_CH 1 2 3 ; Plate Grid Cathode
+ PARAMS: CCG=8.5P CGP=6.5P CCP=10.5P
+ MU=45.82 KG1=2125.1 KP=9347.79 KVB=5494.91 VCT=-11.52 EX=1.406
+ VGOFF=-5.116 IGA=2.028E-4 IGB=0.1561 IGC=84.97 IGEX=1.768
* Vp_MAX=1500 Ip_MAX=1000 Vg_step=20 Vg_start=140 Vg_count=11
* Rp=4000 Vg_ac=55 P_max=125 Vg_qui=-48 Vp_qui=300
* X_MIN=62 Y_MIN=5 X_SIZE=622 Y_SIZE=586 FSZ_X=1296 FSZ_Y=736 XYGrid=false
* showLoadLine=n showIp=y isDHT=n isPP=n isAsymPP=n showDissipLimit=y
* showIg1=y gridLevel2=y isInputSnapped=n
* XYProjections=n harmonicPlot=n dissipPlot=n
*----------------------------------------------------------------------------------
E1 7 0 VALUE={V(1,3)/KP*LOG(1+EXP(KP*(1/MU+(VCT+V(2,3))/SQRT(KVB+V(1,3)*V(1,3)))))}
RE1 7 0 1G ; TO AVOID FLOATING NODES
G1 1 3 VALUE={(PWR(V(7),EX)+PWRS(V(7),EX))/KG1}
RCP 1 3 1G ; TO AVOID FLOATING NODES
C1 2 3 {CCG} ; CATHODE-GRID
C2 2 1 {CGP} ; GRID=PLATE
C3 1 3 {CCP} ; CATHODE-PLATE
RE2 2 0 1G
EGC 8 0 VALUE={V(2,3)-VGOFF} ; POSITIVE GRID THRESHOLD
GG 2 3 VALUE={(IGA+IGB/(IGC+V(1,3)))*(MU/KG1)*(PWR(V(8),IGEX)+PWRS(V(8),IGEX))}
.ENDS
*$
Attachments
805 Chinese model does not plot properly I'll look into it. Here is Ayumi model, it's close to Amperex:
HIFIDIY??-???FU81???NI MULTISIM?????14? - Powered by Discuz!
HIFIDIY??-???FU81???NI MULTISIM?????14? - Powered by Discuz!
Code:
*
* Generic triode model: 805
* Copyright 2003--2008 by Ayumi Nakabayashi, All rights reserved.
* Version 3.10, Generated on Sat Aug 01 11:40:19 2009
* Plate
* | Grid
* | | Cathode
* | | |
.SUBCKT 2 A G K
.PARAM X1=-1 X2=0.19254103 X3=-16.929908
.PARAM X4=0.081389445 X5=4.7709859 X6=18.429908
.PARAM X7=0.00078806053 X8=58.619221 X9=5.2042766e+14
.PARAM Y1=0.00039403026 Y2=0.00041428161
BK IK 0 V=U(V(G,K)+X1)*X7*URAMP(V(G,K)+X1+URAMP(V(A,K))/X8)**1.5+(1-U(V(G,K)+X1))*X9*(X2*URAMP(V(A,K)))**X3*(X4*URAMP(V(G,K)+X1+URAMP(V(A,K))/X5))**X6
BA A K I=URAMP((Y2*URAMP(V(A,K))**1.5)-URAMP((Y2*URAMP(V(A,K))**1.5)-V(IK)+Y1*URAMP(V(G,K))**1.5*(URAMP(V(G,K))/(URAMP(V(A,K))+URAMP(V(G,K)))*1.2+.4)))+1E-10*V(A,K)
BG G K I=Y1*URAMP(V(G,K))**1.5*(URAMP(V(G,K))/(URAMP(V(A,K))+URAMP(V(G,K)))*1.2+.4)
* CAPS
CGA G A 8p
CGK G K 6.5p
CAK A K 5p
.ENDS
805_CH fixed:
Code:
**** 805_CH ** Advanced Grid Current **********************************
* Created on 09/10/2020 19:28 using paint_kit.jar 3.1
* [url=http://www.dmitrynizh.com/tubeparams_image.htm]Model Paint Tools: Trace Tube Parameters over Plate Curves, Interactively[/url]
* Plate Curves image file: 805-ch.png
* Data source link:
*----------------------------------------------------------------------------------
.SUBCKT 805_CH 1 2 3 ; Plate Grid Cathode
+ PARAMS: CCG=6.5P CGP=6.5P CCP=1.5P
+ MU=45.25 KG1=3617.43 KP=356.4 KVB=6511.83 VCT=-9.04 EX=1.527
+ VGOFF=-5.88 IGA=5.265E-5 IGB=0.0498 IGC=80.01 IGEX=2.122
* Vp_MAX=1800 Ip_MAX=900 Vg_step=20 Vg_start=140 Vg_count=11
* Rp=4000 Vg_ac=55 P_max=125 Vg_qui=-48 Vp_qui=300
* X_MIN=61 Y_MIN=67 X_SIZE=749 Y_SIZE=523 FSZ_X=1296 FSZ_Y=736 XYGrid=true
* showLoadLine=n showIp=y isDHT=n isPP=n isAsymPP=n showDissipLimit=y
* showIg1=y gridLevel2=y isInputSnapped=n
* XYProjections=n harmonicPlot=n dissipPlot=n
*----------------------------------------------------------------------------------
E1 7 0 VALUE={V(1,3)/KP*LOG(1+EXP(KP*(1/MU+(VCT+V(2,3))/SQRT(KVB+V(1,3)*V(1,3)))))}
RE1 7 0 1G ; TO AVOID FLOATING NODES
G1 1 3 VALUE={(PWR(V(7),EX)+PWRS(V(7),EX))/KG1}
RCP 1 3 1G ; TO AVOID FLOATING NODES
C1 2 3 {CCG} ; CATHODE-GRID
C2 2 1 {CGP} ; GRID=PLATE
C3 1 3 {CCP} ; CATHODE-PLATE
RE2 2 0 1G
EGC 8 0 VALUE={V(2,3)-VGOFF} ; POSITIVE GRID THRESHOLD
GG 2 3 VALUE={(IGA+IGB/(IGC+V(1,3)))*(MU/KG1)*(PWR(V(8),IGEX)+PWRS(V(8),IGEX))}
.ENDS
*$
Attachments
Here are generic push pull loadline of pentode, UL and triode mode for sharing.
Attachments
-
load_generic_pp step mod-pentode.asc7.6 KB · Views: 81
-
load_generic_pp step mod-1.asc4.8 KB · Views: 62
-
load_generic_pp step mod-ul.asc7.8 KB · Views: 79
-
composite KT150 triode PP LL5.png126 KB · Views: 98
-
composite KT150 Pentode PP LL7.png102.1 KB · Views: 150
-
composite KT150 UL PP LL8.png107.3 KB · Views: 140
-
composite UL PP LL9.png126.4 KB · Views: 109
-
composite 6C33CB PP LL4.png119.5 KB · Views: 93
Last edited:
qb3.5-750 model:
Code:* [URL="http://www.dmitrynizh.com/tubeparams_image.htm"]Model Paint Tools: Trace Tube Parameters over Plate Curves, Interactively[/URL] * Plate Curves image file: qb3.5-750_P.png * Data source link: <plate curves URL> *---------------------------------------------------------------------------------- .SUBCKT QB3 P G2 G K ; LTSpice tetrode.asy pinout * .SUBCKT QB3 P G K G2 ; Koren Pentode Pspice pinout + PARAMS: MU=5.1 KG1=510.97 KP=52.53 KVB=3671.05 VCT=-19.65 EX=1.08 KG2=549.77 KNEE=26.74 KVC=1.571 + KLAM=2E-6 KLAMG=6.061E-5 KD=8.967E-5 KC=0.04329 KR1=6.5E-5 KR2=0.1216 KVBG=0.02385 KB1=0.92 KB2=2.1 KB3=0.02125 KB4=0.3025 KVBGI=0.00102 KNK=-1.5 KNG=0.006 KNPL=50 KNSL=11 KNPR=118.8 KNSR=26.72 + CCG=0.12P CGP=12.7P CCP=4.5P VGOFF=-5 IGA=3.65E-4 IGB=0.027 IGC=8 IGEX=2 * Vp_MAX=4000 Ip_MAX=3500 Vg_step=50 Vg_start=250 Vg_count=20 * X_MIN=46 Y_MIN=14 X_SIZE=695 Y_SIZE=603 FSZ_X=1296 FSZ_Y=736 XYGrid=false * Rp=1400 Vg_ac=20 P_max=1250 Vg_qui=-225 Vp_qui=300 * showLoadLine=n showIp=y isDHP=n isPP=n isAsymPP=n isUL=n showDissipLimit=y * showIg1=y isInputSnapped=y addLocalNFB=n * XYProjections=n harmonicPlot=y dissipPlot=n * UL=0.43 EG2=300 gridLevel2=y addKink=y isTanhKnee=n advSigmoid=y *---------------------------------------------------------------------------------- RE1 7 0 1G ; DUMMY SO NODE 7 HAS 2 CONNECTIONS E1 7 0 VALUE= ; E1 BREAKS UP LONG EQUATION FOR G1. +{V(G2,K)/KP*LOG(1+EXP((1/MU+(VCT+V(G,K))/SQRT(KVB+V(G2,K)*V(G2,K)))*KP))} RE2 6 0 1G ; DUMMY SO NODE 6 HAS 2 CONNECTIONS E2 6 0 VALUE={(PWR(V(7),EX)+PWRS(V(7),EX))} ; Kg1 times KIT current E4 8 0 VALUE={V(P,K)/KNEE/(KVBGI+V(6)*KVBG)} E5 81 0 VALUE={PWR(V(8),KB1)} E6 82 0 VALUE={PWR(V(8),KB2)} E7 83 0 VALUE={PWR(V(8),KB3)} E8 9 0 VALUE={PWR(1-EXP(-V(81)*(KC+KR1*V(82))/(KD+KR2*V(83))),KB4)*1.5708} RE4 8 0 1 RE5 81 0 1 RE6 82 0 1 RE7 83 0 1 RE8 9 0 1 RE21 21 0 1 E21 21 0 VALUE={V(6)/KG1*V(9)} ; Ip with knee but no slope and no kink RE22 22 0 1 ; E22: kink curr deviation for plate E22 22 0 VALUE={V(21)*LIMIT(KNK-V(G,K)*KNG,0,0.3)*(-ATAN((V(P,K)-KNPL)/KNSL)+ATAN((V(P,K)-KNPR)/KNSR))} G1 P K VALUE={V(21)*(1+KLAMG*V(P,K))+KLAM*V(P,K) + V(22)} G2 G2 K VALUE={V(6)/KG2*(KVC-V(9))/(1+KLAMG*V(P,K)) - V(22)} RCP P K 1G ; FOR CONVERGENCE C1 K G {CCG} ; CATHODE-GRID 1 C2 G P {CGP} ; GRID 1-PLATE C3 K P {CCP} ; CATHODE-PLATE RE23 G 0 1G GG G K VALUE={(IGA+IGB/(IGC+V(P,K)))*(MU/KG1)* +(PWR(V(G,K)-VGOFF,IGEX)+PWRS(V(G,K)-VGOFF,IGEX))} .ENDS *$
Have some problems with simulation at some point it does not converge and stop, here is the update:
Code:
**** QB3 ******************************************
* Created on 09/13/2020 11:25 using paint_kip.jar
* [URL="http://www.dmitrynizh.com/tubeparams_image.htm"]www.dmitrynizh.com/tubeparams_image.htm[/URL]
* Plate Curves image file: qb3.5-750_P.png
* Data source link: <plate curves URL>
*----------------------------------------------------------------------------------
.SUBCKT QB3 P G2 G K ; LTSpice tetrode.asy pinout
* .SUBCKT QB3 P G K G2 ; Koren Pentode Pspice pinout
+ PARAMS: MU=5.1 KG1=510.97 KP=17.37 KVB=4588.81 VCT=-19.65 EX=1.08 KG2=549.77 KNEE=26.74 KVC=1.571
+ KLAM=2E-6 KLAMG=6.061E-5 KD=8.967E-5 KC=0.04329 KR1=6.5E-5 KR2=0.1216 KVBG=0.02385 KB1=0.92 KB2=2.1 KB3=0.02125 KB4=0.3025 KVBGI=0.00102 KNK=-1.5 KNG=0.006 KNPL=50 KNSL=11 KNPR=118.8 KNSR=26.72
+ CCG=0.12P CGP=12.7P CCP=4.5P VGOFF=-5 IGA=3.65E-4 IGB=0.027 IGC=8 IGEX=2
* Vp_MAX=4000 Ip_MAX=3500 Vg_step=25 Vg_start=250 Vg_count=20
* X_MIN=46 Y_MIN=14 X_SIZE=695 Y_SIZE=603 FSZ_X=1296 FSZ_Y=736 XYGrid=false
* Rp=1400 Vg_ac=20 P_max=1250 Vg_qui=12.5 Vp_qui=300
* showLoadLine=n showIp=y isDHP=n isPP=n isAsymPP=n isUL=n showDissipLimit=y
* showIg1=y isInputSnapped=y addLocalNFB=n
* XYProjections=n harmonicPlot=y dissipPlot=n
* UL=0.43 EG2=300 gridLevel2=y addKink=y isTanhKnee=n advSigmoid=y
*----------------------------------------------------------------------------------
RE1 7 0 1G ; DUMMY SO NODE 7 HAS 2 CONNECTIONS
E1 7 0 VALUE= ; E1 BREAKS UP LONG EQUATION FOR G1.
+{V(G2,K)/KP*LOG(1+EXP((1/MU+(VCT+V(G,K))/SQRT(KVB+V(G2,K)*V(G2,K)))*KP))}
RE2 6 0 1G ; DUMMY SO NODE 6 HAS 2 CONNECTIONS
E2 6 0 VALUE={(PWR(V(7),EX)+PWRS(V(7),EX))} ; Kg1 times KIT current
E4 8 0 VALUE={V(P,K)/KNEE/(KVBGI+V(6)*KVBG)}
E5 81 0 VALUE={PWR(V(8),KB1)}
E6 82 0 VALUE={PWR(V(8),KB2)}
E7 83 0 VALUE={PWR(V(8),KB3)}
E8 9 0 VALUE={PWR(1-EXP(-V(81)*(KC+KR1*V(82))/(KD+KR2*V(83))),KB4)*1.5708}
RE4 8 0 1
RE5 81 0 1
RE6 82 0 1
RE7 83 0 1
RE8 9 0 1
RE21 21 0 1
E21 21 0 VALUE={V(6)/KG1*V(9)} ; Ip with knee but no slope and no kink
RE22 22 0 1 ; E22: kink curr deviation for plate
E22 22 0 VALUE={V(21)*LIMIT(KNK-V(G,K)*KNG,0,0.3)*(-ATAN((V(P,K)-KNPL)/KNSL)+ATAN((V(P,K)-KNPR)/KNSR))}
G1 P K VALUE={V(21)*(1+KLAMG*V(P,K))+KLAM*V(P,K) + V(22)}
G2 G2 K VALUE={V(6)/KG2*(KVC-V(9))/(1+KLAMG*V(P,K)) - V(22)}
RCP P K 1G ; FOR CONVERGENCE
C1 K G {CCG} ; CATHODE-GRID 1
C2 G P {CGP} ; GRID 1-PLATE
C3 K P {CCP} ; CATHODE-PLATE
RE23 G 0 1G
GG G K VALUE={(IGA+IGB/(IGC+V(P,K)))*(MU/KG1)*
+(PWR(V(G,K)-VGOFF,IGEX)+PWRS(V(G,K)-VGOFF,IGEX))}
.ENDS
*$
Last edited:
I have adjusted the above model using a traced triode curve: KT150 curves by Sofia - diyAudio, new code:
Code:**** KT150 ****************************************** * Created on 09/06/2020 15:59 using paint_kip.jar * [URL="http://www.dmitrynizh.com/tubeparams_image.htm"]Model Paint Tools: Trace Tube Parameters over Plate Curves, Interactively[/URL] * Plate Curves image file: kt150.png * Data source link: <plate curves URL> *---------------------------------------------------------------------------------- .SUBCKT KT150 P G2 G K ; LTSpice tetrode.asy pinout * .SUBCKT KT150 P G K G2 ; Koren Pentode Pspice pinout + PARAMS: MU=8.831 KG1=684.58 KP=44.04 KVB=150.27 VCT=-1 EX=1.35 KG2=886.91 KNEE=12.57 KVC=1.66 + KLAMG=4.41E-4 KNEE2=14.49 KNEX=21.55 KNK=-0.06737 KNG=0.008037 KNPL=0.455 KNSL=5.465 KNPR=102 KNSR=26.97 + CCG=14P CGP=0.85P CCP=12P VGOFF=-1.5 IGA=0.002788 IGB=0.156 IGC=6.16 IGEX=1.86 * Vp_MAX=500 Ip_MAX=360 Vg_step=5 Vg_start=10 Vg_count=17 * X_MIN=38 Y_MIN=34 X_SIZE=642 Y_SIZE=593 FSZ_X=1296 FSZ_Y=736 XYGrid=false * Rp=1400 Vg_ac=20 P_max=70 Vg_qui=-30 Vp_qui=300 * showLoadLine=n showIp=y isDHP=n isPP=n isAsymPP=n isUL=n showDissipLimit=y * showIg1=y isInputSnapped=y addLocalNFB=n * XYProjections=n harmonicPlot=y dissipPlot=n * UL=0.43 EG2=225 gridLevel2=y addKink=y isTanhKnee=y advSigmoid=n *---------------------------------------------------------------------------------- RE1 7 0 1G ; DUMMY SO NODE 7 HAS 2 CONNECTIONS E1 7 0 VALUE= ; E1 BREAKS UP LONG EQUATION FOR G1. +{V(G2,K)/KP*LOG(1+EXP((1/MU+(VCT+V(G,K))/SQRT(KVB+V(G2,K)*V(G2,K)))*KP))} RE2 6 0 1G ; DUMMY SO NODE 6 HAS 2 CONNECTIONS E2 6 0 VALUE={(PWR(V(7),EX)+PWRS(V(7),EX))} ; Kg1 times KIT current RE21 21 0 1 E21 21 0 VALUE={V(6)/KG1*ATAN((V(P,K)+KNEX)/KNEE)*TANH(V(P,K)/KNEE2)} ; Ip with knee but no slope and no kink RE22 22 0 1 ; E22: kink curr deviation for plate E22 22 0 VALUE={V(21)*LIMIT(KNK-V(G,K)*KNG,0,0.3)*(-ATAN((V(P,K)-KNPL)/KNSL)+ATAN((V(P,K)-KNPR)/KNSR))} G1 P K VALUE={V(21)*(1+KLAMG*V(P,K)) + V(22)} * Alexander Gurskii screen current, see audioXpress 2/2011, with slope and kink added RE43 43 K 1G ; Dummy E43 43 G2 VALUE={0} ; Dummy G2 43 K VALUE={V(6)/KG2*(KVC-ATAN((V(P,K)+KNEX)/KNEE)*TANH(V(P,K)/KNEE2))/(1+KLAMG*V(P,K))-V(22)} RCP P K 1G ; FOR CONVERGENCE C1 K G {CCG} ; CATHODE-GRID 1 C2 G P {CGP} ; GRID 1-PLATE C3 K P {CCP} ; CATHODE-PLATE RE23 G 0 1G GG G K VALUE={(IGA+IGB/(IGC+V(P,K)))*(MU/KG1)* +(PWR(V(G,K)-VGOFF,IGEX)+PWRS(V(G,K)-VGOFF,IGEX))} .ENDS *$
I have adjusted the screen grid2 current down from previous model:
Code:
**** KT150 ******************************************
* Created on 09/18/2020 16:03 using paint_kip.jar
* [URL="http://www.dmitrynizh.com/tubeparams_image.htm"]www.dmitrynizh.com/tubeparams_image.htm[/URL]
* Plate Curves image file: kt150.png
* Data source link: <plate curves URL>
*----------------------------------------------------------------------------------
.SUBCKT KT150 P G2 G K ; LTSpice tetrode.asy pinout
* .SUBCKT KT150 P G K G2 ; Koren Pentode Pspice pinout
+ PARAMS: MU=8.831 KG1=684.58 KP=44.04 KVB=150.27 VCT=-1 EX=1.35 KG2=3157.4 KNEE=12.57 KVC=1.594
+ KLAMG=4.41E-4 KNEE2=14.49 KNEX=21.55 KNK=-0.06737 KNG=0.008037 KNPL=0.455 KNSL=5.465 KNPR=102 KNSR=26.97
+ CCG=14P CGP=0.85P CCP=12P VGOFF=-1.5 IGA=0.002788 IGB=0.156 IGC=6.16 IGEX=1.86
* Vp_MAX=500 Ip_MAX=360 Vg_step=5 Vg_start=10 Vg_count=17
* X_MIN=73 Y_MIN=52 X_SIZE=586 Y_SIZE=544 FSZ_X=1296 FSZ_Y=736 XYGrid=false
* Rp=1400 Vg_ac=20 P_max=70 Vg_qui=-30 Vp_qui=300
* showLoadLine=n showIp=y isDHP=n isPP=n isAsymPP=n isUL=n showDissipLimit=y
* showIg1=y isInputSnapped=y addLocalNFB=n
* XYProjections=n harmonicPlot=y dissipPlot=n
* UL=0.43 EG2=225 gridLevel2=y addKink=y isTanhKnee=y advSigmoid=n
*----------------------------------------------------------------------------------
RE1 7 0 1G ; DUMMY SO NODE 7 HAS 2 CONNECTIONS
E1 7 0 VALUE= ; E1 BREAKS UP LONG EQUATION FOR G1.
+{V(G2,K)/KP*LOG(1+EXP((1/MU+(VCT+V(G,K))/SQRT(KVB+V(G2,K)*V(G2,K)))*KP))}
RE2 6 0 1G ; DUMMY SO NODE 6 HAS 2 CONNECTIONS
E2 6 0 VALUE={(PWR(V(7),EX)+PWRS(V(7),EX))} ; Kg1 times KIT current
RE21 21 0 1
E21 21 0 VALUE={V(6)/KG1*ATAN((V(P,K)+KNEX)/KNEE)*TANH(V(P,K)/KNEE2)} ; Ip with knee but no slope and no kink
RE22 22 0 1 ; E22: kink curr deviation for plate
E22 22 0 VALUE={V(21)*LIMIT(KNK-V(G,K)*KNG,0,0.3)*(-ATAN((V(P,K)-KNPL)/KNSL)+ATAN((V(P,K)-KNPR)/KNSR))}
G1 P K VALUE={V(21)*(1+KLAMG*V(P,K)) + V(22)}
* Alexander Gurskii screen current, see audioXpress 2/2011, with slope and kink added
RE43 43 K 1G ; Dummy
E43 43 G2 VALUE={0} ; Dummy
G2 43 K VALUE={V(6)/KG2*(KVC-ATAN((V(P,K)+KNEX)/KNEE)*TANH(V(P,K)/KNEE2))/(1+KLAMG*V(P,K))-V(22)}
RCP P K 1G ; FOR CONVERGENCE
C1 K G {CCG} ; CATHODE-GRID 1
C2 G P {CGP} ; GRID 1-PLATE
C3 K P {CCP} ; CATHODE-PLATE
RE23 G 0 1G
GG G K VALUE={(IGA+IGB/(IGC+V(P,K)))*(MU/KG1)*
+(PWR(V(G,K)-VGOFF,IGEX)+PWRS(V(G,K)-VGOFF,IGEX))}
.ENDS
*$
- Home
- Amplifiers
- Tubes / Valves
- Vacuum Tube SPICE Models