catch noise sweeps with 1 point and handle erronous 0 points
This commit is contained in:
parent
569f796f63
commit
d0b9259018
|
|
@ -284,7 +284,10 @@ NOISEan (CKTcircuit *ckt, int restart)
|
|||
break;
|
||||
|
||||
case LINEAR:
|
||||
data->freq += job->NfreqDelta;
|
||||
if (job->NfreqDelta > 1e-6)
|
||||
data->freq += job->NfreqDelta;
|
||||
else
|
||||
data->freq += (job->NfreqDelta+job->NstartFreq*ckt->CKTreltol);
|
||||
break;
|
||||
|
||||
default:
|
||||
|
|
|
|||
|
|
@ -45,7 +45,15 @@ NsetParm(CKTcircuit *ckt, JOB *anal, int which, IFvalue *value)
|
|||
break;
|
||||
|
||||
case N_STEPS:
|
||||
job->NnumSteps = value->iValue;
|
||||
if ((job->NstpType == LINEAR) && (value->iValue < 1)) {
|
||||
errMsg = copy("Linear sweep at least 1 points");
|
||||
return(E_PARMVAL);
|
||||
}
|
||||
if ((job->NstpType == LINEAR) && (value->iValue == 1)) {
|
||||
job->NnumSteps = 2;
|
||||
} else {
|
||||
job->NnumSteps = value->iValue;
|
||||
}
|
||||
break;
|
||||
|
||||
case N_START:
|
||||
|
|
|
|||
Loading…
Reference in New Issue