vsrcpzload.c

来自「支持数字元件仿真的SPICE插件」· C语言 代码 · 共 53 行

C
53
字号
/* * Copyright (c) 1985 Thomas L. Quarles */#include "prefix.h"#include <stdio.h>#include <math.h>#include "CKTdefs.h"#include "complex.h"#include "SPerror.h"#include "VSRCdefs.h"#include "util.h"#include "suffix.h"RCSID("VSRCpzLoad.c $Revision: 1.1 $ on $Date: 91/07/11 11:05:51 $")/* ARGSUSED */intVSRCpzLoad(inModel,ckt,s)    GENmodel *inModel;    CKTcircuit *ckt;    SPcomplex *s;{    register VSRCmodel *model = (VSRCmodel *)inModel;    register VSRCinstance *here;    for( ; model != NULL; model = model->VSRCnextModel ) {        /* loop through all the instances of the model */        for (here = model->VSRCinstances; here != NULL ;                here=here->VSRCnextInstance) {            if (!(here->VSRCacGiven)) {                /*a dc source*/                /*the connecting nodes are shorted*/                *(here->VSRCposIbrptr)  += 1.0 ;                *(here->VSRCnegIbrptr)  += -1.0 ;                *(here->VSRCibrPosptr)  += 1.0 ;                *(here->VSRCibrNegptr)  += -1.0 ;            } else {                /*an ac source*/                /*no effective contribution                 *diagonal element made 1                 */                *(here->VSRCposIbrptr)  += 1.0 ;                *(here->VSRCnegIbrptr)  += -1.0 ;                *(here->VSRCibrIbrptr)  += 1.0 ;            }        }    }    return(OK);}

⌨️ 快捷键说明

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