diff --git a/src/spicelib/devices/nbjt/nbjtext.h b/src/spicelib/devices/nbjt/nbjtext.h index b9d0a980c..c5793492b 100644 --- a/src/spicelib/devices/nbjt/nbjtext.h +++ b/src/spicelib/devices/nbjt/nbjtext.h @@ -23,5 +23,10 @@ extern int NBJTtrunc(GENmodel *, CKTcircuit *, double *); extern void NBJTdump(GENmodel *, CKTcircuit *); extern void NBJTacct(GENmodel *, CKTcircuit *, FILE *); +#if defined(KLU) || defined(SuperLU) || defined(UMFPACK) +extern int NBJTbindCSC (GENmodel*, CKTcircuit*) ; +extern int NBJTbindCSCComplex (GENmodel*, CKTcircuit*) ; +extern int NBJTbindCSCComplexToReal (GENmodel*, CKTcircuit*) ; +#endif #endif /* NBJT_H */ diff --git a/src/spicelib/devices/nbjt/nbjtinit.c b/src/spicelib/devices/nbjt/nbjtinit.c index 26372b4f9..b121320a3 100644 --- a/src/spicelib/devices/nbjt/nbjtinit.c +++ b/src/spicelib/devices/nbjt/nbjtinit.c @@ -73,7 +73,13 @@ SPICEdev NBJTinfo = { #endif /* DEVinstSize */ &NBJTiSize, - /* DEVmodSize */ &NBJTmSize + /* DEVmodSize */ &NBJTmSize, + +#if defined(KLU) || defined(SuperLU) || defined(UMFPACK) + /* DEVbindCSC */ NBJTbindCSC, + /* DEVbindCSCComplex */ NBJTbindCSCComplex, + /* DEVbindCSCComplexToReal */ NBJTbindCSCComplexToReal, +#endif }; diff --git a/src/spicelib/devices/nbjt2/nbjt2ext.h b/src/spicelib/devices/nbjt2/nbjt2ext.h index 7448e637d..dcea7d5e2 100644 --- a/src/spicelib/devices/nbjt2/nbjt2ext.h +++ b/src/spicelib/devices/nbjt2/nbjt2ext.h @@ -24,4 +24,10 @@ extern int NBJT2trunc(GENmodel *, CKTcircuit *, double *); extern void NBJT2dump(GENmodel *, CKTcircuit *); extern void NBJT2acct(GENmodel *, CKTcircuit *, FILE *); +#if defined(KLU) || defined(SuperLU) || defined(UMFPACK) +extern int NBJT2bindCSC (GENmodel*, CKTcircuit*) ; +extern int NBJT2bindCSCComplex (GENmodel*, CKTcircuit*) ; +extern int NBJT2bindCSCComplexToReal (GENmodel*, CKTcircuit*) ; +#endif + #endif /* NBJT2EXT_H */ diff --git a/src/spicelib/devices/nbjt2/nbt2init.c b/src/spicelib/devices/nbjt2/nbt2init.c index e0e2d3b7f..6e92db3ac 100644 --- a/src/spicelib/devices/nbjt2/nbt2init.c +++ b/src/spicelib/devices/nbjt2/nbt2init.c @@ -73,7 +73,13 @@ SPICEdev NBJT2info = { #endif /* DEVinstSize */ &NBJT2iSize, - /* DEVmodSize */ &NBJT2mSize + /* DEVmodSize */ &NBJT2mSize, + +#if defined(KLU) || defined(SuperLU) || defined(UMFPACK) + /* DEVbindCSC */ NBJT2bindCSC, + /* DEVbindCSCComplex */ NBJT2bindCSCComplex, + /* DEVbindCSCComplexToReal */ NBJT2bindCSCComplexToReal, +#endif }; diff --git a/src/spicelib/devices/numd/numdext.h b/src/spicelib/devices/numd/numdext.h index bf98dcd48..009e13acb 100644 --- a/src/spicelib/devices/numd/numdext.h +++ b/src/spicelib/devices/numd/numdext.h @@ -24,4 +24,10 @@ extern int NUMDtrunc(GENmodel *, CKTcircuit *, double *); extern void NUMDdump(GENmodel *, CKTcircuit *); extern void NUMDacct(GENmodel *, CKTcircuit *, FILE *); +#if defined(KLU) || defined(SuperLU) || defined(UMFPACK) +extern int NUMDbindCSC (GENmodel*, CKTcircuit*) ; +extern int NUMDbindCSCComplex (GENmodel*, CKTcircuit*) ; +extern int NUMDbindCSCComplexToReal (GENmodel*, CKTcircuit*) ; +#endif + #endif /* NUMDEXT_H */ diff --git a/src/spicelib/devices/numd/numdinit.c b/src/spicelib/devices/numd/numdinit.c index 5376f7e43..a8d12152c 100644 --- a/src/spicelib/devices/numd/numdinit.c +++ b/src/spicelib/devices/numd/numdinit.c @@ -73,7 +73,13 @@ SPICEdev NUMDinfo = { #endif /* DEVinstSize */ &NUMDiSize, - /* DEVmodSize */ &NUMDmSize + /* DEVmodSize */ &NUMDmSize, + +#if defined(KLU) || defined(SuperLU) || defined(UMFPACK) + /* DEVbindCSC */ NUMDbindCSC, + /* DEVbindCSCComplex */ NUMDbindCSCComplex, + /* DEVbindCSCComplexToReal */ NUMDbindCSCComplexToReal, +#endif }; diff --git a/src/spicelib/devices/numd2/numd2ext.h b/src/spicelib/devices/numd2/numd2ext.h index a23cd1169..f1374bb08 100644 --- a/src/spicelib/devices/numd2/numd2ext.h +++ b/src/spicelib/devices/numd2/numd2ext.h @@ -24,5 +24,10 @@ extern int NUMD2trunc(GENmodel *, CKTcircuit *, double *); extern void NUMD2dump(GENmodel *, CKTcircuit *); extern void NUMD2acct(GENmodel *, CKTcircuit *, FILE *); +#if defined(KLU) || defined(SuperLU) || defined(UMFPACK) +extern int NUMD2bindCSC (GENmodel*, CKTcircuit*) ; +extern int NUMD2bindCSCComplex (GENmodel*, CKTcircuit*) ; +extern int NUMD2bindCSCComplexToReal (GENmodel*, CKTcircuit*) ; +#endif #endif /* NUMD2EXT_H */ diff --git a/src/spicelib/devices/numd2/numd2init.c b/src/spicelib/devices/numd2/numd2init.c index 745bb8e06..9082af543 100644 --- a/src/spicelib/devices/numd2/numd2init.c +++ b/src/spicelib/devices/numd2/numd2init.c @@ -73,7 +73,13 @@ SPICEdev NUMD2info = { #endif /* DEVinstSize */ &NUMD2iSize, - /* DEVmodSize */ &NUMD2mSize + /* DEVmodSize */ &NUMD2mSize, + +#if defined(KLU) || defined(SuperLU) || defined(UMFPACK) + /* DEVbindCSC */ NUMD2bindCSC, + /* DEVbindCSCComplex */ NUMD2bindCSCComplex, + /* DEVbindCSCComplexToReal */ NUMD2bindCSCComplexToReal, +#endif }; diff --git a/src/spicelib/devices/numos/numosext.h b/src/spicelib/devices/numos/numosext.h index 411c5b03b..494991a5e 100644 --- a/src/spicelib/devices/numos/numosext.h +++ b/src/spicelib/devices/numos/numosext.h @@ -24,4 +24,10 @@ extern int NUMOStrunc(GENmodel *, CKTcircuit *, double *); extern void NUMOSdump(GENmodel *, CKTcircuit *); extern void NUMOSacct(GENmodel *, CKTcircuit *, FILE *); +#if defined(KLU) || defined(SuperLU) || defined(UMFPACK) +extern int NUMOSbindCSC (GENmodel*, CKTcircuit*) ; +extern int NUMOSbindCSCComplex (GENmodel*, CKTcircuit*) ; +extern int NUMOSbindCSCComplexToReal (GENmodel*, CKTcircuit*) ; +#endif + #endif /* NUMOSEXT_H */ diff --git a/src/spicelib/devices/numos/numosinit.c b/src/spicelib/devices/numos/numosinit.c index 1b25744bc..f1dfc5fc9 100644 --- a/src/spicelib/devices/numos/numosinit.c +++ b/src/spicelib/devices/numos/numosinit.c @@ -73,7 +73,13 @@ SPICEdev NUMOSinfo = { #endif /* DEVinstSize */ &NUMOSiSize, - /* DEVmodSize */ &NUMOSmSize + /* DEVmodSize */ &NUMOSmSize, + +#if defined(KLU) || defined(SuperLU) || defined(UMFPACK) + /* DEVbindCSC */ NUMOSbindCSC, + /* DEVbindCSCComplex */ NUMOSbindCSCComplex, + /* DEVbindCSCComplexToReal */ NUMOSbindCSCComplexToReal, +#endif };