36 cpwopen::cpwopen () : circuit (1) {
47 nr_double_t er = subst->getPropertyDouble (
"er");
48 nr_double_t
h = subst->getPropertyDouble (
"h");
49 nr_double_t
t = subst->getPropertyDouble (
"t");
52 nr_double_t ZlEff, ErEff, ZlEffFreq, ErEffFreq;
55 ZlEffFreq, ErEffFreq);
56 nr_double_t dl = (W / 2 +
s) / 2;
57 return dl * ErEffFreq /
C0 / ZlEffFreq;
75 "g > 2b (2b = %g)\n", W + s + s);
77 nr_double_t ab = W / (W + s +
s);
78 if (ab < 0.2 || ab > 0.8) {
80 "0.2 < a/b < 0.8 (a/b = %g)\n", ab);
85 nr_double_t o = 2 *
M_PI * frequency;
std::complex< nr_double_t > nr_complex_t
nr_complex_t calcY(nr_double_t)
#define PROP_RNG_STR2(s1, s2)
nr_double_t getPropertyDouble(const char *)
substrate * getSubstrate(void)
void checkProperties(void)
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 &)
nr_complex_t ztor(const nr_complex_t z, nr_complex_t zref)
Converts impedance to reflexion coefficient.
#define M_PI
Archimedes' constant ( )
nr_double_t calcCend(nr_double_t)
void setY(int, int, nr_complex_t)
void initSP(void)
placehoder for S-Parameter initialisation function
void allocMatrixMNA(void)
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 setS(int, int, nr_complex_t)
char * getPropertyString(const char *)
void logprint(int level, const char *format,...)