In [1]:
from pyne import data
print data.atomic_mass('U235')
As out tagline says, PyNE is the open source nuclear engineering toolkit.
In [1]:
import numpy as np
from pyne import mesh, material
from pyne.xs.channels import sigma_t
from yt.config import ytcfg; ytcfg["yt","suppressStreamLogging"] = "True"
from yt.mods import *
m = mesh.Mesh(structured_coords=[np.linspace(0.0, 1.0, 101), np.linspace(0.0, 1.0, 101), [0.0, 1.0]], structured=True)
fuel = material.from_atom_frac({'U235': 0.045, 'U238': 0.955, 'O16': 2.0}, mass=1.0, density=10.7)
cool = material.from_atom_frac({'H1': 2.0, 'O16': 1.0}, mass=1.0, density=1.0)
for i, mat, ve in m:
coord = m.mesh.getVtxCoords(ve)
m.mats[i] = fuel if (coord[0]**2 + coord[1]**2) <= 0.5**2 else cool
m.sigma_t = mesh.ComputedTag(lambda mesh, i: sigma_t(mesh.mats[i], group_struct=[10.0, 1e-6], phi_g=[1.0])[0])
m.u_mass = mesh.ComputedTag(lambda mesh, i: max(mesh.mats[i]['U':'Np'].mass, 0.0))
SlicePlot(PyneMoabHex8StaticOutput(m), 'z', 'sigma_t', origin='native').display()
print "Pu Content of Mesh:", sum(m.u_mass[:])
As a user you should do your work or research with PyNE. Even if you have your own software which looks and behaves similar to some aspects of PyNE, using PyNE will mean that you no longer have to develop AND maintain that functionality.
As a developer you should be selfish. Contribute to PyNE in ways that support the work that you are doing. If a feature you want is not in PyNE right now, chances are that other people want to see that feature too! This will help your future self as much as future other people.
Website: http://pynesim.org/
User's Mailing List: pyne-users@googlegroups.com
Developer's List: pyne-dev@googlegroups.com