Esempio n. 1
0
    def __init__(self, layout):
        self.layout = layout

        self.p1 = glo_var.MyPW()

        # self.viewbox = self.p1.getPlotItem().getViewBox()
        # self.viewbox.setBackgroundColor('w')
        # self.item = self.p1.getPlotItem()

        # self.win = win
        self.p1 = pg.PlotWidget(title='\u03bb')
        self.viewbox = self.p1.getViewBox()
        self.viewbox.setBackgroundColor('w')

        self.viewbox.setLimits(xMin=-0.02, yMin=-0.02, xMax=1.02, yMax=1.02)
        self.viewbox.setRange(xRange=[-0.02, 1.02],
                              yRange=[-0.02, 1.02],
                              padding=0)
        self.sp = myscat(size=10,
                         pen=pg.mkPen(None),
                         brush=pg.mkBrush(100, 200, 200),
                         symbolPen='w')
        self.lastClicked = []
        # self.x, self.y = zip(*sorted(glo_var.lambdas.values()))
        # self.lambs = np.array([self.x,self.y])
        # self.spots = [{'pos':self.lambs[:,i], 'data': 1} for i in range(glo_var.lambdas_degree)]
        # self.sp.addPoints(self.spots)
        # self.p1.addItem(self.sp)
        self.viewbox.menu = None

        self.layout.addWidget(self.p1, 1, 0)

        self.update()
Esempio n. 2
0
    def __init__(self, dphase):
        self.purple = pg.mkPen(QtGui.QColor(20, 20, 140, 255))
        self.red = pg.mkPen(QtGui.QColor(180, 0, 0, 255))
        self.blue = pg.mkPen(QtGui.QColor(20, 20, 140, 255))
        self.roicolor = QtGui.QPen()
        self.roicolor.setBrush(QtGui.QColor(20, 20, 140, 255))

        self.dphase = dphase
        self.p5main = glo_var.MyPW(x="\u03b1",
                                   y1="\u03b2",
                                   set_range=self.set_range)
        self.p5 = self.p5main.plotItem

        self.viewbox = self.p5main.getPlotItem().getViewBox()
        self.viewbox.setBackgroundColor('w')
        self.p5main.coordinate_label = QtGui.QLabel()
        self.frame = glo_var.setframe(
            self.p5main,
            width=1,
            coordinate_label=self.p5main.coordinate_label)

        self.dphase.addWidget(self.frame)
        self.viewbox.setLimits(xMin=0, yMin=0, xMax=1, yMax=1)
        self.set_range()

        self.p5main.plotItem.addLegend = glo_var.myaddLegend
        self.p5main.addLegend(self.p5main.plotItem, offset=(0, 0.0000001))
        self.leg = self.p5main.plotItem.legend
        self.p5main.setLabel('bottom', "\u03b1", **glo_var.labelstyle)
        self.p5main.setLabel('left', "\u03b2", **glo_var.labelstyle)
        self.initiate()
Esempio n. 3
0
    def __init__(self, drho):

        self.drho = drho
        self.p2main = glo_var.MyPW(x="x",
                                   y1="\u2374",
                                   set_range=self.set_range)
        self.viewbox = self.p2main.getPlotItem().getViewBox()
        self.viewbox.setBackgroundColor('w')
        self.p2 = self.p2main.plotItem
        self.p2main.coordinate_label = QtGui.QLabel()
        self.frame = glo_var.setframe(
            self.p2main,
            width=1,
            coordinate_label=self.p2main.coordinate_label)
        self.drho.addWidget(self.frame)
        self.p2.addLegend = glo_var.myaddLegend
        self.p2.addLegend(self.p2, offset=(0, 0.0000001))
        self.initiating = 1
        self.p2main.setLabel('left', "\u2374", **glo_var.labelstyle)
        self.p2main.setLabel('bottom', "x", **glo_var.labelstyle)
        self.set_range()
        self.rpen = pg.mkPen('r',
                             width=glo_var.line_width,
                             style=QtCore.Qt.DashLine)
        self.lpen = pg.mkPen(color=(16, 52, 166),
                             width=glo_var.line_width,
                             style=QtCore.Qt.DashLine)
        self.realpen = pg.mkPen('k', width=2)
        self.update()
        self.legend()
