@ -1357,6 +1357,223 @@ B3SOIDDunsetup(GENmodel *inModel, CKTcircuit *ckt)
for ( here = model - > B3SOIDDinstances ; here ! = NULL ;
for ( here = model - > B3SOIDDinstances ; here ! = NULL ;
here = here - > B3SOIDDnextInstance )
here = here - > B3SOIDDnextInstance )
{
{
/* here for debugging purpose only */
if ( here - > B3SOIDDdum5Node )
{
CKTdltNNum ( ckt , here - > B3SOIDDdum5Node ) ;
here - > B3SOIDDdum5Node = 0 ;
}
if ( here - > B3SOIDDdum4Node )
{
CKTdltNNum ( ckt , here - > B3SOIDDdum4Node ) ;
here - > B3SOIDDdum4Node = 0 ;
}
if ( here - > B3SOIDDdum3Node )
{
CKTdltNNum ( ckt , here - > B3SOIDDdum3Node ) ;
here - > B3SOIDDdum3Node = 0 ;
}
if ( here - > B3SOIDDdum2Node )
{
CKTdltNNum ( ckt , here - > B3SOIDDdum2Node ) ;
here - > B3SOIDDdum2Node = 0 ;
}
if ( here - > B3SOIDDdum1Node )
{
CKTdltNNum ( ckt , here - > B3SOIDDdum1Node ) ;
here - > B3SOIDDdum1Node = 0 ;
}
if ( here - > B3SOIDDcbeNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDcbeNode ) ;
here - > B3SOIDDcbeNode = 0 ;
}
if ( here - > B3SOIDDvcscvNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDvcscvNode ) ;
here - > B3SOIDDvcscvNode = 0 ;
}
if ( here - > B3SOIDDvdscvNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDvdscvNode ) ;
here - > B3SOIDDvdscvNode = 0 ;
}
if ( here - > B3SOIDDqgNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDqgNode ) ;
here - > B3SOIDDqgNode = 0 ;
}
if ( here - > B3SOIDDqdNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDqdNode ) ;
here - > B3SOIDDqdNode = 0 ;
}
if ( here - > B3SOIDDqeNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDqeNode ) ;
here - > B3SOIDDqeNode = 0 ;
}
if ( here - > B3SOIDDqsubs2Node )
{
CKTdltNNum ( ckt , here - > B3SOIDDqsubs2Node ) ;
here - > B3SOIDDqsubs2Node = 0 ;
}
if ( here - > B3SOIDDqsubs1Node )
{
CKTdltNNum ( ckt , here - > B3SOIDDqsubs1Node ) ;
here - > B3SOIDDqsubs1Node = 0 ;
}
if ( here - > B3SOIDDqsub0Node )
{
CKTdltNNum ( ckt , here - > B3SOIDDqsub0Node ) ;
here - > B3SOIDDqsub0Node = 0 ;
}
if ( here - > B3SOIDDqaccNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDqaccNode ) ;
here - > B3SOIDDqaccNode = 0 ;
}
if ( here - > B3SOIDDxcsatNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDxcsatNode ) ;
here - > B3SOIDDxcsatNode = 0 ;
}
if ( here - > B3SOIDDvgsteffNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDvgsteffNode ) ;
here - > B3SOIDDvgsteffNode = 0 ;
}
if ( here - > B3SOIDDvthNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDvthNode ) ;
here - > B3SOIDDvthNode = 0 ;
}
if ( here - > B3SOIDDvbs0teffNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDvbs0teffNode ) ;
here - > B3SOIDDvbs0teffNode = 0 ;
}
if ( here - > B3SOIDDgmeNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDgmeNode ) ;
here - > B3SOIDDgmeNode = 0 ;
}
if ( here - > B3SOIDDgdsNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDgdsNode ) ;
here - > B3SOIDDgdsNode = 0 ;
}
if ( here - > B3SOIDDgmbsNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDgmbsNode ) ;
here - > B3SOIDDgmbsNode = 0 ;
}
if ( here - > B3SOIDDgmNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDgmNode ) ;
here - > B3SOIDDgmNode = 0 ;
}
if ( here - > B3SOIDDqjdNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDqjdNode ) ;
here - > B3SOIDDqjdNode = 0 ;
}
if ( here - > B3SOIDDqjsNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDqjsNode ) ;
here - > B3SOIDDqjsNode = 0 ;
}
if ( here - > B3SOIDDqbfNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDqbfNode ) ;
here - > B3SOIDDqbfNode = 0 ;
}
if ( here - > B3SOIDDqbNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDqbNode ) ;
here - > B3SOIDDqbNode = 0 ;
}
if ( here - > B3SOIDDcbgNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDcbgNode ) ;
here - > B3SOIDDcbgNode = 0 ;
}
if ( here - > B3SOIDDcbdNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDcbdNode ) ;
here - > B3SOIDDcbdNode = 0 ;
}
if ( here - > B3SOIDDcbbNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDcbbNode ) ;
here - > B3SOIDDcbbNode = 0 ;
}
if ( here - > B3SOIDDxcNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDxcNode ) ;
here - > B3SOIDDxcNode = 0 ;
}
if ( here - > B3SOIDDvbseffNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDvbseffNode ) ;
here - > B3SOIDDvbseffNode = 0 ;
}
if ( here - > B3SOIDDvbs0effNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDvbs0effNode ) ;
here - > B3SOIDDvbs0effNode = 0 ;
}
if ( here - > B3SOIDDabeffNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDabeffNode ) ;
here - > B3SOIDDabeffNode = 0 ;
}
if ( here - > B3SOIDDibpNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDibpNode ) ;
here - > B3SOIDDibpNode = 0 ;
}
if ( here - > B3SOIDDitunNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDitunNode ) ;
here - > B3SOIDDitunNode = 0 ;
}
if ( here - > B3SOIDDigidlNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDigidlNode ) ;
here - > B3SOIDDigidlNode = 0 ;
}
if ( here - > B3SOIDDiiiNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDiiiNode ) ;
here - > B3SOIDDiiiNode = 0 ;
}
if ( here - > B3SOIDDibdNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDibdNode ) ;
here - > B3SOIDDibdNode = 0 ;
}
if ( here - > B3SOIDDibsNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDibsNode ) ;
here - > B3SOIDDibsNode = 0 ;
}
if ( here - > B3SOIDDicNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDicNode ) ;
here - > B3SOIDDicNode = 0 ;
}
if ( here - > B3SOIDDidsNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDidsNode ) ;
here - > B3SOIDDidsNode = 0 ;
}
if ( here - > B3SOIDDvbsNode )
{
CKTdltNNum ( ckt , here - > B3SOIDDvbsNode ) ;
here - > B3SOIDDvbsNode = 0 ;
}
if ( here - > B3SOIDDsNodePrime
if ( here - > B3SOIDDsNodePrime
& & here - > B3SOIDDsNodePrime ! = here - > B3SOIDDsNode )
& & here - > B3SOIDDsNodePrime ! = here - > B3SOIDDsNode )
{
{