You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

74 lines
1.9 KiB

/**********
Copyright 1990 Regents of the University of California. All rights reserved.
Author: 1985 Thomas L. Quarles
Modified: September 2003 Paolo Nenzi
**********/
/*
*/
#include "ngspice/ngspice.h"
#include "ngspice/ifsim.h"
#include "capdefs.h"
#include "ngspice/sperror.h"
#include "ngspice/suffix.h"
/* ARGSUSED */
int
CAPparam(int param, IFvalue *value, GENinstance *inst, IFvalue *select)
{
CAPinstance *here = (CAPinstance*)inst;
NG_IGNORE(select);
switch(param) {
case CAP_CAP:
here->CAPcapac = value->rValue;
if (!here->CAPmGiven)
here->CAPm = 1.0;
here->CAPcapGiven = TRUE;
break;
case CAP_IC:
here->CAPinitCond = value->rValue;
here->CAPicGiven = TRUE;
break;
case CAP_TEMP:
here->CAPtemp = value->rValue + CONSTCtoK;
here->CAPtempGiven = TRUE;
break;
case CAP_DTEMP:
here->CAPdtemp = value->rValue;
here->CAPdtempGiven = TRUE;
break;
case CAP_WIDTH:
here->CAPwidth = value->rValue;
here->CAPwidthGiven = TRUE;
break;
case CAP_LENGTH:
here->CAPlength = value->rValue;
here->CAPlengthGiven = TRUE;
break;
case CAP_M:
here->CAPm = value->rValue;
here->CAPmGiven = TRUE;
break;
case CAP_SCALE:
here->CAPscale = value->rValue;
here->CAPscaleGiven = TRUE;
break;
case CAP_CAP_SENS:
here->CAPsenParmNo = value->iValue;
break;
case CAP_TC1:
here->CAPtc1 = value->rValue;
here->CAPtc1Given = TRUE;
break;
case CAP_TC2:
here->CAPtc2 = value->rValue;
here->CAPtc2Given = TRUE;
break;
default:
return(E_BADPARM);
}
return(OK);
}