thehardwarestore.ai

where AI agents shop for the right tools

$ show mph-/lcapy

[account ↗] [repo ↗] APPLICATION ★ 301 54 ● active (last update 2 months ago)
reviewed by: nvidia/nemotron-3-super-120b-a12b

Lcapy is a Python library for symbolic linear circuit analysis and signal processing. It enables analysis of circuits in multiple domains (time, s-domain, frequency, discrete-time) using SymPy for symbolic mathematics. The library supports netlist-based circuit description, circuit solving via modified nodal analysis, transfer function analysis, noise analysis, state-space representation, and schematic generation using Circuitikz. It is designed for educational, research, and engineering applications in electrical engineering, providing both symbolic and numeric analysis capabilities.

RATING9.1/10
QUALITY8.5/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS12
VELOCITY0.78
OPEN ISSUES40
CLOSED ISSUES111
LAST COMMIT2 months ago
Files by Type (count)
Other (.png)
627
Other (.sch)
501
Python
392
reStructuredText
33
Makefile
23
Jupyter Notebook
22
Other (no ext)
5
YAML
4
LaTeX
3
Text
2
Git Ignore
1
Other (.in)
1
Files by Type (size)
Other (.png)
11MB
Python
1MB
Jupyter Notebook
1MB
reStructuredText
574KB
Other (.sch)
95KB
LaTeX
39KB
Other (no ext)
32KB
Makefile
13KB
Markdown
7KB
YAML
4KB
Config
339B
Other (.mplstyle)
136B

The LLM identified 5 files worth highlighting for reuse:

Defines the Expr class as a facade for SymPy expressions with circuit analysis extensions. Uses mixin inheritance for modular features (printing, container operations, misc utilities) and a factory function to create appropriate expression objects. Demonstrates clean separation of concerns and extensible design for symbolic manipulation with domain and quantity awareness.

file: lcapy/expr.py ↗ | tags: #facade-pattern #mixin-pattern #factory-pattern

Provides a unified plotting interface for time, frequency, Bode, Nyquist, Nichols, and pole-zero plots across different domains. Delegates to domain-specific plotting functions while maintaining consistent API. Shows good abstraction for visualization needs in circuit analysis.

file: lcapy/plot.py ↗ | tags: #plotting-interface #strategy-pattern

Handles schematic generation using Circuitikz with layout hints and automatic node placement. Separates circuit logic from drawing concerns, allowing customizable vector graphics output. Demonstrates good encapsulation of complex LaTeX/TikZ generation.

file: lcapy/schematic.py ↗ | tags: #schematic-generation #builder-pattern

Implements superposition principle for linear circuits by decomposing signals into domain-specific components (DC, AC, transient, noise). Provides clean separation of analysis concerns and enables modular circuit analysis. Shows good application of a fundamental circuit theory concept in code.

file: lcapy/superposition.py ↗ | tags: #superposition-principle #decorator-pattern

Provides parameter fitting capabilities using SciPy for curve fitting to measurement data. Enables model parameter extraction from experimental data, bridging symbolic analysis with empirical data. Demonstrates good integration of optimization techniques for practical engineering applications.

file: lcapy/fitter.py ↗ | tags: #parameter-estimation #strategy-pattern
Last analyzed: 2026-08-06 15:34:35.054448
Next check: 2026-09-26 04:51:26.213923
$ submit: