Qucs-GUI
0.0.19
|
00001 /*************************************************************************** 00002 mscoupled.cpp - description 00003 ------------------- 00004 begin : Sat Aug 23 2003 00005 copyright : (C) 2010 by Frans Schreuder 00006 email : fransschreuder@lists.sourceforge.net 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 "mslange.h" 00019 00020 00021 MSlange::MSlange() 00022 { 00023 Description = QObject::tr("microstrip lange coupler"); 00024 00025 Lines.append(new Line(-30,-30,-30, 10,QPen(Qt::darkBlue,2))); 00026 Lines.append(new Line(-30, 30,-30, 20,QPen(Qt::darkBlue,2))); 00027 Lines.append(new Line(-30, 20, 0, 20,QPen(Qt::darkBlue,2))); 00028 Lines.append(new Line(-30, 10, 30, 10,QPen(Qt::darkBlue,2))); 00029 Lines.append(new Line(-25, 0, 25, 0,QPen(Qt::darkBlue,2))); 00030 Lines.append(new Line(-30,-10, 30,-10,QPen(Qt::darkBlue,2))); 00031 Lines.append(new Line( 0,-20, 30,-20,QPen(Qt::darkBlue,2))); 00032 Lines.append(new Line( 30,-30, 30,-20,QPen(Qt::darkBlue,2))); 00033 Lines.append(new Line( 30,-10, 30, 30,QPen(Qt::darkBlue,2))); 00034 00035 Ports.append(new Port(-30,-30)); 00036 Ports.append(new Port( 30, 30)); 00037 Ports.append(new Port( 30,-30)); 00038 Ports.append(new Port(-30, 30)); 00039 00040 x1 = -30; y1 =-33; 00041 x2 = 30; y2 = 33; 00042 00043 tx = x1+4; 00044 ty = y2+4; 00045 Model = "MLANGE"; 00046 Name = "MS"; 00047 00048 Props.append(new Property("Subst", "Subst1", true, 00049 QObject::tr("name of substrate definition"))); 00050 Props.append(new Property("W", "1 mm", true, 00051 QObject::tr("width of the line"))); 00052 Props.append(new Property("L", "10 mm", true, 00053 QObject::tr("length of the line"))); 00054 Props.append(new Property("S", "1 mm", true, 00055 QObject::tr("spacing between the lines"))); 00056 Props.append(new Property("Model", "Kirschning", false, 00057 QObject::tr("microstrip model")+" [Kirschning, Hammerstad]")); 00058 Props.append(new Property("DispModel", "Kirschning", false, 00059 QObject::tr("microstrip dispersion model")+ 00060 " [Kirschning, Getsinger]")); 00061 Props.append(new Property("Temp", "26.85", false, 00062 QObject::tr("simulation temperature in degree Celsius"))); 00063 } 00064 00065 MSlange::~MSlange() 00066 { 00067 } 00068 00069 Component* MSlange::newOne() 00070 { 00071 return new MSlange(); 00072 } 00073 00074 Element* MSlange::info(QString& Name, char* &BitmapFile, bool getNewOne) 00075 { 00076 Name = QObject::tr("Microstrip Lange Coupler"); 00077 BitmapFile = (char *) "mslange"; 00078 00079 if(getNewOne) return new MSlange(); 00080 return 0; 00081 }