My Project  0.0.16
QUCS Mapping
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
mscoupled.cpp
Go to the documentation of this file.
1 /***************************************************************************
2  mscoupled.cpp - description
3  -------------------
4  begin : Sat Aug 23 2003
5  copyright : (C) 2003 by Michael Margraf
6  email : michael.margraf@alumni.tu-berlin.de
7  ***************************************************************************/
8 
9 /***************************************************************************
10  * *
11  * This program is free software; you can redistribute it and/or modify *
12  * it under the terms of the GNU General Public License as published by *
13  * the Free Software Foundation; either version 2 of the License, or *
14  * (at your option) any later version. *
15  * *
16  ***************************************************************************/
17 
18 #include "mscoupled.h"
19 
20 
22 {
23  Description = QObject::tr("coupled microstrip line");
24 
25  Lines.append(new Line(-30,-12,-16,-12,QPen(QPen::darkBlue,2)));
26  Lines.append(new Line(-30,-30,-30,-12,QPen(QPen::darkBlue,2)));
27  Lines.append(new Line( 20,-12, 30,-12,QPen(QPen::darkBlue,2)));
28  Lines.append(new Line( 30,-30, 30,-12,QPen(QPen::darkBlue,2)));
29  Lines.append(new Line(-11,-20, 25,-20,QPen(QPen::darkBlue,2)));
30  Lines.append(new Line(-21, -4, 15, -4,QPen(QPen::darkBlue,2)));
31  Lines.append(new Line(-11,-20,-21, -4,QPen(QPen::darkBlue,2)));
32  Lines.append(new Line( 25,-20, 15, -4,QPen(QPen::darkBlue,2)));
33 
34  Lines.append(new Line(-30, 12,-20, 12,QPen(QPen::darkBlue,2)));
35  Lines.append(new Line(-30, 30,-30, 12,QPen(QPen::darkBlue,2)));
36  Lines.append(new Line( 16, 12, 30, 12,QPen(QPen::darkBlue,2)));
37  Lines.append(new Line( 30, 30, 30, 12,QPen(QPen::darkBlue,2)));
38  Lines.append(new Line(-15, 4, 21, 4,QPen(QPen::darkBlue,2)));
39  Lines.append(new Line(-25, 20, 11, 20,QPen(QPen::darkBlue,2)));
40  Lines.append(new Line(-15, 4,-25, 20,QPen(QPen::darkBlue,2)));
41  Lines.append(new Line( 21, 4, 11, 20,QPen(QPen::darkBlue,2)));
42 
43  Ports.append(new Port(-30,-30));
44  Ports.append(new Port( 30,-30));
45  Ports.append(new Port( 30, 30));
46  Ports.append(new Port(-30, 30));
47 
48  x1 = -30; y1 =-33;
49  x2 = 30; y2 = 33;
50 
51  tx = x1+4;
52  ty = y2+4;
53  Model = "MCOUPLED";
54  Name = "MS";
55 
56  Props.append(new Property("Subst", "Subst1", true,
57  QObject::tr("name of substrate definition")));
58  Props.append(new Property("W", "1 mm", true,
59  QObject::tr("width of the line")));
60  Props.append(new Property("L", "10 mm", true,
61  QObject::tr("length of the line")));
62  Props.append(new Property("S", "1 mm", true,
63  QObject::tr("spacing between the lines")));
64  Props.append(new Property("Model", "Kirschning", false,
65  QObject::tr("microstrip model")+" [Kirschning, Hammerstad]"));
66  Props.append(new Property("DispModel", "Kirschning", false,
67  QObject::tr("microstrip dispersion model")+
68  " [Kirschning, Getsinger]"));
69  Props.append(new Property("Temp", "26.85", false,
70  QObject::tr("simulation temperature in degree Celsius")));
71 }
72 
74 {
75 }
76 
78 {
79  return new MScoupled();
80 }
81 
82 Element* MScoupled::info(QString& Name, char* &BitmapFile, bool getNewOne)
83 {
84  Name = QObject::tr("Coupled Microstrip Line");
85  BitmapFile = (char *) "mscoupled";
86 
87  if(getNewOne) return new MScoupled();
88  return 0;
89 }