Exemplo n.º 1
0
def test_cascade_constructor():
    casc = enr.Cascade()
    assert_almost_equal(casc.alpha, 0.0)
    assert_almost_equal(casc.Mstar, 0.0)
    assert_equal(casc.j, 0)
    assert_equal(casc.k, 0)
    assert_almost_equal(casc.N, 0.0)
    assert_almost_equal(casc.M, 0.0)
    assert_almost_equal(casc.x_feed_j, 0.0)
    assert_almost_equal(casc.x_prod_j, 0.0)
    assert_almost_equal(casc.x_tail_j, 0.0)
    assert_equal(casc.mat_feed, Material())
    assert_equal(casc.mat_prod, Material())
    assert_equal(casc.mat_tail, Material())
    assert_almost_equal(casc.l_t_per_feed, 0.0)
    assert_almost_equal(casc.swu_per_feed, 0.0)
    assert_almost_equal(casc.swu_per_prod, 0.0)
Exemplo n.º 2
0
def check_tungsten(solver):
    # This test comes from 'Multicomponent Isotope Separation in Matched
    # Abundance Ratio Cascades Composed of Stages with Large Separation Factors'
    # by casc. von Halle, 1987.
    orig_casc = enr.Cascade()
    orig_casc.alpha = 1.16306
    orig_casc.Mstar = 181.3
    orig_casc.j = 741800
    orig_casc.k = 741860
    orig_casc.N = 30.0
    orig_casc.M = 10.0
    orig_casc.x_prod_j = 0.5109
    orig_casc.x_tail_j = 0.00014

    feed = Material(
        {
            741800000: 0.0014,
            741820000: 0.26416,
            741830000: 0.14409,
            741840000: 0.30618,
            741860000: 0.28417,
        }
    )
    orig_casc.mat_feed = feed
    casc = enr.multicomponent(orig_casc, solver=solver, tolerance=1e-7)

    assert_almost_equal(casc.mat_prod.comp[741800000], 0.5109, 5)
    assert_almost_equal(casc.mat_tail.comp[741800000], 0.00014, 5)

    assert_almost_equal(casc.mat_feed.mass / 1.0, 1.0)
    assert_almost_equal(casc.mat_prod.mass / 0.0024669120526274574, 1.0)
    assert_almost_equal(casc.mat_tail.mass / 0.99753308794737272, 1.0)

    assert_almost_equal(casc.N / 43.557515688533513, 1.0, 2)
    assert_almost_equal(casc.M / 11.49556481009056, 1.0, 2)

    assert_almost_equal(casc.Mstar / 181.16425540249995, 1.0, 4)

    assert_almost_equal(casc.l_t_per_feed / 96.81774564292206, 1.0, 3)
    assert_almost_equal(casc.swu_per_feed / 2.22221945305, 1.0, 3)
    assert_almost_equal(casc.swu_per_prod / 900.810164953, 1.0, 3)
Exemplo n.º 3
0
def test_x_feed_j():
    casc = enr.Cascade(x_feed_j=0.0072)
    assert_equal(casc.x_feed_j, 0.0072)
Exemplo n.º 4
0
def test_M():
    casc = enr.Cascade()
    casc.M = 10.0
    assert_equal(casc.M, 10.0)
Exemplo n.º 5
0
def test_N():
    casc = enr.Cascade()
    casc.N = 30.0
    assert_equal(casc.N, 30.0)
Exemplo n.º 6
0
def test_k():
    casc = enr.Cascade()
    casc.k = 922380000
    assert_equal(casc.k, 922380000)
Exemplo n.º 7
0
def test_j():
    casc = enr.Cascade()
    casc.j = 922350000
    assert_equal(casc.j, 922350000)
Exemplo n.º 8
0
def test_Mstar():
    casc = enr.Cascade()
    casc.Mstar = 236.5
    assert_equal(casc.Mstar, 236.5)
Exemplo n.º 9
0
def test_alpha():
    casc = enr.Cascade()
    casc.alpha = 1.05
    assert_equal(casc.alpha, 1.05)
Exemplo n.º 10
0
def test_x_tail_j():
    casc = enr.Cascade()
    casc.x_tail_j = 0.0025
    assert_equal(casc.x_tail_j, 0.0025)
Exemplo n.º 11
0
def test_x_prod_j():
    casc = enr.Cascade()
    casc.x_prod_j = 0.05
    assert_equal(casc.x_prod_j, 0.05)