COCO - CAPE-OPEN to CAPE-OPEN simulation environment

COULIS: CAPE-OPEN Unit-operation Logger (Inter-process Server)

COULIS is a unit operation wrapper. It exposes itself as a CAPE-OPEN unit operation and can therefore be loaded into flowsheet simulations. At the moment it is initialized, it will ask you which unit operation you will want to run. COULIS will load that the specified unit operation, and forward all traffic between the unit operation and the simulation environment.

At the moment you insert the unit operation (or load it from file) COULIS will ask you for a log file (*.olg). If a log file is specified, all communication between the simulation environment and the unit operation will be logged. As the unit operation terminates, you are prompted to view the log file. Logging is intended for development and debugging purposes: to pinpoint communication problems between simulation environments and unit operations and see how they can be resolved.

If you do not choose a log file, the unit operation will still function but will not be logged.

Because COULIS will need to know which unit operation to use after reloading a simulation from file, COULIS interferes with the loading and storing of a unit operation. It adds information of its own. To that extent it exposes an ICapePersistStreamInit interface (independent on whether the chosen unit operation exposes ICapePersistStreamInit or ICapePersistStream). The choice of unit operation is made at the InitNew member of ICapePersistStreamInit; if for any reason this member is not called, the COULIS unit operation will not function and the log file will tell you so. The logged information on persistence is the communication between the simulation environment and COULIS (not between COULIS and the actual unit operation).

COULIS is part of OATS.


64-bit vs 32-bit Unit Operations

If you want to log 32-bit CAPE-OPEN Unit Operations, use the 32-bit version of COULIS. If you want to log 64-bit CAPE-OPEN Unit Operations, use the 64-bit version of COULIS.