# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file '/home/rius/datos/Programacion/Python/ESA_Megafiltros/svn/megafilters/trunk/matrixeditdlg.ui'
#
# Created: Wed May 18 23:35:47 2011
#      by: PyQt4 UI code generator 4.8.1
#
# WARNING! All changes made in this file will be lost!

from PyQt4 import QtCore, QtGui

try:
    _fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
    _fromUtf8 = lambda s: s

class Ui_MatrixEditDlg(object):
    def setupUi(self, MatrixEditDlg):
        MatrixEditDlg.setObjectName(_fromUtf8("MatrixEditDlg"))
        MatrixEditDlg.resize(718, 869)
        self.verticalLayout_16 = QtGui.QVBoxLayout(MatrixEditDlg)
        self.verticalLayout_16.setObjectName(_fromUtf8("verticalLayout_16"))
        self.splitter = QtGui.QSplitter(MatrixEditDlg)
        self.splitter.setOrientation(QtCore.Qt.Horizontal)
        self.splitter.setObjectName(_fromUtf8("splitter"))
        self.layoutWidget = QtGui.QWidget(self.splitter)
        self.layoutWidget.setObjectName(_fromUtf8("layoutWidget"))
        self.verticalLayout_12 = QtGui.QVBoxLayout(self.layoutWidget)
        self.verticalLayout_12.setObjectName(_fromUtf8("verticalLayout_12"))
        self.line = QtGui.QFrame(self.layoutWidget)
        self.line.setFrameShape(QtGui.QFrame.HLine)
        self.line.setFrameShadow(QtGui.QFrame.Sunken)
        self.line.setObjectName(_fromUtf8("line"))
        self.verticalLayout_12.addWidget(self.line)
        self.edit_toolBox = QtGui.QToolBox(self.layoutWidget)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.MinimumExpanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.edit_toolBox.sizePolicy().hasHeightForWidth())
        self.edit_toolBox.setSizePolicy(sizePolicy)
        self.edit_toolBox.setToolTip(_fromUtf8(""))
        self.edit_toolBox.setFrameShape(QtGui.QFrame.NoFrame)
        self.edit_toolBox.setObjectName(_fromUtf8("edit_toolBox"))
        self.rotate_page = QtGui.QWidget()
        self.rotate_page.setGeometry(QtCore.QRect(0, 0, 228, 158))
        self.rotate_page.setObjectName(_fromUtf8("rotate_page"))
        self.horizontalLayout_11 = QtGui.QHBoxLayout(self.rotate_page)
        self.horizontalLayout_11.setObjectName(_fromUtf8("horizontalLayout_11"))
        self.verticalLayout_6 = QtGui.QVBoxLayout()
        self.verticalLayout_6.setObjectName(_fromUtf8("verticalLayout_6"))
        self.groupBox = QtGui.QGroupBox(self.rotate_page)
        self.groupBox.setObjectName(_fromUtf8("groupBox"))
        self.verticalLayout = QtGui.QVBoxLayout(self.groupBox)
        self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
        self.rot_trigo_radioButton = QtGui.QRadioButton(self.groupBox)
        self.rot_trigo_radioButton.setObjectName(_fromUtf8("rot_trigo_radioButton"))
        self.verticalLayout.addWidget(self.rot_trigo_radioButton)
        self.rot_hyper_radioButton = QtGui.QRadioButton(self.groupBox)
        self.rot_hyper_radioButton.setChecked(True)
        self.rot_hyper_radioButton.setObjectName(_fromUtf8("rot_hyper_radioButton"))
        self.verticalLayout.addWidget(self.rot_hyper_radioButton)
        self.verticalLayout_6.addWidget(self.groupBox)
        self.verticalLayout_2 = QtGui.QVBoxLayout()
        self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
        self.horizontalLayout = QtGui.QHBoxLayout()
        self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout"))
        self.label = QtGui.QLabel(self.rotate_page)
        self.label.setObjectName(_fromUtf8("label"))
        self.horizontalLayout.addWidget(self.label)
        self.rot_pivotM_comboBox = QtGui.QComboBox(self.rotate_page)
        self.rot_pivotM_comboBox.setObjectName(_fromUtf8("rot_pivotM_comboBox"))
        self.horizontalLayout.addWidget(self.rot_pivotM_comboBox)
        self.rot_pivotN_comboBox = QtGui.QComboBox(self.rotate_page)
        self.rot_pivotN_comboBox.setObjectName(_fromUtf8("rot_pivotN_comboBox"))
        self.horizontalLayout.addWidget(self.rot_pivotN_comboBox)
        self.verticalLayout_2.addLayout(self.horizontalLayout)
        self.horizontalLayout_2 = QtGui.QHBoxLayout()
        self.horizontalLayout_2.setObjectName(_fromUtf8("horizontalLayout_2"))
        self.label_2 = QtGui.QLabel(self.rotate_page)
        self.label_2.setObjectName(_fromUtf8("label_2"))
        self.horizontalLayout_2.addWidget(self.label_2)
        self.rot_angle_lineEdit = QtGui.QLineEdit(self.rotate_page)
        self.rot_angle_lineEdit.setObjectName(_fromUtf8("rot_angle_lineEdit"))
        self.horizontalLayout_2.addWidget(self.rot_angle_lineEdit)
        self.label_4 = QtGui.QLabel(self.rotate_page)
        self.label_4.setObjectName(_fromUtf8("label_4"))
        self.horizontalLayout_2.addWidget(self.label_4)
        self.verticalLayout_2.addLayout(self.horizontalLayout_2)
        self.verticalLayout_6.addLayout(self.verticalLayout_2)
        spacerItem = QtGui.QSpacerItem(20, 50, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_6.addItem(spacerItem)
        self.horizontalLayout_11.addLayout(self.verticalLayout_6)
        spacerItem1 = QtGui.QSpacerItem(10, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_11.addItem(spacerItem1)
        self.edit_toolBox.addItem(self.rotate_page, _fromUtf8(""))
        self.annihilate_page = QtGui.QWidget()
        self.annihilate_page.setGeometry(QtCore.QRect(0, 0, 248, 159))
        self.annihilate_page.setObjectName(_fromUtf8("annihilate_page"))
        self.horizontalLayout_7 = QtGui.QHBoxLayout(self.annihilate_page)
        self.horizontalLayout_7.setObjectName(_fromUtf8("horizontalLayout_7"))
        self.verticalLayout_7 = QtGui.QVBoxLayout()
        self.verticalLayout_7.setObjectName(_fromUtf8("verticalLayout_7"))
        self.groupBox_2 = QtGui.QGroupBox(self.annihilate_page)
        self.groupBox_2.setObjectName(_fromUtf8("groupBox_2"))
        self.verticalLayout_3 = QtGui.QVBoxLayout(self.groupBox_2)
        self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
        self.ann_trigo_radioButton = QtGui.QRadioButton(self.groupBox_2)
        self.ann_trigo_radioButton.setObjectName(_fromUtf8("ann_trigo_radioButton"))
        self.verticalLayout_3.addWidget(self.ann_trigo_radioButton)
        self.ann_hyper_radioButton = QtGui.QRadioButton(self.groupBox_2)
        self.ann_hyper_radioButton.setChecked(True)
        self.ann_hyper_radioButton.setObjectName(_fromUtf8("ann_hyper_radioButton"))
        self.verticalLayout_3.addWidget(self.ann_hyper_radioButton)
        self.verticalLayout_7.addWidget(self.groupBox_2)
        self.verticalLayout_4 = QtGui.QVBoxLayout()
        self.verticalLayout_4.setObjectName(_fromUtf8("verticalLayout_4"))
        self.horizontalLayout_4 = QtGui.QHBoxLayout()
        self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
        self.label_5 = QtGui.QLabel(self.annihilate_page)
        self.label_5.setObjectName(_fromUtf8("label_5"))
        self.horizontalLayout_4.addWidget(self.label_5)
        self.ann_elemM_comboBox = QtGui.QComboBox(self.annihilate_page)
        self.ann_elemM_comboBox.setObjectName(_fromUtf8("ann_elemM_comboBox"))
        self.horizontalLayout_4.addWidget(self.ann_elemM_comboBox)
        self.ann_elemN_comboBox = QtGui.QComboBox(self.annihilate_page)
        self.ann_elemN_comboBox.setObjectName(_fromUtf8("ann_elemN_comboBox"))
        self.horizontalLayout_4.addWidget(self.ann_elemN_comboBox)
        self.verticalLayout_4.addLayout(self.horizontalLayout_4)
        self.horizontalLayout_5 = QtGui.QHBoxLayout()
        self.horizontalLayout_5.setObjectName(_fromUtf8("horizontalLayout_5"))
        self.label_3 = QtGui.QLabel(self.annihilate_page)
        self.label_3.setObjectName(_fromUtf8("label_3"))
        self.horizontalLayout_5.addWidget(self.label_3)
        self.ann_pivotM_comboBox = QtGui.QComboBox(self.annihilate_page)
        self.ann_pivotM_comboBox.setObjectName(_fromUtf8("ann_pivotM_comboBox"))
        self.horizontalLayout_5.addWidget(self.ann_pivotM_comboBox)
        self.ann_pivotN_comboBox = QtGui.QComboBox(self.annihilate_page)
        self.ann_pivotN_comboBox.setObjectName(_fromUtf8("ann_pivotN_comboBox"))
        self.horizontalLayout_5.addWidget(self.ann_pivotN_comboBox)
        self.verticalLayout_4.addLayout(self.horizontalLayout_5)
        self.verticalLayout_7.addLayout(self.verticalLayout_4)
        spacerItem2 = QtGui.QSpacerItem(17, 50, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_7.addItem(spacerItem2)
        self.horizontalLayout_7.addLayout(self.verticalLayout_7)
        spacerItem3 = QtGui.QSpacerItem(10, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_7.addItem(spacerItem3)
        self.edit_toolBox.addItem(self.annihilate_page, _fromUtf8(""))
        self.inflate_page = QtGui.QWidget()
        self.inflate_page.setGeometry(QtCore.QRect(0, 0, 96, 122))
        self.inflate_page.setObjectName(_fromUtf8("inflate_page"))
        self.horizontalLayout_8 = QtGui.QHBoxLayout(self.inflate_page)
        self.horizontalLayout_8.setObjectName(_fromUtf8("horizontalLayout_8"))
        self.verticalLayout_8 = QtGui.QVBoxLayout()
        self.verticalLayout_8.setObjectName(_fromUtf8("verticalLayout_8"))
        self.groupBox_3 = QtGui.QGroupBox(self.inflate_page)
        self.groupBox_3.setObjectName(_fromUtf8("groupBox_3"))
        self.verticalLayout_5 = QtGui.QVBoxLayout(self.groupBox_3)
        self.verticalLayout_5.setObjectName(_fromUtf8("verticalLayout_5"))
        self.add_source_radioButton = QtGui.QRadioButton(self.groupBox_3)
        self.add_source_radioButton.setObjectName(_fromUtf8("add_source_radioButton"))
        self.verticalLayout_5.addWidget(self.add_source_radioButton)
        self.add_load_radioButton = QtGui.QRadioButton(self.groupBox_3)
        self.add_load_radioButton.setObjectName(_fromUtf8("add_load_radioButton"))
        self.verticalLayout_5.addWidget(self.add_load_radioButton)
        self.add_both_radioButton = QtGui.QRadioButton(self.groupBox_3)
        self.add_both_radioButton.setChecked(True)
        self.add_both_radioButton.setObjectName(_fromUtf8("add_both_radioButton"))
        self.verticalLayout_5.addWidget(self.add_both_radioButton)
        self.verticalLayout_8.addWidget(self.groupBox_3)
        spacerItem4 = QtGui.QSpacerItem(20, 60, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_8.addItem(spacerItem4)
        self.horizontalLayout_8.addLayout(self.verticalLayout_8)
        spacerItem5 = QtGui.QSpacerItem(10, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_8.addItem(spacerItem5)
        self.edit_toolBox.addItem(self.inflate_page, _fromUtf8(""))
        self.scale_page = QtGui.QWidget()
        self.scale_page.setGeometry(QtCore.QRect(0, 0, 144, 67))
        self.scale_page.setObjectName(_fromUtf8("scale_page"))
        self.horizontalLayout_9 = QtGui.QHBoxLayout(self.scale_page)
        self.horizontalLayout_9.setObjectName(_fromUtf8("horizontalLayout_9"))
        self.verticalLayout_9 = QtGui.QVBoxLayout()
        self.verticalLayout_9.setObjectName(_fromUtf8("verticalLayout_9"))
        self.gridLayout = QtGui.QGridLayout()
        self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
        self.label_6 = QtGui.QLabel(self.scale_page)
        self.label_6.setObjectName(_fromUtf8("label_6"))
        self.gridLayout.addWidget(self.label_6, 0, 0, 1, 1)
        self.label_8 = QtGui.QLabel(self.scale_page)
        self.label_8.setObjectName(_fromUtf8("label_8"))
        self.gridLayout.addWidget(self.label_8, 1, 0, 1, 1)
        self.scale_factor_doubleSpinBox = QtGui.QDoubleSpinBox(self.scale_page)
        self.scale_factor_doubleSpinBox.setMinimum(-99.0)
        self.scale_factor_doubleSpinBox.setSingleStep(0.1)
        self.scale_factor_doubleSpinBox.setProperty(_fromUtf8("value"), 1.0)
        self.scale_factor_doubleSpinBox.setObjectName(_fromUtf8("scale_factor_doubleSpinBox"))
        self.gridLayout.addWidget(self.scale_factor_doubleSpinBox, 1, 2, 1, 1)
        self.scale_node_comboBox = QtGui.QComboBox(self.scale_page)
        self.scale_node_comboBox.setObjectName(_fromUtf8("scale_node_comboBox"))
        self.gridLayout.addWidget(self.scale_node_comboBox, 0, 2, 1, 1)
        self.verticalLayout_9.addLayout(self.gridLayout)
        spacerItem6 = QtGui.QSpacerItem(20, 52, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_9.addItem(spacerItem6)
        self.horizontalLayout_9.addLayout(self.verticalLayout_9)
        spacerItem7 = QtGui.QSpacerItem(10, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_9.addItem(spacerItem7)
        self.edit_toolBox.addItem(self.scale_page, _fromUtf8(""))
        self.flatness_page = QtGui.QWidget()
        self.flatness_page.setGeometry(QtCore.QRect(0, 0, 238, 37))
        self.flatness_page.setObjectName(_fromUtf8("flatness_page"))
        self.verticalLayout_18 = QtGui.QVBoxLayout(self.flatness_page)
        self.verticalLayout_18.setObjectName(_fromUtf8("verticalLayout_18"))
        self.horizontalLayout_6 = QtGui.QHBoxLayout()
        self.horizontalLayout_6.setObjectName(_fromUtf8("horizontalLayout_6"))
        self.label_7 = QtGui.QLabel(self.flatness_page)
        self.label_7.setObjectName(_fromUtf8("label_7"))
        self.horizontalLayout_6.addWidget(self.label_7)
        self.flatnessQeff_lineEdit = QtGui.QLineEdit(self.flatness_page)
        self.flatnessQeff_lineEdit.setObjectName(_fromUtf8("flatnessQeff_lineEdit"))
        self.horizontalLayout_6.addWidget(self.flatnessQeff_lineEdit)
        spacerItem8 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_6.addItem(spacerItem8)
        self.verticalLayout_18.addLayout(self.horizontalLayout_6)
        spacerItem9 = QtGui.QSpacerItem(20, 195, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_18.addItem(spacerItem9)
        self.edit_toolBox.addItem(self.flatness_page, _fromUtf8(""))
        self.optim_page = QtGui.QWidget()
        self.optim_page.setGeometry(QtCore.QRect(0, 0, 404, 237))
        self.optim_page.setObjectName(_fromUtf8("optim_page"))
        self.verticalLayout_19 = QtGui.QVBoxLayout(self.optim_page)
        self.verticalLayout_19.setObjectName(_fromUtf8("verticalLayout_19"))
        self.verticalLayout_13 = QtGui.QVBoxLayout()
        self.verticalLayout_13.setObjectName(_fromUtf8("verticalLayout_13"))
        self.horizontalLayout_3 = QtGui.QHBoxLayout()
        self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
        self.gridLayout_3 = QtGui.QGridLayout()
        self.gridLayout_3.setObjectName(_fromUtf8("gridLayout_3"))
        self.maxIter_spinBox = QtGui.QSpinBox(self.optim_page)
        self.maxIter_spinBox.setMinimum(10)
        self.maxIter_spinBox.setMaximum(10000)
        self.maxIter_spinBox.setSingleStep(50)
        self.maxIter_spinBox.setProperty(_fromUtf8("value"), 500)
        self.maxIter_spinBox.setObjectName(_fromUtf8("maxIter_spinBox"))
        self.gridLayout_3.addWidget(self.maxIter_spinBox, 1, 1, 1, 1)
        self.label_19 = QtGui.QLabel(self.optim_page)
        self.label_19.setAlignment(QtCore.Qt.AlignCenter)
        self.label_19.setObjectName(_fromUtf8("label_19"))
        self.gridLayout_3.addWidget(self.label_19, 0, 1, 1, 1)
        self.label_10 = QtGui.QLabel(self.optim_page)
        self.label_10.setAlignment(QtCore.Qt.AlignCenter)
        self.label_10.setObjectName(_fromUtf8("label_10"))
        self.gridLayout_3.addWidget(self.label_10, 0, 2, 1, 1)
        self.Nsamples_spinBox = QtGui.QSpinBox(self.optim_page)
        self.Nsamples_spinBox.setMinimum(10)
        self.Nsamples_spinBox.setMaximum(1000)
        self.Nsamples_spinBox.setSingleStep(10)
        self.Nsamples_spinBox.setProperty(_fromUtf8("value"), 20)
        self.Nsamples_spinBox.setObjectName(_fromUtf8("Nsamples_spinBox"))
        self.gridLayout_3.addWidget(self.Nsamples_spinBox, 1, 2, 1, 1)
        self.label_15 = QtGui.QLabel(self.optim_page)
        self.label_15.setAlignment(QtCore.Qt.AlignCenter)
        self.label_15.setObjectName(_fromUtf8("label_15"))
        self.gridLayout_3.addWidget(self.label_15, 0, 3, 1, 1)
        self.Q_doubleSpinBox = QtGui.QDoubleSpinBox(self.optim_page)
        self.Q_doubleSpinBox.setDecimals(2)
        self.Q_doubleSpinBox.setMinimum(1.0)
        self.Q_doubleSpinBox.setMaximum(100000.0)
        self.Q_doubleSpinBox.setSingleStep(100.0)
        self.Q_doubleSpinBox.setProperty(_fromUtf8("value"), 1000.0)
        self.Q_doubleSpinBox.setObjectName(_fromUtf8("Q_doubleSpinBox"))
        self.gridLayout_3.addWidget(self.Q_doubleSpinBox, 1, 3, 1, 1)
        self.algor_comboBox = QtGui.QComboBox(self.optim_page)
        self.algor_comboBox.setObjectName(_fromUtf8("algor_comboBox"))
        self.algor_comboBox.addItem(_fromUtf8(""))
        self.algor_comboBox.addItem(_fromUtf8(""))
        self.algor_comboBox.addItem(_fromUtf8(""))
        self.gridLayout_3.addWidget(self.algor_comboBox, 1, 0, 1, 1)
        self.label_18 = QtGui.QLabel(self.optim_page)
        self.label_18.setAlignment(QtCore.Qt.AlignCenter)
        self.label_18.setObjectName(_fromUtf8("label_18"))
        self.gridLayout_3.addWidget(self.label_18, 0, 0, 1, 1)
        self.horizontalLayout_3.addLayout(self.gridLayout_3)
        self.verticalLayout_13.addLayout(self.horizontalLayout_3)
        self.horizontalLayout_12 = QtGui.QHBoxLayout()
        self.horizontalLayout_12.setObjectName(_fromUtf8("horizontalLayout_12"))
        self.gridLayout_2 = QtGui.QGridLayout()
        self.gridLayout_2.setObjectName(_fromUtf8("gridLayout_2"))
        self.label_11 = QtGui.QLabel(self.optim_page)
        self.label_11.setObjectName(_fromUtf8("label_11"))
        self.gridLayout_2.addWidget(self.label_11, 1, 0, 1, 1)
        self.wS11_doubleSpinBox = QtGui.QDoubleSpinBox(self.optim_page)
        self.wS11_doubleSpinBox.setMaximum(10.0)
        self.wS11_doubleSpinBox.setSingleStep(0.1)
        self.wS11_doubleSpinBox.setProperty(_fromUtf8("value"), 1.0)
        self.wS11_doubleSpinBox.setObjectName(_fromUtf8("wS11_doubleSpinBox"))
        self.gridLayout_2.addWidget(self.wS11_doubleSpinBox, 1, 1, 1, 1)
        self.label_12 = QtGui.QLabel(self.optim_page)
        self.label_12.setAlignment(QtCore.Qt.AlignCenter)
        self.label_12.setObjectName(_fromUtf8("label_12"))
        self.gridLayout_2.addWidget(self.label_12, 0, 1, 1, 1)
        self.wS22_doubleSpinBox = QtGui.QDoubleSpinBox(self.optim_page)
        self.wS22_doubleSpinBox.setMaximum(10.0)
        self.wS22_doubleSpinBox.setSingleStep(0.1)
        self.wS22_doubleSpinBox.setProperty(_fromUtf8("value"), 1.0)
        self.wS22_doubleSpinBox.setObjectName(_fromUtf8("wS22_doubleSpinBox"))
        self.gridLayout_2.addWidget(self.wS22_doubleSpinBox, 1, 2, 1, 1)
        self.label_13 = QtGui.QLabel(self.optim_page)
        self.label_13.setAlignment(QtCore.Qt.AlignCenter)
        self.label_13.setObjectName(_fromUtf8("label_13"))
        self.gridLayout_2.addWidget(self.label_13, 0, 2, 1, 1)
        self.wS21_doubleSpinBox = QtGui.QDoubleSpinBox(self.optim_page)
        self.wS21_doubleSpinBox.setMaximum(10.0)
        self.wS21_doubleSpinBox.setSingleStep(0.1)
        self.wS21_doubleSpinBox.setProperty(_fromUtf8("value"), 1.0)
        self.wS21_doubleSpinBox.setObjectName(_fromUtf8("wS21_doubleSpinBox"))
        self.gridLayout_2.addWidget(self.wS21_doubleSpinBox, 1, 3, 1, 1)
        self.label_16 = QtGui.QLabel(self.optim_page)
        self.label_16.setAlignment(QtCore.Qt.AlignCenter)
        self.label_16.setObjectName(_fromUtf8("label_16"))
        self.gridLayout_2.addWidget(self.label_16, 0, 3, 1, 1)
        self.wGD_doubleSpinBox = QtGui.QDoubleSpinBox(self.optim_page)
        self.wGD_doubleSpinBox.setMaximum(10.0)
        self.wGD_doubleSpinBox.setSingleStep(0.1)
        self.wGD_doubleSpinBox.setProperty(_fromUtf8("value"), 1.0)
        self.wGD_doubleSpinBox.setObjectName(_fromUtf8("wGD_doubleSpinBox"))
        self.gridLayout_2.addWidget(self.wGD_doubleSpinBox, 1, 4, 1, 1)
        self.label_17 = QtGui.QLabel(self.optim_page)
        self.label_17.setAlignment(QtCore.Qt.AlignCenter)
        self.label_17.setObjectName(_fromUtf8("label_17"))
        self.gridLayout_2.addWidget(self.label_17, 0, 4, 1, 1)
        self.horizontalLayout_12.addLayout(self.gridLayout_2)
        spacerItem10 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_12.addItem(spacerItem10)
        self.verticalLayout_13.addLayout(self.horizontalLayout_12)
        self.horizontalLayout_13 = QtGui.QHBoxLayout()
        self.horizontalLayout_13.setObjectName(_fromUtf8("horizontalLayout_13"))
        self.label_14 = QtGui.QLabel(self.optim_page)
        self.label_14.setObjectName(_fromUtf8("label_14"))
        self.horizontalLayout_13.addWidget(self.label_14)
        self.optim_comboBox = QtGui.QComboBox(self.optim_page)
        self.optim_comboBox.setObjectName(_fromUtf8("optim_comboBox"))
        self.optim_comboBox.addItem(_fromUtf8(""))
        self.optim_comboBox.addItem(_fromUtf8(""))
        self.horizontalLayout_13.addWidget(self.optim_comboBox)
        spacerItem11 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_13.addItem(spacerItem11)
        self.verticalLayout_13.addLayout(self.horizontalLayout_13)
        self.optim_stackedWidget = QtGui.QStackedWidget(self.optim_page)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.optim_stackedWidget.sizePolicy().hasHeightForWidth())
        self.optim_stackedWidget.setSizePolicy(sizePolicy)
        self.optim_stackedWidget.setFrameShape(QtGui.QFrame.NoFrame)
        self.optim_stackedWidget.setObjectName(_fromUtf8("optim_stackedWidget"))
        self.page_3 = QtGui.QWidget()
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.page_3.sizePolicy().hasHeightForWidth())
        self.page_3.setSizePolicy(sizePolicy)
        self.page_3.setObjectName(_fromUtf8("page_3"))
        self.verticalLayout_14 = QtGui.QVBoxLayout(self.page_3)
        self.verticalLayout_14.setObjectName(_fromUtf8("verticalLayout_14"))
        self.frame_3 = QtGui.QFrame(self.page_3)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.frame_3.sizePolicy().hasHeightForWidth())
        self.frame_3.setSizePolicy(sizePolicy)
        self.frame_3.setFrameShape(QtGui.QFrame.StyledPanel)
        self.frame_3.setFrameShadow(QtGui.QFrame.Raised)
        self.frame_3.setObjectName(_fromUtf8("frame_3"))
        self.verticalLayout_17 = QtGui.QVBoxLayout(self.frame_3)
        self.verticalLayout_17.setObjectName(_fromUtf8("verticalLayout_17"))
        self.horizontalLayout_14 = QtGui.QHBoxLayout()
        self.horizontalLayout_14.setObjectName(_fromUtf8("horizontalLayout_14"))
        self.gridLayout_4 = QtGui.QGridLayout()
        self.gridLayout_4.setObjectName(_fromUtf8("gridLayout_4"))
        self.label_23 = QtGui.QLabel(self.frame_3)
        self.label_23.setAlignment(QtCore.Qt.AlignCenter)
        self.label_23.setObjectName(_fromUtf8("label_23"))
        self.gridLayout_4.addWidget(self.label_23, 1, 4, 1, 1)
        self.label_22 = QtGui.QLabel(self.frame_3)
        self.label_22.setAlignment(QtCore.Qt.AlignCenter)
        self.label_22.setObjectName(_fromUtf8("label_22"))
        self.gridLayout_4.addWidget(self.label_22, 1, 1, 1, 1)
        self.S11DR_doubleSpinBox = QtGui.QDoubleSpinBox(self.frame_3)
        self.S11DR_doubleSpinBox.setMinimum(1.0)
        self.S11DR_doubleSpinBox.setMaximum(100.0)
        self.S11DR_doubleSpinBox.setSingleStep(10.0)
        self.S11DR_doubleSpinBox.setProperty(_fromUtf8("value"), 30.0)
        self.S11DR_doubleSpinBox.setObjectName(_fromUtf8("S11DR_doubleSpinBox"))
        self.gridLayout_4.addWidget(self.S11DR_doubleSpinBox, 1, 2, 1, 1)
        self.S21DR_doubleSpinBox = QtGui.QDoubleSpinBox(self.frame_3)
        self.S21DR_doubleSpinBox.setMinimum(1.0)
        self.S21DR_doubleSpinBox.setMaximum(100.0)
        self.S21DR_doubleSpinBox.setSingleStep(10.0)
        self.S21DR_doubleSpinBox.setProperty(_fromUtf8("value"), 40.0)
        self.S21DR_doubleSpinBox.setObjectName(_fromUtf8("S21DR_doubleSpinBox"))
        self.gridLayout_4.addWidget(self.S21DR_doubleSpinBox, 1, 5, 1, 1)
        self.label_20 = QtGui.QLabel(self.frame_3)
        self.label_20.setText(_fromUtf8(""))
        self.label_20.setObjectName(_fromUtf8("label_20"))
        self.gridLayout_4.addWidget(self.label_20, 1, 3, 1, 1)
        self.horizontalLayout_14.addLayout(self.gridLayout_4)
        spacerItem12 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_14.addItem(spacerItem12)
        self.verticalLayout_17.addLayout(self.horizontalLayout_14)
        self.verticalLayout_14.addWidget(self.frame_3)
        spacerItem13 = QtGui.QSpacerItem(20, 1, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_14.addItem(spacerItem13)
        self.optim_stackedWidget.addWidget(self.page_3)
        self.page_4 = QtGui.QWidget()
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Preferred, QtGui.QSizePolicy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.page_4.sizePolicy().hasHeightForWidth())
        self.page_4.setSizePolicy(sizePolicy)
        self.page_4.setObjectName(_fromUtf8("page_4"))
        self.verticalLayout_15 = QtGui.QVBoxLayout(self.page_4)
        self.verticalLayout_15.setObjectName(_fromUtf8("verticalLayout_15"))
        self.optim_stackedWidget.addWidget(self.page_4)
        self.verticalLayout_13.addWidget(self.optim_stackedWidget)
        self.topology_label = QtGui.QLabel(self.optim_page)
        self.topology_label.setAlignment(QtCore.Qt.AlignCenter)
        self.topology_label.setObjectName(_fromUtf8("topology_label"))
        self.verticalLayout_13.addWidget(self.topology_label)
        self.verticalLayout_19.addLayout(self.verticalLayout_13)
        self.edit_toolBox.addItem(self.optim_page, _fromUtf8(""))
        self.verticalLayout_12.addWidget(self.edit_toolBox)
        spacerItem14 = QtGui.QSpacerItem(20, 1, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
        self.verticalLayout_12.addItem(spacerItem14)
        self.horizontalLayout_10 = QtGui.QHBoxLayout()
        self.horizontalLayout_10.setObjectName(_fromUtf8("horizontalLayout_10"))
        self.apply_pushButton = QtGui.QPushButton(self.layoutWidget)
        self.apply_pushButton.setObjectName(_fromUtf8("apply_pushButton"))
        self.horizontalLayout_10.addWidget(self.apply_pushButton)
        self.undo_pushButton = QtGui.QPushButton(self.layoutWidget)
        self.undo_pushButton.setObjectName(_fromUtf8("undo_pushButton"))
        self.horizontalLayout_10.addWidget(self.undo_pushButton)
        self.clear_pushButton = QtGui.QPushButton(self.layoutWidget)
        self.clear_pushButton.setObjectName(_fromUtf8("clear_pushButton"))
        self.horizontalLayout_10.addWidget(self.clear_pushButton)
        spacerItem15 = QtGui.QSpacerItem(10, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.horizontalLayout_10.addItem(spacerItem15)
        self.close_pushButton = QtGui.QPushButton(self.layoutWidget)
        self.close_pushButton.setObjectName(_fromUtf8("close_pushButton"))
        self.horizontalLayout_10.addWidget(self.close_pushButton)
        self.verticalLayout_12.addLayout(self.horizontalLayout_10)
        self.layoutWidget1 = QtGui.QWidget(self.splitter)
        self.layoutWidget1.setObjectName(_fromUtf8("layoutWidget1"))
        self.verticalLayout_10 = QtGui.QVBoxLayout(self.layoutWidget1)
        self.verticalLayout_10.setObjectName(_fromUtf8("verticalLayout_10"))
        self.label_9 = QtGui.QLabel(self.layoutWidget1)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(10)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_9.sizePolicy().hasHeightForWidth())
        self.label_9.setSizePolicy(sizePolicy)
        self.label_9.setAlignment(QtCore.Qt.AlignCenter)
        self.label_9.setObjectName(_fromUtf8("label_9"))
        self.verticalLayout_10.addWidget(self.label_9)
        self.edit_listWidget = QtGui.QListWidget(self.layoutWidget1)
        sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding)
        sizePolicy.setHorizontalStretch(10)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.edit_listWidget.sizePolicy().hasHeightForWidth())
        self.edit_listWidget.setSizePolicy(sizePolicy)
        self.edit_listWidget.setSelectionMode(QtGui.QAbstractItemView.SingleSelection)
        self.edit_listWidget.setObjectName(_fromUtf8("edit_listWidget"))
        self.verticalLayout_10.addWidget(self.edit_listWidget)
        self.verticalLayout_16.addWidget(self.splitter)
        self.label_2.setBuddy(self.rot_angle_lineEdit)
        self.label_6.setBuddy(self.scale_node_comboBox)
        self.label_8.setBuddy(self.scale_factor_doubleSpinBox)
        self.label_7.setBuddy(self.flatnessQeff_lineEdit)
        self.label_19.setBuddy(self.maxIter_spinBox)
        self.label_10.setBuddy(self.Nsamples_spinBox)
        self.label_15.setBuddy(self.Q_doubleSpinBox)
        self.label_18.setBuddy(self.algor_comboBox)
        self.label_12.setBuddy(self.wS11_doubleSpinBox)
        self.label_13.setBuddy(self.wS22_doubleSpinBox)
        self.label_16.setBuddy(self.wS21_doubleSpinBox)
        self.label_17.setBuddy(self.wGD_doubleSpinBox)
        self.label_14.setBuddy(self.optim_comboBox)
        self.label_23.setBuddy(self.S21DR_doubleSpinBox)
        self.label_22.setBuddy(self.S11DR_doubleSpinBox)

        self.retranslateUi(MatrixEditDlg)
        self.edit_toolBox.setCurrentIndex(5)
        self.algor_comboBox.setCurrentIndex(2)
        self.optim_stackedWidget.setCurrentIndex(0)
        QtCore.QObject.connect(self.close_pushButton, QtCore.SIGNAL(_fromUtf8("clicked()")), MatrixEditDlg.close)
        QtCore.QObject.connect(self.rot_angle_lineEdit, QtCore.SIGNAL(_fromUtf8("textEdited(QString)")), MatrixEditDlg.dialogChanged)
        QtCore.QObject.connect(self.optim_comboBox, QtCore.SIGNAL(_fromUtf8("currentIndexChanged(int)")), self.optim_stackedWidget.setCurrentIndex)
        QtCore.QObject.connect(self.flatnessQeff_lineEdit, QtCore.SIGNAL(_fromUtf8("textEdited(QString)")), MatrixEditDlg.dialogChanged)
        QtCore.QMetaObject.connectSlotsByName(MatrixEditDlg)

    def retranslateUi(self, MatrixEditDlg):
        MatrixEditDlg.setWindowTitle(QtGui.QApplication.translate("MatrixEditDlg", "Edit coupling matrix", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Dynamic range to compare with [S] from the characteristic polynomials. Values of [S] lower than a minimum set by the dynamic range are not compared.", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Dynamic range to compare with [S] from the characteristic polynomials.\n"
"Values of [S] lower than a minimum set by the dynamic range are not compared.", None, QtGui.QApplication.UnicodeUTF8))
        self.rotate_page.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Apply trigonometric or hyperbolic rotation.", None, QtGui.QApplication.UnicodeUTF8))
        self.rotate_page.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Apply trigonometric or hyperbolic rotation.", None, QtGui.QApplication.UnicodeUTF8))
        self.groupBox.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Type of rotation.", None, QtGui.QApplication.UnicodeUTF8))
        self.groupBox.setTitle(QtGui.QApplication.translate("MatrixEditDlg", "Rotation type", None, QtGui.QApplication.UnicodeUTF8))
        self.rot_trigo_radioButton.setText(QtGui.QApplication.translate("MatrixEditDlg", "Trigonometric", None, QtGui.QApplication.UnicodeUTF8))
        self.rot_hyper_radioButton.setText(QtGui.QApplication.translate("MatrixEditDlg", "Hyperbolic", None, QtGui.QApplication.UnicodeUTF8))
        self.label.setText(QtGui.QApplication.translate("MatrixEditDlg", "Pivot", None, QtGui.QApplication.UnicodeUTF8))
        self.label_2.setText(QtGui.QApplication.translate("MatrixEditDlg", "Angle", None, QtGui.QApplication.UnicodeUTF8))
        self.rot_angle_lineEdit.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Complex rotation angle.<br>\n"
"Units: deg<br>\n"
"Maximum recommended value<br>\n"
"is 360 deg for the real part of<br>\n"
"hyperbolic rotations or the imag<br>\n"
"part of trigonometric rotations.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_4.setText(QtGui.QApplication.translate("MatrixEditDlg", "deg", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setItemText(self.edit_toolBox.indexOf(self.rotate_page), QtGui.QApplication.translate("MatrixEditDlg", "Rotate matrix", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setItemToolTip(self.edit_toolBox.indexOf(self.rotate_page), QtGui.QApplication.translate("MatrixEditDlg", "Apply trigonometric or hyperbolic rotation.", None, QtGui.QApplication.UnicodeUTF8))
        self.annihilate_page.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Apply a matrix rotation with pivot [i,j] such that the element [m,n] becomes zero. \n"
"The element to set to zero [m,n] must be in the row or column \n"
"of the rotation pivot [i,j] or its transpose [j,i].", None, QtGui.QApplication.UnicodeUTF8))
        self.annihilate_page.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Apply a matrix rotation with pivot [i,j] such that the element [m,n] becomes zero. \n"
"The element to set to zero [m,n] must be in the row or column \n"
"of the rotation pivot [i,j] or its transpose [j,i].", None, QtGui.QApplication.UnicodeUTF8))
        self.groupBox_2.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Type of rotation.", None, QtGui.QApplication.UnicodeUTF8))
        self.groupBox_2.setTitle(QtGui.QApplication.translate("MatrixEditDlg", "Rotation type", None, QtGui.QApplication.UnicodeUTF8))
        self.ann_trigo_radioButton.setText(QtGui.QApplication.translate("MatrixEditDlg", "Trigonometric", None, QtGui.QApplication.UnicodeUTF8))
        self.ann_hyper_radioButton.setText(QtGui.QApplication.translate("MatrixEditDlg", "Hyperbolic", None, QtGui.QApplication.UnicodeUTF8))
        self.label_5.setText(QtGui.QApplication.translate("MatrixEditDlg", "Element", None, QtGui.QApplication.UnicodeUTF8))
        self.label_3.setText(QtGui.QApplication.translate("MatrixEditDlg", "Pivot", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setItemText(self.edit_toolBox.indexOf(self.annihilate_page), QtGui.QApplication.translate("MatrixEditDlg", "Annihilate element", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setItemToolTip(self.edit_toolBox.indexOf(self.annihilate_page), QtGui.QApplication.translate("MatrixEditDlg", "Apply a matrix rotation with pivot [i,j] such that the element [m,n] becomes zero. \n"
"The element to set to zero [m,n] must be in the row or column \n"
"of the rotation pivot [i,j] or its transpose [j,i].", None, QtGui.QApplication.UnicodeUTF8))
        self.inflate_page.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Add external non-resonant nodes to the coupling matrix at the \n"
"source or load sides, or both. The resulting matrix will have one \n"
"or two columns and rows more than the input one.", None, QtGui.QApplication.UnicodeUTF8))
        self.inflate_page.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Add external non-resonant nodes to the coupling matrix at the \n"
"source or load sides, or both. The resulting matrix will have one \n"
"or two columns and rows more than the input one.", None, QtGui.QApplication.UnicodeUTF8))
        self.groupBox_3.setTitle(QtGui.QApplication.translate("MatrixEditDlg", "Position", None, QtGui.QApplication.UnicodeUTF8))
        self.add_source_radioButton.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Add non-resonant node at the source (left) side of the matrix.", None, QtGui.QApplication.UnicodeUTF8))
        self.add_source_radioButton.setText(QtGui.QApplication.translate("MatrixEditDlg", "Source", None, QtGui.QApplication.UnicodeUTF8))
        self.add_load_radioButton.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Add non-resonant node at the load (right) side of the matrix.", None, QtGui.QApplication.UnicodeUTF8))
        self.add_load_radioButton.setText(QtGui.QApplication.translate("MatrixEditDlg", "Load", None, QtGui.QApplication.UnicodeUTF8))
        self.add_both_radioButton.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Add non-resonant nodes at both (left and right) sides of the matrix.", None, QtGui.QApplication.UnicodeUTF8))
        self.add_both_radioButton.setText(QtGui.QApplication.translate("MatrixEditDlg", "Both", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setItemText(self.edit_toolBox.indexOf(self.inflate_page), QtGui.QApplication.translate("MatrixEditDlg", "Add nodes", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setItemToolTip(self.edit_toolBox.indexOf(self.inflate_page), QtGui.QApplication.translate("MatrixEditDlg", "Add external non-resonant nodes to the coupling matrix at the \n"
"source or load sides, or both. The resulting matrix will have one \n"
"or two columns and rows more than the input one.", None, QtGui.QApplication.UnicodeUTF8))
        self.scale_page.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Scale a node of the coupling matrix, by multiplying row [i] and column [i] by a factor. \n"
"Matrix rotations are not allowed after node scaling of a resonant node.", None, QtGui.QApplication.UnicodeUTF8))
        self.scale_page.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Scale a node of the coupling matrix, by multiplying row [i] and column [i] by a factor. \n"
"Matrix rotations are not allowed after node scaling of a resonant node.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_6.setText(QtGui.QApplication.translate("MatrixEditDlg", "Node", None, QtGui.QApplication.UnicodeUTF8))
        self.label_8.setText(QtGui.QApplication.translate("MatrixEditDlg", "Factor", None, QtGui.QApplication.UnicodeUTF8))
        self.scale_factor_doubleSpinBox.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Scaling factor.", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setItemText(self.edit_toolBox.indexOf(self.scale_page), QtGui.QApplication.translate("MatrixEditDlg", "Node scaling", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setItemToolTip(self.edit_toolBox.indexOf(self.scale_page), QtGui.QApplication.translate("MatrixEditDlg", "Scale a node of the coupling matrix, by multiplying row [i] and column [i] by a factor. \n"
"Matrix rotations are not allowed after node scaling of a resonant node.", None, QtGui.QApplication.UnicodeUTF8))
        self.flatness_page.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Set a prescribed flatness in the ideal response of a \n"
"lossy filter synthesis by emulating the non-flat response\n"
"of a lossy filter of quality factor equal to Qeff.", None, QtGui.QApplication.UnicodeUTF8))
        self.flatness_page.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Set a prescribed flatness in the ideal response of a \n"
