summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/netlist/examples/cccs.c
blob: a1244677d204aa391a1d803ad277cc8503c324d9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
// license:GPL-2.0+
// copyright-holders:Couriersud
/*
 * cccs.c
 *
 */


#include "netlist/devices/net_lib.h"

NETLIST_START(cccs)

    CLOCK(clk, 1000) // 1000 Hz
    SOLVER(Solver, 48000)
    PARAM(Solver.ACCURACY, 1e-12)
    PARAM(Solver.METHOD, "MAT_CR")

    CCCS(VV)
    PARAM(VV.G, 1)
    PARAM(VV.RI, 1e-3)

	RES(R2, 1000)
	RES(R1, 1000)
    NET_C(clk, VV.IP)
    NET_C(VV.IN, R1.1)
	NET_C(R1.2, GND)

    NET_C(R2.1, VV.OP)
    NET_C(R2.2, GND)
    NET_C(VV.ON, GND)

	/* Simple current source */

	CS(CS1, 1)
	RES(R3, 1)
	NET_C(R3.1, CS1.P)
	NET_C(GND, CS1.N, R3.2)

NETLIST_END()