Learn how to turn your synthesized coupling matrix into lumped elements for low frequency applications where waveguide and planar implementations wouldn’t make sense. It is also interesting reading for those doing miniature filters on thin film or MMIC at higher frequencies. In this tutorial a lumped element filter is synthesized and realized using coupling matrix techniques. A MATLAB code snipped is also provided that can automatically calculate element values from the couplings. The filter response is synthesized with the settings below:
The response is shown below, note the synthesized transmission zero at 80 MHz:
The physical coupling matrix below indicates that there is a negative non-adjacent coupling (1-3) which is responsible for the transmission zero. However, how the signs of each coupling are realized depends on the topology as will become apparent in this tutorial. The filter becomes asynchronous due to the non-adjacent coupling.
A coupled resonator filter can be modeled by coupling the resonators with inverters. The inverter represents the capacitive and magnetic coupling. These inverters are later on replaced by their equivalent lumped networks. The inductors are all set to the same fixed value and the corresponding resonator capacitors, C1, C2… are calculated to resonate at the frequency given by the diagonal coupling matrix indices.
A lumped element representation is given below, based on a PI-network of capacitors. The resonator-resonator coupling, M, in the coupling matrix gives each coupling capacitor, Cc. The external Q is extracted from the model below. The inverter transforms the load (usually 50 Ohm) visible to the resonator, hence the external quality depends on the inverter value, which is represented by a PI-network of capacitors, Cin.
In the network below the J-inverters has been replaced by their capacitor equivalents derived above. Due to the topology the non-adjacent coupling is also represented by a capacitive coupling despite the difference in sign.
The negative capacitors in parallel with each resonator are absorbed as shown below. The negative input and output capacitors are replaced by their equivalent inductors.
The filter has now been realized as a practical lumped network. Running the MATLAB code with the synthesized coupling matrix generates the element values below:
The topology derived in this tutorial is just one of many that can represent the synthesized coupling matrix in a practical filter design. However, one should watch out for extreme element values, there might be a topology that is more suitable for your response.
function [ output_args ] = lumped_coupled_design( input_args )
% COUPLING MATRIX TO LUMPED FILTER DESIGN
% VERSATILE MICROWAVE
% 100 MHz, order 3, 10% BW, 20dB ripple, 1 zero at 90 MHz
f_c = 100e6; % center frequency
L_common = 50e-9 % inductor, common in all resonators
Qe = [8.5341 8.5341]; % external Q, [in out]
M = [0.101 0.101 -0.0239]; % coupling factors (k or M)
M_index = [1 2; 2 3; 1 3]; % resonator index mapping of couplings in M [from to;…]
f_res = [100.3e6 98.8e6 100.3e6]; % resonator frequencies
%%% CALCULATIONS %%%
C_res = 1./((f_res*2*pi).^2*L_common);
C_res_synth = C_res;
for index = [1:length(M)]
C_c(index) = M(index)*sqrt(C_res(M_index(index,1)).*C_res(M_index(index,2)));
C_res_synth(M_index(index,1)) = C_res_synth(M_index(index,1))-C_c(index);
C_res_synth(M_index(index,2)) = C_res_synth(M_index(index,2))-C_c(index);
C_in = sqrt(C_res(1)/(50*Qe(1)*2*pi*f_res(1))) % input coupling, cap
L_in = 1/((2*pi*f_c)^2*C_in) % input coupling, inductor
C_out = sqrt(C_res(end)/(50*Qe(2)*2*pi*f_res(end))) % output coupling, cap
L_out = 1/((2*pi*f_c)^2*C_out) % output coupling, inductor
C_c % resonator-resonator coupling capacitors (negative = inductive)
C_res_synth(1) = C_res_synth(1)-C_in;
C_res_synth(end) = C_res_synth(end)-C_out;
C_res = C_res_synth % resonator capacitors
Check out more Tutorials…