* Z:\home\khalils\Downloads\files\data\raw_asc\30ea73a42c59_tran_bandpass.asc
* Generated by LTspice 26.0.1 for Windows.
* .ac lin 2001 900k 1100k
* f0 = 1MHz B = 10KHz \n \nBandwidth: B = f2 - f1 f1, f2 frequency at -3dB 10kHz\n \nRisetime 10%,90%: Trise = 0.7 / B 0.07ms(0.7/10kHz)\n \n.TRAN step time: tstep = (1/f1 - 1/f2) = B / (f0 * f0) 10ns
* 4th order, B=6.4KHz
* 2nd order, B=10KHZ
* MINIMUM TIMESTEP CONTROL IN BANDPASS CURCUITS\nHelmut Sennewald 8/28/2004\n \nBandpass circuits require a much smaller timestep in .TRAN simulation.\nA formula will be presented for this number.\n \nTstep = (1/f1 - 1/f2) = B / (f0 * f0) B bandwidth, f0 center frequency\n f1, f2 -3dB frequency\n \nA further result is that for higher than 2nd order bandpass filters an even more\nstringent requirement like half the calculated value may be necessary.\nI also recommend to switch off any compression for highest accuracy,\nCompression off: .options plotwinsize=0\n \n1. Example: Bandpass 2nd order\n \nf0 = 1MHz B = 10KHz \nBandwidth: B = f2 - f1 f1, f2 frequency at -3dB 10kHz\nRisetime 10%,90%: Trise = 0.7 / B 0.07ms(0.7/10kHz)\n.TRAN step time: tstep = (1/f1 - 1/f2) = B / (f0 * f0) 10ns\n \n2. Example: Bandpass 4th order\n \nf0 = 1MHz B = 6.4KHz \nBandwidth: B = f2 - f1 f1, f2 frequency at -3dB 6.4KHz\nRisetime 10%,90%: Trise = 0.7 / B 0.11ms \n.TRAN step time: tstep = (1/f1 - 1/f2) = B / (f0 * f0) 6.4ns
C1 OUT_10KHz 0 {C1} Rser=1u
C2 OUT_6.4KHz 0 {C1} Rser=1u
V1 in 0 SINE(0 1 1e6) AC 1 Rser=1u
L2 OUT_6.4KHz 0 {L1} Rser=1u
R2 N001 OUT_6.4KHz {R1}
L1 OUT_10KHz 0 {L1} Rser=1u
R1 in OUT_10KHz {R1}
E1 N001 0 OUT_10KHz 0 1
.tran 0 0.3m 0 {Ts}
.options plotwinsize=0
.PARAM F0=1e6
.PARAM R1=10e3
.PARAM Q=100
.PARAM L1= R1/(2*PI*F0*Q)
.PARAM C1=1/(2*PI*2*PI*F0*F0*L1)
.STEP PARAM Ts LIST 6.4n 10n 20n 40n
.backanno
.end

* LTspice schematic (.asc):
Version 4
SHEET 1 1132 680
WIRE -304 256 -304 192
WIRE -304 192 -176 192
WIRE -304 336 -304 384
WIRE 16 384 -304 384
WIRE -96 192 16 192
WIRE 144 192 144 240
WIRE 16 240 16 192
WIRE 16 192 144 192
WIRE 16 304 16 384
WIRE 16 384 144 384
WIRE 144 384 144 320
WIRE 16 416 16 384
WIRE 304 272 304 192
WIRE 304 192 144 192
WIRE 304 320 304 384
WIRE 304 384 144 384
WIRE 352 336 352 384
WIRE 352 384 304 384
WIRE 352 256 352 192
WIRE 352 192 464 192
WIRE 544 192 640 192
WIRE 768 192 768 240
WIRE 640 240 640 192
WIRE 640 192 768 192
WIRE 640 304 640 384
WIRE 640 384 768 384
WIRE 768 384 768 320
WIRE 640 416 640 384
WIRE 352 384 640 384
WIRE 144 192 144 112
WIRE 144 112 192 112
WIRE 640 192 640 112
WIRE 640 112 688 112
IOPIN 192 112 Out
IOPIN 688 112 Out
SYMBOL ind 752 224 R0
SYMATTR InstName L2
SYMATTR Value {L1}
SYMATTR SpiceLine Rser=1u
SYMBOL ind 128 224 R0
SYMATTR InstName L1
SYMATTR Value {L1}
SYMATTR SpiceLine Rser=1u
SYMBOL res 448 208 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName R2
SYMATTR Value {R1}
SYMBOL e 352 240 R0
SYMATTR InstName E1
SYMATTR Value 1
SYMBOL cap 624 240 R0
SYMATTR InstName C2
SYMATTR Value {C1}
SYMATTR SpiceLine Rser=1u
SYMBOL voltage -304 240 R0
WINDOW 3 -13 182 Left 0
WINDOW 123 23 110 Left 0
WINDOW 39 37 74 Left 0
SYMATTR Value SINE(0 1 1e6)
SYMATTR Value2 AC 1
SYMATTR SpiceLine Rser=1u
SYMATTR InstName V1
SYMBOL res -192 208 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName R1
SYMATTR Value {R1}
SYMBOL cap 0 240 R0
SYMATTR InstName C1
SYMATTR Value {C1}
SYMATTR SpiceLine Rser=1u
FLAG -304 192 in
FLAG 16 416 0
FLAG 640 416 0
FLAG 192 112 OUT_10KHz
FLAG 688 112 OUT_6.4KHz
TEXT -320 -112 Left 0 ;.ac lin 2001 900k 1100k
TEXT -320 -152 Left 0 !.tran 0 0.3m 0  {Ts}
TEXT 80 -160 Left 0 ;f0 = 1MHz    B = 10KHz     \n \nBandwidth:  B = f2 - f1      f1, f2 frequency at -3dB                 10kHz\n \nRisetime 10%,90%:     Trise = 0.7 / B                            0.07ms(0.7/10kHz)\n  \n.TRAN step time:    tstep = (1/f1 - 1/f2) = B / (f0 * f0)          10ns
TEXT -328 80 Left 0 !.options plotwinsize=0
TEXT -328 -72 Left 0 !.PARAM F0=1e6\n.PARAM R1=10e3\n.PARAM Q=100\n.PARAM L1= R1/(2*PI*F0*Q)\n.PARAM C1=1/(2*PI*2*PI*F0*F0*L1)
TEXT -320 -208 Left 0 !.STEP PARAM Ts LIST   6.4n 10n 20n 40n
TEXT 672 160 Left 0 ;4th order, B=6.4KHz
TEXT 168 160 Left 0 ;2nd order, B=10KHZ
TEXT -320 -1048 Left 0 ;MINIMUM TIMESTEP CONTROL IN BANDPASS CURCUITS\nHelmut Sennewald  8/28/2004\n \nBandpass circuits require a much smaller timestep in .TRAN simulation.\nA formula will be presented for this number.\n \nTstep = (1/f1 - 1/f2) = B / (f0 * f0)         B bandwidth, f0 center frequency\n                                                              f1, f2 -3dB frequency\n \nA further result is that for higher than 2nd order bandpass filters an even more\nstringent requirement like half the calculated value may be necessary.\nI also recommend to switch off any compression for highest accuracy,\nCompression off:  .options plotwinsize=0\n \n1. Example: Bandpass 2nd order\n \nf0 = 1MHz    B = 10KHz     \nBandwidth:  B = f2 - f1      f1, f2 frequency at -3dB                 10kHz\nRisetime 10%,90%:     Trise = 0.7 / B                            0.07ms(0.7/10kHz)\n.TRAN step time:    tstep = (1/f1 - 1/f2) = B / (f0 * f0)          10ns\n \n2. Example: Bandpass 4th order\n \nf0 = 1MHz    B = 6.4KHz     \nBandwidth:  B = f2 - f1      f1, f2 frequency at -3dB              6.4KHz\nRisetime 10%,90%:     Trise = 0.7 / B                                   0.11ms \n.TRAN step time:    tstep = (1/f1 - 1/f2) = B / (f0 * f0)          6.4ns