Output¶
Result formatting, export, and reporting.
output ¶
Output formatting and reporting for HYRR results.
Converts result dataclasses to DataFrames, text summaries, and Excel files. Uses Polars for DataFrame operations.
result_to_polars ¶
Convert a StackResult to a Polars DataFrame.
One row per isotope per layer with columns: - layer_index, isotope, Z, A, state, half_life_s - production_rate, activity_Bq, saturation_yield_Bq_uA - energy_in_MeV, energy_out_MeV, delta_E_MeV, heat_kW
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
result
|
StackResult
|
Complete simulation result. |
required |
Returns:
| Type | Description |
|---|---|
DataFrame
|
Polars DataFrame with all isotope results. |
layer_result_to_polars ¶
Convert a single LayerResult to a Polars DataFrame.
Same columns as result_to_polars but for a single layer (no layer_index).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
layer_result
|
LayerResult
|
Single layer simulation result. |
required |
Returns:
| Type | Description |
|---|---|
DataFrame
|
Polars DataFrame with isotope results for one layer. |
depth_profile_to_polars ¶
Convert depth profile to a Polars DataFrame.
Columns: depth_cm, energy_MeV, dedx_MeV_cm, heat_W_cm3.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
layer_result
|
LayerResult
|
Single layer simulation result. |
required |
Returns:
| Type | Description |
|---|---|
DataFrame
|
Polars DataFrame with depth profile data. |
activity_timeseries_to_polars ¶
Convert activity time series to a Polars DataFrame.
Columns: time_s, time_hours, activity_Bq, activity_GBq.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
isotope_result
|
IsotopeResult
|
Single isotope simulation result. |
required |
Returns:
| Type | Description |
|---|---|
DataFrame
|
Polars DataFrame with activity time series. |
result_summary ¶
Generate a text summary similar to ISOTOPIA output format.
Includes beam parameters, layer info, and isotope production table.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
result
|
StackResult
|
Complete simulation result. |
required |
Returns:
| Type | Description |
|---|---|
str
|
Formatted text string. |
purity_at ¶
Calculate radionuclidic purity at a specific cooling time.
Purity = A_target / A_total at the specified cooling time.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
result
|
StackResult | LayerResult
|
StackResult or LayerResult containing isotope data. |
required |
cooling_time_s
|
float
|
Cooling time after end of irradiation [s]. |
required |
isotope
|
str
|
Name of target isotope. |
required |
Returns:
| Type | Description |
|---|---|
float
|
Purity as fraction (0.0 to 1.0). |
Raises:
| Type | Description |
|---|---|
ValueError
|
If the isotope is not found in the results. |
result_to_excel ¶
Export results to an Excel file.
Writes the main isotope table to the file. Requires the xlsxwriter
package (optional dependency of Polars).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
result
|
StackResult
|
Complete simulation result. |
required |
path
|
str
|
Output file path (.xlsx). |
required |