39 atten_dielectric( 0.0 ),
92 short m, n, mmax, nmax;
99 Rs = sqrt( M_PI * *f * *murc *
MU0 / *sigma );
101 mmax = (int) floor( *f /
fc( 1, 0 ) );
107 for( n = 0; n <= nmax; n++ )
109 for( m = 1; m <= mmax; m++ )
118 ac += ( Rs / ( *
b *
ZF0 * sqrt( 1.0 - pow( ( f_c / *f ), 2.0 ) ) ) )
119 * ( 1.0 + ( ( 2 * *
b / *
a ) * pow( ( f_c / *f ), 2.0 ) ) );
123 ac += ( ( 2. * Rs ) / ( *
b *
ZF0 * sqrt( 1.0 - pow( ( f_c / *f ), 2.0 ) ) ) )
124 * ( ( ( 1. + ( *
b / *
a ) ) * pow( ( f_c / *f ), 2.0 ) )
125 + ( ( 1. - pow( ( f_c / *f ), 2.0 ) )
127 * ( ( ( *
b / *
a ) * pow( m, 2. ) )
129 / ( pow( ( *
b * m / *
a ), 2.0 )
130 + pow( n, 2.0 ) ) ) ) );
138 for( n = 1; n <= nmax; n++ )
140 for( m = 1; m <= mmax; m++ )
146 ac += ( ( 2. * Rs ) / ( *
b *
ZF0 * sqrt( 1.0 - pow( ( f_c / *f ), 2.0 ) ) ) )
147 * ( ( ( pow( m, 2.0 ) * pow( ( *
b / *
a ), 3.0 ) ) + pow( n, 2. ) )
148 / ( ( pow( ( m * *
b / *
a ), 2. ) ) + pow( n, 2.0 ) ) );
153 ac = ac * 20.0 * log10( exp( 1. ) );
166 acc = 20 * log10( exp( 1.0 ) ) * acc;
176 double k_square, beta;
180 beta = sqrt( k_square -
kc_square( 1, 0 ) );
183 ad = ad * 20.0 * log10( exp( 1. ) );
260 lambda_g = 2.0 * M_PI / sqrt( k_square -
kc_square( 1, 0 ) );
288 double lambda_g, k_square, beta;
300 beta = sqrt( k_square -
kc_square( 1, 0 ) );
301 lambda_g = 2.0 * M_PI / beta;
307 beta = sqrt( k_square -
kc_square( 1, 0 ) );
308 lambda_g = 2.0 * M_PI / beta;
389 strcpy(
text,
"none" );
394 for( m = 0; m <= max; m++ )
396 for( n = 0; n <= max; n++ )
398 if( ( m == 0 ) && ( n == 0 ) )
403 snprintf( txt,
sizeof( txt ),
"H(%d,%d) ", m, n );
410 strcat(
text,
"..." );
422 strcpy(
text,
"none" );
427 for( m = 1; m <= max; m++ )
429 for( n = 1; n <= max; n++ )
433 snprintf( txt,
sizeof( txt ),
"E(%d,%d) ", m, n );
440 strcat(
text,
"..." );
double kc_square(int, int)
void get_rectwaveguide_comp()
void calcSynthesize() override
Computation for synthesis.
void get_rectwaveguide_phys()
void get_rectwaveguide_sub()
void get_rectwaveguide_elec()
void show_results() override
Shows results.
void calcAnalyze() override
Computation for analysis.
void showSynthesize() override
Shows analysis results and checks for errors / warnings.
void showAnalyze() override
Shows synthesis results and checks for errors / warnings.
bool isSelected(enum PRMS_ID aPrmId)
double getProperty(enum PRMS_ID aPrmId)
void setResult(int, double, const char *)
double m_parameters[EXTRA_PRMS_COUNT]
void setProperty(enum PRMS_ID aPrmId, double aValue)
void setErrorLevel(PRMS_ID, char)
@function setErrorLevel
#define TRANSLINE_WARNING