Fix bug 483 again. Faulty merges of KLU changes for cider were

introduced in ngspice 42. These broke the fix.
This commit is contained in:
Brian Taylor 2024-10-26 19:08:43 -07:00 committed by Holger Vogt
parent 20d6fb460f
commit 5079b42f26
3 changed files with 114 additions and 146 deletions

View File

@ -758,76 +758,62 @@ void
} }
} else { /* Horizontal Slice */ } else { /* Horizontal Slice */
// <<<<<<< HEAD if ( nIndex == 0 || nIndex == 3 ) { /* Left (Top?) Side : bug 483 */
// if ( nIndex == 0 || nIndex == 3 ) { /* Left (Top?) Side : bug 483 */ #ifdef KLU
// pNode->fNPsiIn = spGetElement( matrix, nEqn, psiEqnInM ); pNode->fNPsiIn = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnInM) ;
// pNode->fNPsiInP1 = spGetElement( matrix, nEqn, psiEqnInP ); pNode->fNPsiInBinding = NULL ;
// pNode->fNPsiOx = spGetElement( matrix, nEqn, psiEqnOxM ); #else
// pNode->fNPsiOxP1 = spGetElement( matrix, nEqn, psiEqnOxP ); pNode->fNPsiIn = SMPmakeElt(matrix, nEqn, psiEqnInM);
// pNode->fPPsiIn = spGetElement( matrix, pEqn, psiEqnInM ); #endif
// pNode->fPPsiInP1 = spGetElement( matrix, pEqn, psiEqnInP );
// pNode->fPPsiOx = spGetElement( matrix, pEqn, psiEqnOxM ); #ifdef KLU
// pNode->fPPsiOxP1 = spGetElement( matrix, pEqn, psiEqnOxP ); pNode->fNPsiInP1 = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnInP) ;
// ======= pNode->fNPsiInP1Binding = NULL ;
if ( nIndex <= 1 ) { /* Top Side */ #else
// pNode->fNPsiInP1 = SMPmakeElt(matrix, nEqn, psiEqnInP);
// #ifdef KLU #endif
// pNode->fNPsiIn = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnInM) ;
// pNode->fNPsiInBinding = NULL ; #ifdef KLU
// #else pNode->fNPsiOx = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnOxM) ;
// pNode->fNPsiIn = SMPmakeElt(matrix, nEqn, psiEqnInM); pNode->fNPsiOxBinding = NULL ;
// #endif #else
// pNode->fNPsiOx = SMPmakeElt(matrix, nEqn, psiEqnOxM);
// #ifdef KLU #endif
// pNode->fNPsiInP1 = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnInP) ;
// pNode->fNPsiInP1Binding = NULL ; #ifdef KLU
// #else pNode->fNPsiOxP1 = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnOxP) ;
// pNode->fNPsiInP1 = SMPmakeElt(matrix, nEqn, psiEqnInP); pNode->fNPsiOxP1Binding = NULL ;
// #endif #else
// pNode->fNPsiOxP1 = SMPmakeElt(matrix, nEqn, psiEqnOxP);
// #ifdef KLU #endif
// pNode->fNPsiOx = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnOxM) ;
// pNode->fNPsiOxBinding = NULL ; #ifdef KLU
// #else pNode->fPPsiIn = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnInM) ;
// pNode->fNPsiOx = SMPmakeElt(matrix, nEqn, psiEqnOxM); pNode->fPPsiInBinding = NULL ;
// #endif #else
// pNode->fPPsiIn = SMPmakeElt(matrix, pEqn, psiEqnInM);
// #ifdef KLU #endif
// pNode->fNPsiOxP1 = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnOxP) ;
// pNode->fNPsiOxP1Binding = NULL ; #ifdef KLU
// #else pNode->fPPsiInP1 = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnInP) ;
// pNode->fNPsiOxP1 = SMPmakeElt(matrix, nEqn, psiEqnOxP); pNode->fPPsiInP1Binding = NULL ;
// #endif #else
// pNode->fPPsiInP1 = SMPmakeElt(matrix, pEqn, psiEqnInP);
// #ifdef KLU #endif
// pNode->fPPsiIn = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnInM) ;
// pNode->fPPsiInBinding = NULL ; #ifdef KLU
// #else pNode->fPPsiOx = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnOxM) ;
// pNode->fPPsiIn = SMPmakeElt(matrix, pEqn, psiEqnInM); pNode->fPPsiOxBinding = NULL ;
// #endif #else
// pNode->fPPsiOx = SMPmakeElt(matrix, pEqn, psiEqnOxM);
// #ifdef KLU #endif
// pNode->fPPsiInP1 = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnInP) ;
// pNode->fPPsiInP1Binding = NULL ; #ifdef KLU
// #else pNode->fPPsiOxP1 = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnOxP) ;
// pNode->fPPsiInP1 = SMPmakeElt(matrix, pEqn, psiEqnInP); pNode->fPPsiOxP1Binding = NULL ;
// #endif #else
// pNode->fPPsiOxP1 = SMPmakeElt(matrix, pEqn, psiEqnOxP);
// #ifdef KLU #endif
// pNode->fPPsiOx = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnOxM) ;
// pNode->fPPsiOxBinding = NULL ;
// #else
// pNode->fPPsiOx = SMPmakeElt(matrix, pEqn, psiEqnOxM);
// #endif
//
// #ifdef KLU
// pNode->fPPsiOxP1 = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnOxP) ;
// pNode->fPPsiOxP1Binding = NULL ;
// #else
// pNode->fPPsiOxP1 = SMPmakeElt(matrix, pEqn, psiEqnOxP);
// #endif
//
// >>>>>>> First KLU support of CIDER TWOD simulations
} else { /* Bottom Side */ } else { /* Bottom Side */
#ifdef KLU #ifdef KLU

View File

@ -493,44 +493,35 @@ void
} }
} else { /* Horizontal Slice */ } else { /* Horizontal Slice */
// <<<<<<< HEAD if ( nIndex == 0 || nIndex == 3 ) { /* Left (Top?) Side : bug 483 */
// if ( nIndex == 0 || nIndex == 3 ) { /* Left (Top?) Side : bug 483 */ #ifdef KLU
// pNode->fNPsiIn = spGetElement( matrix, nEqn, psiEqnInM ); pNode->fNPsiIn = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnInM) ;
// pNode->fNPsiInP1 = spGetElement( matrix, nEqn, psiEqnInP ); pNode->fNPsiInBinding = NULL ;
// pNode->fNPsiOx = spGetElement( matrix, nEqn, psiEqnOxM ); #else
// pNode->fNPsiOxP1 = spGetElement( matrix, nEqn, psiEqnOxP ); pNode->fNPsiIn = SMPmakeElt(matrix, nEqn, psiEqnInM);
// ======= #endif
if ( nIndex <= 1 ) { /* Top Side */
// #ifdef KLU
// #ifdef KLU pNode->fNPsiInP1 = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnInP) ;
// pNode->fNPsiIn = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnInM) ; pNode->fNPsiInP1Binding = NULL ;
// pNode->fNPsiInBinding = NULL ; #else
// #else pNode->fNPsiInP1 = SMPmakeElt(matrix, nEqn, psiEqnInP);
// pNode->fNPsiIn = SMPmakeElt(matrix, nEqn, psiEqnInM); #endif
// #endif
// #ifdef KLU
// #ifdef KLU pNode->fNPsiOx = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnOxM) ;
// pNode->fNPsiInP1 = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnInP) ; pNode->fNPsiOxBinding = NULL ;
// pNode->fNPsiInP1Binding = NULL ; #else
// #else pNode->fNPsiOx = SMPmakeElt(matrix, nEqn, psiEqnOxM);
// pNode->fNPsiInP1 = SMPmakeElt(matrix, nEqn, psiEqnInP); #endif
// #endif
// #ifdef KLU
// #ifdef KLU pNode->fNPsiOxP1 = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnOxP) ;
// pNode->fNPsiOx = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnOxM) ; pNode->fNPsiOxP1Binding = NULL ;
// pNode->fNPsiOxBinding = NULL ; #else
// #else pNode->fNPsiOxP1 = SMPmakeElt(matrix, nEqn, psiEqnOxP);
// pNode->fNPsiOx = SMPmakeElt(matrix, nEqn, psiEqnOxM); #endif
// #endif
//
// #ifdef KLU
// pNode->fNPsiOxP1 = SMPmakeEltKLUforCIDER (matrix, nEqn, psiEqnOxP) ;
// pNode->fNPsiOxP1Binding = NULL ;
// #else
// pNode->fNPsiOxP1 = SMPmakeElt(matrix, nEqn, psiEqnOxP);
// #endif
//
// >>>>>>> First KLU support of CIDER TWOD simulations
} else { /* Bottom Side */ } else { /* Bottom Side */
#ifdef KLU #ifdef KLU

View File

@ -493,44 +493,35 @@ void
} }
} else { /* Horizontal Slice */ } else { /* Horizontal Slice */
// <<<<<<< HEAD if ( nIndex == 0 || nIndex == 3 ) { /* Left (Top?) Side : bug 483 */
// if ( nIndex == 0 || nIndex == 3 ) { /* Left (Top?) Side : bug 483 */ #ifdef KLU
// pNode->fPPsiIn = spGetElement( matrix, pEqn, psiEqnInM ); pNode->fPPsiIn = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnInM) ;
// pNode->fPPsiInP1 = spGetElement( matrix, pEqn, psiEqnInP ); pNode->fPPsiInBinding = NULL ;
// pNode->fPPsiOx = spGetElement( matrix, pEqn, psiEqnOxM ); #else
// pNode->fPPsiOxP1 = spGetElement( matrix, pEqn, psiEqnOxP ); pNode->fPPsiIn = SMPmakeElt(matrix, pEqn, psiEqnInM);
// ======= #endif
if ( nIndex <= 1 ) { /* Top Side */
// #ifdef KLU
// #ifdef KLU pNode->fPPsiInP1 = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnInP) ;
// pNode->fPPsiIn = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnInM) ; pNode->fPPsiInP1Binding = NULL ;
// pNode->fPPsiInBinding = NULL ; #else
// #else pNode->fPPsiInP1 = SMPmakeElt(matrix, pEqn, psiEqnInP);
// pNode->fPPsiIn = SMPmakeElt(matrix, pEqn, psiEqnInM); #endif
// #endif
// #ifdef KLU
// #ifdef KLU pNode->fPPsiOx = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnOxM) ;
// pNode->fPPsiInP1 = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnInP) ; pNode->fPPsiOxBinding = NULL ;
// pNode->fPPsiInP1Binding = NULL ; #else
// #else pNode->fPPsiOx = SMPmakeElt(matrix, pEqn, psiEqnOxM);
// pNode->fPPsiInP1 = SMPmakeElt(matrix, pEqn, psiEqnInP); #endif
// #endif
// #ifdef KLU
// #ifdef KLU pNode->fPPsiOxP1 = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnOxP) ;
// pNode->fPPsiOx = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnOxM) ; pNode->fPPsiOxP1Binding = NULL ;
// pNode->fPPsiOxBinding = NULL ; #else
// #else pNode->fPPsiOxP1 = SMPmakeElt(matrix, pEqn, psiEqnOxP);
// pNode->fPPsiOx = SMPmakeElt(matrix, pEqn, psiEqnOxM); #endif
// #endif
//
// #ifdef KLU
// pNode->fPPsiOxP1 = SMPmakeEltKLUforCIDER (matrix, pEqn, psiEqnOxP) ;
// pNode->fPPsiOxP1Binding = NULL ;
// #else
// pNode->fPPsiOxP1 = SMPmakeElt(matrix, pEqn, psiEqnOxP);
// #endif
//
// >>>>>>> First KLU support of CIDER TWOD simulations
} else { /* Bottom Side */ } else { /* Bottom Side */
#ifdef KLU #ifdef KLU