 # Remove parts from circuit

Need to remove elements from the circuit.

So the following is a really basic circuit where the goal is to convert the `vs` and `rvs` from a voltage source to a current source and voltage transform to the current source and its parrel resistor (`cs` & `rcs`) as well. I know this is a low-brow example that would be easily done with functional encapsulation of the static part of the network and then functional reset, generation of the transformed part of the network, and attachment to the static part. But it would be nice to be able to use `-=` or use `del` to deal with adding and removing testbenchs to imported circuits when who knows what has been done to the circuit to get even the current netlist.

``````reset()

net_1=Net('N1'); net_2=Net('N2'); net_3=Net('N3')

#voltage source to transfrom to current
vs=V(ref='vs', dc_value=12@u_V); vs['p', 'n']+=net_3, gnd
rvs=R(ref='vs', value=3@u_Ohm); rvs[1, 2]+=net_2, net_3

#indpendedt network
r1=R(value=8@u_Ohm); r1[1, 2]+=net_2, gnd
r2=R(value=2@u_Ohm); r2[1, 2]+=net_2, net_1

#current souce to transforms to voltge
cs=I(ref='cs', dc_value=3@u_A); cs['p', 'n']+=net_1, gnd
rcs=R(ref='cs', value=4@u_Ohm); rcs[1, 2]+=net_1, gnd

#crude attempts
#vs['p']-=gnd #not supported
#del vs #did nothing to the netlist, did remove the obj from scope

circ=generate_netlist()
print(circ)
``````