"lossy filter synthesis by emulating the non-flat response\n"
"of a lossy filter of quality factor equal to Qeff.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_7.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Quality factor of the filter to emulate (Qeff)", None, QtGui.QApplication.UnicodeUTF8))
        self.label_7.setText(QtGui.QApplication.translate("MatrixEditDlg", "Quality factor to emulate (Qeff)", None, QtGui.QApplication.UnicodeUTF8))
        self.flatnessQeff_lineEdit.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Quality factor of the filter to emulate Qeff", None, QtGui.QApplication.UnicodeUTF8))
        self.flatnessQeff_lineEdit.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Quality factor of the filter to emulate Qeff", None, QtGui.QApplication.UnicodeUTF8))
        self.flatnessQeff_lineEdit.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Quality factor of the filter to emulate Qeff", None, QtGui.QApplication.UnicodeUTF8))
        self.flatnessQeff_lineEdit.setText(QtGui.QApplication.translate("MatrixEditDlg", "Inf", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setItemText(self.edit_toolBox.indexOf(self.flatness_page), QtGui.QApplication.translate("MatrixEditDlg", "Prescribed flatness", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setItemToolTip(self.edit_toolBox.indexOf(self.flatness_page), QtGui.QApplication.translate("MatrixEditDlg", "Set a prescribed flatness in the ideal response of a \n"
"lossy filter synthesis by emulating the non-flat response\n"
"of a lossy filter of quality factor equal to Qeff.", None, QtGui.QApplication.UnicodeUTF8))
        self.optim_page.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Optimize the coupling matrix to achieve a prescribed uniform Q and [S] parameters that either\n"
"a) are as close as possible to those computed from the characteristic polynomials, or\n"
"b) comply an specificaton mask (without accounting for GD).\n"
"The non-zero coupling matrix entries to optimize and the sign of the real parts\n"
"are specified in the topology table below.", None, QtGui.QApplication.UnicodeUTF8))
        self.optim_page.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Optimize the coupling matrix to achieve a prescribed uniform Q and [S] parameters that either\n"
"a) are as close as possible to those computed from the characteristic polynomials, or\n"
"b) comply an specificaton mask (without accounting for GD).\n"
"The non-zero coupling matrix entries to optimize and the sign of the real parts\n"
"are specified in the topology table below.", None, QtGui.QApplication.UnicodeUTF8))
        self.maxIter_spinBox.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Maximum number of iterations (for SLSQP)\n"
"or maximum number of function evaluations\n"
"(for L-BFG-S or TNC algorithms).", None, QtGui.QApplication.UnicodeUTF8))
        self.maxIter_spinBox.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Maximum number of iterations (for SLSQP) or maximum number of function evaluations (for L-BFG-S or TNC algorithms).", None, QtGui.QApplication.UnicodeUTF8))
        self.maxIter_spinBox.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Maximum number of iterations (for SLSQP)\n"
"or maximum number of function evaluations\n"
"(for L-BFG-S or TNC algorithms).", None, QtGui.QApplication.UnicodeUTF8))
        self.label_19.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Maximum number of iterations (for SLSQP)\n"
"or maximum number of function evaluations\n"
"(for L-BFG-S or TNC algorithms).", None, QtGui.QApplication.UnicodeUTF8))
        self.label_19.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Maximum number of iterations (for SLSQP)\\nor maximum number of function evaluations (for L-BFG-S or TNC algorithms).", None, QtGui.QApplication.UnicodeUTF8))
        self.label_19.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Maximum number of iterations (for SLSQP)\n"
"or maximum number of function evaluations\n"
"(for L-BFG-S or TNC algorithms).", None, QtGui.QApplication.UnicodeUTF8))
        self.label_19.setText(QtGui.QApplication.translate("MatrixEditDlg", "Max iter", None, QtGui.QApplication.UnicodeUTF8))
        self.label_10.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Number of samples of [S] to compare with reference.\n"
