def __init__(self, dataExtractor, settingsDictOrInstName): assert settingsDictOrInstName != None settingsDict = None print settingsDictOrInstName if type(settingsDictOrInstName) == str: settingsDict = DataDict() settingsDict.pushBack("plotType", self.plotType) settingsDict.pushBack("instName", settingsDictOrInstName) settingsDict.pushBack("varX", "GEOM.e") settingsDict.pushBack("varY", "GEOM.sFrac") settingsDict.pushBack("constE", "220") #(MV/m)**6 * 200 ns, will be taken to the power 6 settingsDict.pushBack("constE_2", "250") #(MV/m)**6 * 200 ns, will be taken to the power 6 settingsDict.pushBack("varNormE", DataDict()) settingsDict["varNormE"].pushBack("var", "ANA.RFpost_local.maxFieldsOnSurface[0].surf[0].mode[0].Emax_norm[0]") settingsDict.pushBack("constSC", "4.0") #(MW/mm**2)**3 * 200 ns, will be taken to the power 3 settingsDict.pushBack("constSC_2", "5.0") #(MW/mm**2)**3 * 200 ns, will be taken to the power 3 settingsDict.pushBack("varNormSC", DataDict()) settingsDict["varNormSC"].pushBack("var", "ANA.RFpost_local.maxFieldsOnSurface[0].surf[0].mode[0].SCmax_norm[0]") settingsDict.pushBack("constPC", "2.3") #(MW/mm)**3 * 200 ns, will be taken to the power 3 settingsDict.pushBack("constPC_2", "2.9") #(MW/mm)**3 * 200 ns, will be taken to the power 3 settingsDict.pushBack("varFrequency", "ANA.Omega3P_modeInfo.Mode[0].FrequencyReal[0]") settingsDict.pushBack("varRQ", "ANA.RFpost_local.RoverQ[0].mode[0].RoQ_norm[0]") settingsDict.pushBack("varVg", "ANA.GroupVelocity.VG[0]") settingsDict.pushBack("varRadius", "GEOM.a") else: settingsDict = settingsDictOrInstName if not "constE_2" in settingsDict.getKeys(): print "Adding optimistic constants!" print settingsDict settingsDict.pushBack("constE_2", "250") #(MV/m)**6 * 200 ns, will be taken to the power 6 settingsDict.pushBack("constSC_2", "5.0") #(MW/mm**2)**3 * 200 ns, will be taken to the power 3 settingsDict.pushBack("constPC_2", "2.9") #(MW/mm)**3 * 200 ns, will be taken to the power 3 if type(settingsDict["varNormE"]) == str: assert type(settingsDict["varNormSC"]) == str print "Changing varNormE and varNormSC to a DataDict" print settingsDict oldVarNormE = settingsDict["varNormE"] newVarNormE = DataDict() newVarNormE.pushBack("var", oldVarNormE) settingsDict.delItem("varNormE") settingsDict.pushBack("varNormE", newVarNormE) oldVarNormSC = settingsDict["varNormSC"] newVarNormSC = DataDict() newVarNormSC.pushBack("var", oldVarNormSC) settingsDict.delItem("varNormSC") settingsDict.pushBack("varNormSC", newVarNormSC) # print settingsDict super(DataExtractorPlotsScaleOptim,self).__init__(dataExtractor,settingsDict) self.varX = settingsDict["varX"] self.varY = settingsDict["varY"] self.constE = settingsDict["constE"] self.constE_2 = settingsDict["constE_2"] self.varNormE = settingsDict["varNormE"].vals self.constSC = settingsDict["constSC"] self.constSC_2 = settingsDict["constSC_2"] self.varNormSC = settingsDict["varNormSC"].vals self.constPC = settingsDict["constPC"] self.constPC_2 = settingsDict["constPC_2"] self.varFrequency = settingsDict["varFrequency"] self.varRQ = settingsDict["varRQ"] self.varVg = settingsDict["varVg"] self.varRadius = settingsDict["varRadius"]