def getENDL_CS_ENDF_MT(self): """ Returns the reaction's ENDL C, S and ENDF's MT values as integers in a python dictionary with keys 'C', 'S' and 'MT' (e.g., { 'C' : 11, 'S' : 1, 'MT' : 53 }). """ from fudge.legacy.converting import endf_endl MT = self.ENDF_MT C, S = endf_endl.getCSFromMT(MT) return ({'C': C, 'S': S, 'MT': MT})
if (isinstance(sum_, sumsModule.multiplicitySum)): multiplicity = sum_.multiplicity.toPointwise_withLinearXYs( lowerEps=energyEps, upperEps=energyEps) multiplicitySums[sum_.ENDF_MT] = multiplicity.scaleOffsetXAndY( xScale=eV2MeV).domainSlice(domainMax=args.EMax) ENDLFiles = {} productionReactions = [] for reaction in reactionSuite.reactions: MT = reaction.ENDF_MT if (isinstance(reaction, productionModule.production)): productionReactions.append(reaction) continue if (MT in (5, 25)): print 'INFO: skipping MT=%d' % (MT) continue C, S = endf_endlModule.getCSFromMT(MT) if (C == 10): continue # There are not gammas for elastic scattering, but logic below may produce gammas for # meta-stables with branching data so let's skip it now. Q = reaction.getQ(unit='MeV') # BRB, this is the wrong Q. X1 = 0. if (len(reaction.outputChannel) == 2): particle = reaction.outputChannel[1].particle if (isinstance(particle, xParticleModule.nuclearLevel)): X1 = particle.energy.getValueAs('MeV') Q += X1 # BRB, is this the right Q? if (C not in CSQList): CSQList[C] = {} if (S not in CSQList[C]): CSQList[C][S] = Q Q2 = CSQList[C][S] if (abs(Q2 - Q) < 1e-7 * abs(Q)): Q = Q2 if (S not in [1, 3]): X1 = 0