
1RC and C filter
Type : Simple 2pole LP References : Posted by madbrain[AT]videotron[DOT]ca
Notes : This filter is called 1RC and C since it uses these two parameters. C and R correspond to raw cutoff and inverted resonance, and have a range from 0 to 1.
Code : //Parameter calculation
//cutoff and resonance are from 0 to 127
c = pow(0.5, (128cutoff) / 16.0);
r = pow(0.5, (resonance+24) / 16.0);
//Loop:
v0 = (1r*c)*v0  (c)*v1 + (c)*input;
v1 = (1r*c)*v1 + (c)*v0;
output = v1;

Comments
Added on : 13/01/05 by yes Comment : input is not in 0  1 range.
for cutoff i guess 128.
for reso the same ?
Added on : 31/08/06 by scoofy[ AT ]inf[ DOT ]elte[ DOT ]hu Comment : Nice. This is very similar to a state variable filter in many ways. Relationship between c and frequency:
c = 2*sin(pi*freq/samplerate)
You can approximate this (tuning error towards nyquist):
c = 2*pi*freq/samplerate
Relationship between r and q factor:
r = 1/q
This filter has stability issues for high r values. State variable filter stability limits seem to work fine here. It can also be oversampled for better stability and wider frequency range (use 0.5*original frequency):
//Loop:
v0 = (1r*c)*v0  c*v1 + c*input;
v1 = (1r*c)*v1 + c*v0;
tmp = v1;
v0 = (1r*c)*v0  c*v1 + c*input;
v1 = (1r*c)*v1 + c*v0;
output = (tmp+v1)*0.5;
 peter schoffhauzer
Added on : 18/09/11 by kiranpatel0305[ AT ]gmail[ DOT ]com Comment : Can anyone help me with C++ class composition to implement a single polefilter design program. The program will allow the user to specify resistor and capacitor values and filter type. Once all the user parameters are specified, the program will return the cutoff frequency values for the filter. I need this as soon as possible and I am lost big time :(
Create a Multifile Project for the Composition Lab
1. Add three classes to the project: a Filter class, a Capacitor class, and a Resistor class.
2. The Capacitor class should be modeled after the Resistor class for class members and operation.

Add your own comment
Comments are displayed in fixed width, no HTML code allowed! 



