1
$\begingroup$

I'm currently working through a research paper on beam forming. In this paper a magnitude compensation is introduced to compensate for frequency dependency. Due to other calculations low frequencies are lower in magnitude than high frequencies.

To compensate for the frequency dependency they multiply the signal with: $$ \frac{1}{(j \omega)^n} $$

I know when $n = 1$, the formula is just a simple integrator. But I don't understand what happens when $n$ is higher, and how I should implement it in MATLAB.

$\endgroup$
  • $\begingroup$ 1. Integration, is a low-pass filter. 2. $\frac{1}{(j\omega)^n}$ means $n$-times integration. Do you follow? $\endgroup$ – msm Nov 1 '16 at 9:22
  • $\begingroup$ @msm So for a $n = 2$ i should simply integrate two times. In MATLAB $a = [1\ -1];$ $b=[1\ 0];$ $filter(b,a,x);$ $filter(b,a,x);$ $\endgroup$ – Denny Beulen Nov 1 '16 at 9:44
  • $\begingroup$ Implementation in Matlab, I am not sure. I have no idea what your signal is. It can be tricky since contrary to differentiation, integration can produce some constant terms. Be careful with that. $\endgroup$ – msm Nov 1 '16 at 10:04
  • $\begingroup$ Did you get the information you needed from the answers? If so, please upvote or accept $\endgroup$ – Laurent Duval Sep 9 '17 at 19:24
1
$\begingroup$

What do you mean with Beam in this context.... Particle Beams in LINACs? Structural Beams in Buildings?.

$j\omega$ is a phasor term from frequency analysis.

$\frac{1}{j\omega}$ is the integration as @msm showed.

If you want to integrate two times, just use cumtrapz two times.

But as you said, this is only a "term" complementing a frequency model, which it would be really good to have here in order to help you more... You never simulate that term alone.

$\endgroup$
1
$\begingroup$

From the OP's formulation, I understand that the signal is represented in the frequency domain, possibly without explicit time-domain expression. The Fourier transform diagonalizes linear operators, and integration is an integral operator. For more details, Fourier transform diagonalizes the convolution operator.

In other words, instead of using of convolutive form in time, you using a product form, easier to implement, which applies pointwise, separately to each frequency. It can also be faster using the Fast Fourier transform.

So for each integration, each frequency component $F(\omega)$ is multiplied by $1/(j\omega)$. Or when dealing with amplitude, frequency component $|F(\omega)|$ is just multiplied by $1/|\omega|$. What is especially nice is that pointwise products gather. If you want to perform two integration steps, you just have to multiply by $1/(j\omega)\times 1/(j\omega)$ or $-1/(\omega^2)$, and so on for multiple integration, the reason for the $n$ power.

What you should take care of is the singularity at $\omega =0$. Formally, an integral of a function with a non-zero average diverges. So this Fourier integration is often performed with some windowing to take care of very low or very high frequencies.

You can find Matlab implementations at MatlabCentral:

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.