Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[SOLVED] Fourier transform of clipped sine

Status
Not open for further replies.

talking

Member level 2
Joined
Jan 27, 2010
Messages
44
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Activity points
1,654
I'm deriving some equations using "positive cycle clipped-off sine" (please see the attached).
I need to derive frequency-domain expression of this clipped sine by FFT. May I have any clue or reference document for it?
 

Attachments

  • clip.jpg
    clip.jpg
    35.3 KB · Views: 358

Supposing that is a signal at a given frequency, then the general equation of the sinwave is:

y=A*sin(w*t)

since it is is clipped at an amplitude "a1" we can find the two time instants corresponding to start and stop clipping as:

a1=A*sin(w*t), that is:

t=1/w*arcsin(a1/A) ==> tstart, tstop

then the equation of the clipped sinewave will be:

yclip(t)={A*sin(w*t) if 0<t<=tstart, a1 if tstart<t<=tstop, A*sin(w*t) if tstop<t<=T}

where T is the period.

just transform yclip(t). You will have the sum of three integrals having different limits.
 
albbg,

tstart and tstop in your comments have the following relationship.
tstop = pi - tstart

As you nicely identified,

t=1/w*arcsin(a1/A) ==> tstart, tstop

The same expression '1/w*arcsin(a1/A)' implies both tstart and tstop.
But I need to mathematically describe tstart and tstop in different expression for each.
Any idea?
 

Another way to write that clipped sine is

\[f(x) = \sin(x) + \left(\cos\theta - \sin(x)\right)\left(H(x+\theta-\frac{\pi}{2})-H(x-\theta-\frac{\pi}{2})\right)\]

where theta is the clipping angle and H(x) the Heaviside function (step function)

Some symbolic math software like Derive6 handle the Heavside step and you can easily find the Fourier coefficients.
 

Attachments

  • Clipboard-1.png
    Clipboard-1.png
    129.2 KB · Views: 303
Eduardo, thanks a lot.
May I see the deriving procedure of your equation? If you have any documents to describe it, that would be great for me.
If you derived this equation on your own, could you please show your deriving process of this equation?
My work is to apply more complicated sinusoidal signal to an equation (e.g., your equation) describing a clipped pure sine or cosine.
The deriving procedure should be so much helpful for my work.
 

Eduardo, thanks a lot.
May I see the deriving procedure of your equation? If you have any documents to describe it, that would be great for me.
If you derived this equation on your own, could you please show your deriving process of this equation?
My work is to apply more complicated sinusoidal signal to an equation (e.g., your equation) describing a clipped pure sine or cosine.
The deriving procedure should be so much helpful for my work.

If you solve by hand the integrals, the best way is splitting the interval (albbg message). Unfortunately, the resulting expressions are quit long.
By software, you must write the functions in a way that the software interprets. And, if possible, of fast execution.


The synthesis of the clip may be written as:
(a) Fclip(x) = f(x)*U(x) + fc1*V(x)​

where
U(x) = 0 in the range of clipping and 1 otherwise.
V(x) = 1 in the range of clipping and 0 otherwise.
fc1: Value at clip.​

While it would be most natural write U and V as a function of the amplitude
U(clip-f(x)) = 1 if clip-f(x)> 0, 0 otherwise
V(clip-f(x)) = 0 if clip-f(x)> 0, 1 otherwise
But at least Derive6 is not efficient handling these expressions.


Returning to (a), writing in terms of the Heaviside step (because the software does not have a built-in pulse function).
Considering the clipping angle at x=pi/2-w
V(x) = H(x-pi/2-w) - H(x-pi/2+w)
U(x) = 1 - V(x)
fc1 = sin(pi/2-w) = cos(w)
Note: H(x): Heaviside step, STEP(x) in Derive6 notation.

After some algebraic steps arrive to the expression that I showed in the previous message.

Of course, this method is only of interest if you are going to evaluate the Fourier coefficients by software :)

-------------------------------------

The method is also applicable with a double clipping (positive and negative) and not necessarily symmetrical.

(b) Fclip(x) = f(x)*U(x) + fc1*V1(x) + fc2*V2(x)
with
V1(x) = 1 in clipping interval1 , 0 otherwise.
fc1 = Value at clip1
V2(x) = 1 in clipping interval2 , 0 otherwise.
fc2 = Value at clip2
U(x) = 1 - V1(x) - V2(x)​
 
I appreciate your detail derivation so much. This should be greatly helpful for my work.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top