|
To implement a capacitor we need a time derivative function. In Verilog-A this is achieved using the ddt analog operator. A capacitor can be defined using the branch contribution statement:
| I(p,n) <+ capacitance * ddt( V(p,n)) ; |
Like the resistor, this defines the current/voltage relationship that the simulator must maintain on the nodes p and n. However, this definition has time dependence.
Here is the complete definition for a capacitor:
| `include "disciplines.vams" |
| module va_capacitor(p,n) ; |
| parameter real capacitance = 1n ; |
| electrical p, n ; |
| analog |
| I(p,n) <+ capacitance * ddt(V(p,n)) ; |
| endmodule |
See Examples/Manual/Capacitor. Note there is another definition for a capacitor with an initial condition parameter - capacitor_with_ic.va. This uses the time integration operator idt which allows the specification of an initial condition.
|