CElect provides a tool for finding preferential ballot election winners and PR council sets.
CElect is a console-based tool for determining a social preference ordering, such as an elected candidate or choice in a single-winner election, or the preferred composition of a multi-member council, based on a list of individual preference orderings (ballots) over the candidates or choices.
It can also calculate the winner and social ordering when given a Condorcet matrix and list of candidates, though it is in that case limited to Condorcet methods.
Of single-winner methods, it supports Dodgson, Simpson, Tideman/wv, first and second-order Copeland, and Schulze (all Condorcet methods), and FPTP, Borda, 1/n Borda, Hare, Nanson, and 1/n Nanson.
Of proportional representation, it supports CPO-STV, CFPRM, and D'Hondt without lists.