Esempio n. 4
0
    def __init__(self, dlamb):

        self.dlamb = dlamb
        self.p1main = glo_var.MyPW(x='x',
                                   y1='\u03bb',
                                   set_range=self.set_range)
        self.p1 = self.p1main.plotItem
        self.p1main.setLabel('bottom', "x", **glo_var.labelstyle)
        self.p1main.setLabel('left', "\u03bb", **glo_var.labelstyle)
        self.p1main.set_range = self.set_range

        # I didnt use it. Think about it.
        self.font = QtGui.QFont()
        self.font.setBold(True)
        self.viewbox = self.p1main.getViewBox()
        self.viewbox.setBackgroundColor('w')
        self.viewbox.setLimits(xMin=-0.03, yMin=-0.03, xMax=1.03)
        self.lambdas_xs, self.lambdas_ys = zip(*sorted(glo_var.lambdas))
        self.lambda_min = min(self.lambdas_ys)
        self.lambda_max = max(self.lambdas_ys)
        self.set_range()
        self.sp = myscat(size=7,
                         pen=pg.mkPen(None),
                         brush=pg.mkBrush(100, 200, 200),
                         symbolPen='w')
        self.lastClicked = []
        self.p1main.coordinate_label = QtGui.QLabel()
        self.frame = glo_var.setframe(
            self.p1main,
            width=1,
            coordinate_label=self.p1main.coordinate_label)
        self.dlamb.addWidget(self.frame)
        self.update()
Esempio n. 5
0
    def __init__(self, dbeta, rh):

        self.dbeta = dbeta
        self.p4main = glo_var.MyPW(x="\u03b2",
                                   y1="J",
                                   y2="\u2329\u03c1\u232a",
                                   set_range=self.set_range)
        # self.p4main._rescale = self.set_range
        self.p4 = self.p4main.plotItem
        self.viewbox = self.p4.getViewBox()
        # self.viewbox.setBackgroundColor('w')
        self.item = self.p4

        self.p4main.tempplotitem = pg.PlotItem()
        self.p4_2 = self.p4main.tempplotitem.vb

        self.plotitemtoexport = self.p4.scene()

        self.p4.setLabel('left', "J", **glo_var.labelstyle)

        self.p4.setLabel('bottom', "\u03b2", **glo_var.labelstyle)

        self.p4.setLabel('right', "\u2329\u03c1\u232a", **glo_var.labelstyle)
        # self.p4main.set_range = self.set_range

        self.rh = rh
        self.rho_dash = pg.mkPen(color=(16, 52, 166),
                                 width=glo_var.line_width,
                                 style=QtCore.Qt.DashLine)
        self.dash = pg.mkPen('r',
                             width=glo_var.line_width,
                             style=QtCore.Qt.DashLine)
        self.jpen = pg.mkPen('k', width=glo_var.line_width)
        self.beta_pen = pg.mkPen('k', width=glo_var.line_width)

        self.p4.addLegend = glo_var.myaddLegend
        self.p4.addLegend(self.p4, offset=(20, 20))

        self.p4.showAxis('right')
        self.p4.scene().addItem(self.p4_2)
        self.p4.getAxis('right').linkToView(self.p4_2)
        self.p4_2.setXLink(self.p4)
        self.p4_2.setBackgroundColor('w')

        self.p4main.coordinate_label = QtGui.QLabel()
        self.frame = glo_var.setframe(
            self.p4main,
            width=1,
            coordinate_label=self.p4main.coordinate_label)
        self.dbeta.addWidget(self.frame)

        self.viewbox.setLimits(xMin=0, yMin=0, xMax=1, yMax=1)
        self.p4_2.setLimits(xMin=0, yMin=0, xMax=1, yMax=1)

        self.p4.vb.sigResized.connect(self.updateview)

        self.update()
        self.legend()
Esempio n. 6
0
	def __init__(self, dalpha, rh):

		self.dalpha = dalpha
		self.p3main = glo_var.MyPW(x="\u03b1",y1="J",y2= '\u2039\u03c1\u203a', set_range = self.set_range, num = 3, set_range_byspbox = self.set_range_byspbox)
		# self.p3main._rescale = self.set_range
		self.p3 = self.p3main.plotItem

		self.rh=rh

		self.p3.setLabel('bottom',"\u03b1",**glo_var.labelstyle)
		self.p3.setLabel('left',"J",**glo_var.labelstyle)
		self.p3.setLabel('right','<span style="font-size: 32pt;">\u2039</span></div>\u03c1<span style="font-size: 32pt;">\u203a</span></div>' ,**glo_var.labelstyle)

		self.p3.addLegend = glo_var.myaddLegend
		self.p3.addLegend(self.p3, offset = (7,20))

		self.plotitemtoexport = self.p3.scene()
# to use it as coordinate label
		self.p3main.tempplotitem = pg.PlotItem()
		# self.p3main.set_range = self.set_range
		self.p3_2 = self.p3main.tempplotitem.vb
		self.p3.showAxis('right')
		self.p3.scene().addItem(self.p3_2)
		self.p3.getAxis('right').linkToView(self.p3_2)
		self.p3_2.setXLink(self.p3)
		self.p3_2.setBackgroundColor('w')

		self.rho_dash = pg.mkPen(color=(16,52,166),width=glo_var.line_width,style=QtCore.Qt.DashLine)
		self.dash = pg.mkPen('r',width=glo_var.line_width ,style=QtCore.Qt.DashLine)
		self.jpen = pg.mkPen('k',width=glo_var.line_width)
		self.alpha_pen = pg.mkPen('k',width = glo_var.line_width)
		self.p3main.coordinate_label = QtGui.QLabel()
		self.frame = glo_var.setframe(self.p3main, width = 1, coordinate_label = self.p3main.coordinate_label)

		self.dalpha.addWidget(self.frame)


		self.p3.vb.setLimits(xMin = 0, yMin = 0, xMax = 1, yMax = 1)
		self.p3_2.setLimits(xMin = 0, yMin = 0, xMax = 1, yMax = 1)

		self.p3.vb.sigResized.connect(self.updateview)

		self.update()

# set range(initially)
		self.uplim1 = min(self.jpost * 1.3, 1)
		self.lolim1 = 0
		self.uplim2 = min(1, max(max(self.rho_avg_pre)*1.4,max(self.rho_avg_post)*1.4))
		self.lolim2 = max(0, min(min(self.rho_avg_pre)*0.6,min(self.rho_avg_post)*0.6))


		self.range=[[0,3*self.trans_point],[self.lolim1,self.uplim1],[self.lolim2,self.uplim2]]
		self.p3main.receive_range(self.range)
		self.set_range()

		self.legend()
Esempio n. 7
0
    def __init__(self, dlamb):

        self.dlamb = dlamb

        self.p1main = glo_var.MyPW(x='x',
                                   y1='\u03bb',
                                   set_range=self.set_range)
        # self.p1main._rescale = self.set_range
        self.p1 = self.p1main.plotItem

        # self.viewbox = self.p1main.getPlotItem().getViewBox()
        # self.viewbox.setBackgroundColor('w')
        # self.item = self.p1main.getPlotItem()

        # self.win = win
        # self.p1main = pg.PlotWidget(title = '\u03bb')

        self.p1main.setLabel('bottom', "x", **glo_var.labelstyle)
        self.p1main.setLabel('left', "\u03bb", **glo_var.labelstyle)
        self.p1main.set_range = self.set_range

        # I didnt use it. Think about it.
        self.font = QtGui.QFont()
        self.font.setBold(True)

        self.viewbox = self.p1main.getViewBox()
        self.viewbox.setBackgroundColor('w')

        self.viewbox.setLimits(xMin=-0.03, yMin=-0.03, xMax=1.03)

        self.lambdas_xs, self.lambdas_ys = zip(*sorted(glo_var.lambdas))
        self.lambda_min = min(self.lambdas_ys)
        self.lambda_max = max(self.lambdas_ys)

        self.set_range()
        self.sp = myscat(size=7,
                         pen=pg.mkPen(None),
                         brush=pg.mkBrush(100, 200, 200),
                         symbolPen='w')
        self.lastClicked = []
        # self.x, self.y = zip(*sorted(glo_var.lambdas.values()))
        # self.lambs = np.array([self.x,self.y])
        # self.spots = [{'pos':self.lambs[:,i], 'data': 1} for i in range(glo_var.lambdas_degree)]
        # self.sp.addPoints(self.spots)
        # self.p1main.addItem(self.sp)
        # self.viewbox.menu = None

        self.p1main.coordinate_label = QtGui.QLabel()
        self.frame = glo_var.setframe(
            self.p1main,
            width=1,
            coordinate_label=self.p1main.coordinate_label)

        self.dlamb.addWidget(self.frame)
        self.update()
Esempio n. 8
0
    def __init__(self, dalpha, rh):

        self.dalpha = dalpha
        self.p3main = glo_var.MyPW(x="\u03b1",
                                   y1="J",
                                   y2="\u27e8\u2374\u27e9",
                                   set_range=self.set_range)
        # self.p3main._rescale = self.set_range
        self.p3 = self.p3main.plotItem

        self.rh = rh

        self.na = "ha"

        self.p3.setLabel('bottom', "\u03b1", **glo_var.labelstyle)
        self.p3.setLabel('left', "J", **glo_var.labelstyle)
        self.p3.setLabel('right', "\u27e8\u2374\u27e9", **glo_var.labelstyle)

        self.p3.addLegend = glo_var.myaddLegend
        self.p3.addLegend(self.p3, offset=(20, 20))

        # to use it as coordinate label
        self.p3main.tempplotitem = pg.PlotItem()
        # self.p3main.set_range = self.set_range
        self.p3_2 = self.p3main.tempplotitem.vb
        self.p3.showAxis('right')
        self.p3.scene().addItem(self.p3_2)
        self.p3.getAxis('right').linkToView(self.p3_2)
        self.p3_2.setXLink(self.p3)
        self.p3_2.setBackgroundColor('w')

        self.rho_dash = pg.mkPen(color=(16, 52, 166),
                                 width=glo_var.line_width,
                                 style=QtCore.Qt.DashLine)
        self.dash = pg.mkPen('r',
                             width=glo_var.line_width,
                             style=QtCore.Qt.DashLine)
        self.jpen = pg.mkPen('k', width=glo_var.line_width)
        self.alpha_pen = pg.mkPen('k', width=glo_var.line_width)
        self.p3main.coordinate_label = QtGui.QLabel()
        self.frame = glo_var.setframe(
            self.p3main,
            width=1,
            coordinate_label=self.p3main.coordinate_label)

        self.dalpha.addWidget(self.frame)

        self.p3.vb.setLimits(xMin=0, yMin=0, xMax=1, yMax=1)
        self.p3_2.setLimits(xMin=0, yMin=0, xMax=1, yMax=1)

        self.p3.vb.sigResized.connect(self.updateview)

        self.update()
        self.legend()
Esempio n. 9
0
File: rho.py Progetto: wsonv/Wonjun
    def __init__(self, layout):

        self.layout = layout
        self.p2 = glo_var.MyPW()
        self.viewbox = self.p2.getPlotItem().getViewBox()
        self.viewbox.setBackgroundColor('w')
        self.item = self.p2.getPlotItem()
        self.layout.addWidget(self.p2, 0, 0)
        # self.viewbox=self.p2.getViewBox()
        self.viewbox.setLimits(xMin=-0.01, yMin=-0.01, xMax=1.01, yMax=1.01)
        self.viewbox.setRange(xRange=[0, 1], yRange=[0, 1 / glo_var.l])
        self.viewbox.menu = None
        self.update()
Esempio n. 10
0
    def __init__(self, layout):
        self.layout = layout
        self.p5 = glo_var.MyPW()
        self.viewbox = self.p5.getPlotItem().getViewBox()
        self.viewbox.setBackgroundColor('w')
        self.item = self.p5.getPlotItem()
        self.layout.addWidget(self.p5, 1, 2)
        self.viewbox.setLimits(xMin=-0.01, yMin=-0.01, xMax=1.01, yMax=1.01)
        self.viewbox.setRange(xRange=[0, 2 * glo_var.alpha_star],
                              yRange=[0, 2 * glo_var.beta_star],
                              padding=0)
        self.viewbox.menu = None

        # self.scat = pg.ScatterPlotItem(size = 1, pen = pg.mkPen('r'), brush =pg.mkBrush(255,255,255,120))
        self.initiate()
