summaryrefslogtreecommitdiff
path: root/src/ngspiceSimulation
diff options
context:
space:
mode:
Diffstat (limited to 'src/ngspiceSimulation')
-rw-r--r--src/ngspiceSimulation/NgspiceWidget.py1
-rw-r--r--src/ngspiceSimulation/pythonPlotting.py31
2 files changed, 23 insertions, 9 deletions
diff --git a/src/ngspiceSimulation/NgspiceWidget.py b/src/ngspiceSimulation/NgspiceWidget.py
index ee4dafe7..310cbe3c 100644
--- a/src/ngspiceSimulation/NgspiceWidget.py
+++ b/src/ngspiceSimulation/NgspiceWidget.py
@@ -24,6 +24,7 @@ class NgspiceWidget(QtGui.QWidget):
self.args = ['-hold','-e', self.command]
self.process.start('xterm', self.args)
self.obj_appconfig.process_obj.append(self.process)
+ self.obj_appconfig.proc_dict[self.obj_appconfig.current_project['ProjectName']].append(self.process.pid())
elif platform.system() == 'Windows':
tempdir= os.getcwd()
diff --git a/src/ngspiceSimulation/pythonPlotting.py b/src/ngspiceSimulation/pythonPlotting.py
index dd0ca532..295c0a1d 100644
--- a/src/ngspiceSimulation/pythonPlotting.py
+++ b/src/ngspiceSimulation/pythonPlotting.py
@@ -110,7 +110,7 @@ class plotWindow(QtGui.QMainWindow):
self.plotbtn = QtGui.QPushButton("Plot")
self.plotbtn.setToolTip('<b>Press</b> to Plot' )
self.multimeterbtn = QtGui.QPushButton("Multimeter")
- self.multimeterbtn.setToolTip('<b>Press</b> to get Multimeter' )
+ self.multimeterbtn.setToolTip('<b>RMS</b> value of the current and voltage is displayed' )
self.text = QtGui.QLineEdit()
self.funcLabel = QtGui.QLabel()
self.palette1 = QtGui.QPalette()
@@ -155,9 +155,9 @@ class plotWindow(QtGui.QMainWindow):
self.listNode.setText("<font color='indigo'>List of Nodes:</font>")
self.listBranch.setText("<font color='indigo'>List of Branches:</font>")
self.funcLabel.setText("<font color='indigo'>Function:</font>")
- self.funcName.setText("<font color='indigo'>Examples:</font>\
+ self.funcName.setText("<font color='indigo'>Standard functions</font>\
<br><br>Addition:<br>Subtraction:<br>Multiplication:<br>Division:<br>Comparison:")
- self.funcExample.setText("\n\nV(1) + V(2)\nV(1) - V(2)\nV(1) * V(2)\nV(1) / V(2)\nV(1) vs V(2)")
+ self.funcExample.setText("\n\nNode1 + Node2\nNode1 - Node2\nNode1 * Node2\nNode1 / Node2\nNode1 vs Node2")
#Connecting to plot and clear function
self.connect(self.clear,QtCore.SIGNAL('clicked()'),self.pushedClear)
@@ -401,14 +401,21 @@ class plotWindow(QtGui.QMainWindow):
boxCheck = 0
loc_x = 300
loc_y = 300
+
for i,j in zip(self.chkbox,range(len(self.chkbox))):
if i.isChecked():
print "Check box",self.obj_dataext.NBList[j]
boxCheck += 1
+ if self.obj_dataext.NBList[j] in self.obj_dataext.NBIList:
+ voltFlag = False
+ else:
+ voltFlag = True
#Initializing Multimeter
- self.obj[j] = MultimeterWidgetClass(self.obj_dataext.NBList[j],self.getRMSValue(self.obj_dataext.y[j]),loc_x,loc_y)
+ self.obj[j] = MultimeterWidgetClass(self.obj_dataext.NBList[j],self.getRMSValue(self.obj_dataext.y[j]),loc_x,loc_y,voltFlag)
loc_x += 50
loc_y += 50
+ ## Adding object of multimeter to dictionary
+ self.obj_appconfig.dock_dict[self.obj_appconfig.current_project['ProjectName']].append(self.obj[j])
if boxCheck == 0:
QtGui.QMessageBox.about(self, "Warning!!","Please select at least one Node OR Branch")
@@ -419,15 +426,20 @@ class plotWindow(QtGui.QMainWindow):
return np.sqrt(np.mean(np.square(dataPoints)))
class MultimeterWidgetClass(QtGui.QWidget):
- def __init__(self,node_branch,rmsValue,loc_x,loc_y):
+ def __init__(self,node_branch,rmsValue,loc_x,loc_y,voltFlag):
QtGui.QWidget.__init__(self)
self.multimeter = QtGui.QWidget(self)
- self.node_branchLabel = QtGui.QLabel("Node/Branch")
+ if voltFlag:
+ self.node_branchLabel = QtGui.QLabel("Node")
+ self.rmsValue = QtGui.QLabel(str(rmsValue)+" Volts")
+ else:
+ self.node_branchLabel = QtGui.QLabel("Branch")
+ self.rmsValue = QtGui.QLabel(str(rmsValue)+" Amp")
+
self.rmsLabel = QtGui.QLabel("RMS Value")
-
self.nodeBranchValue = QtGui.QLabel(str(node_branch))
- self.rmsValue = QtGui.QLabel(str(rmsValue))
+
self.layout = QtGui.QGridLayout(self)
self.layout.addWidget(self.node_branchLabel,0,0)
@@ -436,7 +448,8 @@ class MultimeterWidgetClass(QtGui.QWidget):
self.layout.addWidget(self.rmsValue,1,1)
self.multimeter.setLayout(self.layout)
- self.setGeometry(loc_x,loc_y,180,100)
+ self.setGeometry(loc_x,loc_y,200,100)
+ self.setGeometry(loc_x,loc_y,300,100)
self.setWindowTitle("MultiMeter")
self.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint)
self.show()