36 cpwstep::cpwstep () : circuit (2) {
42 nr_double_t& C1, nr_double_t& C2) {
48 nr_double_t s1 = (s - W1) / 2;
49 nr_double_t s2 = (s - W2) / 2;
51 nr_double_t er = subst->getPropertyDouble (
"er");
52 nr_double_t
h = subst->getPropertyDouble (
"h");
53 nr_double_t
t = subst->getPropertyDouble (
"t");
56 nr_double_t ZlEff, ErEff, ZlEffFreq, ErEffFreq;
59 ZlEffFreq, ErEffFreq);
60 C1 = ErEffFreq /
C0 / ZlEffFreq;
63 ZlEffFreq, ErEffFreq);
64 C2 = ErEffFreq /
C0 / ZlEffFreq;
90 if (W1 >= s || W2 >= s) {
92 "than groundplane gap\n");
95 nr_double_t er = subst->getPropertyDouble (
"er");
96 if (er < 2 || er > 14) {
98 "2 < er < 14 (er = %g)\n", er);
106 nr_double_t s1 = (s - W1) / 2;
107 nr_double_t s2 = (s - W2) / 2;
108 nr_double_t a,
c,
c1,
c2, x1, x2;
109 nr_double_t o = 2 *
M_PI * frequency;
113 a = s1 > s2 ? s2 / s1 : s1 / s2;
115 2 *
std::log (4 * a / (1 - a * a)));
116 c = c * (x1 + x2) / 2;
std::complex< nr_double_t > nr_complex_t
#define PROP_RNG_STR2(s1, s2)
nr_complex_t calcY(nr_double_t)
nr_double_t getPropertyDouble(const char *)
void setD(int, int, nr_complex_t)
substrate * getSubstrate(void)
void setInternalVoltageSource(bool i)
void setVoltageSources(int)
void setB(int, int, nr_complex_t)
static const nr_double_t z0
static void analyseDispersion(nr_double_t, nr_double_t, nr_double_t, nr_double_t, nr_double_t, nr_double_t, nr_double_t, nr_double_t &, nr_double_t &)
void checkProperties(void)
void setE(int, nr_complex_t)
void calcCends(nr_double_t, nr_double_t &, nr_double_t &)
#define M_PI
Archimedes' constant ( )
void initSP(void)
placehoder for S-Parameter initialisation function
void allocMatrixMNA(void)
#define M_1_PI
Inverse of Archimedes' constant ( )
static void analyseQuasiStatic(nr_double_t, nr_double_t, nr_double_t, nr_double_t, nr_double_t, int, nr_double_t &, nr_double_t &)
#define C0
speed of light in vacuum ( )
void voltageSource(int, int, int, nr_double_t value=0.0)
void setS(int, int, nr_complex_t)
void setC(int, int, nr_complex_t)
char * getPropertyString(const char *)
void logprint(int level, const char *format,...)
nr_complex_t log(const nr_complex_t z)
Compute principal value of natural logarithm of z.