home *** CD-ROM | disk | FTP | other *** search
- /****************************************************************************/
- /* Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991 */
- /* By MicroSim Corporation, All Rights Reserved */
- /****************************************************************************/
- /* c.h
- * $Revision: 1.6 $
- * $Author: pwt $
- * $Date: 09 Oct 1990 10:21:14 $ */
-
- /******************* USERS OF DEVICE EQUATIONS OPTION ***********************/
- /******** Do not change this file **********/
-
- /* Capacitor definitions */
-
- /* state-vector access */
-
- #define C_Q(vect) (sv[vect]->csv_cj.qi_q)
- #define C_I(vect) (sv[vect]->csv_cj.qi_i)
- #define C_QI(vect) (sv[vect]->csv_cj)
-
- struct csv_def { /* state vector */
- struct qi_def csv_cj; /* capacitor charge & current */
- };
-
- struct c_ {
- struct c_ *c_next;
- char *c_name;
- struct C_ *c_model;
-
- CKT_IDX /* circuit matrix indices */
- c_n1,
- c_n2;
-
- /* device parameters and expression pointers */
- DXPR( c_c, cx_c); /* must follow c_n2 */
- DXPR( c_v0, cx_v0); /* must follow c_v0 */
-
- MTX_IDX /* MatPrm conductance terms */
- c_n1n2,
- c_n2n1,
- c_n1n1,
- c_n2n2;
-
- MTX_IDX /* MatPrm indices: branch currents */
- c_in1,
- c_in2;
-
- double /* Last iteration values */
- ccv_c;
-
- struct csv_def c_sv[MSTVCT];
- };
-
- struct C_ {
- struct C_ *C_next;
- char *C_name;
- struct C_ *C_nom;
- struct C_ *C_ako;
-
- /* model parameters and their expression pointers */
-
- MXPR(C_c, Cx_c);
- MXPR(C_vc1, Cx_vc1);
- MXPR(C_vc2, Cx_vc2);
- MXPR(C_tc1, Cx_tc1);
- MXPR(C_tc2, Cx_tc2);
- } ;
-
- #ifdef C_DEVICE
-
- struct C_ C_default;
-
- #define BASE C_default
-
- struct Assoc C_Assoc[] = { /*IGNORE*/ /* for Pre-C */
- ASSOCIATE (C_c, 1., "*C" ),
- ASSOCIATE (C_vc1, 0., "VC1" ),
- ASSOCIATE (C_vc2, 0., "VC2" ),
- ASSOCIATE (C_tc1, 0., "TC1" ),
- ASSOCIATE (C_tc2, 0., "TC2" ),
- END_PARMS /*ENDIGNORE*/
- } ;
-
- #undef BASE
- #endif