"Half the samples go to the pass-band and the other half to the \n"
"rejection band, between minimum and maximum frequencies.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_10.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Number of samples of [S] to compare with reference.Half the samples go to the pass-band and the other half to the \\nrejection band, between minimum and maximum frequencies.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_10.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Number of samples of [S] to compare with reference.\n"
"Half the samples go to the pass-band and the other half to the \n"
"rejection band, between minimum and maximum frequencies.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_10.setText(QtGui.QApplication.translate("MatrixEditDlg", "N samples", None, QtGui.QApplication.UnicodeUTF8))
        self.Nsamples_spinBox.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Number of samples of [S] to compare with reference.\n"
"Half the samples go to the pass-band and the other half to the \n"
"rejection band, between minimum and maximum frequencies.\n"
"", None, QtGui.QApplication.UnicodeUTF8))
        self.Nsamples_spinBox.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Number of samples of [S] to compare with reference. Half the samples go to the pass-band and the other half to the  rejection band, between minimum and maximum frequencies.", None, QtGui.QApplication.UnicodeUTF8))
        self.Nsamples_spinBox.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Number of samples of [S] to compare with reference.\n"
"Half the samples go to the pass-band and the other half to the \n"
"rejection band, between minimum and maximum frequencies.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_15.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Prescribed uniform Q for the resonators.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_15.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Prescribed uniform Q for the resonators.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_15.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Prescribed uniform Q for the resonators.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_15.setText(QtGui.QApplication.translate("MatrixEditDlg", "Q", None, QtGui.QApplication.UnicodeUTF8))
        self.Q_doubleSpinBox.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Prescribed uniform Q for the resonators.", None, QtGui.QApplication.UnicodeUTF8))
        self.Q_doubleSpinBox.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Prescribed uniform Q for the resonators.", None, QtGui.QApplication.UnicodeUTF8))
        self.Q_doubleSpinBox.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Prescribed uniform Q for the resonators.", None, QtGui.QApplication.UnicodeUTF8))
        self.algor_comboBox.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:\'Ubuntu\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p align=\"center\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" text-decoration: underline;\">Constrained nonlinear algorithms based on Newton method.</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">L-BFGS-B:</span> Limited memory variation of the Broyden–Fletcher–Goldfarb–Shanno (BFGS) update to approximate the inverse Hessian matrix. The BFGS is one of the most popular quasi-Newton optimization methods. L-BFGS is a limited-memory version of BFGS that is particularly suited to problems with very large numbers of variables. </p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">TNC:</span> Bound-constrained truncated newton algorithm using gradient information. Truncated-Newton methods are a family of methods suitable for solving large nonlinear optimization problems.  At each iteration, the current estimate of the solution is updated (i.e., a step is computed) by approximately solving the Newton equations using an iterative algorithm.  This results in a doubly iterative method: an outer iteration for the nonlinear optimization problem, and an inner iteration for the Newton equations. The inner iteration is typically stopped or truncated before the solution to the Newton equations is obtained.</p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">SLSQP:</span> Sequential Least SQuares Programming uses the Han–Powell quasi–Newton method with a BFGS update of the B–matrix and an L1–test function in the step–length algorithm. Sequential quadratic programming (SQP) is one of the most popular and robust algorithms for nonlinear continuous optimization.  The method is based on solving a series of subproblems designed to minimize a quadratic model of the objective subject to a linearization of the constraints. If the problem is unconstrained, then the method reduces to Newton\'s method for finding a point where the gradient of the objective vanishes.</p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
        self.algor_comboBox.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:\'Ubuntu\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" text-decoration: underline;\">Constrained nonlinear algorithms based on Newton method.</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">L-BFGS-B:</span> Limited memory variation of the Broyden–Fletcher–Goldfarb–Shanno (BFGS) update to approximate the inverse Hessian matrix. The BFGS is one of the most popular quasi-Newton optimization methods. L-BFGS is a limited-memory version of BFGS that is particularly suited to problems with very large numbers of variables. </p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">TNC:</span> Bound-constrained truncated newton algorithm using gradient information. Truncated-Newton methods are a family of methods suitable for solving large nonlinear optimization problems.  At each iteration, the current estimate of the solution is updated (i.e., a step is computed) by approximately solving the Newton equations using an iterative algorithm.  This results in a doubly iterative method: an outer iteration for the nonlinear optimization problem, and an inner iteration for the Newton equations. The inner iteration is typically stopped or truncated before the solution to the Newton equations is obtained.</p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">SLSQP:</span> Sequential Least SQuares Programming uses the Han–Powell quasi–Newton method with a BFGS update of the B–matrix and an L1–test function in the step–length algorithm. Sequential quadratic programming (SQP) is one of the most popular and robust algorithms for nonlinear continuous optimization.  The method is based on solving a series of subproblems designed to minimize a quadratic model of the objective subject to a linearization of the constraints. If the problem is unconstrained, then the method reduces to Newton\'s method for finding a point where the gradient of the objective vanishes.</p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
        self.algor_comboBox.setItemText(0, QtGui.QApplication.translate("MatrixEditDlg", "L-BFG-S", None, QtGui.QApplication.UnicodeUTF8))
        self.algor_comboBox.setItemText(1, QtGui.QApplication.translate("MatrixEditDlg", "TNC", None, QtGui.QApplication.UnicodeUTF8))
        self.algor_comboBox.setItemText(2, QtGui.QApplication.translate("MatrixEditDlg", "SLSQP", None, QtGui.QApplication.UnicodeUTF8))
        self.label_18.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:\'Ubuntu\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" text-decoration: underline;\">Constrained nonlinear algorithms based on Newton method.</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">L-BFGS-B:</span> Limited memory variation of the Broyden–Fletcher–Goldfarb–Shanno (BFGS) update to approximate the inverse Hessian matrix. The BFGS is one of the most popular quasi-Newton optimization methods. L-BFGS is a limited-memory version of BFGS that is particularly suited to problems with very large numbers of variables. </p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">TNC:</span> Bound-constrained truncated newton algorithm using gradient information. </p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Truncated-Newton methods are a family of methods suitable for solving large nonlinear</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">optimization problems.  At each iteration, the current estimate of the solution is updated</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">(i.e., a step is computed) by approximately solving the Newton equations using an iterative</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">algorithm.  This results in a doubly iterative method: an outer iteration for the nonlinear</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">optimization problem, and an inner iteration for the Newton equations. The inner iteration</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">is typically stopped or truncated before the solution to the Newton equations is obtained.</p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">SLSQP:</span> Sequential Least SQuares Programming uses the Han–Powell quasi–Newton method with a BFGS update of the B–matrix and an L1–test function in the step–length algorithm. The optimizer uses a slightly modified version of Lawson and Hanson’s NNLS nonlinear least-squares solver. Sequential quadratic programming (SQP) is one of the most popular and robust algorithms for nonlinear continuous optimization.  The method is based on solving a series of subproblems designed to minimize a quadratic model of the objective subject to a linearization of the constraints. If the problem is unconstrained, then the method reduces to Newton\'s method for finding a point where the gradient of the objective vanishes. If the problem has only equality constraints, then the method is</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">equivalent to applying Newton\'s method to the first-order optimality conditions, or</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Karush–Kuhn–Tucker conditions, of the problem. </p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
        self.label_18.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:\'Ubuntu\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" text-decoration: underline;\">Constrained nonlinear algorithms based on Newton method.</span></p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">L-BFGS-B:</span> Limited memory variation of the Broyden–Fletcher–Goldfarb–Shanno (BFGS) update to approximate the inverse Hessian matrix. The BFGS is one of the most popular quasi-Newton optimization methods. L-BFGS is a limited-memory version of BFGS that is particularly suited to problems with very large numbers of variables. </p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">TNC:</span> Bound-constrained truncated newton algorithm using gradient information. </p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Truncated-Newton methods are a family of methods suitable for solving large nonlinear</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">optimization problems.  At each iteration, the current estimate of the solution is updated</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">(i.e., a step is computed) by approximately solving the Newton equations using an iterative</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">algorithm.  This results in a doubly iterative method: an outer iteration for the nonlinear</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">optimization problem, and an inner iteration for the Newton equations. The inner iteration</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">is typically stopped or truncated before the solution to the Newton equations is obtained.</p>\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">SLSQP:</span> Sequential Least SQuares Programming uses the Han–Powell quasi–Newton method with a BFGS update of the B–matrix and an L1–test function in the step–length algorithm. The optimizer uses a slightly modified version of Lawson and Hanson’s NNLS nonlinear least-squares solver. Sequential quadratic programming (SQP) is one of the most popular and robust algorithms for nonlinear continuous optimization.  The method is based on solving a series of subproblems designed to minimize a quadratic model of the objective subject to a linearization of the constraints. If the problem is unconstrained, then the method reduces to Newton\'s method for finding a point where the gradient of the objective vanishes. If the problem has only equality constraints, then the method is</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">equivalent to applying Newton\'s method to the first-order optimality conditions, or</p>\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Karush–Kuhn–Tucker conditions, of the problem. </p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
        self.label_18.setText(QtGui.QApplication.translate("MatrixEditDlg", "Algorithm", None, QtGui.QApplication.UnicodeUTF8))
        self.label_11.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_11.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\\nthe cost function that compares the [S] computed from the\\ncoupling matrix with the [S] from the optimization reference.\\nGD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_11.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_11.setText(QtGui.QApplication.translate("MatrixEditDlg", "Weigths", None, QtGui.QApplication.UnicodeUTF8))
        self.wS11_doubleSpinBox.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.wS11_doubleSpinBox.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\\nthe cost function that compares the [S] computed from the\\ncoupling matrix with the [S] from the optimization reference.\\nGD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.wS11_doubleSpinBox.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_12.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_12.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\\nthe cost function that compares the [S] computed from the\\ncoupling matrix with the [S] from the optimization reference.\\nGD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_12.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_12.setText(QtGui.QApplication.translate("MatrixEditDlg", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:\'Ubuntu\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">S<span style=\" vertical-align:sub;\">11</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
        self.wS22_doubleSpinBox.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.wS22_doubleSpinBox.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\\nthe cost function that compares the [S] computed from the\\ncoupling matrix with the [S] from the optimization reference.\\nGD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.wS22_doubleSpinBox.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_13.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_13.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\\nthe cost function that compares the [S] computed from the\\ncoupling matrix with the [S] from the optimization reference.\\nGD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_13.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_13.setText(QtGui.QApplication.translate("MatrixEditDlg", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:\'Ubuntu\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">S<span style=\" vertical-align:sub;\">22</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
        self.wS21_doubleSpinBox.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.wS21_doubleSpinBox.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\\nthe cost function that compares the [S] computed from the\\ncoupling matrix with the [S] from the optimization reference.\\nGD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.wS21_doubleSpinBox.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_16.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_16.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\\nthe cost function that compares the [S] computed from the\\ncoupling matrix with the [S] from the optimization reference.\\nGD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_16.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_16.setText(QtGui.QApplication.translate("MatrixEditDlg", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:\'Ubuntu\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">S<span style=\" vertical-align:sub;\">21</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
        self.wGD_doubleSpinBox.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.wGD_doubleSpinBox.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\\nthe cost function that compares the [S] computed from the\\ncoupling matrix with the [S] from the optimization reference.\\nGD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.wGD_doubleSpinBox.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_17.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_17.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\\nthe cost function that compares the [S] computed from the\\ncoupling matrix with the [S] from the optimization reference.\\nGD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_17.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Weights for S11, S22, S21 and group delay when computing\n"
"the cost function that compares the [S] computed from the\n"
"coupling matrix with the [S] from the optimization reference.\n"
"GD is not used when the reference is a specification mask.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_17.setText(QtGui.QApplication.translate("MatrixEditDlg", "GD", None, QtGui.QApplication.UnicodeUTF8))
        self.label_14.setText(QtGui.QApplication.translate("MatrixEditDlg", "Reference", None, QtGui.QApplication.UnicodeUTF8))
        self.optim_comboBox.setItemText(0, QtGui.QApplication.translate("MatrixEditDlg", "Characteristic Polynomials", None, QtGui.QApplication.UnicodeUTF8))
        self.optim_comboBox.setItemText(1, QtGui.QApplication.translate("MatrixEditDlg", "Specification mask", None, QtGui.QApplication.UnicodeUTF8))
        self.frame_3.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Dynamic range to compare with [S] from the characteristic polynomials.\n"
"Values of [S] lower than a minimum set by the dynamic range are not compared.", None, QtGui.QApplication.UnicodeUTF8))
        self.frame_3.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Number of samples and dynamic range to compare with [S] from the characteristic polynomials.\n"
"Half the samples go to the pass-band and the other half to\n"
"the rejection band, bewteen minimum and maximum frequencies.\n"
"Values of [S] lower than a minimum set by the dynamic rane are not compared.", None, QtGui.QApplication.UnicodeUTF8))
        self.label_23.setText(QtGui.QApplication.translate("MatrixEditDlg", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:\'Ubuntu\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:\'DejaVu Sans\'; font-size:9pt;\">S</span><span style=\" font-family:\'DejaVu Sans\'; font-size:9pt; vertical-align:sub;\">21</span><span style=\" font-family:\'DejaVu Sans\'; font-size:9pt;\"> DR</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
        self.label_22.setText(QtGui.QApplication.translate("MatrixEditDlg", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"</style></head><body style=\" font-family:\'Ubuntu\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:\'DejaVu Sans\'; font-size:9pt;\">S</span><span style=\" font-family:\'DejaVu Sans\'; font-size:9pt; vertical-align:sub;\">11</span><span style=\" font-family:\'DejaVu Sans\'; font-size:9pt;\"> DR</span></p></body></html>", None, QtGui.QApplication.UnicodeUTF8))
        self.S21DR_doubleSpinBox.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Dynamic range to compare with [S] from the characteristic polynomials.\n"
"Values of [S] lower than a minimum set by the dynamic range are not compared.", None, QtGui.QApplication.UnicodeUTF8))
        self.topology_label.setText(QtGui.QApplication.translate("MatrixEditDlg", "Matrix topology", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setItemText(self.edit_toolBox.indexOf(self.optim_page), QtGui.QApplication.translate("MatrixEditDlg", "Optimization", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_toolBox.setItemToolTip(self.edit_toolBox.indexOf(self.optim_page), QtGui.QApplication.translate("MatrixEditDlg", "Optimize the coupling matrix to achieve a prescribed uniform Q and [S] parameters that either\n"
"a) are as close as possible to those computed from the characteristic polynomials, or\n"
"b) comply an specificaton mask (without accounting for GD).\n"
"The non-zero coupling matrix entries to optimize and the sign of the real parts\n"
"are specified in the topology table below.", None, QtGui.QApplication.UnicodeUTF8))
        self.apply_pushButton.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Apply selected action to the matrix.", None, QtGui.QApplication.UnicodeUTF8))
        self.apply_pushButton.setText(QtGui.QApplication.translate("MatrixEditDlg", "Apply", None, QtGui.QApplication.UnicodeUTF8))
        self.undo_pushButton.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Undo the last action in the list of edit actions.", None, QtGui.QApplication.UnicodeUTF8))
        self.undo_pushButton.setText(QtGui.QApplication.translate("MatrixEditDlg", "Undo", None, QtGui.QApplication.UnicodeUTF8))
        self.clear_pushButton.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "Clear undo history.", None, QtGui.QApplication.UnicodeUTF8))
        self.clear_pushButton.setStatusTip(QtGui.QApplication.translate("MatrixEditDlg", "Clear undo history.", None, QtGui.QApplication.UnicodeUTF8))
        self.clear_pushButton.setWhatsThis(QtGui.QApplication.translate("MatrixEditDlg", "Clear undo history.", None, QtGui.QApplication.UnicodeUTF8))
        self.clear_pushButton.setText(QtGui.QApplication.translate("MatrixEditDlg", "Clear", None, QtGui.QApplication.UnicodeUTF8))
        self.close_pushButton.setText(QtGui.QApplication.translate("MatrixEditDlg", "Close", None, QtGui.QApplication.UnicodeUTF8))
        self.label_9.setText(QtGui.QApplication.translate("MatrixEditDlg", "List of edit actions in current matrix", None, QtGui.QApplication.UnicodeUTF8))
        self.edit_listWidget.setToolTip(QtGui.QApplication.translate("MatrixEditDlg", "List of matrix edit actions. The \"Undo\" button undoes the last action in the list. \n"
"Double-click an edit action to revert the matrix to the state after that action.", None, QtGui.QApplication.UnicodeUTF8))


if __name__ == "__main__":
    import sys
    app = QtGui.QApplication(sys.argv)
    MatrixEditDlg = QtGui.QDialog()
    ui = Ui_MatrixEditDlg()
    ui.setupUi(MatrixEditDlg)
    MatrixEditDlg.show()
    sys.exit(app.exec_())

