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.

Python
Flask
NumPy
Circuits
Live: Local Flask appCode: Local Python source

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.