00001 // SuperMix version 1.0 C++ source file 00002 // 00003 // Copyright (c) 1999 California Institute of Technology. 00004 // All rights reserved. 00005 // 00006 // Redistribution and use in source and binary forms for noncommercial 00007 // purposes are permitted provided that the above copyright notice and 00008 // this paragraph are duplicated in all such forms and that any 00009 // documentation and other materials related to such distribution and 00010 // use acknowledge that the software was developed by California 00011 // Institute of Technology. Redistribution and/or use in source or 00012 // binary forms is not permitted for any commercial purpose. Use of 00013 // this software does not include a permitted use of the Institute's 00014 // name or trademark for any purpose. 00015 // 00016 // DISCLAIMER: 00017 // THIS SOFTWARE AND/OR RELATED MATERIALS ARE PROVIDED "AS-IS" WITHOUT 00018 // WARRANTY OF ANY KIND INCLUDING ANY WARRANTIES OF PERFORMANCE OR 00019 // MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE OR PURPOSE (AS SET 00020 // FORTH IN UCC 23212-2313) OR FOR ANY PURPOSE WHATSOEVER, FOR THE 00021 // LICENSED PRODUCT, HOWEVER USED. IN NO EVENT SHALL CALTECH/JPL BE 00022 // LIABLE FOR ANY DAMAGES AND/OR COSTS, INCLUDING BUT NOT LIMITED TO 00023 // INCIDENTAL OR CONSEQUENTIAL DAMAGES OF ANY KIND, INCLUDING ECONOMIC 00024 // DAMAGE OR INJURY TO PROPERTY AND LOST PROFITS, REGARDLESS OF 00025 // WHETHER CALTECH/JPL SHALL BE ADVISED, HAVE REASON TO KNOW, OR IN 00026 // FACT SHALL KNOW OF THE POSSIBILITY. THE USER BEARS ALL RISK 00027 // RELATING TO QUALITY AND PERFORMANCE OF THE SOFTWARE AND/OR RELATED 00028 // MATERIALS. 00029 // 00030 // Change history: 00031 // 8/4/99: removed calculation of attenuation constant (alpha) 00032 // 3/22/99: changed VERYBIG to MSTRIP_H_VERYBIG, 00033 // VERYSMALL to MSTRIP_H_VERYSMALL; added parameter descrip. 00034 00035 #ifndef MSTRIP_H 00036 #define MSTRIP_H 00037 00038 #define MSTRIP_H_VERYBIG 1.e20 00039 #define MSTRIP_H_VERYSMALL 1.e-20 00040 00041 void mstrip(double h, double w, double t1, double t2, 00042 double esub, double eup, double Qsub, double Qup, double freq, 00043 double &Z0, double &epeff, double &tandel, 00044 double &g2) ; 00045 // 00046 // Lengths are converted to be in microns and frequencies in GHz. 00047 // 00048 // Input parameters: 00049 // 00050 // h - substrate thickness 00051 // w - width of microstrip 00052 // t1 - conductor thickness (strip) 00053 // t2 - conductor thickness (ground) 00054 // esub - dielectric constant of substrate 00055 // eup - dielectric constant superstrate (usually = 1) 00056 // freq - frequency 00057 // Qsub - dielectric quality factor of substrate (1/tan(delta)) 00058 // delta is defined as the phase angle of the complex 00059 // dielectric constant of the substrate 00060 // Qup - dielectric quality factor of superstrate 00061 // 00062 // 00063 // Output parameters: 00064 // 00065 // Z0 - characteristic impedance 00066 // epeff - effective dielectric constant 00067 // (wavelength = free space wavelength / sqrt(epeff) 00068 // tandel - effective loss tangent of line. Defined so that 00069 // beta = (2*Pi/wavelength)*(1 + i*tandel) 00070 // where beta is the complex propagation factor; i = sqrt(-1). 00071 // g2 - geometrical factor for loss calculations; = 2/w for wide lines 00072 // 00073 00074 #endif /* MSTRIP_H */ 00075
Please direct comments and corrections to
supermix@submm.caltech.edu
Go to the supermix home page
Generated by
1.2.7