Cedron Dawg is the pen name of a reclusive math enthusiast and programmer. His primary interest is in the Discrete Fourier Transform having discovered numerous new equations which are documented in the blog articles, with more to come. For non-members of DspRelated he can be contacted at cedron at protonmail dot com. Members can click on the envelope icon below.
The analytic formula for calculating the frequency of a pure complex tone from the bin values of a rectangularly windowed Discrete Time Fourier Transform (DTFT) is derived. Unlike the corresponding Discrete Fourier Transform (DFT) case, there is no extra degree of freedom and only one solution is possible.
A method for constructing a pentagon using a straight edge and a compass is deduced from the complex values of the Fifth Roots of Unity. Analytic values for the points are also derived.
Cedron presents a guided tour of his DSPRelated articles that teach the discrete Fourier transform through derivations, numerical examples, and sample code. The collection centers on novel "bin value" formulas and exact frequency estimators for complex and real tones, with methods for phase and amplitude recovery and iterative multitone resolution. The overview also points to a zeroing-sine window family and an integer pseudo-differentiator for efficient peak and zero-crossing detection.
Cedron Dawg shows how small tweaks to Jacobsen's three-bin frequency estimator turn a popular approximation into an exact formula, and how a modest cubic correction yields a near-exact, low-cost alternative. The article derives an arctan/tan exact recovery, relates it to Candan's 2011/2013 tweaks, and supplies reference C code and numerical tables so engineers can see when each formula is sufficient.
Cedron Dawg walks through building a degree-based sine and cosine table from first principles, showing both recursive and multiplicative complex-tone generators. The article highlights simple drift-correction tricks such as mitigated squaring and compact normalization, gives series methods to compute one-degree and half-degree values, and includes practical C code that ties the table to DFT usage and frequency estimation.
Cedron Dawg develops a Newtonian, fluidic model where space is a compressible "fluff" and particle motion is governed by a simple refractive steering equation. He shows how rho = ln n links index, permittivity and permeability to a gravity-like potential, derives a massive-particle steering law, and works through orbit and disk solutions that produce MOND-like effects while conflicting with General Relativity. The paper highlights concrete formulas and numerics to test the hypothesis.
A previously unrecognized family of DFT window functions is introduced, built from products of shifted sines that deliberately zero out tail samples and control nonzero support. Cedron Dawg presents recursive and semi-root constructions, runnable code, and numerical examples, and shows that the odd-N member L=(N-1)/2 numerically matches a discrete Hermite-Gaussian DFT eigenvector. The post highlights practical properties, an even-N fix, and applications to spectrograms and tone decomposition.
Cedron Dawg shows how a real sinusoid's frequency, amplitude and phase can be recovered from only two adjacent DFT bins. The article derives exact two-bin formulas, gives a clear Gambas reference implementation, and demonstrates that accurate parameters can be obtained with very few samples when the tone lies between the bins. It also explains when the method breaks down and how the real-valued unfurling improves robustness.
Complex numbers are rotations and scalings in the plane, and Cedron Dawg walks through polar and Cartesian representations to make that concrete. Using Euler's formula, the article shows how multiplying complex numbers multiplies magnitudes and adds angles, and how that directly yields the sine and cosine angle-addition formulas. Practical notes cover using atan2/arg and a brief Gambas example to verify results.
Cedron Dawg derives a compact vector differential equation for a point particle moving through a smoothly varying refractive medium using the Euler-Lagrange variational method. By introducing a log refractive index called "fluff density," the paper expresses acceleration purely in terms of the fluff gradient and velocity, then explores curvature, superposition, and point-source capture radii with simple closed-form results.
Cedron presents exact, closed-form formulas to extract the phase and amplitude of a pure complex tone from multiple DFT bin values, using a compact vector formulation. The derivation introduces a delta variable to simplify the sinusoidal bin expression, stacks neighboring bins into a basis vector, and solves for the complex amplitude q by projection. The phase and magnitude follow directly from q, and extra bins reduce leakage when the tone falls between bins.
Cedron Dawg derives compact, exact formulas to recover the phase and amplitude of a single complex tone from a DFT bin when the tone frequency is known. The paper turns the complex bin value into closed-form expressions using a sine-fraction amplitude correction and a simple phase shift, and includes working code plus a numeric example for direct implementation.
Cedron Dawg derives an alternative exact formula for DFT bin values of a pure real tone, sacrificing algebraic simplicity for better numerical behavior near integer-valued frequencies. By rewriting cosine differences as products of sines and shifting to a delta frame of reference, the derivation avoids catastrophic cancellation and preserves precision for near-integer tones. The analysis also shows the integer-frequency case is a degenerate limit that yields the familiar M/2 e^{iφ} bin value.
Cedron Dawg extends his two-bin exact frequency formulas to a three-bin DFT estimator for a pure real tone, and presents the derivation in computational order for practical use. The method splits complex bin values into real and imaginary parts, forms vectors A, B, and C, applies a sqrt(2) variance rescaling, and computes frequency via a projection-based closed form. Numerical tests compare the new formula to prior work and show improved accuracy when the tone lies between bins.
Cedron Dawg derives exact, closed-form frequency formulas that recover a pure real tone from just two DFT bins using a geometric vector approach. The method projects bin-derived vectors onto a plane orthogonal to a constraint vector to eliminate amplitude and phase, yielding an explicit cos(alpha) estimator; a small adjustment improves noise performance so the estimator rivals and slightly betters earlier two-bin methods.
Cedron Dawg derives time-domain formulas that yield near-instantaneous frequency estimates optimized for zero crossings of pure tones. Complementing his earlier peak-optimized results, these difference-ratio formulas work for real and complex signals, produce four-sample estimators similar to Turners, and cancel amplitude terms, making them attractive low-latency options for clean tones while warning they degrade in noise and at peaks.
Cedron Dawg derives a second family of exact time domain formulas for single-tone frequency estimation that trade a few extra calculations for improved noise robustness. Built from [1+cos]^k binomial weighting of neighbor-pair sums, the closed-form estimators are exact and are best evaluated at signal peaks for real tones, while complex tones do not share the zero-crossing limitation. Coefficients up to k=9 are provided.
Cedron Dawg presents a new family of exact time-domain formulas to estimate the instantaneous frequency of a single pure tone. The methods generalize a known one-sample formula into k-degree neighbor-pair sums with spacing d, giving exact results in the noiseless case and tunable robustness in noise. The paper explains why real-tone estimates must be taken at peaks and shows the formulas also work for complex tones.
Cedron Dawg shows how to construct a base-10 logarithm table from scratch using only pencil-and-paper math. The recipe combines simple series for e and ln(1+x) with clever factoring and neighbor-based recurrences so minimal square-root work is required. Along the way the post explains a practical algorithm, high-accuracy interpolation and inverse-log reconstruction so you can reproduce published log tables by hand.
Cedron Dawg derives closed-form three-bin frequency estimators for a pure complex tone in a DFT using a linear algebra view that treats three adjacent bins as a vector. He shows any vector K orthogonal to [1 1 1] yields a = (K·Z)/(K·D·Z) and derives practical K choices including a Von Hann (Pascal) kernel and a data-driven projection. The post compares estimators under noise and gives simple selection rules.
Cedron Dawg derives an exact two-bin frequency formula for a pure complex tone in the DFT, eliminating amplitude and phase to isolate frequency via a complex quotient and the complex logarithm. He presents an adjacent-bin simplification that replaces a complex multiply with a bin offset plus an atan2 angle, and discusses integer-frequency handling and aliasing. C source and numerical examples show the formula working in practice.
Cedron Dawg derives closed-form DFT bin formulas for single complex exponentials, eliminating the need for brute-force summation and showing how phase acts as a uniform rotation of all bins. He also gives a Dirichlet-kernel form that yields the magnitude as (M/N)|sin(δN/2)/sin(δ/2)|, explains the large-N sinc limit, and includes C code to verify the results.
Cedron Dawg shows how pairing forward and backward exponential smoothing produces exact, frequency-dependent dampening for sinusoids while canceling time-domain lag. The average of the two passes scales the tone by a closed-form factor, and their difference acts like a first-derivative with a quarter-cycle phase shift. The post derives the analytic dampening formulas, compares them to the derivative, and includes a Python demo for DFT preprocessing.
Cedron Dawg shows how to get exact amplitude and phase for a real sinusoid whose frequency does not land on an integer DFT bin. The method treats a small neighborhood of DFT bins as a complex vector, builds two basis vectors from the cosine and sine transforms, and solves a 2x2 system using conjugate dot products to recover real coefficients that give amplitude and phase. A C++ example and sample output verify the formulas.
Cedron Dawg derives an exact closed form formula to recover the frequency of a pure real sinusoid from three DFT bins, challenging the usual teaching that it is impossible. The derivation solves for cos(alpha) in a bilinear form and gives a computationally efficient implementation (eq.19), with practical notes on implicit Hann-like weighting and choosing the peak bin for robustness.
Cedron Dawg derives a closed-form expression for the DFT bin values produced by a pure real sinusoid, then uses that formula to explain well known DFT behaviors. The post walks through the algebra from Euler identities to a compact computational form, highlights the integer versus non-integer frequency cases, and verifies the result with C code and printed numeric output.
DFT bin values can be seen as centroids of weighted roots of unity, a geometric picture that makes many DFT properties immediate. Cedron Dawg uses the geometric-series identity and polar plots of integer and fractional tones to show why constants appear only at DC, how wrapping relates to bin index, and how phase, scaling, offsets, and real-signal symmetry affect bin magnitudes and angles.
Euler's equation links exponential scaling and rotation by translating a distance along the unit-circle circumference into a complex value. Cedron Dawg develops an intuitive geometric view, using integer and fractional powers of i to show how points, roots of unity, and multiplication behave as additive moves along that circumference. The article also connects this picture to radians and the conventional Taylor-series proof for broader perspective.
Thanks for the detailed update. You seem to have covered the "calibrate for it" option I was going to suggest. The only other thing I can suggest is that if...
I thought this post might get a little more attention than it has, especially from R B-J. Which one of these equations better describes reality?Here are the graphs...
Honestly, it's more frustration than enthusiasm, but I still hope it is helpful. There is no point in doing the extra calculations if the data doesn't support...
You're welcome. I appreciate your positive response, they are rare.Any of the exact formulas should solve your phase dependency problem. For a pure generated...
That looks like nice high SNR data to me. The close up indicates that you are not going to have good success with the nearly instantaneous time domain formulas.I...
You have lots of options. In my limited experience with an inexpensive radar unit the variation in frequency from cycle to cycle exceeded the approximation error...
It's better to have exact formulas for real valued signals instead of approximation formulas for complex valued tones. Also, your conversion process will introduce...
You could use a DFT and formulas that are exact for real valued signals. I disagree with Dan, I would say the conjugate peak is 'interfering' not 'aliasing'.You...
That's an interesting example. It could apply to hardware or software. I don't think there is any expectation of correlation between levels in a hierarchy and...
From the Wikipedia article:"Suppose an event has two possible explanations. The explanation that requires the fewest assumptions is usually correct....However, Occam's...
Yes, there will be function calls where you can construct customized notes with any pitch, delays, and panning. There will also be embellishments to the note...
I appreciate the encouraging words. This is one of those back burner projects I finally decided to tackle. It is very efficient, and you asked before, the tones...
Thanks for the reply.I recommend you download the code and look at it, and your answers would be obvious. I am not trying to re-invent the wheel. I did delve...
Yep, turn your computer keyboard into a music keyboard. Almost four full octaves.https://forum.gambas.one/viewtopic.php?t=1651This is a project that implements...
Here a couple of answers of mine from the DSP Stack Exchange:https://dsp.stackexchange.com/questions/69186/dft-...https://dsp.stackexchange.com/questions/67243/wher...How...
I'm sorry, by "meaningless" I meant "it doesn't matter", not "stupid".If you select a frame size that is a whole number of cycles in the frame, say seven. No matter...
To elaborate a little bit on what it seems you are trying to accomplish. For a pure complex tone, a shift in the phase causes tandem rotations of all the bins. ...
You are in essence asking a nonsensical question. I hope the following explanation helps. You didn't specify a real or a complex signal, so I will illustrate...
The second part is about Academic publishing. This is much more important to me.There are basically three steps to get an idea to be the currently accepted best...
"Dear readers, I apologise for not pursuing this development in
the professional venue of peer-reviewed publishing (don't have enough
energy)."
Don't apologize...
https://en.wikipedia.org/wiki/Double-slit_experime..."In the basic version of this experiment, a coherent light source, such as a laser beam, illuminates a plate...
"Thanks for the clear reply. Your example of room light intensity is intuitive."And it's false. That kind of room light is not coherent.The second part is simply...
Let me get this straight, you model a continuous signal with a sinusoid that is a whole number of cycles in your DFT frame. Then you apply what amounts to be some...
I don't know. I kind of appreciate old posts being read.The topic of FPGAs is kind of unfamiliar ground to me, so I didn't make a response, as there didn't really...
When you have a pure tone in a signal frame, the DFT spectrum follows a pattern. For any tone, the results are proportional to the input tone in terms of any real...
At 8500 Hz tone:1/8500 = 0.000117647 seconds per cycle0.0064 seconds per delay (your figure)0.0064 / (1/8500) = 54.4 cycles per delay (wrappings)Perhaps you should...
Unfortunately for this situation, I'm not a MATLAB user, nor can I tell how dedicated you are to applying the "gccphat" function.Presuming you want the answer to...
That's a good rule for floating point, but those are integers. A multiply by 0.25 would force several unnecessary conversions. The /4 can be replaced by >>2...
This answer is what you might be looking for.https://dsp.stackexchange.com/questions/62893/#630...It divides the arc up without the division, and multiplies the...
Here is an improved answer over the one in my earlier reply to Dan.The '7' is actually the number of effective significant bits. Headroom calculations are application...
IIRC, some of the methods did this by computing the two values and comparing them. Anyway, the post covered the OP's equation to some detail as well as many other...
Dan,I can't believe you didn't mention these:Efficient Magnitude Comparison for Complex NumbersBest Approach to Rank Complex Magnitude Comparision Problem
The difficulty I have is my network connection is slow, limited, and the MathJax takes a long time to render. To get around this, about 5 articles ago I started...
This posting is a continuation from the comments at Phase and Amplitude Calculation for a Pure Complex Tone in a DFT using Multiple Bins.Thinking about it a little...
In that regard, it was poorly worded on my part, I maybe should have said "an example that seems to counter", or just left out the "counter". Again, this example...
Here is a much simpler example to understand how the function values of two converging sequences can diverge. Suppose f(x) = 1/x and you have two sequences a_n...
Okay, look at my words: "but I also have a counter example the seems to indicate that 0.9999... and 1.0000... are distinct."See the "seems"? (Should have been...
Here is a neat profile of a flaming intuitionalist at work you may enjoy:https://www.quantamagazine.org/the-octonion-math-t...From the "Final Theory" section, my...
Well, be careful. It does matter how you get to infinity.I think your path is actually better. This is material that is best contemplated/learned by being interest...
Spoken like a true intuitionalist. Whether it "makes sense" or not is immaterial. That is kind of the whole thrust of Real Analysis, a playground for the reductionist...
Yes, that is the crux of it. Understanding that the limit is usually never reached, only approached, yet is still a distinct knowable value.0.999999... and 1.00000... ...
Hi Bernhard and Rick,They are not distinct. The dots represent a limit argument and the limit of both is the same value. Thus decimal representations of numbers...
Hi Rick,It's fun to see when you get mathy.I'm in the camp that considers zero distinct from the Natural numbers. I don't think the leap to having the concept...
On 16 bit VS 24 bit. Suppose you divided a mile into 64K pieces. Each piece would be 5280/65536 ~=~ 0.08 feet ~=~ 1 inch.If you are measuring a changing length...
It sure looks to me like after the first four Octave steps you should have your original signal back, i.e. h = R. As for the other parts, I can't help any.
Hi Bernhard,Thanks for the reply and kind words.It seems to me that every generation, since the dawn of civilization, has decried that the following generation are...
Let me propose another analogy:Suppose you visited a country where they did addition by taking the anti-log of each number, multiplied them, then took the log to...
Thank you. However, my prowess is not what I want to debate (or defend).What this example points out, is the huge blind spot created by doing discrete math coming...
This is a followup to my earlier forum posting:
Has any one seen this window function?
Nobody claimed to have seen that member or thought it was special. I think...
Okay, there was indeed a prize at the end of this search. If you want to find out what it is, follow this link to my latest article:[Spoiler protected Title]A...
I think the whole window thing is easily understood from a definitional basis.Compare how the (1/N) DFT is related to its continuous counter parts, the FT and DTFT,...
Hi Rick, thanks for your reply. For any N more than fingers and a few toes, I totally agree, no functional difference beyond a gnat hair. This is more of a theoretical...
Agreed about the boxcar window not being a window. If this window function is "new", then the best name IMO, as I mentioned, is "The Discrete VonHann". Follow...
It is, very close. I would call it the Discrete VonHann (I consider the term hanning erroneous even if it is commonly used).$$ \lim_{N \to \infty} w[n] = VonHann[n]...
Here is the definition:\( w[n] = 4 \sin \left( \frac{n}{N}\pi \right) \sin \left( \frac{n+1}{N}\pi \right) \)It's special, because it ensures that$$ w[0] = w[N-1]...
If you know that your negative frequency integral calculations are supposed to give you the complex conjugate value of the postive one, there is no point in calculating...
I didn't notice Platybel's observation that you were missing the DC component in your data. You've tried zero padding, maybe you should try zero insertion.Another...
Good. These are extremely powerful tools in the right situations. I think upon review, the original answers are going to look excessively clear.Power systems?...
Your alternative to doing zero padding in the frequency domain is to recognize that the bin values in a 1/N normalized DFT are the coefficients of the Fourier series...
You've done well. There are three common conventions for normalizing the DFT.1) 1 forward 1/N backward2) 1/sqrt(N) forward, 1/sqrt(N) backward3) 1/N forward, 1...
It looks like from your "spatial location" chart that you are looking for a real valued solution. A property of the DFT is that the bin values for real valued...
You're welcome. It's so easy to be misled when the proper terms aren't used. Having said that, the forward and reverse FTs are only distinguished by a negative...
"I have a continuous function that defines a 1D frequency domain signal."Let's stop right there. In the frequency domain you have a spectrum. Numerically the...
It may help you conceptually to view the same situation in common logarithms and scientific notation.For instance:log(2) ~=~ 0.301log(200) ~=~ 2.301log(0.02) ~=~...
I regard to: "(correct me if I am wrong) but it looks like this equation only has an interesting value at m=k."The equations of mine I referred you to earlier are...
This blog article of mine completes what you started.
DFT Bin Value Formulas for Pure Real Tones
Note: The simplification assumption done with equation (20)...
Hi Sara,
If you have had your presentation already, I hope it went well. I didn't see this until just now.
I would start with the proclamation: "It is the...
That's interesting. I've never hung out there so I wouldn't know.You don't have to tell them it's MathJax. I do all my rough drafts as .tex files, then I have...
That's hard for me to read. Since you didn't post the book's answer, I can't tell you whether it's equivalent. The thing with trig expression is they are incredibly...
Upon a reread, it isn't even that hard:$$ \sin( \frac{2}{3}\pi ) = \frac{\sqrt{3}}{2} $$Similar for the other terms.Sorry, I should have looked closer first.+++++++++++++++++++++The...
I highly recommend that you read my blog The Exponential Nature of the Complex Unit Circle$$ e^{i \theta} = \cos( \theta ) + i \sin( \theta ) $$$$ e^{-i \theta}...
I'm just looking at your charts without diving into the gory detail. Nobody has uttered the magic words "median filter" yet so I thought I would. Those look...
Hi Rick,By my testing, all those are obsolete. None are exact, most require a lot of points to be near accurate, and none are as robust in noise as the ones I...
The good news is a complex signal is simpler than a real one.The bad news is I don't really know the nature of your signal so I can't tell you how good these will...
Ah, a brute force approximation. Where's the elegance in that?Just kidding. If it is fast enough, generally simpler is better. Thanks for the followup letting...
Well it should, it is a Taylor series centered at zero. But that is the key, the expected argument values (y) are also centered on zero, so by symmetry, tweaking...
This is how I would do it. Split your value into its integer (n) and fractional (f) parts.$$ 2^x = 2^{n+f} = 2^n 2^f = 2^n e^{\ln(2)f} = 2^n L e^{\ln(2)f -...
0 is rational because 0 is an integer and the integers are a subset of the rationals.Alternatively:A rational number is a number that can be represented as the ratio...
#4 is quite incorrect as well. Only true for finite series. It does not necessarily hold if you get to go to infinity as your ... implies. Consider the Arctangent...
Consider this:The sin(x)/x limit is my example of choice to introduce the concepts of limits to newbies, especially those who struggle with the concept.Draw a row...
Hi Rick,Pendulums have periodic motions which approximate simple harmonic motion. The difference is $\theta$ vs $\sin(\theta)$ in the guiding differential equation. ...
That is very cool. Thanks for sharing that Rick.To me, who tends to see things through DFT colored glasses, this looks like a representation of the real part of...
Thanks for the thoughtful reply.Discussing #1 will take us too far afield. I don't disagree at all. Unfortunately, I wouldn't characterize our democracy as strong...
Well Mr. Tomkins, that is a beautiful rendition of the siren song, and it is hard to resist. Yes, I know it is a big thing right now, but that does not necessarily...
Funny you should mention edge detection. This is my latest answer at DSP.SE:https://dsp.stackexchange.com/questions/58341/afte...Personally, I am not enthralled...
Hmmmmmmmmmm,Let's see.1) A good text editor2) A good compiler3) A half-way decent computer with a sound card.Most of us already have those, so really cheap.Let's...
Rough draft, but I hope you get my drift.Here are some prototypes. I think if sections are empty, they should be eliminated entirely for that user.Ced=================================================User...
I wish I would have found this years ago.
If you like the way you could rapidly design and code in VB in Windows, you want to seriously check this out. It is...
Followup:I took a small excerpt of ten waveforms from one of the strikes in "sound_example_8.mp3".
This is what the 1/N normalized DFT looks like:
Zooming in...
Sorry, I should have mentioned that I am quite familiar with the concept of this missing fundamental. What your ear hears (and autocorrelation detects) is the repeat...
Hi Rick,I, too, was puzzled by the lack of the fundamental. Out of the three explanations so far:1) Sounding board2) Recording Equipment3) Actually MissingI would...
Or my generalized followup articles:https://www.dsprelated.com/showarticle/1051.phphttps://www.dsprelated.com/showarticle/1056.phphttps://www.dsprelated.com/showarticle/1074.phpThey...
This problem is usually posed as one coin being spun around another. From the stationary penny's perspective, the rotating penny makes one revolution. From an...
The sinc function is for the continuous case and is only an approximation in the discrete case.It is fairly straightforward to derive the DFT bin values of a rectangular...
The math looks kind of bad to me. As the others have already pointed out, (5) comes from applying the geometric series sum formula to the "n=0 to L-1" summation...
Hey, that last point is a neat trick. New to me, so I looked it up.Solve for A and B:A + Bi = ( a + bi )( c + di )Straightforward:A + Bi = ( ac - bd ) + ( ad +...
The two biggest questions in an application like this are:1) Does it need to be done real time? Your answer is no.2) Does it have to be done efficiently? You haven't...
You're welcome.A few notes:1) This code is for a stereo file. If you want to produce a mono file the track count should be one. This also affects the 'theBytesPerSample'...
Reading and writing .wav files is rather straightforward in C or C++, you don't need any special libraries. There are a couple of header blocks that hold the configuration...
All the answers have been good. I just wanted to add the term "unitary matrix" to the discussion for the 1/sqrt(N) scaling. It is the one that preserves the...
"I believe the reason for this is my one frame of sine wave does not contain the complete cycles."Yep, this is your main problem. This is why I added my edit of...
Hi,You have a few things wrong:1) As Y(J)S alluded to, real valued signals have the top half of the DFT as the conjugate mirror of the bottom half so if you rotate...
Rick, yes and yes.If you look carefully at the photo, the line m is actually superimposed. Poor color choice.The problem is also poorly worded. Taken literally,...
It would have been clearer had I originally said "Thus the solution stays in the same place horizontally." or "Thus the solution stays in the same place on the...
Assuming the line is moved in a parallel manner, e.g. the sidewalk is wider or narrower.Yes, it will move vertically on the diagram, but not horizontally. It will...
Hi Rick,I think you have made a small mistake in your analysis of the book's solution. If you move the line "m", you also move the point "B'" as it is supposed...
Hi Rick,No.The first paragraph is the same sentiment as SteveSmith's comment below. Showing alternatives to the final solution would better show why the final...
Hmmmmmm. I don't think it is as bad as you say. Had they shown an additional different position for 'C', perhaps several of them, why this suffices as a "proof"...
Here is a suggestion: There is a large history of questions in your forum, and an even larger one in comp.dsp. I would think that looking through these should...
Hi Jeff,I think that is how it works. The permission is probably stated somewhere in the fine print. I don't belong to LinkedIn so I can't tell you for sure.The...
I suspect that "Joe Jones" used the "Add Connections feature" and RL's address was in JJ's contact list. Since he was already a member, a confirmation email was...
Hi Rick,I don't have an account on LinkedIn. Every once in a while I get "invitations" from LinkedIn to join as a contact to so-and-so who I have corresponded...
You probably have a bug in your code. The clicks come from big discontinuities in the signal which shouldn't be there if you are just doing a forward and reverse...
With other tones and noise you won't be able to get an exact answer. There are a bunch of frequency estimators which can be divided into two classes: exact and...
I whipped up a graphic to demonstrate the sum of two tones of the same amplitude.The top graph is the two tones cos(A) and cos(B). The bottom graph has cos(A)+cos(B)...
Hello techn0mad,A key assumption of the approach I mentioned above is that the two tones are of the same amplitude. If they aren't, the summation equation becomes...
A few questions:1) How many wavelengths are in each short duration?2) Are they consistent?3) Is the sampling rate somewhat steady?Here is an approach which may work...
My suggestion wasn't based on literature, so there may be some. There
is a similar approach using a webcam feed instead so you may find
something written about...
I'm not sure I agree with the need for your assumption about PRGs, but accepting it as a requirement you can still do it with an audio stream. The problems mentioned...
Anybody who uses LabVIEW should probably be aware of this:thehackernews.com/2017/08/hacking-labview-vi-file.htmlI'm not a user, but I think I recall seeing it discussed...
There is a faster method for smaller N, but it probably isn't fast as you desire. Any potential savings also depends on the size of N.If you think of the DFT and...
For complex signals, a phase shift in the time domain turns into rotation in the DFT.For real values signals, which can be thought of as the sum of two complex signals,...
Here's a suggestion building on what Y(J)S did:x(t) = a log( k*t + d_x )y(t) = a log( k*t + d_y )Estimate "a". X(t) = exp( x(t)/a ) ~=~ k*t + d_xY(t) = exp( y(t)/a...
Your distortion probably comes from failing to account for the perspective view introduced by your camera.Your ultimate goal is to build a mapping from the pixel...
What is the nature of the image? For instance, is it a generated image or a picture taken by a camera?I have home grown math for both cases. Too complicated...
I'm sorry, I misunderstood your original question.I thought you were trying to find the phase and magnitude of the harmonics.That becomes the first step. Once...
Hi electrin,I don't know a better way than the DFT. However, I can make some recommendations for your DFT usage and give you formulas for when the frequency varies...
Looking at your equation again, it seems you are doing the same calculation we recommended. Therefore, you're problem is probably how you are calculating "A".Could...
Candan's 2013 formula is compared in my three bin article. One of my new formulas is equivalent and the others are better.Please cite any formulas since then that...
These are my articles on frequency estimation for a pure complex tone usng a DFT:A Two Bin Exact Frequency Formula for a Pure Complex Tone in a DFThttps://www.dsprelated.com/showarticle/1039.phpThree...
I disagree. Judging by the second diagram in his StackExchange posting, it seems to me that he has the fundamental frequency and phase stuff pretty well figured...
You're welcome.I think 100 waveforms may be overkill and you will need to do a huge FFT. The simplest (at least conceptually) way to find a frequency in the time...
Your situation is the kind of application for which the DFT is ideal. What you want to do is select a frame size that is a whole multiple of your repeating pattern. ...
Thanks for the reference to my article, but it is not appropriate for this situation. Even if you do separate out all the tones, my article is about finding the...
What you are doing is equivalent to using a particular window function.
I have renamed your timeSeries to S to shorten the lines for display purposes.Here is the...
First off, your definition is incorrect. You are missing a 2Pi in the exponent. It is also important to specify whether your signal is real or complex valued.Second,...
Upon reconsideration, I may have been wrong before. Maybe you do want to keep the squarish waveform and use the harmonics as confirmation. As I said in my other...
Hi Roger,In light of the presence of the harmonics, you will want to adjust your DFT size so that both your frequencies and their harmonics are whole integer multiples...
"something of the form (a+jb)^k is being done but how exp(-j*2*pi*k*n/N) is decomposed into this"exp(-j*2*pi*k*n/N) = e^(-j*2*pi*k*n/N)= [e^(-j*2*pi*n/N)]^k= [cos(2*pi*n/N)-j*sin(2*pi*n/N)]^ka...
Hi Roger,Why are you trying to convert the signal to a square wave and then rounding off the corners with a low pass filter?All you are doing is introducing a bunch...
Sharan123,The DFT *is* a matrix multiplication.Z = F * SWhere Z is your DFT bin set, F is a matrix composed of the sinusoidal basis vectors, and S is your signal.b_var...
Hi Roger,As I read it, it is not clear from your post whether you are trying to implement a tone detection solution or just using that as an example to learn how...
Adding sinusoids can be a powerful technique. There are two special cases where the addition of sinusoids have nice mathematical properties.
The first is what...
That's a good hint, but you want to wrap another set of parentheses around it like this:#define PI ( 4 * atan(1) )Otherwise statements like this will not give you...
I should have said "a sum day". Yep, we get one every month for quite a few years yet. However, today is especially special because it is the only Pi day that...