During setup, ASRC (aka B source) uses ckt->CKTrhsOld[node->number]

for initial evaluation. .nodeset or .ic have never set CKTrhsOld,
so initalization for B source failed.
We still have to check why .nodeset and .ic are set two times,
first in CKTic(), then in CKTload()!
This commit is contained in:
Holger Vogt 2020-04-05 19:54:19 +02:00
parent 8ee46aa84e
commit 1c2dd967da
1 changed files with 2 additions and 2 deletions

View File

@ -28,7 +28,7 @@ CKTic(CKTcircuit *ckt)
node->ptr = SMPmakeElt(ckt->CKTmatrix,node->number,node->number);
if(node->ptr == NULL) return(E_NOMEM);
ckt->CKThadNodeset = 1;
ckt->CKTrhs[node->number] = node->nodeset;
ckt->CKTrhsOld[node->number] = ckt->CKTrhs[node->number] = node->nodeset;
}
if(node->icGiven) {
if(! ( node->ptr)) {
@ -36,7 +36,7 @@ CKTic(CKTcircuit *ckt)
node->number);
if(node->ptr == NULL) return(E_NOMEM);
}
ckt->CKTrhs[node->number] = node->ic;
ckt->CKTrhsOld[node->number] = ckt->CKTrhs[node->number] = node->ic;
}
}