Generating a Sinusoid

Calculus Level 5

Suppose we generate a discrete sinusoid using the following algorithm:

x 0 = 1 y 0 = 0 x k = x k 1 α y k 1 1 + α 2 y k = y k 1 + α x k 1 1 + α 2 \large{x_0 = 1 \hspace{1cm} y_0 = 0 \\ x_k = \frac{x_{k-1} - \alpha y_{k-1}}{\sqrt{1+\alpha^2}} \\ y_k = \frac{y_{k-1} + \alpha x_{k-1}}{\sqrt{1+\alpha^2}}}

Here, x k x_k and y k y_k are both discrete sinusoids. If α = 1 100 \alpha = \frac{1}{100} , and the algorithm is run at 1000 Hz (iterations per second), what is the angular frequency ( r a d / s ) (rad/s) of these sinusoids (to the nearest integer)?

Note: The k k subscript denotes the present iteration, and the ( k 1 ) (k-1) subscript denotes the previous iteration.


The answer is 10.

This section requires Javascript.
You are seeing this because something didn't load right. We suggest you, (a) try refreshing the page, (b) enabling javascript if it is disabled on your browser and, finally, (c) loading the non-javascript version of this page . We're sorry about the hassle.

1 solution

Steven Chase
Apr 16, 2017

Consider a rotating vector in the 2D Cartesian plane. Projections of this vector onto the horizontal and vertical axes yield sinusoids. Start with a vector along the horizontal axis.

v = x ı ^ + y ȷ ^ \large{\vec{v} = x \hat{\imath} + y \hat{\jmath}}

Form a quadrature vector: v q = y ı ^ + x ȷ ^ \large{\vec{v_q} = -y \hat{\imath} + x \hat{\jmath}}

Add a scaled version of the quadrature vector to the original vector:

v s h i f t = x ı ^ + y ȷ ^ + α ( y ı ^ + x ȷ ^ ) = ( x α y ) ı ^ + ( y + α x ) ȷ ^ \large{\vec{v_{shift}} = x \hat{\imath} + y \hat{\jmath} + \alpha( -y \hat{\imath} + x \hat{\jmath}) = (x - \alpha y)\hat{\imath} + (y + \alpha x)\hat{\jmath} }

This results in a vector that is shifted by an angle θ \theta and is also greater in magnitude. Suppose that the original vector v \vec{v} is a unit vector, as it is in the problem statement. Then we can divide the shifted vector by 1 + α 2 \sqrt{1+\alpha^2} to re-normalize. Applying this routine iteratively results in the following:

x k = x k 1 α y k 1 1 + α 2 y k = y k 1 + α x k 1 1 + α 2 \large{x_k = \frac{x_{k-1} - \alpha y_{k-1}}{\sqrt{1+\alpha^2}} \\ y_k = \frac{y_{k-1} + \alpha x_{k-1}}{\sqrt{1+\alpha^2}}}

To find the angular frequency, consider the difference quotient d θ d t \large{\frac{d\theta}{dt}} . Recall that v \vec{v} is a unit vector.

d θ d t = θ k θ k 1 t k t k 1 = a t a n ( α ) T \large{\frac{d\theta}{dt} = \frac{\theta_k - \theta_{k-1}}{t_k - t_{k-1}} = \frac{atan(\alpha)}{T}}

Since the algorithm is run at 1000 Hz, T = 1 1000 T = \frac{1}{1000} . Plugging in numbers (with α = 1 100 ) \alpha = \frac{1}{100}) gives:

d θ d t = a t a n ( α ) T = a t a n ( 1 100 ) 1 1000 10 \large{\frac{d\theta}{dt} = \frac{atan(\alpha)}{T} = \frac{atan(\frac{1}{100})}{\frac{1}{1000}} \approx \boxed{10}}

@Steven Chase I want to ask you something(I am serious, no joking)
I just got to know about Bitcoin , 1 month ago. . Maybe you know about it from years.
My question is (who decides the value of Bitcoin in market today i watched 1 Bitcoin =10.7k US dollar
After dinner 1 Bitcoin =10.8k US dollar , now 1 Bitcoin =10.9K US dollar
Who is responsible for changing this data so rapidly???


Talulah Riley - 8 months, 3 weeks ago

@Steven Chase Hello here above is my question

Talulah Riley - 8 months, 3 weeks ago

0 pending reports

×

Problem Loading...

Note Loading...

Set Loading...