Comprehensive tools for all major pulping processes with BAT compliance checking and mass/energy balances.
H-factor calculation for cooking intensity, digester mass balance, Kappa number prediction, recovery boiler efficiency, black liquor solids monitoring, and BAT compliance validation for chemical recovery cycles.
calculate_h_factor()
digester_mass_balance()
predict_kappa()
recovery_efficiency()
black_liquor_solids()
check_bat_compliance()
Yield calculations for paper-grade and dissolving-grade pulp, SOโ recovery management, and Mg/Ca base chemical recovery optimization with environmental emission constraints.
calculate_yield()
so2_recovery()
base_cycle_optimize()
dissolving_grade_check()
Energy intensity modeling for SGW, PGW, TMP, and CTMP processes. Heat recovery potential analysis, specific energy optimization, and freeness target achievement.
energy_intensity_sgw()
energy_intensity_pgw()
tmp_optimization()
ctmp_chemical_load()
heat_recovery_potential()
De-inking efficiency calculations, yield loss tracking through screening/cleaning stages, stickies management, and BAT water usage compliance for recycled fibre lines.
deinking_efficiency()
yield_loss_tracking()
stickies_management()
water_usage_bat()
Silica management for straw/bagasse pulping, soda recovery optimization, and specialized cooking parameter calculations for agricultural residue fibres.
silica_management()
soda_recovery()
cooking_params()
AI-driven bleaching sequence optimizer supporting dynamic stage configuration (D, EOP, A, O, P, Z stages), chemical cost minimization, and multi-target quality achievement.
run_optimization_from_config()
build_sequence()
simulate_stage()
cost_analysis()
quality_prediction()
from pap_ai_era.pulping.kraft import (
calculate_h_factor,
digester_mass_balance,
predict_kappa
)
h_factor = calculate_h_factor(
temperature_celsius=165.0,
time_minutes=45.0
)
print(f"H-Factor: {h_factor:.2f}")
balance = digester_mass_balance(
wood_input_tpd=1200,
chip_moisture_pct=50.0,
kappa_target=30
)
print(f"Pulp output: {balance['pulp_tpd']:.1f} tpd")
print(f"Black liquor: {balance['bl_solids_tpd']:.1f} tpd")
kappa = predict_kappa(
h_factor=h_factor,
ea_charge_pct=18.5,
sulfidity_pct=25.0
)
print(f"Predicted Kappa: {kappa:.1f}")
from pap_ai_era.pulping.sulphite import (
calculate_yield,
so2_recovery
)
result = calculate_yield(
grade="paper",
wood_species="spruce",
cooking_temp=140,
cooking_time_hr=6.5
)
print(f"Yield: {result['yield_pct']:.1f}%")
print(f"BAT compliant: {result['bat_compliant']}")
recovery = so2_recovery(
flue_gas_so2_ppm=2500,
scrubber_efficiency=0.95
)
print(f"SOโ recovered: {recovery['recovered_kg_hr']:.1f} kg/hr")
from pap_ai_era.bleaching import run_optimization_from_config
config = {
"stages": [
{
"name": "D0",
"chemicals": [
{"name": "ClO2", "min_dosage": 5,
"max_dosage": 30, "cost": 0.80}
]
},
{
"name": "EOP",
"chemicals": [
{"name": "NaOH", "min_dosage": 5,
"max_dosage": 25, "cost": 0.40},
{"name": "H2O2", "min_dosage": 2,
"max_dosage": 15, "cost": 0.60}
]
},
{
"name": "D1",
"chemicals": [
{"name": "ClO2", "min_dosage": 2,
"max_dosage": 15, "cost": 0.80}
]
}
],
"targets": {
"brightness": 90.0,
"kappa": 2.0,
"viscosity_min": 800
},
"input_pulp": {
"kappa": 12.0,
"brightness": 35.0,
"viscosity": 1100
}
}
result = run_optimization_from_config(config)
print(f"Optimal cost: ${result['total_cost']:.2f}/ton")
print(f"Achieved brightness: {result['brightness']:.1f} ISO")
print(f"Chemical dosages: {result['dosages']}")