* Z:\home\khalils\Downloads\files\data\raw_asc\1c58746596ff_Readout_filter.asc
* Generated by LTspice 26.0.1 for Windows.
* Vcm = R2/(R1+R2)*Vi2
* Vo = A*Vi1 - B*Vi2
* A = (1 + R6/(R4+Rt))*(R2/(R1+R2))
* Rt = R3||R5 = 1/(1/R3 + 1/R5)
* B = (R6*Rt)/(R3*(Rt+R4))
* A = (1+B*R3/Rt)*(R2/(R1+R2))
* B = 1/8 and A > 1/2
* Maximize A => R1 = 0 => A=(1+B*R3/Rt), but could tweak later
* R4 = 0 => B=R6/R3, A=(1+R6/Rt)*(R2/(R1+R2))
* R6 = 10k => R3 = 80k
* R5 = 80k => Rt = 40k => A=1.25*(R2/(R1+R2))
* A = 1 => R2/(R1+R2) = 1 / 1.25 = 40k / (40k+10k)
* B = 1/8 and A > 1/2
* Maximize A => R1 = 0 => A=(1+B*R3/Rt), but could tweak later
* R4 = 0 => B=R6/R3, A=(1+R6/Rt)*(R2/(R1+R2))
* R6 = 10k => R3 = 80k
* R5 = 10k => Rt = 8.88k => A=1.25*(R2/(R1+R2))
* A = 1 => 1/(R1/R2+1)=1/(R6/Rt+1)
* Library below included based on ModelFile attribute of instance XU2 (C:\users\khalils\AppData\Local\LTspice\lib\sym\OpAmps\LT6011.asy)
;tran 1s
;noise V(Vo) V5 dec 1000 1 100k
R1 N003 Vi2 10k
R5 0 Vcm 80k
C1 Vo 0 15n
R3 Vcm Vi1 80k
R2 0 N003 40k
R6 N001 Vcm 10k
R7 Vo N001 10k
V4 0 V- 15V
C2 N001 Vcm 15n
XU2 N003 Vcm N001 V+ V- LT6011 ;pnba IN+)IN-)OUT)VCC)VEE
V3 V+ 0 15V
V5 Vi1 0 SINE(0 10 10) AC 10
V6 Vi2 0 1.25 Rser=1
.ac dec 100 1 100k
.lib LTC2.lib
.backanno
.end

