Circuit Solver
Simple Nodal Analysis Tool
A Flask and NumPy circuit-analysis app that builds modified nodal analysis systems, solves node/component quantities, and reports topology diagnostics.
Employer signal
What This Project Shows
This project shows engineering math implemented as software: parse a circuit description, form a matrix system, solve it numerically, and explain the result to a user.
Problem
What Needed To Be Solved
Hand-solving circuits is slow and easy to miscopy. A useful solver needs to handle component equations, aliases, ground choice, dependent sources, and diagnostics for invalid circuits.
Approach
How I Built The Solution
I built the solver around a Python `MNASolver` that normalizes nodes, builds an MNA matrix, solves with NumPy, then calculates derived component current, voltage, and power values for display.
Outcome
What It Demonstrates
The project demonstrates how course math, backend structure, and user-facing diagnostics can be combined into an engineering calculator.
Evidence From Source
Source signal
The local app includes `MNASolver`, `_resolve_wires`, `_map_nodes`, topology diagnostics, Flask `/solve`, and tests for VIP components, ground handling, diagnostics, and circuits.
Engineering signal
The solver does not stop at a vector of node voltages; it computes inspectable component-level values, which is what makes it useful to a student or engineer.