⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 b3soicheck.c

📁 ngspice又一个电子CAD仿真软件代码.功能更全
💻 C
📖 第 1 页 / 共 2 页
字号:
	if (model->B3SOIntun < 0.0)	{   fprintf(fplog, "Warning: Ntun = %g is negative.\n",		    model->B3SOIntun); 	    printf("Warning: Ntun = %g is negative.\n", model->B3SOIntun); 	}	if (model->B3SOIndiode < 0.0)	{   fprintf(fplog, "Warning: Ndiode = %g is negative.\n",		    model->B3SOIndiode); 	    printf("Warning: Ndiode = %g is negative.\n", model->B3SOIndiode); 	}	if (model->B3SOIisbjt < 0.0)	{   fprintf(fplog, "Warning: Isbjt = %g is negative.\n",		    model->B3SOIisbjt); 	    printf("Warning: Isbjt = %g is negative.\n", model->B3SOIisbjt); 	}	if (model->B3SOIisdif < 0.0)	{   fprintf(fplog, "Warning: Isdif = %g is negative.\n",		    model->B3SOIisdif); 	    printf("Warning: Isdif = %g is negative.\n", model->B3SOIisdif); 	}	if (model->B3SOIisrec < 0.0)	{   fprintf(fplog, "Warning: Isrec = %g is negative.\n",		    model->B3SOIisrec); 	    printf("Warning: Isrec = %g is negative.\n", model->B3SOIisrec); 	}	if (model->B3SOIistun < 0.0)	{   fprintf(fplog, "Warning: Istun = %g is negative.\n",		    model->B3SOIistun); 	    printf("Warning: Istun = %g is negative.\n", model->B3SOIistun); 	}	if (model->B3SOItt < 0.0)	{   fprintf(fplog, "Warning: Tt = %g is negative.\n",		    model->B3SOItt); 	    printf("Warning: Tt = %g is negative.\n", model->B3SOItt); 	}	if (model->B3SOIcsdmin < 0.0)	{   fprintf(fplog, "Warning: Csdmin = %g is negative.\n",		    model->B3SOIcsdmin); 	    printf("Warning: Csdmin = %g is negative.\n", model->B3SOIcsdmin); 	}	if (model->B3SOIcsdesw < 0.0)	{   fprintf(fplog, "Warning: Csdesw = %g is negative.\n",		    model->B3SOIcsdesw); 	    printf("Warning: Csdesw = %g is negative.\n", model->B3SOIcsdesw); 	}	if (model->B3SOIasd < 0.0)	{   fprintf(fplog, "Warning: Asd = %g should be within (0, 1).\n",		    model->B3SOIasd); 	    printf("Warning: Asd = %g should be within (0, 1).\n", model->B3SOIasd); 	}	if (model->B3SOIrth0 < 0.0)	{   fprintf(fplog, "Warning: Rth0 = %g is negative.\n",		    model->B3SOIrth0); 	    printf("Warning: Rth0 = %g is negative.\n", model->B3SOIrth0); 	}	if (model->B3SOIcth0 < 0.0)	{   fprintf(fplog, "Warning: Cth0 = %g is negative.\n",		    model->B3SOIcth0); 	    printf("Warning: Cth0 = %g is negative.\n", model->B3SOIcth0); 	}	if (model->B3SOIrbody < 0.0)	{   fprintf(fplog, "Warning: Rbody = %g is negative.\n",		    model->B3SOIrbody); 	    printf("Warning: Rbody = %g is negative.\n", model->B3SOIrbody); 	}	if (model->B3SOIrbsh < 0.0)	{   fprintf(fplog, "Warning: Rbsh = %g is negative.\n",		    model->B3SOIrbsh); 	    printf("Warning: Rbsh = %g is negative.\n", model->B3SOIrbsh); 	}/* v3.0 */        if (pParam->B3SOInigc <= 0.0)        {   fprintf(fplog, "Fatal: nigc = %g is non-positive.\n",                    pParam->B3SOInigc);            printf("Fatal: nigc = %g is non-positive.\n", pParam->B3SOInigc);            Fatal_Flag = 1;        }        if (pParam->B3SOIpoxedge <= 0.0)        {   fprintf(fplog, "Fatal: poxedge = %g is non-positive.\n",                    pParam->B3SOIpoxedge);            printf("Fatal: poxedge = %g is non-positive.\n", pParam->B3SOIpoxedge);            Fatal_Flag = 1;        }        if (pParam->B3SOIpigcd <= 0.0)        {   fprintf(fplog, "Fatal: pigcd = %g is non-positive.\n",                    pParam->B3SOIpigcd);            printf("Fatal: pigcd = %g is non-positive.\n", pParam->B3SOIpigcd);            Fatal_Flag = 1;        }/* v2.2 release */        if (model->B3SOIwth0 < 0.0)        {   fprintf(fplog, "Warning: WTH0 = %g is negative.\n",                    model->B3SOIwth0);            printf("Warning:  Wth0 = %g is negative.\n", model->B3SOIwth0);        }        if (model->B3SOIrhalo < 0.0)        {   fprintf(fplog, "Warning: RHALO = %g is negative.\n",                    model->B3SOIrhalo);            printf("Warning:  Rhalo = %g is negative.\n", model->B3SOIrhalo);        }        if (model->B3SOIntox < 0.0)        {   fprintf(fplog, "Warning: NTOX = %g is negative.\n",                    model->B3SOIntox);            printf("Warning:  Ntox = %g is negative.\n", model->B3SOIntox);        }        if (model->B3SOItoxref < 0.0)        {   fprintf(fplog, "Warning: TOXREF = %g is negative.\n",                    model->B3SOItoxref);            printf("Warning:  Toxref = %g is negative.\n", model->B3SOItoxref);            Fatal_Flag = 1;        }        if (model->B3SOIebg < 0.0)        {   fprintf(fplog, "Warning: EBG = %g is negative.\n",                    model->B3SOIebg);            printf("Warning:  Ebg = %g is negative.\n", model->B3SOIebg);        }        if (model->B3SOIvevb < 0.0)        {   fprintf(fplog, "Warning: VEVB = %g is negative.\n",                    model->B3SOIvevb);            printf("Warning:  Vevb = %g is negative.\n", model->B3SOIvevb);        }        if (model->B3SOIalphaGB1 < 0.0)        {   fprintf(fplog, "Warning: ALPHAGB1 = %g is negative.\n",                    model->B3SOIalphaGB1);            printf("Warning:  AlphaGB1 = %g is negative.\n", model->B3SOIalphaGB1);        }        if (model->B3SOIbetaGB1 < 0.0)        {   fprintf(fplog, "Warning: BETAGB1 = %g is negative.\n",                    model->B3SOIbetaGB1);            printf("Warning:  BetaGB1 = %g is negative.\n", model->B3SOIbetaGB1);        }        if (model->B3SOIvgb1 < 0.0)        {   fprintf(fplog, "Warning: VGB1 = %g is negative.\n",                    model->B3SOIvgb1);            printf("Warning:  Vgb1 = %g is negative.\n", model->B3SOIvgb1);        }        if (model->B3SOIvecb < 0.0)        {   fprintf(fplog, "Warning: VECB = %g is negative.\n",                    model->B3SOIvecb);            printf("Warning:  Vecb = %g is negative.\n", model->B3SOIvecb);        }        if (model->B3SOIalphaGB2 < 0.0)        {   fprintf(fplog, "Warning: ALPHAGB2 = %g is negative.\n",                    model->B3SOIalphaGB2);            printf("Warning:  AlphaGB2 = %g is negative.\n", model->B3SOIalphaGB2);        }        if (model->B3SOIbetaGB2 < 0.0)        {   fprintf(fplog, "Warning: BETAGB2 = %g is negative.\n",                    model->B3SOIbetaGB2);            printf("Warning:  BetaGB2 = %g is negative.\n", model->B3SOIbetaGB2);        }        if (model->B3SOIvgb2 < 0.0)        {   fprintf(fplog, "Warning: VGB2 = %g is negative.\n",                    model->B3SOIvgb2);            printf("Warning:  Vgb2 = %g is negative.\n", model->B3SOIvgb2);        }        if (model->B3SOItoxqm <= 0.0)        {   fprintf(fplog, "Fatal: Toxqm = %g is not positive.\n",                    model->B3SOItoxqm);            printf("Fatal: Toxqm = %g is not positive.\n", model->B3SOItoxqm);            Fatal_Flag = 1;        }        if (model->B3SOIvoxh < 0.0)        {   fprintf(fplog, "Warning: Voxh = %g is negative.\n",                    model->B3SOIvoxh);            printf("Warning:  Voxh = %g is negative.\n", model->B3SOIvoxh);        }        if (model->B3SOIdeltavox <= 0.0)        {   fprintf(fplog, "Fatal: Deltavox = %g is not positive.\n",                    model->B3SOIdeltavox);            printf("Fatal: Deltavox = %g is not positive.\n", model->B3SOIdeltavox);        }/* v2.0 release */        if (model->B3SOIk1w1 < 0.0)                            {   fprintf(fplog, "Warning: K1W1 = %g is negative.\n",                    model->B3SOIk1w1);            printf("Warning:  K1w1 = %g is negative.\n", model->B3SOIk1w1);        }        if (model->B3SOIk1w2 < 0.0)        {   fprintf(fplog, "Warning: K1W2 = %g is negative.\n",                    model->B3SOIk1w2);            printf("Warning:  K1w2 = %g is negative.\n", model->B3SOIk1w2);        }        if (model->B3SOIketas < 0.0)        {   fprintf(fplog, "Warning: KETAS = %g is negative.\n",                    model->B3SOIketas);            printf("Warning:  Ketas = %g is negative.\n", model->B3SOIketas);        }        if (model->B3SOIdwbc < 0.0)        {   fprintf(fplog, "Warning: DWBC = %g is negative.\n",                    model->B3SOIdwbc);            printf("Warning:  Dwbc = %g is negative.\n", model->B3SOIdwbc);        }        if (model->B3SOIbeta0 < 0.0)        {   fprintf(fplog, "Warning: BETA0 = %g is negative.\n",                    model->B3SOIbeta0);            printf("Warning:  Beta0 = %g is negative.\n", model->B3SOIbeta0);        }        if (model->B3SOIbeta1 < 0.0)        {   fprintf(fplog, "Warning: BETA1 = %g is negative.\n",                    model->B3SOIbeta1);            printf("Warning:  Beta1 = %g is negative.\n", model->B3SOIbeta1);        }        if (model->B3SOIbeta2 < 0.0)        {   fprintf(fplog, "Warning: BETA2 = %g is negative.\n",                    model->B3SOIbeta2);            printf("Warning:  Beta2 = %g is negative.\n", model->B3SOIbeta2);        }        if (model->B3SOItii < 0.0)        {   fprintf(fplog, "Warning: TII = %g is negative.\n",                    model->B3SOItii);            printf("Warning:  Tii = %g is negative.\n", model->B3SOItii);        }        if (model->B3SOIlii < 0.0)        {   fprintf(fplog, "Warning: LII = %g is negative.\n",                    model->B3SOIlii);            printf("Warning:  Lii = %g is negative.\n", model->B3SOIlii);        }        if (model->B3SOIsii1 < 0.0)        {   fprintf(fplog, "Warning: SII1 = %g is negative.\n",                    model->B3SOIsii1);            printf("Warning:  Sii1 = %g is negative.\n", model->B3SOIsii1);        }        if (model->B3SOIsii2 < 0.0)        {   fprintf(fplog, "Warning: SII2 = %g is negative.\n",                     model->B3SOIsii2);            printf("Warning:  Sii2 = %g is negative.\n", model->B3SOIsii1);        }        if (model->B3SOIsiid < 0.0)        {   fprintf(fplog, "Warning: SIID = %g is negative.\n",                    model->B3SOIsiid);            printf("Warning:  Siid = %g is negative.\n", model->B3SOIsiid);        }        if (model->B3SOIfbjtii < 0.0)        {   fprintf(fplog, "Warning: FBJTII = %g is negative.\n",                    model->B3SOIfbjtii);            printf("Warning:  fbjtii = %g is negative.\n", model->B3SOIfbjtii);        }        if (model->B3SOIvrec0 < 0.0)        {   fprintf(fplog, "Warning: VREC0 = %g is negative.\n",                    model->B3SOIvrec0);            printf("Warning:  Vrec0 = %g is negative.\n", model->B3SOIvrec0);        }        if (model->B3SOIvtun0 < 0.0)        {   fprintf(fplog, "Warning: VTUN0 = %g is negative.\n",                    model->B3SOIvtun0);            printf("Warning:  Vtun0 = %g is negative.\n", model->B3SOIvtun0);        }        if (model->B3SOInbjt < 0.0)        {   fprintf(fplog, "Warning: NBJT = %g is negative.\n",                    model->B3SOInbjt);            printf("Warning:  Nbjt = %g is negative.\n", model->B3SOInbjt);        }        if (model->B3SOIaely < 0.0)        {   fprintf(fplog, "Warning: AELY = %g is negative.\n",                    model->B3SOIaely);            printf("Warning:  Aely = %g is negative.\n", model->B3SOIaely);        }        if (model->B3SOIahli < 0.0)        {   fprintf(fplog, "Warning: AHLI = %g is negative.\n",                    model->B3SOIahli);            printf("Warning:  Ahli = %g is negative.\n", model->B3SOIahli);        }        if (model->B3SOIrbody < 0.0)        {   fprintf(fplog, "Warning: RBODY = %g is negative.\n",                    model->B3SOIrbody);            printf("Warning:  Rbody = %g is negative.\n", model->B3SOIrbody);        }        if (model->B3SOIrbsh < 0.0)        {   fprintf(fplog, "Warning: RBSH = %g is negative.\n",                    model->B3SOIrbsh);            printf("Warning:  Rbsh = %g is negative.\n", model->B3SOIrbsh);        }        if (model->B3SOIntrecf < 0.0)        {   fprintf(fplog, "Warning: NTRECF = %g is negative.\n",                    model->B3SOIntrecf);            printf("Warning:  Ntrecf = %g is negative.\n", model->B3SOIntrecf);        }        if (model->B3SOIntrecr < 0.0)        {   fprintf(fplog, "Warning: NTRECR = %g is negative.\n",                    model->B3SOIntrecr);            printf("Warning:  Ntrecr = %g is negative.\n", model->B3SOIntrecr);        }/* v3.0 bug fix *//*        if (model->B3SOIndif < 0.0)        {   fprintf(fplog, "Warning: NDIF = %g is negative.\n",                    model->B3SOIndif);            printf("Warning:  Ndif = %g is negative.\n", model->B3SOIndif);        }*/        if (model->B3SOItcjswg < 0.0)        {   fprintf(fplog, "Warning: TCJSWG = %g is negative.\n",                    model->B3SOItcjswg);            printf("Warning:  Tcjswg = %g is negative.\n", model->B3SOItcjswg);        }        if (model->B3SOItpbswg < 0.0)        {   fprintf(fplog, "Warning: TPBSWG = %g is negative.\n",                    model->B3SOItpbswg);            printf("Warning:  Tpbswg = %g is negative.\n", model->B3SOItpbswg);        }        if ((model->B3SOIacde < 0.4) || (model->B3SOIacde > 1.6))        {   fprintf(fplog, "Warning: ACDE = %g is out of range.\n",                    model->B3SOIacde);            printf("Warning:  Acde = %g is out of range.\n", model->B3SOIacde);        }        if ((model->B3SOImoin < 5.0)||(model->B3SOImoin > 25.0))        {   fprintf(fplog, "Warning: MOIN = %g is out of range.\n",                    model->B3SOImoin);            printf("Warning:  Moin = %g is out of range.\n", model->B3SOImoin);        }        if (model->B3SOIdlbg < 0.0)        {   fprintf(fplog, "Warning: DLBG = %g is negative.\n",                    model->B3SOIdlbg);            printf("Warning:  dlbg = %g is negative.\n", model->B3SOIdlbg);        }        if (model->B3SOIagidl < 0.0)        {   fprintf(fplog, "Warning: AGIDL = %g is negative.\n",                    model->B3SOIagidl);            printf("Warning:  Agidl = %g is negative.\n", model->B3SOIagidl);        }        if (model->B3SOIbgidl < 0.0)        {   fprintf(fplog, "Warning: BGIDL = %g is negative.\n",                    model->B3SOIbgidl);            printf("Warning:  Bgidl = %g is negative.\n", model->B3SOIbgidl);        }        if (model->B3SOIngidl < 0.0)        {   fprintf(fplog, "Warning: NGIDL = %g is negative.\n",                    model->B3SOIngidl);            printf("Warning:  Ngidl = %g is negative.\n", model->B3SOIngidl);        }        if (model->B3SOIesatii < 0.0)        {   fprintf(fplog, "Warning: Esatii = %g should be within positive.\n",                    model->B3SOIesatii);            printf("Warning: Esatii = %g should be within (0, 1).\n", model->B3SOIesatii);        }	if (model->B3SOIxj > model->B3SOItsi)	{   fprintf(fplog, "Warning: Xj = %g is thicker than Tsi = %g.\n",		    model->B3SOIxj, model->B3SOItsi); 	    printf("Warning: Xj = %g is thicker than Tsi = %g.\n", 		    model->B3SOIxj, model->B3SOItsi); 	}        if (model->B3SOIcapMod < 2)	{   fprintf(fplog, "Warning: capMod < 2 is not supported by BSIM3SOI.\n");	    printf("Warning: Warning: capMod < 2 is not supported by BSIM3SOI.\n");	}     }/* loop for the parameter check for warning messages */      	fclose(fplog);    }    else    {   fprintf(stderr, "Warning: Can't open log file. Parameter checking skipped.\n");    }    return(Fatal_Flag);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -