generate

OLM uses an approach to creating the necessary inputs for ORIGEN library generation which uses templates and data files.

Here’s an example of a generate section of config.olm.json using the Jinja template expansion method, jt_expander.

"generate": {
    "_type": "scale.olm.generate.root:jt_expander",
    "template": "model/triton/pin-uox.jt.inp",

    "comp": {
        "fuel":{
            "_type": "scale.olm.generate.comp:uo2_nuregcr5625",
            "density": 10.4
        }
    },

    "static": {
        "_type": "scale.olm.generate.static:pass_through",
        "addnux": 2,
        "xslib": "v7-56",
        "pitch": 1.26,
        "fuelr": 0.4095,
        "cladr": 0.4750
    },

    "states": {
        "_type": "scale.olm.generate.states:full_hypercube",
        "coolant_density": [
            0.70,
            0.72,
            0.74
        ],
        "enrichment": [
            0.5,
            3,
            5,
            7
        ],
        "specific_power": [
            40
        ],
        "boron_ppm": [ 600 ]
    },

    "time": {
        "_type": "scale.olm.generate.time:constpower_burndata",
        "gwd_burnups": [
            0.0,
            1.0,
            10.0,
            25.0,
            50.0,
            70.0,
            90.0
        ]
    }
}

Each of the five sections (static, dynamic, comp, time, states) are described in more detail in the sections below.


jt_expander

Specified with "_type": "scale.olm.generate.root:jt_expander" in config.olm.json.

