Claude-skill-registry compare_methods

ライブラリ内の類似した信号処理手法の技術的・物理的な違いを分析し、比較解説付きのノートブックセクションを作成する

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/compare-methods" ~/.claude/skills/majiayu000-claude-skill-registry-compare-methods && rm -rf "$T"
manifest: skills/data/compare-methods/SKILL.md
source content

Document Method Comparison

This skill provides a procedure for creating educational sections in Jupyter Notebooks that compare two or more methods (e.g.,

gwpy
vs
gwexpy
).

Instructions

  1. Technical Analysis:

    • Examine the source code of both methods to identify implementation differences.
      • Averaging/Integration: Does it downsample the data using a sliding window? (e.g.,
        gwpy.heterodyne
        )
      • Filtering: Does it use a Low-Pass Filter (LPF) like Butterworth or FIR? (e.g.,
        gwexpy.lock_in
        )
    • Compare numerical characteristics like time resolution and frequency response (aliasing).
  2. Physical/Conceptual Context:

    • Check if there are differences between engineering definitions and package conventions.
      • Example:
        gwpy.heterodyne
        effectively performing "Homodyne" detection relative to the carrier frequency.
    • Identify the target use case for each (e.g., stationary signal vs transient analysis).
  3. Construct Comparative Sample Code:

    • Create a synthetic signal that highlights the differences (e.g., a signal with rapid amplitude/phase changes).
    • Execute both methods on the same input signal with comparable parameters (e.g., matching the averaging stride with the filter bandwidth).
    • Visualize results in a single plot for direct comparison.
      • Use
        plt.step(..., where='post')
        for discrete averaged data.
      • Use
        plt.plot(...)
        for continuous filtered data.
  4. Draft Markdown Explanation:

    • Use tables to summarize differences (Algorithm, Resolution, Post-Processing, Features).
    • Provide a clear summary statement on "which method to choose" for specific user goals (e.g., "Use
      .lock_in()
      for control system transient response").
  5. Integration:

    • Use Python scripts to inject these cells (Markdown and Code) into the target
      .ipynb
      file, typically appending to the end or inserting into a relevant section.