DC networks calculator

see Delphi program description


Click at the download (lightning) icon at the top of this page to download dc-networks.
Then copy the .exe file to a folder of choice.
There is no installation procedure.
The Windows Registry is not changed.

DC-networks is freeware and may be copied and distributed without charge.


The DC networks calculator allows for the calculation of currents and voltages
in networks of resistors and voltage sources.

A network may be drawed, modified, opened or saved to disc.
Below is a real size picture of the networks calculator at work:

Elements (also called components) are wires, resistors and voltage sources.
Element numbers are written red and placed in ( ).
Values are written in blue.
Elements are connected by contacts which are written in black.
The table lists the current through each element and the voltages of the contacts.

DC networks help

Entering a new network EDIT by clicking the EDIT menu button

2. select element by a mouseclick on the image

dummy component to delete elements

wire to connect contacts


voltage source

3.enter the voltage or resistor value in the editbox

For resistor values the character K may be typed:
2K2 is equivalent to 2200 Ohm. mouse pointer in editbox, at the place of the first contact. left mousbutton down and move pointer to place of second contact.
6. Release mousebutton at position of second contact.

When entering a new element at an existing contact,
place mousepointer over contact and proceed as described before.

When adding a voltage source, the first contact is positive, the second one is negative.

Adding a ground

1. select the ground element by a mouseclick on the image.
2. move mousepointer over a contact.
3. click to enter the ground connection.

This sets the voltage of this contact to 0 volts.

To remove the ground, enter it again.
Adding a ground to another point deletes the previous ground.

Deleting an element

1. select the delete component .(upper selection, the red circle)
2. place mousepointer over first contact.
3. press left mousebutton and move to second contact.
4. release mousebutton.

Replacing an element

If an element is painted over an existing element, it replaces that element.

Selecting a previously used element

Move mousepointer over a resistor or voltage element.
When a red dot appears, click to select this element for future drawing.
The new value shows up in the edit box.

Analysing a network

Press the Calculate button at lower right of the screen.
If the network is OK, press Values button to show currents and voltages.

Note : the voltages are calculated only if the ground element is connected.

Circuit errors

Some circuits raise an error message because currents are infinite.
This happens when batteries operate parallel or are short-circuited by a wire.
Another case is parallel wires where is it unclear how currents divide.

Open a file

Press open menubutton at the screen top.
Select file in dialog box and open.

Save a file

Press save menubutton.
Select file name in dialog box and save.

Filenames have no extension.


When the clear button is pressed:
1. all data is erased.
2. existing networks are removed.

How DC-networks works

The two laws of Kirchhoff are at the base of the project.

Kirchhoff's current law (1)

For any contact : currents in = currents out.

    I1 + I2 = I3 + I4 .....or
    I1 + I2 - I3 - I4 = 0
Each contact adds an equation.
For n elements, there are currents I1...In.

Written in vector form:

Kirchhoff's voltage law (2)

Travelling from point A ...B....C...A , a round trip,
we arrive at point A where the voltage is still the same as when we left A.
This yields the equation
    E3 - I1R1 - I2R2 = 0 ......or
    -I1.R1 - I2.R2 = - E3......values filled in.....
    -10.I1 - 18.I2 = - 12
Added to the matrix:

For each element a circuit is found which adds an equation.
The number of equations is the sum of the contacts and the elements.
So there may be several redundant equations.
For n elements, n independent equations are needed.

Hereafter, the system of equations is solved using Gauss-Jordan elimination,
sweeping columns to zero except for the diagonal.

This solves the currents I1...In through elements 1...n.
For the calculation of the voltages we start at the ground (0V) contact.
Knowing all currents, the voltages of the other contacts are calculated using Ohm's law (E = I.R).