Public API (using qsdsan without biosteam)¶
QSDsan is built on top of BioSTEAM
and BioSTEAM’s thermodynamic library Thermosteam. QSDsan re-exports the parts of those libraries that a typical user needs.
Everything below is reachable through import qsdsan as qs.
Streams, chemicals, and thermo configuration¶
Name |
Notes |
|---|---|
|
Thermosteam |
|
Thermosteam |
|
Compiled chemical package. |
|
BioSTEAM |
|
Multiphase stream. |
|
Placeholder used during unit initialization. |
|
Set the thermodynamic property package. |
|
Get the active thermo package. |
|
Get the active components. |
|
Process-wide settings object (e.g. |
|
Display/diagram defaults (dark mode, stream labels, graphviz format, etc.). |
|
Build a custom thermo package. |
Units, systems, and TEA¶
Name |
Notes |
|---|---|
|
Base BioSTEAM unit (see also |
|
Process system ( |
|
System evaluated across multiple operating scenarios. |
|
Base class for facility units. |
|
Collect outside-battery-limit (facility) units of a system. |
|
Techno-economic analysis ( |
|
Uncertainty/sensitivity model. |
|
Model metrics and parameters. |
|
Dynamic-simulation scope. |
|
Reporting helpers (e.g. |
Utilities and costing globals¶
Name |
Notes |
|---|---|
|
Heating/cooling agents (e.g. |
|
Electricity; set the price via |
|
Define a custom heating/cooling agent. |
|
Reset utilities to their defaults. |
|
Mapping of stream-based utility prices. |
|
Chemical Engineering Plant Cost Index; a live, settable view of BioSTEAM’s
|
|
Lookup table of CEPCI values by year. |
Note
qs.CEPCI is the only cost/utility global that needs a special accessor: it
is a settable property that writes through to BioSTEAM’s CE. The others
above are the same objects/classes as in BioSTEAM, so setting an attribute on
them (for example qs.PowerUtility.price or qs.settings.thermo) updates
the shared, process-wide state directly.
Reactions¶
The full reaction API is re-exported: qs.Reaction (qs.Rxn),
qs.ParallelReaction (qs.PRxn), qs.SeriesReaction (qs.SRxn),
qs.ReactionItem (qs.RxnI), qs.ReactionSet (qs.RxnS), and
qs.ReactionSystem (qs.RxnSys).
BioSTEAM-inherited units¶
qsdsan wraps many BioSTEAM units (mixers, splitters, pumps, tanks, heat
exchangers, distillation, flash) under qsdsan.unit_operations.bst. Several
BioSTEAM units that qsdsan does not customize are also surfaced there as raw
re-exports so systems can be built without import biosteam:
from qsdsan.unit_operations import bst as su
su.IsenthalpicValve, su.Stripper, su.MolecularSieve, su.BatchBioreactor,
su.VacuumSystem, su.Boiler, su.BoilerTurbogenerator, su.ChilledWaterPackage,
su.CoolingTower, su.SolidsCentrifuge
See the unit operations reference for the full list.
Helper functions in qsdsan.utils¶
Name |
Notes |
|---|---|
|
Convert density to molar volume. |
|
Convert molar volume to density. |
|
The |
|
Column labels for a |
|
Index labels for |
What is intentionally not re-exported¶
A small set of lower-level, unit-authoring tools are deliberately left in
biosteam (import them directly when you need them):
biosteam.units.design_tools(e.g.PressureVessel,flash_vessel_design,size_batch,material_densities_lb_per_ft3)biosteam.exceptions(e.g.DesignError,DesignWarning,bounds_warning)
These are needed only when building custom unit operations, and they fall outside
the common surface qsdsan aims to cover.