Esempio n. 11
0
    def __init__(self, dlamb):
        self.dlamb = dlamb
        self.p1main = glo_var.MyPW(x='x',
                                   y1='\u03bb',
                                   set_range=self.set_range,
                                   num=1,
                                   set_range_byspbox=self.set_range_byspbox)
        self.p1 = self.p1main.plotItem
        self.p1main.setLabel('bottom', "x", **glo_var.labelstyle)
        self.p1main.setLabel('left', "\u03bb", **glo_var.labelstyle)
        self.p1main.set_range = self.set_range

        # to use in clear points

        # I didnt use it. Think about it.
        self.font = QtGui.QFont()
        self.font.setBold(True)
        self.viewbox = self.p1main.getViewBox()
        self.viewbox.setBackgroundColor('w')
        # self.viewbox.setLimits(xMin = -0.03, yMin = -0.03, xMax = 1.03)
        self.lambdas_xs, self.lambdas_ys = zip(*sorted(glo_var.lambdas))
        self.lambda_min = min(self.lambdas_ys)
        self.lambda_max = max(self.lambdas_ys)
        self.sp = myscat(size=7,
                         pen=pg.mkPen(None),
                         brush=pg.mkBrush(100, 200, 200),
                         symbolPen='w')
        self.lastClicked = []
        self.p1main.coordinate_label = QtGui.QLabel()
        self.frame = glo_var.setframe(
            self.p1main,
            width=1,
            coordinate_label=self.p1main.coordinate_label)
        self.dlamb.addWidget(self.frame)

        self.range = [[0, self.lambda_max], [0, 1.2 * self.lambda_max]]
        self.p1main.receive_range(self.range)
        self.set_range()

        # self.p1main.scene().mouseMoveEvent = self.mevent
        # self.proxy = pg.SignalProxy(self.p1main.scene().sigMouseMoved, rateLimit=60, slot=self.mouseMoveEvent)
        # print(dir(self.p1main.scene()), "p1")
        self.update()
Esempio n. 12
0
    def __init__(self, dphase):
        self.purple = pg.mkPen(QtGui.QColor(20, 20, 140, 255))
        self.red = pg.mkPen(QtGui.QColor(180, 0, 0, 255))
        self.blue = pg.mkPen(QtGui.QColor(20, 20, 140, 255))
        self.roicolor = QtGui.QPen()
        self.roicolor.setBrush(QtGui.QColor(20, 20, 140, 255))

        # self.roicolor = QtGui.QPen.brush(QtGui.QColor(20,20,140,255))
        self.dphase = dphase
        self.p5main = glo_var.MyPW(x="\u03b1",
                                   y1="\u03b2",
                                   set_range=self.set_range)
        # self.p5main._rescale=self.set_range
        self.p5 = self.p5main.plotItem
        # self.p5main=pg.PlotWidget()

        # self.point = myscat([glo_var.alpha_star], [glo_var.beta_star])
        # self.p5main.plot([glo_var.alpha],[glo_var.beta],pen='r', symbol='o')

        self.viewbox = self.p5main.getPlotItem().getViewBox()
        self.viewbox.setBackgroundColor('w')
        # self.p5main.set_range = self.set_range
        self.p5main.coordinate_label = QtGui.QLabel()
        self.frame = glo_var.setframe(
            self.p5main,
            width=1,
            coordinate_label=self.p5main.coordinate_label)

        self.dphase.addWidget(self.frame)
        self.viewbox.setLimits(xMin=0, yMin=0, xMax=1, yMax=1)
        self.set_range()
        # self.viewbox.setRange(xRange=[0,2*max(glo_var.alpha,glo_var.alpha_star)],yRange=[0,2*max(glo_var.beta, glo_var.beta_star)],padding=0)

        self.p5main.plotItem.addLegend = glo_var.myaddLegend
        self.p5main.addLegend(self.p5main.plotItem, offset=(0, 0.0000001))

        # self.p5main.plot(pen=None, name='LD  '+"\u2160")
        self.leg = self.p5main.plotItem.legend

        self.p5main.setLabel('bottom', "\u03b1", **glo_var.labelstyle)
        self.p5main.setLabel('left', "\u03b2", **glo_var.labelstyle)
        # self.scat = pg.ScatterPlotItem(size = 1, pen = pg.mkPen('r'), brush =pg.mkBrush(255,255,255,120))
        self.initiate()
