Beispiel #1
0
def test_hdf5_overwrite():
    filename = "matlib.h5"
    if filename in os.listdir("."):
        os.remove(filename)
    water = Material()
    water.from_atom_frac({10000000: 2.0, 80000000: 1.0})
    water.metadata["name"] = "Aqua sera."
    lib = {"aqua": water}
    wmatlib = MaterialLibrary(lib)
    wmatlib.write_hdf5(filename, "/mats1")

    lib = {"leu": Material(leu)}
    umatlib = MaterialLibrary(lib)
    # test error raise if path already exists
    assert_raises(RuntimeError, umatlib.write_hdf5, filename, "/mats1", False)

    # test overwriting
    umatlib.write_hdf5(filename, "/mats1", h5_overwrite=True)
    rmatlib = MaterialLibrary()
    rmatlib.from_hdf5(filename, "/mats1")

    # Round trip!
    assert_equal(set(umatlib), set(rmatlib))
    for key in rmatlib:
        assert_mat_almost_equal(umatlib[key], rmatlib[key])
    os.remove(filename)
Beispiel #2
0
def test_matlib_hdf5_nuc_data():
    matlib = MaterialLibrary()
    matlib.from_hdf5(nuc_data, "/materials")
    matlib.write_hdf5("matlib_test.h5")
    mat_lib_load_test = MaterialLibrary("matlib_test.h5")
    os.remove("matlib_test.h5")
    for key in matlib:
        assert_mat_almost_equal(matlib[key], mat_lib_load_test[key])
Beispiel #3
0
def test_matlib_hdf5():
    filename = "matlib.h5"
    if filename in os.listdir("."):
        os.remove(filename)
    water = Material()
    water.from_atom_frac({10000000: 2.0, 80000000: 1.0})
    water.metadata["name"] = "Aqua sera."
    lib = {"leu": Material(leu), "nucvec": nucvec, "aqua": water}
    wmatlib = MaterialLibrary(lib)
    wmatlib.write_hdf5(filename, "/mats1")
    rmatlib = MaterialLibrary()
    rmatlib.from_hdf5(filename, "/mats1")
    os.remove(filename)
    # Round trip!
    rmatlib.write_hdf5(filename, "/mats1")
    wmatlib = MaterialLibrary(filename, "/mats1")
    assert_equal(set(wmatlib), set(rmatlib))
    for key in rmatlib:
        assert_mat_almost_equal(wmatlib[key], rmatlib[key])
    os.remove(filename)