mirror of
https://github.com/SDRSharpR/SDRSharper.git
synced 2025-12-06 04:12:02 +01:00
415 lines
5.6 KiB
C#
415 lines
5.6 KiB
C#
namespace SDRSharp.Radio
|
|
{
|
|
public static class DecimationKernels
|
|
{
|
|
public const float Cic3Max = 0.00150001049f;
|
|
|
|
public const float Hb11TapMax = 0.025000006f;
|
|
|
|
public const float Hb15TapMax = 0.048999995f;
|
|
|
|
public const float Hb19TapMax = 0.072f;
|
|
|
|
public const float Hb23TapMax = 0.09099999f;
|
|
|
|
public const float Hb27TapMax = 0.10800001f;
|
|
|
|
public const float Hb31TapMax = 0.122000009f;
|
|
|
|
public const float Hb35TapMax = 0.134f;
|
|
|
|
public const float Hb39TapMax = 0.144f;
|
|
|
|
public const float Hb43TapMax = 0.153f;
|
|
|
|
public const float Hb47TapMax = 0.16f;
|
|
|
|
public const float Hb51TapMax = 0.167f;
|
|
|
|
public static readonly float[] Kernel11 = new float[11]
|
|
{
|
|
0.006043103f,
|
|
0f,
|
|
-0.0493725166f,
|
|
0f,
|
|
0.293329448f,
|
|
0.5f,
|
|
0.293329448f,
|
|
0f,
|
|
-0.0493725166f,
|
|
0f,
|
|
0.006043103f
|
|
};
|
|
|
|
public static readonly float[] Kernel15 = new float[15]
|
|
{
|
|
-0.0014422033f,
|
|
0f,
|
|
0.0130175129f,
|
|
0f,
|
|
-0.06165328f,
|
|
0f,
|
|
0.300077915f,
|
|
0.5f,
|
|
0.300077915f,
|
|
0f,
|
|
-0.06165328f,
|
|
0f,
|
|
0.0130175129f,
|
|
0f,
|
|
-0.0014422033f
|
|
};
|
|
|
|
public static readonly float[] Kernel19 = new float[19]
|
|
{
|
|
0.000423665275f,
|
|
0f,
|
|
-0.00407173345f,
|
|
0f,
|
|
0.0198956542f,
|
|
0f,
|
|
-0.07074004f,
|
|
0f,
|
|
0.3044925f,
|
|
0.5f,
|
|
0.3044925f,
|
|
0f,
|
|
-0.07074004f,
|
|
0f,
|
|
0.0198956542f,
|
|
0f,
|
|
-0.00407173345f,
|
|
0f,
|
|
0.000423665275f
|
|
};
|
|
|
|
public static readonly float[] Kernel23 = new float[23]
|
|
{
|
|
-0.00014987652f,
|
|
0f,
|
|
0.00147486338f,
|
|
0f,
|
|
-0.00744169438f,
|
|
0f,
|
|
0.0261635222f,
|
|
0f,
|
|
-0.0775937f,
|
|
0f,
|
|
0.307546824f,
|
|
0.5f,
|
|
0.307546824f,
|
|
0f,
|
|
-0.0775937f,
|
|
0f,
|
|
0.0261635222f,
|
|
0f,
|
|
-0.00744169438f,
|
|
0f,
|
|
0.00147486338f,
|
|
0f,
|
|
-0.00014987652f
|
|
};
|
|
|
|
public static readonly float[] Kernel27 = new float[27]
|
|
{
|
|
6.37304256E-05f,
|
|
0f,
|
|
-0.0006198519f,
|
|
0f,
|
|
0.00315125054f,
|
|
0f,
|
|
-0.0111731514f,
|
|
0f,
|
|
0.0317188874f,
|
|
0f,
|
|
-0.08291786f,
|
|
0f,
|
|
0.309777051f,
|
|
0.5f,
|
|
0.309777051f,
|
|
0f,
|
|
-0.08291786f,
|
|
0f,
|
|
0.0317188874f,
|
|
0f,
|
|
-0.0111731514f,
|
|
0f,
|
|
0.00315125054f,
|
|
0f,
|
|
-0.0006198519f,
|
|
0f,
|
|
6.37304256E-05f
|
|
};
|
|
|
|
public static readonly float[] Kernel31 = new float[31]
|
|
{
|
|
-3.0957337E-05f,
|
|
0f,
|
|
0.000292719924f,
|
|
0f,
|
|
-0.00147703814f,
|
|
0f,
|
|
0.00525390869f,
|
|
0f,
|
|
-0.0148563785f,
|
|
0f,
|
|
0.03640665f,
|
|
0f,
|
|
-0.08699863f,
|
|
0f,
|
|
0.311409682f,
|
|
0.5f,
|
|
0.311409682f,
|
|
0f,
|
|
-0.08699863f,
|
|
0f,
|
|
0.03640665f,
|
|
0f,
|
|
-0.0148563785f,
|
|
0f,
|
|
0.00525390869f,
|
|
0f,
|
|
-0.00147703814f,
|
|
0f,
|
|
0.000292719924f,
|
|
0f,
|
|
-3.0957337E-05f
|
|
};
|
|
|
|
public static readonly float[] Kernel35 = new float[35]
|
|
{
|
|
1.70177173E-05f,
|
|
0f,
|
|
-0.000154250432f,
|
|
0f,
|
|
0.00076219684f,
|
|
0f,
|
|
-0.00269161467f,
|
|
0f,
|
|
0.00759275f,
|
|
0f,
|
|
-0.0183257274f,
|
|
0f,
|
|
0.0403510034f,
|
|
0f,
|
|
-0.0901982263f,
|
|
0f,
|
|
0.3126469f,
|
|
0.5f,
|
|
0.3126469f,
|
|
0f,
|
|
-0.0901982263f,
|
|
0f,
|
|
0.0403510034f,
|
|
0f,
|
|
-0.0183257274f,
|
|
0f,
|
|
0.00759275f,
|
|
0f,
|
|
-0.00269161467f,
|
|
0f,
|
|
0.00076219684f,
|
|
0f,
|
|
-0.000154250432f,
|
|
0f,
|
|
1.70177173E-05f
|
|
};
|
|
|
|
public static readonly float[] Kernel39 = new float[39]
|
|
{
|
|
-1.01750829E-05f,
|
|
0f,
|
|
8.803642E-05f,
|
|
0f,
|
|
-0.000423708349f,
|
|
0f,
|
|
0.00147725572f,
|
|
0f,
|
|
-0.00414684368f,
|
|
0f,
|
|
0.009957912f,
|
|
0f,
|
|
-0.0214335267f,
|
|
0f,
|
|
0.0435989648f,
|
|
0f,
|
|
-0.09269595f,
|
|
0f,
|
|
0.313588f,
|
|
0.5f,
|
|
0.313588f,
|
|
0f,
|
|
-0.09269595f,
|
|
0f,
|
|
0.0435989648f,
|
|
0f,
|
|
-0.0214335267f,
|
|
0f,
|
|
0.009957912f,
|
|
0f,
|
|
-0.00414684368f,
|
|
0f,
|
|
0.00147725572f,
|
|
0f,
|
|
-0.000423708349f,
|
|
0f,
|
|
8.803642E-05f,
|
|
0f,
|
|
-1.01750829E-05f
|
|
};
|
|
|
|
public static readonly float[] Kernel43 = new float[43]
|
|
{
|
|
6.766674E-06f,
|
|
0f,
|
|
-5.527522E-05f,
|
|
0f,
|
|
0.000256540749f,
|
|
0f,
|
|
-0.00087481254f,
|
|
0f,
|
|
0.0024249875f,
|
|
0f,
|
|
-0.005777519f,
|
|
0f,
|
|
0.0122998338f,
|
|
0f,
|
|
-0.0242440514f,
|
|
0f,
|
|
0.046354305f,
|
|
0f,
|
|
-0.0947299f,
|
|
0f,
|
|
0.3143392f,
|
|
0.5f,
|
|
0.3143392f,
|
|
0f,
|
|
-0.0947299f,
|
|
0f,
|
|
0.046354305f,
|
|
0f,
|
|
-0.0242440514f,
|
|
0f,
|
|
0.0122998338f,
|
|
0f,
|
|
-0.005777519f,
|
|
0f,
|
|
0.0024249875f,
|
|
0f,
|
|
-0.00087481254f,
|
|
0f,
|
|
0.000256540749f,
|
|
0f,
|
|
-5.527522E-05f,
|
|
0f,
|
|
6.766674E-06f
|
|
};
|
|
|
|
public static readonly float[] Kernel47 = new float[47]
|
|
{
|
|
-4.52983159E-06f,
|
|
0f,
|
|
3.53337055E-05f,
|
|
0f,
|
|
-0.000159347765f,
|
|
0f,
|
|
0.0005340788f,
|
|
0f,
|
|
-0.001466795f,
|
|
0f,
|
|
0.003479209f,
|
|
0f,
|
|
-0.00737943547f,
|
|
0f,
|
|
0.014393786f,
|
|
0f,
|
|
-0.0265866034f,
|
|
0f,
|
|
0.0485386737f,
|
|
0f,
|
|
-0.0962911546f,
|
|
0f,
|
|
0.314906746f,
|
|
0.5f,
|
|
0.314906746f,
|
|
0f,
|
|
-0.0962911546f,
|
|
0f,
|
|
0.0485386737f,
|
|
0f,
|
|
-0.0265866034f,
|
|
0f,
|
|
0.014393786f,
|
|
0f,
|
|
-0.00737943547f,
|
|
0f,
|
|
0.003479209f,
|
|
0f,
|
|
-0.001466795f,
|
|
0f,
|
|
0.0005340788f,
|
|
0f,
|
|
-0.000159347765f,
|
|
0f,
|
|
3.53337055E-05f,
|
|
0f,
|
|
-4.52983159E-06f
|
|
};
|
|
|
|
public static readonly float[] Kernel51 = new float[51]
|
|
{
|
|
3.33592538E-06f,
|
|
0f,
|
|
-2.45841547E-05f,
|
|
0f,
|
|
0.000106777778f,
|
|
0f,
|
|
-0.000348907226f,
|
|
0f,
|
|
0.0009423913f,
|
|
0f,
|
|
-0.00221183f,
|
|
0f,
|
|
0.004657503f,
|
|
0f,
|
|
-0.009013098f,
|
|
0f,
|
|
0.016383674f,
|
|
0f,
|
|
-0.02869728f,
|
|
0f,
|
|
0.0504329242f,
|
|
0f,
|
|
-0.0976119f,
|
|
0f,
|
|
0.31538105f,
|
|
0.5f,
|
|
0.31538105f,
|
|
0f,
|
|
-0.0976119f,
|
|
0f,
|
|
0.0504329242f,
|
|
0f,
|
|
-0.02869728f,
|
|
0f,
|
|
0.016383674f,
|
|
0f,
|
|
-0.009013098f,
|
|
0f,
|
|
0.004657503f,
|
|
0f,
|
|
-0.00221183f,
|
|
0f,
|
|
0.0009423913f,
|
|
0f,
|
|
-0.000348907226f,
|
|
0f,
|
|
0.000106777778f,
|
|
0f,
|
|
-2.45841547E-05f,
|
|
0f,
|
|
3.33592538E-06f
|
|
};
|
|
}
|
|
}
|