New Unit Procedures
Improvements in Operations
Features Added Since the Original Release
Prior releases of SuperPro Designer allowed the association of CIP Skids to CIP operations and SIP Panels to SIP operations. Those were the only two types of auxiliary equipment that we allowed to be engaged directly with operations. Starting with this release, the concept is extended to include:
In fact, the concept has been generalized and extended to allow even for user-defined types of auxiliary equipment (e.g. Chromatography Skids, or Blowers, etc.). To address this need, a new entry now exists under Databanks: Auxiliary Equipment.... If selected, the following dialog appears:
The CIP Skid, SIP Panel, Transfer Panel and Vacuum Pump are considered
as the 'built-in' types and cannot be edited or deleted. Users can define
their own to extend the use of the concept for their own needs. For example,
by clicking on the button, the following interface
appears that allows the user to define a "Sanitization Unit"
as a new auxiliary equipment type:
Unlike in previous releases of SuperPro Designer, instantiations of specific auxiliary equipment can be introduced first and then selected to engage in an operation that requires them. For example, if you think you may need to engage a transfer panel to a specific transfer operation, you can define the panel first from the interface that appears under : Tasks / Other Resources / Auxiliary Equipment... :
After selecting 'Transfer Panel' in
the drop-down menu above, the following dialog appears:
The dialog that appears depends on the type of auxiliary equipment that is being introduced (at least the first property page). All auxiliary equipment types have several properties in common such as a name, purchase cost and the possibility of associating with them consumables that may be spent during their operation. Also, all auxiliary equipment types need to be assigned a variable that is to be used to characterize their 'size'. For example, transfer panels use volumetric throughput to report their size. This size variable is used to estimate a cost for the equipment based on a user-defined cost model. For the four built-in types, users can introduce the auxiliary equipment in either 'Design Mode' or 'Rating Mode' (similar to primary equipment). If the auxiliary equipment is in 'Design Mode' SuperPro can manage to size them based on the most demanding engagement(s) by operation(s) that are associated with it. For equipment introduced in 'Rating Mode', SuperPro will report any use where the associated operation(s) require more 'capacity' than the size specified. Please note that for user-defined types (such as the Sanitization Unit above), SuperPro cannot calculate a demand for each engagement of the unit, and therefore, all instances of user-defined auxiliary equipment must be in 'Rating Mode. SuperPro will of course, monitor the availability or scheduling conflict of all auxiliary equipment units. Please note that all auxiliary equipment types may be assigned a max number of simultaneous engagements that can be greater than one (e.g. some CIP Skids can service more than one equipment at the same time, or some transfer panels can be hooked up and accomplish more than one material transfers in parallel use).
As a final note, if you can't find the auxiliary equipment that you need when you need it, you can also introduce it from the operation that needs it (e.g. CIP skid from a CIP operation, Transfer Panel from a Transfer-in/out or Charge operation etc.).
Many operations require material to be transferred (Charge, Transfer
In, Transfer Out, Wash, etc.). In all such operations, users may opt to
engage a specific transfer panel that is designated to accomplish the
material transfer. This assignment is made at the "Labor Etc."
tab of the operation's i/o dialog (see below):
You can select a transfer panel from the list that have currently been introduced in the process model. If you don't have enough transfer panels you can introduce a new right there, by clicking on the button.
SuperPro Designer has a common interface for handling emissions/venting
from many operations: the 'Vent/Emissions tab' of the i/o simulation data
dialog. One of the choices on the dialog is the pressure policy choice:
- Open Vent, or
- Pressure Control
If the latter is chosen, user is supposed to provide the pressure setting of the relief valve. When a user supplies a value that is below the setting for atmospheric pressure, the interface expands to show extra controls that can accommodate the engagement of a vacuum pump (presumably in operation to maintain the necessary vacuum). The power consumed to maintain vacuum can either directly set by the user at this level, or after pressing on the button, another dialog appears that will have more elaborate options for the program to calculate the power consumed.
Please note that there are several other operations that either vent
vapors or simply have an option to set the operating pressure without
having the 'Vent/Emissions Tab'. For example, a Drying operation. In those
operations, once the user specifies an operating temperature below atmospheric,
the 'Oper. Conds' tab changes (expands) to accommodate the same extra
controls that allow for the engagement of a vacuum pump (see below):
Besides the four built-in auxiliary equipment types which can be engaged
only to operations that can make use of them, the rest of the user-defined
types can be associated with any operation
through the "Labor Etc." tab (see below):
To engage a "Blower" (for example) with this operation, click on "Auxiliary Equipment" and from the drop-down, tree-like display select the equipment that is needed ("Blower" in this case). If you can't find the equipment needed (e.g. a Blower), then from the drop-down menu, select "Blower". You will be prompted to provide the specs for a new blower equipment, and you will be able to select it for use with this operation.
Previous releases of SuperPro Designer used to generate a report only
focused on CIP skid / SIP Panel utilization. This report has now been
expanded to include all auxiliary equipment engaged in a process model.
Its postfix is "_AUX" and it has several sections:
► Auxiliary Equipment Summary: a table with all equipment engaged reporting its type, number of units, size, unit price and total price.
► Occupancy / Utilization Details: at table where each equipment reports its Relative Load (RL), Relative Utilization (RU) and for each operation engaged the start & end time, occupancy time.
► Sizing Details: For the four built-in types reports the demand for size from each operation using the equipment.
► Cleaning Material Consumption: For CIP skids only (totals and per operation breakdown).
► Cleaning Utility (HX Agent) Consumption: For SIP panels only (totals and per operation breakdown).
► VAC Power Consumption: For Vacuum Pumps only (totals and per operation breakdown).
► Consumables: For any consumable spent during engagement of any auxiliary equipment type.
Note that the auxiliary equipment summary table can also optionally be included in the main equipment report in a dedicated section.
Since one-size-fits-all doesn't quite work for everyone many of the
procedure icons now come in different i/o configurations (in terms on
number of input and/or output ports). This offers the flexibility for
some to use icons that may be a bit larger but feature several more input
and/or output ports that may be needed to describe a long list of operations
that may be executed and involve multiple material transfers in and out
of the holding vessel. At other times, when most of the ports of the procedure
are idle, users may prefer to display icons with fewer ports. Switching
from one configuration to another is easy. Simply right-click on the unit
procedure's icon and if that procedure supports multiple i/o configurations
you will see this entry:
Note that if there are streams connected to the icon, they will be reconnected to the replacement icon, provided there are enough ports. Furthermore, if the icon being replaced has a stream connected to its default input (or output) port and the port is not used directly by any of the operations included in the procedure (so, the procedure relies in the auto-initialization or auto-removal feature of SuperPro to move material in or out of the procedure), the stream will be re-connected to the new default input (or output) port. If streams are connected to ports that are not available in the new icon, an error message will be displayed. In that case, users can click-and-drag streams to lower index ports (higher up) and then attempt the transformation to a lower in/out port icon. Clearly, that will never be an issue if we are installing a icon with more ports than the original.
Starting with this version, SuperPro Designer users can organize and
search all their past model files in an easy and intuitive way. The Process
Library is built on top of the pre-existing concept of the Process Database.
The Process Database was supposed to allow users to deposit (export) .spf
files and then search to locate a file that had a certain feature (e.g.
a certain keyword that was associated with the file at the time that it
was exported). Up to this version, the searching ability was limited and
addition of models (.spf) could only be done one-by-one. Starting with
this version, populating the process library and searching the library
has become much friendlier.
The process library requires as a setting, a designated folder that will be the location in your file area, where you wish to accumulate or the deposited .spf files that the library knows about. Once this Process Library Root Folder (or PLRF for short) is set, then you can populate the library in either one of two ways:
Open an .spf file that you currently have saved anywhere on your PC's file area, then select Databank/Processes/Export/Update Current Process... ( or click on ), or
Simply copy the file from its current location either directly under the PLRF or in any one of its subfolders (if you wish to keep your .spf files in the library organized). For example, if you are a consultant and work with several clients, you can opt to organize your files by client, then under each client's folder, you can create subfolders by topic. It really is up to you how you wish to organize your collection of .spf files under the PRLF. After you have copied enough files to get your library working, just select Databanks/Processes/Sync Process DB... (or click on ). Depending on how many files exist under the PLRF this may anywhere from a few seconds to a few minutes. However, since the syncing is happening in the background, you can continue working with SuperPro Designer on other tasks.
1. You can abort the syncing process at any time by selecting Databanks/Processes/Abort Sync Process DB (or click on ).
2. If any errors were encountered during the syncing process (e.g. a file was corrupt or incompatible with your version of SuperPro Designer), the process will not stop or popup any messages. Instead, after the syncing is finished, the button will be active. If you click on it, a window will popup that will display which errors were encountered and pinpoint the files behind the issues.
When you have deposited several files in your Process Library, you can
search to locate a model that had a certain feature. For example, you
may want to search for a process file that had independently-cycling procedures;
or a model that included a specific chemical in it (by name, or by company-name,
or by CAS Number). Or perhaps you wish to locate a process model that
included a specific stock mixture AND a particular type of unit procedure
(e.g. Cone-Drying). All of that is now very easily done using the new
Process Library interface.
When you are attempt to export a given .spf file (currently opened for viewing/editing in SuperPro Designer), by selecting Databank/Processes/Export-or-Update Current Process... you will see the following dialog:
The most important fields to be specified on this dialog are:
a) The record name that the library will maintain as a tag (or reference) to this model (must be unique)
b) The location under the Process Library Root Folder that a copy of the model will be kept
If required or convenient, the user can associate with the record one or more keywords that could be used at a later point from the search interface to identify the file. Also, the comments field can contain some descriptive text related to the content of the process model. Any words contained in the text can also be searched for later from the "Search" tab.
The Process Library interface can be shown (or hidden away) by clicking
on this button:
shown on the main toolbar.
The Process Library's "View Tab"
From this tab you can:
- View the contents of the process library (all records deposited in the database)
- View the status of the file that corresponds to each record (present and available, present but locked, missing, or being edited)
- Once a record (line) is selected, you can view its properties (record name, filename & location, date it was last saved, etc.); also you can view and edit the comments and keywords associated with the process record in the database. The buttons under the green highlighted area above, allow you to do just that provided the file is there and available (i.e., not locked) and that it is not currently being edited.
- You can delete one or more records by selecting them and then click on the "delete" (or even "delete all") button.
The Process Library's "Search Tab"
From this tab you can search the contents of your process library to locate one (or more) .spf files (process models) that meet your search criteria.
First you compose a single search criterion by selecting:
For example, if you select "Process" as the entity the properties
you can search for are:
Name....................... a String
File Name ................ a String
File Version No ........ a Number (double)
Date Last Modified ... a Date
Main Author ............ a String
Comments .............. a String (full or partial matches allowed)
Keywords ............... a String
Main Product .......... a String
Operating Mode ...... Batch / Continuous
Batch Size ............. a Number
Product Rate .......... a Number
Recycle Loops ........ Y / N
Energy Recovery .... Y / N
Staggered Equip. .... Y / N
Ind. Cycling UPs ..... Y / N
Once you compose your search criterion, you click on "Search" button and the table below displays all records found that match the specified criterion. If you select one of the found records, and click on the button, the associated .spf file will be opened for viewing/editing.
If more than one results were found to meet your search criterion, you can compose another search criterion and then click on "Refine Search". This will only search among the previous result set to see if any matches your next criterion (essentially applying an implicit 'AND' on the two criteria). If you compose a new criterion and click on "Expand Search", then the results will be augmented by any new records that match the next criterion (essentially applying an implicit 'OR' between the two criteria).
If at any point in time more files were added and/or removed in the
PLRF, select the Databanks/Processes/Synch...
to request that the library contents be updated. This command will result
a) Any records in the Process Database that do NOT have any referencing process model files (.spf) will be expunged
b) Any .spf files under the PLRF without a record in the process database, will be deposited; if a record previously existed, then it will be updated if the last modification date of the file is later than the one kept by the database.
A new toolbar can be shown that makes all the Process Library related commands reading available.
The above (just like any other toolbar) can be shown (or hidden) from the View/Process Library Toolbar menu or by right-clicking over any other toolbar and selecting "Process Library".
It is quite common when modeling one's own process, to require the introduction of a component that does not have a record of physical properties in any of the databases that SuperPro offers as sources (System DB / User DB / DIPPR or PPDS). If you can approximate the behavior of that component with another, you can use that as source for all (or most) of physical properties. Oftentimes, the starting mold can be just Water. There are several situations though, especially in domains like Food Industries or Biotech products where the component we need to introduce does not behave like water at all. It can be something like Biomass, Solids, Fats, Lipids, Wood, etc. For starters their normal boiling point must be set to something much higher of that of 'Water'. Then, most notably, the component's VLE behavior is very much unlike Water. The NBP as predicted from its vapor pressure estimation correlation won't match the specified value (if 'Water' was used as a source, its Antoine-based estimate of course at 1 atm would be 100°C but for component such as Lipids, Fat, etc. that value would be set to a much higher value. In previous releases of SuperPro, the user was forced to set all properties of a component (incl. Antoine coefficients) and if some of the components properties were unreliable (typically those describing the component in VLE calculations), the user would have to take measures to prevent the component from appearing such calculations: e.g., never set that component as 'emitted' or always add it to the set of components "excluded form VLE calcs"". Still, such an approach was error prone. Starting with this release, we allow a user to explicitly declare that its vapor pressure estimation parameters are "Unknown" (see below).
As soon as that is declared, all Antoine coefficients are zeroed out.
Furthermore, the default shortcut criterion setting for this component will not be allowed to be "Vapor Pressure (Antoine)". Also, this component is checked as "Excluded" from any Non-Ideal VLE modeling calculations (and the user can't restore it). Of course, this component cannot be checked as 'Emitted' in any Vent/Emissions tab (since its Antoine coefficients are zero) and if it was tagged as 'Emitted' in an older file, the tag will be removed.
A very common source of inaccurate calculations, sometimes leading to non-converging simulations, is the use of component property values that either are incorrectly estimated or complete (but unfortunate) guesses. This is most often related to vapor properties, or properties required to calculate V/L distribution of a component either alone or in a mixture of other components. Starting with this release of SuperPro Designer, we do not allow users to register component that have questionable Antoine coefficients and/or liquid Cp(T) estimates and/or gaseous Cp(T) estimates. Specifically, the program will not accept a component as valid if its set of Antoine coefficients can't predict its normal boiling point within a 10°C (or K) of accuracy. If a user does not know the Antoine coefficients, and doesn't expect the component to be set as 'Emitted' or participate in rigorous VLE calculations, it's better to declare that a component does NOT have any reliable vapor pressure properties (see previous note). Also, the program will not accept a set of liquid/solid Cp coefficients that will yield a negative value for liquid/solid Cp at 10° below its normal boiling point. Similarly, it will reject a set of gaseous Cp coefficients, if they predict a negative value for Cp at 10° above the normal boiling point. Negative values for Cp(T) predictions are common sources for incorrect energy balances.
SuperPro Designer began adding options for handling dry mass content of stream and/or equipment contents in late releases of v10. Pure components present in a process models could be tagged as contributing to the dry mass of a stream and SuperPro, in return, would calculate the total dry mass of streams and/or contents (based on the stream's composition). Starting with this release, two improvements have been added:
The Pure Component designation can be saved in the component database (so that it can automatically apply in all future engagements)
The Dry Mass content of a component may not be 100% but only portion of its mass to account for modeling of substances that are partly dry matter and partly water (e.g. orange peel.
The pure component 's definition dialog (IDs tab) look now as follows:
Furthermore, in the release, several operations can now be setup to achieve performance targets based on the dry mass (or total solids) content of a stream (or equipment content). For example, the Wash operation, the Screw Pressing operation and the 2-way Component Splitting operation. These operation-specific improvements will be covered later in section (D) below.
When modeling processes where dry-solid content is important, users
may wish to see the total dry mass or dry mass % on streams and/or stream
contents. A new option has been added that allows the display of such
indices (see below):
Please note that this option to be active (and visible) the user must have activated the definition of dry mass in pure components (part of the component registration dialog - see below)
Starting with this release, users can choose to display component concentrations
(in units of their choice) either exclusively (in each cell) of the stream
summary table, or as a secondary value (in parenthesis) next to the amount
of each component (see below):
Please note that component concentrations will be shown only for each individual section (Liq/Sol or Vapor) since the concept of concentration in a mixed phase stream (or contents) doesn't apply.
Having the ability to provide your own ('User-Defined') cost model that predicts the purchase cost of equipment based on a key measure of its size ('Volume', 'Throughput', 'Power', etc.) has been a key feature of SuperPro Designer since its original release. Starting with this release, instead of having to specify a user-defined model for each equipment used in a process model, users can store their model in the User DB and then simply assign it to another equipment. Cost models can be directly defined in the User DB first or be created in the User DB based on an existing set of data already assigned to a process equipment in a model. To define a cost model in the User DB directly, select Equipment / User-Defined Cost Models... The following interface will appear:
First you must select the equipment type that the cost model applies
(e.g. Fermentor, Blending Tank, etc.) - shown in yellow highlight above
- . Then, you must click on the "Create New" button (in green
highlight above), and the familiar power-model in ranges definition dialog
will appear. The cost model must be given a name (unique for the equipment
type that it applies). That would be the name used when users need to
engage it for a given equipment in a process model. For example, to engage
the "FermentorCostModel3" as the preferred model to be used
for costing a fermentor in a model, you can visit the Equipment Dialog
and go to the "Purchase Cost" tab. After selecting the "User-Defined
Cost Model" option and then the "Parameters..." button,
the usual User-Defined Cost Model definition dialog appears. This time,
instead of specifying the ranges and the pair of parameters (Qo and a)
for each range, click on the "Link to Cost Model" checkbox,
and then on the model selection button .
All cost models defined for this equipment type will be listed. Select the one you wish to apply for this equipment and all the parameters will be automatically copied and shown in the cost model definition dialog (and greyed out so that they are no longer editable - see below).
If you need to use that user-defined cost model as a basis, but still need to make modifications, you can uncheck the "Link to Cost Model" box and all fields will become editable. Once you change the model, if you wish to keep it for later use (in the same or other .spf file), you can save it in the User DB under a different name.
Sometimes reporting the consumption of material is appropriate to be
in mass units and sometimes in volume units. Instead of specifying the
choice as part of the consumption chart, SuperPro Designer now allows
you to save the choice as part of the component (or mixture) definition
so that it always applies in any of the models that the ingredient is
The choice should also be directly affecting the unit purchase (or selling)
price and/or the waste treatment (or disposal) cost. For instance, if
you specify that a given ingredient (like "Process Water" above)
should calculate and present its consumption on charts on a per-mass basis,
it only make sense to have its price supplied on a per-mass basis as well.
Even though SuperPro will not enforce that consistency, users should make
sure that it applies. The choice on this dialog, will affect the units
that will be shown when selecting to view the consumption of this material
on a chart:
For example, if the consumption basis was chosen to be on a 'volume basis' then in the dialog above, SupePro would have presented volume and volumetric rate units.
One of frequent requests we have had in the past is to have the ability to better size storage tanks used commonly for storing buffers. Such storage tanks are servicing multiple operations and at different stages of a process and they often need to be replenished in order to have sufficient volume for all the demands during a batch. Since it is quite common for the replenishing to be timed in such times that the tank may be also engaged in delivering volume for an operation, in order to properly find the adequate tank volume to accommodate the volume required throughout a batch, one would need to track the vessel contents as they change when a "Fill" operation is simultaneously active with one (or more) "Draw" operations. SuperPro Designer is a sequential modular simulator. As such, if the user included in a procedure's queue first a fill and then multiple draws, after simulation, the equipment contents of the tank will be calculated at the beginning and end of each operation. Therefore, after the fill, the holding volume of the tank should be demanded to hold the entire amount during the fill and before any draws (that follow in the procedure sequence) have started. Starting with this release, we have provided procedures hosted by any type of tank (Stirred Vessel, Blending Tank, etc.) a new option, available from their right-click (context) menu:
As seen above, the tank levels can either be saved in an ASCII file, or in an Excel Formatted file, or, users can designated an Excel range (in an existing spreadsheet) where the values will be deposited at the end of simulation. This is quite handy, as you can generate a chart (with the tank level) and paste it back onto the .spf flowsheet; the chart will be dynamically updated at the end of simulation. For more details on how to define and use Excel links with SuperPro Designer, please consult one of the example files included with the software named "DynamicCharts" under the Miscellaneous collection of files.
When editing the heat transfer agent characteristics in the User Database, it is often preferred to set the properties (Tin & Tout, mass-to-energy factor, price, etc.) in conveniently chosen units. Previous releases of the software forced users to always provide the parameters in SI units. This has now been relaxed (see below):
We constantly add more example models that demonstrate the application
of the software in various part of the industry. With this new release,
we have included the following simulation models:
Please note that all examples models that come with SuperPro Designer, are copied during installation in the Auxiliary Folder Location.
1. Mango Refinery: This
example simulates a biorefinery that utilizes mango kernels to produce
energy and specialty bioproducts such as oil, proteins, fiber and starch.
It is based on the original work of Prof. Amit Arora at IIT Bombay, India.
Mangos are one of the major agricultural commodities in tropical countries with India ranking first among mango producing countries. Mangos are popular choices for processing because of their taste, high content in carotenoids and ascorbic acid and their high availability during the summer season. India alone exported 36,000 metric tons (MT) of fresh mangos and 129,000 MT of mango pulp.
The processing of mangos leads to a generation of 24-40% w/w of the fruit as waste. Peels, the major byproduct of mango processing, contain valuable nutrients such as polyphenols, pectin, sugars and natural pigments. Mango kernels, on the other hand, can be utilized for the extraction of lipids, starch and protein.
You can find this example and a detailed description of the process
model under the "Food Processing" group of the "Examples"
folder installed (by default) under the Auxiliary
2. Cassava Refinery: This example presents a cassava processing facility that fractionates cassava roots to produce tapioca starch and pulp and hydrolyses part of the starch to produce beta-cyclodextrins. Cassava is the third largest source of carbohydrates in the developing countries with tropical climates after rice and corn. Tapioca is a basic food ingredient in the food industry. Cassava and its products are consumed daily by over half-a-billion people. However, it can't be consumed unprocessed because it contains toxic components. Starch is the predominant compound of the roots. Cassava processing fractionates the starch, the fibers (and other insoluble) and the solubles (mainly toxic compounds). Tapioca starch is the basic product of cassava processing. It is widely used as thickening agent with similar functionality to corn and wheat starch. You can find this example and a detailed description of the process model under the "Food Processing" group of the "Examples" folder installed (by default) under the Auxiliary Folder.
3. Penicillin: This example captures the production of penicillin, one of the first antibiotics produced by the pharmaceutical industry. Penicillin is a secondary metabolite of certain species of Penicillum fungi. It is produced when growth of the fungus is inhibited by stress. The production model shown here, is based on data that is available in the patent / technical literature and guided by our team's experience in modeling in this field. You can find this example and a detailed description of the process model under the "Pharmaceuticals" group of the "Examples" folder installed (by default) under the Auxiliary Folder.
4. Comparison Between Single-Use vs Stainless Steel Equipment in an MAB Process: Monoclonal antibodies (mAbs) are a fast-growing segment of the pharmaceutical industry. Different mAbs have a variety of therapeutic applications due to their ability to block specific molecular functions in cells or to modulate cellular signalling pathways. In addition, mAbs have the ability to bind to cancer cell-specific antigens in order to induce an immune response against the target cancer cell. Furthermore, mAbs have very high molecular specificity, meaning that they only bind to relevant molecules or cell structures which reduces the potential for side effects. As a result, mAbs are currently used to treat various types of cancer, rheumatoid arthritis, psoriasis, severe asthma, macular degeneration, multiple sclerosis and other diseases. The market size for mAbs in 2015 was around $85 billion and it is projected to reach $140 billion by 2024. In this example, we attempt to evaluate the impact of disposables (single-use equipment) on the material and consumable usage, as well as the overall capital and operating cost. A couple of different cases will be presented. You can find this example and a detailed description of the process model under the "Pharmaceuticals" group of the "Examples" folder installed (by default) under the Auxiliary Folder.
SuperPro Designer keeps a master order for:
- Unit Procedures
- Equipment and Auxiliary Equipment Resources
This order is used when displaying scheduling charts (like the Equipment Occupancy Chart for equipment resources or the Operations Gantt Chart, for procedure/operations in a recipe). By default, SuperPro will order the procedures based on the time of first engagement (Start time); similarly equipment will be ordered based on the time that the earliest procedure (if there are several) starts. However, users may decide to provide their own order based on either alphabetical naming or some other preferred choice (custom). The interface for rearranging the order of procedures can be shown when selecting Preferences / Procedure Order... ; for equipment, when selecting Preferences / Equipment / Order...
Starting with this release, moving entries up and down the list when the mode of ordering is set to "custom" has become much easier since drag-and-move is supported. Simply select the procedure (or range of procedures) in the table and drag them up or down the list. Release when you are satisfied with the new location in the order.
Similar option is available while viewing the equipment ordering dialog (see below):
Many times it happens to have a component already participating in your
simulation model, and not realize that the "Is Reported in Emissions"
property is not checked (see below). If that's the case, the program doesn't
automatically turn the check of
"Is Emitted" on in all Vent/Emission tables and you must do it manually. If you decide to include this component in all the Vent/Emissions tables, then you should visit the "Pollutant" tab of its Physical Properties dialog, and turn that option ON. When you exit the component registration dialog you will be asked if you want to turn on the "Is Emitted" check-box on all previously existing operations. If you answer "Yes", then this is exactly what will happen. Also, from then on, every new operation created (e.g. a "Charge") that features a Vent/Emissions tab and table, it will show that component with the "Is Emitted" checked as well. The opposite will happen if "Is Included in the Emissions" feature was checked and now the users chooses to uncheck it. There will be a question to offer to uncheck the component from the "Is Emitted" category in all Vent/Emissions tables automatically.
This new feature will be a significant time-saver for modelers working exclusively to produce emission and/or EPA/MACT reports.
The COM Engine is an extremely flexible
way for users to access the internal variables of a simulation to either:
Present outputs as their end users prefer to see them (if our built-in reports don't accommodate that view) or,
Set values of key parameters and restart
the simulation to perform 'what-if' scenarios and explore cause-and-effect
variations in key input or output parameters of the process.
There are already hundreds of variables (related to operations, equipment, procedures, streams, and the process itself) that are available to be accessed from other applications (Excel, C#/C++ etc.). Our engineering team regularly re-evaluates what is available and adds more options to satisfy SuperPro users.
In this version, some of the most important additions are:
Previously when users wanted to enumerate over some list of a section
(e.g. the list of unit procedures), they could use the StartEnumeration()
and GetNexTimeName() with container ID ContainerTypeID.section_CID, and
list ID ListTypeID.unitProcID and one argument (the section's name), but
the assumed branch was "Main Branch". If a process had more
than one branches enumerating over a section's UPs in another branch was
NOT possible. Starting with this release, you can fetch all the branch
names of the document (containerTypeID.flowsheet_CID, listTypeID.branch_CID),
fetch all section names for each branch with a similar enumeration but
now use containerTypeID.branch_CID and listTypeID.sectionCID and finally
you can enumerate over all unit procedures in a section of branch using
this (new) pair of enumeration calls:
StartEnumeration2(pos, ListTypeID.unitProcID, ContainerTypeID.section_CID, "branchName", "sectionName") and
GetNextItemName2(pos, unitProcName, ListTypeID.unitProcID, ContainerTypeID.section_CID, "branchName", "sectionName")
A similar story follows for the consumables belonging to different consumable categories in a process model.
With the new list ID 'ListTypeID.consumableCategoryID' and using the document (flowsheet) as the container, users can collect all the consumable categories registered in a process model:
StartEnumeration(pos, ListTypeID.consumableCategoryID, ContainerTypeID.flowsheet_CID,
GetNextItemName(pos, "ConsumableCategoryName", ListTypeID.consumableCategoryID, ContainerTypeID.flowsheet_CID).
Then for each consumable category name, they can enumerate over all
the consumables in it:
StartEnumeration(pos, ListTypeID.consumableID, ContainerTypeID.consumbleCategory_CID, "consumableCategoryName" and
GetNextItemName(pos, consumableName, ListTypeID.consumableID, ContainerTypeID.consumbleCategory_CID, "consumableCategoryName")
Finally, in an analogous way, users can find out the list of all auxiliary equipment types, and all the auxiliary equipment names in each auxiliary equipment type:
StartEnumeration(pos, ListTypeID.auxEquipTypeID, ContainerTypeID.flowsheet_CID,
GetNextItemName(pos, "AuxEquipType", ListTypeID.auxEquipTypeID, ContainerTypeID.flowsheet_CID).
and then, for each "AuxEquipType", you can enumerate over all the members (instances) of auxiliary equipment names in it:
StartEnumeration(pos, ListTypeID.auxEquipID, ContainerTypeID.auxEquipType_CID, "AuxEquipTypeName") and
GetNextItemName(pos, auxEquipName, ListTypeID.auxEquipID, ContainerTypeID.auxEquipType_CID, "auxEquipName")
General Purpose VIDs
For all Streams (to be used with Set/GetStreamVarVal()):
compMassConc_VID.................. (Get only) a component's mass concentration (in kg/m3 or g/L)
compMoleConc_VID................... (Get only) a component's mole concentration (in kmol/m3 or mol/L).
For all StockMixtures (to be used with Set/GetIngredientVarVal()):
compMassFrac_VID.................. (Get only) a component's mass fraction (0-1)
compMoleFrac_VID................... (Get only) a component's mole fraction (0-1)
For Process (Flowsheet) (to be used within Set/GetFlowsheetVarVal()):
numberOfUP_VID.......... (Get only) retrieves the number of unit procedures in a process model.
lastSavedDate_VID....... (Get only) retrieves the date that the process
model was last saved.
approvalDate_VID......... Is No Longer Supported (removed).
Also, we have added new enumeration list IDs for container type 'section_CID'
This will enable the enumeration of all unit procedures in a given section (consult 'StartEnumeration' or 'StartEnumeration2' and 'GetNextItemName' for more details on how to enumerate over all list members.
For Procedures (to be used within
initialFillRatio_VID....... (Get only) retrieves the ratio of liq./solid contents to equip. volume at the start of the procedure.
finalFillRatio_VID....... (Get only) retrieves the ratio of liq./solid contents to equip. volume at the end of the procedure.
maxFillRatio_VID....... (Get only) retrieves the maximum fill ratio in a procedure (among all operations)
For Equipment (to be used within Set/GetEquipmentVarVal()):
maxFillRatio_VID....... (Get only) retrieves the maximum fill ratio equipment (among all procedures)
equipConstrMat_VID...(Set/Get) : GetEquipmentVarVal() will only succeed if the provided material (as a string) exists in the Equipment Materials DB (System or User); if not, then it will be ignored (since the program won't be able to retrieve the corresponding material factor).
consumableConsumRate_VID .... (Set/Get) : sets the rate of consumption of a consumable associated with the use of equipment.
consumableReplFreqBasis_VID ... (Set/Get): sets the replacement frequency for an equipment consumable
For Dead End Filters
noCartridgeSlots_VID ... (Set/Get) the number of cartridge slots
noMaxCatridgesSlots_VID ... (Set/Get) max number of cartridge slots
For Tray Dryer Equipment
trayToTrayVerticalDistance_VID......... (Get/Set) the vertical distance between trays
For Nutsche Filter (to be used within Set/GetEquipmentVarVal()):
heatCapacity_VID....... (Get only) retrieves mass times the heat capacity of the equipment (vessel) - m*Cp
The following VIDs are related to specific operations (to be used within GetSetOperationVarVal()):
For Any (All) Operations
heatingDuty_VID_VID....... (Get only) retrieves the heat transfer load of any heat exchanging operation.
bIsVentOn_VID ...............(Set/Get) sets or clears the "Is Vent On" flag
bIsCompEmitted_VID ...............(Set/Get) sets or clears the "Is Emitted" flag for a given component
condenserTemp_VID .......... (Set/Get) sets or gets the condenser temperature if attached to emission/vent line.
emissionFracs_VID ........... (SetOperValVal2/GetOperVarVal2 with second argument the component name).
ventPress_VID .................. (Set/Get) the vent pressure on the vent/emission line.
auxHeatingAgentRate_VID... (Set/Get) the heating rate of the heating utility (as set on the Labor etc. tab)
auxCoolingAgentRate_VID ... (Set/Get) the cooling rate of the auxiliary utility (as set on the Labor etc. tab)
For Cloth Filtration Operations
solventRetained_VID......... (Get/Set) the fraction of solvent retained in the cake
For SIP Operations
agentAmount_VID......... (Get/Set) amount of steam used in a SIP operation
For Custom Mixing Operations
customMixSpec_VID... (Get/Set) the custom specification type
massFlow_VID............ (Get/Set) the mass output mass flow specification (ratio or value)
outTemp_VID............. (Get/Set) the output temperature target
designComp_VID......... (Get/Set) the component with a target output composition
outCompConc_VID...... (Get/Set) the output component concentration target
outCompMassFrac_VID..(Get/Set) the output component mass fraction
For Flow Adjusting Operations
bMainOutFlowSetByProcess_VID.. (Get/Set) the "Main Output Flow Set by Process" flag
bMainOutMassFlowSet_VID.............. (Get/Set) the "Main Output Flow Set By User" flag
massFlow_VID............................... (Get/Set) the main output mass flow value
volFlow_VID.................................. (Get/Set) the main output volumetric flow value
maxNoIterations_VID...................... (Get/Set) the max number of iterations
relErrorTol_VID.............................. (Get/Set) the relative error tolerance
bAddInCompositionMatched_VID....... (Get/Set) the "Match Process-in Stream Composition" flag
For Screw Pressing Operations
particulateSolidsRecovery_VID....... (Get/Set) the particulate solids fraction in the cake.
compRemovalFrac_VID................. (Get/Set) the component removal fraction.
compRetentionFrac_VID............... (Get/Set) the retained fraction of a component.
bSetCompRemovalToFiltrate_VID... (Get/Set) the "Is Removed" flag for a specific component.
throughput_VID .......................... (Get/Set) the operating throughput
(per unit, per cycle if the procedure is in batch mode).
bPerformRxnCalcs_VID...................(Get/Set) the "Perform Reaction prior to Separation flag.
For All Solids-Handling Operations (2-Way Component Splitting, Bulk Washing, Screw Pressing)
compIsSolid_VID................... (Get/Set) the "Is Solid" flag for a specific component.
compIsParticulateSolid_VID..... (Get/Set) the "Is Particulate Solid" flag for a specific component.
bSetRefStrToalSolidsFrac_VID......... (Get/Set) the option to set the total or particulate fraction of selected output stream
refStrTotalSoldsFrac_VID ...... (Get/Set) the total solids fraction of the selected output stream
refStrParticulateSolidsFrac_VID ... (Get/Set) the particulate solids fraction of the selected output stream
For 2-Way Component Splitting Operations
bConsiderSolids_VID............... (Get/Set) the "Consider Solids" flag that enables solids-related options.
For MA Column Wash, MA Column Elute, Column Wash (Det), Column Elute (Det) Operations
releaseFrac_VID............... (Get/Set) the release (or sometimes called 'yield') percentage for a component.
For Cloth Filtration Operations (Nutsche, Plate & Frame)
maxCakeThickness_VID............... (Get/Set) the max cake thickness allowed.
For Bulk Washing Operations
approachToEquilibrium_VID.... (Get/Set) the approach to equilibrium fraction
productTemp_VID................. (Get/Set) the product stream temperature
approachToAmbientTemp_VID. (Get/Set) the approach to ambient temperature factor
equilibriumTemp_VID............ (Get/Set) the equilibrium temperature
bConsiderSolids_VID............... (Get/Set) the "Consider Solids" flag that enables solids
throughput_VID .......................... (Get/Set) the operating throughput (per unit, per cycle if the procedure is in batch mode).
For Generic Wash Operations
relativeWashVolume2_VID......... (Get/Set) the wash volume per equipment volume ratio
For Mixer-Settler, Leaching Operations
compClassification_VID............ (Get/Set) the component classification
compRecoveryYield_VID............ (Get/Set) the component recovery yield value
totalSoluteRecoveryYield_VID... (Get/Set) the total solute recovery in liquid phase
totalCarrierLoss_VID............... (Get/Set) total carrier loss in liquid phase
totalSolventLoss_VID.............. (Get/Set) total solvent loss in solid phase
amountOfRetainedSolution_VID.. (Get/Set) the amount of retained solution in solid phase
mainSoluteComponent_VID....... (Get/Set) the main soluble component
For Concentration Operations (in membrane filtration procedures)
powerDissipationFrac_VID ... (Set/Get) the power dissipation to heating in operations consuming power
exitTemperature_VID .... (Set/Get) the exit temperature of the operation
For Flush Operations (in membrane filtration procedures)
absoluteFlowrate_VID ... (Set/Get) the wash flowrate for the operation
relativeFlushVolume_VID ... (Set/Get) the relative wash volume
For Various Column Operations
Currently several COM access functions that require the specification of a component, they were asking for the component index as an identifier; the identifier has been changed to component name instead (in accordance with all the rest of the COM access functions). The operations with COM interfaces affected include:
- Elute (in a Chromatography Column Procedure, Detailed)
- Column Wash (in a Chromatography Column Procedure, Detailed))
- Column Strip (in a Chromatography Column Procedure, Detailed)
For a more detailed list of all available variable ID's (or VIDs for short) for a particular object in a simulation file, please consult the E-Book or the online help. Please note that the manual does NOT cover the topic of COM engine and its options.
When a batch (or semi-continuous) procedure operates in a continuous
flowsheet, it is assumed that there's a holdup tank that retains material
to be processed by the procedure. The amount of time that the material
is being collected must be at least as much as the length of the complete
cycle of the procedure. However, if more than one equipment sets are available,
then that is not necessarily a restriction. For instance, we could accumulate
(or continuously feed) an GAC adsorption column for as long as the "Load"
operation is active, then switch to another column while the first is
being regenerated. This will give the "apparent" impression
that the column is operating continuously. In order to enforce this policy,
we've introduced a new option for the "Holdup Time" calculation
Note that the program will automatically calculate how many extra sets of units are needed to accomplish the requested policy.
Previously in SuperPro Designer, the program had a group of preset values
for enthalpy value calculations:
- Tref (defaulted to 0 ºC)
- Pref (defaulted to 1 bar)
- Ref-State (Vapor or Liquid; defaulted to Liquid)
Starting with this release, the program assumes a different state for every component; the selection is based the relative value between the Normal Boiling Point (NBP) and the Enthalpy Reference Temperature (still defaulting at 0 ºC). If the NBP is greater than the Enthalpy Reference Temperature then the reference state for the component will be used 'Liquid'; otherwise, 'Vapor'. Making this assumption, along with changing phases (and thus engaging the Enthalpy of Vaporization) at each component's normal boiling point where the calculation error is usually the smallest, leads to more accurate enthalpy change calculations (esp. when phase changes occur) and thus it leads to more accurate heating/cooling load calculations.
When users chose to display on the time axis just day-and-month, users in Europe (or other parts of the world with date formats that differ from US standard presentation of MM/DD/YY) would see the date in an unfamiliar format. Starting with this release, SuperPro Designer will respect local formats when showing dates on the Time Axis of Scheduling Charts.
Independently cycling procedures repeat their own sequence with a cycle time different than the main batch. Up until this release, such procedures could not share equipment resources. Starting with v11, they can.
Given that v11 has put a lot of priority into making auxiliary equipment
(like Transfer Panels, Vacuum Pumps, CIP Skids, etc.) a more integral
part of a process model, it is now also allowing to account for their
purchase cost (if it is so desired). As a reminder, the 'primary' or 'built-in'
auxiliary equipment types (currently four: CIP Skids, SIP Panels, Transfer
Panels and Vacuum Pumps) can be introduced in 'Design' or 'Rating' mode
- just like main equipment resources. Thus, the model could be sizing
them in a fashion similar to main equipment, or if they are of known size,
the model will be making sure that their utilization does not exceed their
size specification. Either way, SuperPro Designer keeps track of their
purchase cost, and if allowed by the user, it will include that cost to
the total purchase cost (PC) of the project. The following dialog that
appears when selecting Cost Options...
from the flowsheet's right-click (command) menu, allows users to
fine tune which auxiliary equipment should be included in the total purchase
Producing the value of IRR for a project requires iterative calculations. Previous releases didn't produce a number with enough accuracy. This has been improved in this release.
Given the greater application of SuperPro Designer in energy generating models, users required the introduction of a new unit for power : Mega-Watt (MW). Industrial size power generating turbines measure their power production typically in MW.
Several new Unit Procedure Families have been introduced.
Since v10 users were offered the option to be able to swap one procedure
type (e.g. "Batch Vessel Procedure in a Seed Fermentor" with
"Batch Vessel Procedure in an Air-Lift Fermentor"; or a "Cont.
Stoichiometric Reaction in a CSTR" with a "Kinetic Reaction
in a PFR". The families of procedures supported up to now were:
Batch Liquid Storage
Batch Solids Storage
Continuous Liquid Storage
Continuous Solids Storage
Starting with v11 the following extra families have been introduced:
- Electric Heating
- Electric Cooling
- Heat Exchanging
Drying, that includes:
- in a Double Cone
- in a Cone Screw Dryer
- in a Sphere Dryer
- in a Spray Dryer
- in a Fluid Bed Dryer
- in a Drum Dryer
- in a Rotary Dryer
- Microfiltration (Batch)
- Microfiltration (Feed-and-Bleed)
- Ultrafiltration (Batch)
- Ultrafiltration (Feed-and-Bleed)
- Reverse Osmosis (Batch)
- Reverse Osmosis (Feed-and-Bleed)
- in a Dead-End Filter
- in a Nutsche Filter
- in a Plate & Frame Filter
- in a Rotary Vacuum Filter
Liquids (Near) Transport
- by Centrifugal Pump
- by Diaphragm Pump
- by Gear Pump
- by Peristaltic Pump
Gases (Near) Transport
- by Compressor
- by Fan
- by Vacuum Pump
Solids (Near) Transport
- by Belt Conveyor
- by Pneumatic Conveyor
- by Screw Conveyor
- by Pneumatic Elevator
- by Truck (Bulk)
- by Truck (Discrete)
- by Train
- by Sea
- by Plain
Equipment resources can be introduced either in 'Design Mode' or in 'Rating Mode'. When in 'Design Mode', SuperPro will calculated from each operation carried out in the equipment the 'size' requirements (e.g. equipment volume if the operation involves transfer of material) and in the end will set the size of the equipment based on the maximum requirements. Users are supposed to provide a "max avail size" (e.g. "Max Volume") so that if the requirement exceeds that value, SuperPro will determine that multiple units are needed (the Number of Units variable is increased). When in 'Rating Mode', this "max avail size" variable is not needed and never used, but up to now, it used to be shown and greyed out creating some confusion as to its purpose: some users thought it was calculated, or that it still presented a limit for the actual size provided by user. Since none of that is the case, starting with this release, we altogether hide the "max avail size" variable (and related controls) when the equipment is in 'Rating Mode'.
Site and equipment in sites is a consistent way to enforce user's models to engage the corporate resources in a consistent manner. Once a section is allocated to a site (as described in the User DB), then users can allocate equipment resources utilized in that section of a process model to actual site equipment records kept in the site description of a manufacturing site. Starting with this release, both the max- and the min- liquid-to-vessel-volume ratio (LTVVR) that may be required by the vessel in order to operate properly are kept in the equipment's record. Max LTVVR may be a limit (e.g. 90%) required for safe operation and proper venting. A Min LTVVR may be a limit (e.g. 10%) required for the constant agitation provided by the vessel while in operation.
parameters can now be set in a process model that is not allocated to
any db-site, on the Equipment Data... dialog (it's an option from the
context menu of a procedure). Please note that individual operations also
have their own limits for min- and max- LTVVR requirements which may be
stricter than what the equipment expects. For example, a specific operation
that is expecting to have heavy emissions, may require an 80% max LTVVR.
Or, an agitation operation may require a 20% min LTVVR. The application
will make sure that user's specifications in operations will not violate
the limits expected by the vessel. Also, when the vessel's settings are
changed, the application will automatically check to verify that all operations
hosted by the equipment resource comply by the new settings and if they
are not, it will offer the option to automatically change the settings
in order to do so. Note that the equipment's settings for min- and max-
LTVVR can be changed by either the user visiting the Equipment Dialog
and changing the value of max LTVVR or min LTVVR, or by the user allocating
the equipment resource to a database equipment that keeps its own values.
Finally, it should be mentioned that you can lift the enforcing of min
LTVVR in operations by clearing the check box next to the operation's
setting on the Volumes tab:
Occasionally SuperPro Designer wants to echo some messages
to report some (unusual) setting and possibly informing the user about
corrective action taken. For example, when opening older files, occasionally,
the application needs to switch out some option(s) that are no longer
supported, or some settings that are currently not allowed.
Since corrective action will be automatically taken (e.g. to apply a new setting equivalent to the old, etc.) no action is needed by the user in response to such messages, and that's why they are called 'informative only'. The icon that is displayed in the first column of the warnings/errors pane is:
If the message isn't quite clear, click on the 'Help' or 'More Info' button (shown at the end of the message line):
In response, the application will present a help screen with more explanatory text about the message.
This example processes can be found under the "IndEnzymes" sub-folder of sample
Bio-Materials processes ("Examples\Bio-Materials").
The process models in this folder simulate the microbial production of industrial enzymes. Glucose, ammonia and other medium components are converted into an industrial enzyme in a fed-batch, aerobic culture. The batch size is 160 m3 of fermentation broth, resulting in approximately 7 MT of enzyme protein per batch. There are two example models included:
a) Base case. The final product is in liquid form.
b) The final enzyme is in solid form.
Oftentimes, when introducing a new pure component in a SuperPro
Designer model, users will start from a pre-existing (in a database or
in the current model) component (e.g. "Water") and then proceed
to modify its key (or important) physical properties to the best of their
knowledge. Sometimes very little is known about the new component. At
minimum users are supposed to provide (besides its name and local name),
its normal boiling point (since this is to be used a rough estimate about
its physical state (liquid or vapor) in the model and its molecular weight
(since it will be needed to convert from mass to mole concentrations or
fractions). Beyond that little may be know about the new substance. If
a user attempts to exit the component properties dialog after modifying
the NBP but not the vapor pressure parameters, he/she will encounter the
following error message :
At this point, the user must visit the temperature-dependent properties tab of the dialog and has two choices:
1. Specify that the vapor pressure parameters are 'Unknown'. This choice is appropriate if Soybean Oil will never be considered as part of any emission calculations (which is most likely the case unless part of the process operates at moderate to high temperatures).
2. If it is desired to keep the option of checking this component into the list of emitted components, then the user must provide a set of vapor parameters that 'predict' its normal boiling point with a accuracy of no worse than 10°C. For that purpose, a new button added to the interface to provide assistance:
Search for Components with Similar NBP...
When you click on this button, the following interface will appear:
The table shown will include all known components that have a normal boiling point (NBP) that is within 10°C of the current value of NBP for "Soybean Oil" (300°C). You can select a component from the list, and after clicking on the "Copy Props & Exit" button, the program will have copied from the 'donor' component its NBP and vapor parameters so that you can now exit successfully the physical properties dialog for "Soybean Oil". Since components with similar boiling points may be more similar in vapor properties than "Water" (which was the original 'mold' for creating the component), it may be more accurate to use for the rest of the vapor properties (Ideal Gas Cp, Heat of Vaporization) the new component's value and replace 'Water' values. Tc and Pc may also be better estimates (in the absence of any such knowledge); they are used to 'estimate' heat of vaporization, so again, they may be providing a better approximation than 'Water'.
This example process can be found under the "CellTherapy" sub-folder of
the sample Pharmaceutical processes ("Examples\Pharmaceuticals").
Stem cell therapy is a nascent but fast-growing diefl within the pharmaceutical industry. Stem cells are undifferentiated cells which are capable of transforming into different cell types. Human mesenchymal stem cells (MSCs) are one of several variieties of human stem cells. They are capable of transforming into bone cells, muscle cells, cartilage cells, etc. As a result MSCs have potential to be used in regenerative medicine to repair injured tissues and restore their lost functions. MSCs can also be used to provide additional functions or improve existing functions in organs, after proper genetic modification.
A conceptual process for producing a stem cell therapy product was modelled and economically evaluated in this example. The development of the model was based on data from literature supported by our experience with related processes and our engineering judgement. Note that cell therapy is a very new field and therefore there is a great deal of variability in the cell production and purification techniques that are currently applied by various organizations.
When specifying the parameters (a,b,c) used to produce a value of the liquid or gaseous heat capacity of a pure component, previously it was assumed that the value of Cp would always be in J/gmol-K; for heat of vaporization it was always assumed in J/gmol. Starting with v11, the user can choose to provide the parameters producing a value of Cp and DHvap in his/her own preferred choice of units (see below):
It is important to remember that the program will 'record' the values of the parameters and the units chosen and will be making changes using the current value of molecular weight. So, if you save the values of, say, Cp, in J/gmol-K and then change the molecular weight of the component, the parameters won't change; however, when needed to convert the values of Cp on a per-mass basis, the new value of molecular weight will be used.
No new Unit Procedures have been introduced in v11.
No new Unit Operations have been introduced in v11.
A CIP operation is typically defined as a sequence of several cleaning steps. Each step, may engage a different cleaning material (some for cleaning, some for sanitization); also each step's duration may vary. Since companies may have an established specific CIP policy for certain situations, it would be handy if users didn't have to specify the same CIP step sequence each time they needed to enforce the required cleaning step sequence. Up until now, users had to rely on the copy-and-paste feature of the software in order to duplicate a CIP sequence from one place into another. However, copy-and-pasting specific operation from one unit procedure to another is possible but is available for the entire unit procedure (not just the CIP operation) and thus it unnecessarily copied many more objects than needed. Starting with this release, users can define CIP templates and store them in their User DB for future reuse. A CIP template, is essentially a saved sequence of CIP steps that can be applied to quickly define a new instance of a CIP operation. The template can either be defined from scratch in the User DB, or it can be defined based on an existing CIP operation.
► To Define a New CIP Operation Template Directly in the User DB...
Select Databanks/CIP Templates... and the following dialog will appear:
Clicking on the "Create New" button
the following dialog appears:
You can either create a template from scratch, or start from another defined template and then modify. Every CIP template needs to be given a (unique) name; optionally, you can supply a short description to remind you (or other users) the purpose or context of use for this template.
► To Define a New CIP Operation Template Based on an Existing Step Sequence...
If you have defined a cleaning sequence already in a CIP operation,
and you decide to keep it for later use, visit the i/o dialog of the operation
and click on the "Create New" button :
A CIP template definition dialog will be presented. You can supply a name (and possibly some comments) for the CIP template and click on OK. After that, the template would be available for initializing other CIP operations.
When defining a SIP operation, users are required to select a heating agent. This agent is used to sterilize the inside of a vessel, and later it is disposed off. This engagement of a heat transfer agent is quite different from every where else in a process model. Typically a heat transfer agent, when used to heat up or cool down process material, is drawn at the given supply temperature, used up and then returned at the specified temperature. However, in a SIP operation, the heat transfer agent is NOT returned but instead disposed off. In essence, this amounts to a material output with duration equal to the duration of the SIP operation. However, SuperPro doesn't know what type of material the heat transfer agent is made off. For some agents, users may have
associated some material and a consumption factor. If that's the case, then that material is assumed to be what is being produced by the SIP operation. If not, then the user must define at the SIP operation i/o dialog the type of material produced (see above the highlighted area).
Starting with this release, a stricter check on the
pressure settings for Pressurize, Evacuate and Vent operations are enforced:
Vent Operation: The final pressure setting can't be higher than ambient pressure. Users should use pressurize if that's the case.
Purge Operation: When the purge type is set to "Pressure" or "Vacuum and Pressure" the final pressure must be higher than or equal to ambient pressure. As an added enhancement, users now can (optionally) assign a vacuum pump used to achieve the vacuum when the operating mode is set to "Vacuum" or "Vacuum and Pressure".
Evacuate Operation: Final pressure must be set to a value below ambient pressure and less than the initial pressure. If the final value is ambient or higher, then users should use "Vent" instead.
As SuperPro Designer is being applied to simulate more
and more processing that require dry mass calculations, we have responded
by adding relevant options to three commonly used operations:
- Bulk Washing
- Screw Press Solids Separation
- 2-Way Component Splitting (batch and continuous).
The motivation was twofold:
a) To present users dry-mass values of participating streams and
b) Allow users to express performance targets using dry mass percentages
Bulk Washing Operation
The i/o dialog of the bulk washing operation has been expanded as seen below:
Once the "Consider Solids" box is checked, the extra columns
"Solid?" and "Particulate Solid?" are shown. A component
can be assigned a separation factor once it's declared to be "Particulate
Solid". The "Removal %" will determine how much of the
particulate solids pass through the filter and how much they are removed.
Finally, the solvent (carrier phase) will be split based upon the last
specification that can be either:
a) The weight ratio of total solids per solvent in the product stream, or
b) The weight of just particulate solids per solvent in the product stream.
Note that (a) is what otherwise is known as "Dry Mass Content %".
Screw Press Operation
The i/o dialog of the Screw Press Filtration operation has been expanded as seen below:
Note that the component table appears quite similar to the bulk washing interface. Also note that all components which have the "Is Dry Mass" flag turned on, are automatically assigned the designation "Is Solid" in this table. Users must designate if that component will appear as particulate (and thus can be separated by the screw press) or if it appears as a dissolved solid (and therefore will be carried away with the carrier phase). Once again, the distribution of solvent between the filtrate and the cake is determined by the last specification (on the right-hand side of the dialog above) and it can be based either:
a) Total solids % in the cake (aka., dry mass percentage in the cake), or
b) Particulate solids % in the cake
For users who prefer to set the separation percentage of all components to the filtrate (as opposed to the case), the top option (on the right-hand side above) should be chosen and it will present the old interface of the screw press filtration operation.
2-Way Component Spliting Operation (Continuous)
The i/o dialog of the 2-Way Component Continuous Splitting operation has been expanded as seen below:
The 2-way component splitting operation is quite commonly
used when modeling a solids separation step for which SuperPro Designer
doesn't have a dedicated model. With the newly added options (activated
when the "Consider Solids" box is checked - green highlight
in the picture above). Then the extra columns (highlighted in yellow)
are shown. Users can either set a split percentage or a split flow but
ONLY for the component that are checked as Solids AND as particulate solids.
Once again, the interface and the terminology should be familiar as it
is exactly the same as in the previous two operations that are dedicated
to solids separation. In a similar fashion, the carrier phase distribution
between the two outlet streams, is determined by one of the two specifications
shown highlighted above in blue:
a) Total solids in top stream (or bottom stream if the splitting specification was set to refer to the bottom stream); again, this is what users with applications in the solids handling process domain refer to as "dry mass %".
b) The particulate solids weight percentage in the top (or bottom) stream.
2-Way Component Spliting Operation (Batch)
The i/o dialog of the 2-Way Component Batch Splitting operation has been expanded as seen below:
This operation's options have been expanded to match all the power given to the continuous incarnation of this operation when it comes to handling solids and solids separation. Essentially it offers an identical interface and identical options when dealing with the contents of vessels instead of continuous line of material (see above).
When visiting the "Components" tab of the
Steam Generation Operation dialog, users are supposed to identify from
the list of registered components:
- Carbon Dioxide
- Sulfur Dioxide
If one or more of the above aren't registered yet, the new button added to the interface allows you to quickly bring up the component registration dialog, register them, then choose them and exit the dialog, all in one session.
When the user has given permission to the flow adjustor to automatically set the composition of the adjustable input stream, the program automatically initializes the stream (before the M&E balances are done) so that the user never has to visit it (since he/she doesn't know the composition anyway).
When replacing a "Transfer In" operation with a charge operation (and unlike what happens when a brand new charge operation is introduced), the setting for "Amount Charged" is "Use-Stream-Amount" and not "Set by User" in order to facilitate a better transition of the recipe to what used to happen before.
Solving for the outlet temperature when the heating (or cooling) load is given, requires iterative calculations. The stability of these calculations has been improved avoiding non-convergence.
Besides providing specifications for
the calculation of retention of solids (or fat) in a centrifugation operation,
the model is supposed to also calculation the distribution of solvent
in the output stream(s). Previously, there was only one way to do that:
by providing the concentration of solids (or fat) in the corresponding
output stream(s). Starting with this release two additional (and more
flexible) options have been included:
- percentage of solvent in each stream, or
- v/v ratio of solids to solvent (or solids to fat) in each stream.
The column (and stream outlet) temperature of streams exiting an absorption (or stripping) column is now better estimated as the weighted average temperature of the input streams.
When calculating the amounts of material absorbed (or released) in an absorption (or stripping) column, the component's Henry's constant is used. The value provided by the user at some reference temperature is adjusted for the temperature of the column. The adjusted value is now displayed to provide the user better understanding of the results.
Component splitting is typically engaged to represent some other physico-chemical transformation that cannot be mapped to an existing SuperPro model. Separating components to different streams, is an abstract process which (until now) violated the enthalpy balance between its inputs and outputs. Starting with this release, SuperPro Designer will balance out the input enthalpy with the output enthalpy and generate a demand for heating or cooling accordingly.
Up till now SuperPro Designer assumed all outlets in a component splitting operation didn't have their temperature affected (so Tout = Tin). However, given that the real operation behind the model could be a complex physico-chemical transformation, more times than not, each output line may come at different temperature. Starting with this version of SPD, users have a 3-way option for setting outlet temperatures of each line (see below):
1. Assume no temperature change (so all Tout temperatures are equal to Tin).
2. Assume all outlets come at the same temperature (Tout), set by the user.
3. Assume a temperature change or set temperature for each output line.
Furthermore, to account for ambient heat gains/losses, if you check the "Consider Ambient Effect", then users can also account for extra utilities needed to preserve outputs at the specified levels. The "extra" load is calculated based on a percent change supplied for each line that represents the percent of temperature change that the surroundings would impose to each line if no make-up utilities aren't spent. That represents a flexible, way to account for ambient losses and in a way that is always proportional to the difference between the actual (final) temperature of each line and the ambient temperature.
Up till now those operations were only
assuming an isothermal operation with the temperature either set by the
user or taken from the input stream. Starting with this release, the software
offers the option of operating adiabatically, whereby the simulation calculations
would produce a final temperature.
A holding vessel may have some restrictions imposed by its construction or operation for set min and max liquid-to-vessel ratio values. For example, to properly vent, the max value of liquid-to-vessel contents may not exceed a certain value (e.g. 90%). Or, for proper agitation, the liquid contents should not drop below 5%. Furthermore, operations been carried out as part of a procedure hosted by that vessel may impose further (more restricting) values for those limits: a possibly lower max liquid-to-vessel ratio or a possibly higher min liquid-to-vessel ratio. Even though the software will not allow operation-level specs conflict with equipment-level conflicts, it is possible that the user may revisit the equipment dialog and change those set limits or perhaps, the user may allocate the equipment to a site equipment that has its own values for those min/max limits. In that case, if any operations in procedures hosted by that equipment had limits that violated the new equipment-level constraints, the software would not allow the new values to be applied. Now, instead, it offer the option to automatically adjust the operation-level constraints so that they meet the new equipment restrictions.
It has always been possible to assign
a receiving unit to any process output stream, or any non-stream operation
output (waste), like the waste resulting from each step of a CIP operation
or from a SIP cleaning of a vessel. Starting with v11, SuperPro will automatically
create for each new process model two receiving units with a special purpose
(see highlighted entries in the Process Explorer below):
"CIP Waste", and
As soon as a new CIP step is created, SuperPro will automatically assign the "CIP Waste" as the receiving unit for the output (waste) of the step. This way, after you have entered all the CIP operations for your model, you can easily track the CIP output amount (waste) by selecting the option Charts / Resources / Storage Units / Receiving / Single-Batch ...
Please note that it is easy to see where
the "SIP Waste" (or "CIP Waste") is generated, too.
Visit the Process Explorer, locate the "SIP Waste" (under "Receiving
SU") and select the button shown below:
The list that will be presented will show all unit procedures where SIP operations are producing waste.
It has always been to account for inefficiencies
between the power input to a pumping operation or a fanning operation
or a compressing operation and the pressure change effected. The remaining
amount though was assumed that it was 100% converted into heat that was
added to the process stream.
Starting with this release, we allow
for only a portion of this lost (dissipated) power to be returned to the
system (process stream) as heat; the rest is assumed as lost to the environment
and thus doesn't affect the temperature of the stream being pumped (or
fanned, or compressed).
If the hot side of a heat exchanger featured a phase change (without temperature change) this used to trigger some unnecessary warnings/errors; this has now been fixed.
When a gas cyclone was in rating mode the user could not set the rated throughput needed to calculate the equipment purchase cost . This has now been fixed.
Due to a glitch in the code, users could not change the units showing the pressure setting in an absorption (or stripping) operation. This has now been fixed.
Oftentimes, when recycling a flow, we are not sure if we need to recycle a portion of the flow (and thus take out some) or if we need to add some makeup. The purpose of the flow adjusting unit is to make that decision during simulation and based on some downstream needed that will be back-propagated to this calculational module. When the module needed to add in some flow, the unit worked fine. However, when the unit needed to remove a portion of the flow, the module failed to adequately adopt. This has now been fixed.
The program offered to calculate the 'specific heat duty' of the fluid that is used in the 1st effect. However, when MVR was activated the value was calculated incorrectly when MVR was used, leading to incorrect demands for steam. This has now been fixed.
When setting the check box of a component, to designate it as 'removed' from the oil separation operation, after closing the i/o dialog, the specification was lost. This has now been fixed.
The program now displays an error message if the equipment is in rating mode and sizing is based on throughput and the operating throughput per unit exceeds the rated throughput of the equipment..
The user specifies a pressure drop per unit length for these columns. For extra long columns, the program used to calculate output pressures of stream below ambient. Clearly that 's not possible and it has been fixed.
When showing the i/o dialog of an "Agitation" or "Component Split" (in a vessel) operation, the Vent/Emissions tab was shown 2nd (right after the Oper. Cond's tab). This has been fixed.
When a shortcut distillation models is used, user is supposed to select a component with high relative volatility as the 'light key' and a component with low relative volatility as the 'heavy key'. When the relative volatilities are not provided by the user but calculated by the program, if the heavy key's Antoine coefficients were not defined, a crash may occur. This has now been fixed.
Previously users were presented with the option to specify a sorption percentage for components even if a primary biomass component was not defined. This of course, is incorrect and it is no longer allowed.
Due to an error in the simulation model, previous releases and under some rare circumstances, produced incorrect values for the condenser and reboiler of a rigorous distillation model. This has now been fixed.
In continuous filtration operations, the maximum achievable concentration factor was not calculated properly. This has now been fixed.
When viewing the list of power types (consumed) and power types (generated), the generated power types were not properly listed as a process resource. This has now been fixed.
When setting the Venting as "On" in a stoichiometric reaction, and if the "Condenser" option is activated, under some rare circumstances, the program would produce erroneous results for the reaction output amounts (e.g. material balances may not close). This has now been fixed.
This note includes a comprehensive (cumulative) list of all new features, improvements and bug fixes in final v11 release (2/14/20) and after the original release of this major version of SuperPro Designer (v11, Build 02, SBN 1000, 10/30/19).
To view all major additions in this major release (v11) over the previous major release (v10) please consult "What's New in Version 11".
B02, SBN 2000, Release Date (02/14/2020)
Operations Engaging CIP Skids and SIP Panels Were Not Properly
Exported in Schedule Pro's DB (Bug
In v11, Auxiliary Equipment has taken a much more prominent role. Two 'classes' of auxiliary equipment now exist:
- 'Built-in' type (like CIP Skids, SIP Panels, Transfer Panels, Vacuum Pumps), and
- 'User-Defined' types: other types defined by the user to suit their needs (e.g. Chromatography Skids, Blowers, etc.)
Some operations are pre-wired to expect some kind of primary (or 'built-in') auxiliary equipment: e.g. CIP operations can be assigned a CIP Skid; Any operation that involves transfer of material can be assigned a Transfer Panel.
All operations, can be also assigned an auxiliary equipment form it "Labor, etc." tab.
After the role of auxiliary equipment was so much more broadened, and due to a glitch in the code, the early release of v11 missed exporting to SchedulePro's DB any CIP Skids and/or SIP Panels existing in pre-v11 models (along with the information that linked several operations to them). This has now been fixed.
Transfer Out in Plate & Frame Filtration Procedure Didn't
Have Access to Main Output Port (Bug
A Transfer Out operation, residing in a plate and frame procedure, needs to be able to move out of the filter's contents the cake. For that, the most common candidate is port #2 (tagged as 'Cake Outlet'). However, due to a glitch, this output port was not in the list of options available to a transfer out operation in a P&F filter. This has been fixed.
Copying-and-Pasting Across Models, or Inserting an Entire Model,
a More Tolerant Approach Adopted to Component and Mixture Name Conflicts
When pasting a set of unit procedures and/or streams from one process model to another, the application must make sure that any missing components and/or stock mixtures involved in the unit operations and/or streams pasted exist in the receiving document; if not, then it quietly introduces them. However, there were several cases where that process would lead to a conflict and as a result the pasting (or file insertion) was not allowed (aborted). For example, if in the source document a pure component was utilized with a local name "X" that is already been used by another pure component in the receiving document, the pasting was aborted. Also, if the same pure component (e.g. "Ethyl Alcohol" was referenced with two different local names (one in the receiving document and one in the source document), again, the pasting (or file insertion) action was aborted and an error message reporting the naming conflict was produced. Starting with this release, the program is much more lenient when pasting and accepts both such cases. For instance, in first case of conflict, it would change the local name "X" and pick another (e.g. "X01" or "X02") that will be unique among all local names in both models. The same action (i.e. changing the local name) in the source document, would force the two local names to match, since they both reference "Ethyl Alcohol". This naming change happens without the user's intervention. The same conflict resolution strategy is also applied to the "Company ID" field that is supposed to be unique among all components.
Starting with this release, the only conflict that is not automatically resolved is having a (formal) name of a component in the receiving document match (without care to case) with a (formal) name of a stock mixture in the receiving document; similarly, the conflict can't be resolved if the (formal) name of a stock mixture from one model, matches the (formal) name of a pure component in the other. If either of the last two conflicts is detected, the pasting (or file insertion) action is aborted.
Viewing Allocated Equipment Properties by Mistake Allowed Some
Equipment Properties to be Editable (Bug
When the equipment resource behind a unit procedure is allocated to either a site equipment or an equipment specification, then all of its sizing properties are assumed from the description in the database and are supposed to be shown but not available for editing. Due to a glitch, the "max-size" parameter (e.g. "Max Volume" for vessels, or "Max Area" for Filters or Heat Exchangers, etc.) was still shown and available for editing. This has now been fixed.
Controlled Emission Amounts Cannot Exceed Uncontrolled Emission
When users requested the emission calculations to be made at the vessel's conditions (uncontrolled) as well as at a condenser temperature (set at a lower temperature), the emission amounts reported for the controlled emissions can never be higher than the uncontrolled emissions. This used to happen (inadvertently) in the case of a reaction that produces a vapor product. It has now been fixed.
Vibration Screening Operation: i/o Simulation Dialog Would Lead
to a Crash (Bug
When users attempted to visit the i/o simulation dialog of a vibration screening operation, it would lead to a crash. It has now been fixed.
Feed & Bleed Concentration: Oper. Cond's Tab Complained
Unnecessarily about Filtrate Flux Being Zero (Bug Fix)
If the process time of a feed & bleed concentration operation was set by the user, attempting to exit the dialog may lead to spurious message from the program complaining that the average filtrate flux (not a user input) should not be zero. Since the average filtrate flux would be calculated (as part of the M&E balance execution) this message should not be shown. This has now been fixed.
Centrifugation Operation Now Reports the Achievable Concentration
Range of Particulates on the Oil and/or Solids Streams (Improvement)
The centrifugation operation decides how to distribute its particulate components based on the split specifications set by the user on the component data table. The solvent (typically water, but really the mixture of all components not checked as 'particulates') is distributed on the solids and oil stream in amounts as required by the concentration of particulates desired on each stream. The rest flows out in the 'water' output. If the user provides inappropriate values for those target concentrations, then an error is produced. For example, if the user requires the concentration of solids on the solids output to be HIGHER than the concentration of pure solids, obviously, this is unachievable; similarly, if the concentration is lower than what results by adding the ENTIRE amount of solvent to the solids stream, that is also unachievable. When those conditions are encountered, now the program produces those upper and lower values for the achievable concentrations in order for the user to properly adjust the specifications.
Pure Component and Stock Mixture Naming Conflicts Were Not Resolved
When copying-and-pasting (or inserting) a file that involves one or more operations with an assigned heat transfer agent that does not currently exist in a model, the application is supposed to quietly register the agent. If that agent happened to be associated with a material (a pure component or a mixture), the program is supposed to also quietly register the material (or if it's a mixture all of its ingredients) so that they can have a presence in the receiving mode. Due to a glitch, materials introduced this way, could be in name-to-local name (or vice versa) in the receiving flowsheet and stay undetected. This glitch was fixed in the first release of v11, but unfortunately, files created with a previous release (e.g. v10) still contained components and/or mixtures with naming conflicts and were not being sorted out until this release.
P-H Flash Calculation Improved (Improvement)
When searching to find a temperature for a stream (or a state) at a given pressure and with a given enthalpy (as a result of an energy balance), the algorithm has been improved for speed and robustness.
Gasification Model Improved (Improvement)
Several small fixes and improvements to the module of the Gasification operation have been made affecting error checking against user's specification (during i/o dialog interaction with the user) and execution (during carrying out the M&E balances).
Emission Error Messaging Improved (Improvement)
When emission calculations fail to conclude, the error reported was somewhat generic. In this release we have tried to give more specific reasons as to why the calculation failed.
Copying and Pasting a Rigorous Distillation Procedure in a Different
Model Failed (Bug
When attempting to copy and paste a unit procedure that represented a rigorous distillation model across two models, the pasting would result in an application crash. This has now been fixed.
Opening Older Files with a Continuous GBX Procedure Didn't Convert
In versions prior to v11, continuous GBX procedures came in different unique variations that depended on the number of input and/or output streams. Starting with version 11, there's only one type of continuous GBX procedure (with separation) and the various input and/or output ports are simply considered an i/o specification. The same holds true for bulk mixing or splitting procedures, discrete mixing or splitting, etc. This conversion for continuous GBX procedures with separation didn't happen properly for files prior to v11, but it has now been fixed.
Documents Created with L2 Level (View Only) Processed the DEL
and BKSP keys (Bug
SuperPro Designer has a feature that enables users to create files with a built-in protection that allows them to be distributed and viewers of the file can only see the contents (with or without a password) but cannot change the structure or values of the model contained in that .spf file. Due to a glitch, such files when opened in SuperPro, would still process the "DEL" (Delete) key and the "BKSP" (backspace) keys leading to the elimination of whatever was selected at the time. That shouldn't be allowed and it has been fixed.
Pasting Content from a Protected File No Longer Allowed
When distributing an .spf file in L1 or L2 protected mode, the idea is to prevent users from 'borrowing' the content of that file for their own personal use. L1 level would allow viewers to possibly modify the file and try out executing M&E balances or view reports, but it would never allow users to save the modified file. In an analogous fashion, L2 protected documents, would allow a user to view its contents (with or without a password) but users where not allow to modify its contents and presumably, not be able to export parts or the entire model in another file. SuperPro didn't detect such activity and it used to allow pasting of content from a protected file to an unprotected file. This is no longer allowed.
Info Tag Information on Input Streams May Not Display Correct
Values When Total Flow is Zero (Bug
When users have requested to view on an info tag of an input stream some component-related information (e.g. mass fraction or mole fraction) and the input stream does NOT have any total flow (yet, the mass fractions of its ingredients are well defined), the info tag would not reflect those values. This has now been fixed.
When Renaming an Ingredient (Pure Component or Stock Mixture),
a CIP Template Engaging that Ingredient Wasn't Notified (Bug Fix)
In previous releases, templates in a model kept references to a material's local name to describe the CIP agent used in each step. When a user decided to change that local name, the CIP templates were not notified. Note, that with this version, CIP templates refer to their washing agents by formal name (which is the better alternative since they can be exported to the database). Therefore, changing the local name of an ingredient will no longer affect the definition of templates (note that formal names cannot be changed).
New Example Has Been Added: Production of ß-Farnesene
This example is loosely based on the process of farnesene production described by Amyris patents and scientific papers. A metabolically engineered yeast is used to produce fernesene from glucose in batch culture. After fermentation ends, the extracellular medium (in an oil-in-water emulsion) is separated from the biomass through centrifugation. Next the emulsion is inverted by the addition of a surfactant and the resulting water-in-oil emulsion is heated so that the surfactant precipitates. Finally, the oily and aqueous phases re separated by centrifugation and the oil-rich phase is flash-distilled to produce highly pure farnesene. The model can be found in the 'Farnesene' folder under the "BioMaterials" collection in the "Examples" folder.
New Example Has Been Added: Production of Bio-Based 1,3 Propanediol
1,3-propanediol, commonly abbreviated to PDO, is a colorless viscous organic compound. It is one of oldest known fermentation products. PDO can be employed in the production of adhesives, coatings, cosmetics and pharmaceuticals. It can be used as an antifreeze or heat-transfer fluid. It can serve as a monomer for the synthesis of various polymers, notably polyesters, polyurethanes and polyethers. The production model for PDO presented here is loosely based on the process of DuPont Tate & Lyle Bioproducts, described in two patents. For more details please consult the Word file included in the "PDO" folder under the "Bio-Materials" collection of "Examples".
Exporting the VLE Binary Chart to Excel Wasn't Done Correctly
Due to a bug, when attempting to export a VLE binary chart to Excel, the chart wasn't done correctly. This has now been fixed.
Flow Adjustor: Input/Outputs Didn't Have T,P Correctly Updated
Due to a bug, in some (rare) circumstances, the temperature and pressure of input streams to a Flow Adjustor were not carried over to the output stream(s). This has now been fixed.
Inserting an Entire File into Another Flowsheet Miscalculated
the New Document Size (Bug
The Edit / Insert... option, allows a user to insert an entire model into your process. The benefit of inserting procedures and/or streams this way (as opposed to copying-and-pasting) is that it keep all scheduling dependencies intact. Sometimes when inserting an entire process into your flowsheet, the drawing size required to show the combined process needs to be expanded. The new size required sometimes was miscalculated. This has now been fixed.
When Selecting Equipment Type in Drop-Downs, the Same Entry
Appeared Multiple Times (Bug
When selecting equipment type from a drop-down (e.g. when viewing the User-Defined Cost models for a given equipment type, or the specified spec sheets for a given equipment type, etc.), the drop-down selection appeared to show (for some equipment categories) the same entry multiple times. In reality, each entry represented a different type, which was inadvertently shortened to a single word that was already used ("Seed" in the picture below) making it impossible to know which type each duplicate entry represented. This has now been fixed.
When Copying-and-Pasting UPs Included A Resource No Longer Used,
Would Lead to Crash (Bug
When selecting a set of unit procedures and/or streams for copying the program keeps a copy of them in the clipboard. This action also 'remembers' all the resources (like Heat Transfer Agents, Power and Labor types, etc.) that are involved in the selected group of procedures in order to make sure they exist in the destination document (when pasted). If, in the meantime, some of those resources were no longer used in the source document (e.g. the last usage of a heat transfer agent was deleted), and then the contents of clipboard were pasted, this would lead to a crash. This has now been fixed.
If the Screen Resolution Was Changed Between the Time of Copying
a Group of Procedures to the Time of Pasting, the Pasted Streams Appear
When selecting a set of unit procedures and/or streams for copying the program keeps a copy of them in the clipboard. When the contents are pasted, another copy is inserted in the destination document. If, before pasting, the user changed the resolution of the screen, the pasted procedure and stream icons, would still appear in the sizes of the previous resolution and thus some streams may appear disconnected from their ports. This has now been fixed.
BPG Paths Were Deemed Inappropriate Incorrectly (Improvement)
When an operation generates a back-propagation (BPG) request, the program halts its forward advancement to satisfy the demand by searching for an upstream operation that can satisfy the BPG request (i.e. it searches for a BPG terminal). Should be noted that if the operation that generates the BPG demand decides the amount after seeing the composition and T,P of the sample stream, and the amount calculated depends on the composition T,P of that sample, when the BPG demand is raised (backwards), the expectation is that the 'corrected' amount on the BPG stream will come but with the SAME composition T and P. For instance, if the BPG generating operation needs to meet a specific concentration of a component in the vessel contents, obviously, the amount required will depend on the composition of the add-in stream. Other times, the BPG generating the amount required doesn't involve the T,P and composition of the sample stream. For instance, if the requirement is on custom mixer to maintain a given mass-to-mass ratio (regardless of composition), then the BPG demand needs to find a terminal that will satisfy the amount, and it doesn't care if the composition will be changed. This slight but important difference could make some BPG paths legal and some illegal. This difference is not taken into account to better qualify (or disqualify) BPG paths.
Labor Need Requirements for Section as Well as for Each Labor
Purpose (per operation) Can Now Be Retrieved by COM Calls (Improvement)
Users have requested to be able to fetch (and set) each item in the labor table for a given operation.
To accommodate their request a new VID constant was introduced (laborNeed_VID). Also, the laborUnit_VID specifies in what units the labor need is set (or retrieved) : per-h, per-batch, per-year, per-campaign, or per MP. A new COM function has been introduced:
Get/SetOperVarVal3 procedureName, operationName, laborNeed_VID, var, laborType, serviceName
A similar request has also been made to access labor items set at the section level. The following function has been introduced to serve this purpose:
Get/SetSectionVarVal3 branchName, sectionName, laborNeed_VID, var, laborType, serviceName
Material Consumption per Section Can Now Be Retrieved by a COM
Call In Units that Are User-Selectable (Improvement)
Users have asked to have the ability to retrieve material consumption of a given pure component or stock mixture an in a given section or a given procedure. The following COM call can be used to service those needs:
GetSectionVarVal2 branchName, sectionName, units_VID, var, materialName
GetUPVarVal2 procedureName, units_VID, var, materialName
The units_VID can assume any of the following values:
When Inserting an Entire File (Process) Saved Under Different
Resolution Icons May Show Disconnected to Their Streams (Bug Fix)
The Edit / Insert... option, allows a user to insert an entire model into your process. The benefit of inserting procedures and/or streams this way (as opposed to copying-and-pasting) is that it keep all scheduling dependencies intact. When inserting a file that was saved under a different resolution than the current resolution (when the File/Insert... is executed) the streams may appear disconnected from their icons. This has now been fixed.
When Describing a New CIP Template All Cleaning Agents (Components
or Mixtures) Involved Must Be Kept by Their Formal Names (Improvement)
When describing a CIP template (in the User DB or in a process model), any cleaning agents associated with each step must be selected (and kept) using their full (formal) names. This is important because when those templates are exported to the User DB, the components' and mixtures' local names are meaningless. Only formal names uniquely identify them. It's similar to defining mixtures using individual components. There, too, all ingredients are picked based on their formal (long) names.
When Assigning a Pure Component or Stock Mixture to a Heat Transfer
Agent, the Formal (Long) Name Must be Kept (Improvement)
Just like CIP templates and Stock Mixtures, Heat Transfer Agents exist in a model and in the user's DB. In order for that to happen, the material (pure component or stock mixture) associated with an agent must be kept (and referenced) by its formal name.
When Defining a New Consumable with an Empty Description Field,
the Definition Would Not Be Saved in the User DB (Bug Fix)
Users can introduce their own types of consumables. A new consumable type must have a new (unique) name (or company ID). It is not necessary to give a "Description" field. However, for new consumables defined by users, with an empty "description" field, the program would fail to save it in the database. This has now been fixed.
When Evaluating to Change Process Time to "Calculated"
but then Cancelled, the "Hold up" Time Calculation Mode
Was Changed Unnecessarily (Bug
When having batch/semi-continuous procedure in continuous process model, and starting with some late build of v10, users could designate an operation to dictate the procedure's 'Hold up' time. This would essentially make that operation "appear" to be working continuously taking advantage of several equipment units operating in stagger mode. The chosen operation should have its process time set by the user. If a user visited that operation's i/o simulation dialog and, just temporarily, selected an option that would have the process time be calculated (e.g. choose the charge time be determined by the amount changed and the charge rate), the application would request to get permission to switch out this operation as the one dictating the "Hold up" time and even if the user cancelled out, this action would stay in effect (unnecessarily). This was a glitch and has now been fixed. Only after the i/o dialog of the operation's is exited and the process time calculation mode is changed, the operation is un-assigned from the one dictating the "Hold-up" time of the unit procedure.
A Leaching Operation Incorrectly Considers Gaseous Throughput
for Sizing (Bug
When sizing the equipment necessary to host a leaching operation, the sum of both process inputs (as a throughput in m3/h) is considered. Due to an error, instead of taking just the liquid/solid volumetric flowrate, if some components appear to be in the gaseous phase, they were also included resulting in exceedingly high throughput rates, that of course, resulted in an unrealistically high number of units required in simultaneous operation. This has now been fixed.
B02, SBN 1050, Release Date (12/18/2019)
Using a N-Way Component Splitting Operation with Incomplete
Set of Output Streams Leads to a Crash (Bug
A N-way component splitting operation distributes a single feed stream's components to a 3 or more output lines. The user is supposed to specify for each component the percentage that is directed to each output. The program allows you to use a 4-way (for example) component splitter and, if you don't specify for any component a percentage to be directed to the 1st output (for example), you are not required to create an output stream for this port. Unfortunately, in the original release for v11, such a setup will lead to a crash as the part of the executing code expected to find a stream on every output port. That was incorrect (bug) and has been fixed with this release.
Up-Converting a User DB from Previous Version Failed To Produce
a DB File Compatible with v11 (Bug
Users store their own data about components, mixtures, heat transfer agents, site descriptions, etc. in their own user-maintained file (the 'User DB'). As we keep adding (or changing) features to the objects kept in this database, the User DB file must be up-converted from a major version to the next. There are two ways to do that:
a) After the program installs itself, instead of using the file that came with the new (v11) installation (PDUser.v11.mdb) use the interface from Databanks/Availability, Passwords & Locations... to hookup to your own older-version User-DB. SuperPro will automatically convert the file to the new release's format and continue using it. PLEASE MAKE SURE YOU KEEP A BACKUP COPY BEFORE YOU DO THIS, so that your previous SuperPro Designer can still use it (if needed).
b) Use the interface under Databanks/Upgrade a Past Version User DB File...; This process will create a NEW file that is a copy of your old user database, but in the new format (v11). Then, you should use the Databanks/Availability, Passwords & Locations... interface to point to this newly created User DB file.
In the original release, due to a glitch in the code, both methods will convert the User DB file but fail to mark it as such, with the unfortunate consequence the newly created file was STILL not recognizable as v11 format and couldn't be used by v11 release of the software. This has been fixed.
N-Way Component Splitting Operation Didn't Calculate Properly
Cooling Load (if needed) (Bug
The N-way component splitting operation can be set to operate at isothermal mode. The program then will calculate the enthalpy imbalance between the input and all output streams, and calculate the necessary load to keep the balance. If the operation decided that cooling was required, the duty was not properly reported and the amount of heat transfer agent was not calculated properly (left at 0.0). Also, if the incorrect type of heat transfer agent was selected (e.g. a "Steam") the program failed to report the issue. This has now been fixed.
Gas Compressing, Fanning & Centrifugal Pumping Improved
The above listed operations now feature a new variable : Fraction of the lost power converted to heat. This fraction allows the user to adjust (if needed) the portion of the input power that (due to irreversibilities - like friction etc.) represents lost work input to the system, and it is converted to heat. Some of it stays with the fluid and the rest is lost to the surroundings. The simulation code has now been improved to incorporate this new user option.
Creating a New Consumable Fails Unless the Description Field
is Not Empty (Bug
When creating a new consumable, under either a system or user-defined category, if the "Description" field is left empty, when the time comes to exit the dialog and commit the changes to the User DB, an error message was generated and the newly created consumable could not be saved in the database. This issue has now been fixed.
When Browsing the Consumable Databank Occasionally an Incorrect
Icon Is Shown for "View-Only" Its Properties (Bug Fix)
When viewing the consumables databank, the icon next to the "Consumable Category" (LHS of the dialog) as well as next to any member of a selected consumable category (RHS of the dialog) have a 'red hue' if they cannot be modified (e.g. part of the System DB), or a 'green hue' if they can be modified. Typically entries in the User DB can be modified unless the User database is designated as 'Read Only'. In that case, no entries in the DB (including the user-define portion of the consumables databank) can be modified. The interface failed to capture this combination of settings and the incorrect image was shown. This has now been fixed.