void coaxline::calcAC (nr_double_t frequency) { nr_double_t l = getPropertyDouble ("L"); // calculate propagation constants calcPropagation (frequency); // calculate Y-parameters nr_complex_t g = rect (alpha, beta); nr_complex_t y11 = coth (g * l) / zl; nr_complex_t y21 = -cosech (g * l) / zl; setY (NODE_1, NODE_1, y11); setY (NODE_2, NODE_2, y11); setY (NODE_1, NODE_2, y21); setY (NODE_2, NODE_1, y21); }
void coaxline::calcSP (nr_double_t frequency) { nr_double_t l = getPropertyDouble ("L"); // calculate propagation constants calcPropagation (frequency); // calculate S-parameters nr_double_t z = zl / z0; nr_double_t y = 1 / z; nr_complex_t g = rect (alpha, beta); nr_complex_t n = 2.0 * cosh (g * l) + (z + y) * sinh (g * l); nr_complex_t s11 = (z - y) * sinh (g * l) / n; nr_complex_t s21 = 2.0 / n; setS (NODE_1, NODE_1, s11); setS (NODE_2, NODE_2, s11); setS (NODE_1, NODE_2, s21); setS (NODE_2, NODE_1, s21); }
void twistedpair::calcAC (nr_double_t frequency) { if (len != 0.0) { calcPropagation (frequency); nr_complex_t g = rect (alpha, beta); nr_complex_t y11 = coth (g * len) / zl; nr_complex_t y21 = -cosech (g * len) / zl; setY (NODE_1, NODE_1, +y11); setY (NODE_2, NODE_2, +y11); setY (NODE_3, NODE_3, +y11); setY (NODE_4, NODE_4, +y11); setY (NODE_1, NODE_4, -y11); setY (NODE_4, NODE_1, -y11); setY (NODE_2, NODE_3, -y11); setY (NODE_3, NODE_2, -y11); setY (NODE_1, NODE_2, +y21); setY (NODE_2, NODE_1, +y21); setY (NODE_3, NODE_4, +y21); setY (NODE_4, NODE_3, +y21); setY (NODE_1, NODE_3, -y21); setY (NODE_3, NODE_1, -y21); setY (NODE_2, NODE_4, -y21); setY (NODE_4, NODE_2, -y21); } }
void twistedpair::calcSP (nr_double_t frequency) { calcPropagation (frequency); nr_complex_t g = rect (alpha, beta); nr_double_t p = 2 * z0 + zl; nr_double_t n = 2 * z0 - zl; nr_complex_t e = exp (2.0 * g * len); nr_complex_t d = p * p * e - n * n; nr_complex_t s11 = zl * (p * e + n) / d; nr_complex_t s14 = 1.0 - s11; nr_complex_t s12 = 4.0 * zl * z0 * exp (g * len) / d; setS (NODE_1, NODE_1, +s11); setS (NODE_2, NODE_2, +s11); setS (NODE_3, NODE_3, +s11); setS (NODE_4, NODE_4, +s11); setS (NODE_1, NODE_4, +s14); setS (NODE_4, NODE_1, +s14); setS (NODE_2, NODE_3, +s14); setS (NODE_3, NODE_2, +s14); setS (NODE_1, NODE_2, +s12); setS (NODE_2, NODE_1, +s12); setS (NODE_3, NODE_4, +s12); setS (NODE_4, NODE_3, +s12); setS (NODE_1, NODE_3, -s12); setS (NODE_3, NODE_1, -s12); setS (NODE_2, NODE_4, -s12); setS (NODE_4, NODE_2, -s12); }