///|
pub fn example_chemreport() -> ChemReport {
report(
{
report_id: "CHEM-REP-001",
title: "Absorber Solvent Circulation Check",
process_unit: "amine_absorber",
scenario: "steady_state_baseline",
generated_at: "2026-07-28T10:30:00+08:00",
tool_version: "moonbit-chemreport/0.1.0",
},
"Unifies assumptions, equations, results, warnings, and traceable sources for an absorber-side calculation review.",
[
{
statement: "Feed composition is treated as stable during the reporting window.",
impact: "Short-term tray loading fluctuation is ignored in the duty estimate.",
},
{
statement: "Lean solvent density is fixed at the current lab certificate value.",
impact: "Pump sizing cross-check stays deterministic across exports.",
},
],
[
{
name: "Acid gas inlet flow",
value: "18.2",
unit: Some("kmol/h"),
note: Some("Taken from the reconciled mass balance sheet."),
},
{
name: "Lean solvent circulation",
value: "92.5",
unit: Some("m3/h"),
note: Some("Operator target before the absorber train split."),
},
{
name: "Pump differential pressure",
value: "0.74",
unit: Some("MPa"),
note: None,
},
],
[
{
name: "Circulation factor",
expression: "L/G = solvent_flow / acid_gas_flow",
explanation: "Used as the top-level screening metric for report consumers.",
},
{
name: "Pump shaft power",
expression: "P = Q * ΔP / η",
explanation: "Shown in report form so downstream tooling can reuse the same evidence trail.",
},
],
[
{
name: "Circulation factor",
value: "5.08",
unit: Some("m3/kmol"),
status: Normal,
note: Some("Inside the current operating envelope."),
},
{
name: "Column pressure drop review",
value: "within screen",
unit: None,
status: Flagged,
note: Some(
"Flagged for operator review because the tray differential trend moved faster than expected.",
),
},
{
name: "Estimated shaft power",
value: "19.0",
unit: Some("kW"),
status: Estimated,
note: Some("Efficiency fixed at 0.88 for this report layer example."),
},
],
[
{
code: "REPORT-TRACE-00",
severity: Info,
summary: "Every export embeds traceable source and assumption context.",
action: "Keep this structure stable for downstream tooling and snapshots.",
},
{
code: "LEAN-TEMP-01",
severity: Warning,
summary: "Lean solvent temperature is trending 2.4 C above the baseline.",
action: "Review exchanger fouling before using the same snapshot for optimization.",
},
{
code: "PUMP-NPSH-03",
severity: Critical,
summary: "Do not reuse the report for field intervention if the suction head check is stale.",
action: "Refresh operating data before any safety-critical decision.",
},
],
[
{
label: "Plant operating standard OPS-ABS-14",
kind: Standard,
url: Some("https://example.invalid/ops-abs-14"),
license: Some("Internal reference"),
note: Some("Defines the circulation factor operating band."),
},
{
label: "Laboratory density certificate",
kind: Datasheet,
url: None,
license: Some("Company internal"),
note: Some("Density snapshot used for the pump estimate."),
},
{
label: "Acid gas treating handbook excerpt",
kind: Literature,
url: Some("https://example.invalid/acid-gas-handbook"),
license: Some("Quoted under fair-use for internal engineering review."),
note: Some("Used only as a narrative explanation source."),
},
{
label: "Absorber troubleshooting memo",
kind: Internal,
url: None,
license: Some("Internal reference"),
note: Some("Historical note attached for operator context."),
},
],
[
{
title: "Context",
kind: Context,
body: "This report is shaped as an integration layer rather than a process model so reactor, distillation, or mass-balance packages can emit the same structure.",
},
{
title: "Safety note",
kind: Safety,
body: "Warnings stay explicit in every export format, which is useful when reports are attached to operator or review workflows.",
},
{
title: "Method summary",
kind: Method,
body: "The report layer intentionally keeps formulas human-readable so the same data can flow into README examples, CLI previews, and CI snapshots.",
},
{
title: "Maintainer notes",
kind: Notes,
body: "This sample is sized as an integration contract for future MoonBit chemical packages rather than as a closed single-use calculation script.",
},
],
["chemical-engineering", "reporting", "integration"],
)
}