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.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"
}
}
}
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
},
{
"power": 42.0,
"burn": 714.2857142857143
}
]
},
"state": {
"coolant_density": 0.4,
"enrichment": 1.5,
"specific_power": 42.0
},
"dynamic": {
"z1": 0.42500000000000004
},
"input_file": "perms/fa08bb42fdb91b139331131b6766abc6/model_66abc6.inp",
"_": {
"model": {},
"data_hash": "fa08bb42fdb91b139331131b6766abc6",
"data_file": "perms/fa08bb42fdb91b139331131b6766abc6/data.olm.json"
}
},
{
"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
},
{
"power": 42.0,
"burn": 714.2857142857143
}
]
},
"state": {
"coolant_density": 0.4,
"enrichment": 3.5,
"specific_power": 42.0
},
"dynamic": {
"z1": 0.42500000000000004
},
"input_file": "perms/fa088af42141544837b9d141abf4e750/model_f4e750.inp",
"_": {
"model": {},
"data_hash": "fa088af42141544837b9d141abf4e750",
"data_file": "perms/fa088af42141544837b9d141abf4e750/data.olm.json"
}
},
{
"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
},
{
"power": 42.0,
"burn": 714.2857142857143
}
]
},
"state": {
"coolant_density": 0.4,
"enrichment": 4.5,
"specific_power": 42.0
},
"dynamic": {
"z1": 0.42500000000000004
},
"input_file": "perms/fa0888e23ef7c2f92a8630ebcfcd347c/model_cd347c.inp",
"_": {
"model": {},
"data_hash": "fa0888e23ef7c2f92a8630ebcfcd347c",
"data_file": "perms/fa0888e23ef7c2f92a8630ebcfcd347c/data.olm.json"
}
},
{
"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
},
{
"power": 42.0,
"burn": 714.2857142857143
}
]
},
"state": {
"coolant_density": 0.7,
"enrichment": 1.5,
"specific_power": 42.0
},
"dynamic": {
"z1": 0.5
},
"input_file": "perms/ea08b0ad09bf274e5d74728151807007/model_807007.inp",
"_": {
"model": {},
"data_hash": "ea08b0ad09bf274e5d74728151807007",
"data_file": "perms/ea08b0ad09bf274e5d74728151807007/data.olm.json"
}
},
{
"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
},
{
"power": 42.0,
"burn": 714.2857142857143
}
]
},
"state": {
"coolant_density": 0.7,
"enrichment": 3.5,
"specific_power": 42.0
},
"dynamic": {
"z1": 0.5
},
"input_file": "perms/ea083a8fb17fecf9b48949f40a02cc73/model_02cc73.inp",
"_": {
"model": {},
"data_hash": "ea083a8fb17fecf9b48949f40a02cc73",
"data_file": "perms/ea083a8fb17fecf9b48949f40a02cc73/data.olm.json"
}
},
{
"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
},
{
"power": 42.0,
"burn": 714.2857142857143
}
]
},
"state": {
"coolant_density": 0.7,
"enrichment": 4.5,
"specific_power": 42.0
},
"dynamic": {
"z1": 0.5
},
"input_file": "perms/ea087983ec1a7da5d8cc7832d74d0fb1/model_4d0fb1.inp",
"_": {
"model": {},
"data_hash": "ea087983ec1a7da5d8cc7832d74d0fb1",
"data_file": "perms/ea087983ec1a7da5d8cc7832d74d0fb1/data.olm.json"
}
},
{
"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
},
{
"power": 42.0,
"burn": 714.2857142857143
}
]
},
"state": {
"coolant_density": 1.0,
"enrichment": 1.5,
"specific_power": 42.0
},
"dynamic": {
"z1": 0.575
},
"input_file": "perms/ec08c7209d25dec2c07b12dcb9cb0f30/model_cb0f30.inp",
"_": {
"model": {},
"data_hash": "ec08c7209d25dec2c07b12dcb9cb0f30",
"data_file": "perms/ec08c7209d25dec2c07b12dcb9cb0f30/data.olm.json"
}
},
{
"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
},
{
"power": 42.0,
"burn": 714.2857142857143
}
]
},
"state": {
"coolant_density": 1.0,
"enrichment": 3.5,
"specific_power": 42.0
},
"dynamic": {
"z1": 0.575
},
"input_file": "perms/ec0833c2d8d11327ac8e21b72eeb2bf4/model_eb2bf4.inp",
"_": {
"model": {},
"data_hash": "ec0833c2d8d11327ac8e21b72eeb2bf4",
"data_file": "perms/ec0833c2d8d11327ac8e21b72eeb2bf4/data.olm.json"
}
},
{
"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
},
{
"power": 42.0,
"burn": 714.2857142857143
}
]
},
"state": {
"coolant_density": 1.0,
"enrichment": 4.5,
"specific_power": 42.0
},
"dynamic": {
"z1": 0.575
},
"input_file": "perms/ec082a327fbc279adef14db1dd51a018/model_51a018.inp",
"_": {
"model": {},
"data_hash": "ec082a327fbc279adef14db1dd51a018",
"data_file": "perms/ec082a327fbc279adef14db1dd51a018/data.olm.json"
}
}
],
"static": {
"addnux": 2,
"xslib": "v7.1"
}
}
See also: scale.olm.generate.root.jt_expander
type |
object |
|||
properties |
||||
|
Template |
|||
type |
string |
|||
|
Static |
|||
type |
object |
|||
|
States |
|||
type |
object |
|||
|
Comp |
|||
anyOf |
type |
object |
||
type |
object |
|||
additionalProperties |
type |
object |
||
|
Time |
|||
type |
object |
|||
|
Dynamic |
|||
default |
null |
|||
anyOf |
type |
object |
||
additionalProperties |
type |
object |
||
type |
null |
|||
|
Olm Redirect Type |
|||
const |
scale.olm.generate.root:jt_expander |
|||