Example input in config.olm.json/generate/root
{
    "_type": "scale.olm.generate.root:jt_expander",
    "template": "",
    "static": {
        "_type": "scale.olm.generate.static:pass_through",
        "addnux": 2,
        "xslib": "v7.1"
    },
    "states": {
        "_type": "scale.olm.generate.states:full_hypercube",
        "coolant_density": [
            0.4,
            0.7,
            1.0
        ],
        "enrichment": [
            1.5,
            3.5,
            4.5
        ],
        "specific_power": [
            42.0
        ]
    },
    "comp": {
        "fuel": {
            "_type": "scale.olm.generate.comp:uo2_simple"
        }
    },
    "time": {
        "_type": "scale.olm.generate.time:constpower_burndata",
        "gwd_burnups": [
            0,
            10,
            30,
            60
        ]
    },
    "dynamic": {
        "z1": {
            "_type": "scale.olm.generate.dynamic:scipy_interp",
            "state_var": "coolant_density",
            "data_pairs": [
                [
                    0.3,
                    0.4
                ],
                [
                    0.7,
                    0.5
                ],
                [
                    1.1,
                    0.6
                ]
            ],
            "method": "pchip"
        }
    }
}
Args passed to Python function: scale.olm.generate.root.jt_expander
{
    "_type": "scale.olm.generate.root:jt_expander",
    "template": "",
    "static": {
        "_type": "scale.olm.generate.static:pass_through",
        "addnux": 2,
        "xslib": "v7.1"
    },
    "states": {
        "_type": "scale.olm.generate.states:full_hypercube",
        "coolant_density": [
            0.4,
            0.7,
            1.0
        ],
        "enrichment": [
            1.5,
            3.5,
            4.5
        ],
        "specific_power": [
            42.0
        ]
    },
    "comp": {
        "fuel": {
            "_type": "scale.olm.generate.comp:uo2_simple"
        }
    },
    "time": {
        "_type": "scale.olm.generate.time:constpower_burndata",
        "gwd_burnups": [
            0,
            10,
            30,
            60
        ]
    },
    "dynamic": {
        "z1": {
            "_type": "scale.olm.generate.dynamic:scipy_interp",
            "state_var": "coolant_density",
            "data_pairs": [
                [
                    0.3,
                    0.4
                ],
                [
                    0.7,
                    0.5
                ],
                [
                    1.1,
                    0.6
                ]
            ],
            "method": "pchip"
        }
    }
}
Data available in template: root
{
    "work_dir": "/path/to/_work",
    "perms": [
        {
            "static": {
                "addnux": 2,
                "xslib": "v7.1"
            },
            "comp": {
                "fuel": {
                    "density": 0.0,
                    "uo2": {
                        "iso": {
                            "u235": 1.5,
                            "u238": 98.5,
                            "u234": 1e-20,
                            "u236": 1e-20
                        }
                    },
                    "_input": {
                        "state": {
                            "enrichment": 1.5
                        },
                        "density": 0.0
                    }
                }
            },
            "time": {
                "burndata": [
                    {
                        "power": 42.0,
                        "burn": 238.0952380952381
                    },
                    {
                        "power": 42.0,
                        "burn": 476.19047619047626
                    },
                    {
                        "power": 42.0,
                        "burn": 714.2857142857143
                    }
                ],
                "final_burnup_padding_gwd": 0.0
            },
            "state": {
                "coolant_density": 0.4,
                "enrichment": 1.5,
                "specific_power": 42.0
            },
            "dynamic": {
                "z1": 0.42500000000000004
            },
            "input_file": "perms/bd08aa0326241f88bf119415feee4781/model_ee4781.inp",
            "_": {
                "model": {},
                "data_hash": "bd08aa0326241f88bf119415feee4781",
                "data_file": "perms/bd08aa0326241f88bf119415feee4781/data.olm.json"
            },
            "_scale": {
                "sequences": [],
                "artifact_contract": "UNKNOWN",
                "material_lumping": null
            }
        },
        {
            "static": {
                "addnux": 2,
                "xslib": "v7.1"
            },
            "comp": {
                "fuel": {
                    "density": 0.0,
                    "uo2": {
                        "iso": {
                            "u235": 3.5,
                            "u238": 96.5,
                            "u234": 1e-20,
                            "u236": 1e-20
                        }
                    },
                    "_input": {
                        "state": {
                            "enrichment": 3.5
                        },
                        "density": 0.0
                    }
                }
            },
            "time": {
                "burndata": [
                    {
                        "power": 42.0,
                        "burn": 238.0952380952381
                    },
                    {
                        "power": 42.0,
                        "burn": 476.19047619047626
                    },
                    {
                        "power": 42.0,
                        "burn": 714.2857142857143
                    }
                ],
                "final_burnup_padding_gwd": 0.0
            },
            "state": {
                "coolant_density": 0.4,
                "enrichment": 3.5,
                "specific_power": 42.0
            },
            "dynamic": {
                "z1": 0.42500000000000004
            },
            "input_file": "perms/bd08bc0b0dde87bcf82bca0b2d727bfb/model_727bfb.inp",
            "_": {
                "model": {},
                "data_hash": "bd08bc0b0dde87bcf82bca0b2d727bfb",
                "data_file": "perms/bd08bc0b0dde87bcf82bca0b2d727bfb/data.olm.json"
            },
            "_scale": {
                "sequences": [],
                "artifact_contract": "UNKNOWN",
                "material_lumping": null
            }
        },
        {
            "static": {
                "addnux": 2,
                "xslib": "v7.1"
            },
            "comp": {
                "fuel": {
                    "density": 0.0,
                    "uo2": {
                        "iso": {
                            "u235": 4.5,
                            "u238": 95.5,
                            "u234": 1e-20,
                            "u236": 1e-20
                        }
                    },
                    "_input": {
                        "state": {
                            "enrichment": 4.5
                        },
                        "density": 0.0
                    }
                }
            },
            "time": {
                "burndata": [
                    {
                        "power": 42.0,
                        "burn": 238.0952380952381
                    },
                    {
                        "power": 42.0,
                        "burn": 476.19047619047626
                    },
                    {
                        "power": 42.0,
                        "burn": 714.2857142857143
                    }
                ],
                "final_burnup_padding_gwd": 0.0
            },
            "state": {
                "coolant_density": 0.4,
                "enrichment": 4.5,
                "specific_power": 42.0
            },
            "dynamic": {
                "z1": 0.42500000000000004
            },
            "input_file": "perms/bd08b1481472ddc02d711a0cd671c460/model_71c460.inp",
            "_": {
                "model": {},
                "data_hash": "bd08b1481472ddc02d711a0cd671c460",
                "data_file": "perms/bd08b1481472ddc02d711a0cd671c460/data.olm.json"
            },
            "_scale": {
                "sequences": [],
                "artifact_contract": "UNKNOWN",
                "material_lumping": null
            }
        },
        {
            "static": {
                "addnux": 2,
                "xslib": "v7.1"
            },
            "comp": {
                "fuel": {
                    "density": 0.0,
                    "uo2": {
                        "iso": {
                            "u235": 1.5,
                            "u238": 98.5,
                            "u234": 1e-20,
                            "u236": 1e-20
                        }
                    },
                    "_input": {
                        "state": {
                            "enrichment": 1.5
                        },
                        "density": 0.0
                    }
                }
            },
            "time": {
                "burndata": [
                    {
                        "power": 42.0,
                        "burn": 238.0952380952381
                    },
                    {
                        "power": 42.0,
                        "burn": 476.19047619047626
                    },
                    {
                        "power": 42.0,
                        "burn": 714.2857142857143
                    }
                ],
                "final_burnup_padding_gwd": 0.0
            },
            "state": {
                "coolant_density": 0.7,
                "enrichment": 1.5,
                "specific_power": 42.0
            },
            "dynamic": {
                "z1": 0.5
            },
            "input_file": "perms/ad0827e3d9880653da1feda802c2c174/model_c2c174.inp",
            "_": {
                "model": {},
                "data_hash": "ad0827e3d9880653da1feda802c2c174",
                "data_file": "perms/ad0827e3d9880653da1feda802c2c174/data.olm.json"
            },
            "_scale": {
                "sequences": [],
                "artifact_contract": "UNKNOWN",
                "material_lumping": null
            }
        },
        {
            "static": {
                "addnux": 2,
                "xslib": "v7.1"
            },
            "comp": {
                "fuel": {
                    "density": 0.0,
                    "uo2": {
                        "iso": {
                            "u235": 3.5,
                            "u238": 96.5,
                            "u234": 1e-20,
                            "u236": 1e-20
                        }
                    },
                    "_input": {
                        "state": {
                            "enrichment": 3.5
                        },
                        "density": 0.0
                    }
                }
            },
            "time": {
                "burndata": [
                    {
                        "power": 42.0,
                        "burn": 238.0952380952381
                    },
                    {
                        "power": 42.0,
                        "burn": 476.19047619047626
                    },
                    {
                        "power": 42.0,
                        "burn": 714.2857142857143
                    }
                ],
                "final_burnup_padding_gwd": 0.0
            },
            "state": {
                "coolant_density": 0.7,
                "enrichment": 3.5,
                "specific_power": 42.0
            },
            "dynamic": {
                "z1": 0.5
            },
            "input_file": "perms/ad08d699a29e7df779b92d6e63850a24/model_850a24.inp",
            "_": {
                "model": {},
                "data_hash": "ad08d699a29e7df779b92d6e63850a24",
                "data_file": "perms/ad08d699a29e7df779b92d6e63850a24/data.olm.json"
            },
            "_scale": {
                "sequences": [],
                "artifact_contract": "UNKNOWN",
                "material_lumping": null
            }
        },
        {
            "static": {
                "addnux": 2,
                "xslib": "v7.1"
            },
            "comp": {
                "fuel": {
                    "density": 0.0,
                    "uo2": {
                        "iso": {
                            "u235": 4.5,
                            "u238": 95.5,
                            "u234": 1e-20,
                            "u236": 1e-20
                        }
                    },
                    "_input": {
                        "state": {
                            "enrichment": 4.5
                        },
                        "density": 0.0
                    }
                }
            },
            "time": {
                "burndata": [
                    {
                        "power": 42.0,
                        "burn": 238.0952380952381
                    },
                    {
                        "power": 42.0,
                        "burn": 476.19047619047626
                    },
                    {
                        "power": 42.0,
                        "burn": 714.2857142857143
                    }
                ],
                "final_burnup_padding_gwd": 0.0
            },
            "state": {
                "coolant_density": 0.7,
                "enrichment": 4.5,
                "specific_power": 42.0
            },
            "dynamic": {
                "z1": 0.5
            },
            "input_file": "perms/ad08bb6ee6cc90681541714d0bc14f84/model_c14f84.inp",
            "_": {
                "model": {},
                "data_hash": "ad08bb6ee6cc90681541714d0bc14f84",
                "data_file": "perms/ad08bb6ee6cc90681541714d0bc14f84/data.olm.json"
            },
            "_scale": {
                "sequences": [],
                "artifact_contract": "UNKNOWN",
                "material_lumping": null
            }
        },
        {
            "static": {
                "addnux": 2,
                "xslib": "v7.1"
            },
            "comp": {
                "fuel": {
                    "density": 0.0,
                    "uo2": {
                        "iso": {
                            "u235": 1.5,
                            "u238": 98.5,
                            "u234": 1e-20,
                            "u236": 1e-20
                        }
                    },
                    "_input": {
                        "state": {
                            "enrichment": 1.5
                        },
                        "density": 0.0
                    }
                }
            },
            "time": {
                "burndata": [
                    {
                        "power": 42.0,
                        "burn": 238.0952380952381
                    },
                    {
                        "power": 42.0,
                        "burn": 476.19047619047626
                    },
                    {
                        "power": 42.0,
                        "burn": 714.2857142857143
                    }
                ],
                "final_burnup_padding_gwd": 0.0
            },
            "state": {
                "coolant_density": 1.0,
                "enrichment": 1.5,
                "specific_power": 42.0
            },
            "dynamic": {
                "z1": 0.575
            },
            "input_file": "perms/af08dcb8984790062d8017df266f413b/model_6f413b.inp",
            "_": {
                "model": {},
                "data_hash": "af08dcb8984790062d8017df266f413b",
                "data_file": "perms/af08dcb8984790062d8017df266f413b/data.olm.json"
            },
            "_scale": {
                "sequences": [],
                "artifact_contract": "UNKNOWN",
                "material_lumping": null
            }
        },
        {
            "static": {
                "addnux": 2,
                "xslib": "v7.1"
            },
            "comp": {
                "fuel": {
                    "density": 0.0,
                    "uo2": {
                        "iso": {
                            "u235": 3.5,
                            "u238": 96.5,
                            "u234": 1e-20,
                            "u236": 1e-20
                        }
                    },
                    "_input": {
                        "state": {
                            "enrichment": 3.5
                        },
                        "density": 0.0
                    }
                }
            },
            "time": {
                "burndata": [
                    {
                        "power": 42.0,
                        "burn": 238.0952380952381
                    },
                    {
                        "power": 42.0,
                        "burn": 476.19047619047626
                    },
                    {
                        "power": 42.0,
                        "burn": 714.2857142857143
                    }
                ],
                "final_burnup_padding_gwd": 0.0
            },
            "state": {
                "coolant_density": 1.0,
                "enrichment": 3.5,
                "specific_power": 42.0
            },
            "dynamic": {
                "z1": 0.575
            },
            "input_file": "perms/af087aca4e881319de40df724ee962b4/model_e962b4.inp",
            "_": {
                "model": {},
                "data_hash": "af087aca4e881319de40df724ee962b4",
                "data_file": "perms/af087aca4e881319de40df724ee962b4/data.olm.json"
            },
            "_scale": {
                "sequences": [],
                "artifact_contract": "UNKNOWN",
                "material_lumping": null
            }
        },
        {
            "static": {
                "addnux": 2,
                "xslib": "v7.1"
            },
            "comp": {
                "fuel": {
                    "density": 0.0,
                    "uo2": {
                        "iso": {
                            "u235": 4.5,
                            "u238": 95.5,
                            "u234": 1e-20,
                            "u236": 1e-20
                        }
                    },
                    "_input": {
                        "state": {
                            "enrichment": 4.5
                        },
                        "density": 0.0
                    }
                }
            },
            "time": {
                "burndata": [
                    {
                        "power": 42.0,
                        "burn": 238.0952380952381
                    },
                    {
                        "power": 42.0,
                        "burn": 476.19047619047626
                    },
                    {
                        "power": 42.0,
                        "burn": 714.2857142857143
                    }
                ],
                "final_burnup_padding_gwd": 0.0
            },
            "state": {
                "coolant_density": 1.0,
                "enrichment": 4.5,
                "specific_power": 42.0
            },
            "dynamic": {
                "z1": 0.575
            },
            "input_file": "perms/af08437c992e0cdade2528cd510d77df/model_0d77df.inp",
            "_": {
                "model": {},
                "data_hash": "af08437c992e0cdade2528cd510d77df",
                "data_file": "perms/af08437c992e0cdade2528cd510d77df/data.olm.json"
            },
            "_scale": {
                "sequences": [],
                "artifact_contract": "UNKNOWN",
                "material_lumping": null
            }
        }
    ],
    "static": {
        "addnux": 2,
        "xslib": "v7.1"
    }
}

See also: scale.olm.generate.root.jt_expander

type

object

properties

  • template

Template

type

string

  • static

Static

type

object

  • states

States

type

object

  • comp

Comp

anyOf

type

object

type

object

additionalProperties

type

object

  • time

Time

type

object

  • artifact_contract

default

null

allOf

#/$defs/ScaleArtifactContract

  • dynamic

Dynamic

default

null

anyOf

type

object

additionalProperties

type

object

type

null

  • _type

Olm Redirect Type

const

scale.olm.generate.root:jt_expander

$defs

  • ScaleArtifactContract

ScaleArtifactContract

type

string

enum

TRITON, Polaris

scale.olm.generate.root.jt_expander.json