Esempio n. 13
0
	def __init__(self, dalpha, rh):

		self.dalpha = dalpha
		self.p3main = glo_var.MyPW()
		# self.p3main._rescale = self.set_range
		self.p3 = self.p3main.plotItem

		self.rh=rh



		self.p3.setLabel('bottom',"\u03b1",**glo_var.labelstyle)
		self.p3.setLabel('left',"J",**glo_var.labelstyle)
		self.p3.setLabel('right',"\u03c1",**glo_var.labelstyle)

		self.p3.addLegend = glo_var.myaddLegend
		self.p3.addLegend(self.p3)

		self.p3_2 = pg.ViewBox()
		self.p3.showAxis('right')
		self.p3.scene().addItem(self.p3_2)
		self.p3.getAxis('right').linkToView(self.p3_2)
		self.p3_2.setXLink(self.p3)
		self.p3_2.setBackgroundColor('w')

		self.rho_dash = pg.mkPen(color=(16,52,166),width=glo_var.line_width,style=QtCore.Qt.DashLine)
		self.dash = pg.mkPen('r',width=glo_var.line_width ,style=QtCore.Qt.DashLine)
		self.jpen = pg.mkPen('k',width=glo_var.line_width)
		self.alpha_pen = pg.mkPen('k',width = glo_var.line_width)

		self.frame = glo_var.setframe(self.p3main, 1)
		self.dalpha.addWidget(self.frame)


		self.p3.vb.setLimits(xMin = 0, yMin = 0, xMax = 1, yMax = 1)
		self.p3_2.setLimits(xMin = 0, yMin = 0, xMax = 1, yMax = 1)

		self.p3.vb.sigResized.connect(self.updateview)

		self.update()
		self.legend()
Esempio n. 14
0
File: rho.py Progetto: wsonv/Wonjun
	def __init__(self,drho):

		self.drho = drho
		self.p2main = glo_var.MyPW()
		self.viewbox = self.p2main.getPlotItem().getViewBox()
		self.viewbox.setBackgroundColor('w')
		self.p2 = self.p2main.plotItem

		self.frame = glo_var.setframe(self.p2main, width = 1)
		self.drho.addWidget(self.frame)


		self.p2main.setLabel('left',"\u03c1",**glo_var.labelstyle)
		self.p2main.setLabel('bottom',"x",**glo_var.labelstyle)


		# self.viewbox=self.p2main.getViewBox()
		self.p2main._rescale=self.set_range
		self.rpen=pg.mkPen('r', width=glo_var.line_width, style=QtCore.Qt.DashLine)  
		self.lpen=pg.mkPen(color=(16,52,166), width=glo_var.line_width, style=QtCore.Qt.DashLine)
		self.realpen=pg.mkPen('k', width=2)
		self.update()
Esempio n. 15
0
	def __init__(self, layout,rh):



		self.layout = layout
		self.p4 = glo_var.MyPW()
		self.viewbox = self.p4.getPlotItem().getViewBox()
		self.viewbox.setBackgroundColor('w')
		self.item = self.p4.getPlotItem()
		self.layout.addWidget(self.p4,0,2)

# '\u03b2'
		self.rh=rh
		self.viewbox.setLimits(xMin = 0, yMin = 0, xMax = 1, yMax = 1)
		self.viewbox.menu = None
		# self.ax.set_facecolor()
		self.p4.addLegend()
		self.update()
		self.legend()
		self.p4_2 = self.p4.getViewBox()
		self.p4.showAxis('right')
		self.p4.scene().addItem(self.p4_2)
Esempio n. 16
0
    def __init__(self, layout, rh):

        self.layout = layout
        self.p3 = glo_var.MyPW()
        self.viewbox = self.p3.getPlotItem().getViewBox()
        self.viewbox.setBackgroundColor('w')
        self.item = self.p3.getPlotItem()
        self.layout.addWidget(self.p3, 0, 1)

        # '\u03B1'
        self.rh = rh
        self.viewbox.setLimits(xMin=0, yMin=0, xMax=1, yMax=1)
        self.viewbox.setRange(xRange=[0, 1], yRange=[0, 1], padding=0)
        self.viewbox.menu = None
        # self.viewbox.setLabel("\u03B1")
        # self.ax.set_facecolor()
        self.p3.addLegend()
        # self.checkbox()
        self.update()
        self.legend()
        self.p3_2 = self.p3.getViewBox()
        self.p3.showAxis('right')
        self.p3.scene().addItem(self.p3_2)