Skip to content

Add 2D-GRM #3

@schmoelder

Description

@schmoelder

In CADET-Core, a 2D General Rate Model is available. Moreover, other 2D units are being developed, such as MCT. To support these in CADET-Process, ports need to be added to the FlowSheet.

This is, however, not trivial since flow rates are treated differently in CADET-Process than they are in CADET-Core. While in CADET-Core, all flows between units are always explicitly specified, in CADET-Process they are automatically determined in a preprocessing routine. Here, the concept of output_state is introduced which specifies the ratio of all outgoing flows. Consider the following FlowSheet:

graph LR
    A[Inlet] -->B[Column]
    B -->|0.5| C[Outlet A]
    B -->|0.5| D[Outlet B]
Loading

The flow entering the column is split 50/50 to Outlets A and B, respectively.

A 2D unit has multiple inlet ports. Here there are several options:

  • Option 1: Expose the ports on FlowSheet level s.t. users can explicitly define flow from certain upstream units to the corresponding port and then from the outlet port to specific downstream units.
  • Option 2: Treat the inlet as a single port which distributes all incoming flow according to some internal input_state which is recombined at the column outlet before being sent to downstream units according to the unit's output_state

Option 1 is more flexible but also more complicated to setup. Also, what's the notion of an output_state here? Should there be an output state per port?

Option 2 is simpler but also less flexible.

  • Handling of nrad in CadetAdapter
  • Translation between nrad and nports
  • Adding nrad to create_LWE
  • Tests

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions