Exemplo n.º 1
0
	def recordSample(self):

		#debug
		'''
		self.debug(
			[
				'This is the sample record level',
				('self.',self,[
					'RecordingLabelVariable'
				])
			]
		)
		'''

		#/##################/#
		# Build the colors
		#

		#Check
		if self.RecordingLabelVariable!=None:

			#get		
			self.RecordedColorTuplesList=SYS.getColorTuplesList(
				'black',
				self.RecordingColorStr,
				len(self.RecordingLabelVariable)+3,
				_PlotBool=False
			)[3:]

			#reverse
			self.RecordedColorTuplesList.reverse()

			#debug
			'''
Exemplo n.º 2
0
	def viewNetwork(self):

		#
		# Maybe erase
		#

		del self.TeamDict['Panels']


		#
		# Plot the transfer functions
		#

		#Check 
		if len(self.ViewingColorStrsList)!=self.StationarizingUnitsInt:

			#set
			self.ViewingColorStrsList = SYS.getColorTuplesList(
					_FromColorStr='blue',
					_ToColorStr='black',
					_SampleInt=self.StationarizingUnitsInt,
					_PlotBool=False
				)

		#Check
		if len(self.ViewingLabelStrsList)!=self.StationarizingUnitsInt:

			#set
			self.ViewingLabelStrsList=map(
				lambda _Variable:
				_Variable.ManagementTagStr,
				self.TeamDict['Populations'].ManagementDict.values()
			)

		#Debug
		'''
		self.debug(
			[
				('self.',self,[
						'ViewingColorStrsList',
						'ViewingLabelStrsList'
					])
			]
		)
		'''

		#debug
		'''
		self.debug(
			[
				"We transfer view network here"
			]
		)
		'''

		#call
		ViewedTransferVariable = self.getTeamer(
				'Panels'
			).getManager(
				'Transfer'
			)

		ViewedChartsVariable=ViewedTransferVariable.getTeamer(
				'Charts'
			)

		#xlim
		xlimList =  [self.TransferedScanFrequencyFloatsArray[0],self.TransferedScanFrequencyFloatsArray[-1]]

		#
		# Amplitude
		#

		#plot
		ViewedAmplitudeChartVariable = ViewedChartsVariable.getManager('Amplitude')

		#get
		ViewedAmplitudeDrawVariable = ViewedAmplitudeChartVariable.getTeamer(
				'Draws'
			).getManager('0')


		#debug
		self.debug(
			[
				('self.',self,[
						'StationarizedRateFloatsArraysList',
						'StationarizingRateVariable'
					])
			]
		)

		#set
		yLimAmplitudeList=[
			self.TransferedNormRateAmplitudeFloatsArray.min(),
			self.TransferedNormRateAmplitudeFloatsArray.max()
		]
		yTickAmplitudeList=[0.,0.5,1.]

		#map
		ViewedAmplitudeDrawVariable.PyplotingDrawVariable = map(
			lambda __IndexInt:
			('plot',{
					'#liarg':[
						self.TransferedScanFrequencyFloatsArray,
						self.TransferedNormRateAmplitudeFloatsArray[__IndexInt,:]
					],
					'#kwarg':{
							'linestyle':'-',
							'linewidth':5,
							'color':self.ViewingColorStrsList[__IndexInt],
							'label':self.ViewingLabelStrsList[__IndexInt]
						}
				}),
			xrange(len(self.TeamDict['Populations'].ManagementDict))
		)

		#set log
		ViewedAmplitudeChartVariable.PyplotingChartVariable=[
				('set_xscale','log'),
				('set_xlim',xlimList),
				('set_xticklabels',[]),
				('set_yticks',yTickAmplitudeList),
				('set_yticklabels',map(lambda __Float:'$'+str(__Float)+'$',yTickAmplitudeList)),
				('set_ylabel',"$amplitude\ r_{a1}/r_{a0}$")
			]

		ViewedAmplitudeChartVariable.PyplotingLegendDict={
			'fontsize':10,
			'ncol':2 if self.StationarizingUnitsInt>3 else 1
		}

		#
		# Phase
		#

		#plot
		ViewedPhaseChartVariable = ViewedChartsVariable.getManager('Phase')

		#get
		ViewedPhaseDrawVariable = ViewedPhaseChartVariable.getTeamer(
				'Draws'
			).getManager('0')

		#set
		#yLimPhaseList=[TransferedNormRatePhaseFloatsArray.min(),TransferedNormRatePhaseFloatsArray.max()]
		yLimPhaseList=[-180.,180.]
		yTickPhaseList=[-180,-90,0,90,180]

		#map
		ViewedPhaseDrawVariable.PyplotingDrawVariable = map(
			lambda __IndexInt:
			('plot',{
					'#liarg':[
						self.TransferedScanFrequencyFloatsArray,
						#(180./np.pi)*np.array(map(
						#	SYS.getArgumentVariable,
						#	self.TransferedRateComplexesArray[__IndexInt,:]
						#))
						self.TransferedNormRatePhaseFloatsArray[__IndexInt,:]
					],
					'#kwarg':{
							'linestyle':'-',
							'linewidth':5,
							'color':self.ViewingColorStrsList[__IndexInt]
						}
				}),
			range(len(self.TeamDict['Populations'].ManagementDict))[1:]
		)+[
			('plot',{
					'#liarg':[
						self.TransferedScanFrequencyFloatsArray,
						#(180./np.pi)*np.array(map(
						#	SYS.getArgumentVariable,
						#	self.TransferedRateComplexesArray[__IndexInt,:]
						#))
						self.TransferedNormRatePhaseFloatsArray[0,:]
					],
					'#kwarg':{
							'linestyle':'--',
							'linewidth':3,
							'color':self.ViewingColorStrsList[0]
						}
				})
		]

		#set log
		ViewedPhaseChartVariable.PyplotingChartVariable=[
				('plot',{
					'#liarg':[	
							xlimList,
							[0.,0.]
						],
					'#kwarg':{
							'linestyle':'--',
							'linewidth':1,
							'color':"black"
						}
					}

				),
				('set_xscale','log'),
				('set_xlim',xlimList),
				('set_xlabel',"$frequency (Hz)$"),
				('set_ylim',yLimPhaseList),
				('set_ylabel',"$phase$"),
				('set_yticks',yTickPhaseList),
				('set_yticklabels',map(lambda __Float:'$'+str(__Float)+'$',yTickPhaseList))
			]

		#
		# Plot max but just (for the first)
		#

		#map
		ViewedAmplitudeDrawVariable.PyplotingDrawVariable += SYS.sum(map(
			lambda __IndexInt:
			map(
				lambda __FourierMaxTuple:
				('plot',{
					'#liarg':[
						[__FourierMaxTuple[0]]*2,
						yLimAmplitudeList
					],
					'#kwarg':{
							'linestyle':'--',
							'linewidth':1,
							#'color':self.ViewingColorStrsList[__IndexInt]
							'color':"black"
						}
				}),
				self.TransferedPeakVariable[__IndexInt]
			),
			range(len(self.TeamDict['Populations'].ManagementDict))[:1]
		))

		#map
		'''
		ViewedPhaseDrawVariable.PyplotingDrawVariable += SYS.sum(map(
			lambda __IndexInt:
			map(
				lambda __FourierMaxTuple:
				('plot',{
					'#liarg':[
						[__FourierMaxTuple[0]]*2,
						yLimPhaseList
					],
					'#kwarg':{
							'linestyle':'--',
							'linewidth':1,
							#'color':self.ViewingColorStrsList[__IndexInt]
							'color':"black"
						}
				}),
				self.NumscipiedFourierMaxTupleFloatsArray[__IndexInt]
			),
			range(len(self.TeamDict['Populations'].ManagementDict))[:1]
		))	
		'''

		#map
		ViewedPhaseDrawVariable.PyplotingDrawVariable += SYS.sum(map(
			lambda __IndexInt:
			SYS.sum(map(
				lambda __FourierMaxTuple:
				map(
					lambda __PhaseFloat,_IndInt:
					('plot',{
						'#liarg':[
							__FourierMaxTuple[0],
							__PhaseFloat
						],
						'#kwarg':{
								'linestyle':'',
								'marker':"o",
								'markersize':5,
								'color':self.ViewingColorStrsList[_IndInt]
								#'color':"black"
							}
					}),
					__FourierMaxTuple[1][1:],
					xrange(len(__FourierMaxTuple[1][1:]))
				),
				self.TransferedPhaseVariable[__IndexInt]
			)),
			range(len(self.TeamDict['Populations'].ManagementDict))[:1]
		))	

		#
		# Recapepete
		#

		#mapSet
		self.mapSet(
			{
				'PyplotingFigureVariable':{
					'figsize':(10,10)
				},
				'PyplotingGridVariable':(40,30),
				'-Panels':[
					(
						'|Transfer',
						{
							'PyplotingTextVariable':[-0.6,0.],
							'PyplotingShapeVariable':[10,10],
							'-Charts':{
								'|Amplitude':{
								},
								'|Phase':{
									'PyplotingShiftVariable':[2,0]
								}
							}
						}
					)
				]
			}
		)




		#base
		BaseClass.viewNetwork(self)
Exemplo n.º 3
0
    def mimic_view(self):

        # /#################/#
        # First call the base method
        #

        BaseClass.view(self)

        # /#################/#
        # Build the Units colors
        #

        self.PredirateControlColorTuplesList = SYS.getColorTuplesList(
            "black", "green", len(self.PrediratingMonitorIntsList) + 3, _PlotBool=False
        )[3:]
        self.PredirateExactColorTuplesList = SYS.getColorTuplesList(
            "black", "blue", len(self.PrediratingMonitorIntsList) + 3, _PlotBool=False
        )[3:]
        self.PrediratePerturbativeColorTuplesList = SYS.getColorTuplesList(
            "black", "red", len(self.PrediratingMonitorIntsList) + 3, _PlotBool=False
        )[3:]

        # debug
        """
		self.debug(
				[
					'We have built the colors',
					('self.',self,['PrediratePerturbativeColorTuplesList'])
				]
			)
		"""

        # /#################/#
        # Build the input-unit traces axes
        #

        # debug
        self.debug([("self.", self, ["PredisensingMonitorIntsList"])])

        # get
        self.set(
            "/-Charts/|Unit",
            {
                "-Draws": {
                    "#map@set": map(
                        lambda __IntsTuple: (
                            "|" + str(__IntsTuple[0]),
                            {
                                "PyplotingDrawVariable": [
                                    (
                                        "plot",
                                        {
                                            "#liarg:#map@get": [
                                                "PredisensedTimeTraceFloatsArray",
                                                ">>self.PrediratedControlUnitTraceFloatsArray['"
                                                + str(__IntsTuple[1])
                                                + "']",
                                            ],
                                            "#kwarg": {
                                                "label": "$r_{" + str(__IntsTuple[1]) + "}^{control}$",
                                                "linestyle": "-",
                                                "linewidth": 1,
                                                "color": self.PredirateControlColorTuplesList[__IntsTuple[0]],
                                            },
                                        },
                                    ),
                                    (
                                        "plot",
                                        {
                                            "#liarg:#map@get": [
                                                "PredisensedTimeTraceFloatsArray",
                                                ">>self.PrediratedExactUnitTraceFloatsArray['"
                                                + str(__IntsTuple[1])
                                                + "']",
                                            ],
                                            "#kwarg": {
                                                "label": "$r_{" + str(__IntsTuple[1]) + "}^{exact}$",
                                                "linestyle": "-",
                                                "linewidth": 2,
                                                "color": self.PredirateExactColorTuplesList[__IntsTuple[0]],
                                            },
                                        },
                                    ),
                                    (
                                        "plot",
                                        {
                                            "#liarg:#map@get": [
                                                "PredisensedTimeTraceFloatsArray",
                                                ">>self.PrediratedPerturbativeUnitTraceFloatsArray['"
                                                + str(__IntsTuple[1])
                                                + "']",
                                            ],
                                            "#kwarg": {
                                                "label": "$r_{" + str(__IntsTuple[1]) + "}^{perturb}$",
                                                "linestyle": "-",
                                                "linewidth": 4,
                                                "color": self.PrediratePerturbativeColorTuplesList[__IntsTuple[0]],
                                            },
                                        },
                                    ),
                                ]
                            },
                        ),
                        enumerate(self.PrediratingMonitorIntsList),
                    )
                },
                "PyplotingChartVariable.extend": [
                    [
                        ("set_ylabel", "$r(t)$"),
                        (
                            "set_ylim",
                            {
                                "#liarg:#map@get": [
                                    ">>SYS.set(SYS,'RateLimFloatsArray',"
                                    + "".join(
                                        [
                                            "[max(-20.,self.PrediratedPerturbativeUnitTraceFloatsArray.min()),"
                                            "min(20.,self.PrediratedPerturbativeUnitTraceFloatsArray.max())]"
                                        ]
                                    )
                                    + ").RateLimFloatsArray"
                                ]
                            },
                        ),
                        (
                            "set_yticks",
                            {
                                "#liarg:#map@get": [
                                    "".join(
                                        [
                                            ">>SYS.set(SYS,'RateTickFloatsArray',"
                                            "map(lambda __Float:float('%.2f'%__Float),",
                                            "SYS.getTickFloatsArray(SYS.RateLimFloatsArray,3))",
                                            ").RateTickFloatsArray",
                                        ]
                                    )
                                ]
                            },
                        ),
                        (
                            "set_yticklabels",
                            {"#liarg:#map@get": [">>map(lambda __Float:'$'+str(__Float)+'$',SYS.RateTickFloatsArray)"]},
                        ),
                        ("tick_params", {"#kwarg": {"length": 10, "width": 5, "which": "major"}}),
                        ("tick_params", {"#kwarg": {"length": 5, "width": 2, "which": "minor"}}),
                        ("xaxis.set_ticks_position", {"#liarg": ["bottom"]}),
                        ("yaxis.set_ticks_position", {"#liarg": ["left"]}),
                        (
                            "legend",
                            {
                                "#liarg": [],
                                "#kwarg": {
                                    "fontsize": 10,
                                    "shadow": True,
                                    "fancybox": True,
                                    "ncol": len(self.PrediratingMonitorIntsList),
                                    "loc": 2,
                                    "bbox_to_anchor": (1.05, 1),
                                },
                            },
                        ),
                    ]
                ],
            },
        )

        # /#################/#
        # Build the Decoder colors
        #

        self.PredirateDecoderControlColorTuplesList = SYS.getColorTuplesList(
            "black", "green", len(self.PredisensingMonitorIntsList) + 3, _PlotBool=False
        )[3:]
        self.PredirateDecoderExactColorTuplesList = SYS.getColorTuplesList(
            "black", "blue", len(self.PredisensingMonitorIntsList) + 3, _PlotBool=False
        )[3:]
        self.PredirateDecoderPerturbativeColorTuplesList = SYS.getColorTuplesList(
            "black", "red", len(self.PredisensingMonitorIntsList) + 3, _PlotBool=False
        )[3:]

        # debug
        """
		self.debug(
				[
					'We have built the colors',
					('self.',self,['PrediratePerturbativeColorTuplesList'])
				]
			)
		"""
        # get
        self.set(
            "/-Charts/|Decoder",
            {
                "-Draws": {
                    "#map@set": map(
                        lambda __IntsTuple: (
                            "|" + str(__IntsTuple[0]),
                            {
                                "PyplotingDrawVariable": [
                                    (
                                        "plot",
                                        {
                                            "#liarg:#map@get": [
                                                "PredisensedTimeTraceFloatsArray",
                                                ">>self.PredisensedSensorTraceFloatsArray['"
                                                + str(__IntsTuple[1])
                                                + "']",
                                            ],
                                            "#kwarg": {
                                                "label": "$x_{" + str(__IntsTuple[1]) + "}$",
                                                "linestyle": "-",
                                                "linewidth": 1,
                                                "color": self.PredisenseSensorColorTuplesList[__IntsTuple[0]],
                                            },
                                        },
                                    ),
                                    (
                                        "plot",
                                        {
                                            "#liarg:#map@get": [
                                                "PredisensedTimeTraceFloatsArray",
                                                ">>self.PrediratedPerturbativeDecoderTraceFloatsArray['"
                                                + str(__IntsTuple[1])
                                                + "']",
                                            ],
                                            "#kwarg": {
                                                "label": "$\hat{x}_{" + str(__IntsTuple[1]) + "}^{perturb}$",
                                                "linestyle": "--",
                                                "linewidth": 4,
                                                "color": self.PredirateDecoderPerturbativeColorTuplesList[
                                                    __IntsTuple[0]
                                                ],
                                            },
                                        },
                                    ),
                                    (
                                        "plot",
                                        {
                                            "#liarg:#map@get": [
                                                "PredisensedTimeTraceFloatsArray",
                                                ">>self.PrediratedExactDecoderTraceFloatsArray['"
                                                + str(__IntsTuple[1])
                                                + "']",
                                            ],
                                            "#kwarg": {
                                                "label": "$\hat{x}_{" + str(__IntsTuple[1]) + "}^{exact}$",
                                                "linestyle": "--",
                                                "linewidth": 2,
                                                "color": self.PredirateDecoderExactColorTuplesList[__IntsTuple[0]],
                                            },
                                        },
                                    ),
                                    (
                                        "plot",
                                        {
                                            "#liarg:#map@get": [
                                                "PredisensedTimeTraceFloatsArray",
                                                ">>self.PrediratedControlDecoderTraceFloatsArray['"
                                                + str(__IntsTuple[1])
                                                + "']",
                                            ],
                                            "#kwarg": {
                                                "label": "$\hat{x}_{" + str(__IntsTuple[1]) + "}^{control}$",
                                                "linestyle": "--",
                                                "linewidth": 1,
                                                "color": self.PredirateDecoderControlColorTuplesList[__IntsTuple[0]],
                                            },
                                        },
                                    ),
                                ]
                            },
                        ),
                        enumerate(self.PredisensingMonitorIntsList),
                    )
                },
                "PyplotingChartVariable.extend": [
                    [
                        ("set_ylabel", "$x(t),\ \hat{x}(t)$"),
                        ("set_ylim", {"#liarg:#map@get": [">>SYS.SensorLimFloatsArray"]}),
                        ("set_yticks", {"#liarg:#map@get": [">>SYS.SensorTickFloatsArray"]}),
                        ("set_yticklabels", {"#liarg:#map@get": [">>SYS.SensorTickStrsArray"]}),
                        ("tick_params", {"#kwarg": {"length": 10, "width": 5, "which": "major"}}),
                        ("tick_params", {"#kwarg": {"length": 5, "width": 2, "which": "minor"}}),
                        ("xaxis.set_ticks_position", {"#liarg": ["bottom"]}),
                        ("yaxis.set_ticks_position", {"#liarg": ["left"]}),
                        (
                            "legend",
                            {
                                "#liarg": [],
                                "#kwarg": {
                                    "fontsize": 10,
                                    "shadow": True,
                                    "fancybox": True,
                                    "ncol": len(self.PredisensingMonitorIntsList),
                                    "loc": 2,
                                    "bbox_to_anchor": (1.05, 1),
                                },
                            },
                        ),
                    ]
                ],
            },
        )
	def mimic_pyplot(self):
		
		#debug
		'''
		self.debug(
				[
					('self.',self,['PredisensingMonitorIntsList'])
				]
			)
		'''

		#/#################/#
		# Build the colors
		#	

		self.PredisenseCommandColorTuplesList=SYS.getColorTuplesList(
			'black','red',len(self.PredisensingMonitorIntsList)+3,_PlotBool=False
		)[3:]

		self.PredisenseSensorColorTuplesList=SYS.getColorTuplesList(
			'black','blue',len(self.PredisensingMonitorIntsList)+3,_PlotBool=False
		)[3:]

		#debug
		'''
		self.debug(
				[
					'We have built the colors',
					('self.',self,[
						'PredisenseCommandColorTuplesList'
						'PredisenseSensorColorTuplesList'])
				]
			)
		'''
		
		#/#################/#
		# Build the input-unit traces axes
		#

		#init
		self.mapSet(
			{
				'-Charts':[
					('ManagingBeforeSetVariable',
					{
						'FiguringShapeIntsTuple':(5,15),
						'#copy:PyplotingDrawVariable':
						[
							(
								'#axes',
								[
									('set_xticks',{
												'#liarg:#map@get':[
													">>SYS.set(SYS,'TimeTicksArray',SYS.getTickFloatsArray([0.,self.PredisensingRunTimeFloat],4)).TimeTicksArray"
												]	
									}),
									('set_xticklabels',{
										'#liarg:#map@get':[
											">>map(lambda __Float:'$%.0f$'%__Float,SYS.TimeTicksArray)"
										]
									}),
									('set_xlim',{
										'#liarg:#map@get':[0.,'>>self.PredisensingRunTimeFloat']
									})
								]
							)
						]
					}),
					('|Sensor',{
						'-Draws':{
							'#map@set':map(
								lambda __IntsTuple:
								(
									'|'+str(__IntsTuple[0]),
									{
										'PyplotingDrawVariable':
										[
											('plot',
												{
													'#liarg:#map@get':[
														'PredisensedTimeTraceFloatsArray',
														'>>self.PredisensedInputCurrentTraceFloatsArray.__getitem__('+str(__IntsTuple[1])+')'
													],
													'#kwarg':{
														'label':'$\\tau_{D}c_{'+str(__IntsTuple[1])+'}$',
														'linestyle':'-',
														'color':self.PredisenseCommandColorTuplesList[__IntsTuple[0]]
													}
											}),
											('plot',
												{
													'#liarg:#map@get':[
														'PredisensedTimeTraceFloatsArray',
														'>>self.PredisensedSensorTraceFloatsArray['+str(__IntsTuple[1])+',:]'
													],
													'#kwarg':{
														'color':self.PredisenseSensorColorTuplesList[__IntsTuple[0]],
														'label':'$x_{'+str(__IntsTuple[1])+'}$',
														'linewidth':3,
														'linestyle':'-'
													}
											})
										]
									}
								),
								enumerate(self.PredisensingMonitorIntsList)
							)	
						},
						'PyplotingDrawVariable.extend':
						[[
							(
								'#axes',
								[
									('set_ylabel','$\\tau_{D}c(t),\ x(t)$'),
									('set_ylim',{'#liarg:#map@get':[
										"".join([
											">>SYS.set(SYS,'SensorLimFloatsArray',",
											"[min(-0.1,self.PredisensedSensorTraceFloatsArray.min()),1.5*self.PredisensingClampFloat*self.PredictingConstantTimeFloat]",
											').SensorLimFloatsArray'
										])]
									}),
									('set_yticks',{
										'#liarg:#map@get':[
											"".join([
												">>SYS.set(SYS,'SensorTickFloatsArray',",
												"map(lambda __Float:float('%.2f'%__Float),",
												"SYS.getTickFloatsArray(",
												"SYS.SensorLimFloatsArray,3",
												"))).SensorTickFloatsArray"
											])
										]
									}),
									('set_yticklabels',{
										'#liarg:#map@get':[
											"".join([
												">>SYS.set(SYS,'SensorTickStrsArray',",
												"map(lambda __Float:'$'+str(__Float)+'$',",
												"SYS.SensorTickFloatsArray)).SensorTickStrsArray"
												])
										]
									}),
									('tick_params',{
										'#kwarg':{
											'length':10,
											'width':5,
											'which':'major'
										}
									}),
									('tick_params',{
										'#kwarg':{
											'length':5,
											'width':2,
											'which':'minor'
										}
									}),
									('xaxis.set_ticks_position',
										{
											'#liarg':['bottom']
										}
									),
									('yaxis.set_ticks_position',
										{
											'#liarg':['left']
										}
									),
									('legend',{
										'#liarg':[],
										'#kwarg':{
											'fontsize':10,
											'shadow':True,
											'fancybox':True,
											'ncol':max(1,len(self.PredisensingMonitorIntsList)/2),
											'loc':2,
											'bbox_to_anchor':(1.05, 1)
										}
									})
								]
							)
						]]
					})
				]
			}				
		)

		#debug
		self.debug(
			'Ok we have setted the plots'
		)


		#call the base method
		BaseClass.pyplot(self)
	def mimic_draw(self):

		#/#################/#
		# First call the base method
		#

		BaseClass.draw(self)

		#/#################/#
		# Build the colors
		#

		self.PredirateControlColorTuplesList=SYS.getColorTuplesList(
			'black','yellow',len(self.PrediratingMonitorIntsList)+3,_PlotBool=False
		)[3:]
		self.PredirateExactColorTuplesList=SYS.getColorTuplesList(
			'black','blue',len(self.PrediratingMonitorIntsList)+3,_PlotBool=False
		)[3:]
		self.PrediratePerturbativeColorTuplesList=SYS.getColorTuplesList(
			'black','red',len(self.PrediratingMonitorIntsList)+3,_PlotBool=False
		)[3:]

		#debug
		'''
		self.debug(
				[
					'We have built the colors',
					('self.',self,['PrediratePerturbativeColorTuplesList'])
				]
			)
		'''

		#/#################/#
		# Build the input-unit traces axes
		#

		#debug
		self.debug(
				[
					('self.',self,['PredisensingMonitorIntsList'])
				]
			)

		#get
		self['/-Views/|A/-Axes'].set(
			'|Unit',
			{
				'-Plots':{
					'#map@set':map(
						lambda __IntsTuple:
						(
							'|'+str(__IntsTuple[0]),
							{
								'FiguringDrawVariable':
								[
									('#plot',
										{
											'#liarg:#map@get':[
												'PredisensedTimeTraceFloatsArray',
												'>>self.PrediratedControlUnitTraceFloatsArray[\''+str(__IntsTuple[1])+'\']'
											],
											'#kwarg':{
												'label':'$r_{'+str(__IntsTuple[1])+'}^{control}$',
												'linestyle':'-',
												'linewidth':1,
												'color':self.PredirateControlColorTuplesList[__IntsTuple[0]]
											}
										}
									),
									('#plot',
										{
											'#liarg:#map@get':[
												'PredisensedTimeTraceFloatsArray',
												'>>self.PrediratedExactUnitTraceFloatsArray[\''+str(__IntsTuple[1])+'\']'
											],
											'#kwarg':{
												'label':'$r_{'+str(__IntsTuple[1])+'}^{exact}$',
												'linestyle':'-',
												'linewidth':2,
												'color':self.PredirateExactColorTuplesList[__IntsTuple[0]],
											
											}
										}
									),
									#('#plot',
									#	{
									#		'#liarg:#map@get':[
									#			'PredisensedTimeTraceFloatsArray',
									#			'>>self.PrediratedPerturbativeUnitTraceFloatsArray[\''+str(__IntsTuple[1])+'\']'
									#		],
									#		'#kwarg':{
									#			'label':'$r_{'+str(__IntsTuple[1])+'}^{perturb}$',
									#			'linestyle':'-',
									#			'linewidth':4,
									#			'color':self.PrediratePerturbativeColorTuplesList[__IntsTuple[0]]
									#		
									#		}
									#	}
									#)
								]
							}
						),
						enumerate(self.PrediratingMonitorIntsList)
					)	
				},
				'FiguringDrawVariable.extend':
				[[
					('#axes',
						[
							('set_ylabel','$r(t)$'),
							('set_ylim',{
								'#liarg:#map@get':[
									">>SYS.set(SYS,'RateLimFloatsArray',"+"".join([
										"[max(-20.,self.PrediratedControlUnitTraceFloatsArray.min()),"
										"min(20.,self.PrediratedControlUnitTraceFloatsArray.max())]"
										])+').RateLimFloatsArray'
								]
							}),
							('set_yticks',{
								'#liarg:#map@get':[
									"".join(
										[
											">>SYS.set(SYS,'RateTickFloatsArray',"
											"map(lambda __Float:float('%.2f'%__Float),",
											"SYS.getTickFloatsArray(SYS.RateLimFloatsArray,3))",
											").RateTickFloatsArray"
										]
									)
								]
							}),
							('set_yticklabels',{
								'#liarg:#map@get':[
									">>map(lambda __Float:'$'+str(__Float)+'$',SYS.RateTickFloatsArray)"
								]
							}),
							('tick_params',{
								'#kwarg':{
									'length':10,
									'width':5,
									'which':'major'
								}
							}),
							('tick_params',{
								'#kwarg':{
									'length':5,
									'width':2,
									'which':'minor'
								}
							}),
							('xaxis.set_ticks_position',
								{
									'#liarg':['bottom']
								}
							),
							('yaxis.set_ticks_position',
								{
									'#liarg':['left']
								}
							),
							('legend',{
										'#liarg':[],
										'#kwarg':{
											'fontsize':10,
											'shadow':True,
											'fancybox':True,
											'ncol':len(self.PrediratingMonitorIntsList),
											'loc':2,
											'bbox_to_anchor':(1.05, 1)
										}
									})
						]
					)
				]]
			}
		)

		#get
		self['/-Views/|A/-Axes'].set(
			'|Decoder',
			{
			'-Plots':{
					'#map@set':map(
						lambda __IntsTuple:
						(
							'|'+str(__IntsTuple[0]),
							{
								'FiguringDrawVariable':
								[
									('#plot',
										{
											'#liarg:#map@get':[
												'PredisensedTimeTraceFloatsArray',
												'>>self.PredisensedSensorTraceFloatsArray[\''+str(__IntsTuple[1])+'\']'
											],
											'#kwarg':{
												'label':'$x_{'+str(__IntsTuple[1])+'}$',
												'linestyle':'-',
												'linewidth':1,
												'color':self.PredisenseSensorColorTuplesList[__IntsTuple[0]]
											}
										}
									),
									('#plot',
										{
											'#liarg:#map@get':[
												'PredisensedTimeTraceFloatsArray',
												'>>self.PrediratedControlDecoderTraceFloatsArray[\''+str(__IntsTuple[1])+'\']'
											],
											'#kwarg':{
												'label':'$\hat{x}_{'+str(__IntsTuple[1])+'}^{control}$',
												'linestyle':'--',
												'linewidth':1,
												'color':self.PredisenseSensorColorTuplesList[__IntsTuple[0]],
											
											}
										}
									),
									('#plot',
										{
											'#liarg:#map@get':[
												'PredisensedTimeTraceFloatsArray',
												'>>self.PrediratedExactDecoderTraceFloatsArray[\''+str(__IntsTuple[1])+'\']'
											],
											'#kwarg':{
												'label':'$\hat{x}_{'+str(__IntsTuple[1])+'}^{exact}$',
												'linestyle':'--',
												'linewidth':2,
												'color':self.PredisenseSensorColorTuplesList[__IntsTuple[0]],
											
											}
										}
									),
									#('#plot',
									#	{
									#		'#liarg:#map@get':[
									#			'PredisensedTimeTraceFloatsArray',
									#			'>>self.PrediratedPerturbativDecoderTraceFloatsArray[\''+str(__IntsTuple[1])+'\']'
									#		],
									#		'#kwarg':{
									#			'label':'$\hat{x}_{'+str(__IntsTuple[1])+'}^{perturb}$',
									#			'linestyle':'--',
									#			'linewidth':4,
									#			'color':self.PredisenseSensorColorTuplesList[__IntsTuple[0]],
									#		
									#		}
									#	}
									#)
								]
							}
						),
						enumerate(self.PredisensingMonitorIntsList)
					)	
				},
				'FiguringDrawVariable.extend':
				[[
					(
						'#axes',
						[
							('set_ylabel','$x(t),\ \hat{x}(t)$'),
							('set_ylim',{
								'#liarg:#map@get':[
									">>SYS.set(SYS,'DecoderLimFloatsArray',"+"".join([
										"[max(0.,self.PrediratedControlDecoderTraceFloatsArray.min()),"
										"min(5.,self.PrediratedControlDecoderTraceFloatsArray.max())]"
										])+').DecoderLimFloatsArray'
								]
							}),
							('set_yticks',{
								'#liarg:#map@get':[
									"".join(
										[
											">>SYS.set(SYS,'DecoderTickFloatsArray',"
											"map(lambda __Float:float('%.2f'%__Float),",
											"SYS.getTickFloatsArray(SYS.DecoderLimFloatsArray,3))",
											").DecoderTickFloatsArray"
										]
									)
								]
							}),
							('set_yticklabels',{
								'#liarg:#map@get':[
									">>map(lambda __Float:'$'+str(__Float)+'$',SYS.DecoderTickFloatsArray)"
								]
							}),
							('tick_params',{
								'#kwarg':{
									'length':10,
									'width':5,
									'which':'major'
								}
							}),
							('tick_params',{
								'#kwarg':{
									'length':5,
									'width':2,
									'which':'minor'
								}
							}),
							('xaxis.set_ticks_position',
								{
									'#liarg':['bottom']
								}
							),
							('yaxis.set_ticks_position',
								{
									'#liarg':['left']
								}
							),
							('legend',{
										'#liarg':[],
										'#kwarg':{
											'fontsize':10,
											'shadow':True,
											'fancybox':True,
											'ncol':len(self.PredisensingMonitorIntsList),
											'loc':2,
											'bbox_to_anchor':(1.05, 1)
										}
									})
						]
					)
				]]
			}
		)