Qucs-GUI
0.0.19
|
00001 /*************************************************************************** 00002 coaxialline.cpp 00003 ----------------- 00004 begin : Sun Jan 29 2006 00005 copyright : (C) 2006 by Michael Margraf 00006 email : michael.margraf@alumni.tu-berlin.de 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * * 00011 * This program is free software; you can redistribute it and/or modify * 00012 * it under the terms of the GNU General Public License as published by * 00013 * the Free Software Foundation; either version 2 of the License, or * 00014 * (at your option) any later version. * 00015 * * 00016 ***************************************************************************/ 00017 00018 #include "coaxialline.h" 00019 00020 00021 CoaxialLine::CoaxialLine() 00022 { 00023 Description = QObject::tr("coaxial transmission line"); 00024 00025 Arcs.append(new Arc(-20, -9, 8, 18, 0, 16*360,QPen(Qt::darkBlue,2))); 00026 Arcs.append(new Arc( 11, -9, 8, 18,16*270, 16*180,QPen(Qt::darkBlue,2))); 00027 00028 Lines.append(new Line(-30, 0,-16, 0,QPen(Qt::darkBlue,2))); 00029 Lines.append(new Line( 19, 0, 30, 0,QPen(Qt::darkBlue,2))); 00030 Lines.append(new Line(-16, -9, 16, -9,QPen(Qt::darkBlue,2))); 00031 Lines.append(new Line(-16, 9, 16, 9,QPen(Qt::darkBlue,2))); 00032 00033 Ports.append(new Port(-30, 0)); 00034 Ports.append(new Port( 30, 0)); 00035 00036 x1 = -30; y1 =-12; 00037 x2 = 30; y2 = 12; 00038 00039 tx = x1+4; 00040 ty = y2+4; 00041 Model = "COAX"; 00042 Name = "Line"; 00043 00044 Props.append(new Property("er", "2.29", true, 00045 QObject::tr("relative permittivity of dielectric"))); 00046 Props.append(new Property("rho", "0.022e-6", false, 00047 QObject::tr("specific resistance of conductor"))); 00048 Props.append(new Property("mur", "1", false, 00049 QObject::tr("relative permeability of conductor"))); 00050 Props.append(new Property("D", "2.95 mm", false, 00051 QObject::tr("inner diameter of shield"))); 00052 Props.append(new Property("d", "0.9 mm", false, 00053 QObject::tr("diameter of inner conductor"))); 00054 Props.append(new Property("L", "1500 mm", true, 00055 QObject::tr("mechanical length of the line"))); 00056 Props.append(new Property("tand", "4e-4", false, 00057 QObject::tr("loss tangent"))); 00058 Props.append(new Property("Temp", "26.85", false, 00059 QObject::tr("simulation temperature in degree Celsius"))); 00060 } 00061 00062 CoaxialLine::~CoaxialLine() 00063 { 00064 } 00065 00066 Component* CoaxialLine::newOne() 00067 { 00068 return new CoaxialLine(); 00069 } 00070 00071 Element* CoaxialLine::info(QString& Name, char* &BitmapFile, bool getNewOne) 00072 { 00073 Name = QObject::tr("Coaxial Line"); 00074 BitmapFile = (char *) "coaxial"; 00075 00076 if(getNewOne) return new CoaxialLine(); 00077 return 0; 00078 }