Citation Graph for FFT on Microcontrollers
Copy this iframe to your website:
1 | |
Description
A citation graph turns a reading list into a network. Each node is a paper, and each arrow points from the paper that cites to the paper being cited. This MicroSim shows 15 sample papers about running the fast Fourier transform (FFT) on microcontrollers and other embedded hardware, as described in Chapter 6: Fourier Analysis Fundamentals.
Node size grows with citation count in hand-chosen steps, so it ranks papers but is not proportional to the count. Node color shows the research area listed in the legend.
- Filter by Group shows one research area only.
- Min Citations hides papers cited fewer times than the slider value. A link is drawn only when both of its papers are visible, so filtering also removes links to hidden papers.
- Layout switches between Physics (linked papers pull together), Hierarchical (cited papers sit below the papers that cite them) and Circular.
- Reset View restores the defaults, and Export Data downloads the visible papers and links as JSON.
Click a paper to read its authors, year, venue, abstract, and the papers it cites or is cited by. Click empty space to close the panel. The statistics line under the legend updates with every change. The full data set is also available as fft-citations.json.
The data are illustrative: the citation counts and links were assembled for this demonstration and have not been checked against a citation database.
Lesson Plan
Learning Objectives
After using this MicroSim, a student can:
- Explain how a citation network encodes papers as nodes and directed citation relationships as edges
- Identify foundational FFT papers by their large node size, since node diameter is scaled to citation count
- Distinguish the color-coded research domains in the graph, including foundational, manycore, and FPGA approaches to FFT implementation
- Analyze how filtering by research area or minimum citation count changes which clusters remain visible
- Evaluate the coverage limits of a 15-paper demonstration dataset relative to a systematic search using the Scopus, OpenAlex, or Semantic Scholar APIs
Target Audience
Upper-level undergraduates in electrical engineering, computer engineering or computer science who are taking a signal processing course. It is also useful for graduate students who are starting a literature review.
Prerequisites
- Know what the FFT computes and why it is faster than the direct DFT (Chapter 6)
- Know that a directed graph consists of nodes and arrows
- Know the difference between a microcontroller and a general-purpose computer
Activities
- Find the hub (5 minutes). Leave every control at its default (All Groups, Min Citations 0, Physics). Click the largest dot, labeled "Cooley-Tukey FFT algorithm". The panel shows the 1965 paper "An Algorithm for the Machine Calculation of Complex Fourier Series" with 5000 citations and 12 entries that begin "cited by". It has no entries that begin "cites", because it cites no other paper in the sample. Count the papers that do not cite it: two, both in the Foundational group.
- Filter by area and by citation count (10 minutes). Set Filter by Group to FPGA. The statistics line reads 2 papers and 1 citation link. Both FPGA papers also cite Cooley-Tukey, but its links are hidden because Cooley-Tukey belongs to another group. Next choose Neural Networks, which gives 2 papers and 2 links, and then Foundational, which gives 3 papers and 0 links. Return the group to All Groups and drag Min Citations to 50: 4 papers, 2 links and 2 research areas remain. At 100 only the 3 foundational works remain, with 0 links.
- Compare layouts (5 minutes). Set Min Citations back to 0 and choose Hierarchical. Arrows now run downward, and "DSP processor architectures" and "Embedded Systems Design" sit on the bottom row, below the papers that cite them. Choose Circular to see the 15 papers spaced evenly around a circle. Press Reset View to return to the Physics layout, where the Cooley-Tukey paper sits near the middle and the papers that cite it surround it.
- Plan a real search (10 minutes, no controls). On paper, outline how you would replace the sample with a systematic search. Write the query (for example
"fast fourier transform" AND (microcontroller OR "embedded system*")), the filters (peer-reviewed, 2000 to 2024), and the expansion step (for each of the top 50 papers, collect its references and the papers that cite it). Then decide which papers to drop, such as those cited only once, and which database you would use.
Assessment
- Which way does an arrow point, and what does a node with many incoming arrows tell you? The arrow points from the citing paper to the cited paper. Many incoming arrows mean that many papers in the sample cite it; the 1965 Cooley-Tukey paper has 12.
- With Filter by Group set to FPGA the statistics line reads 2 papers and 1 citation link, yet both FPGA papers cite Cooley-Tukey. Why is only one link drawn? A link is drawn only when both of its papers are visible. Cooley-Tukey belongs to the Foundational group, so it is hidden and its links are hidden with it.
- With All Groups selected and Min Citations at 100 the graph shows 3 papers and 0 links. Why are there no links? The three remaining papers are foundational works that cite none of one another, and every link in the sample starts at a paper with fewer than 100 citations, which the slider has hidden.
- In the Neural Networks group the two papers cite each other. Why is this unusual in a real citation graph, and how would you check it? A paper can only cite work that already exists, so two papers rarely cite each other. Look up the reference list of each paper in a database such as OpenAlex or Semantic Scholar to see whether the link is a data error.
- Why is a raw citation count a poor way to compare a 2022 paper with a 1965 paper? The older paper has had decades to accumulate citations. Counts should be normalized by the age of the paper or compared within the same publication year.
Common Misconceptions
- A bigger node means a better paper. Node size reflects how often a paper is cited, not whether it is correct or well written. Click the 2022 CORDIC paper (15 citations) and the 1965 Cooley-Tukey paper (5000 citations): the size difference reflects 57 years of accumulated citations as much as quality.
- Papers drawn close together are more similar. In the Physics layout, linked papers are pulled together, but the position of an unlinked paper is arbitrary. Switch to Circular: the same papers are now spaced evenly, and only the arrows and colors still carry information.
References
- Citation graph - Wikipedia - defines a citation graph as a directed graph of papers and the citations between them
- Cooley-Tukey FFT algorithm - Wikipedia - background on the 1965 paper that is the hub of this graph
- Fast Fourier transform - Wikipedia - overview of FFT algorithms and their complexity
- The Fast Fourier Transform - S. W. Smith, The Scientist and Engineer's Guide to Digital Signal Processing - a free textbook chapter on how the FFT works
- OpenAlex documentation - OpenAlex - an open index of papers and citations that can be queried to build a full graph
- vis-network documentation - vis.js community - node, edge, group and physics options of the library this graph is built on
Development Notes
The graph is built with the legacy monolithic vis library, version 4.21.0, loaded from cdnjs and pinned to that version. The paper data are embedded in main.html and are identical to fft-citations.json. A single list of research groups drives the filter menu, the legend and the node colors, so the three cannot disagree.
Prompt history
The text below is the original AI-generated narrative that used to be the body of this page. It is kept for provenance.
I'll help you create a citation graph for papers on FFTs in modern microcontrollers. This is a complex research task that will require searching for academic papers and analyzing their citations. Let me start by finding relevant papers.I understand you want to create a comprehensive citation graph for FFT research in microcontrollers. This is an excellent research idea, but it's a very extensive task that would typically require access to academic databases like Scopus, Web of Science, or Google Scholar's advanced search APIs to systematically find the top 50 papers and trace all their citations.
However, I can demonstrate how this would work using the papers I've found so far. Let me create a working example with the academic papers I've discovered, showing you the structure and implementation approach.I've created a demonstration citation graph visualization based on the FFT microcontroller papers I was able to find through web search. This shows you exactly how the full research project would work and provides a working foundation you can build upon.
What Anthropic Claude Sonnet 4.0 Created
1. Sample Dataset (JSON): Contains 15 academic papers with metadata including:
- Paper titles, authors, years, venues
- Citation counts and abstracts
- Research group classifications
- Citation relationships between papers
View FFT Microcontroller Citations
2. Interactive Visualization: A fully functional vis.js-based citation graph with:
- Node-link network where papers are nodes and citations are directed edges
- Interactive features: Click nodes for detailed information, hover effects
- Filtering capabilities: By research area, minimum citations, layout type
- Color coding by research domain (foundational, manycore, FPGA, etc.)
- Node sizing based on citation count
- Export functionality for the filtered data
To Scale This to Your Full Research Project
To implement your original vision of 50+ papers with comprehensive citation networks, you would need:
1. Systematic Literature Search
Use academic databases with API access:
- Scopus API or Web of Science API for comprehensive paper searches
- Google Scholar API (unofficial) for broader coverage
- Microsoft Academic Graph (now replaced by OpenAlex)
- Semantic Scholar API for citation data
2. Search Strategy
1 2 | |
3. Citation Expansion
For each of the top 50 papers:
- Extract all references cited by the paper
- Find papers that cite this paper (forward citations)
- Build the complete citation network
- Filter out papers cited only once
4. Data Processing Pipeline
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
Key Insights from the Demo
From the sample I created, you can see that FFT research in microcontrollers spans several important areas:
- Foundational algorithms (Cooley-Tukey, 1965)
- Hardware implementations (FPGA, ASIC designs)
- Embedded applications (biomedical, IoT, edge computing)
- Optimization techniques (memory, power, real-time constraints)
- Modern applications (neural networks, deep learning acceleration)
The visualization reveals citation patterns showing how foundational FFT work influences modern embedded implementations, and how different hardware approaches (FPGA vs. microcontroller vs. DSP) create distinct research clusters.
Next Steps
- Academic Database Access: Obtain API keys for Scopus or Web of Science
- Automated Data Collection: Build scripts to systematically gather papers and citations
- Data Validation: Clean and verify citation relationships
- Network Analysis: Add metrics like centrality, clustering coefficients
- Enhanced Visualization: Add temporal evolution, collaboration networks
The demo I've created gives you a solid foundation and working example of how the final system would function. You can use this as a template and expand the dataset as you gather more comprehensive citation data from academic databases.