Algorytm Katzenelsona jest algorytmem iteracyjnym służącym do rozwiązywania układów elektrycznych. Przy czym przez rozwiązanie rozumie się wyliczenie wszystkich potencjałów węzłowych jakie panują w układzie przy danych wymuszeniach prądowych.
Bazą tego algorytmu jest równanie: (1)
gdzie: G jest macierzą konduktancji ujmującą wszystkie elementy liniowe układu, oraz przewodności gk pochodzące z modeli elementów nieliniowych V jest wektorem napięć węzłowych w jest wektorem ujmującym źródła prądowe pochodzące z modeli elementów nieliniowych, i* jest wektorem rzeczywistych wymuszeń prądowych,
Opis algorytmu Ustala się punkt startowy analizy w postaci wektora V(0) Na podstawie V(0) i znajomości struktury układu określa się wektor napięć na elementach nieliniowych X(0) Znając X(0) ustala się obszar (jego kod), w którym znajduje się wektor V(0) Na podstawie kodu obszaru oraz charakterystyk odcinkowo-liniowych elementów nieliniowych określa się wartości numeryczne parametrów modeli tych elementów, Znając układ oraz modele elementów nieliniowych oblicza się G(0) i w(0) Oblicza się lewą stronę równania (1):
i(0) ma tu sens wektora wymuszeń prądowych, jakie musiałyby zaistnieć w układzie, żeby spowodować powstanie napięć węzłowych określonych przez V(0).