nr_double_t f = kelvin (T) * 4.0 * R * z0 / norm (4.0 * z0 + R) / T0; setN (NODE_1, NODE_1, +f); setN (NODE_2, NODE_2, +f); setN (NODE_1, NODE_2, -f); setN (NODE_2, NODE_1, -f); } void bondwire::calcNoiseAC (nr_double_t) { // calculate noise current correlation matrix nr_double_t y = 1 / R; nr_double_t T = getPropertyDouble ("Temp"); nr_double_t f = kelvin (T) / T0 * 4.0 * y; setN (NODE_1, NODE_1, +f); setN (NODE_2, NODE_2, +f); setN (NODE_1, NODE_2, -f); setN (NODE_2, NODE_1, -f); } // properties PROP_REQ [] = { { "D", PROP_REAL, { 25e-6, PROP_NO_STR }, PROP_POS_RANGE }, { "L", PROP_REAL, { 1e-3, PROP_NO_STR }, PROP_POS_RANGE }, { "H", PROP_REAL, { 1e-3, PROP_NO_STR }, PROP_POS_RANGE }, { "mur", PROP_REAL, { 1, PROP_NO_STR }, PROP_RNGII (1, 100) }, { "rho", PROP_REAL, { 0.022e-6, PROP_NO_STR }, PROP_POS_RANGE }, { "Model", PROP_STR, { PROP_NO_VAL, "FREESPACE" }, PROP_RNG_STR3 ("FREESPACE", "MIRROR", "DESCHARLES") }, { "Subst", PROP_STR, { PROP_NO_VAL, "Subst1" }, PROP_NO_RANGE }, PROP_NO_PROP }; PROP_OPT [] = { { "Temp", PROP_REAL, { 26.85, PROP_NO_STR }, PROP_MIN_VAL (K) }, PROP_NO_PROP }; struct define_t bondwire::cirdef = { "BOND", 2, PROP_COMPONENT, PROP_NO_SUBSTRATE, PROP_LINEAR, PROP_DEF };
} else { nr_double_t c = calcCend (frequency, W, h, t, er, SModel, DModel, Model); y = rect (0, c * o); } return y; } void msopen::initDC (void) { allocMatrixMNA (); setY (NODE_1, NODE_1, 0); } void msopen::calcAC (nr_double_t frequency) { setY (NODE_1, NODE_1, calcY (frequency)); } // properties PROP_REQ [] = { { "W", PROP_REAL, { 1e-3, PROP_NO_STR }, PROP_POS_RANGE }, { "Subst", PROP_STR, { PROP_NO_VAL, "Subst1" }, PROP_NO_RANGE }, { "MSDispModel", PROP_STR, { PROP_NO_VAL, "Kirschning" }, PROP_RNG_DIS }, { "MSModel", PROP_STR, { PROP_NO_VAL, "Hammerstad" }, PROP_RNG_MOD }, { "Model", PROP_STR, { PROP_NO_VAL, "Kirschning" }, PROP_RNG_STR3 ("Kirschning", "Hammerstad", "Alexopoulos") }, PROP_NO_PROP }; PROP_OPT [] = { PROP_NO_PROP }; struct define_t msopen::cirdef = { "MOPEN", 1, PROP_COMPONENT, PROP_NO_SUBSTRATE, PROP_LINEAR, PROP_DEF };