* LTspice schematic (.asc):
Version 4
SHEET 1 3904 680
WIRE 2496 -352 2416 -352
WIRE 2656 -352 2576 -352
WIRE 2896 -304 2896 -336
WIRE 2896 -192 2896 -224
WIRE 2896 -192 2816 -192
WIRE 2416 -176 2416 -352
WIRE 2496 -176 2416 -176
WIRE 2656 -176 2656 -352
WIRE 2656 -176 2560 -176
WIRE 2816 -160 2816 -192
WIRE 2896 -160 2896 -192
WIRE 1952 -144 1888 -144
WIRE 2064 -144 1952 -144
WIRE 2208 -144 2144 -144
WIRE 2272 -144 2208 -144
WIRE 2416 -144 2416 -176
WIRE 2416 -144 2352 -144
WIRE 1888 -80 1888 -144
WIRE 2208 -64 2208 -144
WIRE 2896 -48 2896 -80
WIRE 1888 48 1888 0
WIRE 2208 48 2208 16
WIRE 2416 96 2416 -144
WIRE 2448 96 2416 96
WIRE 2656 128 2656 -176
WIRE 2656 128 2592 128
WIRE 2720 128 2656 128
WIRE 2864 128 2800 128
WIRE 2960 128 2864 128
WIRE 3008 128 2960 128
WIRE 1968 160 1888 160
WIRE 2160 160 1968 160
WIRE 2336 160 2240 160
WIRE 2448 160 2336 160
WIRE 2864 208 2864 128
WIRE 1888 224 1888 160
WIRE 2336 224 2336 160
WIRE 1888 352 1888 304
WIRE 2336 352 2336 304
WIRE 2864 352 2864 272
SYMBOL res 2592 -368 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R6
SYMATTR Value 10k
SYMBOL res 2368 -160 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R4
SYMATTR Value 0
SYMBOL res 2224 32 R180
WINDOW 0 36 76 Left 2
WINDOW 3 36 40 Left 2
SYMATTR InstName R5
SYMATTR Value 80k
SYMBOL voltage 2896 -176 R0
WINDOW 123 0 0 Left 0
WINDOW 39 0 0 Left 0
SYMATTR InstName V4
SYMATTR Value 15V
SYMBOL res 2256 144 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R1
SYMATTR Value 10k
SYMBOL voltage 1888 -96 R0
WINDOW 123 24 44 Left 2
WINDOW 39 0 0 Left 0
SYMATTR Value2 AC 10
SYMATTR InstName V5
SYMATTR Value SINE(0 10 10)
SYMBOL cap 2848 208 R0
SYMATTR InstName C1
SYMATTR Value 15n
SYMBOL res 2816 112 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R7
SYMATTR Value 10k
SYMBOL res 2352 320 R180
WINDOW 0 36 76 Left 2
WINDOW 3 36 40 Left 2
SYMATTR InstName R2
SYMATTR Value 40k
SYMBOL OpAmps\\LT6011 2480 128 R0
SYMATTR InstName U2
SYMBOL voltage 2896 -320 R0
WINDOW 123 0 0 Left 0
WINDOW 39 0 0 Left 0
SYMATTR InstName V3
SYMATTR Value 15V
SYMBOL voltage 1888 208 R0
WINDOW 123 0 0 Left 0
WINDOW 39 24 44 Left 2
SYMATTR SpiceLine Rser=1
SYMATTR InstName V6
SYMATTR Value 1.25
SYMBOL cap 2560 -192 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName C2
SYMATTR Value 15n
SYMBOL res 2160 -160 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R3
SYMATTR Value 80k
FLAG 2816 -160 0
FLAG 2896 -336 V+
FLAG 2896 -48 V-
FLAG 1888 48 0
FLAG 1888 352 0
FLAG 2480 208 V-
FLAG 2480 48 V+
FLAG 2864 352 0
FLAG 2336 352 0
FLAG 2208 48 0
FLAG 2960 128 Vo
FLAG 1952 -144 Vi1
FLAG 1968 160 Vi2
FLAG 2416 96 Vcm
TEXT 2792 -448 Left 2 !;tran 1s
TEXT 3136 -256 Left 2 ;Vcm = R2/(R1+R2)*Vi2
TEXT 3136 -224 Left 2 ;Vo = A*Vi1 - B*Vi2
TEXT 3136 -192 Left 2 ;A = (1 + R6/(R4+Rt))*(R2/(R1+R2))
TEXT 3136 -288 Left 2 ;Rt = R3||R5 = 1/(1/R3 + 1/R5)
TEXT 3136 -160 Left 2 ;B = (R6*Rt)/(R3*(Rt+R4))
TEXT 3136 -128 Left 2 ;A = (1+B*R3/Rt)*(R2/(R1+R2))
TEXT 3136 -40 Left 2 ;B = 1/8 and A > 1/2
TEXT 3136 -8 Left 2 ;Maximize A => R1 = 0 => A=(1+B*R3/Rt), but could tweak later
TEXT 3136 24 Left 2 ;R4 = 0 => B=R6/R3, A=(1+R6/Rt)*(R2/(R1+R2))
TEXT 3136 56 Left 2 ;R6 = 10k => R3 = 80k
TEXT 3136 88 Left 2 ;R5 = 80k => Rt = 40k => A=1.25*(R2/(R1+R2))
TEXT 3136 120 Left 2 ;A = 1 => R2/(R1+R2) = 1 / 1.25 = 40k / (40k+10k)
TEXT 2736 -536 Left 2 !;noise V(Vo) V5 dec 1000 1 100k
TEXT 3136 208 Left 2 ;B = 1/8 and A > 1/2
TEXT 3136 240 Left 2 ;Maximize A => R1 = 0 => A=(1+B*R3/Rt), but could tweak later
TEXT 3136 272 Left 2 ;R4 = 0 => B=R6/R3, A=(1+R6/Rt)*(R2/(R1+R2))
TEXT 3136 304 Left 2 ;R6 = 10k => R3 = 80k
TEXT 3136 336 Left 2 ;R5 = 10k => Rt = 8.88k => A=1.25*(R2/(R1+R2))
TEXT 3136 368 Left 2 ;A = 1 => 1/(R1/R2+1)=1/(R6/Rt+1)
TEXT 2760 -488 Left 2 !.ac dec 100 1 100k