ltraask.c

来自「spice中支持多层次元件模型仿真的可单独运行的插件源码」· C语言 代码 · 共 95 行

C
95
字号
/**********Copyright 1990 Regents of the University of California.  All rights reserved.Author: 1990 Jaijeet S. Roychowdhury**********//* * This routine gives access to the internal device parameter of LTRA lines */#include "spice.h"#include <stdio.h>#include "cktdefs.h"#include "devdefs.h"#include "ifsim.h"#include "ltradefs.h"#include "sperror.h"#include "util.h"#include "suffix.h"/* ARGSUSED */intLTRAask(ckt, inst, which, value, select)  CKTcircuit *ckt;  GENinstance *inst;  int which;  IFvalue *value;  IFvalue *select;{  LTRAinstance *here = (LTRAinstance *) inst;  int temp;  switch (which) {  case LTRA_POS_NODE1:    value->iValue = here->LTRAposNode1;    return (OK);  case LTRA_NEG_NODE1:    value->iValue = here->LTRAnegNode1;    return (OK);  case LTRA_POS_NODE2:    value->iValue = here->LTRAposNode2;    return (OK);  case LTRA_NEG_NODE2:    value->iValue = here->LTRAnegNode2;    return (OK);  case LTRA_MOD_Z0:    value->rValue = here->LTRAmodPtr->LTRAimped;    return (OK);  case LTRA_MOD_TD:    value->rValue = here->LTRAmodPtr->LTRAtd;    return (OK);  case LTRA_MOD_NL:    value->rValue = here->LTRAmodPtr->LTRAnl;    return (OK);  case LTRA_MOD_FREQ:    value->rValue = here->LTRAmodPtr->LTRAf;    return (OK);  case LTRA_V1:    value->rValue = here->LTRAinitVolt1;    return (OK);  case LTRA_I1:    value->rValue = here->LTRAinitCur1;    return (OK);  case LTRA_V2:    value->rValue = here->LTRAinitVolt2;    return (OK);  case LTRA_I2:    value->rValue = here->LTRAinitCur2;    return (OK);  case LTRA_MOD_RELTOL:    value->rValue = here->LTRAmodPtr->LTRAreltol;    return (OK);  case LTRA_MOD_ABSTOL:    value->rValue = here->LTRAmodPtr->LTRAabstol;    return (OK);  case LTRA_BR_EQ1:    value->rValue = here->LTRAbrEq1;    return (OK);  case LTRA_BR_EQ2:    value->rValue = here->LTRAbrEq2;    return (OK);  case LTRA_DELAY:    /*     * value->v.vec.rVec = (double *) MALLOC(here->LTRAsizeDelay);     * value->v.numValue = temp = here->LTRAsizeDelay; while (temp--) {     * value->v.vec.rVec++ = *here->LTRAdelays++;     */    value->v.vec.rVec = (double *) NULL;    value->v.numValue = temp = 0;    return (OK);  default:    return (E_BADPARM);  }  /* NOTREACHED */}

⌨️ 快捷键说明

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